180 likes | 474 Views
ARQUITECTURA DE LOS MICROPROCESADORES DE 8 BITS. SISTEMAS MICROPROCESADOS. Elaborado por: Ing. Jaime E. Velarde. Además de la Unidad de Aritmética y Lógica (ALU) y de la Unidad de Control (UC), los microprocesadores contienen REGISTROS.
E N D
ARQUITECTURA DE LOS MICROPROCESADORESDE 8 BITS SISTEMAS MICROPROCESADOS Elaborado por: Ing. Jaime E. Velarde jaime.velarde@epn.edu.ec
Además de la Unidad de Aritmética y Lógica (ALU) y de la Unidad de Control (UC), los microprocesadores contienen REGISTROS. • REGISTRO (register): Es el elemento más pequeño que puede retener un dato. Usado para almacenar temporalmente información dentro de la CPU. Los registros pueden ser de propósito general o especializado. jaime.velarde@epn.edu.ec
REGISTRO DE PROPÓSITO GENERAL (general-purpose register): Son aquellos sobre los que no existe restricción en cuanto a su utilización. Pueden ser empleados como fuente o destino de datos, como contador, como puntero de localidades de memoria o de elementos de E/S. • REGISTROS ESPECIALIZADOS (special-purpose register): Son los registros que están dedicados a realizar alguna función específica. jaime.velarde@epn.edu.ec
7 0 7 0 REGISTRO ACUMULADOR REGISTROS TEMPORALES 7 0 REGISTRO DE BANDERAS S, C, Z, etc. ALU DE 8 BITS jaime.velarde@epn.edu.ec
REGISTRO ACUMULADOR (accumulator): Es el registro base para las operaciones aritméticas y lógicas. Antes de la ejecución de la instrucción contiene uno de los OPERANDOS y después de la ejecución es el que generalmente recibe el resultado. También es registro fuente o destino de las transferencias de datos con la unidad de memoria o con el sistema de entrada / salida. En algunos microprocesadores existe más de un Acumulador. jaime.velarde@epn.edu.ec
REGISTROS TEMPORALES O AUXILIARES (temporal registers) Son registros para uso interno de la CPU, en los que se almacena momentáneamente cierta información y no son accesibles al programador mediante ninguna instrucción. • REGISTRO DE BANDERAS (flag register): Esta formado por un conjunto de biestables, los mismos que indican ciertas condiciones del resultado de las operaciones; como por ejemplo el valor del signo, si hubo o no carry, si es igual a cero o no, etc. jaime.velarde@epn.edu.ec
7 0 7 0 7 0 REGISTRO ACUMULADOR REGISTRO DE INSTRUCCIONES REGISTROS TEMPORALES 7 0 REGISTRO DE BANDERAS S, C, Z, etc. DECODIFICADOR DE INSTRUCCIONES ALU DE 8 BITS CIRCUITOS LÓGICOS GENERADORES DE TIEMPO Y DE CONTROL BUS DE CONTROL jaime.velarde@epn.edu.ec
REGISTRO DE INSTRUCCIONES (instruction register): Es el registro donde se almacena el CÓDIGO DE LA OPERACIÓN de la instrucción que se esta ejecutando, una vez que es traído desde la memoria del programa mediante el Bus de Datos. • DECODIFICADOR DE INSTRUCCIONES (instruction decoder): Es la parte de la Unidad de Control que se encarga de interpretar la instrucción que se encuentra en el Registro de Instrucciones, en base a una memoria ROM que contiene microinstrucciones que controlan la ejecución de las instrucciones. jaime.velarde@epn.edu.ec
CIRCUITOS LÓGICOS GENERADORES DE TIEMPO Y CONTROL (timming and control circuits): Son los circuitos encargados de generar las señales tanto internas como externas que permiten ejecutar las instrucciones. A estos circuitos también llegan las señales externas como las de inicialización, las de espera, las de interrupciones, etc. Es decir, es el bloque que esta directamente relacionado con el Bus de Control. jaime.velarde@epn.edu.ec
BUS DE DATOS D7…D0 7 0 BUS DE DATOS INTERNO (8 BITS) BUFFER DEL BUS DE DATOS 7 0 7 0 7 0 REGISTRO ACUMULADOR REGISTRO DE INSTRUCCIONES REGISTROS TEMPORALES 7 0 REGISTRO DE BANDERAS S, C, Z, etc. DECODIFICADOR DE INSTRUCCIONES ALU DE 8 BITS CIRCUITOS LÓGICOS GENERADORES DE TIEMPO Y DE CONTROL BUS DE CONTROL jaime.velarde@epn.edu.ec
BUS INTERNO (internal bus): Es el bus de comunicaciones entre los distintos componentes del microprocesador, se lo conoce también como el BUS INTERNO DE DATOS. El número de líneas que posee este bus esta determinado por el número de bits que procesa en paralelo la ALU y es uno de los parámetros que clasifican a los microprocesadores. Este bus se encuentra relacionado con el bus externo de datos a través del BUFFER DEL BUS DE DATOS. jaime.velarde@epn.edu.ec
BUFFER DE UN BIT DE DATOS Lectura o ingreso al microprocesador Escritura o salida del microprocesador jaime.velarde@epn.edu.ec
BUS DE DATOS D7…D0 7 0 BUS DE DATOS INTERNO (8 BITS) REGISTROS ESPECIALIZADOS BUFFER DEL BUS DE DATOS 7 0 7 0 7 0 7 0 7 0 REGISTROS DE PROPÓSITO GENERAL REGISTRO ACUMULADOR REGISTRO DE INSTRUCCIONES REGISTROS TEMPORALES REGISTROS ÍNDICES 7 0 REGISTRO DE BANDERAS S, C, Z, etc. DECODIFICADOR DE INSTRUCCIONES ALU DE 8 BITS REGISTRO CONTADOR DEL PROGRAMA (PC) REGISTRO PUNTERO DE LA PILA (SP) 15 0 CIRCUITOS LÓGICOS GENERADORES DE TIEMPO Y DE CONTROL BUS DE CONTROL jaime.velarde@epn.edu.ec
CONTADOR DEL PROGRAMA (program counter PC): Es el que contiene la dirección de la localidad donde se encuentra la siguiente instrucción a ser ejecutada. • PUNTERO DE LA PILA (stack pointer SP): Contiene la dirección de la memoria donde se almacenó el último dato de la PILA o STACK. • REGISTRO ÍNDICE (index register): También contiene una dirección y es utilizado como puntero. El uso de este registro permite que los programas sean más flexibles, ya que para acceder a distintas localidades de memoria, basta especificar un valor que sumado al contenido del registro índice da la dirección real. jaime.velarde@epn.edu.ec
BUS DE DATOS D7…D0 7 0 BUS DE DATOS INTERNO (8 BITS) REGISTROS ESPECIALIZADOS BUFFER DEL BUS DE DATOS 7 0 7 0 7 0 7 0 7 0 REGISTROS DE PROPÓSITO GENERAL REGISTRO ACUMULADOR REGISTRO DE INSTRUCCIONES REGISTROS TEMPORALES REGISTROS ÍNDICES 7 0 REGISTRO DE BANDERAS S, C, Z, etc. DECODIFICADOR DE INSTRUCCIONES ALU DE 8 BITS REGISTRO CONTADOR DEL PROGRAMA (PC) REGISTRO PUNTERO DE LA PILA (SP) 15 0 CIRCUITOS LÓGICOS GENERADORES DE TIEMPO Y DE CONTROL BUFFER DEL BUS DE DIRECCIONES BUS DE DIRECCIONES A15...A0 BUS DE CONTROL jaime.velarde@epn.edu.ec
BUFFER DE UN BIT DE DIRECCIONES Cuando existe una dirección válida jaime.velarde@epn.edu.ec
EL Z80 ES EJEMPLO DE UN MICROPROCESADOR DE 8 BITS jaime.velarde@epn.edu.ec