4 ms·
> The bad part is that most of C/C++-compatible HLS tools are proprietary, and open source ones are either Scala-based (Chisel, SpinalHDL) or seem to be academi
by qppo 6y ago
> The bad part is that most of C/C++-compatible HLS tools are proprietary, and open source ones are either Scala-based (Chisel, SpinalHDL) or seem to be academic toy projects.
Why is Scala a problem?
- coreyoconnor 6y ago(scala dev here) Scala has a history of embedded domain specific languages that are difficult to understand. (Rather like Perl now that I think about it.) This is not universal in scala EDSLs but definitely exists. So it's a fair concern in general. IMO Chisel is a nice EDSL so, in this context, the concern is unwarranted.
- TD-Linux 6y agoI think the article author is mixing up HLS tools and HDLs. HLS tools convert some subset of C to a hardware implementation, and thought that Chisel/SpinalHDL were converting Scala to hardware. But they are really just HDLs implemented as a DSL within Scala, much like Migen uses Python but does not execute Python code on the FPGA.
- mupuf 6y agoYeah, I definitely jumbled both in the same basket. I should rename that into "higher-level languages" and introduce both HLS and HDL there. Thanks for the feedback, I'll make some changes to clarify my thoughts!
- microcolonel 6y agoIn addition to Chisel and SpinalHDL, BlueSpec is now open source! [0] Among the available options, I remember people being very happy with BlueSpec even before, and now you don't really have many excuses. [0]: https://github.com/B-Lang-org/bsc https://github.com/B-Lang-org/bsc
- jakear 6y agoNice! I used it in college and took a liking to it, it was pretty easy to write a full multi core riscV processor with mmu/etc even as my first exposure to hardware design. The compile times were killer though. Has much progress been made there?