计算机组成原理(存储器)

news2025/2/27 20:41:09

1、“821.2016T1(1)”,表示821真题,2016年的题,T1是 选择题/填空题/大题 的第一题,其他类似标记也是相通

2、个人小白总结自用,不一定适用于其他人,请自行甄别

3、有任何疑问,欢迎私信探讨,看到后会及时回复

4、另外,想要获取 NUDT 计算机免费的相关资料,建议加官方QQ群756084430,资料全部都是免费的,收费的都是骗纸

选择题

  1. 双极型RAM同SRAM比较,最突出的优点:速度更快大概因为数据和地址线都不能复用
  2. 随机存取方式:

    不采用随机存取方式:CDROM

    采用随机存取方式:EPROM、“RAM、ROM都采用“

  3. Cache失效开销 = 将主存一块加载到Cache所需的时钟周期数
  4. 地址映射:

    Cache和主存的地址映射:由硬件自动完成的

    Cache缺失:只用访问主存,由硬件处理

    页面缺失:需要访问磁盘,由 “OS,操作系统,软件“ 处理

    主存与虚存的地址映射:OS,操作系统,软件

  5. 利用程序局部性:Cache、快表、虚存页表X
  6. 页表未命中,TLB快表绝对不会命中,因为TLB的数据是页表的复制(Cache的数据是主存的复制一样
  7. 半导体存储器并不采用随机存取方式(按地址随机存取)进行读写操作,也有按内容存取的

填空题

  1. 主存的4个主要组成:存储矩阵、选址系统(地址总线) 、读写系统(数据总线) 、时序控制线路(控制总线)
  2. SRAM,双稳态触发器

    速度快,但集成度低、功耗大

  3. DRAM,栅极电容
  4. DMAR刷新的方式:

    集中

    分离

    透明

  5. 计算出虚拟地址的位数x后,有2x个页面(不要直接填x啦
  6. 虚存只是一个的概念,是一种存储管理机制,实际上是不存在的,虚拟空间的大小与逻辑地址的位数有关
  7. 光盘/CD

    存取方式/读写特性有3种:只读型、可擦写型、追记型

    按存储介质有3种:形变型、相变型、磁光型

  8. 磁性材料的磁头具有3个特性:留磁少、导磁率高、软磁
  9. RAID盘阵由多个小容量廉价磁盘构成,被操作系统当作一个整体的大容量磁盘。校验盘用于保存备份冗余的信息

简答题(Cache)

直接映射:标记位数 + 号位数 + 块内地址位数

全相联映射:标记位数 + 块内地址位数

组相联映射:标记位数 + 号位数 + 块内地址位数

--------------------------------------------------------------------

注:全相联映射,是Cache中的任意空闲位置都可以放,不一定非得按照顺序的空位放

块大小设置为1字节的影响(2点)[袁主教材P259]

  1. 没有利用空间局部性,只有可能有时间局部性
  2. 块太小导致映射到同一个cache行的主存块数增加,导致冲突概率增加

块大小越大的缺点:

  1. 块越大,缺失损失也就越大,需要花费更多的时间从主存复制一个块
  2. 在Cache空间一定的情况下,块越大,Cache行就会越少,触发替换的可能性就越大,导致命中率降低 

简述全相联映射的访问过程

1、全相联映射:标记位数(20-9=11位) + 块内地址位数(9位)

2、0240CH = 0000 0010 0100 0000 1100

标记位数

块内地址位数

0000 0010 010

0 0000 1100

3、访问过程:

①命中时:

  • 用高11位0000 0010 010与Cache的每一行的标记位进行一一比较,若有一个相等且有效位为1,则命中
  • 此时CPU根据后9位块内地址位0 0000 1100取出块内的数据

②反之,则不命中:

  • 将高11位0000 0010 010(在主存中为第18块)复制到Cache中任何一个空闲的行中
  • 置该行有效位为1,标记位设置为0000 0010 010

简述组相联映射的访问过程

1、组相联映射:

Cache:13 = 3+1(2块一组,占1位)+9

主存:标记位数(20-9-3=8位)+ 号位数(3位) + 块内地址位数(9位)

2、0240CH = 0000 0010 0100 0000 1100

标记位数

号位数

块内地址位数

0000 0010

010

0 0000 1100

3、访问过程:

①命中时:

  • 先用中间3位010,找到Cache第2组
  • 再用高8位0000 0010该组Cache的每一行的标记位进行一一比较,若有一个相等且有效位为1,则命中
  • 此时CPU根据后9位块内地址位0 0000 1100取出块内的数据

②反之,则不命中:

  • 将高11位0000 0010 010(在主存中为第18块)复制到Cache第010组(即第2组)的任意空闲行
  • 置该行有效位为1,标记位设置为0000 0010

简述CPU从主存地址067A H,取出的数据值是多少?并描述过程。(TLB、页表、Cache、虚存、分页《袁春风解答P222T25》

其中位数:

  1. 虚拟页号,简称虚页号,该TLB项对应哪个虚页的页表项
  2. 虚存地址的页内偏移量 = 物理地址的页内偏移量
  3. 虚存地址的虚拟页号 = TLB标记 + TLB组索引
  4. 物理地址的位数 = Cache的位数

访问内存地址067A H过程描述

①(见以下对比)

  • CPU根据TLB组索引00,在TLB的第0组中,匹配所有TLB标记字段0000 011 B = 03H的页表项,有相等的但是有效位不等于1,所以在TLB未命中
  • CPU继续在主存的页表中查找,虚拟页号为0000 0110 0 B = 0C H 的页表项,有效位为1,取出页框号19H(注意,不是十进制,因为表中有ABCDEF,明显是十六进制),与页内偏移量组成物理地址:1 1001B + 111 1010B = 1100 1111 1010B

②组相联映射的访问过程

命中时:

  1. 先用中间4位1110,找到Cache第E组
  2. 再用高6位1100 11B = 33 H该组Cache的每一行的标记位进行一一比较,若有一个相等且有效位为1,则命中
  3. 此时CPU根据后2位块内地址位10取出块内的数据的值,为4A H = 0100 1010 B

虚拟地址、页目录号、页号、页目录物理地址、页表项物理地址

821.2018.T4(1))例如:

已知,页大小4KB,页表项4B,虚拟地址42位

30,虚拟页号

12,页内偏移量

可知:页表大小 = 2^{30} x 4B

----------------------------------------------------------

408.2020

预备知识:

  • 数组可以随机存取

    虚拟地址空间所占的区域必须连续

    物理地址空间所占的区域可以不连续

题目所给条件梳理:

  1. C程序:

    数组下标从0开始

    按行优先方式存储

  2. 页目录项 = 4B
  3. 页表长度 = 4B
  4. 数组元素 = 4B
  5. 字节编址
  6. 页内偏移量 = 12位

    一个页面大小 = 212B

    一个数据4B,所以,一个页面有 212B / 4B = 210个数据

  7. 数组起始的虚拟地址:1080 0000 H
  8. 页目录起始物理地址:0020 1000 H

分析

1、因为数组a 一行是1024个数据,起始虚拟地址10800 H 刚好存下 a[0] 的所有数据,a[1][2]的虚拟地址是

1080 0 H + 1 H = 1080 1 H,这就是a[1]的页号

1080 1 H + (3-1)x 4B  = 1080 0000 H + 8 H = 1080 1008 H,这就是a[1][2]的虚拟地址

其中4B,一个数据的大小,按字节编址,1B占一个地址

1080 1008 H

10位,页目录号

10位,页号

12位,页内偏移量

0001 0000 10

00 0000 0001

0000 0000 1000

64+2 = 66

1

042 H

001 H

2、页目录的物理地址 = 页目录起始物理地址 + 页目录项 x 页目录号

页目录的物理地址 = 0020 1000 H + 4B  x 66 = 0020 1000 H + 108 H = 0020 1108 H

3、页表项的物理地址 = 目录项种存放的页框号 + 页表长度 x 页号

页表项的物理地址 = 0030 1000 H + 4B  x 1 = 0030 1004 H

大题

存储器扩展

存储空间的容量(请务必引起重视!!!直接关系到后面的问答

需要的存储芯片数量

哪几位作为字扩展控制CS

主存字段的划分(Cache与存储器的映射方式)
Cache的总容量
Cache命中率

CPU访存时钟周期

Cache命中率x命中时钟周期开销 + (1-Cache命中率)x失效时钟周期开销

画存储芯片的片选逻辑电路

磁盘:(边读题边在草稿纸写下有效信息)

虚拟地址、物理地址、Cache、主存,字段划分,与数据的读取过程(821.15.T3、袁春风解析.P222T25

补充知识点

Cache 高速缓冲存储器

地址映射直接映射 (1路组相联映射)全相联映射(N路)组相联映射
主存地址结构 Tag | Cache块号位 - 0 | 块位(B)
其中,1=2
0
 Tag | 0 | 块位(B) Tag | Cache块号位 - 组号位 | 块位(B)
例子
 - 主存:32位
 - 块大小:16B
 - Cache总大小:4K块
主存:
 Tag | 12 | 4
Tag = 32-12-4 = 16
 Tag | 4
Tag = 32 - 4 = 28
(假设 2路组相联)
Tag+1 | 12-1 | 4
Tag = 32 - (12-1) -4 = 17
关联度1(唯一)Cache的行数N
备注1、不需要使用替换算法按内容寻址的相联存储器 
共同点0、Cache 标记容量:(Tag + 1 + 1 + 1) · 行数
1、只占 Cache 空间:有效位(1bit)、一致性维护位/脏位/修改位(1bit)、替换算法控制位(1bit)
2、关于Tag:
  ①一定是由主存地址结构推导出的
  ②Tag 是 Cache 和主存之间的唯一标识 ∴Tag占Cache和主存的位数
3、Cache命中的2个条件:①有效位为1;且②Tag 相同

 替换算法

替换算法随机算法 RAND先进先出算法 FIFO近期最少使用算法 LRU最不经常使用算法 LFU
原理//唯一遵循,程序局部性原理/
操作方式  被访问置0,其他+1,替换掉计数器最高的被访问的+1,最小的替换
备注 最容易发生抖动现象堆栈类算法 

 写策略

写策略写命中写不命中
方式全写法/写直达回写法写分配写不分配
操作CPU同时写数据到Cache和写缓冲中,由写缓冲写入主存Cache块被替换时才写入主存,修改时脏位置1主存加载块到Cache,然后只在Cache中更新直接修改主存数据
备注1、主存和Cache全都修改
2、解决”写缓冲“溢出,增加一个L2级Cache
3、能保证数据的一致性
1、计算Cache位数时,要算:1bit有效位+1bit脏位
2、可减少访存次数
  

Cache-主存-辅存

 Cache-主存主存-辅存
位置不同Cache靠近CPU辅存远离CPU
目的不同加快CPU访问信息的速度采用虚拟存储器机制,扩大系统的存储器容量
交换信息块的不同主存块block,8-128B页page,4KB-64KB
缺失处理(处理器)硬件(操作系统)软件
映射方式不同直接、全相联、组相联
由(处理器)硬件实现
只有全相联
由(操作系统)软件实现
写策略不同写直达、写回2种策略只采用写回策略
∵每次都写直达的开销巨大,无法容忍
相同点1、都用到了程序访问局部性,把相邻的局部信息,从慢速存储器复制到快速存储器
2、都需要考虑:映射方式、替换策略
3、在快速存储器找不到数据时,都需要从慢速存储器装入整个信息所在的块到快速存储器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1585206.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python测试框架之pytest详解

前言 Python测试框架之前一直用的是unittestHTMLTestRunner,听到有人说pytest很好用,所以这段时间就看了看pytest文档,在这里做个记录。 官方文档介绍: Pytest is a framework that makes building simple and scalable tests e…

常见开关电源的特殊波形有哪些?测试方法是什么?

开关电源特殊波形 1. 毛刺输入测试波形 毛刺是比较常见的波形,一般是由于元器件损坏或老化、电源噪声、信号干扰等因素造成的。这种波形的特点是电网尖锋有过冲并会跌落到0v,过冲和跌落脉宽很窄,一般不会大于100ms,过冲幅度一般不…

FFmpeg: 简易ijkplayer播放器实现--04消息队列设计

文章目录 播放器状态转换图播放器状态对应的消息: 消息对象消息队列消息队列api插入消息获取消息初始化消息插入消息加锁初始化消息设置消息参数消息队列初始化清空消息销毁消息启动消息队列终止消息队列删除消息 消息队列,用于发送,设置播放…

Spring 如何组织项目-ApiHug准备-工具篇-007

🤗 ApiHug {Postman|Swagger|Api...} 快↑ 准√ 省↓ GitHub - apihug/apihug.com: All abou the Apihug apihug.com: 有爱,有温度,有质量,有信任ApiHug - API design Copilot - IntelliJ IDEs Plugin | Marketplace ApiHug …

贪心算法|452.用最少数量的箭引爆气球

力扣题目链接 class Solution { private:static bool cmp(const vector<int>& a, const vector<int>& b) {return a[0] < b[0];} public:int findMinArrowShots(vector<vector<int>>& points) {if (points.size() 0) return 0;sort(p…

【JavaEE】_Spring MVC项目获取Session

目录 1. 使用servlet原生方法获取Session 1.1 错误获取方法 1.2 正确获取方法 2. 使用Spring注解获取Session 3. 使用Spring内置对象获取Session 1. 使用servlet原生方法获取Session .java文件内容如下&#xff1a; setSession方法用于设置Session对象的内容&#xff1b;…

文件输入/输出流(I/O)

文章目录 前言一、文件输入\输出流是什么&#xff1f;二、使用方法 1.FileInputStream与FileOutputStream类2.FileReader与FileWriter类总结 前言 对于文章I/O(输入/输出流的概述)&#xff0c;有了下文。这篇文章将具体详细展述如何向磁盘文件中输入数据&#xff0c;或者读取磁…

面试八股——数据库——事务

概述 事务的特性&#xff08;ACID&#xff09; 原子性&#xff1a;事务是不可分割的操作单元&#xff0c;要么全部成功&#xff0c;要么全部失败。 一致性&#xff1a;事务结束时&#xff0c;所有数据都必须保证一致状态。 隔离性&#xff1a;事务在独立环境运行&#xff0c;…

Burp Suite Professional 2024.3.1 for Windows x64 - 领先的 Web 渗透测试软件

Burp Suite Professional 2024.3.1 for Windows x64 - 领先的 Web 渗透测试软件 世界排名第一的 Web 渗透测试工具包 请访问原文链接&#xff1a;Burp Suite Professional 2024.3.1 for Windows x64 - 领先的 Web 渗透测试软件&#xff0c;查看最新版。原创作品&#xff0c;转…

OpenGL Assimp 加载3D模型介绍

OpenGL Assimp 加载3D模型介绍 Assimp对应模型结构体解说 所有的模型、场景数据都包含在scene对象中&#xff0c;如所有的材质和Mesh。同样&#xff0c;场景的根节点引用也包含在这个scene对象中 场景的Root node&#xff08;根节点&#xff09;可能也会包含很多子节点和一个…

微服务面试题一

1.SOA、分布式、微服务之间有什么关系和区别&#xff1f; 分布式架构是指将单体架构中的各个部分拆分&#xff0c;然后部署不同的机器或进程中去&#xff0c;SOA和微服务基 本上都是分布式架构的SOA是⼀种⾯向服务的架构&#xff0c;系统的所有服务都注册在总线上&#xff0c;…

“植物大战僵尸:机器学习引领游戏AI新革命“

上期回顾&#xff1a; 今天给大家推荐一个Gtihub开源项目&#xff1a;PythonPlantsVsZombies&#xff0c;翻译成中就是植物大战僵尸。 《植物大战僵尸》是一款极富策略性的小游戏。可怕的僵尸即将入侵&#xff0c;每种僵尸都有不同的特点&#xff0c;例如铁桶僵尸拥有极强的抗…

开源推荐榜【Casbin.NET 一个为.NET(C#)项目设计的高效且强大的访问控制库】

Casbin 是一个强大高效的开源访问控制库&#xff0c;支持各种 访问控制模型 , 如 ACL, RBAC, ABAC 等。 我们希望可以让指定的主体 subject&#xff0c;可以访问指定的资源 object&#xff0c;访问可以是读和写。这就是 Casbin 使用最广泛的方式。也称为 { subject, object, ac…

【MATLAB源码-第20期】基于matlab的短波通信多径信道仿真,多径数目为3,用QPSK来测试误码率效果输出误码率对比图。

1、算法描述 短波通信是一种使用短波频段的无线电通信技术&#xff0c;它具有以下特点&#xff1a; 1. 频段范围&#xff1a;短波通信通常使用3MHz到30MHz之间的频段。这个频段之所以称为“短波”&#xff0c;是因为它的波长相对较短&#xff0c;适合进行长距离通信。 2. 长距…

大语言模型的指令调优:综述

&#x1f349; CSDN 叶庭云&#xff1a;https://yetingyun.blog.csdn.net/ 论文标题&#xff1a;Instruction Tuning for Large Language Models: A Survey 论文地址&#xff1a;https://arxiv.org/abs/2308.10792 指令调优是提升大语言模型&#xff08;LLMs&#xff09;性能…

前端招聘:几招识别注水简历,不懂技术也能挤出水分。

现在的前端开发市场鱼目混珠&#xff0c;尤其是某些培训机构经常鼓动学院美&#xff08;造&#xff09;化&#xff08; 假&#xff09;简历&#xff0c;搞得很多前端招聘经验缺乏&#xff0c;又急需用人单位公司损失不小&#xff0c;满以为找到合适的人员了&#xff0c;其实是频…

倍思和南卡开放式耳机哪个好?深度测评剖析实力王!

​开放式耳机凭借其新颖的佩戴设计和优秀的音质体验&#xff0c;正逐渐赢得越来越多消费者的喜爱。在众多品牌中&#xff0c;南卡、倍思等业界巨头推出的开放式耳机尤为引人注目。这些耳机是否真的名副其实&#xff1f;它们又有哪些特色和优缺点&#xff1f;为了解答这些问题&a…

Canal扩展篇

1.Canal介绍 Canal官网&#xff1a;https://github.com/alibaba/canal Canal 主要用途是基于 MySQL 数据库增量日志解析&#xff0c;提供增量数据订阅和消费&#xff0c;工作原理如下&#xff1a; Canal 模拟 MySQL slave 的交互协议&#xff0c;伪装自己为 MySQL slave &…

FPGA - 以太网UDP通信(一)

一&#xff0c;简述以太网 以太网简介 ​以太网是一种计算机局域网技术。IEEE组织的IEEE 802.3标准制定了以太网的技术标准&#xff0c;它规定了包括物理层的连线、电子信号和介质访问层协议的内容。 ​ 以太网类型介绍 以太网是现实世界中最普遍的一种计算机网络。以太网有…

流程图高亮跟踪 可自定义渲染图片

【流程跟踪】获取流程定义图 获取代码如下&#xff1a; ProcessDefinition processDefinition repositoryService.createProcessDefinitionQuery().processDefinitionKey("leave").singleResult();String diagramResourceName processDefinition.getDiagramResour…