《第3章PLD硬件特性与编程技术.ppt》由会员分享,可在线阅读,更多相关《第3章PLD硬件特性与编程技术.ppt(69页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、EDAEDA技术与技术与VHDL VHDL 第第3 3章章FPGA/CPLDFPGA/CPLD结构与应用结构与应用 2021/9/1713.1 3.1 概概 述述 1。基本基本PLD器件的原理结构图(乘积器件的原理结构图(乘积项逻辑可编程结构)项逻辑可编程结构)组合逻辑函数可化为与或表达式,用与门组合逻辑函数可化为与或表达式,用与门-或门二级电路实现或门二级电路实现。时序逻辑电路由组合电路加上存储元件构成。时序逻辑电路由组合电路加上存储元件构成。2。SRAM查找表结构:逻辑函数发生采用查找表结构:逻辑函数发生采用RAM”数据数据”查找的方式,并查找的方式,并使用多个查找表构成一个查找表阵列,称
2、为可编程门阵列(使用多个查找表构成一个查找表阵列,称为可编程门阵列(PGA)。)。2021/9/1723.1 3.1 概概 论论 3.1.1 PLD3.1.1 PLD的发展历程的发展历程 熔丝编程的熔丝编程的PROM和和PLA器件器件 AMD公公司推出司推出PAL器件器件 GAL器件器件 FPGA器器件件 EPLD器器件件 CPLD器器件件 内嵌复杂内嵌复杂功能模块功能模块的的SoPC 2021/9/1733.1 3.1 概概 论论 3.1.2 PLD3.1.2 PLD的分类的分类 1 1。集成度分类。集成度分类2021/9/1743.1 3.1 概概 论论 3 3 工艺分类工艺分类 1 1熔
3、丝熔丝(Fuse)型器件。型器件。2 2反熔丝反熔丝(Anti-fuse)(Anti-fuse)型器件型器件 。3 3EPROMEPROM型。称为紫外线擦除电可编程逻辑器件型。称为紫外线擦除电可编程逻辑器件4 4EEPROMEEPROM型型 。电可擦除。电可擦除5 5SRAMSRAM型型 。信息放在。信息放在RAMRAM中,断电丢失,上电再次配置中,断电丢失,上电再次配置 6 6FlashFlash型型 。多次编程,不需重新配置。多次编程,不需重新配置 乘积项结构乘积项结构(与与-或阵列或阵列):CPLDCPLD查找表结构(查找表结构(SRAMSRAM):):FPGAFPGA 2 2 结构分类
4、结构分类 2021/9/1753.2 3.2 简单简单PLDPLD原理原理 3.2.1 3.2.1 电路符号表示电路符号表示 图图3 3-3 常用逻辑门符号与现有国标符号的对照常用逻辑门符号与现有国标符号的对照 2021/9/1763.2.1 3.2.1 电路符号表示电路符号表示 图图3 3-4 PLD的互补缓冲器的互补缓冲器 图图3 3-5 PLD的互补输入的互补输入 图图3 3-6 PLD中与阵列表示中与阵列表示 图图3 3-7 PLD中或阵列的表示中或阵列的表示 3-8 阵列线连接表示阵列线连接表示 2021/9/1773.2 3.2 简单简单PLDPLD原理原理 3.2.2 PROM
5、图图3 3-9 PROM基本结构基本结构 2021/9/1783.2 3.2 简单简单PLDPLD原理原理 PROM中的地址译码器是完成中的地址译码器是完成PROM存储阵列的行存储阵列的行的选择,其逻辑函数是:的选择,其逻辑函数是:2021/9/1793.2 3.2 简单简单PLDPLD原理原理 PROM中的存储单元阵列输出,其逻辑函数(乘积项)是:中的存储单元阵列输出,其逻辑函数(乘积项)是:2021/9/17103.2 3.2 简单简单PLDPLD原理原理 图图3 3-10 PROM的逻辑阵列结构的逻辑阵列结构 2021/9/17113.2 3.2 简单简单PLDPLD原理原理 42 PR
6、OM:图图3 3-11 PROM表达的表达的PLD阵列图阵列图 W0W1W2W32021/9/17123.2 3.2 简单简单PLDPLD原理原理 半加器半加器 的布尔表达式(乘积项的布尔表达式(乘积项表达式):表达式):图图3 3-12 用用PROM完成半加器逻辑阵列完成半加器逻辑阵列 2021/9/17133.2 3.2 简单简单PLDPLD原理原理 3.2.3 PLA 图图3 3-13 PLA逻辑阵列示意图逻辑阵列示意图 2021/9/17143.2 3.2 简单简单PLDPLD原理原理 3.2.3 PLA 图图3 3-14 PLA与与 PROM的比较的比较 2021/9/17153.2
7、 3.2 简单简单PLDPLD原理原理 3.2.4 PAL 图图3 3-15 PAL结构结构 图图3 3-16 PAL的常用表示的常用表示 2021/9/1716图图3 3-17 一种一种PAL16V8的部分结构图的部分结构图 2021/9/17173.2.5 GAL 图图3 3-18 GAL16V8的的结构图结构图 2021/9/17183.2 3.2 简单简单PLDPLD原理原理 3.2.5 GAL:与阵列可编程、或阵列固定、输出部分增加了与阵列可编程、或阵列固定、输出部分增加了输出输出 逻辑宏单元逻辑宏单元OLMCOLMC(Output Logic Macro CellOutput Lo
8、gic Macro Cell)图图3 3-19 寄存器输出结构寄存器输出结构 1寄存器模式。寄存器模式。图图3 3-20 寄存器模式组合双向输出结构寄存器模式组合双向输出结构 2021/9/17193.2 3.2 简单简单PLDPLD原理原理 3.2.5 GAL 图图3 3-21 组合输出双向结构组合输出双向结构 2复合模式。复合模式。图图3 3-22 复合型组合输出结构复合型组合输出结构 2021/9/17203.2 3.2 简单简单PLDPLD原理原理 3.2.5 GAL 图图3 3-23 反馈输入结构反馈输入结构 3简单模式。简单模式。图图3 3-24 输出反馈结构输出反馈结构 图图3
9、3-25 简单模式输出结构简单模式输出结构 2021/9/1721MAX7000B包含五个部分:逻辑阵列块、宏单元、扩展乘积项、可编程连线阵列、I/O控制块。每16个宏单元组成一个逻辑阵列块。3.3 CPLD3.3 CPLD的结构与工作原理的结构与工作原理 2021/9/17223.3 CPLD3.3 CPLD的结构与工作原理的结构与工作原理 图图3 3-27 MAX7128S的结构的结构 1逻辑阵列块逻辑阵列块(LAB:Logic Array Block)2021/9/17233.3 CPLD3.3 CPLD的结构与工作原理的结构与工作原理 2 2宏单元宏单元:可配置为时序逻辑和组合逻辑工作
10、方式可配置为时序逻辑和组合逻辑工作方式组成:逻辑阵列、组成:逻辑阵列、乘积项选择矩阵乘积项选择矩阵、可编程寄存器、可编程寄存器 1.1.全局时钟信号。全局时钟信号。2.2.全局时钟信号由高电平有效的时钟信号使能。全局时钟信号由高电平有效的时钟信号使能。3.3.用乘积项实现一个阵列时钟。用乘积项实现一个阵列时钟。可编程寄存器的可编程寄存器的三种时钟输入模式:。三种时钟输入模式:。2021/9/17243.3 CPLD3.3 CPLD的结构与工作原理的结构与工作原理 图图3 3-26 MAX7000系列的单个宏单元结构系列的单个宏单元结构 2021/9/17253.3 CPLD3.3 CPLD的结
11、构与工作原理的结构与工作原理 3 3扩展乘积项扩展乘积项 图图3 3-28 共享扩展乘积项结构共享扩展乘积项结构 2021/9/17263 3扩展乘积项扩展乘积项 图图3 3-29 并联扩展项馈送方式并联扩展项馈送方式 并联扩展项并联扩展项 2021/9/17273.3 CPLD3.3 CPLD的结构与工作原理的结构与工作原理 4 4可编程连线阵列可编程连线阵列(PIA:Programmable Interconnect Array(PIA:Programmable Interconnect Array)图图3 3-30 PIA信号布线到信号布线到LAB的方式的方式 2021/9/17285
12、5I/OI/O控制块:可被配置为输入、输出和双向工作方式控制块:可被配置为输入、输出和双向工作方式 图图3 3-31 EPM7128S器件的器件的I/O控制块控制块 2021/9/17293.4 FPGA3.4 FPGA的结构与工作原理的结构与工作原理 3.4.1 3.4.1 查找表逻辑结构(查找表逻辑结构(LUTLUT:Look Up TableLook Up Table)图图3 3-32 FPGA查找表单元查找表单元 2021/9/17303.4.1 3.4.1 查找表逻辑结构查找表逻辑结构 图图3 3-33 FPGA查找表单元内部结构查找表单元内部结构 2021/9/17313.4.2
13、Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 图图3 3-34 Cyclone LE结构图结构图 2021/9/17323.4.2 Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 图图3 3-35 Cyclone LE普通模式普通模式(适合通用逻辑应用和组合逻辑实现)(适合通用逻辑应用和组合逻辑实现)可编程资源为逻辑阵列块。逻辑阵列块由多个逻辑单元可编程资源为逻辑阵列块。逻辑阵列块由多个逻辑单元LE组组成。成。LE:Logic Element。逻辑单元。逻辑单元:由一个四输入的查找:由一个四输入的查找表、进位链逻辑和一个可编
14、程寄存器构成。表、进位链逻辑和一个可编程寄存器构成。2021/9/17333.4.2 Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 图图3 3-36 Cyclone LE动态算术模式:加法器、计数器、累加器等动态算术模式:加法器、计数器、累加器等 2021/9/17343.4.2 Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 图图3 3-37 Cyclone LAB结构结构 2021/9/17353.4.2 Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 图图3 3-38 LAB阵列阵列
15、2021/9/17363.4.2 Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 图图3 3-39 LAB控制信号生成控制信号生成 2021/9/17373.4.2 Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 图图3 3-40 快速进位选择链快速进位选择链 2021/9/17383.4 FPGA3.4 FPGA的结构与工作原理的结构与工作原理 图图3 3-41 LUT链和寄存器链的使用链和寄存器链的使用 3.4.2 Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 2021/9/17393.
16、4 FPGA3.4 FPGA的结构与工作原理的结构与工作原理 图图3 3-42 LVDS连接连接 3.4.2 Cyclone3.4.2 Cyclone系列器件的结构与原理系列器件的结构与原理 2021/9/1740CPLDCPLD与与FPGAFPGA开发应用选择开发应用选择对于普通规模且产量不是很大的产品,使用CPLD。价格便宜、在系统可编程、可固定下载。对于大规模的逻辑设计、ASIC设计或单片系统设计,多采用FPGA。有大规模逻辑资源、低功耗。需要配置ROM芯片。2021/9/17413.5 3.5 硬件测试技术硬件测试技术 图图3 3-43 边界扫描电路结构边界扫描电路结构,边界扫描测试(
17、,边界扫描测试(BST:Board Scan Test)3.5.1 3.5.1 内部逻辑测试内部逻辑测试 3.5.2 JTAG3.5.2 JTAG边界扫描测试边界扫描测试(Joint Test Action Group(Joint Test Action Group 联合测试行动组,联合测试行动组,IEEE1149.1-1990IEEE1149.1-1990边界扫描技术规范)边界扫描技术规范)2021/9/17423.5.2 JTAG3.5.2 JTAG边界扫描测试边界扫描测试 引引 脚脚描描 述述功功 能能TDI测试数据输入测试数据输入(Test Data Input)测测试试指指令令和和编
18、编程程数数据据的的串串行行输输入入引引脚脚。数数据据在在TCK的的上升沿移入。上升沿移入。TDO测试数据输出测试数据输出(Test Data Output)测测试试指指令令和和编编程程数数据据的的串串行行输输出出引引脚脚,数数据据在在TCK的的下下降降沿沿移移出出。如如果果数数据据没没有有被被移移出出时时,该该引引脚脚处处于于高高阻态。阻态。TMS测试模式选择测试模式选择(Test Mode Select)控控制制信信号号输输入入引引脚脚,负负责责TAP控控制制器器的的转转换换。TMS必必须在须在TCK的上升沿到来之前稳定。的上升沿到来之前稳定。TCK测试时钟输入测试时钟输入(Test Clo
19、ck Input)时时钟钟输输入入到到BST电电路路,一一些些操操作作发发生生在在上上升升沿沿,而而另另一些发生在下降沿。一些发生在下降沿。TRST测试复位输入测试复位输入(Test Reset Input)低低电电平平有有效效,异异步步复复位位边边界界扫扫描描电电路路(在在IEEE规规范范中中,该引脚可选该引脚可选)。表表3 3-1 边界扫描边界扫描IO引脚功能引脚功能 2021/9/1743图图3 3-44 边界扫描数据移位方式边界扫描数据移位方式 3.5.2 JTAG3.5.2 JTAG边界扫描测试边界扫描测试 2021/9/1744图图3 3-45 JTAG BST系系统内部结构统内部
20、结构 3.5.2 JTAG3.5.2 JTAG边界扫描测试边界扫描测试 2021/9/1745图图3 3-46 JTAG BST系统与与系统与与FPGA器件关联结构图器件关联结构图 2021/9/17463.5 3.5 硬件测试技术硬件测试技术 图图3 3-47 JTAG BST选择命令模式时序选择命令模式时序 3.5.2 JTAG3.5.2 JTAG边界扫描测试边界扫描测试 2021/9/17473.5 3.5 硬件测试技术硬件测试技术 3.5.2 JTAG3.5.2 JTAG边界扫描测试边界扫描测试 TAP控制器的命令模式有:控制器的命令模式有:SAMPLEPRELOAD指令模式指令模式
21、EXTEST指令模式指令模式 BYPASS指令模式指令模式 IDCODE指令模式指令模式 USERCODE指令模式指令模式 3.5.3 3.5.3 嵌入式逻辑分析仪嵌入式逻辑分析仪 2021/9/17483.6 FPGA/CPLD3.6 FPGA/CPLD产品概述产品概述 3.6.1 Lattice3.6.1 Lattice公司公司CPLDCPLD器件系列器件系列 1.ispLSI器件系列器件系列(1)ispLSI1000E系列。系列。(2)ispLSI2000E/2000VL/200VE系列。系列。(3)ispLSI5000V系列。系列。(4)ispLSI 8000/8000V系列。系列。I
22、SP:In-System Programmability 在系统编程在系统编程 2021/9/17493.6 FPGA/CPLD3.6 FPGA/CPLD产品概述产品概述 3.6.1 Lattice3.6.1 Lattice公司公司CPLDCPLD器件系列器件系列 ispLSI器件的结构与特点器件的结构与特点(1)采用)采用UltraMOS工艺。工艺。(2)系统可编程功能,所有的)系统可编程功能,所有的ispLSI器件均支持器件均支持 ISP功能。功能。(3)边界扫描测试功能。)边界扫描测试功能。(4)加密功能。)加密功能。(5)短路保护功能。)短路保护功能。2021/9/17503.6 FP
23、GA/CPLD3.6 FPGA/CPLD产品概述产品概述 3.6.1 Lattice3.6.1 Lattice公司公司CPLDCPLD器件系列器件系列 2.ispMACH4000系列系列 3.Lattice EC&ECP系列系列,FPGA ispMACH4000系列系列CPLD器件有器件有3.3V、2.5V 和和 1.8V 三种供电电压,分别属于三种供电电压,分别属于 ispMACH 4000V、ispMACH 4000B 和和 ispMACH 4000C 器件系列。器件系列。2021/9/17513.6 FPGA/CPLD3.6 FPGA/CPLD产品概述产品概述 3.6.2 Xilinx
24、3.6.2 Xilinx 公司的公司的FPGAFPGA和和CPLDCPLD器件系列器件系列 1.Virtex-4系列系列FPGA 2.Spartan&Spartan-3&Spartan 3E器件系列器件系列 FPGA3.XC9500&XC9500XL系列系列CPLD 4.Xilinx FPGA配置器件配置器件SPROM:用于存储:用于存储FPGA配置数据配置数据5.Xilinx的的IP核核 2021/9/17523.6 FPGA/CPLD3.6 FPGA/CPLD产品概述产品概述 3.6.3 Altera3.6.3 Altera公司公司FPGAFPGA和和CPLDCPLD器件系列器件系列 1.
25、Stratix II 系列系列FPGA 2.Stratix系列系列FPGA 3.ACEX系列系列FPGA:EP1K100QC208_34.FLEX系列系列FPGA 5.MAX系列系列CPLD 6.Cyclone系列系列FPGA(低成本低成本FPGA)7.Cyclone II系列系列FPGA 8.MAX II系列器件系列器件 9.Altera宏功能块及宏功能块及IP核核 2021/9/17532021/9/17542021/9/17552.2.3 ACEX1K系列产品 nACEX1K是 Altera 公司2000年推出的 2.5 V、低价格 SRAM工艺PLD(FPGA)器件,其结构与FLEX1
26、0KE非常类似(详细结构和功能请参看FLEX10KE系列器件),带嵌入式存储块(EAB),每个嵌入式存储块(EAB)的容量为 4 kbit。在逻辑单元(LE)数量与 EAB数量方面,ACEX1K的 EP1K30、EP1K50、EP1K100器件分别和FLEX10KE的EPF10K30E、EPF10K50E、EPF10K100E器件对应相等。ACEX1K系列产品的主要技术特性如表2.2.5所示。2021/9/1756特性EP1K10 EP1K30EP1K50 EP1K100典型门数10,00030,00050,000100,000最大系统门数56,000119,000199,000257,000
27、逻辑单元数5761,7282,8804,992EAB数361012全部RAM位数12,28824,57640,96049,152最大用户I/O引脚数 136171249333表2.2.5 ACEX1K系列产品的主要技术特性 2021/9/1757nACEX1K器件将查找表(LUT)和 EAB相结合。基于LUT逻辑对数据路径管理、寄存器、数学计算或数字信号处理(DSP)的设计提供优化的性能和效率,而 EAB可实现 RAM、ROM、双口 RAM或 FIFO功能。ACEX1K具有复杂逻辑及存储器功能,可以在数字信号处理、宽域数据路径管理、数据变换和微处理器等中应用。基于可重构CMOS SRAM单元,
28、ACEX1K结构具有实现一般门阵列宏功能需要的所有特征,相应多的引脚数提供与系统元器件的有效接口。先进的复杂逻辑及存储器处理功能和 2.5 V低电压电源要求,使得ACEX1K器件能够满足廉价、高容量的应用需要,如DSL调制解调器及低价的交换机。2021/9/17583.6 FPGA/CPLD3.6 FPGA/CPLD产品概述产品概述 3.6.4 Actel3.6.4 Actel公司的公司的FPGAFPGA器件器件 3.6.5 Altera3.6.5 Altera公司的公司的FPGAFPGA配置方式与配置器件配置方式与配置器件 器器 件件功能描述功能描述封装形式封装形式EPC216956801位
29、,位,3.3/5V供电供电20脚脚PLCC、32 脚脚 TQFPEPC110464961位,位,3.3/5V供电供电8脚脚PDIP、20脚脚PLCCEPC1441440 8001位,位,3.3/5V供电供电8脚脚PDIP、20脚脚PLCC表表3 3-2 Altera FPGA常用配置器件常用配置器件 1.主动配置:由主动配置:由FPGA器件引导配置过程,它控制着外部存储器和初始化过程器件引导配置过程,它控制着外部存储器和初始化过程2.被动配置:由外部计算机或控制器控制配置过程被动配置:由外部计算机或控制器控制配置过程2021/9/17593.7 3.7 编程与配置编程与配置 表表3 3-3 B
30、yteBlaster MV并行下载电缆并行下载电缆接口各引脚信号名称接口各引脚信号名称 基于乘积项(电可擦除存储单元的基于乘积项(电可擦除存储单元的EEPROM或或Flash技术)。技术)。CPLDCPLD:编程:编程基于基于SRAM查找表的编程单元。查找表的编程单元。FPGAFPGA:配置:配置 基于反熔丝编程单元。基于反熔丝编程单元。OTP器件器件引脚引脚12345678910PS模式模式DCKGNDCONF_DONEVCCnCONFIG-nSTATUS-DATA0GNDJATG模式模式TCKGNDTDOVCCTMS-TDIGND2021/9/17603.7 3.7 编程与配置编程与配置
31、3.7.1 JTAG3.7.1 JTAG方式的在系统编程方式的在系统编程 图图3 3-48 CPLD编程下载连接图编程下载连接图 2021/9/17613.7 3.7 编程与配置编程与配置 3.7.1 JTAG3.7.1 JTAG方式的在系统编程方式的在系统编程 (ISPISP)图图3 3-49 多多CPLD芯片芯片ISP编程连接方式编程连接方式 2021/9/17623.7 3.7 编程与配置编程与配置 3.7.2 3.7.2 使用使用PCPC并行口配置并行口配置FPGA FPGA 在线可重配置在线可重配置(ICR:(ICR:In-Circuit Reconfigurability)In-C
32、ircuit Reconfigurability)图图3 3-50 PS模式,模式,FLEX10K配置时序配置时序 2021/9/17633.7.2 3.7.2 使用使用PCPC并行口配置并行口配置FPGAFPGA 图图3 3-51 多多FPGA芯片配置电路芯片配置电路 2021/9/17643.7 3.7 编程与配置编程与配置 3.7.3 FPGA3.7.3 FPGA专用配置器件专用配置器件 图图3 3-53 FPGA的配置电路原理图的配置电路原理图(注,此图来自(注,此图来自Altera资料,中间一上拉线应串资料,中间一上拉线应串1K电阻)电阻)2021/9/17653.7 3.7 编程与
33、配置编程与配置 3.7.3 FPGA3.7.3 FPGA专用配置器件专用配置器件 图图3 3-54 EPCS器件配置器件配置FPGA的电路原理图的电路原理图 2021/9/17663.7 3.7 编程与配置编程与配置 3.7.4 3.7.4 使用单片机配置使用单片机配置FPGA FPGA 图图3 3-55 用用89C52进行配置进行配置 2021/9/17673.7 3.7 编程与配置编程与配置 3.7.5 3.7.5 使用使用CPLDCPLD配置配置FPGA FPGA 使用单片机配置的缺点:使用单片机配置的缺点:1、速度慢,不适用于大规模、速度慢,不适用于大规模FPGA和高可靠应用;和高可靠
34、应用;2、容量小,单片机引脚少,不适合接大的、容量小,单片机引脚少,不适合接大的ROM以存以存 储较大的配置文件;储较大的配置文件;3、体积大,成本和功耗都不利于相关的设计。、体积大,成本和功耗都不利于相关的设计。2021/9/1768习习 题题 3 3-1 1 什什么么是基于乘是基于乘积项积项的可的可编编程程逻辑结逻辑结构构?3 3-2 2 什什么么是基于是基于查查找表的可找表的可编编程程逻辑结逻辑结构构?3 3-3 3 与与传统传统的的测试测试技技术术相比,相比,边边界界扫扫描技描技术术有何有何优优点?点?3 3-4 4 解解释编释编程程与与配置配置这这两个概两个概念。念。2021/9/1769