FPGA-全国集成电路技能大赛(2024)样卷1
一、题目
(二)子任务 2
利用给定的 FPGA 芯片内部资源,根据要求设计逻辑模
块,完成仿真并下载至 FPGA 应用系统板上进行功能验证。
1.任务要求
完成图 1 数字时钟单元的设计、仿真,并下载到 FPGA
应用系统板上进行功能验证。
图 1 是一个带清零和暂停功能的“数字时钟驱动单元”,
其中 CLK 为时钟信号;CLR 为异步复位信号;PAUSE 为暂
停信号;MSH,MSL 为百分秒的高位和低位,SH,SL 为秒
信号的高位和低位;MH,ML 为分钟信号的高位和低位。
2.操作过程
(1)FPGA 程序设计与下载验证
针对图 1 所示的数字时钟单元功能框图,使用相关软件、
Verilog HDL 语言,完成电路设计和功能仿真验证。
(2)FPGA 应用系统板开发
根据比赛所提供的物料和装配图等,完成 FPGA 应用系
统板的开发。
(3)FPGA 程序设计与下载验证
将设计好的数字时钟单元 Verilog 代码下载到 FPGA 应
用系统板上,利用系统板上相关的资源进行验证,确保该单
元功能完整。
3.现场评判要求
(1)只允许展示已完成的电路图、验证结果等。
(2)FPGA 系统板不能进行增加、删除、修改、连线等
操作
二、源代码
1、顶层模块代码
module dcmk(clk,clr,pause,seg1,seg2,com);
input clk,clr;
input pause;
output [7:0]seg1,seg2,com;
wire [3:0]msl,msh,sl,sh,ml,mh;
szmk u4(.clk(clk),
.clr(clr),
.pause(pause),
.msl(msl),
.msh(msh),
.sl(sl),
.sh(sh),
.ml(ml),
.mh(mh)
);
segmk u5(.clk(clk),
.clr(clr),
.msl(msl),
.msh(msh),
.sl(sl),
.sh(sh),
.ml(ml),
.mh(mh),
.seg1(seg1),
.seg2(seg2),
.com(com)
);
endmodule
2、时钟模块代码
module szmk(clk,clr,pause,msl,msh,sl,sh,ml,mh);
input clk,clr;
input pause;
output [3:0]msl,msh,sl,sh,ml,mh;
wire cn1,cn2;
msmk u1(.clk(clk),
.clr(clr),
.pause(pause),
.cn1(cn1),
.msl(msl),
.msh(msh)
);
smk u2(.clk(cn1