Go Hardware Go!
summary
BondMachine compiles Go into both custom assembly and HDL so each program can generate a tailored FPGA device; the Bondgo compiler emits cores, interconnects and peripherals automatically and maps Go channels and shared-variable semantics to hardware (channels→hardware, HDL per-Go). Builds include simulators, a multicore generator that creates heterogeneous cores per goroutine, and FPGA prototypes shown at Maker Faire and run from a laptop. Toolchain produces working simulations and FPGA bitstreams but remains a prototype with transistor / implementation limits and ongoing performance tuning.
AI-written summary · about
chapters (8)
- 0:00Introduction to project
- 3:56Hardware description languages
- 7:29Many-core architecture design
- 12:36Compiler innovation with Bongo
- 18:20Hardware Go runtime features
- 21:58Clustering with Go hardware
- 26:51Project goals and limitations
- 30:35Open hardware and compiler challenges
related talks
13mGuix for FPGAs
28mGo Make Something Real – The Potential for Go on the Factory Floor
49mFPGA: creating hardware by programming
40mGo Circuit: Distributing the Go Language and Runtime
12mLightning Talk: From Hardware Simulation to Real Devices with WebAssembly Using TinyGo
26mWrite Once, Compile Lots, Run Anywhere
17mBetter x86 Assembly Generation with Go
43mDeep dive into Go's build system
