Go big or go home!
Oh, it appears this chap has already got the memo! :)
A 42,000-transistor CPU weighing half a ton and built by hand from full-sized components has been installed at the Centre for Computing History in Cambridge, England. James Newman’s Megaprocessor, a super-sized CPU big enough to walk through, was born as a result of a 2012 work discussion. "There was a conversation at work …
Only space for one icon and I wanted to do a thumbs-up and a pint for his most high lordship Mr Newman, so here's the pint to go with the thumbs-up.
Outstanding stuff, we are most definitely not worthy, though I see a lot of 'familiar faces' in the build faults villains gallery...
Actually, that was a very interesting 3rd year undergrad project: make tommy-my-first processor in an FPGA. Possibly my favourite module, despite finding it pretty hard. On reflection I don't think it could do much beyond addition and subtraction.
Impressed that they managed as little as 500w for this beast actually: wonder weather if all the LEDS came on at once it would add up to rather more.
"Unless you also implemented the FPGA with individual transistors"
Something which is actually designed to blow its fuses. Also, it would be reprogrammable, if some poor bastard could be persuaded to replace all the blown fuses before going for another try.
Just don't design it to use 30A car fuses if you want to keep the power consumption under control during programming.
No, I completely get it -- it's a work of stunning complexity, admirable dedication and a tremendous learning experience. But, aside from the considerable cost, it helps tremendously to have a willing recipient for the donation. In this particular case, there's also the opportunity for future generations to learn from his work.
My only point was that after only a few weeks, She Who Must Be Obeyed would be asking about funding, projected completion date, floor space and the Big One: "Why are you doing this?" I suspect that many of us, who might consider doing a project of this scale would be in a similar position.
Except for the transistors, you get much more bang for the buck (or quid) by doing it in an FPGA. You get the same exposure to architecture options, with fewer burned fingers...and it only takes up a deskop! But I do admire those who do it "large scale"...even if I couldn't get away with it: http://agcreplica.outel.org/
I wrote an 8-bit, semi-graphical processor simulator in Pascal under DOS about n++ years ago to show kids how low level programming really worked below the hood. It worked really well and they ended up using it for a few years but I probably learned more about processor hardware functionality than they did! Like the megaprocessor, it was initially a bit of fun that ballooned into something interesting. Later on someone wrote a much better Windows '6502 emulator' that was ... well actually a naff text emulator in a Windows box ... most disappointing.
I'm not sure that kids even get taught the basics of how a processor works any more.
but I probably learned more about processor hardware functionality than they did!
That's generally how it goes when teaching. You'd be shocked at what you learn trying to teach kids the basics.
I'm not sure that kids even get taught the basics of how a processor works any more.
Depends on what you mean by "the basics". Here they get taught that processors use millions of microscopic switches to do what they do in middle school, but it's really on an abstract level. They don't really get taught how all those 'ons' and 'offs' translate into what they see on the screen or about registers and whatnot until they start taking college level comp sci classes.
When I taught computer science I once substituted for a professor. I discovered that the class was composed of computer engineering students and that the normal professor never taught the bit operations (& | ^ << >>) so I taught them. The class suddenly came alive.
The computer science department used to have a hardware class using vector boards etc. but this was phased out to use a simulator. Now there are no hardware classes taught in the computer science department.
You learn a lot more by actually building hardware and programming it than playing with simulators or other high-level tools.
Does anyone recall the Minecraft world someone built that recreated a processor using redstone? I was gobsmacked by that - being able to virtually move around a virtual computer, and watch the individual signals working their way through. This is at least twice as impressive.
To think he managed this without a Kickstarter or anything! In all seriousness, I couldn't find a PayPal donation link or anything. Would gladly hand this man a fiver for his efforts.
but we took 4 didactic kits on the lab to get it going.
A couple more missing valves, and we'd have both input and output made of pistons as well.
Better yet, the thing had resilient memory states, as in, if we lost power, it would resume from the last position.
We then did a napkin math to find out how many kits would we need to emulate 1GB of RAM... and I don't think FESTO produced enough didactic kits to do that.
Learning about that was very useful after all, we could build some memory registers embedded in our projects later to store variables, if we didn't have the electric equivalent.
"We then did a napkin math to find out how many kits would we need to emulate 1GB of RAM... and I don't think FESTO produced enough didactic kits to do that.
Did you calculate the floor area required as well?"
How about the effect on local air pressure in changing between all 0s and all 1s?
"As the night continues, rapid fluctuations in air pressure will bring in a series of warm and cold fronts, as some geek tries to unzip a ISO CD image.
This post has been deleted by its author
I took a look at some of the module schematics, and even figuring in the fact that they require LED drivers, there's some hefty overkill in the use of silicon, especially as it's all single ended logic (open drain + pullup) rather than totem-pole. For example his RAM uses 11 transistors for each bit (88 transistors per byte).