Vad är ett skiftregister?

Såsom applicerat på digitala kretsar är ett skiftregister en serie vippor baserade på sekventiell klocktid. Vipporna underlättar förflyttning av data från ingång till utgång med sekventiell logik. En klocka, i form av en repeterande våg i ett kvadratiskt mönster, används för att synkronisera hur data färdas genom skiftregister, vilket skapar en kort fördröjning i överföringen av en digital signal. Oftast används skiftregister av varierande längd för att konvertera parallelldata till seriell, men kan också användas för dataflöde i mikroprocessorer eller för att dold analog data till digital och vice versa.

Skiftregister är höghastighetskretsar. I första hand flyttar ett skiftregister bitar av data antingen åt vänster eller höger längs en krets, beroende på kretsens specifika struktur. I sin enklaste form tar ett skiftregister in data i det första steget och skiftar bitar ett steg åt vänster eller höger när klockan signalerar behovet av en dataförflyttning. Register identifieras av antalet tillgängliga temporära lagringsplatser efter varje steg mellan ingång och utgång. Temporära lagringsslitsar tillåter ett skiftregister att fördröja datasignaler tills klocksignalerna för lämplig data framåt. Ett 8-bitars register har till exempel åtta steg och därmed åtta temporära lagringsplatser för bitar i en datasträng.

Strukturellt finns det fem grundläggande typer av skiftregister. Serial-in/serial-out och universella parallell-in/parallell-out skiftregister underlättar inmatning och utmatning av data i seriell form respektive parallell form, utan att några konverteringar krävs. Parallell-in/seriell-ut hänvisar till skiftregister som behandlar parallella dataöverföringsingångar och omvandlar sådana överföringar till utdata i seriell form. Serial-in/parallell-out skiftregister är nästan identiska med parallell-in/seriell-ut, med undantag för indata i seriell form konverterad till parallell formutgång.

En ringräknare är en typ av skiftregisterstruktur som har recirkulerande eller repeterande datamönster. När ett skiftregister avslutar behandlingen av en datasträng och matar tillbaka det sista steget till det initiala datainmatningssteget, uppstår ett cirkulärt mönster. Ringräknare används när en specifik funktion krävs på ett inställt repeterande mönster. Till exempel kan en LED-display som är inställd för att repetera valda displayer använda en ringräknarestruktur för skiftregistret så att utsignalen upprepas vid en förutbestämd klockpuls.

Under datorernas tidiga dagar användes ett skiftregister med flera hundra steg för datorminne. Användning av skiftregister ersatte kvicksilverfördröjningslinjer, vilket påskyndade databehandlingen och möjliggjorde mindre datorkomponenter och kringutrustning. Idag anses skiftregister som primärt datorminne föråldrat. Kretskort har dock fortfarande skiftregister för att minska mängden ledningar som behövs, särskilt i bildskärmsdrivrutiner, digital-till-analogomvandlare och seriellt dataminne.