인텔 8080

Intel 8080
인텔 8080
KL Intel i8080 Black Background.jpg
화이트 세라믹 패키지, 솔더 실 메탈 커버, 골드 핀을 갖춘 인텔 C8080A 프로세서 베리안트.
일반 정보
개시.1974년 4월; 48년 전(1974-04)
단종1990년; 32년 전(1990년)[1]
마케팅 담당자인텔(R)
설계자인텔(R)
공통 제조원
  • 인텔(R)
성능
최대 CPU 클럭 속도2MHz~3.125MHz
데이터 폭8비트
주소 폭16비트
아키텍처 및 분류
테크놀로지 노드6 µm
명령 집합8080
물리 사양
트랜지스터
  • 4,500
코어
  • 1
패키지
소켓
역사
전임자인텔 8008
후계자인텔 8085

인텔(R) 8080은 인텔이 설계 및 제조한2번째 8비트 마이크로프로세서입니다.1974년 4월에 처음 등장했으며 바이너리 [2]호환성은 없지만 초기 8008 설계의 확장 및 향상된 변형입니다.처음에 지정된 클럭레이트 또는 주파수 제한은 2MHz로 4, 5, 7, 10, 또는 11 사이클을 사용하는 일반적인 명령입니다.그 결과 프로세서는 초당 수십만 개의 명령을 실행할 수 있습니다.8080A-1(8080B라고도[citation needed] 함)과 8080A-2의 2종류의 고속 모델이 나중에 [3]출시되었으며 클럭 주파수 제한은 각각 3.125MHz와 2.63MHz입니다.8080이 대부분의 애플리케이션에서 작동하려면 i8224 클럭 제너레이터/드라이버와 i8228 버스 컨트롤러의 두 가지 지원 칩이 필요합니다.NMOS(Netal-Oxide-Semiconductor Logic)에서는 비포화 증강 모드 트랜지스터를 부하로 사용하여 구현되므로[4][5] +5V 호환 메인 트랜지스터-트랜지스터 로직(TTL)에 더해 +12V 및 -5V 전압이 요구됩니다.

이전의 마이크로프로세서는 계산기, 계산기, 계산기, 컴퓨터 단말기,[6] 산업용 로봇 및 기타 응용 프로그램과 같은 대량 생산 장치에 일반적으로 사용되었지만, 8080은 보다 광범위한 응용 프로그램에서 더 큰 성공을 거두었고, 마이크로컴퓨터 [7]산업을 시작하는 데 큰 기여를 했습니다.40핀 패키지는 18핀 8008보다 인터페이스하기 쉽고 데이터 버스 효율도 높았습니다.NMOS 구현으로 P타입의 금속산화물반도체 로직(PMOS) 8008보다 고속 트랜지스터와 TTL 호환성이 높아졌습니다.er 다양한 지원 칩을 사용할 수 있습니다. 8008보다 [8]명령 세트가 향상되었으며, 풀 16비트 주소 버스(8008 중 14비트)를 통해 8008 범위인 16KB보다 4배 많은 64KB의 메모리에 액세스할 수 있었습니다.Gary Kildall이 개발한 CP/M 운영 체제의 원래 타깃 CPU는 Z80으로 대체될 때까지 Altair 8800과 그 이후의 S-100 버스 퍼스널 컴퓨터에서 사용되었습니다.

8080은 이후의 x86 아키텍처에 직접적인 영향을 미쳤습니다.인텔은 8086의 [9]어셈블리 언어를 8086에서 실행할 수 있는 8080과 거의 동일하게 설계하고 대부분의 명령어를 서로 직접 매핑하도록 했습니다.

역사

마이크로프로세서 고객은 싱글 어드레싱 모드, 낮은 클럭 속도, 낮은 핀 수, 작은 온칩 스택 등의 제약으로 인해 8008을 채택하는 것을 꺼렸습니다.이 때문에 소프트웨어의 규모와 복잡성이 제한되었습니다.8080에는 단순히 스택 명령어를 8008에 추가하는 것부터 이전의 모든 인텔 [10]아키텍처에서 완전히 벗어나는 것까지 여러 가지 설계가 제안되었습니다.최종 디자인은 제안들 사이의 타협이었다.

1972년 초 8080 아키텍처의 창시자인 Federico Faggin은 이 칩을 인텔 경영진에 제안하고 구현을 추진했다.그는 마침내 6개월 후에 개발 허가를 받았다.Faggin은 1972년 11월에 4004의 설계를 도운 시마 마사토시를 일본에서 고용했다.시마는 4000패밀리를 위해 Faggin이 만든 실리콘 게이트를 사용한 랜덤 로직 설계 방법론을 사용하여 Faggin의 [11]지시 하에 상세 설계를 수행했다.

8080은 다수의 고객을 위한 범용 마이크로프로세서로 설계되어 있습니다.개발 작업의 대부분은 8008의 보조 칩의 기능을 하나의 패키지에 통합하기 위해 소비되었습니다.개발 초기에 8080은 8008과 바이너리 호환성이 없으며, 대신 트랜스필러를 통해 실행되면 소스 호환성을 선택하기로 결정되어 새로운 소프트웨어가 8008과 동일한 제한을 받지 않게 되었습니다.같은 이유로 스택 기반 루틴 및 인터럽트 기능의 확장과 더불어 스택이 외부 메모리로 이동되었습니다.

메인프레임 시스템에서 프로그래머가 범용 레지스터를 전문적으로 사용하는 것에 주목하면서 칩 설계자인 스탠리 메이저는 8080의 레지스터가 전문화되어 레지스터 쌍이 서로 다른 [12]용도로 사용될 것이라고 결정했습니다.이것은 또한 엔지니어들이 트랜지스터를 다른 용도로 더 효과적으로 사용할 수 있게 해주었다.

시마는 1973년 8월에 레이아웃을 완성했다.NMOS 제작 규제 이후, 8080의 시제품이 1974년 1월에 완성되었습니다.표준 TTL 장치로 주행하면 좁은 선로로 전류가 흘러 접지 전압이 상승하는 단점이 있었습니다.인텔은 시마가 시제품을 특징짓기 전에 판매 부문의 지시에 따라 8080을 40,000대 생산했다.저전력 쇼트키 TTL(LS TTL) 장치가 필요한 것으로 출시됐다.8080A는 이 [13]결함을 수정했습니다.

인텔은 컴파일된 PL/M 프로그램을 실행하기 위해 INTERP/80이라는 이름의 8080 명령어 세트 시뮬레이터를 제공했습니다.Gary Kildall[14]인텔의 컨설턴트로 일할 때 쓴 것입니다.

묘사

프로그래밍 모델

i8080 마이크로아키텍처
인텔 8080 레지스터
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 (비트 위치)
메인 레지스터
A 플래그 프로그램 상태 단어
B C B
D E D
H L H(간접 주소)
인덱스 레지스터
SP 스택 포인터
프로그램 카운터
PC 프로그램 카운터
상태 레지스터
S Z - AC - P - C 플래그

인텔 8080은 8008의 후속 모델입니다.8008과 동일한 기본 명령어 세트와 레지스터 모델을 사용하지만 소스 코드와 바이너리 코드호환되지는 않습니다.8008의 모든 명령에는 8080의 동등한 명령이 있습니다.8080은 명령 세트에 16비트 연산도 추가합니다.8008에서는 14비트 메모리 공간에 간접적으로 액세스하기 위해 HL 레지스터 쌍을 사용해야 하는 반면 8080에서는 16비트 메모리 공간에 직접 액세스할 수 있는 주소 지정 모드가 추가되었습니다.8008의 내부7 레벨 푸시다운콜 스택은 전용 16비트 Stack-Pointinter(SP; 스택포인트인터) 레지스터로 대체되었습니다.8080은 40핀 DIP 패키징을 통해 16비트 주소 버스와 8비트 데이터 버스를 제공하여 64KiB(2바이트)의16 메모리에 액세스할 수 있습니다.

레지스터

프로세서에는 7개의 8비트 레지스터(A, B, C, D, E, H 및 L)가 있으며, 여기서 A는 프라이머리 8비트 어큐뮬레이터입니다.그 외의 6개의 레지스터는, 특정의 순서에 따라서, 개개의 8 비트레지스터로서 사용할 수도, 3개의 16 비트레지스터 페어(인텔 문서에서는 B, D, 및 H)로 사용할 수도 있습니다.일부 명령에서는 HL 레지스터 쌍을 (제한된) 16비트 어큐뮬레이터로 사용할 수도 있습니다.HL이 가리키는 참조 메모리 위치를 참조하는 의사 레지스터 M은 다른 레지스터를 사용할 수 있는 거의 모든 장소에서 사용할 수 있다.8080에는 메모리에 대한 16비트 스택 포인터가 있어 8008의 내부 스택을 대체하고 16비트 프로그램 카운터를 갖추고 있습니다.

플래그

프로세서는 내부 플래그 비트(상태 레지스터)를 유지하며, 이는 산술 및 논리 명령의 결과를 나타냅니다.플래그에 영향을 주는 것은 특정 명령뿐입니다.플래그는 다음과 같습니다.

  • 부호(S), 결과가 음수인 경우 설정합니다.
  • Zero(Z), 결과가 0인 경우 설정됩니다.
  • 패리티(P), 결과의 1비트 수가 짝수인 경우 설정됩니다.
  • 마지막 덧셈 작업으로 인해 캐리(carry)가 발생한 경우 또는 마지막 감산 작업으로 차입이 필요한 경우 설정
  • 보조 자리올림(AC 또는 H), 이진 코드 10진 산술(BCD)에 사용됩니다.

반송 비트는 특정 지침에 따라 설정하거나 보완할 수 있습니다.조건부 브랜치 명령에서는 다양한 플래그 상태 비트를 테스트합니다.플래그는 그룹으로 누적기에 복사할 수 있습니다.A 어큐뮬레이터와 플래그를 함께 PSW 레지스터 또는 프로그램 상태 워드라고 합니다.

명령어, 명령어

다른 많은 8비트 프로세서와 마찬가지로 모든 명령어는 1바이트(레지스터 번호 포함, 즉시 데이터 제외)로 인코딩되어 있습니다.일부 데이터 뒤에는 오퍼랜드, 메모리 주소 또는 포트 번호인1 ~ 2 바이트의 데이터가 이어집니다.고급 프로세서와 마찬가지로 멀티레벨 프로시저 호출 및 반환(점프 등 조건부로 실행할 수도 있음)에 대한 자동 CALL 및 RET 명령과 머신스택 상의 16비트 레지스터 쌍을 저장 및 복원하는 명령이 있습니다.8개의 1바이트 콜명령(RST서브루틴의 경우)는 고정 주소 00h, 08h, 10h, ..., 38h에 존재합니다.이것들은 대응하는 인터럽트 서비스 루틴을 호출하기 위해 외부 하드웨어에 의해 공급되는 것을 의도하고 있지만, 많은 경우 고속 시스템콜로도 사용됩니다.가장 느리게 실행되는 명령어는XTHL레지스터 페어 HL을 스택포인터로 지정된 주소에 저장되어 있는 값과 교환하기 위해 사용됩니다.

8비트 명령

오퍼랜드가 2개인 모든 8비트 작업은 8비트 어큐뮬레이터(A 레지스터)에서만 수행할 수 있습니다.다른 피연산자는 즉시값, 다른 8비트 레지스터 또는 16비트 레지스터 쌍 HL로 주소 지정된 메모리 바이트 중 하나입니다.증감은 임의의 8비트 레지스터 또는 HL 주소 지정 메모리 바이트에서 실행할 수 있습니다.2개의 8비트 레지스터 간 및 8비트 레지스터와 HL 주소 지정 메모리바이트 간 다이렉트 복사가 지원됩니다.의 정기적인 부호화에 의해MOV명령(사용 가능한 opcode 공간의 1/4을 사용), 레지스터를 그 자체에 복사하기 위한 중복 코드가 있습니다(MOV B,B(예를 들어) 지연을 제외하고는 거의 쓸모가 없습니다.단, 시스템 opcode는MOV M,M대신 halt()HLT 명령을 인코딩하기 위해 사용되며 외부 재설정 또는 인터럽트가 발생할 때까지 실행을 중지합니다.

16비트 조작

8080은 일반적으로 8비트 프로세서이지만 16비트 작업을 수행할 수 있는 기능이 제한됩니다.3개의 16비트 레지스터 페어(BC, DE 또는 HL, 인텔 문서에서는 B, D, H로 표기) 또는 SP는 즉시 16비트 값으로 로드할 수 있습니다(사용 방법).LXI증가 또는 감소(사용)INX그리고.DCX또는 HL에 추가(사용)DADHL을 그 자체에 더하면 하나의 명령으로 16비트 산술 왼쪽 시프트와 같은 결과를 얻을 수 있습니다.플래그에 영향을 주는 유일한 16비트 명령은 다음과 같습니다.DAD이것은 24비트 또는 32비트 산술(또는 그 이상)을 프로그래밍할 수 있도록 CY(carry) 플래그를 설정합니다.이 플래그는 부동소수점 산술 구현에 필요합니다.스택 프레임은 다음 방법으로 할당할 수 있습니다.DAD SP그리고.SPHL계산된 포인터에 대한 분기는 다음과 같이 실행할 수 있습니다.PCHL.LHLD직접 주소 지정 메모리에서 HL을 로드하고SHLD는 마찬가지로 HL을 저장합니다.XCHG[15] 명령은 HL 및 DE 레지스터 쌍의 값을 교환합니다. XTHL스택에 푸시된 마지막 항목을 HL과 교환합니다.

입출력 방식

입력 출력 포트 공간

8080은 최대 256개[16] 입력/출력(I/O) 포트를 지원하며 포트 주소를 오퍼랜드로 하는 전용 I/O 명령을 통해 액세스합니다.이 I/O 매핑 방식은 프로세서의 제한된 주소 공간을 개방하기 때문에 이점으로 간주됩니다.대신 많은 CPU 아키텍처에서는 메모리 매핑 I/O(MMIO)를 사용합니다.이 경우 RAM과 주변기기 칩 모두에 공통 주소 공간이 사용됩니다.이것에 의해, 전용의 I/O 명령이 불필요하게 됩니다.단, 이러한 설계에서는, 메모리보다 주변기기가 느린 경우가 많기 때문에, 특수한 하드웨어를 사용해 대기 상태를 삽입할 필요가 있는 것이 결점이 있습니다.그러나 일부 단순한 8080 컴퓨터에서는 I/O가 메모리 셀인 것처럼 "메모리 매핑"되어 I/O 명령은 사용되지 않습니다.I/O 어드레싱에서는 프로세서가 같은8비트 포트 주소를 낮은 주소 바이트와 높은 주소 바이트 모두에 출력한다는 사실(즉,IN 05h는, 주소 0505h 를 16 비트주소 버스에 배치합니다).하위 호환 Zilog Z80 및 인텔 8085 및 밀접하게 관련된 x86 마이크로프로세서 패밀리에서도 동일한 I/O 포트 방식이 사용됩니다.

개별 스택 공간

프로세서 상태 워드의 비트 중 하나(아래 참조)는 프로세서가 스택에서 데이터에 액세스하고 있음을 나타냅니다.이 신호를 사용하여 별도의 스택메모리 공간을 구현할 수 있습니다.이 기능은 거의 사용되지 않습니다.

내부 상태 단어

보다 고도의 시스템에서는, 동작 루프의 1 국면에서, 프로세서는 데이터 버스에 「내부 상태 바이트」를 설정합니다.이 바이트에는 메모리 또는 I/O 포트에 액세스할 것인지 여부와 인터럽트를 처리할 필요가 있는지 여부를 결정하는 플래그가 포함되어 있습니다.

인터럽트 시스템 상태(이네이블 또는 디세이블)도 다른 핀으로 출력됩니다.인터럽트가 사용되지 않는 단순한 시스템에서는 이 핀이 추가 싱글비트 출력 포트(를 들어 소련제 인기 Radio-86RK 컴퓨터)로 사용되는 경우를 찾을 수 있습니다.

코드 예시

다음 8080/8085 어셈블러의 소스 코드는 다음과 같은 서브루틴용입니다.memcpy특정 크기의 데이터 바이트 블록을 한 위치에서 다른 위치로 복사합니다.데이터 블록은 한 번에 1바이트씩 복사되며 데이터 이동 및 루프 로직은 16비트 연산을 사용합니다.

1000 1000 78 1001 B1 1002 C8 1003 1A 1004 77 1005 13 1006 23 1007 0B 1008 78 1009 B1 100A C2 03 10 100D C9
; memcpy -- ; 메모리 블록을 한 위치에서 다른 위치로 복사합니다. ; ; 엔트리 레지스터 ; BC - 복사할 바이트 수 ; DE - 소스 데이터 블록의 주소 ; HL - 대상 데이터 블록의 주소 ; ; 레지스터 반환 ; BC - 제로              조직1000시간       원점: 1000h 메모리      일반의             움직이다     a,b         레지스터 B를 복사하여 A를 등록합니다.             오라     c           레지스터 A에 A 및 C의 비트 OR             rz                  ;제로 플래그가 하이로 설정된 경우 반환됩니다. 루프:       ldax    d           DE가 가리키는 주소에서 A를 로드합니다.             움직이다     m,a         A를 HL이 가리키는 주소에 저장합니다.             잉크     d           증가 DE             잉크     h           인크리먼트             dcx     b           감소 BC(Flags에 영향을 주지 않음)             움직이다     a,b         B를 A에 복사(BC를 0과 비교하기 위해)             오라     c           ;A = A C(B와 C가 모두 0입니까?)             jnz     고리        ;제로 플래그가 설정되지 않은 경우 '루프:'로 점프합니다.                리트                 반환 

핀 사용

8080 핀 할당

주소 버스에는 자체 16핀이 있으며 데이터 버스에는 멀티플렉싱 없이 사용할 수 있는 8핀이 있습니다.2개의 추가 핀(읽기 및 쓰기 신호)을 사용하면 간단한 마이크로프로세서 장치를 매우 쉽게 조립할 수 있습니다.프로세서 핀 신호를 디코딩하려면 별도의 IO 공간, 인터럽트 및 DMA에만 칩을 추가해야 합니다.그러나 핀 부하 용량은 제한되어 있습니다.심플한 컴퓨터에서도 버스 앰프가 필요한 경우가 많습니다.

프로세서에는 3개의 전원(-5, +5, +12 V)과 오버랩되지 않는2개의 고진폭 동기 신호가 필요합니다.그러나 적어도 구소련의 최신 버전 δ580 δ80 δ는 +5V 전원 1개, +12V 핀은 +5V, -5V 핀은 접지에 접속할 수 있었습니다.

칩 부속의 메뉴얼에 기재되어 있는 핀 배치표에서는, 다음과 같이 핀에 대해 설명하고 있습니다.

핀 번호 신호. 유형 댓글
1 A10 산출량 주소 버스 10
2 GND
3 D4 쌍방향 양방향 데이터 버스또, 프로세서는 여기서 일시적으로 「프로세서 상태」를 설정해, 프로세서의 현재 동작에 관한 정보를 제공합니다.
  • D0 reading interrupt 명령어.인터럽트 신호에 응답하여 프로세서는 이 플래그를 올린 상태에서 단일 임의 명령을 읽고 실행합니다.일반적으로 지원 칩은 서브루틴 콜명령어(CALL 또는 RST)를 제공하여 인터럽트 처리 코드로 제어를 전송합니다.
  • D1 판독치(낮은 레벨은 쓰기를 의미합니다)
  • D2 액세스 스택(아마도 처음에는 별도의 스택메모리 공간이 계획되어 있었을 것입니다)
  • D3이 아무것도 하지 않고 HLT 명령에 의해 정지되었습니다.
  • D4 출력 포트에 데이터 쓰기
  • 실행 가능한 명령의 첫 번째 바이트를 읽는 D5
  • D6 입력 포트에서 데이터 읽기
  • D7 메모리에서 데이터 읽기
4 D5
5 D6
6 D7
7 D3
8 D2
9 D1
10 D0
11 - 5 V -5V 전원장치이것은, 최초로 접속한 전원과 마지막으로 접속을 해제한 전원일 필요가 있습니다.그렇지 않으면 CPU가 파손됩니다.
12 리셋 입력 재설정. 이 신호는 주소 0000에 위치한 명령을 강제로 실행합니다.다른 프로세서 레지스터의 내용은 변경되지 않습니다.이것은 반전 입력입니다(액티브레벨은 논리0).
13 잡고 있어 입력 다이렉트 메모리액세스 요구프로세서는 데이터 및 주소 버스를 고임피던스("절단") 상태로 전환해야 합니다.
14 인트 입력 인터럽트 요구
15 22 입력 클럭 제너레이터 신호의 두 번째 단계
16 내장 산출량 프로세서에는, 이 핀의 레벨을 0 또는 1로 설정하기 위한 2개의 커맨드가 있습니다.일반적으로 핀은 인터럽트 제어에 사용됩니다.그러나 단순한 컴퓨터에서는 다양한 목적으로 단일 비트 출력 포트로 사용되기도 했습니다.
17 DBIN 산출량 읽기(메모리 또는 입력 포트에서 프로세서를 읽습니다)
18 WR 산출량 쓰기(프로세서가 메모리 또는 출력 포트에 쓰기).이것은 반전 출력이며 액티브레벨은 논리0 입니다
19 동기 산출량 액티브 레벨은 프로세서가 데이터 버스에 "state word"를 입력했음을 나타냅니다.이 상태 워드의 다양한 비트는 별도의 주소 및 메모리 공간, 인터럽트 및 직접 메모리 액세스를 지원하기 위한 추가 정보를 제공합니다.이 신호는 프로세서 상태 워드를 데이터 버스에서 외부 레지스터(예: 8238 시스템 컨트롤러 및 버스 드라이버)에 쓰기 전에 추가 로직을 통과해야 합니다.
20 +5 V + 5 V 전원 장치
21 헬다 산출량 직접 메모리 액세스 확인.프로세서가 데이터와 주소 핀을 고임피던스 상태로 전환하여 다른 장치가 버스를 조작할 수 있도록 합니다.
22 11 입력 클럭 제너레이터 신호의 첫 번째 위상
23 준비가 되어 있습니다! 입력 잠깐만요. 이 신호로 프로세서의 작업을 일시 중단할 수 있습니다.하드웨어 기반의 스텝 바이 스텝 디버깅모드 지원에도 사용됩니다.
24 잠깐만요. 산출량 Wait(프로세서가 대기 상태임을 나타냅니다.
25 A0 산출량 어드레스 버스
26 A1
27 A2
28 12 V +12 V 전원 장치이 전원은 마지막으로 연결된 전원과 처음 분리된 전원이어야 합니다.
29 A3 산출량 주소 버스. 온 디맨드로 고임피던스 상태로 전환할 수 있습니다.
30 A4
31 답 5
32 A6
33 A7
34 A8
35 A9
36 A15
37 A12
38 A13
39 A14
40 A11

서포트 칩

8080을 성공시킨 주요 요인은 시리얼 통신, 카운터/타이밍, 입력/출력, 다이렉트 메모리 액세스 및 프로그램 가능한 인터럽트 제어 등 폭넓은 지원 칩이었습니다.

물리적인 실장

8080 집적회로는 비포화 인핸스먼트 로드 nMOS 게이트를 사용하여 추가 전압을 요구합니다(로드 게이트 바이어스의 경우).최소 피처 사이즈 6µm를 사용하여 실리콘 게이트 공정으로 제조되었습니다.설계상 약 4,500개의[17] 트랜지스터를 상호 연결하기 위해 단일 금속층이 사용되지만 일부 인터커넥트에 더 높은 전압이 필요한 보다 높은 저항 폴리실리콘층이 트랜지스터 게이트와 함께 구현됩니다.금형 크기는 약 20mm입니다2.

산업의 영향

응용 프로그램 및 후계 프로그램

그 8080은 MITS 알테어 8800컴퓨터 프로세서 기술 SOL-20 터미널 전산 IMSAI 8080마이크로 컴퓨터 같은 많은 이른 microcomputers에, 기계가 CP/M 운영 체제( 늦게, 거의 완전히고 더 호환, 자일 로그 Z80프로세서에 관한 Z80과 & 이용할 것 실행을 위한 초석일 뿐이지요, CP/M becom을 형성하는 사용된다.ing1976년부터 1983년까지의 CPU와 OS의 주요 조합은, 10년 후의 PC의 x86과 DOS와 거의 같습니다).

1979년, Z80과 8085 프로세서가 출시된 후에도, 8080의 5개 제조업체는 [18]개당 $3에서 $4 정도의 가격으로 월 $50,000를 판매했습니다.

MYCRO-1이나 Dyna-micro/MMD-1 등 최초의 싱글보드 마이크로컴퓨터(싱글보드 컴퓨터 참조)는 인텔 8080을 기반으로 하고 있습니다.8080의 초기 용도 중 하나는 1970년대 후반 캘리포니아 샌디에이고의 큐빅 웨스턴 데이터(Cubic-Western Data)에 의해 전 세계 대중교통 시스템을 위해 설계된 Automated Faile Collection Systems(자동 요금 징수 시스템)에 의해 만들어졌습니다.8080의 초기 산업 용도는 DatagraphiX Auto-COM(Computer Output Microfice) 제품 라인의 "두뇌"로서 릴 투 릴 테이프에서 대량의 사용자 데이터를 가져와 마이크로피시에 이미지화합니다.Auto-COM 기기에는 전체 자동 필름 절단, 가공, 세척 및 건조 하위 시스템도 포함됩니다.8080 마이크로프로세서 주변에는 지금까지 만들어진 가장 인기 있는 아케이드 게임 중 하나인 Space Invaders를 포함한 몇몇 초기 비디오 아케이드 게임들이 만들어졌다.

Zilog는 호환되는 기계어 명령 세트를 가지고 있으며 처음에는 8080과 동일한 어셈블리 언어를 사용했지만 법적 이유로 Zilog는 Z80을 위해 구문적으로 다른(그러나 코드 호환성이 있는)인텔에서는 8080에 이어 호환성이 있고 전기적으로 더 우아한8085가 출시되었습니다.

이후 인텔은 어셈블리 언어 호환(바이너리 호환은 아님) 16비트 8086을 발행하고 IBM이 1981년에 출시할 새로운 PC를 위해 선택한 8/16비트 8088을 발행했습니다.이후 NEC는 8080 에뮬레이션 모드도 지원하는 NEC V20(인텔 80186 명령 세트 호환성을 갖춘 8088 클론)을 만들었습니다.이 기능은 NEC의 V30(8086 클론)에서도 지원됩니다.따라서 8080은 명령 집합 아키텍처(ISA)를 통해 컴퓨터 역사에 지속적인 영향을 미쳤습니다.

프로세서 인텔 8080A와 호환 가능한 많은 이들이 동구권에:소련에서 KR580VM80A(처음에는 KP580ИK80로 표시되), MCY7880[19]Unitra CEMI에 의해 폴란드에서, 원자 MHB8080A[20]TESLA에 의해 체코 슬로바키아에서 제작된 그 8080APC[20]Tungsram/MEV에 의해 헝가리에 만들어졌고 그 MMN8080[20]Microelectro에 의해 만들어진.nica 부쿠레슈티 나는n 루마니아

2017년 현재, 8080은 랜스데일 [21]세미컨덕터에서 여전히 생산되고 있다.

업계의 변화

8080은 또한 컴퓨터가 만들어지는 방식도 바꾸었다.8080이 도입되었을 때 컴퓨터 시스템은 보통 Digital Equipment Corporation, Hewlett Packard 또는 IBM같은 컴퓨터 제조업체에 의해 개발되었습니다.제조업체는 프로세서, 터미널 및 컴파일러 및 운영 체제와 같은 시스템 소프트웨어를 포함한 전체 컴퓨터를 생산합니다.8080은 완전한 컴퓨터 시스템을 제외한 거의 모든 애플리케이션을 대상으로 설계되었습니다.Hewlett Packard는 8080년경 HP 2640 시리즈 스마트 단말기를 개발했습니다.HP 2647은 8080에서 BASIC 프로그래밍 언어를 실행하는 단말기입니다.마이크로소프트의 창립 제품인 마이크로소프트 베이직은 원래 8080용으로 프로그램되었습니다.

8080과 8085는 8086을 탄생시켰습니다.8086은 바이너리 호환성은 없지만 소스 [22]코드와 호환되도록 설계되어 있습니다.그 결과, 이 설계는, 인텔의 주요 프로세서 라인인 x86 칩 패밀리를 낳았습니다.8080의 핵심 기계 명령과 개념은 널리 보급되어 있는 x86 플랫폼에서 그대로 남아 있습니다.예를 들어 A, B, C, D라는 이름의 레지스터와 조건부 점프를 제어하는 데 사용되는 많은 플래그가 있습니다.8080 어셈블리 코드는 모든 핵심 요소가 존재하기 때문에 x86 명령어로[vague] 직접 변환할 수 있습니다.

문화적 영향

  • 소행성 8080 [23]인텔은 인텔 8080이라는 이름을 딴 말장난과 찬사로 불린다.
  • 마이크로소프트의 공식 전화번호인 425-882-8080이 선택된 것은 이 칩에 대한 초기 작업이 많았기 때문이다.
  • 인텔의 주요 전화번호도 대부분 xxx-xx-8080과 같은 형식입니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ CPU 이력– CPU 뮤지엄– CPU 라이프 사이클
  2. ^ "From CPU to software, the 8080 Microcomputer is here". Electronic News. New York: Fairchild Publications. April 15, 1974. pp. 44–45. 일렉트로닉 뉴스는 주간 무역 신문이었다.1974년 5월 2일자 일렉트로닉스 잡지에 같은 광고가 실렸다.
  3. ^ "8080A/8080A-1/8080A-2 8-Bit N Channel Microprocessor" (PDF). Intel.
  4. ^ 풀업 저항기와 유사하다
  5. ^ Tohya, Hirokazu (2013). Switching Mode Circuit Analysis and Design: Innovative Methodology by Novel Solitary Electromagnetic Wave Theory. Bentham Science Publishers. p. 4. ISBN 9781608054497.
  6. ^ 8008(1972)은 1973년 10월에 도입된 ASEA(현 ABB)의 일반 산업용 로봇 1라인에서 보간 및 제어에 사용되었다.
  7. ^ Mueller, Scott (2006). Upgrading and Reparing PCs (17th ed.). Pearson Education. p. 37. ISBN 978-0-7897-3404-4.
  8. ^ 강화는 주로 고객의 피드백과 Federico Faggin 및 기타 전문가들이 8008 아키텍처의 특정 문제와 기능 부족에 대해 경청한 것에 기초하고 있습니다.(출처: 8008 및 8080 구술 이력).
  9. ^ Mazor, Stanley (June 1978). "The Intel 8086 Microprocessor: a 16-bit Evolution of the 8080". IEEE Computer. 11 (6): 18–27. doi:10.1109/C-M.1978.218219. S2CID 16962774.
  10. ^ Miller, Michael. "Creating the 8080: The Processor That Started the PC Revolution". PCMag. Zaff Davis. Retrieved November 14, 2021.
  11. ^ Faggin, Federico. "8008 and 8080 Q&A". Microprocessor Intel 4004. Retrieved November 15, 2021.
  12. ^ Mazor, Stanley (April–June 2007). "Intel 8080 CPU Chip Development". IEEE Annals of the History of Computing. 29 (2): 70–73. doi:10.1109/MAHC.2007.25. S2CID 14755544.
  13. ^ Shima, Masatoshi; Nishimura, Hirohiko; Ishida, Haruhisa (1979). "座談会 マイクロコンピュータの誕生 開発者 嶋 正利氏に聞く". Bit (in Japanese). 共立出版. 11 (11): 4–12. ISSN 0385-6984.
  14. ^ Kildall, Gary. "High-level language simplifies microcomputer programming" (PDF). Electronics. McGraw-Hill Education. p. 108.
  15. ^ 8080 명령 부호화ClassicCMP.org 를 참조해 주세요.2011년 10월 23일에 취득.
  16. ^ 주의: 1970년대 인텔의 일부 데이터 시트는 입력 포트와 출력 포트를 개별적으로 카운트하기 때문에 512개의 I/O 포트를 애드버타이즈합니다.
  17. ^ "Intel Chips timeline" (PDF). Intel. Intel Corporation. Retrieved November 14, 2021.
  18. ^ Libes, Sol (November 1979). "Byte News". Byte. 11. Vol. 4. p. 82. ISSN 0360-5280.
  19. ^ MCY7880: 폴란드제 8080 클론.CPU 월드2011년 10월 23일에 취득.
  20. ^ a b c 소련 칩과 그들의 서양 아날로그.CPU의 세계2011년 10월 23일에 취득.
  21. ^ "Intel – Microprocessor 8080A Family & 828X Series". Lansdale Semiconductor Inc. Retrieved June 20, 2017.
  22. ^ Morse, Stephen; Ravenel, Bruce; Mazor, Stanley; Pohlman, William (October 1980). "Intel Microprocessors: 8008 to 8086" (PDF). IEEE Computer. 13 (10): 42–60. doi:10.1109/MC.1980.1653375. S2CID 206445851.
  23. ^ "(8080) Intel = 1958 QC = 1987 WU2 = 1989 AS5". Minor Planet Center. International Astronomical Union. Retrieved November 14, 2021.

추가 정보

외부 링크