zoukankan      html  css  js  c++  java
  • 第三章 存储器(重点)(一)

    3.1 概述

    一、存储器分类

    1. 按存储介质分类

    易失

    • 半导体存储器 ------> 双极性TTL、MOS(得有电)
      不易失
    • 磁表面存储器 -----> 磁头、载磁体
    • 磁芯存储器 -------> 硬磁材料、环状元件
    • 光盘存储器 --------> 激光、磁光材料

    2. 按存取方式分类

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

    • 随机存储器(RAM):在程序的执行过程中可读、可写
    • 只读存储器(ROM):在执行过程中只读


      (2)存取时间与物理地址有关(串行/顺序访问)
    • 顺序存取存储器 磁带
    • 直接存取存储器 磁盘(CHS)
    • 相联存储器 ————> 用于快表(TLB)按内容寻址

    3. 按计算机中的作用分类

    二、存储器的层次结构

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

    2. 缓存—主存层次 和 主存—辅存层次


    注:

    • 辅存:固态硬盘(SSD)
    • 实地址、物理地址是一个概念
    • 虚地址、逻辑地址一个概念,可以用于程序设计
    • 虚拟存储器是操作系统干的活
    • CPU不能直接访问辅存,可以利用操作系统(OS)来访问
    • 缓存—主存硬件来完成,主存—辅存OS来完成
    • 缓存相当于是备份了一小部分的主存中的内容
    • 操作系统(OS)通过缺页异常来完成主存和辅存之间数据的交换功能
    • CPU取数据:CPU访问的永远是逻辑地址,操作系统要对逻辑地址判断是否在主存中,如果是还要判断是否在缓存中,若缓存中没有就要去主存中找,主存没有就去辅存。而 CPU 不能直接访问辅存,借用 OS 的缺页异常来把虚拟存储中的数据装入主存中,从而获得主存地址让CPU访问。


    3.2 主存储器

    一、概念

    1. 主存储器的基本组成

    2. 主存和 CPU 的联系

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


    注:
    (1)注意是按字编址,还是按字节编址
    (2)存储字为由高到低,当首字节存储的是高位的时候是大端存储,当首字节存储的是低位的时候是大小端存储。

    4. 主存的技术指标

    • 存储容量:主存存放二进制代码的总位数
    • 存储速度:
      • 存储时间:存储器的访问时间,读出时间、写入时间(一般读入快,写入慢)
      • 存取周期:连续两次独立的存储器操作(读或写)所需的最小间隔时间,读周期、写周期
    • 存储器的宽带:单位时间内从存储体存储的信息量(位/秒)


    二、半导体存储芯片简介

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


    注:
    (1)芯片容量 = 2地址线个数 × 数据线数;ps:10根地址线有210个单元,每根数据线 1 bit
    (2)片选线:低电位有效CS、CE
    (3)读/写控制线:WE(低电平写、高电平读)、OE(允许读)、WE(允许写)
    (4)片选线不在存储芯片内,芯片内只有地址线、数据线,片选线只是一个引脚。作用:选中多位芯片,用于芯片的扩展

    2. 半导体存储芯片的译码驱动方式

    译码驱动:对于用户来提供地址线,来找对应的“房间号”。
    (1)线选法 16 × 8 bit 存储芯片

    解析上图:只需要4根地址线通过地址译码器来找这16个“房间”。缺点:“房间”要是多了,连接“房间”的线太多


    (2)重合法 1k × 1 bit 存储芯片

    解析上图:采用矩阵(线代)的思想,1k × 1 bit=1024 bit,1024 = 210 = 25 × 25 = 32 × 32;————> 行地址只需5根地址线,通过32根线来连接“房间”。同理列地址也是如此(18年408


    三、随机存储器(RAM)

    1. 静态RAM(SRAM)——>了解为主

    1.1 静态RAM基本电路


    这里电路408考试过去11年没有出过题目,自主命题看高校
    图片解析:

    • T1 ~ T4四个管构成双稳态管,原端与非端存储相反且保持不变,除非进行写操作和掉电。
    • 类似T5,若下端给高电位则导通,低电位阻塞
    • 缺点:能耗较高

    1.2 静态RAM基本电路的读操作

    1.3 静态RAM基本电路的读操作


    (2)SRAM 芯片举例(可能会考该芯片的存储容量)
    外部特点:
    读写:WE、片选线:CS、地址线数据线


    2. 动态RAM(DRAM)

    三管式 单管式
    读入与原存信息相反 读出时数据线有电流,为“1”
    写入与输入信息相同 写入时CS充电为“1”,放电为“0”

    注:DRAM电容有再生(刷新)的问题,优点:能耗较低

    2.1 单管动态RAM4116(16k * 1bit)外特性(很重要)


    图片解析:
    (1)行选信号RAS,列选信号CAS,地址线为什么7根?可以联系重合法
    (2)行、列地址分开传送

    读时序 写时序
    行地址RAS低电平有效 行地址RAS低电平有效
    写允许WE有效(高) 写允许WE有效(低)
    列地址CAS低电平有效 数据DIN有效
    数据DOUT有效 列地址CAS低电平有效

    2.2 动态RAM刷新 ——> 刷新与行地址有关

    1. 刷新间隔:为了维持 DRAM 记忆单元的存储信息,每隔一定时间必须刷新。一般选定的最大刷新间隔为2ms或4ms甚至更大,也就是说,应在规定的时间内,将全部存储体刷新一遍。
       注:刷新和重写(再生)是两个完全不同的概念,切不可加以混淆。重写是随机的,某个存储单元只有在破坏性读出之后才需要重写。而刷新是定时的,即使许多记忆单元长期未被访问,若不及时补充电荷的话,信息也会丢失。重写一般是按存储单元进行的,而刷新通常以存储体矩阵中的一行为单位进行的。
      (1)集中刷新
       以 128 × 128 矩阵为例(存取周期为 0.5 μs)————> 刷新时不进行读写操作
    • 集中刷新方式的优点是读写操作时不受刷新工作的影响,因此系统的存取速度比较高。主要缺点是在集中刷新期间必须停止读写,这一段时间称为“死区”,而且存储容量越大,死区就越长
    • 刷新时间 = 存储矩阵行数 × 刷新周期(这里刷新周期是指刷新一行所需要的时间,由于刷新过程就是“假读”的过程,所以刷新周期就等于存取周期。)
    • 死区:刷新区间不能向外提供服务。
    • 4000 = 刷新时间间隔 / 存取周期


      (2)分散刷新
       以 128 × 128 矩阵为例(存取周期为 1 μs)
    • 代价:系统的存取周期加长刷新过于频繁
    • 分散刷新是指把刷新操作分散到每个存取周期内进行,此时系统的存取周期被分为两部分,前一部分时间进行读写操作或保持,后一部分时间进行刷新操作。在一个系统存取周期内刷新存储矩阵中的一行。


      (3)分散刷新与集中刷新相结合异步刷新
       以 128 × 128 矩阵为例(存取周期为 0.5 μs)
    • 把刷新操作平均分配到整个最大刷新间隔时间内进行
    • 相邻两行的刷新间隔 = 最大刷新间隔时间 ÷ 行数
    • 每个多长时间刷新一行(15.6 μs) = 时间间隔(2ms)/行数(128)

    小结:
    DRAM的刷新要注意的问题:

    • 刷新对CPU是透明的。
    • 每一行中各记忆单元同时被刷新,故刷新操作时仅需要行地址,不需要列地址。
    • 刷新操作类似于读出操作,但不需要信息输出。另外,刷新时不需要加片选信号,即整个存储器中的所有芯片同时被刷新。
    • 因为所有芯片同时被刷新,所以在考虑刷新问题时,应当从单个芯片的存储容量着手,而不是从整个存储器的容量着手。

    3. 动态RAM和静态RAM的比较

    DRAM(主存) SRAM(缓存)
    存储原理 电容 触发器
    集成度
    芯片引脚
    功耗
    价格
    速度
    刷新
    哪有什么胜利可言,坚持意味着一切
  • 相关阅读:
    UE4 多人模式
    UE4 r.ScreenPercentage 150 导致的画面只有丢失
    UE4 3D Widget渲染优先级最高
    UE4 VR中血条的做法 3d widget
    UE4 源码bug 蓝图节点CreateSession导致的崩溃
    UE4 小技巧
    ue4(转载) 在VR中的按钮 Button In VR
    ue4 可点击座舱实现 Clickable cockpit
    两种排序方法(选择排序和冒泡排序)
    特殊的Josn格式
  • 原文地址:https://www.cnblogs.com/BY1314/p/12817664.html
Copyright © 2011-2022 走看看