EDA实验1-4 - 图文(4)

2019-08-30 19:31

课程名称:

实验项目:

实验地点:矿院楼二层

专业班级:电子信息工程 学号:

学生姓名:

本科实验报告

CPLD/FPGA应用设计 4位加法计数器 EDA实验室 1101班 年月日

实验八 4位加法计数器

一、实验目的

1.学习时序电路的VHDL描述方法。

2.掌握时序进程中同步、异步控制信号的设计。 3.熟悉EDA的仿真分析和硬件测试技术。 二、实验内容

1、编写4位二进制加法计数器的VHDL程序。 2、在QuartusⅡ上对加法计数器进行仿真。

3、将输入引脚连接到拨码开关,时钟输入锁定到相应频率的时钟信号,输出连接到发光二极管,下载后在实验板上验证其功能,记录实验结果。 三、实验仪器

软件:windows xp QuartusⅡ6.0 硬件:实验板 四、实验原理

设计一个含计数使能、异步复位和并行预置功能的4位加法计数器,RST是异步复位信号,高电平有效;CLK是时钟信号;当使能信号ENA为“1”'时,加法计数,COUT为计数进位输出,OUTY为计数输出。

VHDL程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT4B IS

PORT(CLK:IN STD_LOGIC; RST:IN STD_LOGIC; ENA:IN STD_LOGIC;

OUTY:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT:OUT STD_LOGIC); END CNT4B;

ARCHITECTURE BEHAV OF CNT4B IS

SIGNAL CQI:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

P_REG:PROCESS(CLK,RST,ENA,CQI) BEGIN

IF RST='1'THEN CQI<=\

ELSIF CLK'EVENT AND CLK='1'THEN IF ENA='1'THEN CQI<=CQI+1; END IF; END IF; OUTY <= CQI; END PROCESS P_REG;

COUT<=CQI(0)AND CQI(1) AND CQI(2) AND CQI(3); END BEHAV;

五、实验步骤

1、VHDL文本编辑

在QuartusⅡ6.0集成环境下,执行“file”中的“new”命令,弹出编辑文本类型的对话框,选择“Device Design file”- “VHDL File”后单击“OK”。

先采用VHDL文本输入设计法实现4位二进制加法计数器的数字逻辑电路,并将文件CNT4B.vhd保存在创建的目录下。

2、编译设计图形文件

对CNT4B.vhd设计文件进行编译,进而实现四位同步二进制加法计数器的数字逻辑电路

3、功能仿真、时序仿真

4、引脚锁定,下载及硬件测试 六、实验结果

1、源程序输入

2、RTL仿真

Add0CQI[3..0]A[3..0]4' h1 --B[3..0]PREOUT[3..0]DQCOUT~2COUTENAADDERCLRRSTCLKENAOUTY[3..0] 3、波形仿真

4、引脚分配

七、实验总结

1、在上述程序中是否可以不定义信号 CQI,而直接用输出端口信号完成加法运算,即 : OUTY <= OUTY + 1 ?

答:不可以,因为信号OUTY定义的端口模式是OUT,是单向输出模式,所以只能作为输出信号,不能在结构体内再用来作为输入信号;而且 VHDL里面规定输出端口不能做为赋值来用,而OUTY<=OUTY+1,就把OUTY当成赋值来用了

2、修改程序,用进程语句和IF语句实现进位信号count的输出。

if CQI (3)= ' 1'; then 答:process(CQI)

Begin Cout<=' 1'; If CQI(0)= ' 1' then End if if CQI(1)= ' 1'; then End process

if CQI(2)= ' 1';then 3、实验感想 。


EDA实验1-4 - 图文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:护理研究学试题及答案 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: