Introduced in June
1976 and based on the
Texas Instruments 990 minicomputer CPU, the
TMS9900 was one of the first true
16-bit microprocessors (the first were probably
National Semiconductor IMP-16 or
AMD-2901 bit slice processor in 16 bit configuration). It was designed as a single chip version of the
TI 990 minicomputer series, much like the
Intersil 6100 was a single chip
PDP-8, and the
Fairchild 9440 and
Data General mN601 were both one chip versions of
Data General's
Nova.It had a 15-bit
address bus, a 16-bit
data bus, and three internal 16-bit
register (
PC, WP, and
ST). One unique feature, though, was that all general purpose user registers were actually kept in external memory. A single workspace register (WP)
pointed to the 16 register set (each register being 16 bits wide) in
RAM, so when a
subroutine was entered or an
interrupt was processed, only the single workspace register had to be changed - unlike some CPUs which required dozens or more register saves before acknowledging a
context switch.
This was feasible at the time because RAM was often faster than the
CPUs. A few modern designs, such as the
INMOS Transputers, use this same design using caches or rotating buffers, for the same reason of improved context switches. Other chips of the time, such as the
65xx series had a similar philosophy, using index registers, but the TMS 9900 went the farthest in this direction.
That wasn't the only positive feature of the chip. It had flexible interrupt-handling...
Read More