SzA11. Külső sínrendszer Flashcards Preview

Számítógép Architektúrák Alapjai I > SzA11. Külső sínrendszer > Flashcards

Flashcards in SzA11. Külső sínrendszer Deck (31):
1

Külső sínrendszer fogalma (buszrendszer)

A buszrendszer az egységek (CPU, RAM, perifériák) közötti kommunikáció szolgál. Maga a buszrendszer a kommunikáció infrastrukturális rész. Kommunikáció a buszrendszeren szervezett és egységes módon történik. Adatokat és vezérlőjeleket továbbítunk. Általában több egység kapcsolódik rá. A buszrendszer egy történelmi fejlődés eredménye -> ez bizonyult a legjobbnak.

2

A buszrendszer jellemzői

• Az adatátvitelben résztvevő eszközök számára biztosítani kell a kijelölést (megcímzés: címmegadás vagy utasítás alapján létrehozott hardveres kapcsolat) és a kizárólagos használatot.
• Meg kell határozni az átvitel irányát (merre megy a kapcsolat)
• Meg kell oldani az eszközök működésének összehangolását (szinkronizáció).

3

A buszrendszer előnye és jelentősége

Előnye: szabványosított (a jelhasználat és a vezetékkiosztás), ezért az eszközök cserélhetők Jelentősége: a buszrendszer a felhasználó számára transzparens (vagyis nem kell és nem is tud ezzel foglalkozni, automatikusan működik)

4

Kommunikáció fajtái a buszrendszeren belül

• Egységen belüli kommunikáció (pl.: a processzoron belül) BELSŐ buszrendszer
o kicsik a távolságok -> közös vezérlés, közös órajel
• Egységek közötti kommunikáció (pl.: a processzor és a perifériák között) KÜLSŐ buszrendszer
o viszonylag nagyok a távolságok, jelentős késleltetéssel jár -> nem célszerű a központi óraütemadó alkalmazása
o jelentősek az optimális sebességek közti különbségek az egyes egységek vonatkozásában (pl.: más az optimális sebessége a processzornak és más a billentyűzetek)
o Eltérő architektúrák

5

Buszrendszerek csoportosítása az átvitel iránya szerint

a. szimplex (CLK, RST)
b. félduplex
c. duplex (adatbusz)

6

Buszrendszerek csoportosítása az átvitel jellege szerint

a. dedikált buszrendszer: gyors, megbízható Minden egységet, minden egységgel összekötünk. Leginkább rendszerbuszoknál használják. Előnye: A sok kapcsolat miatt gyors és megbízható (kapcsolat meghibásodása esetén másik útvonalon is tud kommunikálni) Hátránya: Drága a sok vezeték miatt és új egység hozzáadása bonyolult.
kép48
b. shared (megosztott) buszrendszer Minden egység közös buszon kommunikál, de egyidejűleg csak egy adó lehet. Előnyei: Olcsó, szabványos kialakítása miatt új egységek csatlakoztathatóak. Hátrányai: Mivel egyidejűleg csak egy adó használhatja a közös buszt, ezért lassú lehet. A buszhasználat vezérlése bonyolult. Érzékennyé válik a közös busz meghibásodására.
kép49

7

Buszrendszerek csoportosítása az átvitt tartalom szerint (mit szállít)

a. címbusz (feladata az egységek azonosítása)
b. adatbusz (feladata az adatok továbbítása)
c. vezérlő vezetékek (vonalak, nem busz)

8

Az adatbusz tulajdonságai

i. ugyanazon a vezetéken keresztül továbbítják a címeket és az adatokat vezetékkel való spórolás céljából + így kevesebb csatlakozó láb kell.
ii. PCI segítségével időbeli multiplexelést hajt végre, azaz ugyanazon a vezetéken átviszi a blokk kezdőcímét, majd ciklikusan az adatokat, közben inkrementálással állapítva meg a címet

9

Mit szállítanak a vezérlő vezetékek?

i. éppen adat vagy cím van-e a buszon (adatbusz: 8, 16, 32, 64 bit)
ii. vezérlési információk és az egység állapotáról szóló információk továbbítására szolgálnak

10

Milyen vezérlési információkat szállítanak a vezérlő vezetékek?

1. Adatátvitelt vezérlő jelek
2. Megszakítást vezérlő jelek (megszakítás kérés, visszaigazolás)
3. Buszfoglalással kapcsolatos vezérlővezetékek (sínfoglalás kérése, jelzése és engedélyezése )
4. egyéb (cclk, rst)

11

Adatátvitelt vezérlő jelek

a. M/IO: memória vagy input-output. Megmondja, hogy a vezetéken a memória vagy IO cím található
b. R/W: read/write. Az adatátvitel irányát mutatja meg a processzor (CPU) felől nézve
c. B/W: byte/word. Azadat hosszát, a párhuzamosan átvitt bitek számát mutatja meg.
d. AS: address strobe. Megmutatja, hogy a rendszerbuszra címet helyeztünk-e
e. DS: data strobe. Megmutatja, hogy a rendszerbuszra adatot helyeztünk-e
f. A/D: address/data. Megmutatja, hogy az adott buszon adat vagy cím van
g. RDY: ready. Megmutatja, hogy az átvitel befejeződött, vagy az eszköz készen áll

12

Buszrendszerek csoportosítása az összekapcsolt terület szerint

Processzorsín: feladata a processzor-memória és a buszvezérlő forgalmának biztosítása.
Bővítőbusz: feladata a perifériák csatlakoztatása a processzor-memória kettőshöz.
kép50

13

Buszrendszerek csoportosítása átvitel módja szerint

párhuzamos busz, soros busz

14

Soros, párhuzamos buszok

Több vezetéken párhuzamosan továbbítja az adatokat (ISA, PCI). Hátrány: sok vezeték -> komplex, drága. Sok helyet foglalnak. A sebesség folyamatosan nő! Egyetlen gyors vezetéken több adat továbbítható, mint több lassún! Sorosítás -> kódolással (bitsorozatok). Párhuzamos port létrehozása viszonylag egyszerű, könnyen implementálható „rá kell másolni a buszra az adatot”. Soros átvitelnél vissza kell konvertálni az adatot párhuzamossá.

15

A párhuzamos buszok nem alkalmasak nagyfrekvenciás átvitelre, mert:

1. vezetékek közötti időeltérés (delay skew)
2. a sok párhuzamos vezeték rengeteg elektromágneses interferenciát generál (EMI – elektromágneses zaj -> zaj miatt sérülhet az adat)
3. áthallás a vezetékek között szintén interferenciát eredményez (távolságfüggő, ezért limitált a távolság)
4. nehezen bővíthető. Soros buszoknál szoftveresen is lehet bővíteni -> rugalmasabbak

16

A PCI és a PCIe busz

SATA 1981 IBM PC nyitottá tette A rendszert nyitottá tévő széleskörű I/O csatlakozási lehetőséget biztosító bővítő busz. Általános célú expozíciós csatlakozók. Érintkezők, csatlakozók definiálása: áramellátás, cím, adat és vezérlővonalak stb. Ez a busz már párhuzamos volt. Kezdetekben soros kommunikáció volt. Párhuzamos buszrendszerek: ISA, PCI, IDE.
IBM buszrendszere 2x32 pólusú csatlakozó: 8 bites adat, 20 bit cím.
PCI busz párhuzamos, 90-es évek, CPU architektúrától független, szabványosított formában támogatja a rendszerbuszt. A CPU úgy látta, mintha az eszközök közvetlenül a rendszerbuszokhoz lettek csatlakoztatva, így azokat a CPU az általa látott címtérből látja el memória címekkel (nagy adatátvitelt tudtak ezzel elérni).
A PCI specifikáció tartalmazza a busz fizikai méreteit (elektromos érintkezők méreteit is), elektromos jellemzőket, az adatátvitel időzítését, átviteli protokollokat.
A PCI előnyei közé tartozik, hogy széleskörűen kompatibilis, valamint viszonylag olcsó megvalósítás és az előállítása. A mai napig megtalálható a számítógépekben!
Ennek utódja: PCIe (express) soros busz
A kettő nem kompatibilis. 2004-ben jelent meg a PCIe. Az Intel, Dell, IBM, HP összefogtak és az ő gyártmányuk. Előnye: nagyobb sebesség, kevesebb érintkezője van.
kép51

17

Busz foglalás (Bus Arbitration) fajtái

1. Soros buszfoglalás
a. hardveres lekérdezés (Hardver Polling – Daisy Chain)
b. szoftver polling
2. Párhuzamos buszfoglalás

18

Hardver Polling jellemzői

Előnye: egyszerű, olcsó, korlátlan számú egység (elvileg)
Hátránya: prioritás hardveresen meghatározott, emiatt az előrébb lévő egységek elnyomhatják a hátrébblévőket, meghibásodásra érzékeny
Működése:
1. bus request aktiválása (ha bus busy aktív, akkor vár, ha nem, bus grant)
2. UI átenged, U2 aktiválja a bus busy-t
3. adatot küld, bus busy deaktiválása
kép53

19

Szoftver polling jellemzői

kép54
A számláló algoritmus alapján szólítja meg az egységeket (pl.: ott folytatja, ahol abbahagyta)
Előnye: kevésbé érzékeny a Bus Grant vonal meghibásodására, valamint prioritás szoftveresen változtatható, ezáltal rugalmasabb a rendszer.
Hátránya: több vezérlővonal miatt drágább, és a csatlakoztatható egységek számát a Bus Grant vonalak száma korlátozza.

20

Párhuzamos buszfoglalás jellemzői

kép55
Előnye: gyors válasz (a leggyorsabb a három közül), prioritást a busz vezérlés szabályozza
Hátránya: sok vezeték miatt drágább és bonyolultabb.
Rejtett sínfoglalás:
• két független hardver végzi a sínfoglalást és az adatátvitel vezérlését
• lehetőség van arra, hogy amíg az előző átvitel zajlik, a következő egység kiválasztása megtörténhessen. Amint az adatsín felszabadul, azt átadja.
Ilyen megoldást használ például a PCI busz is.

21

A fejlődés mozgatórugói

A CPU-k gyorsabbak, mint a külső eszközök (hatalmas „szakadék” a belső sebesség és az I/O műveletek között). Többmagos CPU-k és többprocesszoros rendszerek esetén ez fokozódik.

22

Cél az I/O szűk keresztmetszet mérséklése

Megoldás: többszintű, lapkán lévő gyorsítótárak bevezetése a memóriakezeléshez (minél nagyobb találati arány legyen a gyorsítótárakban).
Annak érdekében, hogy megelőzzük a rendszer-lassulásokat, a déli híd és az I/O alrendszerei közötti interfésznek a processzorsebesség-növekedésével lépést kell tartani.
Azok az I/O eszközök is, amelyek a memória-eléréshez lassú sínrendszereket használnak, szintén szenvednek a megfelelő sávszélesség hiánya miatt. Ugyanis a korszerű perifériák sebessége nagyobb is lehet, mint azon síneké, amelyekre csatlakoztattuk őket. Ez egy másik, rendszerszintű szűk keresztmetszet. Ez a probléma azon esetekben különösen kiéleződik, amikor a késleltetés-kritikus és/vagy real-time adatátvitel történik az I/O alrendszer és a processzor között.

23

I/O eszközök és a memória kapcsolata

1. Megosztott busz koncepció (pl.: PCI busz)
2. Pont-pont kapcsolat, dedikált buszok (pl.: PCIe, HyperTransport, QPI)

24

A front side bus kiváltására két megoldás született

• Az AMD-től a HyperTransport
• valamint az Inteltől a QuickPath Interconnection

25

Aszinkron adatátvitel

Elve: minden elemi művelet egyben jelzés a következő művelet megkezdésére. Itt az adó addig tartja fenn a buszon az adatot és a vezérlőjelet, amíg a vevő nem jelzi, hogy megkapta azt.

26

Az aszinkron adatátvitel két fajtája

1. Egyvezetékes átvitel
2. Két vezetékes átvitel (Hand shake)

27

Egyvezetékes átvitel

a. adó oldali vezérlés
Felteszi a sínre, jelzi, vár, leveszi.
Értékelés: az adónak nincs visszacsatolása az adat célba érkezéséről. (lehet, hogy a vevő évek óta rossz)
kép56
b. vevő oldali vezérlés:
Vevő kérésére történik az adatküldés.
Értékelés: az előzőnél megbízhatóbb, hiszen a vevő kérés pillanatában aktív
Az egy vezetékes átvitel hátránya: az adó nem kap visszacsatolást az adat célba érkezéséről.
kép57

28

Két vezetékes átvitel (Hand shake)

a. adó oldali vezérlés
Átvitel folyamata: Az adó felteszi az adatot az adatsínre, aktiválja a data ready vonalat, a vevő az adat elolvasása után aktiválja a data request vonalat, majd az adó visszaveszi az adatot. Ezután az adó a data ready-t, a vevő pedig a data requestet deaktiválja.
kép58
b. vevő oldali vezérlés (először request)
Értékelés: az adó visszacsatolást kap az adat célba érkezéséről -> megbízható átvitelt biztosít különböző sebességű eszközök esetén is.
kép59

29

FSB (front side bus) (általában 64 bit)

A processzortól a számítógép egyéb részeihez menő chipseten keresztüli külső interfészre utal. A front side bus processzoron kívüli kommunikációt jelent -> sokkal lassabb!
Fejlődése: frekvencia 66 MHz-400MHz sebesség 500 MB/sec-12 GB/sec
Az FSB chipsetjét az Intel az északi és a déli híd formájában alakította ki.
Északi híd: gyors egységekhez csatlakozhat
Déli híd: többi egység számára
InternalBus: eredetileg PCI busz, később nagy sebességű busz (pl.: 2011: ~20 Gbit/s a 2.0 ver.)
(Később az északi hidat a CPU-ba integrálták!)

30

HyperTransport (HT) rendszerbusz

2001-ben mutatta be az AMD, de pl. az IBM, a Cisco és az Apple is használja. Ez egy kétirányú soros/párhuzamos kapcsolat. Fő feladata a minden architektúránál más front-side bus kiváltása. Tipikusan a processzor lapkájára integrálva, de nagy sávszélességű I/O buszként is alkalmazzák. A képen egy négy belső linkkel rendelkező HT rendszert látunk. Az egyes komponenseket duál-szimplex linkek kapcsolják össze. Ezeken keresztül skálázható és automatikusan egyeztetett kapcsolatok alakíthatók ki.
Kétféle egységet tartalmaz:
• alagút (tunel), amelyik az eredeti funkcionalitásán (például PCIe, GbitEthernet) túlmenően két HT portot is tartalmaz, azaz hozzáfűzhető egy további HT egység
• barlang (cave), ez zsákutcát jelent (esetünkben a SATA egység), lezárja az úgynevezett HT láncot (chain)
HT-to-HT bridge segítségével egy adott rendszerhez további láncszemek illeszthetők. Ily módon komplex HT eszközhalmazt építhetünk.
Csomagkapcsolt elven működik. 40 bites vagy 64 bites címeket használ, sorrendben 1 terabájt illetve 18 exabájt (18EB) címtérrel.
A PCI-tól eltérően a HT nem rendelkezik dedikált I/O címtérrel. Ehelyett a memóriában leképezett I/O-val rendelkezik.

31

QPI (QuickPath Interconnect)

Feladata az FSB kiváltása volt. 2008-tól kezdték alkalmazni, először a Xeon, majd a Core-i CPU-knél. Ez volt az Intel válasza a HT-re, ez is pont-pont összeköttetést biztosít.
A QPI processzorok is lapkára integrált memória-vezérlőkkel és non-uniform memory access (NUMA) rendelkeznek. Distributed shared memory architektúrát használ. Ez azt jelenti, hogy a fizikailag elosztott memória egyetlen, logikailag közös címtérben címezhető.
Minden QPI port kettő darab, egyenként 20 adatvonalas pont-pont linkből áll, irányonként különálló órajeladóval rendelkezve.
A QPI 5-réteges architektúrát definiál. A fizikai réteg a 20 vonalon egyetlen órajelre 20 adatbitet visz át párhuzamosan. Csomagkapcsolt adatátvitelt biztosít.
A QPI nagysebességű pont-pont kapcsolatot jelent. Bár sokszor soros busznak hívják, ez pontosabban azt jelenti, hogy az adatokat több vonalon keresztül párhuzamosan küldik, s a csomagokat több párhuzamos átvitelre bontják.
A processzorban lehet egy vagy több mag. Amikor a processzor több magos, akkor azok használhatnak közös gyorsítótárat vagy pedig különálló gyorsítótárakat. A processzoron belül találunk továbbá egy vagy több memória-vezérlőt.
A processzor támogathatja a skálázhatóságot, így lehet benne crossbar router és egynél több QPI port (minden port egy pár egyirányú linket jelent).
Annak érdekében, hogy megelőzzük a rendszer-lassulásokat, a déli híd és az I/O alrendszerei közötti interfésznek a processzor sebességnövekedésével lépést kell tartani.