da40ad8013d3b8007cf1b8d8a1343d1378ebfdd8
[o-du/phy.git] / docs / fapi_5g_tm_build.rst
1 ..    Copyright (c) 2019-2020 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 18.08 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 Bronze Release consists of 15 basic tests in timer mode
72 where the DL, UL and FD paths are exercised for different channel types and numerology 0 and 1.
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 Uplink Rx Sub6 Test Cases [mu = 0 (15khz) and 5Mhz]
105 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
106
107 3.Test case 1001 1 PUSCH
108
109 4.Test case 1002 1 PUCCH Format 2
110
111 Uplink Rx Sub6 Test Cases [mu = 0 (15khz) and 20Mhz]
112 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
113
114 5.Test case 1002 1 PRACH
115
116 6.Test case 1003 1 PRACH
117
118
119 PDSCH {QAM256, mcs28, 272rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QAM64, mcs28, 248rbs, 14symbols, 2Layers, 16UE/TTI}, 189 PUCCH and PRACH
120 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
121
122 7.TEST_FD, 1300, 1, fd/mu1_100mhz/300/fd_testconfig_tst300.cfg
123
124 PDSCH {QAM64, mcs16, 272rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QAM16, mcs16, 248rbs, 14symbols, 2Layers, 16UE/TTI}, 189 PUCCH and PRACH
125 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
126
127 8.TEST_FD, 1301, 1, fd/mu1_100mhz/301/fd_testconfig_tst301.cfg
128
129 PDSCH {QAM16, mcs9, 272rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QPSK, mcs9, 248rbs, 14symbols, 2Layers, 16UE/TTI}, 189 PUCCH and PRACH
130 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
131
132 9.TEST_FD, 1302, 1, fd/mu1_100mhz/302/fd_testconfig_tst302.cfg
133
134 PDSCH {QAM256, mcs28, 190rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QAM64, mcs28, 190rbs, 14symbols, 2Layers, 16UE/TTI}, 189 PUCCH and PRACH
135 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
136
137 10.TEST_FD, 1303, 1, fd/mu1_100mhz/303/fd_testconfig_tst303.cfg
138
139 PDSCH {QAM64, mcs16, 190rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QAM16, mcs16, 190rbs, 14symbols, 2Layers, 16UE/TTI}, 189 PUCCH and PRACH
140 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
141
142 11.TEST_FD, 1304, 1, fd/mu1_100mhz/304/fd_testconfig_tst304.cfg
143
144 PDSCH {QAM16, mcs9, 190rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QPSK, mcs9, 190rbs, 14symbols, 2Layers, 16UE/TTI}, 189 PUCCH and PRACH
145 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
146
147 12.TEST_FD, 1305, 1, fd/mu1_100mhz/305/fd_testconfig_tst305.cfg
148
149 PDSCH {QAM256, mcs28, 96rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QAM64, mcs28, 96rbs, 14symbols, 2Layers, 16UE/TTI}, 94 PUCCH and PRACH
150 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
151
152 13.TEST_FD, 1306, 1, fd/mu1_100mhz/306/fd_testconfig_tst306.cfg
153
154 PDSCH {QAM64, mcs16, 96rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QAM16, mcs16, 96rbs, 14symbols, 2Layers, 16UE/TTI}, 94 PUCCH and PRACH
155 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
156
157 14.TEST_FD, 1307, 1, fd/mu1_100mhz/307/fd_testconfig_tst307.cfg
158
159 PDSCH {QAM16, mcs9, 96rbs, 12symbols, 4Layers, 16UE/TTI}, PUSCH {QPSK, mcs9, 96rbs, 14symbols, 2Layers, 16UE/TTI}, 94 PUCCH and PRACH
160 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
161
162 15.TEST_FD, 1308, 1, fd/mu1_100mhz/308/fd_testconfig_tst308.cfg