Uživatel:Dvoral10

Z HPM wiki
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
Řádka 52: Řádka 52:
  
  
Fmt - formát paketu, a určuje jestli obsahuje data
+
'''Fmt''' - formát paketu, a určuje jestli obsahuje data
 
+
  Fmt[1:0]            Formát TLP
+
 
+
  00b                  3 DW, bez dat
+
 
+
  01b                  4 DW, bez dat
+
 
+
  10b                  3 DW a data
+
 
+
  11b                  4 DW a data
+
 
+
 
+
 
+
 
+
'''Type''' -  typ paketu TLP,  typ operace. Je vázán také na Fmt.
+
 
+
  Typ TLP       Fmt                Type                            Popis
+
 
+
  MRd       00/01            0 0000              Žádost o čtení z paměti
+
 
+
  MRdLk       00/01            0 0001              Žádost o čtení z paměti s požadavkem na Lock
+
 
+
  MWr       10/11            0 0000              Žádost o zápis do paměti
+
 
+
  IORd       00                0 0010              Žádost o I/O čtení
+
 
+
  IOWd       10                0 0010              Žádost o I/O zápis
+
 
+
  CfgRd0       00                0 0100              Konfigurační čtení typu 0
+
 
+
  CfgWr0       10                0 0100              Konfigurační zápis typu 0
+
 
+
  CfgRd1          00                0 0101              Konfigurační čtení typu 1
+
 
+
  CfgWr1       10                0 0101              Konfigurační zápis typu 1
+
 
+
  Msg       01                1 0rrr                Žádost o zprávu - rrr viz tab. 5
+
 
+
  MsgD       11                1 0rrr                Žádost o zprávu - rrr viz tab. 5
+
 
+
  Cpl               00                0 1010              Dokončení transakce bez dat
+
 
+
  CplD       10                0 1010              Dokončení transakce s daty
+
 
+
  CplLk       00                0 1011              Dokončení transakce bez dat s Lockem
+
 
+
  CplDLk       10                0 1011              Dokončení transakce s daty a s Lockem
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
  
  
Řádka 127: Řádka 66:
  
  
 +
'''-Data Link Layer (linková vrtva)'''
  
 +
Linková vrstva se stará o přesnost dat, tedy snaží se detekovat a opravovat chybu. K datům které obdrží s transakční vrstvy přidá kontrolní kod a ID číslo, a pošle do fyzické vrstvy. Data které obdrží z fycické vrstvy naopak otestuje, a pokud neobsahujou chyby pošle do transakční vrstvy. Pokud chybu obsahují tak si vrstva zažádá o opakování odeslání dat.
  
 +
'''-Physical Layer (fyzická vrstva)'''
  
 +
Fyzická vrstva se stará o všechny obvody nutné k připojení(fázové závěsy, buffery, serio-parelelní a paralelně seriové převodníky, impedanční přizpůsobení logika pro iniacilizaci udržování spojení)
  
 +
Data přijatá z linkové vrsty jsou doplněna informací o začátku a kocem paketu. Déle data zakoduje kodem 8 na 10 čím se přidají další informace o synchronizaci. Poté data převede na seriový kod a odešle. Naopak data, které linkvá vrstva přijímá, dekodoju a pokud jsou data v porátku odešle je do linkové vrstvy. Fyzická vrstva po zprávném přijetí ještě odešle potvrzení o přijetí dat, čímž vyprázdní buffer.
  
  
  
 
'''-Data Link Layer (linková vrtva)'''
 
 
'''-Physical Layer (fyzická vrstva)'''
 
  
  
Řádka 149: Řádka 89:
 
http://computer.howstuffworks.com/pci-express.htm
 
http://computer.howstuffworks.com/pci-express.htm
 
http://en.wikipedia.org/wiki/PCI_Express
 
http://en.wikipedia.org/wiki/PCI_Express
 +
'''

Verze z 18. 12. 2011, 12:50

Obsah

PCI Express

Úvod

PCI Express (PCIe, 3GIO - 3rt Generation I/O), je nástupce sběrnice PCI, která je využíváná ve výpočetní technologii již od roku 1993. V dnešní době neustálý pokroků a nárůstu rychlostí veškeré výpočetní techniky, je zapotřebí aby i přenos mezi komonety byl co nejrychlejší a nejkvalitnější. Proto už nedostatečná PCI byla nahrazena novou PCIe, která svého předchůdce mnohokár převyšuje.

Historie

PCI

PCI (Peripheral Component Interconnect) je počítačová sběrnice pro připojení různých komponentů k základní desce. Tato sběrnice používala pro spojení jeden vodič s dvoustavovou modulací.


PCI 32bit @ 33 MHz = 132 MBps - základní "modul"

PCI 32bit @ 66 MHz = 266 MBps

PCI 64bit @ 33 MHz = 266 MBps

PCI 64bit @ 66 MHz = 533 MBps


PCI-X

AGP

PCI Express

PCIe je zběrnicí typu point to point přenáší, data po paketech. Narozdíl od sběrnice PCI , která měla jednosměrnou komunikaci, je PCIe obousměrná (Rx-Tx)

Model PCIe je podobně jako model ISO-OSI založen na vrstvách.

Vrstvy

PCIe vrstvy.jpg obr1. vrstvy PCIe

-Transaction Layer (transakční vrstva): Tato vrstva slouží ke zpracovaná paketů transakční vrstvy (TLP). V těchto paketech je nesena informace o operaci (čtení, zápis, zpráva). Pakety se dělí na request/completion a jsou posílány nebo příjímány z vrstvy core logic. Každý paket má své ID číslo aby se pak na něj dalo jednoduše odpovědět. Transakční vrstva se také stará o nastavení parametrů, posílání zpráv přes virtuální vodiče přerušení, řízení napájení.


TLP.gif obr2. paket transakční vrstvy

Paket transakční vrstvy se skládá, z hlavičky, vlsatních dat kontrolníhou součtu ECRC

TLP hlavicka.gif obr.3 hlavička TLP

Hlavička obahuje řídící informace o typu přenosu. Délka hlavičky je v 3-4 doublewordy (DW = 4 byty), záleží na Fmt.


Fmt - formát paketu, a určuje jestli obsahuje data


TC - udává Traffic Class

TD - povoluje připojení ECRC (TLP Digest) ke konci paketu

EP - nese informaci o chybě vzniklé v datech, například při chybě parity při čtení ze sběrnice PCI. Tato chyba nemusí být nutně kritická. Jedná se o informaci pro nadřazený sytém, který se s chybou vypořádá. Tato chyba se nesmí vyskytnou v žádné jiné části než datové! Proto se tomuto mechanizmu také říká data poisoning.

Attr - atributy udávající informace pro přenos dat a koherenci cache

Lenght - jde o délku přenášených dat v DW uvnitř paketu. Tedy maximální délka může být 2**10 DW = 4096 bytů


-Data Link Layer (linková vrtva)

Linková vrstva se stará o přesnost dat, tedy snaží se detekovat a opravovat chybu. K datům které obdrží s transakční vrstvy přidá kontrolní kod a ID číslo, a pošle do fyzické vrstvy. Data které obdrží z fycické vrstvy naopak otestuje, a pokud neobsahujou chyby pošle do transakční vrstvy. Pokud chybu obsahují tak si vrstva zažádá o opakování odeslání dat.

-Physical Layer (fyzická vrstva)

Fyzická vrstva se stará o všechny obvody nutné k připojení(fázové závěsy, buffery, serio-parelelní a paralelně seriové převodníky, impedanční přizpůsobení logika pro iniacilizaci udržování spojení)

Data přijatá z linkové vrsty jsou doplněna informací o začátku a kocem paketu. Déle data zakoduje kodem 8 na 10 čím se přidají další informace o synchronizaci. Poté data převede na seriový kod a odešle. Naopak data, které linkvá vrstva přijímá, dekodoju a pokud jsou data v porátku odešle je do linkové vrstvy. Fyzická vrstva po zprávném přijetí ještě odešle potvrzení o přijetí dat, čímž vyprázdní buffer.




Zdroje

http://www.pcisig.com/specifications/pciexpress/resources/PCI_Express_White_Paper.pdf?iid=tech_%20pciexpress+rhc_whatispciexpress http://www.svethardware.cz/art_doc-66405A60712A7A6CC12570000046F535.html http://arstechnica.com/old/content/2004/07/pcie.ars/1 http://computer.howstuffworks.com/pci-express.htm http://en.wikipedia.org/wiki/PCI_Express

Osobní nástroje
Jmenné prostory
Varianty
Akce
Navigace
Nástroje