Privacy Policy Cookie Policy Terms and Conditions Intel 8080 - Wikipedia, wolna encyklopedia

Intel 8080

Z Wikipedii

Procesor Intel C8080A
Powiększ
Procesor Intel C8080A

Intel 8080 jest jednym z pierwszych mikroprocesorów, wyprodukowany przez Intela w kwietniu 1974 jest 8-bitowym mikroprocesorem wykonanym w technologii n-MOS, pracującym z częstotliwością taktowania 2 MHz. Jest on uniwersalną jednostką centralną złożoną z jednostki arytmetyczno-logicznej, rejestrów roboczych i układu sterowania. Dane i instrukcje są przesyłane do, lub z zewnętrznej pamięci za pośrednictwem 8-bitowej szyny danych, a adresy są przesyłane przez oddzielną 16-bitową szynę adresową.

Wyprodukowany w 1978 roku 16-bitowy procesor 8086, który jest protoplastą wszystkich stosowanych w komputerach zgodnych z PC, zawiera wszystkie instrukcje procesora 8080 i dlatego jest zgodny na poziomie programu źródłowego w kodzie asemblera z procesorem 8080.

Spis treści

[edytuj] Charakterystyka

  • słowo 8-bitowe
  • 72 instrukcje
  • bezpośrednie adresowanie pamięci o pojemności do 64 KB
  • arytmetyka dwójkowa i dziesiętna kodowana dwójkowo (BCD)
  • 8 rejestrów programowych dostępnych dla programisty
  • cykl pracy 2μs, wymuszany przez 2-fazowy zegar zewnętrzny
  • częstotliwość zegara 2-3 MHz (podstawowy cykl rozkazowy – 4 takty)
  • 3 napięcia zasilające: +5V, +12V, -5V
  • ubogi zestaw trybów adresowania i nieuporządkowana lista rozkazów
  • konieczność stosowania dodatkowych układów: zegar i sterownik systemu

[edytuj] Schemat blokowy

W strukturze mikroprocesora można wyróżnić cztery bloki funkcjonalne:

  • blok rejestrów wraz z układem wybierającym
  • jednostkę arytmetyczno-logiczną
  • układ sterowania z rejestrem rozkazów
  • dwukierunkowy, trójstanowy bufor szyny danych

[edytuj] Blok rejestrów z układem wybierającym

Blok rejestrów z układem wybierającym jest statyczną pamięcią z dostępem swobodnym (RAM), zorganizowaną w ten sposób, że tworzy następujące rejestry:

  • licznik rozkazów (PC) – 16 bitowy
  • wskaźnik stosu (SP) – 16 bitowy
  • sześć ośmiobitowych rejestrów uniwersalnych: B, C, D, E, H, L, które można łączyć w pary
  • rejestr pomocniczy składający się z dwóch ośmiobitowych rejestrów W oraz Z

Licznik rozkazów zawiera adresy wykonywanych instrukcji. Przy pobraniu każdego bajtu z pamięci zewnętrznej i wchodzącego w skład instrukcji, zawartość licznika jest automatycznie zwiększana o 1. Stos śladów organizowany jest w pamięci zewnętrznej RAM. Wskaźnik tego stosu (SP) zawiera adres następnego, wolnego miejsca na stosie. Sześć ośmiobitowych rejestrów uniwersalnych jest dostępnych dla programisty i można je używać pojedynczo (jako rejestry 8-bitowe) lub w parach, jako rejestry 16-bitowe. W ten sposób można łączyć w pary rejestry B-C, D-E i H-L. Rejestr pomocniczy wytworzony z rejestrów W i Z nie jest dostępny dla programisty i wykorzystywany jest do operacji wewnętrznych.

Dane ośmiobitowe są wprowadzane do bloku rejestrów poprzez multiplekser. Między blokami rejestrów a rejestrem adresów i buforem adresów mogą zachodzić przesłania. Informacja szesnastobitowa może być zwiększona lub zmniejszona o 1, co zachodzi w układzie generacji następnika i poprzednika. Korzysta się z tego przy aktualizacji zawartości licznika rozkazów i wskaźnika stosu. Rejestr adresów jest połączony z trójstanowym buforem, który można wprowadzić w stan wysokiej impedancji, gdy wymagane jest odizolowanie mikroprocesora od pamięci zewnętrznej, tj. wtedy, gdy urządzenia zewnętrzne przesyłają dane bezpośrednio do pamięci z pominięciem jednostki centralnej (DMA).

[edytuj] Jednostka arytmetyczno-logiczna

Jednostka arytmetyczno-logiczna może wykonywać działania w arytmetyce dwójkowej, operując liczbami ośmiobitowymi, lub w arytmetyce dziesiętnej, gdy ośmiobitowa informacja jest traktowana jako dwie cyfry dziesiętne kodowane dwójkowo. Z jednostką ALU związany jest rejestr znaczników, którego zawartość tworzy warunki pracy przy wykonywaniu operacji arytmetycznych, logicznych i instrukcji warunkowych. Poszczególne bity tego rejestru służą do określenia:

  • zera na wyjściu sumatora
  • przeniesienia
  • znaku parzystości
  • przeniesienia połówkowego

[edytuj] Układ sterowania z rejestrem rozkazów

Rejestr rozkazów jest rejestrem ośmiobitowym, do którego na początku każdego cyklu rozkazowego jest przesyłany pierwszy bajt instrukcji (zawierający kod instrukcji) pobrany z zewnętrznej pamięci przez szynę danych D0 ... D7 i wewnętrzną szynę danych. Zawartość rejestru rozkazowego jest dostępna dla dekodera instrukcji, który generuje, wraz z układem sterującym sygnały sterujące dla wszystkich układów mikroprocesora. Do układów są doprowadzone końcówki ф1, ф2, READY, INT, RESET i HOLD, przez które wprowadza się dodatkowe informacje sterujące. Z układu sterowania jest wyprowadzonych na zewnątrz sześć wyjść identyfikujących stany i cykle mikroprocesora dla układów zewnętrznych. Są to INTE, HLDA, DBIN, SYNC, WR i WAIT.

[edytuj] Bufor szyny danych

Bufor szyny danych jest ośmiobitowym, dwukierunkowym rejestrem służącym do odizolowania wewnętrznej szyny danych od końcówek D0 ... D7 stanowiących zewnętrzną szynę danych. Lista rozkazów 8080 obejmuje:

  • przesłania między rejestrami procesora lub rejestrem a pamięcią zaadresowaną w jednym z trzech trybów (natychmiastowy, bezpośredni, zawartością pary rejestrów)
  • operacje arytmetyczne dodawania, odejmowania, porównywania wykonywane na ośmiobitowych liczbach dwójkowych, całkowitych bez znaku lub ze znakiem w kodzie U2, jednym z argumentów operacji jest zawartość akumulatora, drugim – zawartość rejestru roboczego, argument bezpośredni lub zawartość komórki pamięci zaadresowanej parą H-L
  • dodawanie dwucyfrowych liczb dziesiętnych, wykonywane metodą korekcji zawartości akumulatora
  • dodawanie i odejmowanie wielokrotnej precyzji
  • operacje logiczne na słowach ośmiobitowych
  • operacje przesyłania, zwiększania, zmniejszania i dodawania szesnastobitowych adresów traktowanych jako liczby całkowite bez znaku
  • rozkazy skoku, przy czym skok warunkowy jest skokiem bezwzględnym, a warunkiem skoku jest stan wybranego znacznika w rejestrze stanu
  • rozkazy wejścia/wyjścia realizujące przesłania między akumulatorem a układem sprzęgającym, którego numer jest podany w rozkazie

[edytuj] Historia

W Polsce pod koniec lat 70. zakłady półprzewodnikowe CEMI produkowały mikroprocesor o nazwie MCY7880 w pełni zgodny z 8080 oraz dodatkowe układy wspomagające zgodne z układami Intela.

[edytuj] Linki zewnętrzne


THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - 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 - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - 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 - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - 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 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 -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - 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 - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - 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 - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - 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:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - 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 - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - 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 - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - 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