双端口RAM

提高存储器访存速度一些措施。

存取周期

进行一次存取之后,是不能立即进入下一次存取的,存储器要进行一次恢复。

存取周期=存取时间+恢复时间

  1. 对不同时间进行不同存取操作,双端RAM
  2. 流水线的方式,多模块存储器

双端口RAM

置一个忙信号

多模块存储器

CPU的速度比存储器要快的,如果从存储器中同时存取n个字。可以提高cpu使用资源

补充:可以并行工作,如总线宽度为mW时,可以同时取出长度为mW的数据。

普通存储器

每行为1个存储单元

单体多字存储器

每个存储单元存储m个字,总线宽度也为m个字,一行并行读出m个字。

增加了存储器的带宽。

缺点:指令和数据在主存内必须连续存放。

多体并行的存储器

每个模块都有相同的容量和存取速度,各个模块都有独立的读写控制电路、地址寄存器和数据寄存器

编制方式:

高位交叉编址的多体存储器

高位是体号,低位是体内地址

假如有8个存储单元

相当于说,先确定是哪一个(存储体),然后在在那一个里面找相对应的一块。

低位交叉编址的多提存储器

低位是体号,高位是体内地址

假如有8个存储单元

先找到具体的位置,在看哪一个存储体。

为什么要这么弄?

假如每个存储体的存储周期为T

连续访问:

00000

00001

00010

00011

00100

高位

其实就是在M0里一直访问

时空图:

如果连续访问这个5个地址,需要花费5t个时间。并没有带来什么好处。

高位交叉编址相当于扩容,每个其实还是相当于独立的,并没有带来时间优势。

采用高位交叉编址,连续取n个存储字,耗时nT

低位

先访问M0的0号单元,接下来00001,是M1的0号单元,只需要间隔一小段时间。然后就是M2,M3.都是用一小段时间。可以相当于是同时访问。大大减少了存取时间。

时空图:

时间如何计算?

假设启动完M0后启动M1的时间间隔是τ,启动完M1在启动M2的时间间隔是τ、启动完M2在启动M3的时间间隔是τ,接下来启动完M3在启动M0的时间间隔也是τ

所以就有总时间T+4τ

假如连续存取n个存储字,采用低位交叉编址,耗时:T+(n-1)τ

流水线(考试常考)

微观(计算题)

有m个存储体,存储周期是T,字长W,每隔r时间启动下一个存储体,连续存放n个字,求存储器的存取速率。

\[连续存取n个字耗时=T+(n-1)r
\]
\[!!!注意:m≥T/r
\]

如果m<T/r

还需要在等多一个r

如果m>T/r

所以:

\[带宽=\frac{n*w}{T+(n-1)r}
\]

如果n较大时,带宽->W/r

对比单个存储体的带宽:W/T

宏观(概念题)

一个存储周期内,交叉存储器可以提供的数据量为单个模块的m倍。

回顾

提出这样的存储器是为了提高CPU的访存速度

最新文章

  1. 再探@font-face及webIcon制作
  2. C#高级一
  3. 有哪些关于 Android 开发的博客值得订阅?
  4. TPARAMS和OLEVARIANT相互转换
  5. SPOJ CNTPRIME 13015 Counting Primes (水题,区间更新,求区间的素数个数)
  6. 使php支持mbstring库
  7. Chrome启动参数的配置问题的补充
  8. UIAutomator 学习版
  9. Flexigrid折行显示问题
  10. Core Animation之多种动画效果
  11. NodeMCU入门(5):Docker Image 构建固件,开启SmartConfig
  12. Delphi中paramstr的用法
  13. jq实现碰到边缘反弹的动画
  14. 个人对于 Maven 的理解
  15. Confluence 6 升级自定义的站点和空间获得你的自定义布局
  16. Linux命令:cd
  17. :before与::before的区别
  18. Dell 1420N使用Kubuntu默认无线驱动后网络不稳定的解决方法
  19. http状态码汇总及代表意思
  20. How to simplify a PHP code with the help of the fa&#231;ade pattern?

热门文章

  1. Python_Python处理JSON文件
  2. Android10_原理机制系列_AMS之AMS的启动
  3. PVE简单迁移虚拟机
  4. 用CorelDRAW来制作产品结构图的方法
  5. 关于Java中的内存屏障
  6. 对数组进行排序成最小的,相当于自己实现了一次String的compareTo函数,不过是另类的。
  7. LNMP 一键安装脚本
  8. WPF有关控件和模板样式设计的微软官方文档
  9. kafka入门之broker-集群管理
  10. dubbo起停之服务暴露