此模块采用层次化设计,将各个模块分开写,之后再通过顶层文件,对各个模块进行调用。
顶层文件里面包括分频器模块和总模块。
总模块里面有,计数器和显示器模块,总共就有这么多
以下就是各个模块的代码和代码上面都有注释它的功能
1,总模块
将十位计数器列出,利用中间变量ou实现32位计数器。
module _z(clk,clk_led,res,en,c,xs,led);
input clk,res,en,clk_led;
wire [3:0]ou1[7:0]; //[3:0] 和[7:0]共32位
wire [31:0]ou;
output c; //结果输出
output [2:0]xs; //位选信号
output [7:0]led;
wire o1,o2,o3,o4,o5,o6,o7;
//8个_j是指8个计数模块 十进制计数器
_j(clk,res,en,ou1[0],o1);
_j(o1,res,en,ou1[1],o2);
_j(o2,res,en,ou1[2],o3);
_j(o3,res,en,ou1[3],o4);
_j(o4,res,en,ou1[4],o5);
_j(o5,res,en