Developing an OFDM Transmitter and Receiver System Using LabWindows/CVI and PXI
"By employing a PXI hardware platform and LabWindows/CVI software, we completed the OFDM digital baseband process and processed the RF signal effectively and without a long development cycle. "
Rapidly completing orthogonal frequency division multiplexing (OFDM) digital baseband processing, RF signal processing, and signal verification with limited engineering resources.
Using NI PXI and LabWindows™/CVI 8.5 to construct a prototype of an OFDM transmitter and receiver that meet our system standards.
Na Di - State Administration of Radio, Film and Television
OFDM is a digital transmission system used extensively in digital audio broadcasting, digital terrestrial TV, and a wireless local area network (LAN). Demand for OFDM systems is growing due to its unique advantages in using the frequency spectrum and good performance of antimultipath effect. It is also regarded as one of fourth-generation mobile communication core technologies.
However, the engineering cost and time involved in developing an OFDM prototype is an obstacle in software programming and hardware circuit development. By building a real-time OFDM transmitter and receiver system using NI PXI and LabWindows/CVI, we avoided some of the common pitfalls in the development process, resulting in quick prototyping and lower-cost software development.
We used the LabWindows/CVI simulation platform to write the OFDM symbol digital baseband processing algorithms. In addition, we implemented the NI PXI-5671 and NI PXI-5661 to transmit and receive the OFDM RF analog signal. By validating the OFDM system, we developed a reliable solution for mass chip manufacturing without the burden of increased engineering cost and development time.
OFDM System Functionality
Using OFDM technology, we divided high-speed serial data into multiple low-speed parallel data and modulated multiple orthogonal subcarriers to better use the frequency spectrum and greater system capacity. The technology also serves to lengthen the time of symbol duration, which provides advantages in mobile, multipath, and signal fading environment conditions.
The main function of this system involves acquiring and processing audio signals using a front-end USB device that modulates the signals into OFDM symbols, then upconverts them to the RF signal transmitter. The receiver downconverts the RF signals received into digital signals and decodes them to the audio frame for the USB device to broadcast.
For the transmitter, the baseband data process primarily includes signal source coding, forward error correction (FEC), mapping, and OFDM framing. The hardware platform process includes digital upconversion and RF modulation. For the receiver, the baseband data process includes synchronizing, balance, unmapping, and audio decoding. The hardware platform process includes RF demodulating and digital down conversion.
Hardware Platform Structure
As shown in Figure 1, the system consists of two NI hosts, two USB sound cards, two cathode ray tubes (CRTs), and one spectrometer.
Figure 1. Structural Diagram of Hardware Platform System
The USB device in the transmitter system samples received audio signals and transmits them to NI hosts. Then upper-layer software in the transmitter system programs the OFDM baseband process algorithms. The generated OFDM baseband data is output into the NI PXI-5671 module and upconverted into an RF signal with 10 MHz central frequency.
We used the PXI-5671 with two detachable modules: the NI PXI-5441 and the PXI-5610. The PXI-5441 is divided into two modules: the random access memory (RAM) module, which is responsible for data transfer between the host PC and the PXI module, and the onboard signal process (OSP) module, which is responsible for signal resample and filtering and digital upconversion and digital-to-analog conversion. For the RF module, we used the PXI-5610 to modulate analog signal intermediate frequency (IF) output from the PXI-5441 into an RF signal within 250 KHz to 2.7 GHz after dual mixing amplitude and filtering.
In the receiver system, the PXI-5661 decodes RF input signals and downconverts them into digital baseband signals for output to the NI host. The PXI-5661 consists of two detachable modules: the NI PXI-5600 and PXI-5142. The PXI-5600 completes data transfer from the RF signal to the IF signal, and the two PXI-5142 modules – OSP and RAM – are respectively responsible for analog-to-digital sampling, digital downconversion, resampling and filtering, and data transfer between the host and the PXI module. Algorithms of upper-layer software in the receiver system decode audio signals and output them to USB for broadcast.
The host RAM must complete data generation from algorithms of the upper-layer software and data exchange between PXI modules for the receiver and transmitter systems. The DMA controls data transfer between the host RAM and module RAM with a maximum data throughput of 1 Gbytes/s. The onboard RAM uses Synchronization and Memory Core (SMC) technology; therefore, separately storing instructions and data is unnecessary. The field-programmable gate array (FPGA) in the host RAM processes all instructions produced by the upper-layer software, configures each module in OSP, and caches data. Finally, the OSP read driver sends data to the OSP module to resample, filter, and convert with an IQ speed set by the upper-layer software.
To achieve the realization of the baseband process algorithm, we selected the LabWindows/CVI software platform because the interactive development platform integrates compiling, linking, and debugging with standard ANSI C. Furthermore, the easy-to-use graphical interface simplified entering parameters directly on the function panel so that the entire program can run using event-driven function callback. The graphical display of data also contributed to a rapid development cycle.
Figure 2. OFDM Receiver and Transmitter GUI
Figure 3. Thread Control Flow Chart
The multithreading technology of LabWindows/CVI was another advantage for our system. In single-threaded systems, which usually consist of three modules (acquisition, process, and display and storage), data must be executed in sequence. This causes delays in functionality and processing that are unacceptable for the OFDM system. For example, the USB soundcard broadcasting in the receiver system requires the audio decoding module to compile one frame in 500 ms and provide the USB soundcard with continuous sampling points to play sounds, which require the entire baseband process finish within 400 ms for demodulation from a physical to an audio frame.
Using LabWindows/CVI multithreaded technology, we can split the process into several threads and run them in parallel. The transmitter algorithms complete processes of audio encoding, FEC, mapping, and OFDM framing, and write OFDM data into the RAM in three threads. The receiver algorithms read the OFDM baseband data and perform synchronizing, balancing, fast Fourier transform (FFT), demapping, and de-FEC in six threads. Then the audio decoder transmits the audio frame to the USB sound card for broadcasting.
LabWindows/CVI also provides functions for assuring thread synchronization and data transfer, such as event notification, safe queue, and thread priority. This system employs a global BUFFER and a safe queue callback function to ensure thread synchronization. One BUFFER and safe queue are shared between two threads; the former thread writes data computed into BUFFER and the FLAG generated into the safe queue, and the latter determines whether it satisfies the callback function by capturing the FLAG in the safe queue. If it satisfies the requirement, this thread will boot up and read data from the BUFFER. If not, the FLAG capturing continues. Data is read and written in two threads that converge through the FLAG in the safe queue.
By employing a PXI hardware platform and LabWindows/CVI software, we completed the OFDM digital baseband process and processed the RF signal effectively and without a long development cycle. This solution offers faster prototyping than if we had developed our own printed circuit board (PCB) with an FPGA. In addition, we greatly reduced software development time because LabWindows/CVI offers the flexibility to achieve quicker coding, testing, and integration time. Moreover, implementing NI hardware and software platform for an OFDM system reduced cost and labor requirements.
Explore the NI Developer Community
Discover and collaborate on the latest example code and tutorials with a worldwide community of engineers and scientists.
Who is National Instruments?
National Instruments provides a graphical system design platform for test, control, and embedded design applications that is transforming the way engineers and scientists design, prototype, and deploy systems.