随机数字生成器设计Verilog代码Quartus DE2开发板

名称:随机数字生成器设计Verilog代码Quartus  DE2开发板

软件:Quartus

语言:Verilog

代码功能:

开发一个随机显示的设计DE2板7段显示器上的

十进制数。随机数范围由1到59

具体操作

1操作员按key1开始这个序列。

2.然后操作员按key2键挑选出的随机数字显示在

HEX32上8秒。

3然后系统再次开始计数,重复第2阶段,但是无法再次选择以前选择的号码。

4.重复此过程,直到选定的数字数等于7

随机数字生成器.jpg

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在DE2开发板验证,DE2开发板如下,其他开发板可以修改管脚适配:DE2开发板.png

演示视频:

设计文档:

设计文档_重复7次.doc

1. 工程文件


2. 程序文件


3. 程序编译


4. RTL图


5. Testbench


6. 仿真图







重复7次后停止









部分代码展示:

//随机1~59
module Random_number(
input clk_in,//50MHz
input reset,//复位,低电平
input key1,//开始,按下低电平
input key2,//取随机数,按下低电平
output [7:0]HEX3,//显示数码管3
output [7:0]HEX2 //显示数码管2
);
wire [5:0] data_out;
wire [3:0] data_ten;//输出十位
wire [3:0] data_one;//输出个位
wire clk_1Hz;
wire [3:0] BCD_10;//十位
wire [3:0] BCD_1;//个位
//分频模块,50M分频到1Hz
fenping i_fenping(
. clk_in(clk_in),
. clk_1Hz(clk_1Hz)//输出1Hz
);
//随机数状态控制模块
random_state i_random_state(
. clk_in(clk_in),//50MHz
. reset(reset),//复位
. key1(key1),//开始
. key2(key2),//取随机数
. clk_1Hz(clk_1Hz),//1Hz信号,用于计1秒
. data_out(data_out)//输出随机数
);
//二进制转BCD模块
BCD i_BCD(
. data_in(data_out),
. BCD_10(BCD_10),//十位
. BCD_1(BCD_1)//个位
);
//数码管译码
HEX_decode i_HEX_decode(
. BCD_10(BCD_10),//输出十位
. BCD_1(BCD_1),//输出个位
. HEX3(HEX3),//
. HEX2(HEX2) //
);

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 随机数字生成器设计Verilog代码Quartus DE2开发板

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员