- Co je posuvný registr:
- Typy registrů v digitální elektronice
- 1. Serial in - Serial out Shift Registers
- 2. Sériový vstup - paralelní posuvný registr
- 3. Parallel In - Serial out Shift Register
- 4. Parallel in - Parallel out shift register
- 5. Obousměrné posuvné registry
- 6. Počítadla
- Aplikace posuvných registrů
Co je posuvný registr:
Posuvné registry jsou sekvenční logické obvody schopné ukládat a přenášet data. Jsou tvořeny klopnými obvody, které jsou spojeny tak, že výstup jednoho klopného obvodu může sloužit jako vstup druhého klopného obvodu, v závislosti na typu vytvářených posuvných registrů.
Posuvné registry jsou v zásadě typem registrů, které mají schopnost přenášet („posouvat“) data. Registry jsou obecně úložná zařízení, která se vytvářejí spojením určitého počtu klopných obvodů do série a množství dat (počet bitů), které lze uložit do registru, je vždy přímo úměrné počtu klopných obvodů, protože každý klopný obvod flop je schopen ukládat pouze jeden bit najednou. Když jsou klopné obvody v registru spojeny takovým způsobem, že se výstup jednoho klopného obvodu stane vstupem druhého, vytvoří se posuvný registr.
Klopné obvody jsou zařízení s podobnou operací jako západka. Lze jej označit jako bistabilní vibrátor, který se může pohybovat mezi dvěma stavy (0 nebo 1) a je schopen ukládat data v bitech. Nová data jsou načtena do klopného obvodu s každým hodinovým cyklem a předchozí data odeslána na výstupu.
Posuvné registry Skládají se z jakých žabek?
To však závisí na druhu klopného obvodu, protože vstup, výstup a vztah hodinového cyklu mezi klopnými obvody se liší. Existují různé druhy klopných obvodů, ale nejčastěji používané při vytváření posuvných registrů jsou klopné obvody typu D (zpoždění).
Pro provoz klopných obvodů D, díky nimž jsou tak žádoucí pro posuvné registry, Kdykoli dojde ke změně na hodinách klopného obvodu D (buď vzestupná nebo sestupná hrana, v závislosti na specifikacích klopného obvodu). Data na výstupu „Q“ se stanou stejnými daty jako data na vstupu „D“. Výstup „Q“ klopného obvodu zůstane na této hodnotě až do dalšího hodinového cyklu, kde se poté opět změní na hodnotu (vysoká nebo nízká, 1 nebo 0) na vstupu.
Nyní, když víme, co jsou Sift Registers, přistoupíme k hlubšímu ponoření do typů klopných obvodů a jejich aplikací. Ale ještě předtím, abychom uvedli praktičtější představu o tom, kde se posuvné registry používají, pojďme se podívat na populární posuvný registr 74HC595, který jsme použili u různých mikrokontrolérů k propojení displeje nebo sekvence LED.
- Shift Register with 74HC595 with Arduino to control a sequence of LEDs
- Shift Register with ESP32 to interface 7-Segment Display
- Shift Register with Raspberry Pi to control multiple LEDs
- Shift Register with PIC to control sequence of LEDs
Typy registrů v digitální elektronice
Posuvné registry jsou kategorizovány do typů hlavně podle jejich provozního režimu, ať už sériového nebo paralelního.
Existuje šest (6) základních typů posuvných registrů, které jsou uvedeny níže, i když některé z nich lze dále rozdělit na základě směru toku dat, buď posun vpravo nebo vlevo.
1. Serial in - Serial out Shift Register (SISO)
2. Sériový vstup - paralelní posuvný registr (SIPO)
3. Parallel in - Parallel out Shift Register (PIPO)
4. Parallel in - Serial out Shift Register (PISO)
5. Obousměrné posuvné registry
6. Počítadla
1. Serial in - Serial out Shift Registers
Serial in - Serial out shift registers are shift registers that streams in data serially (one bit per clock cycle) and streams out data too in the same way, one after the other.
Jednoduchý sériový vstup - sériový 4bitový posuvný registr je zobrazen výše, registr se skládá ze 4 klopných obvodů a rozdělení jeho fungování je vysvětleno níže;
Při spuštění je posuvný registr nejprve vymazán a vynucuje výstupy všech klopných obvodů na nulu, vstupní data jsou poté aplikována na vstup sériově, jeden bit po druhém.
Existují dva základní způsoby přesunu dat prostřednictvím posuvného registru SISO;
- Nedestruktivní čtení
- Destruktivní čtení
- Nedestruktivní odečet
Posouvací registry založené na nedestruktivním odečtu mají vždy režim čtení / zápisu s přidanou další řádkou, která umožňuje přepínání mezi režimy čtení a zápisu.
Když je zařízení v provozním režimu „zápis“, posuvný registr posune všechna data o jeden bit a chová se přesně jako verze destruktivního odečtu a data se tak ztratí, ale když se provozní režim přepne na „čtení“, data které jsou na vstupu posunuty, se vrací zpět do systému a slouží jako vstup do posuvného registru. To pomáhá zajistit, aby data zůstala delší (pokud zůstanou v režimu čtení)
- Destruktivní čtení
Pro destruktivní odečty jsou data zcela ztracena, protože klopný obvod pouze posune informace. Za předpokladu výše uvedeného 4bitového posuvného registru chceme poslat slovo „1101“. Po vymazání posuvného registru se výstup všech klopných obvodů změní na 0, takže během prvního hodinového cyklu, jak tato data (1101) aplikujeme sériově, vypadají výstupy klopných obvodů jako tabulka níže.
První hodinový cyklus:
FF0 |
FF1 |
FF2 |
FF3 |
1 |
0 |
0 |
0 |
Druhý hodinový cyklus:
FF0 |
FF1 |
FF2 |
FF3 |
0 |
1 |
0 |
0 |
Třetí hodinový cyklus:
FF0 |
FF1 |
FF2 |
FF3 |
1 |
0 |
1 |
0 |
Čtvrtý hodinový cyklus:
FF0 |
FF1 |
FF2 |
FF3 |
1 |
1 |
0 |
1 |
2. Sériový vstup - paralelní posuvný registr
Druhým typem posuvného registru, který budeme uvažovat, je posuvný registr Serial in - Parallel out, známý také jako posuvný registr SIPO. Tyto typy posuvných registrů se používají pro převod dat ze sériového na paralelní. Data přicházejí jeden po druhém za taktovací cyklus a lze je buď posunout a vyměnit, nebo je lze číst na každém výstupu. To znamená, že když jsou data načtena, každý načtený bit bude k dispozici současně na jejich příslušném výstupním řádku (Q0 - Q3 pro 4bitový posuvný registr zobrazený níže).
4bitový sériový vstup - paralelní posuvný registr je znázorněn na obrázku níže.
Níže je uvedena tabulka ukazující, jak se data přesouvají ze sériového vstupu - paralelní 4bitový posuvný registr, s daty jako 1001.
Průhledná |
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 |
Dobrým příkladem sériového paralelního posuvného registru je posuvný registr 74HC164, což je 8bitový posuvný registr.
Zařízení má dva sériové datové vstupy (DSA a DSB), osm paralelních datových výstupů (Q0 až Q7). Data se zadávají sériově přes DSA nebo DSB a jeden vstup lze použít jako aktivní HIGH povolení pro vstup dat přes druhý vstup. Data se přesouvají na přechody LOW-to-HIGH vstupu hodin (CP). A LOW na vstupu Master Reset (MR) vymaže registr a vynutí všechny výstupy LOW, nezávisle na ostatních vstupech. Vstupy zahrnují klešťové diody. To umožňuje použití rezistorů omezujících proud k propojení vstupů s napětím převyšujícím VCC.
3. Parallel In - Serial out Shift Register
V posuvném registru Parallel in - Serial out jsou data dodávána paralelně, například zvažte 4bitový registr zobrazený níže.
Tento registr lze použít k uložení a posunutí 4bitového slova, přičemž ovládací vstup zápisu / posunu (WS) řídí provozní režim posuvného registru. Když je řídicí linka WS nízká (režim zápisu), lze data zapisovat a taktovat pomocí D0 až D3. Chcete-li sériově posunout data, přivede se ovládací řádek WS na VYSOKÝ (režim Shift), registr poté posune data na hodinový vstup. Parallel in Serial our Shift Register is also called PISO Shift register.
Dobrým příkladem paralelního posuvného registru sériového výstupu je 8bitový posuvný registr 74HC165, i když jej lze provozovat také jako sériový posuvný registr sériového výstupu.
Zařízení obsahuje sériový datový vstup (DS), osm paralelních datových vstupů (D0 až D7) a dva doplňkové sériové výstupy (Q7 a Q7 '). Když je vstup paralelního zatížení (PL) NÍZKÝ, jsou data z D0 do D7 načtena do posuvného registru asynchronně. Když je PL VYSOKÁ, vstupují data do registru sériově v DS. Když je vstup povolení hodin (CE) NÍZKÝ, data se posunou na přechodech LOW-to-HIGH vstupu CP. A HIGH on CE zakáže vstup CP. Vstupy jsou odolné vůči přepětí na 15 V. To umožňuje použití zařízení v aplikacích s posunem na úroveň HIGH-to-LOW.
Níže je uveden funkční diagram posuvného registru;
Časový diagram systému je zobrazen na obrázku níže;
4. Parallel in - Parallel out shift register
U paralelního - paralelního posuvného registru se výstupní data napříč paralelními výstupy zobrazují současně s přiváděním vstupních dat. Tento typ posuvného registru se také nazývá posuvný registr PIPO.
Vstupní data na každém ze vstupních pinů od D0 do D3 se načítají současně, když je zařízení taktováno, a současně se data načítaná z každého ze vstupů předávají na odpovídajícím výstupu (od Q0 až Q3).
74HC195 posuvný registr je víceúčelový posuvný registr, který je schopen pracovat ve většině režimů popsaných všemi typy jsme diskutovali doposud především jako paralela in - paralelní out posuvný registr.
5. Obousměrné posuvné registry
Posuvné registry mohou buď provádět posun dat vpravo nebo vlevo, nebo obojí v závislosti na druhu posuvného registru a jejich konfiguraci. V operacích posunu doprava jsou binární data dělena dvěma. Pokud je tato operace obrácena, binární data se vynásobí dvěma. S vhodnou aplikací kombinační logiky lze konfigurovat sériový posuvný registr pro provádění obou operací.
Zvažte 4bitový registr na obrázku níže. Několik bran NAND je konfigurováno jako brány NEBO a slouží k ovládání směru řazení, buď vpravo nebo vlevo.
Řídicí řádek vlevo / zápis se používá k určení směru, do kterého jsou data posunuta, ať už vpravo nebo vlevo.
Dobrým příkladem je obousměrný posuvný registr 74HC194. Registr může pracovat ve všech režimech a variantách sériového a paralelního vstupu nebo výstupu. Níže je uveden funkční diagram modelu 74HC194, který zvýrazňuje ovládací linku, hodiny, vstupní a výstupní piny.
Schéma časování zařízení je také uvedeno níže. Pomůže vám lépe pochopit, jak ovládací řádek řídí akce registru.
6. Počítadla
Čítače, někdy nazývané rotační posuvný registr, jsou v zásadě posuvné registry, jejichž výstupy jsou přiváděny zpět do zařízení jako vstupy takovým způsobem, že vytváří určitý vzor. Tyto druhy registrů se kvůli vzoru a pořadí, které vykazují, označují jako čítače. Nejpopulárnějším typem čítačů posuvných registrů jsou počítadla zvonění.
Počítadlo zvonění
Čítače prstenů jsou v zásadě typem čítače, ve kterém je výstup nejvýznamnějšího bitu přiváděn zpět jako vstup do nejméně významného bitu. 4bitové počítadlo prstenů je znázorněno na obrázku níže pomocí klopných obvodů D.
Když se použije hodinový puls, výstup každého stupně se posune na další a cyklus pokračuje. Když je clear vysoký, všechny klopné obvody kromě prvního (který se nastaví na 1) se vynulují.
Aplikace posuvných registrů
Posuvné registry se používají v mnoha aplikacích, z nichž některé jsou;
1. Paralelní k sériovému převodu, kde se používají ke snížení počtu vodičů nebo linek potřebných pro komunikaci mezi dvěma zařízeními, protože sériová komunikace obecně vyžaduje pouze dva vodiče ve srovnání s paralelním, což závisí na počtu odesílaných bitů.
2. Rozšíření IO pro mikrokontroléry. V moderní elektronice jsou IO piny mikrokontrolérů označovány jako nemovitosti a pro určité aplikace, jako je zapnutí 100 LED diod nebo čtení 100 jazýčkových spínačů, je třeba co nejvíce, například Arduino nebo mikrokontrolér Atmeg328p. Například níže uvedené schéma zapojení ilustruje, jak lze sériový paralelní posuvný registr použít k ovládání 8 LED diod pomocí pouze tří IO pinů mikrokontrolérů.
3. Používají se ve stavových registrech, které se používají v sekvenčních zařízeních. Stejně jako stroj s konečnou pamětí je další stav zařízení vždy určen posunutím a vložením nových dat do předchozí polohy.
4. Jedna další hlavní aplikace se nachází v časových prodlevách. Posunové registry se používají pro časové zpoždění v zařízeních, přičemž čas se upravuje hodinami nebo se zvyšuje kaskádovými posuvnými registry nebo se snižuje převzetím výstupu z nižšího významného bitu.
Časová prodleva se obvykle vypočítá pomocí vzorce;
t = N * (1 / fc)
N je počet fází klopného obvodu, ve kterém je výstup odebírán, Fc je frekvence hodinového signálu at, což je hodnota, která je určena, je doba, po kterou bude výstup zpožděn.
Při výběru posuvného registru pro konkrétní úkol z důvodu širokého rozsahu a typu je důležité vybrat ten, který odpovídá vašim konkrétním potřebám, s ohledem na věci, jako je provozní režim, velikost bitu (počet klopných obvodů), pravý nebo levý obousměrný atd.
Některé z nejpopulárnějších posuvných registrů jsou;
- 74HC 194 4bitový obousměrný univerzální posuvný registr
- 74HC 198 8bitový obousměrný univerzální posuvný registr
- 74HC595 posuvný registr Serial-In-Parallel-Out
- 74HC165 posuvný registr Parallel-In-Serial-Out
- IC 74291 4bitový univerzální posuvný registr, binární čítač nahoru / dolů, synchronní.
- IC 74395 4bitový univerzální posuvný registr s třístavovými výstupy.
- IC 74498 8bitový obousměrný posuvný registr s paralelními vstupy a třístavovými výstupy.
- IC 74671 4bitový obousměrný posuvný registr.
- IC 74673 16bitový sériový sériový posuvný registr s výstupními registry úložiště.
- IC 74674 16bitový paralelní sériový posuvný registr se třemi stavovými výstupy.
Existuje několik dalších, musíte jen najít, která nejlépe vyhovuje vaší aplikaci.
Děkujeme za přečtení, až příště.