Intel's 4004 Microprocessor Turns 40
harrymcc writes "On November 15th 1971, Intel introduced the 4004 — the first single-chip microprocessor. Its offspring, needless to say, went on to change the world. But first, Intel tried using the 4004 in a bunch of products that were interesting but often unsuccessful — like a pinball machine, an electronic vote-counting machine, and Wang's first word processor. Technologizer's Benj Edwards is celebrating the anniversary with an illustrated look back at this landmark chip." Here's another nostalgic look back at V3.co.uk, and one at The Inquirer. And an anonymous reader points out another at ExtremeTech, from which comes this snippet: "Designed by the fantastically-forenamed Federico Faggin, Ted Hoff, and Stanley Mazor, the 4004 was a 4-bit, 16-pin microprocessor that operated at a mighty 740KHz — and at roughly eight clock cycles per instruction cycle (fetch, decode, execute), that means the chip was capable of executing up to 92,600 instructions per second. We can’t find the original list price, but one source indicates that it cost around $5 to manufacture, or $26 in today’s money."
Oh wait, that was something else...
If we've come this far in 40 years, where will we be in 40 more?
If the same rate of price reduction could be applied to 4004, then without inflation in today's money 4004 would have cost literally 0. With inflation it's less than 0, but that makes no sense
I think you need to work on your compound interest.... if year 1 is 26 and year 2 = year1*0.71, then year 40 is four thousandths of a cent.
Which is probably a fair price, compared to the cost/performance ratio of something like a pic 10f220 series chip.
One thing economists are remarkably poor at understanding, is something that cannot go on forever, eventually stops.
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
Wait, would that be Word Wang? The sequel to the off season hit Number Wang?
http://www.4004.com/
In particular, that fully-functional 4004 mock-up someone made by using 1G TTL chips on a large circuit board is absolutely awesome.
#naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
Yes, obviously it's a tiny number, in one thousands of one percent. It's zero for all purposes.
You can't handle the truth.
Obligatory:
Imagine a Beowulf cluster of zero cost 4004s....
I still have a Radio Shack EC-4004 programmable calculator floating around that uses one of these. Fun little calculator for its time.
Hey, what happened to all the Apple fans saying the Motorola chips where better?
I don't know, but this is surely cool:
http://www.visual6502.org/
From the technologizer article:
as Intel churned out more powerful chips throughout the rest of the 1970sâ"the predecessors of the ones inside every current Windows PC and Mac.
Really? I was pretty sure my computer has an AMD inside.
*Well, not really a typo but more of a poorly considered sentence.
Still available, although I believe they are made in Malaysia. The whole chip-set was not very expensive.
"Can there be a Klein bottle that is an efficient and effective beer pitcher?"
So the value of dollar went down by over factor of 5 since 1971.
In 1971 the US Dollar was pegged to gold at $35 per Oz Its ~$1700 today. I don't remember exactly when during the Nixon administraion the US decoupled the dollar from gold but I think it was after the election in 1972. At any rate an oz of gold would about buy a 4004 in 1971 and a ~3.5GHz 6-core Xeon today.
All generalizations are false, including this one. Mark Twain
Our progress is being destroyed by our monetary policy.
Money is nothing more than some arbitrary magnetic patterns on some mainframe disk drive. Don't waste your time obsessing over it.
You don't keep money around for decades; It's a short-term medium used to buy real investments.
In the meantime, if you want progress, quit whining and start working towards progress.
You would have been if your computer didn't run a 4004 microprocessor.
It mostly failed because it was put in a 16-pin package, meaning that all the addresses and data had to be shuffled out and in through a narrow bus. This is a slow process. That also means you had to surround the chip with a lot of decoders and latches and buffers to hold the memory and I/O addresses and shuffle the data in and out. Same downside to the 8008. You needed like 30 chips around the CPU chip just for the very basics of generating an actual memory address and data bus.
It's a short-term medium used to buy real investments.
Yeah you try eating your illiquid assets one day when you're in a pinch. The more money you have, the more wealth you have to keep around as cash. And that's when inflation bites you in the ass.
Seven puppies were harmed during the making of this post.
8008, 6800, and 8086
Try eating your money.
Could it handle at least 16-bit numbers?
And the 6809! Everybody forgets the 6809. ;_;
#naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
Wrong question. I've seen 32-bit PCs handle arbitrary precision (with some appropriate library of course), not only 32 bits. Okay, there is a limit of the size of available RAM ...
...that we landed on the MOON before the invention of microprocessors! Now that's scary.
You are thinking the wrong way.
It was used in calculators.
4bit is enough to encode 0-9. The rest was done in software (using arbitrary precission math, although for very limited values of "arbitrary", given past constrains...
HI O WISE PRINCE. WHT TOOK U SO DAM LONG?
There is an unbroken chain of compatibility from the latest AMD processors back to the 8008...
Of course, no discussion about Intel vs AMD compatibility would be complete without some jerk* remarking that with x86-64, Intel is actually cloning AMD's 64-bit extensions to x86. One of the more ironic twists in that race, to be sure.
* Today's jerk being played by DragonHawk
dragonhawk@iname.microsoft.com
I do not like Microsoft. Remove them from my email address.
I clicked on the link and only saw a 4004 ;)
Corrrect. It's probably better to describe the 4004 as BCD (Binary Coded Decimal) rather than as "four bit." Storing a number larger than 9 requires eight bits, the first four store the first digit, and the second four store the second digit. The bit patterns 0xA through 0xF were actually special patterns used for various things (like marking negative numbers).
Since the original purpose of the 4004 was a calculator, this system makes a lot of sense. It might not be the most efficient use of bits (an eight-digit decimal number uses 32 bits in BCD, but requires only 27 bits when in binary), but it makes the translation to and from human-readable formats very easy.
This is exactly how most circuits using discrete logic operated, and for the exact same reason. In fact, I'm working on a project right now that uses only discrete logic -- encoding in BCD makes the whole thing possible. Using BCD on the first microprocessor makes lots of sense as an incremental improvement on what people already did.
Hebrews 13:5
All generalizations are false, including this one. Mark Twain
For a long time, they were. Things changed. Freescale (Motorola spinoff) and IBM started devoting themselves to embedded systems, game consoles, big iron -- rather than tailoring their chips to Apple's needs. Notably, the G5 was too hot and power-hungry for notebooks and IBM just didn't care to fix it. It was wise to jump ship at that point.
Circumcision is child abuse.
I don't remember exactly when during the Nixon administraion the US decoupled the dollar from gold but I think it was after the election in 1972.
Actually it was August 15, 1971, three months prior to the release of the 4004. http://en.wikipedia.org/wiki/Nixon_Shock
Momentarily, the need for the construction of new light will no longer exist.
I will never leave thee, nor forsake thee.
I claim breach of contract.
Seven puppies were harmed during the making of this post.
The 4004 is too expensive, but I was thinking about getting an 8008 and a bunch of ttl to make a little computer... maybe next April.
404: sig not found.
There are encoding schemes that allow arbitrary precision on any sized processor. The Atari 800 series running on 8 bit 6502s used a BCD encoding, it is a little slower, but fractional results are more predictable than binary representations. You can implement something like that to an arbitrary number of digits... as many bits as you have memory for (and time to wait for processing).
8008, 6800, and 8086
Eh? While there were a few designs using 8008 and 6800, I don't think any of them was successful; high volume commercially available PCs used Z80s (the TRS-80, the Sinclair ZX-80 and Spectrum, the MSX machines) or 6502s (Apple II, Atari, Commodore). The successor of the 6800, the excellent 6809 was used in the TRS-80 Color Computer; years later, when IBM launched their PC, they used the reduced data bus version of the 8086, that is the 8088.
Frak that. Forget about PowerPC. Let's take it way back.
IBM should have chosen the 68000 for the PC.
How would starting the 32-bit age in 1981 sound to you?
While the 68K had a 24-bit address bus and 16-bit data bus, all of the internal registers were 32-bit, aside from the CCR. That meant any non-droolingly-retarded-code would run just fine when the 68020 was released with complete and total 32-bit capabilities.
If the cost was too high (and that's utter BS right there, we're talking about an $80 part in a $5,000 heap of shit), Motorola did release the 68008 later on, which was more in line with the 8088 that IBM did select: 20 bits of address bus, and 8 bits of data bus. Still 32-bit inside*.
NB: The Macintosh was an example of droolingly-retarded-code, the original ROM was NOT 32-bit clean. Motorola explicitly warned developers in the 68K literature that the upper 8 bits of the address registers would be connected to address lines in the future. Commodore and Atari(er, I think) listened. Apple did not. Some game developers did not.
640k of segmented memory can bite my shiny metal ass.
(* = raving intel fanbois often point out that the original 68000 lacked 32x32 multiply and such, and that the ALU was really only processing 16 bits at once in most cases. That's generally irrelevant as the 68000 was not matched against the 80386, but rather the 8086/8088. Also, the 16x16 multiply resulted in a 32-bit number, which could be used to create a 32x32=32-bit answer, which is all that 99% of high level languages can handle anyways. This was addressed with the '020, which offered 32x32=64-bit multiply, still before the 386 hit market. The ALU issue was even less important, as it was utterly invisible to even low level programmers. Again, the release of the '020 in 1984 fixed that too.)
That's a Rockwell chip. Mot was 6800.
-- I have a private email server in my basement.
That's a Rockwell chip. Mot was 6800.
True, that, but it was also the chip in the Apple II.
The flame wars back in the day were between sixers and eighters. TRS-80 & CP/M vs C64 & Apple folks, and even before that was the Altair & IMSAI vs SWTPC & AIM-65 people. The main difference was a Harvard vs Von Neumann architecture design in the CPU.
-- I have a private email server in my basement.
Yeah, I had the (6502 based) Atari 800 when I was about 14, and I never could (and still can't) understand who would ever want Harvard Architecture, or the insane segmented addressing of the 80286....
I meant native support for numbers. If you wrote an assembler program for this kind of processor, what would be the biggest type you can use to store integers, pointers, etc.? On 8-bit processors it was 16 bit numbers I think, which is restricting but still reasonable. If you can access at most 8 bits for pointers and native integers however, I can't imagine how this would work.
They mention photolithography. It was still being used in the mid 80's at Texas Instruments. I went from micrographics to photolithography in 84'ish. You shoot rubyliths with room sized cameras then stack the negatives, positives, or both, on top of each other on a reducer. It was all .001 tolerance work.
Having to work for a living is the root of all evil.