The TMS1000 is a family of microcontrollers introduced by Texas Instruments in 1974.[1][2][3] It combines a 4-bit central processor unit, read-only memory (ROM), random access memory (RAM), and input/output (I/O) lines as a complete "computer on a chip". It was intended for embedded systems in automobiles, appliances, games, and measurement instruments. It was the first high-volume, general-purpose[4] commercial microcontroller. In 1974, chips in this family could be purchased in volume for around $2 each.[5] By 1979 about 26 million parts in this family were sold every year.[6]
The TMS 1000 is used in Texas Instruments' own Speak & Spell educational toy,[5] the Big Trak programmable toy vehicle and in the electronic game Simon.[7]
History
editTMS 0100 series
editThe Smithsonian Institution says TI engineers Gary Boone and Michael Cochran succeeded in creating the first microcontroller in 1971. The TMS1802NC was a single-chip microcontroller which was announced September 17, 1971 and implemented a four-function calculator. The TMS1802NC, despite its designation, was not part of the TMS 1000 series; it was later redesignated TMS0102 as part of the TMS 0100 series,[8] which was used in the TI Datamath calculator and the Sinclair Executive calculator.[9]
TMS 1000 series
editThe later TMS 1000 series went on the market in 1974. TI stressed the 4-bit TMS 1000 for use in pre-programmed embedded applications.[10][11][12][13][14]
A computer-on-a-chip combines the microprocessor core (CPU), memory, and I/O (input/output) lines onto one chip. The computer-on-a-chip patent, called the "microcomputer patent" at the time, U.S. patent 4,074,351, was awarded to Gary Boone and Michael J. Cochran of TI. Aside from this patent, the standard meaning of microcomputer is a computer using one or more microprocessors as its CPU(s), while the concept defined in the patent is more akin to a microcontroller.
Description
edit
|
The TMS1000 family eventually included variants in both the original PMOS logic and also in NMOS and CMOS. Product variations included different sizes of ROM and RAM, different I/O counts, and ROMless versions intended for development or for use with external ROM. The original TMS1000 had 1024 x 8 bits of ROM, 64 x 4 bits of RAM, and 23 input/output lines.
The TMS1000 family used mask-programmed ROM. Once the user had a debugged program ready to be committed to production, it would send the program to Texas Instruments who would then make a special mask to program the on-chip ROM. The ROM could not be altered in the field; the contents were fixed by the patterns laid down on the chip by the manufacturer. While this process had a high initial cost, the production cost was very low, making it suitable for high volume products (say, more than a few thousand items sold per year).
All internal data paths of the processor were 4 bits wide. Program ROM and data RAM were separately addressed as in a Harvard architecture; this became a typical characteristic of microcontrollers by many other manufacturers.
The ALU had a carry flag to indicate overflow and facilitate multiple precision arithmetic. On-chip RAM was addressed by X and Y registers, where Y had 4 bits and X had either 2 or 3 bits depending on the size of RAM on the part. The program counter was 6 bits wide, with "page" and "chapter" registers to address up to 2 KB of ROM program memory.
No stack was provided, but a register was provided to store the program counter and carry flag to allow for one level of subroutine (some members of the family allowed for 2 or 3 levels). No interrupt facility was provided.
Some models had as few as 4 I/O lines because they had no on-chip ROM and the limited number of package pins were needed to access off-chip program memory. One version had special outputs for driving a vacuum fluorescent display, and a programmable logic array useful for driving seven segment displays. Four input lines were provided for purposes such as sensing keyboard inputs, and a varying number of output lines were provided to control external devices, or to scan the rows of a keyboard matrix circuit.
PMOS versions ran on -9 or -15 volts and consumed around 6 mA, Output logic levels were therefore not compatible with TTL logic. The NMOS and CMOS parts ran on a TTL-style +5 volts and could interoperate with 5 volt logic.
Instruction sets varied slightly by model, with 43 instructions in the basic set and 54 available in some family members; instructions were 8 bits long. BCD arithmetic instructions were provided, but no instructions were available for logical AND or OR of registers.
Each instruction took between 10 and 15 microseconds to execute on the NMOS and PMOS parts, but some CMOS parts could be run as fast as 6 microseconds. The internal oscillator gave an effective clock speed of around 0.3 megahertz.
The TMS1000 parts were packaged in through-hole dual in-line packages with 28 or 40 pins, but some models for prototyping were in 64-pin packages. All versions had a temperature range of 0 to 70 degrees C.
Since these were intended as single-chip embedded systems, no special support chips (such as UARTs) were specifically made in the TMS 1000 family.[15]
References
edit- ^ Texas Instruments (2006). "Texas Instruments History 1970's". Archived from the original on 18 January 2006.
1974: Introduces TMS1000 one-chip microcomputer.
- ^ Texas Instruments (2005). "TMS 1000 One-Chip Microcomputers". Archived from the original on 13 February 2005. This is Texas Instruments' original 1974 announcement of the TMS1000 family.
- ^ Siewiorek, Daniel P.; Bell, C. Gordon; Newell, Allen, eds. (1982). "Part 3: Computer Classes, Section 1: Monolithic Microcomputers". Computer Structures: Principles and Examples. McGraw-Hill. p. 583. ISBN 0-07-057302-6. Retrieved 8 November 2017.
The TMS1000 was introduced in 1974 and used in the SR-16 calculator.
- ^ 1974: General-purpose microcontroller family is announced (Computer History Museum)
- ^ a b Zurawski, Richard (2009). Embedded Systems Handbook: Embedded Systems Design and Verification (2nd ed.). CRC Press. pp. 12–13. ISBN 978-1439807637.
- ^ Morton Jr., David L.; Gabriel, Joseph (2007). Electronics: The Life Story of a Technology. JHU Press. p. 113. ISBN 978-0801887734.
- ^ Austin, Michael (2016). "Ch. 1". Music Video Games: Performance, Politics, and Play. Bloomsbury Publishing. ISBN 978-1501308505.
- ^ Texas Instruments Calculator Chips (Calculator Technical Information)
- ^ "The Arrival of the "Calculator-on-a-Chip".
- ^ Seitz, Frederick; Einspruch, Norman G. (1998). Electronic Genie: The Tangled History of Silicon. University of Illinois Press. p. 229. ISBN 0252023838. "Electronic Genie: The Tangled History of Silicon", Frederick Seitz, Norman G.. Einspruch, University of Illinois
- ^ U.S. Patent no. 4,074,351 (TMS1802NC.)
- ^ Shirriff, Ken (August 30, 2016). "The Surprising Story of the First Microprocessors". IEEE Spectrum. 53 (9): 48–54. doi:10.1109/MSPEC.2016.7551353. S2CID 32003640.
- ^ Augarten, Stan (1983). The Most Widely Used Computer on a Chip: The TMS 1000. New Haven and New York: Ticknor & Fields. ISBN 0-89919-195-9. Archived from the original on 2010-02-17. Retrieved 2009-12-23.
{{cite book}}
:|work=
ignored (help) - ^ "STANDARD CALCULATOR ON A CHIP ANNOUNCED BY TEXAS INSTRUMENTS" (Press release). Texas Instruments. September 19, 1971. Archived from the original on 2006-02-18.
- ^ Money, S. A. (2014). Microprocessor Data Book (2nd ed.). Academic Press. pp. 35–37. ISBN 978-1483268705.
Further reading
edit- The Engineering Staff of Texas Instruments Incorporated, Semiconductor Group (1975). TMS 1000 Series MOS/LSI One-Chip Microcomputers (PDF).
- — (1975). TMS 1000 Series MOS/LSI One-Chip Microcomputers: Programmer's Reference Manual (PDF).
- — (December 1976). TMS 1000 Series Data Manual (PDF).
- Shirriff, Ken (November 2020). "Reverse engineering RAM storage in early Texas Instruments calculator chips".
- OpenCores (August 2021). "Verilog implementation of the TMS1000 chip".