In this article, I will describe how to estimate the carrier phase from an incoming waveform in a feedforward manner. This algorithm utilizes a sequence of known pilot symbols embedded within the signal along with the unknown data symbols. Such a signal is sent over a link in the form of separate packets in burst mode wireless communications. In most such applications with short packets, the phase offset $\theta_\Delta$ remains constant throughout the duration of the packet and a single shot estimator is enough for its compensation. Here, the primary task of the designer is to develop this closed-form expression
Continue readingPhysical Layer Network Coding (PNC)
A wired channel such as an optical fiber or a coaxial cable carries the communication signal within a confined material. In contrast, a wireless channel has a broadcast nature in which the transmitted signal propagates in a 3D space in several directions. This gives rise to the multipath nature of this medium. In a multiuser scenario, this problem takes an interesting turn. A signal transmitted by any node reaches several nodes due to this property. Except the one for which the signal is intended, each node treats this transmission as an interference which is overcome through careful receiver design or
Continue reading3 Ways to Approximate atan2( ) in Hardware
When we think about signal processing, the focus is usually magnitude response of a system. However, in several DSP applications, the signal phase holds as much, if not more, significance as the magnitude response. For example, in digital FM demodulation, carrier phase synchronization and RF ranging, the phase (found through arctangent in four quadrants) of a complex signal needs to be computed by an FPGA or a DSP for further processing. In image processing applications, such an operation is also required to calculate the gradient orientations used in several popular feature descriptors like the Scale-Independent Feature Transform (SIFT) or the
Continue readingFractional Delay Filters Using the Farrow Structure
In the discussion on piecewise polynomial interpolation, we emphasized on the fact that the fractional interval $\mu_m$ needs to be updated for each symbol time $mT_M$ and hence the subscript $m$ in $\mu_m$. For this reason, the interpolation process becomes a two-step procedure. Update the filter coefficients $h_p[n]$. Perform the convolution between $z(nT_S)$ and $h_p[n]$. This process can be simplified if the two steps above can be combined in such a way that $\mu_m$ update is weaved into the convolution operation. In other words, instead of a two-input hardware multiplication with two variable quantities, complexity can be reduced by restructuring
Continue readingBeamforming – Mindfulness of an Antenna Array
If beamforming has to be explained in the most succinct manner, it is the mindfulness of an antenna array where it focuses its attention towards one specific location (or a few specific locations). We find out in this article how it is achieved. As opposed to its reputation, beamforming is not a mysterious technology. It has been used by signal processing engineers for radio applications since long. For example, Marconi used four antennas to increase the gain of signal transmissions across the Atlantic in 1901. It has also been known since 1970s that multiple antennas at the base station help
Continue reading