如何使用 F# 对 FPGA 进行编程
我通常使用 F# 来编写数值算法。 F# 中的函数式编程结构有助于以非常自然的方式表达算法。我通常会得到一个简洁且易于理解的实现,并且如果有并行的机会,也许能够非常快地并行化它。
我想知道是否有一种方法可以将 F# 程序编译为 FPGA。这样,我在FPGA编程中仍然可以使用F#来避免样板代码,并利用FPGA中的高性能计算。这样可以吗?如果是的话,您能为我提供一些开始的提示吗?
I usually use F# for writing numerical algorithms. Functional programming constructs in F# helps to express algorithms in a very natural way. I often end up with a succinct and understandable implementation, and may be able to parallelize it quite fast if there is a chance of parallelism.
I wonder there is a way to compile F# programs down to FPGA. In this way, I can still use F# to avoid boilerplate codes in FPGA programming, and make use of high performance computing in FPGA. Is this possible to do so? If yes, could you provide some hints for me to start with?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我读过(但从未使用过) Avalda 的 F# 到 FPGA 转换,但是他们的网站当前返回一个完全空白的页面。我不知道这是否只是暂时的,或者是否意味着他们已经破产了。
I've read about (but never used) Avalda's F# to FPGA conversion, but their site is currently returning a completely blank page. I don't know if that's just temporary of if it means they've gone belly-up.
F# 应该是完成此任务的理想选择,因为它源自为元编程而诞生的 ML 语言家族。然而,我不知道这方面有任何工作(尽管我有自己从事这方面工作的想法)。
我会专注于用 F# 编写一个编译器,将 DSL 编译到 FPGA,而不是尝试编译一般的 F# 代码。
F# should be ideal for this task because it is derived from the ML family of languages that were bred for metaprogramming. However, I am not aware of any work in this area (although I have had the idea of working on it myself).
I would focus on writing a compiler in F# that compiled a DSL to an FPGA, rather than trying to compile general F# code.
这是使用 C 语言的 HLS 工具的列表。我在2006 年并不顺利,但我预计今天会好得多。
关于 F#,我怀疑它很快就会存在。
Here's a list for HLS tools using C. My experience with one of them in 2006 was not favourable but I expect them to be much better today.
Regarding F#, I doubt this will exist any time soon.