31
1 Sběrnice a přerušení Sběrnice a přerušení

Sběrnice a přerušení

  • 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

Page 1: Sběrnice a přerušení

11

Sběrnice a přerušeníSběrnice a přerušení

Page 2: 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

Page 3: Sběrnice a přerušení

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

Page 4: Sběrnice a přerušení

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)

Page 5: Sběrnice a přerušení

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ší

Page 6: Sběrnice a přerušení

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

Page 7: Sběrnice a přerušení

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í

Page 8: Sběrnice a přerušení

88

Struktura sběrniceStruktura sběrnice

datové linkydatové linky adresové linkyadresové linky řídící linkyřídící linky

Page 9: Sběrnice a přerušení

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í

Page 10: Sběrnice a přerušení

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)

Page 11: Sběrnice a přerušení

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

Page 12: Sběrnice a přerušení

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

Page 13: Sběrnice a přerušení

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

Page 14: Sběrnice a přerušení

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

Page 15: Sběrnice a přerušení

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)

Page 16: Sběrnice a přerušení

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ší

Page 17: Sběrnice a přerušení

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

Page 18: Sběrnice a přerušení

1818

Použití řadiče DMA Použití řadiče DMA (Direct Memory Access) (Direct Memory Access)

Page 19: Sběrnice a přerušení

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

Page 20: Sběrnice a přerušení

2020

Page 21: Sběrnice a přerušení

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

Page 22: Sběrnice a přerušení

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

Page 23: Sběrnice a přerušení

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

Page 24: Sběrnice a přerušení

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í

Page 25: Sběrnice a přerušení

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“)

Page 26: Sběrnice a přerušení

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)

Page 27: Sběrnice a přerušení

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

Page 28: Sběrnice a přerušení

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)

Page 29: Sběrnice a přerušení

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)

Page 30: Sběrnice a přerušení

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

Page 31: Sběrnice a přerušení

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