寻找开源FPGA硬件和开发工具


38

研究过的FPGA板,但找不到开源板和与供应商无关的FPGA开发工具:

  • ORSoC制造商在其网站上拥有开放源代码,但是除了网站管理OpenCores.org外,我真的找不到任何有力的证据。
  • 二人:Xilinx 在“面向中国大陆大学的开源硬件创新大赛”中宣传其产品。他们的产品仍然是专有的,对* ix-的支持很差。同样,Altera对* ix的支持很差,只需通过Quartus检查其对OS的支持,或者如何在综合步骤中使用逻辑分析仪?
  • 小型玩家小组-让您指出最好的一面。

是否有一些制造商具备开放资源,例如硬件和开发工具的实力?


这里的相关问题。
hhh 2012年

3
现在有了莱迪思半导体iCE40 FPGA的开源工具链,请参见:github.com/cseed/arachne-pnr
Cotton Seed

Answers:


8

可悲的是,没有太多用于可编程硬件的免费软件。有一些综合工具,例如Lava(期望在很大程度上手动放置),Confluence,HDCaml和Atom以及Icarus Verilog,但是几乎没有钳工,映射器或布局布线工具(我绝对希望在这里证明是错误的)这个)。Opencircuitdesign.com收集了一些工具,但可能需要一些文档和位流生成器。另一方面,模拟已被很好地涵盖了。

在非免费方面,Xilinx的非免费但免费工具最近有所改进,增加了libusb支持,放弃了Wind / U(一个可怕的非免费winelib模拟程序),而改用Qt(但它们不会成为现实)。更新已淘汰的筹码)。大多数其他工具似乎使用了一个叫做FLEXlm的,到这种程度,这是很难让他们即使在运行破坏供应商的帮助。我也能够在Linux下运行Lattice Diamond软件,但是缺少仿真功能。对于Atmel AT40KAL,可以在Wine中运行布局和路线工具,但是该库需要非标准组件(它使用LPM,但拒绝2输入门),因此需要一种映射器。


5

不幸的是,据我所知,这些综合工具都是封闭源。它们中包含的代码是其业务优势的重要组成部分,因此,我认为您不太可能将它们视为开源的。

Xilinx确实具有适用于Windows和Linux的免费工具链,如果您不喜欢他们的IDE,则可以在自己的编辑器中自由使用他们的命令行工具。我之前已经做过,它非常适合小型项目(例如CPLD),在这些项目中您不希望笨拙地使用大型复杂软件包。

我相信Altera仅提供Windows的免费工具,他们的Linux工具仅在我上次检查时付费(这可能已经改变,距离我上次浏览已有一年左右的时间)。


我的理解是,综合-在技术的构建组件中实现设计的过程-是可以替代自己的最后一层。它是下一层-放置和布线,需要进行的时序分析以及随后的位流生成,在此需要真正保持紧密的信息。
克里斯·斯特拉顿

5

蝶板看起来像一个优秀的开源初学者路线到FPGA中。他们已经移植了AVR8内核,因此您可以在事物上运行Arduino草图/ AVR目标代码,因此学习过程很轻松。

更新:现在重命名为Papilio Boards

我认为Xilinx WebPack是必需的,并且可用于Windows和Linux。


Webpack也应该对您免费。
Kortuk 2010年

抱歉,但无法真正看到它的“开源”。宁愿以便宜一半以上的价格来投币,例如:item.taobao.com/auction/…
hhh 2010年

3
尽管它依靠专有的Xilinx工具链,但是Butterfly One包括1)开源电路板设计,2)开源“编程器”(bitstream-> flash实用程序)和3)许多开源IP作为示例。推荐的!

也许您应该更新链接以指向Butterfly One?另外,您知道这些工具的支持程度如何(例如有多少人使用它们以及它们是否适合初学者)?
Earlz 2010年

原理图和全部都是Butterfly One的开源代码,我完全在我的Arch Linux计算机上运行了它。您必须手动编译一些东西,但我不会说它比大多数FPGA入门都难。(而且可能更容易,因为它被编程为AVR软核
Earlz 2010年

3

FPGA开发工具都与FPGA器件本身紧密相连,并且完全取决于FPGA架构的专有细节,尤其是在布局,布线和比特流生成级别。因此,在很大程度上不存在供应商中立性。较高级别的工具在某种程度上可能与供应商无关(例如,Synplify,ESL工具,验证工具等),但它们肯定不是开源的。

另一方面,有许多开放源代码的学术工具。只要您不想为真正的物理设备开发,就可以使用VPR 5.0工具链。


我不购买“与硬件紧密耦合”的解释。嵌入式CPU的不同指令集相同。
maxy 2014年

@maxy-不,实际上不是。CPU提取了大量的硬件细节,这些细节已暴露给FPGA工具链,并且必须由其考虑。AC编译器实际上不需要知道或不在乎乘法器的输出是否会按时到达下一个寄存器,甚至电路板设计人员也只需查看允许的最大时钟速度即可知道这一点。对于FPGA工具,您必须知道乘法器需要多长时间,寄存器的建立时间是多少,然后根据将它们放置在芯片上的位置以及如何在两者之间路由信号来计算它们之间的延迟。
克里斯·斯特拉顿

3

Xilinx既不提供开源也不提供支持,但是它提供了一个免费的跨平台(Java)API,称为Jbits,它允许直接对FPGA进行编程(以及即时重新编程)。我相信仅支持CPLD和Virtex-II,但这是允许开发人员生产自己的定制综合工具的最接近的方法。计划在不久的将来对此进行试验。


Jbits真的很棒。
法尔肯教授
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.