集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 921|回复: 1

双口RAM

[复制链接]
zxopenluyutong 发表于 2021-1-8 23:03:17 | 显示全部楼层 |阅读模式
随机存取存储器(英语:Random Access Memory,RAM)又称作“随机存储器”,台湾、港澳称作随机存取记忆体,是与CPU直接交换数据的内部存储器,也叫主存。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。

双口RAM 是在一个SRAM 存储器上具有两套完全独立的数据线、地址线和读写控制线,并允许两个独立的系统同时对该存储器进行随机性的访问。即共享式多端口存储器。

双口RAM最大的特点是存储数据共享。一个存储器配备两套独立的地址、数据和控制线,允许两个独立的CPU或控制器同时异步地访问存储单元。因为数据共享,就必须存在访问仲裁控制。内部仲裁逻辑控制提供以下功能:对同一地址单元访问的时序控制;存储单元数据块的访问权限分配;信令交换逻辑(例如中断信号)等。

双口RAM可用于提高RAM的吞吐率,适用于作于实时的数据缓存。

(1)对同一地址单元访问的竞争控制

如果同时访问双口RAM的同一存储单元,势必造成数据访问失真。为了防止冲突的发生,采用Busy逻辑控制,也称硬件地址仲裁逻辑。此处只给出了地址总线选通信信号先于片选脉冲信号的情况,而且,两端的片选信号至少相差tAPS——仲裁最小时间间隔(IDT7132为5ns),内部仲裁逻辑控制才可给后访问的一方输出Busy闭锁信号,将访问权交给另一方直至结束对该地址单元的访问,才撤消Busy闭锁信号,将访问权交给另一方直至结束对该地址单元的访问,才撤消Busy闭锁信号。即使在极限情况,两个CPU几乎同时访问同一单元——地址匹配时片选信号低跳变之差少于tAPS,Busy闭锁信号也仅输出给其中任一CPU,只允许一个CPU访问该地址单元。仲裁控制不会同时向两个CPU发Busy闭锁信号。

(2)存储单元数据块的访问权限分配

存储单元数据块的访问权限分配只允许在某一时间段内由1个CPU对自定义的某一数据块进行读写操作,这将有助于存储数据的保护,更有效地避免地址冲突。信号量(Semaphore,简称SEM)仲裁闭锁就是一种硬件电路结合软件实现访问权限分配方法。SEM单元是与存储单元无关的独立标志单元,图3给出了一个信号量闭锁逻辑框图。两个触发器在初始化时均使SEM允许输出为高电平,等待双方申请SEM。如果收到一方写入的SEM信号(通常低电平写入),如图3所示,仲裁电路将使其中一个触发器的SEM允许输出端为低电平,而闭锁另一个SEM允许输出端使其继续保持高电平。只有当先请求的一方撤消SEM信号,即写入高电平,才使另一SEM允许输出端的闭锁得到解除,恢复等待新的SEM申请。

(3)信令交换逻辑(signaling logic)

为了提高数据的交换能力,有些双口RAM采用信令交换逻辑来通知对方。IDT7130(1K容量)就是采用中断方式交换信令。利用两个特殊的单元(3FFH和3FEH)作为信令字和中断源。假设左端CPU向3FFH写入信令,将由写信号和地址选通信号触发右端的中断输出,只有当右端的CPU响应中断并读取3FFH信令字单元,其中断才被双口RAM撤消。
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2024-11-29 08:03 , Processed in 0.058056 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表