Am2900 is a family of integrated circuits (ICs) created in 1975 by Advanced Micro Devices (AMD). They were constructed with bipolar devices, in a bit-slice topology, and were designed to be used as modular components each representing a different aspect of a computer control unit (CCU). By using a bit slicing technique, Am2900 family was able to implement a CCU with data, addresses, and instructions to be any multiple of 4 bits by multiplying the number of ICs. One major problem with this modular technique was it required a larger amount of ICs to implement what could be done on a single CPU IC. The Am2901 chip was the arithmetic-logic unit (ALU), and the "core" of the series. It could count using 4 bits and implement binary operations as well as various bit-shifting operations.
The 2901 and some other chips in the family were second sourced by an unusually large number of other manufacturers, starting with Motorola and then Raytheon – both in 1975 – and also Cypress Semiconductor, National Semiconductor, NEC, Thomson, and Signetics. In the Soviet Union and later Russia the Am2900 family was manufactured as the 1804 series (with e.g. the Am2901 designated as KR1804VS1 / Russian: КР1804ВС1) which was still in production as of 2016.
There are probably many more, but here are some known machines using these parts:
The Apollo Computer Tern family: DN460, DN660 and DSP160. All used the same system board emulating the Mc68010 instruction set.
The Itek Advanced Technology Airborne Computer (ATAC) used on the Galileo Attitude and Articulation Control Computer System and some Navy aircraft had a 16-register, 16-bit word width assembled from 4-bit-wide 2900 series processors. Four special instructions were added to the Galileo version of the ATAC, and later some chips were replaced with radiation-hardened 2901 chips.
Data General Nova 4, which obtained 16-bit word width using four Am2901 ALUs in parallel; one of the boards had 15 Am2901 ALUs on it.
Digital Equipment Corporation (DEC) PDP-11 models PDP-11/23, PDP-11/34, and PDP-11/44 floating-point options (FPF11, FP11-A and FP11-F, respectively)
The Xerox Dandelion, the machine used in the Xerox Star and Xerox 1108 Lisp machine.
Several models of the GEC 4000 series minicomputers: 4060, 4150, 4160 (four Am2901 each, 16-bit ALU), and 4090 and all 418x and 419x systems (eighteen Am2901 each, 32-bit integer ALU or 8-bit exponent, 64-bit Double Precision floating point ALU).
The DEC KS10 PDP-10 model.
The UCSD Pascal P-machine processor designed at NCR by Joel McCormack.
A number of MAI Basic Four machines.
The Tektronix 4052 graphics system computer.
The SM-1420, Soviet clone of PDP-11, used Soviet clone of AM2901 perhaps also used in others.
The Lilith computer designed at ETH Zürich by Niklaus Wirth.
Atari's vector graphics arcade machines Tempest, Battlezone, and Red Baron each used 4 Am2901 ICs in their "math box" auxiliary circuit boards.
Pixar Image Computer, 4 Channel Processors each with 4 Am2900's
Simulation Excel (Sim-X), Oslo, Norway: Typographical workstation / typesetter; one of its four processors was a 16-bit microcoded calculation and transformation engine built from four 2901 slices and one 2910 address sequencer. The Sim-X machine used a 16-bit integer multiplier to optimize graphical transformations. The machine debuted in 1983 and the company shut down in 1987.
Eventide H949 Harmonizer; four Am2901 chips (and several microcode PROMs) are used to generate addresses and generate reference voltages for the DAC system – audio was not processed in the 2901 ALU section.
Many Siemens Teleperm and S5 PLCs used for industrial control were built using the 2900 series.
AT&T 3B20D processor.
Metheus / Barco Omega 400 and 500 Series graphics systems; four Am2901 chips (and eight microcode PROMs) were used to perform graphics operations on this 1982 display processor.
Geac Computer Corporation 2000, 6000, 8000, and 9000 were all based on 4 x AM2901 chips. The GEAC 9500 was based on the AM29101. The GEAC 2000 was used in pharmacies. The other models were used in library, banking, and insurance automation. The 2000 was a single processor unit. The 6000 and 8000 contained four processors, each dedicated to one of comms, disk, tape, or program processing. The 8000 had local processor memory whereas the 6000 did not. The 9000 and 9500 were AMP systems with up to 8 CPU modules.
AES Data Systems C20 Multiuser Word Processors. AES of Montreal designed a series of modules and systems based on their AES-800 bit-slice processors. 8- 12- and 16-bit buses were part of the design.
The Am2900 Family Data Book lists:
Am2901 – 4-bit bit-slice ALU (1975)
Am2902 – Look-Ahead Carry Generator
Am2903 – 4-bit-slice ALU, with hardware multiply
Am2904 – Status and Shift Control Unit
Am2905 – Bus Transceiver
Am2906 – Bus Transceiver with Parity
Am2907 – Bus Transceiver with Parity
Am2908 – Bus Transceiver with Parity
Am2909 – 4-bit-slice address sequencer
Am2910 – 12-bit address sequencer
Am2911 – 4-bit-slice address sequencer
Am2912 – Bus Transceiver
Am2913 – Priority Interrupt Expander
Am2914 – Priority Interrupt Controller
Am2915 – Quad 3-State Bus Transceiver
Am2916 – Quad 3-State Bus Transceiver
Am2917 – Quad 3-State Bus Transceiver
Am2918 – Instruction Register, Quad D Register
Am2919 – Instruction Register, Quad Register
Am2920 – Octal D-Type Flip-Flop
Am2921 – 1-to-8 Decoder
Am2922 – 8-Input Multiplexer (MUX)
Am2923 – 8-Input MUX
Am2924 – 3-Line to 8-Line Decoder
Am2925 – System Clock Generator and Driver
Am2926 – Schottky 3-State Quad Bus Driver
Am2927/Am2928 – Quad 3-State Bus Transceiver
Am2929 – Schottky 3-State Quad Bus Driver
Am2930 – Main Memory Program Control
Am2932 – Main Memory Program Control
Am2940 – Direct Memory Addressing (DMA) Generator
Am2942 – Programmable Timer/Counter/DMA Generator
Am2946/Am2947 – Octal 3-State Bidirectional Bus Transceiver
Am2948/Am2949 – Octal 3-State Bidirectional Bus Transceiver
Am2950/Am2951 – 8-bit Bidirectional I/O Ports
Am2954/Am2955 – Octal Registers
Am2956/Am2957 – Octal Latches
Am2958/Am2959 – Octal Buffers/Line Drivers/Line Receivers
Am2960 – Cascadable 16-bit Error Detection and Correction Unit
Am2961/Am2962 – 4-bit Error Correction Multiple Bus Buffers
Am2964 – Dynamic Memory Controller
Am2965/Am2966 – Octal Dynamic Memory Driver
Many of these chips also have 7400 series numbers such as the 74F2960 / Am2960.