欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    VHDL第2章可编程逻辑器.ppt

    • 资源ID:6522937       资源大小:4.14MB        全文页数:157页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    VHDL第2章可编程逻辑器.ppt

    1,可编程逻辑器件概述,2,可编程逻辑器件的发展过程,早期的电子管、晶体管、小中规模集成电路、发展到超大规模集成电路(VLSIC,几万门以上)以及许多具有特定功能的专用集成电路。系统设计师们更愿意在实验室里就能设计出合适的芯片,因而出现了可编程逻辑器件。,3,可编程逻辑器件的发展过程,早期的可编程逻辑器件只有可编程只读存贮器(PROM)、紫外线可按除只读存贮器(EPROM)和电可擦除只读存贮器(EEPROM)三种。由于结构的限制,它们只能完成简单的数字逻辑功能。特点:只能实现简单的逻辑功能(如何实现?)集成度不高,资源利用率低,4,可编程逻辑器件的发展过程,后来出现了PLA(可编程逻辑阵列)、PAL(可编程阵列逻辑)、GAL(通用阵列逻辑),它们结构上较为复杂,即通常意义上的可编程逻辑器件(PLD)。特点:电路结构较为复杂实现逻辑功能的基本电路:与或阵列无法满足大规模数字系统设计的要求,只能替代固定功能的逻辑芯片,5,可编程逻辑器件的发展过程,为了弥补PLD缺陷,LATTICE推出了类似于PAL结构的扩展型CPLD(Complex Programmable Logic Dvice)和与标准门阵列类似的FPGA(Field Programmable Gate Array)。特点:体系结构和逻辑单元灵活集成度高以及适用范围宽。兼容了PLD和通用门阵列的优点,可实现较大规模的电路,编程也很灵活。开发周期较短(相对于ASIC),6,可编程逻辑器件的发展过程,PAL/GAL等:低密度、早期的PLD,在低端数字电路领域仍有大量的应用主要是替代74系列逻辑器件GAL器件的供应商主要是Lattice SemiconductorCPLD:能实现的逻辑功能比PAL/GAL有大幅度提高主要用于实现中等复杂程度、较高速度的逻辑功能主要供应商:Altera、Lattice、XilinxFPGA高达千万门的集成度应用与高速、高密度的高端数字系统设计领域主要供应商:Altera、Lattice、Xilinx、Atmel、Actel,7,可编程逻辑器件分类,8,按照集成度分类,从集成度上分为低密度可编程逻辑器件(LDPLD)高密度可编程逻辑器件(HDPLD)历史上,GAL22V10是简单PLD和复杂PLD的分水岭。其集成度大致在500门750门之间。如果按照这个标准,PROM、PLA、PAL和GAL属于低密度可编程逻辑器件。而CPLD和FPGA则属于高密度可编程逻辑器件。,9,按照集成度分类,10,按照集成度分类,可编程只读存储器PROM。内部结构:由“与阵列”和“或阵列”组成。可以用来实现任何以“积之和”形式表示的各种组合逻辑。PROM采用熔丝工艺编程。其它形式:EPROM(紫外线擦除可编程只读存储器)和EEPROM(电擦写可编程只读存储器)。可编程逻辑阵列PLA(Programmable Logic Array)基于“与-或阵列”的一次性编程器件。内部的资源利用率低,现在已经不常使用,11,按照集成度分类,可编程阵列逻辑PAL(Programmable Array Logic)内部结构:是由“与-或阵列”组成。PAL具有多种的输出结构形式。PAL采用熔断丝工艺,一旦编程后就不能再改写。通用可编程阵列逻辑GAL(Generic Progmm-mable Array Logic)GAL器件和PAL器件相比,增加了一个可编程的输出逻辑宏单元OLMC。通过对OLMC配置可以得到多种形式的输出和反馈。GAL几乎完全代替了PAL器件。有代表性的GAL芯片是GAL22V10。,12,按照集成度分类,EPLD(Erasable Programmable Logic Device)Altera公司20世纪80年代中期推出的一种大规模可编程逻辑器件。EPLD器件的基本逻辑单位是宏单元,它由可编程的与或阵列、可编程寄存器和可编程I/O三部分组成。其集成密度的提高,使其在一块芯片内能够实现较多的逻辑功能。,13,按照集成度分类,CPLD(ComplexProgrammable Logic Device)复杂可编程逻辑器件同EPLD相比,CPLD增加了内部连线,对逻辑宏单元和I/O单元也有重大的改进。CPLD器件至少包含二种结构:可编程逻宏单元;可编程I/O单元和可编程内部连线。典型的 CPLD器件有Xilinx的9500系列、coolrun-ner系列器件、Altera的MAX3000和MA II系列器件。,14,按照集成度分类,FPGA(Field Programmable Gate Array)现场可编程门阵列。1985年美国Xilinx公司首家推出的一种新型的可编程逻辑器件。结构上由逻辑功能块排列为阵列,并由可编程的内部连线连接这些功能块来实现一定的逻辑功能。使用SRAM的FPGA器件,在工作前需要从芯片外部加载配置数据,这些配置数据可以存放在片外的EPROM或其他存储体上除Xilinx公司外,Altera和Actel等公司也提供高性能的FPGA芯片。例如:Altera公司的FLEX系列常常是指FPGA器件。,15,按照结构分类,可编程逻辑器件都是从“与-或阵列”和“门阵列”两类基本结构发展起来的,所以又可从结构上将其分为两大类器件:PLD器件基本结构为与或阵列的器件。PLD主要通过修改具有固定内部电路的逻辑功能来编程。FPGA器件基本结构为门阵列的器件。FPGA主要通过改变内部连线的布线来编程。,16,按编程工艺,熔丝编程器件:由可以用电流熔断的熔丝组成。PROM等反熔丝编程器件主要通过击穿介质达到连通线路的目的。Actel的FPGA器件体积小,集成度高,速度高,易加密,抗干扰,耐高温只能一次编程,在设计初期阶段不灵活,17,按编程工艺,SRAM大多数公司的FPGA器件可反复编程,实现系统功能的动态重构每次上电需重新下载,实际应用时需外挂EEPROM用于保存程序EEPROM大多数CPLD器件可反复编程不用每次上电重新下载,但相对速度慢,功耗较大,18,按编程工艺,在可编程逻辑器件的术语中,将前3类器件称为非易失性器件。它们在编程后,配置数据保持在器件上;将第4类器件称为易失性器件,每次掉电后配置数据会丢失,因而每次上电时需要重新配置。由于熔丝或反熔丝器件只能写一次,所以称一次编程(OTP)器件,其它种类的器件均可多次编程。,19,可编程逻辑器件的基本结构,20,背景知识,任何组合电路都可表示为其所有输入信号的最小项的和或者最大项的积的形式。时序电路包含可记忆器件(触发器),其反馈信号和输入信号通过逻辑关系再决定输出信号。,21,最小项和最大项,在一个逻辑函数表达式中,每个乘积项都包含了全部输入变量;每个乘积项中的输入变量是原变量或者反变量;同一输入变量的原变量和反变量不同时出现在同一乘积项中。这样的乘积项我们称为最小项。因为对于n个输入变量,变量的取值组合有2n个,在这2n个组合中,只能有1种,使得乘积项为1,其他的组合都会使乘积项为0。所以,最小项是输入变量组合中,取值为1只有一种可能的乘积项。,22,最小项和最大项,最大项每一个和项中包含全部变量;和项中的变量可以原变量形式出现,也可以反变量形式出现;原、反变量不能同时出现在同一个和项中。这样的和项称为最大项。因为对于n个输入变量,其取值组合有2n种,使最大项取值为1的组合有2n-1种,只有1种取值组合使得最大项取值为0。,23,基本结构组成,PLD器件的基本结构由输入缓冲电路、与阵列、或阵列、输出缓冲电路等四部分组成“与阵列”和“或阵列”是PLD器件的主体,逻辑函数的功能靠它们实现输入电路使输入具有较好的驱动能力(同时产生原变量和反变量);输出电路提供各种灵活的输出方式。,24,基本结构组成,任何组合逻辑函数均可化为与或式,用“与门-或门”二级电路实现,而任何时序电路又都是由组合电路加上存储元件(触发器)构成。例如由“与或阵列”直接输出就构成组合方式输出“与或阵列”送入寄存器后输出构成时序方式输出。,25,组成部分的符号表示,26,组成部分的符号表示,27,与或门阵列,28,与或门阵列,与阵列最小项 或阵列最小项的和项,29,字线与位线,A1 A0 F0 F1 F2 F30 0 0 1 0 00 1 1 0 0 11 0 0 1 1 01 1 0 0 1 0,30,与或阵列,PROM内部结构,31,与或阵列,PROM与阵列固定,实现了所有的输入组合或阵列可编程,选择不同的“与项”实现了不同功能PROM的应用:常用来存放固定的数据或作为查找表(Look Up Table,LUT)使用,且使用起来方便,速度很快。缺点:用PROM实现逻辑系统功能时,随着输入信号数量的增多会造成芯片面积增加而效率降低的情况出现。,32,与或阵列,PLA的基本结构,33,与或阵列,PLA“与阵列”和“或阵列”均可编程由于PLA的“与阵列”、“或阵列”均可编程,因此它的灵活性最高,在实现逻辑函数功能时,只需要编程连接所需要的乘积项,使得阵列规模相对于PROM要小得多。由于集成度较低,而且缺乏高质量的开发软件和编程器,器件本身的价格较贵,PLA没有得到广泛应用。,34,与或阵列,PAL的基本结构,35,与或阵列,PAL“与阵列”可编程,“或阵列”是固定连接的。PAL在结构上结合了PROM的成本低、速度快、编程容易和PLA灵活的优点,因而得到了广泛的应用。,36,宏单元,宏单元是PLD器件中的一个重要的基本结构。PLD器件的时序电路功能则由包含触发器或寄存器的逻辑宏单元实现。逻辑宏单元结构的作用:(1)提供时序电路需要的寄存器或触发器。(2)提供多种形式的输入输出方式。(3)提供内部信号反馈,控制输出逻辑极性。(4)分配控制信号,如寄存器的时钟和复位信号,三态门的输出使能信号。,37,几种PLD的比较,38,可编程逻辑器件的编程元件,39,可编程元件,可编程元件有如下四种类型熔丝(Fuse)型开关反熔丝(Antifuse)型开关浮栅编程元件(EPROM和EEPROM)基于SRAM的编程元件。,40,可编程元件,熔丝(Fuse)型开关,A,B,未烧断熔丝,烧断熔丝,41,可编程元件,熔丝(Fuse)型开关由可以用电流熔断的熔断丝组成采用可熔丝的编程逻辑器件有PROM、EPLD和FPGA等在编程时,需要保持连接的节点保留熔丝,需要去除连接的节点烧掉熔丝熔丝型开关烧断后不能够恢复,只能够编程一次保证熔丝熔化时产生的金属物质不影响器件的其他部分,熔丝还需要留出极大的保护空间,因此熔丝占用的芯片面积大,42,熔丝(Fuse)型开关,43,可编程元件,反熔丝(Antifuse)型开关,1.2m,场氧化物,多晶硅,介质,扩散层,44,可编程元件,反熔丝(Antifuse)型开关通过击穿介质来达到连通线路在未编程时处于开路状态,编程时,在其两端加上编程电压,反熔丝就会由高阻抗变为低阻抗,从而实现两个极间的连通,且编程电压撤除后也一直处于导通状态Actel公司采用了一种双极型多层反熔丝工艺的编程元件,称之为PLICE(可编程低阻抗元素)反熔丝元件占用的硅片面积小,适宜做集成度很高的可编程逻辑器件的编程元件,45,可编程元件,浮栅编程元件包括EPROM、EEPROM及FLASH,这三种存储器都是用浮栅存储电荷的方法来保存编程数据。,46,浮栅编程元件,EPROM的基本结构是一个浮栅管,浮栅管相当于一个电子开关,当编程电压脉冲对浮栅注入电子时,浮栅管截止(0状态);当浮栅中的电子泄放后,浮栅管回复导通(1状态)。,控制栅与字线 相连,控制信息的读出和写入,浮栅埋在二氧化硅绝缘层,处于电“悬浮”状态,不与外部导通,注入电荷后可长期保存,47,浮栅编程元件,T2是门控管;T1是浮栅隧道氧化层MOS管(简称Flotox管),48,浮栅编程元件,Flotox管剖面示意图信息写入:根据浮栅上是否注入电子来定义0和1状态;浮栅注入电子是利用隧道效应进行的。,Flotox管剖面示意图浮栅中注入电子时,定义为1状态;浮栅没有电子时,定义为0状态。,49,浮栅编程元件,快闪存储器(FLASH)存储单元,读出1:若浮栅上有注入电子,叠栅MOS管截止,位线输出高电平。读出0:若浮栅上没有注入电子,则叠栅MOS管导通,位线输出低电平。,50,可编程元件,基于SRAM的编程元件,51,可编程元件,基于SRAM的编程元件大多数FPGA用SRAM来存储配置数据,所以又称为配置存储器。基本单元是由5个晶体管组成的存储器。由于SRAM是易失元件,FPGA每次上电必须重新加载数据,这些加载数据一般要存放到外加的EPROM中。,52,可编程逻辑器件的扫描测试,将在第7章详细讲述。,53,可编程只读存储器PROM,54,可编程ROM简介,常用类型:PROM/EPROM/EEPROM/FLASH性能比较,55,可编程ROM原理结构,原理结构图,56,可编程ROM原理结构,PROM从外部来看同其它存储器一样具有地址总线、控制信号总线以及数据总线。存储阵列通过在字线和数据线的交叉点处是否设置耦合元件来确定存储的信息是“0”还是“1”。当耦合元件是晶体管时,若该位需要保存“1”信息时,熔丝被保留;当需要保留“0”信息时,熔断该处的熔丝,使得该位的晶体管不起作用,即代表“0”信息。,57,可编程ROM的使用,使用步骤(1)将输入变量所有组合的值存放到该存储器的一片连续的单元中,此时输入变量作为存储器的输入地址,而存储单元中的值是固定的;(2)对要实现的逻辑电路进行分析,将系统的逻辑函数化简为最小项之和的形式;(3)将最小项对应的存储单元的值输出到或门以实现系统的逻辑功能,这相当于对最小项进行或编程。举例:用PROM实现一位全加器(P29)。,58,例:用PROM实现以下逻辑函数:,解:,ABC,对于大多数逻辑函数而言,并不需要使用全部最小项,造成浪费,PROM举例,59,(1)由此可写出输出逻辑函数的最小项表达式为:,(2)把A1A0和B1B0作为PROM的输入信号,F1、F2和F3为或阵列的输出,下图是用PROM实现比较器的阵列图。,F1m(4,8,9,12,13,14),F2m(0,5,10,15),F3m(1,2,3,6,7,11),PROM举例,60,(3)选用PROM的容量163位可满足要求。,可见,以PROM实现简单的组合逻辑电路函数是很方便的。,一般PROM输入地址线较多,容量也较大,又因为PROM的与阵列固定,必须进行全译码,产生全部的最小项。使得PROM芯片的利用率不高,功耗增加。,0.16,PROM举例,61,PLA与PAL,62,PLA,特点:与阵列、或阵列均可编程 使用时,不像PROM采用最小项之和的形式,而是将逻辑函数化简成最简的“与或式”,根据最简的乘积项之和表达式来构成相应的乘积项的或运算,从而减少了电路的规模。输出端有触发器,并反馈到与阵列无软件平台及编程工具的支持,没有得到广泛应用。,63,PLA,例:用PLA实现逻辑函数,64,PAL,“与或阵列”中或阵列固定、与阵列可编程的结构为了增强电路的功能和提高使用的灵活性,增加了各种形式的输出电路和反馈结构,从而构成了不同型号的PAL器件。,65,PAL,各种形式的输出电路和反馈结构专用输出结构:一个引脚只能作为输出使用或门高电平有效PAL器件(H型)或非门低电平有效PAL器件(L型)互补器件互补输出PAL器件(C型),66,PAL,各种形式的输出电路和反馈结构可编程输入/输出结构:通过对三态缓冲器控制端进行编程使得引脚作为输入或输出使用。在输出通道中有一个可编程控制端的三态缓冲器,当三态缓冲器使能时,该引脚只作为输出引脚使用;当三态缓冲器处于高阻状态,此时该引脚作为输入引脚使用。提高了引脚灵活性,适合于双向移位和传送数据的场合,67,PAL,各种形式的输出电路和反馈结构寄存器输出结构:与或阵列的乘积项之和送入到受全局时钟控制的D触发器中,在时钟的上升沿到达D触发器的输出引入了全局时钟和全局使能信号同步时序电路结构 寄存器输出结构的电路可以方便地组成各种时序逻辑电路,如构成计数器、移位寄存器等。,68,PAL,各种形式的输出电路和反馈结构异或寄存器输出结构:通过异或门后送入D触发器适合实现加、减等算术运算以及大于、小于等关系运算,I/O,m2,m3,m7,=1,69,PAL应用举例,请用PAL16L8实现22乘法器(输入A1A0和B1B0分别为两位二进制数,输出为结果F3F2F1F0)。逻辑方程为:,70,PAL应用举例,71,GAL,72,概述,由可编程的与阵列去驱动固定的或阵列(与PAL一样)GAL器件的每个输出引脚都接有一个输出逻辑宏单元OLMC(Output Logic Macro Cell),基本组成,73,GAL的组成,8个输入缓冲器(29脚)与8个反馈/输入缓冲器88个与门可形成与阵列的64个乘积项8个输出逻辑宏单元OLMC系统时钟CLK(脚1)输入缓冲器三态输出缓冲器的公用使能信号OE(脚11)的输入缓冲器,74,输出逻辑宏单元OLMC,三态数据选择器,乘积项数据选择器,75,输出逻辑宏单元OLMC,八输入或门G1,和“与阵列”实现了“与或”逻辑。异或门G3是极性控制门。D触发器对异或门的输出起记忆作用,使OLMC组成时序逻辑电路。四个数据选择器乘积项数据选择器PTMUX三态数据选择器TSMUX反馈数据选择器FMUX输出数据选择器,76,OLMC的5种组态,GAL16V8的OLMC(n)宏单元有5种组态专用输入组态专用输出组态复合输入输出组态寄存器组态寄存器组合I/O组态,77,专用输入组态,在专用输入组态下OLMC的输出三态门被禁止,此时只能接收相邻OLMC的输出,即本级OLMC成为专用输入组态。三态门的禁止使得输出通道上的全局控制信号如CLK、OE信号不再起作用。编号为15和16的OLMC没有接至相邻输出逻辑宏单元的连线,因此这两个输出逻辑宏单元用作专用输入组态时,不能作为相邻OLMC的输入信号使用。,78,专用输出组态,不受全局信号CLK和OE的控制没有反馈到输入的与或阵列电路只用作输出,而且D触发器的输出被旁路,因此专用输出组态是组合输出,79,反馈选通组合输出组态,选通的含义是指乘积项之和经过异或门送入三态缓冲器,该三态缓冲器受第一个乘积项的控制选通输出。,80,寄存器输出组态,乘积项数据选择器选择第一乘积项作为或门输入;输出数据选择器选择D触发器的输出送入三态缓冲器,且三态缓冲器由全局使能信号来选通,81,时序电路组合输出组态,至少有一个宏单元为寄存器输出模式,输出极性由XOR(n)来定,82,CPLD,83,CPLD的基本结构与功能,CPLD的基本组成可编程I/O单元可编程连线资源若干基本逻辑单元组成的逻辑块,84,CPLD的基本结构与功能,基本逻辑单元是宏单元(Macro Cell),宏单元的数量是器件容量的指标之一;宏单元由“与或阵列”以及多路选择器等组成。其中“与或阵列”是实现逻辑运算中“与”、“或”运算。在表达式的形式上就是乘积项的累加和。CPLD是基于乘积项结构实现逻辑功能的。例(A+B)(C*D)=该式右边已经化成乘积和的形式。,85,宏单元,86,CPLD的基本结构与功能,CPLD内部也有一些可编程的触发器,包含时钟、复位/置位等功能。CPLD也能实现时序逻辑电路。触发器一般指D触发器触发器的可编程是指对clk、en、clear、preset进行编程。,87,可编程资源,88,CPLD的基本结构与功能,CPLD内部的逻辑资源通过可编程连线连接在一起。CPLD的互联资源比较缺乏,且连线相对固定,因此CPLD的输入管脚到输出管脚的延时是可预测的,被称为Pin to Pin延时,该参数反映了CPLD器件可以实现的最高频率,也就表明了CPLD器件的速度等级。,89,可编程连线,ALTERA公司的可编程连线通过一个门控电路来实现,90,CPLD的基本结构与功能,可编程输入输出单元输入输出控制单元将每一根引脚独立配置成输入、输出或双向工作方式。所有I/O引脚都有一个三态缓冲器。,当三态缓冲器的控制端接高电平(VCC)时,输出被使能,此时I/O引脚配置成输出引脚。当三态缓冲器的控制端接地时,输出成高阻状态,此时I/O引脚可作为专用输入引脚。,91,CPLD的基本结构与功能,总结CPLD实现逻辑功能的硬件基础是“与或阵列”;与或阵列的输入变量个数是有限的,它不能实现任意个变量的逻辑表达式;CPLD既能实现组合逻辑,也能实现时序逻辑;CPLD的时钟、使能、复位等信号一般是全局信号,因此设计中不要任意使用时钟、使能、复位等信号;由于内部互联并不灵活,因此会出现内部资源充足,而设计不能编译适配的状况(需要优化设计)I/O引脚既能作为输入也能作为输出。CPLD的制造工艺是EEPROM。,92,CPLD的ISP,93,ISP在线可编程技术,ISP允许器件在焊接到PCB板上之后对其进行编程以及根据需要重新进行编程,94,ISP接口,ISP的专用引脚编程模式控制(TMS)编程时钟(TCK)编程数据输入(TDI)编程数据输出(TDO)接口形式JTAG接口,95,ISP的优越性,96,ISP接口,Altera器件编程的连接硬件包括ByteBlasterMV(BBMV)并口下载线ByteBlaster II(BBII)并口下载线MasterBlaster串行/USB下载线EthernetBlaster下载线USB-Blaster下载线,97,BBMV下载线,BBMV常采用JTAG下载模式具有工业标准的JTAG边界扫描测试电路(符合IEEE 1149.1-1990标准),用于对MAX7000S和MAX3000A以及MAX II系列器件进行编程。,98,BBMV下载线,适用器件,99,BBMV下载线,10芯插座的引脚名字,100,BBMV下载线,下载线电路,101,下载线电路,102,BBMV下载线,目标器件与10芯插座的连接,103,说明,利用BBMV下载线编程3.3V器件(MAX7000A器件)时,要将电缆的VCC脚连到5.0V电源,而器件的VCC脚连到3.3 V电源。MAX7000A器件能够耐压到5.0 V,因此,ByteBlaster电缆的5.0 V输出不会对3.3 V器件造成损害,但5.0 V电源中应该连接上拉电阻。MAX3000A/MAX II器件可采用统一的3.3V供电及编程,104,BB II下载线,BBII除了具有BBMV的全部功能之外,还能配置Cyclone和Stratix GX器件,编程EPC/EPCS配置芯片。BBMV只支持5V和3.3V器件,而BBII除了支持这两种电压之外,还支持2.5V和1.8V标准。BBII支持PS、JTAG、AS模式,而BBMV只支持前两种。,105,Altera公司的MAX系列CPLD,106,一个例子,107,CPLD引脚的分类,全局信号专用引脚通用输入输出引脚电源与地,108,CPLD引脚的分类,全局信号INPUT/GCLK1全局时钟信号INPUT/GCLRn全局清零信号INPUT/OE1全局使能信号INPUT/OE2/GCLK2全局使能/时钟信号,109,CPLD引脚的分类,专用引脚TDITMSTCKTDO作用在线编程边界扫描,110,CPLD引脚的分类,通用输入输出引脚I/O可编程为:IN/OUT/INOUT常见的状态为:高/低/高阻,111,CPLD引脚的分类,电源与地电源:VCCINT/VCCIO地:GNDINT/GNDIOMAX将内核和IO引脚的供电分开内核的供电电压较低,以降低功耗;IO引脚的供电较高,以便于接口。,112,电源与地,内核电压 3.3V、2.5V或1.8V,接受 2.5V、3.3V 或者 5.0V 输入,输出电位标准 VCCIO,113,一个例子,EPM3000A系列EPM3032/EPM3064/EPM3128/EPM3256,114,一个例子,EPM3000A系列I/O引脚支持多重电压电平,115,一个例子,MAX II系列,116,一个例子,MAX II系列I/O引脚支持多重电压电平,117,FPGA的结构特点,118,FPGA实现逻辑功能,查找表FPGA结构查找表LUT由静态存储器SRAM构成LUT大多采用4输入161的SRAM,119,FPGA实现逻辑功能,LUT,120,FPGA实现逻辑功能,查找表FPGA结构当输入变量多于4个时,对逻辑函数需要作适当变换以适应查找表的结构要求,这一步在器件设计中称为逻辑分割,逻辑分割需要优化求解。,121,FPGA实现逻辑功能,多路开关结构利用多路开关对输入和选择信号进行配置,接到固定电平或输入信号上,从而实现不同的逻辑功能MUX21二选一电路,122,FPGA实现逻辑功能,多级与非门结构基于“与或”逻辑块的与非门结构,并用一个触发器和一个多路开关来选择组合逻辑输出、寄存器输出或琐存器输出异或门可以形成更大的或函数,用来实现运算功能。,123,FPGA的基本结构与功能,FPGA的基本组成可编程I/O单元可编程逻辑单元嵌入式RAM块布线资源嵌入式功能块硬核,124,可编程逻辑单元,CLB由LE/LC组成,125,FPGA的基本结构与功能,基本逻辑单元包含了实现逻辑功能的硬件电路查找表(LUT),以及按照1:1配置的Register,它们的数量是衡量FPGA规模的重要指标。实现逻辑功能的基础:LUT用来实现组合逻辑Register完成时序逻辑设计,且资源丰富。FPGA是基于查找表结构实现逻辑功能的。查找表的输入变量的个数一般为4个。,126,可编程逻辑单元,逻辑单元LE,“与”级联链,“或”级联链,IN 3.0,IN 7.4,IN(4n-1).4(n-1),IN 3.0,IN 7.4,IN(4n-1).4(n-1),LE1,LE2,LEn,LE1,LE2,LEn,0.6 ns,2.4 ns,16位地址译码速度可达 2.4+0.6x3=4.2 ns,127,LUT,利用查表的方法来实现逻辑功能。表中存放的数据就是逻辑函数的真值,是等待输出的值,称为查找表(Look Up Table,LUT)。查找表实际上是由静态存储器SRAM组成的存储器阵列。查找表的输入就是SRAM的地址输入。,128,LUT,用查找表实现逻辑函数的过程就是将逻辑函数的真值事先存储在查找表的存储单元中,当逻辑函数的输入变量取不同组态时,相应组态的二进制取值构成SRAM的地址,选中相应组态对应的SRAM单元,也就得到输入变量组合对应的逻辑值。用查表方法实现逻辑函数,其输出的延时与逻辑函数的复杂度无关,而只与存储器的速度有关。,129,LUT的几个应用,一个EAB就可以轻松地实现一个4*4地乘法器。该乘法器有两个4位输入和一个8位输出。,130,LUT的几个应用,并行乘法器。为了提高速度,并行乘法器用多个EAB并行全部的局部结果。例如,一个8*8的乘法器可以用4个EAB来同时查找结果,实际上相当于同时进行4个4*4的乘法操作。然后用逻辑单元实现一个两级加法器来产生最后结果。,131,LUT的几个应用,二维卷积 利用LUT来实现卷积时,通常是将卷积运算转化为查表移位求和来实现。在进行卷积运算之前,先将系数(通常是对称的)的各种组合存入到LUT,乘法运算就是查表,并把查表数据相加得到最后结果。数字滤波,132,LAB一系列的相邻LE构成,133,FPGA的基本结构与功能,丰富的布线资源局部布线:指进出可编程逻辑单元的连线资源 通用布线:位于可编程逻辑单元行列之间的纵横间隔中,它以通用布线矩阵为中心实现FPGA内部的互连 I/O布线:在可编程逻辑单元和输入输出模块之间的布线资源 全局布线:完成器件内部全局时钟和全局复位/置位的布线专用布线设计者一般不需要进行布线。若能够进行布线,对系统设计的结果(速度和面积)影响重大。,134,丰富的布线资源,135,丰富的布线资源,136,丰富的布线资源,开关元件示例,137,FPGA的基本结构与功能,嵌入式RAM块容量不大被配置成各种形式的存储器内容可寻址的存储器(Content Addressable Memory)根据RAM还可以模拟实现ROM,138,FPGA的基本结构与功能,可编程输入输出,139,FPGA的基本结构与功能,可编程的输入输出单元可配置为不同的I/O物理特性可灵活配置以适配不同的电气标准:LVTTL、LVCMOS、SSTL、HSTL、LVDS、LVPECL、PCI等通过调整匹配阻抗特性、上下拉电阻,可调整输出驱动电流的大小目前可编程I/O支持的最高频率越来越高,一些高端的FPGA通过DDR寄存技术,可支持达到2Gbit/s的数据速率。,140,FPGA的基本结构与功能,底层功能单元通用程度较高的内嵌功能模块PLL(精度在ps级)DLL解决时钟错位(Skew)、时钟抖动(Jitter)等问题,141,PLL,Cyclone PLL结构示意图,142,FPGA的基本结构与功能,DSPCPU,143,FPGA的基本结构与功能,FPGA实现数字信号处理器,144,FPGA的基本结构与功能,高速串行收发器并行数据传输多根线占用板面积每根线相互之间有干扰每根线需要自己的匹配电路串行数据传输更少的走线占用的板面积减少;信号的干扰降到最小;相对于并行传输只用了一小部分的匹配电路没有相位差的问题,145,FPGA的基本结构与功能,串行收发器串行发送单元串行接收单元,146,FPGA的基本结构与功能,内嵌专用硬核(Hard Core)面向高端特定市场的FPGA,147,FPGA的基本结构与功能,总结FPGA是基于LUT实现逻辑功能FPGA内部包含丰富的寄存器,适合时序逻辑电路的实现FPGA内部的连线丰富,长短不一,因此信号的传输延时很难预测,因此设计时要注意约束时序I/O引脚的配置灵活FPGA是基于SRAM工艺制造,掉电后配置信息会丢失,148,CPLD VS FPGA,149,CPLD与FPGA的区别,150,FPGA与CPLD的区别,FPGA采用SRAM进行功能配置,可重复编程,但系统掉电后,SRAM中的数据丢失。因此,需在FPGA外加EEPROM,将配置数据写入其中,系统每次上电自动将数据引入SRAM中。CPLD器件一般采用EEPROM存储技术,可重复编程,并且系统掉电后,EEPROM中的数据不会丢失,适于数据的保密。,151,FPGA与CPLD的区别,FPGA器件含有丰富的触发器资源,易于实现时序逻辑,如果要求实现较复杂的组合电路则需要几个CLB结合起来实现。CPLD的与或阵列结构,使其适于实现大规模的组合功能,但触发器资源相对较少。,152,FPGA与CPLD的区别,FPGA为细粒度结构,CPLD为粗粒度结构。FPGA内部有丰富连线资源,CLB分块较小,芯片的利用率较高。CPLD的宏单元的与或阵列较大,通常不能完全被应用,且宏单元之间主要通过高速数据通道连接,其容量有限,限制了器件的灵活布线,因此CPLD利用率较FPGA器件低。,153,FPGA与CPLD的区别,FPGA为非连续式布线,CPLD为连续式布线。FPGA器件在每次编程时实现的逻辑功能一样,但走的路线不同,因此延时不易控制,要求开发软件允许工程师对关键的路线给予限制。CPLD每次布线路径一样,CPLD的连续式互连结构利用具有同样长度的一些金属线实现逻辑单元之间的互连。连续式互连结构消除了分段式互连结构在定时上的差异,并在逻辑单元之间提供快速且具有固定延时的通路。CPLD的延时较小。,154,常见型号与选型,CPLD的常见型号ALTERA公司MAX7000/MAX3000A/MAX IIXilinx公司Xilinx9500/CoolRunner2Lattice公司ispLSI系列/ispMACH系列/,155,常见型号与选型,FPGA的常见型号ALTERA公司FLEX系列/Cyclone/Stratix系列Xilinx公司Virtex系列Lattice公司/SC系列/,156,常见型号与选型,选型的几点参考FPGA还是CPLDCPLD适合实现组合逻辑电路,FPGA适合实现时序逻辑电路CPLD调电后配置不丢失,FPGA的掉电易失性CPLD一般用以实现中等难度设计,FPGA实现复杂设计CPLD的加密性较好,FPGA的保密性差CPLD的设计成本低,FPGA的设计成本高对特定应用:选择的器件应保证有充足的资源来实现系统,当剩余资源少于20时,应考虑重新选择。,157,常见型号与选型,选型的几点参考针对同一型号器件,速度也有等级,应选择满足速度要求的等级。同时,速度越快,价格越高。例:EMP3256ATC144-10通用I/O引脚的数量:在内部资源相同的情况下,也有不同I/O引脚可供选择封装内部特殊的功能模块(FPGA)对开发环境的熟悉程度,

    注意事项

    本文(VHDL第2章可编程逻辑器.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开