Sbrnice a peruen 1 Typy peruen n programov
Sběrnice a přerušení 1
Typy přerušení n programové (výsledek vykonání instrukce) n n generované časovačem (na procesoru) n n pro vykonávání „cyklických“ činností OS generované I/O zařízením n n n přetečení v ALU, dělení nulou … pokus vykonat nepovolenou instrukci pokus o přístup na nepovolenou adresu v paměti normální dokončení I/O operace signalizace různých typů chyb porucha HW 2
Průběh přerušení n n n n vznik, vyslání žádosti rozhodnutí o přijetí/nepřijetí (+maskování) identifikace zdroje určení adresy obslužného programu úschova aktuálního stavu CPU provedení obslužného programu obnova stavu CPU návrat do přerušeného programu 3
Přijetí přerušení n n programové přerušení – ihned (vždy jde o chybu, rozdělanou instrukci netřeba nebo nelze dokončit) ostatní přerušení – jen mezi instrukcemi (nutno zachovat definovaný stav CPU) 4
Výběr mezi žadateli o přerušení n sekvenční obsluha přerušení n n při obsluze přerušení jsou všechna ostatní přerušení maskována (nepovolena) neumožňuje různé priority, málo pružné + jednoduchost obslužných rutin obsluha podle priorit n n n přerušení s vyšší prioritou může přerušit provádění obsluhy přerušení s nižší prioritou složitější obslužné rutiny + je to daleko pružnější 5
Identifikace zdroje n čistě programová • n jediný obslužný program, zjistí si sám (pružné, ale pomalé; např. Motorola 6800) s pomocí technických prostředků • žadatel poskytne vektor přerušení, podle něj se rozhodne o obslužném programu: adresa obslužného programu n index do tabulky adres n strojová instrukce n 6
Sběrnice n struktura propojující n n je to sdílená struktura n n n procesor (CPU) paměť I/O zařízení všechna zařízení na sběrnici mohou číst všechny signály po ní posílané každé připojené zařízení po ní může signály posílat – nutnost sběrnici přidělovat (arbitrace) jiné typy (nesdílených) propojovacích struktur se už v podstatě nepoužívají 7
Struktura sběrnice n n n datové linky adresové linky řídící linky 8
Sběrnicové systémy n Výhody: přidávání dalších zařízení n nízká cena n lehké zvládnutí složitosti systému n n Nevýhody: potenciální bottleneck n rychlost obvykle omezena délkou a počtem zařízení n potřeba spojit různorodá zařízení n 9
Přidělování sběrnice n centrální (řízené arbitrem) náhodné n dle pořadí vzniku n prioritní n n distribuované kolizní (CSMA/CD) n token bus n prioritní linka (daisy chain) n 10
Synchronní vs. asynchronní přenos n synchronní přenos vznik událostí je dán hodinovým signálem n asynchronní přenos vznik události je určen (a následuje po) předcházející události 11
Synchronní přenos 12
Asynchronní přenos Data platná Žádost o data a) Řízení zdrojem b) Řízení příjemcem 13
Přenos dat po sběrnici n n za účasti procesoru: zdroj CPU cíl „programmed I/O“ bez účasti procesoru – proces není řízen instrukcemi, ale řadičem sběrnice: dávkový režim n kradení cyklů n transparentní režim n 14
Dávkový režim n n n Procesor Řadič: [odkud, co, kolik, kam] Ř P: HOLD (mám připraveno) P Ř: HLDA (OK, udělej, sběrnici nechci) přenos Ř P: HOLD (hotovo) P Ř: HLDA (beru na vědomí a sběrnici) 15
Kradení cyklů n n n Řadič „uspí“ procesor provede vlastní přenos probudí procesor – nelze uspat na dlouho – technicky náročnější 16
Transparentní režim n Řadič rozezná, kdy procesor sběrnici nepoužívá a tehdy provede přenos + nijak nezdržuje procesor, je procesor neviditelné – větší přenosy obvykle nelze najednou 17
Použití řadiče DMA (Direct Memory Access) 18
Sběrnice „v PC“ 19
20
Historický vývoj sběrnic v osobních počítačích n PC Bus n n n pro PC/XT (8088) 8 bit datová, 20 bit adresová sběrnice, 8 MHz ISA – Industry Standard Architecture n n pro PC/AT 16 bit datová, 24 bit adresová sběrnice, 8 MHz 21
n MCA – Micro. Channel n n EISA – Extended Industry Standard Architecture n n n pro IBM PS/2 10 MHz, nekompatibilní s ISA, odolnější proti šumu 16/32/64 bit data, 24/32 bit adresy odpověď na MCA 32 bit data, 32 bit adresy 8 MHz (kompatibilita!) programové nastavení desek VL Bus – VESA Local Bus (Video Electronic Standards Association) n n n 32 bit data, 32 bit adresy až 50 MHz, při plném osazení 33 MHz přímo zapojená na systémovou sběrnici 22
DMA n n standard, regular, „third-party“ DMA – zvláštní jednotka, která provádí vlastní přenos výkonem dostačovalo pro ISA (EISA, VLB): Single word Mode 0 … 2. 1 MB/s „first-party” DMA – zařízení si řídí přenos samo, tzv. „bus mastering“ (MCA, PCI) Ultra DMA Mode 0 (ATA/ATAPI-4) 16. 7 MB/s Ultra DMA Mode 5 100 MB/s 23
ATA/ATAPI AT Attachment /with Packet Interface n 16 bit, Ultra. DMA n n Vývoj: PIO 02, 1 MB/s-416, 7 MB/s, Multiword. DMA 04, 2 MB/s-216, 7 MB/s, Ultra. DMA 016, 7 MB/s-5100 MB/s Serial-ATA od 1, 5 Gb/s n pro SW transparentní n pouze asynchronní n 24
Ultra. DMA n n double transition clocking ATA/ATAPI-4 Mode 0 -2 (16. 7, 25, 33. 3 MB/s) ATA/ATAPI-5 Mode 3 -4 (44. 4, 66. 7 MB/s) ATA/ATAPI-6 Mode 5 (100 MB/s => „Ultra ATA/100“) 25
SCSI Small Computer System Interface n n n paralelní interface, od r. 1986 ANSI standard inteligentní zařízení 8/16 bit data (narrow/wide) až 160 MB/s (SCSI Fast-80 Wide) zřetězení až 15 zařízení (hard disky, scannery, páskové jednotky) 26
PCI, PCI-X Peripheral Component Interconnect Bus n n n připojení k systémové sběrnici přes můstek (PCI nezávislá na taktu procesoru) 64 bit data, 64 bit adresy 1992 v 1. 0: 33 MHz, 1995 v 2. 1: 66 MHz multiplex dat a adres synchronní PCI-X v 1. 0: 66 a 133 MTS, v 2. 0: 266 a 533 MTS + další vylepšení (např. ECC), zpětná kompatibilita HW i SW 27
AGP Advanced Graphics Port n n „point-to-point“ 4 x frekvence PCI, tj. 133 MHz využita náběžná i sestupná hrana hodin pipelining (paralelismus) 28
PCI Express (PCIe) n n Seriová, paketový protokol 256 MB/s (PCIe x 1) – 8 GB/s (PCIe x 16 duplex) 29
Motivace pro nový typ sběrnice n n n n Uživatel nemusí otevřít počítač, aby připojil novou periferii Jediný kabel na připojování všech typů zařízení Zařízení napájena z tohoto kabelu Připojení velkého počtu zařízení Podpora real-time zařízení (zvuk, video) Instalace zařízení za chodu Bez nutnosti rebootu při instalaci zařízení Levné na výrobu 30
n USB – Universal Serial Bus n 1, 5/12/480 Mb/s stromová struktura – koncová zařízení / hub n plug–and–play n n Fire. Wire (IEEE 1394) synchronní i asynchronní n 100/200/400 Mb/s n pakety n 31
- Slides: 31