第四章、存储器

第四章、存储器

4.1、概述

问题1、存储器可分那些类型

答:按存储介质分、按存储方式分、按在计算机中的作用分

问题2、现代存储器的层次结构,为什么分层

答:为了满足各个对存储的需求。例如大容量、速度、价格等因素。

4.1.1、存储器分类

1、按存储介质分类

1、半导体存储器(易失)

(1)TTL:功耗高、速度快

(2)MOS:功耗低、功耗相对慢

2、磁表面存储器(非易失)

(1)磁头、载磁体

3、磁芯存储器(非易失)

(1)硬磁材料、环状元件

(2)图示

image-20230712000740244

4、光盘存储器(非易失)

(1)激光、磁光材料

2、按存储方式分类

1、存取时间与物理地址无光(随机访问)

(1)随机存储器:在程序中执行过程可读可写

(2)只读存储器:在程序中只能

2、存取时间与物理地址有关(串行访问)

(1)顺序存取存储器:磁带

(2)直接存取存储器:磁盘

3、按在计算机中的作用分类

image-20230712002003477

4.1.2、存储器的层次结构

1、存储器三个主要特性的关系

image-20230712003312620

1、存储体系:各层次的存储器通过软件硬件连接起来

2、数据在层次中调用,都是通过软件来自动调用的

2、缓冲—主存层次和主存—辅存层次

image-20230712004835217

1、主存和缓存通过硬件控制

2、主存的速度辅助存储器的容量和辅助存储器的价格

3、因为CPU的速度提升远远快于主存的速度,所以需要缓存来进行填补差距

4、缓存保存主存中的一些副本

4.2、主存储器—随机存取存储器

4.2.1、概述

1、主存的基本组成

1、内容

image-20230714002624127

2、主存和CPU的联系

1、内容

image-20230714002810274

3、主存中存储单元地址的分配

1、数据如何在主存储器中进行存储

1、存储12345678H这个数据如何在主存储器中进行存储?

方式一

(1)、按大端、大尾方式,高位字节存储

(2)、就是高位字节放在底部,低位字节放在顶部

image-20230720185356423

方式二

(1)、按照小尾、小端方式存储

(2)、就是高位字节放在高位地址,低位字节放在低位地址

image-20230720185409388

2、例如x86系统使用的是小尾小端方式

3、不同存储方式相互使用就会产生问题

4、例子

image-20230720185500655

4、主存的技术指标

1、存储容量:主存 存放二进制代码的总位数

2、存储速度

image-20230720185814149

3、存储器的带宽:位/秒

4.2.2、半导体存储芯片简介

1、问题:半导体的基本结构是什么?

2、问题:什么是半导体的译码驱动方式?

1、半导体存储芯片的基本结构

1、片选线,顾名思义选择芯片执行的导线

2、地址线:输入CPU地址给进地址

3、读写控制信号

image-20230727111652267

4、片选线、读写控制线

image-20230727112008997

2、存储芯片片选线的作用

(1)可以让一个或多个存储芯片同时工作

1、例子

image-20230727112518918

3、半导体存储芯片的译码驱动方式

1、线选法

image-20230727113704692

1、存储芯片容量越大,地址译码器转换的线也就越多,芯片集成度没有那么高

2、重合法

image-20230727120633254

(1)降低经过地址译码器后的的线。集成度高

?4.2.3、随机存取存储器(RAM)

1、问题:保存0和1的原理是什么?

2、问题:基本单元电路的构成是什么?

3、问题:对单元电路如何读出和写入?

4、问题典型芯片的结构是什么样子?

5、静态RAM芯片是如何进行读出和写入操作?

1、静态RAM(SRAM)

1、基本电路

2、存放0和1的触发器

3、控制行地址选择器

4、图示

image-20230727115436082

5、静态RAM基本电路的读操作

image-20230727115638139

6、静态RAM基本电路的写操作

image-20230727115853068

2、静态RAM芯片举例

1、WE低电平用于写操作,高电平表示读操作

2、CS是片选信号:低电平才被选中

3、外特征

image-20230727120253778

4、intel 2114RAM矩阵(64x64)读

image-20230727121316815

5、64行64列(因为一列有4行所以16*4,读数据是4位)

6、intel 2114RAM矩阵(64x64)写操作

image-20230727121450025

3、动态RAM(DRAM)

1、动态RAM基本单元电路

1、读出与原存信息相反

2、写入与输入信息相同

image-20230805162818039

2、动态RAM芯片举例(三管动态RAM芯片(Intel 1103)读)

image-20230805163244532

2、存储单元为1k(2^10)

3、刷新放大器(三角形)是因为电容会漏电,所以需要进行电容补充

3、动态RAM芯片举例(三管动态RAM芯片(intel 1103)写

1、图示

image-20230805163552821

4、动态RAM举例(单管动态RAM(4116 16kX1位)

1、图示

image-20230805163805021

2、4116(16kX1位)芯片读原理

image-20230805164558642

3、读放大器相对于跷跷板,左边高电平,右边就是底电平

4、该芯片的行和列是相反的

5、4116(16K X 位))芯片的写原理

image-20230805165122549

4、动态RAM刷新

1、刷新与行地址有关,不会影响存储单元中的内容

1、集中刷新

1、存取周期为5us 以128*128矩阵为例

image-20230805170509868

2、死区:为0.5us*128 = 64us

3、死时间率为:128/4000*100% = 3.2%

4、这段时间内动态RAM是无法使用的

2、分散刷新(存取周期为1微秒)

1、以128*128矩阵为例

image-20230805171043452

2、好处是没有死区

3、坏处是周期时间延长1倍,影响性能

3、分散刷新与集中刷新相结合(异步刷新)

1、还是以为128*128的存储芯片为例(存储周期为0.5微秒)

2、每隔15.6微秒刷新一次(一行)

3、局部看是集中刷新,全局看是分散刷新

image-20230805172031787

5、动态RAM和静态RAM的比较

image-20230805172902729

4.2.4、只读存储器(ROM)

1、早期发展问题历程

image-20230808105847737

1、掩模ROM(MROM)

1、任何信息无法修改

2、行列选择线交叉处有MOS管位"1"

3、行列选择器交叉处无MOS管“0”

2、PROM(一次性编程)

1、通过熔丝断和未断来控制信号

image-20230808110231678

3、EPROM(多次性编程)

image-20230808122239252

4、EEPROM(多次性编程)

1、电可擦写

2、局部擦写

3、全部擦写

5、Flash Memory(闪电型存储器)

EPROM 价格便宜,集成度高
EEPROM 电可擦洗重写
Flash Memory比EEPROM快 具备RAM功能

4.2.5、存储器与CPU的连接

1、存储器容量的扩展

1、位扩展(增加存储字长)

1、2114芯片是4位的所以有4条数据线,1k的2114芯片,大小位2^10=1k

2、片选和读写信号需要连接在一起

image-20230808123753725

2、字扩展(增加存储字的数量)

1、用2片1K X8位 存储芯片组成2K X8位的存储器

2、图示

image-20230809105854411

3、两个芯片不能同时工作,因为数据线只有8条,所以会混乱

4、系统给2k X8位的存储器多一条地址线,如果A10==0,就选择第一个芯片,A10=1就是第二个芯片

3、字、位扩展

1、4K*8位,总共有12根地址线,8根数据线

2、用8片1K4位存储芯片组成4K\8位的存储器

3、直接将8片1K*4的芯片分为4组

4、图示

image-20230809110958141

5、通过A10和A11来控制使用哪个芯片组

6、A10和A11分别为 00 01 10 11 来控制1、2、3、4组芯片的使用

3、存储器与CPU的连接

1、主要内容

image-20230809112713097

1、例子1

1、写出对应的二进制地址码

image-20230809112731308

2、确定芯片的数量及类型

3、分配地址线

image-20230809113612184

4、确定片选信号

image-20230809114738994

5、注意MREQ信号(内存请求信号)需要连接在片选器上

2、例子1:CPU与存储器的链接图

1、图示

image-20230809115644009

2、A13A12A11分别对应1,0,1,并且A10是低电平,才能与ROM和RAM进行连接

3、例子2

1、假设同前,要求最小4K为系统程序区,相邻8K为用户程序区

2、步骤1:写出对应的二进制地址码

3、确定芯片的数量及类型

4、分配地址线

5、确定片选信号

6、确定片选逻辑

4、例子2:写出对应的二进制地址码

1、MREQ需要接在G2A、或者G2B

2、CPU与存储器的连接图

image-20230811172314523

4.2.6、存储器的校验

需要解决的问题

1、为什么要对存储器的信息进行校验?

答:因为电子,可能会因为磁场等东西发生变化,代码执行错误等

2、为了效验信息是否正确,如何进行编码?

3、纠错或检错能力与什么因素有关?

4、校验出信息出错后是如何进行纠错?

5、除了教材上的校验码,还有什么容错编码?原理是什么?

1、合法代码集合

1、例子

image-20230811181407756

2、编码的最小距离

1、任意两组合法代码之间二进制位的最少差异数

2、编码的纠错、检错能力与编码的最小距离有关(距离越大,纠错和检错越强)

3、公式

image-20230811182135727

2、汉明码的组成

补充:奇偶校验

1、定义:是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验

2、内容

奇校验:使完整编码(有效位和校验位)中的"1"的个数为奇数个;
偶校验:使完整编码(有效位和校验位)中的"1"的个数为偶数个

3、例子

image-20230811184354045

4、校验位:就是在原本数据上加一个1,构成奇校验或者偶校验

1、内容
1、汉明码采用奇偶校验
2、汉明码采用分组校验

image-20230811185236822

3、汉明码的分组是一种非划分方式

image-20230811185319444

image-20230811192829861

4、如何进行分组

image-20230812105102914

1.把十进制翻译成对应的二进制数,然后根据1的位置进行分组

2、

5、汉明码的三要素

1、汉明码的组成需要添加?位检测位

image-20230812105549863

2、检测位的位置?

image-20230812105557726

3、检测位的取值?

image-20230812105608070

4、各检测位Ci所创承担的检测小组为

image-20230812105954427

3、例子4.4

1、题目:要求0101按“偶校验”配置汉明码

1、

image-20230812110249367

2、题目:按配偶原则配置0011的汉明码

1、解

image-20230812110542057

1、自己理解

image-20230812203007664

4、汉明码的纠错过程

image-20230812193842116

1、例子4.5

1、已知接收到啊的汉明码为0100111(按配偶原则配置)试问要求传送的信息是什么?

image-20230812194526491

2、自己做题思路

image-20230812204449337

2、例子2

1、写出按偶校验配置的汉明码0101101的纠错过程

image-20230812195001882

image-20230812205007054
3、例子3

1、按配奇原则,配置0011的汉明码

image-20230812205325388

4.2.7、提高访存速度的措施

1、采用高速器件

2、采用层次结构Cache—主存

3、调整主存的结构

1、单体多字系统

1、内容

image-20230812210304720

2、问题:会覆盖掉多余的48的数据寄存器,可能会发生不可避免的错误

3、问题:取出的数据寄存器64位,被分为4份,会导致只有一个被使用

2、多体并行系统

1、高位交叉 顺序编址

2、前两位是存储体的体号,后四位是存储地址

3、利用存储体和存储体内地址进行查找(图示)

image-20230812211824652

4、问题:会造成1个存储体繁忙,其他存储体十分清闲

5、适合提高存储器大小,不适合提高存储器的带宽

1、低位交叉 各个体轮流编址

2、后两位是存储体的体号(M0:00,M1:01,M2:10,M3:11)

4、前4位是存储体的体内地址

5、图示

image-20230812212645702

image-20230812212705825

3、低位交叉的特点

1、在不改变存取周期的前提下,增加存储器的带宽

image-20230812212839001

2、设四体地低位交叉存储器,存取周期为T,总线传输周期为t(tao),为实现流水线方式存取,应满足T=4τ

image-20230812213146874

4、高性能存储芯片

1、SDRAM(同步DRAM)

2、RDRAM:由Rambus开发,主要解决存储器带宽问题

3、带Cache的DRAM:在DRAM的芯片内集成了一个由SRAM组成的Cache,有利于猝发式读取

4.2.8、课后习题

1、习题一

1、某机字长为32位,其存储容量为64K

1、问题1:

1、若主存按字编址,它的寻址范围是多少?

2、解答1

1、寻址范围就是64K

2、32位是32bit,转换为byte要除以8

3、问题2

1、若主存按字节编址,试画出主存字节和字字节地址的分配情况

4、解答2

image-20230812215941754

2、习题二

1、问题及解答

image-20230812221158509

2、答案

image-20230812221206348

3、习题三

1、知识点CPU与存储器的连接

1、问题

image-20230812222029457

2、解答

1、写出对应的二进制地址码

image-20230812222549605

2、确定芯片的数量及类型

ROM:4K4位2片,RAM:4K82片

3、分配地址线

4、确定片选信号

image-20230812223119734

5、画出CPU和存储芯片的连接图

image-20230812223924412

4、习题四

1、CPU和存储器的连接

1、问题

image-20230812224654087

2、解答1

1、写出对应的二进制地址码

image-20230812224847560

2、确定芯片的数量及类型

8片RAM 8K*8位

3、分配地址线

4、确定片选信号

image-20230812225243944

5、CPU与存储器的连接图

image-20230812225416753

3、解答2:每个RAM的地址范围

image-20230812225556659

3、解答3

image-20230812225821648

4、解答4

image-20230812230135824

5、习题五

考察内容:存储器和CPU的连接、多体并行系统

1、问题

image-20230812230639880

2、分析:低八体交叉存储结构

1、每个RAM存储体容量为64KB/8=8KB,即:8K*8位RAM

image-20230812231202447

3、解答1:CPU与存储芯片的连接图

1、写出对应的二进制地址码

image-20230812231540471

2、确定芯片的数量和类型:8片RAM 8K*8位

3、分配地址线

4、确定片选信号

image-20230812231713472

5、CPU和存储器的连接图

image-20230812232120138

4、解答2

image-20230812232427185

4.3、高速缓冲存储器

4.3.1、概述

1、为什么要使用高速缓冲存储器

1、是为了避免CPU“空等”现象

2、CPU和主存(DRAM)的速度差异(图示)

image-20230813195559820

3、程序访问的局部性原理:时间局部性,空间的局部性

2、Cache的工作原理

1、主存和缓存的编址

1、图示

image-20230813200312452

2、标记是记录主存块号

3、主存和缓存按块存储 块的大小相同

2、命中和不命中

1、内容

image-20230813200606941

3、Cache的命中率

1、CPU与访问的信息在Cache中的比率

2、命中率与Cache的容量和块长有关

3、一般每块可以取4~8个字

4、块长取一个存取周期内从主存调出的信息长度

image-20230813201110954

4、Cache—主存系统的效率

1、公式

image-20230813201546002

3、Cache的基本结构

1、结构图

image-20230813202358788

2、Cache存储体、主存Cache地址映射、变换机构十分重要

3、变换机构:是将主存的块号或者地址号,转换为Cache的块号或地址号

4、Cache地址映射:通过块号找到响应CPU所需的资源

5、Cache替换机构:通过算法解决新的主存信息是否替换原来的Cache块地址信息号

4、Cache的读写操作

1、读操作

image-20230813204927365

2、写操作

1、Cache和主存的一致性

2、两种写法

image-20230813205424178

5、Cache的改进

1、增加Cache的级数

2、片载(片内)Cache:CPU中的Cache

3、片外Cache:就是CPU外,主板上的Cache

2、统一缓存和分立缓存

1、指令cache和数据Cache分开

2、与指令的控制方式有关

3、是否流水

4、例子

image-20230813205733230

4.3.2、Cache—主存的地址映射

1、主存当中的任意一块,如果要加入Cache中的哪一块

1、直接映射

1、图示

image-20230813210813614

2、主存当中任意一个给定的块,只能装载在某一个之指定的块

3、将主存储体划分为若干和Cache相同的存储体

4、类似哈希表

5、Cache存储体的第0块,可能是存储体中块的第0号,就需要写入标记

2、问题

1、十分容易发生块的冲突

2、Cache存储体中的字号0存储了,主存储体中的字块0,现在主存储体化中的区块2中的字块0需要被Cache访问,就会替换掉原来Cache存储体中的字号0存储体,导致1个字块卖命工作,其他字块围观

2、全相连映射

1、图示

image-20230813211235035

1、主存储器的字块,可以放在Cache存储器中的任意位置

2、问题

1、电路复杂,速度较慢

2、位数也比较长,比较器比较长

3、组相联映射

1、内容

1、图示

image-20230813211851593

2、把Cache分成块,再将块分成若干组,每组包含若干块

3、主存储器进行分区,每个区大小和Cache的块相同

4、相当于Cache中的组分为很多块,主存储器中的区块可以存放在第一组中的若干块

5、某主存块j按模Q映射到缓存的第i组中的任一块(全相连映射)

6、Cache每一组只有唯一一块,就变成直接相连

7、Cache靠近CPU需要高速度:就可以直接相连

8、中间层次:可以采用组相连方式

9、距离最远的层次:就可以用全相连映射方式

4、小结

image-20230813212755672

4.3.3、替换算法

1、Cache内存块满了,需要替换掉旧的内存

1、先进先出(FIFO)算法

2、近期最少使用(LRU)算法

1、最近一段时间内,使用最少的Cache内存块,及时使用也需要很长时间,就可以成为被替换的目标

4.4、辅助存储器

4.4.1、概述

1、特点

1、不直接与CPU交换信息

2、磁表面存储器的技术指标

1、内容

image-20230813213542523

4.4.2、磁记录原理和记录方式

1、磁记录原理

1、写操作

image-20230813213832663

2、读操作

image-20230813213936177

4.4.3、硬磁盘存储器

1、硬磁盘存储器的类型

1、固定磁头和移动磁头

1、固定磁头:磁头不变,盘片选择,磁头有很多个,但是速度会很快

2、移动磁头:磁头只有一个,速度相对慢

2、可换盘和固定盘

2、硬磁盘存储器的结构

1、图示

image-20230813214258992

2、磁盘控制器驱动:相当于接口

2、磁盘驱动器

1、图示

image-20230813214530288

2、控制十分精确

3、磁盘控制器

1、接受主机发来的命令,转换成磁盘驱动器的控制命令

2、实现主机和驱动器之间的数据格式转换

3、控制磁盘驱动器读写

4、磁盘控制器是主机与磁盘驱动器之间的接口(对主机:通过总线 对硬盘:设备控制器)

4、盘片

1、由硬质铝合金材料制作

4.4.4、软磁盘存储器

1、概述

1、比较

image-20230813215130437

2、软盘片

image-20230813215334305

4.4.5、光盘存储器

1、概述

1、采用光存储技术:利用激光写入和读出

2、内容

image-20230813215503595

2、光盘的存储原理

1、只读型和只写一次型:热作用(物理或化学)

2、可擦写光盘:热磁效应

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇