资源描述
第第2章章 FPGA与与CPLD的结构原理的结构原理 2.1 PLD概述概述 无论是简单还是复杂的数字电路系统都是由基本门构成。由基本门可构成两类数字电路:组合电路和时序电路 任何组合逻辑函数都可以化为“与-或”表达式,即任何组合电路可以用与门-或门二级电路实现。任何时序电路都可以由组合电路加上存储元件构成。2.1 PLD概述概述 2.1.1 PLD的发展历程的发展历程 2.1.2 PLD分类分类 20世纪70年代 20世纪90年代后500门2.2 简单简单PLD结构原理结构原理 2.2.1 逻辑元件符号表示逻辑元件符号表示 2.2 简单简单PLD结构原理结构原理 2.2.1 逻辑元件符号表示逻辑元件符号表示 2.2 简单简单PLD结构原理结构原理 2.2.2 PROM结构原理结构原理 2.2 简单简单PLD结构原理结构原理 2.2.2 PROM结构原理结构原理 4X22.2 简单简单PLD结构原理结构原理 2.2.3 PLA结构原理结构原理 最简与或式 标准与或式2.2 简单简单PLD结构原理结构原理 2.2.4 PAL结构原理结构原理 2.2 简单简单PLD结构原理结构原理 2.2.4 PAL结构原理结构原理 2.2.5 GAL结构原理结构原理 GAL的输出逻辑宏单元OLMC中含有四个多路选择器,通过不同的选择方式可以产生多种输出结构,分别属于三种模式,一旦确定了某种模式,所有的OLMC都将工作在同一种模式下。2.2 简单简单PLD结构原理结构原理 2.2 简单简单PLD结构原理结构原理 2.2.5 GAL结构原理结构原理(1)寄存器模式。2.2 简单简单PLD结构原理结构原理 2.2.5 GAL结构原理结构原理(2)复合模式:(3)简单模式:2.3 CPLD的结构原理的结构原理 现在的PLD 以大规模、超大规模集成电路工艺制造的CPLD、FPGA为主。前面所讲的简单PLD器件在实用中由于阵列规模小、片内寄存器资源不足、编程不便等原因与约束已被淘汰。早期的CPLD 是从GAL的结构扩展而来,但针对GAL的缺点进行了改进。2.3 CPLD的结构原理的结构原理 1.逻辑阵列块(逻辑阵列块(LAB)一个LAB由16个宏单元的阵列组成,多个LAB通过可编程连线阵列(PIA)和全局总线连接在一起。2.宏单元宏单元 由三个功能块组成:逻辑阵列、乘积项选择矩阵、可编程寄存器。3.扩展乘积项扩展乘积项 虽然大部分逻辑函数能够用在每个宏单元中的五个乘积项实现,但更复杂的逻辑函数需要附加乘积项(利用其他宏单元以提供所需的逻辑资源)。2.3 CPLD的结构原理的结构原理 4.可编程连线阵列可编程连线阵列PIA 不同的LAB通过在PIA上布线,以便相互连接构成所需的逻辑。这个全局总线是一种可编程的通道,可以把器件中任何信号连接到目的地。专用输入、I/O引脚和宏单元输出2.3 CPLD的结构原理的结构原理 5.I/O控制块控制块 I/O控制块允许每个I/O引脚单独被配置为输入、输出和双向工作方式。2.4 FPGA的结构原理的结构原理 2.4.1 查找表逻辑结构查找表逻辑结构 CPLD是基于乘积项的可编程结构(与阵列与阵列可编程+固定或阵列或阵列组成);FPGA是可编程查找表(Look Up Table,LUT)结构,LUT是可编程的最小逻辑单元。FPGA一般采用SRAM的查找表逻辑形成结构,即使用SRAM来构成逻辑函数发生器。2.4 FPGA的结构原理的结构原理 2.4.2 Cyclone III系列器件的结构原理系列器件的结构原理 FPGA结构LE:逻辑宏单元,最基本的可编程单元。2.4 FPGA的结构原理的结构原理 2.4.2 Cyclone III系列器件的结构原理系列器件的结构原理(1)普通模式:一般用于通用逻辑和组合逻辑的实现。2.4 FPGA的结构原理的结构原理 2.4.2 Cyclone III系列器件的结构原理系列器件的结构原理(2)算术模式:此种模式可以更好地实现加法器、计数器、累加器和比较器。2.4 FPGA的结构原理的结构原理 2.4.2 Cyclone III系列器件的结构原理系列器件的结构原理 每个Cyclone 3的LAB包含16个LE,多个LE排列构成LAB,多个LAB排列构成LAB阵列。在LAB中、LAB之间存在着行互连、列互连、直连通路互连、LAB局部互连、LE进位链和寄存器链。2.4 FPGA的结构原理的结构原理 2.4.2 Cyclone III系列器件的结构原理系列器件的结构原理 LAB中的局部互连信号可以驱动在同一个LAB中的LE,可以连接行与列互连和在同一个LAB中的LE。相邻的LAB、左侧或者右侧的PLL(锁相环)和M9K RAM通过直连线也可以驱动一个LAB的局部互连。2.4 FPGA的结构原理的结构原理 2.4.2 Cyclone III系列器件的结构原理系列器件的结构原理 Cyclone 3器件中设置有全局控制信号,用于时钟及复位信号在每个时序逻辑单元的同步。2.4 FPGA的结构原理的结构原理 2.4.2 Cyclone III系列器件的结构原理系列器件的结构原理 Cyclone 3的I/O支持多种I/0接口,符合多种I/O标准。支持差分的I/O标准:如LVDS(低压差分串行)和RSDS(去抖动差分标准)等支持普通单端的I/0标准:如LVTTL、LVCMOS、PCI等2.5 硬件测试硬件测试 2.5.1 内部逻辑测试内部逻辑测试 2.5.2 JTAG边界扫描边界扫描“软”:逻辑设计的正确性需要测试“硬”:PCB板级需要测试引脚的连接问题,I/O功能也需要专门的测试。2.6 PLD产品概述(产品概述(了解了解)2.6.1 Altera公司的公司的PLD器件器件 1.Stratix 4/6 系列系列FPGA 2.Cyclone 2系列系列FPGA 3.Cyclone 3系列系列FPGA 4.Cyclone 4系列系列FPGA 5.MAX系列系列CPLD 6.MAX II系列器件系列器件7.Altera宏功能块及宏功能块及IP核核 2.6 PLD产品概述产品概述 2.6.2 Lattice公司的公司的PLD器件器件 2.6.3 Xilinx公司的公司的PLD器件器件 2.6.4 Actel公司的公司的PLD器件器件 2.6.5 Altera的的FPGA配置方式配置方式 2.7 CPLD/FPGA的编程与配置的编程与配置(1)基于电可擦除存储单元的)基于电可擦除存储单元的EEPROM或或Flash技术。技术。(2)基于)基于SRAM查找表的编程单元。查找表的编程单元。(3)基于一次性可编程反熔丝编程单元。)基于一次性可编程反熔丝编程单元。2.7 CPLD/FPGA的编程与配置的编程与配置 2.7.1 CPLD在系统编程在系统编程 2.7 CPLD/FPGA的编程与配置的编程与配置 2.7.2 FPGA配置方式配置方式 2.7 CPLD/FPGA的编程与配置的编程与配置 2.7.3 FPGA专用配置器件专用配置器件 2.7 CPLD/FPGA的编程与配置的编程与配置 2.7.4 使用单片机配置使用单片机配置FPGA 2.7 CPLD/FPGA的编程与配置的编程与配置 2.7.4 使用单片机配置使用单片机配置FPGA 2.7.5 使用使用CPLD配置配置FPGA
展开阅读全文