【教学课件】第3章Altera可编程逻辑器件.ppt

上传人:小飞机 文档编号:5658492 上传时间:2023-08-06 格式:PPT 页数:116 大小:1.69MB
返回 下载 相关 举报
【教学课件】第3章Altera可编程逻辑器件.ppt_第1页
第1页 / 共116页
【教学课件】第3章Altera可编程逻辑器件.ppt_第2页
第2页 / 共116页
【教学课件】第3章Altera可编程逻辑器件.ppt_第3页
第3页 / 共116页
【教学课件】第3章Altera可编程逻辑器件.ppt_第4页
第4页 / 共116页
【教学课件】第3章Altera可编程逻辑器件.ppt_第5页
第5页 / 共116页
点击查看更多>>
资源描述

《【教学课件】第3章Altera可编程逻辑器件.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第3章Altera可编程逻辑器件.ppt(116页珍藏版)》请在三一办公上搜索。

1、第3章 Altera可编程逻辑器件,3.1 综述 3.2 MAX7000系列器件 3.3 FLEX10K系列器件 3.4 APEX20K系列器件,3.1 综 述,3.1.1 Altera 器件性能特点 Altera公司成立10余年来,一直致力于高密度可编程逻辑器件的研发与生产,成为业界的佼佼者。Altera的CPLD器件具有良好的性能、极高的密度和非常大的灵活性,它通过高集成度、多I/O容量及最快的速度为用户的各种需求提供有效的解决方案,极大地满足了对“在单可编程芯片系统”(Systemona Programmable Chip)日益增长的需求。图3.1表示了Altera器件与CMOS器件的关

2、系。,图3.1 Altera器件与CMOS器件的关系,Altera可编程器件除了具有PLD的一般特点外,还具有改进的结构、先进的处理技术、现代化的开发工具以及多种Mega功能选用等优点。1.高性能 Altera器件采用先进的CMOS技术,具有非常低的功耗和相当高的速度;采用连续式互连结构,在整个芯片内提供快速、连续的信号延时;诸如对芯片内部电路的专业化改进也增强了系统性能。,2.高密度逻辑集成 为缩小印制板的尺寸和成本,设计人员总是寻求尽可能高的集成度,试图通过把更多的逻辑集成到更少的器件中来降低成本。此外,对现有的设计也经常进行二次开发。高逻辑集成度的CPLD为上述要求提供了很好的解决方案。

3、Altera器件密度从300门到100万门,能够集成现有的各种逻辑器件,包括小规模及大规模标准逻辑器件、PLD、FPGA或ASIC器件。,3.较短的开发周期 Altera的快速、直观、易于使用的Quartus和MAX+PLUS软件能够极大地缩短开发周期。使用Quartus或MAX+PLUS软件设计项目、处理、检验以及对器件编程一共只需几小时。图3.2展示了在MAX+PLUS环境下的一个典型的PLD开发周期图。图3.2中标出了设计1万门逻辑所用的典型时间。,图3.2 用Altera器件设计1万门逻辑典型开发周期图,4.高性能价格比 Altera公司不断改进产品的开发与制造工艺,10多年积累的经验

4、使其工艺技术及制造工艺非常先进,因此能够提供性能价格比合理的可编程逻辑器件。Altera的PLD的成本与门阵列相当。,5.兆(Mega)功能模块 Altera的CPLD高达100万门的集成度,使得在单个可编程器件中实现一个完整的数字系统成为可能。为了推进这种高集成度器件的应用,进一步缩短设计周期,Altera提供了兆功能模块并支持AMPP(Altera Megafunction Partners Program)功能。兆功能模块具有高度的灵活性及固定功能器件所不能达到的性能,如高速有限冲击响应(FIR)滤波器。兆功能可以实现总线协议(PCI总线)、DSP、图像处理、高速网络(包括异步传输方式(

5、ATM)、微处理器及微型外设等。,作为复杂的系统级功能,Altera的兆功能模块是由预先验证过的硬件描述语言(HDL)设计的。兆功能模块应用范围包括从标准模块(如通用异步收/发器控制器UART)到利用PLD的特点改进的实例设计。6.在系统可编程(ISP)Altera器件的在系统可编程性(ISP)提高了设计灵活性,简化了样品制做过程及流水线生产过程,并且可以对产品进行快速而有效的现场升级。Altera的ISP使用IEEE1149.1标准的JTAG测试端口,可以在一个独立的生产过程中对器件进行编程,并可以对印刷电路板(PCB)进行功能测试。,3.1.2 Altera器件系列 Altera公司提供了

6、三大类10个系列的CPLD产品:多阵列MAX9000、MAX7000、MAX5000、MAX3000和Classic系列;柔性(可更改)逻辑单元阵列FLEX10K、FLEX8000及FLEX6000系列;先进的可编程单元阵列APEX20K、ACEX1K系列。FLEX器件采用查找表(LUT)结构来实现逻辑功能,MAX和Classic器件采用乘积项(Produc-Term/PT)结构来实现逻辑功能,而APEX器件采用集LUT、PT和存储于一体的多核结构来实现逻辑功能。每种器件系列针对具体的应用都有各自的特点。表3.1为Altera器件性能对照表。,表3.1 Altera器件性能对照表,所有的Alt

7、era器件系列均采用CMOS工艺,其中一些系列经过不断地改进,已采用了更为先进的工艺技术。图3.3归纳了Altera器件的结构,这些结构保证了器件在各种集成度下都能够保持高性能。,图3.3 Altera CPLD结构演变示意图,下面简单介绍Altera全系列CPLD的性能特点。1.APEX20K系列 APEX20K系列器件具有集LUT、PT和存储器于一体的多核结构,这种特性能将各种子系统如处理器、存储器及接口功能集成在单个芯片上。APEX20K系列七种器件的典型门数从1万门到100万门。Altera的第四代可编程逻辑器件开发工具软件Quartus支持APEX20K系列器件。,2.ACEX1K系

8、列 ACEX1K系列是Altera最新推出的基于查找表结构的CPLD,具有高性能、低价格特性。MAX+PLUSV9.6以上版本支持ACEX1K系列器件的开发。3.FLEX10K系列 FLEX10K器件系列是第一款多达25万门的嵌入式PLD,该系列包括FLEX10A、FLEX10KB和FLEX10KE。FLEX10K的高密度和易于在设计中实现复杂宏函数与存储器,因此可以适应系统级设计的需求。,每个FLEX10K器件都包含一个嵌入式阵列,它为设计者提供了有效的嵌入式门阵列和灵活的可编程逻辑。嵌入式阵列是由一系列嵌入式阵列块(EAB)组成的,它能够用来实现各种存储器和复杂逻辑功能。另外,FLEX10

9、K器件能够通过外部配置EPROM或智能控制器进行在电路(在系统)配置。FLEX10K器件也提供多电压(Multivolt)I/O接口,它允许器件桥接在以不同电压工作的系统中。,FLEX10K还具有多个低失真时钟、时钟锁定和时钟自举锁相环(PLL)电路以及内部三态总线等特性。所有这些特点使得FLEX10K器件成为替代传统专用门阵列的理想选择。2.5V、0.25m的FLEX10KE器件支持实现有高效双端口RAM,进一步增强了FLEX10K系列器件的性能。用FLEX10KE设计的3.3VPCI比用FLEX10KA所设计的平均要快20%30%。,4.FLEX8000系列 FLEX8000系列适合于需要

10、大量寄存器和I/O引脚的应用系统。该系列器件的集成度为250016000可用门、2821500个寄存器以及78208个用户I/O引脚。FLEX8000能够通过外部配置EPROM或智能控制器进行在线配置。FLEX8000还提供了多电压I/O接口,允许器件桥接在以不同电压工作的系统中。这些特点和其高性能、速度可预测的互连方式,使得FLEX8000像基于乘积项结构的器件一样容易使用。低功耗维持状态及在线重新配置等特点使得FLEX8000非常适用于PC机插卡、由电池供电的仪器以及多功能的电信卡。,5.FLEX6000系列 FLEX6000系列为大容量设计提供了一种低成本可编程的交织式门阵列。该器件采用

11、OptiFLEX结构,它由许多含有一个4输入查找表、一个寄存器以及作为进位链和级联链功能的专用通道的逻辑单元(LE)组成。每10个LE组成一个逻辑阵列块(LAB)。FLEX6000器件也含有可重构的SRAM单元,设计者在设计初期直到设计测试过程中可以灵活、迅速地更改其设计。FLEX6000系列提供1600025000个可用门、13201960个LE及117218个用户I/O引脚。此外,FLEX6000能够实现在线重配置并提供多电压I/O接口操作。,6.MAX9000系列 MAX9000系列把MAX7000的高效宏单元结构与FLEX的高性能、延迟可预测的快速通道(FastTrack)互连结构结合

12、在一体,适用于系统级功能集成。MAX9000采用EEPROM技术。MAX9000器件的集成度为600012000可用门、320560个宏单元及多达216个用户I/O引脚。MAX9000器件适用于用PLD的高性能和ISP的灵活性进行门阵列设计的场合。,7.MAX7000系列 MAX7000系列是Altera公司速度最快的可编程器件,其集成度(包括MAX7000E、MAX7000S和MAX7000A器件)为60010000可用门、32256个宏单元及36212个用户I/O引脚。这些基于EEPROM的器件组合传输延迟快至4.5ns,16位计数器的频率可达192.3MHz。此外,MAX7000器件输入

13、寄存器的建立时间非常短,能提供多个系统时钟且有可编程的速度/功耗控制。MAX7000E是MAX7000系列的增强型,MAX7000S器件也具有MAX7000E器件的增强特性,且支持JTAG的边界扫描测试(BST)回路和ISP。,MAX7000A器件通过嵌入IEEE标准1149.1(JTAG)接口支持3.3VISP,并具有高级引脚锁定功能。这种器件具有节能模式,用户可以将信号通路或整个器件定义为低功耗模式。因为大多数逻辑应用中只要求小部分逻辑门工作在最高频率上,所以使用这一特性,可使器件整体能耗减少50%以上。MAX7000还具有可编程压摆率控制、六个引脚或逻辑驱动输出使能信号、快速建立时间的输

14、入寄存器,多电压I/O接口能力和扩展乘积项分布可配置等结构特性。,8.MAX5000系列 MAX5000系列是Altera的第一代MAX器件,广泛应用于需要高级组合逻辑的低成本场合。这类器件的集成度为6003750可用门、28100个引脚。基于EPROM的MAX5000器件的编程信息不易丢失,可用紫外光进行擦除。由于该系列器件已很成熟,加之Altera公司对其不断改进和采用更先进的工艺,使得MAX5000器件每个宏单元的价格接近于大批量生产的ASIC和门阵列。,9.MAX3000A系列 MAX3000A系列是Altera的廉价、高集成度的可编程逻辑系列,集成度范围为6005000可用门、322

15、56个宏单元、34158个可用I/O引脚。这些基于EEPROM的器件组合传输延迟快至4.5ns,16位计数器频率达192.3MHz。MAX3000A器件具有多个系统时钟,还具有可编程的速度/功耗控制功能。MAX3000A器件提供JTAGBST回路和ISP支持,工业标准四引脚JTIG接口实现在线编程。这些器件也支持热拔插和多电压接口,其I/O引脚与5.0V,3.3V和2.5V逻辑电平相容。,10.Classic系列 Classic系列是Altera公司最早的产品系列,其集成度可达900可用门,68个引脚。工业标准的Classic系列由一个具有公共互连逻辑的阵列构成,适合于集成度低、价格便宜的场合

16、使用。该系列具有独特的“0”功耗(ZeroPower)模式,维持状态的电流只有微安量级,这对于低功耗的应用非常理想。该系列基于EPROM工艺,编程信息不易丢失。,3.3 FLEX10K系列器件,3.3.1 FLEX10K器件性能特点 1.概述 FLEX10K系列器件是第一种嵌入式PLD产品。FLEX(可更改逻辑单元阵列)采用可重构的CMOSSRAM单元,其结构集成了实现通用多功能门阵列所需的全部特性。FLEX10K系列器件容量可达25万门,能够高密度、高速度、高性能地将整个数字系统,包括32位多总线系统集成于单个器件中。,FLEX10K的结构类似于嵌入式门阵列,是门阵列市场中成长最快的器件。像

17、标准门阵列一样,嵌入式门阵列采用一般的门海(SeaofGate)结构实现普通逻辑,因此,在实现大的特殊逻辑时会有潜在死区。与标准门阵列相比,嵌入式门阵列通过在硅片中嵌入逻辑块的方法来减少死区,提高速度。然而,嵌入式逻辑块通常不能改制,这就限制了设计者的选择。相反,FLEX10K器件是可编程的。在调试时,它允许设计者全面控制嵌入式宏逻辑和一般逻辑,可以方便地反复修改设计。,每个FLEX10K器件包含一个嵌入式阵列和一个逻辑阵列。嵌入式阵列用来实现各种存储器及复杂的逻辑功能,如数字信号处理、微控制器、数据传输等。逻辑阵列用来实现普通逻辑功能,如计数器、加法器、多路选择器等。嵌入式阵列和逻辑阵列结合

18、而成的嵌入式门阵列的高性能和高密度特性,使得设计者可在单个器件中实现一个完整的系统。,FLEX10K器件的配置通常是在系统上电时,通过存储于一个Altera串行PROM中的配置数据,或者由系统控制器提供的配置数据来完成。配置数据也能从系统RAM或Altera的Bit Blaster/Byte Blaster下载电缆获得。对于已配置的FLEX10K器件,可以通过重新复位器件,加载新数据的方法实现在电路重构。FLEX10K器件由Altera的Quartus和MAX+PLUS开发系统支持。,2.FLEX10K器件特性 嵌入式可编程逻辑器件,提供了集成系统于单个可编程逻辑器件中的性能。高密度:提供1万

19、25万个可用门,614440960位内部RAM。低功耗:多数器件在静态模式下电流小于0.5mA,在2.5V、3.3V或5.0V下工作。高速度:时钟锁定和时钟自举选项分别用于减少时钟延时/过冲和时钟倍频;器件内建立树形分布的低失真时钟;具有快速建立时间和时钟到输出延时的外部寄存器。,灵活的互连方式:快速、互连延时可预测的快速通道(Fast Track)连续式布线结构;实现快速加法、计数、比较等算术逻辑功能的专用进位链;实现高速、多输入(扇入)逻辑功能的专用级联链;实现内部三态总线的三态模拟;多达六个全局时钟信号和四个全局清除信号。支持多电压I/O接口,遵从PCI2.2总线标准。,强大的引脚功能:

20、每个引脚都有一个独立的三态输出使能控制及漏极开路配置选项及可编程输出压摆率控制;FLEX10KA、10KE、10KS器件支持热插拔。多种配置方式:内置JTAG边界扫描测试电路,可通过外部EPROM、智能控制器或JTAG接口实现在电路重构(ICR)。多种封装形式:引脚范围为84600,封装形式有TQFP、PQFP、BGA和PLC等。同一封装的FLEX10K系列器件的引脚相兼容。表3.3列出了FLEX10K系列典型器件的性能比照。,表3.3 FLEX10K系列典型器件性能对照表,3.3.2 FLEX10K器件结构 FLEX10K器件主要包括嵌入式阵列、逻辑阵列、Fast Track互连和I/O单元

21、等四部分。另外,FLEX10K器件还包括六个用于驱动寄存器控制端的专用输入引脚,以确保高速低失真(小于1.5ns)控制信号的有效分布。这些信号使用了专用的布线通道,这些专用通道提供了比Fast Track互连更短的延时和更小的失真。四个全局信号可由四个专用输入引脚驱动,也可以由器件内部逻辑驱动。这为时钟分配或产生用以清除器件内部多个寄存器的异步清除信号提供了理想的方法。,嵌入式阵列 嵌入式阵列由一系列嵌入式阵列块(EAB)构成。在要实现存储器功能时,每个EAB可提供2048个存储位,用来构造RAM、ROM、FIFO和双口RAM。在要实现乘法器、微控制器、状态机及复杂逻辑时,每个EAB可贡献10

22、0到600个门。EAB可单独使用,也可组合起来使用。,逻辑阵列 逻辑阵列由一系列逻辑阵列块(LAB)构成。每个LAB由八个逻辑单元(LE)和一些局部互连组成。每个LE包含一个4输入的查找表(LUT)、一个可编程触发器、进位链和级连链等。每个LAB相当于96个可用逻辑门,可以构成一个中规模的逻辑块,如8位计数器、地址译码器或状态机等。也可以将多个LAB组合起来构成一个更大规模的逻辑块。,Fast Track互连 FLEX10K器件内部信号的互连和器件引脚之间的信号互连是由纵横贯穿整个器件的快速通道(Fast Track)互连提供的。I/O单元 每个I/O引脚由位于行、列互连通道末端的I/O单元(

23、IOE)馈接。每个IOE含有一个双向缓冲器和一个可作为输入/输出/双向寄存器的触发器。当IOE作为专用时钟引脚时,这些寄存器提供特殊性能。当IOE作为输入时,这些寄存器提供1.6ns的建立时间和0ns的保持时间。,当IOE作为输出时,这些寄存器提供5.3ns的时钟到输出延时。IOE还具有许多其它特性,如JTAG编程支持、摆率控制、三态缓冲和漏极开路输出等。FLEX10K器件的结构如图3.12所示。一组LE构成一个LAB,多个LAB成行成列排列组成逻辑阵列。逻辑阵列每行也包含一个EAB。LAB和EAB通过快速通道Fast Track连接。IOE位于Fast Track行线和列线的两端。,图3.1

24、2 FLEX10K器件结构图,EAB是在输入输出口上带有寄存器的柔性(可变更)RAM块,它用于实现一般阵列兆(Mega)功能。因为其大而灵活,EAB也适用于实现像乘法器,矢量定标器,校验等逻辑。EAB还可用于数字滤波器和微控制器等逻辑中。EAB的逻辑功能通过配置期间用只读模式对EAB编程产生一个大型LUT来实现。使用查找表LUT实现组合逻辑要比一般算法快。EAB的快速时间通道使这一先进特性得到进一步加强,它允许设计者在没有像LE或FPGARAM块存在布线延时的同一级逻辑中实现复杂的逻辑功能。,例如,单个EAB可以实现一个带有8输入和8输出的44乘法器,参数化功能模块如LPM功能块能自动选用EA

25、B的优点。EAB比FPGA的优点在于:FPGA用小阵列分布式RAM块实现板级RAM功能,这些RAM块尺寸增大时其延时时间难以预测;此外,FPGARAM块易于存在布线问题,因为小RAM块必须连接到一起来形成一个大的RAM块,相比之下,EAB可以用来实现较大的专用RAM块,消除了相关的时序问题和布线问题。,EAB用作同步RAM,要比异步RAM更容易使用。因为使用异步RAM电路时,必须产生写使能(WE)信号,并确保数据和地址信号满足相对WE的建立和保持时间。相比之下,EAB的同步RAM产生自己的WE信号和与全局时钟匹配的自定序信号。这种自定序RAM电路,只要求满足全局时钟的建立和保持时间。EAB用作

26、RAM时,每个EAB能配置成2568、124、10242、20481等尺寸。更大的RAM可由多个EAB组合在一起组成。例如,两个2568的RAM块可组成一个25616的RAM,两个5124的RAM可以组合成一个5128的RAM,如图3.13所示。,图3.13 FLEX10K器件EAB组成RAM的方法,图3.14 FLEX10K器件嵌入式阵列块(EAB),如果需要,一个器件中的所有EAB可级联成一个单一RAM。EAB能级联形成多达2048字的RAM块而不影响时序。Altera的MAX+PLUS软件能自动组合EAB形成设计者指定的RAM。如图3.14所示,EAB提供了一个灵活的时钟信号驱动和控制配

27、置选项,EAB的输入和输出可以使用不同的时钟。寄存器能被独立地加在数据输入、EAB输出或地址以及WE输入中。写使能信号WE可以用全局信号或EAB局部互连信号驱动。EAB时钟信号可使用全局信号、专用时钟引脚及EAB局部互连信号驱动。因为LE驱动EAB局部互连,所以LE能控制EAB的WE信号或时钟信号。,EAB含有一个行互连馈入端,EAB的输出同时驱动行互连通道和列互连通道。每个EAB输出能驱动两个行通道和两个列通道,未用的行通道可由其它LE驱动。这一特性增加了EAB输出的可用布线资源。2.5V、0.25m的FLEX10KE器件进一步增强了FLEX10K系列的性能。用FLEX10KE设计的3.3V

28、PCI比用FLEX10KA设计的平均快20%30%。FLEX10KE器件还能实现高效双端口RAM。,2.逻辑阵列块(LAB)LAB由八个LE及其它们的进位/级联链、LAB控制信号以及LAB局部互连组成。LAB为FLEX10K器件提供的“粗颗粒”结构,容易实现高效布线,不但能提高器件利用率,还能提高器件性能。FLEX10K器件的LAB结构如图3.15所示。,图3.15 FLEX10K器件的LAB结构,每个LAB为八个LE提供四个反相可编程的控制信号。其中的两个可以用作时钟,另外两个用作清除/置位控制。LAB时钟可以由器件的专用时钟输入引脚、全局信号、I/O信号或由LAB局部互连信号直接驱动。LA

29、B的清除/置位信号也可由器件的专用时钟输入引脚、全局信号、I/O信号或由LAB局部互连信号直接驱动。全局控制信号通过器件时失真很小,通常用作全局时钟、清除或置位等异步控制信号。全局控制信号能够由器件内任一LAB中的一个或多个LE形成,并直接驱动目标LAB的局部互连。全局控制信号也可以由LE输出直接产生。,3.逻辑单元(LE)逻辑单元(LE)是FLEX10K结构中的最小单元,它以紧凑的尺寸提供高效的逻辑功能。每个LE含有一个4输入查找表(LUT)、一个带有同步使能的可编程触发器、一个进位链和一个级联链。其中,LUT是一个4输入变量的快速组合逻辑产生器。每个LE都能驱动局部互连和Fast Trac

30、k互连,如图3.16所示。,图3.16 FLEX10K器件逻辑单元(LE),LE中的可编程寄存器可以配置为D、T、JK、RS触发器。每个触发器的时钟(Clock)、清除(Clear)、预置(Preset)等控制信号可以由全局信号、I/O或任何内部逻辑驱动。对于组合逻辑,寄存器被旁路掉,而由LUT输出直接驱动LE输出。LE有两个驱动互连通道的输出信号。一个用于驱动局部互连,而另一个用于驱动行或列Fast Track互连。这两个输出信号能够单独控制。例如,可以用LUT(查找表)驱动一个输出而用寄存器驱动另一个输出,这种特性称为寄存器打包。因为寄存器和LUT可以用作互不相关的功能,所以这一特性能够提

31、高LE的利用率。,FLEX10K器件提供了两种类型的专用高速数据通道:进位链和级联链。它们连接相邻LE,但没有使用互连通道。进位链支持高速计数器和加法器。级联链可以在最小的延时情况下实现多输入逻辑。进位链和级联链连接到同行中所有LAB及LAB中的所有LE。大量使用进位链和级联链会降低布局布线的多样性,因此,使用进位链和级联链限于对速度有要求的关键部分的设计。,1)进位链(Carry)进位链提供LE之间非常快的(小于0.2ns)超前进位功能。进位信号通过超前进位链从低序号LE向高序号位进位,同时进位到LUT和进位链的下一级。这种结构特性使得FLEX10K器件能够实现高速计数器、加法器和任意宽度的

32、比较器功能。进位链逻辑可以由Quartus和MAX+PLUS编译器在设计处理时自动生成,或者由设计者在设计输入期间手工建立。LPM、Desing Ware等参数化逻辑功能块具有自动使用进位链的优点。,通过链接LAB来实现多于八个LE的进位链。为了提高适配率,长进位链在同行LAB中交替跨接。即,长度超过一个LAB的进位链,要么从偶序号LAB跨接到偶序号LAB,要么从奇序号LAB跨接到奇序号LAB。例如,同行中第一个LAB的最后一个LE进位到同行中第三个LAB的第一个LE上。进位链不能跨过位于行中部的EAB。例如,在EPF10K50器件中,进位链终止在第八个LAB上,而新的进位链起始于第九个LAB

33、。,图3.17展示了如何利用进位链实现加法器、比较器、计数器。其中LUT部分产生两位输入信号和进位信号的“和”,并将它接到LE输出。寄存器在实现简单加法器时被旁路掉,或在实现累加器时起作用。进位链逻辑产生一个输出信号,它直接连接到高一位的进位输入,最后一个进位输出接到一个LE上,它可以作为一个通用信号使用。,图3.17 FLEX10K器件进位链的使用,2)级联链(Cascade)利用级联链,FLEX10K结构可以实现扇入很多的逻辑功能。通过相邻的LUT并行计算逻辑功能的各个部分,再用级联链将这些中间值串接起来。级联链可使用“与”逻辑或“或”逻辑来连接相邻的LE的输出。每增加一个LE,逻辑的有效

34、输入宽度增加四个,而延时增加约0.7ns。级联链可由MAX+PLUS编译器在编译时自动生成,也可以由设计人员在设计输入时手工创建。多于8位的级联链可通过将多个LAB链接到一起来自动实现。,为了易于布线,比一个LAB长的级联链既可以在同行中相邻两个偶数LAB之间跨跃级联,也可以在同行中相邻两个奇数LAB之间跨跃级联。例如,一行中第一个LAB的最后一个LE级联到该行中第三个LAB的第一个LE。级联链不能越过行中心,因为每行的中心是EAB的位置。图3.18展示了级联链是如何把相邻的LE连接起来形成多扇入逻辑功能的。这个例子说明用n个LE实现4n个变量的逻辑功能。LE的延时约0.7ns,使用级联链对一

35、个16位地址进行译码,约需3.7ns延时。,图3.18 FLEX10K器件级联链的使用,3)LE工作模式 FLEX10K有四种工作模式,即正常、运算、加/减计数、可清除计数模式,如图3.19所示。每种工作模式使用的LE资源不同。每种模式下,LE都有七个有效输入信号,包括四个来自LAB局部互连的数据输入信号,一个来自可编程寄存器的馈送信号以及来自前级的进位输入和级联输入等。加到LE的另外三个输入信号为LE中的寄存器提供的时钟、置位和清除信号。,图3.19 FLEX10K器件逻辑单元(LE)的工作模式,图3.19 FLEX10K器件逻辑单元(LE)的工作模式,图3.19 FLEX10K器件逻辑单元

36、(LE)的工作模式,图3.19 FLEX10K器件逻辑单元(LE)的工作模式,Quartus和MAX+PLUS不仅能为参数化逻辑功能块如LPM,Design Waves等自动选择适当的工作模式,而且对于计数器、加法器和乘法器等一般逻辑功能,也会自动选择适合的工作模式。设计者也可为优化性能人为指定LE工作模式,以实现所要的特殊功能。,(1)正常模式 正常模式适用于一般逻辑应用和各种译码功能,它能够发挥级联链的优势。在这种模式下,来自LAB局部互连的四个数据输入和进位输入是4输入LUT的输入信号。Max+PLUS编译器自动地选择进位输入或DATA3信号作为LUT的一个输入信号。LUT输出可以与级联

37、输入信号相与后接到级联输出形成级联链。寄存器或LUT可以同时用来驱动局部互连和FastTrack互连。,LE中的LUT和寄存器可以独立使用。这一特性称为寄存器打包。为了支持寄存器打包,LE有两个输出,分别驱动局部互连和Fast Track互连。DATA4信号能够直接驱动寄存器,允许LUT计算一个独立于寄存器信号的逻辑功能;可以在LUT中计算一个3输入逻辑函数,而单独寄存第四个信号。换句话说,LE不但能产生一个4输入逻辑函数,而且其中一个输入可以用来驱动寄存器。打包后的LE中的寄存器仍然使用LE中的时钟使能、清除和置位信号。此时,可用寄存器驱动Fast Track互连而用LUT驱动局部互连,反之

38、亦然。,(2)运算模式 运算模式提供了两个3输入LUT,适用于实现加法器、累加器和比较器的功能。其中一个LUT计算3输入逻辑函数,另一个则产生进位输出。如图3.19中所示,第一个LUT使用进位信号和两个来自LAB局部互连的数据输入来生成一个组合或寄存器输出。例如,在加法器中,这个输出是a、b和进位等三个信号的和。第二个LUT用这三个信号来产生一个进位输出信号,从而形成一个进位链。运算模式也支持级联链。,(3)加/减计数模式 加/减计数模式提供计数器使能、时钟使能、同步加/减控制和数据加载选择。这些控制信号来自LAB局部互连的数据输入、进位输入和可编程寄存器输出反馈。两个3输入的LUT分别产生计

39、数器数据和快速进位。2选1多路选择器提供同步加载数据。也可以不使用LUT资源而使用寄存器的清除、置位控制信号,异步加载数据。,(4)可清除计数模式 可清除计数模式与加/减计数模式类似,它用同步清除,即用清除信号取代加/减模式中的级联信号。两个3输入的LUT分别产生计数数据和快速进位。同步加载数据则由2选1多路选择器产生。多路选择器的输出与一个同步清除信号进行逻辑“与”。,4)内部三态仿真 内部三态仿真提供了不为物理三态总线所局限的内部模拟三态。在物理三态总线中,三态缓冲器的输出使能信号(OE)选择驱动总线的信号。如果多个OE信号都有效,总线口就会有信号冲突;相反,如果OE信号都无效,总线就会悬

40、浮。内部模拟三态总线将有竞争的三态缓冲器置低而将悬浮的三态总线置高,从而消除了这些问题。MAX+PLUS软件自动地用多路选择器实现三态总线的功能。,5)清除/置位逻辑控制 可编程寄存器的清除与预置功能由输入到LE的DATA3,LABCTRL1,LABCTRL2控制。可用LABCTRL1或LABCTRL2异步清除LE寄存器,用LABCTRL1对LE寄存器置位,或用LABCTRL1将驱动到DATA3的数据异步装载到LE寄存器中。,Quartus和MAX+PLUS编译器在编译时能自动选择最好的控制信号实现清除/置位功能。因为清除和置位信号是低电平有效,所以编译器自动地将未用的清除或预置信号置高。在设

41、计时,可以选择异步清除、异步置位、异步清除/置位、带有异步清除的异步加载,带有置位的异步加载、无清除/置位的异步加载等六种模式来实现逻辑的清除与置位。这六种模式如图3.20所示。,图3.20 FLEX10K器件LE的清除/置位逻辑控制模式,图3.20 FLEX10K器件LE的清除/置位逻辑控制模式,图3.20 FLEX10K器件LE的清除/置位逻辑控制模式,除了以上六种清除/置位模式外,FLEX10K器件还提供了一个芯片级复位引脚,它能使器件内的所有的寄存器复位,这个特性的使用可在设计输入时建立。在任意一种清除/预置模式中,芯片级复位信号优先于其它信号。当复位信号起作用时,带有异步置位的寄存器

42、被置位,因而可用复位信号实现异步置位。,4.快速通道互连(Fast Track)在FLEX10K器件中,Fast Track互连提供LE与器件I/O引脚之间的互连。Fast Track是遍布整个器件长宽的一系列水平和垂直的连续式布线通道。这种全局布线结构,即使对于复杂的设计也可预测其性能。相反,FPGA中的分段式互连结构需要用一些开关矩阵把数目不同的若干条线段连接起来,这就增加了逻辑资源间的延时,从而使性能下降。,Fast Track由贯穿整个器件的行互连和列互连组成。每条行互连承载进出这一行中LAB的信号。行互连可以驱动I/O引脚或馈送到器件中的其它LAB。列互连分布于两行之间,也能驱动I/

43、O引脚。每个行通道可由LE的输出或三个列通道之一馈送信号。这四个信号通过双4选1多路选择器与两个特定的行通道连接。每个LE与一个4选1多路选择器连接。,每个LAB列由一个专用列互连承载。列互连可驱动I/O引脚,或馈送到行互连以把信号送到其它LAB。来自列互连的信号,可能是LE的输出,也可能是I/O引脚的输入。在将列互连信号送到另一LAB或EAB之前,必须先将其传送到行互连。由IOE或EAB驱动的每个行通道信号都可驱动一个特定的列通道。相邻的LAB中的一对LE可以通过行、列通道来连通。例如,在一个LAB中的LE可以驱动通常由同一行相邻的LAB中的一个特定的LE所驱动的行通道和列通道,反之亦然。这

44、种灵活的布线方式使得布线资源得到更有效的利用。,图3.21表明了由行、列、局部互连、进位链及级联链实现的相邻的LAB、EAB之间的互连关系。每个LAB的标识由它们在器件中的位置确定:字母表示行,数字表示列。例如,LABB3在第B行,第三列。,图3.21 FLEX10K器件的互连资源,5.I/O单元(IOE)I/O单元由一个双向缓冲器和一个寄存器组成。寄存器既可用作需要快速建立时间的外部数据的输入,也可作为要求快速“时钟-输出”性能的数据输出。每个I/O引脚都可配置为输入、输出或双向引脚。使用Quartus或MAX+PLUS编译器的可编程反相选项,在需要时可以自动地将来自行、列互连的信号反相。I

45、OE的结构如图3.22所示。,图3.22 FLEX10K器件的I/O单元(IOE)的互连关系,每个IOE的输出缓冲器的输出压摆率均可调,可根据实际要求配置成低噪声或高速度。IOE的时钟、清除、时钟使能和输出使能控制由称作外部控制总线的I/O控制信号网络提供。外部控制总线使用高速驱动器,以使信号的失真最小。外部控制总线包含12个外部控制信号,可以配置成:八个输出使能,六个时钟使能,两个时钟,两个清除信号。,如果需要多于六个时钟使能信号或八个输出使能信号,则可由一个特定的LE驱动时钟使能信号或输出使能信号来实现对器件中每个IOE的控制。另外,外部控制总线中还有两个时钟信号,每个IOE可以任选这两个

46、专用时钟之一。每个外部控制信号可由任意一个专用输入引脚驱动,也可以由一个特定行中的每个LAB中的第一个LE驱动。此外,不同行中的LE可以驱动列互连,以使行互连直接驱动外部控制信号。器件级全局复位信号可以复位器件内所有IOE中的寄存器,它优先于其它控制信号。,外部控制总线信号还能驱动四个全局信号。内部产生的信号也能够驱动全局信号,它同样具有低失真、短延时特性。这个特性对于内部产生多扇出的清除和时钟信号是最为理想的。当一个全局信号由内部逻辑驱动时,相应的专用输入引脚不能驱动该信号,它将被接为一个确知的逻辑状态(如GND)而不能悬空。器件的全局使能信号低电平有效,它用于对器件引脚进行三态控制。类似地

47、,IOE中的寄存器可以由全局复位引脚信号复位。,1)行到IOE的连接 当IOE作为输入信号时,它可以驱动两个独立的行通道。当IOE作为输出时,其输出信号由一个对行信号进行选择的多路选择器驱动。多达八个的IOE连接到每个行通道的每个边上,如图3.23(a)所示。2)列到IOE的连接 当IOE作为输入信号时,它可以驱动两个独立的列通道。当IOE作为输出时,其输出信号由一个对列信号进行选择的多路选择器驱动。两个IOE分别连接到列通道的两边。每个IOE能够由列通道通过多路选择器驱动。每个IOE能够接通的列通道不同,如图3.23(b)所示。,图.23 行、列到IOE的连接(a)行到IOE的连接;(b)列

48、到IOE的连接,图.23 行、列到IOE的连接(a)行到IOE的连接;(b)列到IOE的连接,3.3.3 FLEX10K器件特性设定 1.时钟配置 为了支持高速设计,FLEX10K器件还提供了可供选择的时钟锁定(Clock Lock)和时钟自举(Clock Boost)电路,这两种电路中均含有用来提高设计速度和减小资源占用的锁相环(PLL)。时钟锁定电路采用同步PLL,它减小了器件内的时钟延时和失真,在维持零保持时间时使时钟建立时间及时钟到输出的时间减小到最小。,时钟自举电路提供了一个时钟倍乘器,它可使设计人员通过共享器件内部资源来提高器件的有效使用区。时钟自举电路还允许设计人员在器件中分布低

49、速时钟和倍频时钟。结合时钟锁定电路和时钟自举电路的特性,可使系统性能和带宽显著提高。在FLEX10K器件中,时钟锁定和时钟自举电路特性由MAX+PLUS开发工具软件使能。外部器件不需要使用这个特性。时钟锁定和时钟自举电路的输出在器件中任何引脚上无效。时钟锁定和时钟自举电路在时钟上升沿到来时锁定,它只能用来直接驱动寄存器时钟,不能经过门电路或反相。,专用时钟引脚(GCLK1)为时钟锁定和时钟自举电路提供时钟。当专用时钟引脚驱动时钟锁定和时钟自举电路时,不能再作它用。在既需要倍频时钟又需要非倍频时钟的电路中,电路板上的时钟线可接到器件的GCLK1引脚。利用MAX+PLUS软件,可以将GCLK1引脚

50、同时馈接到FLEX10K器件中的时钟锁定和时钟自举电路。然而,当这两个电路同时工作时,另一个时钟引脚(GCLK0)不能使用。图3.24展示了MAX+PLUS软件中如何使时钟锁定和时钟自举电路同时使能的电路原理图。,图中虽然使用了原理图,但也可以用AHDL、VHDL、VerilogHDL等方法实现。当时钟锁定和时钟自举电路同时使用时,这两个电路中的输入频率参数必须相同。当图中时钟自举电路的倍乘因子为2时,输入频率必须满足特定的要求。,图3.24 在同一设计中使能时钟锁定和时钟自举,2.FLEX10K输出器件配置 1)PCI钳位二极管(Clamping Diodes)选项 FLEX10KA、FLE

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号