第 7 章 半导体存储器和可编程逻辑器件
DESCRIPTION
第 7 章 半导体存储器和可编程逻辑器件. 第 7 章 半导体存储器和可编程逻辑器件. 7.1 只读存储器( ROM ). 7.2 随机存取存储器( RAM ). *7.3 复杂可编程逻辑器件( CPLD ). 7.4 现场可编程逻辑器件( FPGA ). 7.5 可编程逻辑器器件. 教学基本要求:. 掌握半导体存储器字、位、存储容量、地址、等基本概念。 正确理解 RAM 、 ROM 的工作原理 了解半导体存储器的存储单元的组成及工作原理。 掌握 RAM 、 ROM 的典型应用。 正确理解 PLD 的结构及工作原理。. - PowerPoint PPT PresentationTRANSCRIPT
YANGTZE NORMAL UNIVERSITY
YANGTZE NORMAL UNIVERSITY
7.2 随机存取存储器( RAM )7.1 只读存储器( ROM )
*7.3 复杂可编程逻辑器件( CPLD )7.4 现场可编程逻辑器件( FPGA )7.5 可编程逻辑器器件
YANGTZE NORMAL UNIVERSITY
教学基本要求:
•掌握半导体存储器字、位、存储容量、地址、等基本概念。•正确理解 RAM、 ROM 的工作原理•了解半导体存储器的存储单元的组成及工作原理。•掌握 RAM、 ROM 的典型应用。•正确理解 PLD 的结构及工作原理。
YANGTZE NORMAL UNIVERSITY
7.1 只读存储器( ROM )
只读存储器,工作时其存储的内容固定不变。且只能读出,不能随时写入。工作时,将一个给定的地址码加到ROM 的地址输入端,便可在它的输出端得到一个事先存入的确定数据。
YANGTZE NORMAL UNIVERSITY
ROM 的分类按存贮矩阵中器件类型
固定 ROM--
PROM--
EPROM--
Flash Memary--
E2PROM--
二极管 ROM
三极管 ROM
MOS管ROM
按写入方式
厂家装入数据,永不改变用户装入,只可装一次,永不改变
用户装入,紫外线擦除用户装入,电可擦除
高集成度,大容量,低成本 , 使用方便。
YANGTZE NORMAL UNIVERSITY
存储矩阵
三态缓冲器
地址译码
器
数据输出
地址输
入
一、固定 ROM 固定 ROM 主要由地址译码器、存储单元矩阵和输出缓冲器三部分组成。
字线 容量 = 字线 × 位线
位线
YANGTZE NORMAL UNIVERSITY
A0
A1 A1
A0
Y0
Y1
Y2
Y3
D3 D2 D1 D0
地址
译码器
00
01
10
11
EN
存储或矩阵
字线
位线
1 、 二极管 ROM—以 4×4 为例存储单元
译码与矩阵
输出缓冲器
任何时刻只有一根字线为高电平。
YANGTZE NORMAL UNIVERSITY
A0
A1 A1
A0
Y0
Y1
Y2
Y3
D3 D2 D1 D0
地址
译码器
00
01
10
11
EN
+5V
+VDD
2 、 三极管 ROM和 NMOS管 ROM
YANGTZE NORMAL UNIVERSITY
有一种可编程序的 ROM ,在出厂时全部存储 “ 1” ,用户可根据需要将某些单元改写为 “ 0”, 但是,只能改写一次,称为 PROM 。
字线位线
熔断丝
若将熔丝烧断,该单元则变成“ 0” 。显然,一旦烧断后不能再恢复。
二、可编程 ROM( PROM )
YANGTZE NORMAL UNIVERSITY
三、可擦除可编程 ROM( EPROM ) 当浮栅上带有负电荷时,则衬底表面感应的是正电荷,这使得 MOS管的开启电压变高,如果给控制栅加上同样的控制电压, MOS 管仍处于截止状态。
SIMOS 管利用浮栅是否累积有负电荷来存储二值数据。
存储单元采用 N 沟道叠栅管(SIMOS) 。其结构如下:
写入数据前,浮栅不带电荷,要想使其带负电荷,需在漏、栅级上加足够高的电压 25V 即可。
若想擦除,可用紫外线或 X 射线,距管子 2 厘米处照射 15-20 分钟。
当浮栅上没有电荷时,给控制栅加上控制电压, MOS 管导通 .
YANGTZE NORMAL UNIVERSITY
与 EPROM 的区别是:浮栅延长区与漏区 N+之间的交叠处有一个厚度约为 80A (埃 ) 的薄绝缘层。
四、隧道 MOS 管 E2PROM
可用电擦除信息,以字为单位,速度高,可重复擦写 1 万次。
YANGTZE NORMAL UNIVERSITY
与 EPROM 的区别是 :
1. 闪速存储器存储单元MOS 管的源极 N+ 区大于漏极 N+ 区,而SIMOS 管的源极 N+ 区和漏极 N+ 区是对称的; 2. 浮栅到 P 型衬底间的氧化绝缘层比 SIMOS管的更薄。
五、快闪存储器 Flash Memory
YANGTZE NORMAL UNIVERSITY
( 1 ) 用于存储固定的数据、表格
( 2 ) 码制变换
六、 ROM 的简单应用
( 3 ) 用户程序的存贮
( 4 ) 构成组合逻辑电路
YANGTZE NORMAL UNIVERSITY
例 1 用 ROM 实现十进制译码显示电路。
A3
A2
A1
A0
D
C
B
A ROM
D1
D2
D3
CS
D5
D6
D7
a
b
c
d
e
f
g OE
a
b
c
d
e
f g
D4
YANGTZE NORMAL UNIVERSITY
1 1 1 1 1 1 0
0 1 1 0 0 0 0
1 1 0 1 1 0 1
1 1 1 1 0 0 1
0 1 1 0 0 1 1
1 0 1 1 0 1 1
1 0 1 1 1 1 1
1 1 1 0 0 0 0
1 1 1 1 1 1 1
1 1 1 0 0 1 1
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
A3
A2
A1
A0
D C
B
A
ROM
CS
a
b
c
d
e
f
g
OE
ROM
D1
D2
D3
D5
D6
D7
D4
0000地址单元的内容对应七段数码0
1001 地址单元的内容对应七段数码9
这些单元不用
m0
m1
m2
m9
……
YANGTZE NORMAL UNIVERSITY
例 2 用 ROM 实现逻辑函数。
2/4线译码器
A1
A0
m0
m1
m2
m3
D0 D1 D2
D3
0101010 AAAAAAD
011 AAD
01013 AAAAD 012 AAD
YANGTZE NORMAL UNIVERSITY
例 3 电路如图,试画出 F 波形
CP
Q0
Q1
F
Q2
CP ROM
二进制加法计数器
F
m0
m1
m2
m3
m4
m5
m6
m7
Q0
Q1
Q2
YANGTZE NORMAL UNIVERSITY
( 3 ) ROM 在波形发生器中的应用
A1A2 A0 D3 D2 D1 D0 D/A0
1
000
00
00
0
0
0
0111
11
11
1
1
1
1
000
00
00
0
0
0
0
0000
00000
0
0
111
1
1
1
1
11
1
1
24812963
ROM D/A计数器
CP计数脉冲 送示波器
3 4 o
YANGTZE NORMAL UNIVERSITY
A1A2 A0 D3D2D1D0 D/A0
1
000
00
00
0
0
0
0111
11
11
1
1
1
1
000
00
00
0
0
0
0
0000
00000
0
0
111
1
1
1
1
11
1
1
24812963 t
o
0
YANGTZE NORMAL UNIVERSITY
7.2 随机存取存储器( RAM )
7.2.1 RAM 的结构与工作原理
*7.2.3 RAM 举例
7.2.2 RAM 存储容量的扩展
RAM 存储单元( SRAM、 DRAM ) RAM 的基本结构
字长(位数)的扩展 字数的扩展
7.2.0 概述
YANGTZE NORMAL UNIVERSITY
存储器分类: RAM (Random-Access Memory)
ROM (Read-Only Memory)
SRAM
DRAM
固定 ROM
可编程 ROM
OTPROM
UVPROM
E2PROM
7.2.07.2.0 概 述 概 述半导体存储器是用来存储大量二值数据的器件。
YANGTZE NORMAL UNIVERSITY
RAM 是随机存取存储器,在任意时刻,对任意单元可进行存 / 取(即:读 / 写)操作。
RAM 特点 :灵活-程序、数据可随时更改;易失-断电或电源电压波动 , 会使内容丢失。
ROM 是只读存储器,在正常工作状态只能读出信息,不能随时写入 。
ROM 特点:非易失性-信息一旦写入,即使断电,信息也不会丢失,具有非“易失”性特点。常用于存放固定信息(如程序、常数等)。编程较麻烦-需用专用编程器。
YANGTZE NORMAL UNIVERSITY
7.2.1 RAM 的结构与工作原理
存储矩阵用于存放二进制数,一个单元放一位,排列成矩阵形式。
图 7.2.3
存储矩阵
读 / 写控制电路
地址译码
器
数据输入 / 输出
地址输入
控制信号输入( CS 、 R/W)
读 / 写控制电路完成对选中的存储单元进行读出或写入数据的操作。把信息存入存储器的过程称为“写入”操作。反之,从存储器中取出信息的过程称为“读出”操作。
地址译码器的作用是对外部输入的地址码进行译码,以便唯一地选择存储矩阵中的一个存储单元。
1. RAM 的基本结构
YANGTZE NORMAL UNIVERSITY
存储单元
Y0 Y1 Y7
A4 X1
X31
X0
· · ·
· · ·
· · ·
· · ·
· · ·
列 地 址 译 码 器
行地址译码器
A5
A3
A2
A1
A0
A6 A7
例如:容量为 256×1 的存储器
( 1 )地址译码器
8 根列地址选择线
32 根行地址选择线
32 ×8 =256个存储单元
译码方式
单译码 双译码
---n 位地址构成 2n 条地址线。若 n=10 ,则有 1024 条地址线--- 将地址分成两部分,分别由行译码器和列译码器共同译码
其输出为存储矩阵的行列选择线,由它们共同确定欲选择 的地址单元。
若给出地址 A7-A0=001 00001 ,将选中哪个存储单元读 / 写?
YANGTZE NORMAL UNIVERSITY
存储单元
Y0 Y1 Y7
A4 X1
X31
X0
· · ·
· · ·
· · ·
· · ·
· · ·
列 地 址 译 码 器
行地址译码器
A5
A3
A2
A1
A0
A6 A7
图 7.2.5
若容量为 256×4 的存储器,有 256 个字, 8 根地址线A7-A0 ,但其数据线有 4 根,每字 4 位。
8 根列地址选择线
32 根行地址选择线
1024 个存储单
元
若给出地址 A7-A0 = 000 11111 ,哪个单元的内容可读 / 写?
YANGTZE NORMAL UNIVERSITY
T8 T7
VDD
VGG
T6 T1
T4
T2 T5
T3
Yj (列选择线)
Xi
(行选择线)
数据线
数据线 D
D
位线 B
位线 B
存储单元
( 2 )存储矩阵 • 静态 RAM 存储单元( SRAM) -- 以六管静态存储单元为例
基本 RS 触发器
控制该单元与位线的通断
控制位线与数据线的通断
•Xi =0, T5、 T6
截止,触发器与位线隔离。
T1-T6 构成一个存储单元。 T3、T4 为负载, T1、T2 为基本 RS 触发器。
来自行地址译码器的输出
YANGTZE NORMAL UNIVERSITY
T8 T7
VDD
VGG
T6 T1
T4
T2 T5
T3
Yj (列选择线)
Xi
(行选择线)
数据线
数据线 D
D
位线 B
位线 B
存储单元
•Xi =1, T5、 T6
导通,触发器与位线接通。
•Yj =1, T7 、 T8
均导通,触发器的输出与数据线接通,该单元数据可传送。
来自列地址译码器的输出
• 静态 RAM 存储单元( SRAM) -- 以六管静态存储单元为例
来自行地址译码器的输出
YANGTZE NORMAL UNIVERSITY
G 1
&
G 2
G 3
WR/
R
C
V D D
T 3 T 2
T 1
D O D I
“ ”读 位 线
“ ”写 位 线
存 储单 元
Y j (列 选 择 线 )
X i
(行 选 择 线 )
写 入 刷新 控 制
T 4 T 5
&
>
• * 动态 RAM 存储单元( DRAM) -- 以三管和单管动态存储单元为例三管动态 RAM 存储单元电路如图 :
由于漏电流的存在,电容上存储的数据(电荷)不能长久保存,因此必须定期给电容补充电荷,以避免存储数据的丢失,这种操作称为再生或刷新。
下面分三个过程讨论:
•写入数据
•读出数据
•刷新数据存储数据的电容
存储单元
写入数据的控制门
读出数据的控制门
写入刷新控制电路
YANGTZE NORMAL UNIVERSITY
G 1
&
G 2
G 3
WR/
R
C
V D D
T 3 T 2
T 1
D O D I
“ ”读 位 线
“ ”写 位 线
存 储单 元
Y j (列 选 择 线 )
X i
(行 选 择 线 )
写 入 刷新 控 制
T 4 T 5
&
>
写入数据:
当 Xi = Yj = 1 时,T1 、 T3 、 T4 、 T5
均导通,此时可以对存储单元进行存取操作。
若 DI= 0 ,电容充电;
若 DI= 1 ,电容放电。
当 Xi = Yj
= 0 时,写入的数据由 C 保存。
R/W=0,
G1 导通, G2 截止
输入数据 DI经 G3 反相,被存入电容 C 中。
& &
YANGTZE NORMAL UNIVERSITY
G 1
&
G 2
G 3
WR/
R
C
V D D
T 3 T 2
T 1
D O D I
“ ”读 位 线
“ ”写 位 线
存 储单 元
Y j (列 选 择 线 )
X i
(行 选 择 线 )
写 入 刷新 控 制
T 4 T 5
&
>
读出数据:
当 Xi = Yj = 1 时,T1 、 T3 、 T4 、 T5
均导通,此时可以对存储单元进行存取操作。
读位线信号分两路,一路经 T5 由 DO 输出 ;
另一路经G2、 G3、 T1 对存储单元刷新。
R/W=1,
G2 导通,G1 截止,
若 C 上充有电荷, T2
导通,读位线输出数据0 ;反之, T2 截止,输出数据 1 。
&&
YANGTZE NORMAL UNIVERSITY
G 1
&
G 2
G 3
WR/
R
C
V D D
T 3 T 2
T 1
D O D I
“ ”读 位 线
“ ”写 位 线
存 储单 元
Y j (列 选 择 线 )
X i
(行 选 择 线 )
写 入 刷新 控 制
T 4 T 5
&
>
刷新数据: 若读位线为低电平,经过 G3 反相后为高电平,对电容 C 充电;
&&
若读位线为高电平,经过 G3 反相后为低电平,电容 C 放电;
当R/W=1,且 Xi=1 时,C 上的数据经 T2 、 T3
到达“读”位线,然后经写入刷新控制电路对存储单元刷新。
此时 ,Xi 有效,整个一行存储单元被刷新。由于列选择线Yj无效,因此数据不被读出。
YANGTZE NORMAL UNIVERSITY
• 单管动态 RAM 存储单元电路如图:
CS
T
位
线
存储电容
Xi
(行选择线)
CW
杂散电容
当 T 导通时,电容 CS 上的信息被传送到位线上,或者位线上的数据写入 CS 中。
读出时,由于CW 的存在,且 CW>>CS ,使位线上得到的电压远小于CS 上原来存储的电压,因此,需经读出放大器对输出信号进行放大;同时,由于CS 上的电荷减少,必须每次读出后要及时对读出单元进行刷新
YANGTZE NORMAL UNIVERSITY
T7 Yi T8 Yi
&
&
R/ W
CS
I/O 1 1 2
3
4
5
D D
( 3 )片选信号与读 / 写控制电路
• 当 CS=0 时,选中该单元 . 若 R/W=1 ,三态门 1、 2关 , 3开,数据通过门 3 传到 I/O口,进行读操作;
• 当 CS=1 时,三态门均为高阻态, I/O口与RAM 内部隔离。
• 当 Xi和 Yi 中有一消失,该单元与数据线联系被切断,由于互锁作用,信息将被保存。
若 R/W=0 ,门 1、2开,门 3关,数据将从I/O口通过门 1、 2 ,向 T7、T8 写入,进行写操作。
YANGTZE NORMAL UNIVERSITY
7.2.1 RAM 的结构与工作原理
2. RAM 的操作与定时
自 学
YANGTZE NORMAL UNIVERSITY
7.2.2 RAM 存储容量的扩展1. 位数(字长)的扩展
D0 D1 D2 D3 D12 D13 D14 D15
位扩展可以用多片芯片并联的方式来实现。即地址线、读 / 写线、片选信号对应并联,各芯片的 I/O口作为整个 RAM 输入 / 出数据端的一位。例 1 用 4K×4 位的 RAM 扩展为 4K×16 位的 RAM
···
CS
┇
A11
A0
···R/W
R/W CS A0A11
4K×4 位( 1 )I/O0 I/O1 I/O2 I/O3
R/W CS A0 A11
4K×4 位( 4 )I/O0 I/O1 I/O2 I/O3
··· ···
┇ ┇
YANGTZE NORMAL UNIVERSITY
即该芯片
A12A0
CS
WR/ D7
D0
8K8 位
13
8
8K×8 功能框图
2. 字数的扩展 字数的扩展可利用外加译码器控制存储器 芯片的片选输入端 CS 来实现。 假设某芯片的存储容量为: 8K ×8 (即 8192字 ×8 位)。
数据线共有:地址线共有: 13 根( A12~A0
)8 根( D7~D0 )
YANGTZE NORMAL UNIVERSITY
2. 字数的扩展
图 8.1.10
A 1 2A 0
CS
WR/
D 7D 0
8 K 8 位
8 K 8 位
8 K 8 位
8 K 8 位
D 7D 0
A 1 2A 0
A 1
A 0
A 1 4 A 1 3
E N
Y 0
Y 1
Y 2
Y 3
1 3
1 3
1 3
1 3
1 3
8 8
8
8
8
7 4 1 3 9
WR/
A 1 2A 0
CS
WR/
D 7D 0
A 1 2A 0
CS
WR/
D 7D 0
A 1 2A 0
CS
WR/
D 7D 0
(I)
(II)
(III)
(IV)
芯片
74139
有效输
出端
A14A13
I Y0 0 0
II Y1 0 1
III Y2 1 0
IV Y3 1 1
例 2 将 8K×8 位的 RAM 扩展为 32K×8 位的 RAM
YANGTZE NORMAL UNIVERSITY
7.2.17.2.1
YANGTZE NORMAL UNIVERSITY
3. 字数、位数同时扩展例 3 用 256×4的 RAM 扩展为 1K×8 位的 RAM
Y0Y1Y2Y3
2/4A9
A8
A0-A7
4
256×4
256×4
CSI/O
I/O
CS
8 4256×4
256×4
CSI/O
I/O
CS
8 4
4
…
高四位
低四位
YANGTZE NORMAL UNIVERSITY
A2
A3
A4
A5
A7
A8
A9
A11
DQ0
DQ7
E2
VCC
VSS
A0 A1 A6 A10 A12
行译码器
存储器阵列 256行328列
输入数据控制
列 I/O
列译码器
E1
W G
7.2.3 RAM MCM6264 该芯片是摩托罗拉公司生产的静态 RAM, 28脚双列直插封装。
YANGTZE NORMAL UNIVERSITY
1024 4位 RAM( 2114 )的结构框图
4096 个存储单元排列成 64×64
列的矩阵
地址译码器
输入 / 输出控制电
路
参考资料:
YANGTZE NORMAL UNIVERSITY
YANGTZE NORMAL UNIVERSITY
123456789
181716151413121110
A2
A1
A0
A3
A4
A5
A6
A7
A8A9
CSGND
VCC
D3
D2
D1
D0
R / W
RAM 2114 管脚图
故其容量为: 1024字 ×4 位(又称为 1K ×4 )
RAM2114 共有 10 根地址线, 4 根数据线。
YANGTZE NORMAL UNIVERSITY
7.3.1 CPLD 的结构
7.3.2 CPLD 的编程
7.3 复杂的可编程逻辑器件 (CPLD)
YANGTZE NORMAL UNIVERSITY
• 与 PAL、 GAL 相比, CPLD 的集成度更高,有更多的输入端、乘积项和更多的宏单元;
7.3 复杂的可编程逻辑器件 (CPLD)
•每个块之间可以使用可编程内部连线 ( 或者称为可编程的开关矩阵 )实现相互连接。
•CPLD 器件内部含有多个逻辑单元块,每个逻辑单元块都相当于一个 GAL 器件 ;
YANGTZE NORMAL UNIVERSITY
逻辑块
逻辑块
逻辑块
逻辑块
逻辑块
逻辑块
逻辑块
逻辑块
可 编
程 内
部 连
线 矩
阵
I/OI/O
7.3.1 CPLD 的结构
YANGTZE NORMAL UNIVERSITY
逻辑块
内部的可编程连线区
I/O单元乘积项阵列
乘积项分配
宏单元
Macrocell
PI
7.3.1 CPLD 的结构
YANGTZE NORMAL UNIVERSITY
ispLSI1016 的结构框图7.3.1 CPLD 的结构
YANGTZE NORMAL UNIVERSITY
1 、通用逻辑块( GLB )的结构 7.3.1 CPLD 的结构
18 个输入,可产生 20个乘积项
线或
相同的乘积项可以被多个输出宏单元使用 --- 乘积项共享
YANGTZE NORMAL UNIVERSITY
通用逻辑块( GLB )的配置举例
7.3.1 CPLD 的结构异或
高速旁路
单乘积项旁路
共享
同步时钟异步时钟, GLB第 12 乘积项提供
第 12 或第 19乘积项提供
YANGTZE NORMAL UNIVERSITY
2、 I/O 单元的结构图
7.3.1 CPLD 的结构 通过对 I/O 单元中可编程单元的编程,可将引脚定
义为:“输入”、“输出”或“双向”功能
YANGTZE NORMAL UNIVERSITY
I/O 单元的配置形式7.3.1 CPLD 的结构
YANGTZE NORMAL UNIVERSITY
3 、输出布线区( ORP )的结构7.3.1 CPLD 的结构
由开发软件的布线程序自动完成。可将每个 GLB 的输出送到本宏模块内任意 16个
I/O 单元中。
YANGTZE NORMAL UNIVERSITY
4 、时钟分配网络
7.3.1 CPLD 的结构
I/O 单元时钟
用户定义的内部时钟
YANGTZE NORMAL UNIVERSITY
7.3.2 CPLD 的编程
…
… …
…
…
行地址输入
SDO
SDI数据输入
DSRL
DSRH
80 159
0 79
DMUX
行 0
行 95
E2CMOS单元阵列
L00000 L00079,L00080 L00159
L15359
SDO
ispLSI1016 器件的 E2CMOS 单元编程结构示意图
YANGTZE NORMAL UNIVERSITY
ispLSI 的编程是在计算机控制下进行的。计算机根据用户编写的源程序运行开发系统软件,产生相应的编程数据和编程命令,通过五线编程电缆接口与 ispLSI连接,如图所示:
7.3.2 CPLD 的编程
ispLSI
ispEN
SCLK
MODE
SDI
SDO
将电缆接到计算机的并行口,通过编程软件发出编程命令,将编程数据文件( *JED )中的数据转换成串行数据送入芯片。
五线编程接口
除此五根信号线外,还需一根地线,一根对 ispLSI所在系统电源电压的监视线,共 7根连接线。
YANGTZE NORMAL UNIVERSITY
SDO
SDI
MODE
SCLK
ispLSI
1016
ispEN
ispLSI
1016
ispLSI
2032
SDI1 SDI2 SDI3SDO1 SDO2 SDO3U1 U2 U3
另外,还可将多个 ispLSI 器件以串行的方式连接起来,一次完成多个器件的编程。这种连接方式称为菊花链连接。
7.3.2 CPLD 的编程
YANGTZE NORMAL UNIVERSITY
7.4 现场可编程逻辑器件 (FPGA)
7.4.1 FPGA 中编程实现逻辑功能的基 本原理7.4.2 现场可编程门阵列结构
7.4.3 编程实现原理简介
YANGTZE NORMAL UNIVERSITY
7.4 现场可编程门阵列 (FPGA)
与基于“与 - 或”阵列结构 PLD 的可编程器件相比, FPGA 不受“与 - 或”阵列结构上的限制以及含有触发器和 I/O端数量上的限制,可以靠内部的逻辑单元以及它们的连接构成任何复杂的逻辑电路,更适合实现多级逻辑功能,并且具有更高的密度和更大的灵活性。目前已成为设计数字电路或系统的首选器件之一 。
YANGTZE NORMAL UNIVERSITY
CLB CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB CLB
CLB
CLB
CLB
CLB
CLB
CLB
布线区
IOB IOB IOB IOB IOB IOB IOB
IOB
IOB
IOB
IOB
IOB
IOB
IOB IOB IOB IOB IOB IOB IOB
IOB
IOB
IOB
IOB
IOB
IOB
图 8.5.3 FPGA的结构示意图
FPGA 的结构示意图7.4.1 FPGA 中编程实现逻辑功能的基本原理
YANGTZE NORMAL UNIVERSITY
· · ·
· · ·
· · ·
C1 C4
4
16M M
M M
M
M
M M
M M M M
M
M
M
M
M
M
M
M
16
8
H1 DIN/H2 SR/H0 EC
S/R控制
S/R控制
D
EC
SD
RD
Q
D
EC
SD
RD
Q
G4
G3
G2
G1
F4
F3
F2
F1
逻辑函数
产生器
F
逻辑函数
产生器
G
逻辑函数
产生器
H
G’
H’
F’
K
(CLOCK)
可编程数据选择器
DIN
F’G’H’
G’
H’
DIN
F’G’H’
1
1
YQ
Y
XQ
X
M SRAM存储单元
简化的 CLB 原理框图
7.4.2 现场可编程门阵列结构
YANGTZE NORMAL UNIVERSITY
具有快速进位的 2 位二进制加法器时的原理框图
7.4.2 现场可编程门阵列结构
G4
G3
G2
G1
F4
F3
F2
F1
CIN1 COUT1
S 0
S 1
COUT2 CIN2
COUT0
A0
B0
B1
A1
G
F
G的进位逻辑
F的进位逻辑
YANGTZE NORMAL UNIVERSITY
C1 C4
4
WE D2D0
EC
G1 G4
F1 F4
4
4 4
4
K
(CLOCK)
G’
F’
4线-16线
写译码器
4线-16线
写译码器存储单元
阵列
存储单元
阵列
MUX
’
MUX
’
写脉冲
写脉冲
DIN
DIN
数据读出地址
数据读出地址
CLB 构成的两个 16×1 位单口 RAM 原理框图
YANGTZE NORMAL UNIVERSITY
C1 C4
4
WE D2D0
EC
G1 G4
F1 F4
4
4 4
4
K
(CLOCK)
G’
F’
4线-16线
写译码器
4线-16线
写译码器存储单元
阵列
存储单元
阵列
MUX
’
MUX
’
写脉冲
写脉冲
DIN
DIN
数据读出地址
数据读出地址
双口 RAM 原理框图
YANGTZE NORMAL UNIVERSITY
∨
∨
上拉/下拉控制
摆率控制
T
D
I/O
I2
CE
ICLK
I1
OCLK
OutCE
Q
D
CE
Q
输出三态缓冲器
输入缓冲器
VDD
简化的 IOB 原理框图
YANGTZE NORMAL UNIVERSITY
CLB CLB
CLB
CLB
CLB
CLB
CLB CLB
CLB
CLB
CLB
CLB
PSM PSM PSM
PSM PSM PSM
双长线
双长线
单长线
长线
长线
全局时钟线
可编程连线资源示意图
YANGTZE NORMAL UNIVERSITY
M M
M
M
M
M
每个开关矩阵中的 6路开关管
可编程开关矩阵及结构
YANGTZE NORMAL UNIVERSITY
M
双长线
单长线
双长线
长线
可编程开关点
F2C2G2
长线双长线全局时钟线
单长线双长线长线
F4C4G4
G3
C3
F3
G1
C1
F1
KXXQ
YQY
CLB
CLB 输入输出的布线连接图
YANGTZE NORMAL UNIVERSITY
· · ·
···
地址移位寄存器
配
置
数
据
移
位
寄
存
器
地址输入
地址时钟
字线 0字线 1
· · ·
字线 m-1
位线 0
位线 1
位线 n-1
存储单元 存储单元
存储单元 存储单元
存储单元
存储单元
存储单元存储单元存储单元
配置控制
写控制
数据时钟
数据输入
VDD
7.4.3 编程实现原理简介编程数据存储单元阵列结构
YANGTZE NORMAL UNIVERSITY
7.5.1 PLD 的电路表示法
7.5.2 可编程阵列逻辑器件 (PAL) 简介
7.5.3 可编程通用阵列逻辑器件 (GAL)
YANGTZE NORMAL UNIVERSITY
• 从逻辑功能的特点来看,数字电路可分为通用型和专用型两种。前面介绍的都属于通用型。如门电路、计数器、寄存器等。
• 还有很多电路实现复杂逻辑功能,是为某种用途专门设计的集成电路,称为专用集成电路,简称 ASIC 。
1.引 言概 述
YANGTZE NORMAL UNIVERSITY
• 可编程逻辑器件,简称 PLD( Programmable
Logical Device) 。它属于通用器件,但它的逻辑功能是由用户通过编程来设定的。 PLD 的集成度很高,足以满足一般数字系统的要求。
• 由 PLD 编程的开发系统由硬件和软件两部分构成。硬件为计算机、专用编程器等;软件为集成开发软件、 ABEL、 Verilog HDL、 VHDL 等语言。
• 在系统可编程器件 isp 的编程更为简单,不需专门的编程器,只要将计算机运行的编程数据直接写入 PLD 即可。
YANGTZE NORMAL UNIVERSITY
PROM PL A PAL G AL
µ Íà ܶ È¿ ɱ à³ Ì ߼ Æ ÷¼ þLDPLD( )
EPL D CPL D F PG A
¸ ßà ܶ È¿ ɱ à³ Ì ߼ Æ ÷¼ þHDPLD( )
¿ ɱ à³ Ì ߼ Æ ÷¼ þ£ P̈ L D £ ©
按集成密度分为2. 可编程逻辑器件的分类
YANGTZE NORMAL UNIVERSITY
• 按结构分为-基于与 / 或阵列结构的器件 SPLD( PROM 、
PLA 、 PAL 、 GAL )、 CPLD ( EPLD ) ,并称之为 PLD 。
- 基于门阵列结构的器件( FPGA ) • 按编程工艺分为
1. 熔丝和反熔丝编程器件。如: Actel的 FPGA 器件。
2. SRAM 器件。如: Xilinx的 FPGA 器件。 3. UEPROM 器件,即紫外线擦除 / 电编程器件。 如大多数的 EPLD 器件。 4. EEPROM 器件。如: GAL、 CPLD 器件。
YANGTZE NORMAL UNIVERSITY
乘积项
7.5.1 PLD 的电路表示法
连接方式基本门表示法
&ABCD
YANGTZE NORMAL UNIVERSITY
B
L1
A
L2
L3
G1
L=A+B+C+ DDDDD
DABC 或项
或门
例:
0
1
AB
L1---全积项 L2---悬浮 1 L3---硬线连接
×
YANGTZE NORMAL UNIVERSITY
输出
或门阵列
与门阵列
输入B A
Y Z
基本的P
LD
结构
可编程与阵列
固定或阵列
YANGTZE NORMAL UNIVERSITY
1. PAL 的 结构
7.5.2 可编程阵列逻辑器件 (PAL)简介
2
3
5
4
6
7
8
9
1
1 8
1 7
1 5
1 6
1 4
1 3
1 2
1 1
1 9
0 3 4 7 8 1 1 1 2 1 5 1 6 2 0 2 3 2 4 2 7 2 8 3 1 1 9 0
5 6
5 5
7
8
6 3
3 2
1 5
1 6
4 0
2 3
2 4
4 7
4 8
3 1
3 9
0 3 4 7 8 1 1 1 2 1 5 1 6 2 0 2 3 2 4 2 7 2 8 3 1 1 9
输入端 输入 / 输出端
输出三态门
输入缓冲器
可编程与阵列
PAL是 70 年代末由 MMI 公司最先推出的一种可编程逻辑器件,它采用双极型工艺制作,熔丝式编程方式。
YANGTZE NORMAL UNIVERSITY2. PAL 的几种输出电路结构和反馈形式①专用输出结构:只包含一个可编程的与逻辑阵列和一个固定的或逻辑阵列。
②可编程输入 / 输出结构:输出三态缓冲器的控制端由与阵列的一个乘积项给出。
③寄存器输出结构:可存储或逻辑阵列的输出状态,可构成时序逻辑电路。
④异或输出结构:可实现保持和取反操作。
⑤运算选通反馈结构。
YANGTZE NORMAL UNIVERSITYB nA n
“ ”或 阵 列( 固 定 )
S n C n + 1
“ ”与 阵 列(可 编 程 )
C n
nnnnnnn
nnnnnnnnnnnnn
CBCABAC
CBACBACBACBAS
1
AnBnCn
AnBnCn
AnBnCn
AnBnCn
AnBnAnCn
BnCn
①专用输出结构:
全加器
输出端不能当输入端用PAL10H8,14H4,10L8,14L4,16C1
YANGTZE NORMAL UNIVERSITY
2
3
1
18
19
0 3 4 7 8 11 12 15 16 20 23 24 27 28 31 19 0
7
8
15
× ×
×
I1
I2
当 I1=I2=1 时, 19脚为输出端; 18脚可作输入端用。
PAL16L8, 20L10 ②可编程输入 / 输出结构:
YANGTZE NORMAL UNIVERSITY
③寄存器输出结构:
Q1
Q2
D1 Q1
Q1
D2 Q2
Q2
CP OC
D1 Q1
Q1I1
I2
××
××
××
××
Q1
D1=I1 D2=Q1 移位寄存器
PAL16R4, 16R6, 16R8
YANGTZE NORMAL UNIVERSITY
④异或输出结构:
D1 Q1
Q1
D2 Q2
Q2
CP OC
D1 Q1
Q1I1
I2
Q1
Q2
×
××
×× ×
×
××
×
当 I1=0 时,D1=Q1— 保持当 I1=1 时,D1=Q1— 取反
111 QID )( 212112 IQIQID
Q1Q1
PAL20X4, 20X8, 20X10
YANGTZE NORMAL UNIVERSITY
B
D Q
Q
CPOC
A
⑤运算选通反馈结构:
A
××××
××
××
××××
××××
×××
×
×× ××
1A+B
A+BA
BAB
A+BA+B
AAB0
AB
A
A+B
A+B
A+B
A+B PAL16X4, PAL16A4
YANGTZE NORMAL UNIVERSITY
3. PAL 器件产品型号说明
(1) 生产厂家对 PAL 器件的命名,前面一般还有厂家的标志;
(2) 代表制造工艺:空白代表 TTL, C代表 CMOS;
(3) 代表 PAL 器件的最大阵列输入数;(4) 代表输出电路类型(见另页)。(5) 代表最大的组合输出端数目或最大的寄存器数目。(6) 表示器件功耗级别、速度等级,封装形式等信息。
YANGTZE NORMAL UNIVERSITY
表 1 PAL器件的输出电路类型
代号 意 义 例 子
H 高电平输出 (Active-High Output) PAL10H8
L 低电平输出 (Active-Low Output) PAL16L8
P 输出极性可编程 (Programmable Output Polarity) PAL16P8
C 互补式输出 (Complementary Output) PAL16C1
X 带异或门输出 (Exclusive-OR Gate) PAL2010
R 带寄存器输出 (Registered Output) PAL16R8
RP输出极性可编程且带寄存器的输出(Registered with Programmable Proarity)
PAL16RP8
RA 带有非同步的寄存器输出 (Registered Asynchronous) PAL16RA8
YANGTZE NORMAL UNIVERSITY
4. PAL 应用举例
用 PAL 器件设计一个数值判别电路。要求判别四位二进制数 ABCD 之大小属于 0-5, 6-
10, 11-15 三个区间的哪一个区间内。解: 设 Y0=1 表示 ABCD 的数值在 0-5 之间;
设 Y1=1 表示 ABCD 的数值在 6-10 之间;
设 Y2=1 表示 ABCD 的数值在 11-15 之间;
则可列真值表如下:
YANGTZE NORMAL UNIVERSITY
输 入 输 出A B C D Y0 Y1 Y2
0 0 0 0 1 0 0
0 0 0 1 1 0 0
0 0 1 0 1 0 0
0 0 1 1 1 0 0
0 1 0 0 1 0 0
0 1 0 1 1 0 0
0 1 1 0 0 1 0
0 1 1 1 0 1 0
输 入 输 出A B C D Y0 Y1 Y2
1 0 0 0 0 1 0
1 0 0 1 0 1 0
1 0 1 0 0 1 0
1 0 1 1 0 0 1
1 1 0 0 0 0 1
1 1 0 1 0 0 1
1 1 1 0 0 0 1
1 1 1 1 0 0 1
写出表达式: )5,4,3,2,1,0(0Y )10,9,8,7,6(1Y
)15,14,13,12,11(2Y
YANGTZE NORMAL UNIVERSITY卡诺图化简:
这是一组具有四输入变量,三输出端的组合逻辑函数。用 PAL 器件实现,应选四个以上输入端,三个以上输出端的器件,且至少有一个输出含有三个以上的乘积项。所以可选择 PAL14H4 。然后按表达式进行编程即可。
10 11 01 00
CD
00
01
11
10
AB
L 10 11 01 00
CD
00
01
11
10
AB
L 10 11 01 00
CD
00
01
11
10
AB
L Y0 Y1 Y2
1 1 1 1 1 1
1 1 1 1 1
1 1
1 1 1
Y0=AC+AB Y2=AB+ACDY1=ABC+ABC+ABD
YANGTZE NORMAL UNIVERSITY
7.5.3 可编程通用阵列逻辑器件 (GAL) PAL 由于采用的是双极型熔丝工艺,一旦编程后不能修改,同时输出结构类型太多,给设计和使用带来不便。
1984年 LATTICE公司首先推出了另一种新型的可编程逻辑器件 --- 通用阵列逻辑( GAL )。它是一种可以多次编程的器件,采用电可擦除的 E2CMOS 工艺制成,并且在输出端设置了可编程的输出逻辑宏单元( Output Logic Macro
Cell, 简称 OLMC )。通过编程可将 OLMC设置成不同的工作状态,于是,一片 GAL 便可实现 PAL所有输出电路的工作模式,从而增强了器件的通用性。而且 GAL 工作速度快,功耗小,是产品开发研制的理想器件。
YANGTZE NORMAL UNIVERSITY
常用的 GAL 有两种: GAL16V8( 20脚双列直插)和 GAL20V8 ( 24脚双列直插),以GAL16V8 为例。
1、 GAL 的基本结构:
GAL 的电路结构与 PAL 类似,由可编程的与逻辑阵列、固定的或逻辑阵列和输出电路组成,只不过 GAL 的输出电路采用了可编程的 OLMC ,利用软硬件开发工具,对芯片编程写入后,可方便地实现组合、时序逻辑电路,且芯片设有加密位,为技术保密提供了方便。
GAL16V8 的电路结构图如下:
YANGTZE NORMAL UNIVERSITY
可编程的与阵列8 个输入缓
冲器 2-9 8 个反馈 /输入缓冲器
8 个三态输出缓冲器 12-
19
8 个输出逻辑宏单元OLMC
CLK 输入 缓冲器
输出使能缓冲器
阵列中共有可编程单元
2048 个
YANGTZE NORMAL UNIVERSITY
编程单元的地址分配和功能划分在 GAL 中,除与逻辑阵列外,还有另外一些编程单元。
移位寄存器
CP
SDI
SDO
与逻辑阵列
与逻辑阵列
电子标签
电子标签
保留地址空间
结构控制字
加密单元
保留
整体擦除
33→59 60 61 62 630 31 32
第 0—31 列:与逻辑阵列的编程单元,可得 0—63共 64 个乘积项。第 32 列:电子标签。供用户记载各种信息,如器件型号、电路名称、编程日期、次数等。第 33--59 列:制造厂家保留的地址空间。用户记不能使用。第 60 列:结构控制字,其长度为 82 位。用于 OLMC 工作模式的设定和 64 个乘积项禁止的设定。
第 61 列:加密单元,只占一位。该位一旦被编程,则无法对与逻辑阵列编程。只有在与逻辑阵列被整体擦除时,才能将加密单元同时擦除。
第 63 列:整体擦除。对该单元寻址并执行整体擦除命令时,所有编程单元被擦除。器件返回原始状态。
YANGTZE NORMAL UNIVERSITY
2 、输出逻辑宏单元( OLMC )结构
1 个或门
1 个异或门
1个 D 触发器
功能:将与阵列的乘积项进行逻辑或,然后送到异或门
A 与极性控制信号 XOR(n)异或。当XOR( n) =1 时,异或门对 A 反; XOR( n) =0 时,异或门输出为 A 。如
XOR( 16) =1 ,表示第 16 号引脚输出信号的极性是高有效。
存储异或门的输出信息。只要有一个 OLMC设置成寄存器输出组态,则 1 号脚就是 CP 时钟信
号。
YANGTZE NORMAL UNIVERSITY
2 、输出逻辑宏单元( OLMC )结构
4 个多路开关
结构控制字
结构控制字
产生对多路开关的地址控制信号
YANGTZE NORMAL UNIVERSITY
2 、输出逻辑宏单元( OLMC )结构
乘积项选择器 (2选 1)
输出选择器 (2选
1)
三态选择器 (4选 1)
反馈选择器 (4选
1)
YANGTZE NORMAL UNIVERSITY
3 、结构控制字 GAL 器件的各种功能配置是由结构控制字来控制的。用户可通过编程软件自动设置 4 个结构控制字,就可使 OLMC 定义成如下表所示的五种不同的功能组合。
功 能 SYN AC0 AC1(n)
XOR(n)
输出极性 备 注
专用输入 1 0 1 — — 1, 11脚为数据输入端,输出三态门不通
专用组合输出
1 0 0 0
1
低有效高有效
1, 11脚为数据输入端,组合输出,三态门选通
反馈组合输出
1 1 1 0
1
低有效高有效
同上,三态门由第一乘积项选通,反馈取自 I/O口
时序电路中的组合输出
0 1 1 0
1
低有效高有效
1为 CP, 11为 OE ,该宏单元为组合输出,但至少有一个宏单元为寄存器输出
寄存器输出 0 1 0 0
1
低有效高有效
1为 CP, 11为 OE
从表中可以看出,只要给器件写入不同的结构控制字,就能够得到不同类型的输出结构。这些结构完全可以取代 PAL 器件的所有输出结构形式。
YANGTZE NORMAL UNIVERSITY
4、 PLD 的编程
一般采用ABEL、 CUPL、GALLABFM 或FM( Fast-Map )等。 ABEL、 CUPL 为高级开发软件,具有自动化简功能,在输入文件中可采用逻辑表达式、真值表和状态转换图三种逻辑描述方法,是编译型的通用 软件,具有源文件格式简单、易学等特点。
YANGTZE NORMAL UNIVERSITY
5、 GAL 器件产品型号说明:GAL16V8 -15 Q R M
½功耗1/4功耗
-15=15ns
-35=35ns塑料双列直插
D=陶瓷双列直插
M=军用 (-55-+125)
0-+75
-40-+85