如果某一片rom或ram的位数够用而数字不够用时,应采用字扩展的连接方式,将多片rom或ram组合成字数更多的储存器。
图1 所示为用8片1k×8位ram构成的8k×8位ram。
因为8片1k×8位ram共有1024×8字,故必须给它们编成8k(8×1024)个不同的地址与之对应。然而,每一片1k×8位ram芯片的地址输入端只有10位(a0~a9),给出的地址范围均为0~1023,无法区分8片ram中同样的地址单元。因此,必须增加3位地址代码a10、a11、a12,使地址代码增加到13位,才能得到213=8×1024个地址。
图1 ram的字扩展接法
如果取第一片ram的a12a11 a10=000,第二片ram的a12a11 a10=001,……第八片ram的a12a11 a10=111,则第八片ram的地址分配将如表1所示。
表1 各片ram的地址分配表
器件编号
a12 a11 a10
y0
y1
y2
y3
y4
y5
y6
y7
地址范围
a12a11a10
a9a8a7a6a5a4a3a2a0
等效十进制数
rma(1)
000
0
1
1
1
1
1
1
1
000
0000000000~000
1111111111
0~1023
rma(2)
001
1
0
1
1
1
1
1
1
001
0000000000~001
1111111111
1024~2×1024-1
rma(3)
010
1
1
0
1
1
1
1
1
010
0000000000~010
1111111111
2×1024~3×1024-1
rma(4)
011
1
1
1
0
1
1
1
1
011
0000000000~011
1111111111
3×1024~4×1024-1
rma(5)
100
1
1
1
1
0
1
1
1
100
0000000000~100
1111111111
4×1024~5×1024-1
rma(6)
101
1
1
1
1
1
0
1
1
101
0000000000~101
1111111111
5×1024~6×1024-1
rma(7)
110
1
1
1
1
1
1
0
1
110
0000000000~110
1111111111
6×1024~6×1024-1
rma(8)
111
1
1
1
1
1
1
1
0
111
0000000000~111
1111111111
7×1024~8×1024-1
由表1可见,8片ram的低10位地址是相同的,所以接线时把它们分别并联起来就可以了,由于每片ram上只有10个地址输入端,所以a10、a11、a12的输入端只好借用端,如图1所示。其中使用了3-8线译码器74138芯片将a12 a11a10的8中状态分别译成0~7这8个低电平输出信号,然后用它们分别控制8片ram的端。
上述字扩展接法同样适用于rom容量的扩展。
如果一片rom或ram的位数和字数都不够用,就需要同时采用位扩展和字扩展方法,用多片rom或ram组成一个大的存储器系统,以满足对储存容量的要求。