1880 views|0 replies

6580

Posts

0

Resources
The OP
 

Optimization of Complex Multipliers in DSP Hardware FPGA [Copy link]

In digital signal processing, especially in communication signal processing applications, complex multipliers are often encountered. Some friends may feel strange, the signals are all real signals, where do complex numbers come from? In fact, in communication signals, the baseband signal will be divided into I and Q, and then modulated using QPSK/DQPSK. After demodulation at the receiving end, two signals will be obtained. So generally speaking, for the convenience of representation and operation, the I signal is generally regarded as the real part and the Q signal is regarded as the imaginary part. For example, after the input signal (I and Q) is transformed into a frequency signal (with real and imaginary parts) by FFT, it is represented as a+b*i and another complex number (cosx+sinx*i, represented as c+d*i) multiplied, which is equivalent to the phase shift of the I and Q signals in the time domain. Then the complex multiplier is used at this time. At a glance, a complex multiplier requires 4 multipliers and 3 adders (subtraction is actually complement addition): (a+b*i)*(c+d*i) = (a*c - b*d) + (b*c + a*d)*i = x + y*i But the formula can be simplified to: where x is equivalent to a*c - b*d + (b*c - a*d) - (b*c - a*d) So it can be simplified to a*c - b*c + a*d - b*d + (b*c - a*d) = (c+d)*(ab) + (b*c - a*d) = x Since the calculation of x already includes the results of b*c and a*d, we only need to calculate x to calculate y. It only takes 3 multipliers to calculate x. This saves one multiplier. If the FPGA's DSP48 is used as a multiplier, then this optimization method is very effective because one of the DSP48s is saved. Of course, if Xilinx's IPCORE is used and DSP48 is used to implement a complex multiplier, the multiplier generated by Xilinx is also similar to this architecture. However, if it is designed in ASIC or LUT is used to implement the multiplier, then this architecture may not save resources.

This post is from DSP and ARM Processors
 

Just looking around
Find a datasheet?

EEWorld Datasheet Technical Support

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews

Room 1530, Zhongguancun MOOC Times Building, Block B, 18 Zhongguancun Street, Haidian District, Beijing 100190, China Tel:(010)82350740 Postcode:100190

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号
快速回复 返回顶部 Return list