如何使用 F# 对 FPGA 进行编程

发布于 2024-12-19 19:08:46 字数 294 浏览 3 评论 0原文

我通常使用 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

一口甜 2024-12-26 19:08:46

我读过(但从未使用过) 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.

∝单色的世界 2024-12-26 19:08:46

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.

山川志 2024-12-26 19:08:46

这是使用 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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文