FPGA/CPLD结构与应用

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第2章FPGA/CPLD结构与应用2.1概述可编程逻辑器件的定义:逻辑器件:用来实现某种特定逻辑功能的电子器件,最简单的逻辑器件是与、或、非门(74LS00,74LS04等),在此基础上可实现复杂的时序和组合逻辑功能。可编程逻辑器件(PLD--ProgrammableLogicDevice):器件的功能不是固定不变的,而是可根据用户的需要而进行改变,即由编程的方法来确定器件的逻辑功能。数字电路课程的回顾布尔函数--数字系统数学基础(卡诺图)数字电路设计的基本方法组合电路设计问题逻辑关系真值表化简逻辑图时序电路设计列出原始状态转移图和表状态优化状态分配触发器选型求解方程式逻辑图任何组合电路都可表示为其所有输入信号的最小项的和或者最大项的积的形式。时序电路包含可记忆器件(触发器),其反馈信号和输入信号通过逻辑关系再决定输出信号。输入电路输出电路或阵列与阵列输入项乘积项或项数字电路课程的回顾使用中、小规模器件设计电路(74、54系列)编码器(74LS148)译码器(74LS154)比较器(74LS85)计数器(74LS193)移位寄存器(74LS194)………数字电路课程的回顾设计方法的局限卡诺图只适用于输入比较少的函数的化简。采用“搭积木”的方法的方法进行设计。必须熟悉各种中小规模芯片的使用方法,从中挑选最合适的器件,缺乏灵活性。设计系统所需要的芯片种类多,且数量很大。数字电路课程的回顾数字电路课程的回顾采用中小规模器件的局限电路板面积很大,芯片数量很多,功耗很大,可靠性低--提高芯片的集成度设计比较困难--能方便地发现设计错误电路修改很麻烦--提供方便的修改手段PLD器件的出现改变了这一切PLD出现的背景电路集成度不断提高SSIMSILSIVLSI计算机技术的发展使EDA技术得到广泛应用设计方法的发展自下而上自上而下用户需要设计自己需要的专用电路专用集成电路(ASIC-ApplicationSpecificIntegratedCircuits)开发周期长,投入大,风险大可编程器件PLD:开发周期短,投入小,风险小PLD器件的优点集成度高,可以替代多至几千块通用IC芯片极大减小电路的面积,降低功耗,提高可靠性具有完善先进的开发工具提供语言、图形等设计方法,十分灵活通过仿真工具来验证设计的正确性可以反复地擦除、编程,方便设计的修改和升级灵活地定义管脚功能,减轻设计工作量,缩短系统开发时间保密性好大的PLD生产厂家最大的PLD供应商之一FPGA的发明者,最大的PLD供应商之一ISP技术的发明者提供军品及宇航级产品PLD器件的分类--按集成度低密度PROM,EPROM,EEPROM,PAL,PLA,GAL只能完成较小规模的逻辑电路高密度EPLD,CPLD,FPGA可用于设计大规模的数字系统集成度高,甚至可以做到SOC(SystemOnaChip)可编程逻辑器件(PLD)简单PLD复杂PLDPROMPALPLAGALCPLDFPGAPLD器件的分类--按结构特点基于与或阵列结构的器件--阵列型PROM,EEPROM,PAL,GAL,CPLDCPLD的代表芯片如:Altera的MAX系列基于门阵列结构的器件--单元型FPGAAltera的Cyclone系列PLD器件的分类--按编程工艺熔丝或反熔丝编程器件--Actel的FPGA器件体积小,集成度高,速度高,易加密,抗干扰,耐高温只能一次编程,在设计初期阶段不灵活SRAM--大多数公司的FPGA器件可反复编程,实现系统功能的动态重构每次上电需重新下载,实际应用时需外挂EEPROM用于保存程序EEPROM--大多数CPLD器件可反复编程不用每次上电重新下载,但相对速度慢,功耗较大2.2简单PLD原理2.2.1电路符号表示图2-3常用逻辑门符号与现有国标符号的对照2.2.1电路符号表示图2-4PLD的互补缓冲器图2-5PLD的互补输入图2-6PLD中与阵列表示图2-7PLD中或阵列的表示图2-8阵列线连接表示2.2.2PROM地址译码器存储单元阵列………0A1A1nA0W1W1pW0F1F1mFnp2图2-9PROM基本结构:0111201110110...AAAWAAAWAAAWnnnn其逻辑函数是:2.2.2PROM图2-10PROM的逻辑阵列结构与阵列(不可编程)或阵列(可编程)………0A1A1nA0W1W1pW0F1F1mFnp201,011,111,1101,011,111,1100,010,110,10WMWMWMFWMWMWMFWMWMWMFmmpmpmpppp逻辑函数表示:2.2.2PROM图2-11PROM表达的PLD图阵列与阵列(固定)或阵列(可编程)0A1A1A1A0A0A1F0F图2-12用PROM完成半加器逻辑阵列与阵列(固定)或阵列(可编程)0A1A1A1A0A0A1F0F01110100AAFAAAAF01110100AAFAAAAF如一位半加器的逻辑表达式,可用4*2PROM编程实现10110AAFAAS10110AAFAAS阵列点阵—熔丝图文件(FuseMap)PLD小结1、特点与阵列不可编程,或阵列可编程。2、优点可实现组合逻辑电路,速度较快。3、缺点当输入变量增加时,因要产生所有的最小相乘项,门电路以2n的级数增加,而实际并不是需要所有的最小相乘项,固有较大的资源浪费。2.2.3PLA图2-13PLA逻辑阵列示意图与阵列(可编程)或阵列(可编程)0A1A1A1A0A0A1F0F2.2.3PLA图2-14PLA与PROM的比较0A1A1F0F2A2F0A1A1F0F2A2FPLA小结1、特点与阵列或阵列均可编程。2、优点在输入信号规模较大时,可大幅度减少门的规模,面积利用率高。3、缺点(1)因与、或均要编程,所以软件算法比较复杂;(2)编程后器件的运行速度下降。(3)因速度低,只应用在小规模的数字逻辑上,目前PLA以被淘汰。但在全定制的ASIC中得到广泛应用。2.2.4PAL0A1A1F0F0A1A1F0F图2-15PAL结构:图2-16PAL的常用表示:2.2.4PAL11100100R11100100RQQD11100100R11100100RVccSG1SL07SL17SG0SL0619I/O711100100R11100100RQQD11100100R11100100RVccSG1SL06SL16SG1SL0618I/O61CLK/I02I13I207815034781211151619202324272831图2-17一种PAL16V8的部分结构图PAL小结特点:与可编程,或阵列不可编程。对共用的多个乘积项,允许输出信号再馈入下一个与阵列。优点:避免了PLA存在的问题,而保留了PLA的面积利用率高的优点。再加上寄存器,可能实现时序逻辑。缺点:因不同设计功能,需不同的在存内贮单元(寄存器、触发器和存贮器),PLA的IO结构很多,生产不便。溶丝工艺一次可编程,不能重复利用。目前PAL也以补淘汰,被GAL取代。EPLD---ErasableProgrammableLogicDeviceGAL:在PAL上改进了IO结构,增加了输出逻辑宏单元OLMC(OutputLogicMacroCell)。首次在PAL上采用了EEPROM工艺,使得GAL具有电可擦除重复编程的特点。2.2.5GAL—通用阵列逻辑器件2.2.5GAL207190347812111516192023242728311381518OLMCOLMC41623175243116OLMCOLMC63239157404714OLMCOLMC84855139566312OLMCOLMC11I/CLKIIIIIIIII/OEI/O/QI/O/QI/O/QI/O/QI/O/QI/O/QI/O/QI/O/QCLKOE图2-18GAL16V8的结构图逻辑宏单元输入/输出口输入口时钟信号输入三态控制可编程与阵列固定或阵列GAL16V82.2.5GAL的OLMC的三种模式图2-19寄存器输出结构图2-20寄存器模式组合双向输出结构1、寄存器模式2.2.5GAL图2-21组合输出双向结构图2-22复合型组合输出结构2、复合模式2.2.5GAL图2-23反馈输入结构图2-24输出反馈结构3、简单模式2.2.5GAL图2-25简单模式输出结构GAL小结特点列可编程或固定,增加OLMC,EEPROM工艺。优点具有面积利用高,可重复编程,OLMC使通用性高。简化电路板的布局布线,系统的可靠性提高。缺点阵列规模小,资源不够用于设计数字系统。片内寄存器资源不足,且限制过多。IO不够灵活编程不便,需专用工具。目前GAL仍被广泛应用。2.3复杂可编程逻辑器件CPLD/FPGA简介复杂可编程逻辑器件CPLD/FPGA简介复杂可编程逻辑器件CPLD/FPGA简介CPLD/FPGA的主要特点CPLD/FPGA的主要特点CPLD/FPGA的命名如何使用CPLD/FPGA?CPLD的组成与特点CPLD结构CPLD结构逻辑宏单元逻辑宏单元-MAX7000乘积项共享结构由2个或门实现乘积项共享结构可编程内连线PI可编程的I/O控制块CPLD性能特点2.4FPGA结构与工作原理FPGA基本结构查找表•一个N输入查找表(LUT,LookUpTable)可以实现N个输入变量的任何逻辑功能,如N输入“与”、N输入“异或”等。•输入多于N个的函数、方程必须分开用几个查找表(LUT)实现输出查黑找盒表子输入1输入2输入3输入40000010100000101输入A输入B输入C输入D查找表输出16x1RAM多路选择器例1:实现一个4输入的门组合逻辑电路例2:多种门组合逻辑电路例3:查找表级联FPGA基本结构FPGA基本结构FPGA基本结构FPGA基本结构可编程逻辑块(CLB)可编程逻辑块(CLB)FPGA/CPLD生产商ALTERAFPGA:FLEX系列:10K、10A、10KE,EPF10K30EAPEX系列:20K、20KEEP20K200EACEX系列:1K系列EP1K30、EP1K100STRATIX系列:EP1系列EP1S30、EP1S120CPLD:MAX7000/S/A/B系列:EPM7128SMAX9000/A系列FPGA:XC3000系列,XC4000系列,XC5000系列Virtex系列SPARTAN系列:XCS10、XCS20、XCS30CPLD:XC9500系列:XC95108、XC95256XILINXLATTICEVANTIS(AMD)ispLSI系列:1K、2K、3K、5K、8KispLSI1016、ispLSI2032、ispLSI1032E、ispLSI3256AMACH系列ispPAC系列:其他PLD公司:ACTEL公司:ACT1/2/3、40MXATMEL公司:ATF1500AS系列、40MXCYPRESS公司QUIKLOGIC公司CPLDSOMUCHIC!FPGACPLDFPGA/CPLD生产商CPLD与FPGA的区别CPLDFPGA内部结构Product-termLook-upTable程序存储内部EEPROMSRAM,外挂EEPROM资源类型组合电路资源丰富触发器资源丰富集成度低高使用场合完成控制逻辑能完成比较复杂的算法速度慢快其他资源-EAB,锁相环保密性可加密一般不能保密FPGA采用SRAM进行功能配置,可重复编程,但系统掉电后,SRAM中的数据丢失。因此,需在FPGA外加EPROM,将配置数据写入其中,系统每次上电自动将数据引入SRAM中

1 / 134
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功