4-bit computing

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by InternetArchiveBot (talk | contribs) at 14:47, 25 September 2018 (Rescuing 2 sources and tagging 0 as dead. #IABot (v2.0beta9)). 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, memory addresses, 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, address buses, or data buses of that size. 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. The TMS 1000, the world's first single-chip microprocessor, 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.[1] 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.

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

The 4-bit processors were programmed in assembly language or Forth, e.g. "MARC4 Family of 4 bit Forth CPU"[7] 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 requires 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]). While larger than 4-bit values can be used by combining more than one manually, the language has to support the smaller values used in the combining. If not, assembly is the only option.[dubious ]

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]

Modern uses

While 32- and 64-bit processors are more prominent in modern consumer electronics, 4-bit CPUs continue to be used (usually as part of a microcontroller) in cost-sensitive applications that require minimal computing power. For example, one bicycle computer specifies that it uses a "4-bit 1-chip microcomputer".[14] Other typical uses include coffee makers, infrared remote controls,[15] and security alarms.[16]

Use of 4-bit processors has declined relative to 8-bit or even 32-bit processors, as they are hard to find cheaper in general computer suppliers' stores. The simplest kinds are not available in any of them, and others are "non-stock" and more expensive.[17] (A few expensive ones can be found, as of 2014, on eBay.)[18][19][20]

Electronics stores still carry, as of 2014, non-CPU/non-MCU 4-bit chips, such as counters.

As of 2015, most PC motherboards, especially laptop motherboards, use a 4-bit LPC bus (introduced in 1998) to connect the southbridge to the motherboard firmware flash ROM (UEFI or BIOS) and the Super I/O chip.[21][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.

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

See also

References

  1. ^ TMS 1000 Series Data Manual (PDF). Texas Instruments. December 1976. Retrieved July 20, 2013.
  2. ^ Mack, Pamela E. (November 30, 2005). "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. {{cite journal}}: Cite journal requires |journal= (help); Unknown parameter |dead-url= ignored (|url-status= suggested) (help)
  4. ^ "The Saturn Processor". Retrieved December 23, 2015.
  5. ^ "Guide to the Saturn Processor". Retrieved January 14, 2014.
  6. ^ "Introduction to Saturn Assembly Language". Retrieved January 14, 2014.
  7. ^ Forth Chips.
  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. ^ Marshall Cline. "C++ FAQ: the rules about bytes, chars, and characters".
  11. ^ "4-bit integer". cplusplus.com. Retrieved November 21, 2014.
  12. ^ Masatoshi Shima; Federico Faggin; Ralph Ungermann; Michael Slater. "Zilog Oral History Panel on the Founding of the Company and the Development of the Z80 Microprocessor".
  13. ^ Ken Shirriff. "The Z-80 has a 4-bit ALU".
  14. ^ "Cateye Commuter Manual" (PDF). Retrieved February 11, 2014.
  15. ^ a b μPD67, 67A, 68, 68A, 69 4-bit single-chip microcontroller for infrared remote control transmission
  16. ^ Haskell, Richard. "Introduction to Digital Logic and Microprocessors (Lecture 12.2)". Retrieved February 11, 2014.
  17. ^ "Embedded - Microcontrollers - Integrated Circuits (ICs) - DigiKey". www.digikey.com. Retrieved 9 April 2018.
  18. ^ "Other Integrated Circuits - eBay". eBay. Retrieved 9 April 2018.
  19. ^ "Motorola IC MC14500B / MC14500BCL ( 100% NEW ) - eBay". eBay. Retrieved 9 April 2018.
  20. ^ "KL1868VE1 Soviet CMOS Clone Matsushita MN15500 4bit MCU - eBay". eBay. Retrieved 9 April 2018.
  21. ^ Scott Mueller. "Upgrading and Repairing Laptops". 2004. p. 176.
  22. ^ David S. Lawyer. "Plug-and-Play-HOWTO: LPC Bus" 2007.
  23. ^ "MARC4 4-bit Microcontrollers - Programmer's Guide" (PDF). Atmel. Archived from the original (PDF) on 2014-12-15. Retrieved January 14, 2014.
  24. ^ "MARC4 4-Bit Architecture". Atmel. Archived from the original on May 31, 2009.
  25. ^ "Product End-of-Life (EOL) Notification" (PDF). Atmel. March 7, 2014. Archived from the original (PDF) on August 7, 2016.
  26. ^ μPD6P9 4-bit single-chip microcontroller for infrared remote control transmission
  27. ^ μPD17240, 17241, 17242, 17243, 17244, 17245, 17246 4-bit single-chip microcontrollers for small general-purpose infrared remote control transmitters
  28. ^ Microcontrollers for Remote Controllers
  29. ^ "Mask ROM/ROMless Products 4/8bit Remote Control". Archived from the original on October 28, 2008. {{cite web}}: Unknown parameter |deadurl= ignored (|url-status= suggested) (help)
  30. ^ Robert Cravotta. "Embedded Processing Directory"
  31. ^ "EM6580". Archived from the original on 2013-12-19. Retrieved 2013-05-12. {{cite web}}: Unknown parameter |dead-url= ignored (|url-status= suggested) (help)
  32. ^ "EM6580 low power Flash 4-bit microcontroller"
  33. ^ "EM6682"

External links