EDA实验指导书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一利用原理图输入法设计4位全加器
一、实验目的:
熟悉如何在QuartusⅡ集成环境下利用原理图输入设计简单组合逻辑电路,掌握层次化的电路设计方法。
二、实验原理:
一个4位全加器可以由4个一位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的进位输入信号
cin相接。
三、实验内容:
1.QuartusII软件的熟悉
熟悉QuartusⅡ环境下原理图的设计方法和流程,可参考课本5.4节的内容,重点掌握层次化的设计方法。
2.设计1位全加器原理图
设计的原理图如下所示
3.利用层次化原理图方法设计4位全加器
(1)生成新的空白原理图,作为4位全加器设计输入
(2)利用已经生成的1位全加器作为电路单元,设计4位全加器的原理图,如
下所示
以上为一位半加器
以上为1位全加器
以上为4位全加器
4、设计一个超前进位4位全加器
以上设计的全加器是基于串行进位的结构,高位的进位输入必须等待低位的运算结果,造成较长的延时。通过对进位位进行超前运算,可以缩短这部分的延
时。
在已有1位全加器的基础上设计一个具有超前进位结构的4位全加器,原理图如下所示
以上为4位超前进位全加器
5、完成设计流程
(1)在QuartusII环境下对以上设计电路按照教材5.1节的流程进行编译,排
除错误,生成最终配置文件。
(2)对结果进行时序仿真,观察设计的正确性(注意观察时序仿真波形中引入
的延时),如有错误应改正电路,并重新执行整个流程,直到得到正确的仿真结
果。
四、思考题
1、你在原理图设计中使用的是哪一个库里面的元件,是否还有其他库可用,有
什么不同?请试着用另外一个库重复以上的设计内容。
2、试用QuartusII下的时序分析器(教材11.3.7~11.3.8)分析两种进位结构的
4位全加器的时序,给出数据对比,说明两者之间的性能差异。
以上为串行加法器仿真时序
以上为超前进位加法器仿真时序
对比两图可以看出超前进位加法器在相同时间内毛刺宽度比串行加法器短,更早进入稳定状态,说明超前进位加法器运行速度更快。
实验二简单组合电路的设计
一、实验目的:
熟悉QuartusⅡ境下以VHDL作为输入的设计全过程。学习简单组合电路的设计、多层次电路设计、仿真和实际硬件电路测试的方法。
二、实验原理
VHDL硬件描述语言是一种可以从多个层次上对数字逻辑电路进行建模的国际标准(IEEE),本次实验是用VHDL设计一个简单的数字组合逻辑电路,并结合QuartusⅡ环境和实验电路进行硬件测试。
三、实验内容:
1)根据实验一中一位全加器的电路原理图,改用VHDL语言文本输入方法,设计一位全加器,要求采用结构化的描述方法。设计完成后,利用QuartusⅡ集成环境进行时序分析、仿真,记录仿真波形和时序分析数据。
2)用VHDL语言设计一个四选一数据选择器电路。
要求先设计一个二选一数据选择器mux21,然后利用元件例化语句设计四选一数据选择器mux41,同样请给出时序分析数据和仿真结果。
四、思考题
如果不使用元件例化语句,而是直接设计四选一数据选择器mux41,应如何用VHDL进行描述?
见附录。
实验三简单时序电路的设计
一、实验目的:
掌握QuartusⅡ环境下以VHDL作为输入的整个设计过程,学习简单时序电路的设计、仿真和硬件测试方法。
二、实验原理
时序逻辑电路是现代复杂数字电路的重要组成部分,往往占到整个设计的90%以上。触发器是时序电路的基本单元,本实验中将涉及到边沿触发和电平触发两种电路结构,其中边沿触发是实际电路实现的主要方式。
三、实验内容
1)设计一个上升沿触发的D触发器
输入:D
输出:Q
触发时钟:CLK
2)设计同步/异步清零D触发器
触发器有两种清零方式:同步——当触发沿到来时,若清零信号有效,则实现清零;异步——任何时候清零信号一旦有效,触发器马上清零,而不论触发沿是否到来。
在以上设计的D触发器基础上,加入清零端rst,分别实现同步和异步清零方式。
3)设计一个高电平有效的锁存器
输入:D
输出:Q
触发:E
电平触发的锁存器与沿触发的触发器不同之处在于当触发端处于有效电平时,输出等于输出,随输入变化;触发端无效时输出保持不变。
4)在QuartusⅡ环境下对以上设计的模块进行编译,记录时序分析数据和仿真波形,并在实验电路上进行硬件测试。
请分析和比较1)和3)的仿真和实测结果,说明两者之间的异同点。
以上为高电平锁存器时序
以上为上升沿锁存器时序
相同点:两者均在上升沿时D=>Q,且时钟处于低电平时Q保持与高电平结束时相同的状态。
不同点:上升沿锁存器在两个上升沿之间Q保持不变,而高电平锁存器在高电平时Q随D变化。
四、思考题
在本次实验中你使用的VHDL描述方式是和实验二中一样的结构化描述还是行为级描述?这两种方式描述的编译出来的仿真结果是否相同?
采用行为级描述。结果相同。
实验四异步清零和同步时钟使能的4位加法计数器
一、实验目的:
学习计数器的设计、仿真和实际硬件电路测试方法;进一步练习用VHDL语言设计数字逻辑电路。
二、实验原理
下面给出的是本试验中所要设计的计数器的结构框图,由4位带异步清零的加法计数器和一个4位锁存器组成。其中,rst是异步清零信号,高电平有效;
clk是计数时钟;ENA为计数器输出使能控制。当ENA为‘1’时,加法计数器
的计数值通过锁存器输出;当ENA为‘0’时锁存器输出为高阻态。