为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

EDA技术与Verilog设计王金明版第2章

2013-03-24 50页 ppt 3MB 16阅读

用户头像

is_478675

暂无简介

举报
EDA技术与Verilog设计王金明版第2章nullnull第2章 PLD器件null2.1 概述 2.2 PLD的分类 2.3 PLD的基本原理与结构 2.4 低密度PLD的原理与结构 2.5 CPLD的原理与结构 2.6 FPGA的原理与结构 2.7 PLD器件的编程元件 2.8 边界扫描测试技术 2.9 在系统编程 2.10 FPGA/CPLD器件概述内容第2章 PLD器件null可编程逻辑器件PLD(programmable logic device) :PLD是做为一种通用集成电路生产的,他的逻辑功能按照用户对器件编程来搞定。一般的P...
EDA技术与Verilog设计王金明版第2章
nullnull第2章 PLD器件null2.1 概述 2.2 PLD的分类 2.3 PLD的基本原理与结构 2.4 低密度PLD的原理与结构 2.5 CPLD的原理与结构 2.6 FPGA的原理与结构 2.7 PLD器件的编程元件 2.8 边界扫描测试技术 2.9 在系统编程 2.10 FPGA/CPLD器件概述内容第2章 PLD器件null可编程逻辑器件PLD(programmable logic device) :PLD是做为一种通用集成电路生产的,他的逻辑功能按照用户对器件编程来搞定。一般的PLD的集成度很高,足以满足设计一般的数字系统的需要。这样就可以由设计人员自行编程而把一个数字系统“集成”在一片PLD上,而不必去请芯片制造厂商设计和制作专用的集成电路芯片了。 2.1 概 论 2.1 概 论 PLD的发展历程 20世纪70年代的PROM和PLA器件 AMD公司推出PAL器件 20世纪80代美国Lattice公司GAL器件 FPGA器件 EPLD器件 CPLD器件 内嵌复杂功能模块的SoPC PLD的发展◆ 1985年,美国Xilinx公司推出了现场可编程门阵列(FPGA,Field Programmable Gate Array) ◆ CPLD(Complex Programmable Logic Device),即复杂可编程逻辑器件,是从EPLD改进而来的。PLD的发展PLD的集成度分类PLD的集成度分类一般将GAL22V10(500门~750门 )作为简单PLD和高密度PLD的分水岭2.2 PLD的分类null四种SPLD器件的区别 按编程特点分类PLD器件按照可以编程的次数可以分为两类: (1) 一次性编程器件(OTP,One Time Programmable) (2) 可多次编程器件 OTP类器件的特点是:只允许对器件编程一次,不能修改,而可多次编程器件则允许对器件多次编程,适合于在科研开发中使用。按编程特点分类按编程元件和编程工艺划分(1)熔丝(Fuse) (2)反熔丝(Antifuse)编程元件 (3)紫外线擦除、电可编程,如EPROM。 (4)电擦除、电可编程方式,(EEPROM、快闪存储器(Flash Memory)),如多数CPLD (5)静态存储器(SRAM)结构,如多数FPGA 按编程元件和编程工艺划分非易失性器件易失性器件按结构特点分类(1)基于乘积项(Product-Term)结构的PLD器件。 (2)基于查找表(Look Up Table,LUT)结构的PLD器件。按结构特点分类nullPLD器件的原理结构图 2.3 PLD的基本原理与结构缺点:器件规模不容易做的很大。 目前绝大多数的FPGA采用查找表结构 。null 数字电路符号表示 常用逻辑门符号与现有国标符号的对照 nullPLD电路符号表示 与门、或门的表示 nullPLD连接表示法 2.4 低密度PLD的原理与结构2.4 低密度PLD的原理与结构2.4 低密度PLD的原理与结构2.4 低密度PLD的原理与结构PROM PROM的逻辑阵列结构 nullPROM PROM表达的PLD阵列图 PROM中包含一个固定的与阵列与一个可编程的或阵列 nullPROM 用PROM完成半加器逻辑阵列 nullPLA PLA逻辑阵列示意图 PLA在结构上由可编程的与阵列与一个可编程的或阵列构成。 图中PLA只包含4个乘积项。 优点:芯片利用率高、节省芯片面积; 缺点:对开发软件要求高、优化算法复杂、运行速度低。nullPLA与 PROM的比较 nullPAL PAL结构 PAL的常用表示 PAL的与阵列是可编程,或阵列是固定的。 优点:送到或门的乘积项是固定的大大简化了设计算法;nullPAL PAL22V10部分结构图nullGAL GAL22V10的结构(局部) GAL器件在与或阵列上沿用了PAL的与阵列是可编程,或阵列是固定的。 但在输出结果上做了较大改进,设计了独特的输出逻辑宏单元(OLMC)null GAL22V10的OLMC结构nullCPLD器件是在PAL、GAL基础上发展起来的, 的,它由可编程逻辑宏单元、可编程I/O单 元,和可编程内部连线3大部分组成。 每个宏单元由类似PAL的电路块构成。 每个宏模块通过芯片内部的连线资源互连,并 连接到I/O块。2.5 CPLD的原理与结构nullCPLD器件的结构2.5 CPLD的原理与结构可编程逻辑宏单元可编程I/O单元可编程连线阵列null(1)可编程逻辑宏单元 可编程逻辑宏单元是器件的逻辑组成核心,宏单元内部主要包括与阵列和或阵列、可编程触发器和多路选择器等电路,能独立地配置为时序逻辑或组合逻辑工作方式。2.5.1宏单元结构null①多触发器结构和“隐埋”触发器结构。GAL器件每个输出宏单元只有一个触发器,而CPLD的宏单元内通常含两个或两个以上的触发器,其中一个触发器与输出端相连,其余触发器的输出不与输出端相连,但可以通过相应的缓冲电路反馈到与阵列,从而与其他触发器一起构成较复杂的时序电路。CPLD的逻辑宏单元特点:nullCPLD的逻辑宏单元特点:②乘积项共享结构。在PAL和GAL的与或阵列中,每个或门的输入乘积项最多为8个,当要实现多于8个乘积项的“与-或”逻辑函数时,必须将“与-或”函数表达式进行逻辑变换。在CPLD宏单元中,如果输出表达式的与项较多,对应的或门输出端不够用时,可以借助可编程开关将同一单元(或其他单元)中的其他或门与之联合起来使用,或者在每个宏单元中提供未使用的乘积项供其他宏单元使用和共享,从而提高了资源利用率,实现快速复杂的逻辑函数。nullCPLD的逻辑宏单元特点:③异步时钟和时钟选择。CPLD器件与PAL、GAL相比,其触发器的时钟即可以同步工作又可以异步工作,有些器件中触发器的时钟还可以通过数据选择器或时钟网络进行选择。此外,逻辑宏单元内触发器的异步清零和异步置位也可以用乘积项进行控制,因而使用起来更加灵活。null(2)可编程I/O单元 输入/输出单元,简称I/O单元(或IOC),它是芯片内部信号到I/O引脚的接口部分。由于阵列型HDPLD通常只有几个专用输入端,大部分端口均为I/O端,而且系统的输入信号常常需要锁存,因此,I/O常作为一个独立单元来处理。 负责输入/输出电器特性控制,比如可以设定集电极开路输出、摆率控制、三态输出等。null(3)可编程连线阵列(Programmable Interconnet Array,PIA) CPLD器件提供丰富的内部可编程连线资源。可编程内部连线的作用是给各逻辑宏单元之间及逻辑宏单元与I/O单元之间提供互连网络。各逻辑宏单元通过可编程内部连线接收来自专用输入端或通用输入端的信号,并将宏单元的信号反馈到其需要到达的目的地。这种互连机制有很大的灵活性,它允许在不影响引脚分配的情况下改变内部的设计。 典型CPLD器件的结构 典型CPLD器件的结构 MAX 7000S器件的内部结构 宏单元,用来实现基本逻辑功能。可编程连线负责信号传递,连接所有宏单元。负责输入/输出电气特性控制,例如设定集电极开路输出、三态输出等null MAX 7000S器件的宏单元结构乘积项阵列,与阵列或阵列,与乘积项阵列构成组合逻辑。可编程触发器,根据需要触发器可以分别配置为具有可编程时钟控制的D、JK或SR触发器工作方式,它的时钟、清零输入都可以通过编程选择,可以使用专用的全局清零和全局时钟,也可使用内部逻辑产生时钟和清零。 如果不需要触发,也可将触发器盘路,信号直接输给PIA或输出到I/O引脚。null 对于简单的逻辑函数,只需要一个宏单元即可完成,但对于复杂电路,一个宏单元是不能实现的,这时就需要通过并联扩展项和共享扩展项将多个宏单元相连,宏单元的输出也可以连接到可编程连线阵列,作为另一个宏单元的输入,这样CPLD就可以实现更为复杂的逻辑关系。 null 由于CPLD是由与或阵列构成的,器件规模不容易做的很大,后来人们构造出另一种可编程的逻辑结构,即查找表结构,大部分FPGA采用查找表结构。2.6.1查找表(Look-up Table, LUT)结构 2.6 FPGA的原理与结构查找表原理类似于ROM,其物理结构是静态存储器(SRAM),N个输入项的逻辑函数可以由一个2N位容量的SRAM来实现,函数值存放在SRAM中,SRAM的地址线起输入作用,SRAM的输出为逻辑函数值,由连线开关实现与其他功能块的连接。null查找表结构 4输入LUT及内部结构图 2.6 FPGA的原理与结构null基于查找表结构的特点:(1)一个N输入查找表可以实现N个输入变量的任何逻辑功能。(3)器件的LUT的输入变量一般是4个或5个,所以存储单元的个数一般是16个或32个。输入变量多于4个或5个的逻辑函数,可以用多个查找表级联来实现。(2)一个N输入查找表需要对应2Nbits的SRAM存储单元。null FPGA逻辑块中,除了有LUT外,一般还包含触发器等电路。 作用:将LUT输出值保存,用以实现时序逻辑电路。 也可将触发器旁路,实现组合逻辑功能。nullFPGA器件的内部结构示意图 LUT加上触发器结构典型FPGA的结构 典型FPGA的结构 Xilinx的FPGA器件XC4000,属于中等规模FPGA器件,XC4000的基本逻辑块为可配置逻辑块(Configurable Logic Block,CLB)可配置逻辑块(CLB) 输入/输出模块(I/O Block,IOB) 布线通道(Routing Channels)典型FPGA的结构(1) 典型FPGA的结构(1) XC4000器件的CLB结构D触发器,具有异步置位和复位端,有公共的时钟输入端。主要用来实现寄存器逻辑。数据选择器可以被编程,用来选择触发器的输入信号、时钟有效边沿和输出信号等。1.可配置逻辑块(CLB)null单长线 双长线2.布线通道 布线通道用来提供高速可靠的内部连线,它将CLB之间、CLB和IOB之间连接起来,以构成复杂的逻辑。布线通道由许多金属线段构成。典型FPGA的结构(2) Cyclone器件是Altera比较典型的FPGA器件,在Cyclone器件中,其基本的逻辑块称为LE (Logic Element),即逻辑单元结构(普通模式)典型FPGA的结构(2) 典型FPGA的结构(2) Cyclone器件的LE结构(普通模式)典型FPGA的结构(2) 由4输入LUT、进位链、可编程寄存器构成null1.熔丝(Fuse)型器件 2.反熔丝(Anti-fuse)型器件 3.EPROM型,紫外线擦除电可编程4.EEPROM型 6.SRAM型 5.Flash型 2.7 PLD器件的编程元件浮栅编程元件null1.熔丝型开关一般在需要编程的互连节点上设置相应的熔丝开关。在编程时,需要保持连接的节点保留熔丝,需要去除连接的节点烧断熔丝。null 熔丝开关烧断后不能回复,只能编程一次。 PROM、EPLD和FPGA等。 缺点:编程电流大、占用芯片面积大。null2.反熔丝型开关通过击穿介质来达到连通线路的目的。这些开关元件在未编程时处于开路状态,编程时,在其两端加上编程电压,反熔丝就会由高阻抗变为低阻抗,从而实现两个极间的连通,而编程电压撤出后也一直处于导通状态。nullPLICE反熔丝介质特点:占用硅片面积小,适宜做集成度很高的可编程逻辑器件的编程元件。null3.浮栅编程元件用浮栅存储电荷的方法来保存编程数据的,因此断电时,存数的数据是不会丢失的。(1)EPROM基本结构是浮栅管,相当于一个电子开关。当浮栅管没有注入电子时,浮栅导通;反之,截止。(2)EEPROM(3)闪速存储器(Flash Memory)nullEPROM存储器null4.基于SRAM的编程元件大多数FPGA用它来存数配置数据,所以又称为配置存储器。它的基本单元由5个晶体管组成的存储器。SRAM是易失性元件,FPGA每次上电必须重新加载数据,这些加载数据一般要存放到外加的非易失性存储器中。null 随着微电子技术、微封装技术和印制板制造技术的不断发展,印制电路板变得越来越小,密度越来越大,复杂程度越来越高,使用万用表、示波器测试芯片的传统“探针”方法已不能满足要求。在这种背景下,早在20世纪80年代,联合测试行动组(Joint Test Action Group,简称JTAG)就起草了边界扫描测试(Boundary Scan Testing,简写BST)技术规范,后来在1990年被批准为IEEE标准1149.1-1990规定,简称JTAG标准。该规范提供了有效地测试引线间隔致密的电路板上元器件的能力。2.8 边界扫描测试技术null边界扫描测试有两大优点:一是方便芯片的故障定位,能迅速准确地测试两个芯片管脚的连接是否可靠,提高测试检验效率;二是具有JTAG接口的芯片,内置一些预先定义好的功能模式,通过边界扫描通道来使芯片处于某个特定的功能模式,以提高系统控制的灵活性,方便系统设计。null边界扫描技术是一种应用于数字集成电路器件的测试性结构设计方法。所谓“边界”是指测试电路被设置在IC器件逻辑功能电路的四周,位于靠近器件输入、输出引脚的边界处。所谓“扫描”是指连接器件各输入、输出引脚的测试电路实际上是一组串行移位寄存器,这种串行移位寄存器被叫做“扫描路径”,沿着这条路径可输入由“0” 和“1”组成的各种编码,对电路进行“扫描”式检测,从输出结果判断其是否正确。边界扫描技术的含义null边界扫描电路结构 提供了一个串行扫描路径,它能捕获器件核心逻辑的内容,也可以测试遵守JTAG规范的器件之间的引脚连接情况,而且可以在器件正常工作时捕获功能数据。 测试从左边一个边界扫描单元串行移入,捕获的数据从右边一个边界扫描单元串行移出,然后同标准数据进行比较,就能够知道芯片性能的好坏了。2.8 边界扫描测试技术null边界扫描IO引脚功能 null边界扫描数据移位方式 ISP(In-System Programming)在系统编程,指的是对器件、电路板或整个电子系统的逻辑功能可随时进行修改或重构的能力。这种重构和修改可以在产品设计、生产过程的任一环节进行,甚至是交付用户以后。ISP(In-System Programming)在系统编程,指的是对器件、电路板或整个电子系统的逻辑功能可随时进行修改或重构的能力。这种重构和修改可以在产品设计、生产过程的任一环节进行,甚至是交付用户以后。2.9 在系统编程在系统编程通过编程电缆和编程接口,将配置数据从计算机下载至具有ISP功能的芯片。ISP功能提高设计和应用的灵活性未编程前先焊接安装减少对器件的触摸和损伤 不计较器件的封装形式系统内编程--ISP样机制造方便 支持生产和测试流程中的修改在系统现场重编程修改允许现场硬件升级 迅速方便地提升功能ISP功能提高设计和应用的灵活性2.9 在系统编程null在系统编程一般采用IEEE 1149.1 JTAG接口进行,比如Altera的MAX7000、MAX3000等CPLD器件使用了TCK、TDO、TMS和TDI这四条JTAG信号线。 JTAG接口本来是用来进行边界扫描测试的,用它同时作为编程接口,可以减少对芯片引脚的占用,由此在IEEE 1149.1边界扫描测试接口规范的基础上产生了IEEE 1532编程标准,以对JTAG编程方式进行标准化。null下载接口引脚信号名称 USB-Blaster下载电缆null1.Lattice公司的FPGA/CPLD2.10 FPGA/CPLD器件概述2. Xilinx公司的FPGA/CPLD3.Altera公司的FPGA/CPLDnullLattice公司CPLD器件特点(1)高速:工作频率可以达到400MHz。 (2)超低功耗:超低的待机功耗。 (3)超大容量:最高达到1024个宏单元。 (4)支持全系列工作电压:提供1.8V、2.5V、3.3V、5V工作电压的芯片。2.10 FPGA/CPLD器件概述nullLattice公司CPLD器件系列 1. ispLSI器件的结构与特点 (1)采用UltraMOS工艺。 (2)系统可编程功能,所有的ispLSI器件均支持ISP功能。 (3)边界扫描测试功能。 (4)加密功能。 (5)短路保护功能。2.10 FPGA/CPLD器件概述nullLattice公司CPLD器件系列 2. ispMACH4000系列 3. Lattice EC & ECP系列 ispMACH4000系列CPLD器件有3.3V、2.5V 和 1.8V 三种供电电压,分别属于 ispMACH 4000V、ispMACH 4000B 和 ispMACH 4000C 器件系列。 nullLattice的可编程模拟芯片在系统可编程模拟电路(in system programmability Programmable Analog Circuits, ispPAC)也是Lattice的产品,PAC器件允许设计者使用开发软件在计算机中设计、修改模拟电路,进行电路特性模拟,最后通过编程电缆将设计下载至芯片,PAC器件可实现如下功能; (1)信号处理:能够对模拟信号进行放大、衰减、滤波。 (2)信号运算:对信号进行求和、求差、积分运算。 (3)信号转换:能把数字信号转换成模拟信号。2.10 FPGA/CPLD器件概述nullXilinx公司的FPGA和CPLD器件系列 1. Xilinx的FPGA 2. CPLD器件 3. Xilinx的配置器件SPROM4. Xilinx的IP核 nullXilinx公司的FPGA和CPLD器件系列 1. Xilinx的FPGA Xilinx在1985年首次推出了FPGA,在这之后,不断推出新的集成度更高、速度更快、价格更低的新一代器件。XC2000、XC4000、Spartan、Virtex、Virtex-E这些FPGA器件已经被淘汰,代之以新一代器件。 (1)Virtex-4、Virtex-II pro器件 (2)Spartan-3E、Spartan-3、Spartan-IIE和Spartan-II器件系列。nullXilinx公司的FPGA和CPLD器件系列 2. Xilinx的CPLD Xilinx的CPLD器件被广泛应用于通信、网络和计算机等数字产品中。XC9500系类器件采用快闪存储技术(FastFlash),比EECMOS工艺速度更快、功耗更低。XC9500XC9500XLXC9500XVCool Runner-II器件是Xilinx最新一代1.8V低功耗CPLD产品,适合用于电池供电的系统。nullXilinx公司的FPGA和CPLD器件系列 3. Xilinx的配置器件SPROMSPROM(Serial PROM)是用于存储FPGA配置数据的器件。Xilinx的SPROM器件主要包括XC18V10、XC18V00.nullXilinx公司的FPGA和CPLD器件系列 4. Xilinx的IP核(1)逻辑核(LogicCORE) (2)Alliance核nullAltera公司FPGA和CPLD器件系列 1. Stratix II 系列FPGA 2. Stratix系列FPGA 3. ACEX系列FPGA 4. FLEX系列FPGA 5. MAX系列CPLD 6. Cyclone系列FPGA低成本FPGA 7. Cyclone II系列FPGA 8. MAX II系列器件 9. Altera宏功能块及IP核 null2.11 PLD的发展趋势(1)大规模、高集成度方向发展。 (2)低电压、低功耗方向发展。 (3)高速可预测延时的方向发展。 (4)在PLD器件内嵌入更多功能模块。 (5)向模、数混合可编程方向发展。习 题 习 题 2-1 PLA和PAL在结构上有什么区别? 2-2 说明GAL的OLMC有什么特点,它怎样实现可编程组合电路和时序电路? 2-3 简述基于乘积项的可编程逻辑器件的结构特点? 2-4 基于查找表的可编程逻辑结构的原理是什么? 2-5 基于乘积项和基于查找表的结构各有什么优缺点? 2-6 CPLD和FPGA在结构上有什么明显的区别,各有什么特点? 2-7 FPGA器件中的存储器块有何作用?
/
本文档为【EDA技术与Verilog设计王金明版第2章】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索