在一个存取周期中,CPU在存取时间内将数据写入内存或将内存数据读出,而在恢复时间内,CPU必须等待。也就是说,对于同一个存储单元单核CPU不能实现连续读写,必须等待存储单元的恢复时间。
注:DRAM芯片的恢复时间比较长,有可能是存取时间的几倍(SRAM的恢复时间较短)
多核心CPU访问同一个存储单元时也必须等待存储单元的恢复时间。CPU的读写速度很快,主存的恢复时间就会影响CPU的访存效率。
为解决恢复时间带来的问题,提高CPU访问存储器的速度,分别提出了双端口RAM和多模块存储器技术,它们同属于并行技术,前者为空间并行,后者为时间并行!!
双端口RAM——优化多核CPU访问一根内存条的速度
双端口RAM是指同一个存储器有左、右两个独立的端口,分别具有两组相互独立的地址线、数据线和读写控制线,允许两个独立的控制器同时异步地访问存储单元。当两个端口的地址不同时,在两个端口上进行读写操作一定不会发生冲突。
由于有两组线,总线设计主板设计RAM中电路都会更复杂。
两个端口对同一个主存的操作有以下4种情况: