大规模可编程逻辑器件教学课件PPT.ppt

上传人:西安人 文档编号:3830055 上传时间:2019-09-27 格式:PPT 页数:75 大小:4.64MB
返回 下载 相关 举报
大规模可编程逻辑器件教学课件PPT.ppt_第1页
第1页 / 共75页
大规模可编程逻辑器件教学课件PPT.ppt_第2页
第2页 / 共75页
大规模可编程逻辑器件教学课件PPT.ppt_第3页
第3页 / 共75页
大规模可编程逻辑器件教学课件PPT.ppt_第4页
第4页 / 共75页
大规模可编程逻辑器件教学课件PPT.ppt_第5页
第5页 / 共75页
点击查看更多>>
资源描述

《大规模可编程逻辑器件教学课件PPT.ppt》由会员分享,可在线阅读,更多相关《大规模可编程逻辑器件教学课件PPT.ppt(75页珍藏版)》请在三一文库上搜索。

1、第 2 章 大规模可编程逻辑器件,GAL: Generic Array Logic 通用阵列逻辑,相关专业名词,EDA:Electronic Design Automation 电子设计自动化,PLD:Programmable Logic Device 可编程逻辑器件,CPLD:Complex Programmable Logic Device 复杂可编程逻辑器件,EPLD:Erasable Programmable Logic Device 可擦除可编程逻辑器件,FPGA:Field Programmable Gate Array 现场可编程门阵列,ASIC:Application Spec

2、ific Integrated Circuit 特定用途集成电路,PAL: Programmable Array Logic 可编程阵列逻辑,可编程逻辑器件的定义,逻辑器件:用来实现某种特定逻辑功能的电子器件,最简单的逻辑器件是与、或、非门(74LS00,74LS04等),在此基础上可实现复杂的时序和组合逻辑功能。 可编程逻辑器件(PLDProgrammable Logic Device):器件的功能不是固定不变的,而是可根据用户的需要而进行改变,即由编程的方法来确定器件的逻辑功能。,2.1 可编程逻辑器件概述,数字电路课程的回顾,使用中、小规模器件设计电路(74、54系列) 编码器(74LS

3、148) 译码器(74LS138) 比较器(74LS85) 计数器(74LS193) 移位寄存器(74LS194) ,数字电路课程的回顾,采用中小规模器件的局限 电路板面积很大,芯片数量很多,功耗很大,可靠性低提高芯片的集成度 设计比较困难能方便地发现设计错误 电路修改很麻烦提供方便的修改手段 PLD器件的出现改变了这一切,PLD出现的背景,电路集成度不断提高 SSIMSILSIVLSI 计算机技术的发展使EDA技术得到广泛应用 设计方法的发展 自下而上自上而下 用户需要设计自己需要的专用电路 专用集成电路(ASICApplication Specific Integrated Circuit

4、s)开发周期长,投入大,风险大 可编程器件PLD:开发周期短,投入小,风险小,PLD器件的优点,集成度高,可以替代多至几千块通用IC芯片 极大减小电路的面积,降低功耗,提高可靠性 具有完善先进的开发工具 提供语言、图形等设计方法,十分灵活 通过仿真工具来验证设计的正确性 可以反复地擦除、编程,方便设计的修改和升级 灵活地定义管脚功能,减轻设计工作量,缩短系统开发时间 保密性好,管脚数目: 208个 电源: 3.3V(I/O) 2.5V(内核) 速度 250MHz 内部资源 4992个逻辑单元 10万个逻辑门 49152 bit的RAM,可编程逻辑器件的发展历程,70年代,80年代,90年代,P

5、ROM 和PLA 器件,PAL 器件,GAL器件,FPGA器件,EPLD 器件,CPLD器件,内嵌复杂 功能模块 的SOPC,PLD的发展趋势,向高集成度、高速度方向进一步发展 最高集成度已达到400万门 向低电压和低功耗方向发展,5V3.3V2.5V1.8V更低 内嵌多种功能模块 RAM,ROM,FIFO,DSP,CPU 向数、模混合可编程方向发展,大的PLD生产厂家, 最大的PLD供应商之一 FPGA的发明者,最大的PLD供应商之一 ISP技术的发明者 提供军品及宇航级产品,PLD器件的分类按集成度,低密度 PROM,EPROM,EEPROM,PAL,PLA,GAL 只能完成较小规模

6、的逻辑电路 高密度,已经有超过400万门的器件 EPLD ,CPLD,FPGA 可用于设计大规模的数字系统集成度高,甚至可以做到SOC(System On a Chip),按集成度(PLD)分类,PLD器件的分类按结构特点,基于与或阵列结构的器件阵列型 PROM,EEPROM,PAL,GAL,CPLD CPLD的代表芯片如:Altera的MAX系列 基于门阵列结构的器件单元型 FPGA,PLD器件的分类按编程工艺,熔丝或反熔丝编程器件Actel的FPGA器件 体积小,集成度高,速度高,易加密,抗干扰,耐高温 只能一次编程,在设计初期阶段不灵活 SRAM大多数公司的FPGA器件 可反复编程,实现

7、系统功能的动态重构 每次上电需重新下载,实际应用时需外挂EEPROM用于保存程序 EEPROM大多数CPLD器件 可反复编程 不用每次上电重新下载,但相对速度慢,功耗较大,数字电路的基本组成,任何组合电路都可表示为其所有输入信号的最小项的和或者最大项的积的形式。 时序电路包含可记忆器件(触发器),其反馈信号和输入信号通过逻辑关系再决定输出信号。,PLD的逻辑符号表示方法,与门,乘积项,PROM结构,与阵列为全译码阵列,器件的规模将随着输入信号数量n的增加成2n指数级增长。因此PROM一般只用于数据存储器,不适于实现逻辑函数。 EPROM和EEPROM,用PROM实现组合逻辑电路功能,实现的函数

8、为:,固定连接点 (与),编程连接点 (或),PLA结构,PLA的内部结构在简单PLD中有最高的灵活性,两个阵列均可编程。,PAL结构,与阵列可编程使输入项增多,或阵列固定使器件简化。 或阵列固定明显影响了器件编程的灵活性,AnBnCn,AnBn,AnCn,BnCn,用PAL实现全加器,GAL结构,GAL器件与PAL器件的区别在于用可编程的输出逻辑宏单元(OLMC)代替固定的或阵列。可以实现时序电路。,逻辑宏单元,OLMC,GAL器件的OLMC Output Logic Macro Cell,每个OLMC包含或阵列中的一个或门 组成: 异或门:控制输出信号的极性 D触发器:适合设计时序电路 4

9、个多路选择器,输出使能选择,反馈信号选择,或门控制选择,输出选择,2.2 复杂可编程逻辑器件(CPLD) (基于乘积项的可编程逻辑阵列),CPLD大都采用各种分区阵列结构,每个区域内部相当于一个小规模的PLD,各区域之间通过可编程全局互连总线连接,构成较大规模的CPLD器件。,1MAX7000系列器件的基本结构,MAX7000系列器件主要由216个逻辑阵列块LAB(Logic Array Block)、216个I/O控制模块和一个可编程互连阵列PIA(Programmable Interconnect Array)三部分构成。,2MAX7000系列器件的逻辑宏单元结构,MAX7000系列器件中

10、的逻辑宏单元是器件实现逻辑功能的主体,它主要由逻辑阵列、乘积项选择矩阵和可编程寄存器三个功能块组成,每一个宏单元可以被单独地配置为时序逻辑或组合逻辑工作方式。,2MAX7000系列器件逻辑宏单元结构(续1),逻辑阵列功能模块 每个LAB有16个共享扩展项,每一个共享乘积项可以被LAB内任何一个或全部宏单元使用和共享,以便实现复杂的逻辑函数。,2MAX7000系列器件逻辑宏单元结构(续2),逻辑阵列功能模块 除共享乘积项外可使用并联扩展乘积项实现复杂逻辑函数。此时,最多允许20个乘积项直接传送到逻辑宏单元的“或”逻辑中,其中5个乘积项是由宏单元本身提供的,15个并联扩展项是从同一个LAB中相邻宏

11、单元借用的。,2MAX7000系列器件逻辑宏单元结构(续3),乘积项选择矩阵功能模块 该模块接收来自逻辑阵列传送给本逻辑宏单元的各个乘积项,经过选择后,一部分经或门形成组合逻辑函数的输出;一部分作为控制信号,传送到可编程寄存器功能块,作为寄存器的置位、复位、时钟和时钟使能信号。 可编程寄存器功能模块 由可编程配置寄存器和时钟选择多路选择器、快速输入选择多路选择器、复位选择多路选择器、寄存器旁路选择多路选择器等组成,对寄存器的工作方式进行灵活配置。,3MAX7000系列器件的I/O控制模块,IO控制块允许每个IO引脚单独被配置为输入、输出或双向工作方式。所有IO引脚都有一个三态缓冲器,三态缓冲器

12、的使能控制信号来自一个4选1多路选择器,通过它可以选择使用两个全局的输出使能信号之一,或者是地(GND)电平,或者是电源(VCC)电平作为三态缓冲器的使能信号。,4MAX7000系列器件的PIA,器件上的所有的LAB是通过在可编程互连阵列(PIA)上布线,以相互连接构成所需的逻辑。PIA这个全局总线是一种可编程的通道,它可以把器件中任何信号源连接到任何一个目的地。器件中的所有专用输入、I/O引脚和逻辑宏单元输出都连接到PIA,而由PIA将这些信号传送到器件的各个地方。只有每个LAB各自需要的信号才布置从PIA到LAB的连线。,2.3 现场可编程门阵列(FPGA),2.3.1 FPGA的基本工作

13、原理 (基于查找表法的SRAM原理),查找表的基本原理,N个输入的逻辑函数需要2的N次方的容量的SRAM来实现,一般多个输入的查找表采用多个逻辑块级连的方式,查找表的基本原理,N个输入的逻辑函数需要2的N次方的容量的SRAM来实现,一般多于输入的查找表采用多个逻辑块级连的方式,2.3.2 FLEX10K系列器件的基本结构,FLEX10K系列器件是工业界第一个嵌入式PLD系列器件,它采用了SARM制造工艺和灵活逻辑单元阵列FLEX(Flexible Logic Element Matrix)结构。,2.3.2 FLEX10K系列器件的基本结构(续1),1逻辑阵列块LAB,每个逻辑阵列块LAB由8

14、个相邻的逻辑单元LE,以及与相邻的LAB相连的进位链和级联链、LAB控制信号、LAB局部互连通道等组成。,2.3.2 FLEX10K系列器件的基本结构(续2),2逻辑单元LE,每个LE包含一个能快速产生4变量的任意逻辑函数输出的4输入查找表LUT,以及一个带同步使能的可编程触发器、与相邻LE相连的进位链和级联链。,2.3.2 FLEX10K系列器件的基本结构(续3),2逻辑单元LE,FLEX10K系列器件结构中提供了两条专用高速数据通道,用于连接相邻的LE,并且不占用局部互连通道,这就是进位链和级联链。,2.3.2 FLEX10K系列器件的基本结构(续4),3嵌入式阵列块EAB,FLEX10K

15、系列器件的嵌入式阵列块是输入和输出端带有寄存器的片内RAM阵列块,可用于实现通用阵列逻辑。EAB相当于一个大规模的查找表LUT,它可编程快速实现多位数字乘法器、数字滤波器和微控制器等复杂逻辑功能,比一般的外存储器有更大的灵活性。,2.3.2 FLEX10K系列器件的基本结构(续5),4快速互连通道,快速互连通道是由遍布于整个器件中的“行互连”和“列互连”组成的。每行的LAB有一个专用的“行互连”,“行互连”可以驱动I/O引脚,并将信号传送到同一行中的其他LAB中。“列互连”连接各行,同时也能够驱动I/O引脚。 。,2.3.2 FLEX10K系列器件的基本结构(续6),5输入输出单元IOE,器件

16、的I/O引脚是由输入输出单元IOE驱动的。IOE位于快速互连通道行和列的末端,包含一个双向的I/O缓冲器和一个触发器,这个触发器可以用作需要快速建立时间的外部数据输入寄存器,也可以作为要求快速“时钟到输出”性能的数据输出寄存器。,Cyclone器件介绍,表 Cyclone 系列器件特性参数,Cyclone是Altera公司在第一代Cyclone系列的基础上开发的一款低成本、高性价比的FPGA。采用了全铜层90nm低k绝缘工艺,1.2VSRAM工艺设计,在300nm园晶片上生产。提供了460868416个逻辑单元(LE),并具有一整套最佳的功能,包括1818位乘法器、专用外部存储接口电路、4K位

17、嵌入式存储块、锁相环(PLL)和高速差分I/O等功能。,Cyclone器件介绍(续),表 Cyclone器件封装和最多用户I/O管脚数,表 Cyclone FPGA的专用配置器件,CPLD与FPGA的区别,FPGA与CPLD的区别,FPGA采用SRAM进行功能配置,可重复编程,但系统掉电后,SRAM中的数据丢失。因此,需在FPGA外加EPROM,将配置数据写入其中,系统每次上电自动将数据引入SRAM中。CPLD器件一般采用EEPROM存储技术,可重复编程,并且系统掉电后,EEPROM中的数据不会丢失,适于数据的保密。,FPGA与CPLD的区别,FPGA器件含有丰富的触发器资源,易于实现时序逻辑

18、,如果要求实现较复杂的组合电路则需要几个CLB结合起来实现。CPLD的与或阵列结构,使其适于实现大规模的组合功能,但触发器资源相对较少。,FPGA与CPLD的区别,FPGA为细粒度结构,CPLD为粗粒度结构。FPGA内部有丰富连线资源,CLB分块较小,芯片的利用率较高。CPLD的宏单元的与或阵列较大,通常不能完全被应用,且宏单元之间主要通过高速数据通道连接,其容量有限,限制了器件的灵活布线,因此CPLD利用率较FPGA器件低。,FPGA与CPLD的区别,FPGA为非连续式布线,CPLD为连续式布线。FPGA器件在每次编程时实现的逻辑功能一样,但走的路线不同,因此延时不易控制,要求开发软件允许工

19、程师对关键的路线给予限制。CPLD每次布线路径一样,CPLD的连续式互连结构利用具有同样长度的一些金属线实现逻辑单元之间的互连。连续式互连结构消除了分段式互连结构在定时上的差异,并在逻辑单元之间提供快速且具有固定延时的通路。CPLD的延时较小。,PLD器件的命名与选型,EPM7 128 S L C 8410 EPM7:产品系列为EPM7000系列 128:有128个逻辑宏单元 S:电压为5V,AE为3.3V,B为2.5V L:封装为PLCC,Q代表PQFP等 C:商业级(Commercial)070度, I:工业级(Industry),4085度 M:军品级(Military),55125度

20、84:管脚数目 10:速度级别,管脚的定义,特殊功能的管脚 电源脚VCC和GND,VCC一般分为VCCINT和VCCIO两种 JTAG管脚:实现在线编程和边界扫描 配置管脚(FPGA):用于由EEPROM配置芯片 信号管脚 专用输入管脚:全局时钟、复位、置位 可随意配置其功能为:输入、输出、双向、三态,PLD的设计步骤,设计输入,原理图输入 使用元件符号和连线等描述 比较直观,但设计大规模的数字系统时则显得繁琐 HDL语言输入 逻辑描述功能强 成为国际标准,便于移植 原理图与HDL的联系与高级语言与汇编语言类似,设计处理,综合和优化 优化:将逻辑化简,去除冗余项,减少设计所耗用的资源 综合:将

21、模块化层次化设计的多个文件合并为一个网表,使设计层次平面化 映射 把设计分为多个适合特定器件内部逻辑资源实现的逻辑小块的形式 布局与布线 将已分割的逻辑小块放到器件内部逻辑资源的具体位置并利用布线资源完成各功能块之间的连接 生成编程文件 生成可供器件编程使用的数据文件,模拟仿真,功能仿真 不考虑信号传输和器件的延时 时序仿真 不同器件的内部延时不一样,不同的布局、布线延时也会有比较大的不同 在线验证 利用实现手段测试器件最终功能和性能指标,在系统编程技术ISP In System Program,对PLD的逻辑功能可随时进行修改。由Lattice公司率先发明 优点: 方便硬件的调试 方便硬件版

22、本的升级,类似于软件升级,在系统编程技术ISP In System Program,isp技术用编程器直接在用户的目标系统或印制板上对PLD芯片下载。,具有isp性能的器件是E2CMOS工艺制造,其编程信息存储于E2PROM内,可以随时进行电编程和电擦除,且掉电时其编程信息不会丢失。,在系统编程技术 (In System Programmable),边界扫描测试技术BST Boundary Scan Test,据IEEE1149.1标准JTAG,用于解决大规模集成电路的测试问题。 现在新开发的可编程器件都支持边界扫描技术,并将其作为ISP接口。 在DSP开发和嵌入式处理器的开发中应用得非常广泛

23、。,FPGA/CPLD测试技术,1 内部逻辑测试,2 JTAG边界扫描测试,图 边界扫描电路结构,JTAG边界扫描测试,表 边界扫描IO引脚功能,2.3 CPLD和FPGA的编程与配置 2.3.1 CPLD和FPGA的编程配置 1编程配置的概念 可编程逻辑器件在利用开发工具设计好应用电路后,要将该应用电路写入PLD芯片。将应用电路写入PLD芯片的过程称为编程,而对FPGA器件来讲,由于其内容在断电后即丢失,因此称为配置(但把应用电路写入FPGA的专用配置ROM仍称为配置)。由于编程或配置一般是把数据由计算机写入PLD芯片,因此,也叫下载。要把数据由计算机写入PLD芯片,首先要把计算机的通信接口

24、和PLD的编程或配置引脚连接起来。一般是通过下载线和下载接口来实现的,也有专用的编程器。,2配置模式 在FPGA的配置之前,首先要借助于FPGA开发系统,按某种文件格式要求描述设计系统,编译仿真通过后,将描述文件转换成FPGA芯片的配置数据文件。选择一种FPGA的配置模式,将配置数据装载到FPGA芯片内部的可配置存储器,FPGA芯片才会成为满足要求的芯片系统。 FPGA的配置模式是指FPGA用来完成设计时的逻辑配置和外部连接方式。逻辑配置是指,经过用户设计输入并经过开发系统编译后产生的配置数据文件,将其装入FPGA芯片内部的可配置存储器的过程,简称FPGA的下载。只有经过逻辑配置后,FPGA才

25、能实现用户需要的逻辑功能。,不同公司的配置模式有所不同,而同一公司的不同器件系列也有差异,具体配置模式应查相关器件的数据手册。比如Lattice公司的ECP/EC系列器件的配置模式由CFG2:0决定,包括七种配置模式: SPI主动模式; SPIX主动模式; 主动串行模式; 从动串行模式; 主动并行模式; 从动并行模式; ispJTAG模式。Altera公司基于SRAM LUT结构器件的配置模式由芯片引脚MSEL1和MSEL0的状态决定,包括六种配置模式: 配置器件配置模式; PS被动串行模式; PPS被动并行同步模式; PPA被动并行异步模式; PSA被动串行异步模式; JTAG模式。 Xil

26、inx公司XC2000/XC3000等系列的FPGA的配置模式由芯片引脚M0、M1和M2的状态决定,包括六种配置模式: 主动串行配置模式; 主动并行配置模式(高); 主动并行配置模式(低); 从动串行配置模式; 同步外设配置模式; 异步外设配置模式。,3配置流程 FPGA的配置流程如图2.99所示,一般包括芯片的初始化、配置和启动等几个过程。 当系统加电时,FPGA自动触发芯片的加电/复位电路,芯片开始进行初始化操作。初始化操作包括:清除芯片内部的可配置存储器;检测芯片引脚的配置状态,判断芯片的配置模式;将输出引脚设置成高阻状态。FPGA芯片内部设有延时电路,使芯片有足够的时间完成初始化操作。

27、在芯片的配置过程中,如果检测到RESET的低有效信号,配置过程就会中断,芯片初始化操作重新开始。,图2.99 FPGA的配置流程,图2.100 ByteBlaster接口信号排列图,CPLD和FPGA 的下载接口,Altera的ByteBlaster接口是一个10芯的混合接口,有PS和JTAG两种模式,都是串行接口。接口信号排列如图2.100所示,名称如表2.33所示。,Altera公司的FPGA配置方式与器件系列,表 Altera FPGA常用配置器件,2.3.3 CPLD器件的编程电路 在系统可编程(ISP)就是当系统上电并正常工作时,计算机通过系统中的CPLD拥有ISP接口并直接对其进行

28、编程,器件在编程后立即进入正常工作状态。这种CPLD编程方式的出现,改变了传统的使用专用编程器编程方法的诸多不便。图2.101是Altera CPLD器件的ISP编程连接图,其中Byteblaster(MV)与计算机并口相连。MV即混合电压的意思。,CPLD的ISP方式编程,图 CPLD编程下载连接图,TCK、TDO、TMS、TDI为CPLD的JTAG口,对CPLD编程,CPLD和FPGA的编程与配置,图 10芯下载口,表 接口各引脚信号名称,图 多CPLD芯片ISP编程连接方式,CPLD的ISP方式编程,此接口既可作编 程下载口,也可作 JTAG接口,ALTERA 的 ByteBlaster(MV)下载接口,图 多FPGA芯片配置电路,

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

当前位置:首页 > 高中教育


经营许可证编号:宁ICP备18001539号-1