好文档 - 专业文书写作范文服务资料分享网站

含异步清零和同步加载的十进制加法计数器的设计

天下 分享 时间: 加入收藏 我要投稿 点赞

实验二 设计含异步清零和同步使能的加法计数器

1. 实验目的

学习计数器的设计、仿真和硬件测试,进一步熟悉VHDL设计技术。 2. 实验内容或原理

在Quartus II 上对源程序进行编辑、编译、综合、适配、仿真。说明源程序各语句的作用,详细描述其功能特点,给出其所有信号的时序仿真波形。RST为异步清零信号,高电平有效;CLK是锁存信号;EN为计数使能信号,LOAD为加载控制信号,DATA为预置数。当时钟信号CLK、加载控制信号LOAD、复位信号RST或时钟使能信号EN中任一信号发生变化,都将启动进程语句PROCESS。此时如果RST为‘0’,将对计数器清零,即复位,这项操作是独立于CLK的,因而称异步。

3.实验仪器

(1)GW48系列SOPC/EDA实验开发系统 (2)配套计算机及Quartus II 软件 4.实验步骤

(1)完成含异步清零和同步使能的加法计数器的VHDL描述,并对其进行波形仿真,确定结果正确。

(2)建议选择实验电路模式5对该设计进行硬件验证。 5. VHDL仿真实验

(1)为此工程新建一个文件夹。启动QuartusII软件工作平台,新建工程设计文件名为。在新建的VHDL模型窗口下编写源程序代码如下:

LIBRARY IEEE; USE CNT10 IS

PORT (CLK,EN,RST,LOAD: IN STD_LOGIC;

DATA: IN STD_LOGIC_VECTOR(3 DOWNTO 0); DOUT: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT: OUT STD_LOGIC ); END;

ARCHITECTURE behav OF CNT10 IS BEGIN

PROCESS(CLK,RST,EN,LOAD)

VARIABLE Q:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

IF RST='0' THEN Q:=(OTHERS=>'0');

1

ELSIF CLK'EVENT AND CLK='1' THEN IF EN='1' THEN

IF (LOAD='0') THEN Q:=DATA;ELSE IF Q<9 THEN Q:=Q+1; ELSE Q:=(others=>'0'); END IF; END IF; END IF; END IF;

IF Q=\ ELSE COUT<='0'; END IF; DOUT<=Q; END PROCESS; END behav;

(2) 创建工程及全程编译。完成源代码输入后即可创建工程然后进入全程编译,检查设计是否正确。选择Tools->Netlist Viewers->RTL Viewers命令,即HDL的RTL级图形观测器,选择好后即自动弹出计数器设计的RTL电路,如下图:

(3) 仿真。建立波形编辑文件进行功能仿真,仿真结果如下图所示,在脉冲上升沿出现时,只要满足RST=1,EN=1,计数器就开始计数。

(4) 硬件测试。完成仿真实验后,若仿真结果无误,则进行锁脚,然后下载到FPGA实验箱上进行硬件测试。

2

选择试验箱的模式为模式5,时钟CLK选择为CLOCK0(PIN_28脚),使能信号EN(PIN_234),复位信号RST(PIN_233),加载控制信号LOAD(PIN_235),预置数DATA(PIN_236,237,238,239),进位信号COUT(PIN_1),4位输出数据总线DOUT[3..0]可由数码1来显示,通过分别接PIO19、PIO18、PIO17、PIO16(它们对应的引脚编号分别为16、15、14、13)

6. 实验报告要求

将实验原理、设计过程、编译仿真波形和分析结果、硬件测试实验结果写进实验报告。

参考资料:参考书:EDA技术实用教程——VHDL版 第四版 潘松 黄继业编著

3

含异步清零和同步加载的十进制加法计数器的设计

实验二设计含异步清零和同步使能的加法计数器1.实验目的学习计数器的设计、仿真和硬件测试,进一步熟悉VHDL设计技术。2.实验内容或原理在QuartusII上对源程序进行编辑、编译、综合、适配、仿真。说明源程序各语句的作用,详细描述其功能特点,给出其所有信号的时序仿真波形。RST为异步清零信号,高电平有效;CLK是锁存信号;EN为
推荐度:
点击下载文档文档为doc格式
1hukz50gn20cqsi0v0jd0weks4q8c700nqq
领取福利

微信扫码领取福利

微信扫码分享