文档介绍:第 9 章存储器和可编程逻辑器件
半导体存储器
可编程逻辑器件
半导体存储器
只读存储器(ROM)
1. ROM的结构
ROM主要由地址译码器、存储矩阵和输出缓冲器三部分组成, 其基本结构如图 9 – 1 所示。
图 9-1 ROM的基本结构
存储矩阵是存放信息的主体,它由许多存储单元排列组成。每个存储单元存放一位二值代码(0 或 1),若干个存储单元组成一个“字”(也称一个信息单元)。地址译码器有n条地址输入线A0~An-1,2n条译码输出线W0~W2n-1,每一条译码输出线Wi称为“字线”,它与存储矩阵中的一个“字”相对应。因此, 每当给定一组输入地址时,译码器只有一条输出字线Wi被选中,该字线可以在存储矩阵中找到一个相应的“字”,并将字中的m位信息Dm-1~D0送至输出缓冲器。读出Dm-1~D0的每条数据输出线Di也称为“位线”,每个字中信息的位数称为“字长”。
ROM的存储单元可以用二极管构成,也可以用双极型三极管或MOS管构成。存储器的容量用存储单元的数目来表示,写成“字数乘位数”的形式。对于图 9-1 的存储矩阵有2n个字, 每个字的字长为m,因此整个存储器的存储容量为2n×m位。存储容量也习惯用K(1 K=1024)为单位来表示,例如1 K×4、 2 K×8 和 64 K×1的存储器,其容量分别是 1024×4 位、 2048×8 位和 65 536×1 位。
输出缓冲器是ROM的数据读出电路,通常用三态门构成,它不仅可以实现对输出数据的三态控制,以便与系统总线联接, 还可以提高存储器的带负载能力。
图 9-2 二极管ROM结构图
图9-2 是具有两位地址输入和四位数据输出的ROM结构图, 其存储单元用二极管构成。图中,W0~W3四条字线分别选择存储矩阵中的四个字,每个字存放四位信息。制作芯片时,若在某个字中的某一位存入“1”,则在该字的字线Wi与位线Di之间接入二极管,反之,就不接二极管。
读出数据时,首先输入地址码,并对输出缓冲器实现三态控制,则在数据输出端D3~D0可以获得该地址对应字中所存储的数据。例如,当A1A0=00时,W0=1,W1=W2=W3=0,即此时W0被选中,读出W0对应字中的数据D3D2D1D0=1001。同理,当A1A0分别为01、10、11时,依次读出各对应字中的数据分别为 0111、1110、0101。因此,该ROM全部地址内所存储的数据可用表 9-1 表示。
表 9-1 图 9-2 ROM的数据表
地址
数据
A1 A0
D3 D2 D1 D0
0 0
0 1
1 0
1 1
1 0 0 1
0 1 1 1
1 1 1 0
0 1 0 1
2. ROM在组合逻辑设计中的应用
从存储器的角度看,只要将逻辑函数的真值表事先存入ROM,便可用ROM实现该函数。例如,在表 9-1 的ROM数据表中,如果将输入地址A1、A0看成两个输入逻辑变量,而将数据输出D3、D2、D1、D0看成一组输出逻辑变量,则D3、D2、D1、D0就是A1、A0的一组逻辑函数,表 9-1就是这一组多输出组合逻辑函数的真值表,因此该ROM可以实现表 9-1 中的四个函数(D3、D2、D1、D0),其表达式为
(9-1)
从组合逻辑结构来看,ROM中的地址译码器形成了输入变量的所有最小项,即每一条字线对应输入地址变量的一个最小项。在图 9-2 中,
因此式(9-1)又可以写为: