cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Newbie
Newbie
5,055 Views
Registered: ‎07-13-2010

DDS compiler 4

Jump to solution

Hi,

i have some questions about DDS compiler 4. I found not the information in datasheet DDS v 4 how is the LUT of sin/cos adressed? Because the MSB of the pahse accumulator(D1) gives the output frequency(or addrers(A1) owerflow) and then i think the LUT would be adressed only by modulo Δθ and that is not very good sollution. I found one information it's adressed by BΘ(n) but how is it truncated Bθ(n) and which bit gives the information about the frequency? Don't know if you understood me what i thing but if any answers i will try explain it better or i give an example.

Thanks!

Tags (2)
0 Kudos
1 Solution

Accepted Solutions
Highlighted
Xilinx Employee
Xilinx Employee
5,716 Views
Registered: ‎02-09-2009

Hello,

 

The LUT is addressed using the MSBs of the output of the phase accumulator. This is a standard method of implementing a NCO or DDS. The number of MSBs used, or I think what you are refering to as modulo Δθ can be chosen arbitrarily large to provide as much frequency resolution as is required. However, in practice, instead of increasing the number of MSBs used to increase the frequency resolution (which results in a deeper look up table requiring more memory), it is more efficient in hardware to use a smaller look-up table combined with other techniques such as noise shaping, linear interpolation and quarter wave symmetry. The result of using these techniques is that the same effective frequency resolution and dynamic range can be acheived with a smaller Look-up table compared with simply increasing the depth of the Look-up table.

 

Ultimately, what designers usually are most concerned with is the spectral purity of the output waveform, and the amount of frequency resolution. The DDS Compiler makes hardware trade-offs with these goals in mind.

 

What is it about using the MSBs of the phase accumulator that you are concerned with?

 

Regards,

Elliot

View solution in original post

2 Replies
Highlighted
Xilinx Employee
Xilinx Employee
5,024 Views
Registered: ‎08-16-2007

Are you asking what the LUT utilization of the DDS Compiler is?

I don't know the answer to your questions but you could generate a DDS Compiler and open the .ngc in PlanAhead to view how it's implemented. 

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
5,717 Views
Registered: ‎02-09-2009

Hello,

 

The LUT is addressed using the MSBs of the output of the phase accumulator. This is a standard method of implementing a NCO or DDS. The number of MSBs used, or I think what you are refering to as modulo Δθ can be chosen arbitrarily large to provide as much frequency resolution as is required. However, in practice, instead of increasing the number of MSBs used to increase the frequency resolution (which results in a deeper look up table requiring more memory), it is more efficient in hardware to use a smaller look-up table combined with other techniques such as noise shaping, linear interpolation and quarter wave symmetry. The result of using these techniques is that the same effective frequency resolution and dynamic range can be acheived with a smaller Look-up table compared with simply increasing the depth of the Look-up table.

 

Ultimately, what designers usually are most concerned with is the spectral purity of the output waveform, and the amount of frequency resolution. The DDS Compiler makes hardware trade-offs with these goals in mind.

 

What is it about using the MSBs of the phase accumulator that you are concerned with?

 

Regards,

Elliot

View solution in original post