1、计算机 09-3 班 郑秀枫 09081311实验二 两位十六进制计数器一、 实验目的1、 继续熟悉 Quartus 环境2、 熟练掌握 VHDL 语言设计流程3、 了解 Verilog 语言的基本使用4、 熟悉 DE2 开发板上的时钟信号就 LED 显示器的使用二、 实验任务1、 完成第三章最后的实例,用 7 段数码管显示两位 16 进制数,clk 输入用FPGA 上的 50M 信号2、 用 Verilog HDL 实现 SW 输入 4 位二进制数,用 7 段数码管按十进制显示输出同时用 LED 灯显示三、 实验步骤1、 用 VHDL 实现两位 16 进制计数器(1) 新建 VHDL 源文件
2、,命名为 cn4e.vhd,设计实现一位 16 进制计数器,其代码如图 2-1 所示。计算机 09-3 班 郑秀枫 09081311图 2-1 图 2-2(2) 新建 VHDL 源文件,命名为 vhdl2s,设计实现七段数码管译码器,其代码如图 2-2 所示(3) 新建 VHDL 源文件,命名为 fenpin,设计实现分频电路,将输入的50MHz 的时钟信号变为 1Hz 的时钟信号,其代码如图 2-3 所示图 2-3 图 2-4(4) 新建 VHDL 源文件,命名为 my_pkg,将上三步实现的原件例化到my_pkg 程序包中,方便以后使用,其代码如图 2-4 所示。(5) 新建 VHDL 源
3、文件,命名为 counter16,利用已经例化的三个原件实现两位 16 进制计数器及输出到七段数码管显示的电路(如图 2-5) ,保存后将其设置为顶层文件,编译查看是否有错误。图 2-5(6) 新建波形文件,赋予每个输入端口某种输入信号,保存波形文件,进行功能仿真,观察输出端波形与输入信号关系是否正确。若不正确,查找问题所在并解决问题;若正确,则进行管脚分配,分配完毕后再编译一次使分配生效,连接 DE2 开发板到电脑,将文件下载计算机 09-3 班 郑秀枫 09081311到开发板进行验证。2、 用 Verilog 实现十进制数显示(1) 新建 Verilog 源文件,实现 SW 输入 4 位
4、二进制数,用 7 段数码管按十进制显示输出同时用 LED 灯显示,代码如图 2-6 所示图 2-6(2) 编译成功后,新建波形文件,赋予每个输入端口某种输入信号,保存波形文件,进行功能仿真,观察输出端波形与输入信号关系是否正确。若不正确,查找问题所在并解决问题;若正确,则进行管脚分配,分配完毕后再编译一次使分配生效,连接 DE2 开发板到电脑,将文件下载到开发板进行验证。四、 实验现象1、 两位 16 进制计数器代码下载到开发板之后,会看到 1 号和 0 号七段数码管每隔 1 秒就显示一个数字,从 00 到 FF,周而复始。2、 将显示十进制数程序下载到开发板,拨动 SW30,与之对应的红色 LED灯就会亮起,5 号和 4 号七段数码管显示与这个二进制数对应的十进制数。计算机 09-3 班 郑秀枫 09081311中国石油大学(华东)实 验 报 告课题名称 EDA 设计实验项目名称 实验二 两位十六进制计数器专业 计算机科学与技术 姓名 孙文吉