《ch52 PLDukr.pptx》由会员分享,可在线阅读,更多相关《ch52 PLDukr.pptx(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述5.2.2 5.2.2 可编程只读存储器可编程只读存储器PROMPROM5.2.3 5.2.3 可编程逻辑阵列可编程逻辑阵列PLAPLA5.2.4 5.2.4 可编程阵列逻辑可编程阵列逻辑PALPAL5.2.5 5.2.5 通用阵列逻辑通用阵列逻辑GALGAL5.2.6 5.2.6 复杂可编程逻辑器件复杂可编程逻辑器件CPLDCPLD5.2.7 5.2.7 现场可编程门阵列现场可编程门阵列FPGAFPGA5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述A:要求设计一个逻辑函数:要求设计一个逻辑函数:P=(A2 XNOR B
2、2)XOR(A1 XNOR B1)XOR (A0 XNOR B0)5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述B:要求设计二个:要求设计二个10进制计数器,其中一个时钟为进制计数器,其中一个时钟为 1MHz,另一个时钟为另一个时钟为100kHz。(要求用同步设计)。(要求用同步设计)所用器件均为所用器件均为GAL20V10,其包括,其包括10个个I/O口、口、12个输入口、个输入口、10个寄存器单元,最高频率个寄存器单元,最高频率为为125MGAL22V10结构图GAL22V10输出逻辑宏单元结构图输出逻辑宏单元结构图结结 果果A:器件适配出错 无法实现设计B:器件适配出错 无
3、法实现设计无法实现的理由无法实现的理由A:该方程化简后有32个乘积项,需输出宏单元提供32个与门,但或门最多的管脚也只有16个与门B:该可编程器件所有寄存器的时钟脚都连到了一起,所以只能有一个时钟输入信号解决方案解决方案A:多级宏单元级连:多级宏单元级连将P=(A2 XNOR B2)XOR(A1 XNOR B1)XOR (A0 XNOR B0)改为:P1=(A2 XNOR B2)XOR(A1 XNOR B1)8个乘积项P=P1 XOR (A0 XNOR B0)4个乘积项B:选用其他器件:选用其他器件结结 论论我们有必要对可编程器件的硬我们有必要对可编程器件的硬件结构有一个较深入的了解。件结构有
4、一个较深入的了解。5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述任何组合逻辑电路都可表示为任何组合逻辑电路都可表示为与与或或表达式:表达式:用两级与用两级与或电路实现或电路实现任何时序逻辑电路都可组合逻辑电路和触发器组成任何时序逻辑电路都可组合逻辑电路和触发器组成5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述与与或或阵列的两种物理实现形式阵列的两种物理实现形式 用实际的与用实际的与或电路实现或电路实现 由查找表(由查找表(LUT)实现)实现 5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述 查找表(查找表(Look Up Table)实际上是用静态)实际
5、上是用静态存储器(存储器(SRAM)构成函数发生器。)构成函数发生器。可一实现任意可一实现任意4变量的组合电路变量的组合电路 5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述用用LUT实现逻辑电路的例子实现逻辑电路的例子实际逻辑电路实际逻辑电路LUT的实现方式的实现方式a,b,c,d输入输入逻辑输出逻辑输出地址地址RAM中存储的内容中存储的内容0 0 0 00 0 0 11 1 1 1.0001000000011111.00015.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述 查找表结构器件查找表结构器件5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述A B
6、 C D4.PLDPLD的逻辑符号表示方法的逻辑符号表示方法固定连接固定连接编程连接编程连接F1=ABC5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述4.PLDPLD的逻辑符号表示方法的逻辑符号表示方法5.2.1 5.2.1 可编程逻辑器件概述可编程逻辑器件概述特点:与阵列固定、或阵列可编程特点:与阵列固定、或阵列可编程与阵列与阵列或阵列或阵列与阵列与阵列最小项最小项 或阵列或阵列最小项的和项最小项的和项5.2.2 5.2.2 可编程只读存储器可编程只读存储器PROMPROM例:用例:用PROM实现以下逻辑函数:实现以下逻辑函数:对于大多数逻辑函数而言,对于大多数逻辑函数而言,并
7、不需要使用全部最小项,造成并不需要使用全部最小项,造成浪费浪费 5.2.2 5.2.2 可编程只读存储器可编程只读存储器PROMPROM5.2.3 5.2.3 可编程逻辑阵列可编程逻辑阵列PLAPLA特点:与阵列、或阵列均可编程特点:与阵列、或阵列均可编程例:用例:用PLA实现逻辑函数实现逻辑函数5.2.3 5.2.3 可编程逻辑阵列可编程逻辑阵列PLAPLAPAL的与阵列可编程,或阵列是固定的。的与阵列可编程,或阵列是固定的。5.2.4 5.2.4 可编程阵列逻辑可编程阵列逻辑PALPAL4 4种常见的种常见的PLDPLD输出电路结构输出电路结构(1)专用输出基本门阵列结构)专用输出基本门阵
8、列结构(2)带反馈的可编程带反馈的可编程IO结构结构 当当EN为为0时,三态缓冲器输出为高阻态,对应的时,三态缓冲器输出为高阻态,对应的IO引引脚作为输入使用;脚作为输入使用;当当EN为为1时,三态缓冲器处于工作状态,对应的时,三态缓冲器处于工作状态,对应的IO引引脚作为输出使用。脚作为输出使用。4 4种常见的种常见的PLDPLD输出电路结构输出电路结构 输出端为一个可输出端为一个可编程控制的三态缓编程控制的三态缓冲器,输出端经过冲器,输出端经过一个互补输出的缓一个互补输出的缓冲器反馈到与逻辑冲器反馈到与逻辑阵列上。阵列上。(3)带异或门的输入输出结构)带异或门的输入输出结构m2m3m7F(A
9、,B,C)F(A,B,C)=14 4种常见的种常见的PLDPLD输出电路结构输出电路结构(4)寄存器型输出结构)寄存器型输出结构适合于实现计数器、移位寄存器等时序逻辑电路适合于实现计数器、移位寄存器等时序逻辑电路4 4种常见的种常见的PLDPLD输出电路结构输出电路结构 阵列容量较小,不适合于实现规模较大的设计对阵列容量较小,不适合于实现规模较大的设计对象。象。片内触发器资源不足。不能适用于规模较大的时片内触发器资源不足。不能适用于规模较大的时序电路。序电路。输入、输出控制不够完善,限制了芯片硬件资源输入、输出控制不够完善,限制了芯片硬件资源的利用率和它与外部电路连接的灵活性。的利用率和它与外
10、部电路连接的灵活性。编程下载必须将芯片插入专用设备,使得编程不编程下载必须将芯片插入专用设备,使得编程不够方便,设计人员够方便,设计人员 企盼提供一种更加直捷、不企盼提供一种更加直捷、不必拔插待编程芯片就可下载的编程技术。必拔插待编程芯片就可下载的编程技术。简单可编程逻辑器件存在的问题简单可编程逻辑器件存在的问题 CPLD是由是由 简单可编程逻辑器件发展起来简单可编程逻辑器件发展起来的的,其主体结构仍是与或阵列其主体结构仍是与或阵列。自从自从 90年代初年代初 Lattice公司高性能的具有公司高性能的具有在系统可编程在系统可编程 ISP(In System Programmable)功能的功
11、能的 CPLD以来以来,CPLD获得了迅速发展。获得了迅速发展。CPLD主流产品:主流产品:Altera 公司公司MAX7000系列;系列;MAX3000系列;系列;MAX II系列。系列。特特 性性EMP7032SEMP7064SEMP7128SEMP7192SEMP7256S可用可用门门数数6001250250037505000宏宏单单元数元数3264128192256逻辑阵逻辑阵列列块块2481216最多可用最多可用I/O引脚引脚3668100124164Tpd(ns)5567.57.5fCNT(MHz)175.4175.4147.1125128.2Altera 公司公司MAX7000系
12、列系列基于基于E2PROM的的PLD5.0V电源电压电源电压具有具有JTAG接口和接口和ISP功能功能芯片容量从芯片容量从6005000门门引脚至引脚之间的延迟引脚至引脚之间的延迟5nS多种封装形式多种封装形式44Pin208Pin多电压多电压I/O接口,可以与接口,可以与3.3V和和5V器件接口器件接口 PLCC封装封装,84PinTQFP封装封装,100Pin逻辑阵列块逻辑阵列块宏单元宏单元可编程连线阵可编程连线阵PIA I/O控制块控制块可编程触发器可编程触发器 可编程与阵列可编程与阵列和固定的或阵列和固定的或阵列 从从逻逻辑辑单单元元结结构构可可以以看看到到,既既可可实实现现组组合合逻
13、逻辑辑电电路路也可实现时序逻辑电路。也可实现时序逻辑电路。通过在可编程连线阵上布线,将不同的通过在可编程连线阵上布线,将不同的LAB相互连接,构成所需逻辑。相互连接,构成所需逻辑。MAX7000S的专的专用输入、用输入、I/O引脚和宏单元输出都连接到引脚和宏单元输出都连接到PIA,而,而PIA把这些信号送到器件内的各个地方。把这些信号送到器件内的各个地方。MAX7000S的的PIA具有固定延时,从而消除了信具有固定延时,从而消除了信号之间的延迟偏移,使时间性能更容易预测。号之间的延迟偏移,使时间性能更容易预测。可编程连线阵列可编程连线阵列PIA I/O控制块控制块三态缓冲器三态缓冲器 多电压(
14、多电压(Multivolt)I/O接口接口VCCINT接接5.0V电电源源当当VCCIO接接5.0V电源,电源,输出电平与输出电平与5.0V系统兼系统兼容容当当VCCIO接接3.3V电源,电源,输出电平与输出电平与3.3V系统兼系统兼容容 FPGA是一种高密度的可编程逻辑器件是一种高密度的可编程逻辑器件,自从自从Xilinx公司公司1985年推出第一片年推出第一片FPGA以来以来,FPGA的集的集成密度和性能提高很快成密度和性能提高很快,其集成密度最高达其集成密度最高达1000万门万门/片以上片以上,系统性能可达系统性能可达300MHz。由于。由于FPGA器件集器件集成度高成度高,方便易用方便
15、易用,开发和上市周期短开发和上市周期短,在数字设计和在数字设计和电子生产中得到迅速普及和应用。电子生产中得到迅速普及和应用。主流芯片主流芯片 Altera 公司:公司:Cyclone系列,系列,CycloneII系列系列,CycloneIII系列系列 CycloneII系列器件性能对照表系列器件性能对照表特特 性性EP2C5EP2C8EP2C20EP2C35EP2C50EP2C70LEs4608825618752332165052868416M4K RAM块块263652105129250总总比特数比特数1198081658882396164838405944321152000嵌入式乘法器嵌入
16、式乘法器1318263586150PLLs224444最多最多I/O引脚引脚158182315475450622逻辑单元逻辑单元LELE 嵌入式存储器块嵌入式存储器块 嵌入存储器由嵌入存储器由4Kbit(4096存储位)的存储位)的M4K 存储器块存储器块组成组成M4K存储器块的数据传输率超过存储器块的数据传输率超过250MHz。每个每个M4K RAM 块能够构成不同类型的存储器,包括真双块能够构成不同类型的存储器,包括真双口口RAM、简单双口、简单双口RAM、单口、单口RAM、ROM 和和FIFO。支持混合宽度模式,端口位宽根据需要可配置成支持混合宽度模式,端口位宽根据需要可配置成4K1、2
17、K2、1K4、5128、5129、25616、25618、12832、12836等多种尺寸。等多种尺寸。单口单口RAM 单口单口RAM 读写时序读写时序简单双口简单双口RAM 简单双口简单双口RAM 读写时序读写时序ROM 可编程可编程I/O单元(单元(I/O Element)PLL Cyclone II器件内部锁相环器件内部锁相环PLL提供了很强的定时管理能提供了很强的定时管理能力,如频率合成、可编程相移、可编程占空周期、可编程带力,如频率合成、可编程相移、可编程占空周期、可编程带宽、扩频输入时钟、锁定检测及支持差分宽、扩频输入时钟、锁定检测及支持差分I/O的输出。的输出。器件PLL1PLL
18、2PLL3PLL4EP2C5EP2C8EP2C20EP2C35EP2C50EP2C70PLL FPGA vs CPLD集成度集成度:FPGA:FPGA可以达到比可以达到比 CPLD CPLD更高的集成度更高的集成度,同时同时也具有更复杂的布线结构和逻辑实现也具有更复杂的布线结构和逻辑实现。适合结构适合结构:FPGA:FPGA更适合于触发器丰富的结构更适合于触发器丰富的结构,而而 CPLDCPLD更适合于触发器有限而积项丰富的结构。更适合于触发器有限而积项丰富的结构。编程编程:CPLD:CPLD通过修改具有固定内连电路的逻辑功能来通过修改具有固定内连电路的逻辑功能来编程编程,FPGA,FPGA主
19、要通过改变内部连线的布线来编程主要通过改变内部连线的布线来编程 ;FPGA;FPGA可在逻辑门下编程可在逻辑门下编程,而而 CPLD CPLD是在逻辑块下编是在逻辑块下编程程,在编程上在编程上 FPGA FPGA比比 CPLD CPLD具有更大的灵活性具有更大的灵活性FPGA vs CPLD功率消耗功率消耗 CPLD的缺点比较突出。一般情况下的缺点比较突出。一般情况下,CPLD功耗功耗要比要比 FPGA大大,且集成度越高越明显且集成度越高越明显速度速度 CPLD优于优于 FPGA。由于。由于 FPGA是门级编程,且是门级编程,且 CLB之间是采用分布式互连;而之间是采用分布式互连;而 CPLD
20、是逻辑块级是逻辑块级编程编程,且其逻辑块互连是集总式的。因此,且其逻辑块互连是集总式的。因此,CPLD比比 FPGA有较高的速度和较大的时间可预测性,产品有较高的速度和较大的时间可预测性,产品可以给出引脚到引脚的最大延迟时间。可以给出引脚到引脚的最大延迟时间。FPGA vs CPLD编程方式编程方式 目前的目前的 CPLD主要是基于主要是基于E2 PROM或或 FLASH存存储器编程储器编程,编程次数达编程次数达 1万次。其优点是在系统断电万次。其优点是在系统断电后,编程信息不丢失。后,编程信息不丢失。CPLD又可分为在编程器上编又可分为在编程器上编程和在系统编程程和在系统编程(ISP)CPL
21、D两种。两种。FPGA大部分是基于大部分是基于 SRAM编程编程,其缺点是编程其缺点是编程数据信息在系统断电时丢失数据信息在系统断电时丢失,每次上电时每次上电时,需从器件需从器件的外部存储器或计算机中将编程数据写入的外部存储器或计算机中将编程数据写入 SRAM中。中。其优点是可进行任意次数的编程其优点是可进行任意次数的编程,并可在工作中快速并可在工作中快速编程编程,实现板级和系统级的动态配置实现板级和系统级的动态配置,因此可称为在因此可称为在线重配置的线重配置的 PLD或可重配置硬件或可重配置硬件FPGA vs CPLD使用方便性使用方便性 CPLD比比 FPGA要好。要好。CPLD的编程工艺
22、采用的编程工艺采用 E2 CPLD的编程工艺,无需外部存储器芯片,使用简的编程工艺,无需外部存储器芯片,使用简单,保密性好。而基于单,保密性好。而基于 SRAM编程的编程的FPGA,其编程其编程信息需存放在外部存储器上,需外部存储器芯片信息需存放在外部存储器上,需外部存储器芯片,且使用方法复杂,保密性差。且使用方法复杂,保密性差。世界主要PLD厂商世界主要PLD厂商 FPGAFPGAFPGAFPGA的发明者,老牌的发明者,老牌的发明者,老牌的发明者,老牌PLDPLDPLDPLD公司,是最大可编程逻公司,是最大可编程逻公司,是最大可编程逻公司,是最大可编程逻辑器件供应商之一。产品种类较全,主要有
23、:辑器件供应商之一。产品种类较全,主要有:辑器件供应商之一。产品种类较全,主要有:辑器件供应商之一。产品种类较全,主要有:XC9500/4000XC9500/4000XC9500/4000XC9500/4000,Coolrunner(XPLA3)Coolrunner(XPLA3)Coolrunner(XPLA3)Coolrunner(XPLA3),Spartan,Spartan,Spartan,Spartan,Vertex Vertex Vertex Vertex。开发软件为:。开发软件为:。开发软件为:。开发软件为:Foundition3.1i Foundition3.1i Founditi
24、on3.1i Foundition3.1i。通常来说,。通常来说,。通常来说,。通常来说,在欧洲用在欧洲用在欧洲用在欧洲用XilinxXilinxXilinxXilinx的人多,在日本和亚太地区用的人多,在日本和亚太地区用的人多,在日本和亚太地区用的人多,在日本和亚太地区用ALTERAALTERAALTERAALTERA的人多,在美国则是平分秋色。全球的人多,在美国则是平分秋色。全球的人多,在美国则是平分秋色。全球的人多,在美国则是平分秋色。全球PLD/FPGAPLD/FPGAPLD/FPGAPLD/FPGA产品产品产品产品60%60%60%60%以上是由以上是由以上是由以上是由AlteraA
25、lteraAlteraAltera和和和和XilinxXilinxXilinxXilinx提供的。可以讲提供的。可以讲提供的。可以讲提供的。可以讲AlteraAlteraAlteraAltera和和和和XilinxXilinxXilinxXilinx共同决定了共同决定了共同决定了共同决定了PLDPLDPLDPLD技术的发展方向技术的发展方向技术的发展方向技术的发展方向。世界主要PLD厂商世界主要PLD厂商谢谢观看/欢迎下载BY FAITH I MEAN A VISION OF GOOD ONE CHERISHES AND THE ENTHUSIASM THAT PUSHES ONE TO SEEK ITS FULFILLMENT REGARDLESS OF OBSTACLES.BY FAITH I BY FAITH