## 3 State-of-the-Art MIMO-SDR Systems
### MIMO Systems
#### 3.1.2 Hardware and Architecture Innovations  
The distributed MIMO system [47; 48], as the name indicates, uses distributed antennas, interconnected via wireless or wired together. Distributed architectures offer multiplexing capability and macro-diversity gains. However, to exploit the full gains offered by such a MIMO system, it is necessary to deploy the channel resources to behave as multiple-antenna arrays. There are two possible architectures that such systems could have [48]:  
* Single source transmission: a source (S), generating the signals to be transmitted, is connected via wireless or a physical interface to the non-collocated transmitting antennas. The signal is received, in the other side, by another set of antennas and transmitted to a receiving point (R) that gathers all the information. The signaling channel interfaces are necessary to set up the MIMO communications. Please refer to Figure 5a. * Cooperative transmission: in this case, each transmitting antenna represents a signal source by itself. The transmitting and receiving antennas can cooperate, using signaling channel information, without the need of an intermediate point. Please refer to Figure 5b. We note that the signaling channel (in the transmitter and the receiver side) could be at the same time/frequency band of communication; it is in-band. Otherwise, it is out-of-band, i.e., over an orthogonal channel [48]. Figure 5: Distributed MIMO system possible architectures: (a) single source transmission and (b) cooperative transmission. The signaling interface, in the transmission and reception side, is assigned to establish the MIMO transmission channel. Fiber-Based Systems  
In analogue radio over fiber, the analog up-converted radio frequency signal is transmitted through optical fiber and converted back to electrical after the transmission. The up-conversion and the phase synchronization are performed by several conventional transmitters with less complexity. Nevertheless, this transmission technique is affected by the distortion and nonlinearities of the optical transmission cables. However, recent advances [47, 49, 50] show a combination of fiber-based technology with distributed MIMO systems. A low-cost [47, 50] testbed was proposed to allow researchers to further investigate in this axis. The distributed MIMO testbed based on high-speed sigma-delta-over-fiber [47] corrects the problem of phase coherence between multiple distributed access points. The testbed with a central unit feeding twelve access points has been built with a low-cost fiber connection. Initial experiments at a center frequency of 2.365 GHz are presented in [47]. Another \(3\times 3\) testbed was proposed by [PERSON], [PERSON], [PERSON] and [PERSON] [50]. The system architecture, composed of twenty users and three base stations, draws a 259 bit/s/Hz median aggregate capacity in line-of-sight (LOS) and 233 bit/s/Hz in no LOS propagation conditions. GPU Implementations  
The traditional MIMO-SDR testbeds are implemented over DSP and FPGA boards. Although DSP and FPGA provide code flexibility and high performance, they present some drawbacks for some applications:  
The DSP arithmetic function does not support the new telecommunication trends. Developing and debugging FPGA is very complex and requires a prior advanced knowledge about the environment. Recent scientific investigations are focused on the parallelization of signal-processing code blocks using GPUs to achieve a higher processing speed for the SDR testbeds. The CUDA programming model, based on C, offers high-speed arithmetic processing with great flexibility. Several research works have been published in this area, proposing a complete SDR platform [51, 52] or only a partial process [53, 54, 27, 55] implemented over a GPU. [PERSON], [PERSON], [PERSON], [PERSON], [PERSON] and [PERSON] [51] use CUDA SDK to implement the signal-processing blocks of a \(2\times 2\) WiMAX MIMO system over an NVIDIA GTX275 GPU, (Santa Clara, CA, USA).