• 计算机组成原理(二)


    计算机组成原理知识地图

    在这里插入图片描述

    计算机的基本组成

    • 五大基本组件:
      • 运算器
      • 控制器
      • 存储器
      • 输入设备
      • 输出设备
    • 计算机的两个核心指标:性能和功耗。

    计算机的指令和计算

    • 控制器
      • 一条条指令执行的控制过程由控制器控制。
      • 程序是怎么通过编译器和汇编器,变成一条条机器指令这样的编译过程?
      • 操作系统是怎么链接、装载、执行程序的?
    • 运算器
      • 从二进制和编码开始,理解数据在计算机里的表示,以及怎么从数字电路层面,实现加法、乘法这些基本的运算功能的。
      • 实现这些运算功能的ALU(Arithmetic Logic Unit/ALU),也就是算术逻辑单元。

    CPU 的设计

    • CPU 时钟可以用来构造寄存器和内存的锁存器和触发器。
      • 为什么需要 CPU 时钟(CPU Clock)?
      • 寄存器和内存是用什么样的硬件组成?
      • 整个计算机的数据通路是如何构造出来的?
    • 数据通路,其实就是连接了整个运算器和控制器,并最终组成了 CPU。
      • 出于对于性能和功耗的考虑,要进一步理解和掌握面向流水线设计的 CPU、数据和控制冒险,以及分支预测的相关技术。
      • 既然 CPU 作为控制器要和输入输出设备通信,那么就要知道异常和中断发生的机制。
      • 如何直接在 CPU 层面,通过 SIMD 来支持并行计算?

    存储器的原理

    • 通过存储器的层次结构作为基础的框架引导,需要掌握从上到下的 CPU 高速缓存、内存、SSD 硬盘和机械硬盘的工作原理,它们之间的性能差异,以及实际应用中利用这些设备会遇到的挑战。
    • 存储器其实很多时候又扮演了输入输出设备的角色,所以需要进一步了解,CPU 和这些存储器之间是如何进行通信的,以及性能问题是怎么一回事?
    • 理解什么是 IO_WAIT,如何通过 DMA 来提升程序性能?
    • 对于存储器,不仅需要它们能够正常工作,还要确保里面的数据不能丢失。于是要掌握如何通过 RAID、Erasure Code、ECC 以及分布式 HDFS,这些不同的技术,来确保数据的完整性和访问性能。
  • 相关阅读:
    银河麒麟4.0.2安装带有opengl的Qt5.12.9
    Revit中模型填充图案与绘图填充图案的区别
    spring源码1--自定义Autowired实现
    使用shell生成指定范围日期序列
    LLM 06-大模型架构
    [Python] 面向对象(一)
    Vue3快速上手
    【C语言 数据结构】队列 - 链式、顺序
    Codeforces Round #835 (Div. 4) A~G
    Solon 1.6.36 发布,更现代感的应用开发框架
  • 原文地址:https://blog.csdn.net/fangzhan666/article/details/125423787