EDA实习报告(000001)_第1页
EDA实习报告(000001)_第2页
EDA实习报告(000001)_第3页
EDA实习报告(000001)_第4页
EDA实习报告(000001)_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、电子设计自动化技术EDA实习报告目录引  言 (1)EDA简介  (2)EDA的设计流程 第一章  实训目的第二章 实训内容一、EDA 开发软件Max+plus II 或Quartus II 1.1基本原理 1.2条件要求 1.3主要内容 1.4实践步骤与结果分析(一)设计原理图或VHDL源程序 1) 原理图 2)VHDL源程序(二)器件及管脚逻分配图 1)调试编译与仿真波形 2)时序分析图 1.5项目一的结论二、4位全加器设计 2.1基本原理 2.2条件要求 2.3主要内容 2.4方案及实现方法 2.5实践步骤与结果分析(一)设计1 位全加器

2、 1) 1 位全加器原理图 2)1位全加器仿真波形(二)四位全加器设计 1)四位全加器原理图 2)器件及管脚逻分配图 3)调试编译与仿真波形 4)时序分析图(3) 项目二的结论三、8 线-3 线优先编码器 3.1基本原理 1、管脚 2、真值表 3.2条件要求 3.3主要内容 3.4方案及实现方法 3.5实践步骤与结果分析(一)原理图和VHDL程序 1) 3-8译码器的原理图 2)VHDL程序(二)器件及管脚逻分配图(三)调试编译与仿真波形 1、调试编译 2、仿真波形(四)时序分析图(五)项目三的结论四、10 进制计数器设计 4.1基本原理 1、管脚 2、真值表 4.2条件要求 4.3主要内容

3、4.4方案及实现方法 4.5实践步骤与结果分析 (一)原理图和VHDL程序 1) 10 进制计数器 2)VHDL程序 (二)器件及管脚逻分配图 (三)调试编译与仿真波形 1、调试编译 2、仿真波形 (四)时序分析图 (五)项目四的结论五、8 位循环移位寄存器 5.1基本原理 1、管脚 2、真值表 5.2条件要求 5.3主要内容 5.4方案及实现方法 5.5实践步骤与结果分析 (一)原理图和VHDL程序 1) 8 位循环移位寄存器 2)VHDL程序 (二)器件及管脚逻分配图 (三)调试编译与仿真波形 1、调试编译 2、仿真波形 (四)时序分析图 (五)项目三的结论第三章 结 论引

4、60; 言(1)EDA简介 电子技术的迅猛发展,高新技术日新月异。传统的电子技术设计方法,以不能帮助我们更好的、高效的完成设计任务。所以我们需要更好的工具来帮助我们完成设计任务。 EDA技术是指以计算机为工作平台,融合应用电子技术、计算机技术、信息处理及智能化技术,进行电子产品自动化设计的一门新技术。 EDA技术作为现代电子设计技术的核心,依赖于计算机,在EDA工具软件平台上,对以硬件描述语言为逻辑描述手段完成设计文件,自动地完成逻辑编译、逻辑化简、逻辑综合、布局布线,以及逻辑优化和仿真测试,直至实现既定的电子电路的功能。 在硬件方面,EDA技

5、术融合了大规模集成电路制造技术、集成电路板图设计技术、可编程器件编程技术、自动测试技术等;在计算机辅助工程方面融合了计算机辅助设计、计算机辅助制造、计算机辅助测试、计算机辅助分析、计算机辅助工程技术以及多种计算机语言的设计概念;在现代电子学方面容纳了诸如计算机设计技术、电子线路设计理论、数字信息处理技术、数字系统建模和优化技术以及基于微波技术的长线技术理论。 可以说,EDA技术打破了软件设计和硬件设计间的壁垒,是一门综合性学科,一种多方位技能技术。它将设计效率和产品性能合二为一,代表了电子设计技术和电子应用技术的发展方向 。(2)EDA的设计流程 u  

6、编辑输入 1) 文本输入。在EDA工具软件的文本编辑见面上,输入用某种硬件语言表  述的电路设计文本。 2) 原理图输入。在EDA工具软件的图形编辑界面上,绘制能完成预定功能的电路原理图。 3) 状态图输入。依据电路的控制条件和状态转换的因果关系,在EDA工具软件的状态图编辑界面上绘制时序电路的状态流程图。 u 波形图输入在EDA工具软件的波形图编辑界面上,绘制电路输入输出信号间的波形关系,然后由EDA编译器据此完成电路设计。 u  综合 综合是将由硬件描述语言表述的电路行为表述转换为低级的、与可编程逻辑

7、器件基本结构相映射的网表文件或电路连接图。 u  适配 适配是为了将综合器产生的网表文件装配于指定的目标器中,而产生最终的编程文件。 u 功能仿真与时序仿真 1) 功能仿真是指针对文本设计、原理图设计及其它设计方法的逻辑功能进2) 行测试模拟,以便了解所设计电路实现的功能是否符合要求。 3) 时序仿真的结果接近真实器件的运行特性。 u  编程下载 把适配后生成的编程文件通过编程器或编程电缆载入目标可编程逻辑器件,以便进行硬件验证。 u 硬件测试 对含有载入了编程文件的可编程逻辑器件的硬

8、件系统进行统一的测试。     第一章 实训目的1) 掌握MAX+PLUS或Quartus II 的安装与使用方法,EDA 的开发流程及相关分析综合方法。2) 复习加法器的原理,掌握加法器的设计实现方法,设计实现数字系统设计中常用的4位全加器,在此基础上进一步熟悉MAX+PLUS或Quartus II 软件的使用方法,熟练掌握EDA的图形编程方法、开发流程、以及组合逻辑电路的设计、分析、综合、仿真方法。3) 复习编码器的原理,掌握编码器的设计实现方法,设计实现数字系统设计中常用的8线-3 线优先编码器,逐步学会熟练运用MAX+PLUS

9、或Quartus II 软件,熟悉EDA 的VHDL程序设计方法、学习掌握组合逻辑电路的VHDL 描述方法,进一步掌握应用EDA 常用工具进行组合逻辑电路的设计、分析、综合、仿真等的技巧。4) 复习计数器的原理,掌握计数器的设计实现方法,设计实现数字系统设计中常用的10进制计数器,逐步学会熟练运用MAX+PLUS或Quartus II 软件,熟悉EDA 的VHDL 程序设计方法、学会使用信号升沿、降沿、VHDL 的敏感量表等内容,掌握时序逻辑电路的VHDL描述方法,步掌握应用EDA 常用工具软件进行时序逻辑电路的设计、分析、综合、仿真等的方法与技巧。5) 复习循环移位寄存器的原理与功能,学习掌

10、握循环移位寄存器的设计实现方法,设计实现数字系统设计中常用的8 位循环移位寄存器,逐步学会熟练运用MAX+PLUS或QuartusII 软件,熟悉EDA 的VHDL 程序设计方法、学会使用信号升沿、降沿、VHDL 的敏感量表等内容,掌握时序逻辑电路的VHDL 描述方法,掌握应用EDA 常用工具软件进行时序逻辑电路的设计、分析、综合、仿真等的方法与技巧。6) 初步掌握VHDL语言和原理图的设计输入,编译,仿真和调试过程,理解VHDL语言的基本特点包括结构、语法、数据类型等。第2章 实训内容1、 EDA 开发软件Max+plus II 或Quartus II1.1基本原理根据EDA 的设计流程:设

11、计输入编译器件选择管脚分配设计仿真时序分析编程下载,在熟悉EDA 开发软件Maxplus II 或Quartus II 界面操作基础上,使用软件提供的编辑、编译、仿真等工具,分析所设计的系统。1.2条件要求1) 计算机及操作系统2) MAX+Plus II 或Quartus II 软件3) 编程电缆(可选)1.3主要内容1. 设计输入方法,包括图形输入、文本输入等2. 设计编译3. 器件选择及管脚分配4. 设计仿真5. 时序分析6. 编程下载1.4实践步骤与结果分析(一)设计原理图或VHDL源程序1) 原理图我设计了一个半加器,A和B是输入端,C是进位输出,D是加法输出以上为采用图形输入法完成

12、的一个二输入半加器电路2) VHDL源程序O<=A XOR B;/A与B异或C<=A AND B;/A与B相与(二)器件及管脚逻分配图与门的两个输入A 和B 分配给管脚3 与2,输出C分配给管脚44,输出O分配给管脚43,所选器件为EPM3032ALC44-4。(3) 调试编译与仿真波形1) 调试编译编译结果正确,无错误,但是有一个警告。2) 仿真波形此处,我设计A输入信号为100ns/每格的时钟脉冲,B输入信号为300ns/每格的时钟脉冲。仿真波形如下图所示:从仿真波形可以看出,输入输出结果满足表达式O=AXORB、C=AANDB,亦即所设计电路功能达到设计要求。(四)时序分析图

13、此处,我进行Classic Timing Analyzer 时序分析,可以得到A、B、C、D四个波形的信号到达时间都是3.5ns,所以仿真波形图上不存在毛刺,很完美。1.5项目一的结论我掌握了MAX+PLUS或Quartus II 的安装与使用方法,EDA 的开发流程及相关分析综合方法,在此基础上进一步熟悉MAX+PLUS或Quartus II 软件的使用方法,熟练掌握EDA的图形编程方法、开发流程、以及组合逻辑电路的设计、分析、综合、仿真方法。同时复习加法器的原理,掌握加法器的设计实现方法,我完成的主要工作是设计了数字系统设计中常用的一个半加器。A和B是半加器输入,C是半加器的进位输出,D是

14、加的结果输出,并且利用波形仿真验证程序和原理图的正确性。得出的结论是根据波形图结果,波形符合逻辑关系,无毛刺,十分完美地实现二输入半加器。2、 4位全加器设计2.1基本原理4 位全加器的管脚如下图所示:其中CIN 表示输入进位位,COUT 表示输出进位位,输入A 和B 分别表示加数和被加数。输出SUMABCIN,当SUM 大于255 时,COUT 置1。4位全加器可以看做四个1位全加器级联而成,首先采用基本逻辑门设计一位全加器,而后通过多个1位全加器级联实现4位全加器。其中,其中C1表示输入进位位,C0表示输出进位位,输入A和B分别表示加数和被加数。S为输出和,其功能可用布尔代数式表示为: S

15、=A+B+C1 首先根据一位全加器的布尔代数式应用基本逻辑门设计一位全加器,而后仿真验证一位全加器设计,准确无误后生成元件,供4位全加器设计用。将4个1位全加器级联构成四位全加器。2.2条件要求1 计算机及操作系统2 MAX+Plus II 或Quartus II 软件3 编程电缆(可选)2.3主要内容根据所学相关知识,运用MAX+PLUS II 或Quartus II 软件的图形输入方法,实现4位全加器设计。首先给出设计原理并提出实现方案,经指导教师同意后,通过设计输入、编译综合、仿真验证等过程完成并验证设计。1. 设计输入方法,包括图形输入、文本输入等2. 设计编译3. 器件选择及管脚分配

16、4. 设计仿真5. 时序分析6. 编程下载2.4方案及实现方法设计过程中可以首先采用基本逻辑门设计1 位全加器,而后通过多个1 位全加器级联实现4 位全加器,也可以根据输出与输入的逻辑关系写出其布尔代数式,根据布尔代数式用基本逻辑门实现全加器。2.5实践步骤与结果分析(一)设计1 位全加器1) 1 位全加器原理图我设计了一位全加器,A和B是输入端,C1是进位输入端,C0是进位输出端,S是全加器输出端。以上为采用图形输入法完成的一个一位全加器电路。2)1位全加器仿真波形 仿真结果如图,1位全加器设计成功。(二)四位全加器设计与门的两个输入A 和B 分配给管脚3 与2,输出C分配给管脚4

17、4,输出O分配给管脚43,所选器件为EPM3032ALC44-4。1) 四位全加器原理图2)器件及管脚逻分配图管脚分配情况如图,所选器件为EPM3032ALC44-4。3)调试编译与仿真波形1 调试编译编译结果正确,无错误,但是有一个警告。分析可得,通过二输入与门,非门,或门,输出的S为两者之和,C0为输出进位。 仿真结果与全加器真值表相同,四位全加器设计成功。2 仿真波形仿真波形如下图所示: 当A3A2A1A0=0000,B3B2B1B0=0000时,S3S2S1S0=0000 ;当A3A2A1A0=0101,B3B2B1B0=1100时,S3S2S1S0=0001,&#

18、160;其他时刻波形也与全加器功能相符,全加器设计成功。从仿真波形可以看出,输入输出结果满足表达式O=AXORB、C=AANDB,亦即所设计电路功能达到设计要求。4)时序分析图此处,我进行Classic Timing Analyzer 时序分析,可以得到A、B、C1、C0、S五个端口的信号到达时间,同步逻辑性能分析后可知仿真波形图上不存在毛刺,满足四位全加器的设计要求。(三)项目二的结论我掌握了EDA 的开发流程及相关分析综合方法,在此基础上进一步熟悉MAX+PLUS或Quartus II 软件的使用方法,熟练掌握EDA的图形编程方法、开发流程、以及组合逻辑电路的设计、分析、综合、仿真方法。同

19、时复习加法器的原理,掌握加法器的设计实现方法,我完成的主要工作是设计了数字系统设计中常用的一个半加器。A和B是全加器加数和被加数,C1是全加器的进位输入,C0是全加器的进位输出,S是A加B的结果输出,并且利用波形仿真验证原理图的正确性。得出的结论是根据波形图结果,波形符合逻辑关系,无毛刺,十分完美地实现一位全加器。三、8 线-3 线优先编码器3.1基本原理1、管脚8 线-3 线优先编码器的管脚如图:其中IN 表示输入编码位,Sel 为片选信号,Y 表示输出编码值,YS 与YEX 表示器件状态,“11”表示器件未选中,“01”表示无键按下,“10”表示器件工作态。2、真值表8-3 编码器的真值表

20、如下:3.2条件要求1. 计算机及操作系统2. MAX+Plus II 或Quartus II 软件3. 编程电缆(可选)3.3主要内容1 根据所学相关知识,运用MAX+PLUS II 或Quartus II 软件的文本文件输入方法,编写VHDL 程序,实现8-3 优先编码器的设计。首先给出设计原理并提出实现方案论证,经指导教师同意后,通过设计输入、编译综合、仿真验证等过程完成并验证设计。设计输入方法,包括图形输入、文本输入等2 设计编译3 器件选择及管脚分配4 设计仿真5 时序分析6 编程下载3.4方案及实现方法8-3 优先编码器的VHDL 描述有多种方法,设计过程中可以根据真值表采用cas

21、ewhen语句、withselect 语句、ifthen 结构等多种手段实现,也可以根据真值表分析输入输出间的逻辑关系,根据逻辑关系写出其布尔表达式,根据布尔代数式调用基本逻辑门元件实现8-3 优先编码器,详细方案与方法略。3.5实践步骤与结果分析(一)原理图和VHDL程序1) 3-8译码器的原理图以上为采用图形输入法完成的一个3-8优先译码器。2) VHDL程序8-3优先编码器的VHDL描述有多种方法,设计过程中可以根据真值表采用casewhen语句、withselect语句、ifthen结构等多种手段实现,也可以根据真值表分析输入输出间的逻辑关系,根据逻辑关系写出其布尔表达式,根据布尔代数

22、式调用基本逻辑门元件实现8-3优先编码器。 本实验中,我根据真值表用if-then结构实现8-3优先编码器。(二)器件及管脚逻分配图管脚分配情况如图,所选器件为EPM3032ALC44-4。(三)调试编译与仿真波形1、调试编译编译结果正确,无错误,但是有两个警告。2、仿真波形8线-3线优先编码器的仿真波形如下图所示:当3-8译码器的片选信号为000时,片选信号选中输出的个位,当3-8译码器的片选信号为001时,片选信号选中输出的十位,当3-8译码器的片选信号为010时,片选信号选中输出的个位,当3-8译码器的片选信号为011时,片选信号选中输出的十位,当3-8译码器的片选信号为100

23、时,片选信号选中输出的个位,当3-8译码器的片选信号为101时,片选信号选中输出的十位,就这样动态扫描,当输入的时钟信号频率很高的时候,就形成了我们的时钟。从仿真波形可以看出,输入输出结果满足所设计电路功能,符合前文真值表,3-8优先编码器达到设计要求。(四)时序分析图此处,我进行Classic Timing Analyzer 时序分析,可以得到输入输出端口的信号到达时间都是4.5ns,同步逻辑性能分析后可知仿真波形图上不存在毛刺,满足3-8优先编码器的设计要求。(五)项目三的结论我掌握了EDA 的开发流程及相关分析综合方法,在此基础上进一步熟悉MAX+PLUS或Quartus II 软件的使

24、用方法,熟练掌握EDA的图形编程方法、开发流程、以及组合逻辑电路的设计、分析、综合、仿真方法。同时复习加法器的原理,掌握加法器的设计实现方法,我完成的主要工作是设计了数字系统设计中常用的一个3-8优先编码器,并且利用波形仿真验证程序和原理图的正确性。得出的结论是根据波形图结果,波形符合逻辑关系,无毛刺,十分完美地实现3-8优先编码器的功能。我发现用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法必将在未来的数字系统设计中发挥越来越重要的作用。附:参考程序37203130705岳慧慧LIB

25、RARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY ENCODER ISPORT(I:IN STD_LOGIC_VECTOR(7 DOWNTO 0);SEL: IN STD_LOGIC;Y : OUT STD_LOGIC_VECTOR(2 DOWNTO 0);YS,YEX : INOUT STD_LOGIC);END ENCODER;ARCHITECTURE sample OF ENCODER ISBEGINP1:PROCESS(I,SEL)BEGINif SEL='1' th

26、enY <="111"YS <='1'YEX<='1'elsif I(7)='0' thenY <="000"YS <='1'YEX<='0'elsif I(6)='0' thenY<="001"YS <='1'YEX<='0'elsif I(5)='0' thenY<="010"YS <='1

27、9;YEX<='0'elsif I(4)='0' thenY<="011"YS <='1'YEX<='0'elsif I(3)='0' thenY<="100"YS <='1'YEX<='0'elsif I(2)='0' thenY<="101"YS <='1'YEX<='0'elsif I(1)='0'

28、; thenY<="110"YS <='1'YEX<='0'elsif I(0)='0' thenY<="111"YS <='1'YEX<='0'elsif I="11111111" thenY<="111"YS <='0'YEX<='1'elseY<="ZZZ"end if;END PROCESS P1;END sample

29、;四、10 进制计数器设计4.1基本原理1、管脚10 进制计数器的管脚如图:其中IN 表示输入编码位,Sel 为片选信号,Y 表示输出编码值,YS 与YEX 表示器件状态,“11”表示器件未选中,“01”表示无键按下,“10”表示器件工作态。2、真值表10 进制计数器的真值表如下:计数开始,计数器从计数初值开始做加计数或减计数。加计数时,计数到9后,再来一个计数脉冲,计数器从0开始。重新启动加计数;减计数时,计数到0后,再来一个计数脉冲,计数器从10开始,重新启动减计数。4.2条件要求1 计算机及操作系统2 MAX+Plus II 或Quartus II 软件3 编程电缆(可选)4.3主要内容

30、1 根据所学相关知识,运用MAX+PLUS II 或Quartus II 软件的文本文件输入方法,编写VHDL 程序,实现10 进制计数器的设计。首先给出设计原理并提出实现方案论证,经指导教师同意后,通过设计输入、编译综合、仿真验证等过程完成并验证设计。设计编译2 器件选择及管脚分配3 设计仿真4 时序分析5 编程下载4.4方案及实现方法10 进制计数器的VHDL 描述有多种方法,设计过程中可以采用计数脉冲CP 作为敏感量,CP 的每个上升沿,计数值Q 加1或减1,加到9后回0或减到0后回9,语句可采用casewhen、withselect、ifthen 以及加减运算等多种结构实现。也可以首先

31、设计基本的触发器、锁存器等元件,而后通过元件的互联实现,详细方案与方法略。4.5实践步骤与结果分析(一)原理图和VHDL程序1) 10 进制计数器以上为采用图形输入法完成的一个3-8优先译码器。 2)VHDL程序8-3优先编码器的VHDL描述有多种方法,设计过程中可以根据真值表采用casewhen语句、withselect语句、ifthen结构等多种手段实现,也可以根据真值表分析输入输出间的逻辑关系,根据逻辑关系写出其布尔表达式,根据布尔代数式调用基本逻辑门元件实现8-3优先编码器。 本实验中,我根据真值表用if-then结构实现8-3优先编码器。(二)器件及管脚逻分配图管脚分配情况

32、如图,所选器件为EPM3032ALC44-4。(三)调试编译与仿真波形1、调试编译编译结果正确,无错误,但是有一个警告。2、仿真波形10 进制计数器的仿真波形如下图所示:从仿真波形可以看出,输入输出结果满足所设计电路功能,符合前文真值表,10 进制计数器达到设计要求。(四)时序分析图此处,我进行Classic Timing Analyzer 时序分析,可以得到输入输出端口的信号到达时间都是3.0ns,同步逻辑性能分析后可知仿真波形图上不存在毛刺,满足10 进制计数器的设计要求。(五)项目四的结论我熟练掌握了EDA的图形编程方法、开发流程、以及组合逻辑电路的设计、分析、综合、仿真方法。我完成的主

33、要工作是设计了数字系统设计中常用的一个10 进制计数器,并且利用波形仿真验证程序和原理图的正确性。得出的结论是根据波形图结果,波形符合逻辑关系,无毛刺,十分完美地实现10 进制计数器的功能。我发现用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法必将在未来的数字系统设计中发挥越来越重要的作用。附:参考程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY counter ISPOR

34、T(D : IN STD_LOGIC_VECTOR(3 DOWNTO 0);UD : IN STD_LOGIC;LD : IN STD_LOGIC;CP : IN STD_LOGIC;STA: IN STD_LOGIC;C : OUT STD_LOGIC;Q : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END counter;ARCHITECTURE sample OF counter ISSIGNAL TMP:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINP1:PROCESS(CP,STA,LD,UD)BEGINif LD='0'

35、; thenTMP<=D;elsif CP'EVENT AND CP='0' thenif STA='0' thenif UD='0' thenif TMP="1001" thenTMP<="0000"c<='1'elseTMP<=TMP+1;c<='0'end if;elsif UD='1' thenif TMP="0000" thenTMP<="1001"c<=

36、9;1'elseTMP<=TMP-1;c<='0'end if;end if;elsif STA='1' thenTMP<=TMP;end if;end if;END PROCESS P1;Q<=TMP;END sample;五、8 位循环移位寄存器5.1基本原理1、管脚8 位循环移位寄存器的管脚如图:其中D 表示输入的初始值,Sta 为开始移位信号,DOUT 表示当前数值;LD 表示预设计数值,LD 为“1”,初始计数值打入器件;LR 表示移位方向,LR 为0,循环右移位,LR 为1,循环左移位;CP 为移位脉冲。2、真值表8

37、位循环移位寄存器的真值表如下:移位开始,循环左移时,CP 上每来一个脉冲升沿,寄存器从输出从低位开始依次左移一位,同时最高位给最低位。相反,循环右移时,从高位开始依次右移一位,同时最低位给最高位。5.2条件要求1计算机及操作系统2MAX+Plus II 或Quartus II 软件3编程电缆(可选)5.3主要内容根据所学相关知识,运用MAX+PLUS II 或Quartus II 软件的文本文件输入方法,编写VHDL 程序,实现8 位循环移位寄存器的设计。首先给出设计原理并提出实现方案论证,经指导教师同意后,通过设计输入、编译综合、仿真验证等过程完成并验证设计。器件选择及管脚分配设计仿真时序分

38、析编程下载5.4方案及实现方法8 位循环移位寄存器的VHDL 描述有多种方法,设计过程中可以首先设计D 触发器,而后通过D 触发器的互联实现8 位循环移位寄存器;也可采用计数脉冲CP 作为敏感量,CP 的每个上升沿,输出量Q 的每一位赋给左边一位或右边一位。同时循环左移时,最高位赋给最低位,循环右移时,最低位赋给最高位,语句可采用casewhen、withselect、ifthen以及加减运算等多种结构实现,详细方案与方法略。5.5实践步骤与结果分析(一)原理图和VHDL程序1) 8 位循环移位寄存器以上为采用图形输入法完成的一个8 位循环移位寄存器 2)VHDL程序8 位循环移位寄存器的VH

39、DL描述有多种方法,设计过程中可以根据真值表采用casewhen、withselect、ifthen以及加减运算等多种结构实现,也可以根据真值表分析输入输出间的逻辑关系,根据逻辑关系写出其布尔表达式,根据布尔代数式调用基本逻辑门元件实现8 位循环移位寄存器。 本实验中根据真值表,通过VHDL语言的if-then结构实现8位循环移位寄存器。首先根据前文所述,对照真值表的列出的不同输入逻辑状态,分情况依次输出于输入的对应关系,而后编译综合,由开发系统自行实现电路功能。(二)器件及管脚逻分配图管脚分配情况如图,所选器件为EPM3032ALC44-4。(三)调试编译与仿真波形1、调试编译编译

40、结果正确,无错误,但是有一个警告。2、仿真波形8 位循环移位寄存器的仿真波形如下图所示:从仿真波形可以看出,输入输出结果满足所设计电路功能,符合前文真值表,8 位循环移位寄存器达到设计要求。(四)时序分析图上述时间分析可以得到,输出信号存在的时间延迟,它主要与器件速度、表达逻辑的合理性有关,选用速度更高器件、优化设计可以使该值降低。此处,我进行Classic Timing Analyzer 时序分析,可以得到输入输出端口的信号到达时间都是3.0ns,同步逻辑性能分析后可知仿真波形图上不存在毛刺,满足8 位循环移位寄存器的设计要求。(五)项目五的结论本次实验我收获到了很多移位寄存器的相关知识,虽

41、然期间我遇到了很多无法解决的问题,但最终都通过查阅资料,询问同学,一一得到了解决。实验中我们完成了1个器件的编写:我使用了VHDL代码的方法。通过资料我知道了74HC164是8位移位寄存器,当其中一个(或二个)选通串行输入端的低电平禁止进入新数据,并把第一个触发器在下一个时钟脉冲来后复位到低电平时,门控串行输入端(A 和B) 可完全控制输入数据。一个高电平输入后就使另一个输入端赋能,这个输入就决定了第一个触发器的状态。虽然不管时钟处于高电平或低电平时,串行输入端的数据都可以被改变,但只有满足建立条件的信息才能被输入。时钟控制发生在时钟输入由低电平到高电平的跃变上。为了减小传

42、输线效应,所有输入端均采用二极管钳位。每组实验我们都编写了他们的源代码,并且通过时序仿真和功能仿真不同的仿真方式让我对加法器这个逻辑学电子元件有了更深层次的了解。很多问题最终在老师同学和自己的不懈努力中得以解决。其中我遇到了一些代码上的书写错误问题,编译无法运行问题,以及时序仿真时出现的问题。不过最后在查阅相关资料后明白了自己是少了一些过程。我发现用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法必将在未来的数字系统设计中发挥越来越重要的作用。我采用图形编程法实现了8位循环移位寄存器的设

43、计,并完成了电路的设计编译、综合、逻辑仿真、时间分析,结果表明采用ALTRA的CPLD器件设计的8位循环移位寄存器,时间延迟为3ns。附:参考程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cyreg ISPORT(D : IN STD_LOGIC_VECTOR(7 DOWNTO 0);LD : IN STD_LOGIC;LR : IN STD_LOGIC;CP : IN STD_LOGIC;DOUT: BUFFER STD_LOGIC_VECTOR(7 DOWNTO 0);EN

44、D cyreg;ARCHITECTURE sample OF cyreg ISBEGINP1:PROCESS(CP,LD)BEGINif LD='0' thenDOUT<=D;elsif CP'EVENT AND CP='0' thenif LR='1' thenDOUT<=DOUT(6 DOWNTO 0)&DOUT(7);elsif LR='0' thenDOUT<=DOUT(0)&DOUT(7 DOWNTO 1);end if;end if;END PROCESS P1;END sam

45、ple;第三章 结 论首先,通过对这门课程相关理论的学习,我掌握EDA的一些基本的的知识,现代电子产品的性能越来越高,复杂度越来越大,更新步伐也越来越快。实现这种进步的主要原因就是微电子技术和电子技术的发展。前者以微细加工技术为代表,目前已进入超深亚微米阶段,可以在几平方厘米的芯片上集成几千万个晶体管;后者的核心就是电子设计自动化EDA(lectronic Design Automatic)技术。EDA是指以计算机为工作平台,融合了应用电子技术、计算机技术、智能化技术的最新成果而开发出的电子CAD通用软件包,它根据硬件描述语言HDL完成的设计文件,自动完成逻辑编译

46、、化简、分割、综合、优化、布局布线及仿真,直至完成对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。其次,通过对课程的实验的学习,让我感觉收获颇多,我对EDA的学习和理解有了更深刻的认识和体会,对数字逻辑与数字电路有初步的了解,而EDA是在数字电路发展到一定阶段的产物,因此学习起来也很费力。在这一周的实训中我们不仅巩固了以前学过的知识,而且还学到了怎样运用设计VHDL程序、电路、波形的整个过程和思路,更加强了我们动手能力,同时也提高了我们的思考能力的锻炼,我们在写程序的同时还要学会要改程序,根据错误的地方去修改程序。 在此次实训的过程中,我了解到,我们需要加强培养动手能力

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论