1 / 31

Sběrnice a přerušení

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

nay
Download Presentation

Sběrnice a přerušení

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. Sběrnice a přerušení

  2. 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 • generované I/O zařízením • normální dokončení I/O operace • signalizace různých typů chyb • porucha HW

  3. Průběh přerušení • 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

  4. Přijetí přerušení • 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)

  5. Výběr mezi žadateli o přerušení • sekvenční obsluha přerušení • 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 • 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ší

  6. Identifikace zdroje • čistě programová • 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 • index do tabulky adres • strojová instrukce

  7. Sběrnice • struktura propojující • procesor (CPU) • paměť • I/O zařízení • je to sdílená struktura • 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í

  8. Struktura sběrnice • datové linky • adresové linky • řídící linky

  9. Sběrnicovésystémy • Výhody: • přidávání dalších zařízení • nízká cena • lehké zvládnutí složitosti systému • Nevýhody: • potenciální bottleneck • rychlost obvykle omezena délkou a počtem zařízení • potřeba spojit různorodá zařízení

  10. Přidělování sběrnice • centrální (řízené arbitrem) • náhodné • dle pořadí vzniku • prioritní • distribuované • kolizní (CSMA/CD) • token bus • prioritní linka (daisy chain)

  11. Synchronní vs. asynchronní přenos • synchronní přenos vznik událostí je dán hodinovým signálem • asynchronní přenos vznik události je určen (a následuje po) předcházející události

  12. Synchronní přenos

  13. Data Data Žádost o Data platná data b) Řízení příjemcem a) Řízení zdrojem Asynchronní přenos

  14. Přenos dat po sběrnici • 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 • kradení cyklů • transparentní režim

  15. Dávkový režim • 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)

  16. Kradení cyklů • Řadič „uspí“ procesor • provede vlastní přenos • probudí procesor – nelze uspat na dlouho – technicky náročnější

  17. Transparentní režim • Řadič rozezná, kdy procesor sběrnici nepoužívá a tehdy provede přenos + nijak nezdržuje procesor, je pro procesor neviditelné – větší přenosy obvykle nelze najednou

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

  19. Sběrnice „v PC“

  20. Historický vývojsběrnic v osobních počítačích • PC Bus • pro PC/XT (8088) • 8bit datová, 20bit adresová sběrnice, 8MHz • ISA – Industry Standard Architecture • pro PC/AT • 16bit datová, 24bit adresová sběrnice, 8MHz

  21. MCA – MicroChannel • pro IBM PS/2 • 10MHz, nekompatibilní s ISA, odolnější proti šumu • 16/32/64bit data, 24/32bit adresy • EISA – Extended Industry Standard Architecture • odpověď na MCA • 32bit data, 32bit adresy • 8MHz (kompatibilita!) • programové nastavení desek • VL Bus – VESALocal Bus (Video Electronic Standards Association) • 32bit data, 32bit adresy • až 50MHz, při plném osazení 33MHz • přímo zapojená na systémovou sběrnici

  22. DMA • 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.1MB/s • „first-party” DMA – zařízení si řídí přenos samo, tzv. „bus mastering“ (MCA, PCI) • Ultra DMA Mode 0 (ATA/ATAPI-4) 16.7MB/sUltra DMA Mode 5 100MB/s

  23. ATA/ATAPIAT Attachment /with Packet Interface • 16bit, UltraDMA • Vývoj: PIO 02,1MB/s-416,7MB/s, MultiwordDMA 04,2MB/s-216,7MB/s, UltraDMA016,7MB/s-5100MB/s • Serial-ATA • od 1,5 Gb/s • pro SW transparentní • pouze asynchronní

  24. UltraDMA • double transition clocking • ATA/ATAPI-4 Mode0-2 (16.7, 25, 33.3MB/s) • ATA/ATAPI-5 Mode3-4 (44.4, 66.7MB/s) • ATA/ATAPI-6 Mode5 (100MB/s =>„Ultra ATA/100“)

  25. SCSISmall Computer System Interface • 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-XPeripheral Component Interconnect Bus • připojení k systémové sběrnici přes můstek (PCI nezávislá na taktu procesoru) • 64bit data, 64bit adresy • 1992 v1.0: 33MHz, 1995 v2.1: 66MHz • multiplex dat a adres • synchronní • PCI-X v1.0: 66 a 133 MTS, v2.0: 266 a 533 MTS + další vylepšení (např. ECC), zpětná kompatibilita HW i SW

  27. AGPAdvanced Graphics Port • „point-to-point“ • 4x frekvence PCI, tj. 133MHz • využita náběžná i sestupná hrana hodin • pipelining (paralelismus)

  28. PCI Express (PCIe) • Seriová, paketový protokol • 256 MB/s (PCIe x1) – 8 GB/s (PCIe x16 duplex)

  29. Motivace pro nový typ sběrnice • 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. USB – Universal Serial Bus • 1,5/12/480 Mb/s • stromová struktura – koncová zařízení / hub • plug–and–play • FireWire (IEEE 1394) • synchronní i asynchronní • 100/200/400 Mb/s • pakety

More Related