主存容量扩展

it2023-01-25  68

当存储芯片的位与CPU的位数不一致时,可以采取位扩展的方式

假设我们买了一个CPU,它有15根地址线,一个WE读写控制线,还有8根数据线。 同时买的存储器芯片是8K1位的芯片,213=8K,因此需要13根地址线,CS是片选线,它表示高电平有效,因此必须保持输入始终为高电平1,一个芯片只有一个输出数据,也就是只有一个数据线,因此,需要8个这样的芯片才能满足CPU的8位数据线的要求。如下面两幅图所示,就是连接的模型图,也就是主存容量的位扩展位,8K8位,也就是主存容量是8KB。

当CPU的容量不能满足时,可以采取字扩展的方式

线选法

此时芯片的CS片选控制线不再直接通过高电平输入1,因为如果同时为1,那么此时数据线同时向CPU输出数据,CPU不会知道该选择什么样哪一个芯片的数据。为了解决这个问题,此时A4和A13只能为01和10的状态,来保证同一个时间只能有一个芯片的CS片选线为接通的状态,来通知CPU到底接收哪一个输出信号的数据,那么此时就可以得出第一个芯片和第二个芯片的地址范围了,如图所示

译码片选法

通过上面的方法很显然有个弱点就是扩展n个芯片需要在CPU上有N个额外的地址线,因此,通过前面的译码器的概念,很容易就想到可以使用译码器来控制片选线,这种方法就是译码片选法。如图就是一个简单的模型。 让A13同时连接两个芯片,当A13输出信号为低电平0时,流经第一个芯片的就是0,流经第二个芯片的,通过非门的设计,此时就是1,那么CPU收到的数据信号就是第二个芯片的数据。如果使用了图示中的译码器,此译码器假如是3根数据线的话,那么就可以扩展8个芯片了,因为23=8。 下图就是一个使用两根数据线+译码器的扩展4个芯片的模型图

字位同时扩展法

如下就是一个字和位同时扩展的方法的模型图 红框部分表示先进行两个16K4位的芯片进行位扩展,此时就构成了16K8位的芯片,然后水平扩展4个进行字扩展,最终形成了一个64K*8位的容量的芯片(214=16K)

最新回复(0)