Wat is een Shift-register?
Zoals toegepast op digitale schakelingen is een schuifregister een reeks flip-flops gebaseerd op opeenvolgende kloktiming. De flip-flops vergemakkelijken het verplaatsen van gegevens van invoer naar uitvoer met behulp van sequentiële logica. Een klok, in de vorm van een herhalende golf in een vierkant patroon, wordt gebruikt om te synchroniseren hoe gegevens door schuifregisters reizen, waardoor een korte vertraging ontstaat bij de overdracht van een digitaal signaal. Meestal worden schuifregisters van verschillende lengten gebruikt om parallelle gegevens naar serieel te converteren, maar kunnen ook worden gebruikt voor gegevensstroom in microprocessors of om analoge gegevens naar digitaal te verbergen en vice versa.
Shift-registers zijn hogesnelheidscircuits. Primair verplaatst een schuifregister bits van gegevens naar links of naar rechts langs een circuit, afhankelijk van de specifieke structuur van het circuit. In zijn eenvoudigste vorm neemt een schuifregister gegevens op in de eerste fase en verschuift de bits één trap naar links of rechts terwijl de klok aangeeft dat er een gegevensdoorvoer nodig is. Registers worden geïdentificeerd door het aantal beschikbare tijdelijke opslagplaatsen na elke fase tussen invoer en uitvoer. Tijdelijke opslagslots maken het mogelijk dat een schuifregister gegevenssignalen vertraagt totdat de klok de juiste gegevens doorgeeft. Een 8-bits register heeft bijvoorbeeld acht fasen en dus acht tijdelijke opslagplaatsen voor bits in een gegevensreeks.
Structureel zijn er vijf basistypen schuifregisters. Serieel-in / serieel-uit en universele parallel-in / parallel-uit schuifregisters vergemakkelijken de invoer en uitvoer van gegevens in respectievelijk seriële vorm of parallelle vorm, zonder dat conversies vereist zijn. Parallel-in / serieel-uit verwijst naar schuifregisters die parallelle datatransmissie-ingangen verwerken en dergelijke transmissies omzetten in seriële vorm. Serieel-in / parallel-uit schuifregisters zijn bijna identiek aan parallel-in / serieel-uit, met uitzondering van invoergegevens in seriële vorm geconverteerd naar parallelle vormuitvoer.
Een belteller is een type schuifregisterstructuur met hercirculerende of herhalende gegevenspatronen. Wanneer een schuifregister de verwerking van een gegevensreeks voltooit en de laatste fase terugvoert naar de initiële gegevensinvoerfase, ontstaat een cirkelvormig patroon. Beltellers worden gebruikt wanneer een specifieke functie op een ingesteld herhalend patroon vereist is. Een LED-display dat is ingesteld om gekozen displays te herhalen, kan bijvoorbeeld een ringtellerstructuur gebruiken voor het schuifregister, zodat de uitvoer zich herhaalt met een vooraf bepaalde klokpuls.
In de begindagen van computers werd een schuifregister met enkele honderden fasen gebruikt voor computergeheugen. Het gebruik van schuifregisters verving kwikvertragingslijnen, waardoor de gegevensverwerking werd versneld en kleinere computeronderdelen en randapparatuur konden worden gebruikt. Tegenwoordig worden schuifregisters als primair computergeheugen als verouderd beschouwd. Printplaten hebben echter nog steeds schuifregisters om de benodigde hoeveelheid bedrading te verminderen, vooral in beeldschermstuurprogramma's, digitaal naar analoog converters en serieel gegevensgeheugen.