4-bit processors were widely used in electronic calculators and other roles where decimal math was used, like electronic cash registers, microwave oven timers, and so forth. This is because a 4-bit value holds a single binary coded decimal (BCD) digit, making it a natural size for directly processing decimal values. As a 4-bit value is generally too small to hold a memory address for real-world programs or data, the address bus of these systems was generally larger. For instance, the canonical 4-bit microprocessor, the Intel 4004, had a 12-bit address format.
4-bit designs were used only for a short period when integrated circuits were still expensive, and were found primarily in cost-sensitive roles. While 4-bit computing is mostly obsolete, 4-bit values are still used in the same decimal-centric roles they were developed for, and modern implementations are generally much wider and process multiple 4-bit values in parallel. An example of such a system is the HP Saturn design of the 1980s. By the 1990s, most such uses had been replaced by general purpose binary designs.
History
20-pin PSOP – NEC D63GS: a 4-bit microcontroller for infrared remote control transmission16-pin DIP – Intel C4004Olympia CD700 Desktop Calculator using the National Semiconductor MAPS MM570X bit-serial 4-bit microcontrollerInfrared remote control PCB – an infrared remote control transmitter controlled by a NEC D63GS 4-bit microcontroller
A 4-bit processor may seem limited, but it is a good match for calculators, where each decimal digit fits into four bits.[1]
Some of the first microprocessors had a 4-bit word length and were developed around 1970. The first commercial microprocessor was the binary-coded decimal (BCD-based) Intel 4004,[2][3] developed for calculator applications in 1971; it had a 4-bit word length, but had 8-bit instructions and 12-bit addresses. It was succeeded by the Intel 4040, which added interrupt support and a variety of other new features.
The first commercial single-chip computer was the 4-bit Texas InstrumentsTMS 1000 (1974).[1] It contained a 4-bit CPU with a Harvard architecture and 8-bit-wide instructions, an on-chip instruction ROM, and an on-chip data RAM with 4-bit words.[4]
The Rockwell PPS-4 was another early 4-bit processor, introduced in 1972, which had a long lifetime in handheld games and similar roles. It was steadily improved and by 1975 been combined with several support chips to make a one-chip computer.[5]
The 4-bit processors were programmed in assembly language or Forth, e.g. "MARC4 Family of 4 bit Forth CPU"[6] (which is now discontinued) because of the extreme size constraint on programs and because common programming languages (for microcontrollers, 8-bit and larger), such as the C programming language, do not support 4-bit data types (C, and C++, and more languages require that the size of the char data type be at least 8 bits,[7] and that all data types other than bitfields have a size that is a multiple of the character size[8][9][10]).
The 1970s saw the emergence of 4-bit software applications for mass markets like pocket calculators. During the 1980s, 4-bit microprocessors were used in handheld electronic games to keep costs low.
In the 1970s and 1980s, a number of research and commercial computers used bit slicing, in which the CPU's arithmetic logic unit (ALU) was built from multiple 4-bit-wide sections, each section including a chip such as an Am2901 or 74181.
The Zilog Z80, although it is an 8-bit microprocessor, has a 4-bit ALU.[11][12]
Although the Data General Nova is a series of 16-bit minicomputers, the original Nova and the Nova 1200 internally processed numbers 4 bits at a time with a 4-bit ALU,[13] sometimes called "nybble-serial".[14]
The HP Saturn processors, used in many Hewlett-Packard calculators between 1984 and 2003 (including the HP 48 series of scientific calculators) are "4-bit" (or hybrid 64-/4-bit) machines; as the Intel 4004 did, they string multiple 4-bit words together, e.g. to form a 20-bit memory address, and most of the registers are 64 bits wide, storing 16 4-bit digits.[15][16][17]
In addition, some early calculators – such as the 1967 Casio AL-1000, the 1972 Sinclair Executive, and the aforementioned 1984 HP Saturn – had 4-bit datapaths that accessed their registers 4 bits (one BCD digit) at a time.[18]
^Shima, Masatoshi; Faggin, Federico; Ungermann, Ralph; Slater, Michael (2007-04-27). "Zilog Oral History Panel on the Founding of the Company and the Development of the Z80 Microprocessor" (PDF).
^Shirriff, Ken. "The Z-80 has a 4-bit ALU".
^Hendrie, Gardner (2002-11-22). "Oral History of Edson (Ed) D. de Castro" (PDF) (Interview). p. 44.
^"Nova 1200"
^"The Saturn Processor". Retrieved 2015-12-23.
^"Guide to the Saturn Processor". Retrieved 2014-01-14.
^"Introduction to Saturn Assembly Language". Retrieved 2014-01-14.
^ a b"μPD67, 67A, 68, 68A, 69 4-bit single-chip microcontroller for infrared remote control transmission" (PDF). documentation.renesas.com. Archived from the original (PDF) on 2016-01-06.
^Haskell, Richard. "Introduction to Digital Logic and Microprocessors (Lecture 12.2)". Archived from the original on 2014-02-22. Retrieved 2014-02-11.
^Paul Reuvers and Marc Simons. Crypto Museum. "Barbie Typewriter", 2015
^"MARC4 4-bit Microcontrollers – Programmer's Guide" (PDF). Atmel. Archived from the original (PDF) on 2014-12-15. Retrieved 2014-01-14.
^"MARC4 4-Bit Architecture". Atmel. Archived from the original on 2009-05-31.
^"Product End-of-Life (EOL) Notification" (PDF). Atmel. 2014-03-07. Archived from the original (PDF) on 2016-08-07.
^"μPD6P9 4-bit single-chip microcontroller for infrared remote control transmission" (PDF). documentation.renesas.com. Archived from the original (PDF) on 2016-03-27.
^"μPD17240, 17241, 17242, 17243, 17244, 17245, 17246 4-bit single-chip microcontrollers for small general-purpose infrared remote control transmitters" (PDF). documentation.renesas.com. Archived from the original (PDF) on 2016-03-27.
^"Microcontrollers for Remote Controllers" (PDF). documentation.renesas.com. Archived from the original (PDF) on 2013-12-19.
^"Mask ROM/ROMless Products 4/8bit Remote Control". Archived from the original on 2008-10-28.