Shift regiszter

A Wikipédiából, a szabad enciklopédiából
A lap korábbi változatát látod, amilyen KobeatBot (vitalap | szerkesztései) 2020. április 12., 17:49-kor történt szerkesztése után volt. Ez a változat jelentősen eltérhet az aktuális változattól. (→‎Jegyzetek: {{források}} sablon {{jegyzetek}} sablonra, „Források„ szakasz „Jegyzetek„ szakaszra (WP:FELÉP), esetlegesen „Források„ szakasz hozzáadása AWB)

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.

4 bites SIPO

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.

4 bites PISO

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).

4 bites PISO

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

Jegyzetek