Vous êtes sur la page 1sur 51

FASE 1 UNIDAD 1

ARQUITECTURAS
BASADAS EN MICRO
PROCESADORES

Ing. Mario Urrutia Espinoza

11/09/2007 SBM-UCSM/MUE 1
0. Introduccin
Un computador es un sistema secuencial sncrono
complejo
Usa valores lgicos 1 y 0 que se corresponden
con niveles de tensin 5V y 0V (TTL) 3.3V y 0V
(CMOS)
Para analizar sistemas complejos se usan dos
modelos:
- Bottom-up: empieza nivel inferior y se construye hacia
arriba
- Top-down: empieza en nivel superior y se
descompone en mdulos de jerarqua inferior

11/09/2007 SBM-UCSM/MUE 2
Una clasificacin botton-up sera:
- Nivel de componente, leyes de la fsica (P-N)
- Nivel electrnico; R, C, L, transistores, diodos,
etc
- Puertas lgicas; puertas, biestables
- Nivel RTL (Nivel de Transferencia de
Registros); Registros, mdulos
combinacionales y secuenciales
- Nivel PMS (Processor Memory Switch); Buses,
memorias, procesadores
11/09/2007 SBM-UCSM/MUE 3
Arquitectura de Computadoras
a. Arquitectura Harvard
Memoria de instrucciones y datos son
independientes, cada una con sus buses
Propicia el paralelismo
Permite la adecuacin del tamao de las
palabras y los buses a los requerimientos de
las instrucciones y de los datos

11/09/2007 SBM-UCSM/MUE 4
Arquitectura Harvard

11/09/2007 SBM-UCSM/MUE 5
a. Arquitectura Von Neumann
Memoria de instrucciones y datos comparten
un solo sistema de memoria
Comparten buses
Hardware ms sencillo

11/09/2007 SBM-UCSM/MUE 6
CLK CPU UM

U
E/S

PERIFRICOS

Arquitectura Harvard
11/09/2007 SBM-UCSM/MUE 7
Las funciones llevadas a cabo por un sistema
de computacin son:
Procesamiento de datos
Almacenamiento de datos
Transferencia de datos

Para llevar a cabo estas funciones existen las


siguientes unidades:

11/09/2007 SBM-UCSM/MUE 8
1. Unidad Central de Procesos (CPU)
Controla el flujo de datos, los procesa, y gobierna el
secuenciamiento de las acciones.
El sistema, desde que se le alimenta, empieza a
ejecutar instrucciones y no se detiene hasta que se
apaga
Las instrucciones forman programas mediante los
cuales se realiza una determinada accin
Estos programas no slo son los del usuario, sino
tambin los de gestin del sistema completo
Para ello cuenta internamente con una unidad de
control, la ALU y una serie de registros
11/09/2007 SBM-UCSM/MUE 9
1.1 Unidad de Control
Lee de memoria las instrucciones que ejecutar
y secuencia el acceso a los datos y las
operaciones a realizar. (Los datos e
instrucciones estn en memoria)
Una instruccin consta de un cdigo de
operacin y un operando opcional (son datos
para ejecutar la instruccin o la indicacin de
donde encontrarlos)
Una vez accedida la instruccin, la UC la
almacena en el Registro de Instrucciones (IR),
interpreta su cdigo y ejecuta la secuencia de
acciones adecuadas (decodificacin de la
instruccin)
11/09/2007 SBM-UCSM/MUE 10
Entonces, la ejecucin de una instruccin pasa por
las fases de bsqueda de la instruccin,
decodificacin, bsqueda de los operandos y
ejecucin.
Este proceso se abrevia dividindolo en dos: el ciclo
de bsqueda y el ciclo de instruccin.
En el primero, la UC genera las seales adecuadas
para acceder a la memoria y leer la instruccin. Este
ciclo es el mismo para cualquier instruccin
En el segundo, se ejecuta la instruccin. A diferencia
del anterior, este ciclo depende de la instruccin

11/09/2007 SBM-UCSM/MUE 11
1.2 La ALU
Se encarga de realizar las transformaciones
de los datos
Consta de una serie de mdulos que llevan a
cabo operaciones lgico-matemticas
Puede realizar un conjunto de operaciones
aritmticas bsicas y un conjunto de
operaciones lgicas
La operacin a realizar se lleva a cabo a
travs de unas lneas de seleccin

11/09/2007 SBM-UCSM/MUE 12
Las cuatro entradas de A se combinan con las de B generando
una operacin de salida de cuatro bits en F.
La entrada de seleccin de modo S2 distingue entre las
operaciones aritmticas y lgicas.
Las entradas de seleccin S0 y S1 determinan la operacin
aritmtica o lgica. Con las entradas S0 y S1 se pueden elegir
cuatro operaciones aritmticas (con S2 en un estado) y cuatro
lgicas (con S2 en otro estado).
Los acarreos de entrada y salida tienen sentido nicamente en
las operaciones aritmticas.
11/09/2007 SBM-UCSM/MUE 13
Tabla de Funcin Lgica.

S1 S0 Salida Funcin Fi
0 0 F=Ai+Bi OR

0 1 F=AiBi XOR
1 0 F=AiBi AND
1 1 F=A'i NOT

11/09/2007 SBM-UCSM/MUE 14
Tabla de Funcin Aritmtica

Seleccin de Salida N Funcin Descripcin


Funcin
S1 S0 Cin N F
0 0 0 0 A Transferir A
0 0 1 0 A+1 Incrementar A
0 1 0 B A+B Suma agregar B a A
0 1 1 B A+B+1 Suma con acarreo agregar B a A
ms 1
1 0 0 B A+B Agregar el complemento de 1 de B a
A
1 0 1 B A+B+1 Agregar el complemento de 2 de B a
A
1 1 0 Todos unos A-1 Decrementar A

1 1 1 Todos unos A Transferir A

11/09/2007 SBM-UCSM/MUE 15
1.3 Registros Internos
Almacenan resultados parciales al ejecutar las instrucciones
y que tardaran su ejecucin si se utiliza la memoria
Guardan alguna configuracin interna del CPU, ultimas
operaciones realizadas, etc
Principales registros:
- Contador de programa: Almacena la direccin de la
siguiente instruccin a ejecutar
- Registro de instrucciones: Almacena la instruccin que
se ha capturado desde memoria y que se est
ejecutando
- Registro de estado: Informan del resultado de la ltima
operacin realizada en la ALU
- Registros de trabajo: Son varios registros que sirven
como almacenamiento temporal.

11/09/2007 SBM-UCSM/MUE 16
2. Unidad de Memoria

Responsable del almacenamiento de las


instrucciones y los datos.
Hay muchos tipos de memoria. En este tem se
consideran tanto a las de acceso rpido (RAM y
ROM) como a las de almacenamiento masivo y por
tanto lentas
Las diversas tecnologas de almacenamiento
imponen caractersticas, siendo principales el
tiempo de acceso (tiempo necesario para
recuperar un dato almacenado) y el precio por bit.
Ambas guardan relacin: a mayor velocidad de
acceso, mayor precio
11/09/2007 SBM-UCSM/MUE 17
Debido a prestacin/costo, las PC no pueden
implementarse con toda su memoria a gran
velocidad de acceso, estableciendo un diseo
jerrquico, dejando la memoria ms rpida
directamente accesible por el CPU, y la ms lenta en
las capas de jerarqua mas externas
Otras caractersticas son:
volatilidad, capacidad de mantener la informacin en
cuanto se pierda la alimentacin
densidad de informacin, dependiendo de la
tecnologa, permite almacenar informacin ocupando
cada vez menos espacio por bit
La volatilidad define, segn necesidad, el empleo de
dos tipos de memoria: ROM y RAM
11/09/2007 SBM-UCSM/MUE 18
2.1 Capacidad de Almacenamiento
La unidad de almacenamiento es el bit, por lo tanto la capacidad es el
nmero total de bits (N). Pero en general, la informacin se almacena en
grupos de bits n1 (bytes, palabras) accesibles simultneamente.
El nmero de palabras de una memoria o posiciones de memoria (m) se
relaciona:
N = m . n1
Direcciones Contenido (d/i)

El direccionamiento de memoria
es la seleccin de una
determinada posicin de
memoria para introducir
informacin o para leer la que
m contiene. El nmero de variables
binarias o bits necesarios para
poder seleccionar m posiciones
es n2. Tal que:

n2 n1 m=2 n2

11/09/2007 SBM-UCSM/MUE 19
3. Unidad de E/S
Transfiere datos entre el exterior y el
computador
Como existe una amplia variedad de
perifricos hay necesidades de atencin
distintas por parte del CPU.
Por ello existen las interfaces que definen
cmo se van a entender el procesador y el
controlador del perifrico asociado para
intercambiar los datos

11/09/2007 SBM-UCSM/MUE 20
El objetivo de cada transferencia de E/S es
llevar los datos del perifrico a una zona
concreta de memoria y viceversa. Para ello la
CPU programar las acciones a realizar en
los controladores de E/S.
Posteriormente cuando el controlador tenga
los datos listos que lee del perifrico, la CPU
se podr encargar de la sincronizacin y
transferencia a/desde memoria

11/09/2007 SBM-UCSM/MUE 21
Cada controlador de
perifrico tiene una
direccin nica en el
sistema. La interfaz de
E/S decodifica el bus
de direcciones para
detectar que el CPU
se est dirigiendo a l,
en forma similar al
direccionamiento de
memoria

11/09/2007 SBM-UCSM/MUE 22
4. Sistema de interconexin: Buses
Mecanismo que permite el flujo de datos entre
todas las unidades
Normalmente se les denomina buses y por ellos
se propagan seales elctricas que definen el 1
y el 0 lgicos
Debe haber todo un sistema de sincronismo para
evitar que varios dispositivos transmitan en el
mismo instante de tiempo diferente informacin lo
que producira un error o contencin de bus
Existen 3 tipos de buses: Bus de direcciones, Bus
de datos y Bus de control

11/09/2007 SBM-UCSM/MUE 23
5. Perifricos

Son todos aquellos dispositivos que sin ser


imprescindibles en la estructura de un
computador, son necesarios para suministrar
datos a la mquina o visualizar los resultados

11/09/2007 SBM-UCSM/MUE 24
6. El Sistema Operativo

Concepto inicial: Software que controla hardware


El hardware proporciona la capacidad de
cmputo, y el sistema operativo ponen dicha
capacidad al alcance del usuario, administrando
el hardware para lograr un buen rendimiento

11/09/2007 SBM-UCSM/MUE 25
7. Lenguajes de Alto Nivel, Ensamblador
Y Cdigo Mquina
Una instruccin de un lenguaje de alto nivel es
una construccin cercana al lenguaje humano
pero alejada del lenguaje binario que entienden
las mquinas (cdigo mquina)
Para que el procesador interprete dicha
instruccin debe traducirse a cdigo mquina
(unos y ceros), proceso denominado compilacin
Se puede hacer mas agradable le escritura en
cdigo mquina asignndole un nemnico a cada
instruccin formando el cdigo ensamblador

11/09/2007 SBM-UCSM/MUE 26
8. Flujo de Datos

Como se sabe el proceso de ejecucin de una


instruccin se divide en ciclo de bsqueda y
ciclo de ejecucin de la instruccin
El primero consiste en copiar la instruccin a
ejecutar en el IR. Esto se consigue gracias a
que la CPU almacena la direccin de la
siguiente instruccin a ejecutar en el Contador
de programa. La CPU fija esta direccin en el
bus de direcciones y genera las seales de
lectura
11/09/2007 SBM-UCSM/MUE 27
Una vez almacenada la instruccin en el IR,
se decodifica y la unidad de control lleva a
cabo los pasos necesarios para capturar los
operandos necesarios que pueden estar en
la misma instruccin, en los registros internos
o en memoria
La manera en que se establece el lugar de
almacenamiento de los operandos se conoce
como modos de direccionamiento

11/09/2007 SBM-UCSM/MUE 28
Ordenes de Control

Controlador de Interrupciones Control de E/S Serie

Bus de Datos Interno

Registro
Acumulador
Temporal
Registro de
Instrucciones

Registro de
Estado

Decodificador
B

D
C

E
Arquitectura
de
Instrucciones H L
del
ALU

Puntero de Pila

Contador de programa

Incremento/Decremento
8085
de Direcciones

Reloj UNIDAD DE CONTROL


Buffer de Buffer de
Direcciones Datos

Ordenes de Control Bus de Bus de


direcciones datos/direcciones
A8 - A15 AD0 - AD7
A MEMORIA

Buses direcciones, datos y control 8086/88


LOGICA DE BIU
CONTROL
DE BUS

CS Cola de
DS Instrucciones
Registros Segmento
ES
ES
Puntero de
IP Instrucciones

IR
Arquitectura
UNIDAD DE
CONTROL del
BUS DATOS INTERNO

AH AL
Seales de
control
8086/88
BH BL Registros
CH CL Generales
DH DL
SP R. ESTADO
BP
SI
DI
Registros Puntero EU
UNIDAD DE CONTROL

11/09/2007 SBM-UCSM/MUE 31
1. INTRODUCCION

Estudio a nivel de transferencia de


informacin entre registros
Coordina el funcionamiento de los
registros
Secuenciamiento de las instrucciones a
travs de los cronogramas de ejecucin

11/09/2007 SBM-UCSM/MUE 32
2. REPERTORIO DE INSTRUCCIONES

Lenguajes de alto nivel compilacin


lenguaje mquina (pero por ser muy confuso
manejar 1 y 0 se usan los Nemnicos)
Repertorio de instrucciones: Conjunto de
instrucciones que puede ejecutar la CPU. Debe
cumplir dos condiciones:
- Completitud: debe poder calcular, en tiempo
finito, cualquier tarea computable
- Eficacia: debe permitir una alta velocidad de
clculo
11/09/2007 SBM-UCSM/MUE 33
Caractersticas generales de una instruccin:
Debe realizar una funcin nica y sencilla,
simplificando su decodificacin
Una misma instruccin emplea un nmero fijo de
operandos
Codificacin de instrucciones debe ser sistemtica
Las instrucciones son autocontenidas e
independientes (contienen toda la informacin
necesaria para ejecutarse). Debe expresar: el tipo de
operacin, el valor o posicin donde se hallan los
operandos, el lugar donde tiene que depositarse el
resultado y la ubicacin de la siguiente instruccin
11/09/2007 SBM-UCSM/MUE 34
En conclusin, los elementos constitutivos
de una instruccin mquina son:
Cdigo de operacin:
Referencia a operandos fuente
Referencia al operando resultado

11/09/2007 SBM-UCSM/MUE 35
3. TIPOS DE INSTRUCCIONES

Instrucciones de transferencia
Mueven datos entre registros y entre registros y
memoria.
MOVE destino, origen
Instrucciones aritmticas y lgicas
Llevan a cabo operaciones aritmticas (suma,
resta), incremento, decremento, lgicas (OR,
AND, XOR)
ADD operando1, operando2
11/09/2007 SBM-UCSM/MUE 36
Instrucciones que modifican la secuencia del
programa (Bifurcaciones). Alteran el funcionamiento
habitual del PC. Se dividen en las siguientes, pudiendo
ser cualquiera de ellas incondicionales o condicionales
(dependen del estado de los sealizadores)
Sin retorno:
JUMP direccin
Con posibilidad de retorno, para ello guarda la direccin
de la siguiente instruccin en la Pila:
CALL direccin
De retorno:
RET

11/09/2007 SBM-UCSM/MUE 37
Otras Instrucciones
De rotacin: RAL, RAR
NOP
HALT
INT

11/09/2007 SBM-UCSM/MUE 38
3. MODOS DE DIRECCIONAMIENTO

Este procedimiento sirve para determinar la


ubicacin del operando, que dependiendo de la
instruccin puede estar en:
La propia instruccin, mediante un dato
inmediato
Memoria, mediante la direccin
Registros internos de la CPU
Existen varios tipos de direccionamiento que se
detallan a continuacin
11/09/2007 SBM-UCSM/MUE 39
3.1 Direccionamiento inmediato

Forma mas sencilla pues el operando


est presente en la instruccin
Ventaja: Una vez cargada la instruccin,
no se requiere nuevo acceso a memoria
Desventaja: Rango de valores limitado

11/09/2007 SBM-UCSM/MUE 40
Operando

Instruccin Zona de
cdigo
Registro de Instruccin
CO Operando Inmediato
CO Operando Inmediato

CPU

Unica lectura ciclo Zona de


de busqueda datos

MEMORIA

11/09/2007 SBM-UCSM/MUE 41
3.2 Direccionamiento directo

La instruccin contiene la direccin de memoria


del operando
Ventaja: Sencillez por que no requiere de
clculos previos para conocer la direccin final
del dato
Desventaja: El cdigo de Direccin (CD) debe
tener la suficiente longitud para direccionar
todo el mapa de memoria

11/09/2007 SBM-UCSM/MUE 42
Operando

Instruccin Zona de
cdigo
Registro de Instruccin
CO Direccin del operando
CO Direccin del operando

1ra. lectura ciclo de


CPU bsqueda

Zona de
datos
Operando

MEMORIA
2da. lectura
(operando)

11/09/2007 SBM-UCSM/MUE 43
3.3 Direccionamiento mediante Registro

El operando se encuentra almacenado en


uno de los registros internos del CPU
Ventaja: No precisa de ciclo de lectura
adicional
Desventaja: Rango de valores limitado

11/09/2007 SBM-UCSM/MUE 44
Operando

Instruccin Zona de
cdigo
Registro de Instruccin
CO Referencia a registro
CO Referencia a registro

Unica lectura ciclo de


bsqueda

R0
Zona de
R1: Operando datos

R2

CPU MEMORIA

11/09/2007 SBM-UCSM/MUE 45
3.4 Direccionamiento relativo a Registro
El dato al cual se desea acceder reside en memoria
La direccin efectiva del dato la calcula el procesador
sumando una cantidad (desplazamiento) al valor de un
registro especial
El desplazamiento puede ser un nmero inmediato o
residir en otro registro al cual se le denomina puntero
En la instruccin se debe especificar el desplazamiento
y el identificador del registro (aunque a veces viene
determinado por la instruccin)
Facilita el acceso a un conjunto de posiciones de
memoria especificadas a partir de una posicin de
referencia
11/09/2007 SBM-UCSM/MUE 46
Ventaja: Accede al todo el espacio de
direccionamiento
Desventaja: Complejidad
Existen varios tipos en funcin del registro puntero
utilizado:
a. Direccionamiento relativo al registro PC
b. Direccionamiento relativo al registro base: Usa
como puntero un registro de trabajo o uno dedicado,
al cual se le denomina registro base
c. Direccionamiento relativo a la Pila

11/09/2007 SBM-UCSM/MUE 47
2do ciclo (operando)
Operando

Instruccin Zona de
cdigo
Registro de Instruccin
CO P Desplazamiento
CO P Desplazamiento

1ra lectura ciclo de


bsqueda

Zona de
Registro base datos
Operando

CPU MEMORIA

11/09/2007 SBM-UCSM/MUE 48
3.5 Direccionamiento indexado

Direccionamiento similar al relativo a


registro base
Diferencia: El registro puntero (o ndice,
llamado en este caso) se modifica con
frecuencia en la ejecucin de un
programa
Se usa para recorrer estructuras de datos
(matrices)

11/09/2007 SBM-UCSM/MUE 49
3.6 Direccionamiento indirecto
La direccin especificada en la instruccin no
indica la posicin del dato, sino la direccin
efectiva del dato
Ventaja: Supera la desventaja del
direccionamiento directo
Desventaja: La ejecucin de la instruccin
requiere de dos referencias a memoria
Usado en aplicaciones que usan datos
distanciados en memoria.
Se puede combinar con todos los
direccionamientos relativos vistos anteriormente

11/09/2007 SBM-UCSM/MUE 50
Operando

Instruccin Zona de
cdigo
Registro de Instruccin
CO Direccin 1
CO Direccin 1

1ra. lectura ciclo de


CPU bsqueda

2da. lectura (direccion


Zona de
intermedia)
datos
Direccin 2

Operando

MEMORIA
3ra. lectura (operando)

11/09/2007 SBM-UCSM/MUE 51

Vous aimerez peut-être aussi