I remember Apollo wanted to ship MC68020-based workstations before the chip was actually available. Their solution was to grab a stack of AM2900s and emulate the MC68020, so their existing software still ran without modifications.
It was quite a stack of hardware - two or three lunch tray sized boards to replicate one chip.
Even computers built from many chips or discreet transistors can be designed in a bit slice way so you can have several boards be exactly alike instead of having every one be unique.
J. Peterson: The Apollo workstation you mention actually emulated the 68000, not the 68020. Source: I was in the Motorola 68000 design group from 1985 to 1996. The first project I worked on was the 68030, which was essentially the 68020 with an integrated MMU and virtual memory capability. We did have a full hardware breadboard of the 68020. The 68030 breadboard was 18 24"x24" wirewrap breadboards, each with a 23x14 array of 20 pin DIP sockets! The chips were mostly PALs and RAM/ROM, no bitslice. This was before software logic simulation was a real thing.
Wow, I had no idea that they actually mocked up processors in hardware while designing them. Especially in the 80s when they were at that level of complexity. I'd love to see a picture of one of those wirewrap breadboards if it exists. I presume they did not run at the speed the final product was intended to run at.
hi Ken, great article ... as always. A very minor correction, the Cray 2 and Cray 3 were cooled via liquid Fluorinert. It was the Cray 1 and Cray X-MP that were cooled via freon. Hopefully, you'll find an opportunity to write an in-depth article on some aspect of the early Cray designs, either logic, power supply or cooling ... all amazing for their time ... regards andyg
I used the AMD 2901 in 1978 to design a 32-bit computer for Systems Engineering Labs in Florida. Most minicomputers at the time were 16-bit wide made by DEC, Data General and Prime who were all located in the Boston area. The 2901 was a big improvement over the TI 74181 but the chip itself is wider (.6 inch) versus the usual .3 inch wide packaging of the 74XX series TTL chips. This made prototyping initially difficult. The board I designed was 30 x 30 inches crammed full of several hundred chips. Separate boards were for the computer's memory and they used the ubiquitous 1103 dynamic memory chip.
Josh O. As it happens I do have some pix of the 68030 breadboard. Normally I would not have been allowed to take pictures of this, or even bring a camera into the building, but I gave a talk on the 68030 at Stanford in 1986 and I got permission to take these pix. I did not work on the emulator (that was the Tiejen brothers), I did design on the TLBs. As far as I remember the emulator ran less than 1 MHz. But remember, the 68030 design target was 16 MHz (yes, megahertz). Here are the pix: https://drive.google.com/open?id=1ZtULPYBnZ2ZnI8LJavVCWvJ2v2n0UO8J The cards were about 24" on a side, with 20 pin wirewrap DIP sockets. Mostly PALs, RAMs and ROMs. Although the 68020 and 68030 have relatively complex instruction set, a lot it was implemented in microcode, so the actual logic is quite as hairy as you might think.
The 3 Mbps Experimental Ethernet interface card in the original Stanford University Network (SUN) project machine used three of the Am2901s to implement a 12-bit bit-slice machine to handle the decode and encode of the Ethernet signaling. Not sure exactly who developed the card, but I assume that it was Andy Bechtolsheim since he was the primary developer for the original SUN hardware cards.
In the early 80's I worked for a startup that used this to extend the Z-80 Instruction set to add a wider word to support 2-d graphics at much higher speed than was possible before. Was a lot of fun, worked well, died when the IBM PC changed price points for computers and company was too stuck on making systems to pivoting to making graphic cards.
Ken Shririff, sure you can post if think they are of interest. I actually have a few more of the station showing the test equipment and the ExorMACSS chassis (the 68000 development computer) which I will put in the shared folder. I don't have my foils (remember those) from the talk. I'm surprised I kept the 8x10 color glossies :-)
April 20, 2020 at 1:48 PM
Anonymous said...
I used the 2900 series in quite a few systems. One of them was a DG Nova knock-off that out performed the Nova computer. I loved the 2900 series and was disappointed to see it gone from the market!
April 25, 2020 at 5:11 AM
F. Lanciault said...
These chips were used in the HP-9845C color monitor (to do vector plot, etc) and in the option 200 processor upgrade for the same 9845C and 9845B. The bit slice processor upgrade gives a 6X boost in processing speed. I have both, but the monitor is currently not working.
April 28, 2020 at 9:19 AM
Anonymous said...
I worked on a 2901/2910 system as part of a EE class at UIUC back in the dark ages. As I recall they were multibus wire wrap cards, retired shortly after I graduated.
Strange timing. I started working on getting parts of the AM2900. I've only have a AM2901 running so far. I've enjoyed the write up of its internals.
May 31, 2020 at 10:08 PM
David Bakin said...
I wrote microcode for a 32-bit system (never shipped) from Basic Four Corporation (aka MAI Corporation) that was built with 2901s.
One thing you didn't mention: AMD had absolutely totally excellent best-ever-I've-seen design notes - including a full 7- or 8- part tutorial! - on building systems with the 2901. The tutorial, IIRC, went from basic knowledge all the way through to schematics of a complete working CPU. (I still kick myself for getting rid of my set of AMD documentation sometime in the 90s ...)
Still a fascinating chip... AMD had a great technical note explaining how to build a much faster Am9080 (Intel 8080) out of these. I used that to implement it in VHDL: https://github.com/zpekic/sys9080
I just found out that the 2901 was used in the Eventide Reverb box from 1982, the SP2016. It had six 2901 inside! https://cdn.eventideaudio.com/uploads/2021/07/SP2016-Manual-Original.pdf
We designed a couple of graphics computers using 2900 series in 1982 - Z80 instruction set combined with inline instructions for computre graphics for Florida Computer Graphics startup. Died after PC came out and we couldn't comvince management to pivot to graphics cards. Missed opportunity.
"Inside the Am2901: AMD's 1970s bit-slice processor"
22 Comments -
I remember Apollo wanted to ship MC68020-based workstations before the chip was actually available. Their solution was to grab a stack of AM2900s and emulate the MC68020, so their existing software still ran without modifications.
It was quite a stack of hardware - two or three lunch tray sized boards to replicate one chip.
April 18, 2020 at 12:22 PM
Even computers built from many chips or discreet transistors can be designed in a bit slice way so you can have several boards be exactly alike instead of having every one be unique.
April 18, 2020 at 6:20 PM
The CHM has a photo of the Apollo AM2900 based CPU (emulating the MC68020 processor). There are nice neat rows of eight AM290x chips, 8 x 4 = 32 bits.
https://www.computerhistory.org/collections/catalog/102681229
April 18, 2020 at 11:03 PM
J. Peterson: The Apollo workstation you mention actually emulated the 68000, not the 68020. Source: I was in the Motorola 68000 design group from 1985 to 1996. The first project I worked on was the 68030, which was essentially the 68020 with an integrated MMU and virtual memory capability. We did have a full hardware breadboard of the 68020. The 68030 breadboard was 18 24"x24" wirewrap breadboards, each with a 23x14 array of 20 pin DIP sockets! The chips were mostly PALs and RAM/ROM, no bitslice. This was before software logic simulation was a real thing.
April 19, 2020 at 5:43 AM
@CaptainTivo
Wow, I had no idea that they actually mocked up processors in hardware while designing them. Especially in the 80s when they were at that level of complexity. I'd love to see a picture of one of those wirewrap breadboards if it exists. I presume they did not run at the speed the final product was intended to run at.
April 19, 2020 at 1:55 PM
hi Ken, great article ... as always. A very minor correction, the Cray 2 and Cray 3 were cooled via liquid Fluorinert. It was the Cray 1 and Cray X-MP that were cooled via freon. Hopefully, you'll find an opportunity to write an in-depth article on some aspect of the early Cray designs, either logic, power supply or cooling ... all amazing for their time ... regards andyg
April 19, 2020 at 2:21 PM
I used the AMD 2901 in 1978 to design a 32-bit computer for Systems Engineering Labs in Florida. Most minicomputers at the time were 16-bit wide made by DEC, Data General and Prime who were all located in the Boston area. The 2901 was a big improvement over the TI 74181 but the chip itself is wider (.6 inch) versus the usual .3 inch wide packaging of the 74XX series TTL chips. This made prototyping initially difficult. The board I designed was 30 x 30 inches crammed full of several hundred chips. Separate boards were for the computer's memory and they used the ubiquitous 1103 dynamic memory chip.
April 20, 2020 at 6:07 AM
Josh O. As it happens I do have some pix of the 68030 breadboard. Normally I would not have been allowed to take pictures of this, or even bring a camera into the building, but I gave a talk on the 68030 at Stanford in 1986 and I got permission to take these pix.
I did not work on the emulator (that was the Tiejen brothers), I did design on the TLBs.
As far as I remember the emulator ran less than 1 MHz. But remember, the 68030 design target was 16 MHz (yes, megahertz).
Here are the pix: https://drive.google.com/open?id=1ZtULPYBnZ2ZnI8LJavVCWvJ2v2n0UO8J
The cards were about 24" on a side, with 20 pin wirewrap DIP sockets. Mostly PALs, RAMs and ROMs. Although the 68020 and 68030 have relatively complex instruction set, a lot it was implemented in microcode, so the actual logic is quite as hairy as you might think.
April 20, 2020 at 8:55 AM
The 3 Mbps Experimental Ethernet interface card in the original Stanford University Network (SUN) project machine used three of the Am2901s to implement a 12-bit bit-slice machine to handle the decode and encode of the Ethernet signaling. Not sure exactly who developed the card, but I assume that it was Andy Bechtolsheim since he was the primary developer for the original SUN hardware cards.
April 20, 2020 at 9:18 AM
CaptainTivo: your 68030 pics are very interesting. I think people would like to see them so may I share them? Also, do you have a copy of your talk?
April 20, 2020 at 9:58 AM
In the early 80's I worked for a startup that used this to extend the Z-80 Instruction set to add a wider word to support 2-d graphics at much higher speed than was possible before. Was a lot of fun, worked well, died when the IBM PC changed price points for computers and company was too stuck on making systems to pivoting to making graphic cards.
April 20, 2020 at 11:17 AM
Ken Shririff, sure you can post if think they are of interest. I actually have a few more of the station showing the test equipment and the ExorMACSS chassis (the 68000 development computer) which I will put in the shared folder. I don't have my foils (remember those) from the talk. I'm surprised I kept the 8x10 color glossies :-)
April 20, 2020 at 1:48 PM
I used the 2900 series in quite a few systems. One of them was a DG Nova knock-off that out performed the Nova computer. I loved the 2900 series and was disappointed to see it gone from the market!
April 25, 2020 at 5:11 AM
These chips were used in the HP-9845C color monitor (to do vector plot, etc) and in the option 200 processor upgrade for the same 9845C and 9845B. The bit slice processor upgrade gives a 6X boost in processing speed. I have both, but the monitor is currently not working.
April 28, 2020 at 9:19 AM
I worked on a 2901/2910 system as part of a EE class at UIUC back in the dark ages. As I recall they were multibus wire wrap cards, retired shortly after I graduated.
April 29, 2020 at 6:25 AM
Strange timing. I started working on getting parts of the AM2900. I've only have a AM2901 running so far. I've enjoyed the write up of its internals.
May 31, 2020 at 10:08 PM
I wrote microcode for a 32-bit system (never shipped) from Basic Four Corporation (aka MAI Corporation) that was built with 2901s.
One thing you didn't mention: AMD had absolutely totally excellent best-ever-I've-seen design notes - including a full 7- or 8- part tutorial! - on building systems with the 2901. The tutorial, IIRC, went from basic knowledge all the way through to schematics of a complete working CPU. (I still kick myself for getting rid of my set of AMD documentation sometime in the 90s ...)
July 8, 2020 at 8:04 AM
This one might be very interesting for you:
http://www.donnamaie.com/AMD_Vintage/AMD_2900_ED2900A.html
January 4, 2021 at 9:00 AM
Still a fascinating chip... AMD had a great technical note explaining how to build a much faster Am9080 (Intel 8080) out of these. I used that to implement it in VHDL: https://github.com/zpekic/sys9080
February 6, 2021 at 3:31 PM
I used Am2900 - Family chips to build a LISP machine. Good old days...
June 5, 2021 at 10:51 AM
I just found out that the 2901 was used in the Eventide Reverb box from 1982, the SP2016.
It had six 2901 inside! https://cdn.eventideaudio.com/uploads/2021/07/SP2016-Manual-Original.pdf
November 4, 2022 at 9:53 PM
We designed a couple of graphics computers using 2900 series in 1982 - Z80 instruction set combined with inline instructions for computre graphics for Florida Computer Graphics startup. Died after PC came out and we couldn't comvince management to pivot to graphics cards. Missed opportunity.
November 16, 2022 at 8:45 AM