存储器芯片的输入输出信号
增加主存的存储字长-位扩展
增加主存的存储字数-字扩展
线选法 | 译码片选法 |
---|---|
n条线->n个选片信号 | n条线->2的n次方个选片信号 |
电路简单 | 电路复杂 |
地址空间不连续 | 地址空间可连续 |
主存容量扩展-字位同时扩展
译码器
双端口RAM和多模块存储器
双端口RAM
作用:优化多核CPU访问一根内存条的速度
需要有两组完全独立的数据线、地址线、控制线。CPU、RAM中也要有更复杂的控制电路
两个端口对同一主存操作有以下4种情况:
- 两个端口同时对不同的地址单元存取数据
- 两个端口同时对同一地址单元读出数据
- 两个端口同时对同一地址单元写入数据 (写入错误)
- 两个端口同时对同一地址单元,一个写入数据,另一个读出数据(读出错误)
解决方法:置“忙”信号为0,由判断逻辑决定暂时关闭一个端口(即被延时),未被关闭的端口正常访问,被关闭的端口延长一个很短的时间段后再访问
多体并行存储器
应该去几个“体”
采用“流水线”的方式并行存取(宏观上并行,微观上串行)
宏观上,一个存储周期内,m体交叉存储器可以提供的数据量为单个模块的m倍。
存取周期为T,存取时间为r,为了流水线不间断,应保证模块数m>=T/r
存取周期为T,总线传输周期为r,为了使流水线不间断,应保证模块数m>=T/r
多模块存储器
多体并行存储器
每个模块都有相同的容量和存取速度
各模块都有独立的读写控制电路、地址寄存器和数据寄存器。它们既能并行工作,又能交叉工作。
单体多字存储器
每个存储单元存储m个字
总线宽度也为m个字
一次并行读出m个字
每次只能同时取m个字,不能单独取其中某个字
指令和数据在主存内必须是连续存放的