Forgot your password?
typodupeerror
Hardware Hacking

Hand-made Web Server, Built From 200 TTL Chips 343

Posted by Hemos
from the good-stuff-to-do dept.
ps writes "Bill Buzbee has constructed a hand-made CPU, complete with hardware address translation, memory mapped I/O, and DMA, out of 200 74-series TTL chips wired together with thousands of individually wrapped wires. By using a port of Adam Dunkels' uIP TCP/IP stack to the Magic-1, it currently serves up live web pages at an amazing speed of 3 MHz. See the website for photos and schematics."
This discussion has been archived. No new comments can be posted.

Hand-made Web Server, Built From 200 TTL Chips

Comments Filter:
  • by drunkennewfiemidget (712572) on Monday June 06, 2005 @10:11AM (#12735608) Homepage
    And as part of its stress-testing procedure, its been slashdotted!
    • by Binestar (28861) * on Monday June 06, 2005 @10:19AM (#12735719) Homepage
      Welcome

      These web pages are served by Bill Buzbee's Magic-1 Homebrew Minicomputer using Adam Dunkel's uIP TCP/IP stack.

      The uIP code was compiled using a Magic-1 retargeting of the LCC portable C compiler, and assembled with a custom assembler. The physical connection to the internet is done though Magic-1's auxiliary serial port via SLIP to a PC running SuSE 9.2 Linux, and finally on to my home DSL line. Click on the links above to see some status information about the web server, the TCP/IP stack and Magic-1.

      --- end site text

      I have the site mirror'd via wget, but have no place I can put it that wouldn't slashdot just as fast. If anyone has an idea where I can post it, let me know. email me at puevfs@zubayvar.arg (ROT-13 encrypted -- you'll need to brute force it for the key)
    • It has 45k page hits as of 7.18AM, PST. Let's see how it goes!
    • Mirrors (Score:3, Informative)

      by lee13se (778395)
      Hand-made Web Server, Built From 200 TTL Chips - Mon Jun 6 06:41:52 2005

      ps [networkmirror.com] writes "Bill Buzbee has constructed a hand-made CPU [networkmirror.com], complete with hardware address translation, memory mapped I/O, and DMA, out of 200 74-series TTL chips wired together with thousands of individually wrapped wires. By using a port of Adam Dunkels' uIP TCP/IP stack [networkmirror.com] to the Magic-1, it currently serves up live web pages [networkmirror.com] at an amazing speed of 3 MHz. See the website [networkmirror.com] for photos and schematics."

  • by seanadams.com (463190) * on Monday June 06, 2005 @10:11AM (#12735610) Homepage
    This just goes to show the kind of amazing innovation that can still come out of a garage project. One guy working on his own can sometimes come up with ideas that the big guys like Intel etc are just too slow to be able to jump on. They're all fiddling around trying to get their buggy Verilog tools to work, while this guy just goes and wire wraps it in a few evenings. Bravo! I'll bet it takes the big semiconductor companies at least a year to catch up with this.
    • this guy just goes and wire wraps it in a few evenings


      Since TFA says ... stretching back to the project's beginning in 2001 ... it must have been something like 1500 evenings.

    • Well between legal issues (potentially licensing from this guy), management approval, disection of this guys technology, building it (cost effective, making it faster, etc) and then testing (the biggest hurdle..will it work with most apps) -- yea a year is about right...and nothing is wrong with it. There are many advantages to doing it yourself --- there are also many advantages to working with other people in a large - well funded - organization. Let's not belittle this companies...that is grossly unfai
  • by Folmer (827037) * on Monday June 06, 2005 @10:11AM (#12735611)
    He posted his 3 Mhz server on slashdot.. i guess that by now that fine wire-mess is a melted wire-mess...
  • 3 MHz? (Score:2, Funny)

    by Mz6 (741941) *
    Post a link to a 3 MHz webserver on Slashdot? BRILLIANT!
  • Checklist (Score:5, Funny)

    by nizo (81281) * on Monday June 06, 2005 @10:12AM (#12735619) Homepage Journal
    - Lots of gigantor pictures: Check
    - Already slow even before hitting the front page: Check
    - Millions of bored geeks have just dragged themselves into work: Check


    Yep, there is no chance this will get slashdotted, but in case it does, I think there is a mirror working here [nyud.net].

    • Yep, there is no chance this will get slashdotted, but in case it does, I think there is a mirror working here.

      Nope - the mirror got slashdotted, too. (Or otherwise is "not working here" - which I presume is the import of an error message saying "unable to locate ...".)
    • by caluml (551744)
      Millions of bored geeks have just dragged themselves into work: Check

      Did anyone explain to you how this world is spherical....?

      • Re:Checklist (Score:3, Insightful)

        by meatspray (59961)
        US Population in 2000:
        296,296,953

        The bulk of the US runs in 4 time zones.

        I figure if 5% of people are geeks, there's at least 2-3 million geeks in any given timezone even at loose standards. (Alaska, Hawaii, Puerto Rico, Pacific Island territories excluded)
    • by Ford Prefect (8777)
      The mirror does seem to be at least partially working, but I have to admit I disagree with one of the designer's future intentions:

      TTL rather than FPGA. My reasons here pretty much boil down to "because that's what I want to do." FPGAs do sound fun, but I really am drawn towards using technology that is similar to that which was current when I first became introduced to computers. Perhaps for Magic-2....

      No! Magic-2 must be built out of discrete transistors, Magic-3 out of valves, and Magic-4 must b

      • No! Magic-2 must be built out of discrete transistors

        Funny you should mention (and the reason I enjoyed seeing this article): ever since receiving my B.S.E. in Electrical Engineering eight years ago, I've wanted to build some sort of digital device (an alarm clock, say) using discrete transistors . . .

  • by xmas2003 (739875) * on Monday June 06, 2005 @10:12AM (#12735628) Homepage
    The 3MHz PC hung in there for about 3msec ...

    P.S. Cool project Bill.

  • by Whafro (193881)
    not so much serving up pages anymore, is it?
  • Tradgic (Score:3, Funny)

    by Jo Owen (612634) * <jo...owen@@@gmail...com> on Monday June 06, 2005 @10:14AM (#12735647)
    Magic-1 Stats

    * Files served: 804
    * Boot time: Sunday, June 05 2005 - 08:59:01 PM
    * Current time: Monday, June 06 2005 - 07:05:14 AM
    * Ticks mod 64: 56
    * uIP start time: Sunday, June 05 2005 - 10:18:36 PM
    * Clock speed: 3.0 Mhz
    * OS Version: 1.33
    * Slashdotted: Monday, June 06 2005 - 07:13:14 AM
  • That reminds me so much of a MITS Altair (8800 or 680b, take your pick)
  • Correction (Score:2, Insightful)

    by natefanaro (304646)
    It served up live web pages at an amazing speed of 3 MHz.
  • it currently serves up live web pages

    Not anymore it doesn't...
    I still have to say I'm very impressed with what they've done. It's not something I could do. I think it goes to show how much really goes into any chip these days, how complex they really are.
  • by 110010001000 (697113) on Monday June 06, 2005 @10:15AM (#12735674) Homepage Journal
    THIS is the type of stories that Slashdot should be posting! Cool engineering type stuff. Enough with the "M$" slamfest and what is Apple/Sony/Nintendo doing today crap.
    • by Blakey Rat (99501) on Monday June 06, 2005 @11:39AM (#12736576)
      Except every goddamn comment is "oh look we slashdotted it! Ha ha ha it's not running anymore! Ha ha ha oh now it's all melted! Ha ha ha!" Yeah, that joke is funny... especially since it's been posted 15 times a day for the last 5 years.

      At least those other stories have comments that aren't completely asinine.
  • Dear Ask Slashdot,

    In the time it took Bill Buzbee to create his homebrew CPU, I perfected the artificial vagina. Coincidently, it too is constructed out of 200 74-series TTL chips wired with thousands of individually wrapped wires. Now I ask: whose time was better spent?

    Letter

  • And cackling "3 megahertz, mwahahahaaaaaa". He pressed the submit button.

  • Predictable answers (Score:5, Informative)

    by hcdejong (561314) <hobbes@xmsnBLUEet.nl minus berry> on Monday June 06, 2005 @10:25AM (#12735797)
    As I write this, the vast majority of the 38 comments are about /.'ing the machine, blah blah blah.
    I, for one, think it's a neat project, and bow to Buzbee's superior geekdom.
    • Who's to say that it ever even worked? All you need to do is say "I have a webserver that runs at (insert ridiculously slow speed)" and get it posted to slashdot. After that noone will even question whether it was even up. They'll just joke about how quickly it was slashdotted. Not that I doubt that this machine does/did exactly what is claimed, I'm just sayin...
  • Now I get it. The Intel thing was just a ruse. Jobs is going to announce Apple's intention to switch to this chip today.

    You saw it here first.


  • Wire wrap is usualy 30awg wire

    30 awg wire is usually good to 2A of current.

    I feel sad for the molten slag that represents thousands of hours of work. Poor thing.

    -Adam
  • Now this is what geekness is all about. I remember back in the 80's while in school I designed a digital clock built entirely from TTL devices. Sure I could of just used a off the shelf clock chip, but that would be too easy.
  • Article text (Score:5, Interesting)

    by milgr (726027) on Monday June 06, 2005 @10:36AM (#12735919)
    New: Magic-1 is now serving web pages using Adam Dunkel's uIP - click here

    Magic-1 is a homebuilt minicomputer. It doesn't use an off-the-shelf microprocessor, but rather has a custom CPU made out of 74 Series TTL chips. Altogether there are more than 200 chips in Magic-1 connected together with thousands of individually wrapped wires. And, it works. Not only the hardware, but there's also a full ANSI C compiler for Magic-1 (retargeted LCC), and a rudimentary homebrew operating system. You can even telnet into Magic-1 and play Original Adventure.

    This web site has served as the development repository for the project, and contains lots of pictures documenting the construction, as well as full documentation and diaries stretching back to the project's beginning in 2001. You can also find a few videos of Magic-1 running, including the first time it worked.

    Start here, and then check out the Overview and Photo Gallery. To dig deeper, browse through Technical Info, Construction - and if you're really interested, you can even download Magic-1's full schematics.

    Magic

    In the summer of 1980 I celebrated my freshly minted B.S. in Journalism by blowing most of the cash I collected in graduation gifts on a TRS-80 Model 1 computer. Sitting on the floor of my apartment I fired it up, typed in the sample BASIC program and then "RUN".

    WHAT IS YOUR NAME?

    "BILL", I responded.

    HI BILL

    Wow! I was blown away. This was just a machine, but I could interact with it using language that we both understood. As a Liberal Arts graduate with next to no technical background, I found this completely astonishing. Over the next year, I continued to play with my TRS-80 Model 1 while working as a journalist on a small-town Kansas newspaper. I decided that I really wanted to learn more about how computers worked, so I went back to college and picked up a M.S. in Computer Science.

    Now, more than 20 years later, I find myself with an urge to touch that magic again by building my own computer from scratch. By "scratch", I mean designing my own instruction set, wire-wrapping a CPU out of a pile of 74 series TTL devices and writing (or porting) my own assembler, compiler, linker, text editor and operating system.

    I'm calling this computer the "Magic-1", or M-1 for short. It's a one-address, microprogrammed machine with one-byte opcodes. It features 8/16-bit data operations, functioning on an 8-bit wide data bus with 16-bit addresses (mapped via 2K-byte pages into a 22-bit physical address space). Code and data address spaces can be shared or disjoint, giving each process up to 128K bytes of addressing. User and supervisor modes exist, along with hardware address translation, memory-mapped IO, and support for DMA and externally-generated interrupts. As far as components go, it is built entirely out of 74LS and 74F-series TTL devices plus modern SRAM and old bi-polar PROMs for the microcode store. I designed it to run at 4 Mhz, but missed a couple of critical paths - so ended up at 3 Mhz. Goals

    OK, so I understand wanting to do your own CPU, buy why on earth are you doing it this way? I mean, why TTL - why not FPGA? And really, 16-bit virtual addresses in a 22-bit physical address space! What's the deal with that?

    I guess any project should start off with some notion what of what you're trying to achieve. My high-level project goals are: bullet

    Touch the magic. By this I mean to gain a deeper understanding of how computers work, and specifically computers similar to those of the late 70's and early 80's that first fired my interest. For this reason, the Z80 loomed large in my mind throughout the design process, and running with an 8-bit data bus and 16-bit addresses just seemed right. Although I'm largely trying to use parts that would have been current in that time, I'm not shooting for historical accuracy. My choice of

  • by HABITcky (828521) on Monday June 06, 2005 @10:42AM (#12735961) Homepage
    I love this part from his site:
    When I said "my wife" in the previous section, I actually meant to say "my beautiful, intelligent and under appreciated wife who not only does way more than her share of the work around here, but also knows that this web site exists and checks it out from time to time."
  • I'm writing up a PO to replace our web cluster with these. How soon can you provide 150 units?
  • by CBob (722532) <crzybob_in_nj@y[ ]o.com ['aho' in gap]> on Monday June 06, 2005 @10:44AM (#12735981)
    Blinky lights~Real Computer

    10 years ago I worked in a mainframe shop that had upgraded from the 4381 to a 9121. Neither system had much "eye candy". That meant that the client didn't have much to show off in the "big window" of the data center when tours/investors were guided thru.

    Unless Tex was working.(and thankfully he almost always there). He was the client's rep that ordered paper by the semi for us & was able to bend Standard Register to his will with a mere phone call(one semi load of paper a year will usually do that, we did multiples)

    Tex would lead the tour to the window and happily point to the elderly IBM network controller(box was actually blue on the sides, model forgotten) with all its blinking status leds and tell em "there is the computer".

    They'd make "pretty lights" noises and continue along, Tex would grin from ear to ear & we'd have to wait till they left before we could run outta air laughing.

    Tex dreaded the times anyone talked about network upgrades.

  • but waste of money
    you could buy microcontroller and ethernet ready chipset for it for less than the cost of 200 ttls
    and you'd get much better performance with that rig
    • You're missing the point. The advantage of designing it with SSI/MSI logic is that you can be a computer architect. You get to design everything, busses, register set, instruction set, ALU, control logic.

      For specialized applications, a custom-designed computer can still kick the ass of modern, general-purpose computers, even if it is only clocked at 1-10 MHz.

      • No serious electronics engineer would build such thing from separate components today.
        Special systems would most likely use some fpga and save several hours in building time, board space and expenses in mass production.
        The fpga would take less power and have 10-100 times faster clock than those ttl chips.
        And if you're dealing with $20 fpga vs. $200 in ttl chips which need to be wired by hand separately, the choice is quite obvious.
        • by Enigma_Man (756516)
          You are 100% missing the point of this exercise. It's more art than technology. It isn't about speed, it's about fun, and beauty, and designing something yourself, without the need for the latest-and-greatest. It's much easier to buy a fish at the store than catch one yourself, but I don't see fishermen stopping that any time soon.

          -Jesse
    • by sjames (1099)

      you could buy microcontroller and ethernet ready chipset for it for less than the cost of 200 ttls and you'd get much better performance with that rig

      Way to miss the point! Since his intent was to delve into the lowest levels of the CPU logic (all of which is sealed up in a glob of epoxy in your suggestion), I'd say your solution has a performance of 0.

      As for being a waste of money, that depends on the value he places on what he has learned (including insight you have to experiance rather than just re

  • Right now the coral cache of the Magic-1 [nyud.net] is operating. But only the front page.

    Amazing!
  • by WPIDalamar (122110) on Monday June 06, 2005 @10:46AM (#12736022) Homepage
    Come on guys, this is 3,000,000hz! That's like, wow.

    Modern computers come with like 2.4 or something. This is wAY WAY faster, no way will we slashdot it.
  • When our interns or junior staff start complaining about mundane work, I show them pictures of wire-wrapping and tell them that used to be what the interns and junior staff did when I was learning the ropes. That ususally shuts them up for a while...

    • Having finished wire wrapping a prototype panel for a flight simulator during my apprenticeship - after 2 weeks of mind-numbing, tedious work - I called over Ray (my supervisor) to give it a visual inspection before it went to unit test...

      "Looks good", he said, "Er, you do know they come in pairs, don't you?"

      AAARRRGGHHH!!!
  • by Blitzenn (554788) * on Monday June 06, 2005 @11:09AM (#12736290) Homepage Journal
    Is this an Amish version of a web server or something? I know the Amish insist on doing things the hard way, such as plowing a field with a horse. Why would a person choose to build a system today using old tech such as this? Must be some religious thing or perhaps a new Amish Sect? Compish? Or is it simply Stupish? ;)
    • "I know the Amish insist on doing things the hard way,..."

      If you think the Amish haven't been using things like fully computer automated cow milking gear and such for the past couple years, you're dead wrong. Hell, it's nowhere near our saturation, but they use cellphones and laptops too.

      Wired 7.01 - Look Who's Talking [wired.com]
  • by kc01 (772943) on Monday June 06, 2005 @11:12AM (#12736316)
    I'm astounded at how many postings regarding this project belittle the effort.
    Sure, a 3 MHz TTL device isn't going to compete with anything comtemporary, particularly a commercial microprocessor.
    True, nobody is going to buy one due to the labor cost to build it.

    But can anyone think that it was built to set the world on fire? Has nobody but me ever built something simply for the love of doing it, or the knowledge gained from figuring out how to do so? There's more to building something (whether it be from a kit or personal design) than the usefulness of the end result.

    • Does nobody see the value in this??

      I would like to, but the site's probably melted down by now from the Slashdot effect
    • Yes, some of us do. There's a whole subculture of people who are building things that nobody would ever buy; spending dozens/hundreds of hours building something that you could go out and buy for 5 bucks, because it's FUN.
      It's just that they don't tend to be the type who spend all their work hours cruising slashdot and posting whatever dribbles down their brainstem into their fingers just to see their name on the board.
  • I built my motherborad out of GINGERBREAD! [randomimage.us]

    And the computer itself out of wheat bread [theapplecollection.com].

    Top that
  • Cache of the site. [72.14.207.104]

    But it might be slashdotted too.
  • So sad to know that less than 50 miles away from me this poor little server faithfully chugged along until with a wimper and a sigh it gave up.

    *points to his own server*

    Hear that, MIKE? If you don't keep on the straight and narrow, you could be next...
  • Homebrew CPUs (Score:3, Interesting)

    by LesPaul75 (571752) on Monday June 06, 2005 @11:35AM (#12736546) Journal
    So, if a guy wanted to build a more "modern" homebrew CPU, what options are there? Are there any decent CAD tools that don't cost a thousand million dollars? And once a layout is done, is there anywhere you can get just one single chip made for a reasonable price?
    • Re:Homebrew CPUs (Score:5, Interesting)

      by crgrace (220738) on Monday June 06, 2005 @12:11PM (#12736920)
      So, if a guy wanted to build a more "modern" homebrew CPU, what options are there? Are there any decent CAD tools that don't cost a thousand million dollars? And once a layout is done, is there anywhere you can get just one single chip made for a reasonable price?

      LesPaul,

      I built a CPU using freeware tools as part of my PhD project. The paper is "A 12-bit 80MS/s Pipelined ADC with Bootstrapped Digital Calibration" published in the IEEE Journal of Solid-State Circuits, May 2005. You can google the title if you want to see the paper. Anyway, I designed a 24-bit microprogramed CPU in 0.25um CMOS to act as the calibration controller of the Analog-to-Digital Converter (ADC). The project was great because I got to design the architecutre of the CPU, the microcode/instruction set, I wrote a custom assembler, etc. I designed the circuits using viewdraw (public domain UNIX schematic capture tool). I designed the logic and tested the circuits using a public domain VHDL simulator (can't remember which one.. alliance maybe?). I laid out the circuit using Magic, a public domain layout editor running on Unix or Linux. The only thing that cost money was fabricating the chip. There is a service called MOSIS (www.mosis.org) that will do multi-project runs to lower the cost for you. I think the cheapest you will get is a couple of thousand bucks for 40 parts or so. Mine was something like $40k but I had high performance analog circuits in a fancy process. Email me if you need more info at carl.grace@yahoo.com

      Cheers,
      Carl
  • A pretty bright hardware engineer but with no sense of proportion. He built himself a 24 bit (yes...24 bit) cpu out of 4 bit slice components with a custom instruction set which if I remember rightly ran at about 2MHz. When I asked why he said, well, Intel haven't got a 32 bit chip yet, perhaps they would like my design for a 24 bit one instead. I am still unsure as to whether he was joking...Unfortunately I never really took in the details because I was too busy trying to get our multi-cpu 68010 based real
    • You should have been in our place - we were struggling to get parallel processing running on 286 processors (hmm, yes..) and we were very much an 'Intel Shop' (many of us wondered who from Intel was 'sleeping with the MD'!). At one very key developers meeting involving Senior Management, one brave engineer was heard to remark "Everything we're trying to do could be achieved almost instantly if we went to Motorola Processors" - you could have heard a pin drop. Management totally blanked the comment and on we
  • And thus another sophomore digital design project comes to completion.

    Geez - I thought we had actual geeks around here. The only thing I'm amazed about is that this seems to be noteworthy. Or are the majority of people just that hardware ignorant?

    In other news, major techno geek builds web server out of vacuum tubes, relays, and the speedometer from a '58 Edsel.

  • Using firefox and multiple tabs (as in 2 maybe 3) you too can know personally the power of the <insert-name-here> effect, as you yourself bring a web server server to it's knees.

    --

    I AM MIGHTY!!!
  • This homebrew CPU might not impress us end-users, but this guy KNOWS how a CPU works. Have you guys wondered how modern-day CPU's are designed? You just see the chip. Ta-da.

    But who deals with the processor pipeline? The cache? etc? As much as we consider ourselves "hax0rs", "da l337 of da l337", who in here KNOWS how CPU's work, to the point of being able to design one?
  • Mastercard (Score:3, Funny)

    by farzadb82 (735100) on Monday June 06, 2005 @12:12PM (#12736931)
    200 TTL chips for the CPU, $60
    Wirewrap boards to put the chips on, $20
    Wirewrap wire to hook everything up, $20
    turning on your webserver, only to be slashdotted - priceless!
  • by John Jorsett (171560) on Monday June 06, 2005 @03:10PM (#12739008)
    Seriously, that's pretty much what they were, just piles of TTL logic chips and strung-on-wire graphite beads for memory, all on pizza-box-size boards that slipped into a big chassis. You needed at least three boards, one for the CPU, one for memory, and one for I/O. The first minicomputer I worked with was a Data General Nova 1200. 1200 as in 1200 nanoseconds PER INSTRUCTION. That's a whopping 833 KHz. And a stunning 8 kilobytes of memory. It was amazing what we got that thing to do, though.

    You can tell you're getting old when people start reproducing the obsolete crap you're happy as hell to have left behind.

Faith may be defined briefly as an illogical belief in the occurence of the improbable. - H. L. Mencken

Working...