LUT Based Numerically Controlled Oscillator Verilog Code


Product specification

  • This is a LUT based Numerically Controlled Oscillator
  • This NCO can generate both sine and cosine signal based on a control signal.
  • The signals can be delayed or phase shifted by any phase from 1 to N.
  • Instant 180 degree phase shift is also possible without delay.
  • If N=1024, the cosine signals resembles atoms of FFT dictionary.
  • This NCO has 10-bit precision.
  • N can maximum value of 1024.
  • If N is less than 1024 then frequency difference can be reduced.

A numerically controlled oscillator (NCO) is used for on-chip generation of major signals like cosine, sine, linear frequency modulated (LFM), Gaussian etc. in system on chips (SoCs). These signals can be generated by two ways, either by analog circuitry or by digital circuitry. In a digital system, these signals are generated using numerically controlled oscillator (NCO) and then they are converted by an digital to analog converter (DAC).

An NCO block is a digital counter part of an analog oscillator circuit. There are two types of NCO designs available. In one type of NCO block, sinusoidal values are computed by a dedicated hardware like coordinate rotation digital computer (CORDIC). In another type of NCO block, a look up table (LUT) is used to store a sinusoidal signal of fundamental frequency (f_0) and sinusoidal signals of other frequencies are generated using the sinusoidal signal which is stored.

LUT based NCO blocks are very simple but have some disadvantages. Like they are not capable of generating sinusoidal signals of any frequency. But LUT based NCOs are hardware efficient than the other type of NCO block. Thus LUT based NCOs are mostly used because of their simplicity. In this work,  an efficient LUT based NCO block is designed to generate cosine or sinusoidal signals. The LUT based NCO block is implemented on Artix 7 field programmable gate array (FPGA).

More details about this product can be found here

LUT Based Numerically Controlled Oscillator – Digital System Design

(Visited 33 times, 1 visits today)


There are no reviews yet.

Be the first to review “LUT Based Numerically Controlled Oscillator Verilog Code”

Your email address will not be published.