1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. (c) <optionally add copywriters name>
9 This is the user guide for Cherry release of O-DU/l2.
19 I. Execution - On locally compiling O-DU High Source Code
20 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
22 1. Assign virtual IP addresses as follows:
24 a. ifconfig <interface name>:ODU "192.168.130.81"
25 b. ifconfig <interface name>:CU_STUB "192.168.130.82"
26 c. ifconfig <interface name>:RIC_STUB "192.168.130.80"
30 a. Navigate to CU execution folder
32 - cd <O-DU High Directory>/l2/bin/cu_stub
40 a. Navigate to RIC execution folder
42 - cd <O-DU High Directory>/l2/bin/ric_stub
44 b. Run RIC Stub binary
50 a. Navigate to ODU execution folder
52 - cd <O-DU High Directory>/l2/bin/odu
58 PS: CU stub and RIC stub must be run (in no particular sequence) before ODU
60 II. Execution - Using Docker Images
61 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
63 The call flow between O-DU High and CU Stub can be achieved by executing docker containers.
65 - Pull the last built docker images:
66 - docker pull nexus3.o-ran-sc.org:10004/o-ran-sc/o-du-l2:3.0.1
67 - docker pull nexus3.o-ran-sc.org:10004/o-ran-sc/o-du-l2-cu-stub:3.0.1
70 - docker run -it --privileged --net=host --entrypoint bash
71 nexus3.o-ran-sc.org:10004/o-ran-sc/o-du-l2-cu-stub:3.0.1
75 - docker run -it --privileged --net=host --entrypoint bash
76 nexus3.o-ran-sc.org:10004/o-ran-sc/o-du-l2:3.0.1
80 B. Pairwise testing with Intel O-DU Low:
81 -----------------------------------------
83 This section describes the changes required in compilation and execution of O-DU High binaries to successfully integrate
84 with Intel O-DU Low in timer mode.
92 a. Create folder <O-DU High Directory>/l2/src/wls_lib. Copy wls_lib.h from <O-DU Low Directory>/phy/wls_lib/ to
93 <O-DU High Directory>/l2/src/wls_lib.
95 b. Create folder <O-DU High Directory>/l2/src/dpdk_lib. Copy following files from
96 <O-DU Low Directory>/dpdk-19.11/x86_64-native-linuxapp-gcc/include/ to <O-DU High Directory>/l2/src/dpdk_lib.
98 - rte_branch_prediction.h
103 - rte_pci_dev_feature_defs.h
111 c. Navigate to build folder
113 - cd <O-DU High Directory>/l2/build/odu
117 - make odu PHY=INTEL_L1 PHY_MODE=TIMER MACHINE=BIT64 MODE=FDD
125 a. Setup environment:
127 - cd <O-DU Low Directory>/phy/
128 - source ./setupenv.sh
130 b. Run O-DU Low binary :
132 - cd <O-DU Low Directory>/FlexRAN/l1/bin/nr5g/gnb/l1
133 - To run in timer mode : ./l1.sh -e
134 - L1 is up when following prints are seen on console:
136 | Non BBU threads in application
137 | \==================================================================
138 | nr5g_gnb_phy2mac_api_proc_stats_thread: [PID: 8659] binding on [CPU 0] [PRIO: 0] [POLICY: 1]
139 | wls_rx_handler (non-rt): [PID: 8663] binding on [CPU 0]
140 | \==================================================================
142 PHY>welcome to application console
144 2. Execute FAPI Translator:
146 a. Setup environment:
148 - cd <O-DU Low Directory>/phy/
149 - source ./setupenv.sh
151 b. Run FAPI translator binary:
153 - cd <O-DU Low Directory>/phy/fapi_5g/bin/
154 - ./oran_5g_fapi --cfg=oran_5g_fapi.cfg
156 3. Execute CU Stub and RIC Stub:
158 a. Run steps in sections A.I.1 through A.I.3 .
162 a. DU execution folder
164 - cd <O-DU High Directory>/l2/bin/odu
166 b. Export WLS library path
168 - export LD_LIBRARY_PATH=<O-DU Low Directory>/phy/wls_lib/lib:$LD_LIBRARY_PATH
178 O-DU High opens WLS interface during bring up. Message exchanges can begin once the interface is ready.
179 Following diagram shows P5 messages exchanged with O-DU Low in timer mode.
181 .. figure:: O-DU_High_Low_Flow.jpg
183 :alt: Figure 1 O-DU High - O-DU Low Message Flow Diagram
185 Figure 5 - O-DU High - O-DU Low Message Flow Diagram
187 Note: UL IQ-Sample request and response are needed by Intel O-DU Low in timer mode(testing mode) only. Code changes for
188 these are guarded under INTEL_TIMER_MODE flag which can be enabled using compilation option "PHY_MODE=TIMER", as
189 mentioned in section B.I.1.d .