First round of documentation cleanup for oran_e_maintenance_release_v1.0
[o-du/phy.git] / docs / fapi_5g_tm_build.rst
1 ..    Copyright (c) 2019-2022 Intel
2 ..
3 ..  Licensed under the Apache License, Version 2.0 (the "License");
4 ..  you may not use this file except in compliance with the License.
5 ..  You may obtain a copy of the License at
6 ..
7 ..      http://www.apache.org/licenses/LICENSE-2.0
8 ..
9 ..  Unless required by applicable law or agreed to in writing, software
10 ..  distributed under the License is distributed on an "AS IS" BASIS,
11 ..  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 ..  See the License for the specific language governing permissions and
13 ..  limitations under the License.
14
15 .. |br| raw:: html
16
17    <br /> 
18    
19 ORAN 5G FAPI TM Installation Guide
20 ==================================
21
22 The 5G FAPI TM uses the wls library which uses DPDK as the basis for the shared memory operations 
23 and requires that DPDK 
24 be installed in the system since in the makefile it uses the RTE_SDK environment variable when
25 building the library. |br|
26 The current release was tested using DPDK version 20.11 but it doesn't preclude the 
27 use of newer releases. |br|
28 Also the 5G FAPI TM currently uses the Intel Compiler that is defined as part of the ODULOW documentation.
29
30 Contents
31 --------
32
33 - Overview
34 - Building and Installation
35 - Command Line Parameters
36 - Known Issues/Troubleshooting
37 - License
38
39
40 ================================================================================
41
42 Overview
43 --------
44
45 This document describes how to install and build the 5G FAPI TM for ODULOW to ODUHIGH
46 communication as part of the |br|
47 ORAN Reference Architecture.
48
49
50 ================================================================================
51
52
53 Building and Installation
54 -------------------------
55
56 Retrieve the source files from the Linux Foundation Gerrit server:
57     `<https://gerrit.o-ran-sc.org/r/gitweb?p=o-du%2Fphy.git;a=summary>`_
58
59 1. Make sure that the follwoing environment variables are defined
60    DIR_WIRELESS_WLS for the wls_lib and RTE_SDK for the DPDK |br|
61 2. cd fapi_5g/build |br|
62 3. $ ./build.sh xclean  // Force full rebuild |br|
63 4. $ ./build.sh         // Build the 5G FAPI TM |br|
64
65 The executable is available at fapi_5g/bin and it is called oran_5g_fapi
66
67 Unit Test and validation
68 ---------------------------------
69
70 The unit test for the ORAN 5G FAPI TM requires the testmac and L1 binaries that are described
71 in a later section and that for the O-RAN current Release consists of a suite of tests in timer mode
72 where the DL, UL and FD paths are exercised for different channel types and numerologies 0, 1 and 2.
73
74 1.Open SSH session and cd l1\\bin\\nr5g\\gnb\\l1 |br|
75 2.Issue l1.sh |br|
76 3.Open a second SSH session and cd fapi_5g\bin |br|
77 4.Issue ./oran_5g_fapi.sh --cfg oran_5g_fapi.cfg |br|
78 5.Open a third SSH session and cd l1\\bin\\nr5g\\gnb\\testmac |br|
79 6.Issue ./l2.sh |br|
80 7.From the testmac command prompt (i.e. the l2 executable) issue::
81 run Direction Numerology Bandwidth TestCase
82 where Direction is 0 DL, 1 UL and 2 FD
83 Numerology 0 15 Khz, 1 30 Khz, 2 60 KHz, etc
84 Bandwidth is 5, 10 , 20, 100 
85 Testcase is defined from the set supported in this release
86 In general issue only the cases provided with this release that have the full set
87 of supporting files required. |br|
88 8.Observe in the SSH associated with the testmac the PASS/FAIL status. All of the reference cases
89 pass.
90
91
92 Testmac cases used for 5g FAPI TM
93 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
94
95 The following DL, UL and PRACH test cases are used for validation.
96
97 Downlink Tx Sub6 Test Cases [mu = 0 (15khz) and 5Mhz]
98 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
99
100 1.Test case 1001 1 PDSCH and 1 Control symbol
101
102 2.Test case 1002 1 PUCCH Format 2 channel
103
104 Downlink Tx Sub6 Test Cases [mu = 1 (30khz) and 100Mhz]
105 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
106
107 3.Test case 1201 4 antennas 1 PDSCH Spatial Multiplexing 144 RBs QAM 16
108
109 4.Test case 1204 4 antennas 1 PDSCH Spatial Multiplexing 272 RBs QAM64, DMRS Type 2
110
111 5.Test case 1250 SU-MIMO 8 Antennas 4 PDSCH Spatial Multiplexing, 6 D-slots Different RBs per slot
112
113 6.Test case 1252 MU-MIMO 16 Antennas 16 PDSCH Spatial Multiplexing, 20 D-Slots Different RBs per slot
114
115 Downlink Tx mWave Test Cases [mu=3 (120khz) and 100Mhz]
116 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
117
118 7. Test case 1001 2 Antennas 1 PDSCH Spatial Multiplexing, 40 Slots QAM64, 66RBs
119
120 8. Test case 1009 2 Antennas 1D and 1S PDSCH Spatial Multiplexing, 160 Slots, QAM64, 66RBs
121
122 Uplink Rx Sub6 Test Cases [mu = 0 (15khz) and 5Mhz]
123 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
124
125 9.Test case 1001 1 PUSCH
126
127 10.Test case 1002 1 PUCCH Format 2
128
129 Uplink Rx Sub6 Test Cases [mu = 0 (15khz) and 20Mhz]
130 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
131
132 11.Test case 1002 1 PRACH
133
134 12.Test case 1003 1 PRACH
135
136 Uplink Rx Sub6 Test Cases [mu = 1 (30khz) and 100Mhz]
137 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
138
139 13. Test case 1010 1 Antenna, 1 PUSCH Diversity, 1 Slot, QPSK, 272RBs 
140
141 14. Test case 1018 2 Antennas, 1 PUSCH Spatial Multiplexing, 20 Slots, QAM256, 144RBs
142
143 15. Test case 1086 4 Antennas, 1 PUCCH Format 0, 1 S Slot
144
145 16. Test case 1542 MU-MIMO 4 Antennas, 2 PUSCH Spatial Multiplexing, 1 Slot, QAM64, 272 RBs
146
147 Uplink Rx mmWave Test Case [mu = 3 (120khz) and 100Mhz]
148 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
149
150 17. Test case 1040 2 Antennas, 1 PUSCH Spatial Multiplexing PTRS, QPSK, 1 S slot, 64 RBs
151
152 Full Duplex Sub6 Test Case [mu=0 (15khz) and 20Mhz]
153 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
154
155 18. Test case 1018 4 Antennas, 4 PDSCH and 8 PDCCH in D Slots and 1 SSB, 4 PUSCH and 58 PUCCH in U Slots Spatial Multiplexing, 40 D slots, 40 U Slots QAM16,16 RBs
156
157 Full Duplex Sub6 Test Cases [u = 1 (30khz) and 100Mhz]
158 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
159
160 19. Test Case 1300 4 Antennas, 20 Slots, 16 PDSCH {QAM256, mcs28, 272rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QAM64, mcs28, 248rbs, 14symbols, 2Layers, 16UE/TTI}, 16 PDDCH,189 PUCCH and PRACH
161
162 20. Test Case 1301 4 Antennas, 20 Slots, 16 PDSCH {QAM64, mcs16, 272rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QAM16, mcs16, 248rbs, 14symbols, 2Layers, 16UE/TTI}, 16 PDSCH, 189 PUCCH.
163
164 21. Test Case 1302 4 Antennas, 20 Slots, 16 PDSCH {QAM16, mcs9, 272rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QPSK, mcs9, 248rbs, 14symbols, 2Layers, 16UE/TTI}, 16 PDCCH, 189 PUCCH.
165
166 22. Test Case 1303 4 Antennas, 20 Slots, 16 PDSCH {QAM256, mcs28, 190rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QAM64, mcs28, 190rbs, 14symbols, 2Layers, 16UE/TTI}, 16 PDCCH, 189 PUCCH.
167
168 23. Test Case 1304 4 Antennas. 20 Slots, 16 PDSCH {QAM64, mcs16, 190rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QAM16, mcs16, 190rbs, 14symbols, 2Layers, 16UE/TTI}, 16 PDCCH, 189 PUCCH.
169
170 24. Test Case 1305 4 Antennas, 20 Slots, 16 PDSCH {QAM16, mcs9, 190rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QPSK, mcs9, 190rbs, 14symbols, 2Layers, 16UE/TTI},16 PDCCH, 189 PUCCH.
171
172 25. Test Case 1306 4 Antennas, 20 Slots, 16 PDSCH {QAM256, mcs28, 96rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QAM64, mcs28, 96rbs, 14symbols, 2Layers, 16UE/TTI}, 16 PDCCH, 189 PUCCH.
173
174 26. Test Case 1307 4 Antennas, 20 Slots, 16 PDSCH {QAM64, mcs16, 96rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QAM16, mcs16, 96rbs, 14symbols, 2Layers, 16UE/TTI}, 16 PDCCH, 189 PUCCH.
175
176 27. Test Case 1308 4 Antennas, 20 Slots, 16 PDSCH {QAM16, mcs9, 96rbs, 12symbols, 4Layers, 16UE/TTI}, 16 PUSCH {QPSK, mcs9, 96rbs, 14symbols, 2Layers, 16UE/TTI}, 16 PDCCH, 189 PUCCH.
177
178 28. Test Case 1004 2 antennas, 1 Slot, URRLC test case with URLLC in D slot starting at Sym0,3 and in U Slot at sym8,11
179
180 29. Test Case 1350 32 Antennas, 20 Slots, 16 PDSCH {QAM256, mcs27, 32rbs,12/10symbols, 4Layers}, 16 PUSCH {QAM64, mcs28, 32rbs, 13 symbols, 2Layers}, 16 PDCCH, 189 PUCCH, PRACH, SRS.
181
182 Full Duplex mmWave Test Case [u = 3 (120khz) and 100Mhz]
183 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
184
185 30. Test Case 1001 2 Antennas, 80 Slots, 1 PDSCH {QAM64, mcs19, 66rbs, 2Layers}, 1 PUSCH {QAM64, mcs19, 2Layers},