Szybkie interfejsy szeregowe -- dlaczego nie np. EFM-plus zamiast
Feb 11, 2016 38 Replies
P
Piotr Gałka
U¿ytkownik "J.F." <jfox snipped-for-privacy@poczta.onet.pl> napisa³ w wiadomo¶ci news:56bde5ed$0$701$ snipped-for-privacy@news.neostrada.pl...
Pierwsz± wypowied¼ zrozumia³em tak, ¿e stosuj±c 8/10 nie zmieniamy czasu bitu i tracimy (z 1,25G robi siê 1G). Natomiast stosuj±c EFM tracimy 2x bo 8 kodujemy na 16 i zyskujemy 3x w³a¶nie skracaj±c bit 3 razy (by³ wzór: 1.25G*3*8/16 = 1.875Gbps). Piszê opieraj±c siê wy³±cznie na tych informacjach.
Mam 1200m skrêtki w szufladzie. To chyba ju¿ by³a linia d³uga.
Ta zale¿no¶æ im d³u¿ej stan tym pó¼niej zbocze bardziej bra³a siê z pó³przewodników ni¿ z linii.
Tak, ale co¶ przeczuwam, ¿e przy transmisjach o które chodzi nigdy nie ma d³ugo trwaj±cego stanu, ani tym bardziej jeszcze d³u¿ej trwaj±cego.
A wszystkie stany s± krótko trwaj±ce. P.G.
Didn't find your answer? Ask the community — no account required.
Witam. Ponieważ nie potrzebowałem (nie robiłem) do tej pory zasilaczy...
J
J.F.
No nie Piotrze - tzn niby dobrze piszesz, ale diabel tkwi w szczegolach. Pierwsza sprawa - a jakie jest pasmo kawalka kabla, np koncentrycznego ? Gigaherce ?
Druga - przy wolnozmiennej petli pradowej dominujacy bedzie wplyw pojemosci kabla, tzn calkowitej pojemosci. Calkiem spora moze wyjsc, a prad musi ja przeladowac.
Przy szybkozmiennej trzeba bedzie na to popatrzec jak na linie transmisyjna - calkiem szybko moze transmitowac, wyjscie moze byc opoznione od wejscia o pare bitow, ale duzego napiecia na wyjsciu sie nie uzyska. Bo juz na wejsciu bedzie np 20mA*50 ohm = 1V. Ktore to 50 ohm przy wolnozmiennnym sygnale w ogole nie ma uzasadnienia.
A raczej polowa, bo trzeba opornik dopasowujacy, a nawet dwa :-) Co prawda gdzies tam na wyjsciu linii dlugiej sie ten prad pojawi (tzn polowa i jeszcze stlumiona), ale detektor trzeba niskonapieciowy.
Taki detektor moze by sobie i z wolnozmiennym poradzil rownie dobrze i Pawel moglby cos innego napisac :-)
J.
P
Piotr Gałka
U¿ytkownik "Piotr Wyderski" snipped-for-privacy@neverland.mil napisa³ w wiadomo¶ci news:n9kp7h$55j$ snipped-for-privacy@node1.news.atman.pl...
Nie rozumiem, jak to siê ma do tamtego (w sensie pasma, bo w sensie idei rozumiem, ¿e to jest to samo tylko bardziej). Tam by³o za³o¿enie (nie zak³adam, ¿e s³uszne), ¿e pasmo kabla decyduje o tym jaki najkrótszy impuls mo¿na przes³aæ i koduj±c tak, aby bity zawsze by³y co najmniej 3 mo¿na zwiêkszyæ prêdko¶æ 3 razy. Tutaj zak³adaj±c impuls 1ns (dwie zmiany) zak³adamy (przez analogiê z poprzednim), ¿e kabel ma pasmo wystarczaj±ce do przes³ania najkrótszego impulsu - czyli raczej 1GHz ni¿ 2Hz.. P.G.
P
Piotr Wyderski
W kontekście wątku to nie ma znaczenia. Gigabitowy kabel ma mieć IIRC pasmo 250MHz na parę przy jakimś tłumieniu i nie jest istotne, czy Twój ma więcej. Chodzi o to, że wolno mu mieć dokładnie tyle i dalej spełni normy.
Ale to się w końcu wszystko sprowadzi do tłumienia w funkcji częstotliwości składowych sygnału i długości kabla (czyli pasma) oraz zależności ich fazy od tej częstotliwości (czyli dyspersji). Więcej w tym modelu IMO nie ma, jeśli założymy liniowy zakres pracy kabla (nie przebija izolacji itp.)
Owszem, to i jeszcze cała masa innych efektów tu będzie miała udział, ale to efektywnie skończy jako pasmo i dyspersja. Pozdrawiam, Piotr
P
Piotr Wyderski
OK, wersja jeszcze bardziej ekstremalna: po zmianie stanu nie wracamy już do poprzedniego przez jeszcze jedną sekundę, czyli impuls jest długi (w zakresie [1..2) sekund).
Pozdrawiam, Piotr
P
Piotr Gałka
Chyba ogarniam. Gdyby¶ napisa³, ¿e z tego, ¿e sygna³ ma 1Hz (choæ wymagana dok³adno¶æ zbocza
1ns) nie mo¿na wyci±gaæ wniosku, ¿e da siê go przes³aæ kablem o pa¶mie 1Hz od pocz±tku by³oby jasne. Ale napisa³e¶ jakby odwrotnie - czy z tego, ¿e sygna³owi zdarzy³o siê mieæ
1Hz wynika, ¿e kabel ma 1Hz i to mi nie gra³o. P.G.
J
janusz_k
W dniu 2016-02-11 o 19:12, mk pisze:
Wg mnie nie, zawsze gdzieś się trafi sekwencja szybsza i wtedy pasmo ci gwałtownie rośnie. A jeżeli nie to się nie da zakodować bo jak Cię zrozumiałem z 8 bitów robisz 16 tak aby minimalna grupa wynosiła 3 bity tego samego typu, to oznacza 5 grup + 1 bit czyli de fakto jedna grupa ma 4 bity, zgadza się? a to oznacza że możesz zakodaować tylko 2^5 stanów a to jest mniej niż 2^8, co oznacza że muszą występować grupy krótsze 2 lub nawet 1 bitowe, czyli wracamy do tego co napisałem w 1 poście, przepustowość przy tym samym paśmie spada o połowę.
P
Piotr Gałka
U¿ytkownik "janusz_k" <Janusz snipped-for-privacy@o2.pl napisa³ w wiadomo¶ci news:n9la8e$1rb7$ snipped-for-privacy@gioia.aioe.org...
2^5 gdy pierwsza grupa jest 4 bity
2^5 gdy druga jest 4 bity ..... nikt te¿ nie zabroni³ aby by³y 4 grupy w tym 5 bitowe.
Nie chce mi siê wyszukiwaæ wszystkich mo¿liwo¶ci, ale skoro kto¶ to tak wymy¶li³ to zapewne siê da. P.G.
M
mk
W dniu 2016-02-12 20:02, janusz_k pisze:
Przyznaję, że nie potrafię zrozumieć Twojego wywodu.
Powtarzam: przekodowanie EFM-plus daje gwarancję niezmienności stanu linii częściej niż co 3 bity. I to nie jest jakaś cecha uboczna, ale właśnie wokół tej cechy EFM-plus został zaprojektowany.
Ok... rozumiem, że masz wątpliwości wynikające z tego, że 16 bitów kodu wyjściowego, po narzuceniu ograniczenia, że stan linii ma być utrzymany przez co najmniej przez 3 bity (ale nie dłużej niż 11), nie da 256 możliwości, które potrzebne są do reprezentowania 8-bitów ciągu przed przekodowaniem. Dodatkowo jeszcze ograniczenie, że po sklejeniu dwóch dowolnych 16 bitowych kodów wyjściowych również nie będzie naruszona poprzednia reguła.
No to przeprowadziłem trochę obliczeń... Z punktu kombinatoryki problem jest podobny do problemu obliczenia "na ile sposobów można wejść po schodach", gdzie dana jest liczba schodów przy czym można wykonywać krok zwykły, gdzie posuwamy się o jeden stopień, albo krok długi, gdzie posuwamy się o dwa stopnie. Problem rozwiązuje się poprzez odkrycie reguły rekurencyjnej: liczba możliwych sposobów dotarcia do stopnia n jest równa f(n) = f(n-1)+f(n-2). Od razu też widać bezpośredni związek z ciągiem Fibonacciego.
Nasz problem jest nieco inny: dozwolone są tylko kroki w których pokonujemy od 3 stopni do 11 w jednym kroku :-) (ktoś tu ostatnio narzekał na idealnie okrągłe krowy o nieskończenie małej średnicy). Z racji tego, że już samo wyprowadzenie wzoru na n-ty element ciągu Fibonacciego trywialne nie jest, to uznałem, że tym bardziej trywialne nie będzie dla naszego problemu. Więc sięgnąłem po rozwiązanie algorytmiczne i sporządziłem na kolanie mały programik to obliczający.
I faktycznie wejść na 16 stopni, przy ww. ograniczeniu, da się na 83 sposoby, czyli to odpowiada log2(83) = 6.375... bitów. No i gdyby się tu zatrzymać, miałbyś rację -- nie da się.
No ale sprawdźmy na ile sposobów da się wejść na 32 stopni przy ww. ograniczeniu. Odpowiedź brzmi: 33961 czyli log2(33961) = 15.0516 bitów. Wciąż nie... ale już prawie.
No to 64 stopnie. Liczba możliwych sposobów wejść ok. 5.62 mld czyli log2(5.63 mld) = 32.3891 bitów. DA SIĘ! Strumień 64 bitów przekodowanych jest w stanie nieść 32 bity danych oryginalnych!
Gdyby jeszcze interesowało kogoś opcja 512 schodów... Liczba sposobów 6.57*10^82 Log2(6.57*10^82) = 275.114 bitów. Czyli widać, że EFM-plus nie jest optymalny bo da nam tutaj możliwość przeniesienia "jedynie" 256 bitów. Daje on jednak ekstra DC-free i po prostu, domniemuję, daje się go efektywnie zaimplementować.
Nie znam szczegółów pryncypiów działania EFM-plus, ale nie działa on na zasadzie prostej "look-up table" 8->16 bitów. Wg wiki po każdym przekodowaniu 8->16 zapamiętywany jest stan w 4-stanowej maszynie i stan ten jest uwzględniany w kolejnym przekodowaniu 8->16.
pzdr mk
M
mk
Tak.
Trzech jedynek, albo czterech, albo pięciu itd. I niech liczba tych jedynek też niesie informację.
Hmmm...
No i tu się nie zgadzam. Myślę, że nie jest zbyt wydumane założenie, że kanał który przeniesie impulsy o długości 1*t, 2*t, 3*t... przeniesie też impulsy o długości 1.33*t, 1.67*t, 2.33*t...
pzdr mk
M
mk
W dniu 2016-02-12 13:41, snipped-for-privacy@gmail.com pisze:
Nie odbieram jako przytyk: w wojsku mawiało się: "Najlepszy rezerwisty pagon czysty!" ;-)
No to nawiązując do wątku o kostce Rubika takie zadanie: Skoro robot jest w stanie ułożyć kostkę z dowolnego stanu początkowego w ciągu jednej sekundy, to i jest w takim czasie wstanie wykonać operację odwrotną. Więc niech robot koduje informację w postaci odpowiedniego "rozkopania" kostki i wyrzuca ją co sekundę w kierunku odbiorcy informacji.
Ile bitów na sekundę, a ile bodów? ;-)
pzdr mk
M
mk
W dniu 2016-02-12 10:43, Piotr Gałka pisze:
Myślałem, że z patentów żyją przede wszystkim wynalazcy (czy ich "opiekuni"). Więc EFM-plus (czy inne) jest opatentowane nie po to by leżeć w szufladzie i robić wszystkim na złość nie mogąc być wdrożone, ale wprost przeciwnie: po to by jednak być wdrażane gdzie się da (za odpowiednią opłatą oczywiście) i jak najszybciej (bo czas leci).
I co? Pewnie zarobił na tym kupę kasy?
No właśnie: bo tylko tyle wart był ten patent.
pzdr mk
M
mk
W dniu 2016-02-11 19:48, Waldek Hebisch pisze:
Zgadzam się z tym... chociaż wolałbym mówić o precyzji zlokalizowania punktu próbkowania sygnału względem zboczy. Za lokalizacją zboczy odpowiada układ PLL, który wytwarza sygnał zegarowy (lub nawet wiele sygnałów o różnych fazach) i tenże PLL ładnie filtruje jittering zboczy. Wczytując się w parametry różnych układów PLL producenci obiecują na wyjściu jittering < 1 ps.
Prawdą jest, że wg tego co proponuję zbliżamy się z punktem próbkowania
3x w kierunku punktu przełączania i to oczywiście jest problem. Ale też patrząc na te wszystkie eye-diagram szybkich linii, są takie ładne :-) Jittering wcale nie taki wielki, aż kusi by to próbkować gęściej...
Proponowałem też, że jeśli kręcić zegara się nie da już, to można wprowadzić trzy sygnały zegarowe o przesuniętych fazach... No ale po przemyśleniu: przecież prawdopodobnie to rozwiązanie już jest stosowane
-- przy 8b10b kto wie czy nie ma 10-fazowego taktowania. A ja chcę to jeszcze razy 3...
pzdr mk
A
ACMM-033
Użytkownik "mk" <reverse_lp.pw@myzskm> napisał w wiadomości news:56bfb855$0$698$ snipped-for-privacy@news.neostrada.pl...
No, ale gdyby się uparł i posmarował dobrym papugom? ("połowa wygranej jest pana... a nawet 90%, niech stracę") Tak o tym patencie czytając pomyślałem sobie, czy dało by się wykorzystać takie tam zawiłości patentowe, przeciw organizacjim takim, jak ZAiKS, itd? Ale to już chyba NTG...
A
Artur
Na Wikipedii piszą, że dla EFM-plus mogą wystąpić co najmniej dwa zera i co najwyżej dziesięć zer między jedynkami. Czyli może być 0010010010000, skąd dane, że zmiana stanu może wystąpić nie częściej niż co trzy bity?
J
J.F.
U¿ytkownik "Artur" napisa³ w wiadomo¶ci grup dyskusyjnych: snipped-for-privacy@googlegroups.com...
Dalej masz wyjasnienie: "This is because bits are encoded with NRZI encoding, or modulo-2 integration, so that a binary one is stored on the disc as a change from a land to a pit or a pit to a land, while a binary zero is indicated by no change."
dwa zera to brak zmian, zmiana nastepuje dopiero na trzeciej jedynce. Czyli minimalna dlugosc pitu lub landu to 3 bity/jednostki.
J.
A
Artur
Racja, nie doczytałem że dalej jest NRZI. No ale jakoś intuicja mówi mi, że gdzieś jest haczyk. Pewnie w tych krótszych zboczach..
J
J.F.
U¿ytkownik "Artur" napisa³ w wiadomo¶ci grup dyskusyjnych: snipped-for-privacy@googlegroups.com...
W krotszych zboczach i w przejsciu z kodowania przez obecnosc pita na kodowanie przez polozenie pita.
Tak jakbys mial np na tasmie perforowanej dziurki np 2mm srednicy, odstep 1mm czyli rozstaw 3mm, i wychodzi 1/3 bit/mm.
Dziurki z roznych powodow nie chcesz zmniejszac, ale sie umawiasz ze dziurka moze byc normalnie lub milimetr dalej lub 2mm dalej. Oczywiscie wymaga to powiekszenia rozstawu do 5 mm. Jedna dziurka koduje teraz 2 bity, i mamy 2/5 bit/mm.
Jest zysk, ale fotodiody trzeba precyzyjniejsze. Tym niemniej nadal moga miec 2mm srednicy.
J.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.