8-stage shift-and-store bus register (4094)



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
Subject: 8-stage shift-and-store bus register (4094)
Date: 2 Aug 2002 21:30:43 GMT


witam,

mam pytanie tyczace sie scalakow typu 4096 (8-stage shift-and-store bus
registers). mam pdf'a od 74hct4094 (philips'a).
ale, ze nie jestem elektronikiem, to nie za bardzo wiem, jak to ugryzc.

powiem wam jak to rozumiem i czego nie rozumiem, a wy uzupelnijcie i skorygujcie
prosze moja wiedze.

to co wydaje mi sie, ze rozumiem:
1) mam tu 1 szeregowe wejscie i 8 rownoleglych wyjsc.
2) jest zegar, ktory jak rozumiem sluzy do umozliwienia podawania kolejnych z 8
bitow.
3) zagar reaguje na rosnace zbocze, czyli za kazdym razem jak wykres "idzie do
gory", rejestr czyta kolejny bit.
4) jesli strobe jest w stanie wysokim, to dane z SHIFT rejestru sa kopiowane do
STORAGE rejestru.
5) jak OE (output enable input) jest w stanie wysokim, to dane z rejestru
STORAGE pojawiaja sie na wyjsciu.

teraz to czego nie rozumiem:
1) po co w ogole jest SHIFT rejestr i strobe? czy dane z wejscia szeregowego
nie moglyby od razu isc do storage rejestru?
2) co sie stanie jesli wczytam 9 bit z rzedu? czy on
a) przepadnie,
b) zostanie zapisany jako bit 1
c) zostanie zapisany jako bit 8
d) nie mam pojecia

a na koniec kilka dodatkowych pytan:
1) czy CLK musi miec stala czestotliwosc? konkretnie chcialbym podlaczyc CLK do
komputera (poprzez LPT) i uzyc "softwareowego" zegara.
czy moge to tak oprogramowac?:
a) wysylam logiczne 1 na zegar
b) wysylam pierwszy bit z 8
c) wysylam 0 na zegar
d) czekam 1/86 milionowej czesci sekundy (max. czestotliwosc zegata to 86 MHz -
e) powtarzam kroki a-d 7 razy.
f) wysylam jedynke na strobe
g) wysylam jedynke na OE

czy to zadziala?

dzieki za wszelka pomoc.

ps: jak bedzie sie nazywal "odwrotny bufor", czyli parallel-to-serial?

--
Lukasz Sacha <luke_at_nospam_is.com.pl>


Poprzedni Następny
Wiadomość
Spis treści
From: "Marek Dzwonnik" <mdz_at_nospam_message.pl>
Subject: Re: 8-stage shift-and-store bus register (4094)
Date: Sat, 3 Aug 2002 00:00:47 +0200


Użytkownik "Lukasz Sacha" <luke_at_nospam_mroweczka.rms.pl> napisał w wiadomości
news:slrnakltsg.fms.luke_at_nospam_mroweczka.rms.pl...
mam pytanie tyczace sie scalakow typu 4096 (8-stage shift-and-store bus
registers). mam pdf'a od 74hct4094 (philips'a).

Układ składa się z trzech połączonych bloków:
przerzutników. Zbocze sygnału zegarowego powoduje przepisanie stanu
przerzutnika (n) do następnego przerzutnika w łańcuchu (n+1). Pierwszy
przerzutnik jest ładowany stanem linii Data. Stan ostaniego przerzutnika
odchodzi w niebyt. Wyjscia rejestru przesuwającego są na wykresie czasowym
opisane jako "Internal Qn"

powoduje wpisanie do rejestru stanów z wyjść rejestru przesuwnego (Internal
Q)

równoległego od wyjściowych nóżek układu Qn. Bramki stają się przezroczyste
po podaniu sygnału OE (Output Enable), w przeciwnym razie wyjścia pozostają
w stanie wysokiej impedancji (HiZ).


to co wydaje mi sie, ze rozumiem:
1) mam tu 1 szeregowe wejscie i 8 rownoleglych wyjsc.
Ok

2) jest zegar, ktory jak rozumiem sluzy do umozliwienia podawania
kolejnych z 8
bitow.
Taktuje przesuwanie danych w rejestrze przesuwnym

3) zagar reaguje na rosnace zbocze, czyli za kazdym razem jak wykres
"idzie do
gory", rejestr czyta kolejny bit.

4) jesli strobe jest w stanie wysokim, to dane z SHIFT rejestru sa
kopiowane do
STORAGE rejestru.
Jeżeli jest to 'latch' (a tak bodajże jest) to podczas STORAGE=H
przerzutniki stają się przezroczyste. Można wtedy bezpośrednio obserwować
proces przesuwania danych w rejestrze przesuwnym

5) jak OE (output enable input) jest w stanie wysokim, to dane z rejestru
STORAGE pojawiaja sie na wyjsciu.
Tak

1) po co w ogole jest SHIFT rejestr i strobe? czy dane z wejscia
szeregowego
nie moglyby od razu isc do storage rejestru?
W pewnych sytuacjach byłoby to niepożądane. Zwróć uwagę, że dopóki nie
przesuniesz wszystkich 8 bitów, dopóty na liniach (Internal Q) panuje
kombinacja stanów daleka od oczekwianej. Przekopiowania danych do rejestru
równoległego (STORAGE) dokonuje się dopiero po wsunięciu kompletu danych do
rejestru przesuwnego

2) co sie stanie jesli wczytam 9 bit z rzedu? czy on
Wyląduje na pozycji pierwszej. Bit, który został wsunięty jako pierwszy
odejdzie z pozycji ósmej w niebyt. Pozostałe bity przeniosą się o oczko
wyżej.

1) czy CLK musi miec stala czestotliwosc? konkretnie chcialbym podlaczyc
CLK do
komputera (poprzez LPT) i uzyc "softwareowego" zegara.
Kostka jest całkowice statyczna. Narzuca wymagań co do minimalnej
częstotliwości zegara i jego stałości. Ważna jest kolejność zachodzących
zdarzeń.

czy moge to tak oprogramowac?:
a) wysylam logiczne 1 na zegar
b) wysylam pierwszy bit z 8
c) wysylam 0 na zegar
d) czekam 1/86 milionowej czesci sekundy (max. czestotliwosc zegata to 86
MHz -
- dane z pdf'a :)
Z maksymalną częstotliwością zegara to raczej ostrożnie. ;-) Weź pod uwagę,
że zbocza sygnałów sterujących docierają do układu z pewnymi opóźnieniami i
poprzesuwane względem siebie. W wyżyłowanym układzie może się okazać, że
zbocze zegara opóźnione na pojemnościach montażowych próbuje zatrzasnąć
dane, które właśnie przestały już być stabilne.

e) powtarzam kroki a-d 7 razy.
f) wysylam jedynke na strobe

f' ) - czekasz min. wymagany czas zapisu
f'') - zdejmujesz jedynkę ze STROBE - bo inaczej latch będzie przezroczysty

g) wysylam jedynke na OE
  • zależnie od aplikacji - Jeżeli nie grozi ci konflikt z innym układem

  • pracującym na tą samą szynę to możesz mieć ustawioną cały czas OE=1.

    ps: jak bedzie sie nazywal "odwrotny bufor", czyli parallel-to-serial?
    Tak. Obejrzyj sobie np. komplementarne układy HCT164 i HCT165 - tyle że w
    nich nie ma rejestrów buforowych



    --
    > Lukasz Sacha <luke_at_nospam_is.com.pl>
    >



    Poprzedni Następny
    Wiadomość
    Spis treści
    From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
    Subject: Re: 8-stage shift-and-store bus register (4094)
    Date: 2 Aug 2002 23:40:00 GMT


    Układ składa się z trzech połączonych bloków:
    - ośmiobitowego rejestru przesuwającego, czyli połączonego łancuch ośmiu
    przerzutników. Zbocze sygnału zegarowego powoduje przepisanie stanu
    przerzutnika (n) do następnego przerzutnika w łańcuchu (n+1). Pierwszy
    przerzutnik jest ładowany stanem linii Data. Stan ostaniego przerzutnika
    odchodzi w niebyt. Wyjscia rejestru przesuwającego są na wykresie czasowym
    opisane jako "Internal Qn"

    ok. rozumiem.

    - 8-bitowego rejestru równoległego (latch). Podanie sygnału STORAGE=H
    powoduje wpisanie do rejestru stanów z wyjść rejestru przesuwnego (Internal
    Q)

    ok

    - 8 bramek z wyjściem trójstanowym separujących linie wyjściowe rejestru
    równoległego od wyjściowych nóżek układu Qn. Bramki stają się przezroczyste
    po podaniu sygnału OE (Output Enable), w przeciwnym razie wyjścia pozostają
    w stanie wysokiej impedancji (HiZ).

    wytlumaczysz mi czym jest stan wysokiej impedancji? wiem, ze to ani
    zero ani 1, ale cos poza tym?


    gory", rejestr czyta kolejny bit.
    4) jesli strobe jest w stanie wysokim, to dane z SHIFT rejestru sa
    kopiowane do
    STORAGE rejestru.
    Jeżeli jest to 'latch' (a tak bodajże jest) to podczas STORAGE=H
    przerzutniki stają się przezroczyste. Można wtedy bezpośrednio obserwować
    proces przesuwania danych w rejestrze przesuwnym

    raczej bede najpierw je wgrywal do rejestru przesuwnego, a potem
    podawal 1 na strobe. :)


    1) czy CLK musi miec stala czestotliwosc? konkretnie chcialbym podlaczyc
    CLK do
    komputera (poprzez LPT) i uzyc "softwareowego" zegara.
    Kostka jest całkowice statyczna. Narzuca wymagań co do minimalnej
    częstotliwości zegara i jego stałości. Ważna jest kolejność zachodzących
    zdarzeń.

    czyli to moze byc dowolny sygnal, typu:

    ___------_-- _____---- _____--__-----

    chodzi mi tu o to, ze nie musi on miec zadnej regularnosci. (?)

    - dane z pdf'a :)
    Z maksymalną częstotliwością zegara to raczej ostrożnie. ;-) Weź pod uwagę,
    że zbocza sygnałów sterujących docierają do układu z pewnymi opóźnieniami i
    poprzesuwane względem siebie. W wyżyłowanym układzie może się okazać, że
    zbocze zegara opóźnione na pojemnościach montażowych próbuje zatrzasnąć
    dane, które właśnie przestały już być stabilne.

    z tym czekaniem dokladnie maxymalnej czestotliwosci to byl oczywiscie zart,
    niby jakbym mial to tak dokladnie zmierzyc?
    swoja droga to tez jest ciekawy problem... jak ja to zmierze? (juz po stronie
    kompa (soft)


    e) powtarzam kroki a-d 7 razy.
    f) wysylam jedynke na strobe
    f' ) - czekasz min. wymagany czas zapisu

    ile on wynosi? jak nie wiesz, to powiedz czego mam szukac w pdf'ie. bo sam
    nie za bardzo wiem.


    f'') - zdejmujesz jedynkę ze STROBE - bo inaczej latch będzie przezroczysty

    fakt.


    g) wysylam jedynke na OE
    - zależnie od aplikacji - Jeżeli nie grozi ci konflikt z innym układem
    pracującym na tą samą szynę to możesz mieć ustawioną cały czas OE=1.

    tak zrobie, bedzie wygodniej.


    ps: jak bedzie sie nazywal "odwrotny bufor", czyli parallel-to-serial?
    Tak. Obejrzyj sobie np. komplementarne układy HCT164 i HCT165 - tyle że w
    nich nie ma rejestrów buforowych

    ja znalazlem hef4021. moze byc?

    tak w ogole to wielkie dzieki. sam bym tego nie skumal (przynajmniej
    przez najblizsze kilka dni). mam co prawda ksiazke do elektroniki cyforwej,
    ale zeby przeczytac o rejestrach i cos zrozumiec, musialbym przeczytac
    wszystko do rejestrow, a rejestry sa na stronie cos kolo 430 :)

    --
    Lukasz Sacha <luke_at_nospam_is.com.pl>

    Poprzedni Następny
    Wiadomość
    Spis treści
    From: "Marek Dzwonnik" <mdz_at_nospam_message.pl>
    Subject: Re: 8-stage shift-and-store bus register (4094)
    Date: Sat, 3 Aug 2002 02:01:15 +0200


    Uzytkownik "Lukasz Sacha" <luke_at_nospam_mroweczka.rms.pl> napisal w wiadomosci
    news:slrnakm5et.fpb.luke_at_nospam_mroweczka.rms.pl...

    wytlumaczysz mi czym jest stan wysokiej impedancji? wiem, ze to ani
    zero ani 1, ale cos poza tym?
    Tzn. bramka od strony wyjscia zachowuje sie tak, jakby jej nie bylo
    (no...prawie, bo pojemnosci zostaja). Tzn. nie wymusza na wyjsciu zadnego
    stanu (ani H ani L) i pozwala aby zrobila to jedna z pozostalych bramek
    dolaczonych do tej samej linii na magistrali

    czyli to moze byc dowolny sygnal, typu:

    ___------_-- _____---- _____--__-----

    chodzi mi tu o to, ze nie musi on miec zadnej regularnosci. (?)

    Tak, o ile zachowasz minimalne marginesy czasowe wymagane przez producenta
    (ale mowa tu o czasach rzedu 10^0...10^2 ns). Wygenerowanie przebiegów o tak
    krótkich odstepach pomiedzy zboczami na pewno nie jest mozliwe z uzyciem
    portu LPT :-) O ile oczywiscie nie spróbujesz zmienic stanu danych i zegara
    w tej samej operacji zapisu do portu LPT.


    ile on wynosi? jak nie wiesz, to powiedz czego mam szukac w pdf'ie. bo sam
    nie za bardzo wiem.
    http://boss.iele.polsl.gliwice.pl/data/stmicroelectronics/docs/2069.pdf

    Tabela na str. 6 i wykresy na stronie 8 prawde Ci powiedza. :)
    Np. masz jawnie podana minimalna wartosc : tW = "Clock Pulse Width" oraz tW
    = "Strobe Pulse Width"

    Zwróc uwage na duze róznice w szybkosci dzialania - zaleznie od technologii
    i napiec zasilania. Standardowe uklady CMOS 4000 sa najwolniejsze, ale
    zapewniaja najszerszy dopuszczalny zakres zasilania (typ. 3...18V). Uklady z
    serii 74HC (2..6V) i 74HCT(4.5..5.5V) sa szybsze, ale w wezszym zakresie
    zasilania.



    ja znalazlem hef4021. moze byc?

    http://boss.iele.polsl.gliwice.pl/data/stmicroelectronics/docs/8216.pdf
    Tak - jest to o co pytales. Gdy PS=H nastepuje asynchroniczne zaladowanie
    rejestru danymi z linii wejsciowych D1..D8. Gdy PS=0 mozesz taktowac CLK i
    odczytywac bit po bicie zapamietany stan kolejnych linii wejsciowych

    MDz



    Poprzedni Następny
    Wiadomość
    Spis treści
    From: Lukasz Sacha <luke_at_nospam_mroweczka.rms.pl>
    Subject: Re: 8-stage shift-and-store bus register (4094)
    Date: 3 Aug 2002 00:43:45 GMT


    In article <3d4b1d09_at_nospam_news.home.net.pl>, Marek Dzwonnik wrote:
    Tzn. bramka od strony wyjscia zachowuje sie tak, jakby jej nie bylo
    (no...prawie, bo pojemnosci zostaja). Tzn. nie wymusza na wyjsciu zadnego
    stanu (ani H ani L) i pozwala aby zrobila to jedna z pozostalych bramek
    dolaczonych do tej samej linii na magistrali

    rozumiem.


    Tak, o ile zachowasz minimalne marginesy czasowe wymagane przez producenta
    (ale mowa tu o czasach rzedu 10^0...10^2 ns). Wygenerowanie przebiegów o tak
    krótkich odstepach pomiedzy zboczami na pewno nie jest mozliwe z uzyciem
    portu LPT :-) O ile oczywiscie nie spróbujesz zmienic stanu danych i zegara
    w tej samej operacji zapisu do portu LPT.

    czyli tak naprawde to nie musze nic odczekiwac. bramka jest szybsza
    niz lpt, wiec moge sekwencyjnie wykonwyac operacje i bramka nadazy?


    ja znalazlem hef4021. moze byc?
    http://boss.iele.polsl.gliwice.pl/data/stmicroelectronics/docs/8216.pdf
    Tak - jest to o co pytales. Gdy PS=H nastepuje asynchroniczne zaladowanie
    rejestru danymi z linii wejsciowych D1..D8. Gdy PS=0 mozesz taktowac CLK i
    odczytywac bit po bicie zapamietany stan kolejnych linii wejsciowych

    ok. nie obraz sie, ale jeszcze cie troche pomecze, bo dobrze
    tlumaczysz (czyt. tak, ze rozumiem :)

    nie za bardzo rozumiem po co mi ten serial input.
    mam PL (parallel load). jesli pl=1 to dane wczytuje do rejestru z
    wejsc rownoleglych. jesli nie, to (uwaga: cytat z pdf'a):

    dana z DS jest przesunieta na pierwsza pozycje rejestru i wszystkie
    dane w rejestrze sa przesuniete o 1 w prawo razem z "tikiem" zegara.

    koniec cytatu.
    zeby przeczytac dane szeregowo, musze dac 0 na PL (zeby sie przesuwaly).
    ale wtedy, czy nie trace pierwszego bitu (czy nie jest on nadpisany
    przez DS)?
    to znaczy moge polaczy DS z pierwszym bitem wejsciowym, tylko jest to
    dla mnie wciaz nie jasne...

    jaki to ma sens, ze najpierw wpisuje dane z wejsc rownoleglych, a potem,
    kiedy juz chce je przeczytac, pierwszy bit jest nadpisany przez DS.

    chyba, ze nalezy to rozumiec tak, ze oczekiwany jest tik zegara,
    i dopiero wtedy dane sa przesuniete o jeden w prawo, tworzac tym
    samym pierwszy bit wolnym i w to wolne miejsce wskakuje DS.
    tak byloby rozsadnie... ale niestety tlumaczenie pdf'a sklania mnie
    do przyjecia pierwszej wersji. :(
    wytlumacz mi to prosze.

    --
    Lukasz Sacha <luke_at_nospam_is.com.pl>

    Poprzedni Następny
    Wiadomość
    Spis treści
    From: Marek Lewandowski <nospam_at_nospam_poczta.onet.pl>
    Subject: Re: 8-stage shift-and-store bus register (4094)
    Date: Sat, 03 Aug 2002 19:33:46 GMT


    on 3 Aug 2002 00:43:45 GMT in <slrnakm96e.fqg.luke_at_nospam_mroweczka.rms.pl>
    Lukasz Sacha wrote:


    czyli tak naprawde to nie musze nic odczekiwac. bramka jest szybsza
    niz lpt, wiec moge sekwencyjnie wykonwyac operacje i bramka nadazy?

    No, z tym to ostrożnie, bo na upartego przez LPT daje się w czystym
    asemblerze oprogramowanie pisząc, sygnał video w marnej jakości łapać
    ;-)
    Na początek wstaw opóźnienia nawet delay(1) (1ms), potem sukcesywnie
    wywalaj, jak już będzie działało, to się dowiesz, jak wywalisz za dużo
    ;-)


    ok. nie obraz sie, ale jeszcze cie troche pomecze, bo dobrze
    tlumaczysz (czyt. tak, ze rozumiem :)
    [...]

    Ale żeś napierniczył... ;-)
    Po kolei: Bez serial Input nie zrobisz łańcuszka, czyli nie połączysz
    więcej jak jednej kosztki, ergo nie uzyskasz 32 wejść.
    Jednak zostańmy przy bardzo dużych literkach ;-)

    W Twoim zastosowaniu:
    łączysz 4 kości tak, że Q8 (serial out, SO) pierwszego łączysz z
    Serial Input drugiego, SO2 z SI3, SO3 z SI4 a Serial Output czwartego
    do pinu WE portu.
    SI pierwszej kości podłączasz do masy albo 5V, nie ma znaczenia
    (ważne, żeby nie wisiało w powietrzu).
    CLK kości łączysz równolegle i na pin WY portu
    PL łączysz równolegle i na pin portu.

    jedziemy:
    PL -> 1 ; do rejestrów wczytany zostale stan 32 pinów równoległych
    PL -> 0 ; przestawiamy maszynke na jazdę szeregową
    ;w tym momencie na SO4 jest już dostępny pierwszy bit z tych 32, co je
    trzeba przeczytać -> czytasz WE
    CLK -> 1 ; dane w każdym rejestrze przesuwają się o jedno 'oczko'.
    Ponieważ wyjścia szeregowe poszczególnych kości połączone są z
    wejściami szeregowymi następnych, to nic nie jest tracone (no, poza
    tym, co zostało już odczytane
    CLK->0
    czytasz WE

    CLK->1
    CLK->0
    czytasz WE itd...


    Aby przeczytać 32 bity potrzebujesz 31 impulsów zegara.
    Jasne?
    BTW: napisałem już egzamin, miałem Ci na priva pisać, ale nie wiem,
    czy to już nie zostało na grupie rozwiązane...

    --
    Marek Lewandowski ICQ# 10139051
    locustXpoczta|onet|pl
    http://locust.republika.pl
    [! Odpowiadaj pod cytatem. Tnij cytaty. Podpisuj posty. !]

    Poprzedni Następny
    Wiadomość
    Spis treści
    From: jfox_at_nospam_poczta.onet.pl (J.F.)
    Subject: Re: 8-stage shift-and-store bus register (4094)
    Date: Sun, 04 Aug 2002 22:15:41 GMT


    On 2 Aug 2002 21:30:43 GMT, Lukasz Sacha wrote:
    mam pytanie tyczace sie scalakow typu 4096 (8-stage shift-and-store bus
    registers). mam pdf'a od 74hct4094 (philips'a).

    to co wydaje mi sie, ze rozumiem:
    1) mam tu 1 szeregowe wejscie i 8 rownoleglych wyjsc.

    No i jedno szeregowe wyjscie.

    2) jest zegar, ktory jak rozumiem sluzy do umozliwienia podawania kolejnych z 8
    bitow.
    3) zagar reaguje na rosnace zbocze, czyli za kazdym razem jak wykres "idzie do
    gory", rejestr czyta kolejny bit.

    Nie tylko czyta, ale calosc przesuwa [rejestr SHIFT]

    4) jesli strobe jest w stanie wysokim, to dane z SHIFT rejestru sa kopiowane do
    STORAGE rejestru.
    5) jak OE (output enable input) jest w stanie wysokim, to dane z rejestru
    STORAGE pojawiaja sie na wyjsciu.

    Powiedzmy odwrotnie - jak OE jest w stanie niskim [?] to wyjscia
    przechodza w stan wysokiej impedancji.

    teraz to czego nie rozumiem:
    1) po co w ogole jest SHIFT rejestr i strobe? czy dane z wejscia szeregowego
    nie moglyby od razu isc do storage rejestru?

    Moglyby, ale czy chcesz sobie zrobic przesuwana reklame, czy 8
    [...16,24,32,40,...] dowolnie ustawianych bitow ?
    Storage od razu pojawia sie na wyjsciach. Gdyby byl przesuwany,
    to przez moment na danym wyjsciu pojawia sie stan przeznaczony
    dla innego. No i mamy zaklocenia w pracy urzadzenia.
    A tak sobie spokojnie wpisujemy cala informacje do SHIFT,
    potem jedna operacja .. i na wyjsciach jednoczesnie pojawiaja
    sie nowe dane..

    2) co sie stanie jesli wczytam 9 bit z rzedu? czy on
    b) zostanie zapisany jako bit 1

    Jak w b). Dotychczaswy bit 1 przepisze sie do bit 2, 2->3,
    a bit 8 przepadnie. Chyba ze polaczysz kilka 4094 szeregowo i
    zostanie przepisany do nastepnego ..

    1) czy CLK musi miec stala czestotliwosc? konkretnie chcialbym podlaczyc CLK do
    komputera (poprzez LPT) i uzyc "softwareowego" zegara.

    Moga byc dowolne impulsy, byle nie za krotkie.

    czy moge to tak oprogramowac?:
    a) wysylam logiczne 1 na zegar
    b) wysylam pierwszy bit z 8
    c) wysylam 0 na zegar
    d) czekam 1/86 milionowej czesci sekundy (max. czestotliwosc zegata to 86 MHz -
    - dane z pdf'a :)

    skoro reaguje na zbocze narastajace, to troche inaczej:
    a) wysylasz 0 na zegar
    b) ustawiasz dane
    c) odczekujesz czas t setup - pewnie z 1/176 milionowa
    d) wysylasz 1 na zegar
    e) czekasz czas t hold [lub minimalny czas wysokiego poziomu zegara]
    f) ... dla porzadku byc moze warto 0 wyslac na zegar

    b) z a) mozna wymienic lub jednoczesnie podac

    ps: jak bedzie sie nazywal "odwrotny bufor", czyli parallel-to-serial?

    np 74HC164

    J.