venus学习 10/12
clone venus项目;初读hardware--soc的顶层文件,读了部分模块
VENUS SoC 学习记录
1. 项目目录
| 目录 | 用途 |
|---|---|
| hardware/ | RTL(寄存器传输级)硬件设计 |
| software/ | 启动程序、测试程序、调度软件和驱动 |
| sim/ | 测试平台、行为模型和仿真脚本 |
| fpga/ | FPGA(现场可编程门阵列)工程 |
| spyglass/ | RTL 静态检查 |
| syn/、apr/、pt/ | 综合、布局布线、时序分析 |
| README 主要介绍组件生成、VCS/DVE 仿真、SpyGlass 检查和回归测试。 |
VENUS 芯片
├── 控制:L1 等控制核心
├── 计算:cluster → L2 + 多个 tile
├── 存储:启动代码、程序、数据
├── 连接与搬运:总线互连 + DMA
├── 数据接口与外设:DFE、JESD、USB、串口等
└── 基础设施:时钟、复位、电源、测试、引脚
2. 硬件组成
沿 venus_gc0802_top 路径认识了以下层次:
- SoC:包含 L1系统层调度器、系统互连、存储、外设和 cluster。
- cluster(计算单元簇):包含 L2、DMA、存储、内部互连和 tile。
- tile(计算单元):包含标量处理器、可配置 SIMD 扩展、本地存储和管理器。
3. 模块连接
1.L1 与系统
L1 ──AXI 请求──→ 系统互连 ──→ 存储、外设、cluster
L1 ←─AXI 响应── 系统互连
L1 ←─中断通知── cluster、DMA、外设
2.L2 与 tile
L2 ──任务分配、启动、释放──→ tile 管理器
L2 ←──占用状态、硬件能力、结果请求── tile 管理器
![U(K247WPF9{@(KO]E3{D3$C.png](/media/images/b675ee5769d049b28f2b53f06c0b4a3f.png)