4비트 컴퓨팅
| 컴퓨터 아키텍처 비트 너비 |
|---|
| 비트 |
| 응용 프로그램 |
| 이진 부동소수점 정밀도 |
| 십진 부동소수점 정밀도 |
4비트 컴퓨팅(4-bit computing)은 정수 및 기타 데이터 단위가 4비트 폭인 컴퓨터 구조를 사용하는 것을 의미한다. 4비트 중앙 처리 장치(CPU)와 산술 논리 장치(ALU) 구조는 해당 크기의 프로세서 레지스터나 데이터 버스를 기반으로 하는 구조를 말한다. 4개의 비트 묶음을 니블이라고도 부르며, 24 = 16개의 가능한 값을 가질 수 있어 0에서 15까지의 범위를 나타낸다.
4비트 컴퓨팅은 대부분 구식이 되었으며, 즉 최대 크기로 4비트를 지원하거나 4비트 데이터 버스를 사용하는 CPU는 더 이상 구할 수 없다. 하지만 EM 마이크로일렉트로닉의 EM6580과 같은 4비트 마이크로컨트롤러는 2026년 기준[update] 기준으로 여전히 사용 가능하다.[1]
4비트 프로세서는 전자 계산기와 십진법 연산을 사용하는 금전등록기, 전자레인지 타이머 등과 같은 기타 장치에서 널리 사용되었다. 이는 4비트 값이 하나의 이진화 십진법(BCD) 자릿수를 담을 수 있어, 십진수 값을 직접 처리하기 위한 자연스러운 크기였기 때문이다. 4비트 값은 실제 프로그램이나 데이터를 위한 메모리 주소를 담기에는 일반적으로 너무 작았기 때문에, 이러한 시스템의 주소 버스는 대개 더 컸다. 예를 들어, 대표적인 4비트 마이크로프로세서인 인텔 4004는 12비트 주소 형식을 가지고 있었다.
4비트 설계는 집적 회로가 여전히 비쌌던 짧은 기간 동안만 사용되었으며, 주로 비용에 민감한 용도에서 발견되었다. 4비트 컴퓨팅은 대부분 구식이 되었지만, 4비트 값은 개발 당시와 같은 십진법 중심의 용도로 여전히 사용되며, 현대의 구현체들은 일반적으로 훨씬 더 넓은 대역폭을 가지며 다수의 4비트 값을 병렬로 처리한다. 1990년대에 이르러 이러한 용도의 대부분은 범용 이진 설계로 대체되었다.
역사
[편집]



4비트 프로세서는 제한적으로 보일 수 있지만, 각 십진 숫자가 4비트에 맞는 계산기에는 적합한 선택이다.[2]
초기 마이크로프로세서 중 일부는 4비트 워드 길이를 가졌으며 1970년경에 개발되었다. 최초의 상업용 마이크로프로세서는 이진화 십진법(BCD 기반)을 사용하는 인텔 4004였으며,[3][4] 1971년 계산기 응용 프로그램을 위해 개발되었다. 이 제품은 4비트 워드 길이를 가졌으나 8비트 명령어와 12비트 주소를 지원했다. 이후 인텔 4040이 그 뒤를 이었으며, 여기에는 인터럽트 지원 및 기타 여러 가지 새로운 기능이 추가되었다.
최초의 상업용 단일 칩 컴퓨터는 4비트 텍사스 인스트루먼트 TMS 1000(1974년)이었다.[2] 이 제품은 하버드 아키텍처와 8비트 폭 명령어, 온칩 명령어 ROM, 4비트 워드를 사용하는 온칩 데이터 RAM을 갖춘 4비트 CPU를 포함하고 있었다.[5]
로크웰 PPS-4는 1972년에 도입된 또 다른 초기 4비트 프로세서로, 휴대용 게임기 및 유사한 용도로 오랫동안 사용되었다. 이 제품은 지속적으로 개선되어 1975년에는 여러 지원 칩과 결합하여 원칩 컴퓨터를 구성했다.[6]
4비트 프로세서는 프로그램 크기에 대한 극심한 제약 때문에 어셈블리어나 포스로 프로그래밍되었으며, 예를 들어 "MARC4 4비트 포스 CPU 제품군"[7]이 있었다(현재는 단종). 마이크로컨트롤러용으로 널리 쓰이는 C 언어와 같은 일반적인 프로그래밍 언어는 4비트 데이터 타입을 지원하지 않는다(C, C++ 및 더 많은 언어에서는 `char` 데이터 타입의 크기가 최소 8비트여야 하며[8], 비트 필드를 제외한 모든 데이터 타입의 크기가 문자 크기의 배수여야 함을 요구한다[9][10][11]).
1970년대에는 포켓 계산기와 같은 대중 시장을 위한 4비트 소프트웨어 응용 프로그램이 등장했다. 1980년대 동안 4비트 마이크로프로세서는 비용 절감을 위해 휴대용 전자 게임에 사용되었다.
1970년대와 1980년대에 다수의 연구 및 상업용 컴퓨터는 비트 슬라이싱을 사용했는데, 여기서 CPU의 산술 논리 장치(ALU)는 여러 개의 4비트 폭 섹션으로 구성되었으며, 각 섹션에는 Am2901이나 74181과 같은 칩이 포함되었다.
자일로그 Z80(2024년 단종)은 8비트 마이크로프로세서임에도 불구하고 4비트 ALU를 가지고 있다.[12][13]
데이터 제너럴 노바는 16비트 미니컴퓨터 시리즈이지만, 초기 노바와 노바 1200은 내부적으로 4비트 ALU를 사용하여 숫자를 4비트씩 처리했으며,[14] 이를 때때로 "니블 직렬"이라고 부르기도 했다.[15]
1984년과 2003년 사이에 많은 휴렛 팩커드 계산기에 사용된 HP Saturn 프로세서(HP 48 시리즈 과학 계산기 포함)는 "4비트"(또는 하이브리드 64/4비트) 기계이다. 이들은 다수의 4비트 워드를 연결하여 20비트 메모리 주소를 형성하며, 대부분의 레지스터는 64비트 폭으로 16개의 4비트 숫자를 저장한다. 연산은 니블 직렬 방식으로 수행되었다.[16][17][18]
또한 1967년 카시오 AL-1000, 1972년 싱클레어 이그제큐티브, 앞서 언급한 1984년 HP Saturn과 같은 일부 초기 계산기들은 4비트(하나의 BCD 자릿수) 단위로 레지스터에 접근하는 4비트 데이터패스를 가지고 있었다.[19]
용도
[편집]
한 자전거 컴퓨터는 "4비트, 1칩 마이크로컴퓨터"를 사용한다고 명시하고 있다.[20] 다른 일반적인 용도로는 커피메이커, 리모컨,[21] 보안 경보기 등이 있다.[22]
암호화가 가능한 바비 타자기의 프로세서는 4비트 마이크로컨트롤러이다.[23]
여러 제조사가 초기 전자 게임에 4비트 마이크로컨트롤러를 사용했다:[24]
- 마텔의 Funtronics Jacks, Red Light Green Light, Tag, Plus One, Dalla$.
- 밀튼 브래들리의 Lightfight 및 1982년형 Electronic Battleship.
- 콜레코의 Head to Head Basketball.
- 내셔널 세미컨덕터의 Quiz Kid Racer.
- 엔텍스의 Space Invader.
- 텍사스 인스트루먼트의 My Little Computer.[25]
웨스턴 디지털은 자사의 WD2412 시계 기반으로 4비트 마이크로컨트롤러를 사용했다.[26]
그런디 뉴브레인 컴퓨터는 키보드, 테이프 입출력, 내장 16자 VF 영숫자 디스플레이를 관리하기 위해 4비트 마이크로컨트롤러를 사용한다.[27]
애플 리사는 키보드, 마우스, RTC 및 소프트 전원 스위치를 제어하기 위해 4비트 마이크로컨트롤러를 활용한다.[28]
세부 사항
[편집]4비트로 16개의 서로 다른 값을 생성할 수 있다. 모든 한 자릿수 십육진법 숫자는 4비트로 쓸 수 있다.
이진화 십진법은 십진법을 사용하여 숫자를 디지털로 인코딩하는 방식이며, 각 십진 숫자는 4비트로 표현된다.
4비트 프로세서 목록
[편집]
- 인텔 4004 (최초의 4비트 마이크로프로세서이자 1971년부터 상용화된 최초의 마이크로프로세서로 널리 알려짐, 1981년 단종)
- 인텔 4040 (1981년 단종)
- TMS 1000 (인텔 4004 이후 1974년부터 대량 생산된 최초의 상업용 마이크로컨트롤러; 현재는 단종)
- 아메리칸 마이크로시스템즈 S2000
- 아트멜 MARC4 코어[29][30] (수요 저조로 단종. 최종 출하일: 2015년 3월 7일[31])
- 에식스 SX 200
- 삼성 S3C7 (KS57 시리즈) 4비트 마이크로컨트롤러 (RAM: 512 ~ 5264 니블, 6MHz 클럭)
- 도시바 TLCS-47 시리즈
- HP Saturn
- NEC μPD75X
- NEC μCOM-4
- NEC (현재 르네사스) μPD612xA (단종), μPD613x, μPD6x[21][32] 및 μPD1724x[33] 적외선 리모컨 송신기 마이크로컨트롤러[34][35]
- EM 마이크로일렉트로닉-마린 EM6600 제품군,[36] EM6580,[37][38] EM6682,[39] 등.
- 엡손 S1C63 제품군
- 내셔널 세미컨덕터 "COPS I" 및 "COPS II" ("COP400") 4비트 마이크로컨트롤러 제품군[40]
- 내셔널 세미컨덕터 MAPS MM570X
- 로크웰 PPS-4
- 샤프 SM590/SM591/SM595[41]: 26–34
- 샤프 SM550/SM551/SM552[41]: 36–48
- 샤프 SM578/SM579[41]: 49–64
- 샤프 SM5E4[41]: 65–74
- 샤프 LU5E4POP[41]: 75–82
- 샤프 SM5J5/SM5J6[41]: 83–99
- 샤프 SM530[41]: 100–109
- 샤프 SM531[41]: 110–118
- 샤프 SM500[41]: 119–127 (ROM 1197×8비트, RAM 40×4비트, 분주기 및 56세그먼트 LCD 드라이버 회로)
- 샤프 SM5K1[41]: 128–140
- 샤프 SM4A[41]: 141–148
- 샤프 SM510[41]: 149–158 (ROM 2772×8비트, RAM 128×4비트, 분주기 및 132세그먼트 LCD 드라이버 회로)
- 샤프 SM511/SM512[41]: 159–171 (ROM 4032×8비트, RAM 128/142×4비트, 분주기 및 136/200세그먼트 LCD 드라이버 회로)
- 샤프 SM563[41]: 172–186
각주
[편집]- ↑ “Products”. 《EM Microelectronic》. 2026년 5월 17일에 확인함.
- 1 2 Ken Shirriff. “Reverse engineering RAM storage in early Texas Instruments calculator chips”.
- ↑ Mack, Pamela E. (2005년 11월 30일). “The Microcomputer Revolution”. 2009년 12월 23일에 확인함.
- ↑ “History in the Computing Curriculum” (PDF). 2011년 7월 19일에 원본 문서 (PDF)에서 보존된 문서. 2017년 6월 22일에 확인함.
- ↑ 《TMS 1000 Series Data Manual》 (PDF). Texas Instruments. December 1976. 2013년 7월 20일에 확인함.
- ↑ “Rockwell PPS-4”.
- ↑ “Forth Chips”. 《www.ultratechnology.com》.
- ↑ 《ISO/IEC 9899:1999 specification》. p. 20, § 5.2.4.2.1. 2023년 7월 24일에 확인함.
- ↑ 《ISO/IEC 9899:1999 specification》. p. 37, § 6.2.6.1 (4). 2023년 7월 24일에 확인함.
- ↑ Cline, Marshall. “C++ FAQ: the rules about bytes, chars, and characters”.
- ↑ “4-bit integer”. cplusplus.com. 2014년 11월 21일에 확인함.
- ↑ Shima, Masatoshi; Faggin, Federico; Ungermann, Ralph; Slater, Michael (2007년 4월 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). (인터뷰). 44쪽.
- ↑ "Nova 1200"
- ↑ “The Saturn Processor”. 2015년 12월 23일에 확인함.
- ↑ “Guide to the Saturn Processor”. 2014년 1월 14일에 확인함.
- ↑ “Introduction to Saturn Assembly Language”. 2014년 1월 14일에 확인함.
- ↑ "Desk Electronic Calculators: Casio AL-1000"
- ↑ “Cateye Commuter Manual” (PDF). 2014년 2월 11일에 확인함.
- 1 2 “μPD67, 67A, 68, 68A, 69 4-bit single-chip microcontroller for infrared remote control transmission” (PDF). 《documentation.renesas.com》. 2016년 1월 6일에 원본 문서 (PDF)에서 보존된 문서.
- ↑ Haskell, Richard. “Introduction to Digital Logic and Microprocessors (Lecture 12.2)”. 2014년 2월 22일에 원본 문서에서 보존된 문서. 2014년 2월 11일에 확인함.
- ↑ Paul Reuvers and Marc Simons. Crypto Museum. "Barbie Typewriter", 2015
- ↑ “National Semiconductor COP400”. Sean Riddle. 2021년 12월 24일에 확인함.
- ↑ Woerner, Joerg. “Texas Instruments My Little Computer”. 《Datamath Calculator Museum》. 2024년 6월 19일에 확인함.
- ↑ “1983 Components Catalog” (PDF). Western Digital. 621쪽. 2021년 12월 24일에 확인함.
- ↑ “COP420 4-Bit Processor - Newbrain”. 2025년 6월 25일에 원본 문서에서 보존된 문서. 2021년 12월 30일에 확인함.
- ↑ “Apple Lisa 341-0064A (COP421)”. 《Visual6502》. 2021년 12월 24일에 확인함.
- ↑ “MARC4 4-bit Microcontrollers – Programmer's Guide” (PDF). Atmel. 2014년 12월 15일에 원본 문서 (PDF)에서 보존된 문서. 2014년 1월 14일에 확인함.
- ↑ “MARC4 4-Bit Architecture”. Atmel. 2009년 5월 31일에 원본 문서에서 보존된 문서.
- ↑ “Product End-of-Life (EOL) Notification” (PDF). Atmel. 2014년 3월 7일. 2016년 8월 7일에 원본 문서 (PDF)에서 보존된 문서.
- ↑ “μPD6P9 4-bit single-chip microcontroller for infrared remote control transmission” (PDF). 《documentation.renesas.com》. 2016년 3월 27일에 원본 문서 (PDF)에서 보존된 문서.
- ↑ “μPD17240, 17241, 17242, 17243, 17244, 17245, 17246 4-bit single-chip microcontrollers for small general-purpose infrared remote control transmitters” (PDF). 《documentation.renesas.com》. 2016년 3월 27일에 원본 문서 (PDF)에서 보존된 문서.
- ↑ “Microcontrollers for Remote Controllers” (PDF). 《documentation.renesas.com》. 2013년 12월 19일에 원본 문서 (PDF)에서 보존된 문서.
- ↑ “Mask ROM/ROMless Products 4/8bit Remote Control”. 2008년 10월 28일에 원본 문서에서 보존된 문서.
- ↑ Cravotta, Robert. “Embedded Processing Directory”.
- ↑ “EM6580”. 2013년 12월 19일에 원본 문서에서 보존된 문서. 2013년 5월 12일에 확인함.
- ↑ “EM6580”.
- ↑ “EM6682”.
- ↑ Culver, John (2014년 9월 27일). “National Semiconductor: The COP before the COPS”. 《www.cpushack.com》. 2020년 5월 28일에 확인함.
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 《Sharp Microcomputers Data Book》 (PDF). September 1990. 2018년 1월 5일에 확인함.