Menu Close

Datapath 是什么?一张图看懂 CPU

🧠 Datapath 是什么?一张图看懂 CPU

如果说 ALU 是“计算的地方”,
那么 Datapath 就是——一切发生的路径

这是你理解 CPU 的关键一步。


🔍 一、什么是 Datapath?

Datapath(数据通路)就是:

数据在 CPU 内部流动的路径


👉 简单说:

  • 数据从哪里来
  • 到哪里去
  • 怎么被计算

👉 全都在 Datapath 里


🧩 二、CPU 不是“执行代码”

很多人以为:


但在硬件里:

👉 实际发生的是:


👉 这条“流动路线”:

👉 就是 Datapath


🏗️ 三、一张图看懂 Datapath(核心🔥)

Image

Image

Image

Image

Image

Image

Image


👉 这张图里只有几个核心模块:

  • PC(程序计数器)
  • Instruction Memory
  • Register File
  • ALU
  • Data Memory

👉 但重点不是模块

👉 是 连接它们的线


🔄 四、一次指令的数据流(关键)

以这条指令为例:


👉 Datapath 发生了什么:

1️⃣ PC → 取指令
2️⃣ Instruction Memory → 输出指令
3️⃣ Register File → 读取 x1, x2
4️⃣ ALU → 计算
5️⃣ 写回 x3


👉 用一句话总结:


⚙️ 五、Datapath + Control Unit

👉 Datapath 只负责:

👉 “数据怎么走”


👉 Control Unit 负责:

👉 “现在该走哪条路”


👉 类比:

角色 类比
Datapath 公路
Control Unit 红绿灯

👉 没有 Control:

❌ 数据乱跑
CPU 崩溃


🧠 六、最重要的认知转变

👉 CPU 不在“执行代码”

👉 CPU 在做:


👉 代码只是:

👉 控制数据流的方式


⚡ 七、为什么 Datapath 这么重要?

因为:

👉 它决定了:

  • CPU 能做什么
  • 数据怎么流
  • 性能如何

👉 优化 CPU

👉 本质就是优化 Datapath


🔥 八、单周期 vs 流水线(埋伏笔)

当前你看到的是:

👉 单周期 Datapath


👉 下一步:

👉 Pipeline(流水线)


👉 区别是:

  • 单周期:一次只做一条指令
  • Pipeline:多条同时进行

👉 性能差距巨大


🚀 九、下一步你将做什么?

接下来进入最关键阶段:

👉 《从 Datapath 到 CPU:实现一个最小 RV32I》

你将:

  • 把所有模块连起来
  • 写出完整 CPU
  • 在 FPGA 上跑程序

📌 总结

  • Datapath = 数据流动路径
  • CPU 本质 = 数据流 + 控制
  • 所有模块通过 Datapath 连接
  • 是理解 CPU 的核心

👉 一句话:

CPU 不是在运行代码,而是在推动数据流动

 

除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!
Posted in RISC-V教程