2020年(OA自动化)电子设计自动化(eda)实验指导书
- 格式:doc
- 大小:369.50 KB
- 文档页数:40
(OA自动化)电子设计自动化(eda)实验指导书电子设计自动化(EDA)实验指导书前言近些年来,电子设计自动化(EDA)技术发展迅速。
一方面,各种大容量、高性能、低功耗的可编程逻辑器件不断推出,使得专用集成电路(ASIC)的生产商感受到空前的竞争压力。
另一方面,出现了许多EDA设计辅助工具,这些工具大大提高了新型集成电路的设计效率,使更低成本、更短周期的复杂数字系统开发成为可能。
于是一场ASIC与FPGA/CPLD之争在所难免。
然而PLD器件具有先天的竞争优势,那就是可以反复编程,在线调试。
EDA技术正是这场较量的推动引擎之一。
一般来说,EDA技术就是以计算机为平台,以EDA软件工具为开发环境,以HDL为设计语言,以可编程器件为载体,以ASIC、SOC芯片为目标器件,以电子系统设计为应用方向的电子产品自动化设计过程。
设计者只需编写硬件描述语言代码,然后选择目标器件,在集成开发环境里进行编译,仿真,综合,最后在线下载调试。
整个过程,大部分工作由EDA软件完成。
全球许多著名的可编程器件提供商都推出了自己的集成开发工具软件,如Altera公司的MAX+PLUSⅡ、QuartusⅡ软件;Xilinx公司的Foundation、ISE软件,Lattice公司的ispExpert软件,Actel 公司的Libero软件等。
这些软件的推出,极大地促进了集算法设计、芯片编程、电路板设计于一体的EDA技术的发展。
另外,在以SOC 芯片为目标器件的电子系统设计要求下,可编程器件的内部开始集成高速的处理器硬核、处理器软核、DSP模块、大量的存储资源、高速的串行收发模块、系统时钟管理器、多标准的I/O接口模块,亦使得设计者更加得心应手,新一轮的数字革命由此引发。
EDA技术是一门实践性很强的学科,要培养出具有竞争力的一流IC设计人才,动手能力是关键。
只有通过理论学习,加上现场实验,在使用软件编程加硬件调试的过程中真正获得锻炼,增长技能。
ZY11EDA13BE型实验系统采用主板加适配板加扩展板的灵活结构,可方便进行基于不同PLD芯片的实验开发,并易于升级,符合当前高校在此方面对人才培养的要求。
我们相信,只要学生扎扎实实完成本实验系统的所有实验,并在此基础上利用现有硬件资源开发出新的数字应用系统,学生的潜力会得到最大程度的发挥,对EDA 技术的学习也会有质的飞跃,从而为推动我国数字系统设计技术的发展做出更大的贡献。
本实验手册是我校电子设计自动化(EDA)课程实验指导的主要依据。
根据实验大纲要求,共包含8个实验,其中实验二、三、四为必做,实验五、六、七、八至少选做一个。
目录实验一EDA软件的熟悉与使用1实验目的1实验内容1实验原理1实验步骤1实验报告1实验思考题2实验二1位全加器的设计3实验目的3实验内容3实验仪器3实验原理3实验注意事项4实验步骤4实验报告4思考题4实验三基本组合逻辑电路的VHDL模型6 实验目的6实验内容6实验仪器6实验原理6实验四基本时序逻辑电路的VHDL模型13 实验目的13实验内容13实验仪器13实验原理13实验步骤31实验五Melay型有限状态机的设计32 实验目的32实验内容32实验仪器32实验原理32实验步骤34实验六ROM设计35实验目的35实验内容35实验仪器35实验原理35实验步骤36实验七键盘控制电路设计38实验目的38实验内容38实验原理38实验步骤40实验八交通灯实验41实验目的41实验内容41实验仪器41实验原理41实验步骤42附录一实验要求43附录二实验成绩的考核与评定办法44 附录三实验项目设置与内容45实验一EDA软件的熟悉与使用实验目的1.熟悉ALTERA公司EDA设计工具软件QuartusII5.0。
2.熟悉ZY11EDA13BE型实验箱。
实验内容1.学习QuartusII5.0软件课件。
2.学习QuartusII5.0软件的安装,重要菜单命令含义。
3.熟悉ZY11EDA13BE型实验箱的结构与组成。
4.模仿课件中实例动手操作一遍,掌握采用QuartusII5.0软件设计流程。
实验原理参考QuartusII5.0软件学习课件。
实验步骤1.在教师的指导下,学习软件课件。
2.由教师演示QuartusII5.0软件的安装,介绍菜单命令功能。
3.参考课件实例,动手操作软件,按照流程做完从新建文件,编译,仿真,分配引脚等软件操作部分的全过程。
4.参考第一部分实验系统简介,熟悉ZY11EDA13BE型实验箱结构,组成,了解各模块的基本作用,了解主板I/O分布情况,认识液晶屏,并口连接器,晶振,JTAG接口,逻辑笔,跳线等器件或组件。
实验报告1.绘制出QuartusII5.0软件设计的详细流程图。
2.描述出QuartusII5.0软件是如何进行目标器件选择,I/O分配和锁定引脚的。
3.描述出QuartusII5.0软件help菜单功能,如何有效的使用它。
4.写出系统主板的I/O口分布情况。
5.写出ZY11EDA13BE型实验箱拨码开关CTRL各档的作用。
6.描述出一个完整的实验流程。
实验思考题1.QuartusII5.0软件支持那些器件,该软件有什么局限性?2.QuartusII5.0软件使用中大小写字母是否有区别?3.在进行一个完整的实验流程时应注意些什么?实验二1位全加器的设计实验目的1.掌握QuartusII5.0软件使用流程。
2.熟悉ZY11EDA13BE型实验箱的开关按键模块,LED显示模块。
实验内容在QuartusII5.0软件中使用原理图输入法设计并实现一个1位全加器。
实验仪器1.ZY11EDA13BE型实验箱通用编程模块,配置模块,开关按键模块,LED 显示模块。
2.并口延长线,JTAG延长线。
(所有实验均包括,以下实验中均略去)。
3.安装QuartusII5.0软件的PC机。
(所有实验均包括,以下实验中均略去)。
实验原理1位全加器可以用两个半加器及一个或门连接而成,半加器原理图的设计方法很多,我们用一个与门、一个非门和同或门(xnor为同或符合,相同为1,不同为0)来实现。
先设计底层文件:半加器,再设计顶层文件全加器。
(1)半加器的设计半加器表达式:进位:co=aandb和:so=axnor(notb)半加器原理图如下:(2)全加器的设计全加器原理图如下:实验注意事项实验指导书中的所有实验内容都是针对主板系统的核心芯片EP1K30QC208-2来设计的,实验原理中提供了管脚分配情况,管脚分配好后必须通过成功编译才可以下载配置。
实验步骤1.在QuartusII5.0软件中新建原理图文件,输入原理图,进行编译,仿真。
2.指定目标器件,并对编译通过的原理图分配管脚(可参考实验原理),分配完后再编译一次。
3.用并口延长线连接计算机机箱并口和实验箱并口插座,用JTAG延长线连接通用编程模块下载接口插座和配置模块核心芯片下载接口插座,接通实验箱电源,将实验箱电源按钮APW1,APW2按下,电源指示灯PL0-PL4亮。
4.下载配置文件f_adder.pof到目标芯片。
5.将拨码开关CTRL的(2)、(4)、(8)均设置为“ON”。
6.拨位开关KD1、KD2、KD3分别作为全加器a输入,b输入和进位c 输入。
LED1、LED2分别作为全加器进位和全加和。
记录全加器的实验结果填入实验报告。
灯亮表示‘1’(高电平),灯灭表示‘0’(低电平)。
实验报告1.列出半加器与全加器的真值表。
如果实验室条件允许,打印半加器和全加器仿真波形图贴于实验报告中。
2.用文字描述出怎样实现层次化设计。
3.1位全加器的实现方法很多,画出其它方法的原理图。
思考题1.多位全加器就是在一位的原理上扩展而成的,设计出原理图输入的8位全加器。
2.集成电路全加器芯片有7480、7483等,试述其内部结构是如何实现的?3.参考全加器的设计思路设计出原理图输入的1位全减器。
(提示:全加器的设计是根据真值表来建立最简表达式,最简表达式应该是一些基本门电路,同样全减器的设计也是如此)。
实验三基本组合逻辑电路的VHDL模型实验目的1.掌握简单的VHDL程序设计。
2.掌握用VHDL对基本组合逻辑电路的建模。
实验内容分别设计并实现缓冲器、选择器、译码器、编码器、移位器、全加器的VHDL 模型。
实验仪器ZY11EDA13BE型实验箱通用编程模块,配置模块,开关按键模块,LED 显示模块。
实验原理1.三态缓冲器三态缓冲器(Tri-stateBuffer)的作用是转换数据、增强驱动能力以及把功能模块与总线相连接。
在使用总线互连方式时,与总线通信的器件通常要通过三态缓冲器与总线相连。
如果缓冲器的使能端en为1,则缓冲器的输入端in1的信号值被复制到输出端;如果缓冲器的使能端en为其它数值,则缓冲器的输出端为高阻态。
三态缓冲器的输出端可以用线与的方式和其他缓冲器的输出端接在一起。
下例20-1-1给出了三态缓冲器的VHDL源代码模型:在IEEE的1164标准程序包中,用Z表示高阻态,现在的EDA综合工具一般都能根据这种描述综合得到三态器件。
下图20-1为本例中三态缓冲器的仿真波形图:图20-1三态缓冲器的仿真图形2.数据选择器(Multiplexer)在数字系统设计时,需要从多个数据源中选择一个,这时就需要用到多路选择器。
下例20-2-1给出了四选一、被选择数字宽度为3的选择器VHDL源代码模型:在上面这个模型中,由于使用了条件赋值语句,所以写得很简短。
上面的程序代码还可以改写为使用进程的等价方式。
如下例20-2-2的VHDL源代码所示:由于模型中使用了std_Logic和std_Logic_vector数据类型,sel可能的数值不止四种,所以两种模型中都有一个分支来处理其他的数值。
在综合的时候,EDA工具一般都忽略这一分支。
除了处理三态器件中的高阻态‘Z’外,综合工具采用完全相同的方法来处理std_Logic和Bit数据类型。
图20-2为本例中多路选择器的仿真波形图:图20-2多路选择器的仿真图形3.译码器(Decoder)译码器(Decoder)的输入为N位二进制代码,输出为2N个表征代码原意的状态信号,即输出信号的2N位中有且只有一位有效。
常见的译码器用途是把二进制表示的地址转换为单线选择信号。
下面例20-3-1为一个3-8译码器的VHDL源代码模型:下图20-3为本例中3-8译码器的仿真波形图:图20-33-8译码器的仿真图形4.编码器(Encoder)编码器(Encoder)的行为是译码器行为的逆过程,它把2N个输入转化为N位编码输出。
有的编码器要求输入信号的各位中最多只有一位有效,且规定如果所有输入位全无效时,编码器输出指定某个状态。
编码器的用途很广,比如说键盘输入编码等。
下面例20-4-1为一个8-3优先编码器的VHDL源代码模型:下图20-4为本例中8-3优先编码器的仿真波形图:图20-48-3优先编码器的仿真图形5.移位器(Shifter)数据的移位是很重要的操作,在一定的条件下,右移意味着被2除,左移意味着乘以2。