获奖的HDL代码包管理器和构建抽象工具
项目描述
FuseSoC
简介
FuseSoC是一个获奖的包管理器和一组用于HDL(硬件描述语言)代码的构建工具。
其主要目的是提高IP(知识产权)核心的重用性,并有助于创建、构建和模拟SoC解决方案。
FuseSoC使以下操作变得更加容易
- 重用现有核心
- 创建编译时或运行时配置
- 针对多个模拟器运行回归测试
- 将设计移植到新目标
- 允许其他项目使用您的代码
- 设置持续集成
要了解更多关于FuseSoC的信息,请参阅用户指南。
入门
安装最新版本
FuseSoC支持Linux、Windows和macOS。它使用Python编写,可以通过"pip"像其他Python包一样安装。请参考用户指南中的安装部分,获取完整的系统要求和安装说明。
快速入门
为了检查FuseSoC是否工作,以及了解FuseSoC的工作方式,您可以尝试从我们的核心库中模拟一个简单的硬件设计。
首先,创建并进入一个空的工作区
mkdir workspace
cd workspace
将FuseSoc基础库安装到工作区
fusesoc library add fusesoc-cores https://github.com/fusesoc/fusesoc-cores
获取工作区中找到的核列表
fusesoc core list
如果您已安装了任何受支持的模拟器,您还可以尝试在其中一个核上运行模拟。例如,fusesoc run --target=sim i2c
将使用Icarus Verilog在i2c核上运行回归测试。如果您想尝试其他模拟器,请在run
和i2c
之间添加,例如--tool=modelsim
或--tool=xcelium
。
fusesoc --help
将为您提供有关命令和开关的更多信息。
它工作了吗?太好了!FuseSoC可以用来创建FPGA映像、执行代码审查、管理IP库或进行形式验证。查看在线文档,了解更多关于创建自己的核心文件和使用现有核心文件的信息。如果它没有工作,请与我们联系(见下文)。
下一步
通过为LED to Believe项目做出贡献,您可以得到第一次接触FuseSoC的实践经验。该项目旨在使用FuseSoC在现有的每个FPGA开发板上闪烁LED。已经有大约40种不同的板受到支持。如果您的板已经受到支持,那么太好了,您现在可以运行第一个基于FuseSoC的设计。如果它不受支持,那么太好了,您现在有机会将其添加到受支持的板列表中。无论如何,前往LED to Believe,了解更多信息,并了解如何从闪烁的LED到在FPGA上运行RISC-V核心。
需要帮助?
FuseSoC提供了广泛的在线文档。
为了与活跃的开发者进行快速沟通,欢迎加入我们的FuseSoC聊天。
如果您发现了问题,或想了解目前已知的问题,请查看GitHub上的问题跟踪器。
如果您正在寻找专业的付费支持,我们很高兴提供功能添加、错误修复、用户培训、设置核心库、将现有设计迁移到FuseSoC以及其他服务。请联系olof.kindgren@gmail.com获取更多信息。
为FuseSoC做出贡献
FuseSoC是由一个活跃且友好的社区开发的,欢迎您加入!您可以在我们的开发者指南中了解更多关于设置开发环境的信息。
您可以在GitHub上的olofk/fusesoc存储库中提交错误报告和提出更改。
进一步阅读
- 来自OSDA 2019的关于使用FuseSoC进行IP管理的可扩展方法的论文和幻灯片
- Antmicro博客文章关于如何将FuseSoC用作代码审查器
- 在《超越寄存器映射的故事》博客上的有关FuseSoC的帖子
- 2022年RISC-V周会议的演示文稿
- 2019年Latch-Up Portland会议的演示文稿
- 2019年WOSH会议的演示文稿
- 2017年ORConf会议的演示文稿
- 2016年ORConf会议的演示文稿
许可证
FuseSoC根据宽松的2条款BSD许可证授权,允许自由使用、修改和分发FuseSoC用于各种项目。有关详细信息,请参阅LICENSE文件。
项目详情
下载文件
下载您平台对应的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
构建分发
fusesoc-2.4.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a9392dc0be5d1dcc54ed7b20f247bb8d5a9665c90775952cd5129e398487fa96 |
|
MD5 | f758231cf087427ae40527dd56771a7d |
|
BLAKE2b-256 | 4cb908bfdd3d5882b86de3e2049f6f6c70eb405f1403ec3aa2d6500bb314f7be |
fusesoc-2.4-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6fecf1ef2e39d6ad38ddb3dc294bcfde302686e627c14359c52444129b246bb1 |
|
MD5 | 2305a76dad28e75e6672cf28946da5dc |
|
BLAKE2b-256 | 27f18970a57bfa5e07a1da506c40b90f185a89b7d5342e7eec6d457b8257f44a |