인텔 MCS-48

오른쪽|섬네일|UV EPROM이 있는 8749
섬네일|오른쪽|HP3478A 멀티미터에 사용된 인텔 8049 마이크로컨트롤러. 이 칩은 1984년 둘째 주에 제조되었다.
섬네일|오른쪽|인텔 8749 다이

+ 인텔 8048 레지스터 09 08 07 06 05 04 03 02 01 00 (비트 위치) 주요 레지스터   A Accumulator PC Program Counter 프로그램 상태 워드   CY AC FO BS 1 스택 참고: 다른 모든 프로그래머가 볼 수 있는 레지스터 및 스택은 RAM에 할당된다.

MCS-48 마이크로컨트롤러 시리즈는 인텔의 첫 번째 마이크로컨트롤러로, 1976년에 처음 출시되었다. 초기 구성원으로는 8048, 8035, 8748이 있다. 8048은 이 제품군에서 가장 유명한 구성원이라고 할 수 있다. 처음에는 이 제품군이 NMOS (n형 금속 산화물 반도체) 기술을 사용하여 생산되었다. 1980년대 초에는 CMOS 기술로도 제공되었다. 이 기술을 여전히 사용하는 구형 설계를 지원하기 위해 1990년대까지 제조되었다.

MCS-48 시리즈는 내부 또는 외부 프로그램 ROM과 64에서 256바이트의 내부(온칩) RAM을 갖춘 수정된 하버드 아키텍처를 사용한다. I/O는 프로그램 및 데이터와 분리된 자체 주소 공간에 매핑된다.

MCS-48 시리즈는 결국 매우 성공적인 MCS-51 시리즈로 대체되었지만, 저렴한 비용, 넓은 가용성, 메모리 효율적인 1바이트 명령어 세트, 그리고 성숙한 개발 도구 덕분에 2000년까지도 상당히 인기를 유지했다. 이 때문에 TV 리모컨, 컴퓨터 키보드, 장난감과 같이 대량 생산되고 비용에 민감한 소비자 가전 제품에 사용되었다.

 변형 
8049는 2KB의 마스크 ROM (8748 및 8749는 EPROM을 가졌다)을 가지고 있으며, 이는 4KB의 외부 ROM으로 대체될 수 있다. 또한 128 바이트의 RAM과 27개의 I/O 포트를 갖추고 있다. 마이크로컨트롤러의 발진기 블록은 클록 입력 주파수를 3으로 나눈 다음, 그 결과를 다시 5개의 머신 상태로 나눈다. 최대 11 MHz의 크리스탈 주파수를 사용하면 단일 사이클 명령어의 0.73 MIPS가 생성된다. 명령어의 약 70%는 단일 바이트 및 단일 사이클 명령어이지만, 30%는 두 사이클 또는 두 바이트가 필요하므로 일반적인 성능은 0.5 MIPS에 더 가깝다.

+마이크로컨트롤러 장치  내부            메모리       비고 8020    1K × 8 ROM          64 × 8 RAM   8048의 부분 집합, 20핀, 13 I/O 라인만 8021    1K × 8 ROM          64 × 8 RAM   8048의 부분 집합, 28핀, 21 I/O 라인 8022    2K × 8 ROM          64 × 8 RAM   8048의 부분 집합, A/D-변환기 8035    없음                64 × 8 RAM   8038    없음                64 × 8 RAM   8039    없음                128 × 8 RAM  8040    없음                256 × 8 RAM  8048    1K × 8 ROM          64 × 8 RAM   27× I/O 포트 8049    2K × 8 ROM          128 × 8 RAM  27× I/O 포트 8050    4K x 8 ROM          256 × 8 RAM  8648    1K × 8 OTP EPROM    64 × 8 RAM   공장 OTP EPROM 8748    1K × 8 EPROM        64 × 8 RAM   4K 프로그램 메모리 확장 가능, 2× 8비트 타이머, 27× I/O 포트 8749    2K × 8 EPROM        128 × 8 RAM  2× 8비트 타이머, 27× I/O 포트 87P50   외부 ROM 소켓     256 × 8 RAM  2758/2716/2732 EPROM용 피기백 소켓 있음

섬네일|인텔 P8242 - AT 호환 컴퓨터용 피닉스 펌웨어를 탑재한 키보드 컨트롤러
섬네일|내셔널 세미컨덕터 NS87P50D-6 – 87P50 피기백 마이크로컨트롤러의 2차 공급원
+범용 주변 장치 인터페이스 장치  내부            메모리       비고 8041     1K × 8 ROM         64 × 8 RAM   범용 주변 장치 인터페이스 (UPI) 8041AH   1K × 8 ROM         128 × 8 RAM  UPI 8741A    1K × 8 EPROM       64 × 8 RAM   UPI, 8041의 EPROM 버전 8741AH   1K × 8 OTP EPROM   128 × 8 RAM  UPI, 8041AH의 OTP EPROM 버전 8042AH   2K × 8 ROM         256 × 8 RAM  UPI 8242     2K × 8 ROM         256 × 8 RAM  UPI, 키보드 컨트롤러 펌웨어로 사전 프로그래밍됨 8742     2K × 8 EPROM       128 × 8 RAM  UPI, EPROM 버전 8742AH   2K × 8 OTP EPROM   256 × 8 RAM  UPI, 8042AH의 OTP EPROM 버전

 사용 
MCS-48 시리즈는 일반적으로 컴퓨터 및 터미널 키보드에 사용되어 키 누름을 디지털 회로가 이해할 수 있는 프로토콜로 변환했다. 이는 또한 직렬 통신을 가능하게 하여 외부 키보드의 케이블에 필요한 도체 수를 줄였다. 마이크로프로세서는 적어도 1972년부터 키보드에 사용되어 이전의 개별 설계를 단순화했다. 8048은 1978년 출시 이후 이 응용 분야에 사용되어 왔다.

1979년에 출시된 Tandy/Radio Shack TRS-80 Model II는 키보드에 8021을 사용했다. 8021 프로세서는 키 매트릭스를 스캔하고, 스위치 닫힘을 8비트 코드로 변환한 다음, 해당 코드를 직렬로 주 시스템의 키보드 인터페이스로 전송한다. 또한 표시 LED를 켜거나 끄는 명령을 수락하기도 한다. 8021은 TRS-80 모델 12, 12B, 16, 16B 및 Tandy 6000/6000HD의 키보드에도 사용되었다.

오리지널 IBM PC 키보드는 8048을 내부 마이크로컨트롤러로 사용했다. PC AT는 PC의 인텔 8255 주변 장치 인터페이스 칩을 I/O 포트 주소 에서 포트 주소  및 를 통해 액세스할 수 있는 8042로 대체했다. 8042는 키보드 인터페이스를 관리할 뿐만 아니라 AT의 인텔 80286 CPU를 위한 A20 라인 게이팅 기능을 제어했으며, 소프트웨어 명령을 통해 80286을 재설정할 수 있었다 (80386 및 이후 프로세서와 달리 80286은 재설정 외에는 보호 모드에서 리얼 모드로 전환할 방법이 없었다). 이후의 PC 호환 기종은 8042의 기능을 슈퍼 I/O 장치에 통합했다.

8048은 마그나복스 오디세이² 비디오 게임 콘솔, 코르그 트라이던트 시리즈, 코르그 폴리-61, 롤랜드 주피터-4 및 롤랜드 프로마스 아날로그 신시사이저에 사용되었다. 신클레어 QL은 밀접하게 관련된 인텔 8049를 사용하여 키보드, 조이스틱 포트, RS-232 입력 및 오디오를 관리했다. ROM이 없는 8035 변형은 닌텐도의 아케이드 게임 동키콩에서 배경 음악을 생성하는 데 사용되었다.

 파생 마이크로컨트롤러 
필립스 반도체 (현재 NXP)는 이 시리즈를 생산할 라이선스를 소유하고 있었으며, 이 아키텍처를 기반으로 MAB8400 제품군을 개발했다. 이들은 I²C 인터페이스를 통합한 최초의 마이크로컨트롤러였으며, 초기 필립스 (마그나복스 미국) 콤팩트 디스크 플레이어 (예: CD-100)에 사용되었다.Datasheet (pdf) Philips MAB8400-Family

 같이 보기 
 HSE-49 에뮬레이터

 각주 

 참고 문헌 
MCS-48

UPI-41

 외부 링크 
 MCS-48 제품군 아키텍처

 컴퓨터 역사 박물관, 인텔 8048 마이크로컨트롤러 구술 역사 패널
 마이크로컨트롤러 NEC 8741 (실리콘 칩 이미지)

분류:마이크로컨트롤러