21.04.2013 Views

ETTC'2003 - SEE

ETTC'2003 - SEE

ETTC'2003 - SEE

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The processing flow for the down converter is given below :<br />

Read_Data () ; Read data from ADC<br />

Convert_RNS_Index () ; Prepare for index multiplication<br />

Index_Mixer ( ) ; NCO output and sampled RF data multiplication<br />

Decimation_Filter ( ) ; Down sampling<br />

Conversion_RNS2Binary ( ) ; RNS to binary conversion<br />

NCO block<br />

The NCO is made of two parts: a phase accumulator and a waveform table in the<br />

ROM. The phase accumulator adder needs to be very fast in order to achieve its<br />

highest performance but for wide accumulators the propagation delay will limit the<br />

performance. An RNS based NCO was proposed by Chren [7]. In this RNS_NCO the<br />

phase accumulator is based on a moduli and the scalar performs the truncation<br />

between the phase accumulator output and the ROM. The conceptual view is given<br />

below.<br />

Moduli<br />

RNS<br />

ACCU<br />

RNS<br />

ACCU<br />

Phase<br />

accumulator<br />

Scalar<br />

Address<br />

Control<br />

RNS_NCO<br />

ROM<br />

RNS<br />

Processor<br />

In the above implementation, the phase accumulator is based on n channels with a<br />

very complex scalar hardware module. The scalar hardware is needed for the<br />

truncation of the phase accumulator output before being addressed to the ROM. The<br />

study currently focuses on how to reduce the complexity of the scalar circuit as well as<br />

look at alternative hardware structures to reduce the complexity for the FPGA<br />

implementation.<br />

Mixer block<br />

In a DDS, the incoming IF (Intermediate Frequency) data samples need to be mixed<br />

(multiplier) with the NCO output signals which are performed using an index calculus<br />

method. This index multiply technique uses the Galois field theory [8,9,10]; given a<br />

Galois field GF(p), where p is a prime number , it is possible to generate all non zero<br />

elements by using a primitive root of p. This approach requires following steps<br />

Index_Calculation ( )<br />

Addition_Modulo_p-1 ( )<br />

Reverse Index _Calculation ( )

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!