Hacker News new | ask | show | jobs
by ancharm 1919 days ago
Higher level hardware design languages that better interop with software are desperately needed, but I don't know if C/C++ is the right UI/abstraction.
2 comments

Look at Chisel. I agree that C/C++ is the wrong abstraction but that's because using a HDL is more like meta programming in a declarative markup language that needs to be embedded in a higher level language for automation and verification than to compile imperative operations into silicon.
I don't think so either. One thing that's interesting here is that this ties into LLVM - perhaps other LLVM languages like Julia or Rust could interop?
I've kind of always felt that synthesizable Verilog/SystemVerilog was good, but the verification side was just too complex and had too much bloat. Testing hardware with Python (like Cocotb) feels more on the right track as a high level UI.

But easily pluggable APIs for foreign SW languages are key as well. Hardware software co-design is only becoming more important.