Uživatel:Fridrto1

Z HPM wiki
Přejít na: navigace, hledání

Obsah

Shrnuti FireWire

FireWire (IEEE 1394) je sériová vysokorychlostní sběrnice, určená pro isochronní (rovnoměrný v čase) přenos dat v reálném čase. Používá se v poloprofesionální a profesionální audio a video technice, stejně tak jako v leteckém a automobilovém průmyslu. Standart, který definuju tuto sběrnici se u různých firem jmenuje jinak Apple(FireWire), Sony (i.LINK) a Texas Instruments (Lynx). FireWire bylo vyvíjeno se záměrem nahradit paralelni sběrnici SCSI. Ta umožnovala výměnu dat mezi interními nebo externími počitačovými zařízeními a počítačovou sběrnicí. Výhoda této sběrnice oproti ATA/ITE byla možnost připojení většího množství pevných disků, či jiných periferií.IEEE 1394 také definuje rozhraníbackplane, které se však v praxi moc neosvědčilo.

Topologie

Architektura sériové sběrnice je omezena počtem uzlů na jakékoliv sběrnici na 63 uzlů, které mohou mít topologii strom nebo Daisy-chain. Spojení mezi uzly jsou dvoubodová. Každý uzel má jeden a více portů. Uzly s více porty umožnují rozšíření topologie. Komunikace mezi uzly je point-to-point. To znamená, že když dostane víceportový uzel paket, obdrží ho, detekuje ho, resynchronizuje pomocí vlastních hodin a přepošle paket na další uzly. Obrázek znázorňuje typické PC které zahrnuje sériovou IEEE 1394 sběrnici připojenou k PCI sběrnici. Sériová sběrnice umožnuje vysokorychlostní přístup k PCI sběrnici periferním zařízením, které by jinak potřebovaly drahé sběrnice jako jsou PCI nebo SCSI. Configurace sběrnice se provádí dynamicky tak ja se nová zařízení připojují/odpojují. Konfigurační proces nevyžaduje zásah počítačového systému.

Topologie sběrnice












Sběrnicový bridge

Sběrnice podporuje vícenásobný sběrnicový systém přes sběrnicové můstky. Sběrnicový můstek "poslouchá" provoz na sběrnici a ignoruje jakoukoliv komunikaci mezi uzly na stejné sběrnici, ale pozorně tuto kominukaci "poslouchá". Když můstek obdrží adresu uzle, který není na stejné sběrnici předá paket sousední sběrnici. Ačkoliv sériové sběrnici mohou používat mnoho můstkových konfigurací, když se používá k přemostění Command and Status Registr (CSR) architektury očekává se hierarchie jak je znázorněna na obrázku.

uzly na sběrnicích







Příklad hierarchické sběrnicové topologie, kde sběrnice #5 je seriová sběrnice a sběrnice #1-#4 jsou sběrnice kompatibilni s CSR architekturou

Architektura

Protokoly seriové sběrnice
vysvětlivky k obrázku 
PH znamená fyzická vrstva
LK znamená linková vrstva
TR znamená transakční vrstva
SB znamená sériová sběrnice
CONT znamená kontrola
BUS znamená sběrnice
CLOCK znamená hodiny
EVENT znamená událost
reg, ind, resp, conf znamená žádost, indikaci, odezvu a potvrzení

Protokol seriové sběrnice je rozdělen do 3 vrstev, jak ukazuje obrázek.Každá vrstva plní svou specifickou a nezaměnitelnou funkci.

Fyzická vrstva

Fyzikcá vrstva je jediná hmatatelná vrstva. Jsou to totiž fyzicky dráty. Má tři hlavní funkce:

1) Překládá logické symboly, používané linkovou vrstvou, na elektrické signály pro různá média na sběrnici.
2) Garantuje, že právě jeden uzel vysílá data. Dělá to pomocí arbitrace.
3) Definuje mechanické rozhrani sériové sběrnice

Stará se o resynchronizaci a opakování dat a také o automatickou inicializaci sběrnice. Primárně je tato vrstva určená k příjmu a přenosu bitů, arbitraci a stanoveni mechanických a elektrických interfaců. O rovný přistup všech uzlů ke sběrnici se stará právě arbitrace o ní později. Data jsou mezi jednotlivými uzly posílana "zakódována" pomoci data-strobe mechanismu.

Strobe

Během přenosu paketů po sběrnici může vysílat pouze jeden uzel na sběrnici a tak zařízení mohou pracovat v half-duplex[1]
Data-srobe kodování
režimu používajíc 2 signály: Data a Strb. Data jsou vysíláná pomocí NRZ[2] kódováni a jsou doplňována Strb signálem, který změní svůj stav, vždy když jdou 2 po sobě bity se stejnou hodnotou (2x 1 nebo 2x 0). Nikdy však nedochází ke změně logické hodnoty v obou kanálech zárověň. Buď se mení data nebo Strb. Přidáním Strb kódu má tu výhodu, že se lehcé získá hodinový takt se slabým jittrem. A to tím, že použijeme funkci XOR[3]







Konfigurace sběrnice

Po připojení nebo odpojení nového zařízení se vždy provede reset. Reset je signalizován na všechny uzly pomocí arbitračních signálů. Poté následují 3 kroky rekonfigurace, nutné k tomu abych věděl kdo a kde se mi na sběrnici nachází. Inicializace sběrnice, identifikace uzlů na svěrnici a vlastní identifikace. Uzly jsou rozděleny do skupin: Branch a leaf. Těch může být mnoho, ale je pouze jeden root. Kdykoliv se uzel připojí ke sběrnici nastane nucený reset sběrnice a nastane speciální stav, kdy se smažou věškeré informace o topologii sběrnice a začne další fáze. Po inicializaci sběrnice, má uzel, ať je kdekoliv, jedinou dostupnou informaci a to jesli je branch (více než jeden přímo připojený soused), nebo leaf (pouze jeden soused), nebo je izolován (nepřipojen) Siť složená z branch a leaf je na obrazku.

Příklad sitě









Fair arbitration

Normální kabelové a backplaneové arbitrační metody zaručují, že pouze jeden uzel přenáší data na konci arbitrační periody. Tyto metody poskytují pouze striktní přednostní přístup. Uzel s vyšší přirozenou prioritou (nejvyšší arbitrační číslo, je blíže k rootu daneého kabelu), vždy vyhraje. Normální asynchronní arbitrace pro seriovou sběrnici přidává jednoduché schéma, které rovnoměrně rozděluje možnost přístupu na sběrnici mezi všechny uzly.


Fairness interval.png


Fairness protokol je založen na principu fairness intevralu. Fairness interval se skládá z jedné nebo více period aktivní sběrnice, oddělených krátkou mezerou zvanou subaction gap. Vše je následovánou delší mezerou zvanou "arbitration reset gap". Na konci každe subaction mezery rozhodne arbitrace sběrnice jaký další uzel bude posílat asynchronní pakety. Tento koncept je zobrazen na obrázku. Obecně platí, že přenosy jsou prováděny ve 125 us cyklech. Root vysílá indikační paket "Cycle_Start", který oznamuje, že začal cyklus, na všechny uzly na sběrnici. V zásadě jsou 2 rozdílné druhy arbitrace pro isoschornní a asynchronní přenos paketů.

Pokud jsou pouze asynchronní přenosy dat, vše je řízeno na základů "fair" plánování s prioritami. Po 20 us mezeře (bus idle time), začíná nová možnost přenosu dat. Pokud chce jeden uzlů hovořit, pošle přes ostaní uzly Rootu arbitration request. Jestliže žádá víc uzlů ve stejném cyklu o možnost mluvit, vyhraje ten uzel, který je blíže Rootu. Pokud jsou oba uzly od rootu stejně daleko, tzn jsou oba dva branch (viz obrázek dřive) , potom vyhraje uzel, který má nejnižsí čislo portu v Rootu.(Root má jednotlivé porty, na kterých jsou dalši uzly, očíslovány.). Každý port může hovořit pouze jednou v průběhu daneého cyklu. Po 10 us mezerě se opět rozhoduje o ulzu, který bude moct hovořit. Tak to pokračuje, až do doby, než se vystřídají všechny uzly. Poté následuje 20 us mezera a začíná nové kolo rozhodování.





Reference

FireWire:

www.jaycar.com.au/images.../firewire.pdf http://80.ieeexplore.ieee.org.dialog.cvut.cz/search/srchabstract.jsp?tp=&arnumber=730740&openedRefinements%3D*%26filter%3DAND%28NOT%284283010803%29%29%26searchField%3DSearch+All%26queryText%3Dfirewire http://shop.ieee.org/ieeestore/Product.aspx?product_no=SH94986

http://80.ieeexplore.ieee.org.dialog.cvut.cz/xpls/abs_all.jsp?arnumber=526693

http://80.ieeexplore.ieee.org.dialog.cvut.cz/stamp/stamp.jsp?tp=&arnumber=1146719

http://80.ieeexplore.ieee.org.dialog.cvut.cz/stamp/stamp.jsp?tp=&arnumber=1226130 -Performance of a firewire-Ethernet protocols conversion on an ARM7 embedded processor




ctrl -z pozastavi program

bg posle proces na pozadi

fg posle z pozadi do popredi


Prikazy: xwininfo - zobrazi informace o okne do ktereho kliknu sudo apt-get update; sudo apt-get -y install libx11-dev - pri zadani do terminalu nainstaluje balicek libx11-dev sudo apt-get update; sudo apt-get -y install emacs xwd|xwud - po zadani prikazu kliknu na okno a to se mi "zkopiruje" xwd >soubor - zkopiruje mi to na co kliknu a vytvori z toho soubor xwud<soubor - vyvolani toho co jsem ulozil file soubor - vyhodi mi informace o tom vytvorenem souboru soubor


xterm -fn 12x24& spustim okno 12x24


http://verydemotivational.files.wordpress.com/2010/03/fthatdogp1.jpg

Helca a SliTaz

Návrh tématu semestrální práce:FireWire


cast 1. http://www.imagehosting.cz/?v=helenka.jpg

cast2 http://www.imagehosting.cz/?v=helca.jpg


QMON paralll enviroment MPI na paralelni procesy

cat>soubor echo start sleep 20 echo konec

ctrl d

potom sh soubor

vytvorim program do souboru a pote spustim

chmod +x soubor vytvori spustitelny soubor

./soubor            spusteni


qsub soubor vidim bezici proces v gmon job control

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