74165,rejestry ???

Jan 17, 2004 2 Replies

Witam ! Mam do grupowiczow pytanko ? Jak dziala rejestr 74165 ? wpis rownolegly, odczyt szeregowy . Korzystam z programu Multisim i nóżki układu są opisane następująco: A,B,...,H,SER,SH/~LD,Inh,CLK,QH,~QH. Chyba od A do H to wejścia, CLK to zegar, ale nie mam pojęcia do czego jest reszta, no poza QH i ~QH , bo to chyba wyjścia z H ?? Jak można ustawić dane na wejściu, żeby odczytać coś na wyjściu, no i ogólnie jak to działa ?


Pozdrawiam, Tomek


Cze¶æ!! :)

A..H - to wej¶cia równoleg³e SH/~LD - przesuw/wprowadzanie Inh - blokada zegara SH - wej¶cie szeregowe CLK - we. taktuj±ce (zegarowe) QH - wyj¶cie ostatniego przerzutnika rejestru ~QH - j.w. tyle, ¿e zanegowane

Uk³ad dzia³a tak: Na wej¶cia A..H podajesz jakie¶ stany (s³owo 8-bitowe). W momencie podania stanu niskiego na we SH/~LD nastêpuje przepisanie stanu wej¶æ A..H do odpowiadaj±cych im przerzutników wewn±trz rejestru. Powrót na we SH/~LD do stanu wysokiego pozwala na przesuwanie w rejestrze stanów. Tzn. przy ka¿dym narastaj±cym zboczu zegarowym nastêpuje przesyniêcie o 1 przerzutnik w reawo wprowadzonego s³owa (8-bitowego).

Przyk³ad: do rejestru wprowadzi³e¶ s³owo: 11000110, czyli na wej¶cioa A..H poda³e¶ stany j.w. i zanegowa³e¶ na chwilê we. SH/~LD co spowodowa³o wprowadzenie tych stanów do "¶rodka" rejestru. Na wyj¶ciu QH pojawei siê 0 (na ostatnim miej¶cu jest 0). Po pierwszym impulsie zegarowym nast±pi przesuniêcie w prawo o jeden bit ca³ego s³owa, czyli w rejestrze bêdziemy ju¿ mieli: 01100011 i na wyjêciu QH bêdzie 1.

Kolejne impulsy zegarowe bêd± przesuwa³y s³owo o jeden bit w prawo, czyli bêdziemy mieli:

imp. 2. 00110001 QH=1 imp. 3. 00011000 QH=0 imp. 4. 00001100 QH=0 imp. 5. 00000110 QH=0 imp. 6. 00000011 QH=1 imp. 7. 00000001 QH=1 imp. 8. 00000000 QH=0

Wej¶cie szeregowe umo¿liwia ³±czenie kilku rejestrów ze sobê. Tzn. wyj¶cie QH ³±czy siê z we. SH nastêpnego, co pozwala zwiêkszyæ pojemno¶æ ca³ego rejestru. W ten sposób mo¿na przesuwaæ s³owa 16, 24, ... bitowe. Oczywi¶cie wej¶cia zegarowe wszystkich tak po³aczonych rejestrów s± taktowane tym samym sygna³em. Oraz wpis do rejestru (wprowadzenie stanów z we A..H) nastêpuje w tym samym momencie, czyli wej¶cia SH/~LD s± sterowane tym samym sygna³em.

A....H A....H

------- ------- | a |-QH------SH-| b |-QH | | | |

-------- ------- CLK CLK | |

-------+-----------------------+

Przyk³ad: rejestr a rejestr b A............H A...........H ~LD=0 00111100 11001110 QH= 0 (wprowadzenie danych) imp. 1. 00011110 -> 01100111 QH=1 (stan po pierwszym impulsie zegara) imp. 2. 00001111 -> 00110011 QH=1 (stan po drugim impulsie zegara) imp. 3. 00000111 -> 10011001 QH=1 ... imp. 4. 00000011 -> 11001100 QH=0 ...

Zastosowanie: Ten rejestr s³u¿y zamiane danych równoleg³ych (np. z jakie¶ magistrali uP) na dane szeregowe, które np. bêd± przesy³ane poza system (np. po RSie).

Czy wszystko jasne?? ;)

:) /PP

[ciach]

Dzięki ogromne, wszystko zrozumiałem. :-))))

Pozdrawiam, Tomek

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required