A gyűrűs számláló a számlálók egyik típusa, melyet egy körkörösen visszacsatolt léptető regiszterből (shift regiszter) készíthetünk. A léptető regiszterben az adatok az egyik vagy másik (balra vagy jobbra), vagy akár mindkét irányban eltolhatók, léptethetők. Ha a léptető regiszter kimenetét valamilyen módon a bemenetre kötik, akkor visszacsatolás jön létre és a működés ideje alatt a regiszterben egy megadott információ kering. Ezt nevezik gyűrűs számlálónak. A gyűrű bemenetére kerülő jel a regiszternek egy vagy több pontjában kialakuló jelek függvénye. Típusai A gyűrűs számlálóknak két típusa van: Az egyenes gyűrűs számláló vagy n-ből az 1 számláló esetén a léptető regiszter utolsó bitje a regiszter bemenetére van kötve, és a számlálóban egy darab 1-es (vagy 0-s) bit köröz. Ezt nevezik n modulusú gyűrűs számlálónak is. Például egy 4 bites shiftregiszterben, 1000 kezdőérték esetén az ismétlődő minta a következő: 1000, 0100, 0010, 0001, 1000... . Ennél a számlálótípusnál természetesen az egyik bitet előzetesen 1-re (vagy 0-ra) kell állítani, hogy a számláló helyesen működjék. A csavart gyűrűs számláló vagy Johnson számláló esetén az utolsó bit negáltját kell a bemenetre kötni, tehát a visszacsatolási hurokba egy NEM kaput iktatnak. Ennek következtében a kódciklus hossza kétszer akkora lesz, mint az ennek megfelelő egyenes gyűrűs tárolóban. Ezt 2n modulusú gyűrűs számlálónak is nevezik, ahol az n a számláló tárolóinak száma. Ebben az esetben az ismétlődő minta – 4 bites shiftregiszternél, 0000 kezdőérték esetén – a következő lesz: 0000, 1000, 1100, 1110, 1111, 0111, 0011, 0001, 0000... .
A lánckódgenerátor A gyűrűs számlálóhoz hasonló felépítésű a lánckódgenerátor (linear feedback shift register, LFSR), amelyben a bemenetre jutó jel a regiszter egyes bitjeinek valamilyen logikai függvénye. Például ha a 4 bites gyűrűs számlálónak nem a kimenetét, hanem az utolsó két bitjének KIZÁRÓ VAGY (XOR) függvénye kerül a bemenetre, akkor 15 hosszú változatos sorozat keletkezik a kimeneten. Az így előállítható sorozatok ugyan bonyolultak, de nem véletlenszerűek, ezért ezeket pszeudóvéletlen bináris sorozatnak (pseudo-random binary sequence, PRBS) nevezik. A lánckódgenerátorokkal előállítható ciklusok hossza a visszacsatolásban szereplő fokozatok számától és a generátorban megvalósított függvénytől is függ. A legnagyobb kódhossz N fokozatra 2N-1, tehát pl. 4 fokozat esetén 15 lehet. A lánckódgenerátoroknak számtalan felhasználása van, pl. egy hasonló egységgel állították elő az első mikroprocesszor, a TMS 1000 programszámlálójának értékeit is, mivel ezt sokkal kevesebb elemmel megvalósítható, mint egy bináris számláló,http://research.microsoft.com/en-us/um/people/gbell/computer_structures_principles_and_examples/csp0600.htm - a PC értékeit egy eltoló regiszter és néhány logikai kapu segítségével állítják elő és a nem bináris szekvenciát is megfelelőnek ítélték.
A négybites számlálók mintái
Egyenes gyűrűs számláló/n-ből az 1 számláló Csavart gyűrűs számláló/Johnson számlálóStateQ0Q1Q2Q3StateQ0Q1Q2Q3 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 2 0 0 1 0 2 1 1 0 0 3 0 0 0 1 3 1 1 1 0 0 1 0 0 0 4 1 1 1 1 1 0 1 0 0 5 0 1 1 1 2 0 0 1 0 6 0 0 1 1 3 0 0 0 1 7 0 0 0 1 0 1 0 0 0 0 0 0 0 0
4 bites gyűrűs számláló (Johnson counter) 400px|bélyegkép|bal|4 bites gyűrűs számláló D típusú flipflopokkal felépítve, aszinkron törléssel (a negálást kis karika jelzi)
Jegyzetek
Források
További információk
Shift Register Counters Ring Counters Kapcsolódó szócikkek Számláló
Kategória:Digitális elektronika