Microprocesador

Anuncio
Microprocesadores
B) Arquitectura generalizada
de una computadora
LAS COMPONENTES
PRINCIPALES DE UNA
MICROCOMPUTADORA SON:
Carlos Canto Q.
Microprocesadores
La Unidad Central de
Procesamiento,CPU
constituido por el
Microprocesador
CPU
C. Canto /99
Carlos Canto Q.
Microprocesadores
LA UNIDAD DE MEMORIA
CONFORMADA POR :
9MEMORIA DE SOLO LECTURA
O ROM (READ ONLY MEMORY)
9 MEMORIA DE LECTO-ESCRITURA
O RAM (RANDOM ACCESS MEMORY)
CPU
MEMORIA
MEMORIA
ROM
RAM
C. Canto /99
Carlos Canto Q.
Microprocesadores
LA UNIDAD DE ENTRADAS Y SALIDAS
LOSMEDIOS
MEDIOSPARA
PARAINTRODUCIR
INTRODUCIRYY
LOS
OBTENERDATOS
DATOSDE
DELA
LA
OBTENER
COMPUTADORA
COMPUTADORA
CPU
MEMORIA
MEMORIA
ROM
RAM
PUERTOS
DE
E/S
C. Canto /99
Carlos Canto Q.
Microprocesadores
El medio físico de transporte de los datos entre el
microprocesador y las otras componentes del sistema
Es el que determina el número de bits del microprocesador
La transferencia de datos es en ambas direcciones
BUS DE DATOS
CPU
MEMORIA
MEMORIA
ROM
RAM
PUERTOS
DE
E/S
C. Canto /99
Carlos Canto Q.
Microprocesadores
9 ES UNIDIRECCIONAL Y TRANSPORTA DIRECCIONES PARA LA
MEMORIA Y LOS PUERTOS DE ENTRADA Y SALIDA
9 LAS DIRECCIONES LAS EMITE EL MICROPROCESADOR
BUS DE DATOS
CPU
MEMORIA
MEMORIA
ROM
RAM
PUERTOS
DE
E/S
BUS DE DIRECCIONES
C. Canto /99
Carlos Canto Q.
Microprocesadores
„
SIRVE PARA QUE EL MICROPROCESADOR ENVIE O
RECIBA SEÑALES DE CONTROL PARA
SINCRONIZARSE CON LAS DEMÁS COMPONENTES
DEL SISTEMA
BUS DE DATOS
CPU
MEMORIA
MEMORIA
ROM
RAM
PUERTOS
DE
E/S
BUS DE DIRECCIONES
BUS DE CONTROL
C. Canto /99
Carlos Canto Q.
Microprocesadores
PERIFÉRICOS DE
DE ENTRADA
ENTRADA YY DE
DE SALIDA
SALIDA
PERIFÉRICOS
„
„
Periféricos de entrada: equipos que nos permitirán
introducir datos a la computadora, como por
ejemplo, el teclado.
Periféricos de salida :Nos permiten obtener datos de
la computadora, como ejemplo, una impresora
BUS DE DATOS
CPU
MEMORIA
MEMORIA
ROM
RAM
PUERTOS
DE
E/S
Periférico
de Salida
Periférico
de
entrada
BUS DE DIRECCIONES
BUS DE CONTROL
C. Canto /99
Carlos Canto Q.
Microprocesadores
PRINCIPALES COMPONENTES DE UNA COMPUTADORA
BUS DE DATOS
CPU
MEMORIA
MEMORIA
ROM
RAM
PUERTOS
DE
E/S
Periférico
de Salida
Periférico
de
entrada
BUS DE DIRECCIONES
BUS DE CONTROL
C. Canto /99
Carlos Canto Q.
MICROPROCESADORES
LA UNIDAD CENTRAL DE PROCESAMIENTO
Carlos Canto Q.
MICROPROCESADORES
La Unidad Central de Procesamiento CPU
„ La Unidad Central de Procesamiento o
CPU (Central Processing Unit) también se
le conoce como:
9 Procesador Central
9 Microprocesador
Carlos Canto Q.
MICROPROCESADORES
Las funciones más importantes
de la CPU son:
„
„
„
„
Controlar el procesamiento de las
instrucciones.
Realizar las instrucciones lógicas y
aritméticas.
Proporcionar las señales internas y
externas de sincronización.
y otras operaciones de control
Carlos Canto Q.
MICROPROCESADORES
La CPU está conformada por:
La Unidad de control
9 La Unidad Lógica y
Aritmética o ALU
9 Los registros Internos
9
Carlos Canto Q.
MICROPROCESADORES
ARQUITECTURA ESTÁNDARD DE UN MICROPROCESADOR
Acumulador
Acumulador
FLAGS
FLAGS
REGISTROS
REGISTROS
NTERNOS
NTERNOS
DE
DE1616BITS
BITS
REGISTROS
REGISTROS
NTERNOS
NTERNOS
DE
DE88BITS
BITS
CONTROL
CONTROL
ALU
ALU
Carlos Canto Q.
MICROPROCESADORES
ARQUITECTURA ESTÁNDARD DE UN MICROPROCESADOR
BUS EXTERNO DE DATOS
BUS INTERNO
DE DATOS ( 8 BITS)
ACUMULADOR
BANDERAS
REGISTRO N
REGISTRO 0
CONTADOR
DEPROGRAMA
APUNTADOR DE STACK
C
UNIDAD
ALU
DE
CONTROL
REGISTROS DE DATOS DE 8 BITS
Z
DESPLAZADOR
BUS DE
DIRECCIONES ( 16 BITS)
Carlos Canto Q.
MICROPROCESADORES
Tareas de la Unidad de Control :
BUS EXTERNO DE DATOS
REGISTRO DE
INSTRUCCIÓN
DECODIFICADOR
DE
INSTRUCCIÓN
GENERADOR
DE RELOJ
CIRCUITO DE
CONTROL
GENERADOR DE
SECUENCIAS
SEÑALES EXTERNAS
DE CONTROL ( BUS DE CONTROL)
SEÑALES INTERNAS
DE CONTROL
Trae y retiene la instrucción en
el registro de instrucción
Decodifica o interpreta la
instrucción
Genera la secuencia correcta de
señales internas y externas
para la ejecución de la
instrucción
Carlos Canto Q.
MICROPROCESADORES
La Unidad Lógica Aritmética ALU
„
Es la parte de la CPU que realiza las
operaciones lógicas y aritméticas.
Estas operaciones son:
„
9 suma y resta aritméticas
9 funciones lógicas And, Or , Xor, Complemento
9 Desplazamientos y rotaciones
„
En estas operaciones un operando y el
resultado serán contenidos en el
Acumulador.
Carlos Canto Q.
MICROPROCESADORES
DIAGRAMA DE BLOQUES DE LA ALU
BUS DE DATOS
ACUMULADOR
Registro de datos
BANDERAS
ALU
Desplazador
Carlos Canto Q.
MICROPROCESADORES
Los Registros Internos de la CPU
Carlos Canto Q.
MICROPROCESADORES
Los Registros Internos de la CPU
Los Registros De Propósito General
Se llaman así porque su rol no está especificado.
Carlos Canto Q.
MICROPROCESADORES
Los Registros Internos de la CPU
Los Registros De Propósito General
ƒSon proporcionados para que la ALU pueda manipular datos a alta
veloocidad.
ƒLa implementación con flip-flops MOS permite el más rápido nivel de
memoria disponible, y sus contenidos pueden ser accesados dentro de
décimas de nanosegundos .
ƒCada uno de estos registros es un grupo de 8 flip-flops, conectados al
bus de datos interno bidereccional .
ƒEstos 8 bits pueden ser transferidos simultáneamente hacia y del bus
de datos. Pueden contener cualquier dato manejado por el programa
ƒEstos registros En algunos microprocesadores (como el Z80), tienen la
facilidad de manipular dos de estos registros al mismo tiempo. Agrupados
así se les llama “PAR DE REGISTROS”. Este arreglo facilita el
almacenamiento de cantidades de 16 bits , inclusive direcciones.
Carlos Canto Q.
MICROPROCESADORES
Los Registros Internos de la CPU
Registros de Propósito Específico
(registros de direcciones)
Los dos registros de propósito específico que todo microprocesador
debe contener son :
‰ El Contador de Programa PC (ProgramCounter)
‰ Apuntador de Stack SP (Stack Pointer).
Carlos Canto Q.
MICROPROCESADORES
Los Registros Internos de la CPU
Ya que estos dos registros manejan direcciones de
memoria definamos primero , lo que es una
dirección
Dirección:
‰ Es un grupo de bits, codificados en binario, que sirven
para diferenciar una ubicación de memoria con respecto
a otra (dirección de memoria) o para especificar algún
puerto de entrada o salida ( dirección de puertos de E/S).
Carlos Canto Q.
MICROPROCESADORES
Los Registros Internos de la CPU
Las direcciones las envía el µProcesador, por el
bus de direcciones.
Bus de direcciones
CPU
CPU
Memoria
Memoria
Puertos
Puertos de
de
E/S
E/S
Carlos Canto Q.
MICROPROCESADORES
El contador de programa (PC)
„
„
„
„
Es un registro que existe en todos los
microprocesadores
Registro de 16 bits y su contenido siempre es una
dirección de memoria
Contiene la dirección del inicio de la siguiente
instrucción que será ejecutada.
El programador solo puede salvarlo o cargarlo , no le
podrá realizar ninguna operación ni lógica ni
aritmética.
Carlos Canto Q.
MICROPROCESADORES
El contador de programa (PC)
Dirección de
memoria
100H
101H
102H
103H
104H
105H
106H
107H
108H
109H
10AH
10BH
10CH
Contenido del PC al final
de cada instrucción
Instrucción 1
Instrucción 1
Instrucción 2
Instrucción 3
Instrucción 4
Instrucción 4
Instrucción 5
Instrucción 5
Instrucción 6
Instrucción 6
Instrucción 7
Instrucción 8
101H
103H
106H
107H
108H
109H
10BH
El PC siempre contiene la
dirección de memoria donde
se encuentra la siguiente
instrucción a ejecutar.
La CPU incrementa
automáticamente el
contenido del PC en 1,2,3 ó 4
dependiendo de la longitud
de la instrucción que se
ejecuta
10DH
Carlos Canto Q.
MICROPROCESADORES
El contador de programa (PC)
El contenido del PC se deposita al bus de direcciones
y se pasa a la memoria en la primera acción de la fase
de “FETCH” ( búsqueda de una instrucción).
„
Carlos Canto Q.
MICROPROCESADORES
El contador de programa (PC)
Función del PC al capturar una instrucción de
la memoria
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
PUSH
Último
El
El último
último dato
dato que
que
entra
entra
al
al Stack
Stack se
se encuentra
encuentra
en
en la
la parte
parte superior
superior
Dato en entrar
del
del Stack
Stack
1er. Dato en entrar
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
POP
1er. Dato en salir
Último Dato en salir
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Es un grupo de registros o localidades de memoria RAM
estructuradas de tal forma que el primer dato introducido será el
último en ser extraido. A esta estructura se le llama LIFO (Last
Input First Output).
POP
El
El último
último dato
dato que
que
sale
sale del
del Stack
Stack es
es
el
primero
que
se
el primero que se
introdujo
introdujo
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
El Stack pointer contiene la dirección de la parte
superior del Stack, apuntando al último elemento
introducido al Stack
SP
Carlos Canto Q.
MICROPROCESADORES
El Stack o Pila
Técnicas
Técnicas de
de implementación
implementación
del
del Stack
Stack
Stack
Stackpor
por
software
software
Stack
Stackpor
por
hardware
hardware
Carlos Canto Q.
MICROPROCESADORES
El Apuntador de Stack o Stack Pointer (SP)
Carlos Canto Q.
MICROPROCESADORES
Ejemplo de ejecución de una instrucción
Carlos Canto Q.
MICROPROCESADORES
Ejemplo de ejecución de una instrucción
Se requiere ejecutar la instrucción siguiente:
R0ÅA+R1
Carlos Canto Q.
MICROPROCESADORES
Ejemplo de ejecución de una instrucción
Carlos Canto Q.
MICROPROCESADORES
Un Microprocesador generalizado
POWER
GND
CLOCK
BUS
BUSDE
DE
DIRECCIONES
DIRECCIONES
RECONOCIMIENTO
RECONOCIMIENTO
DE
DEPETICIONES
PETICIONES
UNIDAD
UNIDADCENTRAL
CENTRAL
DE
DEPROCESAMIENTO
PROCESAMIENTO
SOLICITUDES
SOLICITUDES
EXTERNAS
EXTERNAS
BUS
BUSDE
DE
DATOS
DATOS
SEÑALES
SEÑALESDE
DE
STATUS
STATUSYYCONTROL
CONTROL
EXTERNAS
EXTERNAS
MMEMORY READ
MEMORY WRITE
IO READ
IO WRITE
STATUS
Carlos Canto Q.
Descargar