【Hacker News搬运】Logik:Zero ASIC的开源FPGA工具链
-
Title: Logik: Open-source FPGA toolchain by Zero ASIC
Logik:Zero ASIC的开源FPGA工具链
Text:
Url: https://github.com/zeroasiccorp/logik
标题:GitHub - zeroasiccorp/logik: 一个可配置的从RTL到位流的FPGA工具链 作者:zeroasiccorp 发布日期:未提供 顶部图片:未提供 文本: Logik是一个开源的FPGA工具链,它完全自动化了从RTL到位的转换,包括合成、布局、布线、位流生成和分析。用户通过简单的SiliconCompiler Python API输入设计源、约束和编译选项。一旦设置完成,可以通过一条运行命令启动自动化编译。 Logik支持商业专有FPGA工具链中的大多数功能。 特性 | 状态 | 设计语言 | Verilog, SystemVerilog, VHDL | ALU合成 | 支持 | RAM合成 | 支持 | 定时约束(SDC) | 支持 | 引脚约束(PCF) | 支持 | 位流生成 | 支持 | IP管理 | 支持 | 远程编译 | 支持 | 多时钟设计 | 进行中 | FPGA设备 | ZA Logik项目可通过PyPi获取,并可以使用pip安装。如果您想在本地机器上运行,需要安装所有预先要求的工具,或者启动Logik Docker镜像。 python -m pip install --upgrade logik 以下示例说明了Logik的一些基本功能。有关所有可用选项的完整文档,请参见SiliconCompiler项目。 from siliconcompiler import Chip from logik.targets import logik_target def hello_adder(): # 创建编译对象 chip = Chip('adder') # 指定设计源 chip.input('adder.v') # 指定引脚约束 chip.input('adder.pcf') # 编译器选项 chip.set('option', 'quiet', True) chip.set('option', 'remote', True) # 选择目标FPGA chip.set('fpga', 'partname', 'logik_demo') # 加载目标设置 chip.load_target(logik_target) # 运行编译器 chip.run() # 显示编译器结果 chip.summary() if __name__ == "__main__": hello_adder() 此代码可以在examples/adder目录下以./adder.py -remote运行,结果在build/adder/job0/convert_bitstream/0/outputs/adder.bin生成FPGA位流。 为了测试生成的位流,您可以将其上传到在Zero ASIC Digital Twin Platform中运行的模拟FPGA设备。 UMI "Hello World" UMI FIR Filter EBRICK demo Logik文档 SiliconCompiler文档 Logik作为wheel包在PyPI上提供,支持macOS、Windows和Linux平台。对于Python 3.8-3.12环境,只需使用pip安装。 python -m pip install --upgrade logik 在本地机器上原生运行将需要安装许多预先要求的工具: Silicon Compiler:硬件编译器框架 Yosys:逻辑合成 VPR:FPGA布局和布线 GHDL:VHDL解析器 Surelog:SystemVerilog解析器 FASM:FPGA汇编解析器和生成器 为了方便,SiliconCompiler项目中包含了基于Ubuntu的自动化安装脚本。有关安装所有工具的详细说明,请参见SiliconCompiler安装指南。 为避免安装预先要求的工具,为用户提供Docker镜像。以下命令从该镜像启动新容器,并将本地目录sc_work映射到容器中的/sc_work路径。 docker run -it -v "${PWD}/sc_work:/sc_work" ghcr.io/siliconcompiler/sc_runner:latest 我们使用GitHub Issues来跟踪请求和错误。
Post by: jasondavies
Comments:
zachbee: This doesn't appear to support any FPGAs other than their FPGA chiplet [1]. Also, like UncleOxidant said, the most complex parts of this toolchain are just existing open-source tools (Yosys and VPR).<p>This seems like a useful toolchain for ZeroASIC customers who are using their hardware, but not for FPGA enthusiasts more broadly.<p>[1]. <a href="https://www.zeroasic.com/chiplets/fpga" rel="nofollow">https://www.zeroasic.com/chiplets/fpga</a>
zachbee: 这并不是;似乎不支持除FPGA小芯片之外的任何FPGA[1]。此外,正如UncleOxiant所说,这个工具链中最复杂的部分只是现有的开源工具(Yosys和VPR)<p> 对于正在使用硬件的ZeroASIC客户来说,这似乎是一个有用的工具链,但对于更广泛的FPGA爱好者来说却不是<p> [1]<a href=“https:#x2F;/;www.zeroaasic.com/,chiplets/:fpga”rel=“nofollow”>https://;www.zeroaasic.com/;小芯片;fpga</a>
adapteva: Haha, cool to see this on HN.:-)<p>Yosys and vpr is clearly doing the heavy lifting here...the novelty here is the fact that an FPGA startup is giving public access to the fpga pre production and is opening the bit stream format. This hasn't really been done before.
adapteva: 哈哈,在HN上看到这很酷。:-)<p>Yosys和vpr显然在这里做繁重的工作。。。这里的新颖之处在于,一家FPGA初创公司向公众提供了对FPGA预生产的访问权限,并开放了比特流格式。这已经;以前真的没有做过。
marcodiego: I use to say this whenever I see anything related to FPGA: the FPGA world needs it's equivalent to Arduino. Before the Arduino, the world of microcontrollers was dominated by bad proprietary tools; the FPGA world suffers of the same illness today.<p>We really need to fix this before FPGA's falls in the hands and hearts of any willing hobbyist.
marcodiego: 每当我看到任何与FPGA相关的东西时,我都会这么说:FPGA世界需要它;s相当于Arduino。在Arduino之前,微控制器的世界被糟糕的专有工具所主宰;FPGA世界今天也遭受着同样的疾病<p> 我们真的需要在FPGA;s落入任何有意愿的业余爱好者的手中。
londons_explore: In computer programming, you can get say a ~10x speed improvement between writing bit twiddling code in python and hand writing SIMD assembly to do the same job.<p>Is there a similar gaping gap between writing verilog for something, vs hand-designing the lookup tables and laying out the FPGA routing?
londons_explore: 在计算机编程中,你可以说在用python编写比特旋转代码和手工编写SIMD程序集之间的速度提高了大约10倍<p> 在为某事编写verilog与手工设计查找表和布置FPGA路由之间,是否存在类似的巨大差距?
UncleOxidant: Isn't it Yosys and VPR doing the heavy lifting here?
UncleOxidant: 是不是;不是Yosys和VPR在这里做繁重的工作吗?