470 likes | 642 Views
Tema 3: Unidad de Control (Antonio J. de Vicente). Operaciones elementales Estructura de un computador elemental Ejemplo de un computador elemental Temporización de las señales de control Ejecución de instrucciones Diseño de la unidad de control Cableada Microprogramada
E N D
Tema 3:Unidad de Control (Antonio J. de Vicente) Operaciones elementales Estructura de un computador elemental Ejemplo de un computador elemental Temporización de las señales de control Ejecución de instrucciones Diseño de la unidad de control Cableada Microprogramada Nanoprogramación Arranque del computador Tema 3: Unidad de Control Estructura y Organización de Computadores
Bibliografía General • Hennessy, John L. y Patterson, David A.Arquitectura de computadores. Un enfoque cuantitativo. Mc Graw Hill, 1993 • De Frutos Redondo, J.A. y Rico López, R.Arquitectura de computadores. S. P. de la Universidad de Alcalá, 1995 • Stallings, W.Organización y Arquitectura de Computadores (4ª edición). Prentice Hall, 1.996 Complementaria: • De Miguel Anasagasti, P. y otros. Problemas de estructura de computadores. Paraninfo, 1993 Tema 3: Unidad de Control Estructura y Organización de Computadores
La unidad de control tiene como función básica la ejecución de la secuencia siguiente: Operaciones elementales (I) • Tomar la instrucción apuntada por el contador de programa de la memoria principal (fase de fetch) • Decodificar la instrucción leída • Actualizar debidamente el contador de programa • Ejecutar la instrucción Tema 3: Unidad de Control Estructura y Organización de Computadores
Operaciones elementales (II) • La ejecución de cada instrucción requiere realizar una serie de pequeños pasos mediante señales de control; estos pasos se llaman operaciones elementales • Las operaciones elementales que puede realizar todo sistema computador se clasifican en los grupos siguientes: Operaciones de transferencia • Mover información de un elemento de almacenamiento a otro Operaciones de proceso • La información origen pasa a través de un operador • Todas las operaciones elementales, ya sean de transferencia o de proceso comienzan en un elemento de almacenamiento y terminan en otro Tema 3: Unidad de Control Estructura y Organización de Computadores
LB LA Registro A LB LC Registro B Registro A Registro B Registro C TA TA TC TB Bus de Datos reloj Ta La Tb Lb Tc Lc Operaciones elementales (III)Operación elemental de transferencia Operación de transferencia: MOV RegB, RegA • Volcar el contenido del Registro A al Bus de Datos • Cargar el contenido del Bus de Datos en Registro B Tema 3: Unidad de Control Estructura y Organización de Computadores
Registro A Registro B LA LA LB LB LC Registro A Registro B Registro C ALU ALU SelOp SelOp TC LC reloj Registro C La Lb Xor SelOp Bus de Datos Tc Lc Operaciones elementales (IV)Operación elemental de proceso Operación de proceso: XOR RC, RA, RB • Llevar el Registro A a la ALU • Llevar el Registro B a la ALU • Escoger la operación XOR • Cargar el resultado en el Registro C Tema 3: Unidad de Control Estructura y Organización de Computadores
CPU PERIFÉRICO PERIFÉRICO PERIFÉRICO PERIFÉRICO PERIFÉRICO PERIFÉRICO MEMORIA PRINCIPAL MEMORIA PRINCIPAL PERIFÉRICO REGISTROS UNIDAD ARITMÉTICA UNIDAD DE E/S UNIDAD DE E/S PERIFÉRICO PERIFÉRICO PERIFÉRICO UNIDAD ARITMÉTICA CP UNIDAD DE CONTROL UNIDAD DE CONTROL Estructura de un computador elemental • Estudiaremos las señales de control que genera una Unidad de Control por medio del empleo de una máquina simplificada que siga la arquitectura de Von Neumann Tema 3: Unidad de Control Estructura y Organización de Computadores
El bloque de memoria principal constará de los elementos siguientes: • Pastilla o pastillas de memoria RAM • Registro de direcciones Memoria Principal Reg Dir • Buffer bidireccional al bus de datos • Señales de control Ldir Rd Buffer Bidireccional Rd Wr Mem Bus de Datos Bus de Direcciones Ejemplo de un computador elemental (I)Memoria principal (I) Tema 3: Unidad de Control Estructura y Organización de Computadores
Cronograma del ciclo de lectura Mem Mem Rd Memoria Principal Reg Dir Memoria Principal Memoria Principal Reg Dir Reg Dir Ldir Ldir Ldir Rd Rd Rd Buffer Bidireccional Buffer Bidireccional Buffer Bidireccional Rd Rd Wr Wr Wr Mem Mem Bus de Datos Bus de Datos Bus de Datos Bus de Direcciones Bus de Direcciones Bus de Direcciones Ejemplo de un computador elemental (II)Memoria principal (II) reloj Mem Ldir Rd Wr Dirección a leer Tema 3: Unidad de Control Estructura y Organización de Computadores
Mem Mem Mem Mem Memoria Principal Memoria Principal Reg Dir Reg Dir Reg Dir Memoria Principal Memoria Principal Memoria Principal Memoria Principal Reg Dir Reg Dir Wr Wr Ldir Ldir Ldir Ldir Rd Ldir Ldir Rd Rd Rd Rd Buffer Bidireccional Buffer Bidireccional Buffer Bidireccional Buffer Bidireccional Wr Rd Rd Rd Rd Wr Wr Wr Mem Mem Mem Dato a escribir Bus de Datos Bus de Datos Bus de Datos Bus de Datos Bus de Direcciones Bus de Direcciones Bus de Direcciones Dirección a escribir Ejemplo de un computador elemental (III)Memoria principal (III) • Cronograma del ciclo de escritura Tema 3: Unidad de Control Estructura y Organización de Computadores
a la ALU • 8 registros de propósito general Salida A Salida B Banco de Registros (8 registros) Dir. A Dir. B • 2 puertas de salida • 1 puerta de entrada Pta. Entr. • Señales de control Lr Bus de datos de la Unidad de Control Ejemplo de un computador elemental (IV)Banco de registros (I) El banco de registros está formado por los siguientes elementos: Tema 3: Unidad de Control Estructura y Organización de Computadores
a la ALU a la ALU Reg. D Reg. E Salida A Salida A Salida B Salida B RD Banco de Registros (8 registros) Banco de Registros (8 registros) Dir. A Reg. D Reg. E Dir. A Dir. A Dir. B Dir. B RE Reg. E Dir. B Reg. D Lr Pta. Entr. B. Dat Lr Lr Bus de datos de la Unidad de Control de la Unidad de Control Ejemplo de un computador elemental (V)Banco de registros (II) Lectura del banco de registros. Registros D y E simultáneamente Tema 3: Unidad de Control Estructura y Organización de Computadores
a la ALU a la ALU Salida A Salida A Salida B Salida B Banco de Registros (8 registros) Banco de Registros (8 registros) Dir. A RD Dir. A Dir. A Dir. B Dir. B Dir. B Reg. D Lr Pta. Entr. Pta. Entr. Pta. Entr. B. Dat dat Lr Lr Lr Bus de datos Bus de datos de la Unidad de Control de la Unidad de Control Ejemplo de un computador elemental (VI)Banco de registros (III) Escritura en el banco de registros. Registro D Reg. D Dato a escribir Bus de datos Tema 3: Unidad de Control Estructura y Organización de Computadores
Operador con 4 señales de control de CP de A de B de B Lac Operador • Registro acumulador [X0, X1] [Y0, Y1] Mux. X Mux. Y • 2 multiplexores de 4 entradas y 1 salida DT [S0, S3] • La salida del registro acumulador, puede transferirse a diferentes elementos Acumulad. Bus de Datos AT Bus de Direcciones Ejemplo de un computador elemental (VII)Unidad aritmético-lógica (I) La unidad aritmético-lógica consta de los siguientes elementos: • Señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Salida B del BR de CP de CP de A de A de B de B de B Lac Lac dat [X0, X1] [Y0, Y1] Operador Operador Operador [S0, S3] S.B [X0, X1] [X0, X1] [Y0, Y1] [Y0, Y1] Mux. X Mux. Y Mux. Y Mux. X Mux. X Mux. Y DT DT + Lac [S0, S3] [S0, S3] Acumulad. Dato a sumar Acumulad. Acumulad. Bus de Datos AT AT Bus de Direcciones Bus de Direcciones Ejemplo de un computador elemental (VIII)Unidad aritmético-lógica (II) Sumar al contenido de la Salida B del banco de registros con el B.Dat [X0,X1] [Y0,Y1] [S0,S3] Lac Bus de Datos Tema 3: Unidad de Control Estructura y Organización de Computadores
La unidad de direccionamiento se encarga de generar las direcciones ya sean de memoria o de puertos de E/S • El CP debe actualizarse cada vez que se ejecuta una instrucción Lcp CP • La actualización vendrá dado por la información disponible en el bus de datos a la ALU Bus de Datos Tcp Bus de Direcciones Ejemplo de un computador elemental (IX)Unidad de direccionamiento (I) Tema 3: Unidad de Control Estructura y Organización de Computadores
Volcar el contenido de CP al bus de direcciones Lcp CP a la ALU Bus de Datos Tcp Tcp Bus de Direcciones Ejemplo de un computador elemental (X)Unidad de direccionamiento (II) Lcp Tcp Tcp Tema 3: Unidad de Control Estructura y Organización de Computadores
La UC genera todas las señales que forman el bus de control Li Bus de Datos Cnt. F Desp/DI Reg. Ins. • Registro de instrucciones Dit Oscil • Puerto de salida reloj Reset • Registro de estado Dir. A Unidad de Control Lflags • Registro contador de fases R. Flags Dir. B señales de control Ejemplo de un computador elemental (XI)Unidad de control (I) Consta de los elementos siguientes: Tema 3: Unidad de Control Estructura y Organización de Computadores
Carga en el registro de instrucción del código máquina de la instrucción Li Li Bus de Datos Bus de Datos Cnt. F Cnt. F Desp/DI Desp/DI Reg. Ins. Reg. Ins. Dit Dit Oscil Oscil reloj reloj Reset Reset Li Reg. Ins. Dir. A Dir. A Unidad de Control Unidad de Control Lflags Lflags R. Flags R. Flags Dir. B Dir. B señales de control señales de control Ejemplo de un computador elemental (XII)Unidad de control (II) Código máquina Instrucción Li Dir. A Dir. B Dit Reset Tema 3: Unidad de Control Estructura y Organización de Computadores
Lcp Lcp CP CP Mem Mem Salida A Salida B Salida A Salida B Memoria Principal Memoria Principal Rd Mux. X Mux. Y Reg Dir Reg Dir Rd Mux. X Mux. Y [X0, X1] [Y0, Y1] Banco de Registros (8 registros) Banco de Registros (8 registros) [X0, X1] [Y0, Y1] Wr Dir. B Dir. B Wr Dir. A Dir. A [S0, S3] [S0, S3] Operador Operador Ldir Ldir Lac Lac Rd Rd Tcp Acumulador Tcp Acumulador Buffer Bidireccional Buffer Bidireccional Pta. Entrada Pta. Entrada Lr Lr AT AT DT DT Bus de Datos Bus de Datos Bus de Direcciones Bus de Direcciones Dit Dit Li Reset Li Reset Desp /D.I. Desp /D.I. C. Fases C. Fases Oscilador Oscilador Reg. Instr. Reg. Instr. reloj reloj Unidad de Control Unidad de Control Lflags Lflags R. Estado Reg. Estado señales de control señales de control Ejemplo de un computador elemental (XIII) Tema 3: Unidad de Control Estructura y Organización de Computadores
El formato de la instrucción es el siguiente y ocupa una palabra: Reg Reg desplazamiento Cód. operación E D SUB 11 12 15 16 31 0 7 8 Ejecución de instrucciones (I)Ejecución de SUB D, [E + 1234h] (I) • Instrucción a ejecutar: SUB D, [E + 1234h] D D - Memoria ( E + 1234h) • Instrucción aritmética con direccionamiento directo relativo a registro Tema 3: Unidad de Control Estructura y Organización de Computadores
Reg Dir Lcp CP Ldir Salida A Salida B Mux. X Mux. Y [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp CP Oscilador Operador Memoria Principal Reg Dir Acumulador Li Reset Desp /D.I. C. Fases Reg. Instr. Tcp Buffer Bidireccional reloj Pta. Entrada DT AT Tcp Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodo 1 Fase de Fetch (I) Lr Rd Wr Mem Ejecución de instrucciones (II)Ejecución de SUB D, [E + 1234h] (II) Dir. B Dir. A Bus de Datos Bus de Direcciones Direccionar el contador de programa • CP Bus de Direcciones • Cargar R. Dir. con el contenido del B.Dir señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Li Reg. Instr. Buffer Bidireccional Rd Mem Salida A Salida B Mux. X Mux. Y Rd [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp CP Oscilador Operador Memoria Principal Memoria Principal Reg Dir Acumulador Li Reset Desp /D.I. C. Fases Reg. Instr. Tcp Buffer Bidireccional reloj Pta. Entrada Pta. Entrada DT AT Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodos 2-3 Fase de Fetch (II) Lr Rd Wr Mem Ejecución de instrucciones (III)Ejecución de SUB D, [E + 1234h] (III) Dir. B Dir. A Bus de Datos Bus de Direcciones Leer la instrucción de memoria principal • Inicio ciclo memoria, leer • Cargar R. Inst. con el contenido del B.Dat señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Salida A Salida B Mux. X Mux. Y [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp CP Oscilador Operador Memoria Principal Reg Dir Acumulador Li Reset Desp /D.I. C. Fases Reg. Instr. Tcp Buffer Bidireccional reloj Pta. Entrada DT AT Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodo 4 Fase Decodificación Lr Rd Wr Mem Ejecución de instrucciones (IV)Ejecución de SUB D, [E + 1234h] (IV) Dir. B Dir. A Bus de Datos Bus de Direcciones • La Unidad de Control emplea un ciclo de reloj en la decodificación de la instrucción leída señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Lac [S0, S3] Acumulador Mux. Y [Y0, Y1] Salida A Salida B Mux. X Mux. Y [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp CP Oscilador Operador Operador Memoria Principal Reg Dir Acumulador Li Reset Desp /D.I. C. Fases Reg. Instr. Tcp reloj Pta. Entrada DT AT Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodo 5 Fase actualizar CP (I) Lr Rd Wr Mem Ejecución de instrucciones (V)Ejecución de SUB D, [E + 1234h] (V) Dir. B Dir. A Buffer Bidireccional Bus de Datos Bus de Direcciones Incrementar en uno el CP • Seleccionar operando (CP) y operar (Inc) • Cargar Acumulador con el resultado señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Lac Acumulador DT Lcp CP Salida A Salida B Mux. X Mux. Y [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp CP Oscilador Operador Memoria Principal Reg Dir Acumulador Li Reset Desp /D.I. C. Fases Reg. Instr. Tcp reloj Pta. Entrada Pta. Entrada DT AT Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodo 6 Fase actualizar CP(II) Lr Rd Wr Mem Ejecución de instrucciones (VI)Ejecución de SUB D, [E + 1234h] (VI) Dir. B Dir. A Buffer Bidireccional Bus de Datos Bus de Direcciones Cargar el nuevo valor del CP • Acumulador Bus de Datos • Cargar el CP con el contenido del Bus de Datos señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Lac [S0, S3] Mux. X Acumulador Mux. Y [X0, X1] [Y0, Y1] Dit Desp /D.I. Salida A Salida A Salida B Mux. X Mux. Y [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp Reg. E CP Oscilador Operador Operador Memoria Principal Reg Dir Acumulador Li Reset Desp /D.I. C. Fases Reg. Instr. Tcp Buffer Bidireccional reloj Pta. Entrada DT AT Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodo 7 Fase de Ejecución (I) Lr Rd Wr Mem Ejecución de instrucciones (VII)Ejecución de SUB D, [E + 1234h] (VII) Dir. B Dir. A Bus de Datos Bus de Direcciones Calcular la dirección del operando fuente • UC:1234h en B. Datos; Reg. E con Dir.A • Seleccionar operandos y operar (suma) • Cargar Acumulador con el resultado señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
AT Reg Dir Lac Acumulador Ldir Salida A Salida B Mux. X Mux. Y [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp CP Oscilador Operador Memoria Principal Reg Dir Acumulador Li Reset Desp /D.I. C. Fases Reg. Instr. Tcp Buffer Bidireccional reloj Pta. Entrada DT AT Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodo 8 Fase de Ejecución (II) Lr Rd Wr Mem Ejecución de instrucciones (VIII)Ejecución de SUB D, [E + 1234h] (VIII) Dir. B Dir. A Bus de Datos Bus de Direcciones Direccionar el operando fuente • Acumulador Bus de direcciones • Cargar R. Dir. con el contenido del B.Dir señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Lac Lflags [S0, S3] Mux. X Acumulador Mux. Y [X0, X1] Reg. Estado [Y0, Y1] Buffer Bidireccional Rd Salida A Mem Salida A Salida B Mux. X Mux. Y Rd [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp CP Oscilador Operador Operador Memoria Principal Memoria Principal Reg Dir Acumulador Reg. D Li Reset Desp /D.I. C. Fases Reg. Instr. Tcp Buffer Bidireccional reloj Pta. Entrada Pta. Entrada DT AT Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodos 9-10 Fase de Ejecución (III) Lr Rd Wr Mem Ejecución de instrucciones (IX)Ejecución de SUB D, [E + 1234h] (IX) Dir. B Dir. A Bus de Datos Bus de Direcciones Leer operando fuente y realizar operación • Inicio ciclo de memoria y leer • La UC selecciona Reg. D con Dir.A • Selecc. Oper., restar, cargar Ac y mod. Flags señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Banco de Registros (8 registros) Lac Reset Lr Acumulador C. Fases DT Salida A Salida A Salida B Mux. X Mux. Y [X0, X1] [Y0, Y1] Dit Banco de Registros (8 registros) Lac Lcp CP Oscilador Operador Memoria Principal Reg Dir Acumulador Reg. D Li Reg. D Reset Desp /D.I. C. Fases Reg. Instr. Tcp reloj Pta. Entrada DT AT Lflags Reg. Estado [S0, S3] Ldir Rd Unidad de Control Periodo 11 Fase de Ejecución (IV) Lr Rd Wr Mem Ejecución de instrucciones (X)Ejecución de SUB D, [E + 1234h] (X) a la ALU Dir. B Dir. A Buffer Bidireccional Bus de Datos Bus de Direcciones Guardar res. en reg. D y pasar a sig. Ins. • UC pone Reg. D en Dir.A • Acumulador B. Datos • Cargar Banco de Registros y poner el Contador de Fases a cero señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Temporización de las señales de control • El comportamiento de un computador es síncrono. Está gobernado por un reloj • Cada una de las fases de ejecución de una instrucción se realiza en un número determinado de periodos de reloj • Cronograma es el diagrama de las señales que se activan en cada ciclo de reloj correspondiente a cada una de las fases de ejecución de la instrucción Tema 3: Unidad de Control Estructura y Organización de Computadores
Señales asociadas reloj Tcp Ldir Direccionar el contador de programa Mem Tcp • CP Bus de Direcciones Rd Ldir Wr • Cargar Reg. Direcciones con el contenido del B.Dir Li Dit Periodos 2-3 X0,X1 Y0,Y1 Leer la instrucción de memoria principal S0...S3 Mem Rd • Inicio ciclo memoria, leer Lac Dir. A Periodo 1 Fase de Fetch • Cargar R. Ins. con el contenido del B.Dat Li LFlags DT AT Fase Decodificación. Periodo 4 Lcp • La UC emplea un ciclo de reloj en la decodificación de la instrucción leída Lr Reset Cronograma (I)Ejecución de SUB D, [E + 1234h] (I) D E C O D I F I C A C I Ó N Tema 3: Unidad de Control Estructura y Organización de Computadores
Señales asociadas reloj Tcp Ldir Incrementar en uno el CP <Y0,Y1=CP> <S0,S3=Inc> Lac Mem • Seleccionar CP y operar (incrementar) Rd • Cargar Acumulador con el resultado Wr Li Dit X0,X1 Y0,Y1 CP S0...S3 I Lac Dir. A Periodo 6 Periodo 5 Fase actualizar el CP LFlags Cargar el nuevo valor del CP DT AT • Acumulador Bus de Datos Lcp • Cargar el CP con el contenido del Bus de Datos Lr Reset Cronograma (II)Ejecución de SUB D, [E + 1234h] (II) DT Lcp Tema 3: Unidad de Control Estructura y Organización de Computadores
Señales asociadas reloj Periodo 7 Fase de Ejecución Tcp DIT <Dir A = E> <X0,X1=BD> <Y0.Y1=E> <S0,S3=+> Lac Ldir Calcular la dirección del operando fuente Mem • UC:1234h en B. Datos y Reg. E en Dir.A Rd • Seleccionar operandos y operar (suma) Wr • Cargar Acumulador con el resultado Li Dit X0,X1 BD Y0,Y1 E S0...S3 + Lac Dir. A Periodo 8 E LFlags Direccionar el operando fuente DT AT • Acumulador Bus de direcciones Lcp • Cargar Reg. Direcciones con el contenido del B.Dir Lr Reset Cronograma (III)Ejecución de SUB D, [E + 1234h] (III) AT Ldir Tema 3: Unidad de Control Estructura y Organización de Computadores
Señales asociadas reloj Tcp Mem, Rd <Dir A = D> <X0,X1=BD> <Y0,Y1=D> <S0,S3=-> Lac Lflags Ldir Leer el operando fuente y realizar operac. Mem • Inicio ciclo de memoria y leer Rd • La UC pone Reg. D con Dir.A Wr • Selec.Oper, restar, cargar Ac y mod.Flags Li Dit BD X0,X1 D Y0,Y1 - S0...S3 Lac D D Dir. A Periodo 11 Periodos 9-10 Fase Ejecución (cont) LFlags Guardar resultado en reg. D y poner C. Fases a cero DT AT • UC pone Reg. D en Dir.A Lcp • Acumulador B. Datos Lr • Cargar B.R. y poner C. Fases a cero Reset Cronograma (IV)Ejecución de SUB D, [E + 1234h] (IV) <Dir A = D> DT Lr Reset Tema 3: Unidad de Control Estructura y Organización de Computadores
reloj Tcp D E C O D I F I C A C I Ó N Ldir Mem Rd Wr Li Dit X0,X1 BD BD Y0,Y1 CP E D S0...S3 I + - Lac Dir. A E D D LFlags DT AT Lcp Lr Reset Cronograma (V)Ejecución de SUB D, [E + 1234h] (V) Tema 3: Unidad de Control Estructura y Organización de Computadores
Reg Dir Lcp CP reloj Ldir Tcp Ldir Salida A Salida B Mem Mux. X Mux. Y [X0, X1] [Y0, Y1] Rd Dit Banco de Registros (8 registros) Wr Lcp Lac CP Oscilador Li Memoria Principal Operador Reg Dir Acumulador Reset Li C. Fases Desp /D.I. Dit Reg. Instr. Buffer Bidireccional reloj Tcp X0,X1 Pta. Entrada DT Y0,Y1 AT S0...S3 Lflags Tcp Reg. Estado Lac [S0, S3] Ldir Dir. A Rd Unidad de Control LFlags Lr DT Rd Wr AT Periodo 1 Fase de Fetch Mem Lcp • Direccionar el contador de programa Lr Reset Generación de las señales de control (I)Ejecución de SUB D, [E + 1234h] (I) Dir. B Dir. A Bus de Datos Bus de Direcciones señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Li Reg. Instr. Buffer Bidireccional Rd reloj Tcp Ldir Mem Salida A Salida B Mem Rd Mux. X Mux. Y [X0, X1] [Y0, Y1] Rd Dit Banco de Registros (8 registros) Wr Lcp Lac Oscilador CP Memoria Principal Li Memoria Principal Operador Reg Dir Acumulador Reset Li C. Fases Desp /D.I. Dit Reg. Instr. Buffer Bidireccional reloj Tcp X0,X1 Pta. Entrada Pta. Entrada DT Y0,Y1 AT S0...S3 Lflags Reg. Estado Lac [S0, S3] Ldir Dir. A Rd Unidad de Control LFlags Lr DT Rd Wr AT Periodos 2-3 Fase de Fetch (cont.) Mem Lcp • Leer la instrucción de memoria principal Lr Reset Generación de las señales de control (II)Ejecución de SUB D, [E + 1234h] (II) Dir. B Dir. A Bus de Datos Bus de Direcciones señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
reloj Tcp Ldir Salida A Salida B Mem Mux. X Mux. Y [X0, X1] [Y0, Y1] Rd Dit Banco de Registros (8 registros) Wr Lcp Lac Oscilador CP Li Memoria Principal Operador Reg Dir Acumulador Reset Li C. Fases Desp /D.I. Dit Reg. Instr. Buffer Bidireccional reloj Tcp X0,X1 Pta. Entrada DT Y0,Y1 AT S0...S3 Lflags Reg. Estado Lac [S0, S3] Ldir Dir. A Rd Unidad de Control LFlags Lr DT Rd Wr AT Fase Decodificación Periodo 4 Mem Lcp • La UCl emplea un ciclo de reloj en la decodificación de la instrucción leída Lr Reset Generación de las señales de control (III)Ejecución de SUB D, [E + 1234h] (III) D E C O D I F I C A C I Ó N Dir. B Dir. A Bus de Datos Bus de Direcciones señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Lac Mux. X Acumulador Mux. Y [X0, X1] [Y0, Y1] reloj Tcp Ldir Salida A Salida B Mem Mux. X Mux. Y [X0, X1] [Y0, Y1] Rd [S0, S3] Operador Dit Banco de Registros (8 registros) Wr Lcp Lac CP Oscilador Li Memoria Principal Operador Reg Dir Acumulador Reset Li C. Fases Desp /D.I. Dit Reg. Instr. reloj Tcp X0,X1 Pta. Entrada DT Y0,Y1 CP AT S0...S3 + Lflags Reg. Estado Lac [S0, S3] Ldir Dir. A Rd Unidad de Control LFlags Lr DT Rd Wr AT Periodo 5 Fase actualizar el CP Mem Lcp • Incrementar en uno el CP Lr Reset Generación de las señales de control (IV)Ejecución de SUB D, [E + 1234h] (IV) Dir. B Dir. A Buffer Bidireccional Bus de Datos Bus de Direcciones señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Lac Acumulador DT Lcp CP reloj Tcp Ldir Salida A Salida B Mem Mux. X Mux. Y [X0, X1] [Y0, Y1] Rd Dit Banco de Registros (8 registros) Wr Lcp Lac CP Oscilador Li Memoria Principal Operador Reg Dir Acumulador Reset Li C. Fases Desp /D.I. Dit Reg. Instr. reloj Tcp X0,X1 Pta. Entrada Pta. Entrada DT Y0,Y1 AT S0...S3 Lflags Reg. Estado Lac [S0, S3] Ldir Fase actualizar CP (II) Periodo 6 Dir. A Rd Unidad de Control LFlags Lr DT Rd Wr AT Mem Lcp • Cargar el nuevo valor del CP Lr Reset Generación de las señales de control (V)Ejecución de SUB D, [E + 1234h] (V) Dir. B Dir. A Buffer Bidireccional Bus de Datos Bus de Direcciones señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Lac [S0, S3] Mux. X Acumulador Mux. Y [X0, X1] [Y0, Y1] Dit Desp /D.I. reloj Tcp Salida A Ldir Salida A Salida B Mem Mux. X Mux. Y [X0, X1] [Y0, Y1] Dir. B Dir. A Rd Dit Banco de Registros (8 registros) Reg. E Wr Lcp Lac CP Oscilador Memoria Principal Operador Operador Reg Dir Li Acumulador Li Reset C. Fases Desp /D.I. Reg. Instr. Dit Buffer Bidireccional reloj Tcp Bus de Datos X0,X1 Bus de Direcciones BD Pta. Entrada DT Y0,Y1 E AT Lflags S0...S3 + Reg. Estado Ldir [S0, S3] Lac Dir. A Unidad de Control E Rd LFlags Lr señales de control DT Rd Wr AT Periodo 7 Fase de Ejecución Mem Lcp • Calcular la dirección del operando fuente Lr Reset Generación de las señales de control (VI)Ejecución de SUB D, [E + 1234h] (VI) Tema 3: Unidad de Control Estructura y Organización de Computadores
Reg Dir AT Lac Acumulador Ldir reloj Tcp Ldir Salida A Salida B Mem Mux. X Mux. Y [X0, X1] [Y0, Y1] Rd Dit Banco de Registros (8 registros) Wr Lcp Lac CP Oscilador Memoria Principal Operador Reg Dir Li Acumulador Li Reset C. Fases Desp /D.I. Reg. Instr. Dit Buffer Bidireccional reloj Tcp X0,X1 Pta. Entrada DT Y0,Y1 AT Lflags S0...S3 Reg. Estado Ldir [S0, S3] Lac Dir. A Unidad de Control Rd LFlags Fase de Ejecución (II) Periodo 8 Lr DT Rd Wr • Direccionar el operando fuente AT Mem Lcp Lr Reset Generación de las señales de control (VII)Ejecución de SUB D, [E + 1234h] (VII) Dir. B Dir. A Bus de Datos Bus de Direcciones señales de control Tema 3: Unidad de Control Estructura y Organización de Computadores
Lflags Lac [S0, S3] Mux. X Reg. Estado Acumulador Mux. Y [X0, X1] [Y0, Y1] Buffer Bidireccional Rd reloj Tcp Salida A Ldir Mem Salida A Salida B Mem Mux. X Mux. Y Rd [X0, X1] [Y0, Y1] Dir. B Dir. A Rd Dit Banco de Registros (8 registros) Wr Lcp Lac CP Oscilador Memoria Principal Memoria Principal Operador Operador Reg Dir Li Reg. D Acumulador Li Reset C. Fases Desp /D.I. Reg. Instr. Dit Buffer Bidireccional reloj Tcp Bus de Datos BD X0,X1 Bus de Direcciones Pta. Entrada Pta. Entrada DT D Y0,Y1 AT - Lflags S0...S3 Reg. Estado Ldir [S0, S3] Lac D Dir. A Unidad de Control Rd LFlags Lr señales de control DT Rd Wr AT Periodos 9-10 Fase de Ejecución (III) Mem Lcp • Leer el operando fuente y realizar operación Lr Reset Generación de las señales de control (VIII)Ejecución de SUB D, [E + 1234h] (VIII) Tema 3: Unidad de Control Estructura y Organización de Computadores
Banco de Registros (8 registros) Lac Reset C. Fases Lr Acumulador DT reloj Tcp a la ALU Salida A Ldir Salida A Salida B Mem Mux. X Mux. Y [X0, X1] [Y0, Y1] Dir. B Dir. A Rd Dit Banco de Registros (8 registros) Wr Lcp Lac CP Oscilador Buffer Bidireccional Memoria Principal Operador Li Reg Dir Reg. D Reg. D Acumulador Li Reset C. Fases Desp /D.I. Dit Reg. Instr. reloj Tcp Bus de Datos X0,X1 Bus de Direcciones Pta. Entrada DT Y0,Y1 AT Lflags S0...S3 Reg. Estado Buffer instruc. Lac Ldir [S0, S3] D Dir. A Unidad de Control Fase de Ejecución (IV) Periodo 11 Rd LFlags Lr señales de control DT • Guardar resultado en reg. D y poner C. Fases a cero Rd Wr AT Mem Lcp Lr Reset Generación de las señales de control (IX)Ejecución de SUB D, [E + 1234h] (IX) Tema 3: Unidad de Control Estructura y Organización de Computadores
Operaciones elementales: transferencia y proceso Operaciones elementales: transferencia y proceso Partes y el funcionamiento de un computador elemental Partes y el funcionamiento de un computador elemental Operaciones elementales de la ejecución de una instrucción en un computador elemental Operaciones elementales de la ejecución de una instrucción en un computador elemental Diseño de cronogramas asociados a la ejecución de instrucciones para un computador elemental a partir de las operaciones elementales Diseño de cronogramas asociados a la ejecución de instrucciones para un computador elemental a partir de las operaciones elementales Ideas principales Tema 3: Unidad de Control Estructura y Organización de Computadores