Ara 项目使用教程
1. 项目的目录结构及介绍
Ara 项目的目录结构如下:
ara/
├── apps/
├── config/
├── docs/
├── hardware/
├── patches/
├── scripts/
├── toolchain/
├── .editorconfig
├── .gitignore
├── .gitlab-ci.yml
├── .gitmodules
├── Bender.lock
├── Bender.yml
├── CHANGELOG.md
├── CODEOWNERS
├── CONTRIBUTING.md
├── DEPENDENCIES.md
├── FUNCTIONALITIES.md
├── LICENSE
├── Makefile
├── Memora.yml
├── README.md
└── python-requirements.txt
目录介绍
- apps/: 包含示例应用程序和 RISC-V 测试。
- config/: 包含 Ara 的配置文件。
- docs/: 包含项目的文档。
- hardware/: 包含 Ara 的硬件设计文件。
- patches/: 包含需要应用到外部 IP 的补丁。
- scripts/: 包含项目的脚本文件。
- toolchain/: 包含构建工具链所需的文件。
- .editorconfig: 编辑器配置文件。
- .gitignore: Git 忽略文件配置。
- .gitlab-ci.yml: GitLab CI 配置文件。
- .gitmodules: Git 子模块配置文件。
- Bender.lock: Bender 依赖锁定文件。
- Bender.yml: Bender 配置文件。
- CHANGELOG.md: 项目变更日志。
- CODEOWNERS: 代码所有者配置文件。
- CONTRIBUTING.md: 贡献指南。
- DEPENDENCIES.md: 项目依赖列表。
- FUNCTIONALITIES.md: 功能说明。
- LICENSE: 项目许可证。
- Makefile: 项目构建文件。
- Memora.yml: Memora 配置文件。
- README.md: 项目自述文件。
- python-requirements.txt: Python 依赖列表。
2. 项目的启动文件介绍
Ara 项目的启动文件主要是 Makefile
和 README.md
。
Makefile
Makefile
是 Ara 项目的主要构建文件,包含了构建工具链、编译应用程序、运行模拟等命令。以下是一些常用的命令:
-
构建 LLVM 工具链:
make toolchain-llvm
-
构建 Spike ISA 模拟器:
make riscv-isa-sim
-
构建 Verilator:
make verilator
-
编译应用程序:
cd apps make bin/hello_world
-
运行应用程序:
cd apps make bin/hello_world make spike-run-hello_world
README.md
README.md
是项目的自述文件,包含了项目的概述、依赖项、构建步骤、使用说明等内容。初次使用项目时,建议首先阅读此文件。
3. 项目的配置文件介绍
Ara 项目的配置文件主要集中在 config/
目录下。
config/
config/
目录包含了 Ara 的配置文件,这些文件定义了 Ara 的各种参数和配置选项。以下是一些重要的配置文件:
- config/README.md: 配置文件的说明文档,详细介绍了如何配置 Ara。
- config/*.yml: 具体的配置文件,定义了不同的配置选项。
配置示例
在构建和运行 Ara 时,可以通过以下方式选择配置:
make bin/hello_world config=chosen_ara_configuration
或者通过环境变量设置:
export ARA_CONFIGURATION=chosen_ara_configuration
这样可以根据不同的需求选择合适的配置。
以上是 Ara 项目的使用教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望这些信息能帮助你更好地理解和使用 Ara 项目。