Amaranth硬件定义语言
项目描述
Amaranth HDL(以前称为nMigen)
Amaranth项目提供了一组开源工具链,用于使用Python编程语言开发基于同步数字逻辑的硬件,包括评估板定义、系统芯片工具包等。它旨在易于学习和使用,减少或消除常见的编码错误,并使用可重用组件简化复杂硬件的设计。
Amaranth工具链包括Amaranth硬件定义语言、标准库、模拟器和构建系统,涵盖了典型FPGA开发工作流程的所有步骤。同时,它不对设计师选择工具进行限制:现有的行业标准(System)Verilog或VHDL代码可以集成到基于Amaranth的设计流程中,或者相反,Amaranth代码可以集成到现有的基于Verilog的设计流程中。
Amaranth的开发得到了LambdaConcept、ChipEleven和Chipflow的支持。
简介
请参阅文档中的简介部分。
安装
请参阅文档中的安装部分。
用法
请参阅文档中的语言指南部分。
平台支持
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)。
开源工具链以粗体显示。
社区
Amaranth有一个专门的IRC频道#amaranth-lang at libera.chat,该频道已通过[1]桥接到#amaranth-lang:matrix.org的Matrix。您可以加入并询问有关使用Amaranth的问题,或讨论Amaranth及其相关项目的持续开发。
[1]:相同的消息出现在IRC和Matrix上,您可以使用任一通信系统平等地参与讨论。
许可证
Amaranth在双条款BSD许可证下发布。只要复制许可证文件中的版权声明,您就可以使用Amaranth进行开源和专有设计。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
构建分发
amaranth-0.5.2.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | af52811bca464233a3bbd72193ede584e75de592391cae92d1cbf24b98a3c954 |
|
MD5 | 219caba31ef792d4669f96f4f169c543 |
|
BLAKE2b-256 | 77c7c8666fa3371a014701daa952bc80019e85d2ab34241bfa81800f7bbabe99 |