EDA上机实验报告.docx
- 文档编号:28195657
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:12
- 大小:490.85KB
EDA上机实验报告.docx
《EDA上机实验报告.docx》由会员分享,可在线阅读,更多相关《EDA上机实验报告.docx(12页珍藏版)》请在冰豆网上搜索。
EDA上机实验报告
EDA上机实验报告
学院:
计算机科学与技术学院
班级:
计科09-4班
姓名:
学号:
实验4-1组合电路的设计
一、实验目的:
熟悉Quartus2的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。
二、实验任务:
实验任务1:
首先利用Quartus2完成2选1多路选择器的文本编辑输入和仿真测试等步骤,给出仿真波形图。
最后在实验系统上进行硬件测试,并验证功能。
实验任务2:
将此多路选择器看成一个元件,利用元件例化语句描述程序。
三、实验过程及结果:
任务一、
这个实验的程序比较简单,实验的结果如下:
任务二、
首先建立工程,然后建立vhdl文件,并进行编辑,在编辑好之后进行仿真测试如下所示:
设置好输入输出之后,进行测试,测试效果如下;
图形输出正确,然后生成RTL电路图,如下所示:
四、实验代码:
任务一、
ENTITYMZIS
PORT(a,b,s:
INBIT;
y:
OUTBIT
);
ENDENTITYMZ;
ARCHITECTUREoneOFMZIS
BEGIN
y<=aWHENS='0'elseb;
ENDARCHITECTUREone;
任务二、
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYMUX21AIS
PORT(a1,a2,a3,s1,s0:
INSTD_LOGIC;
outy:
OUTSTD_LOGIC);
ENDENTITYMUX21A;
ARCHITECTUREBHVOFMUX21AIS
COMPONENTMZ
PORT(a,b,s:
INSTD_LOGIC;
y:
OUTSTD_LOGIC);
ENDCOMPONENT;
SIGNALtmp:
STD_LOGIC;
BEGIN
u1:
MZPORTMAP(a=>a2,b=>a3,s=>s0,y=>tmp);
u2:
MZPORTMAP(a=>a1,b=>tmp,s=>s1,y=>outy);
ENDARCHITECTUREBHV;
五、程序分析:
实验任务一和任务二都是多路选择器,实验任务一是一个二路选择器有2个输入,然后根据输入进行选择。
实验任务二继承了实验任务一种的功能并进行扩展,实现了多路选择。
实验4-2时序电路的设计
一、实验目的:
熟悉Quartus2的VHDL文本设计流程全过程,学习简单时序电路的设计、多层次电路设计、仿真和测试。
二、实验任务:
实验任务1:
设计触发器,给出程序设计、软件编译、仿真测试、硬件测试和详细的实验过程。
实验任务2:
设计锁存器,同样给出程序设计、仿真测试、硬件测试和详细的实验过程。
三、实验过程及结果:
任务一、
首先建立工程,然后建立vhdl文件,并进行编辑,在编辑好之后进行仿真测试如下所示:
设置好输入输出之后,进行测试,测试效果如下;
图形输出正确,然后生成RTL电路图,如下所示:
任务二、
首先建立工程,然后建立vhdl文件,并进行编辑,在编辑好之后进行仿真测试如下所示:
设置好输入输出之后,进行测试,测试效果如下;
图形输出正确,然后生成RTL电路图,如下所示:
四、实验代码:
任务一、
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYDFF1IS
PORT(CLK,D:
INSTD_LOGIC;
Q:
OUTSTD_LOGIC);
END;
ARCHITECTUREbhvOFDFF1IS
SIGNALQ1:
STD_LOGIC;
BEGIN
PROCESS(CLK)
BEGIN
IFCLK'EVENTANDCLK='1'
THENQ1<=D;
ENDIF;
ENDPROCESS;
Q<=Q1;
ENDbhv;
任务二、
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYSUOIS
PORT(CLK,D:
INSTD_LOGIC;
Q:
OUTSTD_LOGIC);
END;
ARCHITECTUREbhvOFSUOIS
SIGNALQ1:
STD_LOGIC;
BEGIN
PROCESS(CLK,D)
BEGIN
IFCLK='1'
THENQ<=D;
ENDIF;
ENDPROCESS;
ENDbhv;
五、程序分析:
实验任务一设计2个输入和一个输出,在程序体内设计一个临时信号来接收数据,当出现上升沿的时候就把输入D赋给信号Q1,最后输出时把Q1赋给Q输出。
实验任务二设计一个锁存器,当时钟信号为1的时候就进行赋值给信号变量,最后在输出。
实验4-3含异步清零和同步时钟时能的加法计数器设计
一、实验目的:
学习计数器的设计、仿真和硬件测试,并进一步熟悉VHDL设计的技术。
二、实验任务:
实验任务1:
在Quartus2上对例3-21进行编辑、编译、测试、综合、适配、仿真。
实验任务2:
引脚锁定以及硬件下载测试。
引脚锁定后进行编译、下载和硬件测试实验。
三、实验过程及结果:
任务一、
首先建立工程,然后建立vhdl文件,并进行编辑,在编辑好之后进行仿真测试如下所示:
设置好输入输出之后,进行测试,测试效果如下;
图形输出正确,然后生成RTL电路图,如下所示:
任务二、
在实验任务一的基础上,首先选择康芯的KX-7C5E+FPGA开发板。
然后确定引脚分别为:
主频时钟CLK按键8,K8,引脚号已标于板上,第69脚;计数使能EN接最上的红色拨码开关的第一脚;P91;复位EST接此开关的另一脚:
第90脚;COUT接地144脚;4位输出数据显示在数码管上引脚已经标于板上,于是总线CQ接的引脚号为34、38、39、42。
确定了引脚后就可按照书上的步骤进行下载编译测试了。
四、实验代码:
任务一、
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个实验主要实现计数的功能,异步清零和同步时钟的方式。
并在实验2中实现程序的下载编辑和测试。
实验4-4原理图输入法设计8位全加器
一、实验目的:
熟悉利用Quartus2的原理图输入法设计简单组合电路,掌握层次化设计的方法,并通过一个8位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。
二、实验任务:
实验任务1:
利用Quartus2的原理图输入法设计简单组合电路,完成半加器和全加器的设计。
实验任务2:
利用Quartus2的原理图输入法设计简单组合电路,完成更高层次的原理图设计,利用以上获得的1位全加器构成2位全加器。
三、实验过程及结果:
任务一、
首先建立工作页面然后按照设计好的步骤找到元件进行连线,下面是半加器:
然后使其生成元件,在连接好一位全加器:
至此一位全加器就设计好了。
任务二、
在上面的基础上,利用一位全加器设计好的元件在继续设计2位全加器,如图所示:
仿真的结果:
四、程序分析:
这个实验是利用Quartuas2的功能,在设计好实验仿真之后,按照自己设计的原理图进行设计全加器,先设计一个半加器,再封装起来,再把两个半加器串起来,封装后设置成硬件符号入库,最后再串两个全加器,就是二位的全加器。
并进行仿真。
实验总结和感想:
通过几次的实验我基本掌握了Quartuas2的使用方法,也顺利的完成了实验要求的任务,在试验中遇到的不懂得问题也在同学和老师的帮助下得到了解决。
通过实验我对VHDL语言的理解也更加的深刻了,注意到了更多的细节,这对我的学习有很大的帮助,帮助了我对数字系统设计有了一定的认知,了解并学习了一门语言。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 上机 实验 报告