Sei sulla pagina 1di 36

UNIVERSIDAD DE MATANZAS

CAMILO CIENFUEGOS.
FACULTAD DE INGENIERAS QUMICA Y MECANICA.

INTRODUCCION A LOS MICROPROCESADORES

Dr. C.T. Ing. Evaristo Gonzlez Milans.

DICIEMBRE, 2003
INTRODUCCION A LOS MICROPROCESADORES

Autor: Dr. Evaristo Gonzlez Milans


Dpto. Fsica
Universidad de Matanzas.

INTRODUCCIN.

Los microprocesadores han venido a ser el resultado del desarrollo en el camino


emprendido por la Electrnica Digital hacia la miniaturizacin, primeramente
implementando una unidad de procesos completa en una sola pastilla o chip de circuito
integrado, y posteriormente, mediante el aumento de la rapidez, capacidad de trabajo y
potencia de dicha unidad.

La aparicin de los microprocesadores (MP) representa el siguiente punto de


salto en la electrnica despus del ocurrido con la invencin del transistor, y la
tecnologa de su construccin avanza tan rpidamente que prcticamente ha
revolucionado en corto tiempo el desarrollo de mltiples campos de la ciencia y la
tcnica, a la vez que se introduce de manera convincente en nuestra vida domstica,
siendo difcil mencionar una rama o campo de la ciencia en la cual no exista una
aplicacin de los microprocesadores. De hecho, cada da aumenta el nmero de
instrumentos, sistemas de control de procesos, medios y equipos para las
telecomunicaciones, medicina, servicios pblicos e incluso juguetes, que emplean
dentro de su estructura algn tipo de MP, sin entrar a considerar el hecho real de la
introduccin, divulgacin y aceptacin que han tenido las nuevas generaciones de
computadoras digitales basadas en este componente y que son conocidas por nosotros
como microcomputadoras.

Es difcil predecir qu pasar en la electrnica en los prximos aos, pero de


acuerdo con la opinin de personalidades de esta rama, la influencia de los MP en el
futuro ser cada vez mayor y de ah la importancia de preparar a los profesionales
encargados de su aplicacin y desarrollo, y de que a su vez, los graduados de nivel
superior posean conocimientos elementales que les permitan ganar en la cultura
general necesaria que sirva de base a un conocimiento mayor de la aplicacin
especfica en el campo en que desarrollarn su vida profesional .

Este material no es ms que un primer intento para cubrir la limitacin de


informacin que sobre este tema presenta el texto que se emplea en la asignatura
Electrnica, que se imparte a las carreras de Ciencias Tcnicas, permitiendo a los
estudiantes disponer de forma condensada de los contenidos relacionados con esta
temtica previstos en dicha asignatura.

1
1-)Computadora Digital.

Una computadora digital puede entenderse como un sistema que explora


secuencialmente una informacin almacenada llamada programa, interpreta este
programa y lo ejecuta.
Para ello el sistema dispone de un HARDWARE, o sea, de una constitucin
fsica conformada por circuitos integrados interconectados sobre tarjetas de circuito
impreso agrupadas en elementos funcionales de caractersticas definidas que conforman
la MEMORIA, la UNIDAD de CONTROL, la UNIDAD LOGICO-ARITMETICA y
las UNIDADES de ENTRADA-SALIDA.
Simultneamente dispone de un soporte no fsico sino operativo, de un mtodo
de dilogo y por tanto de aceptacin de rdenes, y de generacin de mensajes. Ello lo
constituye el conjunto de instrucciones al cual responde directamente, y es un elemento
que caracteriza a cada computadora, y que recibe el nombre de SOFTWARE bsico. El
SOFTWARE no se limita al conjunto de instrucciones, sino que incluye tambin
programas inteligibles por el computador, por tanto escritos de acuerdo con el
SOFTWARE bsico y que permiten interpretar programas escritos con lenguajes ms
evolucionados.
El programa lo constituye un listado detallado de operaciones a desarrollar por la
computadora en un orden consecutivo y lgico y es escrito en un lenguaje que sea
comprensible para la mquina y que por tanto permita alcanzar ciertos resultados. El
programador, atendiendo al lenguaje de la mquina que lo ocupa, al problema especfico
y a las operaciones simples que la mquina puede realizar, confecciona el listado de
instrucciones (rdenes), a travs de las cuales especifica la operacin que debe ejecutar
y la ubicacin del o de los operandos sobre los que ejecutar la accin indicada.
Este programa se carga (almacena) en la memoria en el orden secuencial
previsto, constituyendo cada instruccin un grupo de 1 y de 0 que caracteriza o define
una operacin y no a otra. A esta representacin binaria de las instrucciones de una
computadora se le llama lenguaje de mquina o cdigo de mquina.
Los programas que pueden ser directamente ejecutados por una computadora
digital estn pues almacenados en lenguaje de mquina, no obstante, confeccionar
programas en lenguaje de mquina resulta una tarea laboriosa y compleja, por lo que
surgi el inters de crear lenguajes ms asequibles para el ser humano y que tuviesen
una cierta relacin con la manera con que aqul especifica las operaciones de un
proceso de informacin.
De esta forma naci el lenguaje simblico (assembler), que sustituye las
combinaciones binarias del lenguaje de mquina por nombres simblicos que hacen
referencia a la operacin que realiza la computadora cuando ejecuta la instruccin
correspondiente. Cada instruccin del lenguaje simblico es equivalente a una
instruccin del lenguaje de mquina.
Aunque el lenguaje simblico es ms fcil de manejar que el de mquina,
todava dista bastante del utilizado por el ser humano para expresar los procesos de
informacin, en especial las operaciones complejas que implican la ejecucin de un
nmero elevado de operaciones elementales en secuencia. Por ello se crearon lenguajes

2
de alto nivel que permiten especificar ms fcilmente los procesos de informacin,
donde cada instruccin se convierte posteriormente en un conjunto de instrucciones en
lenguaje de mquina.
Tanto el lenguaje simblico como los de alto nivel, hicieron necesario el
desarrollo de programas que al ser ejecutados por un computador tradujeran los
programas escritos en aquellos al lenguaje de mquina.
Estos programas traductores se conocen con el nombre de compiladores y
realizan la traduccin al lenguaje de mquina para la totalidad del programa de una sola
vez. Esta versin traducida del programa escrito en un lenguaje de alto nivel (llamado
programa fuente), se denomina programa objeto, y puede transferirse a la memoria y
ejecutarse directamente.
Los programas intrpretes utilizan otros principios de funcionamiento. Cada
instruccin escrita en el programa fuente le indica al intrprete un conjunto de acciones
que debe cumplir sin que medie un programa objeto en cdigo de mquina. La principal
ventaja de un intrprete es que permite fcilmente probar y poner a punto el programa.
Tanto el programa intrprete como el programa fuente permanecen en la
memoria durante la ejecucin del programa, lo cual generalmente ocupa una mayor
capacidad de memoria, y no se posee un programa objeto en cdigo de mquina para
su posterior concatenacin con cualquier programa.
Posteriormente surgi la combinacin de intrprete y compilador en un solo
paquete de programas, pudiendo aprovecharse las ventajas de ambos sistemas, como es
el caso del TURBOBASIC, TURBOPASCAL, etc.

1.1-Generaciones de computadoras digitales .

Desde la creacin de las primeras computadoras digitales en el ao 1947, se han


sucedido diferentes generaciones o estadios de desarrollo tanto a nivel de HARDWARE
como a nivel de SOFTWARE.
En las llamadas primeras generaciones se utilizaron tubos de vaco como
elementos lgicos y como memorias se utilizaron tambores magnticos, el SOFTWARE
an no se llamaba as y era muy primario, a nivel de lenguaje-mquina y de tmidos
ensayos simblicos.
En la 2da generacin, hacia 1956, se utilizaron ya transistores de germanio y,
posteriormente de silicio (el transistor se haba inventado en 1947 y se haba
industrializado pocos aos despus.) por la parte lgica, la memoria ya fue de ferritas y
se continu usando memoria exterior de tambor, discos y cintas magnticas; el
SOFTWARE era el mismo de la anterior generacin, pero inclua ya compiladores
fortran an bastante primarios, aunque fueron mejorando con el tiempo.
El primer gran cambio de los lenguajes se produjo pues, en esta generacin.
Mientras hasta entonces los programas en lenguaje-mquina o en lenguaje simblico
deban ser escritos para una mquina concreta puesto que eran orientados a las
mquinas, a partir de entonces fueron orientados al problema, por lo que el programa
era aplicable a cualquier mquina siempre que existiera el traductor (compilador)
adecuado a aquella mquina.
La tercera generacin apareci hacia 1964 simultneamente con la aparicin de
las MINICOMPUTADORAS. El hardware era realizado con circuitos integrados RTL y
ECL que evolucionaron hasta los TTL en 1966. La MEMORIA continuaba siendo de
ferritas y el software llego a su mayora de edad con lenguajes de alto nivel FORTRAN,
COBOL y sobre todo con la aparicin de SISTEMAS OPERATIVOS. Fue el momento
de la incorporacin de las computadoras al control del procesos.

3
La cuarta generacin apareci hacia 1971 simultneamente con la aparicin de
las MICROCOMPUTADORAS, de las terminales de TELEPROCESOS y solapndose
con los lenguajes de ms alto nivel (PL1, ALGOL68, BASIC, etc.).

4
1.2) Estructura de una Computadora Digital.

La estructura tpica de una computadora digital ha sido en las primeras


generaciones la que se muestra en la figura.

Memoria

Salidas
Unidad de
Entradas Procesos
Unidad de
Control

Esta estructura ha sido la primitiva y ha ido evolucionando variando, no en


esencia, sino en forma, hasta llegar a una estructura ms moderna, la cual se muestra a
continuacin:
Bus de direcciones A

Unidad
Unidad de Unidad de Unidad de Unidad de Unidad de

Entradas Memoria Procesos Control Salidas

Bus de datos D

Bus de Control C

Puede verse que tanto en una como en otra figura las unidades funcionales son
prcticamente las mismas; lo que ha sufrido modificaciones han sido las
interconexiones de estas unidades, que modernamente se realizan por BUSES y antes no
se realizaban as.
Un bus est formado por un grupo de lneas por donde se trasmiten los datos,
cdigos de instruccin, seales de sincronizacin y cdigos de direccin entre las
diferentes unidades funcionales de la computadora de forma paralela lo que permite una
alta velocidad de transmisin.
La interconexin por buses ha representado un gran ahorro de interconexiones y
una simplificacin desde el punto de vista estructural. Esta evolucin ha sido debida al
desarrollo tecnolgico que ha permitido obtener sistemas con tres estados lgicos
posibles (TRI-STATE): 1 lgico, 0 lgico y 3er estado tambin denominado estado de
alta impedancia, permitiendo que el dispositivo que no est tomando parte del
intercambio de informacin en un momento dado pueda aislarse.
En realidad las lneas del bus se agrupan en tres, de acuerdo con la informacin
que transportan: bus de direccin, bus de datos y bus de control.

5
El bus de datos es bidireccional y por l circulan los datos que llegan o salen de
la computadora por las unidades de entrada y salida, as como los datos intermedios
que son ledos o almacenados en la memoria .De acuerdo con la longitud de la palabra
que es capaz de manejar el bus de datos, se designa la longitud de palabra de la
microcomputadora.
El bus de direcciones es unidireccional, y con el cdigo binario que aparece en
ese bus se selecciona la unidad o dispositivo que trabajar en cada instante.
El bus de control est formado por varias lneas donde cada una posee una
funcin muy especfica e indica a cada una de las unidades y dispositivos externos la
funcin que debe realizar. As se logra la sincronizacin de todos los elementos de la
computadora, lo cual queda a cargo de la unidad de control. Tambin sirve para que la
CPU reciba ciertas indicaciones de las unidades perifricas.
En la figura se distinguen adems los siguientes elementos funcionales: unidad
de entradas, memorias, unidad de proceso, unidad de control y unidad de salidas.
La unidad de entradas no es ms que un multiplexor con el que se escoge por el
bus de direcciones y el de control cul de las informaciones presentes se desea traspasar
al bus de datos.
La unidad de memoria es el almacn tanto de instrucciones como de datos.
La unidad de proceso realiza las operaciones aritmticas y lgicas con las
informaciones que entran en ella a partir del bus de datos y el de direcciones. Tiene para
ello una unidad aritmtica lgica (ALU), uno o varios acumuladores, unos registros de
indicadores o banderas, as como unos registros rpidos de trabajo (RRT) en los que se
almacenan temporalmente los datos que no interesa guardar indefinidamente en
memoria
La unidad de control es el verdadero cerebro del sistema pues es capaz de tomar
decisiones lgicas en el curso de la ejecucin de un algoritmo. Es decir, segn
informaciones, normalmente suministradas por la unidad de procesos sobre el valor de
algn resultado, se puede ejecutar una parte u otra del programa, slo con ir a buscar las
nuevas instrucciones a un sitio diferente de la memoria central. En ella se encuentra el
contador de programas con su sistema de aritmtica de direcciones y el puntero del
stack. Tambin se encuentra el registro de instrucciones, decodificador de instrucciones,
registros auxiliares, etc.
La unidad de salidas recibe por el bus de datos la informacin a sacar al exterior
y por el bus de direcciones la direccin por la cual debe sacar los datos anteriormente
mencionados.
Generalmente la Unidad de Control y la Unidad de Procesos se agrupan en un
solo bloque denominado UNIDAD CENTRAL de PROCESAMIENTO (CPU).

1.3- Elementos bsicos de una microcomputadora.

Una microcomputadora consta de tres elementos fundamentales: Unidad Central


de Procesamiento, la Memoria y las Unidades o Puertos de Entrada/Salida todo ello
debidamente interconectado mediante un sistema de buses. Su esquema ser entonces el
mismo que aparece en la figura anteriormente mostrada, con la unin de las unidades de
control y de proceso en un solo bloque llamado CPU. La CPU unifica el sistema
controlando las funciones realizadas por los otros componentes.
Se conoce bajo el nombre de microprocesador la CPU de la microcomputadora
construida en una sola pastilla de circuito integrado (CI) .Al igual que los procesadores
de todas las computadoras, el microprocesador puede manejar tanto datos aritmticos
como lgicos de forma paralela bajo el control de un programa . Sin embargo lo que los

6
fabricantes ofrecen bajo el nombre de microprocesador vara mucho de uno a otro
modelo.
En el 8080 por ejemplo, estn integrados los bloques de procesos y la mayor
parte del control, en el 6800 est completo proceso y control; en el 2650 se incluye
adems parte de las entradas/salidas, el 8048 es un ejemplo de los microcomputadores
en una sola pastilla, pues incluye casi todo lo necesario para constituir un pequeo
sistema, y en general, en la medida que se desarrollan los microprocesadores, estos
abarcan cada vez estructuras mas complejas.
A continuacin haremos una descripcin ms detallada de cada uno de estos
elementos de la microcomputadora.

1.3.1 - Unidad de Memoria.

En la memoria se almacenan los datos, los resultados y el programa de trabajo en


el cual se basar la CPU para regir las actividades a realizar en el sistema. La memoria
posee un conjunto de N posiciones numerados desde 0 hasta N-1, direccionables con n
bits tal que 2n = N. Por ejemplo con n=16 bits, se direccionan 216 = 65536 posiciones. Si
cada una de estas posiciones permite guardar un byte (palabra de 8 bits), podemos decir
abreviadamente que con n=16 bits se direccionan 64 Kbytes de memoria siendo
1Kbyte=1024 bytes.
La longitud de la palabra que se almacena en la memoria coincide con la
longitud de la palabra que es capaz de manejar el bus de datos, puesto que la memoria
recibe y entrega informacin a dicho bus mediante los procesos llamados lectura y
escritura .
Con ayuda de un esquema pasaremos a describir como se llevan a efecto estos
procesos:
0
MEMR 1
. n
.
.
MEMW N-
N-1 2 =N
MAR MDR

AB

DB

CB

Cuando la CPU desea hacer una lectura en la memoria, coloca en el bus de


direcciones (AB) la direccin de la memoria que se desea leer, y coloca un 1 en
MEMR (memory read) del bus de control (CB) . La direccin se transfiere al registro de
direcciones de memoria (MAR - memory adresss register) y desencadena el proceso de
lectura como resultado del cual al cabo de cierto tiempo de acceso al contenido del
registro direccionado, aparece en MDR (registro de datos de memoria - memory data
register) y de ah pasa al bus de datos (DB - data bus).
La escritura se realiza de forma similar solo que se coloca un 1 en MEMW
(memory write) y en MDR entra el contenido de DB que pasa a escribirse en la
memoria

7
En la figura siguiente se muestra un segmento de 8 localizaciones de memoria
cuyas direcciones estn numeradas desde la 83F2H (el sufijo H significa que el nmero
est escrito en notacin hexadecimal) hasta la 83F9H:
Dcion. CONTENIDO
(Hex.)
83F2 0 0 1 1 1 1 1 0 (3E)
83F3 0 1 0 0 0 0 0 1 (41)
83F4 1 1 1 1 1 1 0 0 (FC)
83F5 1 1 0 1 0 1 0 1 (D5)
83F6 0 1 1 1 1 0 1 0 (7A)
83F7 0 0 1 0 0 0 1 0 (22)
83F8 0 1 0 0 0 0 0 0 (40)
83F9 1 1 1 0 1 0 1 1 (E8)

Cada localizacin de memoria tiene su propio contenido. Por ejemplo, la


localizacin con direccin 83F6H tiene como contenido 01111010, el cual expresado en
hexadecimal corresponde a 7AH. Este contenido es el que se entrega al bus de datos en
el caso de que sea direccionada esta localizacin y se diese la orden de lectura.
Como se apunt anteriormente una secuencia de instrucciones que persiguen un
propsito determinado constituye un programa. Este programa se almacena en la
memoria para ser ejecutado. La CPU lee cada instruccin de dicha secuencia y la utiliza
para iniciar acciones de trabajo.
La memoria tambin se usa para almacenar los datos que son manipulados. La
CPU puede rpidamente tener acceso a cualquier dato almacenado en la memoria.
La capacidad de la memoria que se mide en octetos (bytes), est dada por el
nmero de localizaciones de memoria existentes. En muchas ocasiones se expresa en
kilooctetos (Kbyte) y en otras indicando el producto del nmero de las localizaciones
por el nmero de bits de cada una de ellas. Por ejemplo, una capacidad de 4K x 8 bits
indica que la memoria contiene 4096 localizaciones de 8 bits cada una.
El tiempo de acceso se define como la demora en tiempo desde el instante que se
fija una direccin de memoria hasta que se tiene acceso a la informacin almacenada
(tiempo de lectura), o se completa la modificacin de la informacin almacenada
(tiempo de escritura). El acceso aleatorio significa que el tiempo de acceso a una
localizacin de memoria particular es independiente de su direccin.
Por ltimo debemos recordar que las memorias en las computadoras se clasifican
en general en dos grupos: memorias de acceso aleatorio (RAM) con las cuales se
conforma la memoria operativa y memoria de solo lectura (ROM) que integran la
memoria permanente (con sus variantes PROM, EPROM, EEPROM, etc.).

1.3.2- Interfaces, puertos o unidades de entrada-salida.

Las interfaces de entrada y salida son toda una coleccin de hardware y de


software que permite la comunicacin entre la CPU y los dispositivos de entrada y de
salida y de hecho con el mundo exterior. La parte correspondiente al software en la
interface es llamada protocolo, y formalmente especifica las convenciones que gobierna
el formato y la forma de control de las entradas y salidas entre dos sistemas de
comunicaciones.
Se necesita de la existencia de una interface de entrada debido a que los
dispositivos de entrada generalmente no son compatibles con la CPU y por tanto es

8
necesario convertir las seales elctricas de entrada en un tipo que sea aceptable a esta.
Esto tambin se aplica aunque de forma invertida para el caso de los dispositivos de
salida. Fsicamente las interfaces de entrada y salida son C.I. extremadamente verstiles
en sus funciones los cuales pueden ajustarse mediante la variacin de sus software
correspondientes.
Las tareas ms simples son realizadas por los puertos de entrada y salida (PIO).
Los PIO pueden ser incluidos como parte integrante del C.I. junto a la CPU o pueden
aparecer de forma independiente. En este ltimo caso es un MSI chip (circuito integrado
de escala de integracin media), que contiene un buffer de registro de direcciones
multimodo con salida de tres estados.
A travs de los puertos de entrada la microcomputadora puede recibir
informacin de cualquier dispositivo externo, como por ejemplo, un teclado de
caracteres alfanumricos, un disco magntico, o las seales provenientes de un proceso
industrial o un instrumento mdico. A su vez la microcomputadora tambin requiere
uno o ms puertos que permitan a la CPU comunicar el resultado de su actividad al
mundo exterior. La salida puede ir a un visualizador de televisin, para ser usada por un
operador o un impresor para producir una copia legible en papel, tambin puede estar
constituida por seales para el control de procesos que dirijan las operaciones de otro
sistema.
Tanto los puertos de entrada como los de salida son direccionables, es decir;
para trasmitir informacin hacia el puerto, o recibirla donde est, es necesario que la
CPU enve previamente un nmero que lo identifica y que constituye a su vez la
direccin del puerto.
Dos tipos de entrada-salida se hallan en la computadora en una tarjeta: los
puertos de entrada-salida en paralelo y los puertos de entrada-salida en serie.
Los PIO paralelos permiten la entrada-salida de datos en forma paralela, es decir,
todas las lneas del bus de datos entran o salen a la vez de la microcomputadora, lo que
posibilita una transferencia de datos entre la CPU y cualquier equipo perifrico a alta
velocidad.
Los PIO en paralelo ms usados son los de tipo programable, es decir, que puede
la misma pastilla ser usada como entrada o como salida de acuerdo con el programa de
instrucciones que realice el usuario.
Ejemplo : El circuito integrado 8255 constituye un PIO programable con E/S Paralelo
Tiene 8 terminales de datos que se conectan al bus de datos y 24 terminales de salida
que pueden agruparse en tres grupos de 8 bits, 4 grupos (2 de 8 bits y 2 de 4 bits).
Bus de 8
Datos D0-D7 PA
A0
8
A1 PB

Rd 8255 8
Wr PB

Cs

9
A1 A0 Rd Wr Cs
x x x x 1 D0-D7 en 3er estado
x x 1 1 0 D0-D7 en 3er estado
0 0 1 0 0 D0-D7 Puerto A
0 0 0 1 0 D0-D7 Puerto A
0 1 1 0 0 D0-D7 Puerto B
0 1 0 1 0 D0-D7 Puerto B
1 0 1 0 0 D0-D7 Puerto C
1 0 0 1 0 D0-D7 Puerto C
1 1 1 0 0 D0-D7 Palabra de
Control

De acuerdo con la tabla que se muestra, puede conocerse la combinacin que se


necesita aplicar a las entradas para producir el traspaso de la informacin en cualquier
sentido entre el bus de datos y las salidas Pa, Pb y Pc.
Los PIO serie se emplean cuando se requiere que la transferencia de datos entre
los perifricos y la computadora, se realice en forma serie, es decir, bit a bit de cada
octeto de dato. Por ejemplo, cuando se trasmiten datos entre dos computadoras a travs
de una lnea telefnica, el formato que se utiliza es el de la transmisin en serie.
Como la microcomputadora trabaja con los datos en paralelo, para trasmitir o
recibir datos en serie es necesario un PIO que conecte datos de paralelo a serie y
viceversa
La gran ventaja de la transmisin en serie es que necesita solamente dos
alambres para trasmitir todas las seales necesarias entre mdulos o sistemas. Por otra
parte, la desventaja radica en que el intercambio de datos se realiza a menor velocidad
que si fuera en paralelo.

Ej.: El circuito integrado 8251.

Bus de Datos D0-D7


TxD Salida de Datos Serie

Rd RxD Entrada de Datos Serie

Wr

Clock 8251
Cs

1.3.3- Unidad Central de Procesamiento (CPU).

Es el corazn de la microcomputadora, siendo la encargada de unificar el


sistema a la vez que controla las funciones realizadas por las otras unidades .

10
Esta unidad es capaz de buscar instrucciones en la memoria, decodificar su
contenido y ejecutarlas. Es la encargada de comunicarse con la memoria y con los PID
tantas veces como sea necesario durante la ejecucin de un programa. La CPU deber
tambin reconocer y responder a ciertas seales de control externo, tales como
solicitudes de interrupcin u otras a fines. Lleva en su interior la base de tiempo que
genera los ritmos o impulsos de reloj de las diferentes partes del sistema .
Todas las instrucciones tienen dos tiempos fundamentales, llamados busca
(fetch) y ejecucin (execute). El tiempo de ejecucin empieza por un subtiempo de
decodificacin de la instruccin y prosigue con la parte de ejecucin que puede tener
varios subtiempos , dependiendo del tipo de instruccin. La suma del tiempo de busca y
el de ejecucin, da lo que se conoce como ciclo de instruccin y el mismo depende no
solo del tipo de instruccin sino tambin de las caractersticas de velocidad de la CPU.
La CPU realiza tambin las operaciones aritmticas y lgicas, as como la
transferencia entre acumulador, registros de trabajo, etc.
Cuando la CPU se fabrica en un solo chip, a dicha estructura como sealamos
anteriormente, se le da el nombre de microprocesador. Por la importancia que tienen
estos dispositivos, en los epgrafes siguientes de este material se realizar un estudio
ms detallado del mismo.

2-Microprocesadores.
Pocas reas de la electrnica han experimentado un progreso tan acelerado como
el ocurrido en el caso de los microprocesadores, las microcomputadoras y sus circuitos
asociados correspondientes. La complejidad de los circuitos integrados prcticamente se
ha ido duplicando en cada ao a partir de los inicios de la dcada de los 60.
Como consecuencia de este desarrollo, a finales de la dcada aparecieron los
circuitos integrados de gran nivel de integracin (LSI) los cuales realizaban funciones
de un alto grado de complejidad. Ejemplo de ello fue el desarrollo de unidades lgico-
aritmticos (ALU) en un chip, que podan ejecutar muchas de las funciones de las
microcomputadoras actuales como son la suma, la resta, rotacin y desplazamiento.
Sin embargo, no fue hasta 1971 en que fue posible combinar esta unidad (ALU)
con circuitos secuenciales tales como flip-flops, registros de desplazamientos y otros
elementos, todo dentro de un chip, para dar lugar a un rudimentario microprocesador.
La tcnica de los microprocesadores implica una unin indisoluble entre el
HARDWARE y el SOFTWARE. No ser posible la construccin de un sistema
completo si no se trabaja en ambos sentidos.
Una microcomputadora est compuesta por un microprocesador, circuitos de
entrada-salida y las memorias, todo ello unido a los equipos perifricos, estando
ntimamente ligada la cantidad de estos elementos con las caractersticas de la
aplicacin particular.
El microprocesador es el puesto de mando donde se dirige el proceso de la
computadora y en el que ocurre una buena parte de l. De este componente depende la
velocidad del proceso, el sistema operativo que se correr e incluso una importante
porcin del consumo energtico del equipo y del costo del sistema. Est constituido por
un chip de silicio cuya rea aproximada en dependencia del modelo es de apenas 1.5
cm2 y en este reducido espacio se encuentran dispuestos varios millones de transistores
que son los verdaderos actores de procesamiento lgico de la informacin.
Desde el ms humilde Intel 4004 que en 1971 trabajaba a 0.2 MHz., hasta el
impresionante Pentium 4 de Intel con 3 GHz., todos los MP en esencia hacen lo mismo:

11
reciben la informacin binaria y la procesan sobre la base de instrucciones predefinidas
que generan una nueva informacin tambin binaria.
El MP reacciona constantemente a las instrucciones, pero no puede hacerlo con
todas a la vez, porque estas se atascaran. Ello se resuelve mediante una espera del
procesador hasta que se aprueba la recepcin de la seal. El reloj del sistema determina
el tiempo de espera. A espacios definidos de tiempo, el reloj enva impulsos elctricos
que marcan al sistema el rango de estas esperas. Si una instruccin se halla en espera y
el procesador no est ocupado con instrucciones previas, le da entrada y trabaja con
ellas. El nmero de instrucciones que el MP puede procesar por cada una de estas
pulsaciones de reloj (ciclos) depender del diseo o arquitectura del mismo. En sus
inicios las CPU podan manejar una sola instruccin por ciclo, pero en la actualidad esa
cifra se ha incrementado notablemente a partir de dos concepciones aplicadas a la
construccin de esos sistemas: la canalizacin y la ejecucin superescalar.
La canalizacin permite que el procesador lea una nueva instruccin de la
memoria antes de terminar la fase de la instruccin en curso. Algunos de los modernos
MP pueden trabajar simultneamente con varias instrucciones. La profundidad del canal
ser la medida del flujo de datos que puede aceptar el sistema. Digamos por ejemplo
que el 80486 tiene una profundidad de canal de 4, o sea, que hasta 4 instrucciones
pueden encontrarse en distintas etapas de canalizacin, ya en el pentium esa cifra es de
5 y crece en el diseo de CPU con tecnologa MMX y otros equivalentes como el K6 y
en superiores como el pentium II.
La ejecucin superescalar significa que el sistema posee ms de un canal, lo que
significa que puede procesar ms de un grupo de instrucciones a la vez. Si bien
tcnicamente esto debera multiplicar el desempeo, en la prctica no es exactamente
as, pues ocurre que un canal espera a que termine el otro. No obstante, en trminos
prcticos optimiza el funcionamiento del procesador.
En la historia de los MP han existido dos filosofas de diseo: la CISC y la
RISC.
CISC (Complex Instruction Set Computing), creada por IBM como un software sencillo
almacenado en el chip y que contena las instrucciones para el procesador, permiti
salvar el escollo que represent la complejidad sucesiva de las aplicaciones de software
que en otras circunstancias habra llevado al cambio constante del hardware en funcin
de los programas. Al ejecutarse, los programas CISC ocupaban menos espacio en
memoria y esta ltima vala en los aos 60 y 70 ms que el oro. CISC se incluye en los
procesadores Mainframe de IBM, los Motorola 680X0 y es emblemtico de los
procesadores Intel, principalmente de los X86 y todava se utiliza en los pentium
actuales.
En el diseo RISC (Reduced Instruction-Set Computing), existen menos
instrucciones, cada una tiene una longitud de 32 bits y se ejecuta en un solo ciclo de
reloj. Con esta arquitectura, los procesadores incorporan una cach de memoria de alta
velocidad en la que se almacenan la secuencia de instrucciones a ejecutar. El uso eficaz
de tales datos depende en gran medida de la canalizacin, que en esta arquitectura
adquiere un protagonismo indiscutible. Bajo esta concepcin se desarrollaron algunas
de las CPU ms poderosas en la actualidad tales como los Power PC de Macintosh,
incluido el clebre 750, ms conocido como G3, los alpha de las estaciones Silicon
Graphics y los SPARC de Sun Microsystem. Incluso hasta unidades tan sencillas como
las mquinas de juego Nintendo, poseen en su interior uno de estos dispositivos.
Por sus innumerables aplicaciones los microprocesadores han invadido los ms
diversos campos de la ciencia y la tcnica, abarcando desde complejos sistemas de
control o de computo hasta sencillos equipos electrodomsticos o de juguetera,

12
incluyendo sistemas de comunicacin de datos, diagnstico mdico, control numrico
de mquinas herramientas y otros.
Dentro de las ventajas de los sistemas con los microprocesadores podemos
sealar las siguientes:
a-) Pueden realizar muchas operaciones por software, en lugar de usar componentes
electrnicos.
b-) Reduccin del tamao, no slo del microprocesador, sino del resto de los circuitos
que lo complementan.
c-) Aumento de la fiabilidad, ya que disminuye el nmero de componentes.
d-) Flexibilidad en el diseo.
e-) Disminucin de los costos tanto en diseo, como de la produccin y reparaciones.
En cuanto a las desventajas mencionaremos:
a-) El aprendizaje del software, pues cada microprocesador posee un juego de
instrucciones a las cuales responde.
b-) Los mtodos difciles de prueba que deben hacerse a la velocidad de trabajo del
microprocesador.

2.1) Estructura tpica de un microprocesador de 8 bits. ( ver esquema anexo).

An el microprocesador ms simple presenta una estructura compleja, pues en


ella se encuentran un gran nmero de nudos y unidades tales como sumadores,
decodificadores, registros de todo tipo, flip-flops, esquemas lgicos, etc.
Por otra parte, la rapidez, potencia y complejidad de estos dispositivos se
perfeccionan ms cada da, por lo cual no es posible en un material de este tipo efectuar
un estudio profundo de este aspecto, adems de irse fuera de los objetivos que no hemos
trazado con su escritura.

Es por ello que para brindar una idea general de la estructura y lograr una
comprensin ms simple, analizaremos como se conforman los MP de 8 bits y para ello
consideraremos la existencia de dos bloques funcionales dentro del microprocesador, a
los cuales denominaremos como bloque, subsistema o unidad de procesamiento, y
bloque, subsistema o unidad de control.

2.2) Bloque de Procesamiento.

El ncleo fundamental del bloque de procesamiento lo constituye la unidad


aritmtica y lgica (ALU), la cual est conformada por un circuito combinacional capaz
de realizar las operaciones aritmticas (suma y resta) y lgicas (and, or, not, etc)
indicadas en el cdigo de la operacin.
Para poder realizar su funcin la ALU cuenta con la ayuda de varios registros.
La ALU puede operar con los datos provenientes de uno o a lo sumo dos de los registros
a la misma vez. Uno de estos registros es ms verstil que los restantes y recibe el
nombre de acumulador, mientras que los otros registros se denominan de propsito
general.
Estos registros se utilizan para:
-almacenamiento temporal de datos y direcciones
-su contenido se puede transferir entre ellos y con la memoria
-sumar su contenido con el que existe en el acumulador
-comparar su contenido con el que existe en el acumulador
-incrementar o decrementar su contenido, etc.

13
El acumulador adems de las funciones antes mencionadas podr:
-rotar su contenido
-complementar su contenido
-aceptar o enviar datos a los PIO
-realizar operaciones aritmticas y lgicas con el contenido de cualquiera de los
registros de propsito general
-en general el acumulador siempre es el origen de uno de los operandos y el destino del
resultado.

Los dispositivos encargados de transferir el contenido del registro seleccionado


hacia la entrada de la ALU son los llamados multiplexores. Igualmente otros
multiplexores sern los que muevan la informacin desde la salida de la ALU hacia un
registro de destino, donde se mantiene la informacin hasta que sea requerida por algn
circuito externo. Todas estas operaciones son controladas por un circuito secuencial el
cual se acopla a todos los registros y multiplexores. Por ejemplo, para un
microprocesador de 8 bits, el acumulador y los multiplexores son dispositivos capaces
de manejar una longitud de palabra de 8 bits, aunque en el caso de los registros de
propsitos generales pueden en ocasiones utilizarse por parejas y conformar una
estructura de 16 bits.
2.2.1) Registro de Indicadores.

Existe aqu adems un registro sumamente importante denominado registro de


indicadores o banderas, el cual trabaja muy vinculado a la ALU, ya que le va indicando
a sta el estado de las operaciones aritmticas o de rotacin que va realizando.
Por ejemplo en el MP 8080 el registro de indicadores posee 8 bits, pero slo 5 de
ellos son significativos de acuerdo a la estructura que se muestra a continuacin:

SIGNO ACARREO PARIDAD ACARREO

S Z X A X P X C
D7 D6 D5 C D3 D2 D1 D0
D4
CERO

DO (ACARREO)-Se activa en 1 cuando al realizar una operacin aritmtica el resultado


no cabe en el acumulador.
Ejemplo: Binario Decimal
11011001 207
+10010001 145

Acarreo 101101010 452

Al realizar una operacin de dos bytes se obtuvo como resultado un nmero de 9


bits, hacindose necesario entonces un 1 en el indicador de acarreo.

D2 (PARIDAD) - Si al efectuar una operacin, el nmero de bits presente con el estado


lgico 1 es par (2, 4, 6 u 8), se fija un 0 lgico en el bit de paridad. De la misma forma

14
si el nmero de 1 lgicos en el acumulador es impar (1, 3, 5 7), se fija un 1 lgico en
dicho bit de paridad.
Ejemplo: Si en el acumulador hay 11001100 entonces D2 es cero, pero si el contenido
del acumulador es 10101000 entonces D2 es 1.

D6 (INDICADOR DE CERO). - Se activa con 1 lgico cuando el resultado de la


operacin en el acumulador da 00000000, y presenta un 0 lgico en caso contrario.

D7 (INDICADOR DE SIGNO). Si est en 1 lgico indica que el contenido del


acumulador es negativo y el 0 lgico indica que es positivo.

D4 (ACARREO AUXILIAR).- El programador no tiene acceso a l. Se utiliza para


convertir un nmero de binario a BCD.

En otros microprocesadores pueden emplearse otros tipos de indicadores.


Algunos de ellos los relacionamos a continuacin:
E - se activa con la existencia de dos palabras de entrada iguales.
GT-indica una palabra de entrada mayor que la existente en la otra entrada.
GE- indica una palabra de entrada mayor o igual que la existente en la otra entrada.
LT- indica una palabra de entrada menor que la existente en la otra entrada.
LE - indica una palabra de entrada menor o igual que la existente en la otra entrada.

2.3) Bloque de Control.

El bloque o unidad de control constituye el cerebro rector de todas las


actividades dentro del microprocesador. Entre sus funciones fundamentales se encuentra
el decodificar (interpretar) los cdigos de operacin de las instrucciones del programa, y
el generar las seales que viajan por el bus de control, las cuales deben estar
sincronizadas para su correcta manipulacin por el resto de las unidades.

Dentro de las secciones que constituyen esta unidad se encuentra el registro de


instrucciones, el decodificador de instrucciones y el contador de programa.

Un contador de programa tpico para un microprocesador de 8 bits, almacena


una palabra de 16 bits. El contenido de este contador se corresponde con la localizacin
de memoria externa donde se encuentra la instruccin que se ejecuta por el
microprocesador; o lo que es lo mismo, la direccin de la memoria que se encuentra
activada. Este contador se incrementa automticamente en una unidad durante cada
ciclo de mquina.
Cuando se inicia el proceso de ejecucin de un programa, un circuito externo fija
el contenido del contador de programa el cual ser la direccin especfica de la memoria
en la cual se encuentra almacenada la primera instruccin del programa. Esta
instruccin se lee en la memoria, y mediante el bus de datos se traslada al registro de
instrucciones.
El registro de instrucciones es el encargado de almacenar temporalmente la
instruccin extrada de la memoria para que el decodificador de instrucciones determine
cul es la operacin que se debe hacer. De acuerdo con ello este decodificador producir
las seales necesarias para encaminar los datos en un sentido o el otro, indicar que
operacin deber hacer la ALU y si hay que producir algn cambio en el contador de

15
programa, a la vez que emitir las seales para entrelazar todos los diversos registros del
microprocesador que son necesarios para la ejecucin del una instruccin en particular.
La unidad de control cuenta adems con una seccin de tiempo o sincronizacin
que realiza una funcin muy importante, pues el MP como ya hemos sealado a partir
de la salida del decodificador de instrucciones tiene que especificar los ciclos
apropiados de mquina que son necesarios para la ejecucin correcta de dicha
instruccin. Todo esto es posible lograrlo mediante la generacin de la seal de control
y de tiempo internas apropiadas y su envo a los diferentes elementos y componentes
dentro y fuera de MP.
Para sincronizar todo este proceso los MP disponen de un generador interno de
pulsos llamados pulsos de reloj, cuya frecuencia se controla exteriormente mediante una
red RC o modernamente mediante un CRISTAL conectado a sus terminales .
En el microprocesador se encuentran tambin presentes algunos registros
adicionales que se utilizan para el almacenamiento temporal de datos. Por ejemplo,
usualmente se coloca un registro entre el contador de programa y la memoria, que se
denomina registro de direcciones de memoria (MAR); y entre la memoria y el registro
de instrucciones en ocasiones se emplea un registro denominado registro de datos de
memoria (MDR).
Cada instruccin programada por un usuario requiere de la realizacin de un
determinado nmero de operaciones internas denominadas microinstrucciones, y de
aqu surge la necesidad de almacenar un cierto nmero de resultados intermedios. El
conjunto particular de microinstrucciones de un microprocesador se almacena en una
ROM llamada ROM de control o microROM, la cual generalmente se encuentra dentro
del propio C.I. del microprocesador.

2.4) Temporizacin y Sincronizacin.

En cada microprocesador, el tiempo de duracin de los eventos, o sea, la


velocidad a la cual se procesa, est determinado por los pulsos de reloj. Estos pulsos
difieren de un MP a otro, utilizndose en algunos de los casos un slo tren de pulsos,
mientras que en otros se emplean dos. En el ejemplo representado en la figura se
emplean dos trenes o grupos de sucesin de pulsos Q1 y Q2, suministrando por un
generador de reloj, llamado comnmente slo como reloj.

Perodo de reloj

Cada tren de pulsos est compuesto de pulsos cuadrados idnticos en amplitud,


duracin y frecuencia de repeticin, pero la fase Q1 est desplazada de la fase Q2 por
medio perodo, o sea, la salida de Q2 est demorada T/2 en relacin con la salida de Q1.
El cambio de un estado a otro del MP se produce en sincronizacin con estos
pulsos de reloj. La secuencia de estados a travs de los cules se desplaza el control

16
durante el procesamiento de una instruccin, es a lo que se le denomina ciclo de
instruccin.
La sucesin de estados (generalmente entre 3 y 5) en los cuales se efecta una
comunicacin con la memoria y se procesa el dato por este comunicado, constituye lo
que se conoce con el nombre de ciclo de mquina. En general un ciclo de instruccin
est compuesto de uno o varios ciclos de mquina en dependencia de su complejidad.

2.5) Instrucciones que alteran el contador de programa .

Existen instrucciones que conllevan a una alteracin del contenido del contador
de programas. Dentro de ellas se encuentran la realizacin de las siguientes operaciones:
a) salto incondicional (JMP)
b) salto condicional (JNZ , JP)
c) salto a subrutinas (CALL , CNC , CC)
d) instrucciones de retorno (RET , RPU , RM)
e) instrucciones de carga (PCHL)
d) interrupcin.
Siempre que se realice un salto a subrutina debe, despus de haberla ejecutado,
aparecer una instruccin de retorno, y el contador de programa debe retornar a su valor
original desde donde salt para continuar la ejecucin del programa.
Para garantizar esto se crea una zona en memoria (RAM) llamada STACK
(pila), llamada as por la estructura que tiene de almacenar los datos en forma de pila,
donde el ltimo dato que entra es el primero que sale (LIFO - last in first out).
Cuando se realiza un salto a subrutina, el contenido del contador de programa
(PC) se guarda en la pila; si dentro de esa subrutina salta a otra, se vuelve a guardar en
la pila el contenido que tenia el contador de programa y as sucesivamente; esto permite
que al ir terminando la ejecucin de cada subrutina se vaya retornando hacia el
programa principal con slo llevar con cada instruccin de retorno el ltimo dato que
entr a la pila al PC.
Pero existe un detalle muy importante. Es necesario saber en que localizacin de
memoria se encuentra el ltimo dato que queda en la pila. Es por ello que existe el
puntero del stack.

17
2.5.1)Puntero del STACK (SP).

Es un registro de 16 bits que se encuentra dentro del MP, encargado de indicar la


prxima localizacin posible de memoria a ser ocupada dentro del stack. Este registro se
carga inicialmente con el cdigo que representa la primera capacidad de memoria vaca
que ser utilizada como pila y se ir decrementando en una unidad cada vez que se
introduzca un dato de 8 bits. Por cada dato extrado se produce un incremento.
Veamos cmo trabaja el puntero del stack mediante un esquema:

PROGRAMA PILA SUBRUTINA A PILA SUBRUTINA B


PRINCIPAL
SP
SP DR2
DR1 DR1

1 2
DR2
DR1

4 3

PILA PILA

SP
SP DR1

Si la salida del programa en lugar de ser por un salto a subrutina es por una interrupcin,
adems de la direccin en que se estaba, en la pila se guardan los datos necesarios para
poder continuar la ejecucin del programa.

2.5.2) Interrupciones.

Formalmente el tratamiento de interrupciones es bastante semejante al de salto a


subrutina, pues en realidad es un salto a subrutina. Sin embargo, este es un nuevo
mecanismo con una funcin diferente y, por cierto, muy utilizado en las aplicaciones
con microprocesadores.
En principio cuando un procesador ejecuta un programa no existe forma de
alterar la frecuencia predeterminada (y que incluye, claro est, saltos y subrutinas).
En estas condiciones la CPU slo se entera de acontecimientos externos (por
ejemplo llegada de datos o peticin de resultados por parte de algn perifrico), si se
realiza por iniciativa del programa una verificacin de dichos posibles acontecimientos.
Ello obligara al programador a incluir peridicamente subrutinas de comprobacin de
perifricos y llevar en todo momento control de los tiempos de ejecucin.
Las interrupciones son solicitudes de servicio que llegan por lneas especiales
(en un mecanismo de hardware), y que pueden recabar la atencin de la CPU en

18
cualquier momento. Despus ser cuestin del procesador el decidir si dicho servicio es
prioritario o no sobre lo que estaba haciendo, y romper la secuencia en curso.
Como ya se ha dicho, formalmente una interrupcin es muy parecida a un salto a
subrutina, pero la llamada no se realiza por una instruccin especial sino activando
asncronamente una lnea especial (puede haber varias). La CPU termina la instruccin
en curso y despus o sale hacia donde debe saltar o lo pregunta. Los detalles deben ser
estudiados en relacin a cada mquina en concreto.
Existe sin embargo una diferencia muy importante entre el salto a subrutina
dentro de un programa y el salto a la subrutina de atencin a una interrupcin. Cuando
el procesador la recibe, est ejecutando una tarea que en cada momento est
representada por un conjunto de informaciones de las cuales depende la evolucin
posterior de su trabajo, y que deben de ser preservadas si la tarea que est realizando
ahora, ms adelante ha de reemprenderse en el mismo punto en que se abandon para
atender la interrupcin.
Estas informaciones pueden ser resultados parciales o datos en memoria, datos
presentados por el medio exterior, etc. que en principio no se pierden ni se alteran por el
cambio de tarea pero tambin se necesita guardar todo el estado de la CPU, es decir, el
contenido de sus registros, pues estos van a sufrir alteraciones. Por tanto en el salto a
interrupcin no basta con guardar el contenido de PC (direccin de retorno) sino que es
necesario guardar en principio los contenidos del acumulador, registro de estado,
registros generales de trabajo, etc. Para ello se utiliza tambin el stack. Segn el
microprocesador que se trate, la salvaguarda del estado se realiza automticamente al
aceptar la interrupcin, o bien el mismo programador lo incluye como primeras
instrucciones en la subrutina del servicio. De la misma forma la recuperacin de estos
datos puede ser automtica con la instruccin RTI (retorno desde interrupcin), o bien
por instrucciones especiales antes de RET. Las instrucciones especiales son PUSH,
guardar un dato en el STACK (al mismo tiempo que se decrementa el SP), o POP,
recuperar un dato del STACK (incrementando previamente SP).
Las operaciones de entrada-salida controladas por interrupcin se deben utilizar
cuando el tiempo de respuesta a la solicitud de atencin por parte de un perifrico ha de
ser lo ms rpido posible.
La secue ncia de operaciones es la siguiente:

- el perifrico solicita seal de servicio a travs de una seal que activa una de
sus lneas de interrupcin

- la CPU completa la ejecucin de la instruccin en curso, guarda el contenido


del contador de programa (para asegurar la direccin de retorno) y salta a ejecutar la
subrutina de interrupcin, emitiendo una seal de reconocimiento a esta interrupcin

- la subrutina de interrupcin deber, a veces, determinar el circuito que ha


solicitado servicio, y en consecuencia, la direccin del programa que realmente se debe
ejecutar. Tambin deber guardar el contenido de los registros de trabajo, en el caso que
no se haga en forma automtica

- se ejecuta el programa de atencin al perifrico

- el contenido del contador de programa de los registros es restaurado y la


ejecucin del programa que se haba interrumpido se reanuda.

19
2.6) Acceso directo a memoria.

El acceso directo a memoria es un procedimiento hardware que permite la


transferencia de datos entre un perifrico y memoria, solo limitado por la velocidad de
acceso a memoria y sin intervencin de la CPU. Este procedimiento se utiliza en la
transferencia de datos y tiene que ser muy rpido, por lo que no puede ser controlado
por el microprocesador. Tal es el caso de los visualizadores con tubos de rayos
catdicos, los cuales las velocidades de transferencia de datos que requieren son tan
altas, que no las permite ningn tipo de PIO bajo el control directo del microprocesador
y su programa asociado.

La secuencia de operaciones que se utiliza es la siguiente:

- el perifrico provoca una interrupcin en un circuito especial denominado


controlador de DMA.
- el controlador solicita la suspensin de la ejecucin de trabajo al CPU
mediante la seal de HOLD
- la CPU completa la instruccin que est ejecutando en el momento de recibir la
seal HOLD y entonces pone en tri-state (tercer estado) sus buses, y enva una seal de
reconocimiento al controlador (HLDA)
- el controlador utiliza los buses para iniciar la transferencia, llevando el control
de la direccin de arranque y el nmero de bytes a trasmitir
- terminada la transferencia, el controlador desactiva la seal de HOLD,
permitiendo a la CPU reanudar su tarea.

Existen circuitos integrados controladores de DMA que pueden gestionar varios


canales de acceso a memoria.
Algunos microprocesadores (8080, Z80, etc.) tienen independizado el acceso a
la memoria y a las PIO mediante instrucciones diferentes (MOV A,M ; IN XX ; etc. ),
esto implica la existencia de seales de control especializadas para cada tipo de acceso,
de tal forma que se pueden diferenciar claramente los direccionamientos de memoria y
de PIO. Por el contrario, existen otros (6800, etc.) que no tienen esta diferenciacin y
las PIO ocupan posiciones reales en el direccionamiento de memoria y son tratados
como tales con el mismo tipo de instrucciones. El primer procedimiento tiene la ventaja
fundamental de independizar los procesos de memoria y I/O y tiene el inconveniente de
la falta de flexibilidad en el tratamiento de la informacin, ya que todos los
intercambios se realizan a travs del acumulador; el segundo procedimiento tiene las
ventajas de flexibilidad que se derivan de considerar los PIO como verdaderas
posiciones de memoria en funciones de entrada-salida.
Los circuitos de I/O operan normalmente de una forma asncrona respecto al
modo de operacin del microcomputador, y resulta necesario sincronizar la ejecucin
del programa con la operacin de los circuitos I/O. El mtodo adoptado depende del
tiempo mximo de retraso que se permite en la atencin a los acontecimientos que
reflejan las I/O y de la posibilidad de intercalar las actividades de proceso con la de
adquisicin y emisin de datos. Las transferencias de datos de I/O se pueden organizar
de las siguientes formas:

1) Operaciones de I/O por acceso directo a memoria (DMA).


2) Operaciones de I/O controladas por interrupcin.

20
3) Operaciones de I/O controladas por programas.

Los dos primeros casos ya han sido explicados con anterioridad. En el tercer
caso es el microprocesador a instancias del programa el que inicia y controla todos los
tipos de transferencia de datos, o sea, la CPU solicita informacin de entrada o enva
informacin a la salida, posicionando las seales correspondientes de direccionamiento
y de control. Tiene como ventajas la facilidad de implementacin de hardware y
software y la facilidad de intercambio, siendo su principal inconveniente su falta de
validez para control de procesos en tiempo real.

2.7) Operacin paso a paso de un Microprocesador.

Aunque a primera vista el tratamiento de un MP como un elemento de circuito


pudiera aparecer como una tarea muy compleja, cuando se mira como un dispositivo
que pasa por mltiples estados, se simplifica notablemente y su operacin paso a paso
puede describirse en trminos ms simples, como ilustramos a continuacin mediante
un ejemplo .
Veamos cul es la actividad que se requiere realizar para imprimir un carcter el
cual ha sido previamente cargado en el acumulador.

Asumimos que el perifrico a considerar es una impresora: El software que necesitamos


est almacenado en la memoria y consta de tres palabras de 8 bits (3 bytes) que
contienen el cdigo de la operacin a imprimir seguido de dos bytes que definen la
direccin de la impresora . Para imprimir el carcter, el MP transita por los nueve
estados que se muestran en la figura:

M1-T1
M2-T1 M3-T1 M4-T1

M1-T2 M2-T2 M3-T2 M4-T2

M1-T3

Si nosotros asumimos por conveniencia que la frecuencia impuesta por el reloj


es de 1 MHz, nuestro circuito cambiar sus estados cada vez que transcurra 1
microsegundo. La accin que se realiza en cada estado se explica a continuacin:

Estado M1-T1. El contador de programa se conecta al bus de direcciones y coloca en


ste la direccin de memoria en la cual est almacenado el primer byte.
Simultneamente un pulso de lectura es generado por la unidad de tiempo y control y
enviado por el bus de control a la memoria, causando que el primer byte, o sea, el
cdigo de operacin, pueda ser ledo de la memoria.

21
Estado M1-T2. Asumamos que la memoria toma menos que un microsegundo en
responder. Esto significa que cuando nuestro circuito entra en este estado, el primer byte
ya se encuentra en los terminales de salida de la memoria. Es por ello que en este estado
el registro de instrucciones (RI) se conecta al bus de datos, producindose el enlace
directo entre la memoria y este RI, el cual recibir la seal de control que le indica que
debe almacenar la informacin existente en la memoria y que se le enva a travs del
bus de datos. Note que el bus de direcciones no est siendo usado en este estado.
Estado M1-T3. En este estado el cdigo de operacin se decodifica. La salida del
decodificador posibilitar la secuencia correcta de estados y las seales que debe
generar la unidad de control para que la instruccin sea correctamente ejecutada. En
nuestro caso ello
implica transitar por los estados M2-T1 , M2-T2 , M3-T1 , M3-T2 , M4-T1 y M4-T2.
En este estado ni el bus de control ni el de datos han sido utilizados.

Estado M2-T1. La accin realizada en este estado es idntica a la del estado M1-T1, con
la excepcin que el PC ha sido incrementado.
Estado M2-T2. En este estado el DB se conecta al registro de direcciones y mediante un
pulso correspondiente de control este graba el segundo byte en el lugar correspondiente
(este es un registro de 16 bits).

Estado M3-T1. La accin es semejante a los estados M1-T1 y M2-T2, con la excepcin
que el PC tiene la direccin del tercer byte.
Estado M3-T2. Cuando el MP asume este estado, se obtiene el siguiente byte
componente de la direccin, generndose por la unidad de control las seales apropiadas
para grabar este byte en el lugar correspondiente del registro de direcciones.

En el transcurso de esta secuencia de estados desde M1-T1 hasta M3-T2 hemos


realizado el ciclo de bsqueda de la instruccin. En este punto dentro del MP se posee la
informacin del cdigo que define la operacin, y la direccin de la impresora.

Estado M4-T1. El registro de direcciones se conecta al AB por lo que la informacin


que ste posee puede ser decodificada, generndose as la seal que permite identificar a
que perifrico se quiere acceder (en nuestro caso la impresora).
Estado M4-T2. En este estado el acumulador se conecta al DB, y a travs de ste y los
interfaces correspondientes se enva la informacin a la impresora. Al mismo tiempo, el
interface monitorea las seales de estado del MP en el bus de control, las cuales son
usadas para generar las seales de control necesarias para activar la impresora y permitir
as que el carcter en el acumulador se imprima.

Para concretar ideas vamos a describir la ejecucin de un corto programa


referido a un microprocesador de 8 bits (m=8) y direcciones de 16 bits (n=16) que
utiliza las instrucciones LDA (load acumulator, carga del acumulador con el contenido
de un registro de memoria ), ADD ( add acumulator, suma al acumulador el contenido
de un registro de memoria ) , y STA (store acumulator, guardar el contenido del
acumulador en un registro de memoria ).

El programa lee un dato de memoria en la direccin 006AH y lo guarda en el


acumulador. Le suma el dato de al direccin 006BH y guarda el resultado en 0080H .

22
El contenido de la memoria que nos afecta es el siguiente :

DIRECCIN CONTENIDO DIRECCIN CONTENIDO


C000 B6(LDA) 006A 02
C001 00 ---- --
C002 6A ---- --
C003 BB(ADD) 006B 05
C004 00 ---- --
C005 6B ---- --
C006 B7(STA) 0080 ?
C007 00 ---- --
C008 80 ---- --

En la zona C000H a C008H est contenido el programa, mientras que en 006AH


y 006BH estn los datos que vamos a manejar.
La secuencia de operaciones para la primera instruccin es:
- El contador de programa PC coloca su contenido (C000H) en el bus de direcciones AB
y de ah se toma por el registro de direcciones de memoria MAR. A partir de ah se
desencadena una operacin de lectura en memoria a consecuencia de la cual, el
contenido de la direccin apuntada por PC (que es B6H) aparece en el registro de datos
de memoria MDR. De ste es transferido al registro de instrucciones IR y
simultneamente, el PC se incrementa en 1.
- La decodificacin de B6H indica que se trata de una instruccin de carga en el
acumulador del contenido de la direccin indicada (contenida) en los bytes siguientes
C001H y C002H. Para ello PC se incrementa dos veces y se producen dos nuevas
lecturas, siendo 00 el resultado de la primera y 6A de la segunda, y esta informacin se
carga en un registro temporal de direcciones TAR. La fase de bsqueda de la
instruccin ha terminado.
- El contenido de TAR es enviado a MAR y se procede a una nueva lectura. El registro
MDR coloca 02 en el bus de datos DB y de ah pasa al acumulador. La primera
instruccin ha sido ejecutada.
- Para la segunda instruccin las tres primeras fases de bsqueda son idnticas y al final
de ellas IR contiene BB y TAR 006B. En la fase de ejecucin, el contenido de TAR es
enviado a MAR y se procede a una nueva lectura. El MDR coloca 05 en DB y de ah
este contenido pasa a uno de los registros de utilizacin general RUG. La ALU procede
a sumar el contenido de este RUG con el contenido del acumulador ( 05+02=07 ) y el
resultado se guarda en el propio acumulador. En PC se encuentra el contenido C006H.
- Para la tercera instruccin tambin las tres primeras fases (bsqueda) son iguales
quedando IR con B7 y TAR con 0080: En la fase de ejecucin el contenido de TAR se
enva a MAR, mientras que el contenido del acumulador se lleva a MDR. Al final, en la
posicin 0080 queda escrito el resultado de 07 que es la suma de los datos almacenados
en 006AH y 006BH.
El programa analizado escrito en lenguaje nemotcnico sera:
LDA 006AH
ADD 006BH
STA 0080H
Observamos que en el programa analizado no se produce la ruptura de secuencia
para la toma de decisiones, ni se ha hecho uso de subrutinas ni del mecanismo de
interrupciones. El estudiante interesado en profundizar en el tema de programacin de

23
microprocesadores deber consultar los textos de referencia que aparecen al final del
presente material.

2.8-) Campo de aplicacin de los microprocesadores

Como ya se ha dicho un MP es bsicamente una CPU de ordenador, integrada


con tecnologa LSI. Visto de esta forma no representa ms que un avance tecnolgico
en el campo de los ordenadores, pero en realidad conlleva unas consecuencias
revolucionarias, ya que representa una democratizacin de la informtica y una
generalizacin de su uso que se manifiesta por ejemplo, en la aparicin de los
ordenadores personales. Los efectos que se producen se aprecian clarsimamente en los
campos de la automtica, las comunicaciones y la instrumentacin.
Los Microprocesadores en efecto constituyen un pequeo mundo aparte. Su uso
es diferente al de una microcomputadora, que en la gama de las mquinas de propsito
general, sera la ms prxima a ellos. En efecto la microcomputadora aparece
generalmente como un sistema cerrado en el cual el usuario no interviene ms que con
mucho para conectarle algn perifrico extra o dotarle de un software especfico para su
aplicacin. En cambio el diseador de aplicaciones con microprocesador desciende
hasta un nivel ms profundo para construir un sistema a la medida, sin llegar sin
embargo a convertirse en arquitecto de sistemas. El MP realiza una aplicacin
especfica y fija de por vida, el hardware y el software son los estrictamente necesarios a
la aplicacin y en particular no suele disponer de software ni terminales de interaccin,
lo cual plantea problemas especficos de mantenimiento.
Las aplicaciones de los MP son fundamentalmente de control y de gestin
sencilla. Una vez realizado el diseo, el programa queda fijo, es decir, en general no se
espera reprogramar, aunque posiblemente s realizar de tarde en tarde nuevas versiones
del modelo, para lo cual interesa prever la expansin. Por lo general el programa de la
aplicacin va directamente albergado en memoria ROM, y una reduccin del programa
se traduce en reduccin del nmero de pastillas de CI y por ende en una reduccin del
costo total. La consecuencia de esto es que la programacin se cuida, en el sentido de
acortarla, y, por ello, la programacin en el ensamblador o incluso en el lenguaje de
mquina se ha mantenido.
Una de las reas mayores de aplicacin de los sistemas con MP es la
concerniente a la sustitucin de los circuitos electrnicos cableados en general a base de
elementos de tecnologa TTL. A partir de cierto grado de complejidad es interesante
implementar el circuito a base de un sistema con MP. A la hora de la sustitucin, hay
que tener en cuenta algunas caractersticas, tales como la menor velocidad que suele
acompaar al sistema con MP, al tener que ejecutar de forma secuencial las
instrucciones del programa para obtener las salidas apropiadas, mientras que en los
circuitos cableados, las entradas slo tienen que atravesar los elementos operativos para
originar las salidas. Si el sistema con MP supera la limitacin de tiempo expuesta, por lo
general en el resto de las consideraciones, supera al circuito cableado. Se destacan
algunas de sus ventajas:
1-Menor tiempo requerido para el diseo y las pruebas del prototipo.
2-Posibilidad de emplear tarjetas estndar que conforman la mayor parte del sistema. En
este caso se reduce en gran manera los costos de montaje y verificacin.
3-Para cantidades muy importantes y bajo pedido directo al fabricante, existe la
posibilidad de integrar en un solo chip la mayor parte del sistema. Esta alternativa
reduce los costos de montaje, verificacin y material, mejorando los aspectos
relacionados con la reduccin del volumen, aumento de fiabilidad y mayor

24
competitividad. En estos casos ha de tenerse en cuenta que los fabricantes pueden
producir bajo demanda, chips especficos para una determinada aplicacin.
4-Posibilidad de introducir en el futuro cambios en el programa de trabajo del sistema
(basta cambiar el programa de la memoria), as como ampliarle si es necesario.
5-Reduccin de costos en mano de obra y verificacin.
6-Importante aumento de la fiabilidad debido a la reduccin de componentes en los
sistemas con MP.
7-Reduccin importante del volumen y del gasto de energa consumida.
8-Fcil introduccin de programas de auto chequeo que facilitan la reparacin y el
mantenimiento del equipo.
9-Capacitacin del personal en general de la empresa, que le permite desarrollar en el
futuro nuevos y ms avanzados productos que a veces sern permisibles a corto plazo.
10-Mejora de la imagen del producto y de la empresa que lo fabrica.
Una clasificacin general de carcter bsico que delimita algunos de los campos
industriales de ms inters y desarrollo de los sistemas basados en MP es la siguiente:

1-Industria en general.
2-Industria elctrica y de electrodomsticos.
3-Instrumentacin y medidas.
4-Terminales inteligentes.
5-Juegos y derivados.

Los MP hoy en da cada vez ms extienden su campo de aplicacin y encuentran


cada vez ms un sin nmero de tareas que le son asignadas. De aqu que podamos ver a
manera de ejemplo su amplio empleo en la instrumentacin.
Podemos preguntarnos qu nos da el uso de los MP en los instrumentos? cun
eficiente resultan los sistemas de medicin basados en los MP ?
La respuesta a estas preguntas est dada por el hecho real que los MP estn
revolucionando la instrumentacin electrnica, lo cual es verdad aunque suene un poco
fantstico. El uso de los MP en la instrumentacin ha mejorado notablemente la
precisin que se alcanza, ha expandido sus capacidades, ha incrementado su
confiabilidad y ha posibilitado la realizacin de tareas que anteriormente por su
complejidad o duracin prcticamente eran consideradas irrealizables.
Debido a la presencia del MP, han podido construirse instrumentos cada vez ms
verstiles y se han desarrollado procedimientos para la medicin que resultan cada vez
ms simples, en los cuales el ajuste, la calibracin y la propia lectura, se realizan de
forma automtica. Todo ello posibilita una mejora sustancial del comportamiento del
instrumento y de sus caractersticas metrolgicas.
El MP posibilita tambin el empleo de procedimientos de cmputo ms
eficiente, con un anlisis estadsticos de los resultados y su posible linealizacin. En
muchos instrumentos ha aparecido la posibilidad de programacin, y lo que an es ms
importante han llegado a ser inteligentes.
La multifuncionalidad ha sido una consecuencia de la flexibilidad en la
utilizacin de programas, pero paralelamente con esto, se ha logrado una reduccin en
el consumo de energa lo cual ha permitido el diseo de instrumentos cada vez ms
sencillos de operar por lo que el usuario puede lograra un gran ahorro de tiempo.

25
En el esquema que a continuacin mostramos est representado el diagrama de
bloques simplificado de un voltmetro digital con el empleo de MP.

Seal de Dispositivo
Entrada Acomodador CAD Sistema Micro-
de seal procesador de Salida

El bloque acomodador de seal contiene principalmente un atenuador y un


amplificador, aunque algunos instrumentos tambin presentan un circuito para rectificar
la seal de corriente alterna.
El conversor anlogo digital CAD es imprescindible para cualquier voltmetro
digital, incluyendo el que est basado en MP. Comnmente el CAD que se emplea en
los sistemas de medicin viene totalmente en pastillas de circuito integrado de alta
integracin (LSI).
El MP organiza el procedimiento de medicin, controla la operacin de los
restantes bloques y ejecuta las operaciones aritmticas y lgicas con los datos
procedentes del CAD. El programa bajo el cual el MP opera, es preparado por el
fabricante y almacenado en ROM, permaneciendo inalterable an bajo el caso de una
falta de energa. La ROM almacena tambin algunas constantes usadas en varias
subrutinas y los nmeros requeridos para la calibracin automtica. La RAM se utiliza
para guardar los datos obtenidos y temporalmente los resultados intermedios.
El dispositivo de salida sirve para mostrar los datos de la medicin en forma
numrica, o sea, como un conjunto de dgito.
El multmetro digital con MP es un instrumento multifuncional programable.
Los programas y subrutinas que utiliza, determinan las funciones que este puede
realizar. Los modelos ofertados por los fabricantes difieren unos de otros, pero en
general tienen en comn lo siguiente:
- multiplicar un nmero por un factor de escala.
- sustraer un valor constante a la lectura.
- determinar la fraccin de error en el resultado.
- medir relaciones y presentar el resultado en tanto por uno o en decibeles.
- procesar los datos estadsticamente.
- calcular los valores estadsticos de los resultados (media, varianza, valor eficaz, etc.).

En general podemos plantear que en la poca actual los MP se aplican


prcticamente en todas las ramas de la ciencia y la tcnica, y con su ayuda es posible el
diseo de fbricas totalmente automatizadas que son capaces de trabajar de forma
ininterrumpida, con elevada productividad del trabajo y eficiencia. La base fundamental
de estas fbricas se encuentra en los robots, que se estn construidos en base a los MP;
adems de la introduccin de los llamados sistemas de direccin automtica de los
procesos tecnolgicos.

Por otra parte, se trabaja de forma intensiva en la simplificacin de la


comunicacin del hombre con esta tcnica: Actualmente las instrucciones a la mquina
se le dan fundamentalmente a travs de un teclado, lo cual requiere de cierta
preparacin por parte del operador y dificulta un poco el empleo de esta tcnica por
parte del personal y los especialistas no totalmente identificados con su uso.

26
La introduccin de softwares cada vez ms sencillos de operar y por ende ms "
amistosos" empleando el mouse, ha ayudado a simplificar la comunicacin, pero se
desea desarrollar circuitos analizadores y sintetizadores de voz que faciliten an ms la
entrada y salida de la informacin de las computadoras. Cuando se logre que estos
circuitos puedan fabricarse de manera compacta, y puedan ser reducidos a escala de los
circuitos integrados, podremos darles las instrucciones a la mquina mediante la voz y
con ello podemos comunicarnos con la mquina de manera semejante a como lo
hacemos con otro ser humano.

2.9-) Desarrollo de los microprocesadores.

La firma INTEL dio inicio a la fabricacin de MP en 1972 con el 8008 y a partir


de ah ha desarrollado la fabricacin de una larga serie de MP ms potentes y
complejos.

El 8080 y su versin ms desarrollada que apareci posteriormente, el 8085,


formaron parte de mltiples estructuras y equipos y tuvieron en su tiempo una gran
popularidad y demanda dentro de los MP de 8 bits.

El 8086 fue el primer MP de 16 bits elaborado por INTEL y presenta un bus de


datos de 16 bits, un bus de direcciones de 20 bits y emplea operandos de 16 bits. Fue
diseado de forma tal de que fuese compatible con el nivel de lenguaje ensamblador
empleado por el 8080A, por lo que cualquier instruccin de este ltimo puede ser
simulada por una combinacin de instrucciones del 8086 y en general el grupo de
registros del 8080A es un subconjunto de los que posee el 8086. El 8088 es una versin
en 8 bits del 8086 desde el punto de vista de los buses de entrada y salida, pero presenta
registros internos d 16 bits, de igual forma que lo realiza el 8086.

El 80186 constituye una versin mejorada del 8086 que posee en su interior el
generador de los impulsos de sincronismo, la lgica de control de interrupciones, los
esquemas de temporalizacin y los controladores del acceso directo a memoria. El
esquema de este MP presenta un total de 68 terminales distribuidos en los 4 lados, y
posee dos veces mayor productividad en comparacin con el 8086, adems de poseer
mayor capacidad de carga en sus lneas fundamentales.

El 80286 constituy un perfeccionamiento mayor del 8086, con una estructura


de 68 terminales que contiene tambin en su interior los esquemas para el control y
borrado de la memoria. Existen modelos con frecuencias de trabajo de 8 y 10 MHz. y
presenta un grupo de registros que no presenta el 8086 que le posibilita la ejecucin de
una serie de instrucciones adicionales. Posee una posibilidad mayor de
direccionamiento de memoria pues su bus de direcciones es de 24 bits.

En el desarrollo ulterior apareci en 1985 el 80386, que fue el primer procesador


de 32 bits de Intel con bus de datos y tamao de registro de 32 bits. En el momento en
que hizo su aparicin este MP la mayora de las microcomputadoras eran compatibles
AT, con bus de 16 bits. Esto haca que montar una microcomputadora con un 386 fuese
comparativamente caro ya que implicaba un rediseo total de la arquitectura existente y
cambiarla para 32 bits, es decir, cambio de la memoria, buses, etc. El costo que
implicaba era de por s elevado, ms an teniendo en cuenta la no disponibilidad en el
momento de partes 32 bits compatibles.

27
El 80386 operaba con velocidad de 16 MHz., pero rpidamente subieron hasta
33, lo que le da la posibilidad de ejecutar de 3 a 5 millones de instrucciones por
segundo, adems de que su capacidad de direccionamiento de memoria fsica alcanza
los 4 gigabytes. Los competidores de Intel, AMD y Cyrix llegaron a producirlo con
velocidades de hasta 40 Mhz. Su arquitectura permite realizar simultneamente
operaciones de bsqueda de instrucciones, decodificacin, ejecucin y control de
memoria. La aceptacin y el xito de este MP estuvo dado por mantener sus
caractersticas de compatibilidad con sus predecesores 8086, 8088, 80186, 80286, pues
prcticamente todos los programas que fueron elaborados para estos ltimos, tambin
son capaces de correr en el 80386.

Las microcomputadoras basadas en el 80386 operan con una mayor velocidad y


estn capacitados para operar con sistemas operativos desarrollados especialmente para
mquinas de 32 bits lo que las hace ms poderosas por tener la posibilidad de operar con
tareas independientes dentro de un sistema de tareas mltiples.

INTEL produjo como alternativa el 386SX, que no es ms que un 386 "normal",


o sea, compatible en su juego de instrucciones, registros internos, etc., slo que su
comunicacin con el exterior se hace por un bus de 16 bits. Por tanto la diferencia
clsica entre 386 DX y 386 SX est en su bus externo.

El 80486 I486 cmo se conoce al procesador desarrollado por INTEL es un


MP tipo CISC (Complete Instruccion Set Computer) cuyas instrucciones ms utilizadas
transcurren en un slo ciclo de reloj, que unido al alto grado de integracin logrado
hace que las frecuencias de reloj sean ms altas y en eso han incidido versiones a 25,
33, 50 y 66 MHZ. En el 486 se utilizaron 1.25 millones de transistores (5 veces ms que
el 386).

El I486 es un procesador de 32 bits interno y externo y est diseado para


trabajar con sistemas de cach (basados en el controlador del propio INTEL 82385)
cosa que no tena el 386 en ninguna de sus dos versiones. Este cach L1 de 8 K, est
directamente incorporada al procesador, lo que signific disminuir significativamente
los accesos a RAM y por tanto en funcionamiento ms rpido y racional.

Ante el empuje de la competencia, INTEL lanza una variante ms econmica, el


486 SX, que se diferenciaba del original porque no inclua el coprocesador matemtico,
o para ser ms exactos, lo tena desactivado. Para actualizar sus capacidades de punto
flotante al 486SX, Intel venda un chip llamado 80487SX que se instalaba en la placa,
pero que en realidad se trataba de un DX con diferente patillaje que al ser instalado
desconectaba el procesador original y asuma el control de la configuracin.

Cuando fue evidente que el 486 se haba afianzado en el mercado y ante la


facilidad de producir versiones cada vez a mayores velocidades, surgi un nuevo
problema: la necesidad de cambiar continuamente la tarjeta del sistema para adecuarla a
la nueva velocidad. Sin embargo, al ser los accesos a los dispositivos del sistema
siempre mucho ms lentos que la velocidad de operacin del procesador, se poda
pensar en aumentar exclusivamente la velocidad de estos, dejando externamente el
sistema sin ningn cambio. Este fue el origen del 486 DX2 el cual opera al doble de la
velocidad de su tarjeta madre, es decir, en su versin DX2 a 50 MHz. el 486 est
operando a 50 MHz. en un sistema a 25 MHz. El aumento cada vez mayor de la
velocidad ha hecho posible el surgimiento en 1994 de los DX4 y ya un DX4 a 100

28
MHz. est montado sobre una tarjeta madre trabajando a la cmoda y ms que
suficiente velocidad de 25 MHz. 33 Mhz. y sin embargo su procesador opera a 100
MHz. Tales procesadores usaban un voltaje de 3.3 v con el fin de conservar bajos
niveles de emisin del calor, aunque existieron versiones del DX4 a 5v que requirieron
nuevas tarjetas madres y que llevaban ventiladores para refrescar el chip.

La tecnologa SL de INTEL fue originalmente desarrollada para lograr un


medio razonable en la conservacin de las bateras de las mquinas porttiles, pero se ha
extendido hoy en da a la familia completa de procesadores I486 y pentium.

La tecnologa SL abarca una serie de requisitos y modos de operacin que


permiten reducir el consumo de energa y cumplen con el programa Energy Star.

Entre ellas:

1- System Management Modem (SMM). Este es un nuevo modo operativo de los


procesadores SL que permite la reduccin del consumo energtico apagando los
perisfricos o el sistema completo cuando lleva tiempo sin utilizarse.
2.- Static Technology. Tecnologa que permite a todos los procesadores SL detener su
reloj, congelando el estado del mismo y el sistema de forma que puede ser reinicializado
en el mismo punto donde se detuvo.
3.- Processor Clock Control. Permite colocar al procesador en un estado de letana y
bajo consumo, "Standby".
4.- Alimentacin de 3.3 volts. El hecho de que estos procesadores slo requieren 3.3
volts para su operacin en vez de los tpicos 5 volts, reduce el consumo energtico en un
60 %.
Todo este sistema permite una disminucin del consumo desde unos 250 watts hasta
unos 30 watts. Esta lgica de reduccin de potencia constantemente est monitoreando
al sistema buscando perifricos inactivos (Por ejemplo el disco duro). Una vez
detectado un dispositivo en este estado, genera una interrupcin (System Management
Interrupt-SMI) al procesador el cual pasa de modo real a SMM. Aqu se toma una
"instantnea" de todo el sistema y se almacena su estado en una zona de memoria
llamada SM RAM . Esta zona es inviolable y no puede ser accedida por ningn
SOFTWARE. El procesador ejecuta una rutina del BIOS que "apaga" al perisfrico en
cuestin. El proceso inverso ocurre al activarse nuevamente el perisfrico y este
procedimiento es virtualmente instantneo.

Ciryx con su 586 al que llam M1 alcanzaba velocidades de 100 y 120 Mhz e inclua
un bus interno de 64 bits, un canal de 6 etapas (una ms que el 486 ) y era compatible
con las tarjetas madres del 486. No obstante sus excelencias, lleg tarde al mercado
ganado en aquel tiempo por la descomunal campaa de Intel para sus pentiums.

INTEL sac a la luz un nuevo MP conocido con el nombre de "Pentium" que segua
siendo un procesador de arquitectura CISC pero incluy varias tecnologas RISC en su
diseo que le permitieron alcanzar los 300 MIPS (millones de instrucciones por
segundo). Todas las versiones de pentium poseen ms de 3 millones de transistores
integrados y requieren radiadores con ventilador para disipar el calor de su
funcionamiento. El nuevo procesador ofreca una arquitectura superescalar, dos canales
en lugar de uno como el 486 y la tecnologa de prediccin de ramificaciones que le
permita minimizar las demoras que suceden cuando una instruccin compleja retrasa la
ejecucin de otras. Tambin increment el ancho de banda del bus hasta 64 bits. Incluy

29
dos cachs de nivel 1 (L1) independientes, uno para los datos y otro para las
instrucciones de clculo decimal que constituyen la base para las aplicaciones grficas y
de multimedia.

La competencia lleg, y AMD lanz su K5 y Cyrix el 5X86. El K5 es un procesador


RISC y a diferencia de las dos etapas de canales del Pentium ofrece seis. Es en opinin
de muchos especialistas superior al Pentium, pero lleg tarde al mercado y no alcanz
los niveles de velocidad esperados, por lo que apenas logr difusin en la construccin
de ordenadores. Por su parte el 5X86 es un procesador totalmente CISC con dos canales
y seis etapas por cada uno de estos, lo que difiere del diseo del pentium con dos
canales y cinco etapas y ofrece segn los expertos una mejor prediccin de
ramificaciones y ejecucin fuera de orden. Es en suma un buen procesador, pero
tampoco logr hacerse con el mercado que sigui teniendo un nico dueo.

Intel sorpresivamente cambi el standard que hasta ese momento haba seguido en la
industria, razones?, pues el auge de las aplicaciones multimedia y el peso que cobraron
grandes programas con complicados efectos grficos, como los juegos para ordenador,
que exigieron un mejor desempeo del hardware y especficamente de las CPU.

As surge en 1997 el pentium MMX, (P-MMX) procesador que incorpora 57


instrucciones adicionales, diseado para mejorar la capacidad multimedia. Adems el
canal aument de 5 a 6 etapas y los dos cachs L1 aumentaron de 8 a 16K y mejor
mucho la prediccin de ramificaciones, por lo que el MMX no es un retoque del
pentium, sino que es de por s un nuevo diseo cualitativamente superior.

En 1996, casi un ao antes del P-MMX, Intel sac el Pentium Pro (P-Pro). Parte en su
diseo de una concepcin similar al pentium, pero ofrece avances tales como: una nueva
forma de ejecutar las instrucciones y un aumento de las etapas del canal de 5 a 14 con 3
canales en lugar de 2 a una velocidad de ejecucin resultante mucho mayor. Incluye un
cach integrado L2 de 256 K adems de 2 cachs L1 de 16 K, que eleva en
consideracin sus prestaciones, pero tambin su precio, y ello automticamente lo
releg para la construccin de grandes servidores, lejos de los sistemas PC de uso
domstico o profesional ms modestos.

En el centro del P-Pro existe un procesador RISC, mientras que las instrucciones
CISCX86 se forman a partir de microinstrucciones RISC ms sencillas y por
consiguiente se ejecutan con mayor rapidez. Tiene 5.5 millones de transistores los
cuales generan una considerable cantidad de calor lo que exige el uso de disipadores y
micro ventiladores.

La solucin a los problemas de costo y desempeo del Pentium-Pro lleg con la


aparicin en 1996 (y lanzado en 1997) del pentium II, (P II) que duplica las caches L1 a
32 K y una nueva L2 de 512K, ms grande, pero fuera del procesador como en el P-Pro.
La nueva cach L2 se comunica con el chip por medio de un bus propio que trabaja a la
mitad de la velocidad de este. P II incorpora tambin en las ltimas versiones un bus de
100 MHz, lo que mejora notablemente sus prestaciones. Como resultado, Intel pudo
ubicar en el mercado un procesador mas econmico, aunque no tan rpido como el P-
Pro, pero este inconveniente es mnimo pues se logr dejar atrs la barrera de los 450
Mhz. Posteriormente existi un P II conocido como Xen, optimizado para trabajar en

30
servidores, que fue aceptado por los especialistas como relevo del ya entonces algo
desfasado P-Pro.
En los predios del mercado apareci luego el esperado pentium III (P III) o Katmai que
tena como principal novedad la inclusin de 70 nuevas instrucciones conocidas como
las MMX2 o KNI (Katmai New Instructions). Trabaja a voltajes de 1,8 volts, posee
tamao ms reducido y menor consumo energtico, gracias a la tecnologa de 0.25
micras empleadas en su fabricacin (prximamente a 0.18 micras). Los primeros
modelos, con ncleo Katmai, se fabricaron todos en el mismo formato Slot 1 de los
Pentium II, pero la actual revisin Coppermine de este micro utiliza mayoritariamente
el Socket 370 FC-PGA.

Muchos denominaron al Pentium III Coppermine "el autntico Pentium III", porque al
tener sus 256 KB de cach secundaria integrados en el ncleo del micro su rendimiento
mejora en todo tipo de aplicaciones (incluso las no optimizadas).

El Celeron (Pentium II light), result ser un Pentium II sin la cach secundaria, fue
construido para liquidar el mercado de placas base tipo Pentium no II (con socket 7, que
se dice) y liquidar definitivamente a AMD y otras empresas que usan estas placas. Sin
embargo, resultaba realmente muy poco recomendable, por poseer un rendimiento
mucho ms bajo que el de Pentium II, pues era casi idntico al del Pentium MMX.

AMD logr a finales del 97 el K6 que de inmediato fue un formidable contrincante para
el P-Pro, con su favorable handicap de menor costo. Presenta una cach L1 de 64K, una
extensa tabla de prediccin de ramificaciones, as como 7 unidades de ejecucin
paralela y el juego de instrucciones MMX. En las pruebas realizadas dej atrs a los
Pentium MMX de igual velocidad de reloj y se acerc notablemente al desempeo de
los Pentium II. Posteriormente se puso a la venta el K 6-2, que incorpora tecnologa de
0.25 micras y mejoraba notablemente el desempeo del procesador en cuanto a
velocidad y capacidad multimedia, sentando un nuevo standard en las instrucciones
3Dnow (algo as como un MMX para 3D).
El K6-III result ser un micro casi idntico al K6-2, excepto por el "pequeo detalle" de
que incluye 256 KB de cach secundaria integrada, corriendo a la velocidad del micro
(es decir, a 400 MHz o ms), al estilo de los Celeron Mendocino. Esto le hace mucho
ms rpido que el K6-2 (en ocasiones, incluso ms rpido que el Pentium III) en
aplicaciones que utilicen mucho la cach, como las ofimticas o casi todas las de ndole
"profesional"; sin embargo, en muchos juegos la diferencia no es demasiado grande (y
sigue necesitando el uso de las instrucciones 3DNow! para exprimir todo su potencial).

El AMD Athlon (K7) result ser la gran apuesta de AMD: un micro con una
arquitectura totalmente nueva, que le permiti ser en su tiempo el ms rpido en todo
tipo de aplicaciones. Con 128 KB de cach de primer nivel (cuatro veces ms que el
Pentium III), bus de 200 266 MHz (realmente 100 133 MHz fsicos con doble
aprovechamiento de cada seal), 512 256 KB de cach secundaria (los 256 KB
integrados le posibilitaban ser ms rpido), instrucciones 3DNow! para multimedia... y
el mejor micro de todos los tiempos en clculos matemticos.

Su nico y mnimo inconveniente radicaba en que necesita placas base especficamente


diseadas para l, debido a su novedoso bus de 200 MHz o ms y a sus mtodos de
conexin, "Slot A" (fsicamente igual al Slot 1 de Intel, pero incompatible con l... entre
otras cosas porque Intel no quiso dar licencia a AMD para utilizarlo) o "Socket A" (un

31
zcalo cuadrado similar al Socket 370, pero con muchos ms pines). Los modelos
actuales usan el ncleo Thunderbird, con la cach secundaria integrada.

El AMD Duron result un micro casi idntico al Athlon Socket A (no existe para Slot
A) pero con menos memoria secundaria (64 KB), aunque integrada (es decir, ms
rpida, la cach va a la misma velocidad que el micro); Con l se obtuvo una fantstica
relacin calidad/precio.

Cyrix por su parte present el M II que posee un diseo superescalar, dos canales
separados, 64K de cach L1, una novedosa cach auxiliar de 256k que acelera
notablemente el desempeo de la CPU y prediccin mltiple de ramificaciones. Este es
un procesador completamente CISC (a diferencia del K6 y del P II), que no lleg a
alcanzar el desempeo del K 6, pero se situ dignamente en el sector de las llamada
mquinas de bajo costo.
La ltima apuesta de Intel, el Pentium 4, represent todo un cambio de arquitectura;
pese a su nombre, internamente poco o nada tiene que ver con otros miembros de la
familia Pentium.

Se trata de un micro peculiar: su diseo permite alcanzar mayores velocidades de reloj


(ms MHz... y GHz), pero proporcionando mucha menos potencia por cada MHz
que los micros anteriores; es decir, que un Pentium 4 a 1,3 GHz puede ser MUCHO
ms lento que un Pentium III a "slo" 1 GHz. Para ser competitivo, el Pentium 4 debe
funcionar a 1,7 GHz o ms.

Por otro lado, incluye mejoras importantes: bus de 400 MHz (100 MHz fsicos
cudruplemente aprovechados) y nuevas instrucciones para clculos matemticos, las
SSE2. stas son muy necesarias para el Pentium 4, ya que su unidad de coma flotante es
MUCHSIMO ms lenta que la del Athlon; si el software est especficamente
preparado (optimizado) para las SSE2, el Pentium 4 puede ser muy rpido.

Desde el punto de vista fsico, el Pentium 4 necesita placas bases diseadas


especficamente para l. El chip en s viene en formato zcalo y tiene 423 pines; por
tanto, su zcalo se llama "Socket 423". Necesita una carcasa, una fuente de
alimentacin (ambas ATX 2.03) y un ventilador y un disipador especficos, todo ello
por consideraciones de consumo y estabilidad, porque el sistema de fijacin del sistema
de refrigeracin es bastante complicado y va anclado con tornillos a la carcasa.

La cach L2, integrada en el micro y de 256 bits, es una mejora de la tecnologa


"Advanced Transfer Cache " estrenada con el Pentium III; puede alcanzar 48 GB/s en
el modelo de 1,5 GHz. Esto representa el doble de lo que puede hacer un Pentium III de
la misma velocidad, y es mucho ms de lo que puede alcanzar un AMD Athlon, sobre
todo porque en ste la cach L2 tiene un bus de slo 64 bits.

Finalmente, un detalle positivo: el ncleo del micro est mejor protegido que antes,
gracias a un disipador de calor integrado sobre el mismo (por eso tiene ese aspecto
metlico).

Todos estos datos son para el Pentium 4 versin 1.0, pero el desarrollo de estos micros
se ha venido perfeccionando En la actualidad existen procesadores mucho mas
poderosos. La compaa Intel acaba de lanzar al mercado su nuevo procesador Intel
Pentium 4 de 3.0GHz y ya hoy se anuncian versiones capaces de trabajar a velocidades
mayores lo cual representa un salto bastante importante.

32
En las plataformas no Wintel(elipsis de las palabras Windows e Intel) aparecen como
notables los SPARC concebidos para las estaciones UNIX de Sun y otros
desarrolladores de este entorno, cuyo desempeo es la base, entre otros usos, de la
industria de los efectos especiales, muestra de los cuales son los filmes TITANIC y
Toys Story.

Por otra parte anda el G-3, corazn de los Macintosh, uno de cuyos modelos, el iMac
barri con las cifras de ventas en Europa y Estados Unidos en el 1er trimestre de 1999.
Por ejemplo, el G-3 de 266 Mhz super en todo, desde las operaciones con pto. Flotante
hasta el trabajo con grficos y texturas en 3D, al P Pro y P II de 300 Mhz. montados en
configuraciones similares. Tiene arquitectura completamente RISC, basada en
instrucciones ms sencillas que se ejecutan a una mayor velocidad real.

Con lo expuesto hasta aqu basta para que el lector se percate de la rapidez con que se
desarrollan estos dispositivos y de la importancia que tiene para un profesional el poseer
un mnimo de conocimiento de su evaluacin y de sus posibilidades.

CONSIDERACIONES FINALES

El desarrollo explosivo de la tcnica de los MP y su empleo cada vez ms extendido en


mltiples campos de la ciencia, han obligado a la introduccin de sus estudios en los
programas de las asignaturas de electrnica que aparecen incluidos en los planes de
estudio de las carreras de ingeniera .

Esperamos que con el estudio de este material los estudiantes puedan alcanzar un
conocimiento elemental sobre esta temtica y comprendan la importancia de desarrollar
una profundizacin ulterior en las aplicaciones vinculadas a la rama de la ingeniera que
les corresponda.

33
BIBLIOGRAFIA

- Microprocessor and Instrumentation.Mirsky G. Editorial Mir 1987

- Sistem Design with microprocessor .Zibson D. Academic Press 1984

- Microprocesadores . Angulo J. Ma. Ediciones R 1989 .

- Sistemas de Control con Microprocesadores. Lage J., Pascual M.

- Microelectronic .Millmanm J.

- Microprocessor Handbook .Greenfield Joseph .Ediciones R 1988.

- Los microprocesadores y las microcomputadoras y su aplicacin en la automatizacin


de mquinas y equipos. Kostikoba G. Vuishaia Shkola. 1988

- Microprocessor Handbook 80386

-Fundamentos de los microprocesadores. Tokheim Roger. Ediciones R. 1988.

-Revista GIGA. Colombus. Copextel, S.A. 1997-2001.

34
MEMORIA
PRINCIPAL

DATOS INSTRUCCIONES bus de datos

bus de control

Registro de
Direcciones

Registro de Instrucciones
ACU- Unidad Registros Seales de
MULA- Lgico De Sincronizacin Contador
DECODIFICADOR de
DOR Aritm- Utiliza- Y Control
tica Cin Gral. Programa
Comandos o Direcciones

Reg.In-
+1 dicado-
res

BLOQUE DE PROCESAMIENTO BLOQUE DE CONTROL

ESTRUCTURA TPICA DE UN MICROPROCESADOR de 8 bits.

Potrebbero piacerti anche