第 6 章 半导体存储器和可编程逻辑器件

33
6 6 第 第第 第第第第第第第第第第第 第 第第 第第第第第第第第第第第 6.1 第第 6.2 ROM( 第第第第第 ) 6.3 RAM ( 第第第第第第第 ) 6.4 SAM ( 第第第第第第第 ) 6.5 PLD 第第第第第第第第第 6.6 FPGA( 第第第第第第第第 ) 第第第第

Upload: theo

Post on 14-Jan-2016

208 views

Category:

Documents


0 download

DESCRIPTION

第 6 章 半导体存储器和可编程逻辑器件. 6.1 概述 6.2 ROM( 只读存储器 ) 6.3 RAM ( 随机存取存储器 ) 6.4 SAM ( 顺序存取存储器 ) 6.5 PLD 可编程组合逻辑器件 6.6 FPGA( 现场可编程门阵列 ) 本章小结. 名 称. 类 型. 特 点. 使 用 场 合. 半导体存储器. MOS 型. 集成度高、功耗小、价格低、工艺简单. 对容量要求较高的场合,用作主存储器. 双极型. 工作速度快、功耗高、价格较高. 对速度要求较高的场合,用作高速缓冲存储器. 6.1 概述. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第 6 章 半导体存储器和可编程逻辑器件

第第 66 章 半导体存储器和可编程章 半导体存储器和可编程逻辑器件逻辑器件

6.1 概述6.2 ROM( 只读存储器 )

6.3 RAM ( 随机存取存储器 )

6.4 SAM ( 顺序存取存储器 )

6.5 PLD 可编程组合逻辑器件6.6 FPGA( 现场可编程门阵列 )

本章小结

Page 2: 第 6 章 半导体存储器和可编程逻辑器件

2

6.1 6.1 概述概述6.1.1 半导体存储器的分类1. 按制造工艺分类 ( 如表 6.1 所示 ):

对速度要求较高的场合,用作高速缓冲存储器

工作速度快、功耗高、价格较高双极型

对容量要求较高的场合,用作主存储器

集成度高、功耗小、价格低、工艺简单

MOS型

半导体存储器

使 用 场 合特 点类 型 名 称

表 6.1 半导体存储器按制造工艺分类表

Page 3: 第 6 章 半导体存储器和可编程逻辑器件

3

2. 按功能分类 ( 如表 6.2 所示 )

表 6.2  半导体存储器按功能分类表

名称

功能类型

特 点

半导体存储

ROM( 只读存储器 )

1.NMOS 、 CMOS( 掩膜存储器 )2.PROM( 可编程存储器 )3.EPROM( 可擦除改写存储器 )4.E2PROM( 电改写 PROM)5.FLASH( 闪速存储器 )

只能从其中读出数据,不能写入数据。数据可长期保留,断电也不消失,具有非易失性,适用于长期存放的数据

按部件分类

1.SRAM 双极( 静态存储器 ) PMOS NMOS CMOS

2.DRAM PMOS( 动态存储器 ) NMOS CMOS

RAM( 随机存取存储器 )

可在任何时刻从存储器中读出数据或向其中写入数据,其数据不可长期保留,断电后立即消失。

SAM( 顺序存取存储器 )

按照一定的顺序存取存储器,有先入先出型 (FIFO)和先入后出型 (FILO) 两种

Page 4: 第 6 章 半导体存储器和可编程逻辑器件

4

6.1.2 6.1.2 半导体存储器的主要技术指标半导体存储器的主要技术指标

半导体存储器的主要技术指标有存储容量和存取时间。

1.存储容量指存储器所能存放二进制信息的总量,常用“字数 × 位数”来表示。容量越大,表明能存储的二进制信息越多。

2. 存取时间指进行一次 ( 写 ) 存或 ( 读 ) 取所用的时间,一般用读 ( 或写 ) 的周期来描述。读写周期 ( 存取周期 )指连续两次读 ( 或写 ) 操作的最短时间间隔,读写周期包括读 ( 写 ) 时间和内部电路的恢复时间。读写周期越短,则存储器的存储速度越高。

Page 5: 第 6 章 半导体存储器和可编程逻辑器件

5

6.2 ROM(6.2 ROM( 只读存储只读存储器器 ))

6.2.1 固定 ROM( 掩模只读存储器 ) 固定只读存储器在制造时由生产厂家利用掩模技术直接把数据写入存储器中, ROM 制成后,其中的数据也就固定,即存储器中的内容用户不能改变只能读出。这类存储器结构简单、集成度高、价格便宜,一般大批量生产。 ROM 的电路结构包括地址译码器、存储单元矩阵和输出缓冲器 3 部份,如图 6.2 所示。地址译码器的作用是将输入地址代码译成相应的控制信号。

图 6.2 (a) 4×4ROM 电路结构 (b) 4×4ROM 电路符号

Page 6: 第 6 章 半导体存储器和可编程逻辑器件

6

图中地址代码 A0 、 A1 ,经过地址译码器后输出 W0 ~ W3 高电平有效的“字线”,可选择存储矩阵中的 22 个字。存储单元矩阵实际上是一个编码器,编码器中和字线相交的线称为位线,字线与位线构成矩阵。当地址译码器的输出线中有一条为高电平时,编码器的“或阵列”中和该输出为高电平字线相交的每条位线上将输出一个二值代码。通常,把每条位线上输出的二值代码称为一个“位”,把与高电平字线相交的所有数据线 ( 位线 ) 输出的二值代码称为一个“字”。“位”线上的输出将进入输出缓冲器,输出缓冲器的作用: ①提高存储器的带负载能力,使输出电平与 CMOS 电路的逻辑电平匹配; ②利用缓冲器的三态控制功能便于将存储器的输出端与系统的数据总线直接相连。

如图 6.3 所示,存储矩阵中的每个存储单元可以利用二极管、晶体管、熔丝或其他存储元件构成,该图为二极管构成的具有两位地址输入码和四位数据输出的 ROM 电路。

Page 7: 第 6 章 半导体存储器和可编程逻辑器件

7

地址译码器是一个“与阵列”逻辑结构,二输入信号 A1A0 可以构成(00 、 01 、 10 、 11)4 个不同的地址,将这 4 个地址代码分别译成 W0 ~ W3高电平有效“字线”。存储单元阵列是一个由二极管组成的“或阵列”编码器,字线和位线的每个交叉点是一个存储单元,交叉点处接在二极管时相当于存数据“ 1” ,否则,相当于存数据“ 0” ,如图 6.3(a) 所示。当 A1A0=00 时,字线 W0=1 ,称作字线 W0被选中;其他字线为 0 。字线 W0 的高电平加到下面的两个“或门”上,使得D1D2 输出高电平, D2D3

输出低电平,即 D3D2D1D0=0011 。因此,在 00 字单元中存放着一个 4 位字 W0 , W0 的值为 0011 。当 A1A2=01 时,字线 W1 为高电平,字线 W1 的高电平加到下面的三个“或门”上,使得D2D1D0=111 ,即相当于存入数据“7” 。同理可得W2=1001 , W3=1111 ,如表 6.3 所示。

利用二极管矩阵构成的两位输入码的 ROM 电路图 ROM 简化表示图 6.3

Page 8: 第 6 章 半导体存储器和可编程逻辑器件

8

0 0 1 10 1 1 11 0 0 11 1 1 1

0 0 0 1 1 0 1 1

D3 D2 D1 D0 A1 A0

存储数据地址

为了简化 ROM 的电路,可以将图 6.3(a) 电路中的“与-或”矩阵交叉点有存储元件处加黑点,无存储元件处不加黑点,将电源、电阻、二极管 ( 或三极管、 MOS管 )等元器件省略简化成图 6.3(b) 所示的 ROM 图。这种简化图称为“ ROM 阵列逻辑图”。

表 6.3 图 6.3(a) ROM 中存放的数据

Page 9: 第 6 章 半导体存储器和可编程逻辑器件

9

6.2.2 PROM6.2.2 PROM 、、 EPROMEPROM 、、 EE22PROMPROM 可编程只可编程只读存储器读存储器

1. PROM( 只能写入一次的只读存储器 )

2. EPROM( 可擦除可编程只读存储器 )

3. E2PROM( 电擦除可编程存储器 )

4. Flash( 快省存储器 )

Page 10: 第 6 章 半导体存储器和可编程逻辑器件

10

6.3 RAM (6.3 RAM ( 随机存取存储器随机存取存储器 ))

常用的 SRAM 集成芯片有 2114(1K×4 位 ) , 6116(2K×8位 ) , 6264(8K×8位 ) , 62128(16K×8位 ) 和 62256(32K×8位 )等。 1024×4 位的 MOS 静态 RAM 集成芯片 2114 的框图如图 6.10所示,对应的控制、输入 /输出的真值表如表 6.5 所示。

※6.3.1 集成 RAM 的基本结构和工作原理

表 6.5 真值表

Page 11: 第 6 章 半导体存储器和可编程逻辑器件

11

当片选信号 =0 时,该芯片被选中,处于工作状态,即可对该芯片进行读、写操作。当 =0 时,有 =1 ,执行读操作。CS R/W

CS

当 =0 ,同时 =0 时,执行写操作。 RAM 中的存储单元通常都排列成矩阵形式,称为存储矩阵。地址译码采用行、列双译码方式,地址码分成两部分分别送到行、列译码器,由行和列两个译码器分别完成译码。地址线 A0 ~ A3 进行列译码,可选中 Y0 ~ Y15

共 16 列中的一列。地址线 A4 ~ A9 进行行译码,可选中 X0 ~ X63共 64行中的一行。只有行方向的选择线和列方向的选择线交叉的那个字才被选中。

CS CS

从结构框图上看,引脚线包括地址线、数据线和控制线三组线。 A0 ~ A9 为 10 条地址线,表明有 210=1024=1K字; D1 ~ D4 为 4条数据线,表明每字有 4 位,容量为 1K×4 位。控制线包括片选信号 和读 /写信号线 。当片选信号 =1 时,芯片处于维持状态,数据线 D1 ~ D4 为高阻浮置状态,不能对该芯片进行读、写操作。

CS R/WCS

Page 12: 第 6 章 半导体存储器和可编程逻辑器件

12

※※6.3.2 RAM6.3.2 RAM 的存储单元的存储单元

存储单元是存储器的核心部分,按所采用器件类型可分为双极型和 MOS 型两类,按照工作方式可分为静态和动

态两类。

1. 静态 RAM 存储单元

2. 动态 RAM 存储单元

Page 13: 第 6 章 半导体存储器和可编程逻辑器件

13

6.3.3 6.3.3 集成集成 RAMRAM芯片芯片 SRAM6264SRAM6264

图 6.13 (a) NMOS 、 SRAM6264 的封装图 (b) NMOS 、 SRAM6264 的电路符号

RAM 的容量用“字数 × 位数”, 6264 的存储容量为“ 8192 字×8位”。当存储容量不够时,可以进行字位扩展。

常用的普通集成 RAM芯片 SRAM6264 的封装图和电路符号分别如图 6.13(a)(b) 所示。图中 , 是片选信号, 是允许与入信号, 是允许输出 ( 即读出信号 ) , A0 ~ A12

是地址输入代码; I∕O0 ~ I∕O7是 8位数据输出, VDD 为电源电压, GND 接地, NC悬空。

CS1 CS2OEWE

Page 14: 第 6 章 半导体存储器和可编程逻辑器件

14

图 6.13 (a) NMOS 、 SRAM6264 的封装图 (b) NMOS 、 SRAM6264 的电路符号

Page 15: 第 6 章 半导体存储器和可编程逻辑器件

15

6.3.4 6.3.4 存储容量的扩展存储容量的扩展

I/O0

1024×4RAM (0)

A A A R/WCS0 1...

...

1024×4RAM (1)

A A A R/WCS0 1...1024×4RAM (3)

A A A R/WCS0 1 9......

A

A

0

1

R/WCS

99

9

A

I/O1 I/O2 I/O3I/O4 I/O5 I/O6 I/O7

I/O12 I/O13 I/O14 I/O15

I/O0 I/O1 I/O2 I/O3 I/O0 I/O1 I/O2 I/O3I/O0 I/O1 I/O2 I/O3

若一个存储器的字数用一片集成芯片已经够用,而位数不够用,则用

“ 位扩展”方式将多片该型号集成芯片连接成满足要求的存储器。扩展的方

法如图 6.14 所示,将多片同型号的存储器芯片的地址线、读 /写控制线

和片选信号 相应连在一起,而将其数据线分别引出接到存储器的数据总线上。 R/W

CS

1.位扩展

图 6.14 位扩展连接图

Page 16: 第 6 章 半导体存储器和可编程逻辑器件

16

若每一片存储器的数据位数够而字线数不够时,则需要采用“字线扩展”的方式将多片该种集成芯片连接成满足要求的存储器。扩展的方法如图 6.15 所示,将各个芯片的数据线、地址线和读写 控制线分别接在一起,而将片选信号线 单独连接。CS

R/W

2.字扩展

图 6.15 RAM 的字扩展连接法

Page 17: 第 6 章 半导体存储器和可编程逻辑器件

17

3. 字、位同时扩展

图 6.16 字位同时扩展的连接法

在很多情况下,要组成的存储器比现有的存储芯片的字数、位数都多,需要字位同时进行扩展。扩展时可以先计算出所需芯片的总数及片内地址线、数据线的条数,再用前面介绍的方法进行扩展。如图 6.16 所示 ,先进行位扩展,再进行字扩展。

Page 18: 第 6 章 半导体存储器和可编程逻辑器件

18

※※6.4 SAM(6.4 SAM( 顺序存取存储器顺序存取存储器 ))

所谓顺序存取存储器就是只能按照一定的顺序进行存取的存储器。根据存取的顺序的不同 ,有先入先出型 (FIFO) 如图 6.15 所示 ,与先入后出型 (FILO) 两种。

图 6.17 FIFO( 先入先出 ) 型 SAM 电路

Page 19: 第 6 章 半导体存储器和可编程逻辑器件

19

6.5 PLD6.5 PLD 可编程组合逻辑器件可编程组合逻辑器件

6.5.1 PLA( 可编程逻辑阵列 ) 和 FPLA( 现场可编程逻辑阵列 )

1. 因为任何一个逻辑函数都可以用“与或式”表示,所以任何逻辑函数都可以用一个“与门”阵列和一个“或门”阵列来实现。

2. 而 FPLA( 现场可编程阵列 ) 则是由可编程“与阵列”和可编程“或阵列”两部分组成。输入变量对应于“与阵列”的列线,输出函数对应于“或阵列”的列线,通过“与阵列”和“或阵列”网格点上二极管的不同编排,可得到不同函数。

3. FPLA 应用设计举例 .因为 FPLA芯片内的总乘积项数是有限的,所以对逻辑函数进行化简很有必要,目的在于尽量减少乘积项数。

Page 20: 第 6 章 半导体存储器和可编程逻辑器件

20

6.5.2 PAL(6.5.2 PAL( 可编程阵列逻辑可编程阵列逻辑 ))

1. PAL 种类繁多,但基本结构类似,由可编程的“与”逻辑阵列, 固定的“或”逻辑阵列组成,只是输入个数和输出电路的结构不 同,其基本结构如图 6.20 所示。

图 6.20

(a) b

2. 为了适应各种组合逻辑电路和时序逻辑电路的设计,具有 不同输出结构和反馈结构的 PAL 器件应运而生。下面逐一介 绍: ①专用输出结构如图 6.20(a)

Page 21: 第 6 章 半导体存储器和可编程逻辑器件

21

②可编程输入输出结构如图 6.21 所示

③“异域”输出结构 如图 6.22 所示

④算术运算反馈结构 如图 6.23 所示

图 6.21 三态输出缓冲器结构 图 6.22 异或输出结构

图 6.23 算术运算反馈结构

3.PAL 应用设计举例

Page 22: 第 6 章 半导体存储器和可编程逻辑器件

22

6.5.3 GAL(6.5.3 GAL( 可重编程通用阵列逻辑可重编程通用阵列逻辑 ))

1. GAL 器件的基本结构 如图 6.25 所示。 GAL 器件的基本结构包括输入缓冲电路、可编程的“与阵列”,固定的“或阵列”,可编程的输出电路――输出逻辑宏单元 (OLMC) 和输出三态缓冲器等五个部分组成。

图 6.25 GAL 的基本结构

Page 23: 第 6 章 半导体存储器和可编程逻辑器件

23

2. GAL16V8 芯片的基本结构

GAL16V8是 20脚器件,型号标记中 16 表示输入端有 16 个引脚, 8则表示 OLMC 有 8个,最多有 8个引脚作为输出端。器件的逻辑结构图和引脚图分别如图 6.26(a) 、(b) 所示。

(a)GAL16V8 的逻辑结构框图 (b) GAL16V8 的引脚图

图图 6.26 GAL16V8的逻辑结构图和引脚图

Page 24: 第 6 章 半导体存储器和可编程逻辑器件

24

3. GAL16V8输出逻辑宏单元 (OLMC)

GAL16V8的每一个输出端对应一个输出逻辑宏单元,输出逻辑宏单元结构如图 6.27所示,它包含四个部分:

图 6.27 输出逻辑宏单元 (OLMC) 的结构

Page 25: 第 6 章 半导体存储器和可编程逻辑器件

25

6.6 FPGA(6.6 FPGA( 现场可编程门阵列现场可编程门阵列 ))

6.6.1 FPGA 器件的基本结构

XC4000系列的 FPGA器件采用了 CMOS SRAM编程技术,器件的基本结构如图 6.33 所示。

图 6.33 XC4000系列 FPGA基本结构

Page 26: 第 6 章 半导体存储器和可编程逻辑器件

26

3. 控制部分 如图 6.34(b) 上侧部分所示,有 C1~ C4共 4 个输入控制信号,通过编程将其映射成 4 个内部的控制信号 EC 、 DIN 、 S/R 和 H1 。

1. 组合逻辑部分 如图 6.34(b) 中左虚线框内电路所示

图 6.34 (b)CLB与互连资源的互连关系

2. 存储部分 如图 6.34(b) 中右虚线框外右侧电路所示,两个边沿 D触发器共用一个时钟 CLK和时钟允许信号 EC ,分别通过各自的选择电路来选择时钟信号。

Page 27: 第 6 章 半导体存储器和可编程逻辑器件

27

6.6.2 CLB( 可编程逻辑模块 ) CLB是 FPGA 的重要组成部分,多个 CLB以二维阵列的形式分布在器件的中部。 XC4000系列的 CLB结构如图 6.34(a)所示。

图 6.34 (a) FPGA 器件 XC4000系列的 CLB结构

Page 28: 第 6 章 半导体存储器和可编程逻辑器件

28

6.6.3 IOB( 可编程 I/O)

IOB分布在 FPGA 器件的四周,先提供了器件外部引出端和内部逻辑之间的连接,其结构如图 6.35 所示。

图 6.35 XC4000 的 IOB 结

Page 29: 第 6 章 半导体存储器和可编程逻辑器件

29

6.6.4 PIR( 可编程内部连线资源 )

遍布器件内部的可编程互连资源 PIR ,可以将器件内部任意两点连接起来,能将 FPGA 中数目很大的 CLB和 IOB连接成各种复杂的数字系统。 PIR 主要由纵横分布在 CLB阵列之间的金属线网络和位于纵横线交叉点上的可编程开关矩阵 PSM 组成。 1. 通用单∕双长线连接 它主要用于 CLB之间的连接,在这种结构中,任意两点间的 连接都要通过开关矩阵 PSM 。

2. 全局连接 全局连线主要用于传送一些公共信号如全局时钟信号、公

用制信号。

3. 长线连接 长线主要用于长距离或多分支信号的传送。

Page 30: 第 6 章 半导体存储器和可编程逻辑器件

30

本章小结本章小结 1. 半导体存储器主要用于计算机的程序或数据的存储,它分为 ROM 和 RAM 两种。 RAM 是随机存取存储器,它的读写速度很高,它分为动态 (DRAM) 和静态 (SRAM) 两种。 DRAM 是靠寄生电容存储信息,需要定时刷新,否则信息会丢失。 DRAM 的功耗小,结构简单,在容量大的计算机中被广泛应用。 SRAM 主要用于存储容量小的微型机中。 PROM 是 ( 可编程只读存储器 ) ,可用来存储程序、固定数据,这些程序及数据以二进制码的形式事先存入 PROM 中,断电时它们不会丢失,在使用时只供读出,而不能随时写入,故称为可编程只读存储器。若能多次擦除多次编程的 ROM 称为 EPROM( 可擦除可编程只读存储器 ) ,能快速擦除快速写入信息的 ROM 称为 Flash( 快省存储器 ) 。

Page 31: 第 6 章 半导体存储器和可编程逻辑器件

31

本章小结本章小结

3. 可编程逻辑器件 PLD 按照有无寄存功能分为组合 PLD 和时序 PLD 两类。按照电路结构的不同,则有 PLA 和 PGA 型两大类。即

寄存 PLD

PLA

PGA(FPGA)( 现场可编程门阵列,在线可编程逻辑器件 )

PAL( 可编程阵列逻辑 )

FPLA( 现场可编程逻辑阵列 )

GAL(含 ISPGAL)(通用阵列逻辑 )

Page 32: 第 6 章 半导体存储器和可编程逻辑器件

32

2. PROM 、 EPROM 除了存储数据外,还可以编程逻辑函数,具有这种可编程逻辑函数功能的器件还包括 PLA 、PAL 和 GAL等。 PLA 主要由与阵列、或阵列构成,两个阵列都是可编程的。 PAL 则由可编程的与阵列、固定的或阵列和输出电路三部分构成,与阵列采用双极型熔丝结构。GAL 由与阵列、或阵列和输出逻辑宏单元三部分组成,GAL 是采用 2CMOS 工艺制造,可多次进行改写,使用方便,借助开发的硬件和软件,可以用 GAL 实现所有中、小规模数字集成器件。 PAL 的功能不如 GAL ,但是读写速度比 GAL 高。

Page 33: 第 6 章 半导体存储器和可编程逻辑器件

33

目前用得最多的是 GAL 器件和 FPGA 器件。 PLD 器件,尤其是 FPGA 器件的显著优点是:高速度 (ns级 ) ,高可靠性,且具有加密功能,不易被人仿冒制作,具有无限次编程的能力,且高密度集成 (1百万门∕片的芯片正在推出 ) ,体积小,功能强大,易学易用,开发周期短,投资费用低。

4. PLD 器件的发展方向是更高 (密度 ) ,更强 ( 功能 ) 和更加方便的在线可编程,并将大部分电子设计领域如 MCU(微控单元 ) 、 MPU(微处理单元 ) 、 DSP( 数字信号处理 ) 、 A∕ D或 D∕ A等,以软硬核形式“四合一”于 PLD 器件之中,这样无疑会给电子设计理念带来重大变化。