[elektro] Aszinkron átvitel kezdete
Móczik Gábor
pm_levlista at progzmaster.hu
Sat Aug 3 22:28:16 CEST 2013
2013.08.03. 21:44 keltezéssel, Pataki István írta:
> Szinkron átvitelnél nincsen szünet, folyamatos az adatáramlás, amikor
> nem áll rendelkezésre átvinni kívánt adat, akkor ún. szinkron szavakat
> szúr be a rendszer. Amint ismét rendelkezésre áll átvinni kívánt adat,
> leváltják vele a szinkron szót és a vevő oldal ezt a változást
> felismeri. Ez ugyan nem _start_bit_, de bizony pontosan ugyan az a
> funkciója. A stop bitet meg helyettesíti a két oldal számára egy
> előzetes megállapodás, ami alapján a vevő el tudja dönteni, meddig tart
> az üzenet.
>
> Innét nézve az átviteli módok közt nincsen elvi, csupán implementációs
> különbség, ami a kívánalmak és a rendelkezésre álló erőforrások közti
> optimalizáció következménye.
Röviden: nem.
Az egészben teljesen lényegtelen, hogy tartasz-e szünetet vagy sem,
egyáltalán nem fontos jellemzője egyik rendszernek sem.
Szinkron átvitelnél leállítod a szinkron jele(ke)t, vagy bármit, ami az
adatáramlást vezérli, inakív állapotba teszed a buszt, ezzel megszűnik
az adatforgalom. A vevő ha sikeresen vette az előző jelet, akkor eleve
IDLE állapotban van, ha most kapcsolódott be, akkor timeout után rájön.
Pl. SPI-n sincs folyamatos forgalom, kiküldesz valamit, majd abbahagyod
a clockot és inaktiválod a ChipSelect lábat. Teljesen elfogadott,
mindennapos megoldás, sőt, többnyire másképp nem is működik.
A szinkron és aszinkron átvitel között az a különbség, hogy további
jeleket viszel át, amik a szinkronizálást segítik, lehetővé teszik.
Pont attól szinkron, hogy nem az akármikor érkező élváltásokból kell
kilogikázni, hogy hol a bit eleje, meg mikor fog jönni a következő,
hanem hogy egy segéd vondalon kimondottan közlöd, hogy most jön egy bit.
A vevő _szinkronban_ lesz az adóval, mert kap az állapotáról egyértelmű
információt.
Észre kell venni, hogy a "szünet" nem értelmezhető tulajdonsága a
rendszernek. Ez egyébként is relatív fogalom. Késhet a clock 50ps-ot a
jitter miatt, de átállhatok bármikor fele frekvenciájú clockra is, vagy
egy bit közepén megállíthatom 5 percre is.
Ha bit csoportokat, azaz frame-eket akarsz átvinni, az már egy további
réteg, vagy viszel át frame-sync jeleket is, akkor szinkron az egész,
vagy bitmintából detektálod a frame elejét, akkor a frame átvitele
aszinkron, de a bitek átvitele ettől még szinkron módon mehet végbe.
-----
Ha tetszőleges rendszert szintekre bontva megvizsgálsz, és azt találod,
hogy azon a szinten az adatból kell eldönteni, hogy hol kezdődik maga az
adat, akkor az a szint aszinkron.
-----
More information about the Elektro
mailing list