第 8 章 可编程逻辑器件
DESCRIPTION
数字电子技术 Digital Electronics Technology. 第 8 章 可编程逻辑器件. 海南大学 《 数字电子技术 》 课程组 教学网址: http://hainu.edu.cn/szjpkc 讨论空间: http://975885101.qzone.qq.com/ E-mail: [email protected]. 8.1 概 述. 数字集成电路分类:通用型、专用型 专用集成电路 ASIC :为某种专门用途而设计的集成电路 可编程逻辑器件:通用器件、逻辑功能由用户设定。. 基本 PLD 器件的原理结构图. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/1.jpg)
23/4/21
第 8 章 可编程逻辑器件
数字电子技术 Digital Electronics Technology
海南大学《数字电子技术》课程组
教学网址: http://hainu.edu.cn/szjpkc
讨论空间: http://975885101.qzone.qq.com/
E-mail: [email protected]
![Page 2: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/2.jpg)
8.1 概 述
输入
缓冲
电路
与
阵列
或
阵
列
输出
缓冲电路
输
入
输
出… …
基本 PLD 器件的原理结构图
数字集成电路分类:通用型、专用型
专用集成电路 ASIC :为某种专门用途而设计的集成电路
可编程逻辑器件:通用器件、逻辑功能由用户设定。
![Page 3: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/3.jpg)
可编程逻辑器件 PLD 的发展历程
70 年代 80 年代 90 年代
PR
OM
和 PLA
器件
FP
LA
器件
GA
L
器件
FP
GA
器件
EP
LD
器件 C
PL
D器件
内嵌复杂功能模块的 SoPC
![Page 4: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/4.jpg)
可编程逻辑器件的分类
按集成度 (PLD) 分类
可编程逻辑器件(PLD)
简单 PLD 复杂 PLD
PROM PAL PLA GAL CPLD FPGA
![Page 5: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/5.jpg)
FPGA - Field Programmable Gate Array
CPLD - Complex Programmable Logic Device
![Page 6: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/6.jpg)
常用逻辑门符号与现有国标符号的对照
![Page 7: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/7.jpg)
3.2.1 电路符号表示
图 3-4PLD 的互补缓冲器 图 3-5 PLD 的互补输入 图 3-6 PLD 中与阵列表示
图 3-7 PLD 中或阵列的表示 图 3-8 阵列线连接表示
![Page 8: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/8.jpg)
PROM
PROM 表达的 PLD 图阵列
与阵列(固定)
或阵列(可编程)
0A1A
1A 1A 0A 0A1F 0F
用 PROM 完成半加器逻辑阵列
与阵列(固定)
或阵列(可编程)
0A1A
1A 1A 0A 0A1F 0F
011
10100
AAF
AAAAF
011
10100
AAF
AAAAF
![Page 9: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/9.jpg)
8.2 PLA 可编程逻辑阵列( * )
PLA 逻辑阵列示意图
与阵列(可编程)
或阵列(可编程)
0A1A
1A 1A 0A 0A1F 0F
![Page 10: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/10.jpg)
PLA
PLA 与 PROM 的比较
0A1A
1F 0F
2A
2F
0A1A
1F 0F
2A
2F
![Page 11: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/11.jpg)
8.3 PAL 可编程阵列逻辑 双极型工艺制作,熔丝编程方式 由可编程的与逻辑阵列、固定的或逻辑阵列和输
出电路三部分组成。 通过对与逻辑阵列编程可以获得不同形式的组合
逻辑函数。 常见的 PAL 器件中,输入变量最多的可达 20 个,
与阵列的乘积项有 80 个,或逻辑阵列输出端最多有 10 个,每个或门的输入端最多达到 16 个。
![Page 12: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/12.jpg)
![Page 13: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/13.jpg)
PAL 的几种输出电路结构和反馈形式
一、专用输出结构
所设置的输出端只能用作输出使用。
用来产生组合逻辑函数。
![Page 14: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/14.jpg)
二、可编程输入 / 输出结构
具有可编程控制端的三态缓冲器,控制端由于逻辑阵列的一个乘积项给出。同时,输出端又经过一个互补输出的缓冲器反馈到与逻辑阵列上。
![Page 15: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/15.jpg)
三、寄存器输出结构
在输出三态缓冲器和与—或逻辑阵列之间串进了由 D触发器组成的寄存器。同时,触发器状态又经过一个互补输出的缓冲器反馈到与逻辑阵列的输入端上。
![Page 16: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/16.jpg)
四、异或输出结构
与寄存器输出结构类似,只是在与—或逻辑阵列的输出端又增设了异或门。
![Page 17: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/17.jpg)
五、运算选通反馈结构
在异或门的基础上,再增加一组反馈逻辑电路。
![Page 18: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/18.jpg)
图示电路产生 16 种算术运算和逻辑运算结果的 PAL 。
![Page 19: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/19.jpg)
8.3.3 PAL 的应用举例 例 8.3.1 用 PAL 器件设计一个数值判别电路要求
判断 DCBA 的大小属于那个区间。
十进制 D C B A Y0 Y1 Y2
0 0 0 0 0 1 0 0
1 0 0 0 1 1 0 0
… … … … … … … …
15 1 1 1 1 0 0 1
![Page 20: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/20.jpg)
0
1
2
Y DC DB
Y DCB DCB DCA
Y DC DBA
![Page 21: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/21.jpg)
例 8.3.2 设计一个 4 位循环码计数器,要求所设计的计数器具有置零和对输出进行三态控制的功能。CP Y3 Y2 Y1 Y0 C
0 0 0 0 0 0
1 0 0 0 1 0
2 0 0 1 1 0
3 0 0 1 0 0
4 0 1 1 0 0
5 0 1 1 1 0
6 0 1 0 1 0
7 0 1 0 0 0
8 1 1 0 0 0
… … … … … …
15 1 0 0 0 1
16 0 0 0 0 0
![Page 22: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/22.jpg)
用 PAL 器件设计这个计数器,所用器件中应包括 4个触发器和相应的与或逻辑阵列。查手册 PAL64R4满足要求。
输出缓冲器为反相器,所以 4 个触发器的Q 端的状态与真值表中的状态相反。
通过卡诺图对触发器的状态进行化简。得到每个触发器的驱动方程,要求中还有具有置零功能,故应加入 R 端,得驱动方程
![Page 23: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/23.jpg)
得到了驱动方程和输出进位信号的方程后,对 PAL 进行编程。图在课本上的 P417 。
以上设计工作在开发系统上自动进行,只要按照软件规定的格式输入逻辑真值表即可,其余工作由计算机去完成。
![Page 24: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/24.jpg)
8.4 GAL 通用阵列逻辑
PAL 器件采用的是双极型熔丝工艺,一旦编程不能修改,且输出结构的类型繁多,给设计带来不便。
GAL 通用逻辑阵列,采用电可擦除的 CMOS 制作,输出端设置了可编程的输出逻辑宏单元OLMC ,通过编程可设置不同的输出状态,增强器件的通用性。
![Page 25: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/25.jpg)
逻辑宏单元
输入 / 输出口
输入口
时钟信号输入
三态控制
可编程与阵列
固定或阵列
GAL16V8
的结构图
![Page 26: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/26.jpg)
与逻辑阵列的交叉点上设有E2CMOS 编程单元,其结构为
带负电荷,读出 1
![Page 27: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/27.jpg)
地址映射图
对 GAL 的编程是在开发系统的控制下完成,编程时逐行完成的。
![Page 28: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/28.jpg)
8.4.2 GAL 的输出逻辑宏单元 OLMC
![Page 29: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/29.jpg)
上图为 GAL16V8 结构控制字的组成,其中n 是代表 OLMC 的编号,这个编号与每个OLMC 连接的引脚号码一致。
或门中有 8 个来自与阵列的输入端,这样,在或门的输出端能产生不超过 8 项的与或逻辑函数。
![Page 30: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/30.jpg)
OLMC的 5 种工作模式 P423SYN AC0 AC1 n XOR n 工作模式 输出极性
1 0 1 X 专用输入
1 0 0 0/1 专用组合输出
0- 低有效1- 高有效
1 1 1 0/1 反馈组合输出
0- 低有效1- 高有效
0 1 1 0/1 时序电路中的组合
输出
0- 低有效1- 高有效
0 1 0 0/1 寄存器输出
0- 低有效1- 高有效
![Page 31: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/31.jpg)
5 种工作模式简化电路P424
![Page 32: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/32.jpg)
8.4.3 GAL 的输入特性和输出特性
输入缓冲电路,是一种较为理想的高输入阻抗器件,在正常的输入电压范围内,输入端漏电流不超过 10uA 。
输出缓冲电路采用单一类型的 N 沟道增强性MOS 管,不会出现 CMOS 电路的锁定效应,输出具有“软开关特性”。
![Page 33: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/33.jpg)
8.5 可擦除的可编程逻辑器件EPLD EPLD 是继 PAL 和 GAL 之后推出的可编程
逻辑器件,采用 CMOS 和 UVEPROM 工艺制作,集成度比较高,属于高密度 PLD 。
特点: CMOS 工艺,低功耗、高噪声容限 使用 UVPROM 工艺,集成度高,造价便宜 输出部分采用可编程的输出逻辑宏单元
OLMC ,增加了预置数和异步置零功能。
![Page 34: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/34.jpg)
8.6 FPGA 现场可编程门阵列8.6.1 FPGA 的基本结构高密度 PLD
由三种可编程单元和用于存放编程数据的静态存储器组成。
输入 / 输出模块
可编程逻辑模块
互联资源 IR
![Page 35: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/35.jpg)
静态存储单元由两个 CMOS 反相器和一个控制管 T 组成,停电后不能数据保存,是一个CMOS 工艺的静态随机存储器 SRAM 结构,具有数据的易失性,须将数据存放在一片E2PROM 中。
![Page 36: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/36.jpg)
FPGA的 IOB除了几个个别的引脚外,大部分引脚都与可编程的IOB 相连,均可根据需要设置成输入端或输出端。
![Page 37: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/37.jpg)
FPGA的 CLB包含组合逻辑电路和存储电路,可设置成规模不大的组合逻辑电路或时序逻辑电路,通过编程可以产生任何形式的四变量组合逻辑函数。
![Page 38: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/38.jpg)
FPGA的 IR为了能将 CLB 和 IOB 连结成各种复杂的系统,在布线区布置了各种丰富的连线资源。包括金属线、开关矩阵 SM 和可编程连接点 PIP 。
![Page 39: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/39.jpg)
![Page 40: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/40.jpg)
![Page 41: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/41.jpg)
8.7 PLD 的编程 PLD 的编程工作必须在开发系统的支持下完成。 包括软件和硬件两部分。 开发系统软件是指 PLD 专用的编程语言和相应的汇编程序或编译程序。分为汇编型、编译型和原理图收集型三种。
目前开发系统软件向集成化发展。 开发系统硬件部分包括计算机和编程器。编程器
是对 PLD 进行写入和擦除的专用装置。
![Page 42: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/42.jpg)
8.8 在系统可编程逻辑器件 ISP-PLD(Lattice 公司为例 )
FPGA 的下载虽然可以在系统进行,但给 FPGA进行配置的 E2PROM 在编程时仍然不能离开编程器。
ISP-PLD 采用 E2CMOS 工艺制作,编程数据写入E2PROM 的存储单元后,掉电后数据不会丢失,克服了 FPGA 中数据易失的缺点。
按集成度分为 低密度 ISP-PLD
高密度 ISP-PLD
![Page 43: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/43.jpg)
低密度 ISP-PLD
在 GAL 电路的基础上加进了写入 /擦除控制电路形成。
![Page 44: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/44.jpg)
高密度 ISP-PLD
电路构成复杂,功能强。 这种结构形式也被称作 CPLD 。 举例: ispLSI1032
具有 32 个通用逻辑模块 GLB, 64 个输入输出单元 IOC ,可编程内部连线和编程控制电路。
![Page 45: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/45.jpg)
![Page 46: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/46.jpg)
![Page 47: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/47.jpg)
ISP 的编程ISP 功能提高设计和应用的灵活性
减少对器件的触摸和损伤
不计较器件的封装形式
允许一般的存储
样机制造方便
支持生产和测试流程中的修改
允许现场硬件升级
迅速方便地提升功能
未编程前先焊接安装 系统内编程 --ISP
在系统现场重编程修改
![Page 48: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/48.jpg)
FPGA/CPLD 产品概述
1 Lattice 公司 CPLD 器件系列
1. ispLSI 器件系列
ispLSI1000E 系列 ispLSI2000E/2000VL/200VE 系列
ispLSI5000V 系列 ispLSI 8000/8000V 系列
2. ispLSI 器件的结构与特点 :
采用 UltraMOS 工艺。采用 UltraMOS 工艺。 系统可编程功能。系统可编程功能。
边界扫描测试功能。边界扫描测试功能。 加密功能。加密功能。 短路保护功能。短路保护功能。
![Page 49: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/49.jpg)
2 Xilinx 公司的 FPGA 和 CPLD 器件系列
1. Virtex E 系列 FPGA
2. SpartanⅡ 器件系列
3. XC9500 系列 CPLD
4. Xilinx FPGA 配置器件SPROM5. Xilinx的 IP 核
![Page 50: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/50.jpg)
3 Altera 公司 FPGA 和 CPLD 器件系列
1. Stratix 系列 FPGA
2. APEX 系列FPGA3. ACEX 系列FPGA4. FLEX 系列FPGA5. MAX 系列 CPLD
6. Altera 宏功能块及 IP核
![Page 51: 第 8 章 可编程逻辑器件](https://reader033.vdocuments.mx/reader033/viewer/2022061610/56815319550346895dc13d20/html5/thumbnails/51.jpg)
本章要求掌握可编程逻辑器件的分类和特点。 了解各种 PLD 在电路结构和性能上的特点。
作业: P440-441
8.1, 8.3, 8.7