Che cos'è un'unità di controllo?
Un'unità di controllo è il sottocomponente dell'unità di elaborazione centrale (CPU) che gestisce tutte le azioni eseguite in quest'area in un computer. È responsabile di prendere i vari input dal computer, le istruzioni e i dati e dire al processore cosa farne. Poiché la CPU è considerata il cervello del computer, a volte viene definita cervello all'interno del cervello. A seconda dell'architettura della CPU, l'unità di controllo può svolgere varie attività.
L'unità di controllo è in realtà composta da numerosi sottocomponenti. Durante i giorni cablati, tutti questi cablaggi e circuiti formavano quella che è conosciuta come una macchina a stati finiti, un sistema che aveva uno scopo singolare nel dirigere le operazioni del computer. Circuiti separati erano responsabili della decodifica e della codifica delle istruzioni, mentre altri gestivano la logica o contavano le istruzioni su cui lavorava la CPU. Tutto è accaduto in ordine, in cui i circuiti logici sarebbero stati capovolti in un modo o nell'altro per indirizzare le istruzioni alla memorizzazione.
Un'istruzione viene recuperata e decodificata, quindi deve essere eseguita in ordine, una dopo l'altra fino al completamento. Nelle CPU più vecchie, l'istruzione dovrebbe passare attraverso l'intero processo e terminare il calcolo prima che inizi il successivo. Per accelerare l'elaborazione, le moderne CPU utilizzano quelle che vengono chiamate pipeline, in cui ogni passaggio fa parte della pipeline. Mentre un'istruzione si trova nella parte di esecuzione della pipeline, un'altra è già in fase di decodifica e un'altra viene recuperata. Per gestire tutto ciò, l'unità di controllo doveva anche svolgere il ruolo di multiplexer, in quanto prende più input o output e li dirige dentro e fuori dalla pipeline.
Man mano che le CPU del computer continuavano ad avanzare, gran parte di ciò è cambiato radicalmente. L'uso del microcodice, piccoli programmi che si trovano nella memoria di sola lettura ad alta velocità della CPU, ha preso il posto del vecchio circuito cablato. Questi programmi di basso livello hanno assunto il dispendioso lavoro di ricablaggio fisico di un'unità di controllo e hanno semplificato le modifiche all'architettura della CPU. I microprogrammi personalizzati dell'unità di controllo, creati durante la fase di progettazione della CPU, sono ciò che abilita l'architettura di un particolare tipo di CPU.
In generale, molte delle responsabilità dell'unità di controllo dipendono dall'architettura della CPU. Alcuni possono semplicemente recuperare, decodificare, coordinare l'esecuzione e dirigere l'output delle istruzioni. Altri possono avere ulteriori responsabilità che implicano la traduzione, che può rallentare la CPU. In questi casi, l'unità di controllo può essere ulteriormente suddivisa in componenti succinti, come un'unità di pianificazione separata o un'unità di pensionamento che si occupa dell'organizzazione e della memorizzazione dei risultati dall'unità logica rithmetic (ALU).