Release A documents update
[o-du/l2.git] / docs / README
1 Directory Structure :
2 ---------------------
3 1. l2/build/ : contains files required to compile the code
4    a. common : contains individual module's makefile
5    b. config : contains SSI memory configuration
6    c. odu    : contains main makefile to generate an executable binary
7         
8 2. l2/src/ : contains layer specific source code
9    a. 5gnrmac  : MAC source code
10    b.   5gnrrlc  : RLC source code
11    c. cm       : common, environment and interface files
12    d. cu_stub  : Stub code for CU
13    e. du_app   : DU application and F1 code 
14    f. mt       : wrapper functions over OS
15    g. phy_stub : Stub code for Physical layer
16    h. rlog     : logging module
17
18
19 Pre-requisite for Compilation :
20 -------------------------------
21 1. Linux 32-bit/64-bit machine
22 2. GCC version 4.6.3 and above
23
24
25 How to Clean and Build:
26 -----------------------
27 1. Building ODU binary:
28    a. Build folder
29          cd l2/build/odu
30    b. Building ODU binary
31          make odu MACHINE=BIT64 MODE=FDD
32    c. Cleaning ODU binary
33          make clean_odu MACHINE=BIT64 MODE=FDD
34
35 2. Building CU Stub binary:
36    a. Build folder
37          cd l2/build/odu
38    b. Building CU Stub binary
39          make cu_stub MACHINE=BIT64 MODE=FDD
40    c. Cleaning CU Stub binary
41          make clean_cu MACHINE=BIT64 MODE=FDD
42
43 3. Cleaning ODU and CU Stub
44       make clean_all MACHINE=BIT64 MODE=FDD
45
46 How to execute:
47 ---------------
48 1. Assign virtual IP addresses as follows:
49       ifconfig <interface name>:ODU "10.0.2.20"
50       ifconfig <interface name>:CU_STUB "10.0.2.25"
51
52 2. CU execution folder:
53       cd l2/bin/cu_stub
54      
55 3. Run CU Stub binary:
56       ./cu_stub -f ../config/ssi_mem
57
58 4. DU execution folder:
59       cd l2/bin/odu
60      
61 5. Run ODU binary:
62       ./odu -f ../config/ssi_mem
63
64 PS: CU stub must be run first