一、实验准备
1.1 实验设计
二、项目开始
2.1 创建工程文件,新建一个verilog文件,名字自取
具体过程可以参考基于Quartus-II软件实现一个1位全加器的设计
2.2 源码:
module running_gly(clk,reset,pause,msh,msl,sh,sl,minh,minl);
input clk,reset,pause;
output [3:0] msh,msl,sh,sl,minh,minl;
reg [3:0] msh,msl,sh,sl,minh,minl;
reg count1,count2;
always @(posedge clk or posedge reset)
begin
if(reset)
begin
{msh,msl}<=0;
count1<=0;
end
else if(!pause)
begin
if(msl==9)
begin
msl<=0;
if(msh==9)
begin
msh<=0;
count1<=1;
end
else
msh<=msh+1;
end
else
begin
msl<=msl+1;
count1<=0;
end
end
end
always@(posedge count1 or posedge reset)
begin
if(reset)
begin
{sh,sl}<=0;
count2<=0;
end
else if(sl==9)
begin
sl<=0;
if(sh==5)
begin
sh<=0;
count2<=1;
end
else
sh<=sh+1;
end
else
begin
sl<=sl+1;
count2<=0;
end
end
always @(posedge count2 or posedge reset)
begin
if(reset)
begin
minh<=0;
minl<=0;
end
else if(minl==9)
begin
minl<=0;
if(minh==5)
minh<=0;
else
minh<=minh+1;
end
else
minl<=minl+1;
end
endmodule
2.3 创建wvf波形文件
具体步骤也可以参考上面的连接
我在这里放结果图:
讲一下重点步骤,这里做的是数字秒表设计
-
编辑仿真时间(我定的是1秒)
-
编辑时钟(设置1ns为1拍)
-
调整信号
-
仿真实现
Simulation出了点小问题,暂时无法仿真。