1 / 19

Komunikace periférii

Komunikace periférii. KOMUNIKACE PERIFERÍ S CPU. mohou nastat čtyři základní situace: periferie vyžaduje pozornost CPU periferie zasílá data CPU CPU zasílá data periferii periferie zasílá data do RAM CPU musí v každém okamžiku vědět s jakou periferií komunikuje

altessa
Download Presentation

Komunikace periférii

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Komunikace periférii

  2. KOMUNIKACE PERIFERÍ S CPU • mohou nastat čtyři základní situace: • periferie vyžaduje pozornost CPU • periferie zasílá data CPU • CPU zasílá data periferii • periferie zasílá data do RAM • CPU musí v každém okamžiku vědět s jakou periferií komunikuje • jednoznačnost komunikace zajistí tzv. systémové prostředky

  3. SYSTÉMOVÉ PROSTŘEDKY • adresy I/O portů • hardwarová přerušení IRQ • kanály DMA • Pozn.: není možné přidělit stejný systémový prostředek (stejné IRQ, stejný rozsah adres I/O, stejné DMA) více periferiím, protože by došlo ke konfliktu

  4. ADRESY VSTUPŮ A VÝSTUPŮ (I/O PORTY) • umožňují komunikovat CPU s každým zařízením v PC zvlášť • každý PC má 64 kB adres I/O • každá periferie má pro komunikaci s CPU vyhrazen určitý rozsah těchto adres • adresace probíhá po adresových vodičích sběrnice (CPU sdělí řadiči sběrnice, co adresuje - RAM či I/O)

  5. PŘENOS DAT MEZI RAM A PERIFERIÍ • prostřednictvím PIO (programovaný vstup/výstup) • prostřednictvím DMA (přímý přístup do paměti) • PIO pomalejší než DMA

  6. PROGRAMOVANÉ VSTUPY A VÝSTUPY ( PIO ) • CPU posílá příkazy periferii prostřednictvím adres I/O • CPU vyhradí sběrnici pro danou periferii • periferie připraví k přenosu požadovaná data • CPU přenese data po sběrnici z periferie do RAM (příp. naopak)

  7. PŘÍMÝ PŘÍSTUP DO PAMĚTI (DMA) • CPU pošle počáteční příkaz periferii prostřednictvím adres I/O • periferie požádá CPU o přímý přístup do RAM - vybudí vodič DREQ (DMA Request) na sběrnici • CPU povolí přímý přístup - vybudí vodič DACK (DMA Acknowledgement) na sběrnici • vodič DREQ a vodič DACK tvoří jeden tzv. DMA kanál

  8. FUNKCE DMA

  9. FUNKCE DMA

  10. VOLÁNÍ CPU PERIFERIÍ • periferie může získat pozornost CPU dvěma způsoby : • výběrem ( polling) • hardwarovým přerušením

  11. Polling (výběr) • CPU neustále sleduje činnost periferie • nevýhoda - pomalé • používá se u jednoúlohových systémů (DOS) • příklad - tisk pod DOSem

  12. HARDWAROVÉ PŘERUŠENÍ • CPU nesleduje činnost zařízení • pokud periferie vyžaduje činnost procesoru, aktivuje určitý vodič na sběrnici (tzv. kanál přerušení - IRQ) • každá periferie - své číslo IRQ (jednoznačně identifikuje periferii v systému) • dvě periferie nesmějí používat stejné IRQ - konflikt

  13. Zpracování přerušení Hlavní program Přerušení Obslužný program Pokračování hlavního programu

  14. ZPRACOVÁNÍ PŘERUŠENÍ • 1) periferie aktivuje linku přerušení na sběrnici (kanál přerušení - IRQ) • 2) řadič IRQ (čip Intel 8259) zpracuje žádosti o přerušení dle priority (přeruší činnost CPU) • 3) CPU uloží rozpracovaná data do zásobníku • 4) CPU vyhledá příslušný vektor přerušení (odkaz na program řídící příslušnou periferii) • 5) po nalezení IVA (InterruptVectorAddress) se spustí program přerušení (interrupthandler) • 6) CPU obslouží periferii, která přerušení vyvolala • 7) CPU se vrátí k původní práci

  15. Příčiny přerušení • 1) programová přerušení, patří sem např.: • nepřípustný operační znak • přeplnění • nenaplnění • dělení nulou • nesprávná adresa (není v paměti) • nesprávný tvar operandu • 2) technická přerušení, patří sem např.: • výpadek napájení (např. zásah meteoritu  ) • porucha technického vybavení

  16. Příčiny přerušení • 3)I/O(V/V) přerušení od periférie • reprezentuje informaci, že nějaká periférie změnila stav • 4) vnější přerušení • příchod signálu na tzv. přerušovací vstupy procesoru • 5) instrukční přerušení • pomocí speciálních instrukcí • INT (INTerrupt) • SVC (SuperVisorCall)

  17. Konfigurace systémových prostředků • zjistit pomocí softwaru aktuální využití systémových prostředků • pro každou periferii nastavit samostatné IRQ, DMA a I/O • nastavit nejprve periferie s malým množstvím možností • konfigurace může být • hardwarová (jumpery) • softwarová

  18. Hardwarová konfigurace

  19. Hardwarová konfigurace

More Related