- Kaj je Shift Register:
- Vrste registrov v digitalni elektroniki
- 1. Zaporedni vhod - serijski izhodni registri premikov
- 2. Serijski vhod - vzporedni izhodni register
- 3. Vzporedni vhod - serijski izhodni register premika
- 4. Vzporedni vhod - vzporedni izhodni register
- 5. Dvosmerni registri premikov
- 6. Števci
- Uporaba Shift registrov
Kaj je Shift Register:
Shift registri so zaporedna logična vezja, ki lahko shranjujejo in prenašajo podatke. Sestavljeni so iz flip flopov, ki so povezani tako, da bi lahko izhod enega flip flopa služil kot vhod drugega flip flopa, odvisno od vrste ustvarjenih registrov premikov.
Shift registri so v bistvu vrsta registrov, ki imajo možnost prenosa ("shift") podatkov. Registri so generično shranjevalne naprave, ki se ustvarijo tako, da se zaporedno poveže določeno število flip flopov in količina podatkov (število bitov), ki jih lahko register shrani, je vedno neposredno sorazmerna s številom flip flopov, saj je vsak flip flop lahko shrani le en bit hkrati. Ko so flip-flopi v registru povezani tako, da izhod enega flip-flopa postane vhod drugega, se ustvari premični register.
Natikači so naprave s podobnim delovanjem zapaha. Lahko se imenuje bistabilen vibrator, ki se lahko premika med dvema stanjem (0 ali 1) in lahko shranjuje podatke v bitih. Novi podatki se berejo v flip flop z vsakim ciklom ure in prejšnjimi podatki, poslanimi na izhodu.
Shift Registri Sestavljajo se kateri natikači?
To pa je odvisno od vrste flip flopa, saj se razmerje med vhodom, izhodom in taktom cikla med japonkami razlikuje. Obstajajo različne vrste natikačev, najpogosteje pa se pri ustvarjanju registrov premikov uporabljajo natikači D (zamuda).
Za delovanje natikačev D, zaradi česar so tako zaželeni za registre premikov, kadar koli pride do spremembe ure natikača D (naraščajoči ali padajoči rob, odvisno od specifikacij japonke). Podatki na izhodu “Q” postanejo enaki kot tisti na vhodu “D”. Izhod "Q" flip flopa bo ostal na tej vrednosti do naslednjega cikla ure, kjer se bo nato na vhodu spet spremenil v vrednost (visoka ali nizka, 1 ali 0).
Zdaj, ko vemo, kaj so Sift registri, se bomo še bolj poglobili v vrste flip-flopa in njihove aplikacije. Pred tem pa si za bolj praktično izpostavitev tega, kje se uporabljajo premični registri, oglejmo priljubljeni premični register 74HC595, ki smo ga uporabili z različnimi mikrokrmilniki za vmesnike zaslona ali zaporedja LED.
- Shift Register s 74HC595 z Arduino za nadzor zaporedja LED
- Prestavite register z ESP32 na vmesnik 7-segmentnega zaslona
- Shift Register z Raspberry Pi za nadzor več LED
- Shift Register s PIC za nadzor zaporedja LED
Vrste registrov v digitalni elektroniki
Registri premikov so razvrščeni v vrste predvsem glede na njihov način delovanja, bodisi serijski ali vzporedni.
Obstaja šest (6) osnovnih vrst registrov premikov, ki so našteti spodaj, čeprav jih je mogoče nekatere nadalje razdeliti glede na smer pretoka podatkov, bodisi premik v desno ali premik v levo.
1. Zaporedni vhod - serijski izhodni register (SISO)
2. Serijski vhod - register vzporednih izhodov (SIPO)
3. Vzporedni vhod - Vzporedni izhodni register (PIPO)
4. Vzporedni vhod - serijski izhodni register (PISO)
5. Dvosmerni registri premikov
6. Števci
1. Zaporedni vhod - serijski izhodni registri premikov
Serijski vhodi - serijski izhodni registri premikov so prestavni registri, ki zaporedno pretakajo podatke (en bit na takt) in na enak način pretakajo podatke enega za drugim.
Preprosto je prikazan preprost serijski vhodni - 4-bitni pomični register Out, register je sestavljen iz 4 natikačev, razčlenitev njegovega delovanja pa je razložena spodaj;
Ob zagonu se najprej izbriše prestavni register, ki izhode vseh flip flopov prisili na nič, vhodni podatki se nato serijsko nanašajo na vhod, en bit naenkrat.
Obstajata dva osnovna načina prenosa podatkov prek registra premikov SISO;
- Nedestruktivno branje
- Destruktivno branje
- Nedestruktivno branje
Registri premikov, ki temeljijo na neporušitvenem odčitku, imajo vedno način branja / pisanja z dodano dodatno vrstico, ki omogoča preklop med načinoma branja in pisanja.
Ko je naprava v operativnem načinu »pisanje«, pomični register premakne posamezne podatke po en bit naenkrat, obnaša se natanko tako, kot je uničujoča različica branja, in podatki se tako izgubijo, ko pa se operativni način preklopi v »branje«, se ki se na vhodu izmaknejo, se vrnejo nazaj v sistem in služijo kot vhod v prestavni register. To pomaga zagotoviti, da podatki ostanejo dlje (dokler ostanejo v načinu branja)
- Destruktivno branje
Pri uničujočih odčitkih se podatki popolnoma izgubijo, saj flip flop samo preusmeri informacije. Ob predpostavki za 4-bitni register premika zgoraj želimo poslati besedo »1101«. Po čiščenju prestavnega registra izhod vseh natikačev postane 0, zato so med prvim ciklom ure, ko te podatke (1101) serijsko uporabljamo, izhodi natikačev videti kot spodnja tabela.
Prvi cikel ure:
FF0 |
FF1 |
FF2 |
FF3 |
1. |
0 |
0 |
0 |
Drugi urni cikel:
FF0 |
FF1 |
FF2 |
FF3 |
0 |
1. |
0 |
0 |
Tretji cikel ure:
FF0 |
FF1 |
FF2 |
FF3 |
1. |
0 |
1. |
0 |
Četrti cikel ure:
FF0 |
FF1 |
FF2 |
FF3 |
1. |
1. |
0 |
1. |
2. Serijski vhod - vzporedni izhodni register
Druga vrsta premičnega registra, ki ga bomo upoštevali, je serijski vhodni vzporedni izbirni register, znan tudi kot SIPO Shift Register. Te vrste registrov premikov se uporabljajo za pretvorbo podatkov iz zaporednih v vzporedne. Podatki prihajajo drug za drugim na urni cikel in jih je mogoče premakniti in zamenjati ali odčitati pri vsakem izhodu. To pomeni, da ko se podatki preberejo, je vsak odčitani bit hkrati na voljo na svoji izhodni vrstici (Q0 - Q3 za 4-bitni register premika, prikazan spodaj).
4-bitni serijski vhod - Vzporedni izhodni register je prikazan na spodnji sliki.
Tabela, ki prikazuje, kako se podatki premaknejo iz zaporednega vhoda - vzporedni 4-bitni pomični register, je prikazana spodaj, podatki pa v 1001.
Jasno |
FF0 |
FF1 |
FF2 |
FF3 |
1001 |
0 |
0 |
0 |
0 |
1. |
0 |
0 |
0 |
|
0 |
1. |
0 |
0 |
|
0 |
0 |
1. |
0 |
|
1. |
0 |
0 |
1. |
Dober primer serijskega v - vzporednega izhodnega registra je pomični register 74HC164, ki je 8-bitni prestavni register.
Naprava ima dva zaporedna podatkovna vhoda (DSA in DSB), osem vzporednih podatkovnih izhodov (Q0 do Q7). Podatki se vnašajo zaporedno prek DSA ali DSB in kateri koli vhod se lahko uporabi kot aktivna VISOKA možnost za vnos podatkov prek drugega vhoda. Podatki se premaknejo na prehodih LOW-HIGH na vhodu ure (CP). LOW na vhodu za ponastavitev (MR) izbriše register in prisili vse izhode LOW, neodvisno od drugih vhodov. Vhodi vključujejo vpenjalne diode. To omogoča uporabo uporov, ki omejujejo tok, za povezavo vhodov do napetosti, ki presegajo VCC.
3. Vzporedni vhod - serijski izhodni register premika
V registru premika vzporednega vhoda - serijskega izhoda so podatki podani vzporedno, na primer upoštevajte spodaj prikazani 4-bitni register.
Ta register se lahko uporablja za shranjevanje in premikanje 4-bitne besede, pri čemer krmilni vhod za pisanje / premik (WS) nadzoruje način delovanja premičnega registra. Ko je krmilna črta WS nizka (način pisanja), lahko podatke zapisujemo in urejamo prek D0 do D3. Če želite podatke serijsko premakniti, se krmilna črta WS postavi VISOKO (način Shift), register nato podatke premakne na vhod ure. Vzporednik našega serijskega registra premikov se imenuje tudi PISO Shift register.
Dober primer vzporednega in - serijskega izhodnega registra je 8-bitni pomični register 74HC165, čeprav lahko deluje tudi kot serijski v - serijski izhodni register.
Naprava ima serijski vhod podatkov (DS), osem vzporednih vhodov podatkov (D0 do D7) in dva komplementarna serijska izhoda (Q7 in Q7 '). Ko je vzporedni vhod obremenitve (PL) LOW, se podatki od D0 do D7 asinhrono naložijo v prestavni register. Ko je PL VISOKO, se podatki v DS serijsko vnesejo v register. Ko je vhod za omogočanje ure (CE) LOW, se podatki preusmerijo na prehode LOW-HIGH na vhodu CP. HIGH na CE bo onemogočil vhod CP. Vhodi so odporni na prenapetost do 15 V. To omogoča, da se naprava uporablja v aplikacijah za preklapljanje nivojev HIGH-to-LOW.
Funkcijski diagram prestavnega registra je prikazan spodaj;
Časovni diagram za sistem je prikazan na spodnji sliki;
4. Vzporedni vhod - vzporedni izhodni register
Pri vzporednem vzporednem izhodnem registru izhoda se izhodni podatki na vzporednih izhodih prikažejo hkrati, ko se vhodni podatki vnesejo. Ta vrsta prestavnega registra se imenuje tudi PIPO Shift register.
Vhodni podatki na vsakem vhodnem zatiču od D0 do D3 se istočasno berejo, ko naprava deluje, hkrati pa se podatki, prebrani z vsakega od vhodov, oddajo na ustreznem izhodu (od Q0 do Q3).
74HC195 shift register je večnamenska premik register, ki je sposoben delati v večini načinov vseh vrst smo jih obravnavali doslej, zlasti kot vzporedno v opisanih - vzporedna ven shift register.
5. Dvosmerni registri premikov
Registri premikov lahko izvajajo premik podatkov v desno ali levo ali oboje, odvisno od vrste registra premika in njihove konfiguracije. Pri operacijah desnega premika so binarni podatki deljeni z dvema. Če je ta operacija obrnjena, se binarni podatki pomnožijo z dvema. Z ustrezno uporabo kombinacijske logike je mogoče konfigurirati serijski pomični register za izvajanje obeh operacij.
Razmislite o 4-bitnem registru na spodnji sliki. Nekaj vrat NAND je konfiguriranih kot vrata OR in se uporabljajo za nadzor smeri premika, bodisi desno ali levo.
Krmilna črta levo / pisanje se uporablja za določitev smeri, v katero se podatki premaknejo v desno ali levo.
Dober primer je dvosmerni pomični register 74HC194. Register lahko deluje v vseh načinih in različicah serijskega in vzporednega vhoda ali izhoda. Funkcijski diagram 74HC194, ki poudarja krmilno črto, uro, vhodne in izhodne zatiče, je prikazan spodaj.
Spodaj je prikazan tudi časovni diagram naprave. Bolje vam bo pomagalo razumeti, kako krmilna črta nadzoruje dejanja registra.
6. Števci
Števci, včasih imenovani tudi vrtljivi pomični register, so v bistvu pomični registri, katerih izhodi se vrnejo nazaj v napravo kot vhodi na tak način, da ustvari določen vzorec. Tovrstni registri se zaradi vzorca in zaporedja, ki ga prikazujejo, imenujejo števci. Najbolj priljubljena vrsta števcev premičnih registrov so števci obročev.
Prstan števec
Števci obročev so v bistvu vrsta števcev, pri katerih se izhod najpomembnejšega bita vrne nazaj kot vhod v najmanj pomemben bit. Na spodnjem diagramu je prikazan 4-bitni števec obročev z uporabo natikačev D.
Ko se uporabi impulz ure, se izhod vsake stopnje premakne na naslednjo in cikel se nadaljuje. Ko je Clear jasno postavljen, se vse natikače, razen prve (ki je nastavljena na 1), ponastavijo na nič.
Uporaba Shift registrov
Shift registri se uporabljajo v številnih aplikacijah, med katerimi so nekatere;
1. Vzporedno s serijsko pretvorbo, kjer se uporabljajo za zmanjšanje števila žic ali linij, potrebnih za komunikacijo med dvema napravama, saj zaporedna komunikacija običajno zahteva le dve žici v primerjavi z vzporednico, kar je odvisno od števila poslanih bitov.
2. IO razširitev za mikrokrmilnike. V sodobni elektroniki se IO zatiči mikrokrmilnikov imenujejo nepremičnine in za določeno uporabo je treba čim več, kot je vklop 100 LED ali branje 100 trstičnih stikal z nečim, kot je Arduino ali mikrokrmilnik Atmeg328p. Na primer, spodnji diagram vezja prikazuje, kako se lahko serijski do vzporedni pomični register uporablja za nadzor 8 LED z uporabo samo treh IO zatičev mikrokrmilnikov.
3. Uporabljajo se v državnih registrih, ki se uporabljajo v zaporednih napravah. Kot končni pomnilniški stroj tudi naslednje stanje naprave vedno določimo s premikom in vstavitvijo novih podatkov v prejšnji položaj.
4. Še ena glavna aplikacija se nahaja v časovnih zamikih. Registri premikov se uporabljajo za časovno zakasnitev v napravah, pri čemer čas prilagaja ura ali se poveča s kaskadnimi registri premikov ali zmanjša z odvzemom izhoda iz spodnjega pomembnega bita.
Časovni zamik se običajno izračuna po formuli;
t = N * (1 / fc)
N je število faz flip flopa, na katerem je zajet izhod, Fc je frekvenca takta in t, ki je določena vrednost, je čas, za katerega bo izhod zakasnjen.
Ko izbirate šifrant za določeno nalogo zaradi širokega obsega in vnesite, je pomembno, da izberete tistega, ki ustreza vašim potrebam, glede na stvari, kot so način delovanja, bitna velikost (število natikačev), desno ali levo ali dvosmerna itd.
Nekateri izmed najbolj priljubljenih registrov premikov so;
- 74HC 194 4-bitni dvosmerni univerzalni premični register
- 74HC 198 8-bitni dvosmerni univerzalni premični register
- 74HC595 Prestavni register serijski vhodni vzporedni izhod
- 74HC165 Paralelni vhodni-serijski izhodni register
- IC 74291 4-bitni univerzalni pomični register, binarni števec gor / dol, sinhrono.
- IC 74395 4-bitni univerzalni pomični register s tridržavnimi izhodi.
- IC 74498 8-bitni dvosmerni pomični register z vzporednimi vhodi in tridržavnimi izhodi.
- IC 74671 4-bitni dvosmerni premični register.
- IC 74673 16-bitni serijski vhodni serijski izhodni register z izhodnimi pomnilniškimi registri.
- IC 74674 16-bitni vzporedni serijski izhodni register s tridržavnimi izhodi.
Obstaja jih še več, samo poiskati morate, katera najbolj ustreza vaši aplikaciji.
Hvala za branje, do naslednjega časa.