Skip to content

Comprehensive Random Number Generator implementation featuring both Pseudo-Random Number Generator (PRNG) using Linear Feedback Shift Registers and True Random Number Generator (TRNG) using Ring Oscillators

Notifications You must be signed in to change notification settings

OTANK10/Random-Number-Generation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

Random-Number-Generation

  • Project Overview

This project demonstrates the implementation of two fundamental types of random number generators in hardware:

PRNG using LFSR - Deterministic pseudo-random sequence generation
TRNG using Ring Oscillators - True randomness from physical noise sources

  • Technical Specifications

PRNG Specifications
image

TRNG Specifications
image

  • Implementation Details
  1. PRNG using Linear Feedback Shift Register

image

Theory of Operation
Linear Feedback Shift Registers (LFSRs) generate pseudo-random sequences using a deterministic algorithm. The feedback polynomial determines the sequence properties and period length.

  1. TRNG using Ring Oscillators

image

Architecture Overview
Ring oscillators generate true randomness by exploiting physical variations in gate delays, thermal noise, and power supply fluctuations.

Entropy Sources

Thermal Noise: Random fluctuations in semiconductor junctions
Process Variations: Manufacturing differences in gate delays
Power Supply Noise: Voltage variations affecting switching times
Environmental Factors: Temperature and electromagnetic interference

Simulation Results

PRNG Simulation Waveforms
image

Key Observations:

Correct Period: 63-cycle sequence confirmed
Feedback Operation: XOR logic functioning properly
Output Distribution: Expected pseudo-random pattern
Reset Behavior: Proper initialization to non-zero state

Educational Value

  • Concepts Demonstrated

Digital Logic Design: Sequential circuit implementation
Random Number Generation: PRNG vs TRNG comparison
Cryptographic Hardware: Foundation for security applications
FPGA Development: Complete design flow from HDL to hardware
Hardware Verification: Simulation and physical validation

  • Industry Applications

Cryptographic Systems: Key generation, nonces, padding
Gaming Industry: Fair random number generation
Scientific Computing: Monte Carlo simulations
Security Protocols: Challenge-response authentication
IoT Devices: Secure device identification

About

Comprehensive Random Number Generator implementation featuring both Pseudo-Random Number Generator (PRNG) using Linear Feedback Shift Registers and True Random Number Generator (TRNG) using Ring Oscillators

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published