• 组成原理(四):存储器扩展,汉明码,访存提速


    目录

    学习重点

    • 主存扩容(扩展)
    • cpu与主存连接
    • 汉明码
    • 提高访存速度
      • 高速器件
      • Cache
      • 调整主存结构

    1.存储器扩展

    1. 位扩展

      • 增加存储字长(每个字的数据位)
      • CS:片选信号线
      • WE:读写信号线
    2. 字扩展

      • 增加字地址数量(地址数量)
    3. 字位同时扩展

      • 同时扩展字数与字长

    2.CPU与主存连接

    • 74138译码器
    • MREQ:cpu访存控制信号
    • An:地址线
    • Dn:数据线
    • WE:读写命令线
    • CS:片选信号线
    • 只读存储器ROM没有读写命令线,可编程端接地

    3.存储器校验(汉明码)

    1. 校验公式:
           L-1=D+C(D>=C)
      
      • L:合法代码集中任意两个合法代码最小的二进制位差异
        • 如000和111差3位,00000和10000差4位
        • 合法代码集:合法的二进制编码集合
      • D:检错位数
      • C:纠错位数
    2. 汉明码是具有一位纠错能力的编码,有如下特点
      • 奇偶校验
        • 奇校验:加一个校验位使1的个数为奇数个
        • 偶校验:加一个校验位使1的个数为偶数个
      • 分组校验
      • 非划分方式: 有些位同时处于多个组
    3. 汉明码分组:
      第一组:第 XXXX1 位
      第二组:第 XXX1X 位
      第三组:第 XX1XX 位
      第四组:第 X1XXX 位
      第五组:第 1XXXX 位
      以此类推
    4. 汉明码三要素:
      1. 添加校验位个数(n个检错位)

              2^k>=n+k+1
        

        n:代码位数,k:多少检测位

      2. 检测位的位置

            2^i(i=0,1,2,3....)
        
        • 如0011,需要添加3个检测位
          示意图:(偶校验:1个数为偶数)
      3. 检测位取值
        使组内1个数满足校验规则

      4. 纠错过程: 接收到汉明码0100111,偶校验(仅纠一位错)

    4.提高访存速度

    采用高速器件
    使用Cache
    调整主存结构

    1. 调整主存结构

      • 1)单体多字

        实际取得和写入的是存储体中的数据

      • 2)多体并行—高位交叉
        顺序编址

        缺点:集中访问,会导致某一存储体负载过大,不能提高访存速度(带宽),只能用作扩容

      • 3)多体并行—低位交叉

        不改变存储周期情况下提高带宽并扩容

    2. 高速芯片

      • SDRAM:同步DRAM,cpu无需等待
      • RDRAM:解决存储器带宽问题
      • 带Cache的DRAM
  • 相关阅读:
    stress工具使用指南和结果分析
    copy.c实现
    sysbench测试阿里云CPU
    sysbench测试阿里云ECS云磁盘的IOPS,吞吐量
    iostat详解
    sysbench_fileio.sh
    rm -f /var/lib/rpm/__db*;rpm --rebuilddb
    HeadFirst 13 (包装器, 过滤器) not Finish
    基于Linux的oracle数据库管理 part5( linux启动关闭 自动启动关闭 oracle )
    基于Linux的oracle数据库管理 part4( shell管理 上 )
  • 原文地址:https://www.cnblogs.com/kenshine/p/14514311.html
Copyright © 2020-2023  润新知