Vad är en kontrollenhet?
En styrenhet är underkomponenten i den centrala processorenheten (CPU) som hanterar alla åtgärder som utförs i detta område på en dator. Det ansvarar för att ta de olika ingångarna från datorn, instruktioner och data och berätta för processorn vad de ska göra med dem. Eftersom CPU: n betraktas som datorns hjärna, kallas den ibland hjärnan i hjärnan. Beroende på CPU: s arkitektur kan styrenheten ha olika uppgifter att utföra.
Styrenheten består faktiskt av flera underkomponenter. Under de hårda kabeldagarna bildade alla dessa kablar och kretsar det som kallas en finite-maskin, ett system som har ett enstaka syfte att styra datorns funktioner. Separata kretsar var ansvariga för avkodning och kodning av instruktioner, medan andra hanterade logik eller räknade instruktionerna som CPU arbetade med. Allt hände i ordning, där logikkretsarna skulle släppas på ett eller annat sätt för att rikta instruktionerna till lagring.
En instruktion hämtas och avkodas och sedan måste den utföras i ordning, en efter en tills den är klar. I äldre processorer måste instruktionen gå igenom hela processen och avsluta beräkningen innan nästa börjar. För att påskynda behandlingen använder moderna CPU: er så kallade pipelines, där varje steg är en del av pipeline. Medan en instruktion finns i exekveringsdelen av pipeline, är en annan redan i avkodningsfasen och en annan hämtas. För att hantera allt detta behövde styrenheten också utföra rollen som en multiplexerare, genom att den tar flera ingångar eller utgångar och leder dem in och ut från rörledningen.
När datorns CPU: er fortsatte att utvecklas, förändrades mycket av detta dramatiskt. Användningen av mikrokod, små program som sitter i speciellt, snabb hastighetsläseminne på CPU: n, tog platsen för den gamla hårddiskkretsen. Dessa lågnivåprogram tog över det tidskrävande jobbet att fysiskt återansluta en styrenhet och förenklade förändringar i CPU: s arkitektur. De specialskrivna mikroprogrammen för styrenheten, skapade under CPU: s konstruktionsfas, är det som möjliggör arkitekturen för en viss typ av CPU.
I allmänhet beror mycket av styrenhetens ansvar av CPU-arkitekturen. Vissa kan helt enkelt hämta, avkoda, koordinera exekveringen och styra utdata från instruktioner. Andra kan ha ytterligare ansvar som innebär översättning, vilket kan bromsa CPU: n. I dessa fall kan styrenheten ytterligare delas upp i kortfattade komponenter, såsom en separat schemaläggningsenhet, eller en pensionsenhet som tar hand om organisering och lagring av resultaten från den rithmetic logic unit (ALU).