03 Arquitectura de un Microprocesador

17

Click here to load reader

description

Arquitectura de un microprocesador de 8 bits

Transcript of 03 Arquitectura de un Microprocesador

Page 1: 03 Arquitectura de un Microprocesador

[email protected]

1

ARQUITECTURA DE LOS ARQUITECTURA DE LOS MICROPROCESADORESMICROPROCESADORES

DE 8 BITSDE 8 BITS

Elaborado por: Ing. Jaime E. Velarde

Page 2: 03 Arquitectura de un Microprocesador

[email protected]

2

• 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.

Page 3: 03 Arquitectura de un Microprocesador

[email protected]

3

• 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.

Page 4: 03 Arquitectura de un Microprocesador

[email protected]

4

7 0

REGISTRO ACUMULADOR

REGISTRO DE BANDERASS, C, Z, etc.

ALU DE8 BITS

7 0

REGISTROS TEMPORALES

REGISTROS TEMPORALES

7 0

Page 5: 03 Arquitectura de un Microprocesador

[email protected]

5

• 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.

Page 6: 03 Arquitectura de un Microprocesador

[email protected]

6

• 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.

Page 7: 03 Arquitectura de un Microprocesador

[email protected]

7

7 0

REGISTRO ACUMULADOR

REGISTRO DE INSTRUCCIONES

REGISTRO DE BANDERASS, C, Z, etc.

ALU DE8 BITS

DECODIFICADOR DEINSTRUCCIONES

BUS DE CONTROL

7 0

REGISTROS TEMPORALES

REGISTROS TEMPORALES

7 0

CIRCUITOS LÓGICOS GENERADORES

DE TIEMPO Y DE CONTROL

7 0

Page 8: 03 Arquitectura de un Microprocesador

[email protected]

8

• 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.

Page 9: 03 Arquitectura de un Microprocesador

[email protected]

9

• 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.

Page 10: 03 Arquitectura de un Microprocesador

[email protected]

10

BUS DE DATOS D7…D0

7 0

REGISTRO ACUMULADOR

REGISTRO DE INSTRUCCIONES

REGISTRO DE BANDERASS, C, Z, etc.

ALU DE8 BITS

7 0BUFFER DEL BUS DE DATOS

DECODIFICADOR DEINSTRUCCIONES

BUS DE CONTROL

BUS DE DATOS INTERNO (8 BITS)

BUS DE DATOS INTERNO (8 BITS)

7 0

REGISTROS TEMPORALES

REGISTROS TEMPORALES

7 0

CIRCUITOS LÓGICOS GENERADORES

DE TIEMPO Y DE CONTROL

7 0

Page 11: 03 Arquitectura de un Microprocesador

[email protected]

11

• 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.

Page 12: 03 Arquitectura de un Microprocesador

[email protected]

12

BUFFER DE UN BIT DE DATOS

Lectura o ingreso al microprocesador Escritura o salida del microprocesador

Page 13: 03 Arquitectura de un Microprocesador

[email protected]

13

BUS DE DATOS D7…D0

7 0

REGISTRO ACUMULADOR

REGISTRO DE INSTRUCCIONES

REGISTRO DE BANDERASS, C, Z, etc.

REGISTROS DE PROPÓSITO GENERAL

REGISTROS ÍNDICES

REGISTRO CONTADOR DEL PROGRAMA (PC)

REGISTRO PUNTERO DE LA PILA (SP)

ALU DE8 BITS

7 0BUFFER DEL BUS DE DATOS

DECODIFICADOR DEINSTRUCCIONES

BUS DE CONTROL

BUS DE DATOS INTERNO (8 BITS)

BUS DE DATOS INTERNO (8 BITS)

7 0

REGISTROS TEMPORALES

REGISTROS TEMPORALES

7 0

CIRCUITOS LÓGICOS GENERADORES

DE TIEMPO Y DE CONTROL

7 0

15 0

7 0 7 0

REGISTROS ESPECIALIZADOS

REGISTROS ESPECIALIZADOS

Page 14: 03 Arquitectura de un Microprocesador

[email protected]

14

• 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.

Page 15: 03 Arquitectura de un Microprocesador

[email protected]

15

BUS DE DATOS D7…D0

7 0

REGISTRO ACUMULADOR

REGISTRO DE INSTRUCCIONES

REGISTRO DE BANDERASS, C, Z, etc.

REGISTROS DE PROPÓSITO GENERAL

REGISTROS ÍNDICES

REGISTRO CONTADOR DEL PROGRAMA (PC)

REGISTRO PUNTERO DE LA PILA (SP)

BUFFER DEL BUSDE DIRECCIONES

ALU DE8 BITS

7 0BUFFER DEL BUS DE DATOS

BUS DE DIRECCIONES A15...A0

DECODIFICADOR DEINSTRUCCIONES

BUS DE CONTROL

BUS DE DATOS INTERNO (8 BITS)

BUS DE DATOS INTERNO (8 BITS)

7 0

REGISTROS TEMPORALES

REGISTROS TEMPORALES

7 0

CIRCUITOS LÓGICOS GENERADORES

DE TIEMPO Y DE CONTROL

7 0

15 0

7 0 7 0

REGISTROS ESPECIALIZADOS

REGISTROS ESPECIALIZADOS

Page 16: 03 Arquitectura de un Microprocesador

[email protected]

16

BUFFER DE UN BIT DE DIRECCIONES

Cuando existe una dirección válida

Page 17: 03 Arquitectura de un Microprocesador

[email protected]

17

EL Z80 ES EJEMPLO DE UN MICROPROCESADOR DE 8 BITS