第一讲—补充EDA教程—FPGA课件

上传人:痛*** 文档编号:241683326 上传时间:2024-07-15 格式:PPT 页数:88 大小:1.33MB
返回 下载 相关 举报
第一讲—补充EDA教程—FPGA课件_第1页
第1页 / 共88页
第一讲—补充EDA教程—FPGA课件_第2页
第2页 / 共88页
第一讲—补充EDA教程—FPGA课件_第3页
第3页 / 共88页
点击查看更多>>
资源描述
设计中心电子设计自动化技术电子设计自动化技术第二讲第二讲 可重构可重构(编程)技(编程)技术术设计中心重要观点重要观点 现代现代VLSIVLSI技术的核心是存储器技术技术的核心是存储器技术 -CPU-CPU技术是存储器技术的应用(现在的技术是存储器技术的应用(现在的SOCSOC设计不设计不是围绕是围绕CPUCPU而是围绕存储器的设计)而是围绕存储器的设计)CPLD/FPGACPLD/FPGA将大幅挤占传统将大幅挤占传统ICIC市场市场 -大量的微电子技术和大量的微电子技术和ICIC设计专业毕业生将从事设计专业毕业生将从事CPLD/FPGACPLD/FPGA设计(而不是传统意义的设计(而不是传统意义的ICIC设计)设计)将将CPLD/FPGACPLD/FPGA设计结果转化成设计结果转化成ICIC设计结果的方法设计结果的方法将推广应用将推广应用 ICIC设计变得日益设计变得日益“可爱可爱”(以前或到目前为止,(以前或到目前为止,有些有些“可怕可怕”)设计中心有三种类型的可重构有三种类型的可重构(编程编程)技术对当今技术对当今工程师开发电子产品的方式造成了巨大工程师开发电子产品的方式造成了巨大影响。分别是影响。分别是(1 1)微处理器和微控制器;)微处理器和微控制器;(2 2)可编程逻辑;)可编程逻辑;(3 3)可编程模拟阵列)可编程模拟阵列 (PAA)本课程讨论数字可编程逻辑技术本课程讨论数字可编程逻辑技术概述概述设计中心许氏(木村)定理许氏(木村)定理 电路设计电路设计 逻辑设计逻辑设计 软件设计软件设计 1958 1968 1978 1988 1998 2008 2018 2028TrAsspAiscMpu FPGA FPGA?SoCSoc专用的可以编程的专用的可以编程的Soc设计中心许氏(木村)定理许氏(木村)定理 半导体的硅周期率半导体的硅周期率 硅集成电路产品形态大约以十年为一代硅集成电路产品形态大约以十年为一代 在通用与专用在通用与专用ICIC的此消彼长中,波浪向上发展的此消彼长中,波浪向上发展 设计内容(对象)二十年为一代设计内容(对象)二十年为一代 1958-1978-1958-1978-电路设计电路设计 手工计算时代:大量的布尔代数,卡诺图化简手工计算时代:大量的布尔代数,卡诺图化简 1978-1998-1978-1998-逻辑设计(软件编程)逻辑设计(软件编程)CADCAD时代:时代:MCU/CPUMCU/CPU指令编码,二进制码或高级语言编程指令编码,二进制码或高级语言编程 1998-2018-1998-2018-软件设计(硬件编程)软件设计(硬件编程)(软硬件双编程)(软硬件双编程)EDAEDA时代:时代:VHDL/VERILOGVHDL/VERILOG硬件描述语言编码(硬件描述语言编码(98-200898-2008)C+C+与与HDLHDL混合编码(混合编码(2008-20182008-2018)设计中心许氏(木村)定理许氏(木村)定理从从19981998年(第五波)起,年(第五波)起,“可重构(可编程)可重构(可编程)”特点己成为硅集成电路芯片产品特征特点己成为硅集成电路芯片产品特征目前我们正处于第五波(目前我们正处于第五波(1998-20081998-2008),可编),可编程逻辑器件正在兴起。程逻辑器件正在兴起。正好发生了正好发生了“When will FPGA kill ASIC?”When will FPGA kill ASIC?”的争论的争论设计中心要点要点可编程逻辑器件的概念可编程逻辑器件的概念理解什么是理解什么是CPLDCPLD及及CPLDCPLD架构架构理解什么是理解什么是FPGAFPGA及及FPGAFPGA架构架构理解理解CPLDCPLD和和FPGAFPGA的区别与联系的区别与联系了解常用的了解常用的CPLDCPLD和和FPGAFPGA型号型号设计中心脉冲与数字电路课程的回顾脉冲与数字电路课程的回顾n布尔函数数字系统数学基础(卡诺布尔函数数字系统数学基础(卡诺图)图)n数字电路设计的基本方法数字电路设计的基本方法n组合电路设计组合电路设计问题问题逻辑关系逻辑关系真值表真值表化简化简逻辑逻辑图图n时序电路设计时序电路设计列出原始状态转移图和表列出原始状态转移图和表状态优化状态优化状态分状态分配配触发器选型触发器选型求解方程式求解方程式逻辑图逻辑图设计中心脉冲与数字电路课程的回顾脉冲与数字电路课程的回顾使用中、小规模器件设计电路(使用中、小规模器件设计电路(7474、5454系列)系列)编码器(编码器(74LS14874LS148)译码器(译码器(74LS15474LS154)比较器(比较器(74LS8574LS85)计数器(计数器(74LS19374LS193)移位寄存器(移位寄存器(74LS19474LS194)设计中心脉冲与数字电路课程的回顾脉冲与数字电路课程的回顾设计方法的局限设计方法的局限卡诺图只适用于输入比较少的函数的化简。卡诺图只适用于输入比较少的函数的化简。采用采用“搭积木搭积木”的方法的方法进行设计。必的方法的方法进行设计。必须熟悉各种中小规模芯片的使用方法,从中须熟悉各种中小规模芯片的使用方法,从中挑选最合适的器件,缺乏灵活性。挑选最合适的器件,缺乏灵活性。设计系统所需要的芯片种类多,且数量很大。设计系统所需要的芯片种类多,且数量很大。设计中心脉冲与数字电路课程的回顾脉冲与数字电路课程的回顾采用中小规模器件的局限采用中小规模器件的局限电路板面积很大,芯片数量很多,功耗很大,电路板面积很大,芯片数量很多,功耗很大,可靠性低提高芯片的集成度可靠性低提高芯片的集成度设计比较困难能方便地发现设计错误设计比较困难能方便地发现设计错误电路修改很麻烦提供方便的修改手段电路修改很麻烦提供方便的修改手段PLDPLD器件的出现改变了这一切器件的出现改变了这一切设计中心可编程逻辑器件的定义可编程逻辑器件的定义逻辑器件:用来实现某种特定逻辑功能的电子逻辑器件:用来实现某种特定逻辑功能的电子器件,最简单的逻辑器件是与、或、非门器件,最简单的逻辑器件是与、或、非门(74LS0074LS00,74LS0474LS04等),在此基础上可实现复等),在此基础上可实现复杂的时序和组合逻辑功能。杂的时序和组合逻辑功能。可编程逻辑器件(可编程逻辑器件(PLDPLDProgrammable Programmable Logic DeviceLogic Device):器件的功能不是固定不变的,):器件的功能不是固定不变的,而是可根据用户的需要而进行改变,即由编程而是可根据用户的需要而进行改变,即由编程的方法来实现器件的逻辑功能的方法来实现器件的逻辑功能。设计中心PLDPLD出现的背景出现的背景电路集成度不断提高电路集成度不断提高SSISSIMSIMSILSILSIVLSIVLSI计算机技术的发展使计算机技术的发展使EDAEDA技术得到广泛应用技术得到广泛应用设计方法的发展设计方法的发展自下而上自下而上自上而下自上而下用户需要设计自己需要的专用电路用户需要设计自己需要的专用电路专用集成电路(专用集成电路(ASICASICApplication Specific Application Specific Integrated CircuitsIntegrated Circuits)开发周期长,投入大,风)开发周期长,投入大,风险大险大可编程器件可编程器件PLDPLD:开发周期短,投入小,风险小:开发周期短,投入小,风险小设计中心PLDPLD器件的优点器件的优点集成度高,可以替代多至几千块通用集成度高,可以替代多至几千块通用ICIC芯片芯片极大减小电路的面积,降低功耗,提高可靠性极大减小电路的面积,降低功耗,提高可靠性具有完善先进的开发工具具有完善先进的开发工具提供语言、图形等设计方法,十分灵活提供语言、图形等设计方法,十分灵活通过仿真工具来验证设计的正确性通过仿真工具来验证设计的正确性可以反复地擦除、编程,方便设计的修改和升可以反复地擦除、编程,方便设计的修改和升级级灵活地定义管脚功能,减轻设计工作量,缩短灵活地定义管脚功能,减轻设计工作量,缩短系统开发时间系统开发时间保密性好保密性好设计中心可重构技术的国际先进水平可重构技术的国际先进水平到到9090年代,年代,PLDPLD得到了迅速发展,不仅具有电得到了迅速发展,不仅具有电擦除特性,而且拥有了边界扫描扫描及在线编擦除特性,而且拥有了边界扫描扫描及在线编程程ISP(InISP(In-System Programmability)-System Programmability)等特性。等特性。比较常用的有比较常用的有XILINXXILINX公司的公司的FPGAFPGA和和ALTERAALTERA及及LATTICELATTICE公司的公司的CPLDCPLD。19921992年年LATTICELATTICE公司率先推出公司率先推出ISP(InISP(In-System -System Programmability)Programmability),并推出,并推出ISP_LSI1000ISP_LSI1000系列系列高密度高密度ISPISP器件。器件。20002000年出现了产品集成度年出现了产品集成度200200万门的万门的FPGAFPGA产品。产品。同期同期XilinxXilinx推出推出XC95288 CPLDXC95288 CPLD拥有拥有288288个宏单个宏单元。元。设计中心可重构技术的国际先进水平可重构技术的国际先进水平目目前前,国国际际上上著著名名的的几几家家FPGAFPGA厂厂家家都都在在加加紧紧研研发发下下一一代代工工艺艺的的产产品品。XilinxXilinx已已经经生生产产了了 6565纳米的可编程门阵列处理器纳米的可编程门阵列处理器(FPGA)(FPGA)芯片。芯片。随着随着VlSIVlSI工艺的不断提高,工艺的不断提高,PLDPLD芯片的规模也芯片的规模也越来越大,其单片逻辑门数已达到上越来越大,其单片逻辑门数已达到上千千万门以万门以上,它所能实现的功能也越来越强,目前,单上,它所能实现的功能也越来越强,目前,单片可编程系统片可编程系统SoPCSoPC(System on a System on a Programmable ChipProgrammable Chip)己经成为了现实。如:)己经成为了现实。如:XilinxXilinx 2002 2002年推出的年推出的ProPro系列系列FPGAFPGA产品,嵌入产品,嵌入了了3232位位CPUCPU和大量乘法器、接口等功能。和大量乘法器、接口等功能。设计中心可重构技术的国内水平可重构技术的国内水平国内目前在国家国内目前在国家863863计划计划SOCSOC专项支持下专项支持下20032003年年1 1月月-2003-2003年年1212月,由电子科技大学与成都华微月,由电子科技大学与成都华微电子系统有限公司联合开展电子系统有限公司联合开展CPLDCPLD的研究,研制的研究,研制出具有出具有7272个宏单元的个宏单元的CPLD VLSICPLD VLSI芯片(国外目芯片(国外目前最大的前最大的CPLDCPLD具有具有288288个宏单元),填补了国个宏单元),填补了国内空白,打破了美国公司对这一技术的垄断。内空白,打破了美国公司对这一技术的垄断。在国家在国家863863计划计划SOCSOC专项支持下专项支持下20032003年年1 1月月-2003-2003年年1212月,复旦大学开展了对月,复旦大学开展了对FPGAFPGA的研究,研制的研究,研制出出1010万门万门FPGAFPGA芯片。芯片。20092009年年1010月,电子科技大学与成都华微电子系月,电子科技大学与成都华微电子系统有限公司联合研制成功统有限公司联合研制成功100100万门万门FPGAFPGA芯片。芯片。设计中心设计中心设计中心设计中心设计中心研究可重构单片系统的重要意义研究可重构单片系统的重要意义研究可重构单片系统研究可重构单片系统对于解决我国电子工业缺对于解决我国电子工业缺“芯芯”问题具有重要意义。问题具有重要意义。我国电子工业缺我国电子工业缺“芯芯”是不争的事实。从手机、是不争的事实。从手机、电视机、电视机、DVD/VCDDVD/VCD、电脑、家用电器到各种通、电脑、家用电器到各种通信设备、仪器仪表,其核心芯片均从国外进口,信设备、仪器仪表,其核心芯片均从国外进口,核心技术都在外国人手中。核心技术都在外国人手中。这种局面形成的技术上的原因之一是:我们不这种局面形成的技术上的原因之一是:我们不得不用国外的芯片来设计我们的电子系统,所得不用国外的芯片来设计我们的电子系统,所以,我们的电子产品不得不用国外的芯片。以,我们的电子产品不得不用国外的芯片。设计中心研究可重构单片系统的重要意义研究可重构单片系统的重要意义掌握掌握PLD/PLD/SoPCSoPC技术,则可以从根本上打破上述技术,则可以从根本上打破上述的怪圈。的怪圈。在设计数字电路与系统时不依据国外己有芯片,在设计数字电路与系统时不依据国外己有芯片,而是依据数字电子系统需求,用硬件描述语言而是依据数字电子系统需求,用硬件描述语言(HDLHDL)设计。)设计。由国产的由国产的PLD/PLD/SoPCSoPC实现数字电子系统,则可从实现数字电子系统,则可从根本上摆脱对国外芯片的依赖。根本上摆脱对国外芯片的依赖。PLD/PLD/SoPCSoPC技术的出现,对于我国数字整机的自技术的出现,对于我国数字整机的自主创新提供了一个历史机遇。主创新提供了一个历史机遇。设计中心管脚数目:管脚数目:208208个个电源:电源:3.3V3.3V(I/OI/O)2.5V2.5V(内核)内核)速度速度250MHz250MHz内部资源内部资源49924992个逻辑单元个逻辑单元1010万个逻辑门万个逻辑门49152 bit49152 bit的的RAMRAM设计中心PLDPLD的发展趋势的发展趋势向高集成度、高速度方向进一步发展向高集成度、高速度方向进一步发展最高集成度已超过千万门最高集成度已超过千万门向低电压和低功耗方向发展,向低电压和低功耗方向发展,5V5V3.3V3.3V2.5V2.5V1.8V1.8V更低更低内嵌多种功能模块内嵌多种功能模块RAMRAM,ROMROM,FIFOFIFO,DSPDSP,CPUCPU向数、模混合可编程方向发展向数、模混合可编程方向发展设计中心大的大的PLDPLD生产厂家生产厂家最大的最大的PLDPLD供应商之一供应商之一FPGAFPGA的发明者,最大的的发明者,最大的PLDPLD供应商之一供应商之一ISPISP技术的发明者技术的发明者提供军品及宇航级产品提供军品及宇航级产品设计中心PLDPLD器件的分类按集成度器件的分类按集成度低密度低密度PROM,EPROM,EEPROM,PAL,PLA,GALPROM,EPROM,EEPROM,PAL,PLA,GAL只能完成较小规模的逻辑电路只能完成较小规模的逻辑电路高密度,已经有超过千万门的器件高密度,已经有超过千万门的器件EPLD,CPLD,FPGAEPLD,CPLD,FPGA可用于设计大规模的数字系统集成度高,甚可用于设计大规模的数字系统集成度高,甚至可以做到至可以做到SOCSOC(System On a ChipSystem On a Chip)设计中心PLDPLD器件的分类按结构特点器件的分类按结构特点基于与或阵列结构的器件阵列型基于与或阵列结构的器件阵列型PROMPROM,EEPROMEEPROM,PALPAL,GALGAL,CPLDCPLDCPLDCPLD的代表芯片如:的代表芯片如:AlteraAltera的的MAXMAX系列系列基于门阵列结构的器件单元型基于门阵列结构的器件单元型FPGAFPGA设计中心PLDPLD器件的分类按编程工艺器件的分类按编程工艺n熔丝或反熔丝编程器件熔丝或反熔丝编程器件ActelActel的的FPGAFPGA器件器件n体积小,集成度高,速度高,易加密,抗干扰,耐体积小,集成度高,速度高,易加密,抗干扰,耐高温高温n只能一次编程,在设计初期阶段不灵活只能一次编程,在设计初期阶段不灵活nSRAMSRAM大多数公司的大多数公司的FPGAFPGA器件器件n可反复编程,实现系统功能的动态重构可反复编程,实现系统功能的动态重构n每次上电需重新下载,实际应用时需外挂每次上电需重新下载,实际应用时需外挂EEPROMEEPROM用用于保存程序于保存程序nEEPROMEEPROM大多数大多数CPLDCPLD器件器件n可反复编程可反复编程n不用每次上电重新下载,但相对速度慢,功耗较大不用每次上电重新下载,但相对速度慢,功耗较大设计中心可编程逻辑器件(可编程逻辑器件(PLDPLD)及其重构手段)及其重构手段PROM-光刻版光刻版PAL-EPROM、E2PROMGAL-EPROM、E2PROMGA-光刻版光刻版CPLD(Complex Programmable Logic Device)-EPROM、E2PROMFPGA(Field Programmable Gate Array)-SRAM设计中心可编程逻辑器件(可编程逻辑器件(PLDPLD)及其重构手段)及其重构手段EPLD(Electrical Programmable Logic Device)-PAL、GAL、CPLD-EPROM、E2PROM设计中心数字电路的基本组成数字电路的基本组成任何组合电路都可表示为其所有输入信号的最小任何组合电路都可表示为其所有输入信号的最小项的和或者最大项的积的形式。项的和或者最大项的积的形式。时序电路包含可记忆器件(触发器),其反馈信时序电路包含可记忆器件(触发器),其反馈信号和输入信号通过逻辑关系再决定输出信号。号和输入信号通过逻辑关系再决定输出信号。设计中心PLDPLD的逻辑符号表示方法的逻辑符号表示方法与门乘积项设计中心PROMPROM结构结构与阵列为全译码阵与阵列为全译码阵列,器件的规模将列,器件的规模将随着输入信号数量随着输入信号数量n n的增加成的增加成2 2n n指数指数级增长。因此级增长。因此PROMPROM一般只用于数据存一般只用于数据存储器,不适于实现储器,不适于实现逻辑函数。逻辑函数。EPROMEPROM和和EEPROMEEPROM设计中心用用PROMPROM实现组合逻辑电路功能实现组合逻辑电路功能实现的函数为:实现的函数为:固定连接点固定连接点(与)(与)编程连接点编程连接点(或)(或)设计中心PALPAL结构结构与阵列可编程使输与阵列可编程使输入项增多,或阵列入项增多,或阵列固定使器件简化。固定使器件简化。或阵列固定明显影或阵列固定明显影响了器件编程的灵响了器件编程的灵活性活性设计中心PLAPLA结构结构PLAPLA的内部结构在简的内部结构在简单单PLDPLD中有最高的灵中有最高的灵活性活性。设计中心AnBnCnAnBnCnAnBnCnAnBnCnAnBnAnCnBnCn用用PALPAL实现全加器实现全加器设计中心GALGAL结构结构GALGAL器件与器件与PALPAL器件的区器件的区别在于用可别在于用可编程的输出编程的输出逻辑宏单元逻辑宏单元(OLMCOLMC)代代替固定的或替固定的或阵列。可以阵列。可以实现时序电实现时序电路。路。逻辑宏单元OLMC设计中心GALGAL器件的器件的OLMCOLMC每个每个OLMCOLMC包含或阵列包含或阵列中的一个或门中的一个或门组成:组成:异或门:控制输出异或门:控制输出信号的极性信号的极性D D触发器:适合设触发器:适合设计时序电路计时序电路4 4个多路选择器个多路选择器输出使能选择反馈信号选择或门控制选择输出选择设计中心CPLDCPLD和和FPGAFPGA目前目前PLDPLD主要是指主要是指CPLDCPLD和和FPGAFPGA器件,并被器件,并被应用在不同的高科技研发领域,如数字应用在不同的高科技研发领域,如数字电路设计、微处理器系统、电路设计、微处理器系统、DSPDSP、电信、电信、可重构计算机及可重构计算机及ASICASIC设计。设计。由于可编程逻辑器件以由于可编程逻辑器件以EEPROMEEPROM、SRAMSRAM或或FlashFlash工艺为基础,用户可以通过计算机工艺为基础,用户可以通过计算机对芯片进行编程,大大降低成本和缩短对芯片进行编程,大大降低成本和缩短开发时间。开发时间。设计中心CPLD复杂可编程逻辑器件复杂可编程逻辑器件CPLDCPLD(Complex Complex Programmable Logic DeviceProgrammable Logic Device)是由是由PALPAL或或GALGAL发发展来的。展来的。规模大,结构复杂,属于大规模集成规模大,结构复杂,属于大规模集成电路范围。电路范围。CPLDCPLD主要是由可编程逻辑宏单元主要是由可编程逻辑宏单元(LMCLMC,Logic Logic Macro CellMacro Cell)、可编程互连距阵单元()、可编程互连距阵单元(PIAPIA)及)及I/OI/O控制块组成。控制块组成。CPLDCPLD利用利用VLSIVLSI的密度产生更通用的能实现的密度产生更通用的能实现PCBPCB板板上几个简单上几个简单PALPAL互连功能互连功能的器件,是的器件,是PAL/PROMPAL/PROM这这类范例的扩展。类范例的扩展。CPLDCPLD为为PALPAL构造构造。设计中心CPLDCPLD特点特点CPLDCPLD是粗颗粒的是粗颗粒的PLDPLD 乘积项可以很大乘积项可以很大,可以实现十分复杂的逻辑电路可以实现十分复杂的逻辑电路CPLDCPLD名称的来历名称的来历相对相对FPGAFPGA的细颗粒来说,的细颗粒来说,CPLDCPLD逻辑块规模大,逻辑块规模大,功能强,完成复杂逻辑只需较少的功能块和内部功能强,完成复杂逻辑只需较少的功能块和内部连线,因而能获得较好的性能。连线,因而能获得较好的性能。优点:优点:有利于控制密集型系统有利于控制密集型系统Pin to PinPin to Pin延时固定延时固定Pin Pin 到宏单元延时固定到宏单元延时固定设计中心CPLDCPLD特点适合处理并行控制逻辑特点适合处理并行控制逻辑CPLDCPLD适合高速适合高速DSPDSPCPLDCPLD缺点:功耗大缺点:功耗大CPLD特点特点设计中心CPLD逻辑阵列模块连线资源I/O单元设计中心宏单元内部结构乘积项逻辑阵列乘积项选择矩阵可编程触发器设计中心乘积项结构乘积项结构PLDPLD逻辑实现原理逻辑实现原理 以一个简单的电路为例以一个简单的电路为例,具体说明具体说明PLDPLD是如何利用是如何利用以上结构实现逻辑的假设组合逻辑的输出以上结构实现逻辑的假设组合逻辑的输出(AND3(AND3的的输出输出)为为f f,则,则f=(A+B)*C*(!D)=A*C*!D+B*C*!Df=(A+B)*C*(!D)=A*C*!D+B*C*!D设计中心PLDPLD将以下面的方式来实现组合逻辑将以下面的方式来实现组合逻辑f f乘积项结构乘积项结构PLDPLD逻辑实现原理逻辑实现原理 设计中心A,B,C,DA,B,C,D由由PLDPLD芯片的管脚输入后进入芯片的管脚输入后进入可编程连线阵列(可编程连线阵列(PIA)PIA),在内部会产在内部会产生生A,AA,A反反,B,B,B,B反反,C,C,C,C反反,D,D,D,D反反8 8个输出。个输出。图中每一个叉表示相连(可编程熔丝图中每一个叉表示相连(可编程熔丝导通),所以得到:导通),所以得到:f=f1+f2=f=f1+f2=(A*C*!D)+(B*C*!D)(A*C*!D)+(B*C*!D)。乘积项结构乘积项结构PLDPLD逻辑实现原理逻辑实现原理 设计中心电路中电路中D D触发器的实现比较简单,直接触发器的实现比较简单,直接利用宏单元中的可编程利用宏单元中的可编程D D触发器来实现。触发器来实现。时钟信号时钟信号CLKCLK由由I/OI/O脚输入后进入芯片脚输入后进入芯片内部的全局时钟专用通道,直接连接内部的全局时钟专用通道,直接连接到可编程触发器的时钟端。可编程触到可编程触发器的时钟端。可编程触发器的输出与发器的输出与I/OI/O脚相连,把结果输出脚相连,把结果输出到芯片管脚。到芯片管脚。乘积项结构乘积项结构PLDPLD逻辑实现原理逻辑实现原理 设计中心一个很简单的电路一个很简单的电路,只需要一个宏单只需要一个宏单元就可以完成。但对于一个复杂的电元就可以完成。但对于一个复杂的电路,一个宏单元是不能实现的,这时路,一个宏单元是不能实现的,这时就需要通过并联扩展项和共享扩展项就需要通过并联扩展项和共享扩展项将多个宏单元相连,宏单元的输出也将多个宏单元相连,宏单元的输出也可以连接到可编程连线阵列,再做为可以连接到可编程连线阵列,再做为另一个宏单元的输入。这样另一个宏单元的输入。这样PLDPLD就可以就可以实现更复杂逻辑。实现更复杂逻辑。乘积项结构乘积项结构PLDPLD逻辑实现原理逻辑实现原理 设计中心基于乘积项的基于乘积项的PLDPLD基本都是由基本都是由EEPROMEEPROM和和FlashFlash工艺制造的,一上电就可以工作,工艺制造的,一上电就可以工作,无需其他芯片配合。无需其他芯片配合。乘积项结构乘积项结构PLDPLD逻辑实现原理逻辑实现原理 设计中心可可编程的编程的I/OI/O单元单元能能兼容兼容TTLTTL和和CMOSCMOS多种接口和电压标准多种接口和电压标准可配置为输入、输出、双向、集电极开路和三态可配置为输入、输出、双向、集电极开路和三态等形式等形式能提供适当的驱动电流能提供适当的驱动电流降低功耗,防止过冲和减少电源噪声降低功耗,防止过冲和减少电源噪声支持多种接口电压(降低功耗)支持多种接口电压(降低功耗)1.21.20.5um,5V0.5um,5V0.35um,3.3V0.35um,3.3V0.25um,internal 2.5V,I/O3.3V0.25um,internal 2.5V,I/O3.3V0.18um,internal 1.8V,I/O2.5V and 3.3V0.18um,internal 1.8V,I/O2.5V and 3.3V设计中心可编程连线阵列可编程连线阵列在在各个逻辑宏单元之间以及逻辑宏单元与各个逻辑宏单元之间以及逻辑宏单元与I/OI/O单元之间提供信号连接的网络单元之间提供信号连接的网络CPLDCPLD中一般采用固定长度的线段来进行连中一般采用固定长度的线段来进行连接,因此信号传输的延时是固定的,使得接,因此信号传输的延时是固定的,使得时间性能容易预测。时间性能容易预测。设计中心FPGAFPGAFPGA是系统设计者自己编程的芯片。是系统设计者自己编程的芯片。ICIC芯片制造厂生产一些还没有连接的芯片制造厂生产一些还没有连接的FPGAFPGA,用户,用户可进行设计输入和仿真。可进行设计输入和仿真。利用专用软件产生一串二进制位,描述需要完成利用专用软件产生一串二进制位,描述需要完成设计的外加连接设计的外加连接 配置文件。配置文件。将计算机连接到将计算机连接到FPGAFPGA上对其进行编程,按照配置上对其进行编程,按照配置文件完成必要的连接。文件完成必要的连接。FPGAFPGA没有任何定制掩模层,可作为标准产品大量没有任何定制掩模层,可作为标准产品大量生产。生产。设计中心FPGAFPGAFPGA的结构可分为三部份:的结构可分为三部份:可编程的逻辑功能块可编程的逻辑功能块CLB(Configurable CLB(Configurable Logic Blocks)Logic Blocks):是实现用户功能的基本单元,是实现用户功能的基本单元,它们通常排列成一个阵列,散布于整个芯片;它们通常排列成一个阵列,散布于整个芯片;可编程的输入输出块可编程的输入输出块IOBIOB(Input/Output Input/Output Blocks)Blocks):完成芯片上逻辑与外部封装脚的接完成芯片上逻辑与外部封装脚的接口,常围绕着阵列于芯片四周;口,常围绕着阵列于芯片四周;可编程的互连资源可编程的互连资源ICRICR:它们将各个可编程逻它们将各个可编程逻辑块或辑块或I/OI/O块连接起来,构成特定功能的电路。块连接起来,构成特定功能的电路。设计中心FPGAFPGA结构原理图结构原理图IOBCLB包含多个逻辑单元PIC设计中心 CLBCLBCLBCLBCLBCLBConfigurableLogicBlockIOBIOBIOBIOBIOBInputOutputBlockProgrammableInterconnect设计中心设计中心可编程互联资源(可编程互联资源(PICPIC)设计中心FPGAFPGA结构特点结构特点FPGAFPGA结构结构-查找表型查找表型查找表(查找表(Look-Up-Table)Look-Up-Table)简称为简称为LUTLUT,LUTLUT本质本质上就是一个上就是一个RAMRAM。目前目前FPGAFPGA中多使用中多使用4 4输入的输入的LUTLUT,所以每一个,所以每一个LUTLUT可以看成一个有可以看成一个有4 4位地址位地址线的线的16x116x1的的RAMRAM。当用户通过原理图或当用户通过原理图或HDLHDL语语言描述了一个逻辑电路以后,言描述了一个逻辑电路以后,PLD/FPGAPLD/FPGA开发软开发软件会自动计算逻辑电路的所有可能的结果,并件会自动计算逻辑电路的所有可能的结果,并把结果事先写入把结果事先写入RAM,RAM,这样,每输入一个信号进这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。出地址对应的内容,然后输出即可。设计中心FPGAFPGA优点优点FPGAFPGA结构灵活,功能完善,能为用户提结构灵活,功能完善,能为用户提供最大的设计灵活性;供最大的设计灵活性;高集成度,多寄存器,多高集成度,多寄存器,多I/OI/O脚。脚。用户现场可编程,可擦除复用。用户现场可编程,可擦除复用。FPGAFPGA为为ASICASIC提供原型设计提供原型设计。设计中心LELE内部结构内部结构设计中心查找表的基本原理查找表的基本原理实际逻辑电路实际逻辑电路LUT的实现方式的实现方式a,b,c,d输入逻辑输出地址RAM中存储的内容00000000000001000010.0.01111111111N N个输入的逻辑函数需要个输入的逻辑函数需要2 2的的N N次方的容量的次方的容量的SRAMSRAM来实来实现,一般多个输入的查找表采用多个逻辑块现,一般多个输入的查找表采用多个逻辑块级连级连的的方式方式设计中心查找表结构的查找表结构的FPGAFPGA逻辑实现原理逻辑实现原理A,B,C,DA,B,C,D由由FPGAFPGA芯片的管脚输入后进入可编程芯片的管脚输入后进入可编程连线,然后作为地址线连到到连线,然后作为地址线连到到LUTLUT,LUTLUT中已经中已经事先写入了所有可能的逻辑结果,通过地址查事先写入了所有可能的逻辑结果,通过地址查找到相应的数据然后输出。找到相应的数据然后输出。设计中心该电路中该电路中D D触发器是直接利用触发器是直接利用LUTLUT后面后面D D触发器来实现。时钟信号触发器来实现。时钟信号CLKCLK由由I/OI/O脚脚输入后进入芯片内部的时钟专用通道,输入后进入芯片内部的时钟专用通道,直接连接到触发器的时钟端。触发器直接连接到触发器的时钟端。触发器的输出与的输出与I/OI/O脚相连,把结果输出到芯脚相连,把结果输出到芯片管脚。片管脚。查找表结构的查找表结构的FPGAFPGA逻辑实现原理逻辑实现原理设计中心对于一个很简单的电路,只需要一个对于一个很简单的电路,只需要一个LUTLUT加上一个触发器就可以完成。对于加上一个触发器就可以完成。对于一个一个LUTLUT无法完成的的电路,就需要通无法完成的的电路,就需要通过进位逻辑将多个单元相连,这样过进位逻辑将多个单元相连,这样FPGAFPGA就可以实现复杂的逻辑。就可以实现复杂的逻辑。查找表结构的查找表结构的FPGAFPGA逻辑实现原理逻辑实现原理设计中心由于由于LUTLUT主要适合主要适合SRAMSRAM工艺生产,所以目前大部分工艺生产,所以目前大部分FPGAFPGA都是基于都是基于SRAMSRAM工艺的,而工艺的,而SRAMSRAM工艺的芯片在工艺的芯片在掉电后信息就会丢失,一定需要外加一片专用配掉电后信息就会丢失,一定需要外加一片专用配置芯片,在上电的时候,由这个专用配置芯片把置芯片,在上电的时候,由这个专用配置芯片把数据加载到数据加载到FPGAFPGA中,然后中,然后FPGAFPGA就可以正常工作,就可以正常工作,由于配置时间很短,不会影响系统正常工作。由于配置时间很短,不会影响系统正常工作。也也有少数有少数FPGAFPGA采用反熔丝或采用反熔丝或FlashFlash工艺,对这种工艺,对这种FPGAFPGA,就不需要外加专用的配置芯片。就不需要外加专用的配置芯片。查找表结构的查找表结构的FPGAFPGA逻辑实现原理逻辑实现原理设计中心FPGAFPGA中的嵌入式阵列(中的嵌入式阵列(EABEAB)可可灵活配置的灵活配置的RAMRAM块块用途用途实现比较复杂的函数的查找表,如正弦、余弦实现比较复杂的函数的查找表,如正弦、余弦等。等。可实现多种存储器功能,如可实现多种存储器功能,如RAMRAM,ROMROM,双口双口RAMRAM,FIFOFIFO,StackStack等等灵活配置方法:灵活配置方法:25682568,也可配成,也可配成51245124设计中心内部晶体震荡器内部晶体震荡器高速反向放大高速反向放大器用于和外部器用于和外部晶体相接,形晶体相接,形成内部晶体振成内部晶体振荡器。荡器。提供将振荡波提供将振荡波形二分频成对形二分频成对称方波的功能。称方波的功能。设计中心CPLDCPLD与与FPGAFPGA的区别的区别CPLDCPLDFPGAFPGA内部结构内部结构ProductProducttermtermLookLookup Tableup Table程序存储程序存储内部内部EEPROMEEPROMSRAMSRAM,外挂外挂EEPROMEEPROM资源类型资源类型组合电路资源丰富组合电路资源丰富 触发器资源丰富触发器资源丰富集成度集成度低低高高使用场合使用场合完成控制逻辑完成控制逻辑能能完成比较复杂的算法完成比较复杂的算法速度速度慢慢快快其他资源其他资源EABEAB,锁相环锁相环保密性保密性可可加密加密一般不能保密一般不能保密设计中心FPGAFPGA与与CPLDCPLD的区别的区别FPGAFPGA采采用用SRAMSRAM进进行行功功能能配配置置,可可重重复复编编程程,但但系系统统掉掉电电后后,SRAMSRAM中中的的数数据据丢丢失失。因因此此,需需在在FPGAFPGA外外加加EPROMEPROM,将将配配置置数数据据写写入入其其中中,系系统统每每次次上上电电自自动动将将数数据据引引入入SRAMSRAM中中。CPLDCPLD器器件件一一般般采采用用EEPROMEEPROM存存储储技技术术,可可重重复复编编程程,并并且且系系统统掉掉电电后后,EEPROMEEPROM中中的的数数据据不不会会丢丢失失,适适于于数数据据的保密。的保密。设计中心FPGAFPGA与与CPLDCPLD的区别的区别FPGAFPGA器件含有丰富的触发器资源,易于实器件含有丰富的触发器资源,易于实现时序逻辑,如果要求实现较复杂的组合现时序逻辑,如果要求实现较复杂的组合电路则需要几个电路则需要几个CLBCLB结合起来实现。结合起来实现。CPLDCPLD的的与或阵列结构,使其适于实现大规模的组与或阵列结构,使其适于实现大规模的组合功能,但触发器资源相对较少。合功能,但触发器资源相对较少。设计中心FPGAFPGA为细粒度结构,为细粒度结构,CPLDCPLD为粗粒度结构为粗粒度结构。FPGAFPGA内部有丰富连线资源,内部有丰富连线资源,CLBCLB分块较小,芯片的利分块较小,芯片的利用率较高。用率较高。CPLDCPLD的宏单元的与或阵列较大,通的宏单元的与或阵列较大,通常不能完全被应用,且宏单元之间主要通过高常不能完全被应用,且宏单元之间主要通过高速数据通道连接,其容量有限,限制了器件的速数据通道连接,其容量有限,限制了器件的灵活布线,因此灵活布线,因此CPLDCPLD利用率较利用率较FPGAFPGA器件低。器件低。FPGAFPGA与与CPLDCPLD的区别的区别设计中心FPGAFPGA为非连续式布线,为非连续式布线,CPLDCPLD为连续式布线。为连续式布线。FPGAFPGA器件在每次编程时实现的逻辑功能一样,但器件在每次编程时实现的逻辑功能一样,但走的走的路线不同路线不同,因此,因此延时不易控制延时不易控制,要求开发软件允,要求开发软件允许工程师对关键的路线给予限制。许工程师对关键的路线给予限制。CPLDCPLD每次布线每次布线路径一样,路径一样,CPLDCPLD的连续式互连结构利用具有同样的连续式互连结构利用具有同样长度的一些金属线实现逻辑单元之间的互连。长度的一些金属线实现逻辑单元之间的互连。连连续式互连结构续式互连结构消除了分段式互连结构在定时上的消除了分段式互连结构在定时上的差异,并在逻辑单元之间提供快速且具有固定延差异,并在逻辑单元之间提供快速且具有固定延时的通路。时的通路。CPLDCPLD的延时较小。的延时较小。FPGAFPGA与与CPLDCPLD的区别的区别设计中心选择选择PLDPLD还是还是FPGAFPGA?PLDPLD分解组合逻辑的功能很强,一个宏单元就可以分解组合逻辑的功能很强,一个宏单元就可以分解十几个甚至分解十几个甚至20203030多个组合逻辑输入。而多个组合逻辑输入。而FPGAFPGA的一个的一个LUTLUT只能处理只能处理4 4输入的组合逻辑,因此,输入的组合逻辑,因此,PLDPLD适合用于设计译码等复杂组合逻辑。适合用于设计译码等复杂组合逻辑。FPGAFPGA的制造工艺确定了的制造工艺确定了FPGAFPGA芯片中包含的芯片中包含的LUTLUT和触和触发器的数量非常多,往往都是几千上万,发器的数量非常多,往往都是几千上万,PLDPLD一般一般只能做到只能做到512512个逻辑单元,而且如果用芯片价格除个逻辑单元,而且如果用芯片价格除以逻辑单元数量,以逻辑单元数量,FPGAFPGA的平均逻辑单元成本大大的平均逻辑单元成本大大低于低于PLDPLD。设计中心选择选择PLDPLD还是还是FPGAFPGA?所以如果设计中使用到大量触发器,例如所以如果设计中使用到大量触发器,例如设计一个复杂的时序逻辑或数据通路,那设计一个复杂的时序逻辑或数据通路,那么使用么使用FPGAFPGA就是一个很好选择。就是一个很好选择。同时同时PLDPLD拥有上电即可工作的特性,而大部分拥有上电即可工作的特性,而大部分FPGAFPGA需要一个加载过程,所以,如果系统要可需要一个加载过程,所以,如果系统要可编程逻辑器件上电就要工作,那么就应该编程逻辑器件上电就要工作,那么就应该选择选择PLDPLD。设计中心PLDPLD器件的命名与选型器件的命名与选型EPM7EPM7 128128 S S L L C C 84841010EPM7EPM7:产品系列为产品系列为EPM7000EPM7000系列系列128128:有:有128128个逻辑宏单元个逻辑宏单元S S:电压为电压为5V5V,AEAE为为3.3V3.3V,B B为为2.5V2.5VL L:封装为封装为PLCCPLCC,Q Q代表代表PQFPPQFP等等C C:商业级(商业级(CommercialCommercial)0 07070度,度,I I:工业级(工业级(IndustryIndustry),),40408585度度M M:军品级(军品级(MilitaryMilitary),),5555125125度度8484:管脚数目管脚数目1010:速度级别:速度级别设计中心管脚的定义管脚的定义特殊功能的管脚特殊功能的管脚电源脚电源脚VCCVCC和和GNDGND,VCCVCC一般分为一般分为VCCINTVCCINT和和VCCIOVCCIO两种两种JTAGJTAG管脚:实现在线编程和边界扫描管脚:实现在线编程和边界扫描配置管脚(配置管脚(FPGAFPGA):):用于由用于由EEPROMEEPROM配置芯片配置芯片信号管脚信号管脚专用输入管脚:全局时钟、复位、置位专用输入管脚:全局时钟、复位、置位可随意配置其功能为:输入、输出、双向、三可随意配置其功能为:输入、输出、双向、三态态设计中心PLDPLD的设计步骤的设计步骤设计中心设计输入设计输入原理图输入原理图输入使用元件符号和连线等描述使用元件符号和连线等描述比较直观,但设计大规模的数字系统时则显得繁琐比较直观,但设计大规模的数字系统时则显得繁琐HDLHDL语言输入语言输入逻辑描述功能强逻辑描述功能强成为国际标准,便于移植成为国际标准,便于移植原理图与原理图与HDLHDL的关系与高级语言与汇编语言类似的关系与高级语言与汇编语言类似设计中心设计处理设计处理综合和优化综合和优化优化:将逻辑化简,去除冗余项,减少设计所耗用的优化:将逻辑化简,去除冗余项,减少设计所耗用的资源资源综合:将模块化层次化设计的多个文件合并为一个网综合:将模块化层次化设计的多个文件合并为一个网表,使设计层次平面化表,使设计层次平面化映射映射把设计分为多个适合特定器件内部逻辑资源实现的逻把设计分为多个适合特定器件内部逻辑资源实现的逻辑小块的形式辑小块的形式布局与布线布局与布线将已分割的逻辑小块放到器件内部逻辑资源的具体位将已分割的逻辑小块放到器件内部逻辑资源的具体位置并利用布线资源完成各功能块之间的连接置并利用布线资源完成各功能块之间的连接生成编程文件生成编程文件生成可供器件编程使用的数据文件生成可供器件编程使用的数据文件设计中心模拟仿真模拟仿真功能仿真功能仿真不考虑信号传输和器件的延时不考虑信号传输和器件的延时时序仿真时序仿真不同器件的内部延时不一样,不同的布局、布不同器件的内部延时不一样,不同的布局、布线延时也会有比较大的不同线延时也会有比较大的不同在线验证在线验证利用实现手段测试器件最终功能和性能指标利用实现手段测试器件最终功能和性能指标设计中心在在系统编程技术系统编程技术ISPISPIn System Program对对PLDPLD的逻辑功能可随时进行修改。由的逻辑功能可随时进行修改。由LatticeLattice公司率先发明公司率先发明优点:优点:方便硬件的调试方便硬件的调试方便硬件版本的升级,类似于软件升级方便硬件版本的升级,类似于软件升级设计中心在在系统编程技术系统编程技术ISPISPIn System Program设计中心边界扫描测试技术边界扫描测试技术BSTBoundary Scan Test据据IEEE1149.1IEEE1149.1标准标准JTAGJTAG,用于解决大规模用于解决大规模集成电路的测试问题。集成电路的测试问题。现在新开发的可编程器件都支持边界扫描现在新开发的可编程器件都支持边界扫描技术,并将其作为技术,并将其作为ISPISP接口。接口。在在DSPDSP开发和嵌入式处理器的开发中应用得开发和嵌入式处理器的开发中应用得非常广泛。非常广泛。设计中心CPLDCPLD常用型号常用型号Altera公司 MAX5000,MAX7000,MAX7000E,MAX7000S,系列 等Xilinx公司 XC9500系列Lattice公司 ispLS1000,ispLS2000,ispLS3000,ispLS6000系列等设计中心FPGAFPGA常用型号常用型号Xilinx:XC2000,XC4000,Spartan,Spartan2,Spartan3,Virtex系列等Altera:FLEX8000,FLEX10K,ACEX,MERCURY,CYCLONE,STRATIX系列等Lattice:EC,ECP系列
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!