Design of A ROM-Less Direct Digital Frequency Synthesizer On Fpga
Design of A ROM-Less Direct Digital Frequency Synthesizer On Fpga
Abstract
DDFS (Direct Digital Frequency Synthesizer) is a new technique of frequency
synthesizes which introduces the advanced digital processing theory into frequency
synthesis. A direct digital frequency synthesizer is composed of a phase accumulator, an
adder, an ROM for wave pattern saving, a D/A converter and a LPF (low pass filter).
With the rapid development of VLSI, the speed of algorithm is required increasingly
higher. This paper proposes a new frequency synthesizer by improving the structure of
data storage which ensures the accuracy and speed. Rotation method was used to resolve
the expected angle into many small rotation angles and sting wave symmetry principle
was used to resolve the string wave. From point to area, the values in one quadrant were
calculated and sampled and then the data was saved in ROM. Under the control of
frequency, the data in ROM was read and then transferred to the D/A converter chip and
the following low pass filter to achieve frequency synthesize. This algorithm could reduce
the usage of ROM to increase the calculation efficiency.
Keywords: string wave, digital frequency synthesizes, usage efficiency, Verilog, FPGA
1. Introduction
Frequency synthesizer is the device that utilizes one or more standard signals to
produce discrete frequency signals with algorithms. DDS technique is the third-generation
frequency-synthesis technique after digital integrated circuit and microelectronic
technology and it’s developing rapidly. It’s based on digital signal processing to
synthesize frequency from the phase-frequency characteristic of signals. It has high
frequency resolution ratio, short frequency conversion time, wide relative bandwidth,
continuous phase signal. The output capacity of arbitrary waveform and digital
modulation and is widely used in instruments, remote communication, radar, electronic
countermeasure, navigation, radio and television. Especially in short wave frequency
hopping communication, the signal is changing within wide frequency bandwidth and is
required to quickly switch frequency and phase position in small frequency interval. So
the intrinsic signal source utilizing DDS technique is an ideal choice [1].
DDS has an advantage in producing common signals with fewer devices and can be
used in various system modules. But traditional DDS has low efficiency and accuracy.
The design and realization of an improved harmonic signal generator is reported here. It
focuses on the improvement of frequency accuracy and compression of memory capacity.
It’s proved that with the improvement of structure and the introduction of new algorithms,
the compression of memory capacity is achieved without damaging the system speed and
stability [2, 3].
2. Frequency Synthesizer
In the early stage high-frequency acceptor, only expensive quartz oscillator can be used
to produce resonant circuit and now can be replaced by frequency synthesizer. Initial
frequency synthesis is proposed by H. J. Finder from Institute of Electrical and
Electronics Engineers. To output one or more expected frequency, one or more frequency
references are required. With its low cost and increasing efficiency, frequency synthesizer
is widely used in communication devices. Frequency synthesizer is classified into three
categories, DAS (Direct Analog Synthesis), DDFS and Indirect Frequency Synthesis.
Synchronous frequency synthesizer only needs one frequency reference source and is
composed of mixer, band pass filter and divider. The structure of a synchronous
frequency synthesizer is shown in Figure 2.
Divider ÷N
The phase accumulator is a controller with a slope of the curve. The output is a curve
with P digits. And the slope is controlled by the Frequency Control Word with L digits
[3]. The output diagram is shown in Figure 5.
m
2N - 1
FCW
Tclk
0 T t
As the working frequency of the phase accumulator is fclk, after one cycle, the
Frequency Control Word is added by one. The output efficiency of direct digital
frequency synthesis is show in (1).
fout fclk FCW 2l (1)
So the output efficiency is proportional to the Frequency Control Word. During the
frequency synthesis process, the sample frequency is fixed, so it’s the Output frequency
resolution that determines the change of Frequency Control Word. As shown in Figure 6.
(Xθ,Yθ)
sinθ
θ
(X0,Y0)
(0,0) cosθ
As shown in Figure 7:
X cos sin X 0 1 tan X 0 (2)
cos
Y
sin cos Y 0 tan 1 Y 0
It’ s shown in Figure 8 that the angle of rotation θ into N digressive small rotation
angles θn
N 1
= ii , i 0 (3)
k 0
Fig 8.he Disintegration of the Rotation Angle For the small rotation
X i 1 1 i tan i X i
Y cos i tan Y , i 0,1, 2, N 1,
i 1 i i 1 i
(4)
i arctan 2 i
, i 0,1, 2, , N 1 (5)
That is tan i 2 i , then
cos i
1
1
, i 0,1, 2, N 1
(6)
1 tan 2 i 1 22i
(4) can be written as
X i 1 1 i 2-i X i (7)
Y cos i i , i 0,1, 2, N 1,
i 1 i 2 1 Yi
So vector (X0,Y0)arrives at vector (Xθ,Yθ)after N-time rotation.
zi 1 zi i arctan(2i ), i 0,1, 2, N 1
X N 1
1 i 2 i X 0
Y cos i i (8)
i 0 i 2 1 Y0
N 1 1 i 2 i X 0
K i
i 0 2 1 Y0
i
K is the modulus correction factor, and
1 N 1 N 1
1 (9)
K
P i 0
cos i
i 0 1 22i
When N→∞, K→0.607253, so it can be regarded as a constant.
So, the calculation of vector rotation (2) can be transformed to the calculation of (9)
and the following iteration calculation.
xi 1 xi i yi 2i
(10)
yi 1 yi i xi 2i , i 0,1, 2, , N 1
As (7) is a constant and can be predetermined, so only the calculation (10) is needed. In
the iteration calculation, to follow the rotated angle, a new variable is introduced and
defined as
zi 1 zi i arctan 2i , i 0,1, 2, , N 1 (11)
It represents the left angle to be rotated after i-time rotation. Arctan(2-i) can be
predetermined and stored in the register. (10) and (11) constitute the basic iteration
relation of CORDIC algorithm [7].
Equation (10) only contains shift, addition and subtraction operation and is suitable to
be realized in hardware. This is the original intention of CORDIC algorithm. Figure 9 is
the hardware construction of this algorithm. It’ s realized by shifter and adder. As the
hardware construction of multiplication is too complex and the operation speed is slow, so
the multiplication is replaced by shifter to simplify Rotation Angle algorithm. This
method can greatly simplify the complexity of operation structure and increase the
operation speed.
The phase position input of direct digital frequency synthesizer is usually 16 digits or
32 digits. To reduce the size of ROM in the system structure, the digits are usually
reduced, which causes the sampled phase position error [8].
The cause of the amplitude quantization error is that the data in digital system is
expressed in limited digits, which results in error with the actual simulated data.
Amplitude quantization error is caused by the limited digits to store the wave amplitude in
the table system.
…… Storage cell
Clk
Bit-line
Address B0
line B1
Core array
B2 Row ……
Word-Line
……
decoder
Bn-1
A0
A1
A2 Column decoder / MUX
…
An-1
The output is got by using the input angle to get the sin/cos value with Look-Up Table.
Sin/cos is realized in ROM. The value of sin/cos in the first quadrant can reduce the size
of ROM. When ROM works, the reading of data is done by selecting a word-line
according to the column address. Then the row decoder selects n-digit data line according
to row address to output. Usually the row address is high address and column address is
low address. The cross of word-line and digit line is called core array, this is also where
data is stored. The cells in the core array represent a digit data. The required data can be
read by selecting the word-line and digit line. So through the planning of ROM, half-size
ROM is needed [12].
7
FCW 4
Register
7 6 2 Enable
x 1
+
6
Shifter
4
2 4 Enable
CLK
4
Shifter
4
4 2 6*16
4 ROM
x
6*16
MSB1
ROM
6 6
A
Complement 1's
6 6 d
Fout d
e
r 6
The circuit diagram is composed of three parts. The first part is input analysis
including recognizing the quadrant and analyzing the input order. The second part is to
invoke ROM to read data by analyzing the order. The third part is to calculate the final
coordinate to add and input the value from ROM, as shown in Figure 15.
R0_0 R1_0 R0_1 R1_1 R0_2 R1_2 R0_3 R1_3 R0_4 R1_4 R0_5 R1_5
From the three parts of the system, after the input is shifted in the shifter, the results are
combined in the first and second parts or the first and third parts. This principle is shown
in Figure 16. Two groups of addresses are got after shifting and then they’re stored in
ROM and added, and then output after being checked [13].
R1_3
x5
R1_2
x4 R1_1
R1_0
x3
x2 R0_3
R0_2
x1
R0_1
x0 R0_0
.
x[7:0] . .
.
Frequency Generator .f[6:0]
.
clk
Figure 18 shows the submodule created in the test. The submodule deals with 6 signals,
so it’s invoked 6 times. The output corresponding to different input is the data we need
[15].
most of the FPGA, these programmable devices also include memory elements such as
Flip-flop or other complete memory blocks.
In the hardware realization of FPGA, the selection of proper chip is also a very
important part of the work and is the basis of the design. The major process is choosing
proper FPGA chip manufacture, FPGA chip series, and FPGA chip model. Considering
the size of the system and the production upgrade, the EPlC4F400C6 chip in Cyclone
series is chosen.
By changing the frequency word, we verified the function of DDS with different
frequency, the simulation results of 1200KHz and 10KHz sine wave was shown in
Figures 20 and 21.
As shown in the above two figures, the output frequency is as same as the one provide
by frequency control word, and the result is right. The amplitude corresponds to the
number stored in the ROM. The DDS also got high frequency accuracy and met the
requirements basically.
5. Conclusions
In recent years, with the development of ultra-high-speed digital circuits and in-depth
study of the DDS, the speed of DDS is more and more crucial. The study found that, in
the process of compositing waveform by looking up table, the speed of DDS is restricted
to the speed of accessing ROM. In this paper, we improved the ROM frame of traditional
DDS based on the work mode of phase accumulator pipeline. The proposal of
combination the ROM data and external data assignment, which reduced the times of
ROM accessing, enhanced the speed of DDS. The theoretical analysis and design of a
new direct digital frequency synthesizer is completed. The simulation of hardware and
software is also done. The results show that the size of ROM is reduced without reducing
the working frequency of DDS and damaging the accuracy. As while as, the operating
speed of the system is improved, and the power consumption is reduced. It’s provides a
new insight to embed DDS into computer system.
References
[1] J. M. P. Langlois and D. Al-Khalili, “Phase to sinusoid amplitude conversion techniques for direct
digital frequency synthesis,” IEE Proc. Circuits Devices Syst., vol. 151, no. 6, (2004) December, pp.
519-528.
[2] M. Kesoulis, D. Soudris and C. Koukourlis, “Systematic methodology for designing low power direct
digital frequency synthesizers”, IEE Circuits Devices Syst., (2007) January, pp. 293–304.
[3] C. C. Wang, J. M. Huang, et al., “Phase-Adjustable pipelining ROM-Less direct digital frequency
synthesizer with a 41.66 MHz output frequency”, IEEE Trans. Circuits and System-II Express Briefs,
vol. 53, no. 10, (2006) October, pp. 1143-1147.
[4] D. De Caro, N. Petra and A. G. M. Strollo, “Reducing look-up table size in direct digital frequency
synthesizers using optimized multi- partite table method”, IEEE Trans. Circuits Syst. I, Reg. Papers, vol.
55, no. 7, (2008) August, pp. 2116–2127.
[5] [5] S. S. Jeng, S. M. Chang, and B. S. Lan, “multi-mode digital IF downconverter for software radio
application,” IEICE Trans. Com- mun., vol. E86-b, no. 12, (2003) December, pp. 3498−3512.
[6] G. L. Haviland and A. Tuszynski, “A CORDIC arithmetic processor chip”, IEEE.Trans.on Comput.,
vol. C29, 2, (1980), pp. 68-79.
[7] T.-B. Juang and M.-Y. Tsai, “Para—CORDIC:Parallel CORDIC Rotation Algorithm”, IEEE
Transactions on Circuits and Systems, vol. 51, no. 8, (2004), pp. 1515-1524.
[8] D. De Caro and A. G. M. Strollo, “High performance direct digital frequency synthesizers using
piecewise polynomial approximation”, IEEE Trans. Circuits Syst. I, Reg. Papers, vol. 52, no. 2, (2005)
February, pp. 324–337.
[9] F. de Dinechin and A. Tisserand, “Some improvements on multipartite Tables methods”, IEEE
Transactions on Computers, vol. 54, no. 3, (2005) March, pp. 319–330.
[10] M. Schulte and J. Stine, “Approximating elemen- tary functions with symmetric bipartite Tables”, IEEE
Transactions on Computers, vol. 48, no. 8, (1999) August, pp. 842–847.
[11] G. C. Cardarilli, D. Alessio, M. D. Nunzio, L. Fazzolari, R. Murgia and D. M. Re, “FPGA
implementation of a low-area/high-SFDR DDFS architecture”, IEEE, Signals, Circuits and Systems
(ISSCS), (2011), pp. 1-4.
[12] A. L. Grama and I. Baciu, “An improved architecture to generate sinusoidal signal using diect digital
frequency synthesis technique”, IEEE Conference Publications, Electronics Technology, (2008), pp.
284–287.
[13] A. Grama and G. Muntean, “Direct Digital Frequency Synthesis implemented on a FPGA chip,” IEEE,
Electronics Technology”, ISSE '06, 29th International Spring Seminar on, (2006), pp. 92–97.
[14] I. Hatai and I. Chakrabarti, “A novel low-latency, high-speed DDFS architecture”, IEEE, India
Conference (INDICON), 2010 Annual IEEE, (2010), pp. 1–4.
[15] M. A. Butt and S. Masud, “FPGA based bandwidth adjustable all digital direct frequency synthesizer”,
IEEE, Communications and Information Technology, ISCIT, 9th International Symposium on, (2009),
pp. 1399–1404.
[16] M. Genovese and E. Napoli, “Direct Digital Frequency Synthesizers implemented on high end FPGA
devices”, IEEE, Ph.D. Research in Microelectronics and Electronics (PRIME), 2013 9th Conference on,
(2013), pp. 137–140.
[17] L. S. J. Chimakurthy, M. Ghosh, F. F. Dai and R. C. Jaeger, “A novel DDS using nonlinear ROM
addressing with improved compression ratio and quantization noise”.