Microchips That Shook the World
wjousts writes "IEEE Spectrum has an interesting article on '25 Microchips That Shook the World,' including such classics as the Signetics NE555 Timer, MOS Technology 6502 Microprocessor (Apple II, Commodore PET and the brain of Bender) and the Intel 8088 Microprocessor. Quoting: 'Among the many great chips that have emerged from fabs during the half-century reign of the integrated circuit, a small group stands out. Their designs proved so cutting-edge, so out of the box, so ahead of their time, that we are left groping for more technology clichés to describe them. Suffice it to say that they gave us the technology that made our brief, otherwise tedious existence in this universe worth living.'"
I'm continually amazed at all the stuff people get the 555 to do. Just google '555 circuit', and be prepared for some major geek accomplishments.
The chip gives you a set of building blocks, so there is great flexibility in how you can combine them. There's probably some similarity to good software API design here, where you provide orthogonal features that the user can combine however he likes, allowing a small API to provide lots of functionality.
Yeah, the 741 is there (though I reckon it should be #2, or even #1 - you know you can make a 555-equivalent suitable for most purposes with a couple of 741's and some clever circuit design, right? ;-).
But yeah, the lack of 7400 series (the original TTL versions, not that 74xxC crap ;-) is odd. Definately should be up there ~ #3 or higher. That stuff was the building blocks of computers before dedicated CPUs.
What part of "a well regulated militia" do you not understand?
Interestingly enough, when Bill Mensch and company designed the 6501 (and later lawsuit modified 6502), they purposely made it very easy to expand it for future use. Although the chip was original designed for use in embedded solutions, several reports suggest that Bill Mensch, as well as fellow designer Chuck Peddle, saw the possibilities of the personal computer. This was around the time that the Altair 8800 was just released.
Bill Mensch attempted to push Commodore for features that might be useful for a personal computer. However, Commodore management rebuffed him. Supposedly frustrated that Commodore management was as short sighted as the Motorola management that he had fled from just a few years earlier, Bill Mensch went on to start his own company designing successors to the 6502.
Over at Western Design Center, Mensch and his sister designed the WDC 65C02, a bugfixed and enhanced version of the MOS 6502, that found its way into the Apple IIc and "enhanced" IIe. They also designed the WDC 65816, an extremely feature enhanced version of the 65C02 that included 16-bit index registers, 24-bit addressing, movable stack and zero page locations, and a host of new ops that allowed for jump tables and position independent code (useful with multitasking OSes and shared libraries).
Just imagine if Commodore had the 65816 in 1980 and released a 16-bit successor to the PET that could handle up to 16MB without the weirdness of bank swapping or segmentation. It would have been very popular with programmers. Smoking the "what if" crack pipe even more, imagine if they ported TRIPOS to the 65816. :)
Too bad they probably would have ruined it by bundling it with a chicklet keyboard.
It was nothing special at all and it definitely didn't shake the world. It didn't lead to a bunch of devices using it and it didn't lead to a new path for computing
The presence of this chip on here makes no sense to me.
Oh wait, I just got to where they talk about a Micronas MP3 decoding chip. So I guess this list is a little hit or miss.
I could hardly agree more with the Chips & Technologies AT chipset being on this list. It may have been more important to the success of the 8088 than the 8088 itself was. All of a sudden making a PC clone was easy, and inevitably it became the standard, so standard that now even Macs use the PC architecture.
http://lkml.org/lkml/2005/8/20/95
What's amazing to me is how the op-amps have been improved. I checked out of analog chips for about 25 years, then had occasion to use them. LM258 -- runs on 3 to 32 volts, rail-to-rail inputs and outputs, uses a whole milliamp to run.
Or the LMC6462 -- 3 to 15 volts, rail-to-rail in and out, 50 microamps supply, and an input resistance of 10 TeraOhms.
Too awkward to compose a URL at the moment, but if you're a pro or more-advanced hobbyist you should google the 555 chip's designer, Hans Camendzind . He released a nifty book on basic analog IC design that never got the attention it deserved IMHO. I believe it's downloadable as a PDF from his site.
The 8088 is a twisted, flawed architecture.
In true QWERTY fashion, it got a lock on the market by solving an immediate problem: the need to get beyond a 16-bit address space in a single-chip microprocessor. We are hamstrung by its limitations to this day.
See
Limitations of the IBM PC Architecture
or
The Curse of Segments
http://world.std.com/~swmcd/steven/rants/pc.html
(Actually, you've just inspired me. Someday I'm gonna build a calculator, based on a 8 pin micro, to display the optimum R1, R2, & C for a given frequency on an LCD screen.
I might even throw in calculation of values for monostable and bistable mode ;-)
What part of "a well regulated militia" do you not understand?
I remember when the Apple G4 and G5 were not allowed in some countries because they were considered "supercomputers". I think that qualifies as "shaking the world".
I wrote an operating system and hardware drivers for a Z80 based embedded system in 1986. It was and still is a great processor as long as you only need 8 bits.
Sorry, should have said AU$ ;-)
A PIC 10F200 costs AU$1.24 in > 25 quantities, compared to an NE555 at AU$0.429 / unit, AU$0.351 > 10+, or AU$0.26 > 250+
And yeah, I was just poking fun at whippersnappers who automatically put a micro into everything. Don't forget to amortise the cost of your programmer hardware & coding time ;-)
You also forgot the Vcc cap - don't worry, so did I with my mental zener-based supply. Don't want your regulator latching up or self-destructing on +- supply spikes, do you? ;-)
(Aside: I once built a set of Knightrider lights for my car (OK, OK - feel free to poke fun at me for that but, in my defence, it was the 80's ;-) based on a 555, a BCD up/down counter, and a BCD-decimal decoder. I didn't filter the supply well enough, but that had the advantage of when it started working erratically by skipping lights or suddenly reversing direction, I knew it was time to change the distributor points ;-)
What part of "a well regulated militia" do you not understand?
They completely missed the 74XX series of chips. So much stuff was built with them back in the day...
The low-power, low-voltage op amps are impressive -- I'll see your LMC6462 and raise you an LT6003: 1.6 to 16 volts, 1uA supply, though the input resistance is slightly worse at 10GOhm (differential) to 2TOhm (common mode).
In some ways more impressive, imho, are the high speed precision op amps. Take a look at the LT1468, for example -- 90MHz, 75uV offset, and settles to 150uV in under a microsecond.
On the other hand, most of my breadboards still begin life with a uA741 or LM324 -- I'd much rather let the smoke out of a cheap op amp than an expensive one. Once the smoke stays in, I'll swap it for the one that will actually act as a precision part.
I'd rather find out about interesting and unique chips, rather than ones that "shook the world".
Like the Propellar, with its interesting interrupt handling, and non-stamped design.
Damnit, I clicked Submit rather than Continue Editing!
This isn't so much impressive hardware, as impressive software:
http://video.google.com/videoplay?docid=-5885351342753379583&q=8088
FMV on an 8088!
Okay, I admit, the quality/resolution isn't that good, but it's still fascinating. :P
My hardware engineering professor once told us this story.
One time the air force were looking for a visual system to detect airmen who had parachuted into the ocean. The requirements were that the visual system should have a 180 field of view in order to detect a single point of orange to a distance of several miles, be able to work within a fixed temperature range, require the minimum of maintenance and be vibration resistant. Two solutions were proposed.
The first system was a real-time video system with multiple processors and cameras. This would be built from industrial PC's and reinforced chassis with a power supply from the aircraft.
The second system consisted of a couple of detachable cages on each side of the helicopter. Each cage was air-conditioned using the warm air from the engine, had a window and a row of pecking buttons. The pigeons were trained to peck the button whenever they saw a point of orange light. Whenever three or more pigeons started pecking, an alarm would go off in the cabin.
During tests, the pigeon based system had a higher accuracy rate than the electronic system.
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
The 8088 was a technical nightmare with a crappy architecture . It just got lucky. IBM's justifiable preference was Motorola's infinitely superior 68000. Unfortunately, the 68000 was 9 months to a year away form production and the 8088 was in production 'now'. IBM felt that it had do it 'now' or miss the market window, so they (reluctantly) went with the 8088.
The 8088 was a big step forward compared to the 8080, 8085, and Z80, which were the dominant CPUs for "personal computers" in the late '70s and early '80s. The 8088 could address one megabyte of memory without needing any external bank-switching hardware, and it had 16-bit registers throughout, and it could run at higher clocks than the aforementioned 8-bit CPUs of the time. Compared to the 64 kilobyte address space of the 8080/8085/Z80 and the 6502, this was a big improvement, and, as lame as it may sound today, a CPU with 16-bit registers and a 4.77 MHz clock was pretty fast compared to what existed in personal computers at the time.
The 8088 really was a significant improvement. Yes, the 68000 was better, but it wasn't available in quantity yet, but perhaps even more importantly, choosing the x86 for the PC meant that software like WordStar and DBase and others, which was written in 8080 assembly language, could be ported to the new platform relatively easily. Porting 8080 code to the 68000 means rewriting everything; porting that same code to the x86 at least makes it possible to reuse some code -- because the x86 assembler can grok 8080 assembly language. Yes, you have to deal with the x86 segmented memory model, and with the differences between the CP/M system calls and those of MS-DOS, but those chores are still a lot less onerous than having to rewrite *everything*.
Neither Intel nor Microsoft "got lucky" when IBM defined the PC architecture. Those were the technologies that made the most sense at the time.
LOL, I must be an insane maniac, as I like programming in PPC assembler (SPARC, too, FWIW). I get to do a bit of assembly language at work for synchronisation primitives and such, but never whole applications any more. I miss being able to use more assembler.
I will never forget that it was in 1972 and I was troubleshooting a logic board for Wang Laboratories' 1200 Word Processor and I encountered a 4004 chip for the first time in a schematic. I realized at that instant that the whole computer paradigm would shift with the new types of chips and that the old computer methodologies would then become extinct.
I never dreamed how quickly or how convincingly this would occur. Up to that time a computer for me consisted of a whole room full of a CPU and memory and now it all was on a small board with high density chips.
That is when I realized that becoming a Cobol, Fortran and C programmer would be a way of extending my talents. Of course everyone who worked on a main frame knew the associated assembler code so the Intel assembler was just another assembler technique and it was taken pretty much in stride.
Back then we did not even have ROM chips and so we used a wire laced through 44 coils and by strobing the wire,a 44 bit readout was produced which included the next wire to strobe. Depending on whether the wire was laced through the coil or around it would determine if the value was a 1 or 0. Doctor Wang was a genius when it came to those early designs.
And in the end, the love you take is equal to the love you make
I'm not convinced. Some of these were just lucky, and rode the wave when the world shook, as opposed to shaking the world. The 555? Yes, truly sublime. The 741 op-amp? So fundamental, you couldn't imagine the world without it. But the 6502? A lucky near-clone of the 6800 that was popular not because it was particularly innovative, but because it was cheap. The 8088? The bastard stepchild of the 8086 which lucked out in getting picked over the 68000 in the IBM PC.
Others are just interesting historical detours. Deep Blue and Transmeta Crusoe both were very interesting technologically, but they are in some sense interesting historical cul de sacs. The Explorer and related LISP machines, Intel's iAPX432, and the INMOS Transputer also hang out in this neighborhood.
DMD? Ok... that one always felt as if it was a project that succeeded only by application of the principle that with sufficient thrust, any pig will fly.
Anyway... I guess any list like this is subjective.
Program Intellivision!
LM3909?
LM3909 Chip (sadly discontinued)
LED
Cap
2 x Resistors for Vcc > 6v
AT&ROFLMAO
Mod parent right up. With the 8086, segments were actually useful, they were just (effectively) start addresses in memory and you had direct access to the next 64KB with 16-bit pointers. The 386 kept segments, but made them useless. You get 8192 global ones and 8192 local (per-process) ones. This is enough for some tricks, for example putting the stack and heap in separate segments so that they can grow independently, but not enough for anything really fun. With a bigger LDT you could put every object / structure and every array in its own segment and get bounds checking done for free in the hardware. The 80386 model of layering segments on top of paging is great because it lets the OS deal with pages (fixed size, easy to swap) but lets the userspace code play with segments (variable size, fit them to data structures).
If you've ever programmed in PL/M 86, you know how powerful segments can be (sadly C, being designed for machines without an MMU, does not have any way of exposing this, and therefore neither do languages built on top of C). For embedded systems where you don't have much RAM and only a single process, you can use all 65536 segments on a 386 and get hardware range checking on all of your complex data types.
I am TheRaven on Soylent News
Nice tale, but a Z80 at 4 MHz would routinely outpace the 8088 at 4.77 MHz unless the code was heavy with multiplies. The Z80's second register set and some of its extended (beyond 8080) instructions gave it the additional power to beat the higher-clocked 8088.
Contribute to civilization: ari.aynrand.org/donate