Upload
nay
View
28
Download
0
Embed Size (px)
DESCRIPTION
Sběrnice a přerušení. Typy přerušení. programové (výsledek vykonání instrukce) přetečení v ALU, dělení nulou … pokus vykonat nepovolenou instrukci pokus o přístup na nepovolenou adresu v paměti generované časovačem (na procesoru) pro vykonávání „cyklických“ činností OS - PowerPoint PPT Presentation
Citation preview
11
Sběrnice a přerušeníSběrnice a přerušení
22
Typy přerušeníTypy přerušení
programové (výsledek vykonání instrukce)programové (výsledek vykonání instrukce) přetečení v ALU, dělení nulou …přetečení v ALU, dělení nulou … pokus vykonat nepovolenou instrukcipokus vykonat nepovolenou instrukci pokus o přístup na nepovolenou adresu v pamětipokus o přístup na nepovolenou adresu v paměti
generované časovačem (na procesoru)generované časovačem (na procesoru) pro vykonávání „cyklických“ činností OSpro vykonávání „cyklických“ činností OS
generované I/O zařízenímgenerované I/O zařízením normální dokončení I/O operacenormální dokončení I/O operace signalizace různých typů chybsignalizace různých typů chyb
porucha HWporucha HW
33
Průběh přerušeníPrůběh přerušení
vznik, vyslání žádostivznik, vyslání žádosti rozhodnutí o přijetí/nepřijetí (+maskování)rozhodnutí o přijetí/nepřijetí (+maskování) identifikace zdrojeidentifikace zdroje určení adresy obslužného programuurčení adresy obslužného programu úschova aktuálního stavu CPUúschova aktuálního stavu CPU provedení obslužného programuprovedení obslužného programu obnova stavu CPUobnova stavu CPU návrat do přerušeného programunávrat do přerušeného programu
44
Přijetí přerušeníPřijetí přerušení
programové přerušení – ihned (vždy programové přerušení – ihned (vždy jde o chybu, rozdělanou instrukci jde o chybu, rozdělanou instrukci netřeba nebo nelze dokončit) netřeba nebo nelze dokončit)
ostatní přerušení – jen mezi ostatní přerušení – jen mezi instrukcemi (nutno zachovat instrukcemi (nutno zachovat definovaný stav CPU)definovaný stav CPU)
55
Výběr mezi žadateli o Výběr mezi žadateli o přerušenípřerušení
sekvenční obsluha přerušenísekvenční obsluha přerušení při obsluze přerušení jsou všechna ostatní při obsluze přerušení jsou všechna ostatní
přerušení maskována (nepovolena)přerušení maskována (nepovolena) ̶̶ neumožňuje různé priority, málo pružnéneumožňuje různé priority, málo pružné + jednoduchost obslužných rutin + jednoduchost obslužných rutin
obsluha podle prioritobsluha podle priorit přerušení s vyšší prioritou může přerušit přerušení s vyšší prioritou může přerušit
provádění obsluhy přerušení s nižší prioritouprovádění obsluhy přerušení s nižší prioritou ̶̶ složitější obslužné rutinysložitější obslužné rutiny + je to daleko pružnější+ je to daleko pružnější
66
Identifikace zdrojeIdentifikace zdroje
čistě programováčistě programová• jediný obslužný program, zjistí si sámjediný obslužný program, zjistí si sám
(pružné, ale pomalé; např. Motorola 6800)(pružné, ale pomalé; např. Motorola 6800) s pomocí technických prostředkůs pomocí technických prostředků
• žadatel poskytne vektor přerušení, podle žadatel poskytne vektor přerušení, podle něj se rozhodne o obslužném programu:něj se rozhodne o obslužném programu:
adresa obslužného programuadresa obslužného programu index do tabulky adresindex do tabulky adres strojová instrukcestrojová instrukce
77
SběrniceSběrnice
struktura propojujícístruktura propojující procesor (CPU)procesor (CPU) paměťpaměť I/O zařízeníI/O zařízení
je to sdílená strukturaje to sdílená struktura všechna zařízení na sběrnici mohou číst všechna zařízení na sběrnici mohou číst
všechny signály po ní posílané všechny signály po ní posílané každé připojené zařízení po ní může signály každé připojené zařízení po ní může signály
posílat – nutnost sběrnici přidělovat (arbitrace)posílat – nutnost sběrnici přidělovat (arbitrace) jiné typy (nesdílených) propojovacích jiné typy (nesdílených) propojovacích
struktur se už v podstatě nepoužívajístruktur se už v podstatě nepoužívají
88
Struktura sběrniceStruktura sběrnice
datové linkydatové linky adresové linkyadresové linky řídící linkyřídící linky
99
SběrnicovéSběrnicové systémysystémy
Výhody:Výhody: přidávání dalších zařízenípřidávání dalších zařízení nízká cenanízká cena lehké zvládnutí složitosti systémulehké zvládnutí složitosti systému
Nevýhody:Nevýhody: potenciální bottleneckpotenciální bottleneck rychlost obvykle omezena délkou a počtem rychlost obvykle omezena délkou a počtem
zařízenízařízení potřeba spojit různorodá zařízenípotřeba spojit různorodá zařízení
1010
Přidělování sběrnicePřidělování sběrnice
centrální (řízené arbitrem)centrální (řízené arbitrem) náhodnénáhodné dle pořadí vzniku dle pořadí vzniku prioritníprioritní
distribuovanédistribuované kolizní (CSMA/CD)kolizní (CSMA/CD) token bustoken bus prioritní linka (daisy chain)prioritní linka (daisy chain)
1111
Synchronní vs. asynchronní Synchronní vs. asynchronní přenospřenos
synchronní přenossynchronní přenosvznik událostí je dán hodinovým signálemvznik událostí je dán hodinovým signálem
asynchronní přenosasynchronní přenosvznik události je určen (a následuje po) vznik události je určen (a následuje po) předcházející události předcházející události
1212
Synchronní přenosSynchronní přenosT T
Hodiny
Adresa
Řízení
Data
Adresa z M
Čtení Stav ze S
Data ze S
T T
Hodiny
Adresa
Řízení
Data
Adresa z M
Zápis
Data z M
TT Zpoždění n*T
Hodiny
Řízení
Adresa
Data
Potvrzení
Adresa z M
Čtení Stav ze S
Data ze S
ACK ze S
1313
Asynchronní přenosAsynchronní přenos
Data
Žádost odata
b) Řízení příjemcem
Data
Data platná
a) Řízení zdrojem
Potvrzení z S
Žádost z A
DataData
Data platná ze S
Potvrzení z A
a) přenos vyvolaný zdrojem b) přenos vyvolaný příjemcem
1414
Přenos dat po sběrniciPřenos dat po sběrnici
za účasti procesoru: zdroj za účasti procesoru: zdroj CPU CPU cíl cíl„programmed I/O“„programmed I/O“
bez účasti procesoru – proces není bez účasti procesoru – proces není řízen instrukcemi, ale řadičem řízen instrukcemi, ale řadičem sběrnice:sběrnice: dávkový režimdávkový režim kradení cyklůkradení cyklů transparentní režimtransparentní režim
1515
Dávkový režimDávkový režim
PProcesor rocesor ŘŘadič: [odkud, co, kolik, adič: [odkud, co, kolik, kam]kam]
ŘŘP: P: HOLDHOLD (mám připraveno) (mám připraveno) PPŘ: Ř: HLDAHLDA (OK, udělej, sběrnici nechci) (OK, udělej, sběrnici nechci) přenospřenos Ř Ř P: P: HOLDHOLD (hotovo) (hotovo) PPŘ: Ř: HLDAHLDA (beru na vědomí a sběrnici) (beru na vědomí a sběrnici)
1616
Kradení cyklůKradení cyklů
Řadič „uspí“ procesor Řadič „uspí“ procesor provede vlastní přenosprovede vlastní přenos probudí procesorprobudí procesor
– – nelze uspat na dlouhonelze uspat na dlouho
– – technicky náročnějšítechnicky náročnější
1717
Transparentní režimTransparentní režim
Řadič rozezná, kdy procesor sběrnici Řadič rozezná, kdy procesor sběrnici nepoužívá a tehdy provede přenosnepoužívá a tehdy provede přenos
+ nijak nezdržuje procesor, je pro + nijak nezdržuje procesor, je pro procesor neviditelnéprocesor neviditelné
– – větší přenosy obvykle nelze najednouvětší přenosy obvykle nelze najednou
1818
Použití řadiče DMA Použití řadiče DMA (Direct Memory Access) (Direct Memory Access)
1919
Sběrnice „v PC“Sběrnice „v PC“CPU Paměť
AdaptérPCI
AdaptérAGP
GrafickýAdaptér
AdaptérETN
AdaptérSCSI
AdaptérISA
Scanner
Páska
Disk
RS232
Centronics
HPIB
Síťovátiskárna
Počítač
Lokální sběrniceSb
ěrn
ice
SC
SI
Sb
ěrn
ice
ISA
Sb
ěrn
ice
Eth
ernet
Sběrnice PCI
Sběrnice AGP
2020
2121
Historický vývojHistorický vývoj sběrnic sběrnic v osobních počítačích v osobních počítačích
PC BusPC Bus pro PC/XT (8088)pro PC/XT (8088) 8bit datová, 20bit adresová sběrnice, 8MHz8bit datová, 20bit adresová sběrnice, 8MHz
ISA – Industry Standard ArchitectureISA – Industry Standard Architecture pro PC/ATpro PC/AT 16bit datová, 24bit adresová sběrnice, 16bit datová, 24bit adresová sběrnice,
8MHz8MHz
2222
MCA – MicroChannelMCA – MicroChannel pro IBM PS/2pro IBM PS/2 10MHz, nekompatibilní s ISA, odolnější proti šumu10MHz, nekompatibilní s ISA, odolnější proti šumu 16/32/64bit data, 24/32bit adresy16/32/64bit data, 24/32bit adresy
EISA – EISA – Extended Industry Standard Extended Industry Standard ArchitectureArchitecture odpověď na MCAodpověď na MCA 32bit data, 32bit adresy32bit data, 32bit adresy 8MHz (kompatibilita!)8MHz (kompatibilita!) programové nastavení desekprogramové nastavení desek
VL BusVL Bus – – VESAVESA Local Bus Local Bus ((Video ElectroniVideo Electronicc Standards Standards AssociationAssociation))
32bit data, 32bit adresy32bit data, 32bit adresy až 50MHz, při plném osazení 33MHzaž 50MHz, při plném osazení 33MHz přímo zapojená na systémovou sběrnicipřímo zapojená na systémovou sběrnici
2323
DMADMA
standard, regular, „third-party“ DMA – standard, regular, „third-party“ DMA – zvláštní jednotka, která provádí vlastní zvláštní jednotka, která provádí vlastní přenospřenos
výkonem dostačovalo pro ISA (EISA, VLB):výkonem dostačovalo pro ISA (EISA, VLB):Single word Mode Single word Mode 00 … 2.1MB/s … 2.1MB/s
„„first-party”first-party” DMA – zařízení si řídí přenos DMA – zařízení si řídí přenos samo, tzv. „bus mastering“ (MCA, PCI)samo, tzv. „bus mastering“ (MCA, PCI)
Ultra DMA Mode 0 Ultra DMA Mode 0 (ATA/ATAPI-4)(ATA/ATAPI-4) 16.7MB/s 16.7MB/sUltra DMA Mode 5 100MB/sUltra DMA Mode 5 100MB/s
2424
ATA/ATAPIATA/ATAPIAT Attachment AT Attachment /with Packet Interface/with Packet Interface
16bit, UltraDMA16bit, UltraDMA Vývoj: PIO 0Vývoj: PIO 02,1MB/s2,1MB/s-4-416,7MB/s16,7MB/s, MultiwordDMA , MultiwordDMA
004,2MB/s4,2MB/s-2-216,7MB/s16,7MB/s, UltraDMA0, UltraDMA016,7MB/s16,7MB/s-5-5100MB/s100MB/s
Serial-ATASerial-ATA od 1,5 Gb/sod 1,5 Gb/s pro SW transparentnípro SW transparentní pouze asynchronnípouze asynchronní
2525
UltraDMAUltraDMA
double transition clockingdouble transition clocking
ATA/ATAPI-4 Mode0-2ATA/ATAPI-4 Mode0-2 (16.7, 25, 33.3MB/s) (16.7, 25, 33.3MB/s)
ATA/ATAPI-5 Mode3-4ATA/ATAPI-5 Mode3-4 (44.4, 66.7MB/s) (44.4, 66.7MB/s)
ATA/ATAPI-6 Mode5ATA/ATAPI-6 Mode5 (100MB/s => (100MB/s => „Ultra „Ultra ATA/100“)ATA/100“)
2626
SCSISCSISmall Computer System InterfaceSmall Computer System Interface
paralelní interface, od r.1986 ANSI paralelní interface, od r.1986 ANSI standardstandard
inteligentní zařízeníinteligentní zařízení 8/16 bit data (narrow/wide)8/16 bit data (narrow/wide) až 160 MB/s (SCSI Fast-80 Wide)až 160 MB/s (SCSI Fast-80 Wide) zřetězení až 15 zařízení (hard disky, zřetězení až 15 zařízení (hard disky,
scannery, páskové jednotky)scannery, páskové jednotky)
2727
PCIPCI, PCI-X, PCI-XPeripheral Component Interconnect Peripheral Component Interconnect
BusBus připojení k systémové sběrnici přes připojení k systémové sběrnici přes
můstek (PCI nezávislá na taktu procesoru)můstek (PCI nezávislá na taktu procesoru) 64bit data, 64bit adresy64bit data, 64bit adresy 1992 v1.0: 33MHz, 1995 v2.1: 66MHz1992 v1.0: 33MHz, 1995 v2.1: 66MHz multiplex dat a adresmultiplex dat a adres synchronnísynchronní PCI-X v1.0: 66 a 133 MTS, v2.0: 266 a 533 PCI-X v1.0: 66 a 133 MTS, v2.0: 266 a 533
MTS + další vylepšení (např. ECC), MTS + další vylepšení (např. ECC), zpětná kompatibilita HW i SWzpětná kompatibilita HW i SW
2828
AGPAGPAdvanced Graphics PortAdvanced Graphics Port
„„point-to-point“point-to-point“ 4x frekvence PCI, tj. 133MHz4x frekvence PCI, tj. 133MHz využita náběžná i sestupná hrana využita náběžná i sestupná hrana
hodinhodin pipelining (paralelismus)pipelining (paralelismus)
2929
PCI ExpressPCI Express (PCIe) (PCIe)
Seriová, paketový protokolSeriová, paketový protokol 256 MB/s (PCIe x1) – 8 GB/s (PCIe 256 MB/s (PCIe x1) – 8 GB/s (PCIe
x16 duplex)x16 duplex)
3030
Motivace Motivace pro nový typ pro nový typ sběrnicesběrnice
Uživatel nemusí otevřít počítač, aby připojil Uživatel nemusí otevřít počítač, aby připojil novou periferiinovou periferii
Jediný kabel na připojování všech typů Jediný kabel na připojování všech typů zařízenízařízení
Zařízení napájena z tohoto kabeluZařízení napájena z tohoto kabelu Připojení velkého počtu zařízeníPřipojení velkého počtu zařízení Podpora real-time zařízení (zvuk, video)Podpora real-time zařízení (zvuk, video) Instalace zařízení za choduInstalace zařízení za chodu Bez nutnosti rebootu při instalaci zařízeníBez nutnosti rebootu při instalaci zařízení Levné na výrobuLevné na výrobu
3131
USB – Universal Serial BusUSB – Universal Serial Bus 1,5/12/480 Mb1,5/12/480 Mb/s/s stromová struktura – koncová zařízení / stromová struktura – koncová zařízení /
hubhub plug–and–play plug–and–play
FireWire (IEEE 1394)FireWire (IEEE 1394) synchronní i asynchronnísynchronní i asynchronní 100100/200/400 Mb/s/200/400 Mb/s paketypakety