2.2 简单PLD结构原理
知识点:
2.1 PLD概述
名称概念:
PLD:Programmable Logic Device,可编程器件
PLD的分类:1、按集成度分,可分为简单PLD和复杂PLD;2、按器件结构分类,可分为 “乘积项结构器件”和“基于查找表结构的器件”;3、按编程工艺分,可分为熔丝(Fuse)型、反熔丝(Antifuse)型、EPROM型、EEPROM型、SRAM型、Flash型。(P28 图2-2)
2.2 简单PLD结构原理
名称概念:
逻辑元件符号、与或阵列的表示方法:P30。
PROM、PLA、PAL、GAL器件在结构上的区别:1、PROM与阵列固定,或阵列可编程,采用全译码的方式产生所有最小乘积项;2、PLA与阵列、或阵列都可编程,未采取全译码的方式,只产生需要的最小乘积项;3、PAL与阵列可编程,或阵列固定,采取反馈和互连的方式获得更多的乘积项;4、GAL结构与PAL相似,但I/O口方面比PAL有所改进,采用了输出逻辑宏单元(OLMC)。
OLMC的作用:可以通过编程对其进行配置,以实现引脚不同的功能。
操作技术:
用4*2PROM实现两个一位二进制数的加法逻辑:P31。
2.3 CPLD的结构原理
名称概念:
CPLD(以MAX3000A为例)主要由3个部分组成,分别是:1、LAB(Logic Array Block,逻辑阵列块);2、PIA(Programmable Interconnect Array,可编程连线阵列);3、I/O控制模块(I/O Control & Pins或I/O Control Block)。(P37 图2-27)
CPLD(以MAX3000A为例)的逻辑资源来源于LAB,LAB由LMC(Logic Macro Cell,逻辑宏单元)组成。
2.4 FPGA的结构原理
名称概念:
FPGA是基于查找表(LUT,Look Up Table)的原理。
FPGA(以Cyclone III为例)的组成部分主要有:1、LAB(Logic Array Block,逻辑阵列块);2、嵌入式存储器块;3、嵌入式硬件乘法器;4、I/O单元;5、嵌入式PLL模块;6、丰富的互连线和时钟网络。
FPGA(以Cyclone III为例)的逻辑资源来源于LAB,LAB由LE(Logic Element,逻辑单元)组成。
FPGA(以Cyclone III为例)中LE的组成部分主要有:1、查找表(LUT);2、进位链逻辑;3、寄存器链逻辑;4、可编程寄存器。(P40 图2-32)
寄存器打包的概念:在一个LE中,可以实现LUT和寄存器的输出的单独控制,也就是说, LUT驱动一个输出,寄存器驱动另一个输出。
寄存器打包的作用:在一个LE中的寄存器和LUT能够完成不相关的功能,提高LE的资源利用率。
FPGA(以Cyclone III为例)中LAB的互连线包括:行互连、列互连、直接通路互连、局部互连。(P42 图2-35)
2.5 硬件测试
名称概念:
JTAG边界扫描测试技术是一种硬件测试技术。
2.6 PLD产品概述
名称概念:各厂家推出的产品类型,了解即可。
2.7 CPLD/FPGA的编程与配置
名称概念:
把程序下载到CPLD、FPGA的这一过程,对于CPLD被称为:编程,对于FPGA被称为:配置。
ISP(In-System Programmability,在系统编程)是CPLD的一项技术与特性。
ICR(In-Circuit Reconfigurability,在线可重配置)是FPGA的一项技术与特性。
FPGA器件的配置:1、使用SRAM编程工艺的FPGA在掉电后,配置信息丢失,功能就失去了。因此,FPGA在上电时,要对其进行配置。2、主要有两类配置方式:主动配置方式和被动配置方式。3、主动配置由FPGA器件自己引导配置过程完成配置;被动方式由计算机或外部控制器控制配置过程。
FPGA(以Cyclone III为例)的配置模式主要有:AS(主动串行)、AP(主动并行)、PS(被动串行)、PP(被动并行)。
FPGA的配置方式主要有:专用配置器件配置、单片机配置、CPLD配置。