Sunteți pe pagina 1din 41

ARQUITECTURA DE COMPUTADORAS

MODULO I
1.1 Organizacin y arquitectura
1.2 Jerarqua de niveles de una Computadora
1.3 Evolucin de las computadoras a travs de la historia
1.4 Puntos de vista para el diseo de una arquitectura de
computadora
1.5 Clasificacin de las computadoras y sus instrucciones
1.6 Componentes principales de una computadora
1.7 Funciones de la computadora
1.8 Estructuras de interconexin
1.9 Funciones de entrada y salida
ORGANIZACIN Y ARQUITECTURA DE COMPUTADORAS

1.1 ORGANIZACIN
COMPUTADORAS

ARQUITECTURA

DE

Arquitectura de computadoras
Se refiere a los atributos de un sistema que son visibles para un
programador, a aquellos atributos que tienen un impacto directo
en la ejecucin lgica de un programa. Algunos atributos fsicos
son: el set de instrucciones, nmero de bits para representacin
de datos, mecanismos de E/S y las tcnicas para
direccionamiento de memoria.
Organizacin de computadoras
Se refiere a las unidades funcionales y sus interconexiones, que
dan lugar a especificaciones arquitectnicas. Algunos atributos
de organizacin son: seales de control, interfaces entre el
computador y los perifricos y la tecnologa de memoria usada.
1.2 JERARQUA DE NIVELES DE UNA COMPUTADORA

La computadora es un sistema jerrquico y por lo tanto esta


considerado
como
un
conjunto
de
subsistemas
interrelacionados, cada uno de los cuales, a su vez, se organiza
en una estructura jerrquica, hasta que se alcanza el nivel ms
bajo del subsistema elemental.
La naturaleza jerrquica de este sistema complejo es esencial,
tanto para su diseo, como para su descripcin. Existen tres
fases de estudio de un computadora que se conocen con los
trminos siguientes:
[SOFTWARE]
[FIRMWARE]
[HARDWARE]
Firmware
Los componentes fsicos de un computador (procesador,
memoria, controladores de entrada / salida, etc.) aceptan
distintas configuraciones posibles. Una vez establecida una
configuracin del sistema, sta no cambiar durante un cierto
perodo de tiempo. El firmware ofrece la interfaz entre el
software y la configuracin hardware de un computador. Son un
conjunto de rutinas almacenadas en memorias de slo lectura
cuyos servicios son realizar la interfaz con los perifricos, la
interfaz entre el procesador y la memoria secundaria, etc.
Los niveles jerrquicos que describen un sistema de computo
son los siguientes:

Flip-flops
Son circuitos capaces de tomar en su salida 2 verdades estables
que dependern de sus entradas y del estado de su salida en el
instante anterior. Son muy utilizados para la realizacin de
registros entre sus tipos el mas elemental es el biestable (RS).
Los circuitos combinacionales implementan los elementos
fundamentales de una computadora digital pero no proveen
memoria. Para esto ltimo se usan los circuitos secuenciales los
cuales dependen de la entrada actual y adems de sus
antecesoras.
El flip-flop es la forma mas simple de un circuito secuencial.
Existen varios tipos. Todos ellos tienen dos estados en la
ausencia de entrada, lo mantiene; funcionan como memoria
para un bit; tienen dos salidas una complemento de la otra.

El S-R latch implementado con compuertas NOR

Tabla de verdad S-R


S
0
0
1
1

1.3

R
0
1
0
1

CLK
x

Q
Q0
0
1
-

Q
Q0
0
1
-

No camio
Reset
set
No vlido

EVOLUCION DE LAS COMPUTADORAS A TRAVEZ DE LA HISTORIA

Generaciones de computadoras
Generacin cero(1642-1945).-Computadoras mecnicas
Precursores.
Leonardo da Vinci .- El trabaj en su desarrollo sobre el
papel aunque nunca construy un prototipo.
Blaise Pascal .- Dise y construy una mquina sumadora
accionada por engranajes a esta se le llamo pascalina.
Wilhelm Gottfried Leibniz .- Dise y con el tiempo mejor
su calculadora a la que llam calculadora universal , era
capaz de efectuar por medios mecnicos operaciones de
multiplicacin y divisin.

Joseph Marie Jacquard(1752-1834).- Su telar se cita


tradicionalmente como el pionero de las mquinas
programables; funcionaba con un rollo de papel perforado
intercambiable que contena codificadas las instrucciones.
Charles Babbage(1791-1871).- Se considera como el padre
de la computadora, su inters por las matemticas lo llev a
disear su mquina de diferencias, lo que permiti corregir
un gran numero de errores de las tablas de funciones de la
poca; l quiso ir mas all diseando una mquina
analtica , que contena en germen todas las partes de una
computadora moderna; sus clculos eran determinados por
un sistema de programacin anloga al de la mquina de
Jacquard, contena tambin una memoria capaz de
almacenar hasta mil datos de cincuenta cifras, los
resultados se impriman sobre papel; esta mquina no lleg
a ser construida no obstante realiz un gran nmero de
programas.
Hermann Hollerith .- En la dcada de 1880 realiz la
mquina tabuladora para la oficina del censo de su pas, fue
el primer intento coronado por el xito de automatizar el
tratamiento de un gran nmero de datos. De aqu que fundo
una empresa para su comercializacin que fue el ncleo de
la futura IBM.
Primera generacin(1945-1955).- Bulbos
Los creadores de la ENIAC, Eckert y Mauchly, despus de
construir diversas versiones del ENIAC modificadas segn la
idea de Von Neumann, disearon y construyeron la primera
computadora en serie, el UNIVAC, en 1950 , con un tamao diez
veces menor y una velocidad cien veces mayor que la de su
ancestro.
La caracterstica principal consista en el echo de que empleaba
como componentes bsicos los tubos de vaco, mientras que las
memorias estaban formadas por pequeos anillos de metal
ferromagntico insertados en las intersecciones de una red de
hilos conductores.

La programacin de estas mquinas se hizo , en un principio ,


directamente en cdigo binario; pero no tardaron en aparecer
los primeros programas ensambladores.
La aparicin del primer lenguaje llamado de alto nivel, el
FORTRAN, haca ms fcil la comprensin de los programas.
Segunda generacin(1955-1965).- Transistores
La introduccin de datos se hacia por tarjetas perforadas y se
emplearon dispositivos de almacenamiento externo magnticos,
como cintas y discos.
Se desarrollaron algunos lenguajes de programacin como:
COBOL (1960)
LISP
(1959)
BASIC
(1964)
La mquina ms extendida en esta poca fue la 360 de IBM.
Otro avance fue el trabajo en tiempo compartido (time sharing).
Con ello se aprovecharon los tiempos muertos, en que el
procesador estaba esperando que los perifricos le trasmitieran
datos, para ejecutar otros programas, de modo que en un
momento dado se podan procesar distintos programas
simultneamente.

Tercera generacin(1965-1980).- Circuitos integrados


Vino marcada por una disminucin de tamao medio de las
computadoras. Se hizo rentable un nuevo tipo de computadora
de dimensiones ms reducidas, la microcomputadora .
Se generalizo el trabajo de tiempo compartido y el proceso en
tiempo real mediante teleproceso, hasta estos momentos los
usuarios trabajaban en batch; es decir, tenan que perforar sus
trabajos en tarjetas y dejarlos en los centros de calculo, para

que la computadora los procesara por turno y diera sus


resultados minutos u horas mas tarde.
El tiempo compartido permita trabajar con la computadora a
travs de teclados conectados directamente a la mquina y
obtener, en tiempo real, los resultados en una impresora o en
una terminal de vdeo.
Otra caracterstica importante fue la utilizacin de redes de
terminales perifricos conectados a la unidad central, lo que
permita utilizar la computadora desde lugares alejados.
La miniaturizacin de los circuitos continuaba de modo
acelerado, hasta que, a mediados de los aos 70, la empresa
Intel consigui integrar un procesador completo en un solo chip,
llamado microprocesador, solo que este circuito tenia poca
capacidad.
Cuarta generacin(1980-1999).- PC`S, MC`S, y VLSI
Steve Jobs y A. Wozniak, con gran visin comercial, creaban la
marca
Apple
y
lanzaban
al
mercado
la
primera
microcomputadora. Pronto surgieron programas y dispositivos
perifricos que la hicieron capaz de realizar pequeas tareas de
calculo y gestin de datos.
La evolucin de las microcomputadoras las hizo pronto capaces
de realizar las mismas tareas que sus hermanas las
minicomputadoras, por un coste varias veces menor.
Una tcnica desarrollada para compensar la menor potencia de
estas mquinas es la de red local que permite unir varias
microcomputadoras para intercambiar informacin.
Quinta generacin(2000-20??).- RISC
Las grandes computadoras han ido mejorando en capacidad y
velocidad mediante una miniaturizacin de sus circuitos; es tal
la miniaturizacin que para evacuar el calor desprendido no
basta una simple ventilacin, si no que los circuitos principales
estn sumergidos en nitrgeno liquido(100 grados bajo cero).

Esta generacin no se distingue por el hardware, si no que se


caracteriza por el empleo de programas inteligentes a los que
no es necesario decirles como realizar una tarea, pues basta con
darles la orden y ellos encuentran el modo de ejecutarla.
Tambin por la capacidad y la disminucin de costos.
Se emplean chips de muy alta escala (VLSI Very-Large-ScaleIntegrated) junto a diseos modulares de alta densidad.
INTEL 8086
16 bits 89 instrucciones sin coprocesador
Datos ASCII, BCD, entero, cadenas.
Registros
4
2
2
4
1
1

generales AX, BX, CX, DX.


indices: Si, Pi
punteros: SP, BP.
Segmentos: DS, CS, ES, SS.
estado: Flay
contador de programa: IP.

Direccionamiento:
Modos,
registros,
inmediato,
directo,
indirecto, relatico a base, indexado directo, indexado a base.

1.4 PUNTOS DE VISTA PARA EL DISEO DE UNA


ARQUITECTURA DE COMPUTADORA
Se deben considerar los siguientes puntos:
1)
Analizar las aplicaciones para encontrar las
operaciones clave: el diseador deber encontrar qu es
lo que hacen en realidad los programas que se pretenden
correr.

2)
Disear una trayectoria de datos que sea ptima
para las operaciones clave: la trayectoria de datos
contiene los registros, la ALU y los buses que los conectan.
El tiempo requerido (Tiempo del ciclo de la trayectoria de
datos) para extraer los operandos de sus registros,
moverlos a travs de la ALU y almacenar el resultado de
nuevo en un registro, debe hacerse en el tiempo ms corto
posible.
3)
Disear
instrucciones
que
realicen
las
operaciones clave utilizando la trayectoria de datos
4)
Agregar nuevas instrucciones Debern agregarse
instrucciones de mquina y modos de direccionamiento si
sern usadas con frecuencia y no reducen el desempeo de
las ms importantes.

Nota: Siempre que aparezca una nueva y atractiva


caracterstica, deber evitarse que se afecte al tiempo del
ciclo de la trayectoria de datos.
5)
Repetir este proceso para otros recursos El mismo
proceso debe repetirse para otros recursos dentro de la
CPU, tales como:
Memoria Cache
Administracin de memoria
Coprocesadores de punto flotante
Etc.

1.5 CLASIFICACION DE LAS COMPUTADORAS Y SUS


INSTRUCCIONES
En la actualidad, las computadoras se pueden dividir en cinco
categoras, basndose en el tamao fsico, el desempeo y en
las reas de aplicacin de la siguiente manera:

Computadora personal (IBM PS/2)


Maquinas de escritorio con procesador de una sola pastilla y
dedicadas por lo general a una sola persona. Se usan
principalmente en oficinas, en educacin y en aplicaciones
domsticas.
Minicomputadoras (PDP-11)
Se utilizan en las aplicaciones de control en tiempo real o en la
automatizacin de fabricas. Cuentan con un microprocesador de
32 64 bits, memoria y algunos mdulos de entrada y salida,
todo ello en una sola tarjeta de circuitos.
Supermini (SUN-4)
Es una minicomputadora grande, basada en procesadores de 64
bits y equipada con centenas de Megabytes de memoria.
Utilizadas en los sistemas departamentales de tiempo
compartido, los servidores de red de archivos y muchas otras
aplicaciones.
Macrocomputadoras (IBM 3090/300)
Cuenta con una gran capacidad de E/S y es puede atender
mltiples tareas. Puede contar con mltiples discos de gran
capacidad. Son muy utilizadas en aplicaciones interactivas,
procesos en lote o transacciones tales como las bancarias donde
se requiere de grandes bases de datos.
Supercomputadoras (CRAY-1, CRAY-2, ,CRAY-N)
Diseadas para maximizar el nmero de operaciones de punto
flotante por segundo. Cuenta arquitecturas en paralelo y son
eficientes tan slo para un rango reducido de problemas.

1.6 COMPONENTES PRINCIPALES DE UNA COMPUTADORA


Modelo de Von Newman y Harvard

La Mayora de la computadoras con las que somos familiares son


Maquinas de Von Neumann, estas consisten en 3 componentes
bsicos de hardware :
Un Dispositivo de Entrada y Salida ( I / O System).-Que se
ocupa de recoger los datos de entrada y mostrar la salida.
Est formado por todos los dispositivos tanto de entrada
como de salida que un sistema computador puede tener,
as como de los mtodos que existen para interactuar con
ellos.
Una Unidad Central de Procesamiento (CPU).- que hoy en
da integra tanto la unidad que realiza el procesamiento de
los datos (ALU o Unidad Aritmtico-Lgica) como la unidad
que ejerce el control sobre dicho procesamiento (Unidad de
Control). La ALU realiza las operaciones sobre los datos.
Estos datos provienen de la memoria y pueden estar
almacenados de forma temporal en los registros de la
propia unidad. La Unidad de Control es la encargada de leer
las instrucciones almacenadas en la memoria principal,
interpretarlas y coordinar el funcionamiento del resto de las
unidades del sistema computador para que estas
instrucciones se ejecuten. El estudio de la unidad de
procesamiento implica el anlisis de los diferentes modelos
de ejecucin que existen (monociclo, multiciclos,
segmentado, superescalar, vectorial, supersegmentado...).
Una Memoria.- que almacena tanto instrucciones como
datos de los programas
As como otras caractersticas:
Son Computadoras de Programa Almacenado. La memoria
Principal guarda el programa que controla las operaciones
de la computadora, la computadora puede manipular su
propio programa mas o menos como lo puede hacer
cualquier otra memoria de datos.
Realiza las instrucciones secuencialmente, el CPU ejecuta o
parece ejecutar una operacin a la vez.
Tiene o parece tener un solo sendero(bus) entre la memoria
principal del sistema y el control de la unidad del CPU.

Convencionalmente las maquinas de Von Neumann proveen un


bus para las direcciones y otro para los datos e instrucciones.
BUS
D ire c c io n e s

B U S in s tru c c io n e s
D a to s

La Arquitectura de Harvard es una clase de arquitectura de


Von Neumann , similares a la computadoras convencionales
excepto que esta provee de un Bus independiente para los
direcciones de datos, datos, instrucciones, y direcciones de
instrucciones. La arquitectura de Harvard
permite al CPU
acceder a las instrucciones datos simultneamente.
Las Partes principales del CPU son:
Unidad de control (CU): que controla las operaciones de la
computadora
Unidad Aritmtico y logica (ALU): que realiza operaciones
logicas y aritmticas.
Grupo de registro: que guarda varios valores durante las
operaciones de la computadora.
Un Programa Contador (PC): Almacena la direccin de una
instruccin de la memoria principal. El programa contador
es parte del grupo de registro.

Arquitectura del procesamiento


1. Recupera la instruccin desde la memoria
2. Decodifica la instruccin (convierte seales electrnicas)
3. Recupera los datos necesarios
4. La ALU ejecuta la operacin
5. La unidad de control almacena el resultado
Las arquitecturas RISC y CISC son ejemplos de CPU con un
conjunto de instrucciones para arquitectura basadas en
registros.
La meta principal es incrementar el rendimiento del procesador,
ya sea optimizando alguno existente o se desee crear uno
nuevo. Para esto se deben considerar tres reas principales a
cubrir en el diseo del procesador y estas son:
La arquitectura.
La tecnologa de proceso.
El encapsulado.
Microprocesadores CISC (complex instruction set
computer)
Computadoras con un conjunto de instrucciones complejo.
Interpretan y ejecutan un gran nmero de instrucciones.
Son ms lentos que los microprocesadores RISC.
Todos los microprocesadores utilizados en la fabricacin de
ordenadores personales, son de tecnologa CISC.
Los ordenadores que combinan varias operaciones en una
sola instruccin se les denominan ordenadores CISC
Tienen ms de 150 instrucciones.
Arquitecturas CISC
La microprogramacin es una caracterstica importante y
esencial de casi todas las arquitecturas CISC.
Como por ejemplo:
Intel 8086, 8088, 80286, 80386, 80486.
Motorola 68000, 68010, 68020, 68030, 6840.
La microprogramacin significa que cada instruccin de mquina
es interpretada por un microprograma localizado en una
memoria en el circuito integrado del procesador. Permita

desarrollar
tambin
procesadores
con
compatibilidad
ascendente. En consecuencia, los procesadores se dotaron de
poderosos conjuntos de instrucciones.
Las instrucciones compuestas son decodificadas internamente y
ejecutadas con una serie de microinstrucciones almacenadas en
una ROM interna. Para esto se requieren de varios ciclos de reloj
(al menos uno por microinstruccin).
Microprocesadores RISC (reduced instruction set
computer)
Computadoras con un conjunto de instrucciones reducido.
Interpretan y ejecutan slo unas pocas instrucciones. Son
mucho ms rpidos que los microprocesadores CISC.
Con tecnologas de semiconductores comparables e igual
frecuencia de reloj, un procesador RISC tpico tiene una
capacidad de procesamiento de dos a cuatro veces mayor
que la de un CISC, pero su estructura de hardware es tan
simple, que se puede realizar en una fraccin de la
superficie ocupada por el circuito integrado de un
procesador CISC.
Se utilizaron en el modelo de Harvard.
Arquitecturas RISC
Buscando aumentar la velocidad del procesamiento se descubri
en base a experimentos que, con una determinada arquitectura
de base, la ejecucin de programas compilados directamente
con microinstrucciones y residentes en memoria externa al
circuito integrado resultaban ser mas eficientes, gracias a que el
tiempo de acceso de las memorias se fue decrementando
conforme se mejoraba su tecnologa de encapsulado.
Debido a que se tiene un conjunto de instrucciones simplificado,
stas se pueden implantar por hardware directamente en la
CPU, lo cual elimina el microcdigo y la necesidad de decodificar
instrucciones complejas.
Las caractersticas esenciales de una arquitectura RISC pueden
resumirse como sigue:

Estos microprocesadores siguen tomando como base el


esquema moderno de Von Neumann.
Las instrucciones, aunque con otras caractersticas, siguen
divididas en tres grupos:
Transferencia.
Operaciones.
Control de flujo.
Reduccin del conjunto de instrucciones a instrucciones
bsicas simples, con la que pueden implantarse todas las
operaciones complejas.
Arquitectura del tipo load-store (carga y almacena). Las nicas
instrucciones que tienen acceso a la memoria son 'load' y
'store'; registro a registro, con un menor nmero de acceso a
memoria.
Casi todas las instrucciones pueden ejecutarse dentro de un
ciclo de reloj. Con un control implantado por hardware (con un
diseo del tipo load-store), casi todas las instrucciones se
pueden ejecutar cada ciclo de reloj, base importante para la
reorganizacin de la ejecucin de instrucciones por medio de
un compilador.
Pipeline (ejecucin simultnea de varias instrucciones).
Posibilidad de reducir el nmero de ciclos de mquina
necesarios para la ejecucin de la instruccin, ya que esta
tcnica permite que una instruccin pueda empezar a
ejecutarse antes de que haya terminado la anterior.
El hecho de que la estructura simple de un procesador RISC
conduzca a una notable reduccin de la superficie del circuito
integrado, se aprovecha con frecuencia para ubicar en el
mismo, funciones adicionales:
Unidad para el procesamiento aritmtico de punto flotante.
Unidad de administracin de memoria.
Funciones de control de memoria cache.
Implantacin de un conjunto de registros mltiples.
La relativa sencillez de la arquitectura de los procesadores
RISC conduce a ciclos de diseo ms cortos cuando se
desarrollan nuevas versiones, lo que posibilita siempre la
aplicacin
de
las
ms
recientes
tecnologas
de
semiconductores. Por ello, los procesadores RISC no solo
tienden a ofrecer una capacidad de procesamiento del

sistema de 2 a 4 veces mayor, sino que los saltos de


capacidad que se producen de generacin en generacin son
mucho mayores que en los CISC.
Por otra parte, es necesario considerar tambin que:
La disponibilidad de memorias grandes, baratas y con
tiempos de acceso menores de 60 ns en tecnologas CMOS.
Mdulos SRAM (Memoria de acceso aleatorio esttica) para
memorias cache con tiempos de acceso menores a los 15
ns.
Tecnologas de encapsulado que permiten realizar ms de
120 terminales.

Los ordenadores etiquetados como CISC gozan de los privilegios


y defectos del microcodigo. La CPU es considerablemente ms
rpida que la memoria principal. Esto significa que conviene
manejar un amplio abanico de instrucciones complejas cuyo
significado equivalga al de varias instrucciones simples,
disminuyendo as los accesos a memoria. A esto se le aade la
tendencia de aumentar el grado de complejidad de las
instrucciones para acercarlas a los lenguajes de alto nivel.
Sin embargo, como resultado de ciertos estudios en los que se
examino la frecuencia de utilizacin de las diferentes
instrucciones, se observo que el 80 % del tiempo era consumido
por solo el 20 % de las instrucciones, con prioridad de los
almacenamientos (STORE), cargas (LOAD) y bifurcaciones
(BRANCH).
La alternativa RISC se basa en esto y propone procesadores
cableados con un repertorio simple de instrucciones sencillas y
frecuentes; todo cdigo complejo puede descomponerse en
varios congeneres ms elementales en los que, para evitar los
terribles efectos sobre los retardos de la memoria principal (MP),
se recurre a numerosos registros y a memorias cache. Un
registro es una unidad de almacenamiento enclavada en la CPU
y, por tanto, tan rpida como esta. Las memorias cache son
pequeas memorias de alta velocidad, se alimentan de la MP, de
la que toman la informacin que esta siendo mas
frecuentemente utilizada. Otro de los objetivos del RISC fue

lograr que a cada instruccin correspondiera un solo ciclo de


reloj, a excepcin, de aquellos casos que hay que mover datos.
Disminuye la probabilidad de fallo.
Reduce el tamao de la CPU, que puede entonces albergar
ms recursos (registros).
Facilita el diseo.
Permite maquinas mas compactas y con menor consumo.
A menor complejidad... menor coste.
1.6 COMPONENTES BSICOS DE UNA COMPUTADORA
Unidad Central del Proceso(CPU UCP)
Est formada por dos unidades principales:
Unidad de Control:
Representa el corazn de un computador
Se encarga de controlar y coordinar toda la actividad del
procesamiento de datos, incluyendo el control de los
dispositivos de E/S.
Coordinar entrada y salida de datos e informacin en las
diferentes memorias.
Determina los direcciones delas operaciones aritmticas y
lgicas.
Seleccionar, interpretar y enviar a ejecutar las instrucciones
de los programas.
Unidad Aritmtico lgica

Es la encargada de ejecutar todos los clculos matemticos


y las comparaciones lgicas.

Unidades de Memoria
Un computador posee bsicamente dos tipos de memoria:
Memoria principal
ROM (Read Only Memory) Memoria slo de lectura. Es el rea
de la memoria donde el fabricante de la computadora graba

todos los datos e instrucciones necesarias para el


funcionamiento del computador. El contenido de esta
memoria no desaparece ni con ausencia del flujo electrnico.
RAM (Random Acces Memory) Es el rea de la memoria
principal disponible parasatisfacer las necesidades de
programacin del usuario, es all donde se guardan los datos y
los programas a ejecutarse en un momento determinado. sta
memoria es voltil, significa que su contenido se pierde al
apagarse el computador. Generalmente el tamao de
memoria de los computadores est determinado por la
cantidad de memoria RAM que posea.
Memoria auxiliar
Cintas
Diskettes
Zip
Disco
CD
Etc...
Dispositivos de E/S: Mquinas
manipulan los medios magnticos.

electromecnicas

que

Buses: Camino de datos que interconectan dispositivos.


Microcontrolador
Es un sistema cerrado. Todas las partes del procesador estn
contenidas en su interior y slo salen al exterior las lneas que
gobiernan los perifricos.
Contiene los elementos electrnicos que se utilizan para hacer
funcionar un sistema basado en un microprocesador, CPU, RAM,
ROM, perifricos, etc.
Le da prioridad a cada proceso
Tiene un microprocesador dentro, as como memoria, buses,
reloj, perifricos.

B u s d e d a t o s y d ire c c io n e s

G e n e ra d o r
de
re lo j

P e rif ric o s

M P
M e m o ria
de
p ro g ra m a

M e m o ria
de
d a to s

M ic ro c o n tro la d o r

Perifricos
Estructura de un sistema abierto basado en un microprocesador.
La disponibilidad de los buses en el exterior permite que se
configure a la medida de la aplicacin
Microprocesador
Funciones:
1)
Ofrecer seales de distribucin y control para todos los
elementos de la computadora.
2)
Buscar y trae instrucciones y datos de la memoria.
3)
Transferencia de datos hacia y desde dispositivos de
Entrada y Salida.
4)
Decodificacin de instrucciones.
5)
Realizacin de operaciones aritmticas y lgicas
solicitadas por las instrucciones.
6)
Respuesta a seales de control generadas en Entradas
y Salidas como RESET e INTERRUPT.
En resumen: es el encargado de la ejecucin, generacin e
interpretacin de rdenes.

R e g is tr o d e
B a n d e ra s

A LU

A c u m u la d o r
R e g is t r o
C o n ta d o r
d el
p ro g r a m a
PC
R e g is t r o
de
d ire c c io n e s

Bus de
d ir e c c io n e s
e xte rn o

R e g is t ro d e
co n tro l

D e c o d ifi c a c io n
De
I n st r u c c io n e s

R e g is t ro
De

B u s d e d a to s
e xt e r n o

L in e a s
de
C o n t ro l

ALU: Realiza todas las operaciones aritmticas y tambin


realiza operaciones lgicas
Registro de control: Sincronizado con una seal de reloj
controla la operacin de las dems partes del
microprecesador, indicando en que momento debe activarse
y desactivarse un registro.
Decodificador de instrucciones: Determina la operacin
que debe realizar el microprecesador por medio del cdigo
mquina y se le indica al registro de control.
Registro de datos: Es un registro de buffera travs del cual
llega el dato de la memoria extrena y tambin enva
informacin a los dispositivos externos.
Registro contador del programa: Es un contador que se
incrementa inmediatamente despus de escribir en el
registro de direccin, la localidad que debe ser leda y
corresponde con la instruccin, se dice que apunta a la
siguiente instruccin.
Registro de direcciones: Contiene el nmero de localidad
de memoria que debe ser leda o escrita por el
microprocesador. Est conectado al bus de direcciones
externo.
Registro acumulador: El resultado de casi todas las
operaciones de la ALU se depositan en este registro
Registro de Banderas: Es un registro de estados en donde
cada bit indica un resultado de la operacin realizada en la
ALU
Mdulo de E/S
Es el elemento de la computadora responsable del control de
uno o mas dispositivos externos, y del intercambio de datos
entre los dispositivos y la memoria principal. Sus funciones son:
Control y temporizacin
Comunicacin con la CPU
Decodificacin de rdenes
Datos
Reconocimiento de direccin
Comunicacin con los dispositivos

Almacenamiento temporal de datos


Deteccin de errores
Las computadoras ejecutan en el hardware algunas operaciones
que incluyen:
1 Instrucciones para multiplicacin y divisin de enteros
2 Instrucciones aritmticas en punto flotante
3 Instrucciones aritmticas de doble precisin(con nmeros
que tienen el doble de cifras significativas de lo normal)
4 Instrucciones de llamada y retorno de procedimientos
5 Instrucciones para acelerar las iteraciones(bucles)
6 Instrucciones para contar
7 Instrucciones para manejar cadenas de caracteres
8 Mecanismos
para
acelerar
los
clculos
con
vectores(indexacin y direccionamiento indirecto)
9 mecanismos para mover programas en la memoria despus
de que ha empezado su ejecucin
10
Reloj para sincronizacin de programas
11
Sistema de interrupciones para el control de las
operaciones de entrada y salida
12
La posibilidad de interrumpir un programa y comenzar
otro con un pequeo nmero de instrucciones(conmutacin
de procesos)
1.7 FUNCIONES DE LA COMPUTADORA
La funcin bsica que realiza un computador es la ejecucin de
un programa. El procesador es el que se encarga de ejecutar la
instrucciones especificadas en el programa. El procesador lee
(capta) la instruccin de memoria, y la ejecuta.
El procesamiento que requiere una instruccin se denomina
ciclo de instruccin.
Ciclos de captacin y ejecucin
La instruccin captada se almacena en un registro de la CPU
conocido como registro de instruccin.(IR Instruccin Register).
La instruccin se escribe utilizando un cdigo binario. La CPU
interpreta la instruccin y lleva a cabo la accin requerida.

Procesador-Memoria: Desde la CPU a la memoria o desde


la memoria a la CPU.
Procesador-E/S: Deben transferirse datos a o desde el
exterior mediante transferencias entre la CPU y un mdulo
de E/S.
Procesamiento de datos: La CPU ha de realizar alguna
operacin aritmtica o lgica con los datos.
Control: Una instruccin puede especificar que la
secuencia de ejecucin se altere.

Ciclo de captacin

Inicio

Captar la
siguiente
instruccin

Ciclo de ejecucin

Ejecutar la
instruccin

Parada

La ejecucin de una instruccin puede implicar una combinacin


de las siguientes instrucciones:

El PC contiene un nico registro llamado contador (AC).

Se requieren 3 instrucciones, que consumen 3 ciclos de


captacin y 3 de ejecucin:
1)EL contador del programa (PC) contiene la direccin de la
instruccin.
2)Primeros 4 bits de IR (Registro de instruccin) Indican que
el acumulador se va a cargar y los otros 12 bits indican la
direccin.

3)Registro PC se incremente y capta la siguiente instruccin.

1.8 ESTRUCTURAS DE INTERCONEXION


Una computadora esta constituida por el CPU, MEMORIA y E/S,
los cuales se comunican entre s por un conjunto de lneas
denominado Estructuras de interconexin Sistema de
Buses.
Memoria
Un mdulo de memoria est constituido por N palabras de la
misma longitud. A cada palabra se le asigna una nica direccin
numrica (0,1,,N-1). Una palabra de datos puede leerse o
escribirse de la memoria.
El tipo de operacin se indica mediante las seales de control
READ (Leer) y WRITE (Escribir). La posicin de memoria para la
operacin se especfica mediante una direccin.
Mdulo de E/S
Desde un punto de vista interno la E/S es funcionalmente similar
a la memoria. Hay dos tipos de operaciones, leer y escribir.
Adems, un mdulo de E/S puede controlar ms de un
dispositivo externo. Nos referiremos a cada una de estas
interfases como un dispositivo externo con el nombre de puerto
(PORT) y se le asignar una direccin a cada uno. Por otra parte,
existen lneas externas de datos para la entrada y salida de
datos por un dispositivo externo. Por ltimo, un mdulo de E/S
puede enviar seales de interrupcin a la CPU.
CPU
La CPU lee interrupciones y datos, escribe datos una vez que los
ha procesado, y utiliza ciertas seales para controlar el
funcionamiento del sistema. Tambin puede escribir seales de
interrupcin.
Tipos de transferencia en el sistema de buses
Memoria a CPU : La CPU lee una instruccin o dato
desde la memoria.

CPU a Memoria : La
memoria.

CPU

escribe

un

dato

en

la

E/S a CPU :
La CPU lee datos de un dispositivo de E/S
a travs de un mdulo E/S.
CPU a E/S :

La CPU enva datos al dispositivo de E/S.

Memoria a E/S y viceversa: En estos dos casos, un


mdulo de E/S puede intercambiar datos directamente
con la memoria, sin que tenga que pasar a travs de
la CPU, utilizando el acceso directo a memoria (DMA).

Interconexin con buses.


Un bus es un camino de comunicacin entre dos o ms
dispositivos. Una caracterstica clave de un bus es que se trate
de un medio de transmisin compartido. Al bus se conectan
varios dispositivos, y cualquier seal transmitida por uno de
estos dispositivos esta disponible para que los otros dispositivos
conectados al bus puedan acceder a ella. Si dos dispositivos
transmiten durante el mismo periodo de tiempo, su seales
pueden solaparse y distorsionarse.
Consiguientemente, solo un dispositivo puede transmitir con
xito en un momento dado.
Las computadoras poseen distintos tipos de buses, que
proporcionan comunicacin entre sus componentes a distintos
niveles dentro de la jerarqua del sistema. El bus que conecta a
los componentes de la computadora se llama BUS DEL
SISTEMA (SYSTEM BUS) y se forma de los siguientes conjuntos
de lneas:
a LINEAS DE DATOS
b LINEAS DE DIRECCION
c LINEAS DE CONTROL

EJEMPLOS DE SEALES DE CONTROL.


- Escritura en memoria
- Lectura en memoria
- Escritura de E/S
- Lectura de E/S
- Transferencia reconocida
- Peticin de bus
- Cesin de bus
- Peticin de interrupcin
- Interrupcin reconocida
- Reloj
- Reset
1.9 FUNCIONES DE ENTRADAS Y SALIDAS.
Es el elemento de la computadora responsable del control de
uno ms dispositivos externos, y del Intercambio de datos
entre esos dispositivos y la memoria principal y/o los registros
de la CPU. As, el mdulo de E/S debe tener una interfaz interna
a la tarjeta madre de la computadora (con el Procesador y la
memoria principal) y una interfaz externa a la computadora (con
el dispositivo externo).
Funciones de un mdulo de E/S:
1.- Realizar la interfaz entre la CPU y la Memoria a travs del bus
del sistema
2.- Realizar la interfaz entre uno o ms dispositivos perifricos
mediante enlaces de datos especficos.
Control y Temporizacin
Comunicacin con la CPU
Comunicacin con los dispositivos
Almacenamiento temporal de datos
Deteccin de errores
En cualquier momento la CPU puede comunicarse con uno
ms dispositivos externos en cualquier orden. Los recursos
internos, tales como la memoria principal y el bus del sistema,
deben compartirse entre distintas actividades incluyendo la E/S
de datos.

El mdulo de E/S debe tener la capacidad de entablar


comunicacin con la CPU y con el dispositivo externo:
1.- La comunicacin con la CPU implica:
a Decodificacin de Ordenes: El mdulo acepta rdenes de la
CPU
b Datos: La CPU y el mdulo intercambian datos a travs del
bus correspondiente
c Reconocimiento de Direccin: Igual que cada palabra de
memoria tiene una direccin, cada dispositivo de E/S tiene
otra.
2.- El mdulo de E/S debe ser capaz de comunicarse con
el dispositivo. Esta comunicacin implica intercambiar
rdenes, informacin del estado, y datos.
Diagrama a bloques de un Mdulo de E/S.

Dispositivo
externo

SISTEMA
DE
BUSES
DATOS
LINEAS
DE DATOS

LINEAS
DE
DIRECCION
LINEAS
DE
CONTROL

ESTADO
CONTROL

DATOS
ESTADO
CONTROL

MODULO II
SISTEMA DE BUSES
2.1. Interrupciones
2.2 Estructura del BUS
2.3 Arquitecturas de Bus Mltiple
2.4 El bus PCI
2.5 El bus ISA/EISA
2.6 El bus serial universal (USB)
2.7 Transferencia de datos
2.8 Interfaces
2.1 INTERRUPCIONES
Una interrupcin es un evento que altera la secuencia en que el
procesador ejecuta las instrucciones. La interrupcin es
generada por el hardware del sistema de cmputo.
Definicin: suspensin de un proceso (ejecucin de un
programa), causada por un evento externo, y realizada de tal
forma que el proceso se puede reanudar.
Las interrupciones se encuentran en Kernell que se encuentra en
el S.O.
Kernell da ordenes
El SO detecta las interrupciones.
P ro g ra m a
E /S
P ro c e s a d o r

N c le o
K e rn e ll

Ncleo:

Toma el control del procesador y determina cuando y como lo


va a repartir entre diversos usuarios.
Funciones:
Maneja las interrupciones del procesador central
Creacin y destruccin de procesos
Cambio de estado de los procesos
Despacho (El ncleo atiende llamadas)
Suspensin y reanudacin de procesos
Sincronizacin de procesos
Comunicacin entre procesos
Manipulacin de los bloques de control de procesos
Apoyo a las actividades de entrad y salida
Apoyo para asignacin y liberacin de memoria
Apoyo para el sistema de archivos
Apoyo para mecanismo de llamada y retorno de un
procedimiento
Apoyo para ciertas funciones de contabilidad del sistema

Cuenta con 3 subsistemas:


Subsistema 1: Maneja interrupciones del procesador central
Subsistema 2: Escoge y activa un nuevo proceso para ser
ejecutado y/o congela al que fue interrumpido.
Subsistema 3: Coordina los diversos procesos del sistema y de
los usuarios que interactuan con el SO.
Interrupciones del procesador

Cuando ocurre una interrupcin el sistema operativo toma el


control. El sistema operativo analiza la interrupcin y transfiere
el control a la rutina apropiada para atenderla
La rutina del manejador de interrupciones procesa la
interrupcin
Se restablece el estado del proceso interrumpido
Se ejecuta el proceso interrumpido
Una interrupcin puede ser iniciada por un proceso en ejecucin
(en cuyo caso se suele denominar trampa, y se dice que esta
sincronizada con la operacin del proceso) puede ser causada
por algn evento que puede estar relacionado o no con el
proceso en ejecucin (en cuyo caso se dice que es asncrona con
la operacin del proceso).
Los sistemas orientado hacia las interrupciones pueden
sobrecargarse. Si stas llegan con mucha frecuencia, el sistema
no ser capaz de atenderlas.
Clases de interrupciones:

SVC: Peticin generada por el usuario de un servicio en


particular del sistema
E/S: Indican un cambio de estado de un canal o dispositivo.
Se producen cuando finaliza una operacin de E/S o cuando
un dispositivo pasa al estado listo.
Externas: Es un factor externo al procesado (CTRL.
+ALT+SUPR)
Reinicio: Se produce cuando se presiona el botn de reinicio
de la PC o cuando llega de otro procesador una instruccin
de reinicio en un sistema de multiprocesamiento.
Verificacin del programa: Operaciones ilgicas; son
causadas por problemas que pueden ocurrir cuando se
ejecutan las instrucciones en lenguaje mquina de un
programa (divisin entre cero).

Verificacin de la mquina (hardware): Son ocasionadas por


el mal funcionamiento del hardware.

Interrupcin deshabilitada: Condicin durante la cual la


CPU ignora las seales de peticin de interrupcion de una
clase determinada.
Interrupcin habilitada: Condicin mediante la cual la
CPU responde a las seales de peticin de interrupcin de
un clase determinada.

o Temporizacin: son generadas por un temporizador


interno al procesador. Esto permite al sistema operativo
realizar ciertas funciones de manera regular.

Transferencia de control va interrupciones:

Programa de usuario

Aqu de
produce la
interrupcin

Interrupciones mltiples

Gestor de interrupciones

Se pueden seguir dos alternativas para tratar las interrupciones


mltiples:

Desactivar las interrupciones mientras se est procesando una


interrupcin. (interrupcin deshabilitada). El inconveniente es
que no tiene en cuente la prioridad relativa ni las solicitudes con
un tiempo crtico.
Una segunda alternativa consiste en definir prioridades para las
interrupciones.

Procesamiento de una secuencia de interrupciones:

Programa
de usuario
Gestor de
interrupcin X

Gestor de
interrupcin Y

Transferencia de control con interrupciones mltiples:

Program
a de
usuario
Gestor de
interrupcin
X

Gestor de
interrupcin Y

2.2 ESTRUCTURA DEL BUS


Un bus es un camino de comunicacin entre dos o ms
dispositivos. Se trata de un medio de transmisin compartido. Al
bus se conectan varios dispositivos, y cualquier seal
transmitida por uno de esos dispositivos est disponible para
que los otros dispositivos conectados al bus puedan acceder a
ella. Si dos dispositivos transmiten durante el mismo periodo de
tiempo , sus seales pueden solaparse y distorsionarse.

En muchos casos, un bus est constituido por varios caminos de


comunicacin o lneas. Cada lnea es capaz de transmitir seales
binarias.
Bus de sistema

Es el que conecta los principales componentes del computador.


Est constituido usualmente por entre 50 y 100 lneas.

Las lneas se pueden clasificar en 3 grupos funcionales:

Lneas de datos: Proporcionan un camino para transmitir


datos entre los mdulos del sistema. El conjunto constituido
por estas lneas se denomina bus de datos. Generalmente
consta de 8, 16 o 32 lneas distintas cuyo nmero se conoce
como anchura de bus.
Lneas de direccin: Se utilizan para designar la fuente o el
destino del dato situado en el bus de datos.
Lneas de control: Se utilizan para controlar el acceso y el
uso de las lneas de datos y de direcciones. Transmiten tanto
rdenes como informacin de temporizacin entre los
mdulos del sistema. Las seales de temporizacin indican la
validez de los datos y las direcciones. Las seales de rdenes
especifican las operaciones a realizar. Algunas lneas de
control tpicas son:
Escritura en memoria: Hace que el dato del bus se escriba
en la posicin seleccionada.
Lectura de memoria: Hace que dato de la posicin
direccionada se site en el bus.
Escritura de E/S: Hace que el dato del bus se transfiera a
travs del puerto de E/S direccionado.
Lectura de E/S: Hace que el dato del puerto del E/S
direccionado se site en el bus.
Transferencia reconocida: indica que el dato se ha aceptado
o se ha situado en el bus.
Peticin del bus: indica que in mdulo necesita disponer del
control del bus

Cesin de bus: Indica que se cede el control del bus a un


mdulo que lo haba solicitado.
Peticin de interrupcin: Indica si hay una interrupcin
pendiente.
Interrupcin reconocida:
pendiente se ha aceptado

Seala

que

la

interrupcin

Reloj: Se utiliza para sincronizar las operaciones.


Inicio: pone los mdulos conectados en estado inicial.

El funcionamiento del bus:

Si un mdulo desea enviar un dato a otro debe hacer dos


cosas:
Obtener el uso del bus.
Transferir el dato a travs del bus.
Si un mdulo desea pedirle un dato a otro mdulo debe:
Obtener el uso del bus.
Transferir la peticin al otro mdulo mediante las lneas de
control y direccin apropiadas. Despus debe esperar a que
el segundo mdulo enve el dato.

Fsicamente:

El bus del sistema es un conjunto de conductores elctricos


paralelos. Estos conductores son lineas de metal grabadas en
una tarjeta. El bus se extiende a travs de todos los

componentes del sistema, cada uno de los cuales se conecta a


algunas o a todas las lneas del bus.

Arquitecturas de Bus Mltiple

Si se conecta un gran nmero de dispositivos al bus, las


prestaciones pueden disminuir, hay dos causas principales:

1. A ms dispositivos conectados al bus mayor es el retardo de


propagacin.
2. El bus puede convertirse en un cuello de botella a medida que
las peticiones de transferencia acumuladas se aproximan a la
capacidad del bus.

Por lo consiguiente, la mayora de los computadores utilizan


varios buses, normalmente organizados jerrquicamente.

Es posible conectar controladores de E/S directamente al bus del


sistema. Una solucin ms eficiente consiste en utilizar uno o
ms buses de expansin. La interfaz del bus de expansin
regula las transferencias de datos entre el bus del sistema y los
controladores conectados al bus de expansin.

2.3 ARQUITECTURA DEL BUS

El retardo de propagacin se puede resolver incrementando la


velocidad a la que el bus puede transferir los datos y utilizando
buses mas anchos.

Hay un bus local que conecta el procesador a una memoria


cache y pueden conectarse ms dispositivos locales. El
controlador de memoria cache conecta la cache no solo al bus
local sino tambin al bus de sistema.

La memoria principal puede pasar de bus local a bus de sistema.

Dispositivos de E/S conectados al bus de expansin:


conexiones de redes de rea local (LAN), conexiones de redes de
rea amplia, la interfaz de SCSI es un tipo de bus utilizado para
conectar controladores de disco y otros perifricos, el puerto de
serie puede utilizarse para conectar una impresora o un escner.

El bus de alta velocidad tambin es conocida como arquitectura


de entreplanta. Controladores de estaciones de trabajos
especficos para las aplicaciones grficas y de video,
controladores de interfaz firewire, este bus es de alta velocidad
diseado especficamente para conectar dispositivos de E/S de
alta capacidad. Los dispositivos de velocidad menor pueden
conectarse al bus de expansin, que utiliza una interfaz para
adaptar el trfico entre el bus de expansin y el bus de alta
velocidad.

Elementos del diseo de un bus:

De tipo:

Dedicado: Las lneas de control dedicadas esta permanente


asignada a una funcin o a un subconjunto fsico de

componentes del computador. Ejemplo es el uso de lneas


separadas para direcciones y para datos.

Multiplexado: Es el uso de menos lneas cosa que ahorra


espacio, la desventaja es que se necesita una circuitera ms
compleja, reduccin de prestaciones debido a que los eventos se
deben compartir las mismas lneas.

Mtodo de arbitraje:

Hay que tomar en cuenta que en un instante dado solo una


unidad puede transmitir a travs del bus.

Centralizado: Denominado controlador del bus o arbitra es el


responsable de asignar tiempos al bus.

Distribuido: No existe controlador central, en su lugar cada


mdulo dispone de lgica para controlar el acceso.

Temporizacin:

Es la forma en que se coordinan los eventos

Sncrono: La presencia de un evento en el bus esta determinada


por un reloj : el bus incluye uba lnea de reloj a travs de la que
se transmite una secuencia en la que se alternan intrvalos
regulares de igual duracin, un intervalo seguido de otro se
conoce como ciclo de reloj o ciclo del bus y define un intervalo
de tiempo y unidad, todos los eventos comienzan al principio del

ciclo de reloj. El mdulo de memoria reconoce la direccin y,


despus de un retardo de un ciclo, sita el dato y la seal de
reconocimiento en el bus.

Asncrono: Sita las seales de direccin y lectura en el bus,


despus activa la seal MSYN (sincronizacin del maestro),
indicando la presencia de seales de direccin y control vlidas,
y el mdulo de memoria responde proporcionando el dato y una
seal SSYN (sincronizacin del esclavo).

Anchura del bus:

Direccin: Posiciones a las que el bus puede hacer referencia.

Datos: Nmero de bits que se transmiten a la vez.

Tipo de transferencia de datos:

Lectura:

Escritura:

Lectura-modificacin-escritura:

Lectura despus de escritura:

Bloque:

S-ar putea să vă placă și