Architektúra, megszakítási rendszerek



Hasonló dokumentumok
Az interrupt Benesóczky Zoltán 2004

Bevezetés a számítástechnikába

Megszakítási rendszer

Mikrorendszerek tervezése

A megszakítási rendszer

Megszakítási rendszer

Az operációs rendszer szerkezete, szolgáltatásai

Számítógépek felépítése

Digitális technika VIMIAA01

5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix

Digitális technika VIMIAA01

A Számítógépek hardver elemei

OPERÁCIÓS RENDSZEREK. Elmélet

Számítógép Architektúrák I-II-III.

Máté: Assembly programozás

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT

Digitális technika VIMIAA01 9. hét

A MiniRISC processzor

Mikroprocesszor CPU. C Central Központi. P Processing Számító. U Unit Egység

Digitális rendszerek. Digitális logika szintje

Számítógépek felépítése, alapfogalmak

Számítógépek felépítése, alapfogalmak

A Számítógépek hardver elemei

A Számítógépek felépítése, mőködési módjai

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

5. tétel. A számítógép sematikus felépítése. (Ábra, buszok, CPU, Memória, IT, DMA, Periféria vezérlő)

SzA19. Az elágazások vizsgálata

Számítógép Architektúrák

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Perifériák hozzáadása a rendszerhez

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

SZÁMÍTÓGÉPARCHITEKTÚRÁK

Számítógép architektúrák

Informatika érettségi vizsga

Számítógép Architektúrák

Mechatronika és mikroszámítógépek. 2018/2019 I. félév. Külső megszakítások

A számítógép alapfelépítése

Nyíregyházi Egyetem Matematika és Informatika Intézete. Input/Output

Aritmetikai utasítások I.

Dr. Illés Zoltán

Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás

ARM Cortex magú mikrovezérlők

Pénzügyi algoritmusok

Assembly programozás levelező tagozat

9. Fejezet: Input/Output

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter

Digitális rendszerek. Utasításarchitektúra szintje

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1

Operandus típusok Bevezetés: Az utasítás-feldolgozás menete

Digitális technika (VIMIAA01) Laboratórium 11

Dr. Illés Zoltán

BEÁGYAZOTT RENDSZEREK TERVEZÉSE UDP csomag küldése és fogadása beágyazott rendszerrel példa

PMU Kezdı lépések. 6-0 Csatlakozás LG GLOFA-GM és SAMSUNG PLC-hez. 6-1 Kommunikáció LG PMU és LG GLOFA-GM7 / GM6 / GM4 között

Máté: Számítógép architektúrák

Egyszerű számítógép működése

Bevezetés az informatikába

A 6502 mikroprocesszor

A számítógép egységei

Előadás_#02. Előadás_02-1 -

A mikroprocesszor felépítése és működése

Digitális technika (VIMIAA01) Laboratórium 11

A 32 bites x86-os architektúra regiszterei

1. ábra: Perifériára való írás idődiagramja

Operációs rendszerek. Bemutatkozás

találhatók. A memória-szervezési modell mondja meg azt, hogy miként

Az integrált áramkörök kimenetének kialakítása

A ChipScope logikai analizátor

Operációs rendszerek. Folyamatok kezelése a UNIX-ban

A mikroprocesszor egy RISC felépítésű (LOAD/STORE), Neumann architektúrájú 32 bites soft processzor, amelyet FPGA val valósítunk meg.

VI. SZOFTVERES PROGRAMOZÁSÚ VLSI ÁRAMKÖRÖK

Máté: Számítógép architektúrák

Szenzorhálózatok programfejlesztési kérdései. Orosz György

Assembly. Iványi Péter

Kivételkezelés a C++ nyelvben Bevezetés

1. Az utasítás beolvasása a processzorba

Yottacontrol I/O modulok beállítási segédlet

TARTALOMJEGYZÉK. 1. BEVEZETÉS A logikai hálózatok csoportosítása Logikai rendszerek... 6

Jelfeldolgozás a közlekedésben

Perifériakezelési módszerek (Korrigált) Feltétel nélküli

Digitális technika II. (vimia111) 5. gyakorlat: Tervezés adatstruktúra-vezérlés szétválasztással, vezérlőegység generációk

2. Folyamatok. Operációs rendszerek. Folyamatok. Bevezetés Folyamatkezelés multiprogramozott rendszerekben. Folyamatok modellezése

Adatszerkezetek 1. Dr. Iványi Péter

Számítógép architektúra

AF hangú kód adó-vevő. Fő jellemzők:

Központi vezérlőegység

ATMEL ATMEGA MIKROVEZÉRLŐ-CSALÁD

A LOGSYS GUI. Fehér Béla Raikovich Tamás, Laczkó Péter BME MIT FPGA laboratórium

Operációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok:

Architektúra, címzési módok

2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés

Léteznek nagyon jó integrált szoftver termékek a feladatra. Ezek többnyire drágák, és az üzemeltetésük sem túl egyszerű.

1. Digitális írástudás: a kőtáblától a számítógépig 2. Szedjük szét a számítógépet 1. örök 3. Szedjük szét a számítógépet 2.

1. tétel. A kommunikáció információelméleti modellje. Analóg és digitális mennyiségek. Az információ fogalma, egységei. Informatika érettségi (diák)

Programozási nyelvek 6. előadás

SZÁMÍTÓGÉP FELÉPÍTÉSE (TK 61-TŐL)

Számítógép Architektúrák (MIKNB113A)

A programozás alapjai

Bevezetés az informatikába

Gábor Dénes Főiskola Győr. Mikroszámítógépek. Előadás vázlat. 2004/2005 tanév 4. szemeszter. Készítette: Markó Imre 2006

I. C8051Fxxx mikrovezérlők hardverfelépítése, működése. II. C8051Fxxx mikrovezérlők programozása. III. Digitális perifériák

Átírás:

Architektúra, megszakítási ek Mirıl lesz szó? Megszakítás fogalma Megszakítás folyamata Többszintű megszakítási ek Koschek Vilmos Példa: Intel Pentium vkoschek@vonalkodhu Koschek Vilmos Fogalom A számítógép működése közben igen gyakran következnek be olyan események, amelyek a feldolgozás szempontjából váratlanak tekinthetők Mi volt az előzmény? Eredeti cél: i/o és számítási műveletek összehangolása i/o indítása i/o befejezése MEGSZAKÍTÁS T w T w -> CPU? t MEGSZAKÍTÁSI RENDSZER Várakozás Másik folyamat Koschek Vilmos 3 Koschek Vilmos 4 Másik folyamat indítása Példa, billentyűzet I/O indítása Új folyamat indítása I/O befejezésének jelzése MEGSZAKÍTÁS I/O művelet elvégzése t Billentyűzet ESC Billentyű leütése (9) 3OK 4Billentyű sorszám (x) Billentyű leütése CPU (IT vezérlő,bios) 5ESC:xB Új folyamat Folyamat befejezése Billentyűzet puffer, (FIFO) Leütöttek egy billentyűt? 6ASCII kód Koschek Vilmos 5 MEGSZAKÍTÁS? Billentyű leütését váró alkalmazás Koschek Vilmos 6

Akkor mi is történt? Események csoportosítása Megszakítás kiszolgálása : billentyű kód beolvasása a pufferbe, I/O művelet elvégzése Szinkron Aktuális program Visszatérés az aktuális programhoz Aszinkron Váratlan esemény, MEGSZAKÍTÁS: billentyű leütés I/O művelet befejeződése Koschek Vilmos 7 Koschek Vilmos 8 Szinkron események Aszinkron események A program futása során meghatározható helyen, időben (szinkron a program futásával!) Az esemény időpontja nem ismert, nincs szinkronban a programmal Várható, pl: Pl: Nullával való osztás Aritmetikai túlcsordulás Illegális gépikód Laphiba Tömb index DMA átvitel Soros port Nem várható, pl: Memória paritás HDD hiba Koschek Vilmos 9 Koschek Vilmos Megszakítások okai () Megszakítások okai (,3) Géphibák Jellemzően HW hibák Pl: Hibajelző kódok CPU regiszterek OPT Adatátvitel Energia ellátás hibái Klimatizáció-hűtés hibák I/O források Perifériák megszakítási kérései Pl: nyomtató CPU -> átviteli igény -> nyomtató CPU <- megszakítás <- nyomtató CPU <- adatátvitel > nyomtató 3 Külső források Külső eszközök által generált megszakítások Pl: hálózati kommunikáció Koschek Vilmos Koschek Vilmos

Megszakítások okai (4) Megszakítások csoportosítása 4 Programozási források Szándékos Hiba Pl: hívás Memóriavédelem megsértése Tényleges tárkapacitás túlcímzés Címzési előírások megsértése (,4, ) Aritmetikai-logikai műveletek Koschek Vilmos 3 Szinkron / aszinkron Utasítások végrehajtása között (tárv) illetve közben (hw) DEC/VAX move Felhasználó által explicit kért (rendszh) és nem kért Megszakított program folytatódik, vagy befejeződik (hw hiba) Felhasználó által maszkolható, nem maszkolható Koschek Vilmos 4 Megszakítás folyamatának áttekintése Elfogadható a megszakítás? Következő utasítás nem Utasítások végrehajtása Következő utasítás INTR bemenet aktív (INTerrupt Request) Elfogadható? igen Analízis igen nem Jött megszakítás? Állapot visszaállítás, visszatérés Érvényre juthat? Megszakítható? Prioritás Maszkolás Állapot mentése Kiszolgálás Elfogadható, INTACK az egységnek (INTerrupt ACKnowledge ) Koschek Vilmos 5 Koschek Vilmos 6 Prioritások Egyszerre több megszakítás, melyiket? Prioritás kezelés Prioritás nélküli: beérkezés sorrendjében Idő? Prioritásos: adott sorrend rendelünk Prioritás hozzárendelése Fix: hozzárendelés állandó Alacsonyabb? Körben forgó: szinteken belül azonos Utoljára kiszolgált? Koschek Vilmos 7 Speciális maszk: egyes kérések tiltása Parancs a megszakítás elemzésére Aktuális prioritás Maszkolás Megszakítás kérések a forrásoktól 3 () Kiválasztó logika flag regiszter Parancs a megszakításra Elfogadott prioritás Maszk regiszter 3 Maszk beállítása Koschek Vilmos 8? 3

Megszakítás analízis Megszakítást kérő egység azonosítása ADATBUS Daisy chain Egység azonosítója Lekérdezéses (sorrend!) HW : daisy chain SW : sw polling Vektoros Rutin címe Azonosító kód CPU U U Un!! INTACK INTR Koschek Vilmos 9 Koschek Vilmos Beolvasott vektor: PC Cím 4 bájt: Vektor -> x 4 bájt = Vektor -> x 4 bájt = 4 Vektor -> x 4 bájt = 8 n Vektor -> n x 4 bájt = n x 4 35 Vektoros 4 8 5 35 5 7 OPT 5 35 5 7 rutin rutin rutin n rutin rutin címe rutin címe rutin címe n rutin címe alkalmazás 3 Mentés ITTTT Megszakított program állapotának mentése alkalmazás Mit kell elmenteni? (PSW) Hova kell elmenteni? Hogyan? 3alkalmazás MENTÉS Koschek Vilmos Megszakítások Koschek Vilmos Stack Működés: Pl: PSW, PSW,PWS PSW PSW PSW Hol használják? PSW 3 Állapot mentése Paraméterek PSW PSW PSW PSW? PSW PSW Lokális változók IDŐ Koschek Vilmos 3 int x=x33, y=x44; f(x, y); f( int x, int y) { int k=x5566; char t[4]= DIO ; q(k); } Stack, példa 3 4 5 44 33 PC H PC L R H R L R H PSW R L R H R L R3 H R3 L 55 66 O I D 55 66 PC H PC L R H R L R H PSW R L R H R L R3 H R3 L 36 34 3 3 8 6 4 8 6 4 8 6 4 Koschek Vilmos 4 4

4 Kiszolgálás Megszakítás okának megszüntetése, a megszakítás tényleges kiszolgálása Pl: 5 Visszaállítás, visszatérés Megszakított program állapotának visszaállítása, visszatérés az megszakított programhoz Billentyű kód beolvasása 3alkalmazás Nyomtatónak az adatok kiküldése alkalmazás alkalmazás VISSZAÁLLÍTÁS Adatok olvasása a HDD-ről Megszakítások Koschek Vilmos 5 Koschek Vilmos 6 szintek szerint Egyszintő Egyszintű Szintek Megszk Prioritások:,, Szintek: normál, megszakítási Többszintű Normál Idő Koschek Vilmos 7 T w T w? Koschek Vilmos 8 Többszintő Többszintő, több vonalú Szintek Prioritások:,,,3 Szintek:,,,3 Osztály /a Prioritások:,,,3 Osztályok :,,,3 Osztályon belül:a,b,c,d /a /a /b /a /b 3 Szintek száma? Idő Koschek Vilmos 9 3 /a /a /b /a /b Idő Koschek Vilmos 3 5

Intel (Pentium) processzorok Megszakítások Terminológia: PC -> IP Instruction Pointer Megszakítás (Interrupt) Eltérülés (Exception) INT x -IRET: PC+ flag! Maszkolható: INTR, IF, CLI, STI Megszakítás kérés (859!) INTA kimeneten nyugtázás 3 Vektor beolvasás 4 Táblázat alapján rutin címe Valós: vektor tábla (4 byte) Védett: deszkriptor tábla (8byte) Nem maszkolható: NMI (Non-Maskable Interrupt) Koschek Vilmos 3 Koschek Vilmos 3 Eltérülés Prioritások Processzor által felismert esemény Hibák (faults, utelőtt: pl -val osztás, bound) Csapdák (traps, utután: pl nyomköv, break) Végzetes hiba (aborts,nem tudja megh:hw hiba, tábla hiba) Programozott eltérülések SW megszakítások (int X) Eltérülések Végzetes hiba Hiba 3 Csapda NMI 3 INTR Koschek Vilmos 33 Koschek Vilmos 34 És akkor néhány konkrétum Minden megszakításhoz és egy eltérüléshez egy azonosító van rendelve 3: NMI+eltérülések :osztási hiba :debug kivétel (ut után!) :NMI (hw hiba) 3: töréspont (byte!) 4: túlcsordulás (overflow, INTO utasítás végrehaj és OF) 5: Index túllépés (BOUND index, határ) 6: Nem megengedett utasítás 3: Általános védelmi hiba 4: Laphiba 7: Illeszkedés (operandus) ellenőrzése 3 55: hw függő, maszkolható megszakítások IRQ: billentyűzet IRQ4: Infra port IRQ5: SD kártya IRQ: rádiós kártya IRQ: egér Koschek Vilmos 35 http://nikbmfhu/broczko/tantargyhtm Koschek Vilmos 36 6