本文主要是介绍存储器与CPU的协同工作 —— 双端口RAM和多模块存储器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、双端口RAM
双端口RAM是一种空间并行技术,它是指同一个存储器有左右两个独立的端口,分别具有两组相互独立的地址线、数据线和读写控制线,允许两个独立的控制器同时异步地访问存储单元。
当两个端口的地址不相同时,在两个端口上进行读写操作一定不会发生冲突。
当两个端口同时存取存储器的同一地址单元时,会有以下几种情况
- 两个端口不同时对同一地址单元存取数据。
- 两个端口同时对同一地址单元读出数据。
- 两个端口同时对同一地址单元写入数据。
- 两个端口同时对同一地址单元,一个写入数据,另一个读出数据。
其中,3可能会发生写入错误,4可能会发生读出错误。因此,我们的解决方法是:置“忙”信号为0,由判断逻辑决定暂时关闭一个端口(即被延时),未被关闭的端口正常访问,被关闭的端口延长一个很短的时间段后再访问。
二、多模块存储器
CPU的速度比存储器的快,若同时从存储器中取出 n 条指令,就可以充分利用CPU资源,提供运行速度。因此,多模块存储器是一种时间并行的技术,可以分为单体多字存储器和多体并行存储器。
这篇关于存储器与CPU的协同工作 —— 双端口RAM和多模块存储器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!