“We couldn’t have completed this project without MATLAB. The integration between MATLAB and Simulink has been a clear advantage for us."
Morten Toft, RTX Telecom
To enable wireless network providers to increase system capacity and improve quality of service, communications engineers must deliver advanced and sometimes unproven technology, such as joint detection.
RTX Telecom in Denmark implemented joint detection in an advanced mobile voice and data 3G TD-SCDMA test terminal using MathWorks tools. The terminal enables network developers to verify that networks behave consistently under various loads. Using joint detection, the test terminal can account for both the desired user's signal and other user signals for interference cancellation, improving network performance and supporting more mobile users simultaneously.
“Getting joint detection to work properly in a real-life environment is quite a challenge because there are so many variables to consider,” says Toft. “We need to model not only the desired signal and its multipath channel, but also many interfering signals and their channels. At the same time, the power control loop is acting on all signals.”
Before implementing the joint detection algorithm, the engineers would need to devote thousands of hours to optimizing the algorithm under different environments, fading conditions, and load scenarios.
“It’s a complex, multidimensional problem,” explains Toft. “You need to know the relationships between the power loops so that you can excite the joint detection correctly to avoid the near-far problems that can reduce capacity if not mitigated correctly.”
Since several engineers would be working on this project, RTX Telecom needed a technology that would enable collaboration. To prepare for the commercial release of the test terminal, they also needed to create reusable models of the transmitter and receiver.
RTX Telecom engineers used MATLAB, Simulink, and related toolboxes and blocksets to design, simulate, test, and implement the entire physical layer of the test terminal, including the transmitter and receiver.
“It’s a nice combination, to use Simulink to store variables into workspaces and then go into MATLAB and work with the data plots for post-simulation analysis.” says Toft.
The engineers used MATLAB with the Signal Processing, DSP System, and Communications System toolboxes for algorithm development and analysis and to optimize the speed of the joint detection algorithm.
They used Simulink with the DSP System Toolbox™ and the Communications System Toolbox™ to build link-level models of the transmitter and receiver. Base station and wireless channel models acted as the test bench for their test terminal.
RTX Telecom first developed their link-level models in Simulink in double-precision floating point, for simulation on desktop hardware. For realistic field testing, the test terminal had to be in the actual terminal form factor, a PDA. Because double-precision is impractical in a small battery-powered device, they chose the more economical and power-efficient fixed-point hardware.
RTX Telecom ran the simulations and confirmed that there was no performance degradation by comparing the custom fixed-point S-function blocks that they built in C to the floating-point Simulink blocks.
“Simulink schedules both custom C-code blocks and Simulink blocks,” says Toft. “It’s an effective way to bring ideas of time and concurrency to a set of procedural algorithms.”
RTX Telecom used Simulink to simulate the fading channel and analyze the impairments with the target. The Simulink models served as an executable specification for verifying the implementation.
Using the Simulink test bench, they tested the joint detection algorithm in the C-code S-function blocks. They then tested the target implementation in Simulink before migrating and deploying the C code onto the target DSP.
“Using Simulink, we maintain the link between the model and the design, so that we can always go back and verify the implementation,” explains Toft. “Model-Based Design with Simulink also lets us avoid coding the same functionality twice.”
RTX Telecom plans to reuse and modify the Simulink models for the commercial version of the test terminal.
To develop an advanced mobile voice and data test terminal
Use MathWorks tools to design, simulate, test, and implement the entire physical layer of the test terminal