4-bit computing

Computer architecture bit width

Computer architecture bit widths
Bit
  • 1
  • 4
  • 8
  • 12
  • 16
  • 18
  • 24
  • 26
  • 28
  • 30
  • 31
  • 32
  • 36
  • 45
  • 48
  • 60
  • 64
  • 128
  • 256
  • 512
  • bit slicing
Application
Binary floating-point precision
Decimal floating-point precision
  • v
  • t
  • e

4-bit computing is the use of computer architectures in which integers and other data units are 4 bits wide. 4-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on registers or data buses of that size. A group of four bits is also called a nibble and has 24 = 16 possible values.

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 transmission
16-pin DIP - Intel C4004
Olympia CD700 Desktop Calculator using the National Semiconductor MAPS MM570X bit-serial 4-bit microcontroller
Infrared 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 Instruments TMS 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]

Uses

One bicycle computer specifies that it uses a "4 bit, 1-chip microcomputer".[19] Other typical uses include coffee makers, infrared remote controls,[20] and security alarms.[21]

The processor in Barbie typewriters that can encrypt is a 4-bit microcontroller.[22]

Details

With 4 bits, it is possible to create 16 different values. All single-digit hexadecimal numbers can be written with four bits.

Binary-coded decimal is a digital encoding method for numbers using decimal notation, with each decimal digit represented by four bits.

List of 4-bit processors

National Semiconductor MM5700CA/D bit-serial 4-bit microcontroller
  • Intel 4004 (first 4-bit microprocessor from 1971, though Four-Phase Systems AL1 from 1969 is older, discontinued 1981)
  • Intel 4040 (discontinued 1981)
  • TMS 1000 (the first high-volume commercial microcontroller, from 1974, after Intel 4004; now discontinued)
  • Atmel MARC4 core[23][24] – (discontinued because of Low demand. "Last ship date: 7 March 2015"[25])
  • Samsung S3C7 (KS57 Series) 4-bit microcontrollers (RAM: 512 to 5264 nibbles, 6 MHz clock)
  • Toshiba TLCS-47 series
  • HP Saturn
  • NEC μPD75X
  • NEC μCOM-4
  • NEC (now Renesas) μPD612xA (discontinued), μPD613x, μPD6x[20][26] and μPD1724x[27] infrared remote control transmitter microcontrollers[28][29]
  • EM Microelectronic-Marin EM6600 family,[30] EM6580,[31][32] EM6682,[33] etc.
  • Epson S1C63 family
  • National Semiconductor "COPS I" and "COPS II" ("COP400") 4-bit microcontroller families[34]
  • National Semiconductor MAPS MM570X
  • Sharp SM590/SM591/SM595[35]: 26–34 
  • Sharp SM550/SM551/SM552[35]: 36–48 
  • Sharp SM578/SM579[35]: 49–64 
  • Sharp SM5E4[35]: 65–74 
  • Sharp LU5E4POP[35]: 75–82 
  • Sharp SM5J5/SM5J6[35]: 83–99 
  • Sharp SM530[35]: 100–109 
  • Sharp SM531[35]: 110–118 
  • Sharp SM500[35]: 119–127  (ROM 1197×8 bit, RAM 40×4 bit, a divider and 56-segment LCD driver circuit)
  • Sharp SM5K1[35]: 128–140 
  • Sharp SM4A[35]: 141–148 
  • Sharp SM510[35]: 149–158  (ROM 2772×8 bit, RAM 128×4 bit, a divider and 132-segment LCD driver circuit)
  • Sharp SM511/SM512[35]: 159–171  (ROM 4032×8 bit, RAM 128/142×4 bit, a divider and 136/200-segment LCD driver circuit)
  • Sharp SM563[35]: 172–186 

See also

References

  1. ^ a b Ken Shirriff. "Reverse engineering RAM storage in early Texas Instruments calculator chips".
  2. ^ Mack, Pamela E. (2005-11-30). "The Microcomputer Revolution". Retrieved 2009-12-23.
  3. ^ "History in the Computing Curriculum" (PDF). Archived from the original (PDF) on 2011-07-19. Retrieved 2017-06-22.
  4. ^ TMS 1000 Series Data Manual (PDF). Texas Instruments. December 1976. Retrieved 2013-07-20.
  5. ^ "Rockwell PPS-4".
  6. ^ "Forth Chips". www.ultratechnology.com.
  7. ^ ISO/IEC 9899:1999 specification. p. 20, § 5.2.4.2.1. Retrieved 2023-07-24.
  8. ^ ISO/IEC 9899:1999 specification. p. 37, § 6.2.6.1 (4). Retrieved 2023-07-24.
  9. ^ Cline, Marshall. "C++ FAQ: the rules about bytes, chars, and characters".
  10. ^ "4-bit integer". cplusplus.com. Retrieved 2014-11-21.
  11. ^ 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).
  12. ^ Shirriff, Ken. "The Z-80 has a 4-bit ALU".
  13. ^ Hendrie, Gardner (2002-11-22). "Oral History of Edson (Ed) D. de Castro" (PDF) (Interview). p. 44.
  14. ^ "Nova 1200"
  15. ^ "The Saturn Processor". Retrieved 2015-12-23.
  16. ^ "Guide to the Saturn Processor". Retrieved 2014-01-14.
  17. ^ "Introduction to Saturn Assembly Language". Retrieved 2014-01-14.
  18. ^ "Desk Electronic Calculators: Casio AL-1000"
  19. ^ "Cateye Commuter Manual" (PDF). Retrieved 2014-02-11.
  20. ^ 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.
  21. ^ Haskell, Richard. "Introduction to Digital Logic and Microprocessors (Lecture 12.2)". Archived from the original on 2014-02-22. Retrieved 2014-02-11.
  22. ^ Paul Reuvers and Marc Simons. Crypto Museum. "Barbie Typewriter", 2015
  23. ^ "MARC4 4-bit Microcontrollers – Programmer's Guide" (PDF). Atmel. Archived from the original (PDF) on 2014-12-15. Retrieved 2014-01-14.
  24. ^ "MARC4 4-Bit Architecture". Atmel. Archived from the original on 2009-05-31.
  25. ^ "Product End-of-Life (EOL) Notification" (PDF). Atmel. 2014-03-07. Archived from the original (PDF) on 2016-08-07.
  26. ^ "μPD6P9 4-bit single-chip microcontroller for infrared remote control transmission" (PDF). documentation.renesas.com. Archived from the original (PDF) on 2016-03-27.
  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.
  28. ^ "Microcontrollers for Remote Controllers" (PDF). documentation.renesas.com. Archived from the original (PDF) on 2013-12-19.
  29. ^ "Mask ROM/ROMless Products 4/8bit Remote Control". Archived from the original on 2008-10-28.
  30. ^ Cravotta, Robert. "Embedded Processing Directory".
  31. ^ "EM6580". Archived from the original on 2013-12-19. Retrieved 2013-05-12.
  32. ^ "EM6580".
  33. ^ "EM6682".
  34. ^ Culver, John (2014-09-27). "National Semiconductor: The COP before the COPS". www.cpushack.com. Retrieved 2020-05-28.
  35. ^ a b c d e f g h i j k l m n Sharp Microcomputers Data Book (PDF). September 1990. Retrieved 2018-01-05.

External links

  • Saturn CPU
  • "Products: High Performance 4-bit Microcontrollers (S1C63 family)". Epson. Archived from the original on 2013-07-29.
  • Considerations for 4-bit processing
  • v
  • t
  • e
Processor technologies
Models
Architecture
Instruction set
architectures
Types
Instruction
sets
Execution
Instruction pipelining
Hazards
Out-of-order
Speculative
Parallelism
Level
Multithreading
Flynn's taxonomy
Processor
performance
Types
By application
Systems
on chip
Hardware
accelerators
Word size
Core count
Components
Functional
units
Logic
Registers
Control unit
Datapath
Circuitry
Power
management
Related