文章目录
- 前言
- 1. 时钟周期(Clock Cycle)
- 定义
- 作用
- 2. 机器周期(Machine Cycle)
- 定义
- 典型操作
- 取指
- 译码
- 执行
- 架构差异
- CISC架构
- RISC架构
- 3. 指令周期(Instruction Cycle)
- 定义
- 示例(以8051为例)
- 单周期指令
- 双周期指令
- 四周期指令
- 重要性
- 4. 状态周期(State Cycle)
- 定义
- 作用
- S1-S2(取值)
- S3-S4(译码)
- S5-S6(执行)
- 5. 总线周期(Bus Cycle)
- 定义
- 典型场景
- 6. 中断响应周期(Interrupt Latency)
- 定义
- 优化策略
- 7. 流水线周期(Pipeline Stage)
- 定义
- 冲突处理
- 数据冲突
- 分支预测
- 关键概念对比
- 实际应用中的注意事项
- 时钟源选择
- 功耗与速度权衡
- 时序计算
- 流水线优化
- 总结
前言
在单片机中,时序控制是其执行指令和协调外设的核心基础。以下是单片机中常见的各种周期及其详细说明,以层次结构展开:
1. 时钟周期(Clock Cycle)
定义
时钟周期是单片机的最小时间单位,由外部晶振或内部振荡器产生的时钟信号决定。每个时钟周期对应一个时钟脉冲的上升沿到下一个上升沿(或下降沿)的时间。例如,12MHz 晶振的时钟周期为83.33ns。
作用
所有内部操作(如寄存器读写、ALU运算)均以时钟周期为基准同步进行。
2. 机器周期(Machine Cycle)
定义
机器周期是单片机完成一个基本操作所需的时间,通常由多个时钟周期组成。例如,传统8051单片机的机器周期包含 12个时钟周期。
对于传统8051(12时钟周期/机器周期):1us
现代增强型8051(如STC系列)可能采用 1时钟周期/机器周期,速度提升12倍。
典型操作
取指
取指(Fetch):从程序存储器读取指令。
译码
译码(Decode):解析指令功能。
执行
执行(Execute):执行运算或数据传输。
架构差异
CISC架构
CISC架构(如8051):复杂指令可能需要多个机器周期。
RISC架构
RISC架构(如ARM Cortex-M):单周期指令为主,效率更高。
3. 指令周期(Instruction Cycle)
定义
执行一条完整指令所需的时间,通常由1个或多个机器周期组成。指令周期因指令复杂度而异。