Privacy Policy Cookie Policy Terms and Conditions 자일로그 Z80 - 위키백과

자일로그 Z80

위키백과 ― 우리 모두의 백과사전.

이 문서는 편집 지침에 맞춰 다듬어야 합니다.

Z80 는 미국 자일로그사가 제조하는 8비트 마이크로 프로세서이다. 1976년에 발표되어 1980년대의 중순까지는 퍼스널 컴퓨터의 CPU 등 넓은 용도로 사용되었다. 시마 마사토시를 비롯하여 인텔에서 나온 8080의 개발 스탭이 설계했기 때문에 8080과 바이너리 레벨에서 호환된다.

2.5 MHz의 Z80, 4 MHz의 Z80A, 6 MHz의 Z80B, 8 MHz의 Z80H 및, Z80M(군사용?) 등의 변종과 타사에서의 세컨드 소스 제품이 있다.

Z80과 그 호환 CPU는 일본 전기의 PC-6001, 6601, 8001, 8801 시리즈, 샤프의 MZ, X1 시리즈, MSX 컴퓨터, 세가의 게임기등에 탑재되었다. 또, Z80에서 명령을 몇 개 뺀 간략판이 닌텐도의 게임보이에 사용되고 있다.

자일로그사는 이를 16비트(Zilog Z800, Zilog Z8000, Zilog Z180, Zilog Z280) 32비트 (Zilog Z80000, Zilog Z380)로 확장하려고 노력하였으나, 다른 회사에서 이미 앞서는 바람에 좌절되었다. 자일로그사의 가장 최근의 중앙처리장치는 자일로그 eZ80이며, Z80을 24 MB의 어드레싱 능력을 가지도록 만든 빠른 CPU이다. 그 외에도 8080에 있던 주변 회로 IC 8251(SIO)·8253(CTC/PIT)·8255(PIO) 에 대응하는 것으로 Z80SIO, Z80CTC, Z80PIO, Z80DMA 등의 패밀리가 있다.

MS-DOS의 전신인, 8비트 컴퓨터의 CP/M은 Z80을 기준으로 제작되었다.


[편집] Z80의 개요

Z80은 인텔 8080 마이크로 프로세서의 개량형이라고 할 수 있는 제품이며, 8080에 비해 약간의 아키텍쳐 확장, 전원 5V 단일화 및, 보다 높 은클럭 주파수 대응 등을 도모할 수 있었다. 주소 공간은 16비트(64KB)로 그 이상으로 확장할 때에는 MMU등으로 뱅크 교환을 한다. i8080의 개발진들이 회사를 나와 설립한 회사가 Zilog였으며, Z80은 i8080과 소프트웨어 호환성이 있게 설계되었다. i8080에 더 많은 명령어, 인터럽트 모드가 추가되었다. DRAM 리프레시 회로도 포함하고 있다.

또한 최대클럭 주파수의 차이는 Z80A (4 MHz), Z80B (6 MHz) 등 말미에 붙인 알파벳으로 구분된다.

아키텍쳐 확장은 DRAM 정보를 유지(리프레쉬)하는 기능을 내장하기 위한 레지스터 추가, 8080에서는 1조인 범용 레지스터군을 바꾸어 사용할 수 있는 앞와 뒤, 2조로 했고, 또, 2개의 인덱스 레지스터를 사용한 메모리 조작을 포함한 명령의 증강, 인터럽트 제어의 강화, 와이어드 로직에 의한 명령의 실행 등이 이루어졌다. 곱셈과 나눗셈 명령은 8080과 마찬가지로 존재하지 않는다.

8080에 대해서 상위 호환성을 가져, 8080을 위해서 쓰여진 소프트웨어를 모두의 변경 없이 실행할 수 있지만 명령을 써 나타내기 위한 「니모닉」는 8080과는 완전히 다르다. 보다 쉽게 기술할 수 있도록 정리된 것이다. (초보자도 알기 쉬운 반면 다른 CPU의 니모닉과 비교하면, addressing mode가 불확실하다는 결점도 있었다.) 리틀 엔디언으로 로드 명령은 소스가 뒤 데스티네이션이 앞이다.

또, 본래 16비트 고정의 인덱스 레지스터를 8비트로 사용할 수 있는 등의 기능은 하드 구성상에서 파생했다고 생각된다. 명령어 표에는 없는 숨겨진 명령이 존재했다.

Z80는 「실행에 걸리는 클럭수나 명령의 총바이트수가 보통으로 명령을 썼을 때보다 적게 된다」라고 하는 테크닉이 다수 존재해, 이것들은 「최적화」 「클락 깎기」 등으로 불렸다.또, 추가된 블록 전송 명령이나 인덱스 레지스터 명령은, 다른 명령으로 대용하는 경우보다 소요 클락수가 크고, 사용하지 않는 일이 있었다.

그 밖에 Z80는, 상대 점프는 할 수 있는 것의 범위가 좁은 등리로케이터블인 구성이 취하기 힘들고,멀티태스킹을 갖추는 OS를 만들려면 적합하지 않다고 여겨졌다. 또, 주소 참조시의 오프셋 지정은 범용 레지스터 사용시에는 없고, 인덱스 레지스터 사용에서는 오프셋 지정이 0~7으로 고정인 모아 두어 C언어의 포인터와의 궁합이 좋지 않은 면이 있었다.

또한 Z80는 addressing mode가 적어서, 각 명령 코드를 16 진수로 기억하는 일도 그렇게 어렵지는 않았다.

[편집] 레지스터 세트 (괄호내는 레지스터의 사이즈:비트수)

A,B,C,D,E,H,L는 8080의 동명 레지스터와 같은 기능을 가진다. F,F'는 8080 호환의 flag register이다. 범용 레지스터표(8) A F B C D E H L 범용 레지스터뒤(8) A' F' B' C' D' E' H' L' 인덱스 레지스터(16) IX IY 프로그램 카운터(16) PC 스택 포인터(16) SP 리프레쉬 카운터(7) R 새치기 벡터 레지스터(8) I

데이터 버스 8비트, 어드레스 버스 16비트의 하드웨어에 A, F, B, C, D, E, H, L, IX, IY, R 등의 레지스터가 있다. 이 중 IX, IY는 16비트 길이의 인덱스 레지스터로 Z80에 추가된 것이다. 또 A, F, B, C, D, E, H, L은 각각 이면 레지스터 A', F', B', C', D', E', H', L'가 존재하므로 서로 전환해가며 사용할 수 있다. 레지스터 중 B, C, D, E, H, L의 8비트 레지스터들은 각각 BC, DE, HL로 묶어서 16비트 레지스터로 사용 가능하다.

[편집] I/O포토 Z80에는 8080으로 같이 메모리주소와는 별도로 0으로부터 FF(255)까지의 I/O포트 주소를 가지고 있었다. 포트 주소는 어드레스 버스의 하위 8비트에 출력되었지만, 상위 8비트에도 동시에 값이 출력되는 사양이 되어 있었다(이 값에는 I/O주소를 C레지스터로 지정하는 명령의 경우는 B레지스터, 그 이외의 명령은 A레지스터의 값이 이용된다).

이 사양을 이용하면 I/O포토 공간을 16비트 주소로 취급할 수 있어 그래픽메모리를 여기에 할당하는 것으로, 메인 메모리가 그래픽메모리에 의해서 압박받는 것을 막을 수 있다.샤프의 X1(은)는 그 대표적인 머신으로, 같은 비행기능을 사용한 것은 그 밖에Bubcom80등이 있다.

[편집] 자이로그 이외의 Z80 세컨드·소스 계약에 의하는 것 외 회사에서의 생산도 행해졌다., 이러한 제품에는,샤프의 「LH0080」모스 텍의 「MK3880」등이 있다.또,일본 전기(NEC)가 독자적으로 호환성이 있는 「μPD780」를 출하했던 것에 대해, 자이로그는 이것을 칩 저작권 침해로서 소송을 걸었지만 최종적으로는 양자는 화해해 제조 판매가 계속되었다.

원래는 NMOS 프로세스로 제조되었지만, 일부의 세컨드·소스의 제조자에게서는, 독자적으로 CMOS 프로세스화해 소비 전력의 저감을 도모한 제품(NEC 「μPD70008」, 샤프 「LH5080」,토시바「TMPZ84C00」등)도 출시되고 있다.

또, 내셔널·반도체에서는, CMOS화와 함께,인텔8085과 같이 어드레스 버스의 하위와 데이타 버스를 같게 하고, Z80와 소프트웨어의 호환성을 가지는 「NSC800」가 제조되었다.

현재에도 제어, 조입용으로서 메모리 및 주변기기의 제어용 회로를 단일의 패키지에 집적한 LSI가 제조되고 있어 ASIC의 IP코어로서 Z80의 호환 프로세서를 준비하는 디바이스 메이커도 많다.

또, 근래에는 2002년에 샤프가 시스템 액정의 데먼스트레이션으로서 유리 기판상에 Z80를 형성해, MZ80C의 CPU와 교환해 동작시켰다.

[편집] 다른 주된 Z80 호환 CPU (고속화나, 주변 기능의 확장이 된 것)

HD64180 - 히타치 제작소(현르네사스테크노로지)가 개발. 고속화된 Z80. 빅터의MSX2, HC-90,95에 탑재되었다. 후지쯔의FM TOWNS HR등의 CD-ROM콘트롤러에도 사용되었다. R800 - (주) ASCII가 개발한, 내부 16비트의 고속판 Z80 호환 CPU. 곱셈 명령을 확장하고 있지만 불편이 있다. MSX turboR에 탑재되었다. MMU나 DMA를 가지지만 같은 turboR에서는 사용되지 않았다. μPD9002 - 일본 전기가 개발한, 16비트 PCPC-88VA에 탑재된 CPU. V30하지만 8080 호환 모드를 가지는 것과 같게, V30 모드와 Z80 호환 모드를 가진다. KC80 - 카와사키 마이크로일렉트로닉스( 구카와사키 제철)의, Z80 호환의 고속판 CPU. 곱셈·나눗셈 명령을 가진다. KC80를 코어에 MMU등을 추가한 편입용 IC로서 KL5C8012, KL5C8016, KL5C8400가 판매되고 있다. 16비트판으로 상위 호환의 것 KC160도 판매되고 있다. [편집] 후계 CPU Z180 - 히타치의 것 HD64180을, 자이로그사가 자사의 제품으로서 채용한 것. Z280 - 16비트 확장판, 별로 채용되는 일 없고, 사라졌다., Z380 - 32비트 확장판.16비트의 Z8000에 흡수되어 발전적 해소했다. [편집] 주된 개발 환경 어셈블러 M80 C언어 LSI C-80 Hitech-C BASIC는 생략

이 문서는 [[:{{{1}}}]]에서 한국어로 번역 중입니다. 원문은 글 안에 주석 처리되어 있습니다. 같이 번역해 주세요.

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu