Az I8085 mikroprocesszor felépítése.


Az I8085 mikroprocesszor felépítése.
Regisztertömb.
Aritmetikai és logikai egység (ALU).
Utasítás regiszter.
Belső felépítés.
Lábkivezetések funkcióinak leírása.
 


A technológia fejlődése következtében az I8085-ös processzornál a 8 bites központi egység mellet elfért az órajel-generátor áramköre is. Mivel a tok kivezetéseinek számát nem akarták 40 fölé növelni, így szükségessé vált az adatvezeték multiplex használata. Az i8080 CPU estén, az adatvezetékeken a processzor az un. bels? állapotinformációt adja a ciklus elején, míg i8085-ös esetén a címzés alsó 8 bitje (A0…A7) címbitek továbbítódnak az adatbuszon. Ezzel a megoldással nyolc címkivezetést lehetett vezérlési funkcióra áttenni.

Az I8085 főbb jellemzői:
 - egyetlen +5 V-os tápfeszültség,
 - rögzített utasításkészlet,
 - byte szervezés,
 - 64 kbyte közvetlenül címezhető memória,
 - 256 kiviteli, 256 beviteli port egyenként 8 bites,
 - 4 CPU-n belüli, és egy külső cím generálású megszakítás,
 - a programvégrehajtás újraindítható leállítása,
 - közvetlen memória hozzáférés (DMA),
 - áramkörön belüli órajelgenerátor,
 - 3-5 MHz-es órajel,
 - soros kivitelli/beviteli lehetőség,
 - 40 lábú tokozás.

A fő funkcionális egységek a következők:
- Regisztertömb és címlogika
- Aritmetikai és logikai egység (ALU)
- Utasításregiszter és dekódoló
- Vezérlő és időzítő egység
 

Regisztertömb:
A regisztereket adattárolásra, címzésre, utasítás-kódolásra, állapotok jelzésére számolásra használják.
A regiszterblokk regiszterei:
-  6 db 8 bites általános célú regiszterek
-  Veremtár mutató (Stack Pointer) 16 bites (SP)
- Programszámláló 16 bites (PC)
- Címnövelő/csökkentő (Incremener/Decrementer) 16 bites

A hat általános célú nyolcbites regiszter használható külön-külön, vagy regiszterpárban.
Tartalmuk jelenthet adatot, vagy értelmezhető címet is.
Stack Pointer lásd előző fejezetben!

A programszámláló mutatja a következő végrehajtandó utasítás helyét a memóriában.
Minden utasítás beolvasása után a tartalma inkrementálódik.
A regiszterekbe az adatátvitel a belső adatcsatornán és a multiplexeren keresztül történik.
A cím puffer fogadhat 16 bites adatot bármelyik regiszterpárból.
A regisztertömbhöz inkrementáló/dekrementáló áramkör csatlakozik.

Belső felépítés

 

Aritmetikai és logikai egység (ALU):
Az aritmetikai, logikai és léptető műveletek elvégzése az ALU-ban történik.
Az ALU a regiszterek tartalmával végez az utasítás által meghatározott műveletet és az eredményt a belső adatcsatornán
keresztül az “A” akkumulátorba viszi. A műveletvégzésre hatással van a FLAG regiszter tartalma, és az eredmény
meghatározzaa következő flag tartalmát.

Utasítás regiszter:
Az utasítás regiszter letárolja az utasítás első byte-ját, és ezt alakítja vezérlő jellé az utasítás dekóder.
Az utasítás dekóder, valamint a vezérlő és időzítő logika kimeneti jelei határozzák meg az előbbi egységek (regiszter, ALU) működését.

Vezérlő és időzítő egység:
Az egység feladata a belső működéshez szükséges időzítő-vezérlő jelek létrehozása mellett:
  - a mikroprocesszor állapotát befolyásoló külső aszinkron jelek fogadása,
  - a mikroprocesszor adat és címcsatornájának értelmezéséhez, az adatátvitel irányának meghatározásához a belső
    állapotok jelzéséhez vezérlő jelek kiadása.

Az I8085 mikroprocesszor kivezetései, be és kimenő jelei:

1-2.     Az X1 és X2 bemenetek a belső órajel-generátor kivezetései a külső kvarckristályhoz, vagy RC hálózathoz.
           Az X1 bemenet a kvarckristály helyett külső órajelhez is köthető.

3.        A RESET OUT jelzi, hogy a központi egység alaphelyzetbe állítása folyamatban van.
           Ezt a jelet lehet használni a rendszer alaphelyzetbe állítására, mivel a processzor az órajelhez van szinkronizálva.

4.        A SOD (Serial Output Data) kimenet a soros adatkimenet.
           E kimenet jele a SIM (Set Interrupt Mask "állítsd be a megszakításmaszkot") utasítás hatására 1 vagy
           0 állapotba kerül.

5.        A SID (Serial Input Data) bemenet a soros adatbemenet. A kivezetésen lévő bit az akkumulátor 7-es bitjébe kerül a
           RIM (Read Interrupt Mask "olvasd be a megszakításmaszkot") utasítás hatására.

6.        A TRAP bemenet jele nem maszkolható megszakításkérő jel.

7-8-9. Az RST 7.5, RST 6.5, RST 5.5 bemenetek RESTART utasítással operáló megszakításkérés bemenetek növekedő
          prioritással (7.5 legmagasabb prioritású).

10-11. Az INTR bemenetre és  az INTA negált kimenetre a megszakításkérésre fogadó és nyugtázó vezetékei csatlakoznak.

12-19. Az AD0...AD7 multiplexelt adat be, ill. kimenetek és címkimenetek.

20. GND vagy VSS  kivezetés a rendszer közösített földpontja.

21-28. Az A8...A15 címvezetékek.

29, 33. Az S0 és S1 (Status) kimenetek az adatbusz állapotát jelzi ki kódolt formába.

30. Az ALE (Address Latch Enable) háromállapotú kimenet szolgáltatja a külső áramköröknek a mintavevő jelet,
     amellyel a multiplexelt buszról leválasszuk a cím byte-ot.

31. A WR negált háromállapotú kimenet aktív 0 jelszint jelzi, hogy a tárban vagy a perifériába írás következik,
      a központi egység az adatbuszra küldi a beírandó adatot.

32. Az  RD negált háromállapotú kimenet aktív 0 jelszint jelzi, hogy a tárban vagy a periféria olvasása folyik az
      adatbuszon, a központi egység kész az adat fogadására.

34. Az IO/ Mnegált  (Input-Output/Meory) kimenet jele jelzi, hogy a központi egység az írás/olvasás (R/W) ütem során a
      perifériához vagy a tárhoz kíván fordulni.

35. A READY bemenet jelével végezhető el a lassú tár vagy perifériakivárás. Amíg ez a bemenet nem 1 addig a központi
      egység nem fejezi be az olvasási, illetve kiírási műveletet.

36. A RESETIN negált bemenet jele visszaállítja az utasításszámlálót 0-ra.

37. A CLK (CLocK) kimenet jele a rendszerid?zítés alap órajele, amikor a központi egység kristály vagy RC oszcillátor vezérléssel üzemel.

38, 39. A HOLD bemenet jele és a HLDA kimenet jele közvetlen tárhozzáférést tesz lehetővé a központi egység működésének felfüggesztésével.

40. VCC +5V