6 ms·
Homemade CPU – from scratch
- sunkencity 17y agoMagic-1 "Made of ~200 low-scale chips, clock rate is up to 4Mhz. Have working Minux port, homebrewcpu.com site is served by this computer." Man that is the very definition of coolness. Awesome. I wish I could build my own CPU, port *nix to it and serve a site about building it from it.
- BarsMonster 17y agoIf you do so, you would eventually be invited to huge corp :-)
- rpledge 17y agoIs that advice or a warning? :)
- city41 17y agoFrom homebrewcpu.com: "Except when I'm working on it, Magic-1 is connected to the net. It serves web pages at http://www.magic-1.org http://www.magic-1.org magic-1.org is a noticeably slow website. (Not complaining or being a jerk, just observing. It's all very cool)
- tectonic 17y agoDirect link to homebrewcpu: http://homebrewcpu.com/ http://homebrewcpu.com/
- kqr2 17y agoLink to previous discussion on homebrewcpu: http://news.ycombinator.com/item?id=743583 http://news.ycombinator.com/item?id=743583
- deleted 17y ago[deleted]
- al_james 17y agoThese guys are like vintage car nuts. Its like they are reliving the glory days of simple and understandable CPUs. Those days have gone! Building your own CPU is cool, but its a bit of a waste of talent; it does nothing to advance technology is you see what I mean. Give me a Tesla Roadster.
- RiderOfGiraffes 17y agoIt may not advance today's hardware technology, but understanding these sorts of things means you have a deep understanding of many, many principles. It's common when writing threaded software for multi-core systems to have an ""edge-race," where correct behavior can depend on exact ordering of earlier processing. Most of the people I know who have never had a software edge-race are people with significant hardware knowledge. They know what it's like to have many things going on simultaneously, and have the experience to reason about it more easily than those with a pure software background With aggressively multi-core systems becoming more common (we are routinely using systems with 32 cores, and then we use 30 or more of them) material like this is becoming more relevant.
- henrikschroder 17y agoAs part of the computer science/engineering program I went to at university, we had courses spanning the entire stack. Intro courses were in Scheme and C, and later courses went on to higher-level OO and relational databases and other paradigms. But we also had a short course in analogue electronics, followed by one in digital electronics, both of which were extremely hands-on, requiring us to construct simple circuits in the analogue course, but eventually progressing up to making our own simple CPU in the digital one, including making the microcode for it, and programming it in our own machine code. That was a real eye-opening moment for me when I realized I had actually been all over the stack and had some sort of understanding of how a high-level program gets compiled and executed and what actually happens at the lowest level, and that that was useful for understanding the high level better.
- elblanco 17y ago
- Luc 17y agoI have probably linked to this before on HN, but hey, love is blind: http://www.kilian-leonhardt.de/relaiscomputer/kurz6.htm http://www.kilian-leonhardt.de/relaiscomputer/kurz6.htm It's a 4-bit computer made out of 171 relays. It's got different 8 commands, an input register and 2 CPU registers, one of which is the accumulator. There's memory for 16 instructions (dip switches!). As output it uses LEDs on the registers, so you can for example program it to multiply 2 4-bit numbers, and read out the accumulator at the end. It clicks away at 10 instructions per second. The guy who built it also made a 1500 relais computer which is much more capable. You truly don't need much to build a computer - just a basic building block and enough ingenuity.
- arvinjoar 17y agoI'd like to build an Apple II from scratch, I think I would learn a lot from it. Do you guys know if it is possible? Are there any "blueprints" or guides to do it? Are the parts still around?
- ethanmullins 17y agoYou can build an Apple I from a kit: http://www.brielcomputers.com/replica1.html http://www.brielcomputers.com/replica1.html
- joshu 17y agoNot at all the same thing.
- HeyLaughingBoy 17y agoI just looked up a 6502 CPU at Jameco.com for $5.95 and I know they are available on the surplus market even cheaper. Buying from surplus dealers you should be able to find everything you need. My WAG is that you could probably build an Apple ][ for about $50 - $100 without a keyboard (I haven't priced a scan keyboard in years, but you can build one from discrete pushbuttons if you needed to). I don't know if you can find source code for the ROMs though. Google/check library for a cheap 1980's "Introduction to microprocessors" type book and find the Apple schematics online somewhere. It's a learning experience, but not particularly difficult once you get started. You can get some basic CPU/ROM/RAM/blinkenlights handwired and running a basic POST in a weekend if you already know 6502 assembly. A week if you don't!
- elblanco 17y agoThis is l33t beyond all words.
- joshu 17y agoHad to build a CPU from "scratch" at CMU. Of course, we were allowed to use 290x bit-slice parts. And PALs or FPGAs (we didn't use FPGAs; if you were sufficiently clever you could get the whole thing in one FPGA.) Designed our own ISA though. Had to be able to do a 16 bit multiply. Looked like a multicolor explosion of wire-wrap. One of the other groups built a fully asynchronous machine. Ours was a single board, but theirs had a backplane (using an 80 SCSI cable.) Each unit had a value line and a ready line, so the system advanced to the next state as the parts were ready. Happy days.