Abstract
TRN (True Random Number) plays a key role in the communication system and so on. The TRNG (True Random Number Generator) based on FPGA (Field Programmable Gate Array) usually has a high speed and quality. In this article, we study several existing ways to generate the TRN in the FPGA using the oscillator rings which consist of an odd number of NOT gates, the structure of the oscillator rings and the sampling frequency are analyzed. An improved structure based on the oscillator rings is introduced here by which we can get higher speed and quality TRNG with fewer resources compared with the several methods mentioned in the references. The TRNG consists of 16 oscillator rings, each contains 3 NOT gates. The sampling frequency can reach 300M (Million bits per second). The design is implemented on the Altera Stratix II FPGA. The results passed the tests of the NIST (National Institute of Standards and Technology) randomness test suite. The restart experiments have shown that the TRNG outputs behaved truly random and not pseudorandom.