- Kas ir maiņu reģistrs:
- Digitālās elektronikas reģistru veidi
- 1. Serial in - sērijas izejas maiņu reģistri
- 2. Serial in - Parallel out Shift reģistrs
- 3. Paralēlā ienākšana - sērijas izejas maiņu reģistrs
- 4. Parallel in - Parallel out shift maiņas reģistrs
- 5. Divvirzienu maiņu reģistri
- 6. Skaitītāji
- Shift reģistru lietojumi
Kas ir maiņu reģistrs:
Shift reģistri ir secīgas loģiskās shēmas, kas spēj uzglabāt un pārsūtīt datus. Tie sastāv no Flip Flops, kas ir savienoti tādā veidā, ka viena flip flop produkcija varētu kalpot kā otra flip flip, atkarībā no izveidoto maiņu reģistru veida.
Maiņu reģistri būtībā ir tāda veida reģistri, kuriem ir iespēja pārsūtīt (“nobīdes”) datus. Reģistri parasti ir glabāšanas ierīces, kas tiek izveidotas, sērijveidā savienojot noteiktu skaitu flip flopu, un reģistrā saglabājamo datu apjoms (bitu skaits) vienmēr ir tieši proporcionāls flip flopu skaitam, jo katrs flip flops vienlaikus var saglabāt tikai vienu bitu. Kad reģistrā esošie flip-flops ir savienoti tā, ka viena flip flop produkcija kļūst par otra ievades punktu, tiek izveidots nobīdes reģistrs.
Flip Flops ir ierīces, kuru darbība ir līdzīga fiksatoram. To var dēvēt par bistabilu vibratoru, kas var pārvietoties starp diviem stāvokļiem (0 vai 1) un spēj uzglabāt datus bitos. Jaunie dati tiek nolasīti flip flopā ar katru pulksteņa ciklu un iepriekšējiem datiem, kas nosūtīti izejā.
Kuri flip-flops ietver maiņu reģistrus?
Tas tomēr ir atkarīgs no flip flop veida, jo ievades, izvades un pulksteņa cikla attiecības starp flip flops ir atšķirīgas. Ir dažādi flip flops veidi, taču maiņu reģistru izveidē visbiežāk tiek izmantoti D (Delay) flip flops.
D flip flopu darbībai, kas padara tos tik vēlamus maiņu reģistriem, vienmēr, kad D flip flop pulkstenis mainās (vai nu uz augšu, vai uz leju, atkarībā no flip flop specifikācijām). Dati izejā “Q” kļūst par tādiem pašiem datiem kā ievadā “D”. Flip flop izeja “Q” paliks pie šīs vērtības līdz nākamajam pulksteņa ciklam, kur tā atkal mainīsies uz vērtību (High vai Low, 1 vai 0) pie ieejas.
Tagad, kad mēs zinām, kas ir Sift reģistri, mēs turpināsim dziļāk izpētīt flip-flop veidus un to lietojumus. Bet pirms tam, lai sniegtu praktiskāku ekspozīciju par to, kur tiek izmantoti maiņu reģistri, apskatīsim populāro maiņu reģistru 74HC595, kuru mēs esam izmantojuši ar dažādiem mikrokontrolleriem, lai saskarētos ar LED displeju vai secību.
- Shift Reģistrējieties ar 74HC595 ar Arduino, lai kontrolētu LED secību
- Pārslēgt Reģistrējieties ar ESP32, lai saskarne būtu 7 segmentu displejs
- Shift Reģistrējieties ar Raspberry Pi, lai kontrolētu vairākas gaismas diodes
- Shift Reģistrējieties PIC, lai kontrolētu LED secību
Digitālās elektronikas reģistru veidi
Maiņu reģistrus galvenokārt iedala tipos pēc to darbības veida - sērijveida vai paralēlā.
Ir seši (6) maiņu reģistru pamata veidi, kas ir uzskaitīti zemāk, lai gan dažus no tiem var sīkāk sadalīt, pamatojoties uz datu plūsmas virzienu - vai nu nobīdīties pa labi, vai pa kreisi.
1. Serial in - Serial out Shift reģistrs (SISO)
2. Serial In - Parallel out shift reģistrs (SIPO)
3. Parallel in - Parallel out Shift Register (PIPO)
4. Paralēlā ienākšana - sērijveida maiņas reģistrs (PISO)
5. Divvirzienu maiņu reģistri
6. Skaitītāji
1. Serial in - sērijas izejas maiņu reģistri
Serial in - sērijas izejas maiņu reģistri ir maiņu reģistri, kas straumē datus sērijveidā (viens bits pulksteņa ciklā) un straumē datus arī tādā pašā veidā, viens pēc otra.
Vienkāršs sērijveida sērijas izejas 4 bitu maiņu reģistrs ir parādīts iepriekš, reģistrs sastāv no 4 flip flopiem, un tā darbības sadalījums ir paskaidrots zemāk;
Startējot, nobīdes reģistrs vispirms tiek notīrīts, piespiežot visu flip flops izvadus uz nulli, pēc tam ievades dati tiek ievadīti ievadei sērijveidā pa vienam bitam.
Ir divi galvenie veidi, kā datus pārvietot, izmantojot SISO maiņu reģistru;
- Nesagraujošais rādījums
- Iznīcinošs nolasījums
- Nesagraujošais rādījums
Uz nesagraujošu nolasīšanu balstītiem maiņu reģistriem vienmēr ir lasīšanas / rakstīšanas darbības režīms ar papildu rindu, kas ļauj pārslēgties starp lasīšanas un rakstīšanas darbības režīmiem.
Kad ierīce ir “rakstīšanas” darbības režīmā, nobīdes reģistrs visus datus pa vienam pārvieto vienlaikus, rīkojoties tieši tāpat kā destruktīvā nolasīšanas versija, un tādējādi dati tiek zaudēti, bet, kad darbības režīms tiek pārslēgts uz “lasīt”, kas tiek novirzīti pie ieejas, atgriežas sistēmā un kalpo kā ievade maiņu reģistrā. Tas palīdz nodrošināt datu ilgāku uzturēšanos (kamēr tie paliek lasīšanas režīmā)
- Iznīcinošs nolasījums
Destruktīvai nolasīšanai dati tiek pilnībā zaudēti, jo flip flop vienkārši pārvieto informāciju. Pieņemot, ka augšpusē ir 4 bitu maiņu reģistrs, mēs vēlamies nosūtīt vārdu “1101”. Pēc nobīdes reģistra notīrīšanas visu flip flops izeja kļūst par 0, tāpēc pirmā pulksteņa cikla laikā, kad mēs šos datus (1101) lietojam sērijveidā, flip flops izejas izskatās kā zemāk esošā tabula.
Pirmais pulksteņa cikls:
FF0 |
FF1 |
FF2 |
FF3 |
1 |
0 |
0 |
0 |
Otrais pulksteņa cikls:
FF0 |
FF1 |
FF2 |
FF3 |
0 |
1 |
0 |
0 |
Trešais pulksteņa cikls:
FF0 |
FF1 |
FF2 |
FF3 |
1 |
0 |
1 |
0 |
Ceturtais pulksteņa cikls:
FF0 |
FF1 |
FF2 |
FF3 |
1 |
1 |
0 |
1 |
2. Serial in - Parallel out Shift reģistrs
Otrs maiņu reģistra veids, kuru mēs apsvērsim, ir sērijveida - paralēlās maiņas reģistrs, kas pazīstams arī kā SIPO maiņu reģistrs. Šāda veida maiņu reģistrus izmanto datu pārveidošanai no sērijas uz paralēlu. Dati nāk viens pēc otra vienā pulksteņa ciklā, un tos var vai nu pārvietot un aizstāt, vai arī nolasīt katrā izvadē. Tas nozīmē, kad dati tiek nolasīti, katrs lasītais bits vienlaikus ir pieejams attiecīgajā izejas līnijā (Q0 - Q3 turpmāk parādītajam 4 bitu nobīdes reģistram).
4 bitu sērijas ieejas - paralēlas izejas maiņas reģistrs ir parādīts zemāk esošajā attēlā.
Turpmāk parādīta tabula, kurā parādīts, kā dati tiek pārvietoti no sērijveida - paralēlajā 4 bitu nobīdes reģistrā, ar datiem kā 1001.
Skaidrs |
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 |
Labs sērijveida - paralēlās izejas maiņas reģistra piemērs ir 74HC164 maiņu reģistrs, kas ir 8 bitu maiņu reģistrs.
Ierīcei ir divas sērijveida datu ievades (DSA un DSB), astoņas paralēlas datu izejas (Q0 līdz Q7). Dati tiek ievadīti sērijveidā, izmantojot DSA vai DSB, un jebkuru ievadi var izmantot kā aktīvu AUGSTU iespējošanu datu ievadīšanai caur otru ievadi. Dati tiek pārvietoti par pulksteņa (CP) ievades pārejām no LOW uz HIGH. LOW uz galvenā atiestatīšanas ieejas (MR) notīra reģistru un piespiež visas izejas LOW, neatkarīgi no citām ieejām. Ieejas ietver skavas diodes. Tas ļauj izmantot strāvas ierobežojošos rezistorus, lai savienotu ieejas spriegumam, kas pārsniedz VCC.
3. Paralēlā ienākšana - sērijas izejas maiņu reģistrs
Parallel in - Serial out shift maiņu reģistrā dati tiek piegādāti paralēli, piemēram, ņemiet vērā zemāk parādīto 4 bitu reģistru.
Šo reģistru var izmantot 4 bitu vārda glabāšanai un pārvietošanai, ar vadības / ievadīšanas (WS) ievadi kontrolēt maiņu reģistra darbības režīmu. Kad WS vadības līnija ir zema (rakstīšanas režīms), datus var ierakstīt un ierakstīt, izmantojot D0 līdz D3. Lai sērijveidā pārvietotu datus, WS vadības līnija tiek novirzīta uz HIGH (Shift mode), pēc tam reģistrs pārvieto datus uz pulksteņa ievadi. Paralēli sērijā mūsu maiņu reģistrs tiek saukts arī par PISO maiņu reģistru.
Labs paralēlas sērijas izejas maiņas reģistra piemērs ir 74-bitu 16-ciparu maiņu reģistrs, lai gan to var darbināt arī kā sērijveida sērijas izejas maiņu reģistru.
Ierīcei ir sērijveida datu ievade (DS), astoņas paralēlas datu ievades (D0 līdz D7) un divas papildu sērijveida izejas (Q7 un Q7 '). Kad paralēlās slodzes ievade (PL) ir ZEMA, dati no D0 līdz D7 tiek asinhroni ielādēti maiņu reģistrā. Kad PL ir AUGSTS, dati tiek ievadīti reģistrā sērijveidā pie DS. Kad pulksteņa iespējošanas ievade (CE) ir LOW, dati tiek novirzīti uz CP ievades pārejām no LOW uz HIGH. AUGSTS uz CE atspējo CP ievadi. Ieejas iztur 15 V pārspriegumu. Tas ļauj ierīci izmantot HIGH-to-LOW līmeņa pārslēgšanas programmās.
Pārvietojumu reģistra funkcionālā shēma ir parādīta zemāk;
Sistēmas laika shēma ir tāda, kā parādīts attēlā zemāk;
4. Parallel in - Parallel out shift maiņas reģistrs
Paralēlās un paralēlās izejas nobīdes reģistrā izejas dati paralēlās izejās parādās vienlaikus, kad tiek ievadīti ievades dati. Šāda veida nobīdes reģistru sauc arī par PIPO maiņas reģistru.
Ieejas dati katrā ieejas tapā no D0 līdz D3 tiek nolasīti vienlaikus, kad ierīce tiek pulksteņota, un tajā pašā laikā dati, kas nolasīti no katras ieejas, tiek nodoti attiecīgajā izejā (no Q0 līdz Q3).
74HC195 maiņa reģistrs ir daudzfunkcionāls pāreja reģistrā, kas ir spējīga strādāt lielākajā daļā veidiem visu veidu, mēs esam apsprieduši tik tālu, jo īpaši, kā paralēli aprakstītos - paralēli out maiņu reģistrā.
5. Divvirzienu maiņu reģistri
Shift reģistri var vai nu veikt datu labo vai kreiso pārsūtīšanu, vai arī abus, atkarībā no maiņu reģistra veida un to konfigurācijas. Labās maiņas operācijās bināros datus dala ar diviem. Ja šī darbība tiek mainīta, bināros datus reizina ar diviem. Izmantojot piemērotu kombinācijas loģiku, var konfigurēt sērijas maiņas reģistru, lai veiktu abas darbības.
Apsveriet 4 bitu reģistru attēlā zemāk. Pāris NAND vārti ir konfigurēti kā OR vārti, un tos izmanto, lai kontrolētu nobīdes virzienu - pa labi vai pa kreisi.
Vadības līnija pa kreisi / rakstīt tiek izmantota, lai noteiktu virzienu, uz kuru dati tiek pārvietoti pa labi vai pa kreisi.
Labs piemērs ir 74HC194 divvirzienu nobīdes reģistrs. Reģistrs var darboties visos sērijveida un paralēlās ievades vai izvades režīmos un variācijās. Tālāk parādīta 74HC194 funkcionālā shēma, kas izceļ vadības līniju, pulksteni, ievades un izejas tapas.
Tālāk ir parādīta arī ierīces laika shēma. Tas labāk palīdzēs jums saprast, kā vadības līnija kontrolē reģistra darbības.
6. Skaitītāji
Skaitītāji, kurus dažreiz sauc par rotācijas nobīdes reģistriem, būtībā ir maiņu reģistri, kuru izejas tiek atgrieztas ierīcē kā ieejas tādā veidā, ka tas rada noteiktu modeli. Šos reģistru veidus sauc par skaitītājiem to eksponētā modeļa un secības dēļ. Vispopulārākais maiņu reģistru skaitītāju veids ir gredzenu skaitītāji.
Zvana skaitītājs
Zvana skaitītāji būtībā ir skaitītāja veids, kurā vissvarīgākā bita izlaide tiek atgriezta kā ieguldījums vismazāk nozīmīgajā bitā. 4 bitu gredzenu skaitītājs ir parādīts diagrammā, izmantojot D flip flops.
Kad tiek izmantots pulksteņa impulss, katra posma izeja tiek novirzīta uz nākamo, un cikls turpinās. Kad skaidrs ir pagriezts augstu, visi flip flops, izņemot pirmo (kas tiek iestatīts uz 1), tiek atiestatīti uz nulli.
Shift reģistru lietojumi
Maiņu reģistri tiek izmantoti daudzās lietojumprogrammās, no kurām dažas ir;
1. Paralēli sērijveida pārveidošanai, kur tos izmanto, lai samazinātu vadu vai līniju skaitu, kas nepieciešami saziņai starp divām ierīcēm, jo sērijveida sakariem parasti ir nepieciešami tikai divi vadi, salīdzinot ar paralēlo, kas ir atkarīgs no nosūtīto bitu skaita.
2. IO paplašināšana mikrokontrolleriem. Mūsdienu elektronikā mikrokontrolleru IO tapas tiek dēvētas par nekustamajiem īpašumiem, un katram ir nepieciešams pēc iespējas vairāk noteiktām lietojumprogrammām, piemēram, 100 LED ieslēgšanai vai 100 niedru slēdžu lasīšanai ar kaut ko līdzīgu Arduino vai Atmeg328p mikrokontrolleru. Piemēram, zemāk esošā shēma parāda, kā sērijveida un paralēlās maiņas reģistru var izmantot, lai kontrolētu 8 gaismas diodes, izmantojot tikai trīs no mikrokontrolleru IO tapām.
3. Tos izmanto valsts reģistros, kurus izmanto secīgās ierīcēs. Tāpat kā ierobežotu atmiņas mašīnu, ierīces nākamo stāvokli vienmēr nosaka, pārvietojot un ievietojot jaunus datus iepriekšējā pozīcijā.
4. Vēl viena galvenā lietojumprogramma ir atrodama sadaļā Laika aizkave. Shift reģistri tiek izmantoti laika kavēšanai ierīcēs, laiku pielāgojot pulkstenim, vai palielinot, izmantojot kaskādes nobīdes reģistrus, vai samazinot, ņemot izeju no zemāka nozīmīga bita.
Laika kavēšanos parasti aprēķina, izmantojot formulu;
t = N * (1 / fc)
N ir flip flop posma skaits, kurā tiek ņemta izeja, Fc ir pulksteņa signāla frekvence, un t, kura ir noteiktā vērtība, ir laika daudzums, par kuru izeja tiks aizkavēta.
Atlasot maiņu reģistru konkrētam uzdevumam plašā diapazona dēļ un ierakstot, ir svarīgi izvēlēties tādu, kas atbilst jūsu konkrētajām vajadzībām, ņemot vērā, piemēram, darbības režīmu, bitu lielumu (flip flops skaits), labo vai kreiso vai divvirzienu utt.
Daži no populārākajiem maiņu reģistriem ir;
- 74HC 194 4 bitu divvirzienu universālais maiņu reģistrs
- 74HC 198 8 bitu divvirzienu universālā maiņu reģistrs
- 74HC595 Sērijas-iekšā-paralēli-izejā maiņu reģistrs
- 74HC165 Parallel-In-Serial-Out maiņu reģistrs
- IC 74291 4 bitu universālais maiņu reģistrs, binārs augšup / lejup skaitītājs, sinhrons.
- IC 74395 4 bitu universālais maiņu reģistrs ar trīs stāvokļu izejām.
- IC 74498 8 bitu divvirzienu nobīdes reģistrs ar paralēlām ieejām un trīs stāvokļu izejām.
- IC 74671 4 bitu divvirzienu nobīdes reģistrs.
- IC 74673 16 bitu sērijveida sērijas izejas maiņu reģistrs ar izejas krātuves reģistriem.
- IC 74674 16 bitu paralēlās sērijas izejas maiņu reģistrs ar trīs stāvokļu izejām.
Ir vēl vairāki, jums vienkārši jāatrod, kas vislabāk atbilst jūsu lietojumprogrammai.
Paldies, ka lasījāt, līdz nākamajai reizei.