第5章 存储器系统设计
操作系统原理第5章 存储管理
![操作系统原理第5章 存储管理](https://img.taocdn.com/s3/m/26d98723d0d233d4b14e69fd.png)
• ⑶最佳适应算法
• 最佳适应算法的空闲链是按空闲区从小到大顺序排 列。为进程选择分区时总是寻找其大小最接近进程 所要求的存储区域。所谓“最佳”是指每次为进程 分配内存时,总是把能满足要求、又是最小的空闲 分区分配给进程,避免“大材小用”。
• 因为每次分配后所切割下来的剩余部分总是最小的, 这样将加速碎片的形成。
• ①如果被回收空闲分区没有空闲伙伴分区,那么保留该分区为一 个独立的空闲分区,否则执行②;
• ②合并回收分区及其伙伴分区,从而得到一个尺寸(2I+1)更大的 回收空闲分区,转移到①;
一个伙伴系统内存分配与回收的例子
• 伙伴系统克服了固定分区和动态分区存储管理技术的缺陷。但是伙伴 系统存在一个问题,即内存空间需要不断地进行分裂和合并,频繁的 伙伴分区合并操作会浪费很多时间。
• ③内存分配原则,以页帧为单位来分配内存,将进程若干个逻辑上连续的 页面装入若干个离散的页帧中,由页表提供进程的页号到存储空间帧号的 映射。
5.2.4伙伴系统
• 其实现原理如下: • 一个伙伴系统内存的用户可用空间为2U。进程申请存储空间时,
系统总是为其分配大小为2I的一个空闲分区。其中S≤I≤U,2S是系 统允许的最小分区尺寸。在实际操作系统中,最小分区尺寸一般 为212。 • 如果进程申请的存储空间大小为K,且2I-1<K≤2I,则将整个2I大小的 分区分配给该进程;否则,该分区被分割成两个大小相等的伙伴 分区,大小为2I-1;再判断K是否满足条件:2I-2<K≤2I-1,若满足条件, 则将两个伙伴中的任何一个分配给该进程。否则,将其中一个伙 伴又分成两个大小相等的伙伴分区;此过程一直继续进行,直到 产生的分区满足条件I-J≥S并2I-J-1<K≤2I-J,将2I-J大小的分区分配给该 进程;当I-J-1<S时,系统不再分割成两个大小相等的伙伴分区,将 2S大小的分区分配给该进程。 • 当进程执行完毕,释放一个尺寸为2I的分区时,系统用下面的算法 回收该分区。
微机原理第五章 存储器
![微机原理第五章 存储器](https://img.taocdn.com/s3/m/398cf83e0b1c59eef8c7b4fb.png)
(00000H~007FFH)
A11
CPU
A19
…
A0~A10
6116 CS
2)部分译码法 系统总线中的地址总线除片内地址外,部分高位地址(不是
全部高位地址)接到片外译码电路中参加译码,形成片选信号。 因此对应于存储芯片中的单元可有多个地址 。
(二)内存与CPU连接时的速度匹配
对CPU来说,读/写存储器的操作都有固定的时序(对8086 来说需要4个时钟周期),由此也就决定了对内存的存取速 度要求。
(三)内存容量的配置、地址分配 1. 内存容量配置
• CPU寻址能力(地址总线的条数) 软件的大小(对于通用计算机,这项不作为主要因素)
2. 区域的分配 RAM ROM 3. 数据组织 (按字节组织) 16位数据,低位字节在前,高位字节在后,存储器奇偶分体 (四)存储器芯片选择 根据微机系统对主存储器的容量和速度以及所存放程序的不同等 方面的要求来确定存储器芯片。它包括芯片型号和容量的选择。
24V
S
SiO2 G
D
字线
Vcc 位 线 输 出
P+ + + P+ N衬底
浮栅MOS
位
D
线
浮栅管
S
特点: 1)只读, 失电后信息不丢失 2)紫外线光照后,可擦除信息, 3)信息擦除可重新灌入新的信息(程序) 典型芯片(27XX) 2716(2K×8位),2764(8K ×8位)……
D0 D8
CE
址
线
存储体
启动
控制逻辑 控制线
读 写
数 据 CPU
电寄
路存
器数
第5章 虚拟存储器 (1)
![第5章 虚拟存储器 (1)](https://img.taocdn.com/s3/m/3d938a5f5bcfa1c7aa00b52acfc789eb172d9eaf.png)
• (2)驻留性,是指作业被装入内存后,整个作业都一直驻留在内存中,其中 任何部分都不会被换出,直至作业运行结束。尽管运行中的进程被阻塞,而处于 长期等待状态,它们都仍将驻留在内存中,继续占用宝贵的内存资源。
虚拟存储ห้องสมุดไป่ตู้概述
虚拟存储器的定义和特征
虚拟存储器的特征
• (3)虚拟性。是指能够从逻辑上扩充内存容量,使用户所看到的内存容 量远大于实际内存容量。这样,就可以在小的内存中运行大的作业,或者 能提高多道程序度。它不仅能有效地改善内存的利用率,还可提高程序执 行的并发程度。
• 虚拟存储器目前已在大、中、小及微机上广泛采用。虚拟性是以多次 性和对换性为基础的,或者说,仅当系统允许将作业分多次调入内存,并 能将内存中暂时不运行的程序和数据换至盘上时,才能实现虚拟存储器。
虚拟存储器概述
5.1.3 虚拟存储器的实现方法 P167
• 在虚拟存储器中,允许将一个作业分多次调入内存。所以,虚拟存储器的 实现,都建立在离散分配存储管理方式的基础上。目前,所有的虚拟存储器都 是采用下述方式之一实现的。
• 1.分页请求系统
• 分页请求是在分页的基础上增加了请求调页功能和页面置换功能所形成的 页式虚拟存储系统。它允许用户程序只装入少数页面的程序(及数据)即可启 动运行。以后,再通过调页功能及页面置换功能陆续地把即将运行的页面调入 内存,同时把暂不运行的页面换出到外存上。置换时以页面为单位;为了能实 现请求调页和页面置换功能,系统必须提供硬件支持和请求分页的软件。
5.2 请求分页存储管理方式 P168
微机原理习题集答案
![微机原理习题集答案](https://img.taocdn.com/s3/m/a2aefdd06037ee06eff9aef8941ea76e58fa4ae6.png)
第1章 概述1.电子计算机主要由.电子计算机主要由 运算器运算器 、 控制器控制器 、 存储器存储器 、 输入设备输入设备 和 输出设备输出设备 等五部分组成。
等五部分组成。
等五部分组成。
2. 运算器运算器 和 控制器控制器 集成在一块芯片上,被称作CPU CPU。
3.总线按其功能可分.总线按其功能可分 数据总线数据总线 、 地址总线地址总线 和 控制总线控制总线 三种不同类型的总线。
三种不同类型的总线。
4.计算机系统与外部设备之间相互连接的总线称为.计算机系统与外部设备之间相互连接的总线称为 系统总线(或通信总线)系统总线(或通信总线) ;用于连接微型机系统内各插件板的总线称为系统内总线(板级总线) ; CPU 内部连接各寄存器及运算部件之间的总线称为内部连接各寄存器及运算部件之间的总线称为 内部总线内部总线 。
5.迄今为止电子计算机所共同遵循的工作原理是迄今为止电子计算机所共同遵循的工作原理是 程序存储程序存储 和 程序控制程序控制 的工作原理。
的工作原理。
这种原理又称这种原理又称为 冯·诺依曼型冯·诺依曼型 原理。
原理。
第3章 微处理器及其结构1.8086/8088 CPU 执行指令中所需操作数地址由执行指令中所需操作数地址由 EU EU EU 计算出计算出计算出 16 16 16 位偏移量部分送位偏移量部分送位偏移量部分送 BIU BIU BIU ,由,由,由 BIU BIU BIU 最后最后形成一个形成一个 20 20 20 位的内存单元物理地址。
位的内存单元物理地址。
2.8086/8088 CPU CPU在总线周期的在总线周期的在总线周期的T1 T1 T1 时刻,用时刻,用时刻,用A19/S6A19/S6A19/S6~~A16/S3 A16/S3 输出输出输出 20 20 20 位地址信息的最高位地址信息的最高位地址信息的最高 4 4 4 位,而在位,而在其他时钟周期,则输出其他时钟周期,则输出 状态状态 信息。
微机原理第5章存储器系统
![微机原理第5章存储器系统](https://img.taocdn.com/s3/m/cafb0c19aa00b52acec7ca16.png)
3. 工作方式
数ห้องสมุดไป่ตู้读出 字节写入:每一次BUSY正脉冲写
编程写入
入一个字节
自动页写入:每一次BUSY正脉冲写
入一页(1~ 32字节)
字节擦除:一次擦除一个字节 擦除
片擦除:一次擦除整片
72
4. EEPROM的应用
可通过编写程序实现对芯片的读写; 每写入一个字节都需判断READY / BUSY
主存储器 虚拟存储系统
磁盘存储器
8
Cache存储系统
对程序员是透明的 目标:
提高存储速度
Cache
主存储器
9
虚拟存储系统
对应用程序员是透明的。 目标:
扩大存储容量
主存储器
磁盘存储器
10
3. 主要性能指标
存储容量(S)(字节、千字节、兆字节等) 存取时间(T)(与系统命中率有关)
端的状态,仅当该端为高电平时才可写 入下一个字节。
P219例
73
四、闪速EEPROM
特点:
通过向内部控制寄存器写入命令的方法 来控制芯片的工作方式。
74
工作方式
数据读出
读单元内容 读内部状态寄存器内容 读芯片的厂家及器件标记
CAS:列地址选通信号。
地址总线上先送上行地址,后送上列地址,它们 分别在#RAS和#CAS有效期间被锁存在锁存器中。
WE:写允许信号
DIN: 数据输入
WE=0 WE=1
数据写入 数据读出
DOUT:数据输出
49
3. 2164在系统中的连接
与系统连接图
50
三、存储器扩展技术
51
1. 存储器扩展
1 A15 1 A14 1 A13
第 5 章 存储层次
![第 5 章 存储层次](https://img.taocdn.com/s3/m/55726fb7fd0a79563c1e72bb.png)
2014-4-22
24
各级存储器的主要主要性能特性
存储器层次 通用寄存器 缓冲栈 存储周期 存储容量 价格$C/KB 访问方式 材料工艺 <10ns <512B 1200 <10ns <512B 80 Cache 主存储器 磁盘存储器 脱机存储器
10~60ns 60~300ns 10~30ms 2~20min 8KB~2MB 32MB~1GB 1GB~1TB 5GB~10TB 3.2 0.36 0.01 块访问 磁表面 0.0001 文件组 磁、光等
2014-4-22 7
• ⑷ 失效处理:程序切换 • 失效:在主存中没有找到要访问的程序 或数据。
• ⑸ 主存 — 辅存层次对应用程序员是完 全透明的,对系统程序员是部分透明的。
2014-4-22
8
• ⑹ 对辅存的访问是通过访问内存实现的 • 主存 — 辅存层次通过辅助软、硬件的支持, 把主存和辅存组织成存储体系。使得从整体 来看,存储体系的速度接近于主存的速度, 而容量和价格接近于辅存。 • 主存 — 辅存层次常被用于实现虚拟存储器, 以便向编程人员提供大量的程序空间。
1.命中率 H
• 命中(Hit):要访问的信息在Mi中可访问到。 • 失效(Miss):要访问的信息在Mi中不可访问 到。 • 在多级层次结构中,要访问的信息在Mi中可访 问到的概率称为Mi的命中率,记为Hi,即命中 的次数与总访问次数之比。 • 失效率(不命中率)1-Hi:失效访问的次数与 总访问次数之比。 • 通常Si越小,Hi越低。
2014-4-22 28
5.2.1
Cache基本工作原理和结构
• 1. Cache的基本结构 • ⑴ Cache存储阵列 • ⑵ 地址映像变换机构 • ⑶ 替换策略实现机构
计算机操作系统教程(张尧学(第三版)第五章
![计算机操作系统教程(张尧学(第三版)第五章](https://img.taocdn.com/s3/m/f08f302daaea998fcc220e67.png)
精品课程系列-计算机学院版权所有
关于动态地址重定位可以如下图所示的过程说明:
制 作 者 : 郭 平 、 王 在 模 、 何 静 媛
用户程序的虚地址空间 0 100 1KB 0 内存 基地址寄存器 操作系统 22628 22KB 22528
XXXXX
20KB 22KB 22KB+100 XXXXXX
制 作 者 : 郭 平 、 王 在 模 、 何 静 媛
精品课程系列-计算机学院版权所有
动态地址重定位
制 作 者 : 郭 平 、 王 在 模 、 何 静 媛
动态地址重定位是在程序执行过程中,在CPU访问 内存之前,将要访问的程序或数据地址转换成内存地 址。动态地址重定位依靠硬件地址变换机构完成。
硬件地址转换机构一般由一个“基地址寄存器” 和一个“虚地址寄存器”组成,用户程序不做任何修 改地装入分配给它的存储区域。当调度到用户程序运 行时,则转换成实际的物理地址。
精品课程系列-计算机学院版权所有
分区的分配与释放
制 作 者 : 郭 平 、 王 在 模 、 何 静 媛
分区的分配: 若采用的是一个队列的管理方案,则当一个分区被释放时, 需要在队列中选出一个作业运行,可以有以下几种方案: (1)选出第一个可容纳的作业。该方案虽然实现简单,选择 率高,但是可能会因为一个小作业进入而浪费掉该分区的大部分 存储空间,存储利用率不高。 (2)在队列中找出该分区能容纳的最大的作业。由于每个分 配出的分区产生出的内部碎片小,因此,此方案存储空间的利用 率高;缺点是对小作业不公平。
22kb10022kb300023kbd图51地址变换示意图郭平王在模何静媛其中程序a中的一条入口地址为3000的一条指令为call100其中程序a中的一条入口地址为3000的一条指令为call100在装入内存之后由于程序的起始地址不再为0故程序中的指令需要做相应的转换
微机原理和接口技术-5-2 存储系统
![微机原理和接口技术-5-2 存储系统](https://img.taocdn.com/s3/m/d42844dec77da26924c5b055.png)
20
Zuo 华中科技大学计算机学院
微机原理与接口技术---Chapter5 存储器
例3 (1)解:如果ROM和RAM存储器芯片都采用 8K×1的芯片,试画出存储器与CPU的连接图。
MREQ# A15-0 R/W#
CPU
D7~D0
OE#
例2解
微机原理与接口技术---Chapter5 存储器
MREQ# A20-0 R/W#
CPU
D7~D0
OE#
A20-18
000
3-8译码器
001
010
A17-0
WE A CS
256K ×8
D
WE A CS
256K ×8
D
WE A CS
256K ×8
D
D7~D0
D7~D0
D7~D0
…
111
WE A CS
如果采用的字节编址方式,则需要20条地址线,因为220=1024K byte。
注:字编址方式时,每个32位字地址能够访问4个字节; 如果按照字节编址方式,则每个地址只对应一个字节, 因此所需的地址数是前者的4倍, 218* 4=220 ,即需要20条地址线)
13
Zuo 华中科技大学计算机学院
微机原理与接口技术---Chapter5 存储器
解:256K*8位SRAM芯片包含18根地址线 (1) 该存储器需要2048K/256K = 8片SRAM芯片; (2) 需要21条地址线, 因为221=2048K, 其中高3位经过译码器输出后用于芯片选择, 低18位作为每个存储器芯片的地址输入。 (3) 该存储器与CPU连接的结构图如下。
单片微机原理系统设计与应用课后部分习题答案
![单片微机原理系统设计与应用课后部分习题答案](https://img.taocdn.com/s3/m/8d1d354376232f60ddccda38376baf1ffc4fe3d6.png)
单⽚微机原理系统设计与应⽤课后部分习题答案第⼆章 MCS-51单⽚机硬件结构2-5. 8051单⽚机堆栈可以设置在什么地⽅?如何实现?答:8051单⽚机堆栈可以设置在内部RAM中。
当系统复位时,堆栈指针地址为07H,只要改变堆栈指针SP的值,使其为内部RAM中地址量,就可以灵活的将堆栈设置在内部RAM中。
2-16. 8051单⽚机内部数据存储器可以分为⼏个不同的区域?各有什么特点?2-21.复位后,CPU内部RAM各单元内容是否被清除?CPU使⽤的是哪⼀组⼯作寄存器?它们的地址是什么?如何选择确定和改变当前⼯作寄存器组?答:复位并不清除CPU内部RAM单元中内容,掉电会清除内部RAM 中内容。
复位以后因为PSW=00H,所以选择⼯作寄存器0区,所占地址空间为00H-07H。
⼯作寄存器组可以查询PSW中的RS1(PSW.4)和RS0(PSW.3)来确定,改变当前RS1和RS0的值即可改变当前⼯作寄存器组。
2-22.指出复位后⼯作寄存器组R0-R7的物理地址,若希望快速保护当前⼯作寄存器组,应采取什么措施?答:复位⼯作寄存器组R0-R7的物理地址为00H-07H。
如希望快速保护当前⼯作寄存器组,可以通过改变PSW中RS1(PSW.4)和RS0(PSW.3)的当前值来完成。
第三章 MCS-51指令系统3-6.设系统晶振为12MHz,阅读下列程序,分析其功能,并⼈⼯汇编成机器代码。
答:因为AJMP指令必须有PC指针地址,所以本题解题时设程序开始地址为1000H。
本程序完成功能是使P1.0⼝输出⽅波:T=2*((3*250+2+2)*10+1+2+2)=15090us=15.09ms翻译成机器语⾔的难点在于AJMP⼀句,根据AJMP指令代码可知,该指令为2个字节,⾼8为字节构成为“A10A9A800001”,低8位字节构成为“A7-A0”。
⼜有设置了程序起始地址为1000H,很容易可以写出各指令的地址,AJMP的绝对转移⽬标地址为1002H,A10=0、A9=0、A8=0,所以机器代码为“01 02”,⽬标地址在2区,因为A15-A11为“00010”。
存储器系统设计
![存储器系统设计](https://img.taocdn.com/s3/m/0872d6174431b90d6c85c76a.png)
ALE
CE
OE
A0~A7 A8~A14 62256 D0~D7
CE
OE
G 373 1D~8D 8
P0
PSEN
WR
RD
系统的EPROM(27256)0000~7FFFH(管理仿真系统的程序),系统的仿 真ROM和数据存储器为8000~FFFFH。当执行系统的管理程序时, 27256有效(尽管有效 PSEN ,但地址不对),62256无效,当执行自己 编的仿真程序时,系统转向62256中执行你输入的程序,当遇到MOVX
ALE
8
2764
2764
2764
P0
PSEN
P2.6 0 0 1 P2.5 0 1 0 /Y0 /Y1 /Y2 0 1 1 0000-1FFFH (8000H-9FFFH) 括号内 1 0 1 2000-3FFFH(A000H-BFFFH) 为重叠 1 1 0 4000-5FFFFH(C000H-DFFFH) 区!
74LS138的真值表
输出有效时,只有一个为低电平,其余为高电平,故用其来接被选的芯片时, 只有一个被选中。保持芯片之间地址的不重叠。(74LS139的介绍见书P158)
5.2.3 程序存储器扩展设计
(1)扩展16KB EPROM(线选法用单片机地址总线高位地址作为选择某 一存贮器的片选信号)。
;将最后一个字节数据取出 ;原始数据比较,陷入死循环! ;最高位不同,再查!
地址 输出
指令 输入
PCL 输出
指令 输入
PCL 输出
P2口输出程序存储器的高8位地址PCH(A15~A8),具有锁存功能。 P0口地址/数据复用线,在ALE上升为高电平时,P0口输出程序存储 器的低8位地址(A7~A0),在ALE的下降沿,把A7~A0锁存到外部地 址锁存器中,得到地址信号,接着,P0口由输出变为输入,高8位地 址不变(低8位已锁存),故已选定外部ROM的某一个地址,随即 PSEN 低电平有效,外部ROM通,对应地址单元中的指令字节出现在数据 总线上供CPU读取。
操作系统第5章(存储器管理习题与解答)
![操作系统第5章(存储器管理习题与解答)](https://img.taocdn.com/s3/m/fd9e4f89941ea76e58fa04dd.png)
第5章存储器管理习题与解答5.2 例题解析例5.2.1 为什么要引入逻辑地址?解引入逻辑地址有如下原因:(1) 物理地址的程序只有装入程序所规定的内存空间上才能正确执行,如果程序所规定内存空间不空闲或不存在,程序都无法执行;(2) 使用物理地址编程意味着由程序员分配内存空间,这在多道程序系统中,势必造成程序所占内存空间的相互冲突;(3) 在多道程序系统中,程序员门无法事先协商每个程序所应占的内存空间的位置,系统也无法保证程序执行时,它所需的内存空间都空闲。
(4) 基于上述原因,必须引入一个统一的、在编程时使用的地址,它能够在程序执行时根据所分配的内存空间将其转换为对应的物理地址,这个地址就是逻辑地址。
(5) 逻辑地址的引入为内存的共享、保护和扩充提供方便。
例5.2.2 静态重定位的特点有哪些?(1) 实现容易,无需增加硬件地址变换机构;(2) 一般要求为每个程序分配一个连续的存储区;(3) 在重定位过程中,装入内存的代码发生了改变;(4) 在程序执行期间不在发生地址的变换;(5) 在程序执行期间不能移动,且难以做到程序和数据的共享,其内存利用率低。
例5.2.3 动态重定位的特点有哪些?(1) 动态重定位的实现要依靠硬件地址变换机构,且存储管理的软件算法比较复杂;(2) 程序代码是按原样装入内存的,在重定位的过程中也不发生变化,重定位产生的物理地址存放在内存地址寄存器中,因此不会改变代码;(3) 同一代码中的同一逻辑地址,每执行一次都需要重位一次;(4) 只要改变基地址,就可以很容易地实现代码在内存中的移动;(5) 动态重定位可以将程序分配到不连续的存储区中;(6) 实现虚拟存储器需要动态重定位技术的支持;尽管动态重定位需要硬件支持,但他支持程序浮动,便于利用零散的内存空间,利于实现信息共享和虚拟存储,所以现代计算机大都采用动态重定位。
例5.2.4 装入时动态链接的优点有哪些?(1)便于软件版本的修改和更新在采用装入时动态链接方式时,要修改或更新各个目标模块,是件非常容易的事,但对于经静态链接以装配在一起的装入模块,如果要修改或更新其中的某个目标模块时,则要求重新打开装入模块,这不仅是低效的,而且对于普通用户是不可能的。
单片机教程 第5章-存储器
![单片机教程 第5章-存储器](https://img.taocdn.com/s3/m/d7b756f9aef8941ea76e05b4.png)
MOS存储器按工作特点、作用以及制造工艺可分为: 存储器按工作特点、作用以及制造工艺可分为: 存储器按工作特点
动态DRAM 数据存储器 动态 RAM Random Access Memory 静态SRAM 静态 MOS存储器 存储器 掩膜ROM — Read Only Memory 非易失 掩膜 ROM 现场可编程 现场可编程PROM — Programmable ROM 程序存储器 可擦可编程EPROM — Erasable PROM 可擦可编程 电可擦可编程E 电可擦可编程 2ROM — Electrically EPROM 闪速存储器 — Flash Memory
第5章:半导体存储器
本章基本要求: 本章基本要求:
1、存储器基本概念 2、RAM、ROM存储器工作原理RAM、ROM存储器工作原理 存储器工作原理51单片机系统外部存储器的连接 单片机系统外部存储器的连接* 3、51单片机系统外部存储器的连接*
单极性MOS存储器分类 存储器分类 单极性
易失
双极性存储器有TTL、ECL
5.1
半导体存储器基础
1、单译码编址存储器 如图:注意地址译码器、存储器阵列。 如图:注意地址译码器、存储器阵列。
5.1
半导体存储器基础
2、双译码编址存储器 如图:注意它的译码与选中单元的过程。 如图:注意它的译码与选中单元的过程。
5.2
只读存储器ROM 只读存储器
特点: 存放的信息是固定的, 特点 : 存放的信息是固定的 , 不会随停电而 丢失。在使用过程中,其信息只可以读取, 丢失 。 在使用过程中 , 其信息只可以读取 , 不可 以改写。 以改写。 常用的ROM种类有: ROM种类有 常用的ROM种类有: 掩模ROM 由制造厂家写入信息。 ROM, 1、掩模ROM,由制造厂家写入信息。 PROM,由用户一次性写入信息。 2、PROM,由用户一次性写入信息。 EPROM,多次可改写ROM ROM, 3、EPROM,多次可改写ROM,可由用户使用紫外线 灯擦除再次写入信息。 灯擦除再次写入信息。 EEPROM,可用电脉冲擦除, 4、EEPROM,可用电脉冲擦除,并再次由用户写入 信息。 信息。
计算机操作系统教程_第四版_(张尧学著)_清华大学出版社_第5章new存储管理
![计算机操作系统教程_第四版_(张尧学著)_清华大学出版社_第5章new存储管理](https://img.taocdn.com/s3/m/37e814f7102de2bd960588fd.png)
(4)重定位及存储保护
重定位过程,其步骤概括如下: 1)页号p和页内地址w 2)存储保护 3)利用页表得到块号 4)形成物理地址
分页重定位
例子 在某静态分页存储管理中,已知内存共的32块, 块长度为4K,当前位示图如图5-22所示,进程 P的虚拟地址空间大小为50000。 (1)进程P共有几页?
3.主要特点
能够支持多道程序设计 并发执行的进程数受分区个数的限制 程序大小受分区长度的限制 存在“碎片”
减少碎片
四、可变分区存储管理 1.基本思想
用户区作为空闲区,根据程序实际需求量,分 配空间,并可回收使用后的空间。
2.实现关键
(1)数据结构设计
可用表 空闲区链表
请求表 struct FreeNode { long start; long length; struct FreeNode *next; 针 //分区的起始地址 //分区的长度 //向下指针
4.虚拟存储器思想 (1)虚拟存储器要解决的主要技术有:理论基 础、调入策略和置换算法 (2)理论基础--程序的局部性原理
在程序运行过程的一个较小时间范围内,只需要 一小部分的程序信息,其他部分暂时不需要;而 且在程序的一次执行过程,程序的所有指令和数 据并没有相同的访问概率,有一部分指令和数据 经常被访问,有一部分指令和数据很少被访问, 甚至存在部分指令和数据根本没有被访问。 程序的局部性原理又分为时间局部性和空间局部 性
假定,在位示图中的一个位用bitmap[i,j]表示,其中i 称为字 号,表示第i行即第i个字;j称为位号,表示在第i个字中的第j 位,这里规定从低位开始计算。如果位示图中的第i个字记为 bitmap[i],那么 bitmap[i,j]=(bitmap[i] >>j )&1
第五章 存储器
![第五章 存储器](https://img.taocdn.com/s3/m/3321d9d7b8f67c1cfbd6b80f.png)
1.静态SRAM 构成
• 存储元由双稳态触发器构成。双稳态触发器有两个稳定 状态,可用来存储一位二进制信息。只要不掉电,其存 储的信息可以始终稳定地存在。
• 集成度较高,功耗比双极型的低 • 存取速度较动态RAM快。 • SRAM一般采用“字结构”存储矩阵:
读写存储器RAM
组成单元 速度 集成度
应用
SRAM 触发器 快 低 小容量系统
DRAM 极间电容 慢 NVRAM 带微型电池 慢
高 大容量系统 低 小容量非易失
第二节 随机存取存储器RAM
1、定义:在计算机正常工作状态下,存储器的信息既可以随 机读,又可以随机写。
2、性质:RAM中的信息具有易失性。 3、分类:
也可以接地址线高位,或接地址译码器的输出端。 ③ 读写控制信号并联接到控制总线中的读写控制线上。 ④ 数据线分高低部分分别与数据总线相应位连接。
33
2.存储容量的扩展 • 线选法译码电路:用高端地址线作为芯片片选控制线。
D7~D0 A12~A0
A12~A0
0 0000 0000 0000 D7~D0 A12~A0
A19~A0 M/IO 1
WR D7~D0
CE A19~A0 1M×1(0#)
CE A19~A0 1M×1(1#)
CE A19~A0 1M×1(2#)
WE I/O
WE I/O
WE I/O
D0
D1
D2
CE A19~A0 1M×1(7#) WE I/O
D7
31
例2、2114(1K×4位)扩展1K×8位存储器
微机原理及接口技术课件第5章 存储器
![微机原理及接口技术课件第5章 存储器](https://img.taocdn.com/s3/m/c5a11d83aaea998fcd220e1b.png)
引脚号
2764
27128
27256
27512
引脚号
2764
27128
27256
27512
1
VPP
VPP
VPP
A15
15
D3
D3
D3
D3
2
A12
A12
A12
A12
16
D4
D4
D4
D4
3
A7
A7
A7
A7
17
D5
D5
D5
D5
4
A6
A6
A6
A6
18
D6
D6
D6
D6
5
A5
A5
A5
A5
19
D7
D7
D7
D7
6
A4
例如:6264静态RAM的容量为8K x 8bit NMC41257的容量为256K x 1bit
某一芯片有多少个存储单元,每个存储单元存储若干位,由于其数值一般 都比较大,存储容量常以字节(Byte)表示。因此常以K表示210,以M表示 220,G表示230。如256KB等于256×210×8bit,32MB等于32×220×8bit。
A4
行 译
存储器阵列
VCC
…
…
码
128x128
GND
A10
WE
I/O1
…
…
…
输入数 据控制
列I/O 列译码
OE
I/O8
CE
…
… …
…
CE
1
WE
0 0
& 0
A0A1A2A3
0
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
D0~D7
OE WE
RD
WR
• 2. 8031扩展32KB EPROM和32KB RAM
8 7 P2
8031
8 1Q~7Q ALE G 373 1D~7D P0
PSEN
A0~A7 A8~A14 CE 27256 Q0~Q7
OE
A0~A7 A8~A14 CE 62256
WE
D0~D7
OE
பைடு நூலகம்
8
WR
64KB/8=8KB/根译码线。译码器的输出是互异的,每次只能选中一 个存储器芯片,不会出现地址竞争(地址竞争是几片同类型存储器占用同 一段地址,当CPU从该空间取数时,它们将同时向数据总线提供数据, 导致读取出错)。
5.3 数据存储器扩展设计
执行:MOVX A,@DPTR( 或MOVX @DPTR,A) MOVX A,@Ri (或MOVX @Ri,A) CPU访问外部数据存储器时,ALE信号少出现一次,地址数 据输出后经过悬浮(高阻)状态后,才能进入数据输入或输出状态! 第一周期:P2口输出地址的高8位,P2口输出地址的低8位。ALE下 降沿将低8位地址锁存到外部地址锁存器。随即 PSEN 低电平有效。P0口 由输出变为输入,对应选 中的存储单元中的指令出现在P0口,由CPU 读取。经CPU译码后,知道是对外部数据存储器的操作。随后,P2口输 出外部数据存储器地址的高8位,P0口输出外部数据存储器的低8位。由 ALE锁存,由于是与外部数据存储器打交道。 PSEN 一直为高电平无效(PSEN 信号线接EPROM的 OE 端,选通的是程序存储器!)
5.3.3 数据存储器扩展设计
1. 8051扩展2KB静态RAM,8051内部有ROM,用地址线扩展2KB RAM。
5V Vcc P2 3
CE A10~A8
EA
8051 P0 口
373 1D~8 8D 1Q~8 8Q G 8
8 A7~A0 6116
ALE
6116 的 片 选端 CE 接地,为 常选状态, 地 址 为 0000~07F FH
ALE
8
2764
2764
2764
P0
PSEN
P2.6 0 0 1 P2.5 0 1 0 /Y0 /Y1 /Y2 0 1 1 0000-1FFFH (8000H-9FFFH) 括号内 1 0 1 2000-3FFFH(A000H-BFFFH) 为重叠 1 1 0 4000-5FFFFH(C000H-DFFFH) 区!
00H 内部 128 字节, ~ 7FH 数据存储器(RAM) 0000 ~ FFFFH 外部 64K ,
5.2 程序存储器扩展设计
• 外部程序存储器操作时序
S1
振荡周期 一个机器周期
S2
S3
S4
S5
S6
S1
S2
S3
S4
S5
S6
ALE
PSEN
P2 PCL 输出
PCH输出
PCH
PCH
PCH
P0
3. 扩展64KB EPROM(全地址译码)
P2.7 (A15) 0 0 0 0 1 1 1 1 P2.6 (A14) 0 0 1 1 0 0 1 1 P2.5 (A13) 0 1 0 1 0 1 0 1 0000~1FFFH 2000~3FFFH 4000~5FFFH 6000~7FFFH 8000~9FFFH A000~BFFFH C000~DFFFH E000~FFFFH 地址空间
0000~0FFFH(4KB) 8000~9FFFH(8KB) 8000~9FFFH A000~BFFFH C000~DFFFH E000~FFFFH
写入16字节数据的子程序,入口参数: DPTR:指向RAM数据区首址; R7: 写入字节数(10H) R0: E2PROM地址低8位 P2: E2PROM地址高8位
从P0口地址/数据复用线中分离出地址来。
• 地址译码器 为什么要用地址译码器:CPU给出一个地址,对应的存储器中有一个 存储器单元与其唯一的对应。通常存储器有多片组成,因此,要对存储器 芯片地址进行编址。 分两个层次:(1) 某个存储芯片的选择片选 片选(8K/片→8片→64K) 片选 (2) 被选中的存储芯片内部存储单元的选择字选 字选。 字选 地址不能重叠,一般就要用译码器的功能。 74LS138的真值表
RD
程序存储器 CE 接地,常选0000~7FFFH, PSEN 有效,数据存 WE RD 储器0000~7FFFH, , 有效,地址重叠,但不会冲突。
3. 程序存储器空间和数据存储器空间的合并(哈佛结构:两个存储器在逻 辑上完全独立,是由于执行不同的指令时,由硬件产生不同的选信号, 从而选通两个不同的逻辑空间)。单片机仿真系统就是采用这种合并 后的一维线性空间,因为程序存放在EPROM中,就无法对EPROM中 的程序进行在线修改,如果把程序存放在RAM中,一面调试一面修改, 方便。 P2.7
8 P2 8031 1Q~8Q ALE G 373 1D~8D P0 8 27256 Q0~Q8 A0~A7 A8~A14 8
°
CE
OE
A0~A7 A8~A14 62256 D0~D7
CE
OE
PSEN
WR
RD
系统的EPROM(27256)0000~7FFFH(管理仿真系统的程序),系统的仿 真ROM和数据存储器为8000~FFFFH。当执行系统的管理程序时, 27256有效(尽管有效 PSEN,但地址不对),62256无效,当执行自己 编的仿真程序时,系统转向62256中执行你输入的程序,当遇到MOVX
CE
A13~A8
PSEN
OE
27128→128/8=16K→210∗24→14根地址线→A0~A13,片内地址由P2.5~P2.0, P0.7~P0.0决定。该片由P2.7选中,存在重叠区域4000~7FFFH(但芯片内地址 不存在,但无关紧要),而且存在地址禁区!(0000~3FFFH)不可能扩展2块。
WE RD 之类的指令时, , 有效。
4. 8051扩展8KBE2PROM(ROM和RAM合并)
P2.7
°
5V
P2 373
5 A12~A8 A0~A7
CE
P0 ALE
2864
I/O0~I/O7
PSEN RD WR
OE WE
内部ROM: 外部ROM,RAM: 重叠区: 1××0 1010 1100 1110
Read Only Memory
功能图:
操作方式: 编程方式:把程序代码固化到EPROM中 编程校验方式:读出EPROM中的内容,校对编程操作的正确性 读出方式:CPU从EPROM中读出指令和常数 (CE = 0, OE = 0) 维持方式:数据端是高阻 ( C E = 1) 。
地址锁存器(74LS373)
WR16:MOVX MOV MOVX INC INC CJNE INC NEXT: DJNZ DEC CNECK:MOVX XRL JB RET
A,@DPTR R4,A @R0,A DPTR R0 R0,#00H,NEXT P2 R7,WR16 R0 A,@ R0 A,R4 ACC.7,CHECK
5.3.2 常用数据存储器芯片介绍
1.静态RAM(SRAM)芯片
13
地址线
VCC
A12~A0
210∗23=8K 双向数据线
8
GND
D7~D0 6264
片选线1
CE
写允许线
WE
读选通线
OE
CS1
片选线2
(当/CE = 0时,选中 CS1=1时,读片)
操作控制 /CE /OE /WE D0~D7 (/CE=0,CS1=1) 读 0 0 1 D0~D7(OUT) 写 0 1 0 D0~D7(IN) 维持 1 X X 高阻 掉电后数据丢失!(同计算机内存) 2. 电可擦可编程只读存储器E2PROM 读写的操作同SRAM,掉电后,数据保存,不会丢失。注意 它不是做程序存储器用!
;将最后一个字节数据取出 ;原始数据比较,陷入死循环! ;最高位不同,再查!
第5章 存储器系统设计 章
5.1 MCS-51存储器系统配置 存储器系统配置
内部 4K , 0000 ~ 0FFFH 8051 / 8751 外部 64K0000 ~ FFFFH 程序存储器(ROM) 0000 ~ FFFFH , = 0 EA 8031外部 64K ,
EA = 1内部 重叠部分由EA区分 EA = 0 外部
指令 输入
地址 输出
指令 输入
PCL 输出
指令 输入
PCL 输出
P2口输出程序存储器的高8位地址PCH(A15~A8),具有锁存功能。 P0口地址/数据复用线,在ALE上升为高电平时,P0口输出程序存储 器的低8位地址(A7~A0),在ALE的下降沿,把A7~A0锁存到外部地 址锁存器中,得到地址信号,接着,P0口由输出变为输入,高8位地 址不变(低8位已锁存),故已选定外部ROM的某一个地址,随即 PSEN 低电平有效,外部ROM通,对应地址单元中的指令字节出现在数据 总线上供CPU读取。
第一个机器周期
S1
S2
S3
S4
S5
S6
S1
S2
S3
S4
S5
S6
ALE
PSEN
RD / WR
P2
PCH输出
DPH或P 输出 2
PCH
P0
PCL 输出
指令 输入
地址 输出
数据输出 (输入)
PCL 输出
第二周期:第一个ALE信号丢失,若执行的是读指令(MOVX A,@DPTR),P0口由输出变为输入,随即 RD为低电平有效。外部数据 存储器被选通。相应存储单元内容出现在P0口上供CPU读入累加器中, 若执行的是写指令(MOVX @DPTR,A),此时 WR为低电平有效。被写的 数据出现在P0口,并在 WR结束之前一直保持不变,写入相应的外部数 PSEN 有效,读的内容丢弃。 据存储器单元。第二个ALE锁存的地址,