Prstenasti brojač
Prstenasti brojač je vrsta brojača sastavljenog od kružnog tipa pomeračkog registra. Izlaz poslednjeg pomeračkog registra se dovodi na ulaz prvog registra. Hamingovo rastojanje од Johnson brojača je 1, а Hamingovo rastojanje od Overbeck brojača je 2.
Postoje dva tipa prstenastog brojača:
- Pravi prstenasti brojač ili Overbeck brojač povezuje izlaz poslednjeg šiftovanog registra sa izlazom prvog šiftovanog registra i bit jedan (ili nula) cirkuliše oko prstena. Na primer, četvoro registni "one-hot" brojač, sa inicijalnom vrednošću registra 1000 ima sledeću šemu ponavljanja: 1000, 0100, 0010, 0001, 1000... Imajte na umu da u jedanom od registara mora biti unapred učitana jedinica (ili nula), da bi radio ispravno.[1][2][3]
- Upleteni prstenasti brojač koji se zove i Johnson counter ili Möbius counter (ili Moebius) povezuje komplement izlaza poslednjeg šiftovanog registra sa prvim šiftovanim registrom na ulazu i cirkuluše oko prstena sa nizom jedinica za kojima slede nule : 0000, 1000, 1100, 1110, 1111, 0111, 0011, 0001, 0000...
Četvoro bitna sekvenca prstenastog brojača
urediPravi prstenasti brojač/Overbeck brojač | Upleteni prstenasti brojač/Džonsonov brojač | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
State | Q0 | Q1 | Q2 | r3 | State | Q0 | Q1 | r2 | Q3 | |
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 |
Aplikacije
urediPrstenasti brojač se koristi u hardverskom ligičnom projektovanju (npr. ASIC i FPGA) za pravljenje konačnog automata. Binarnom sabiraču je potreban sabirač strujnog kola, koji je dosta komplikovaniji od prstenastog brojača. Dodatno, najgora vrsta kašnjenja na kružnom sabiraču, biće proporcionalna broju bitova u kodu. Kašnjenje prstenastog brojača biće konstantno bez obzira na broj bitova u kodu. Kompleksna kombinaciona logika sabirača može da stvori greške u vremenu proračunavanja koje mogu uzrokovati nepravilne hardvreske perfomanse. Na kraju, prstenasti brojač sa Hamming sa distancom od 2 (ili više) omogućava da detektuje енгл. single bit upsets; koji meže nastati u "opasnim" okruženjima.
Mana prstenastih brojača je da mogu smanjiti gustinu koda. Binarni kod kože reprezentovati 2^N stanja, gde je N broj bitova u kodu, a енгл. Overbeck; brojač mođe reprezentovati N stanja i Džonson brojač može reprezentovati 2N stanja. Ovo može biti važno razmatranje u hardverskoj implementaciji gde su registri skuplji od kombinacione logike (npr. FPGA).
Vidi još
urediReference
urediLiteratura
uredi- Crowe, John; Hayes-Gill, Barrie (1998). Introduction to Digital Electronics. Newnes. стр. 161. ISBN 0-340-64570-9.
- Rafiquzzaman, M. (2005). Fundamentals of Digital Logic and Microcomputer Design. Wiley. стр. 166. ISBN 978-0-471-73349-2.
- NAIR, B. SOMANATHAN (2002). DIGITAL ELECTRONICS AND LOGIC DESIGN. PHI Learning Pvt. Ltd. стр. 134. ISBN 978-81-203-1956-1.