Blog
Notes on turning algorithms into trustworthy hardware.
Updating an FPGA Over the Same Link It Uses for Data
The second FPGA on this board still had one cable I could not get rid of: the one that puts new logic into it. This is how that cable went away, how the chip learned to boot from its own memory, an...
Wiring a Second FPGA in as Compute and Memory, over 10G
One board, two big FPGAs. Neither was large enough alone, so the second became an extension of the first: a place to run logic and a block of memory, all reachable over a high-speed link. This is h...
What to Teach When AI Can Do Everything
AI already outperforms most graduates on hard problems, and it makes memorized knowledge cheap. So the skills worth teaching are the ones a knowledge-free exam tests: observation, reasoning, and ab...
Bringing Up Linux on an RFSoC Board in a Day
A trial board arrived with no operating system on it. Instead of a week of careful bring-up, an AI drove the whole thing to a login prompt in a day, by proving each layer of the board before buildi...
Why We Automate the Path from Algorithm to Silicon
High-value radio and FPGA hardware spends most of its life idle, because crossing from an algorithm to a working system on it is still done by hand. This is the gap we are closing, and how checking...
The Decoder a Quantum Computer Can't Run Without
A quantum computer makes errors faster than you can read this sentence, and a classical machine has to clean them up in real time. This is the story of rebuilding that machine for IBM's gross code,...
A Wi-Fi Receiver on a Pocket Radio
A complete 802.11a receiver was larger than the chip it had to run on. The fix was to split one design across the radio's FPGA and a laptop, keep the cut bit-exact, and bring it up on real silicon ...
Folding a Viterbi Decoder: How an AI Optimizes FPGA Resources
A Viterbi decoder sits in nearly every Wi-Fi, LTE, and satellite link. The hard part is not decoding - it is fitting it onto a small, cheap chip. This decoder's hardware was generated, and then an ...
An AI-Generated Wi-Fi Receiver, and How to Trust It
An entire 802.11a receiver, generated from a MATLAB reference design with no hand-written hardware, that recovers a transmitted image bit-for-bit on a pocket-sized radio. The interesting part is no...
Twenty 5G LDPC Decoders from One Automated Flow
Tuning one design well can be a special case. Building a flow that generates, closes, and verifies twenty configurations - and proving every one - is a method. The leverage is in the tool, not the ...
Clocking an AI-Generated LDPC Decoder Past a Commercial IP
A 5G LDPC decoder, generated from a Python algorithm, optimized from 221 to 463 MHz - past a paid commercial IP on the same chip. The interesting part was not adding registers; it was the data depe...