ITADN
amaranth-lang/amaranth
amaranth-lang/amaranth · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Amaranth HDL(前身为 nMigen)

Amaranth 项目提供了一套开源工具链,用于使用 Python 编程语言开发基于同步数字逻辑的硬件,以及评估板定义片上系统工具包等。它旨在易于学习和使用,减少或消除常见的编码错误,并简化使用可重用组件设计复杂硬件的过程。

Amaranth 工具链由 Amaranth 硬件定义语言、标准库、模拟器和构建系统组成,涵盖了典型 FPGA 开发工作流程的所有步骤。同时,它不限制设计者的工具选择:现有的行业标准 (System)Verilog 或 VHDL 代码可以集成到基于 Amaranth 的设计流程中,或者反过来,Amaranth 代码可以集成到现有的基于 Verilog 的设计流程中。

Amaranth 的开发得到了 LambdaConceptChipElevenChipflow 的支持。

简介

请参阅文档中的 Introduction 章节。

安装

请参阅文档中的 Installation 章节。

使用

请参阅文档中的 Language guide 部分。

平台支持

Amaranth 可用于针对任何接受行为级 Verilog-2001 作为输入的 FPGA 或 ASIC 工艺。它还针对许多 FPGA 系列提供扩展支持,包括工具链集成、针对特定设备原语的抽象等。具体而言:

  • Lattice iCE40(工具链:Yosys+nextpnr、LSE-iCECube2、Synplify-iCECube2);
  • Lattice MachXO2、MachXO3L(工具链:Yosys+nextpnr、Diamond);
  • Lattice ECP5(工具链:Yosys+nextpnr、Diamond);
  • Lattice Nexus(工具链:Yosys+nextpnr、Radiant);
  • AMD Virtex、Virtex E、Spartan 2、Spartan 2E(工具链:ISE);
  • AMD Virtex II、Virtex II Pro(工具链:ISE);
  • AMD Spartan 3、Spartan 3E、Spartan 3A、Spartan 3AN、Spartan 3A DSP(工具链:ISE);
  • AMD Virtex 4、Virtex 5、Virtex 6(工具链:ISE);
  • AMD Spartan 6(工具链:ISE);
  • AMD 7 系列(工具链:Vivado、ISE);
  • AMD UltraScale、UltraScale+(工具链:Vivado);
  • Altera(工具链:Quartus);
  • Quicklogic EOS S3(工具链:Yosys+VPR)。

FOSS 工具链以粗体列出。

社区

Amaranth 有一个专用的 IRC 频道,#amaranth-lang at libera.chat,该频道已_桥接_1 到 Matrix 的 #amaranth-lang:matrix.org。欢迎加入,以询问有关使用 Amaranth 的问题,或讨论 Amaranth 及其相关项目的持续开发。

许可证

Amaranth 依据 双条款 BSD 许可证 发布。只要复制许可证文件中的版权声明,即可将 Amaranth 用于开源和专有设计。

Footnotes

  1. 相同的消息会同时出现在 IRC 和 Matrix 上,使用任一通信系统均可平等地参与讨论。