Components bàsics d'un controlador

Nov 11, 2024

Deixa un missatge

1. El registre d'instruccions s'utilitza per emmagatzemar instruccions d'execució. Les instruccions es divideixen en dues parts: codi operatiu i codi d'adreça. Els codis operatius s'utilitzen per indicar la naturalesa operativa de les instruccions, com ara sumes, restes, etc.; El codi d'adreça proporciona l'adreça de l'operand d'aquesta instrucció o informació rellevant que forma l'adreça de l'operand (en aquest cas, l'adreça de l'operand es forma mitjançant un circuit de formació d'adreces). Hi ha un tipus d'instrucció anomenada instrucció de transició, que s'utilitza per canviar l'ordre normal d'execució de les instruccions. La part del codi d'adreça d'aquesta instrucció proporciona l'adreça de la instrucció que s'ha d'executar.
2. Descodificador de codi operatiu: s'utilitza per descodificar el codi operatiu de les instruccions, generar els nivells de control corresponents i completar la funció d'anàlisi d'instruccions.
3. Circuit seqüencial: s'utilitza per generar senyals de marca de temps. En els microordinadors, els senyals de marca de temps tenen generalment tres nivells: cicle d'instrucció, cicle d'autobús i cicle de rellotge. El circuit de generació d'ordres de microoperació genera diverses ordres de microoperació per completar les operacions especificades de les instruccions. La base principal per a la generació d'aquestes ordres és la marca de temps i la naturalesa operativa de les instruccions. Aquest circuit és en realitat la implementació de diverses expressions de senyal de control de microoperacions (com ara l'expressió A → L anterior), i és la part més complexa del controlador lògic combinacional.
4. Comptador d'instruccions: serveix per generar l'adreça de la següent instrucció a executar. Normalment, les instruccions s'executen seqüencialment i les instruccions s'emmagatzemen seqüencialment a la memòria. Així, en general, l'adreça de la següent instrucció que s'ha d'executar es pot formar afegint 1 a l'adreça actual, i per a aquest propòsit s'utilitza l'ordre de microoperació "1". Si s'està executant una instrucció de transferència, l'adreça de la següent instrucció a executar és l'adreça que s'ha de transferir. L'adreça es troba al camp del codi d'adreça d'aquesta instrucció de transferència i s'envia directament al comptador d'instruccions.