Shift regiszter
A shift regiszter (léptető regiszter) egy digitális áramkör, mely flip-flopok kaszkád kapcsolásából jön létre.
A flip-flop 1 bit tárolására alkalmas kétállapotú billenőkör. A kaszkádba kapcsolt flip-flop áramkörök közös órajellel (léptető jel) rendelkeznek, az első flip-flop bemenetére adott jel (bit érték) minden órajel hatására továbblép egy pozícióval, mely úgy valósul meg, hogy az egyik flip-flop kimenete a következő bemenete.
A shift regiszterekből bit hálózat is kiépíthető, ha több hasonló hosszúságú shift regisztert építünk párhuzamosan egy hálózattá. A shift regisztereknek lehetnek soros vagy párhuzamos be- illetve kimenetük, ezek vegyesen is előfordulhatnak. A shift regiszter lehet egyirányú vagy kétirányú (előre–hátra), valamint önmagában visszacsatolt.
A shift regiszter lehet minimum kétfokozatú (2 bites) vagy több fokozatú (n bites), ahol n tetszőleges pozitív egész szám.
Történet
Az első ismert shift regiszter a Colossus nevű korai számítógépben építették fel a 40-es évek elején. A Colossus egy kódfeltörő gép volt a II. világháború alatt az angol elhárítás kezelésében. A számítógép elektroncsövekből épült fel, a benne található shift regiszter öt fokozatú (5 bites) volt.
Shift regiszter fajták
SISO
A SISO (Serial-in, serial-out), „soros-bemenet, soros kimenet” működésű shift regiszter.
A kaszkádba kapcsolt flip-flopok első fokozatára érkező jel (1 bit), minden továbbléptető órajel hatására egy fokozattal jobbra lép. Az utolsó flip-flop kimenete után a jel elveszik.
Egy négyfokozatú (4 bites) shift regiszter belső állapotai, minden egyes léptetés után, ha bemenetre 1 értékű bit kerül az első órajel előtt és utána 0 bit értékű jel következik:
0000, 1000, 0100, 0010, 0001, 0000
Egy négyfokozatú (4 bites) shift regiszter belső állapotai, minden egyes léptetés után, ha bemenetre állandóan 1 értékű bit kerül:
0000, 1000, 1100, 1110, 1111
A shift regiszter kimenetére a negyedik léptetés (órajel) után kerül ki a bemenetre adott eredeti jel. Így ez a konfiguráció késleltetésnek is használható, a bemeneti jel négy órajel múlva jelenik meg a kimeneten.
SIPO
A SIPO (Serial-in, parallel-out), „soros bemenet, párhuzamos kimenet” működésű shift regiszter. Ez a konfiguráció lehetővé teszi a soros-párhuzamos átalakítást.
PISO
A PISO (Parallel-in, Serial-out), „párhuzamos bemenet, soros kimenet” működésű shift regiszter. Ez a konfiguráció lehetővé teszi a párhuzamos-soros átalakítást is. Az ábrán látható konfiguráció egy négy elemes (4 bites) PISO shift regisztert mutat be. A bemenetek a D1 – D4. A shift regisztert négy D-flip-flop alkotja, a léptetés az órajel (clock) pozitív felfutó élére történik. A shift regiszter kimenete az utolsó D flip-flop Q kimenete.
Az animáció egy 4 bites PISO típusú shift regiszter működését (belső állapotait) mutatja. A működés lépései: a flip-flopok törlése (clear), párhuzamos beírás a tárolókba (write), eltolás (shift).
Gyűrűs számláló
A gyűrűs számláló egy visszacsatolt shift regiszter, ahol a shift regiszter kimenete vissza van csatolva a bemenetre.[1]
Ilyen az úgynevezett Jonhson számláló is.
A gyűrűs számlálókban a fokozattól függően állandóan ismétlődik egy bitminta (pattern), amíg az órajel működik. A gyűrűs számlálóknál is lehet egy állandó vagy változó soros bemenet vagy egy párhuzamos minta beírás.
Felhasználás
A shift regiszterek egyik általános felhasználási területe a soros-párhuzamos átalakítás. Erre sok esetben szükség van, mert a jelek soros átvitele egyszerűbb, majd az átvitel után az eredeti byte forma kerül visszaállításra. A shift regiszterekkel kapacitás és induktivitás nélküli késleltető áramkörök alakíthatók ki.
A kétirányú shift regiszterekkel verem (stack) áramkörök alakíthatók ki. A SIPO regisztereket általánosan használják mikroprocesszorok kimenetén, amikor több kimeneti lábra van szükség, mint amennyi rendelkezésre áll. Ez lehetővé teszi több bináris eszköz vezérlését.
Hasonló módon a PISO regisztert általánosan alkalmazzák akkor, amikor a mikroprocesszornak több párhuzamos bemenetre lenne szüksége, mint ahogy azt a tokozás megengedi. A különféle bináris kimenetek a PISO bemenetére kapcsolódnak, majd a megfelelő biteket beléptetik sorosan a mikroprocesszorba.
Shift regiszterek alkalmasak egy impulzus kiszélesítésére is. Itt az impulzus időzítése nem függ analóg elemektől, csupán az órajel pontosságától. A korai számítógépekben a shift regiszter az adatfeldolgozó egység része volt. Az aritmetikai-logikai egységben (ALU) a bináris műveleteknél használták.
A korai számítógépekben késleltető vonalas memóriának használták, ahol a bemenetre adott jelet a megfelelő eltolás (késleltetés) után visszacsatolták a bemenetre. A mai számítógépekben ez a frissíthető memória.
Kapcsolódó szócikkek
- https://web.archive.org/web/20130718002111/http://web.t-online.hu/gentile/ipel/Regiszter.pdf
- https://web.archive.org/web/20081117010206/http://www.szgti.bmf.hu/~grosz/download/Elo_Digitronika/E_D_1_2_3_kotet/ED_1_2_3%20mappa_pdf/Reg_1_2_0_N.pdf
- https://www.google.hu/search?q=shift+regiszter&hl=hu&rlz=1R2ADRA_huHU352&prmd=imvns&tbm=isch&tbo=u&source=univ&sa=X&ei=VC8lT97JL9OChQeZscDeBA&ved=0CEkQsAQ&biw=853&bih=505
- https://web.archive.org/web/20130718022144/http://irh.inf.unideb.hu/user/onigai/DT/DT_9.pdf
- http://nik.uniobuda.hu/somlyai/Digitalis_technika_II/labor_utmutatok/Lab04_%FAtmutat%F3.pdf[halott link]