Professional Documents
Culture Documents
Yang 2022 J. Phys. Conf. Ser. 2189 012014
Yang 2022 J. Phys. Conf. Ser. 2189 012014
Yang 2022 J. Phys. Conf. Ser. 2189 012014
Abstract. This paper proposes a novel pseudo-random noise generator based on FPGA. The
system architecture is written by Verilog, and each sub-module is designed in Vivado software.
Modelsim is employed to co-simulate the sub-modules and the saved data is imported to
Matlab for spectrum analysis. Consequently, the proposed design can be applied to practical
noise generating with great scalability and flexibility.
1. Introduction
In the field of communication, noise played a critical role in affecting the performance of the
communication process. For instance, noise is often used to interfere with signals. Specifically, in
electronic warfare, in order to prevent the target from obtaining the correct information, noise is
widely utilized to interfere with the reception of the target signal. There are various kinds of noises in
nature, but to apply it to the communication, well-designed noise are artificially created to meet the
demand. Therefore, how to generate the required noise remains a problem that needs to be study and
settled. Man-made noise is not simply "random" noise, which means the randomness of the noise shall
be enhanced in other ways. Field Programmable Gate Array (FPGA) is a product of further
development on the basis of programmable devices such as PAL and GAL. It appears as a
semi-custom circuit in the field of application-specific integrated circuits (ASIC), which not only
solves the problem of custom circuits, but also overcomes the shortcomings of the limited number of
gate circuits of the original programmable device[1]. In recent years, rich literature focus on
pseudo-random noise, such as "Design of Active Noise Control System Based on FPGA." by Jun Yuan
et. al. and "Modular design and implementation of field-programmable-gate-array-based Gaussian
noise generator" published by Li, Lee, and Hwang[2]. This paper proposes a pseudo-random noise
generator with strong randomness and scalability based on FPGA.
2. Design Architecture
The system architecture diagram proposed in this paper is shown in Figure 1. The whole band-limited
pseudo-random noise generator includes a PN sequence generation module, a pseudo-random noise
generation module, a FIR filter module, and a CIC filter module. In this work, the designed symbol
rate ranges from 1KHz~1MHz, in which the supported symbol rate must be an integer multiple of 10.
In subsequent applications, the supported symbol rate can be modified by adjusting the filter
Content from this work may be used under the terms of the Creative Commons Attribution 3.0 licence. Any further distribution
of this work must maintain attribution to the author(s) and the title of the work, journal citation and DOI.
Published under licence by IOP Publishing Ltd 1
ICCTIT-2021 IOP Publishing
Journal of Physics: Conference Series 2189 (2022) 012014 doi:10.1088/1742-6596/2189/1/012014
coefficient. The input pseudo-random noise signal is uniformly yielded corresponding to the symbol
rate at a data rate of 100MHz.
3. Detailed design
The Register Transfer Level (RTL) schematic of this design is shown in Figure 2. The output noise
signal is designed to be 32bit, which is also divided into two 16bit channels from the CFIR module, I
and Q channels, respectively.
2
ICCTIT-2021 IOP Publishing
Journal of Physics: Conference Series 2189 (2022) 012014 doi:10.1088/1742-6596/2189/1/012014
also be adjusted according to actual needs. The noise data rate control will count by the input symbol
rate and determine when to output data and data valid flags.
In order to enhance the randomness of the output noise data in the noise synthesis process, the
pseudo-random sequence data sent from the previous stage is used to construct the address generation
algorithm and the data output algorithm, as the algorithms both relate to the input PN sequence. The
read address of the local noise ROM is a 12-bit address. The input PN sequence data would be shifted
and registered three times by the address generation algorithm: For the first time 1-bit PN sequence is
expanded into 4 bit; for the second time, the 4-bit data is transferred into 12 bit; and for the third time,
the 12-bit data is transferred into 48 bit. Finally, the 48-bit data is divided into 4 addresses as local
noise ROM address. The I and Q noise signals are the accumulation of the noise data read by the 4
local noise ROMs, and the current 4bit data of the shift register determines whether to use the read
noise data. Moreover, each bit of the 4-bit shift register data corresponds to a local noise ROM. Take I
noise data as an example, "1" means that the read local noise ROM data is used for accumulation, and
"0" disables the accumulation. The accumulation rule of the Q signal is opposite to that of the I signal.
3
ICCTIT-2021 IOP Publishing
Journal of Physics: Conference Series 2189 (2022) 012014 doi:10.1088/1742-6596/2189/1/012014
4
ICCTIT-2021 IOP Publishing
Journal of Physics: Conference Series 2189 (2022) 012014 doi:10.1088/1742-6596/2189/1/012014
4. Simulation Verification
The analog signals output of all levels of modules is presented in Figure 8. In the simulation, the data
type is signed to be decimal number and the automatic simulation is enabled. According to the
time-domain waveform, two pseudo-random noise signals, I and Q, are generated.
It can be seen from Figure 9 that the spectrum of the saved output data at all levels is printed using
the fvtool tool in MATLAB. When drawing the spectrogram, the I and Q signals are combined into a
complex signal. According to the spectrogram, the spectrum of the pseudo-random noise signal
conforms to our expected design.
5
ICCTIT-2021 IOP Publishing
Journal of Physics: Conference Series 2189 (2022) 012014 doi:10.1088/1742-6596/2189/1/012014
Figure 9. The normalized spectrum of the output noise signal of each level
5. Conclusion
In this article, a scheme of a pseudo-random noise generator based on FPGA is proposed, and
corresponding simulation verification is conducted through Modelsim and MATLAB. The simulation
results indicate that the design of this article has realized the generation of pseudo-random noise,
which can be configured with different symbol rates. In future works, the filter coefficients can be
adjusted to match more symbol rates; the depth of the local noise ROM can be adjusted to enhance the
randomness of the generated noise data.
References
[1] Li, H.P., Kong, X.C. (2010) Design and Implementation of UART Based on FPGA. Journal of
Graduate University of Chinese Academy of Sciences, 27(02):199-203.
[2] Yuan, J., Li, J., Zhao, Q., Meng, X.S. (2021) Design of Active Noise Control System Based on
FPGA. Scientific Journal of Intelligent Systems Research, 3(2).
[3] Li, Y.P., Lee, T.S., Hwang, J.K. (2016) Modular design and implementation of
field-programmable-gate-array-based Gaussian noise generator. International Journal of
Electronics, 103(5).
[4] Ding, Q., Pang, J., Fang, J., et al. (2017) Designing of Chaotic System Output Sequence Circuit
Based on FPGA and Its Applications in Network Encryption Card. Int.Inovative
Com-puting, Information and Control, 13:449-456.
[5] Mao, Y., Liu, C., Liu, W. (2006) Design and FPGA Implementation of a Pseudo-random Bit
Sequence Generator using Spatiotemporal Chaos[A].International Conference on
Communications, Circuits and Systems, ICCCAS, Proceedings, 3:2 114-2 118.
[6] Yu S., Luj, H. (2007) Order Chua's Circuit and Its FPGA Real-ization Al.Proceedings of the 26th
Chinese Control Con-ference.pp.26-31.
[7] Chen, G.L., Wu, Z.Q., Pu. L.H. (2011) Design of m-sequence generator based on FPGA.
Electronic Test, 08:45-47.
[8] Han, C.Y., Xu, N., Wang, G.Y. (2009) Design and implementation of a pseudo-noise bit sequence
generator. Modern Electronic Technology, 32(05):75-77.
6
ICCTIT-2021 IOP Publishing
Journal of Physics: Conference Series 2189 (2022) 012014 doi:10.1088/1742-6596/2189/1/012014
[9] Guo Y., Yang H. (2017) Design and FPGA implementation of FIR filter based on IP core. Radio
Engineering, 47(01): 79-82.
[10] Song, Z.D., Wang, Z.Q., Li, J.R., Shen, C.W., Liu, S.X. (2020) Design and implementation of FIR
digital filter based on FPGA. Liquid Crystal Display, 35(10):1073-1078.