Hoare's undergraduate degree from Oxford was in Literae Humaniores, nicknamed Greats - ancient Rome, ancient Greece, Latin, Ancient Greek, and philosophy. In the US, this course of study is usually called "Classics".
According to Wikipedia, "It is an archetypal humanities course."
Hastings affected the wider politics of Europe, not just England. For centuries before Hastings, England had been involved with Scandinavia, especially Denmark and Norway. After Hastings it was totally entangled with France, pretty much forever.
To me, it's plausible one might be able to make a similarly small RISCY-V02 on a 70s Rubylith NMOS process with dynamic logic, using pass transistors and tristate busses, all laid out by hand. But I definitely can't do that, and even if I could, I'd have no way to validate that it actually works.
Best I could do was an A/B comparison on a modern process: a clean Verilog model of RISCY-V02, and a clean Verilog model of a 6502, both run through a modern synthesis process for TinyTapeout. Same slosh, inoptimality, and behavior. So, this is a static CMOS design, like the 65C02, on a modernish process node. That being said, the 65C02 had around 11K transistors, so we're not too far off.
This establishes horseshoes and hand grenades plausibility, but basically nothing else. But, it's also a pretty nifty CPU design if I do say so myself!
Thanks, I see. In your README you do briefly mention static vs dynamic, NMOS vs CMOS, and 6502 vs 65C02 but I didn't appreciate those could make a 3x difference in the transistor count.
I agree it's a nice CPU design, and the whole project is quite impressive. Will Tiny Tapeout make you an actual chip that you can run?
I'm curious about how you used Claude. Is the CPU design itself completely handmade, or did Claude fill in some details? Did you use Claude for both the Verilog code and the Python emulator and test code? Did you provide Claude
with some of your own hand-written code to demonstrate the style you wanted and get it started?
TT will either make me a chip I can run, a chip I can run with some workarounds, or garbage. Only time will tell!
As for Claude, honestly, as a partner. We bounced ideas off each other, while I provided overall direction for the project. It was finishing up a design I had started and aborted last year, but we did build this from scratch. I had some good ideas, Claude had some good ideas, but Claude did almost all of the actual grunt work. Looking back, Claude's tactical decisionmaking was often better than mine, but my strategic decisionmaking was far superior. I would also occasionally have to interject when it was "freaking out" and offer a sounding board to help it solve whatever problem it was working through.
I'd be ok with it if it's possible to use all the insights and software from after that, we'd just be constrained by the hardware - the Amiga 4000, Apple Mac Quadra 840av 128 MB or a Pentium 66 MHz or the 486 DX2-66 with 64 MB ram.
Can't we achieve something like this now with microcontrollers like ESP32 or RP2040?
This project runs a ca. 1990 scientific workstation (not just a PC) on an RP2040:
How did you use Claude? How much guidance did you give it? Did you just write CLAUDE.md and stand back, Claude did all the rest? Or did you write some assembly language samples - like object.inc etc. - to get it pointed in the direction you wanted it to go? Did you review and revise the code that Claude wrote?
Have you benchmarked it against CPython? apython is still a bytecode interpreter, like CPython. And, CPython is compiled to machine code, as
apython is assembled to machine code. So we wouldn't expect a huge speedup.
A skilled assembly language programmer might be able to write faster code
than the C compiler can make from CPython. Is that you? I see the code was written with Claude - does Claude write faster assembly code than the C compiler? Or did you tune the assembly code by hand, or somehow train Claude to write fast code for this application?
Hoare's undergraduate degree from Oxford was in Literae Humaniores, nicknamed Greats - ancient Rome, ancient Greece, Latin, Ancient Greek, and philosophy. In the US, this course of study is usually called "Classics". According to Wikipedia, "It is an archetypal humanities course."
reply