Vlákno názorů k článku
USB s rychlostí 20 Gbps přijde letos, nové značení ale bude matoucí od Vít Šesták - Opravdu matoucí. Navíc při využití obou linek to...

  • Článek je starý, nové názory již nelze přidávat.
  • 1. 3. 2019 3:09

    Adam Kalisz
    Stříbrný podporovatel

    Tak PCIe 16x je co? Paralelní sběrnice?
    Řekl bych, že to budou dvě poměrně nezávislé linky, které budou posílat pakety. Něco jako agregace linek, ale jinak.

  • 1. 3. 2019 12:54

    RDa

    V pripade PCIe to nejsou nezavisle linky, ale data chodi paralelne skrze vsechny lajny. Takze paket vyuzije vsechny linky v paralelnim smyslu. Snizuje to latence, oproti situaci, kdy by kazdy paket musel chodit jen jednou cestou (typicky problem agregovaneho ethernetu).

  • 1. 3. 2019 13:41

    KarelE

    Bude to sériové. Rozdíl mezi paralelním a sériovým rozhraním je v tom, kolik bitů se posílá najednou. Paralelní více, seriové jen jeden.

    Paralelní přenos má výhodu v tom, že šetří vodiče - máte třebas 8 datových bitů a pak dva vodiče pro signalizaci s druhou stranou (jeden říká dopředu "já budu zapisovat data, tak mi na ty dráty teď nesahej" a druhý pak řekne "tak jsou tam, rychle si je přečti"). Seriové rozhraní má na jeden jediný bit ty vodiče dva - data a signalizaci, že datový vodič je nastavený a druhá strana si může ten bit přečíst. Navíc seriové nebývá ani half duplex, zatímco paralelní klidně ano - každá strana má svou signalizaci, ale o datové vodiče se dělí. Další úspora.

    Nevýhoda paralelního přenosu je v tom, že musíte vystavit 8 bitů a pak teprve pošlete signál, že si to druhá strana může přečíst. Na krátké vzdálenosti pohoda, ale na delší začnete narážet na fakt, že každý vodič je trochu jiný a jinak zatížený. Na kabelu to není až tak neřešitelné, ale v obvodech najednou máte problém, že cesta od vývodu IO do konektoru je u každého drátku jiná. Pro 16 datových vodičů je to už docela problém. Respektive není, pokud nechcete nějaké vysoké přenosové rychlosti. Ty přechodové jevy jsou jsou v řádu nanosekund, na kabelech a celé cestě tak do 50 nanosekund. Takže když tomu necháte 100 ns na ustálení, tak vám ten paralelní přenos poběží krásně. Akorát že to je 10 MB/s, 80 Mb/s. A lepší to nebude. Tedy pokud nebudete provozovat přenos se samoopravnými kódy typu 15 ze 11 s tím, že frekvenci nastavíte tak, aby vám klidně čas od času jeden bit byl špatně. S těmi se lze dostat i na osminásobek přenosové rychlosti, ovšem za cenu komplikace HW i SW spracováním kódů a několika datových vodičů navíc.

    Sériový přenos sice posílá jen jeden bit, ale výhoda je, že na posílání potřebuje jen dva dráty. A to už se dá fyzicky provést tak, aby se signál oběma šířil natolik podobně, že můžete posílat na frekvenci v jednotkách GHz. Přenosová rychlost je pak klidně 5 Gb/s. To samo o sobě už stačí pokořit paralelní rozhraní.

    Ale tady to nekončí - vy si můžete těch seriových portů vyrobit několik. Třebas čtyři. A druhá strana si také pořídí čtyři seriové porty a pak si je propojíte. Jako počítač, co má více síťových karet. Tomuhle se říká "linky". Jsou nezávislé, ani o sobě neví. Kdo o nich ví je nadřazený ovladač, který veškerou komunikaci rozdělí na balíky dat nějaké velikosti a ty pak postupně cpe do volných linek. Na druhé straně se čtou balíky dat z linek a nadřazený ovladač si je zase skládá.

    Pořád je to seriový přenos, protože jednotlivé linky o existenci těch druhých neví, natož aby se nějak zajímaly o to co se na nich děje, nebo snad nedejbože čekaly, jestli ta druhá už něco odesílá. Prostě nedělají to, co je problém paralelního přenosu - nemusí se synchronizovat a všechno dělat najednou a v jediný okamžik. U každé linky tedy musíte řešit jen dva vodiče - aby piny IO byly vedle sebe, cesta na DPS byla stejně dlouhá, stejně široká, stejně daleko od rušení, měla stejnou kapacitu i impedanci. To si musí vyřešit každá linka, jenže jen sama pro sebe - ty dva dráty druhé linky si tedy táhněte kudy a jak chcete, vůbec vás nemusí trápit ta první. Sice se pak každá linka chová jinak, ale to nevadí, protože komunikují nezávisle na sobě.

    Takže je to stále *serial* bus. Jen má dvě linky. O serveru, co má dvě síťové karty, také netvrdíte, že by měl paralelní internet. Je na ovladači, jak a jestli to využije. Situace stejná jako u PCIe - tam se běžně používá buď jedna linka, dvě, čtyři, osm nebo šestnáct. Připojená zařízení se musí dohodnout zda a jak ty linky budou používat a jak budou data rozdělovat a skládat. Navíc se musí umět vypořádat s tím, že každá linka komunikuje jinak rychle - protože na ně působí ty samé fyzikální vlivy jako u paralelního rozhraní, prostě už jen díky délce spoje na desce tištěných spojů se každá linka chová jinak. Narozdíl od paralelního přenosu ty ostatní linky normálně posílají další věci, nic se nezahazuje, na nic se nečeká a znovu se pošle jen ten jediný "packet" na té jediné lince, kde nedorazil dobře.

  • 3. 3. 2019 2:18

    RDa

    Mnozstvi vyprodukovaneho textu bohuzel negarantuje, ze o tom neco vite, tak sup do skoly nebo si prectete nejakou odbornou literaturu.

    U PCIe se opravdu nechova kazda linka jinak. Vsechny lajny v jednom linku bezi vzdy na stejne rychlosti - zadna neni a ani nemuze byt pomalejsi. Podle standardu vychazi tolerance zpozdeni (treba delkou spoje) ktere musi zarizeni umet korigovat radove na metry. A data se rozdeluji vzdy stejne, podle toho jak siroky je link. Pokud paket dorazi poskozeny, tak se prenese znova, ale po vsech lajnach daneho linku, tj. znova paralelne.

    Ad seriovy prenos - nepotrebuje dva draty. Staci mu jeden. Plete se vam to bud s full-duplexem (ktery by klidne sel i po jednom dratu), nebo s diferencialni sigalnizaci.

  • 3. 3. 2019 19:17

    kopfik
    Stříbrný podporovatel

    asi úplně neznáte rozdíl mezi sériovou a paralelní sběrnicí .... počet linek neurčuje jestli jde o sériové nebo paralelní zapojení. paralelně se dnes už leda zapojují sériové linky :) to ale opět nemá nic společného s paralelní sběrnicí :D