Академический Документы
Профессиональный Документы
Культура Документы
Abstract
In this paper, an optimized programmable demodulation scheme suitable for M-PSK/16QAM signals is proposed. The scheme adopts the conception of component reuse by exploring the demodulation structures of M-PSK and 16QAM respectively. The carrier phase recovery circuit uses the reduced complexity Costas loop. The symbol timing synchronization circuit adopts Gardner loop with offset cancellation. The optimized scheme is implemented in Field Programmable Gate Array (FPGA). The result of the experiment shows that this scheme can realize demodulation for M-PSK and 16QAM signals in real-time with less computation and FPGA resources. And this scheme has good flexibility and adaptability.
International Journal of Digital Content Technology and its Applications(JDCTA) Volume6,Number15,August 2012 doi:10.4156/jdcta.vol6.issue15.12
91
Optimization and Implementation of Programmable Demodulator for M-PSK/16QAM Signals Xiaoping Deng, Mao Tian, Yijun Luo, Jin Li
si (t ) = A cos(2p f c t + qi ), 0 t
where
T , i = 1, 2,..., M
(1)
qi = (2i - 1)p / M
The carrier frequency is chosen as an integer multiple of the symbol rate, therefore in any symbol interval, the signal initial phase is also one of the M phases. Usually M is chosen as a power of 2(i.e., M = 2 , n = log 2 M ). Therefore, the binary data stream is divided into n -tuples.
n
Each of them is represented by a symbol with a particular initial phase. Binary Phase Shift Keying (BPSK) and Quadrature Phase Shift Keying (QPSK) are special cases of M-PSK with M = 2 and 4, respectively [12]. Fig. 1 shows the constellations of BPSK, QPSK and 8PSK. QAM is a class of non-constant envelope schemes that can achieve higher bandwidth efficiency than M-PSK with the same average signal power. In this scheme, both amplitude and phase convey the information. Similar to M-PSK, QAM signal can be expressed as a linear combination of two orthonormal functions, the constellation of 16QAM is plotted in fig. 1.
2 (t )
2 (t )
2 (t )
2 (t )
1 (t )
(t )
(t )
1 (t )
92
Optimization and Implementation of Programmable Demodulator for M-PSK/16QAM Signals Xiaoping Deng, Mao Tian, Yijun Luo, Jin Li
I
) cos(2fc t
) sin(2 f c t
Q
Figure 2. Block diagram of basic M-PSK/QAM digital demodulator
Fig. 2 illustrates the block diagram of basic M-PSK/QAM digital demodulator. As shown, two correlators are required to correlate the received signal with the two quadrature carrier signals cos(2p f t + f ) and - sin(2p f t + f ) , where f is the carrier phase estimate. The carrier
c c
recovery block receives baseband signals and generates the two quadrature local carrier signals. The low-pass filters are used to eliminate the double-frequency terms following the correlators. The matched filters are used to detect the transmitted pulses in the noisy received signal. The symbol synchronizer controls the sampler decision block and decides the best time of decision. In the case of M-PSK scheme, the block of sampler decision is a phase detector, which compares the received signal phases with the possible transmitted signal phases. While in the case of QAM scheme, the block of sampler decision computes the Euclidean distance between the received noise-corrupted signal point and the M possible transmitted points, and selects the signal closest to the received point[13]. The parallel to serial converter converts the parallel symbols to a bit stream.
93
Optimization and Implementation of Programmable Demodulator for M-PSK/16QAM Signals Xiaoping Deng, Mao Tian, Yijun Luo, Jin Li
I ( n)
Kl
z
1
) cos( 0n
Q(n)
Kp
) sin( 0n
filter can be implemented in a low-pass filter by cascading the filter coefficients. The structures of those three parts in carrier recovery are general for both M-PSK and 16QAM. Therefore, those three parts can be used in this demodulator without any difference between M-PSK and 16QAM. The phase detector is the most complex part of the DPLL. Note that sin(D q) is monotonic with D q for - p / 2 q ? p / 2 and sin(D q) q when D q is small, so the complexity of the phase detector can be reduced by computing a signal proportional to the sine of the phase
.The reduced complexity phase detector for M-PSK and 16QAM is difference D q = q - q illustrated in fig. 4.
I ( n)
( n) I
Q (n)
(n) Q
94
Optimization and Implementation of Programmable Demodulator for M-PSK/16QAM Signals Xiaoping Deng, Mao Tian, Yijun Luo, Jin Li
the in-phase and quadrature amplitudes of the signals output the low-pass filters. The sine of the phase difference is expressed as
sin(D q) = ( n) I (n) ( n )Q ( n ) - Q I 2 ( n) I 2 ( n) + Q 2 (n) 2 ( n) + Q I (2)
which shows that the difference of the cross products is proportional to the sine of the phase difference. Therefore the difference of the cross products can represent the phase error. In order to use the difference of the cross products given by Eq.(2) when 16QAM signal is received, an amplitude detector is added into the structure of phase detector. This amplitude detector monitors the in-phase and quadrature amplitudes of the signals output the low-pass filters. The output of amplitude detector decides whether to pass the phase error on to the following loop filter or not. Note that the constellation points of 16QAM can be classified as three types according to the distance between them and the origin. The function of the amplitude detector can be described as
(3)
where Thr is the threshold classifying the constellation points with the largest distance and those falling into the other two types.
x ( m)
y (k )
95
Optimization and Implementation of Programmable Demodulator for M-PSK/16QAM Signals Xiaoping Deng, Mao Tian, Yijun Luo, Jin Li
the midway points can be -2,-1, 0, 1, 2 when transition occurs between symbols with no timing error. Thought the average value of the midway points is zero for large amount of symbols, timing jitter can be caused when transitions occur with midway point near -2,-1, 1 and 2. Fig. 6 illustrates the waves of QPSK and 16QAM demodulation.
y (r 1)
y (r 1/ 2)
y (r 1)
y (r 1/ 2) ( y ( r ) y ( r 1)) / 2 y (r )
y (r )
Figure 6. Waves of QPSK and 16QAM demodulation
The average value of y ( r - 1) and y ( r ) is a = ( y ( r - 1) + y (r )) / 2 .When there is no timing error exist, a should be 1. Therefore, we can get the new timing error err = y (r - 1/ 2) - a . The following process with err is the same with the midway point value of QPSK signals.
f ir_demod_v 90 clk0
NOT
reset_p
inst15
VCC
GenNewRatio clk0 Sy mbolRate[15..0] modulate_mode[1..0] clk Sy mbRate[15..0] mode[1..0] inst5 Ratio[13..0] ena_CARR ena Ratio[13..0] ena_CARR ena_sy mb
ast_source_ready ast_sink_error[1..0] Interpolator_Gardner_TED_ena clk0 ena_sy mb clk ena i[23..0] clk reset_n enable ast_sink_data[15..0] ast_sink_v alid ast_source_data[23..0] ast_sink_ready ast_source_v alid ast_source_error[1..0] sy m_clock reset_n q[23..0] sy m_clk reset_n remain[15..0] decimal[11..0] time_error[15..0] I_decision Q_decision i_decision q_decision
GND
inst8 f ir_demod_v 90
Dow nConvert
clk0 IF[9..0]
ena_CARR
i[18..0] q[18..0]
Dq[18..0]
VCC
GND
inst19 CarrierRecov ery _ena clk0 phase[13..0] err[23..0] LPF[43..0] clk id[23..0] qd[23..0] reset_n ena reset_n ena_CARR Ratio[13..0] modulate_mode[1..0]
estimate_value_ena
clk0
error[23..0] LPF[43..0]
reset_n ena_sy mb
inst
96
Optimization and Implementation of Programmable Demodulator for M-PSK/16QAM Signals Xiaoping Deng, Mao Tian, Yijun Luo, Jin Li
recovery loop. While estimate_value_ena module and Interpolator_Gardner_TED_ena module compose symbol timing synchronization circuit. Input pins SymbolRate[15..0] represent the symbol rate received. Input pins modulate_mode[1..0] control the modulation type that need to be processed. Output pins i_out and q_out are the base-band signal I ( n ) and Q ( n ) respectively. While Output pins i_decision and q_decision represent the recovered symbols of demodulator. A signaltap II logic analyzer result for these signals in the case of QPSK is illustrated in fig. 8, which proves that this demodulator can work correctly.
Table 1. FPGA resource utilization Combinational Dedicated logic Block memory DSP block 9-bit bits elements ALUTs registers 768 9,383,040 143,520 Total FPGA resource 143,520 53 4,605,806 19,597 Utilization before optimization 18,091 45 496,213 9,721 Utilization after optimization 6,728 Resource type
As the main resource types offered by FPGA device, combinational adaptive look-up tables (ALUTs), dedicated logic registers, block memory bits and DSP block 9-bit elements are chosen to evaluate the utilization of FPGA resource. The utilization before optimization represents the total resource utilization when M-PSK and 16QAM signals are processed separately in one FPGA device. As we can see, the utilization of all four types of FPGA resources has reduced obviously compare with that before optimization.
6. Conclusions
In this paper a new highly versatile programmable demodulator for both M-PSK and 16QAM signals is proposed. The carrier phase recovery circuit uses the reduced complexity Costas loop. While the symbol timing synchronization circuit adopts Gardner loop with offset cancellation. Moreover, its implementation in FPGA is carried out. The result shows that this demodulator can demodulate M-PSK and 16QAM signals correctly in real-time with less computation and FPGA resources. And its parameters such as carrier frequency and symbol rate can be reconfigured online. This optimized scheme is promising for the use of M-PSK/16QAM demodulation in Software Defined Radio applications.
7. References
[1] Paolo Zicari, Emanuele Sciagura, Stefania Perri, Pasquale Corsonello, A programmable carrier phase independent symbol timing recovery circuit for QPSK/OQPSK signals, Microprocessors and Microsystems, vol. 32, pp.437-446, 2008.
97
Optimization and Implementation of Programmable Demodulator for M-PSK/16QAM Signals Xiaoping Deng, Mao Tian, Yijun Luo, Jin Li
[2] Anton S. Rodriguez, Michael C. Mensinger Jr., In Soo Ahn, Yufeng Lu, Model-based Softwaredefined Radio (SDR) Design using FPGA, IEEE International Conference on Electro Information Technology, pp.1-6, May 2011. [3] L.E. FRANKS, Carrier and Bit Synchronization in Data CommunicationA Tutorial Review, IEEE Trans. Commun., vol. com-28, no. 8, pp.1107-1121, August 1980. [4] Yair Linn, Robust M-PSK Phase Detectors for Carrier Synchronization PLLs in Coherent Receivers: Theory and Simulations, IEEE Trans. Commun., vol. 57, no. 6, pp. 1794-1805, June 2009. [5] Heinrich Meyr, Marc Moeneclaey, Stefan A. Fechtel, Digital Communication Receivers: Synchronization, Channel Estimation, and Signal Processing, John Wiley & Sons, Inc., USA, 1998. [6] Chris Dick, Fred Harris, Michael Rice, FPGA Implementation of Carrier Synchronization for QAM Receivers, Journal of VLSI Signal Processing, vol.36, pp. 57-71, 2004. [7] Jin Li, Yijun Luo, Mao Tian, The Parallel Loop Filter and NCO in the All-Digital Parallel Receiver, International Journal of Digital Content Technology and its Applications, vol. 5, no. 12, pp484-490, December 2011. [8] Huang Lou, Pingfen Lin, A new lock detector for Gardner's timing recovery method, IEEE Transactions on Consumer Electronics, Vol.54, no.2, pp. 349-352, May 2008. [9] Emanuele Sciagura, Paolo Zicari, Stefania Perri, Pasquale Corsonello, An efficient and optimized FPGA Feedback M-PSK Symbol Timing Recovery Architecture based on the Gardner Timing Error Detector, 10th Euromicro Conference on Digital System Design Architectures, Methods and Tools, pp.102-107, August 2007. [10] Aldo Nunzio DAndrea, Marco Luise, Optimization of Symbol Timing Recovery for QAM Data Demodulators, IEEE Trans. Commun., vol. 44, no. 3, pp. 339-406 , March 1996. [11] Lili Zhang, Zhiming He, A modified timing synchronization algorithm for QPSK in digital receiver, 2011 2nd International Conference on Artificial Intelligence, Management Science and Electronic Commerce, pp.1821-1824, August 2011. [12] Fuqin Xiong, Digital Modulation Techniques, Artech House Inc., UK, 2006. [13] John G. Proakis, Masoud Salehi, Digital Communications, McGraw Hill Inc., USA, 2009. [14] Chris Dick, Fred Harris, Michael Rice, Synchronization in software radios - Carrier and timing recovery using FPGAs, IEEE Symposium on Field-Programmable Custom Computing Machines, pp. 195-204, April 2000. [15] Tao Wang, Signal Generator Based on Direct Digital Synthesis Techniques, International Journal of Digital Content Technology and its Applications, vol. 5, no. 8, pp. 24-30, August 2011. [16] Floyd M. Gardner, Interpolation in digital modems part Ifundamentals, IEEE Trans. Commun., vol.41, no. 3, pp.501-507, March 1993. [17] Floyd M. Gardner, A BPSK/QPSK Timing-Error Detector for Sampled Receivers, IEEE Trans. Commun., vol. com-34, no. 5, pp. 423-429, May 1986.
98