Mikroszámítógépek I 8085 processzor
I8085 részei Regiszter blokk B-C D-E H-L Stack Pointer Program számláló, Inkrement-dekrement, címlatch
I8085 részei Aritmetikai blokk 8 bites akkumulátor 8 bites ALU Flag bitek Decimális korrekciós hálózat Átmeneti regiszter
I8085 részei Utasítás regiszter-dekóder és vezérlőmű Utasítás dekóder Időzítés és vezérlés Órajel generátor Időzítések, jelzések CPU állapot, üzemmód vezérlés, figyelés, vezérlő és időzítő jelek
Megszakítások TRAP (NMI) Prioritás: 1 Cím: 24h RST 5.5 Prioritás: 2 Cím: 2Ch RST6.5 Prioritás: 3 Cím: 34h RST 7.5 Prioritás: 4 Cím: 3Ch INTR Prioritás: 5 Cím: kívülről Prioritás Maszkolás
Utasítás végrehajtás Utasítás végrehajtás: 1-5 gépi ciklus Gépi ciklusok fajtái: FETCH Memória olvasás Memória írás I/O olvasás I/O írás Megszakítás elfogadás INTerrupt Acknowledge Sin művelet nélküli ciklus ( Bus idle) INA, HALT
Utasítás végrehajtás Gépi ciklus: több fázisból áll. Fázisok: Megegyezik a CLK órajel periódusidejével T1, T2, T3, T4, T5, T6
CPU állapotok RUN: a CPU utasításokat hajt végre. Utasítás végrehajtás, megszakítás elfogadás. WAIT: READY jelre vár a CPU. Tovább fut, ha READY=1 lesz. A WAIT állapot létrejöttét letiltani nem lehet.
HALT: HLT utasítás hatására Megszakítás hatására fut tovább Halt állapotban HOLD kérelmet elfogad HOLD: CPU kimenetei nagy impedanciás állapotba kerülnek. HOLD jel megszüntéig áll fenn. (DMA) HLDA: nyugtázó jel.
Gépi ciklus
Normál gépi ciklus Program végrehajtás, Memóriából vagy I/O egységből olvasás, vagy Memóriába vagy I/O egységbe írás történik. 1 Byte adat mozgatása. T1-T3 alatt adat mozgatás T4-T6 alatt CPU- belüli műveletek
HALT típusú gépi ciklus HLT utasítás hatására jön létre. Utasítás számlálót nem növeli T1 után nem jön T2, hanem HALT állapot Adat és cím busz, valamint az IO/M, RD, WR vezérlő jelek nagy impedanciás állapotba kerülnek HALT megszüntetése: HOLD kérelem, RESET, Külső megszakítás
HOLD állapot T3 fázis előtt mintavételezi a HOLD jelet. A CPU HOLD állapotba kerül és kiadja a HLDA jelet AD0-AD7, A8-A15, RD, WR, IO/M nagy impedanciás állapotba kerül. HOLD jel megszűnte után visszatérés normál állapotba.
Megszakítás kezelés Az utasítás végrehajtás utolsó ciklusában fogad el megszakítást. Megszakítás elfogadás után INterrupt Acknowledge ( INA) ciklus jön létre. INTA által ütemezve CALL utasítás kódot, majd két cím byte-ot vesz át a CPU a megszakító egységtől. TRAP. RST5.5, RST6.5 és RST7.5 fix címekkel rendelkezik. TRAP: nem tiltható le.
A processzor részei Vezérlő egység: Control Unit: A műveleti kód vagy megszakítások alapján a CPU vezérlése a feladata Aritmetikai-Logikai egység: Aritmetikai és logikai műveletek végrehajtása Regiszterek: Utasítás számláló Utasítás regiszter
A processzor részei Regiszterek: Utasítás számláló Utasítás regiszter Bázis cím regiszter Index regiszter Állapot/vezérlő regiszter Stack pointer Puffer regiszterek: Belső és külső busz szétválasztása.
A processzor részei
Utasítás végrehajtás, vezérlő egység Utasítás végrehajtás lépései: Utasítás lehívás Utasítás számláló tartalmának növelése Műveleti kód értelmezése, dekódolás Művelethez szükséges adatok előkészítése, kiolvasása Művelet végrehajtás Eredmény elhelyezése ( akkumulátor, vagy memória)
Utasítás végrehajtás blokkvázlata
Utasítás végrehajtás
Műveleti vezérlés módjai Huzalozott A művelet végrehajtáshoz szükséges elemi tevékenységek sorrendjének vezérlését sorrendi, és kombinációs hálózatok vezérlik. ( PLA) Mikroprogramozott A végrehajtás lépéseit a mikroprogram tárban tárolt utasítások vezérlik
Mikroprogram tár
Mikroutasítások szerkezete
Huzalozott vezérlés
Mikroprogramozott vezérlés:
CISC processzorok műveleti vezérlése Sok, bonyolult utasítás: mikroprogramozott vezérléssel a legegyszerűbb megvalósítani. Adat mozgás művelet végrehajtás közben főleg a memória és a regiszterek között zajlik.
CISC processzorok műveleti vezérlése
RISC procwsszorok művelet vezérlése RISC processzorok: Kevés számú, egyszerű utasítás Az utasítások közvetlenül végrehajthatók A lefordított program cache tárba kerül, a végrehajtás innen történik, hasonlóan a mikroprogramozott vezérléshez. Adatok mozgása főleg a regiszterek között történik
RISC gépek művelet vezérlése
Átlapolt utasítás végrehajtás
Elágazások kezelése: Pipeline törlése
Elágazások kezelése: késleltetett elágazások
Tároló kezelés Tároló hierarchia: Regisztertár 5-10 ns Főtár 50-100 ns Cache tár Főtár 50-100 ns Háttértár 1-10 ms Tömegtároló 300-500 ms
Regisztertár Regiszterek típusai: Felhasználó által elérhető PC, IX, SP, FLAG, általános célú regiszterek Felhasználó által nem elérhető: Vezérlő/állapot, rendszer regiszterek
Regisztertárakkal szemben támasztott követelmények Adatforgalom csökkentése a memória és a processzor között Nagy méret ( 32, 64, 128.. Db.) 3 címes elérés ( 2 operandus + eredmény) Általános felhasználású legyen
Regisztertárak kezelési formái Regiszterbank Ablaktechnika Blokktechnika
Cache tárak jellemzői ON-CHIP ( 8-32 kB) vagy OFF CHIP 64-256 kB ( processzorban vagy kívül) Adatátvitel a cache és a memória között blokkos Utasítás, adat illetve vegyes cache tárolók lehetnek Általában tartalom szerinti visszakereséssel működnek ( asszociatív) cache tár Tartalom cseréjéhez hatékony stratégia kell CPU és cache sebessége legyen azonos
Cache-hit és cache-miss
Asszociatív cache
Közvetlen leképzésű cache
Csoport asszociatív cache
Memóriák Alapfogalmak RAM ROM EPROM EEPROM OTP FLASH
Alapfogalmak Szervezés Bit Byte Szó 1Mx1 bit 1Mx4 bit 1Mx8 bit
Kapacitás Megcímezhető tároló elemek száma Hozzáférési idő
Memóriák Technológia szerint: Mágneses (ma csak háttértár) Félvezetős (ma op. Mem. Kizárólag félvezetős Bipoláris FET- CMOS BICMOS
Tároló elem szerint Statikus: Félvezetős flip-flop .
Dinamikus: szórt kapacitás a tárolóelem
ROM
Bővítés: szóhossz, címtartomány
Memória chip felépítése