• 高位交叉编址与低位交叉编址


    1.多体并行存储器

      多体并行交叉存储器是由多个独立的、容量相同的存储模块构成的多体模块存储器。它解决的主要问题是提高主存储器的数据传输速率。

      多体并行存储器分为高位交叉编址低位交叉编址两种。

    2.高位交叉编址

      

      图是适合于并行工作的高位交叉编址的多体存储器结构示意图,图中程序因按体内地址顺序存放(一个体存满后,再存入下一个体),故又有顺序存储之称。

      高位地址可表示体号,低位地址为体内地址。按这种编址方式,只要合理调动,使不同的请求源同时访问不同的体,便可实现并行工作。

      例如,当一个体正与CPU交换信息时,另一个体可同时与外部设备进行直接存储器访问,实现两个体并行工作。

    3.低位交叉编址:

      

      图是低位交叉编址的多体模块结构示意图。由于程序连续存放在相邻体中,故又有交叉存储之称。

      低位地址用来表示体号,高位地址为体内地址。这种编址方式又称为模M编址(M等于模块数),一般模块数取2的方幂,使硬件电路比较简单。有的机器为了减少存储器冲突,采取质数个模块。

     4.理解

      对于高位交叉编址比较好理解,就像单元号与房号。体号就是单元号,找到程序在体,体内地址就是房号,找到程序的开始位置。

      如何理解程序连续放在相邻的体中,我们举个实际例子: 

      存储体的有2个存储芯片,存储周期为100ns,数据按放置方法,先放第一个芯片,放满后再放第2个芯片(顺序方式)。

      那么你读数据的过程就是这样:读0位置数据,等100ns,读1位置数据,等100ns读2位置数据。

      但如果换个方式来放,0位置是1号芯片起始,1位置是2号芯片起始位置,2位置是1号芯片第2个单元,3位置是2号芯片的第2个单元这样交叉来编址。

      再回忆存取周期的概念:存取周期等于存取时间+恢复时间,你读一个芯片后,必须间隔一段时间才能去读。采用交叉编址后,你的读过程就像这样:

      读0位置数据到缓冲区,40ns后,CPU取走了数据。这时1号芯片的100ns的周期还没过,不能去读,但幸运的是我们读的不是1号芯片,而是2号芯片,这样,我们就把2号芯片的数据读到缓冲区。过了40ns后,CPU取走数据,此时过去了80ns,我们只需再等20ns就可以继续去读3号位置数据,这样速度就比以前快了很多。

    参考博客链接:https://blog.csdn.net/nuo_Shar/article/details/79048019

     

  • 相关阅读:
    数组相似性计算
    关于GANs原论文里的数学证明
    Python 画个图
    Golang脱坑指南: goroutine(不断更新)
    Java面试细节整理(不断更新)
    从统计看机器学习(二) 多重共线性的一些思考
    从统计看机器学习(一) 一元线性回归
    数据库存储技术基础(一) 字典编码
    JVM内存管理笔记
    R语言rank函数详细解析
  • 原文地址:https://www.cnblogs.com/fengchuiguobanxia/p/16119482.html
Copyright © 2020-2023  润新知