Well, Jeff Fox has been documenting it for a while.
Can you think of any other people who have done the same thing? Chuck surely isn't the only person ever to have designed his own CPU, but I don't know of any others who have done both the hardware and the software.
I admire what he's done but I'm still not sure whether the work is actually important in some objective sense. It certainly appeals to the Robinson Crusoe in me, but I'm not sure if it's actually useful, just because the level of compatibility is so low.
It's amazingly useful! It teaches you more about computing than anything ever will.
There was a bit on here about a guy that did his own computer from the ground up using ttl level logic, but I'm not aware of anybody that did his own chips including the routing.
Is it important to others ? Yes, again I think it is:
- a series of amazingly performant chips came out of that (novix, shboom and now the a series)
- lots of people got to see that it was possible which is inspiring (it certainly is for me)
- the fact that the compatibility is so low is actually a boon, this means that you get to think in ways off the beaten path, which is a good thing. It gets people to think outside of the box for a bit. That's always a great way to widen your perspective permanently.
Even today, there isn't a cell phone that does not have a forth interpreter stashed away in its innards! (I can find you a reference for that if you want).
Well, to me "educational" and "useful" are kind of orthogonal. I've made lots of things that were highly educational to make, often because they forced me to think "off the beaten path", but that doesn't make the things themselves useful. In fact, most of them were kind of crap. So I'm mostly thinking about the "important to others" aspect.
The Novix NC4000 and ShBoom came out at a time when compatibility was a lot less important. I agree that they were important and useful to others! Similarly Forth: it didn't start out compatible with anything else except for some computers, but now it runs on any chip, under any OS, and can control all kinds of peripherals. Which is why every cellphone has some Forth in it. (I don't know specifics but they have enough different processors that I'm sure you must be right.)
I'm not so sure about the c18 line (what's the "a series"?) because it seems like they're competing more with FPGAs than microcontrollers, but they don't have the tool support that FPGAs have.
When the ShBoom came out more than 20 years ago, the Verilog and VHDL toolchains were very limited. Now you can download all kinds of crazy stuff off OpenCores, synthesize it, and put it on your FPGA.
Similarly the available C was very limited, and it might take some work to get it to compile for whatever kind of random no-name manufacturer minicomputer you had, or if you had a microcomputer, it might take you a lot of work to find out that it just wasn't going to fit. And of course the available open-source code was pretty limited. Today you can be pretty sure that there's code out there that solves a big chunk of your problem, you can compile it for your computer pretty easily (unless it's a microcontroller or a C18 or an FPGA) and it will fit.
So I think it's possible that the c18 series will turn out to be "amazingly performant" in practice for a wide range of applications, just as FPGAs have the potential to be "amazingly performant". But it's far from guaranteed. You can't just put a bunch of FPGAs (or 40c18s or GA-4s) on a board and be done. After that you have to build software for it.
And I'm pretty sure that Chuck is the only one who's going to use the 40c18 for ASIC simulation.
It might turn out that it's so much easier to build software for a 40c18, or that the GA-4 is so much cheaper than a Spartan-II, that the tooling and compatibility differences will turn out not to matter. But they are real problems. Saying that it's "actually a boon" that you can't run any existing software on the chip is kind of dumb.
Can you think of any other people who have done the same thing? Chuck surely isn't the only person ever to have designed his own CPU, but I don't know of any others who have done both the hardware and the software.
I admire what he's done but I'm still not sure whether the work is actually important in some objective sense. It certainly appeals to the Robinson Crusoe in me, but I'm not sure if it's actually useful, just because the level of compatibility is so low.