数字系统设计实验报告.doc
《数字系统设计实验报告.doc》由会员分享,可在线阅读,更多相关《数字系统设计实验报告.doc(15页珍藏版)》请在冰点文库上搜索。
计算机科学与技术学院
数字系统设计实验报告
姓 名:
学 号:
专 业:
班 级:
指导教师:
2011年 11月 徐州
实验4-1组合电路的设计
实验目的:
熟悉Quartus2的VHDL文本设计流程全过程,学习简单组合电路的设计,多层次电路的设计、仿真和硬件测试。
实验内容:
1.首先利用Quartus2完成2选1多路选择器的文本编辑输入和仿真测试等步骤,给出仿真波形。
最后在实验系统上进行硬件测试,验证本项设计的功能。
2.将此多路选择器看成是一个元件mux21a,利用元件例化语句描述,并将此文件放在同一目录中。
任务一:
1.程序代码
ENTITYmux21aIS
PORT(a,b,s:
INBIT;
y:
OUTBIT);
ENDENTITYmux21a;
ARCHITECTUREoneOFmux21aIS
BEGIN
PROCESS(a,b,s)
BEGIN
IFs='0'THENy<=a;ELSEy<=b;
ENDIF;
ENDPROCESS;
ENDARCHITECTUREone;
2.编译
3.时序仿真
4.观察RTL电路
任务二:
1.程序代码
entityMUXKIS
PORT(a1,a2,a3,s1,s0:
inbit;
outy:
outbit);
endentityMUXK;
ARCHITECTUREoneofMUXKIS
COMPONENTmux21a
port(a,b,s:
inbit;
y:
outbit);
endcomponent;
signaltmp:
bit;
begin
u1:
mux21aportmap(a=>a2,b=>a3,s=>s0,y=>tmp);
u2:
mux21aportmap(a=>a1,b=>tmp,s=>s1,y=>outy);
endarchitectureone;
2.编译
3.波形图
4.观察RTL电路
实验体会:
通过这次实验,对vhdl文本设计流程有了初步的了解,对组合电路的原理和构成有了更深的认识。
这次实验的最大收获就是学会了quartersII的初步使用方法。
实验4-2时序电路的设计
实验目的:
熟悉Quartus2的VHDL文本设计过程,学习简单时序电路的设计、仿真和测试。
实验内容:
1.设计触发器,给出程序设计、程序编译、仿真分析、硬件测试及详细实验过程。
2.设计锁存器,给出程序设计、程序编译、仿真分析、硬件测试及详细实验过程。
任务一:
1.程序代码
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYDFF1IS
PORT(CLK,D:
INSTD_LOGIC;
Q:
OUTSTD_LOGIC);
END;
ARCHITECTUREBHVOFDFF1IS
SIGNALQ1:
STD_LOGIC;
BEGIN
PROCESS(CLK,Q1)
BEGIN
IFCLK'EVENTANDCLK='1'
THENQ1<=D;
ENDIF;
ENDPROCESS;
Q<=Q1;
ENDARCHITECTUREBHV;
2.编译
3.波形图
4.观察RTL电路
任务二:
1.程序代码
libraryieee;
useieee.std_logic_1164.all;
entitydff3is
port(clk,d:
instd_logic;
q:
outstd_logic);
endentitydff3;
architecturebhvofdff3is
begin
process(clk,d)
begin
ifclk='1'
thenq<=d;
endif;
endprocess;
endarchitecturebhv;
2.编译
3.波形图
4.RTL模拟图
实验体会:
这次实验的内容是时序电路的设计,通过仿真来分析设计结果。
通过这次实验我对时序电路有了更深的理解。
作为一种工具语言,只有通过不停的实践和总结才能更好的提高自己的技能。
实验4-3含异步清0和同步时钟使能的加法计数器的设计
实验目的:
学习计数器的设计、仿真和硬件测试,进一步熟悉VHDL设计技术。
实验内容:
在Quartus2上对例进行编译、综合,仿真。
说明例中各语句的作用,详细描述示例的功能特点,给出其所有信号的时序仿真波形。
1.程序代码
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYCNT10IS
PORT(CLK,RST,EN:
INSTD_LOGIC;
CQ:
OUTSTD_LOGIC_VECTOR(3DOWNTO0);
COUT:
OUTSTD_LOGIC);
ENDCNT10;
ARCHITECTUREBEHAVOFCNT10IS
BEGIN
PROCESS(CLK,RST,EN)
VARIABLECQI:
STD_LOGIC_VECTOR(3DOWNTO0);
BEGIN
IFRST='1'THENCQI:
=(OTHERS=>'0');
ELSIFCLK'EVENTANDCLK='1'THEN
IFEN='1'THEN
IFCQI<9THENCQI:
=CQI+1;
ELSECQI:
=(OTHERS=>'0');
ENDIF;
ENDIF;
ENDIF;
IFCQI=9THENCOUT<='1';
ELSECOUT<='0';
ENDIF;
CQ<=CQI;
ENDPROCESS;
ENDBEHAV;
2.编译
3.波形图4.RTL模拟图
实验体会:
本次实验设计了一个含异步清0和同步时钟使能的加法计数器,设计原理较为简单,但在设计过程中也会出现一些小错误,通过细心的分析才能够使实验结果更加完善。
实验4-4用原理图输入法设计全加器
实验目的:
熟悉原理图的输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个全加器的设计把握利用EDA软件进行原理如输入方式的电子线路设计的详细流程。
实验内容:
设计全加器,给出程序设计、程序编译、仿真分析、硬件测试及详细实验过程。
1.半加器图
2.全加器图
3.编译
4.波形图
实验体会:
通过这次实验,我发现数字系统设计更加有趣,并对于一些原来不怎么理解理论认识更加透彻了,只有理论和实践的结合才能更好的理解并运用所学的知识。
硬件设计在掌握了基础设计知识后,重要的是设计的思维和方法。