Texas Instruments TMS9900

From TekWiki
Jump to navigation Jump to search
TI TMS9900.jpg

The Texas Instruments TMS9900 is a 16-bit microprocessor introduced in 1976.

The architecture is purely 16-bit, with a 16-bit data bus and a 15-bit address bus for a 32kWords (64KBytes) capacity. Addresses refer to bytes with big-endian ordering convention (TI labeled the most significant address and data lines "A0" and "D0", respectively).

There are three internal 16-bit registers (program counter, status register, and workspace pointer). The latter points to a base address in external RAM where the processor's 16 general-purpose user registers (each 16 bits wide) are kept.

There is no stack and no stack pointer; instead, the TMS9900 has branch instructions that save the program counter to a register and change the register context. Register context switch is also used for interrupts. The processor can be paused with the address bus tri-stated for external direct memory access (DMA).

The TMS9900 was implemented in an N-channel Si-gate MOS process and requires 5 V, −5 V and +12 V supplies. It came packaged in a 64-pin, 0.9" wide DIP.

Maximum clock frequency is 3 MHz, often generated from a 48 MHz oscillator using a TIM9904 (74LS362) clock generator, because the CPU requires four non-overlapping clock phases. The shortest instructions require eight clock cycles or 2.7 μs to complete.

Pinout (click to enlarge)

The TMS9980 and TMS9981 were versions with an external 8-bit data bus. The TMS9989 is an improved 9900 that saw some appication in military hardware.


Used in

Supported by

See also Microprocessor support table