This folder contains the software for the device driver of CBMIMO1 and the physical layer signal processing.
|-- ARCH // contains drivers for hardware
| |-- CBMIMO1 // contains everything related to CBMIMO1
| | `-- DEVICE_DRIVER
| | |-- Makefile // main Makefile used to compile the driver; usually invoked from the top level Makefile
| | |-- cbmimo1_device.c // main file for device driver (initializes the card, bigphys, main variables)
| | |-- cbmimo1_device.h
| | |-- cbmimo1_dma.c
| | |-- cbmimo1_fileops.c // file that processes IOCTL commands coming from the userspace control utility (USERSPACE_TOOLS/OPENAIR_RF/)
| | |-- cbmimo1_generate_fs4.c // generates test signals (DEBUGGING)
| | |-- cbmimo1_generate_ofdm.c // generates test signals (DEBUGGING)
| | |-- cbmimo1_get_frame.c // code to grab a frame from the card
| | |-- cbmimo1_init.c // code to set up the registers of the card
| | |-- cbmimo1_pci.h
| | |-- cbmimo1_proc.c // generates the proc entries /proc/openair1/bch_stats and /proc/openair1/openair1_state
| | |-- cbmimo1_rf_cntl.c // controls the RF chipset on the card
| | |-- cbmimo1_test.c
| | |-- from_grlib_softconfig.h
| | |-- from_grlib_softregs.h
| | |-- defs.h
| | |-- extern.h
| | `-- vars.h
| |-- COMMON // common for all hardware (mainly bigphys)
| |-- EXPRESS_MIMO // contains everything related to EXPRESS MIMO
|-- DOCS // Documentation
| |-- DOXYGEN // Automaitcally generated DOXYGEN documentation in latex and html
| `-- PAPERS // papers related to openair1
|-- EMOS // this contains everything related to Eurecom MIMO Openair Sounder (EMOS)
| |-- DOC
| |-- DUMP // program that dumps channel estimate to disk using a FIFO
| |-- GUI
| |-- MATLAB // Matlab code to process measurements
| |-- SIM // EMOS simulator (for DEBUGGING)
| `-- UTIL
|-- MAC_INTERFACE // interface with MAC layer (in openair2)
|-- PHY // contains all signal processing related to physical layer (used in real-time AND simulation)
General remarks: every directory contains at least defs.h (for declaration of structure and functions), vars.h (for definitions of variables), and extern.h (variables are defined only once in cbmimo1_device.c (for real-time HW operation) or a top-level simulation (in SIMULATION/xxx), if variables are needed in another file, use extern.h)
...
...
@@ -57,17 +22,19 @@ General remarks: every directory contains at least defs.h (for declaration of st
| |-- spec_defs_top.h
| |-- types.h
| `-- vars.h
|-- SCHED // schedules the different PHY functions according to the nodes role (CH=BS, MR=UE)
|-- SCHED // schedules the different PHY functions according to the nodes role
| |-- defs.h
| |-- extern.h
| |-- phy_procedures.c // non-LTE PHY procedures this is used in synchronized mode to schedule the slot processing
| |-- phy_procedures_emos.c // non-LTE PHY procedures for EMOS