Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ranxi2001/triathlon-computer-architecture-2024
中国科学院大学UCAS 计算机体系结构硕士课程实验设计——2024 CPU铁人三项
https://github.com/ranxi2001/triathlon-computer-architecture-2024
Last synced: about 2 months ago
JSON representation
中国科学院大学UCAS 计算机体系结构硕士课程实验设计——2024 CPU铁人三项
- Host: GitHub
- URL: https://github.com/ranxi2001/triathlon-computer-architecture-2024
- Owner: ranxi2001
- Created: 2024-10-25T04:05:22.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2024-10-25T12:12:35.000Z (3 months ago)
- Last Synced: 2024-10-26T17:40:57.279Z (3 months ago)
- Homepage:
- Size: 19.1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Roadmap: roadmap/Cooperation.md
Awesome Lists containing this project
README
# 秋季学期实验:体系结构课程铁人三项实验设计
> 中国科学院大学 计算机体系结构 硕士课程实验设计——2024 CPU铁人三项
## 实验目的
培养学生的计算机基本功:
- 熟悉现代处理器的基本工作原理 掌握 处理器 soc 结构 、 芯粒间互联接口( AIB 等 结构及其集成 设计方法。
- 针对 开源指令集 处理器、 编译器前端 、以及 操作系统,形成 三部分贯通 的完备 互联 系统 。## 实验工具
- **HDL**:Verilog
- **IDE**:Vivado
- **FPGA 开发板**## 实验:基于开源处理器芯粒的快速接口及互联 设计
### 实验介绍
由于工艺的光照极限与制程放缓限制,传统SOC架构芯片在面积上已难以开始达到上限,在算力上已经不能满足当前的多样化智能任务的需求,而芯粒集成技术,则是通过2.5D和3D集成技术完成多处理器的集成,是尺寸微缩、新器件之外的第三条提升算力的有效路径。芯粒的接口与互联设计是芯粒集成芯片设计的重要技术,是多芯片之间协同处理大型任务的前提。故在本实验,我们探索针对芯粒集成的接口与互联设计技术,通过探索开源处理器的芯粒接口、集成以及互联设计,论证开源领域的芯粒集成路线的有效性和先进性。
本实验首先将基于开源的RISCV处理器的SOC做进一步的芯粒扩展接口开发,相关开源处理器优先以铁人三项开源处理器为准,在基于AHB的crossbar的外设端开展开源AIB接口移植(配备开源工程与手册,也可建议基于开源工程做进一步接口优化),形成具备Die-to-Die接口的芯粒IP核心。
完成接口移植后,则需实现不少于两个芯粒之间的互联,正确完成数据的互通与协同。其中互联能提供的数据带宽越大,则性能更优;所能互联的芯粒数量越多,则可扩展性更优;各芯粒协同处理同等任务的时间更短,则互联与协同设计更优。
### 实现路径
1. 开源处理器SoC 接口:铁人三项二期/Pulp 处理器工作简介
2. 基于开源芯粒的接口移植:AIB接口介绍
3. 多芯粒互联设计芯粒:互联设计 简介### 实验建议
- 利用 Verilog 编写硬件开发,建议基于上一期铁人三项的 SoC 框架进行开发;
- 适度参考 已有开源 接口 工作 进行移植 ,例如 Intel 的 AIB 等 。
- 本实验协作性质较强,设计前期需有较好的 规划,在代码 实现 之前 需规划 好各个模块及其接口,准备 共享开发 文档, 而 后开始 协作开发 ,每个 成员可 负责 若干 模块 。
- 开发 遇到问题时 应 及时 更新 文档 尽量保证模块间低耦合,避免一个模块更改需要牵连多个模块的改动 。
- 认识到测试的重要性,在编写代码前可以先把测试代码写好 。### 实验要求
- 设计 基础文档
- 在做 `rtl` 设计的同时,注意记录好各项设计细节与验证过程,按要求撰写必要的报告部分。
- 接口迁移 开发
- 需完成 `AIB` 接口在开源 `SoC` 的迁移;
- 移植四组 `AIB` 为最优结果。
- 芯粒互联 功能 开发
- 完成至少两个芯粒之间的点对点互联,实现点对点的满载数据传输;
- 完成多个芯粒之间的路由互联完成多个芯粒之间的路由互联,开发路由模块,利用路由算法解决多芯粒,开发路由模块,利用路由算法解决多芯粒之间的拥塞与死锁问题。之间的拥塞与死锁问题。
- 最终评定:
- 评估实验完成情况,在基本要求都完成的情况下,会依据benchmark程序比较任务的规模、硬件实时性,执行效率。## 参考资料
- https://www.gitlink.org.cn/zone/iChips/source/12
- https://github.com/chipsalliance/aib-phy-hardware
- https://github.com/chipsalliance/aib-phy-generator
- [Study_Reference.md](./reference/Study_Reference.md)