인텔 8008
Intel 8008일반 정보 | |
---|---|
개시. | 1972년 중반 |
단종 | 1983년[1] |
설계자 | 컴퓨터 터미널 코퍼레이션(CTC) |
공통 제조원 |
|
성능 | |
최대 CPU 클럭 속도 | 200kHz~800kHz |
데이터 폭 | 8비트 |
주소 폭 | 14비트 |
아키텍처 및 분류 | |
어플 | 컴퓨터 단말기, 계산기, 병입기, 1970년대 ASEA 산업용[2] 로봇(IRB 6), 단순 컴퓨터 등 |
테크놀로지 노드 | 10 µm |
명령 집합 | 8008 |
물리 사양 | |
트랜지스터 |
|
패키지 |
|
소켓 | |
역사 | |
후계자 | 인텔 8080 |
인텔 8008 ("80008" 또는 "8y-oh-8")은 인텔이 구현 및 제조하여 1972년 4월에 선보인 컴퓨터 터미널 코퍼레이션(CTC)에 의해 설계된 초기 바이트 지향 마이크로프로세서입니다.외부 14비트 주소 버스를 갖춘 8비트 CPU로 16KB의 메모리를 주소 지정할 수 있습니다.원래 1201로 알려진 이 칩은 Computer Terminal Corporation(CTC)에 의해 Datapoint 2200 프로그램 가능 단말기에 대해 설계 명령 세트를 구현하도록 의뢰되었습니다.칩이 지연되어 CTC의 성능 목표를 달성하지 못했기 때문에 2200은 CTC의 자체 TTL 기반 CPU를 사용하게 되었습니다.세이코가 칩을 계산기에 사용하는 것에 관심을 보인 후, 인텔은 이 칩을 다른 고객에게 판매할 수 있게 되었다.
역사
CTC는 1968년 San Antonio에서 Austin O. "Gus" Roche와 Phil Ray의 지휘 아래 설립되었으며, 둘 다 NASA 엔지니어입니다.특히 Roche는 주로 데스크톱 컴퓨터 제작에 관심이 있었습니다.그러나 시장의 미성숙성을 감안하여 회사의 사업 계획에는 데이터포인트 3300으로 출하된 텔레타입 모델 33 ASR 대체 모델만 언급되었다.이 케이스는 IBM Selectric 타자기와 같은 공간에 들어가도록 의도적으로 설계되었으며 IBM 펀치 [3]카드와 동일한 가로 세로 비율을 가진 모양의 비디오 화면을 사용했습니다.상업적으로는 성공했지만 3300은 좁은 공간에 채워진 회로의 양으로 인해 열 문제가 지속되었습니다.
발열등의 문제에 대처하기 위해서, 내부 회로의 CPU 부분을 1개의 칩에 재실장하는 것을 특징으로 하는 재설계가 개시되었습니다.칩 설계를 할 수 있는 회사를 찾고 있던 Roche는 인텔(메모리 [3]칩을 주로 취급하는 벤더)에 눈을 돌렸습니다.Roche는 Bob Noyce를 만나 이 컨셉에 대해 우려를 표명했습니다.John Frassanito는 "Noyce는 그것이 흥미로운 아이디어라고 말했고 Intel은 그것을 할 수 있다고 말했지만 그것은 어리석은 조치일 것입니다.컴퓨터 칩이 있으면 컴퓨터 한 대당 하나의 칩만 판매할 수 있고 메모리는 컴퓨터 [3]한 대당 수백 개의 칩을 판매할 수 있다고 그는 말했습니다.또, 인텔의 기존 고객 베이스가 독자적인 프로세서 설계에 사용하기 위해서 메모리 칩을 구입한 것도 큰 염려가 되고 있습니다.인텔이 독자적인 프로세서를 도입했을 경우, 경쟁 제품으로서 인식되어 고객이 메모리를 다른 곳에서 찾을 가능성이 있습니다.그럼에도 불구하고 노이스는 1970년 초에 5만 달러의 개발 계약에 동의했다.TI(Texas Instruments)도 두 번째 공급업체로 도입되었습니다.
TI는 인텔의 [citation needed]도면을 바탕으로 1201의 샘플을 만들 수 있었지만, 버그가 있는 것으로 판명되어 거절당했습니다.인텔의 자체 버전은 지연되었습니다.CTC는 싱글칩 CPU를 기다리는 대신 전용 TTL을 사용하여 새로운 버전의 단말기를 재실장하기로 결정했습니다.새로운 시스템은 1970년 봄에 Datapoint 2200으로 출시되었으며, 1970년 [3]5월 25일 제너럴 밀스에 첫 판매되었다.CTC는 2200이 출시된 후 더 이상 필요하지 않게 되었기 때문에 1201의 개발을 일시 중지했습니다.6개월 후 세이코는 1201을 과학 계산기에 사용하는 것에 관심을 나타내며 인텔에 접근했습니다.아마도 비즈니스 계산기에 사용되는 단순한 인텔 4004의 성공을 본 후일 것입니다.4004의 디자이너이자 현재 1201의 프로젝트 리더인 페데리코 파긴의 지도 하에 16핀에서 18핀으로 확장되어 1971년 [3]말에 새로운 1201이 CTC에 납품되었습니다.
이 시점에서 CTC는 다시 한 번 데이터 포인트 2200 II로 이동했습니다.이번에는 데이터 포인트 2200 II로 이동했습니다.1201은 더 이상 새로운 모델에 충분하지 않았다.CTC는 1201과의 관계 종료를 의결하고 50,000달러의 계약금을 지불하지 않고 설계의 지적 재산을 인텔에 넘겼습니다.인텔은 1972년 4월에 8008로 이름을 바꾸고 120달러의 가격으로 카탈로그에 실었다.8008을 단순히 4-8 포트로 표시함으로써 4004 칩의 성공을 이뤘지만 8008은 4004를 기반으로 하지 않았다.[4] 8008은 상업적으로 성공한 디자인이었다.인텔 8080이 그 뒤를 이어 인텔 x86 [3]패밀리가 크게 성공했습니다.
8008년 경에 완전한 시스템을 구축한 최초의 팀 중 하나는 새크라멘토 캘리포니아 주립 대학의 빌 펜츠 팀이었다.Sac State 8008은 아마도 PROM에서 IBM Basic 어셈블리 언어로 구축된 디스크 운영 체제를 갖춘 최초의 진정한 마이크로컴퓨터였을 것입니다. 이 모든 것이 컬러 디스플레이, 하드 드라이브, 키보드, 모뎀, 오디오/종이 테이프 리더 및 [5]프린터를 구동합니다.이 프로젝트는 1972년 봄에 시작되었고, 1년 후 Tektronix의 주요 도움을 받아 시스템이 완전히 작동하게 되었습니다.빌은 인텔의 MCS-8 키트를 지원하여 인텔 8080 명령어 세트에 중요한 정보를 제공하였습니다.이것에 의해, 업계나 애호가에게 도움이 되었습니다.
영국에서는 1972년 톰 스핑크(Tom Spink)가 이끄는 S. E. Laboratories Engineering(EMI) 팀이 8008의 프리 릴리즈 샘플을 기반으로 마이크로컴퓨터를 만들었습니다.Joe Hardman은 칩을 외부 스택으로 확장했습니다.이를 통해 무엇보다도 정전 시 저장 및 복구가 이루어졌습니다.조는 또한 다이렉트 스크린 프린터를 개발했다.운영체제는 Digital Equipment Corporation [6]PDP-11용으로 L. Crawford와 J. Parnell이 개발한 메타 어셈블리를 사용하여 작성되었습니다.OS가 PROM에 삽입되었다.인터럽트 기반, 큐잉 및 프로그램 및 데이터의 고정 페이지 크기를 기반으로 했습니다.프로젝트를 계속하지 않기로 결정한 경영진을 위해 운영 프로토타입을 준비했습니다.
8008은 최초의 비계산기 PC(Datapoint 2200 자체 제외)의 CPU로, US SCELBI 키트 및 사전 구축된 French Micral N 및 캐나다 MCM/70을 사용했습니다.또한 Hewlett-Packard의 2640 시리즈 컴퓨터 터미널에서 처음 몇 가지 모델을 제어하는 마이크로프로세서였습니다.
인텔은 INTERP/8이라는 이름의 8008 명령어 세트 시뮬레이터를 제공했습니다.그것은 FORTRAN으로 쓰여 있었다.
설계.
13 | 12 | 11 | 10 | 09 | 08 | 07 | 06 | 05 | 04 | 03 | 02 | 01 | 00 | (비트 위치) |
메인 레지스터 | ||||||||||||||
A | 어큐뮬레이터 | |||||||||||||
B | B 레지스터 | |||||||||||||
C | C 레지스터 | |||||||||||||
D | D 레지스터 | |||||||||||||
E | E 레지스터 | |||||||||||||
H | H 레지스터(간접) | |||||||||||||
L | L 레지스터(간접) | |||||||||||||
프로그램 카운터 | ||||||||||||||
PC | 프로그램 카운터 | |||||||||||||
푸시다운 어드레스 콜스택 | ||||||||||||||
~하듯이 | 콜 레벨 1 | |||||||||||||
~하듯이 | 콜 레벨 2 | |||||||||||||
~하듯이 | 콜 레벨 3 | |||||||||||||
~하듯이 | 콜 레벨 4 | |||||||||||||
~하듯이 | 콜 레벨 5 | |||||||||||||
~하듯이 | 콜 레벨 6 | |||||||||||||
~하듯이 | 콜 레벨 7 | |||||||||||||
플래그 | ||||||||||||||
C | P | Z | S | 플래그 |
8008은 10μm 실리콘 게이트 확장 모드 PMOS 로직으로 구현되었습니다.초기 버전은 최대 0.5MHz의 클럭 주파수로 동작할 수 있습니다.이후 8008-1에서는 최대 0.8MHz로 증가했습니다.명령어는 5~11개의 T-상태이며, 각 T-상태는 2개의 [7]클럭사이클입니다레지스터/레지스터 로드 및 ALU 동작에는 5T(0.5MHz에서 20μs), 레지스터 메모리8T(32μs), 콜 및 점프(촬영 시)에는 11개의 T스테이트(44μs)[8]가 걸립니다.8008은 4비트 인텔 4004 및 인텔 4040에 [9]비해 명령/초(0.8MHz에서는 36,000~80,000)가 조금 느립니다.그러나 8008은 한 번에 8비트의 데이터를 처리할 수 있어 많은 어플리케이션에서 이들 프로세서에 비해 상당한 속도의 이점을 가지고 있습니다.8008에는 3,500개의 [10][11][12]트랜지스터가 있습니다.
칩(18핀 DIP에 의해 제한됨)에는 단일 8비트 버스가 있으며 상당한 양의 외부 지원 로직이 필요합니다.예를 들어, "16 K × 8 bits of memory"에 액세스할 수 있는 14비트 주소는 이 논리 중 일부에 의해 외부 메모리 주소 레지스터(MAR)에 래치되어야 합니다.8008은 8개의 입력 포트와 24개의 출력 [7]포트에 액세스할 수 있습니다.
컨트롤러 및 CRT 단말기의 경우 이는 허용 가능한 설계이지만 적어도 차세대 마이크로프로세서에 비해 대부분의 다른 작업에 사용하기에는 다소 번거롭습니다.몇 가지 초기 컴퓨터 디자인이 이를 기반으로 했지만 대부분은 최신 인텔 8080을 대신 사용합니다.[citation needed]
관련 프로세서 설계
후속 40핀 NMOS Intel 8080은 8008 레지스터와 명령 세트를 확장하여 보다 효율적인 외부 버스 인터페이스를 구현합니다(22핀 추가 사용).긴밀한 아키텍처 관계에도 불구하고 8080은 8008과 바이너리 호환성이 없기 때문에 8008 프로그램은 8080에서 실행되지 않습니다.단, 인텔에서는 당시 2개의 어셈블리 구문이 사용되었기 때문에 8080은 8008 어셈블리 언어의 하위 호환 방식으로 [13]사용할 수 있었습니다.
인텔 8085는 8080의 전기적으로 현대화된 버전으로 고갈 모드 트랜지스터를 사용하며 2개의 새로운 [14]명령을 추가했습니다.
인텔(R) 8086(원래 x86 프로세서)은 8080의 엄격한 확장이 아니기 때문에 오리지널 Datapoint 2200 설계와 거의 유사합니다.거의 모든 Datapoint 2200 및 8008 명령어는 8080, 8085 및 Z80 명령어 세트뿐만 아니라 최신 x86 프로세서의 명령어 세트에도 동등합니다(명령어 인코딩은 다릅니다).[15]
특징들
8008 아키텍처에는 다음과 [citation needed]같은 기능이 있습니다.
- 7개의 8비트 "스크래치패드" 레지스터:메인 어큐뮬레이터(A) 및 기타 6개의 레지스터(B, C, D, E, H, L)
- 14비트 프로그램카운터(PC).
- 7레벨 푸시다운주소 콜스택실제로는 8개의 레지스터가 사용되며 최상위 레지스터는 PC입니다.
- 4개의 조건 코드 상태 플래그(carry (C), 짝수 패리티 (P), 제로 (Z) 및 부호 (S))
- H 및 L 레지스터(HL)를 14비트 데이터 포인터로 사용한 간접 메모리 액세스(상위 2비트는 무시됩니다).
코드 예시
다음 8008 어셈블리소스 코드는 서브루틴용입니다MEMCPY
특정 크기의 데이터 바이트 블록을 한 위치에서 다른 위치로 복사합니다.
001700 000 001701 000 001702 000 001703 000 001704 000 001705 000 002000 066 304 002002 056 003 002004 327 002005 060 002006 317 002007 302 002010 261 002011 053 002012 302 002013 024 001 002015 320 002016 301 002017 034 000 002021 310 002022 066 300 002024 056 003 002026 302 002027 207002030 340 002031 060 002032 301 002033 217 002034 350 002035 364 002036 337 002037 066 302 002041 056 003 002043 302 002044 207 002045 340 002046 060 002047 301 002050 217 002051 350 002035 364 002052 373002053 104 007 004 002056 | ; MEMCPY -- ; 메모리 블록을 한 위치에서 다른 위치로 복사합니다. ; ; 입력 파라미터 ; SRC: 소스 데이터 블록의 14비트 주소 ; DST: 타깃 데이터 블록의 14비트 주소 ; CNT: 복사할 바이트의 14비트 수 조직1700분기 데이터(001700q) SRC DFB 0 ;SRC, 로우바이트 DFB 0 ; 하이바이트 DST DFB 0 ;DST, 로우바이트 DFB 0 ; 하이바이트 CNT DFB 0 ;CNT, 로우바이트 DFB 0 ; 하이바이트 조직2000년 분기 코드: 002000q 메모리 LLI CNT+0 ;HL = 주소(CNT) LHI CNT+1 LCM ;BC = CNT 입력 LBM 고리 LAC BC = 0이면 오비 RTZ 반환 인식하다 LAC ;BC = BC - 1 SUI 1 LCA 랩 SBI 0 LBA GETSRC LLI SRC+0 ;HL = 주소(SRC) LHI SRC+1 LAC ;HL = SRC + BC ADM ;E = C + (HL) 리아 ;(낮은 합계) 입력 ;상위 SRC를 포인트 합니다. 랩 ACM ;H = B + (HL) + CY LHA ;(상한합계) LLE ;L = E LDM (HL)에서 D를 로드합니다. GETDST LLI DST+0 ;HL = 주소(DST) LHI DST+1 LAC ;HL = DST + BC ADM 위와 같은 ADD 코드 리아 입력 랩 ACM LHA LLE LMD 스토어 D to (HL) JMP 고리 루프를 반복합니다. 끝. |
위의 코드에서는 모든 값이 8진수로 지정됩니다.장소SRC
,DST
,그리고.CNT
는 서브루틴의 16비트 파라미터입니다.MEMCPY
CPU에는 주소 지정 가능한 메모리 공간이 14비트밖에 없기 때문에 실제로는 값의 14비트만 사용됩니다.CPU는 한 번에 1바이트 이상을 메모리에 읽거나 쓸 수 없기 때문에 값은 임의의 선택이지만 리틀 엔디안 형식으로 저장됩니다.주어진 메모리 주소에서 직접 레지스터를 로드하는 명령이 없으므로 먼저 HL 레지스터 쌍에 주소를 로드해야 하며, 다음으로 타깃 레지스터를 M 오퍼랜드에서 로드해야 합니다.M 오퍼랜드에서는 HL 레지스터 쌍의 메모리 위치로부터의 간접 부하입니다.BC 레지스터 쌍은 다음과 같이 로드됩니다.CNT
파라미터 값이 0이 될 때까지 루프의 끝에서 감소합니다.사용되는 명령의 대부분은 단일 8비트 opcode를 사용한다는 점에 주의해 주십시오.
디자이너
- CTC(명령어 세트 및 아키텍처):빅터 푸어와 해리 파일.
- 인텔 (실리콘 실장):
- Ted Hoff, Stan Mazor 및 Larry Potter(IBM Chief Scientist)는 시프트 레지스터 메모리가 아닌 RAM 레지스터 메모리를 사용하여 CTC 아키텍처의 싱글칩 구현을 제안하고 몇 가지 명령과 인터럽트 기능을 추가했습니다.8008(원래 1201) 칩 설계는 4004 개발 이전에 시작되었습니다.그러나 Hoff와 Mazor는 칩 설계자나 프로세스 개발자가 아니었기 때문에 "실리콘 설계"를 개발할 수 없었고 개발하지 않았다. 게다가 4004를 위해 Federico Faggin이 개발 중인 실리콘 게이트 기반 설계 방법론과 회로도 아직 이용할 [16]수 없었다.
- 4004의 설계를 마친 페데리코 파긴은 1971년 1월부터 1972년 4월에 성공적으로 완공될 때까지 약 7개월 동안 프로젝트가 중단되었다.
- 프로젝트 엔지니어인 Hal Feeney는 Paggin의 감독 하에 상세한 논리 설계, 회로 설계 및 물리 레이아웃을 수행했으며, Paggin이 원래 인텔 4004 마이크로프로세서용으로 개발한 것과 동일한 설계 방법론을 사용하여 4004용으로 개발한 기본 회로를 사용했습니다.조합된 "HF" 로고는 D5와 D6 본딩 패드 중간쯤에 칩에 새겨져 있습니다.
두 번째 소스
VEB Mikroelktronik "칼 마르크스" 에르푸르트 (MME) U808 (GDR)
MicroSystems International (MIL) MF8008
Siemens SAB8008
「 」를 참조해 주세요.
- Mark-8 및 SCELBI, 8008 기반 컴퓨터 키트
- MCM/70 및 Micral, 선구적인 마이크로컴퓨터
- PL/M - 마이크로프로세서를 대상으로 한 최초의 프로그래밍 언어, Gary Kildall이 개발한 인텔8008
레퍼런스
- ^ CPU 이력– CPU 뮤지엄– CPU 라이프 사이클
- ^ "Thirty years in robotics - Robotics". March 19, 2014. Archived from the original on March 19, 2014. Retrieved April 11, 2018.
- ^ a b c d e f Wood, Lamont (August 8, 2008), "Forgotten PC history: The true origins of the personal computer", Computerworld
- ^ Ken Shirriff는 Bryan Canttril, Jess Frazzel과의 인터뷰에서 Oxide Computing Podcast가 발표한 "첫째, 4004와 8008은 완전히 다른 칩입니다.마케팅에서는 4비트 버전과 8비트 버전인 것처럼 들리지만 완전히 다릅니다." https://oxide.computer/metal/on-the-metal-13-ken-centrif/#t=19:52
- ^ "Inside the world's long-lost first microcomputer". cnet.com. January 8, 2010. Retrieved April 11, 2018.
- ^ 브루넬 대학교, 1974년L. R. 크로포드 박사 학위 논문입니다
- ^ a b "MCS-8 Micro Computer Set Users Manual" (PDF). Intel Corporation. 1972. Retrieved December 4, 2010.
- ^ "Intel 8008 Opcodes". Retrieved December 4, 2010.
- ^ "Intel 8008 (i8008) microprocessor family". CPU World. 2003–2010. Retrieved December 4, 2010.
- ^ Intel. "Gordon Moore and Moore's Law". Archived from the original on September 4, 2009. Retrieved June 28, 2009.
- ^ 인텔 (2012)"인텔 칩스: 타임라인 포스터"
- ^ 인텔 (2008)"마이크로프로세서 빠른 참조 가이드"
- ^ 자세한 내용은 Z80 기사를 참조하십시오.
- ^ 상세한 것에 대하여는, 인텔 8085 기사를 참조해 주세요.
- ^ 상세한 것에 대하여는, 인텔 8086 기사를 참조해 주세요.
- ^ Faggin, Federico; Hoff, Marcian E.; Mazor, Stanley; Shima, Masatoshi (December 1996), "The History of the 4004", IEEE Micro, Los Alamitos: IEEE Computer Society, 16 (6): 10–19, doi:10.1109/40.546561, ISSN 0272-1732
외부 링크
- 8008 데이터 시트 포함 MCS-8 사용자 매뉴얼(1972)
- Wood, Lamont (August 8, 2008). "Forgotten PC history: The true origins of the personal computer". Computer World.
- 인텔 8008 지원 페이지 (비공식 지원 페이지
- 빌 펜츠의 새크라멘토 스테이트 머신에 관한 DigiBarn 컴퓨터 박물관 페이지, 8008년경에 만들어진 풀 마이크로컴퓨터
- Martin, Donald P. (1974). Microcomputer Design. Martin Research.
- — (1976). Microcomputer Design (2nd ed.). Martin Research. OCLC 911808003.
- Runyan, Grant (April 1977). "Now — BASIC for the 8008 — Even!". Kilobaud Magazine: 116–8.
- "A BASIC language interpreter for the Intel 8008 microprocessor". University of Illinois. 1974.
- 8008 어셈블리 언어 레퍼런스 카드
- Shirriff, Ken (December 2016). "Die photos and analysis of the revolutionary 8008 microprocessor, 45 years old".
- — (February 2017). "Reverse-engineering the surprisingly advanced ALU of the 8008 microprocessor".
- — (October 2020). "How the bootstrap load made the historic Intel 8008 processor possible".
- — (November 2020). "Reverse-engineering the carry-lookahead circuit in the Intel 8008 processor".