2、低位交叉访问存储器
低位交叉访问存储器的主要目的是提高存储器访问速度。当然,在提高访问速度的同时,由于增加了存储器模块的数量,也就增加了存储器的容量。
低位交叉访问存储器的工作原理如图3.8所示,地址码的使用方法与高位交叉方式正好相反,其低位部分是存储体的体号,高位部分是存储体的体内地址。
假设一个采用低位交叉方式工作的主存储器的组成参数与上面采用高位交叉方式的存储器相同,则这个存储器的地址A的计算公式为:A=n×j+k;
如果已知这个存储器的地址为A,可以计算出对应存储体的体号和它的体内地址:
存储器的体内地址Aj的计算公式:Aj=
。
存储器的体号Ak的计算公式:。
图3.8 低位交叉访问存储器的结构
下面举一个简单的例子来说明采用低位交叉方式工作的存储器。一个由8个存储体构成的,总存储容量为64的主存储器的地址编写方法如图3.9所示。
图3.9 由8个存储体构成的主存储器的低位交叉编址方式
为了达到提高主存储器速度的目的,在采用低位交叉方式的存储器,在一个存储器周期内,n个存储体必须分时启动。启动的时间如图3.10所示。
如果每个存储体的访问周期为Tm, 则由n个存储体构成的主存储器,各存储体的启动间隔t为:t=
。
从图3.10看到,采用低位交叉方式工作的存储器实际上是一种采用流水线方式工作的并行存储器系统。在连续工作的情况下,保持每个存储体的速度不变,而整个存储器的速度可望提高n倍。
图3.10 低位交叉编址主存储器的分时启动
目前的计算机系统一般都存在主存储器速度远远低于CPU速度的问题,在多处理机系统中这个问题尤为突出。除了采用多级高速Cache之外,采用低位交叉方式的主存储器也是一种很好的方法。
采用低位交叉方式能够大幅度提高主存储器的速度,目前已经在共享主存储器的多处理机系统中得到广泛应用。许多高速的单处理机也采用了低位交叉方式的存储器作为主存储器。
直观地看,增加存储体个数,能够提高主存储器的速度,但是,主存储器的速度不是随存储体个数的增加而线性提高的。例如,在有的大型计算机中采用32个存储体低位交叉来构成主存储器,但是主存储器的速度只比单个存储体高10倍左右,其根本原因是存在有访问冲突。