可编程逻辑器件发展简述.ppt

上传人:小飞机 文档编号:5098667 上传时间:2023-06-04 格式:PPT 页数:65 大小:300KB
返回 下载 相关 举报
可编程逻辑器件发展简述.ppt_第1页
第1页 / 共65页
可编程逻辑器件发展简述.ppt_第2页
第2页 / 共65页
可编程逻辑器件发展简述.ppt_第3页
第3页 / 共65页
可编程逻辑器件发展简述.ppt_第4页
第4页 / 共65页
可编程逻辑器件发展简述.ppt_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《可编程逻辑器件发展简述.ppt》由会员分享,可在线阅读,更多相关《可编程逻辑器件发展简述.ppt(65页珍藏版)》请在三一办公上搜索。

1、2023/6/4,1,第6章 可编程逻辑器件,本章概要:本章介绍PLA、PAL、GAL、CPLD、EPLD和FPGA等各种类型可编程逻辑器件的电路结构、工作原理和使用方法,并介绍可编程逻辑器件的编程方法。知识要点:(1)可编程逻辑器件的分类。(2)可编程逻辑器件的结构及特性。(3)可编程逻辑器件的编程方法。,2023/6/4,2,6.1 可编程逻辑器件的基本原理,PROM是始于1970年出现第一块可编程逻辑器件PLD(Programmable Logic Device),随后可编程逻辑器件又陆续出现了PLA、PAL、GAL、EPLD及现阶段的CPLD和FPGA等。可编程逻辑器件的出现,不仅改变

2、了传统的数字系统设计方法,而且促进了EDA技术的高速发展。EDA技术是以计算机为工具,代替人去完成数字系统设计中各种复杂的逻辑综合、布局布线和设计仿真等工作。设计者只需用硬件描述语言完成对系统功能的描述,就可以由计算机软件自行完成处理,得到设计结果。利用EDA工具进行设计,可以极大地提高设计的效率。,2023/6/4,3,6.1.1 可编程逻辑器件的分类,可编程逻辑器件的密度分类,2023/6/4,4,1 按集成密度分类可编程逻辑器件从集成密度上可分为低密度可编程逻辑器件LDPLD和高密度可编程逻辑器件HDPLD两类。LDPLD 通常是指早期发展起来的、集成密度小于700门/片左右的PLD如R

3、OM、PLA、PAL和GAL等。HDPLD包括可擦除可编程逻辑器件EPLD(Erasable Programmable Logic Device)、复杂可编程逻辑器件CPLD(Complex PLD)和FPGA三种,其集成密度大于700门/片。如Altera公司的EPM9560,其密度为12000门/片,Lattice公司的pLSI/ispLSI3320为14000门/片等。目前集成度最高的HDPLD可达25万门/片以上。,2023/6/4,5,2.按编程方式分类可编程逻辑器件的编程方式分为两类:一次性编程OTP(One Time Programmable)器件和可多次编程MTP(Many T

4、ime Programmable)器件。OTP器件是属于一次性使用的器件,只允许用户对器件编程一次,编程后不能修改,其优点是可靠性与集成度高,抗干扰性强。MTP器件是属于可多次重复使用的器件,允许用户对其进行多次编程、修改或设计,特别适合于系统样机的研制和初级设计者的使用。,2023/6/4,6,根据各种可编程元件的结构及编程方式,可编程逻辑器件通常又可以分为四类:采用一次性编程的熔丝(Fuse)或反熔丝(Antifuse)元件的可编程器件,如PROM、PAL和EPLD等。采用紫外线擦除、电可编程元件,即采用EPROM、UVCMOS工艺结构的可多次编程器件。采用电擦除、电可编程元件。其中一种是

5、E2PROM,另一种是采用快闪存储器单元(Flash Memory)结构的可多次编程器件。基于静态存储器SRAM结构的可多次编程器件。目前多数FPGA是基于SRAM结构的可编程器件。,2023/6/4,7,3.按结构特点分类 PLD按结构特点分为阵列型PLD和现场可编程门阵列型FPGA两大类。阵列型PLD的基本结构由与阵列和或阵列组成。简单PLD(如PROM、PLA、PAL和GAL等)、EPLD和CPLD都属于阵列型PLD。现场可编程门阵列型FPGA具有门阵列的结构形式,它有许多可编程单元(或称逻辑功能块)排成阵列组成,称为单元型PLD。,2023/6/4,8,6.2 可编程逻辑器件的设计技术

6、,6.2.1 概 述,在PLD没有出现之前,数字系统的传统设计往往采用“积木”式的方法进行,实质上是对电路板进行设计,通过标准集成电路器件搭建成电路板来实现系统功能,即先由器件搭成电路板,再由电路板搭成系统。数字系统的“积木块”就是具有固定功能的标准集成电路器件,如TTL的74/54系列、CMOS的4000/4500系列芯片和一些固定功能的大规模集成电路等,用户只能根据需要选择合适的集成电路器件,并按照此种器件推荐的电路搭成系统并调试成功。设计中,设计者没有灵活性可言,搭成的系统需要的芯片种类多且数目大。,2023/6/4,9,PLD的出现,给数字系统的传统设计法带来新的变革。采用PLD进行的

7、数字系统设计,是基于芯片的设计或称之为“自底向上”(Bottom-Up)的设计,它跟传统的积木式设计有本质的不同。它可以直接通过设计PLD芯片来实现数字系统功能,将原来由电路板设计完成的大部分工作放在PLD芯片的设计中进行。这种新的设计方法能够由设计者根据实际情况和要求定义器件的内部逻辑关系和管脚,这样可通过芯片设计实现多种数字系统功能,同时由于管脚定义的灵活性,不但大大减轻了系统设计的工作量和难度,提高了工作效率,而且还可以减少芯片数量,缩小系统体积,降低能源消耗,提高系统的稳定性和可靠性。,2023/6/4,10,IEEE标准的HDL(如VHDL 和Verilog HDL)给PLD和数字系

8、统的设计带来了更新的设计方法和理念,产生了目前最常用的并称之为“自顶向下”(Top-Down)的设计法。自顶向下的设计采用功能分割的方法从顶向下逐次将设计内容进行分块和细化。在设计过程中采用层次化和模块化将使系统设计变得简洁和方便,其基本设计思想如图7.15所示。层次化设计是分层次、分模块地进行设计描述。描述器件总功能的模块放在最上层,称为顶层设计;描述器件某一部分功能的模块放在下层,称为底层设计;底层模块还可以再向下分层,直至最后完成硬件电子系统电路的整体设计。,2023/6/4,11,2023/6/4,12,6.2.2 可编程逻辑器件的设计流程,可编程逻辑器件的设计流程包括设计准备、设计输

9、入、设计处理和器件编程四个步骤以及相应的功能仿真、时序仿真和器件测试三个设计验证过程。这个设计流程与第1章1.2节中叙述的EDA设计流程基本相同,这里不再重复。,2023/6/4,13,6.2.3 在系统可编程技术在系统可编程(In-System Programmable,简称ISP)技术是20世纪80年代末Lattice公司首先提出的一种先进的编程技术。在系统可编程是指对器件、电路板或整个电子系统的逻辑功能可随时进行修改或重构的能力。支持ISP技术的可编程逻辑器件称为在系统可编程器件(ISP-PLD),例如Lattice公司生产的ispLSI1000 ispLSI8000系列器件属于ISP-

10、PLD。,2023/6/4,14,6.2.4 边界扫描技术边界扫描测试BST(Boundary-Scan Testing)是针对器件密度及I/O口数增加,信号注入和测取难度越来越大而提出的一种新的测试技术。它是由联合测试活动组织JTAG提出来的,而后IEEE对此制定了测试标准,称为IEEE 1149.1 标准。边界扫描测试技术主要解决芯片的测试问题。,2023/6/4,15,6.3 可编程逻辑器件的编程与配置,由于可编程逻辑器件具有在系统下载或重新配置功能,因此在电路设计之前就可以把其焊接在印刷电路板上,并通过电缆与计算机连接。在设计过程中,以下载编程或配置方式来改变可编程逻辑器件的内部逻辑关

11、系,达到设计逻辑电路目的。目前常见的可编程逻辑器件的编程和配置工艺包括基于电可擦存储单元的E2PROM或Flash技术的编程工艺、基于SRAM查找表的编程单元的编程工艺和基于反熔丝编程单元的编程工艺三种。,2023/6/4,16,6.3.1 CPLD的ISP方式编程ISP方式是当系统上电并正常工作时,计算机就可以通过CPLD器件拥有的ISP接口直接对其进行编程,器件被编程后立即进入正常工作状态。CPLD的编程和FPGA的配置可以使用专用的编程设备,也可以使用下载电缆。例如用Altera公司的ByteBlaster(MV)并行下载电缆,将PC机的并行打印口与需要编程或配置的器件连接起来,在MAX

12、+plusII工具软件的控制下,就可以对Altera公司的多种CPLD和FPGA进行编程或配置。,2023/6/4,17,JTAG接口本来是用作边界扫描测试(BST)的,把它用作编程接口则可以省去专用的编程接口,减少系统的引出线。采用JATG模式对CPLD编程下载的连线如图7.22所示。这种连线方式既可以对CPLD进行测试,也可以进行编程下载。,2023/6/4,18,2023/6/4,19,由于ISP器件具有串行编程方式,即菊花链结构,其特点是各片共用一套ISP编程接口,每片的SDI输入端与前一片的SDO输出端相连,最前面一片的SDI端和最后一片的SDO端与ISP编程口相连,构成一个类似移位

13、寄存器的链形结构。因此采用JTAG模式可以对多个CPLD器件进行ISP在系统编程,多CPLD芯片ISP编程下载的连线如图7.23所示。,2023/6/4,20,GND,2023/6/4,21,6.3.2 使用PC机的并口配置FPGA基于SRAM LUT结构的FPGA不属于ISP器件,它是以在线可重配置方式ICR(In Circuit Reconfigurability)改变芯片内部的结构来进行硬件验证。利用FPGA进行电路设计时,可以通过下载电缆与PC机的并口连接,将设计文件编程下载到FPGA中。使用PC机的并口通过ByteBlaster下载电缆对多个FPGA器件进行配置的电路连接如图7.24

14、所示。,2023/6/4,22,1.2 Cyclone 器 件,1.新型可编程架构Cyclone系列器件基于一种全新的低成本架构,从设计之初就充分考虑了成本的节省,因此可以为价格敏感的应用提供全新的可编程的解决方案。低成本FPGA的设计过程要面临许多的挑战,其中最具挑战性的就是如何在性能、特性以及价格中间找到一个合适的定位。FPGA设计师必须找到一个平衡点(如图1.17所示),以确保在可编程片上系统(SOPC)方案中既可以提供充足的逻辑单元和存储器容量,又不会使价格过高。,图1.17 器件性能、特性和成本之间的平衡关系,Cyclone器件设计时选择了较小的封装形式,以提供给用户足够的I/O管脚

15、和良好的功耗特性。在此基础上,根据封装的物理尺寸定义裸片连接点的最大尺寸,装入尽可能多的逻辑结构和存储器块,从而保证每种封装都装入最多的逻辑资源。1)Cyclone架构Cyclone架构参考图1.18所示,垂直结构的逻辑单元(LE)、嵌入式存储块和锁相环(PLL)周围环绕着I/O单元(IOE)(图1.18),高效的内部连线和低延时的时钟网络保证了每个结构单元之间时钟和数据信号的连通性。,图1.18 EP1C20 器件平面图,器件周围分区工作的I/O单元被划分为不同的I/O块。这些I/O块支持一系列单端和差分I/O电平标准,包括SSTL-2、SSTL-3以及最高311 Mbps的LVDS 接口标

16、准。每个I/O单元包含有3个寄存器以实现双倍数据速率(DDR)的应用,另外还包含其他的I/O特性相关电路,如总线驱动能力可编程、总线保持以及电平摆率可编程等。I/O 块配备了专门的外部存储器接口电路。该接口电路大大简化了与外部存储器(包括DDR SDRAM和FCRAM器件)的数据交换过程,可以达到266 Mbps(133 MHz时钟频率)的最大数据交换速率。,Cyclone器件支持32比特/66 MHz PCI接口。每个I/O单元提供从管脚到FPGA内核的多条路径,以便器件满足相关的建立和保持时间。Cyclone器件的容量最小为2910个逻辑单元及59 904比特存储器,最大为20 060个逻

17、辑单元和294 912比特存储器。2)时钟分配所有Cyclone器件由最多8根全局时钟线组成的全局时钟网络驱动,从器件的任何位置都可以访问这些时钟线,它们的驱动源可以是输入引脚、锁相环的输出时钟、DDR/PCI接口的输入信号以及内部逻辑生成的输出信号(如图1.19所示)。,图1.19 Cyclone器件时钟网络,2.嵌入式存储资源 Cyclone器件为在FPGA上实现低成本的数字信号处理(DSP)系统提供了一个理想的平台。它为设计工程师提供了灵活的硬件解决方案,能够实现设计中所需的多个乘法器。Cyclone器件中的M4K块可用来实现软乘法器,以满足图像处理、音频处理和消费类电子系统的需要。软乘

18、法器可以根据所需数据位宽、系数位宽来定制,并且根据需要选择精度。利用M4K块,可采用并行乘法方式或分布式运算方式来实现不同数据宽度的软乘法器。这两种不同的实现方法提供了等待时间、存储器利用率和乘法器尺寸上的灵活性。图1.20显示了使用Cyclone FPGA的M4K块并采用分布式运算方式实现的有限脉冲响应(FIR)滤波器。表1.7汇总了在Cyclone器件的M4K块中可以实现的乘法器的数量。,图1.20 用M4K块采用分布式运算方式实现的FIR滤波器,表1.7 在M4K块中实现1818位乘法器,3.专用外部存储接口电路DDR SDRAM拥有与SDR相同的结构,但是在时钟的上下沿都传输数据,从而

19、使数据交换的带宽加倍。FCRAM则是一种延迟时间较低、基于SRAM功能架构的存储器件。在大容量、低功耗的应用环境下,FCRAM提供了更好的性能。和SDRAM类似,FCRAM支持在时钟的上下两个沿进行数据交换,适用于流水线存储和预置数据操作,与SDRAM架构的存储器相比,所需的访问时钟周期大大减少。,Cyclone 器件通过片内内嵌的专用接口电路实现与双数据速率(DDR)SDRAM和FCRAM以及单数据速率(SDR)SDRAM器件进行快速可靠的数据交换,最高速率可达到266 Mbps。如果再结合针对Cyclone器件优化的即取即用的IP(Intellectual Property)控制器核,工程

20、师可以在几分钟之内将一个SDRAM和FCRAM的功能合并到一个系统之中。如图1.21所示,所有Cyclone器件使用优化的I/O引脚实现和DDR SDRAM、FCRAM器件的接口连接。每一个I/O区包含两套接口信号引脚,每套引脚含1个数据采样信号(DQS)引脚和8个关联数据(DQ)引脚。这些引脚采用SSTL-2 Class电平标准来实现和外部存储器件的高速数据传输。每个器件最多可支持48个DQ引脚和对应8个DQS引脚,支持一个32位宽的具有纠错能力的双列存储器模块(DIMM)。,图1.21 DQS和DQ信号引脚,图1.22显示了从存储器件读取一个单一比特数据的读操作。DQS信号位于输入的DQ信

21、号的中央,用来驱动器件内的全局时钟网络。DQ信号在时钟的上下沿被FPGA的寄存器采样,并使用第二组上升沿采样的内部寄存器使之与系统时钟同步。,图1.22 外部存储器读操作,图1.23显示了往外部存储器件写入一个比特数据的写操作。输出给外部存储器件的DQS信号与输出的数据信号有90的相移,输出使能逻辑用来满足前后缓冲的时序要求。通过一套寄存器和输出多路复用器,数据A和数据B在时钟的上、下两个沿合成DQ信号,输出给外部存储器件,该时钟和内部系统时钟同步。,图1.23 外部存储器件写操作,4.支持的接口及协议 1)PCI PCI 是一个标准的总线型接口,通常用于集成组件、外设插板,还用于处理器和存储

22、系统之间的内部连接。Cyclone器件兼容3.3 V PCI局部总线规范2.2版本,支持高达66 MHz的32位PCI总线。Cyclone器件中的I/O单元经过专门设计,可以匹配严格的PCI标准所要求的建立和保持时间。为了提供最大的灵活性,每个输入信号都可以通过两个独立的延时路径输入到不同的芯片区域(如图1.24所示)。,图1.24 Cyclone器件的I/O单元,2)SDRAM及FCRAM接口Cyclone器件可以通过内建的专用接口与单数据速率和双数据速率SDRAM连接。3)10/100及千兆以太网以太网是局域网(LAN)中使用最广泛的访问方式,其定义的标准是IEEE 802.3标准。用Cy

23、clone器件实现的以太网媒体存取控制器与物理层器件的接口速率可以达到10 Mbps、100 Mbps或1 Gbps的最大带宽。如果结合针对Cycloen器件优化的IP核,用户可以很容易地在Cyclone芯片中实现以太网的MAC功能。4)串行总线接口Cyclone器件支持一系列的串行总线接口,如串行外设接口(SPI)、I2C、IEEE 1394 标准和通用串行总线(USB),如表1.8所示。,表1.8 Cyclone器件支持的串行总线接口,表1.8中的最大带宽大于等于数据速率。通过在Cyclone器件中实现SPI和I2C标准,可以在集成电路、处理器和外设之间提供一个低速的通信链路。IEEE 1

24、394和USB 也可以在处理器、计算机和其他器件之间建立一条链接。Cyclone器件可以用来实现与PHY器件的总线控制和接口功能。5)通信协议Cyclone器件支持一系列的通信协议,包括E1、E3、T1、T3和SONET/SDH(见表1.9)等。,表1.9 Cyclone器件支持的通信协议,E1和E3是欧洲数字传输标准;T1和T3是相应的北美数字传输标准;SONET/SDH是光纤上的数字传输标准。Cyclone器件还可以实现POS-PHY和UTOPIA通信接口协议,如表1.10所示。,表1.10 Cyclone器件支持的通信接口协议,POS-PHY和UTOPIA协议分别为SONET/SDH和异

25、步传输模式(ATM)提供物理层和链路层的接口,可以在Cyclone 器件中实现。这些通信接口协议一般用于中低端通信设备中,Cyclone器件可以满足这些应用在性能上、逻辑密度上和系统特性上的需求。5.锁相环的实现 Cyclone器件内置最多2个增强型锁相环,可给用户提供高性能的时钟管理能力,如频率合成、可编程移相、片外时钟输出、可编程占空比、失锁检测以及高速差分时钟信号的输入和输出等。图1.25所示为Cyclone器件内锁相环的原理框图。,图1.25 Cyclone器件锁相环原理框图,Cyclone的锁相环电路具有时钟合成功能,内部实际运行的时钟可以不同于输入的时钟频率。每个锁相环可以提供3个

26、不同频率的输出。锁相环提供两个比例因子分别为m和n的除法计数器,其中的m、n和后比例计数器(g0、g1和e)可以设置成从1到32之间的任意整数。Cyclone的锁相环还可以实现对一个应用进行时分复用的功能,这样对于某些特定的电路就可以在一个时钟周期内运行多次。通过时分复用,可以用较少的逻辑资源来实现所需要的功能,因此可以利用这种共享资源的方法来增加芯片内的可用资源。,Cyclone中的每个锁相环还可以有一个差分的或单端的片外时钟输出。每个锁相环有一对片外时钟输出管脚,该输出管脚可以支持表1.11所示的多种I/O标准。外部时钟输出可以用作系统时钟或用来同步整个板上的不同器件,其时钟反馈特性可以用

27、来补偿内部的延时或使输出的时钟与输入时钟相位对齐。,表1.11 Cyclone锁相环特性,表中m、n除法计数器和后比例计数器的范围从1到32;最小的项移为VCO周期除以8。如果以度为单位增加,Cyclone器件的输出至少可以以45递增,更小的增加度数有可能受到频率和分频系数的限制。Cyclone的锁相环具有可编程移相的能力。用户可以在一个时间单元内对时钟进行移相,最高分辨率达到150 ps(皮秒)。可编程移相特性一般用于匹配那些关键时序路径上时钟沿的约束,如建立时间和保持时间的约束。,Cyclon PLL的相位锁定信号用来指示输出时钟相对于参考时钟相位已经完全稳定地锁定。它一般用于系统控制和同

28、步整个板子上的其他不同器件。Cyclone的锁相环具有可编程占空比的能力。可编程占空比使得锁相环可以产生不同占空比的输出时钟。,6.I/O特性 Cyclone器件可以支持差分的I/O标准,如LVDS和去抖动差分信号(RSDS),当然也支持单端的I/O标准,如LVTTL、LVCMOS、SSTL和PCI。Cyclone器件可以支持最多129个通道的LVDS和RSDS。Cyclone器件内的LVDS缓冲器可以支持最高达640 Mbps的数据传输速度。与单端的I/O标准相比,这些内置于Cyclone器件内部的LVDS缓冲器保持了信号的完整性,并具有更低的电磁干扰(EMI)和更低的电源功耗。图1.26所

29、示为Cyclone器件内部的LVDS接口。表1.12列出了Cyclone器件内部LVDS和RSDS数据通道的数目及数据传输速度。,图1.26 Cyclone器件内部的LVDS接口,表1.12 每个Cyclone器件内部LVDS通道和 RSDS通道的数目及其性能,表1.12中的TQFP 表示薄型方块扁平封装;PQFP 表示塑料方块平面封装。Cyclone器件提供常用的单端I/O标准的支持,如LVTTL、LVCMOS、SSTL-2、SSTL-3和PCI,用于与板上其他器件的接口。单端I/O可以提供比差分I/O标准更强的电流驱动能力,主要应用在与高性能存储器的接口中,如双数据速率(DDR)的SDRA

30、M和FCRAM器件。表1.13列出了Cyclone器件可以支持的单端I/O信号标准。,表1.13 Cyclone器件支持的单端I/O信号标准,7.支持Nios系列嵌入式处理器 Cyclone 器件可以实现Nios嵌入式处理器,而且只占用不到600个逻辑单元(LE),因此在含多达20260个LE的最大Cyclone器件中,可以将多个Nios处理器集成到一个Cyclone器件中。Nios系列嵌入式处理器以第一代Nios处理器为基础,提供三种内核来满足嵌入式处理器的应用。设计者可以从高性能内核(超过200 DMIPS)、低成本内核(低于50美分的逻辑资源消耗)和性价比平衡的标准内核中进行选择。图1.

31、27是在Cyclone器件中运用Nios嵌入式处理器的一个实例。功能丰富、性能优化的Nios处理器内核和外围设备可以被整合到各种有特殊需求的嵌入式系统中去。,图1.27 性价比高的Nios嵌入式处理器解决方案,Nios 处理器和外围设备占用约600 LE。开发人员通过往Nios 处理器指令集中增加定制指令,可以加速软件算法。定制指令可以在一个时钟周期的时间内完成复杂的处理任务,为系统优化提供了一种高性价比的解决方案。用户添加的定制指令可以访问存储器和Nios系统外部的逻辑,提供了高效、灵活的访问数据和逻辑资源的能力。定制指令允许设计者灵活、轻便地设计高端软件,同时保留了并行硬件操作在可编程逻辑器件(PLD)中的性能优势。,8.配置方案串行配置器件(见图1.28)系列包括EPCS1和EPCS4两个产品,分别提供1 Mb和4 Mb的存储容量。该配置器件在保证低成本的同时还具备在系统编程(ISP)能力和多次编程能力,且具有包括ISP和Flash存储器访问接口等特性,8引脚小外形封装,增加了在低价格、小面积应用领域的使用机会。,图1.28 串行配置器件,串行配置器件最高达64 Mb的存储容量使得它为Stratix系列器件提供了一种价格敏感、小型化的配置方案。,

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号