计算机组成原理 总体知识大纲
第一部分:计算机系统概述
- 计算机系统的层次结构
- 硬件与软件的逻辑等价性
- 计算机系统的多级层次(微程序级、机器语言级、操作系统级、汇编语言级、高级语言级)
- 计算机的基本组成
- 冯·诺依曼结构(运算器、控制器、存储器、输入设备、输出设备)
- 哈佛结构及其与冯氏结构的区别
- 计算机的工作过程
- 指令的执行过程(取指、译码、执行、访存、写回)
- 时钟、指令周期、机器周期、总线周期
- 性能指标
- 吞吐量、响应时间
- 主频、CPI、IPC
- CPU执行时间计算公式
- MIPS、MFLOPS
- 基准程序
第二部分:数据的表示与运算
- 数制与编码
- 二进制、八进制、十进制、十六进制转换
- BCD码、余3码、格雷码
- 定点数的表示
- 原码、反码、补码、移码
- 无符号整数与有符号整数
- 定点小数
- 浮点数的表示
- IEEE 754标准(单精度、双精度)
- 规格化数、非规格化数、特殊值(无穷大、NaN)
- 浮点数的舍入规则
- 算术逻辑单元
- 加法器(半加器、全加器、串行进位、超前进位)
- 减法、乘法(原码乘法、补码乘法)、除法(恢复余数法、不恢复余数法)
- 定点数运算(溢出判断、标志位生成)
- 浮点数运算步骤(对阶、尾数运算、规格化、舍入、溢出判断)
- 移位运算与位扩展
- 逻辑移位、算术移位、循环移位
- 零扩展、符号扩展
第三部分:存储器层次结构
- 存储器概述
- 分类(RAM、ROM、Cache、寄存器等)
- 存储层次原理(局部性、速度-容量-价格权衡)
- 主存储器
- 动态RAM(DRAM)与静态RAM(SRAM)工作原理
- 只读存储器(ROM、PROM、EPROM、EEPROM、闪存)
- 主存芯片的结构(地址线、数据线、片选信号)
- 主存容量的扩展(位扩展、字扩展、字位扩展)
- 高速缓冲存储器
- Cache的基本原理(命中、缺失、块)
- Cache的映射方式(直接映射、组相联映射、全相联映射)
- Cache的替换算法(随机、FIFO、LRU、LFU)
- Cache的写策略(写直达、写回;写分配、非写分配)
- 多级Cache
- 虚拟存储器
- 页式虚拟存储器(页表、地址转换、TLB快表)
- 段式、段页式虚拟存储器(简要)
- 存储器与CPU的连接
- 地址译码、读写控制、时序配合
第四部分:指令系统
- 指令系统的基本概念
- 指令格式(操作码、地址码)
- 定长指令与变长指令
- 寻址方式
- 立即寻址、直接寻址、间接寻址
- 寄存器寻址、寄存器间接寻址
- 相对寻址、基址寻址、变址寻址
- 堆栈寻址
- 指令类型
- 数据传送类、算术逻辑类、移位类
- 转移类(无条件转移、条件转移、调用与返回)
- 输入输出类
- CISC与RISC
- 特点对比(指令数量、格式、寻址方式、寄存器数量、流水线支持等)
- 典型RISC架构(如MIPS、ARM简要)
第五部分:中央处理器
- CPU的功能与组成
- 数据通路(ALU、寄存器组、多路选择器、总线连接)
- 控制单元(硬布线控制器、微程序控制器)
- 指令执行过程
- 单周期处理器(每条指令一个周期)
- 多周期处理器(指令分步执行)
- 控制信号生成
- 数据通路
- 寄存器传送语言
- 单总线、多总线结构数据通路
- 控制器设计
- 硬布线控制:状态机、组合逻辑设计
- 微程序控制:微指令、微地址、微程序ROM
- 流水线技术
- 流水线的基本概念(五级流水:IF、ID、EX、MEM、WB)
- 流水线冒险:结构冒险、数据冒险(写后读等)、控制冒险
- 冒险解决方法(插入气泡、前推/旁路、分支预测)
- 流水线性能指标(吞吐率、加速比、效率)
- 超标量、动态流水线简介
第六部分:总线与输入输出系统
- 总线概述
- 总线的基本概念(地址总线、数据总线、控制总线)
- 总线仲裁方式(链式查询、计数器定时查询、独立请求)
- 总线操作与定时
- 同步总线、异步总线(握手协议)
- 总线传输阶段(请求、仲裁、寻址、传送、释放)
- 常见总线标准
- PCI、PCIe、USB、SATA等(了解特点)
- 输入输出接口
- I/O接口的功能与结构(数据缓冲、状态/控制寄存器)
- I/O端口编址(统一编址、独立编址)
- I/O控制方式
- 程序查询方式
- 程序中断方式
- 中断响应流程、中断向量、中断屏蔽
- 多重中断与中断优先级
- 直接存储器存取方式
- DMA控制器工作原理、DMA传输流程
- 通道方式与I/O处理器(简介)
第七部分:计算机组成原理与操作系统、汇编的交叉考点(针对408)
- 数据表示与汇编指令的对应(如补码与条件码)
- 虚拟地址到物理地址的转换(结合操作系统的页表机制)
- Cache与虚拟存储器的关系
- 中断与异常的处理(操作系统与硬件协作)
- 指令流水线中的操作系统支持(如TLB缺失处理)
第八部分:408备考策略与重点章节权重
章节分值权重分析(历年408统计):
| 章节 | 选择题分值 | 大题分值 | 合计占比 | 重要程度 |
|---|---|---|---|---|
| 计算机系统概述 | 2-4分 | 0分 | 2-4分 | 中 |
| 数据表示与运算 | 4-8分 | 8-12分 | 12-20分 | 极高 |
| 存储器层次结构 | 4-8分 | 8-12分 | 12-20分 | 极高 |
| 指令系统 | 2-6分 | 0-8分 | 2-14分 | 高 |
| 中央处理器 | 4-8分 | 8-12分 | 12-20分 | 极高 |
| 总线与I/O系统 | 2-6分 | 0-8分 | 2-14分 | 高 |
说明:以上为大致区间,每年略有变化。数据表示(浮点数、补码运算)和CPU(流水线)是408的重中之重。
第九部分:跨章节综合考点
-
Cache + 虚拟存储器综合:CPU发出虚拟地址 -> TLB转换 -> Cache访问 -> 若Miss则访问主存。一次LOAD指令可能涉及TLB、Cache、主存、缺页处理四个层次。
-
数据表示 + ALU:补码加减法体现在ALU的电路设计中(加法和减法复用同一套电路)。
-
指令系统 + CPU:不同寻址方式决定了数据通路中多路选择器的选择信号。
-
存储器 + CPU连接:主存容量的扩展与地址译码是组成原理的硬件设计综合题。
-
I/O + 操作系统:中断处理是操作系统和设备驱动的桥梁,DMA是现代操作系统I/O子系统的核心。
第十部分:高频考点速记表
| 考点 | 出现频率 | 题型 | 关键公式/要点 |
|---|---|---|---|
| CPU执行时间 | 每年 | 选/计 | T = I x CPI / f |
| 平均CPI | 每年 | 选/计 | CPI_avg = sum(P_i x CPI_i) |
| IEEE 754浮点数 | 2-3年一次 | 选/计 | (-1)^S x 1.M x 2^(E-127) |
| 补码加减法 | 每年 | 选 | 直接相加,溢出看符号 |
| Cache地址划分 | 1-2年一次 | 选/计 | Tag + Index + Offset |
| Cache平均访问时间 | 1-2年一次 | 选/计 | t_avg = t_hit + miss_rate x t_miss |
| LRU替换 | 2-3年一次 | 选 | 替换最久未访问的 |
| 扩展操作码 | 2-3年一次 | 选/计 | 短码向长码扩展 |
| 流水线数据冒险 | 1-2年一次 | 选/计 | RAW最常考,转发解决 |
| 总线带宽 | 2-3年一次 | 选 | 带宽 = 宽度 x 频率 / 周期数 |
| 中断流程 | 2-3年一次 | 选/简 | 请求->响应->保护->服务->恢复 |
| DMA vs 中断 | 1-2年一次 | 选/简 | 传输单位、CPU介入程度 |
第十一部分:备考建议(针对跨考生)
基础阶段(第1-2个月):
- 重点掌握前两部分(系统概述、数据表示),这些是后续章节的基础。
- 数据表示中的补码和IEEE 754要做到"肌肉记忆"——看到就能写出。
- 每天练习3-5道进制转换和补码运算题。
强化阶段(第3-4个月):
- 攻克存储器(Cache地址划分、主存扩展)和CPU(流水线冒险分析)。
- Cache部分建议配合操作系统中的虚拟存储器一起复习。
- 动手画流水线时空图来分析冒险。
- 这一阶段要开始做408真题(近10年)的组成原理部分。
冲刺阶段(第5-6个月):
- 查漏补缺,重点关注总线与I/O、指令系统等相对独立的知识点。
- 总结高频考点和自己的易错点,建立错题本。
- 重点练习综合题(如Cache+TLB结合、流水线+数据通路结合)。
常见心态建议:
- 组成原理是408中"门槛较高但提分快"的科目,不要被第一遍的复杂感吓倒。
- 对于跨考生,先从计算题入手(T=IxCPI/f、补码、浮点数、Cache平均访问时间),计算题容易拿分且有固定套路。
- 概念对比题(CISC vs RISC、同步 vs 异步、DMA vs 中断)适合用表格归纳,考前反复看。