ImageVerifierCode 换一换
格式:DOCX , 页数:44 ,大小:1.02MB ,
资源ID:2837271      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-2837271.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(EDA实验讲义最新版.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

EDA实验讲义最新版.docx

1、EDA实验讲义最新版第一章 CPLDFPGA可编程逻辑器件1.1 前言PLD是可编程逻辑器件(Programmable Logic Device)的英文缩写。在可编程逻辑器件芯片内部,按一定的排列方式集成了大量的门和触发器等基本元件。使用者可利用特定的计算机开发工具对其进行加工,即按设计要求将这些芯片内部的元件连接起来,使之实现完成某个数字逻辑电路或系统的功能,成为一个可在实际电子系统中使用的专用集成电路(ASIC,Application Specific Integrated Circuit)。随着集成电路工艺的日趋完善,集成度急剧增加,其功能日益强大。PLD广阔的应用前景备受业内人士的瞩目

2、。1.2 PLD的分类按照不同的分类方法,PLD可分为如下几种情况:(1)按集成度分可分为低密度和高密度两大类,如图1.1所示。图1.1 PLD按集成度的分类图 (2)按结构分按结构的不同可分为两类:一类是基于与/或阵列结构的器件(PORM、PLA、PAL、GAL)、CPLD(EPLD)。另一类是基于门阵列结构的器件(FPGA)。(3)按编程工艺分 熔丝和反熔丝编程器件。如Actel的FPGA器件。 SRAM器件,如Xilinx的FPGA。 UEPROM器件,即紫外线擦除/电可编程器件。如大多数的EPLD器件。 EEPROM器件。如GAL、CPLD器件。1.3 PLD的发展概况PLD从20世纪

3、70年代发展到现在,已形成了许多类型的产品,其结构、工艺、集成度、速度和性能都在不断改进和提高。最早的PLD是1970年制成的PROM(Programmable Read Only Memory),即可编程只读存储器,它是由固定的与阵列和可编程的或阵列组成。PROM采用熔丝工艺编程,只能写一次,不能擦除和重写。随着技术的发展和应用要求,此后又出现了UVEPROM(紫外线可擦除只读存储器)、EEPROM(电可擦除只读存储器),由于它们价格低,易于编程,速度低、适合于存储函数和数据表格,因此主要用作存储器。典型的EPROM有2716、2732等。可编程逻辑阵列PIA(Programmable Lo

4、gic Array)于20世纪70年代中期出现,它是由可编程的与阵列和可编程的或阵列组成,但由于器件的资源利用率低,价格较贵,编程复杂,支持PLA的开发软件有一定难度,因而没有得到广泛应用。可编程阵列逻辑PAL(Programmable Array Logic)器件是1977年美国MMI公司(单片存储器公司)率先推出的,它由可编程的与阵列和固定的或阵列组成,采用熔丝编程方式,双极性工艺制造,器件的工作速度很高。由于它的输出结构种类很多,设计灵活,因而成为第一个得到普遍应用的可编程逻辑器件,如PALl6L8。通用阵列逻辑器件GAL(Generic Array Logic)器件是1985年Latt

5、ice公司最先发明的可电擦写、可重复编程、可设置加密位的PLD。GAL在PAL基础上,采用了输出逻辑宏单元形式E2CMOS工艺结构。具有代表性的GAL芯片有GALl6V8、GAL20V8,这两种GAL几乎能够代替所有类型的PAL器件。在实际应用中,GAL器件对PAL器件仿真具有百分之百的兼容性,所以GAL几乎完全代替了PAL器件,并可以取代大部分SSI、MSI、数字集成电路,如标准的5474系列器件,因而获得广泛应用。PAL和GAL都属于简单PLD,结构简单,设计灵活,对开发软件的要求低,但规模小,难以实现复杂的逻辑功能。随着技术的发展,简单PLD在集成密度和性能方面的局限性也暴露出来,其寄存

6、器、I/O引脚、时钟资源的数目有限,没有内部互连,因此包括EPLD、CPLD和FPGA在内的复杂PLD迅速发展起来,并向着高密度、高速度、低功耗以及结构体系更灵活、适用范围更宽广的方向发展。可擦除可编程逻辑器件EPLD是20世纪80年代中期Altera公司推出的基于UVEPROM和CMOS技术的PLD,后来发展到采用E2CMOS工艺制作的PLD。EPLD的基本逻辑单元是宏单元。宏单元由可编程的与或阵列、可编程寄存器和可编程I/O三部分组成。从某种意义上讲EPLD是改进的GAL,它在GAL基础上大大增加输出宏单元的数目,提供更大的与阵列,灵活性较GAL有较大改善,集成密度大幅度提高,内部连线相对

7、固定,延时小,有利于器件在高频率下工作,但内部互连能力十分弱。世界著名的半导体器件公司Altera、Xilinx、AMD、Lattice均有EPLD产品,但结构差异较大。复杂可编程逻辑器件CPLD(Complex PLD)是20世纪80年代末Lattice公司提出的在系统可编程(ISP,In System Programmability)技术以后于20世纪90年代初出现的。CPLD是在EPLD的基础上发展起来的,采用E2CMOS工艺制作,与EPLD相比,增加了内部连线,对逻辑宏单元和I/O单元也有重大的改进。CPLD至少包含三种结构:可编程逻辑宏单元、可编程I/O单元和可编程内部连线。部分CP

8、LD器件内部还集成了RAM、FIFO或双口RAM等存储器,以适应DSP应用设计的要求。其典型器件有Altera的MAX7000系列,Xilinx的7000和9500系列,Lattice的PLSIispLSI系列和AMD的MACH系列。现场可编程门阵列FPGA(Field Programmable Gate Array)器件是Xilinx公司1985年首家推出的,它是一种新型的高密度PLD,采用CMOSSRAM工艺制作。FPGA的结构与门阵列PLD不同,其内部由许多独立的可编程逻辑块(CLB)组成,逻辑块之间可以灵活的相互连接。FPGA的结构一般分为三部分:可编程逻辑块、可编程I/O模块和可编程

9、内部连线。CLB的功能很强,不仅能够实现逻辑函数,还可以配置成RAM等复杂形式。配置数据存放在片内的SRAM或者熔丝图上,基于SRAM的FPGA器件工作前需要从芯片外部加载配置数据。配置数据可以存放在片外的EPROM或者计算机上,设计人员可以控制加载过程,在现场修改器件的逻辑功能,即所谓现场可编程。FPGA出现后受到电子设计工程师的普遍欢迎,发展十分迅速。Xilinx、Altera和Actel等公司都提供高性能的FPGA芯片。高密度PLD在生产工艺、器件编程和测试技术等方面都有了飞速发展。目前PLD的集成度非常高,如Altera公司的APEX系列器件,采用0.15m工艺,各层都是铜金属布线,其

10、中EP2A90的密度可达400万典型门,可为用户提供1140个I/O引脚,1Gbits数据速率。世界各著名半导体公司,如Altera、Xilinx、Lattice、Actel和AMD公司均可提供不同类型的CPLD、FPGA产品。众多公司的竞争促进了可编程集成电路技术的提高,使其性能不断改善,产品日益丰富,价格逐步下降。可以预计,可编程逻辑器件将在结构、密度、功能、速度和性能等方面得到进一步发展,结合EDA技术,PLD将在现代电子系统设计中得到非常广泛的应用。1.4 Altera系列CPLD和FPGA器件随着可编程逻辑器件应用的日益广泛,许多IC制造厂家均已涉足CPLDFPGA领域。目前世界上有

11、十几家生产CPLDFPGA的公司,最大的三家是Altera、Xilinx和Lattice-Vantis,其中Altera和Xilinx占了60以上的市场份额。Altera在20世纪90年代以后发展很快,是最大的可编程逻辑供应商之一。Altera的CPLD器件具有良好的性能、极高的密度和非常大的灵活性,除了具有一般PLD的特点外,还具有改进的结构、先进的处理技术、现代化的开发工具以及多种宏功能模块可选用等优点。 (1)性能高 Altera器件的高性能主要体现在技术和结构上,Altera器件采用铜铝布线的先进CMOS技术,具有非常低的功耗和相当高的速度,而且它采用了连续式互连结构,能够提供快速的、

12、连续的信号延时。 (2)逻辑集成度高 在设计过程中,设计者总是希望将更多的逻辑集成进更少的器件中,并缩小印制板的尺寸和降低成本。具有高集成能力的PLD提供了优秀的解决方案:Altera器件密度从300门到400万门,能很容易地集成现有的各种逻辑器件,包括小规模及大规模标准逻辑器件、PLD、FPGA或ASIC。高集成能力的PLD就代表着更高的系统性能、更高的可靠性和更低的成本。 (3)性价比高 Altera不断改进产品的开发和制造工艺,它的经验积累使其处理技术和制造流程十分有效,能够有效地提供高性价比的可编程逻辑器件。Altera的PLD成本与门阵列相当。 (4)开发周期短 对设计者来说时间是最

13、宝贵的资源,Altera的快速、直观、易于使用的MAX+plus和Quartus II软件能够极大地缩短开发周期。使用的MAX+PLUS II和Quartus II软件设计输入、处理、校验以及器件编程一共仅需几个小时,一天内可完成几个完整的设计。Altera与其他EDA制造商紧密合作,在MAX+PLUSII和Quartus II软件中集成了另外的工业标准设计输入、综合、校验工具,如Cadence、ExemplarLogic、Mentor、Graphics、Synopsys、Synplicity、Viewlogic提供的软件。 (5)对器件优化的IP解决方案 Altera为设计者提供已经做好的、

14、经过预先测试并优化了的IP宏功能模块(Megafunctions),允许设计人员在一个器件中快速实现一定的功能而不必从基础的设计做起,大大地提高了设计效率。由于Altera提供开发板,所以可以在设计开始时就进行应用软件的开发,硬件设计人员也可以使用这些开发板快速有效地验证IP功能。 (6)在线可编程 MAX9000、MAX7000、MAX7000A、MAX7000B和MAX3000A系列器件具有在线可编程性,简化了设计开发过程及流水线生产过程,提高了设计的灵活性,并且,能够快速有效地对产品进行现场升级。Altera的ISP使用IEEE ll49.1标准的JTAG(Joint Action Te

15、st Group)测试端口,允许对器件进行编程,并可以对印刷电路板(PCB)进行功能测试。 现在,Altera的PLD器件包括APEX20K、APEXII、Excalibur、Mercury、Stratix、ACEXlK、FLEXl0K、FLEX8000、FLEX6000、MAX9000、MAX7000、MAX3000和Classic系列。从MAX系列发展到APEX系列,器件的可用资源逐渐增多,输入输出管脚也随之增加。灵活逻辑单元矩阵FLEX(Flexible Logic Element Matrix)器件采用查找表(LUT)结构来实现逻辑功能,而多阵列矩阵MAX(Multiple Array

16、 MatriX)和Classic采用“与”可编程“或”固定的乘积项(product-term)结构。查找表和嵌入式寄存器表示了可编程逻辑矩阵(APEX)的先进结构特征,而Mercury系列则是基于查找表结构,它的特征是具有时钟数据恢复和一个性能优化的核,另外,Excalibur的结构特征是基于ARM和基于MIPS的硬核微处理器。针对具体的应用,每种器件系列都有各自不同的特点,这就需要设计者掌握好它们之间的区别。所有Altera的CPLD器件都采用了CMOS工艺,其中一些系列经过改进已采用了更为先进的工艺技术,嵌入了大量的RAM块。其性能对照如表1.1所示。表1.1 Altera器件性能对照表器

17、件序列逻辑单元结构可配置单元用户I/O数量典型可用门Classic乘积项EPROM2268300900MAX3000乘积项EPROM341586005000MAX7000乘积项EPROM362126001万MAX9000乘积项EPROM522161万1.2万FLEX6000查找表SRAM712181.6万2.4万FLEX8000查找表SRAM6820825001.6万FLEX10K查找表SRAM594701万25万ACEX1K查找表SRAM663331万10万Excalibur查找表和RISC处理器SRAM17852110万100万Mercury查找表和CDRSRAM30348612万35万A

18、PEX II查找表和乘积项SRAM492114060万400万APEX20KC查找表和乘积项SRAM25078010万150万APEX20K查找表和乘积项SRAM1288083万150万Altera的系列器件针对设计者需求提供了如下的特性:高带宽、低电压I/O标准(LVDS速率可以达到622Mb/s)和多种I/O电压标准(可以在混合系统中非常方便地实现5.0V,3.3V,2.5V,1.8V电压的互联)。内部集成的锁相环(PLL Phase-Locked Loop)增加了器件的系统级时钟管理,还增加了I/O的性能。Altera的系列器件提供了丰富的芯片封装形式:TQFP、BGA和FBGA等。1.

19、5 可编程逻辑器件上机实验实验一 38译码器设计一、实验目的1、掌握组合逻辑电路的设计方法;2、掌握Verilog HDL语言设计输入方法;3、掌握组合逻辑电路的仿真测试方法;4、初步掌握Quartus II软件的基本操作与应用;5、初步了解可编程逻辑器件的设计过程。二、硬件、软件要求计算机、EDA实验箱、Quartus II软件,下载电缆三、实验内容及实验原理(一)使用向导建立新工程:1、启动软件:通过桌面快捷方式或“开始”菜单打开Quartus II软件,打开后界面如图1.1.1所示。图1.1.1 启动界面2、选择FileNew Project Wizard命令,弹出建立新工程向导,如图1

20、.1.2所示。按照提示选择保存文件的工程目录、工程文件名称及顶层实体的名称(顶层实体名和之后设计的顶层实体名必须相同,默认的顶层实体名与工程文件名相同)。单击Next按钮(如果文件夹不存在,会出现提示界面,如图1.1.3所示,单击“是(Y)”按钮,创建该文件夹即可)进入第2页面。(注意:工程文件夹的名称和文件名不要使用汉字,最好也不要使用数字开头)图1.1.2 新建设计项目对话框(第1页面)图1.1.3 目录创建提示对话框3、第2页面如图1.1.4所示,用于添加已经存在的文件到当前工程项目。如果设计文件和其它底层文件已经存在,可以单击File Name后面的“.”找到相应的文件夹,再单击需要的

21、文件名(按住Ctrl键可以选择多个文件),然后单击Add或者Add All按钮,就可以将原来存在的文件添加到当前工程中;也可以不添加文件,直接单击Next按钮进入第3页面。图1.1.4 新建设计项目对话框(第2页面)4、第三页面如图1.1.5所示,用于选择将要使用的目标器件(要根据实验箱上FPGA芯片的具体型号而定)。在选择芯片时,首先要在Family右边的下拉框中选择目标器件的系列,然后可以在Show inAvailable devicelist中限定封装、管脚数和速度等级,以缩小可用器件列表的范围,便于快速找到需要的目标器件。然后,单击Next按钮进入第4、5页面。图1.1.5 新建设计项

22、目对话框(第3页面)5、第4页面用于选择使用第三方软件工具,如不使用则不必设置,直接使用Quartus II软件集成的工具。第5页面显示了新建设计项目的摘要,检查全部参数设置,若无误,则单击Finish按钮,完成工程的创建;若有误,则单击Back按钮返回,重新设置。图1.1.6 新建设计项目对话框(第4页面)图1.1.7 新建设计项目对话框(第5页面)(二)输入设计文件1、文件输入方式选择。在Quartus II软件主界面选择File/New命令,出现如图1.1.8所示界面,选择设计文件的输入方式,如Verilog HDL File,单击OK按钮,则会打开输入编辑界面如图1.1.9所示。图1.

23、1.8 设计输入方式选择界面图1.1.9 Verilog 文本编辑窗口2、文件输入。在图1.1.9所示的界面中将Verilog程序输入到编辑器中,然后保存文件。出现如图1.1.10所示界面,点击保存(S)按钮。(注意:下方的复选框一定要勾上)保存后界面如图1.1.11所示。图1.1.10 文件保存提示对话框图1.1.11 保存文件后的界面图(三)编译工程在Quartus II软件主界面选择Processing/Start Compilation开始编译,编译完成后的窗口如图1.1.12所示。单击“确定”按钮后,在该图中显示了编译时的各种信息,其中包括警告和出错信息。根据错误提示进行相应的修改,

24、并重新编译,直到没有错误提示为止。图1.1.12 编译完成后的窗口(四)仿真与时序分析1、建立矢量波形文件。在图1.1.12中,单击“File”菜单下的“New”命令,在弹出的“New”对话框中选择“Vector Waveform File”选项后单击“OK”按钮,弹出如图1.1.13所示的矢量波形编辑窗口。图1.1.13 矢量波形编辑窗口2、添加引脚或节点。(1)在图1.1.13中,双击“Name”下方的空白处,弹出“Insert Node or Bus”对话框,如图1.1.14所示。单击对话框的“Node Finder”按钮后,弹出“Node Finder”对话框,如图1.1.15所示。图

25、1.1.14 “Insert Node or Bus”对话框图1.1.15 “Node Finder”对话框(2)单击“List”按钮,在“Node Found”栏中列出了设计中的引脚号,如图1.1.16所示。图1.1.16 列出输入/输出节点 (3)单击“”按钮,所有列出的输入/输出被复制到右边的一侧,也可以只选中其中的一部分,根据情况而定,如图1.1.17所示。图1.1.17 选择输入/输出节点(4)单击“OK”按钮后,返回“Insert Node or Bus”对话框,此时,在“Name”和“Type”栏里出现了“Multiple Items”项,如图1.1.18所示。图1.1.18 “

26、Insert Node or Bus”对话框(5)单击“OK”按钮,选中的输入/输出被添加到矢量波形编辑窗口中,如图1.1.19所示。图1.1.19 添加节点后的矢量波形编辑窗口3、编辑输入信号并保存文件。在图1.1.19中单击“Name”下方的“a”,即选中该行的波形。将输入信号“a”设置为时钟信号,选择Edit菜单下的“Value”中的“Clock”,弹出“Clock”对话框,此时可以修改信号的周期、相位和占空比。设置完成后单击“OK”按钮,输入信号“a”设置完毕。同理设置输入信号“b”和“c”,如图1.1.20所示。最后单击保存文件按钮,根据提示完成保存工作。图1.1.20 编辑输入信号

27、4、仿真波形。仿真分为功能仿真和时序仿真,功能仿真是忽略延时后的仿真,是最理想的仿真;时序仿真则是加上了一些延时的仿真,是最接近于实际的仿真。在本设计中,直接采用时序仿真。Quartus II中默认的仿真为时序仿真,在图1.1.20中,选择“Processing”菜单下的“Start Simulation”进行仿真。仿真完成后的窗口如图1.1.21所示。观察波形可知输出和输入之间有一定的延时。图1.1.21 时序仿真(五)引脚分配引脚分配是为了对所设计的工程进行硬件测试,将输入/输出信号锁定在器件确定的引脚上。单击“Assignments”菜单下的“Pins”命令,弹出的对话框如图1.1.22

28、所示,在下方的列表中列出了本项目所有的输入/输出引脚名。图1.1.22 选择要分配的引脚在图1.1.22中,双击与输入端“a”对应的“Location”选项后弹出引脚列表,从中选择合适的引脚(尽量别选择具有第二功能的引脚),则输入a的引脚分配完毕。同理完成所有引脚的指定,如图1.1.23所示。图1.1.23 完成所有引脚的分配(六)下载验证下载验证是将本次设计所生成的文件通过计算机下载到实验箱里来验证此次设计是否符合要求。大体上分为以下几个步骤。1、编译。分配完引脚后必须再次编译才能存储这些引脚锁定的信息。2、配置下载电缆。在“Tool”菜单下选择“Programmer”命令,弹出如图1.1.

29、24所示的对话框。图1.1.24 未配置的下载电缆窗口单击“Hardware Setup”按钮,弹出“Hardware Setup”对话框,如图1.1.25所示。双击“USB-Blaster”即可,下载电缆配置完成。图1.1.25 设置编程器对话框3、下载。JTAG模式是软件的默认下载模式,相应的下载文件为“.sof”格式。勾选下载文件“Decoder3to8.sof”右侧的第一个小方框,将下载电缆连接好后,打开实验箱电源,然后单击“Start”按钮计算机就开始下载编程文件,下载完成后如图1.1.26所示。图1.1.26 下载完毕(五)、器件下载编程与硬件实现 一)实验电路板上的连线用三位拨码

30、开关代表译码器的输入端A、B、C,将之分别与实验箱上芯片的相应管脚相连;用LED灯来表示译码器的输出,将D0.D7对应的管脚分别与8只LED灯相连。试验结果如下:ABCLED0LED1LED2LED3LED4LED5LED6LED7000灭亮亮亮亮亮亮亮100亮灭亮亮亮亮亮亮010亮亮灭亮亮亮亮亮110亮亮亮灭亮亮亮亮001亮亮亮亮灭亮亮亮101亮亮亮亮亮灭亮亮011亮亮亮亮亮亮灭亮111亮亮亮亮亮亮亮灭 四、回答问题1、对于复杂电路设计,比较原理图与Verilog语言输入设计的优缺点;2、列出目前Altera公司的主要CPLD和FPGA芯片系列号,并写出该系列中部分具体器件型号;3、说明实验所用FPGA芯片的具体型号及主要参数;4、说明编译正确与时序仿真正确之间的区别;实验二 七段译码器设计一、实验目的1、掌握7段数码管的使用方法,学习数字编码的规则;2、进一步熟悉Verilog语言设计方法;3、熟悉Quartus II软件中逻辑宏单元的使用方法;二、硬件、软件要求计算机、EDA实验箱、Quartus II软件,下载电缆三、实验内容及实验原理1、实验原理说明:a7段数码管的结构,如图1.2.1所示:fbgecdpd图1.2

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2