计算机组成原理 主存和CPU连接与主存提速方案

2024-01-03 09:42:41

主存与CPU的连接

主存与CPU的连接
译码器
线选法
译码片选法
位拓展
字拓展
字位同时拓展

译码器

线选法

译码器
在这里插入图片描述

线选法
n条地址线线-> n个选片信号,电路简单,但是地址空间不连续
低电平有效:
输入电压为0,有效
输入电压为1,无效

译码片选法

在这里插入图片描述

译码片选法
n条地址线线-> 2 n 2^n 2n个选片信号,电路复杂,但是地址空间连续

总结
线选法译码片选法
n条地址线线->n个选片信号n条地址线线-> 2 n 2^n 2n个选片信号
电路简单电路复杂
地址空间不连续地址空间可连续,可以增加逻辑设计

位拓展

位扩展:
假定手头只有若干 8Kx1位的SRAM芯片。首先需要使用2片该芯片,把这2片芯片连接为类似1片8Kx2位的芯片
可以看出,连接后存储单元数量不变,每个单元包含的位由1个变为2个,这种连接叫作存储器的位扩充。
在这里插入图片描述

位扩展
假定手头只有若干 8Kx1位的SRAM芯片首先需要使用8片该芯片,把这8片芯片连接为类似1片8Kx8位的芯片。
在这里插入图片描述

字拓展

字扩展:
假定手头只有若于 8Kx8位的SRAM芯片。首先需要使用2片该芯片,把这2片芯片连接为类似1片16Kx8位的芯片可以看出,连接后存储单元包含的位数不变,存储单元的数目增多。这种连接叫作地址(字)扩充。
线选法
在这里插入图片描述

片选法
在这里插入图片描述

字位同时拓展

在这里插入图片描述

主存提速方案

主存提速方案
存储周期
存取时间
存取周期
双端口RAM
多模块存储器
单体多字
多体并行
低位交叉编址
高位交叉编址

存储周期

RAM读周期
在这里插入图片描述

读操作时,必须保证片选信号为低电平,读写信号为高电平。
t R C t_{RC} tRC? (读周期时间):指对芯片连续两次读操作之间的最小间隔时间。
t A t_A tA? (读出时间):从给出有效地址后,经过译码电路、驱动电路的延迟,到读出所选单元内容,并经I/O电路延迟,直到数据在外部数据总线上稳定出现所需的时间。显然,读出时间小于读周期时间。
t C O t_{CO} tCO? (片选到数据输出稳定的时间):数据能否送到外部数据总线上,不仅取决于地址,还取决于片选信号。因此, t C O t_{CO} tCO?是从有效到数据稳定出现在外部数据总线上的时间。
t C X t_{CX} tCX?(片选到数据输出有效时间):从片选有效到数据开始出现在数据总线上的间隔时间。
t O T D t_{OTD} tOTD?:片选无效后数据还需在数据总线上保持的时间。
t O H A t_{OHA} tOHA?:地址失效后,数据线上的有效数据维持时间,以保证所读数据可靠。

RAM写周期
在这里插入图片描述

执行写操作时,必须保证片选信号为低电平,读写信号为低电平。
t W t_W tW?(写入时间):为保证数据可靠地写入,与同时有效的时间必须大于或等于 t W t_W tW?
t A W t_{AW} tAW?(滞后时间):地址有效后,必须经过 t A W t_{AW} tAW?时间,WE/信号才能有效(低),否则可能产生写出错。
t W R t_{WR} tWR?(写恢复时间):WE/无效后,经tWR时间后地址才能改变,否则也可能错误地写入。
t D W t_{DW} tDW?:写入数据必须在写无效之前tDW时间就送到数据总线上。
t D H t_{DH} tDH?:WE/无效后,数据还要保持的时间。此刻地址线仍有效, t W R > t D H t_{WR}>t_{DH} tWR?>tDH?,以保证数据可靠写入。
t W C t_{WC} tWC?(写周期时间):表示连续两次写操作之间的最小时间间隔。 t W C = t A W + t W + t W R t_{WC} = t_{AW} + t_W + t_{WR} tWC?=tAW?+tW?+tWR?

存取时间
存取周期
在这里插入图片描述

双端口RAM

双口 RAM 是指一个特殊类型的RAM,它有两套完全独立的数据线、地址线和读 /写控制线。只要不同时访问同一个单元,两个独立的 CPU 可以同时对双口 RAM 进行随机访问。如果同时访问双端口RAM的同一个单元,由内部的控制电路决定哪个端口可以访问该单元。

在这里插入图片描述

注意
需要有两组完全独立的数据线、地址线、控制线。CPU、DRAM中也要有更复杂的控制电路

两个端口对同一主存操作有以下4种情况

  1. 两个端口同时对不同的地址单元存取数据。
  2. 两个端口同时对同一地址单元读出数据。
  3. 两个端口同时对同一地址单元写入数据。
  4. 两个端口同时对同一地址单元,一个写入数据,另一个读出数据。

解决方法∶ 置"忙"信号为0,由判断逻辑决定暂时关闭一个端口(即被延时),未被关闭的端口正常访问,被关闭的端口延长一个很短的时间段后再访问。

多模块存储器

传统存储器
在这里插入图片描述

多模块存储器
为提高访存速度,常采用多模块存储器,常用的有单体多字存储器多体并行存储器

单体多字存储器

单体多字系统的特点是存储器中只有一个存储体,每个存储单元存储 m 个字,总线宽度也为 m 个字。一次并行读出 m 个字,地址必须顺序排列并处于同一存储单元。
eg.单体四字存储器:每字W位,给定一个地址,可以在一个存取周期内读出4×W位指令或数据,使主存带宽提高到4倍

假设存取时间为r,恢复时间为3r那么存取周期为T=4r
在这里插入图片描述

特点

  1. 每个存储单元存储m个字,总线宽度也为m个字,一次并行读出m个字
  2. 指令和数据在主存内必须是连续存放的
多模块多体并行存储器存储器

多体并行存储器由多体模块组成。每个模块都有相同的容量和存取速度,各模块都有独立的读写控制电路、地址寄存器和数据寄存器。它们既能并行工作,又能交叉工作。
多体并行存储器分为高位交叉编址(顺序方式)和低位交叉编址(交叉方式)两种。
在这里插入图片描述

高位交叉编址

高位地址表示体号,低位地址为体内地址。高位交叉编址方式下,总是把低位的体内地址送到由高位体号确定的模块内进行译码。访问一个连续主存块时,总是先在一个模块内访问,等到该模块访问完才转到下一个模块访问,CPU总是按顺序访问存储模块,存储模块不能被并行访问,因而不能提高存储器的吞叶率。

体号 体内地址

低位交叉编址

低位地址为体号,高位地址为体内地址。低位交叉编址方式下,总是把高位的体内地址送到由低位体号确定的模块内进行译码。程序连续存放在相邻模块中。 因此称采用此编址方式的存储器为交叉存储器。采用低位交叉编址后,可在不改变每个模块存取周期的前提下,采用流水线的方式并行存取,提高存储器的带宽。

体内地址 体号

在这里插入图片描述

文章来源:https://blog.csdn.net/studycodeday/article/details/135330100
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。