©️ OverlookArt

计算机体系结构

计算机体系结构的分类

  • 从宏观上按处理机的数量分类
    1. 单处理系统:利用一个处理单元与其他外部设备结合起来,实现存储,计算,通信,输入和输出等功能的系统
    2. 并行处理与多处理系统:为了充分发挥问题求解过程中处理的并行性,将两个以上的处理机互联起来,彼此进行通信协调,便于共同求解一个大问题的计算机系统
    3. 分布式处理系统:物理上远距离且耦合的多计算机系统,物理上的远距离意味着通信时间与处理时间相比已不可忽略,在通信线路上的数据传输速率要比在处理机总线上传满的多
  • 从微观上按并行程度分类
    1. Flynn分类法:1996年,由Flynn提出按指令流的多少进行分类,将计算机系统结构分为单指令流单数据流(SISD),单指令流多数据流(SIMD),多指令流单数据流(MISD)和多指令流多数据流(MIMD)四类
    2. 马泽云分类法:1972年由美籍华人马泽云提出按并行度对各种计算机系统进行结构分类,将计算机分为字串行位串行(WSBS)计算机,字并行位串行(WPBS)计算机,字串行位并行(WSBP)计算机,字并行位串行(WPBP)计算机四类
    3. Handler分类法:1977年由德国汉徳勒(Wolfgang Handler)提出基于硬件并行程度和计算并行程度的方法,把计算机的硬件分为三个层次,处理机级,每个处理机中的算术逻辑单元级,每个算术逻辑单元中的逻辑门电路级
    4. Kuck分类法:1978年美国的库克(David J.Kuck)提出与Flynn分类法类似的方法,用指令流和执行流及多重性来描述计算机系统控制结构的特征,主要分为单指令流单执行流(SISE),单指令流多执行流(SIME),多指令流单执行流(MISE),多指令流多执行流(MIME)四类

指令系统

  • 指令的格式
    指令格式:操作码OP + 地址码A
    操作码指定要完成的操作或功能,地址码指定参与操作的操作数的地址

  • 指令的寻址方式

    • 顺序寻址:下一条指令的地址由程序计数器PC给出,PC每次自增+1
    • 跳跃寻址:下一条指令的地址由指令本身给出
  • 操作数的寻址方式

    • 立即寻址:指令的地址码字段不是操作数的的地址,而是操作数本身,速度最快
    • 直接寻址:指令的地址码字段给出操作数在内存的地址(操作数在内存中)
    • 间接寻址:指令的地址码字段给出操作数在内存的地址的地址(操作数在内存中),需要访问2次内存
    • 寄存器寻址:指令的地址码字段给出的操作数在寄存器的编号(操作数在寄存器中)
    • 寄存器间接寻址:指令的地址码字段给出寄存器的编号,寄存器中所存的内容为操作数在内存的地址(操作数在内存中)
  • 指令集分类

    • CISC指令集:复杂指令集,各种指令按顺序串行执行
    • RISC指令集:精简指令集,减少指令总数,采用优化便衣,硬布线,重叠寄存器窗口等技术
      特性 CISC RISC
      0 指令数目
      1 指令长度 可变长指令 大部分等长指令
      2 控制器复杂性 复杂 简单
      3 寻址方式 较丰富,提高编程灵活性 较少,以提高效率
      4 编程遍历性 指令多,灵活 编程量大,采用较多通用寄存器
      5 实现方式 微程序控制技术 采用硬布线逻辑控制优化编译程序,采用流水线技术
  • 指令的流水处理

    • 非流水执行时间:一条指令执行的时间 * 指令总数
    • 流水执行时间:一条指令执行的时间 + 指令中最长流水的时间 * (n-1), n为指令总数
    • 加速比:非流水方式与流水方式所用时间之比
    • 流水线的操作周期:为最长流水段时间
    • 流水线的吞吐率:为最长流水段时间的倒数
    • 连续 n 条指令的吞吐率:指令总数/总时间

存储系统

  • 高速缓存 Cache
    高速缓存 Cache 位于 CPU 和主存之间,用于存储当前活跃的程序和数据

    • Cache 的功能:解决 CPU 和主存之间速度不匹配的问题
    • Cache 的理论依据:程序的局部性原理
      CPU 对主存中指令和数据的访问,在一小段时间内,总是集中在一小块存储空间里
    1. 时间局部性:最近被访问过的指令和数据很可能被再次访问
    2. 空间局部性:最近访问过的指令和数据往往集中在一小片存储区域中
  • 主存与 Cache 的地址映射
    在 CPU 工作时,送出去的是主存单元的地址,而应从 Cache 中读写信息,这就需要将主存地址转换成 Cache 地址,这种地址的转换称为地址映射

    • 全相联映像,映射方法:多对多。优点:冲突概率小,Cache 利用率高。缺点:硬件很难实现,且需要一个访问速度快,成本高的相联存储器。适用场合:小容量Cache
    • 直接映像,映射方法:一对多。优点:硬件实现简单,成本低,地址变换速度快。缺点:冲突率高,且Cache空间利用率不高。适用场合:大容量Cache
    • 组相联映像,映射方法:一组对多。优点:综合前两者的优点,又尽量避免其缺点,故被普遍采用
  • 虚拟存储器:由主存和辅存组成,主要解决主存容量不足的问题

  • 磁盘

    • 存取时间:寻道时间 + 旋转等待时间 + 数据传输时间
    • 寻道时间:将磁头定位至所要求的磁道上所需要的时间
    • 旋转等待时间:寻道完成后至磁道需要访问的信息到达磁头下的信息,平均等待时间为磁盘旋转一周的所需时间的一半
    • 数据传输速率:磁盘单位时间传输的字节数

输入输出技术

  • CPU 与外围设备之间的信息交换方式
    • I/O 接口与外设之间的信息交换
    • CPU 与I/O接口之间的信息交换
      • 程序查询方式:CPU 执行程序来轮询查询外设的状态,判断外设是否准备好接受数据或向 CPU 输入数据
      • 特点:
        • CPU 与外设串行工作
        • 硬件结构简单
        • CPU 大量时间都在查询等待,资源浪费较多
        • 需要 CPU 保存现场,由 CPU 将数据放入内存
        • 一次读写单位为 字
      • 适用场合
        • 低速外设或 CPU 任务不繁忙的情况
      • 程序中断方式:CPU 暂时中止现行程序,转去处理随机发生的紧急事件,处理完成后自动返回原程序的功能和技术。当 I/O 接口与外设交换数据过程中,CPU 无需等待,当交换数据完成时,I/O接口产生中断,通知 CPU 处理数据
      • 特点
        • CPU 与外设可并行工作
        • 硬件结构相对复杂,服务开销时间大
        • 需要 CPU 保存现场,由 CPU 将数据放入内存
        • 一次读写单位为 字
      • 适用场合
        • 微型机中随机出现的任务
        • 对 I/O 处理的实时性要求高的系统
      • 直接内存存取 DMA 方式:DMA 控制器接管总线的控制权,数据交换不经过 CPU,直接在内存和 I/O 设备间进行成块传送
      • 特点
        • CPU 与外设可并行工作
        • 仅在传送数据快的开始和结束时才需要 CPU 干预
        • 不需要 CPU 保存现场
        • 由外设直接将数据放入内存(或相反)
        • 一次读写单位为 块,传输一个数据块占用一个存储周期
      • 适用场合
        • 微型机中内存与高速外围设备进行大批数据交换
      • 通道方式(输入/输出处理机 IOP):由通道(输入/输出处理机 IOP)控制外围设备
      • 特点
        • 大大提高了 CPU 的效率
        • 但需要更多的硬件
      • 适用场合
        • 处理外设较多,规模较大的情形(大型机)

总线结构

总线(Bus) 是指在计算机中,设备与设备之间传输信息的公共数据通道

总线的分类

  1. 内部总线:CPU 内部连接运算器,控制器,各寄存器部件之间的总线
  2. 系统总线:CPU 和计算机系统中其他高速功能部件相互连接的总线。按系统总线传输信息内容的不同又可分为以下三类
    • 数据总线:用来传输各功能部件之间的数据信息,它是双向传输总线,其位数与机器字长,存储字长有关
    • 地址总线:用来指出数据总线上的源数据或目的数据所在的主存单元或 I/O 端口的地址,它是单向传输总线,地址总线的位数与主存地址空间大小有关
    • 控制总线:传输的是控制信息,包括 CPU 送出去的控制命令和主存(或外设)返回 CPU 的反馈信号
  3. I/O 总线:中低速 I/O 设备相互连接的总线