Sign in

TheZoq2

@thezoq2.bsky.social
252 followers 74 following 136 posts

Developing spade-lang.org and the Surfer waveform viewer. Post doc at Hochschule München Usually at mastodon.social/@thezoq2

PostsRepliesMedia
TheZoq2 @thezoq2.bsky.social · 20/09/2026
One of the coolest things to happen in Spade yet 👀 @breakingtaps.com wrote and taped out a Transport Triggered Architecture processor from scratch in a month with 0 prior experience! www.youtube.com/watch?v=q6yt...
youtube.com
I designed a microprocessor
YouTube video by Breaking Taps
0205
Reposted by TheZoq2
Emil Fresk / korken89 @emilfresk.com · 19/09/2026
A fun experiment, tried spade-lang.org and made an Ethernet stack running GbE with UDP and ARP support. Nice (Rust) feeling for an HDL, might migrate to it from Amaranth :D Tested on a Colorlight 5A 75B, ECP5 25F. The stack is about 5k LUTs/4k FF, the rest debugging, UART and MDIO scanning.
Colorlight board with Ethernet cable and CH347F JTAG[INFO] Place and route maximum frequencies:
$glbnet$clk125: 131.4 MHz (target: 125 MHz)
$glbnet$clk25$TRELLIS_IO_IN: 57.4 MHz (target: 25 MHz)
$glbnet$clk_sys: 90.4 MHz (target: 62.5 MHz)
$glbnet$eth0_rx_clk$TRELLIS_IO_IN: 146.5 MHz (target: 125 MHz)
$glbnet$eth1_rx_clk$TRELLIS_IO_IN: 141.4 MHz (target: 125 MHz)
[INFO] Place and route components:
ALU54B: 0/14                (0.0%)
CLKDIVF: 0/4                (0.0%)
DCCA: 5/56                  (8.9%)
DCSC: 0/2                   (0.0%)
DCUA: 0/1                   (0.0%)
DDRDLL: 0/4                 (0.0%)
DLLDELD: 0/8                (0.0%)
DP16KD: 5/56                (8.9%)
DQSBUFM: 0/8                (0.0%)
DTR: 0/1                    (0.0%)
ECLKBRIDGECS: 0/2           (0.0%)
ECLKSYNCB: 0/10             (0.0%)
EHXPLLL: 1/2               (50.0%)
EXTREFB: 0/1                (0.0%)
GSR: 0/1                    (0.0%)
IOLOGIC: 22/128            (17.2%)
JTAGG: 0/1                  (0.0%)
MULT18X18D: 0/28            (0.0%)
OSCG: 0/1                   (0.0%)
PCSCLKDIV: 0/2              (0.0%)
SEDGA: 0/1                  (0.0%)
SIOLOGIC: 0/69              (0.0%)
TRELLIS_COMB: 14481/24288  (59.6%)
TRELLIS_ECLKBUF: 0/8        (0.0%)
TRELLIS_FF: 10054/24288    (41.4%)
TRELLIS_IO: 34/197         (17.3%)
TRELLIS_RAMW: 0/3036        (0.0%)
USRMCLK: 1/1              (100.0%)
2154
TheZoq2 @thezoq2.bsky.social · 18/09/2026
We have finally moved Spade to Codeberg 🎉 If you have existing Spade projects, you have to take a few small steps to update blog.spade-lang.org/moving-to-co...
121
TheZoq2 @thezoq2.bsky.social · 20/08/2026
My summer vacation is over, so it is time to release Spade v0.20.0 🎉 As a tooling guy, it feels great to finally have autocomplete working in the LSP We also finally added support for static methods, and the docs (docs.spade-lang.org) have seen a ton of improvements blog.spade-lang.org/v0-20-0/
042
Reposted by TheZoq2
Chris Person @papapishu.bsky.social · 24/07/2026
Really suggest reading the whole thing, they do a great job at discussing the externalities with nuance blog.codeberg.org/protecting-o...
blog.codeberg.org
Protecting our FLOSS commons from LLMs — Codeberg News
In Brief: Two motions regarding
4356134
Reposted by TheZoq2
Evan Czaplicki @acadia.engineering · 06/07/2026
New Elm release today! 🎉 0.19.2 🥳 Incremental builds of 850k lines of Elm in <350ms. Gearing up for a batch of smaller releases as we head towards Elm 1.0. elm-lang.org/news/faster-...
917156
TheZoq2 @thezoq2.bsky.social · 28/05/2026
Today we release Spade v0.19.0, a release which contains a lot of small improvements to the language along with the launch of reef.spade-lang.org, a package index for Spade libraries. You can learn more at blog.spade-lang.org/v0-19-0/
A screenshot of a webpage with a header that says "Reef - The Spade Package Index.

Underneath there is a description of how to add libraries to a project, followed by rounded boxes with libraries including their name, description, and links to documentation
001
Reposted by TheZoq2
YosysHQ @yosyshq.com · 27/05/2026
$1200 too much for a Vivado license? How about: $0 - Yosys $0 - nextpnr $0 - OpenROAD $30 -Subnautica 2 $30 - Blahaj $180 - Glasgow interface explorer from @crowdsupply.bsky.social $950 -160kum^2 of Sky130 silicon + ASIC from @tinytapeout.com #opensource #FPGA #ASIC
1207
Reposted by TheZoq2
Wenting @wenting.bsky.social · 27/05/2026
Sorry for not posting for so long... I have been extremely busy working on my new project: The Enchanter (also called Modos Flow): a 300-ppi Eink portable monitor with 60Hz refresh rate and touch screen. It's fully open-source: gitlab.com/zephray/ench....
19564137
Reposted by TheZoq2
Adrian Sampson @adrian.discuss.systems.ap.brid.gy · 26/05/2026
This blog post is an extended metaphor that serves as an excuse to complain about Verilog. www.cs.cornell.edu/~asampson/blog/b…
cs.cornell.edu
Back to the Building Blocks’ Building Blocks
Verilog is the foundation of all hardware design, and it is fatally flawed. We should all be worried about a glut of hardware bugs caused by Verilog’s unpredictable semantics and simplistic type system.
137
TheZoq2 @thezoq2.bsky.social · 21/05/2026
With AMD dropping #vivado linux support on the free tier, I've tried to point a few people at nextpnr-xilinx. Butit is not obvious exactly what repo to use and how to use it, so I wrote a small quick start guide that worked for me and which I can point people to codeberg.org/TheZoq2/next...
codeberg.org
130
TheZoq2 @thezoq2.bsky.social · 27/04/2026
We just released Surfer 0.7.0 🎉 One of the cool new features we added is framebuffer rendering, which you can see here rendering our (now official) logo! In addition to that, we have a bunch of new improvements that you can read more about here gitlab.com/surfer-proje...
032
TheZoq2 @thezoq2.bsky.social · 24/04/2026
This is great to see. I always wanted the translation features in Surfer to be used by more HDLs. For a while that was blocked a lack of support for plugins, but that was fixed a while back.
141
TheZoq2 @thezoq2.bsky.social · 17/04/2026
fransskarman.com/im_not_using... All of my colleagues are using AI while I'm not. It feels like I'm missing out so I decided to sit down and write down my thoughts on why I'm so resistant to it. In the end, I'm very happy with what I wrote so I put it on my blog
fransskarman.com
041
TheZoq2 @thezoq2.bsky.social · 16/04/2026
Spade 0.18.0 is now released 🎉 It comes with significant improvements to the stdlib, and with spadedoc which can generate HTML documentation for Spade projects. Run `swim doc` or visit docs.spade-lang.org/std/ to see the new documentation in action! Full release blog blog.spade-lang.org/v0-18-0/
052
Reposted by TheZoq2
SIGBOVIK @harryqbovik.bsky.social · 09/04/2026
SIGBOVIK IS TOMORROW!!!!!! GET EXCITED!!!!!! Sincerely, Your Ever-Dedicated And Sleep Deprived Organizers
0102
TheZoq2 @thezoq2.bsky.social · 27/03/2026
Swim (the spade build tool) now supports GateMate FPGAs. Super cool to have a European made #fpga with official open source tools on my desk :)
092
Reposted by TheZoq2
Andrew Lilley Brinker @alilleybrinker.com · 20/03/2026
Wow, what an autopsy from @kennethreitz.bsky.social about his experiences with mental health and life as a very public open source software maintainer.
kennethreitz.org
Open Source Gave Me Everything Until I Had Nothing Left to Give
I thought I was having a spiritual awakening. I was having a psychiatric emergency. I was at a tech conference in Sweden when it started. I hadn't slept in...
7437
Reposted by TheZoq2
Typst @typst.app · 11/03/2026
Still have to publish with LaTeX? Just use Typst with ttt! Listen in on how @thezoq2.bsky.social plugged into the Typst compiler to create only slightly dubious LaTeX code (it got accepted by the journals!). www.youtube.com/watch?v=8nH8...
youtube.com
Write in Typst, submit in LaTeX with ttt | Typst Meetup
YouTube video by Typst
1314
Reposted by TheZoq2
xd009642 @xd009642.bsky.social · 11/03/2026
Right now Github's only hope of 3 9s of uptime is if they hit 89.99%
2281
TheZoq2 @thezoq2.bsky.social · 05/03/2026
It is Spade release day once again, and 0.17.0 is packed with new features 🎉 It was pretty hard to pick which features to show in this "teaser image", so you should head to the blog to see what other exciting stuff got added 😉 blog.spade-lang.org/v0-17-0/
A release image for Spade 0.17. Apart from a celebrating spadefish, it contains a code example that showcases operator overloading, wrapping operators, and type aliases.
152
Reposted by TheZoq2
SIGBOVIK @harryqbovik.bsky.social · 27/02/2026
SIGBOVIK has a Bluesky now! Follow to learn more cutting-edge research from the world’s most comedic and occasionally scientific academic conference
06525
Reposted by TheZoq2
TinyTapeout @tinytapeout.com · 02/03/2026
What if you could design your own microchip - and actually have it manufactured? Free if you live in switzerland! 🇨🇭 Get started with this 1 hour online workshop. Go to tinytapeout.com/swisschips2026 to sign up!
164
TheZoq2 @thezoq2.bsky.social · 13/02/2026
Hey look, I got featured as a winner in the JaneStreet Advent of FPGA challenge :) blog.janestreet.com/advent-of-fp...
blog.janestreet.com
Results from the Advent of FPGA Challenge
At the end of last year, we decided to try something new: achallenge that would runalongside Advent of Code, where we asked the community toshow us how they ...
091
TheZoq2 @thezoq2.bsky.social · 03/02/2026
Our paper on Spade - A modern HDL is finally available! Not only is it a relatively complete description of the language, but I'm also very pleased with how we managed to articulate the need for a new HDL at the "RTL with abstractions on top" level dl.acm.org/doi/10.1145/...
191
Reposted by TheZoq2
Rachit Nigam @notypes.bsky.social · 27/01/2026
Hardware design should be SAFER! Memory-safe software languages changed the world and allowed to us to build massively larger systems. At their heart, memory-safe languages eliminate a category of bugs that pointer-manipulating programs suffer from.
1132
TheZoq2 @thezoq2.bsky.social · 23/01/2026
Apparently this is how I spell monomorphization in parts of the Spade compiler and I haven't noticed before 🤔 I get the feeling I maybe slightly dyslexic
030
Reposted by TheZoq2
depths of wikipedia @depthsofwikipedia.bsky.social · 20/01/2026
2354251344
TheZoq2 @thezoq2.bsky.social · 22/01/2026
Today we are releasing Spade 0.16.0! 🎉 While it doesn't come with any major new features, it has a ton of improvements all over the language, and a hefty compiler performance improvement! You can read about all the changes in our blog: blog.spade-lang.org/v0-16-0/
A youtube clickbait thumbnail-style picture with text talking about some new features in Spade 0.16.
1122
TheZoq2 @thezoq2.bsky.social · 14/01/2026
@servo.org's AI policy was so well written that I had to adapt it to the Spade project. gitlab.com/spade-lang/s... TL;DR: No LLM contributions please, they - Take maintainer time for less reward than human contributions - Are questionable from a copyright perspective - Have ethical concerns - ...
gitlab.com
Add an LLM contributions section to the readme (!556) · Merge requests · spade-lang / spade · GitLab
Closes #385
110
Reposted by TheZoq2
Clash Language @clash-lang.bsky.social · 14/01/2026
What happens when Clash meets Rust? Interesting things that bring us to the edge of what the languages can handle! See how we approached representing Clash’s numeric types in Rust in this new blog post. clash-lang.org/blog/0008-cl... #rustlang #haskell #fpga
clash-lang.org
Putting a Clash Coat of Paint on Rust
Reproducing Clash's numeric types in Rust
001
TheZoq2 @thezoq2.bsky.social · 04/01/2026
@jamesmunns.com Thanks for writing postcard! I switched over to it from bincode since that's now deprecated I've been struggling to figure out why my serialized structs are so big, but thanks to docs.rs/postcard/lat... I was able to quickly narrow the problem down to a few fields :)
docs.rs
serialized_size in postcard::experimental - Rust
Compute the size of the postcard serialization of `T`.
340
TheZoq2 @thezoq2.bsky.social · 19/12/2025
Yesterday we merged analog drawing in Surfer 🎉 The project also turns 3 years old on Monday so it is a fitting time to release v0.5.0 There are of course a bunch of other improvements that you can read more about in the change log Massive thanks to Roman Popov for the analog drawing feature!
032
TheZoq2 @thezoq2.bsky.social · 16/12/2025
I built a custom processor for #adventofcode day 8 and it only took 3 minutes to solve the problem blog.spade-lang.org/processor-fo...
blog.spade-lang.org
I Built a Processor for Advent of Code Day 8 | The Spade Blog
080
TheZoq2 @thezoq2.bsky.social · 09/12/2025
Are you working at the intersection of languages and tools for accelerator design? Then you should submit a paper to our workshop, LATTE ☕ As usual, it is co-located with ASPLOS which is in Pittsburgh this year. CFP: capra.cs.cornell.edu/latte26/ Deadline: Jan 31 Workshop: March 22/23
111
TheZoq2 @thezoq2.bsky.social · 05/12/2025
The spade-lang.org website has looked largely the same the past 3 years, while the language itself has evolved massively. It was clearly high time for a re-design
050
TheZoq2 @thezoq2.bsky.social · 04/12/2025
I'm extremely excited for this. As far as I know, this is the biggest project anyone else has written in Spade, and certainly the biggest that has been taped out :)
070
Reposted by TheZoq2
Matt Venn @mattvenn.net · 24/11/2025
What open source ASIC tools am I excited by in 2025? OpenEMS, 3D viewers, Surfer, OpenROAD, and lots more! Check this article for all the links: zerotoasiccourse.com/post/excited... #opensource #ASIC #tools
4174
TheZoq2 @thezoq2.bsky.social · 20/11/2025
Today we release Spade v0.15 🎉 This release includes - Improvements to lambda units - Pipeline methods - Much improved dependency handling - Several additions to the standard library - Better Verilog interop A lot more Release blog blog.spade-lang.org/v0-15-0/ Change log gitlab.com/spade-lang/s...
093
TheZoq2 @thezoq2.bsky.social · 10/11/2025
A few weekends ago I wrote a logic analyzer in Spade 🐠, and it took less than 4 hours I figured I'd write a blog post to show how that was possible and how the code works: blog.spade-lang.org/quickscope/
A creenshot with a header, some code, and text at the bottom

The header is green text saying "Quickscope" with the "o" replaced by a COD Modern Warfare 2 intervention player model.

The source code is syntax highlighted Spade code that describes an integrated logic analyzer

The text at the bottom has the same style as the header and says "A logic analyzer in 4 hours"
001
TheZoq2 @thezoq2.bsky.social · 06/11/2025
I finally got around to doing another Surfer release, so now we're on v0.4.0 🎉 My personal highlights are the new web assembly based translator system, and the improvements to our waveform control protocol, and you can read the full change log at gitlab.com/surfer-proje...
064
Reposted by TheZoq2
Johan Edstedt @parskatt.bsky.social · 06/11/2025
0202
Reposted by TheZoq2
Catherine @whitequark.org · 26/10/2025
please enjoy: my Wasm-hosted, Wasm-targeting build of Clang/Clang++/LLD: a self-contained, 25 MiB (gzipped) pure function www.npmjs.com/package/@yow...
415630
Reposted by TheZoq2
Griffin @griffinberlste.in · 09/10/2025
I'm bad at self-promo but I am currently on the job market looking for industry gigs. If your team needs a compiler engineer, language developer, rust programmer, or language tools person, drop me a line! All my details are on my personal site.
045
TheZoq2 @thezoq2.bsky.social · 01/10/2025
I sometimes stream Spade dev over at twitch.tv/thezoq2. Today i'm going to work on clock domain inference, which I think I finally have a good plan for again
twitch.tv
TheZoq2 - Twitch
TheZoq2 streams live on Twitch! Check out their videos, sign up to chat, and join their community.
010
TheZoq2 @thezoq2.bsky.social · 20/09/2025
I got inspired at orconf, so now play.spade-lang.org supports a full in-browser flow for submitting to tinytapeout.com/ Still experimental, so if you try it and run into any issues, let me know :)
074
Reposted by TheZoq2
YosysHQ @yosyshq.com · 18/09/2025
We are hiring! Both technical and admin, please take a look at our jobs page! www.yosyshq.com/jobs #jobs #hire
yosyshq.com
Jobs
Employee Profile: Synthesis or Formal Verification Developer at YosysHQ You might know YosysHQ from our many Open Source EDA Projects. We are the maintainers of Yosys and the accompanying Open Source ...
0105
TheZoq2 @thezoq2.bsky.social · 31/08/2025
This Friday I successfully defended my PhD 🎉 If you want to watch a recording of the defense there is a recording here vimeo.com/1114208379/89dcd4f302
vimeo.com
Improved Tooling for Digital Hardware Development - Frans Skarman
This is "Improved Tooling for Digital Hardware Development - Frans Skarman" by Linköping University on Vimeo, the home for high quality videos and…
0193
Reposted by TheZoq2
James Munns @jamesmunns.com · 22/08/2025
This is one of the better succinct summaries of Rust's value prop, and I really like the phrasing of "Rust exposes impedence mismatches": it feels annoying to some people, but often you WANT to be able to "see" these awkward steps, because it matters. news.ycombinator.com/item?id=4497...
Screenshot of hacker news comment:

To your above point about paths, it’s things like this that keep me coming back to Rust. This was just one example, but other languages are absolutely littered with pitfalls and gotchas that—individually—aren’t all that likely to happen.

But all of them? Over a given program’s lifetime? In aggregate these end up being responsible for an absolutely wild number of random bugs that crop up in your exception logs that need to get tracked down. And it never ends. There are an infinite number of edge cases you’ve never thought about that aren’t fully handled and that some of which are constantly being tripped.

This just… doesn’t happen in Rust. The type system catches (and/or completely rules out) a ridiculous number of these situations. I have repeatedly written finished software in Rust, where once it was released there was only an occasional need to add features but the typical bug-squashing treadmill just doesn’t exist.

That’s not to say there are never bugs. You can express faulty logic in any language. But the number of stupid impedance matches that are categorically ruled out makes the experience of operating and maintaining Rust program once written a widely different experience than I’ve had with any other language.
48815
Reposted by TheZoq2
TinyTapeout @tinytapeout.com · 25/07/2025
Want to help build a crowdsourced microcontroller? You're invited to design peripherals (UARTs, timers, synths, etc.) for a @riscv.org.web.brid.gy chip that will be fabbed for real! Take part for free! tinytapeout.com/competitions...
25433