Jump to content

4-bit computing

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Ffffrr (talk | contribs) at 04:45, 16 November 2022 (Importing Wikidata short description: "Computer architecture bit width"). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In computer architecture, 4-bit integers, or other data units are those that are 4 bits wide. Also, 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. Memory addresses (and thus address buses) for 4-bit CPUs are generally much larger than 4-bit (since only 16 memory locations would be very restrictive), such as 12-bit or more, while they could in theory be 8-bit. A group of four bits is also called a nibble and has 24 = 16 possible values.

Some of the first microprocessors had a 4-bit word length and were developed around 1970. Traditional (non-quantum) 4-bit computers are by now obsolete, while recent quantum computers are 4-bit,[1][2] but also based on qubits, such as the IBM Q Experience. See also: Bit slicing#Bit-sliced quantum computers.

The first commercial microprocessor was the binary-coded decimal (BCD-based) Intel 4004,[3][4] 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.

The Texas Instruments TMS 1000 (1974) was a 4-bit CPU; it had a Harvard architecture, with an on-chip instruction ROM, 8-bit-wide instructions and an on-chip data RAM with 4-bit words.[5]

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.[6]

The 4-bit processors were programmed in assembly language or Forth, e.g. "MARC4 Family of 4 bit Forth CPU"[7] (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,[8] and that all data types other than bitfields have a size that is a multiple of the character size[9][10][11]).

The 1970s saw the emergence of 4-bit software applications for mass markets like pocket calculators. During the 1980s 4-bit microprocessor 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 chip.

The Zilog Z80, although it is an 8-bit microprocessor, has a 4-bit ALU.[12][13]

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,[14] sometimes called "nybble-serial".[15]

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.[16][17][18]

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.[19]

4-bit CPUs/microcontrollers are very hard to find at sellers of semiconductors (including manufacturers' websites, since most if not all have discontinued), while can still be found "brand new" on Ebay.

Uses

While 32- and 64-bit processors are more prominent in modern consumer electronics, 4-bit CPUs can as of 2022 be bought online at down to $0.21 unit price for "used" chips (in bulk for 1000 units, or at $0.67 for low volume),[20][21] while an 8-bit microcontroller can (or could in 2021) be bought for $0.24 for a single one (also obsolete; and a non-obsolete 8-bit CPUs can be bought for $0.30 per unit, for 702 units at $210.60), a fraction of the 4-bit price, and even a single modern 32-bit microcontroller can be bought for $0.24 and ARM-based down to $0.72 in 2022, so it's unclear if 4-bit CPUs are still used for anything else than for replacement parts. For example, one bicycle computer specifies that it uses a "4 bit, 1-chip microcomputer".[22] Other typical uses include coffee makers, infrared remote controls,[23] and security alarms.[24]

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

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.

Binary Octal Decimal Hexadecimal
0000 0 0 0
0001 1 1 1
0010 2 2 2
0011 3 3 3
0100 4 4 4
0101 5 5 5
0110 6 6 6
0111 7 7 7
1000 10 8 8
1001 11 9 9
1010 12 10 A
1011 13 11 B
1100 14 12 C
1101 15 13 D
1110 16 14 E
1111 17 15 F

List of 4-bit processors

16-pin DIP
Intel C4004
infrared remote control PCB
an infrared remote control transmitter controlled by a NEC D63GS 4-bit microcontroller
20-pin PSOP
NEC D63GS: a 4-bit microcontroller for infrared remote control transmission
card-edge PCB
Olympia CD700 Desktop Calculator using the National Semiconductor MAPS MM570X bit-serial 4-bit microcontroller
16-pin DIP
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[26][27] – (discontinued because of Low demand. "Last ship date: 7 March 2015"[28])
  • 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[23][29] and μPD1724x[30] infrared remote control transmitter microcontrollers[31][32]
  • EM Microelectronic-Marin EM6600 family,[33] EM6580,[34][35] EM6682,[36] etc.
  • Epson S1C63 family
  • National Semiconductor "COPS I" and "COPS II" ("COP400") 4-bit microcontroller families[37]
  • National Semiconductor MAPS MM570X
  • Sharp SM590/SM591/SM595[38]: 26–34 
  • Sharp SM550/SM551/SM552[38]: 36–48 
  • Sharp SM578/SM579[38]: 49–64 
  • Sharp SM5E4[38]: 65–74 
  • Sharp LU5E4POP[38]: 75–82 
  • Sharp SM5J5/SM5J6[38]: 83–99 
  • Sharp SM530[38]: 100–109 
  • Sharp SM531[38]: 110–118 
  • Sharp SM500[38]: 119–127  (ROM 1197×8 bit, RAM 40×4 bit, a divider and 56-segment LCD driver circuit)
  • Sharp SM5K1[38]: 128–140 
  • Sharp SM4A[38]: 141–148 
  • Sharp SM510[38]: 149–158  (ROM 2772×8 bit, RAM 128×4 bit, a divider and 132-segment LCD driver circuit)
  • Sharp SM511/SM512[38]: 159–171  (ROM 4032×8 bit, RAM 128/142×4 bit, a divider and 136/200-segment LCD driver circuit)
  • Sharp SM563[38]: 172–186 

See also

References

  1. ^ "Qiskit/openqasm". GitHub. Retrieved 2020-11-16. bigadder.qasm: Quantum ripple-carry adder. 8-bit adder made out of 2 4-bit adders from adder.qasm.
  2. ^ Cross, Andrew W.; Bishop, Lev S.; Smolin, John A.; Gambetta, Jay M. (2017-07-13). "Open Quantum Assembly Language". arXiv:1707.03429 [quant-ph]. The only storage types of Open QASM (version 2.0) are classical and quantum registers, which are one-dimensional arrays of bits and qubits, respectively.
  3. ^ Mack, Pamela E. (2005-11-30). "The Microcomputer Revolution". Retrieved 2009-12-23.
  4. ^ "History in the Computing Curriculum" (PDF). Archived from the original (PDF) on 2011-07-19. Retrieved 2017-06-22.
  5. ^ TMS 1000 Series Data Manual (PDF). Texas Instruments. December 1976. Retrieved 2013-07-20.
  6. ^ "Rockwell PPS-4".
  7. ^ "Forth Chips". www.ultratechnology.com.
  8. ^ ISO/IEC 9899:1999 specification. p. 20, § 5.2.4.2.1.
  9. ^ ISO/IEC 9899:1999 specification. p. 37, § 6.2.6.1 (4).
  10. ^ Cline, Marshall. "C++ FAQ: the rules about bytes, chars, and characters".
  11. ^ "4-bit integer". cplusplus.com. Retrieved 2014-11-21.
  12. ^ 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).
  13. ^ Shirriff, Ken. "The Z-80 has a 4-bit ALU".
  14. ^ Hendrie, Gardner (2002-11-22). "Oral History of Edson (Ed) D. de Castro" (PDF) (Interview). p. 44.
  15. ^ "Nova 1200".
  16. ^ "The Saturn Processor". Retrieved 2015-12-23.
  17. ^ "Guide to the Saturn Processor". Retrieved 2014-01-14.
  18. ^ "Introduction to Saturn Assembly Language". Retrieved 2014-01-14.
  19. ^ "Desk Electronic Calculators: Casio AL-1000".
  20. ^ "4570 NEC | IC Chips". UTSOURCE. Retrieved 2022-10-17.
  21. ^ "UPD6700GH-3B7 Renesas,10+ | IC Chips". UTSOURCE. Retrieved 2020-07-02.
  22. ^ "Cateye Commuter Manual" (PDF). Retrieved 2014-02-11.
  23. ^ 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.
  24. ^ Haskell, Richard. "Introduction to Digital Logic and Microprocessors (Lecture 12.2)". Retrieved 2014-02-11.
  25. ^ Paul Reuvers and Marc Simons. Crypto Museum. "Barbie Typewriter". 2015.
  26. ^ "MARC4 4-bit Microcontrollers - Programmer's Guide" (PDF). Atmel. Archived from the original (PDF) on 2014-12-15. Retrieved 2014-01-14.
  27. ^ "MARC4 4-Bit Architecture". Atmel. Archived from the original on 2009-05-31.
  28. ^ "Product End-of-Life (EOL) Notification" (PDF). Atmel. 2014-03-07. Archived from the original (PDF) on 2016-08-07.
  29. ^ "μPD6P9 4-bit single-chip microcontroller for infrared remote control transmission" (PDF). documentation.renesas.com. Archived from the original (PDF) on 2016-03-27.
  30. ^ "μ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.
  31. ^ "Microcontrollers for Remote Controllers" (PDF). documentation.renesas.com. Archived from the original (PDF) on 2013-12-19.
  32. ^ "Mask ROM/ROMless Products 4/8bit Remote Control". Archived from the original on 2008-10-28.
  33. ^ Cravotta, Robert. "Embedded Processing Directory".
  34. ^ "EM6580". Archived from the original on 2013-12-19. Retrieved 2013-05-12.
  35. ^ "EM6580 low power Flash 4-bit microcontroller".
  36. ^ "EM6682".
  37. ^ Culver, John (2014-09-27). "National Semiconductor: The COP before the COPS". www.cpushack.com. Retrieved 2020-05-28.
  38. ^ 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.