首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Chisel和Lava和CLaSH有什么不同?

Chisel和Lava和CLaSH有什么不同?
EN

Stack Overflow用户
提问于 2014-12-15 02:19:26
回答 2查看 1.6K关注 0票数 8

我一直在研究Chisel的来源,还有各种熔岩(堪萨斯、Chalmer和Xilinx口味)和CLaSH。我正在试着了解什么是主要的卖点凿与其他人。我确定的主要方法是快速模拟。

我想知道,是否有更深入研究的人可以指出其他的优点,缺点和权衡。

(抱歉,如果这是一个过多的讨论性问题。我试着向用户发帖,但显然你需要被接受为会员才能这样做。)

EN

回答 2

Stack Overflow用户

发布于 2015-01-16 06:14:21

首先,声明我是一个重度Chisel用户,但对您提到的基于Haskell的DSEL只略知一二。

我认为Chisel针对多个后端(C++、Verilog等)的能力。是一个显著的优势。生成的C++使周期精确模拟的速度比Verilog/VHDL模拟器快许多倍,因为它避免了这些语言固有的事件驱动模型。

这不是一个固有的限制,但是Lava和CLaSH似乎主要针对FPGA实现,而Chisel已经用于FPGA和ASIC的工作。Chisel也可能得到更好的支持;代码、指令和示例都是available on GitHub,该语言仍在积极开发中。

Haskell和Scala (其父语言)之间也存在差异;如果您对其中一种语言更熟悉,可能会使入门变得更容易。(我将把“语言战争”留给专家。)

票数 8
EN

Stack Overflow用户

发布于 2018-09-11 09:15:13

在Clash教程页面上有一个部分描述了Clash和Lava风格之间的一些权衡(我把它作为参考)。基本上,Clash使用静态分析方法,而Lava风格使用DSEL (特定于域的嵌入式语言)方法。这些差异可能与Chisel和Clash之间的差异非常相似,因为Chisel也遵循DSEL方法。因此,使用Clash,您可以编写Haskell代码,然后使用Clash编译器将其编译成VHDL、Verilog、SystemVerilog。我对Chisel或DSEL不够熟悉,但我知道它不仅仅是HDL的编译步骤。

FWIW,我在项目中使用Chisel,我发现生态系统、文档和社区都很棒,但我不喜欢Scala的风格。通过对FP的进一步研究,我找到了Haskell和Clash。我喜欢硬件设计的纯函数式风格,Haskell的紧密耦合让我“既有我的蛋糕又吃它”;同时学习硬件和Haskell。与前面的答案一样,Clash vs Chisel更多的是语言决策,而Clash vs Lavas更多的是DSEL vs静态分析(编译)决策。有关后一个决定的进一步阅读,请参阅参考资料。

参考:http://hackage.haskell.org/package/clash-prelude-1.2.5/docs/Clash-Tutorial.html#g:20

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27472473

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档