DATAMATH  CALCULATOR  MUSEUM

Texas Instruments TMS0120

• Features

Texas Instruments announced on September 17, 1971 with the TMS1802NC the first available standard calculator building block on a chip, it was later renamed into TMS0102. The chip integrates 3,520 Bits Read-Only program Memory (ROM, 320 Words x 11 Bits), a 182-bit Serial-Access Memory (SAM, 3 Registers * 13 Digits, 2 * 13 Bit-Flags) and a decimal arithmetic logic unit as well as control, timing, and output decoders but no drivers for the display. These function blocks of the chip add up to an overall complexity of roughly 5,000 transistors.

Due to a flexible design concept of the TMS0100 architecture with both programmable PLA and ROM techniques a lot of design variations appeared. These include two different types of the key-matrix, 8 or 10 digits of 7- or 8-segmented outputs. The polarity of the segment output can be programmed. Some displays such as LCD (Liquid-Crystal-Display) are easier to interface with inverted polarity. The blanking of the segments is also programmable within limits to facilitate the interface with certain displays such as Panaplex™. Even the style of the numbers 6, 7 and 9 varied among the family members.

A typical calculator built around the TMS0100 family performs the four basic functions +, −, ×, and ÷ with either Constant or Chain operation. The calculations are done on a floating decimal-point operation but the display of the results could be selected between the floating-point or a fixed-point format. The keyboard scanning, debouncing and encoding in performed inside the chip. The display outputs are fully decoded with a leading zero suppression and multiplexed.

The TMS0120 introduced in November 1972 with the SR-10 "slide Rule" calculator uses a novel approach to add to the 8-digit Mantissa in scientific notation a 2-digit Exponent and repurposing the unused Segment H for the minus sign of the Exponent. While from a technical point of view just a variation of the TMS0100, could it be called from a historical point of view the first single-chip scientific calculator circuit and we decided to feature the TMS0120 as a "stand-alone" chip leading not only to the TMS0200 Building Blocks for Desktop Calculators introduced in 1973 but most important to the TMC0500 Building Blocks for Scientific and Programmable Calculators introduced with the "Slide Rule" calculator SR-50 in January 1974 and paving all the way to the legendary TI Programmable 59 and the amazing SR-60A Prompting Desktop calculator.

Don't miss the miracle of the Sinclair Scientific!

Gordon Moore, the co-founder of Fairchild Semiconductor and Intel predicted already in 1965 that the numbers of transistors in Large-scale Integration (LSI) chips would double every year for the next 10 years. In 1975, looking forward to the next decade, he revised the forecast to doubling every two years, a compound annual growth rate (CAGR) of 41%. While Moore did not use empirical evidence in forecasting that the historical trend would continue, his prediction held since 1975 and has since become known as a "law". Main enablers were and are a combination of both reducing the size of the individual components (process shrink) and increasing the chip size (yield improvement). The manufacturing costs of an Integrated Circuit (IC) are calculated with:

• IC cost = (Die cost + Testing cost + Packaging cost) / Final test yield

With the die cost roughly proportional to the die area, testing and packaging costs roughly proportional to the pin count, and the final test yield mostly inverse proportional to the die area, goals are well defined: Keep the die size as small as possible for a set of requirements agreed on. With both ROM (Read-Only Memory) and RWM (Read-Write Memory) sizes the main contributors to the die area of a single-chip calculator circuit and shift-register based data memory (SAM, Serial-Access Memory) of Register Processors denser than RAM (Random-Access Memory) of Digit Processors, Texas Instruments expanded the TMS0100 family two years after its introduction into three different branches:

• TMS0600: Increased ROM (384 Words x 11 Bits), Identical SAM (13 Digits Registers), external display drivers. Process shrink, higher functionality
• TMS0700: Identical ROM (320 Words x 11 Bits), Identical SAM (13 Digits Registers), external display drivers. Process shrink, identical functionality, cost reduction of IC
• TMS0800: Identical ROM (320 Words x 11 Bits), Reduced SAM (11 Digits Registers), integrated segment drivers. Process shrink, reduced functionality, higher integration

Please notice that the members of the TMS0700 family were still marketed and marked as TMS0100 but both the die and the bottom of the chip package usually sport a TMS0700 marking.

• Family Members and Applications

Type Calculators Keyboard Constant
(M/D)
Digits Fixed DP Rounding Special
Functions
Seg./Dig.
Blanking
(6,7,9)
Font
Seg. H Entry
Overflow
Calculating
Overflow
Pref.
Type
TMS0120 SR-10, Montomery Ward P300, Radio Shack EC-425 [+][-][=]   8+2 Float NONE [EE][1/x]
[x2][√x]
NONE
NONE
     

 

• Architecture

  Description Comments
Architecture Single-chip Calculator First Generation
Category Register Processor 44-bit registers (11 digits * 4 Bits)
Related TMS0100
TMS0600
TMS0700
TMS0800
Generic Design
Larger ROM
Die-shrink
Integrated Segment Drivers
ROM Size 3,520 Bits 320 Words * 11 Bits
RAM Size 182 Bits 3 Registers * 13 Digits,
2 * 13 Bit-Flags
Outputs 11+1 Digits, 8+1 Segments Segment H repurposed for the minus sign of the Exponent
External Digit and Segment Drivers
Inputs 4 Keyboard
0 Miscellaneous
Digit to Keyboard Scan-Matrix

• Technical Specifications

Parameter Min Typ Max Unit Comments
VSS   0   V   
VDD -8.1 -7.2 -6.6 V   
VGG -16.2 -14.4 -13.2 V   
IDD   17 25 mA  
IGG   10 15 mA  
CK  100 250 400 kHz  Level between VSS and VGG       

• Technology

The original TMS0120 was manufactured in a 10 um metal gate PMOS process (metal width = 0.40 mil / 10 um, metal spacing = 0.40 mil / 10 um, diffusion width = 0.40 mil / 10 um, diffusion spacing = 0.4 mil / 10 um).
The die size of the TMS0120 is approximately 230 mils * 230 mils / 5.8 mm * 5.8 mm.

• Packaging

The TMS0120 uses a standard 0.6” wide 28-pin DIP (Dual In-line Package with a 0.1” / 2.54 mm lead pitch).

• Pin Configuration

Pin IO Function Pin IO Function
1 I Clock Input 28 V Common Voltage
2 I Keymatrix input P 27 I Keymatrix input Q
3 O Digit driver 1 (EXP LSD) 26 I Keymatrix input N
4 O Digit driver 2 (EXP MSD) 25 I Keymatrix input O
5 O Digit driver 3 (LSD) 24 O Segment driver DP
6 O Digit driver 4 23 O Segment driver H/G (EXP)
7 O Digit driver 5 22 O Segment driver G
8 O Digit driver 6 21 O Segment driver F
9 O Digit driver 7 20 O Segment driver E
10 O Digit driver 8 19 O Segment driver D
11 O Digit driver 9  18 O Segment driver C
12 O Digit driver 10 (MSD) 17 O Segment driver B
13 O Digit driver 11 (OVER) 16 O Segment driver A
14 V Negative Voltage VDD 15 V Negative Voltage VGG
The Segment drivers A-G/H and DP (Decimal Point) are connected to the display in the pictured way. The TMS0120 repurposes the Segment H for the minus sign of the Exponent in the pictured way.

• Keyboard Scan-Matrix

The keyboard of the SR-10 calculator based on the TMS0120 consist of a x/y-matrix connected to the digit driver outputs D1-D11 and the keymatrix inputs KN (Numbers), KO (Operations) and KP (Additional Operations).

Scanning is performed in D11 → D1 direction at a rate of about 584 Hz:

• State Time = 3 Clocks = 0.012 ms @ CK=250 kHz
• Digit Time = 13 States (1 Instruction Cycle) = 0.156 ms @ CK=250 kHz
• Scan Time = 11 Digit Times (D1 to D11) = 1.712 ms @ CK=250 kHz
 

TMS0120

  KN KO KP KQ
D1 9    
D2 8 +    
D3 7 ×    
D4 6 ÷ x  
D5 5 CD    
D6 4 EE 1/x  
D7 3 +/−    
D8 2 = x2  
D9 1 .    
D10 0      
D11   C    

• Display

The first version of the SR-10 calculator based on the TMS0120 made use of two TIL360 arrays with 6 digits, each soldered on a printed circuit board (PCB), while later version of the SR-10 made use of twelve small 7-segment display modules soldered on a PCB. Texas Instruments introduced together with the TMS0120 corresponding segment drivers (SN75493) and digit drivers (SN75494).

horizontal rule

If you have additions to the above datasheet please email: joerg@datamath.org.

© Joerg Woerner, July 12, 2021. No reprints without written permission.