# MIT 6.375：Complex Digital Systems

资源 ID：`M6375-F19`。入口指向 Fall 2019；2026-10-07 核对。作为高级架构与项目方法选读，关系见 [中心 Mapping](course_mapping.md#5-课程-mapping)。

## 官方入口

[课程](https://csg.csail.mit.edu/6.375/6_375_2019_www/index.html)、[schedule](https://csg.csail.mit.edu/6.375/6_375_2019_www/schedule.html)、[handouts](https://csg.csail.mit.edu/6.375/6_375_2019_www/handouts.html)、[course info](https://csg.csail.mit.edu/6.375/6_375_2019_www/course-info.html)。

课程使用 BSV/Bluespec，以复杂系统、模块化和项目为重心。其调度/规则语义不等于 SystemVerilog `always_ff`，不能机械翻译示例。

## 什么时候值得读

| 已遇到的问题 | 节点 / 本项目 | 带回自己的设计 |
|---|---|---|
| 数据通路要分模块还是资源复用？ | K04/K06/K14，33–36/DF08/AD15 | 接口与调度表、可接受速率、延迟与面积假设 |
| 流水遇到 backpressure 怎样维持样本身份？ | K04/K09/K18，AD17/TD05–07 | FIFO/valid/id/version 台账与不变量 |
| 怎样评估复杂项目的替代架构？ | K06，48/DF08/TD12 | baseline→alternative→同条件评价 |

先通过同步 RTL/独立验证/定点/STA 基础，再从 schedule/handouts 选择解决当前问题的一段阅读。不为了复杂项目的规模重心转向完整 RISC-V/cache/FPGA 系统；若将来选 FFT，应挂 K14/K16 并明确自己的频率、定点与 deadline。

## 实验、记录与取舍

推荐借用方法做 `EXP-FIXED-PPA` 或 DF08 调度草图，不安装第二套 BSV 工具链，也不照搬课程系统。CPU、cache 和语言学习暂不列入必修。

目前仅完成资料核对。实际学习写 [learning_log](../learning_log/README.md)，项目实现与证据回原目录。建议问题：模块接口如何表达占用/拒绝？流水级里的数据和标签为何必须一起停？资源复用是否满足转换器连续吞吐？
