= [wiki:OFDM MIMO OFDM] | [wiki:OFDM/MIMO#Documentation Documentation] | OFDM Model Overview = == Introduction == #Intro == Tools and Hardware Requirements == #Tools The MIMO OFDM core is designed using [http://www.xilinx.com/ise/optional_prod/system_generator.htm Xilinx's System Generator]. The current version of the core is compatible with System Generator 10.1.03. This System Generator model is known to work with both Virtex-II Pro and Virtex-4 devices. It should work in any architecture supported by System Generator. === Simulation === The OFDM model can be used in the MATLAB/Simulink simulation environment using just System Generator. In simulation, the OFDM model runs a simple BER test, using the transmit subsystem to generate a waveform and the receive subsystem to process it. Please note that while the simulation is "full-duplex" (transmitting and receiving simultaneously), the core does not support full-duplex operating in hardware. === Hardware === In order to use the OFDM core in hardware, the model must be converted to an PLB46-compliant peripheral. We use the EDK Export flow from System Generator to create the PLB-compatible memory interface, then integrate the OFDM core into a larger hardware/software project using the [http://www.xilinx.com/ise/embedded_design_prod/platform_studio.htm Xilinx Embedded Devleopment Kit]. == Files == The source files for the MIMO OFDM design are available in the WARP repository: [source:/ResearchApps/PHY/MIMO_OFDM]. [source:/ResearchApps/PHY/MIMO_OFDM/ofdm_txrx_supermimo.mdl ofdm_txrx_supermimo.mdl] Simulink/System Generator model for the full MIMO OFDM transceiver. [source:/ResearchApps/PHY/MIMO_OFDM/ofdm_rx_supermimo_init.m ofdm_rx_supermimo_init.m] This script sets a number of initial values and parameters in the receiver subsystem. [source:/ResearchApps/PHY/MIMO_OFDM/ofdm_tx_supermimo_init.m ofdm_tx_supermimo_init.m] This script sets a number of initial values and parameters for the transmitter subsystem. Some of these parameters are shared by both the transmitter and receiver models, so this script is also called by the receiver model's initilization script. [source:/ResearchApps/PHY/MIMO_OFDM/CRC_table_gen.m CRC_table_gen.m] Generates a table of remainders for the calculation of a 32-bit CRC. This table is used by both the Tx and Rx models for checksum calculation. [source:/ResearchApps/PHY/MIMO_OFDM/calcTxCRC.m calcTxCRC.m] MATLAB function which calculates the 32-bit CRC of a packet. This is used for simulation purposes only; the model implements both Tx and Rx CRC calculation in hardware.