You are on page 1of 72

La evolucin, paso a paso

1975: PRECURSORAS
La Altair 8800 fue la primera computadora, aunque sin teclado ni
monitor. Tuvo mucho xito en las ventas pese a sus limitaciones.
1976: LA ERA APPLE
Steve Jobs y Steven Wozniak armaron el prototipo Apple I, en
madera. A fines de ao, ya tenan la versin comercial: la Apple II.
1979: EL BOOM ATARI
Las primeras Atari, los modelos 400 y 800, tenan teclado y se
conectaban al televisor. Lo mejor hasta la fecha para jugar.
1981: LA PRIMERA PC
La IBM 5150, con procesador Intel de 4,7Mhz, soft PC-DOS y
monitor monocrmatico. Muy poco para su precio: us$3.300.
1982: LA COMMODORE
Con un precio de us$260, la Commodore C64 bati rcords de
venta. Este mismo ao, Intel creo el chip 286 para PC.
1984: NACE LA MAC
La primera Mac inclua monitor, 128KB de memoria y floppy disk
(3,5"). En el mundo PC, estaban PC AT, equipadas con disco rgido
de entre 10 y 20MB.
1985: LLEGA WINDOWS
Microsoft estrena la primera versin de Windows y nac el
procesador Intel 386, que es multitarea. Por otro lado, se crea la
tecnologa de CD-ROM.
1989: PROCESADOR 486
El Intel 486 tena la potencia suficiente para usar los recursos
multimedia ms limitados que ofrecan los juegos y los CD-ROM de
esa poca.

1993: MAS POTENCIA


Con el doble de potencia de un 486, el Pentium acompaa el
desarrollo de Internet. El mismo ao, nace el Power Mac.
1997: AO MULTIMEDIA
Llegan microchips pensados para procesar imagen y sonido:
Pentium II MMX y AMD K6. Tambin, el puerto grfico AGP y los
DVD.
1999: LA CARRERA
Intel y AMD compiten en velocidad. Se crean el Pentium III y el
Athlon. Adems, surge el Celeron, una opcin ms barata.
2000: SIGUE EL SHOW
Las computadoras no explotaron ni se acabo el mundo. En cambio,
los procesadores pasan la barrera de un gigahertz. Aparece
Pentium 4.
2004: LA CASA DIGITAL
El uso de video, fotos y msica digital exigen PC ms exigentes,
Intel lanz el Pentium HT y AMD ya haba sacado el Athlon de
64bits en 2003.
2005: UNO NO BASTA
La novedad de 2005 son las PC hogareas con microchips de doble
ncleo. La tendencia 2006: doble chip de 64 bits.

8088

El procesador del que hablamos fue desarrollado entre 1.979 y Agosto de


1981.
Era una versin mejorada del microprocesador 8086 de Intel de 16bit pero
con un bus de 8bit (en contraste con el de 16bit del 8086). Aunque esto
reduca su eficiencia y velocidad al ser mas sencillo el diseo con buses de
tamao reducido y por la compatibilidad se convirti en el procesador de los
IBM PC.
El otro gran cambio que se produjo en el 8088 con respecto al 8086, fue la
reduccin del tamao y el cambio de los algoritmos de la cola (de 6 bytes a 4
bytes).
Las caractersticas tcnicas eran las mismas que las del 8086: reloj inicial de
4.7Mhz, 29.000 transistores con conexiones entre s de 3micras, y la
posibilidad de direccionamiento de hasta 1MB de memoria (mediante
palabras de 20bits de direccin).

8087

El 8087 fue el primer co-procesador de Intel (el primero de la serie 87)


diseado para funcionar en paralelo de los procesadores 8088 y 8086.
Estaba principalmente pensado para realizar operaciones matemticas en las
que se necesita operar con la notacin de punto flotante.
Este procesador admita 60 nuevas instrucciones , que empezaban con la
letra F, para diferenciarlas de sus homlogas del 8086/88.
Los registros en este microprocesador no son lineales como en 8086/88, sino
que estn estructurados en forma de pila de datos (instrucciones push y pop).
El hecho de que convivieran el 8087 y 8086/88, haca que se pudieran repartir
las tareas y que funcionaran al mismo tiempo sin que uno de ellos tuviese que
esperar a que el otro acabase de ejecutar una instruccin.

80286

Este microprocesador apareci en febrero de 1982, dispona de 134000


transistores CMOS(transistores de efecto campo), el tamao de sus

conexiones era de 1.5 micras de metro, con una velocidad de reloj de 10Mhz
y un tamao de pastilla de 68.7 mm cuadrados.
Este microprocesador de 16 bits con capacidad de direccionamiento de 16
Mbytes en contraste con 1 Mbyte del 8086, inclua en su pastilla el micro del
8086 y el del 80286, para solucionar problemas de compatibilidad de
programas, que comenzaron a surgir debido a la rpida evolucin de los
ordenadores (No todo el mundo cambiaba de ordenador cada 4 aos).
El aumento de densidad de los componentes de la pastilla, no fue el esperado
segn la Ley de Moore: 134000-transistores el 80286 por 29000 del 8086. El
tamao era aproximadamente 68.7 mm cuadrados por 28.6 del 8086.
Aplicando una sencilla regla de tres, vemos que el aumento de densidad fue
aproximadamente de 2.
80386
El procesador de Intel 80386 aparece en el ao 1985 y supone la subida de
un nuevo peldao en el avance tecnolgico del mundo de los
microprocesadores.
Como novedad respecto a su predecesor, se amplan los buses de datos, el
nmero de lneas de las direcciones y el tamao de los registros a 32bits.
Esta ampliacin supone un incremento en la memoria RAM, que puede
direccionar 4Gb. Adems, incorpora un nuevo modo de operacin: el modo
real virtual del 8086, lo que permite tener varias sesiones 8086 trabajando
simultneamente.
El 80386 posee 2.750.000 transistores CMOS y trabaja con un reloj de 16 a
33MHz, segn el modelo. Sus conexiones son de 1,5m, lo que le confiere un
tamao global de 104mm2. Es decir, mientras que el nmero de transistores
se ha duplicado, el tamao del P ha aumentado tan solo un cincuenta por
ciento.

80486
Los Intel 80486 son una familia de microprocesadores de 32 bits con
arquitectura x86 diseados por Intel en 1989.
Los 80486 son muy similares a sus predecesores, diferencindose sobretodo
a la del 80386 en que incorpora el coprocesador matemtico 80387 (permite
trabajar en coma flotante y un cach integrado en el propio circuito integrado
del microprocesador de 8 Kbytes lo que aumentaba la velocidad del

microprocesador al no tener que acceder continuamente a memoria externa.


La diferencias principales son que los 486 tienen un conjunto de instrucciones
(los comandos que la cpu debe entender y ejecutar) que estn optimizadas y
una unidad de interfaz de bus mejorada. Estas mejoras hacen que los 486
sean el doble de rpidos que un 386 a la misma velocidad de reloj.
Las velocidades de reloj tpicas para los i486 eran 16 MHz (no muy
frecuente), 20 MHz (dem), 25 MHz, 33 MHz, 40 MHz, 50 MHz (tpicamente
con duplicacin del reloj), 66 MHz (con duplicacin del reloj), 75 MHz (con
triplicacin del reloj). El microprocesador 80486 estaba compuesto por
1200000 transistores CMOS, con unas conexiones de 1m lo que produca
que el microprocesador tuviera una dimensin de 167 mm^2, el tamao
aumenta con respecto al 386 por el mayor nmero de transistores y por la
memoria cach.

pentium

La quinta generacin de microprocesadores Intel tom el nombre de Pentium.


Aparecido en marzo de 1993 en frecuencias de trabajo de 60 y 66 MHz llega
a ser cinco veces ms potente que un 80486 a 33 MHz. Posteriormente
aparecieron procesadores de esta primera generacin de Pentium a 75, 90,
100 y 133 MHz en la versin Pentium Pro (1995) que llego a los 200 MHz.
Fabricados con un proceso BiCMOS de geometra de 8 micras y con una

arquitectura superescalar, los microprocesadores Pentium se encuadran en


un concepto RISC.
Mientras que el 80386 y el 80486 tienen una unidad de ejecucin, el Pentium
tiene dos, pudiendo ejecutar dos instrucciones por ciclo de reloj con sus
correspondientes clculos, ya que tambin tiene dos unidades aritmticolgicas (ALU).
Intel toma como modelo la estructura separada para la memoria cach interna
del microprocesador que consta de dos bloques de 8 Kbytes, uno para las
instrucciones y otro para los datos que trabajan bajo una estructura de
asociacin de conjuntos bidireccional. Tambin incorpora como su predecesor
un coprocesador matemtico, el cual en sus primeros modelos debido a un
error de diseo tena un famoso bug, que produca un error en la divisin.
Este coprocesador utiliza algoritmos mejorados y aade instrucciones de
suma, multiplicacin y divisin de nmeros en punto flotante.
Se integran nuevos avances tecnolgicos como por ejemplo la prediccin de
ramificaciones, buses de datos internos de 256 bits, bus de datos externo de
64 bits (que soporta transferencias de 258 Kbytes por segundo) y memorias
cach de escritura diferida.
Este procesador es bastante mayor en tamao de la pastilla que su
predecesor (264 mm^2) a pesar de su menor tamao en las conexiones (0,8
m) debido a que casi le triplicaba en nmero de transistores con un poco
ms de 3 millones de transistores. Este gran aumento en el hardware permite
una mayor eficiencia en las instrucciones, simplificacin del cdigo software y
el considerable aumento en la velocidad de ejecucin.

BUS (informatica)
Conjunto de lneas (cables) de hardware utilizados para la transmisin de datos
entre los componentes de un sistema informtico. Un bus es en esencia una ruta
compartida que conecta diferentes partes del sistema como el microprocesador, la
controladora de unidad de disco, la memoria y los puertos de entrada, salida,
permitindoles transmitir informacin. El bus, por lo general supervisado por el
microprocesador, se especializa en el transporte de diferentes tipos de
informacin. Por ejemplo, un grupo de cables (en realidad trazos sobre una placa
de circuito impreso) transporta los datos, otro las direcciones (ubicaciones) en las
que puede encontrarse informacin especfica, y otro las seales de control para
asegurar que las diferentes partes del sistema utilizan su ruta compartida sin
conflictos. Los buses se caracterizan por el nmero de bits que pueden transmitir
en un determinado momento. Un equipo con un bus de 8 bits de datos, por
ejemplo, transmite 8 bits de datos cada vez, mientras que uno con un bus de 16
bits de datos transmite 16 bits de datos simultneamente. Como el bus es parte

integral de la transmisin interna de datos y como los usuarios suelen tener que
aadir componentes adicionales al sistema, la mayora de los buses de los
equipos informticos pueden ampliarse mediante uno o ms zcalos de expansin
(conectores para placas de circuito aadidas). Al agregarse estas placas permiten
la conexin elctrica con el bus y se convierten en parte efectiva del sistema.
BUS AT
En informtica, enlace elctrico utilizado por las computadoras IBM AT y
compatibles para conectar el microprocesador con la memoria y los dispositivos
perifricos. Las tarjetas de memoria, las controladoras de disco y las tarjetas serie
de E/S se conectan a este bus. El bus AT, tambin llamado bus de expansin, se
diferencia del bus IBM PC original en que el AT soporta 16 bits de datos, mientras
que el bus PC soporta slo 8. En la actualidad hay otros dos estndares de 32
bits: VESA y PCI.
CONECTOR DE BUS DE DATOS
Cualquiera de los diversos tipos de conectores utilizados para facilitar la entrada y
salida en serie y en paralelo. El nmero que aparece detrs de las iniciales DB,
acrnimo de Data Bus (bus de datos), indica el nmero de lneas (cables) dentro
del conector. Por ejemplo, un conector DB-9 acepta hasta nueve lneas separadas,
cada una de las cuales puede conectarse a una clavija del conector. En la
prctica, no todas las clavijas -en especial en los conectores grandes- tienen
asignada una funcin, por lo que suelen no utilizarse. La mayora de los
fabricantes de hardware sigue una norma de asignacin de clavijas, elaborada
para asegurar la compatibilidad entre dispositivos de diferentes fabricantes. Sin
embargo, a menudo se requiere alguna interfaz. Los conectores de bus de datos
ms comunes son el DB-9, DB-15, DB-19, DB-25, DB-37 y DB-50.
Conector DIN
En informtica, conector de clavijas de conexin mltiples que cumple la
especificacin de la Organizacin Nacional de Normalizacin Alemana (DIN,
acrnimo de Deutsche Industrie Norm). En los modelos Macintosh Plus, Macintosh
SE y Macintosh II (vase Apple) se utiliza un conector DIN de 8 clavijas (o pins)
como conector de puerto serie. En los modelos de escritorio de IBM anteriores al
PS/2 se utilizaban conectores DIN de 5 clavijas para conectar los teclados a la
unidad del sistema.
RED EN BUS
En informtica, una topologa (configuracin) de la red de rea local en la que
todos los nodos estn conectados a la lnea principal de comunicaciones (bus). En
una red en bus, cada nodo supervisa la actividad de la lnea. Los mensajes son
detectados por todos los nodos, aunque aceptados slo por el nodo o los nodos
hacia los que van dirigidos. Como una red en bus se basa en una "autopista" de
datos comn, un nodo averiado sencillamente deja de comunicarse; esto no
interrumpe la operacin, como podra ocurrir en una red en anillo, en la que los

mensajes pasan de un nodo al siguiente. Para evitar las colisiones que se


producen al intentar dos o ms nodos utilizar la lnea al mismo tiempo, las redes
en bus suelen utilizar deteccin de colisiones, o paso de seales, para regular el
trfico.
USB
(Universal serial Bus - Bus serie universal) Bus serie de ltima generacin que
permite conectar hasta 127 dispositivos en cadena consiguiendo una velocidad
hasta 100 veces mayor que la de un bus de serie convencional.

REGISTROS DEL PROCESADOR


Los registros del procesador se emplean para controlar instrucciones en ejecucin,
manejar direccionamiento de memoria y proporcionar capacidad aritmtica. Los
registros son direccionables por medio de un nombre. Los bits por convencin, se
numeran de derecha a izquierda, como en:
... 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Los registros internos del procesador se puede clasificar en 6 tipos diferentes
1.
2.
3.
4.
5.
6.

Registros de segmento
Registros de propsito general
Registros de apuntadores
Registros de banderas
Registros de Puntero de instruccin
Registros de Pila

Registros de segmento

Un registro de segmento tiene 16 bits de longitud y facilita un rea de memoria


para direccionamiento conocida como el segmento actual.
Registro CS. El DOS almacena la direccin inicial del segmento de cdigo de un
programa en el registro CS. Esta direccin de segmento, mas un valor de
desplazamiento en el registro apuntador de instruccin (IP), indica la direccin de
una instruccin que es buscada para su ejecucin.
Registro DS. La direccin inicial de un segmento de datos de programa es
almacenada en el registro DS. En trminos sencillos, esta direccin, mas un valor
de desplazamiento en una instruccin, genera una referencia a la localidad de un
byte especifico en el segmento de datos.
Registro SS. El registro SS permite la colocacin en memoria de una pila, para
almacenamiento temporal de direcciones y datos. El DOS almacena la direccin
de inicio del segmento de pila de un programa en le registro SS. Esta direccin de
segmento, mas un valor de desplazamiento en el registro del apuntador de pila
(SP), indica la palabra actual en la pila que esta siendo direccionada.
Registros ES. Alguna operaciones con cadenas de caracteres (datos de
caracteres) utilizan el registro extra de segmento para manejar el direccionamiento
de memoria. En este contexto, el registro ES esta asociado con el registro DI
(ndice). Un programa que requiere el uso del registro ES puede inicializarlo con
una direccin de segmento apropiada.
Registros FS y GS. Son registros extra de segmento en los procesadores 80386
y posteriores.

Registros de propsito general.


Los registros de propsito general AX, BX, CX y DX son los caballos de batalla del
sistema. Son nicos en el sentido de que se puede direccionarlos como una
palabra o como una parte de un byte. El ultimo byte de la izquierda es la parte
"alta", y el ultimo byte de la derecha es la parte "baja". Por ejemplo, el registro CX
consta de una parte CH (alta) y una parte Cl (baja), y usted puede referirse a
cualquier parte por su nombre.
Registro AX. El registro AX, el acumulador principal, es utilizado para operaciones
que implican entrada/salida y la mayor parte de la aritmtica. Por ejemplo, las
instrucciones para multiplicar , dividir y traducir suponen el uso del AX. Tambin,
algunas operaciones generan cdigo mas eficiente si se refieren al AX en lugar de
a los otros registros.
Registro BX. El BX es conocido como el registro base ya que es el nico registro
de propsito general que puede ser ndice para direccionamiento indexado.
Tambin es comn emplear el BX para clculos.

Registro DX. El DX es conocido como l registro de datos. Alguna operaciones de


entrada/salida requieren uso, y las operaciones de multiplicacin y divisin con
cifras grandes suponen al DX y al AX trabajando juntos.
Registro de Apuntador de Instrucciones.
El registro apuntador de instrucciones (IP) de 16 bits contiene el desplazamiento
de direccin de la siguiente instruccin que se ejecuta. El IP esta asociado con el
registro CS en el sentido de que el IP indica la instruccin actual dentro del
segmento de cdigo que se esta ejecutando actualmente. Los procesadores
80386 y posteriores tienen un IP ampliado de 32 bits, llamado EIP.
En el ejemplo siguiente, el registro CS contiene 25A4[0]H y el IP contiene 412H.
Para encontrar la siguiente instruccin que ser ejecutada, el procesador combina
las direcciones en el CS y el IP:
Segmento de direccin en el registro CS: 25A40H Desplazamiento de direccin en
el registro IP: + 412H Direccin de la siguiente instruccin: 25E52H
Registros Apuntadores.
Los registros SP (apuntador de la pila) Y BP (apuntador de base) estn asociados
con el registro SS y permiten al sistema accesar datos en el segmento de la pila.
Registro SP. El apuntador de la pila de 16 bits esta asociado con el registro SS y
proporciona un valor de desplazamiento que se refiere a la palabra actual que esta
siendo procesada en la pila. Los procesadores 80386 y posteriores tienen un
apuntador de pila de 32 bits, el registro ESP. El sistema maneja de forma
automtica estos registros.
En el ejemplo siguiente, el registro SS contiene la direccin de segmento 27B3[0]H
y el SP el desplazamiento 312H. Para encontrar la palabra actual que esta siendo
procesada en la pila, la computadora combina las direcciones en el SS y el SP:
Registro BP. El BP de 16 bits facilita la referencia de parmetros, los cuales son
datos y direcciones transmitidos va pila. Los procesadores 80386 y posteriores
tienen un BP ampliado de 32 bits llamado el registro EBP.
Registros Indice.
Los registros SI y DI estn disponibles para direccionamiento indexado y para
sumas y restas.
Registro SI. El registro ndice fuente de 16 bits es requerido por algunas
operaciones con cadenas (de caracteres). En este contexto, el SI esta asociado
con el registro DS. Los procesadores 80386 y posteriores permiten el uso de un
registro ampliado de 32 bits, el ESI.

Registro DI. El registro ndice destino tambin es requerido por algunas


operaciones con cadenas de caracteres. En este contexto, el DI esta asociado con
el registro ES. Los procesadores 80386 y posteriores permiten el uso de un
registro ampliado de 32 bits, el EDI.
Registro de Banderas.
De los 16 bits del registro de banderas, nueve son comunes a toda la familia de
procesadores 8086, y sirven para indicar el estado actual de la maquina y el
resultado del procesamiento. Muchas instrucciones que piden comparaciones y
aritmtica cambian el estado de las banderas, algunas cuyas instrucciones pueden
realizar pruebas para determinar la accin subsecuente. En resumen, los bits de
las banderas comunes son como sigue:
OF (Overflow, desbordamiento). Indica desbordamiento de un bit de orden alto
(mas a la izquierda) despus de una operacin aritmtica.

DF (direccin). Designa la direccin hacia la izquierda o hacia la derecha para


mover o comparar cadenas de caracteres.
IF (interrupcin). Indica que una interrupcin externa, como la entrada desde el
teclado, sea procesada o ignorada.
TF (trampa). Permite la operacin del procesador en modo de un paso. Los
programas depuradores, como el DEBUG, activan esta bandera de manera que
usted pueda avanzar en la ejecucin de una sola instruccin a un tiempo, para
examinar el efecto de esa instruccin sobre los registros de memoria.
SF (signo). Contiene el signo resultante de una operacin aritmtica (0 = positivo
y 1 = negativo).
ZF (cero). Indica el resultado de una operacin aritmtica o de comparacin (0 =
resultado diferente de cero y 1 = resultado igual a cero).
AF (acarreo auxiliar). Contiene un acarreo externo del bit 3 en un dato de 8 bits
para aritmtica especializada.
PF (paridad). Indica paridad par o impar de una operacin en datos de 8 bits de
bajo orden (mas a la derecha).
CF (acarreo). Contiene el acarreo de orden mas alto (mas a la izquierda) despus
de una operacin aritmtica; tambin lleva el contenido del ultimo bit en una
operacin de corrimiento o de rotacin. Las banderas estn en el registro de
banderas en las siguientes posiciones:

Las banderas mas importantes para la programacin en ensamblador son O, S, Z


y C, para operaciones de comparacin y aritmticas, y D para operaciones de
cadenas de caracteres. Los procesadores 80286 y posteriores tienen algunas
banderas usadas para propsitos internos, en especial las que afectan al modo
protegido. Los procesadores 80286 y posteriores tienen un registro extendido de
banderas conocido como Eflags.
Registros de PILA
La pila es un rea de memoria importante y por ello tiene, en vez de uno, dos
registros que se usan como desplazamiento (offset) para apuntar a su contenido.
Se usan como complemento al registro y son:
-SP- Stack Pointer: Se traduce como puntero de pila y es el que se reserva el
procesador para uso propio en instrucciones de manipulado de pila. Por lo general
, el programador no debe alterar su contenido.
-BP- Base pointer: Se usa como registro auxiliar. El programador puede usarlo
para su provecho.
Claro que estos nombres y tipos de registros son estndar, ya que cada fabricante
puede utilizar otros registro que reemplacen a estos o los auxilien, aun as, los
fabricantes que usan otros registro tienen la misma funcin que los anteriormente
mencionados

Ejemplo
Registros de uso general del 8086/8088:
Tienen 16 bits cada uno y son ocho:
1. AX = Registro acumulador, dividido en AH y AL (8 bits cada uno). Usndolo
se produce (en general) una instruccin que ocupa un byte menos que si se
utilizaran otros registros de uso general. Su parte ms baja, AL, tambin
tiene esta propiedad. El ltimo registro mencionado es el equivalente al
acumulador de los procesadores anteriores (8080 y 8085). Adems hay
instrucciones como DAA; DAS; AAA; AAS; AAM; AAD; LAHF; SAHF; CBW;
IN y OUT que trabajan con AX o con uno de sus dos bytes (AH o AL).
Tambin se utiliza este registro (junto con DX a veces) en multiplicaciones y
divisiones.
2. BX = Registro base, dividido en BH y BL. Es el registro base de propsito
similar (se usa para direccionamiento indirecto) y es una versin ms
potente del par de registros HL de los procesadores anteriores.

3. CX = Registro contador, dividido en CH y CL. Se utiliza como contador en


bucles (instruccin LOOP), en operaciones con cadenas (usando el prefijo
REP) y en desplazamientos y rotaciones (usando el registro CL en los dos
ltimos casos).
4. DX = Registro de datos, dividido en DH y DL. Se utiliza junto con el registro
AX en multiplicaciones y divisiones, en la instruccin CWD y en IN y OUT
para direccionamiento indirecto de puertos (el registro DX indica el nmero
de puerto de entrada/salida).
5. SP = Puntero de pila (no se puede subdividir). Aunque es un registro de uso
general, debe utilizarse slo como puntero de pila, la cual sirve para
almacenar las direcciones de retorno de subrutinas y los datos temporarios
(mediante las instrucciones PUSH y POP). Al introducir (push) un valor en
la pila a este registro se le resta dos, mientras que al extraer (pop) un valor
de la pila este a registro se le suma dos.
6. BP = Puntero base (no se puede subdividir). Generalmente se utiliza para
realizar direccionamiento indirecto dentro de la pila.
7. SI = Puntero ndice (no se puede subdividir). Sirve como puntero fuente
para las operaciones con cadenas. Tambin sirve para realizar
direccionamiento indirecto.
8. DI = Puntero destino (no se puede subdividir). Sirve como puntero destino
para las operaciones con cadenas. Tambin sirve para realizar
direccionamiento indirecto.
Cualquiera de estos registros puede utilizarse como fuente o destino en
operaciones aritmticas y lgicas
Indicadores (flags)
Hay nueve indicadores de un bit en este registro de 16 bits. Los cuatro bits ms
significativos estn indefinidos, mientras que hay tres bits con valores
determinados: los bits 5 y 3 siempre valen cero y el bit 1 siempre vale uno (esto
tambin ocurra en los procesadores anteriores).
CF (Carry Flag, bit 0): Si vale 1, indica que hubo "arrastre" (en caso de suma)
hacia, o "prstamo" (en caso de resta) desde el bit de orden ms significativo del
resultado. Este indicador es usado por instrucciones que suman o restan nmeros
que ocupan varios bytes. Las instrucciones de rotacin pueden aislar un bit de la
memoria o de un registro ponindolo en el CF.
PF (Parity Flag, bit 2): Si vale uno, el resultado tiene paridad par, es decir, un
nmero par de bits a 1. Este indicador se puede utilizar para detectar errores en
transmisiones.
AF (Auxiliary carry Flag, bit 4): Si vale 1, indica que hubo "arrastre" o "prstamo"
del nibble (cuatro bits) menos significativo al nibble ms significativo. Este
indicador se usa con las instrucciones de ajuste decimal.
ZF (Zero Flag, bit 6): Si este indicador vale 1, el resultado de la operacin es cero.

SF (Sign Flag, bit 7): Refleja el bit ms significativo del resultado. Como los
nmeros negativos se representan en la notacin de complemento a dos, este bit
representa el signo: 0 si es positivo, 1 si es negativo.
TF (Trap Flag, bit 8): Si vale 1, el procesador est en modo paso a paso. En este
modo, la CPU automticamente genera una interrupcin interna despus de cada
instruccin, permitiendo inspeccionar los resultados del programa a medida que se
ejecuta instruccin por instruccin.
IF (Interrupt Flag, bit 9): Si vale 1, la CPU reconoce pedidos de interrupcin
externas enmascarables (por el pin INTR). Si vale 0, no se reconocen tales
interrupciones. Las interrupciones no enmascarables y las internas siempre se
reconocen independientemente del valor de IF. DF (Direction Flag, bit 10): Si vale
1, las instrucciones con cadenas sufrirn "auto-decremento", esto es, se
procesarn las cadenas desde las direcciones ms altas de memoria hacia las
ms bajas. Si vale 0, habr "auto-incremento", lo que quiere decir que las cadenas
se procesarn de "izquierda a derecha".
OF (Overflow flag, bit 11): Si vale 1, hubo un desborde en una operacin aritmtica
con signo, esto es, un dgito significativo se perdi debido a que tamao del
resultado es mayor que el tamao del destino.

El procesador Z80
Registros de propsito general
El Z80 posee 14 registros de propsito general de 8 bits denominados A, B, C, D,
H, L y A', B', C', D', H' , L'. Solamente un set de siete registros y el correspondiente
registro de Flags F pueden estar activos al mismo tiempo. Una instruccin especial
selecciona A y F o A' y F' mientras que otra instruccin selecciona B, C, D, E, H, L
o C', D', E' ,H' L'.
El programador puede cambiar rpidamente de un conjunto de registros de
propsito general a otro. Esto proporciona una mayor capacidad de
almacenamiento en registros. El acceso a datos presentes en registros de la CPU
es mucho ms rpido que el acceso a datos en memoria.
Los registros pueden agruparse de a pares formando registros de 16 bits. Estos
son los pares BC, DE y HL (sus equivalentes primas tambin pueden agruparse).

Flags
Aunque los Flags existen fsicamente dentro de la CPU estn agrupados
lgicamente formando un registro. Los Flags del Z80 son los siguientes:
Flag de Cero(Z): Toma el valor 1 si el resultado de una operacin es cero. Es el bit
seis.
Flag de signo(S): Toma el valor 1 si el resultado de una operacin es negativo. Es
el bit siete.
Flag de Carry(C): Este flag es afectado por las instrucciones de desplazamiento y
es puesto en 1 0 segn el valor del bit desplazado. Tambin es afectado por las
operaciones aritmticas. Este flag es el bit cero.
Flag de Paridad y overflow(P/V): En el caso de paridad, se pone en 1 si el
resultado de una operacin posee un nmero par de unos. Cuando el flag P/V se
usa para representar overflow, el flag se pone en 1 si ocurre un overflow despus
de una operacin aritmtica. Este flag es el bit 2.
Flag H y N: Son dos Flip Flop que no pueden ser examinados por las instrucciones
de salto condicional. El Z80 los usa para las operaciones BCD. H representa el
rebalse que genera considerando los cuatro bits menos significativos del resultado
y N es el flag de resta, el cual se activa para indicar si la ltima instruccin
ejecutada fue suma o resta. En el caso general, una instruccin de resta coloca en
1 el flag N y una instruccin de suma lo coloca en 0. Los Flags H y N son los bits 4
y 1 respectivamente.

Registros de propsito especial


Program Counter:
Es un registro de 16 bits que indica la direccin de la prxima instruccin ejecutar.
Las instrucciones del Z80 pueden contar de uno, dos, tres o cuatro bytes.
Stack-Pointer:
Es un registro de 16 bits que indica la direccin de una memoria RAM externa
denominada Stack. El objetivo de esta rea de memoria es proporcionar un medio
de almacenamiento temporal de los registros del usuario, registro de Flags y del
program Counter. La provisin de Stack es fundamental para operaciones tales
como los llamados a sub-rutinas e interrupciones.
Registros ndices IX e IY: Estos registros son de 16 bits, diseados para permitir
un direccionamiento indexado en los programas del Z80. Cuando se ejecuta una

instruccin en un modo de direccionamiento indexado, se usa uno de los dos


registros ndices para calcular la direccin del operando.
Registro de interrupciones I: Es un registro de 8 bits que puede ser cargado para
especificar el byte ms significativo de una direccin de memoria. El byte menos
significativo es proporcionado por el dispositivo que solicita la interrupcin.
Registro de refresh de memoria R: Es un registro especial diseado para
proporcionar un refresh automtico de las memorias RAM dinmicas.
Registro de instrucciones:
El registro de instrucciones tiene por misin almacenar el cdigo de operacin de
la instruccin leda desde memoria. Este cdigo es descodificado y con esta
informacin se dirigen todos los micro-pasos.

Procesadores: Aspectos tecnolgicos


1 Historia:
La historia de los microprocesadores se inicia en 1948 con la invencin del
transistor por John Bardeen y Walter H. Brattain en los Laboratorios Bell de AT&T
[6], y la posterior introduccin del circuito integrado IC, en 1959 [4] por Robert
Noyce en Fairchild Semiconductors y Jack Kilby en Texas Instruments.

El 15 de Noviembre de 1971 Intel introduce el 4004 que corra a 108 KHz


con 2.300 transistores y una tecnologa de 10 micras. Este procesador fue
desarrollado por encargo de una compaa japonesa para una calculadora
(Busicom).

En Abril de 1972 se lanza el 8008 a 200 KHz con 3.500 transistores y


tecnologa de 10 micras.
En Abril de 1974 se lanza el 8080, a 2 MHz con 6.000 transistores y
tecnologa de 6 micras.
.

Este procesador es el que inicia la era de la micro computadora, pues


origin el primer ordenador personal, el Altair 8800. El Sistema Operativo
CP/M fue escrito para l [5], y Microsoft fue fundada para producir un
intrprete de Basic para dicho procesador. Su xito fue tal que incluso fue
clonado, dando lugar
al Z-80 construido
por
Zilog,
una
empresa constituida
por ingenieros que
provenan de Intel.
Este
procesador
inclua
un
superconjunto de las
instrucciones
del
8080 con lo que
poda
correr
el
software de aquel.
En Junio de 1978
Intel lanza el 8086 a
5 MHz con 29.000 transistores. Una versin reducida, el 8088 fue el
elegido para motorizar el primer IBM-PC.

2 Proceso de fabricacin:

Fabricacin de un monocristal de silicio de cientos de quilos de peso; unos


20 cm x 150 cm, en un proceso muy lento (10 a 40 mm/hora) a alta
temperatura (1370 C).

Rectificado de la superficie y corte de sus extremos hasta conseguir un


cilindro perfecto.
Separacin de obleas por corte mediante sierra de diamante. Cada una de
menos de 1 mm de grosor (se obtienen miles de ellas de cada barra).
Las obleas se pulen hasta conseguir un acabado especular y se recubren
de una primera capa aislante de xido de silicio mediante deposicin de
vapor.
Fotolitografa: Deposicin de una pelcula de material fotosensible; a
continuacin se proyecta sobre esta pelcula la primera mscara. Un ataque
castico disuelve las zonas en que el material fotosensible ha sido expuesto
a la luz, con lo que se crean zanjas microscpicas (0.25, 0.18 y 0.13
micras).
El proceso sigue con el dopaje, que consiste en crear capas con
propiedades semiconductoras (que sern posteriormente parcialmente
disueltas) mediante la adicin de impurezas. El Pentium III utiliza ms de
20 mscaras para crear seis capaz de interconexiones de metal y
semiconductoras.
Las zonas de interconexin se efectan mediante metalizacin.
Actualmente (2002) se utiliza principalmente aluminio, pero empieza a
utilizarse cobre que es mejor conductor que aquel, y permite
interconexiones ms pequeas (aunque presenta ms problemas de
corrosin que el aluminio).
Testeo y corte: Se marcan las unidades malas y se cortan con laser o
diamante. (tasa de errores).
Encapsulado y comprobacin final a diversas velocidades y temperaturas.

Estado en 2002: Se pretende llegar a monocristales de 30 cm de dimetro con


unos 670 circuitos por oblea. Se est en 140 millones de transistores en un solo
circuito integrado (Pentium III Xeon).
La situacin en 2005 era que, a pesar de las mejoras (reduccin) en la longitud de
onda de la luz utilizada, las tcnicas fotolitogrficas estaban llegando al lmite
terico de la resolucin ptica. La consecuencia es que, con la tecnologa del
momento no puede seguir cumplindose la Ley de Moore por mucho ms tiempo,
y se estn ensayando nuevos mtodos. Sin embargo, en Febrero del 2006 IBM
anuncia la puesta apunto de una nueva mejora en las tcnicas tradicionales de
fabricacin, denominada Litografa ptica profunda ultravioleta, que utiliza luz de
248 nm (10-9 m) de longitudes de onda, con la que se consiguen tamaos de 30

nanmetros (menos de una 3000 milsima parte del grosor de un cabello


humano).
Las ltimas mejoras permiten un nuevo respiro a la mencionada ley, que
aparentemente "tiene cuerda" hasta el ao 2020. As, de acuerdo con la
Asociacin de la Industria de Semiconductores, con el estado actual de la tcnica
(2006) es de esperar que en los dos prximos aos se doble el nmero de
transistores incluidos en una CPU, pasando de 1 a 2 billones (miles de millones.
109) y hasta 4 billones en un plazo de 4 aos.
3 Caractersticas distintivas:
3.1 Tamao de los registros internos (8088 16; 80386 y siguientes 32 bits).
3.2 Anchura del bus de datos (8088 8; 80286 16; 80486 32; Pentium 64 bits)
3.3 Anchura del bus de direcciones (8088 20; 80286 24; 80486 32 y
Pentium 36 bits).
3.4 Velocidad
3.5 Encapsulado
3.6 Voltaje
4 Velocidad
No hay un estndar para medirla. Uno de los pocos datos objetivos es la
frecuencia a que funciona, aunque existen otros muchos factores, tales como el
nmero de instrucciones que es capaz de ejecutar en cada ciclo (arquitectura
sper escalar), los juegos de instrucciones para aplicaciones especficas como la
tecnologas MMX, las extensiones SIMD o 3DNow, la ejecucin dinmica,
arquitectura de bus independiente, etc.
Tiempos medios por instruccin
8086 y 8088: Un promedio de 12 ciclos por instruccin
80286 y 80386: Un promedio de 4.5 ciclos por instruccin (el 80386 fue el
primer procesador de ordenador personal en implementar arquitectura de
ejecucin paralela).
80486: Media de 2 ciclos por instruccin
Pentium y AMD serie K6: 2 instrucciones por ciclo.

Pentium Pro, Celern, Athlon y Duron: Por encima de 3 instrucciones por


ciclo.
A partir del Intel 80486 los procesadores funcionan a una velocidad mayor que lo
que pueden hacer los circuitos y buses de la placa-base (bus externo). La
situacin actual es que las velocidades tpicas de las placas-base son de 60- 66100- 133 MHz mientras que los procesadores funcionan a frecuencias mltiplos de
aquellas; tpicamente de 1x hasta 10x, es decir, desde 60 a 1330 MHz. Dado que
el procesador est conectado con el bus externo, es fcil comprender que en su
interior existan buses que trabajan a distintas velocidades. Para distinguirlos es
frecuente referirse a la velocidad del bus ms rpido como velocidad del ncleo
y a la del bus que conecta con el bus externo como velocidad del bus frontal
("Front-side bus").
4.1 Tecnologa MMX
La tecnologa MMX ("MultiMedia eXtensions") fue introducida en 1.997 por Intel en
sus procesadores Pentium para mejorar la manipulacin de imgenes y
tratamiento de codecs de audio/video, mediante un conjunto de 57 nuevas
instrucciones, as como una nueva capacidad denominada SIMD ("Single
Instrucction Multiple Data").
4.2 Extensiones SIMD
Con la aparicin del Pentium III en 1.999 se introdujeron nuevas mejoras en la
tecnologa MMX, introduciendo 70 nuevas instrucciones denominadas SSE
("Streaming SIMD Extensions") o KNI ("Katmai News Instrucctions") puesto que
Katmai que era el nombre clave del Pentium III antes de su lanzamiento.
Las instrucciones SSE son especialmente adecuadas para decodificacin de
MPEG2, que es el codec utilizado normalmente en los DVDs, procesamiento de
grficos tridimensionales y software de reconocimiento de voz.
4.3 3DNow
La tecnologa 3DNow es la respuesta AMD a las SSE de Intel. Se introdujo por
primera vez en 1.998 en la serie K6 de procesadores, y son un conjunto de 21
instrucciones que mejoran las capacidades multimedia de estos procesadores.
Enhanced 3DNow aade otras 24 nuevas instrucciones a las anteriores.
4.4 Arquitectura DIB

La arquitectura de bus dual independiente DIB ("Dual Independent Bus") consiste


en que el procesador dispone de dos buses exteriores que pueden funcionar
simultanea e independientemente. El principal es el que comunica con el bus de
la placa-base (bus del sistema); el segundo (bus de apoyo), comunica el
procesador con la cache L-2.
Para sacar pleno rendimiento de este segundo bus, se sac esta cach de la
placa-base y se la acerc al procesador, permitiendo que funcionase a la misma
velocidad que el ncleo (la cach L-1 siempre ha estado incluida en el
procesador).
4.5 Sobrecarga
La Sobrecarga ("Overclocking") consiste en aumentar la eficiencia del procesador
aumentando su velocidad de trabajo (frecuencia) por encima de la prevista por el
fabricante.
Aspectos relativos al marcaje de la velocidad de los procesadores por los
fabricantes; remarcado y mercado negro de procesadores; limitacin de la
velocidad por el fabricante.
Nota: La compaa Intel proporciona gratuitamente un software especial,
denominado Processor Frequency ID Utility
support.intel.com que
permite a los usuarios determinar si un determinado procesador Intel est
operando a la frecuencia correcta. Adems permite identificar el tipo de
procesador utilizado en el sistema y algunas de sus caractersticas como tipo y
tamao de cach; encapsulado y tecnologa (MMX y SMID).
El programa existe en dos versiones. Una de ellas corre bajo Windows, la
otra, denominada "bootable", no necesita un Sistema Operativo instalado para
correr [2]; puede instalarse en un disquete y arranca antes que el SO.
5 Encapsulados:
Concepto: Relacin con el tipo de zcalo. Existen varios tipos de encapsulado:

DIP "Dual In-line Package". El 8088 estaba encapsulado en un DIP de 40


pines.

PGA "Pin Grid Array". Se utiliza a partir de la introduccin de 80286 en


1.982. Existen muchas versiones: Socket 1, 169 pines; Socket 2, 238 p;
Socket 3, 237 p; Socket 4, 273 p; Socket 5, 320 p; Socket 6, 235 p [1];
Socket 7, 321 p y Socket 8, 387 p.

SE "Single Edge".

Ranura 1 cartuchos SEC (Single Edge Card) y SEP (Single Edge Connector) de
242 pines.
Ranura 2 con 330 pines. Servidores y sistemas de altas prestaciones con
Pentium Xeon.
Historia:
ZIF.

Zcalos de patillas planas y torneadas; origen de los zcalos LIF y

Se requieren unas 100 libras de fuerza para insertar un procesador de 169 pines
en un zcalo estndar (unos 45 Kg).
Se disearon los zcalos LIF ("Low Insertion Force") que limitaban a 60 libras
(unos 27 Kg), y los ZIF ("Zero Insertion Force") que no requieren ninguna fuerza
para su insercin o retirada.
6 Voltaje e intensidad:
Consideraciones generales sobre el binomio tensin-intensidad, potencia
consumida (W = V * I). La potencia consumida se disipa en forma de calor ( 1 Wh
= 860.42 caloras). El procesador es el elemento de mayor consumo de la placabase; tendencia a reducir el consumo/calentamiento.
Los primitivos procesadores, incluyendo el 8088 funcionaban a 5 V., al igual que el
resto de los componentes de la placa-base.
Posteriormente el voltaje ha ido reducindose: 3.5; 3.3; ... 2.2 V. Aunque la
tensin de los elementos de la placa-base se ha mantenido en 3.3 V. (tecnologa
de reduccin de voltaje VRE), de forma que la tensin del ncleo es distinta que la
del resto del sistema.
Mtodos de regulacin del voltaje:

Ninguno (sistemas antiguos)

Seleccin mediante jumpers en la placa-base

Seleccin automtica (pines VID).

6.1 Disipadores:
6.1.1 Motivo de su utilizacin.

6.1.2 Tipos: Activos y pasivos (con y sin ventilador o elemento de refrigeracin


incorporado).

Todos los tipos:


Colocacin (grasa de transferencia trmica, generalmente un compuesto de
plata que facilita la transmisin del calor desde el chip al disipador).

Disipadores activos:
Estn provistos de un ventilador que en ocasiones puede ser de velocidad
variable en funcin de la temperatura, de unas 500 r.p.m. Su capacidad se
mide en trminos del caudal de aire que proporcionan, generalmente
expresado en CFM (Cubic Feet per Minute), equivalentes a 28.316
litros/minuto; la presin no suele estar indicada, pero se expresa en PSI
("Pounds per Square Inch"), equivalentes a 0.488 gr/cm 2.
Notas de calidad: Preferiblemente con rodamientos, su MTBF de unas
50.000 horas.
Formas de alimentacin de los disipadores activos.

6.1.3 Programas de control de temperatura.


SpeedFan:

http://www.almico.com/speedfan.php
Control de velocidad de los ventiladores en funcin de la
temperatura del equipo. Adems, si sus discos disponen de la
capacidad SMART [3], puede tambin controlar la temperatura de
los discos.

SiGuardian y HDD Temperature de PalickSoft

http://www.siguardian.com/

Control de temperatura de la placa base y de los discos si


disponen de capacidad SMART. Existe una versin freeware
(limitada) y otra profesional. El programa puede incluso enviar
mensajes de advertencia por e-mail si la temperatura de los
discos sube excesivamente.

Antes de que el microprocesador pueda trabajar con nmeros o cualquier otro dato,
primero debe saber con qu nmeros puede trabajar. El mtodo ms directo de dar
al chip las variables que necesita es proverselas al mismo tiempo que la
instruccin. Por ejemplo, se podran mandar los nmeros 6 y 3 junto con la
instruccin de restar. Este mtodo simple tiene sus defectos. Los nmeros
apropiados se deben encaminar correctamente a las entradas de informacin del
microprocesador. El microprocesador necesita saber si restar 6 de 3 o 3 de 6 (la
diferencia podra ser significativa). Pues de acuerdo a como se distingan los
nmeros en un problema de sustraccin, ser el lugar en donde se pondrn en la
ecuacin (6 - 3 contra 3 - 6), un microprocesador distingue los nmeros con los
cuales trabaja por su posicin. Dos direcciones de memoria podran ser suficientes
para la manera en que se disean la mayora de los microprocesadores. Ellos
solamente tienen un camino a la memoria por lo que pueden ver un valor de la
memoria a la vez. Entonces es necesario que un microprocesador cargue por lo

menos un nmero en un rea de almacenamiento interno llamada registro, y de


esta manera pueda entonces, alcanzar simultneamente el nmero en memoria y
el valor en su registro interno. Alternativamente (y ms comnmente hoy), ambos
valores con los cuales el microprocesador debe trabajar, se cargan separadamente
en registros internos.
Parte de la funcin de cada instruccin del microprocesador, es decidir cules
registros utilizar para los datos y dnde poner las respuestas que sean regresadas.
Otras instrucciones le dicen al microprocesador qu nmeros cargar en sus
registros con los cuales trabajar ms adelante, o mover la informacin de un
registro que se encuentra en algn lugar a otro en otro lugar, a la memoria o a un
puerto de salida.
Un registro funciona de dos maneras, como una memoria y como un banco de
trabajo. Mantiene los patrones de bits hasta que pueden ser utilizados o enviados
fuera del procesador. El registro tambin est conectado con los circuitos del
microprocesador de modo que los cambios realizados por las instrucciones
aparezcan realmente en el registro. La mayora de los microprocesadores tienen
comnmente varios registros, algunos dedicados a funciones especficas (tales
como mantener un apuntador al programa, que indica en qu instruccin nos
encontramos en ese momento; este registro es llamado contador o puntero de
instruccin) y otros a propsitos generales. Anteriormente, el acumulador era el
nico registro en un microprocesador que poda realizar clculos. En los
microprocesadores modernos, todos los registros son casi iguales (en los ltimos
diseos, todos los registros son iguales, e intercambiables), as que el acumulador
ahora es poco ms que un trmino colorido de una era pasada.
Los registros son medidos por el nmero de bits con los que pueden trabajar al
mismo tiempo. Un microprocesador de 16 bits, por ejemplo, debe tener uno o ms
registros que trabajen con 16 bits de datos al mismo tiempo. Los
microprocesadores de hoy tienen registros de 32 o 64 bits.
El agregar ms registros a un microprocesador no lo hace forzosamente ms
rpido. Cuando un microprocesador no utiliza caractersticas avanzadas tales como
pipeling o tecnologa superescalar, puede realizar solamente una operacin al
mismo tiempo. Ms de dos registros pareceran excesivos, despus de todo, la
mayora de las operaciones de las matemticas implican solamente dos nmeros al
mismo tiempo (o puede ser reducido a una serie de operaciones de dos nmeros).
Sin embargo, con los microprocesadores de la vieja tecnologa, tener ms registros
ayudaba al programador a crear programas ms eficientes. Con ms lugares para
poner datos, un programa necesitara mover la informacin dentro y fuera del
microprocesador lo menos posible, pues puede reducir potencialmente pasos de
programacin y ciclos de reloj.
El diseo del microprocesador moderno, influenciado por las ltimas
investigaciones, exige ms registros. Ya que los microprocesadores son mucho
ms rpidos que la memoria, cada vez que el microprocesador tiene que ir a la
memoria, provoca retrasos. Por lo tanto, si se reduce al mnimo el acceso a la

memoria mejorara el desempeo total, pues si se mantienen los datos en registros,


en vez de en memoria, apresurar las cosas. Por otra parte, tener muchos registros
es el equivalente a tener una memoria principal mvil en el microprocesador con
todas las complejidades y defectos inherentes de la tecnologa de memoria. Las
investigaciones han determinado que los microprocesadores con cerca de 32
registros y usando las tecnologas comunes trabajan mejor.
Por lo tanto, casi todos los microprocesadores ms avanzados de hoy, como los
RISC, tienen 32 registros. El tamao de los registros, sin embargo, tiene un efecto
substancial en el funcionamiento de un microprocesador. Pues ms bits asignados
a cada registro ocasiona que ms informacin sea procesada por el
microprocesador en cada ciclo de reloj. Por lo tanto, un registro de 64 bits en una
de los mejores procesadores RISC puede calcular ocho veces ms rpido que un
registro de 8 bits de un microprocesador de la primera generacin.
La ventaja del funcionamiento de usar registros ms grandes depende del software
que se ejecute. Si por ejemplo, un programa de computadora dice al
microprocesador que trabaje en datos de 16 bits al mismo tiempo, el poder de los
registros de 32 bits no ser utilizado.
Por esta razn, el DOS, (un sistema operativo de 16 bits escrito con instrucciones
de 16 bits), no utiliza las ventajas y caractersticas completas de los
microprocesadores de 32-bit. Por lo tanto, la mayora de los programas escritos
para funcionar bajo el DOS o bajo sistemas operativos avanzados que han
heredado cdigo de 16 bits (tal como Windows 95), no aprovechan las ventajas de
los registros de 32 bits.
Los sistemas operativos de 32 bits modernos entregan un mejor funcionamiento
con microprocesadores tales como el Pentium Pro. Puede ser que note un
problema con los registros grandes (digamos los de 64 bits), La mayora de los
datos no alcanzan a utilizarlos completos. El texto viene normalmente en bloques
de 8 bits (1 Byte). El sonido toma generalmente la forma de unidades de dos bytes.
Los datos de la imagen pueden ser uno, dos, tres, o cuatro bytes pero casi nunca
los ocho bytes que muchos microprocesadores modernos prefieren. Los
microprocesadores que usan la tecnologa MMX de Intel son diseados para utilizar
ms eficientemente sus registros grandes, procesando tipos de datos mltiples
simultneamente en un solo registro. Las instrucciones especiales MMX dicen al
microprocesador cmo procesar todos los bloques cortos de los datos en uno solo.
SSE (el nuevo concepto de Intel de Streaming SIMD Extensions).
Los microprocesadores no ejecutan las instrucciones tan pronto como las seales
del cdigo de la instruccin alcanzan los contactos que llegan al microprocesador.
Si los chips reaccionaran inmediatamente a estas seales, llegaran a convertirse
rpidamente en instrucciones confusas. Las seales elctricas no pueden cambiar
de estado inmediatamente; pasan siempre por un lapso breve de transicin, que

aunque pequeo, es un perodo de nivel indeterminado durante el cual las seales,


probablemente, provocaran la cada de un microprocesador y por consiguiente del
sistema entero. Por otra parte, las seales no cambian necesariamente en la
misma razn de tiempo, as que cuando algunas seales alcanzan los valores
correctos, otras pueden todava estar en los valores incongruentes.
Consecuentemente, un microprocesador debe vivir largos perodos de confusin
durante los cuales sus seales se encuentran en un perodo de transicin (por lo
cual no tienen los datos requeridos, sino que son datos incongruentes).
Para evitar que el microprocesador reaccione a estas seales invlidas, el chip
espera una indicacin que le dice que es tiempo de ejecutar el siguiente comando
vlido. Espera hasta que le es enviada una seal de "Contina". En las PC de hoy,
esta indicacin es proporcionada por el reloj del sistema. El reloj enva pulsos
regulares de voltaje, el equivalente electrnico de hacer tictac de un reloj. El
microprocesador verifica las instrucciones que le llegan cada vez que recibe un
pulso de reloj.
Los primeros microprocesadores no podan realizar una instruccin cada ciclo de
reloj. Estos microprocesadores requeran tanto como 100 pulsos para realizar una
sola instruccin. El nmero de los ciclos requeridos para realizar las instrucciones
vara con la instruccin y el diseo del microprocesador. Algunas instrucciones
toman unos cuantos ciclos, otros docenas de ellos. Por otra parte, algunos
microprocesadores son ms eficientes que otros en ejecutar sus instrucciones. La
tendencia de hoy es reducir al mnimo e igualar el nmero de los ciclos de reloj
necesarios para realizar una instruccin tpica.
Algunos microprocesadores tienden a romper la correspondencia entre el reloj del
sistema y el nmero de las instrucciones que se ejecutan. Cambian
deliberadamente la velocidad de reloj externo del sistema antes de que sea
utilizada internamente por los circuitos del microprocesador. En la mayora de los
casos, la frecuencia de reloj del sistema es aumentada en un cierto factor discreto
(tpicamente dos o tres, aunque algunos chips como el Pentium utilizan factores
tales como 1.5 como multiplicadores del reloj) de modo que las operaciones dentro
del chip son ejecutadas ms rpidamente que lo que el reloj externo permitira. A
pesar de las diversas frecuencias dentro y fuera del chip, el reloj del sistema
todava se utiliza para sincronizar operaciones lgicas.
La carencia de correspondencia entre los ciclos de reloj y la ejecucin de la
instruccin significa que la velocidad del reloj (tpicamente una frecuencia dada en
Megahertz o Gigahertz, MHz o GHz respectivamente) no sirve para comparar el
desempeo relativo de dos microprocesadores. La nica vez que la velocidad de
reloj da una indicacin confiable del desempeo relativo es cuando se comparan
dos diseos de chips idnticos que operen a diversas frecuencias, el Pentium III
corre a 450 y 500MHz. (el ltimo Pentium III es cerca de 10 por ciento ms rpido.)
Las computadoras personales podran no existir a no ser por dos conceptos en los

que estn basadas: la lgica binaria y los circuitos digitales. Las aproximaciones
binarias reducen la informacin a la forma mnima de representacin,
esencialmente utilizar el menor nmero de smbolos posibles para representar la
informacin. Un BIT (BInary digiT) de datos binario indica simplemente si algo es o
no es (un s o un no). La lgica binaria proporciona las reglas para manipular
estos dgitos binarios y permitir que representen y que acten como informacin
real manejable y utilizable, datos como nmeros, nombres, e imgenes.
La lgica binaria implica el uso del sistema de numeracin binario o de base 2, el
cual utiliza slo los dgitos 0 y 1 para representar cualquier tipo de nmero y con
ellos realizar todo tipo de operaciones; tambin implica el uso del lgebra booleana,
que dicta las reglas para realizar las manipulaciones de los datos binarios. El
microprocesador es el encargado de la manipulacin de la lgica binaria, el
microprocesador simplemente controlan el flujo de seales elctricas. Es un circuito
electrnico, una clase especial de circuito llamado circuito de lgica digital.
Un procesador ejecuta instrucciones de programas (software) para permitir a la
computadora realizar diferentes funciones. El qu tan eficiente y eficazmente se
realiza esta tarea, est en funcin de la arquitectura del microprocesador (el diseo
interno). La arquitectura del microprocesador describe la forma en que los datos
son procesados internamente, el cual es uno de los factores ms importantes que
determina el rendimiento global (el otro es la velocidad del reloj).
Las interfaces externas del procesador describen la manera de comunicar la
informacin con la memoria, chipset y otros dispositivos en la PC.
El procesador controla a la PC completa, y utiliza rutas o caminos de control
dedicados llamados "buses" para enviar la informacin entre l y el Cach, la
memoria y otros dispositivos.
Los buses son las interfaces externas del procesador, las cuales pueden diferir
entre CPU's similares.
Existen diferentes tipos de buses en una PC moderna. Entre los ms importantes
encontramos los buses de E/S PCI e ISA, pero de acuerdo a los alcances de este
tema, estos buses no son descritos aqu, para obtener informacin detallada sobre
estos buses y los dems tipos de buses consulte el tema de motherboards. En
cuanto al tema de microprocesadores, los buses ms importantes son el bus del
procesador y el bus de la memoria.
Los procesadores convencionales usan un Cach L2 en la motherboard y lo
conectan a l utilizando el bus estndar del sistema. Para lograr un mejor
rendimiento, muchos procesadores utilizan un bus de gran velocidad dedicado para
conectar el procesador al cach L2.
Por ejemplo, en el Pentium estndar a 200MHz ejecutando sobre un bus del
sistema de 66MHz, el cach funcionar a 66MHz, la misma velocidad del bus del
sistema, puesto que ste funciona con el bus del sistema. El Pentium Pro a
200MHz, tiene un cach L2 integrado que funciona a la velocidad del procesador, o

sea 200MHz. Un bus trasero especial gestiona este enlace de datos de gran
velocidad entre el procesador y el cach L2 (el cual se encuentra incluido dentro
del empaque del procesador). El Pentium II tiene un arreglo de bus similar;
funciona a la mitad la velocidad del procesador, por ejemplo en un Pentium II a
266MHz se tiene un bus de cach a 133MHz (mucho ms lento que el Pentium Pro
pero mucho ms rpido que el Pentium).
Tanto el bus cach del Pentium Pro como el del Pentium II, son transaccionales (de
no bloqueo) lo que les permite manejar solicitudes concurrentes del sistema del
cach, aumentando as el rendimiento.
Otra ventaja de este diseo es que teniendo a los Cachs y a los buses Cach
separados del bus principal, se hace ms apropiado para el multiprocesamiento.
No slo permite a cada procesador tener su propio cach sin tener que compartir
uno solo en el motherboard, sino que cada cach tiene su propio bus independiente
y no interferible. Intel llama a este tipo de arquitectura, arquitectura de Bus
Independiente Dual (DIB).
Cada bus est compuesto de dos partes distintas: el bus de datos y el bus de
direcciones. El bus de los datos es al que nos referimos al hablar del bus principal,
el bus de la memoria o el bus del sistema; stas son las lneas que realmente
llevan los datos transferidos.
Entre ms ancho sea el bus de datos, mayor informacin puede transferirse
simultneamente. Los buses de los datos ms anchos generalmente significan
mayor rendimiento. La velocidad del bus de datos es dada por la velocidad del reloj
del sistema, el cual es tambin otro controlador del rendimiento del bus.
El ancho de banda del bus de datos nos dice cunta informacin puede fluir a
travs de l, y sta en funcin del ancho del bus (en bits) y su velocidad (en MHz).
Se puede comparar al bus de datos con una carretera; su ancho es el nmero de
carriles y su velocidad es la rapidez con que los automviles viajan. El ancho de
banda es entonces la cantidad de trfico que la carretera mantiene en una unidad
dada de tiempo, que es una funcin de cuntos carriles hay y que tan rpido los
automviles viajan en ellos.
El ancho de banda del bus de la memoria es sumamente importante en las PCs
modernas, porque es a menudo el principal cuello de botella del desempeo del
sistema. Actualmente, con procesadores que funcionan mucho ms rpido que
otras partes del sistema, aumentar la velocidad de transferencia de datos en el
exterior del procesador tiene un impacto mayor en el rendimiento global que
acelerar el propio procesador. Esto es porque por ejemplo, un Pentium a 150MHz
no es mucho ms rpido que un Pentium a 133MHz; el Pentium a 150 funciona
bajo un bus del sistema de 60MHz y el Pentium a 133MHz en uno de 66MHz. 10%
ms de velocidad en el bus del sistema, mejora el rendimiento global mucho ms

que un 10% ms de velocidad en el procesador.


Estas tablas ilustran el tamao del bus de datos, la velocidad y el ancho de banda
para diferentes procesadores. Se puede apreciar que mientras en los ltimos aos,
las velocidades de los procesadores han aumentado en gran medida, las
velocidades del bus del sistema han permanecido algo estancadas, y el ancho de
banda del bus del sistema ha estado esencialmente inalterado desde la
introduccin del Pentium en 1994, que funcionaba sobre un bus de 66 MHz.
Hay tres tablas diferentes, reflejando los tres rangos de velocidad generales usados
por los buses de datos en las PCs durante los ltimos aos. En cada tabla la familia
de procesadores se lista junto con el ancho del bus de datos. Por lo tanto, una de
las columnas proporciona la informacin del ancho de banda del bus en MB/seg
correspondiendo a cada una de las velocidades del bus normalmente usadas por el
procesador. Recuerde a los multiplicadores de reloj de los procesadores, puesto
que muchos 486 y los procesadores posteriores funcionan en algn mltiplo de la
velocidad del bus de sistema.
Muchas personas (incorrectamente) deducen el tamao del procesador a partir del
ancho del bus de datos. Por ejemplo, las personas ven un bus de datos de 64 bits
de ancho en el Pentium y concluyen que el Pentium es un procesador de 64 bits.
Cuando de hecho, el tamao de los registros internos es lo que determina el
tamao de un procesador (y basado en esta definicin cada procesador,
introducido en los ltimos aos, ha sido de 32 bits).
NOTA.- Para obtener los valores del ancho de banda se realiza de la siguiente
forma: Queremos MB/seg, por ejemplo para el Pentium con 66.6MHz, tenemos lo
siguiente: 1Hz es 1 ciclo/ seg, entonces 1MHz es 1000000 ciclos/ seg. Ahora 64
bits son 4 bytes, y para transformar bytes a MB hay que dividir entre 220. Como
vemos en la frmula N1.
En las tablas 1 a 3 vemos los procesadores de 1ra a 6ta generacin.
Tal como mencionamos, este tema es parte del libro electrnico
Microprocesadores, preparado por Krismar Computacin. Ud. puede bajar ms
informacin sobre este tema de nuestra web, con la clave mother.

Historia de Intel

Intel, la primera compaa de microprocesadores del mundo. Fue fundada en 1968


por Gordon E. Moore y Robert Noyce, quienes inicialmente quisieron llamar a la
empresa Moore Noyce, pero sonaba mal, por lo que eligieron como nombre las
siglas de
Integrated Electronic, en espaol
Electrnica Integrada.
Nada ms nacer tuvo problemas de marca ya que la marca perteneca a una
cadena hotelera, asunto que fue arreglado con la compra de la misma.
La compaa comenz fabricando memorias antes de dar el salto a los
microprocesadores. Hasta los aos 70 fueron lideres gracias al competitivo
mercado de las memorias DRAM, SRAM y ROM.
El 15 de Noviembre de 1971 lanzaron su primer microprocesador: el Intel 4004 para
facilitar el diseo de una calculadora. En lugar de tener que disear varios circuitos
integrados para cada parte de la calculadora, disearon uno que segn un
programa almacenado en memoria poda hacer unas acciones u otras, es decir, un
microprocesador.
Poco tiempo despus, el 1 de Abril de 1972, Intel anunciaba una versin mejorada
de su procesador. Se trataba del 8008, y su principal ventaja contra otros modelos,
como el Intel 4004 fue poder acceder a ms memoria y procesar 8 bits. La
velocidad de su reloj alcanzaba los 740KHz.
En Abril del 1974 lanzaron el Intel 8080, su velocidad de reloj alcanzaba los 2 Mhz,
permitiendo direccionamiento de 16 bits, un bus de datos de 8 bits y acceso fcil a
64k
de
memoria.
Despus Intel anunciaba ese tan esperado primer ordenador personal, de nombre
Altair, cuyo nombre proviene de un destino de la nave Enterprise en uno de los
captulos de la popular serie de televisin Star Trek. Este ordenador tena un coste
de entorno a los 400 dlares de la poca, y el procesador supona multiplicar por 10
el rendimiento del anterior, gracias a sus 2 Mhz de velocidad, con una memoria de
64kb.
Sin embargo, el ordenador personal no pas a ser tal hasta la aparicin de IBM, en
el mercado. Algo que sucedi en dos ocasiones en los meses de junio de 1978 y de
1979. Fechas en las que respectivamente, hacan su aparicin los
microprocesadores 8086 y 8088, que pasaron a formar el denominado IBM PC, que
vendi
millones
de
unidades
de
ordenadores.
El xito fue tal, que Intel fue nombrada por "Fortune" como uno de los mejores
negocios
de
los
aos
setenta.
De los dos procesadores, el ms potente era el 8086, con un bus de 16 bits,
velocidades de reloj de 5, 8 y 10 Mhz, 29000 transistores usando la tecnologa de 3

micras y hasta un mximo de 1 Mega de memoria direccionable.


En cuanto al procesador 8088, era exactamente igual a ste, salvo la diferencia de
que posea un bus de 8 bits en lugar de 16, siendo ms barato y obteniendo mejor
respaldo en el mercado.
Cabe mencionar que el procesador 8086 es un microprocesador tan conocido y
probado, que incluso en el 2002 la NASA ha estado adquiriendo
microprocesadores 8086 de segunda mano.
El 1 de Febrero de 1982, Intel daba un nuevo vuelco a la industria con la aparicin
de los primeros 80286 (el famoso "286") con una velocidad entre 6 y 25 Mhz y un
diseo
mucho
ms
cercano
a
los
actuales
microprocesadores.
Como principal novedad, cabe destacar el hecho de que por fin se poda utilizar la
denominada memoria virtual, que en el caso del 286 poda llegar hasta 1 Giga.
El 286 tiene el honor de ser el primer microprocesador usado para crear
ordenadores clnicos en masa y gracias al sistema de "licencias cruzadas"
apareci el primer fabricante de clnicos "IBM compatible": Compaq, el cual
utilizando dicho microprocesador empez a fabricar equipos de escritorio en 1985 y
a utilizar los microprocesadores que Intel/IBM sacaban al mercado.
En 1986 apareci el Intel 80386 conocido por 386, velocidad de reloj entre 16 y 40
Mhz y destac principalmente por ser un microprocesador con arquitectura de 32
bits.
Cabe destacar tambin que la produccin de microprocesadores "80386" ha
continuado hasta ahora e Intel afirm en el 2006 que terminara finalmente de
producirlos en Septiembre del 2007. Parece ser que actualmente ste
microprocesador todava se usa bastante para sistemas empotrados.
En 1988, Intel desarrollaba un poco tarde un sistema sencillo de actualizar los
antiguos 286 gracias a la aparicin del 80386SX, que sacrificaba el bus de datos
para dejarlo en uno de 16 bits, pero a menor coste. Estos procesadores irrumpieron
con la explosin del entorno grfico Windows, desarrollado por Microsoft unos aos
antes, pero que no haba tenido la suficiente aceptacin por parte de los usuarios.
El 10 de abril de 1989 apareciera el Intel 80486DX, de nuevo con tecnologa de 32
bits y como novedades principales, la incorporacin del cach de nivel 1 (L1) en el
propio chip, lo que aceleraba enormemente la transferencia de datos de este cach
al procesador, as como la aparicin del co-procesador matemtico.
Luego de ello sacaron hasta dos versiones ms de DX: en 1992 el i486 DX2 a 50 y
66 MHz y en 1994 el i486 DX4 a 75-100 MHz enfocado a procesadores de gama
alta.
En 1989 lanzaron el 486 que alcanz velocidades entre 16 y 100 MHz y una
curiosidad: segn la Wikipedia fue nombrado "i486" por fallo judicial que prohibi el

uso de marcas con nmeros**.


Por ello el siguiente microprocesador en ser lanzado, en Mayo del 1993, fue
conocido como "Pentium". Estos procesadores que partan de una velocidad inicial
de 60 MHz, han llegado hasta los 200 MHz, algo que nadie haba sido capaz de
augurar unos aos antes. Con una arquitectura real de 32 bits, se usaba de nuevo
la tecnologa de .8 micras, con lo que se lograba realizar ms unidades en menos
espacio.
El 27 de Marzo de 1995, del procesador Pentium Pro supuso para los servidores de
red y las estaciones de trabajo un aire nuevo, tal y como ocurriera con el Pentium
en el mbito domstico. La potencia de este procesador no tena comparacin
hasta entonces, gracias a la arquitectura de 64 bits y el empleo de una tecnologa
revolucionaria como es la de .32 micras, lo que permita la inclusin de cinco
millones y medio de transitores en su interior. El procesador contaba con un
segundo chip en el mismo encapsulado, que se encargaba de mejorar la velocidad
de la memoria cach, lo que resultaba en un incremento del rendimiento
sustancioso. Las frecuencias de reloj se mantenan como lmite por arriba en 200
MHz, partiendo de un mnimo de 150 Mhz.
Una evolucin que demostr Intel hace muy poco con un nuevo procesador,
denominado Pentium II, que viene a ser simplemente un nuevo ingenio que suma
las tecnologas del Pentium Pro con el MMX. El Pentium II es el procesador ms
rpido de cuantos ha comercializado Intel.
Por el momento, en un futuro cercano adems de contar con la arquitectura de 0.25
micras, podremos disfrutar de duna de 0.07 para el ao 2011, lo que supondr la
introduccin en el procesador de mil millones de transistores y alcanzando una
velocidad de reloj cercana a los 10000 MHz, es decir, 10 Ghz.
La
tecnologa
MMX
Aunque no podamos considerar la tecnologa MMX como un procesador en s
mismo, sera injusto no hablar de ella en un informe como ste.
Es uno de los mayores pasos que ha dado Intel en la presente dcada, y segn
ellos mismos, todos los procesadores que fabriquen a partir de mediados del
prximo
ao
llevarn
incorporada
esta
arquitectura.
Para su desarrollo se analizaron un amplio rango de programas para determinar el
funcionamiento de diferentes tareas: algoritmos de descompresin de vdeo, audio
o grficos, formas de reconocimiento del habla o proceso de imgenes, etc. El
anlisis dio como resultado que numerosos algoritmos usaban ciclos repetitivos que
ocupaban menos del 10% del cdigo del programa, pero que en la prctica
suponan el 90% del tiempo de ejecucin. De modo que naci la tecnologa MMX,
compuesta por 57 instrucciones y 4 tipos de datos nuevos, que se encargan de
realizar esos trabajos cclicos consumiendo mucho menos tiempo de ejecucin.
Antes, para manipular 8 bytes de datos grficos requera 8 repeticiones de la
misma instruccin; ahora, con la nueva tecnologa, se puede utilizar una nica
instruccin aplicada a los 8 bytes simultneamente, obteniendo de este modo un

incremento del rendimiento de 8x.


Intel domina el mercado de los microprocesadores. Actualmente, el principal
competidor de Intel en el mercado es Advanced Micro Devices (AMD), empresa con
la que Intel tuvo acuerdos de comparticin de tecnologa: cada socio poda utilizar
las innovaciones tecnolgicas patentadas de la otra parte sin ningn costo.
Dentro de los microprocesadores de Intel podemos destacar las tecnologas
multincleo implementadas en los procesadores Pentium D y Core 2 Duo, la
tecnologa mvil Centrino desarrollada para el mercado de ordenadores porttiles y
la tecnologa HyperThreading integrada en los procesadores Intel Pentium 4.
El 6 de junio de 2005 Intel lleg a un acuerdo con Apple Computer, por el que Intel
proveer procesadores para los ordenadores Apple, realizndose entre 2006 y
2007 la transicin desde los tradicionales IBM. Finalmente en enero de 2006 se
presentaron al mercado las primeras computadoras de Apple, una porttil y otra de
escritorio, con procesadores Intel Core Duo de doble ncleo.
La
Ley
de
Moore
El Dr. Gordon Moore, uno de los fundadores de Intel Corporation, formul en el ao
1965 una ley que se ha venido a conocer como la "Ley de Moore", plantea que le
nmero de transitores de un chip se duplica cada dieciocho meses. Esta afirmacin,
que en un principio estaba destinada a los dispositivos de memoria, pero tambin a
los microprocesadores han cumplido la ley. Una ley que significa para el usuario
que cada dieciocho meses, de forma continua, pueda disfrutar de una tecnologa
mejor, algo que se ha venido cumpliendo durante los ltimos 30 aos, y en espera
siga vigente en los prximos quince o veinte aos.
Procesadores
Desfasados:

4004
4040
8008
8080
8085
iAPX 432
i860
i960
8086
8088
80186
80188
80286
80386
80486
Pentium

de

Intel

Pentium Pro
Pentium II
Pentium III
Itanium
Pentium 4
Pentium D
Pentium Extreme Edition
Pentium M
Pentium Dual Core
Core
Pentium E
Centrino
Core 2
Celeron
Xeon

Historia del Microchip

El Microchip, o tambin llamado circuito integrado (CI), es una pastilla o chip muy
delgado en el que se encuentran una cantidad enorme de dispositivos
microelectrnicos interactuados, principalmente diodos y transistores, adems de
componentes pasivos como resistencias o condensadores.
El primer Circuito Integrado fue desarrollado en 1958 por el Ingeniero Jack St. Clair
Kilby, justo meses despus de haber sido contratado por la firma Texas
Instruments.
Los elementos ms comunes de los equipos electrnicos de la poca eran los
llamados "tubos al vaco". Las lmparas aquellas de la radio y televisin. Aquellas
que calentaban como una estufa y se quemaban como una bombita.
En el verano de 1958 Jack Kilby se propuso cambiar las cosas. Entonces concibi
el primer circuito electrnico cuyos componentes, tanto los activos como los
pasivos, estuviesen dispuestos en un solo pedazo de material, semiconductor, que
ocupaba la mitad de espacio de un clip para sujetar papeles.
El 12 de Septiembre de 1958, el invento de Jack Kilby se prob con xito. El circuito
estaba fabricado sobre una pastilla cuadrada de germanio, un elemento qumico
metlico y cristalino, que meda seis milmetros por lado y contena apenas un
transistor, tres resistencias y un condensador.
El xito de Kilby supuso la entrada del mundo en la microelectrnica, adems de
millones de dolres en regalas para la empresa que daba trabajo a Kilby. El
aspecto del circuito integrado era tan nimio, que se gan el apodo ingls que se le
da a las astillas, las briznas, los pedacitos de algo: chip.
En el ao 2000 Jack Kilby fue galardonado con el Premio Nobel de Fsica por la
contribucin de su invento al desarrollo de la tecnologa de la informacin.
Los circuitos integrados fueron posibles gracias a descubrimientos experimentales
que demostraron que los semiconductores puede realizar las funciones de los
tubos vacos. La integracin de grandes cantidades de diminutos transistores en
pequeos chips fue un enorme avance sobre la ensamblaje manual de los tubos de
vaco
(vlvulas)
y
circuitos
utilizando
componentes
discretos.
La capacidad de produccin masiva de circuitos integrados, confiabilidad y facilidad
de agregarles complejidad, impuso la estandarizacin de los circuitos integrados en
lugar de diseos utilizando transistores que pronto dejaron obsoletas a las vlvulas
o
tubos
de
vaco.
Existen dos ventajas principales de los circuitos integrados sobre los circuitos

convencionales: coste y rendimiento. El bajo coste es debido a que los chips, con
todos sus componentes, son impresos como una sola pieza por fotolitografa y no
construidos por transistores de a uno por vez.
Algunos de los circuitos integrados ms avanzados son los microprocesadores, que
son usados en mltiples artefactos, desde computadoras hasta electrodomsticos,
pasando
por
los
telfonos
mviles.
Los chips de memorias digitales son otra familia de circuitos integrados que son de
importancia crucial para la moderna sociedad de la informacin.
Mientras el costo del diseo y desarrollo de un cirtuido integrado complejo es
bastante alto, cuando se reparte entre millones de unidades de produccin el costo
individual
por
lo
general
se
reduce
al
mnimo.
La eficiencia de los circuitos integrados es alto debido a que el pequeo tamao de
los chips permite cortas conexiones que posibilitan la utilizacin de lgica de bajo
consumo (como es el caso de CMOS) en altas velocidades de conmutacin.
Las estructuras de los microchips se volvieron ms y ms pequeas.
Los fabricantes tuvieron xito al duplicar el nmero de transistores en un chip cada
18 meses, tal como lo predijo la ley de Moore. Sin embargo, a medida que los
tamaos se han reducido a escalas de tomos, los fabricantes se estn acercando
cada
vez
ms
a
los
lmites
de
la
miniaturizacin.
Ha llegado el tiempo de probar acercamientos completamente nuevos. Para sto,
los investigadores estn actualmente buscando soluciones tales como el uso de
pequeos "mini tubos de carbn", los cuales esperan utilizar en los microchips del
futuro.
Tan slo ha pasado medio siglo desde el inicio de su desarrollo y ya se han vuelto
ubicuos. De hecho, muchos acadmicos creen que la revolucin digital impulsada
por los circuitos integrados es una de los sucesos ms destacados de la historia de
la humanidad.
Existen tres tipos de circuitos integrados:
Circuito monoltico: La palabra monoltico viene del griego y significa "una
piedra". La palabra es apropiada porque los componentes son parte de un chip. El
Circuito monoltico es el tipo ms comn de circuito integrado. Ya que desde su
intervencin los fabricantes han estado produciendo los circuitos integrados
monolticos para llevar a cabo todo tipo de funciones. Los tipos comercialmente
disponibles se pueden utilizar como amplificadores, reguladores de voltaje,
conmutadores, receptores de AM, circuito de televisin y circuitos de computadoras.
Pero tienen limitantes de potencia. Ya que la mayora de ellos son del tamao de
un transistor discreto de seal pequea, generalmente tiene un ndice de mxima
potencia menor que 1 W. Estn fabricados en un solo monocristal, habitualmente
de silicio, pero tambin existen en germanio, arseniuro de galio, silicio-germanio,
etc.
Circuito hbrido de capa fina: Son muy similares a los circuitos monolticos, pero,

adems, contienen componentes difciles de fabricar con tecnologa monoltica.


Muchos conversores A/D y conversores D/A se fabricaron en tecnologa hbrida
hasta que progresos en la tecnologa permitieron fabricar resistencias precisas.
Circuito hbrido de capa gruesa: Se apartan bastante de los circuitos
monolticos. De hecho suelen contener circuitos monolticos sin cpsula (dices),
transistores, diodos, etc, sobre un sustrato dielctrico, interconectados con pistas
conductoras. Las resistencias se depositan por serigrafa y se ajustan hacindoles
cortes con lser. Todo ello se encapsula, tanto en cpsulas plsticas como
metlicas, dependiendo de la disipacin de potencia que necesiten. En muchos
casos, la cpsula no est "moldeada", sino que simplemente consiste en una resina
epoxi que protege el circuito. En el mercado se encuentran circuitos hbridos para
mdulos de RF, fuentes de alimentacin, circuitos de encendido para automvil,
etc.
Clasificacin
de
los
Circuitos
Integrados:
Atendiendo al nivel de integracin - nmero de componentes - los circuitos
integrados se clasifican en:

SSI (Small Scale Integration) pequeo nivel: inferior a 12


MSI (Medium Scale Integration) medio: 12 a 99
LSI (Large Scale Integration) grande: 100 a 9999
VLSI (Very Large Scale Integration) muy grande: 10 000 a 99 999
ULSI (Ultra Large Scale Integration) ultra grande: igual o superior a 100 000

En cuanto a las funciones integradas, existen dos clasificaciones fundamentales de


circuitos integrados (CI): los anlogos y los digitales.
Circuitos integrados analgicos: Pueden constar desde simples transistores
encapsulados juntos, sin unin entre ellos, hasta dispositivos completos como
amplificadores, osciladores o incluso receptores de radio completos.
Circuitos integrados digitales: Pueden ser desde bsicas puertas lgicas (Y, O,
NO)
hasta
los
ms
complicados
microprocesadores.
stos son diseados y fabricados para cumplir una funcin especfica dentro de un
sistema. En general, la fabricacin de los circuitos integrales es compleja ya que
tienen una alta integracin de componentes en un espacio muy reducido de forma
que llegan a ser microscpicos. Sin embargo, permiten grandes simplificaciones
con respecto los antiguos circuitos, adems de un montaje ms rpido.
Limitaciones
de
los
circuitos
integrados:
Existen ciertos lmites fsicos y econmicos al desarrollo de los circuitos integrados.
Son barreras que se van alejando al mejorar la tecnologa, pero no desaparecen.
Las principales son:
Disipacin
de
potencia-Evacuacin
del
calor
Los circuitos elctricos disipan potencia. Cuando el nmero de componentes
integrados en un volumen dado crece, las exigencias en cuanto a disipacin de
esta potencia, tambin crecen, calentando el sustrato y degradando el
comportamiento del dispositivo. Adems, en muchos casos es un comportamiento

regenerativo, de modo que cuanto mayor sea la temperatura, ms calor producen,


fenmeno que se suele llamar "embalamiento trmico" y, que si no se evita, llega a
destruir el dispositivo. Los amplificadores de audio y los reguladores de tensin son
proclives a este fenmeno, por lo que suelen incorporar "protecciones trmicas".
Los circuitos de potencia, evidentemente, son los que ms energa deben disipar.
Para ello su cpsula contiene partes metlicas, en contacto con la parte inferior del
chip, que sirven de conducto trmico para transferir el calor del chip al disipador o al
ambiente. La reduccin de resistividad trmica de este conducto, as como de las
nuevas cpsulas de compuestos de silicona, permiten mayores disipaciones con
cpsulas ms pequeas.
Los circuitos digitales resuelven el problema reduciendo la tensin de alimentacin
y utilizando tecnologas de bajo consumo, como cmos. Aun as en los circuitos con
ms densidad de integracin y elevadas velocidades, la disipacin es uno de los
mayores problemas, llegndose a utilizar experimentalmente ciertos tipos de
criostatos. Precisamente la alta resistividad trmica del arseniuro de galio es su
taln de Aquiles para realizar circuitos digitales con l.
Capacidades
y
autoinducciones
parsitas
Este efecto se refiere principalmente a las conexiones elctricas entre el chip, la
cpsula y el circuito donde va montada, limitando su frecuencia de funcionamiento.
Con pastillas ms pequeas se reduce la capacidad y la autoinduccin de ellas. En
los circuitos digitales excitadores de buses, generadores de reloj, etc, es importante
mantener la impedancia de las lneas y, todava ms, en los circuitos de radio y de
microondas.
Lmites
en
los
componentes
Los componentes disponibles para integrar tienen ciertas limitaciones, que difieren
de las de sus contrapartidas discretas.
Resistencias. Son indeseables por necesitar una gran cantidad de superficie.
Por ello slo se usan valores reducidos y, en tecnologas mos, se eliminan casi
totalmente.
Condensadores. Slo son posibles valores muy reducidos y a costa de mucha
superficie. Como ejemplo, en el amplificador operacional uA741, el condensador de
estabilizacin viene a ocupar un cuarto del chip.
Bobinas. Slo se usan en circuitos de radiofrecuencia, siendo hbridos muchas
veces. En general no se integran.
Densidad
de
integracin
Durante el proceso de fabricacin de los circuitos integrados se van acumulando los
defectos, de modo que cierto nmero de componentes del circuito final no
funcionan correctamente. Cuando el chip integra un nmero mayor de
componentes, estos componentes defectuosos disminuyen la proporcin de chips
funcionales. Es por ello que en circuitos de memorias, por ejemplo, donde existen
millones de transistores, se fabrican ms de los necesarios, de manera que se

puede variar la interconexin final para obtener la organizacin especificada.


Qu es un Microprocesador?

El Microprocesador, para entendernos, es el cerebro del ordenador. Ms


exactamente definiremos al microprocesador como un chip en cuyo interior se
albergan miles (o millones) de unos elementos denominados transistores que,
combinndose entre ellos, permiten al chip realizar la tarea que tenga
encomendada. Se compone a su vez de Unidad Aritmtica, Lgica y de control.
Esta unidad trabaja en base a un reloj maestro que coordina la ejecucin de todas
las operaciones que realiza el microprocesador. Una breve descripcin del
microprocesador podra ser la siguiente:
Suelen tener forma de cuadrado o de rectngulo negro, y van soldados a la placa
o en un zcalo o socket. Tambin los podemos encontrar soldados en una especie
de cartucho que se conecta a la placa base.
Aunque la denominacin CPU es un tanto ambigua (puesto que tambin se suele
aplicar este trmino a la caja, torre, semitorre, etc. que contiene los componentes
internos del ordenador), tambin se puede utilizar este nombre para referirnos al
microprocesador.
La unidad de medida que se emplea para expresar la velocidad del
microprocesador es el megahercio (MHz), aunque la velocidad real de un
procesador depende de otros factores adems de los megahercios. Por ejemplo,
un microprocesador de los antiguos que funcione a 100 MHz puede ser mucho
ms lento que uno ms moderno, mejor organizado y con un nmero mayor de
transistores a 50 MHz. El megahercio tambin nos indica ms o menos la cantidad
de instrucciones que el microprocesador puede realizar en un segundo. As uno de
12 MHz. puede realizar 12 millones de ciclos por segundo.

PARTES DE UN MICROPROCESADOR

Un microprocesador consta de las siguientes partes:

El encapsulado: es lo que rodea a la oblea de silicio en s, para darle


consistencia, impedir su deterioro y permitir el enlace con los

conectores externos que se acoplarn a su zcalo o a la placa base.

Para

La memoria cach: es una memoria de gran velocidad que sirve al


microprocesador para tener a mano datos que previsiblemente se utilizarn
en prximas operaciones sin tener que acudir a la memoria RAM,
reduciendo as el tiempo de espera.
entender

un

poco

mejor

este

concepto

he

aqu

un

ejemplo:

Imaginemos dos sistemas de memoria A y B, entre los cuales se transfiere


informacin. Supongamos que el sistema A es ms rpido y presenta menor
capacidad de almacenamiento que B (situacin tpica en un PC). Esto se traduce
en que A debe funcionar a menor velocidad de la que es capaz de ofrecer, siempre
que se comunique con B. Se puede mejorar la velocidad de la transferencia
introduciendo un nuevo sistema de memoria C entre A y B, al que se denomina
cach. La cach debe presentar una capacidad de almacenamiento mayor que la
de A y menor que la de B, adems ser ms lenta que A pero ms rpida que B.
La aceleracin de las transferencias se basa, como mencionamos anteriormente,
en almacenar la informacin intercambiada ltimamente entre A y B puesto que
con gran probabilidad ser la ms empleada en las prximas transferencias.

El coprocesador matemtico: o FPU, es la parte del microprocesador


especializada en esa clase de clculos matemticos, aunque tambin
pueden estar en otro chip a parte del Microprocesador.

El resto del microprocesador: que consta de varias partes como la unidad


de enteros, registros, etc.

BREVE HISTORIA DEL MICROPROCESADOR

Como todo en este mundo, la historia de los procesadores ha pasado por


diferentes situaciones. Desde el primer procesador de 1971 (el 4004) hasta el
actual Pentium 4 del presente ao ha llovido mucho en el campo de los
procesadores. Aquel primer procesador 4004, presentado en el mercado el da 15
de noviembre de 1971, posea unas caractersticas nicas para su tiempo. Para
empezar, aquel reloj sobrepasaba por poco los 100 KHz, dispona de un ancho de
bus de 4 bits y poda manejar un mximo de 640 bytes de memoria. Realmente
una autentica joya que par entonces poda realizar gran cantidad de tareas, pero
que por desgracia no tiene punto de comparacin con los actuales micros.
Entre sus aplicaciones, podemos destacar su presencia en la calculadora
Busicom, as como dotar de los primeros tintes de inteligencia a objetos
inanimados.
Poco tiempo despus, sin embargo el 1 de Abril de 1972, Intel, anunciaba una
versin mejorada de su procesador. Se trataba del 8008, que contaba como
principal novedad con un bus de 8 bits y la memoria direccionable se ampliaba a
16 kbytes. Adems llegaba a la cifra de los 3500 transistores, casi el doble que su
predecesor, y s le puede considerar como el antecedente del procesador que
servira de corazn al primer ordenador personal. Justo dos aos despus, Intel
anunciaba ese tan esperado ordenador personal, de nombre Altair, cuyo nombre
proviene de un destino de la nave Enterprise, en uno de los captulos de la popular
serie de televisin Star Trek, la semana en la que se cre el ordenador. Este
ordenador tena coste de entorno a los $400 de la poca, y el procesador supona
multiplicar por diez el rendimiento del anterior, gracias a sus 2 MHz de velocidad
(por primera vez se utilizaba esta medida), con una memoria de 64 Kbytes. En
unos meses, logr vender decenas de miles de unidades, en lo que supona la
aparicin del primer ordenador que la gente podra comprar, y no ya simplemente
utilizar.
LA INTRODUCCIN EN IBM
Sin embargo, como todos sabemos, el ordenador personal no pas a ser tal hasta
la aparicin de IBM, el gigante azul, en el mercado. Algo que sucedi en dos
ocasiones en los meses de junio de 1978 y de 1979. Fechas en las que
respectivamente, hacan su aparicin los microprocesadores, 8086 y 8088, que
pasaron a formar el denominado IBM PC, que vendi millones de unidades de
ordenadores de escritorio, a lo largo y ancho del mundo. El xito fue tal que Intel
fue nombrada por la revista Fortune como uno de los mejores negocios de los
70s. De los dos procesadores, el ms potente era el 8086, con un bus de 16 bits,
velocidades de reloj de 5,8 y 10 MHz, 29000 transistores usando la tecnologa de
3 micras y hasta un mximo de 1 MB de memoria direccionable. El rendimiento se
haba vuelto a multiplicar por diez con respecto a su antecesor, lo que supona un
autntico avance en lo que al mundo de la informtica se refiere. En cuanto al
procesador 8088 era exactamente igual a este, salvo la diferencia de que posea
un bus de 8 bits en lugar de uno de 16, siendo ms barato y obteniendo mejor
respaldo en el mercado.

En el ao 1982, concretamente el 1 de febrero, Intel daba un nuevo vuelco a la


industria con la aparicin del 80286.
Como principal novedad, cabe destacar el hecho que de por fin se podia utilizar la
denominada memoria virtual, que en el caso del 80286, que poda llegar hasta un
Gb.
Tambin hay que contar con el hecho de que el tiempo pasado, haba permitido a
los ingenieros de Intel, investigar ms a fondo en este campo, movidos sin duda
por el gran xito de ventas de los anteriores micros. Ello se tradujo en un bus de
16 bits, 134000 transistores usando una tecnologa de 1,5 micras. Un mximo de
memoria direccionable de 16 Mb y una velocidades de reloj de 8, 10 y 12 MHz. En
trminos de rendimiento, podramos decir que se haba multiplicado entre tres y
seis veces la capacidad del 8086 y supona el primer ordenador que no fabricaba
IBM en exclusiva, sino que otras muchas compaas, alentadas por los xitos del
pasado, se decidieron a crear sus propias mquinas.
MICROSOFT TAMBIN JUEGA
El ao de 1985 es la clave en la historia de los microprocesadores. El 17 de
octubre Intel anunciaba la aparicin del procesador 80386 DX, el primero en
poseer una arquitectura de 32 bits, lo que supona una velocidad a la hora de
procesar las instrucciones realmente importante con respecto a su predecesor.
Dicho procesador contena en su interior alrededor de los 275000 transistores,
ms de cien veces los que tena el primer 4004 despus de tan solo 14 aos. El
reloj llegaba a un mximo de 33 MHz, y era capaz de direccionar 4 GB de
memoria.
En 1988, Intel desarrollaba un poco tarde un sistema sencillo de actualizar los
antiguos 80286, gracias a la aparicin del 80386 SX, que sacrificaba el bus de
datos para dejarlo en uno de 16 bits, pero a menor coste. Estos procesadores
irrumpieron, con la explosin del entorno grfico Windows, desarrollado por
Microsoft, unos aos antes, pero que no haba tenido la suficiente aceptacin por
parte de los usuarios.
Tambin haba algunos entornos que no haban funcionado mal del todo, como por
ejemplo el GEM 3, pero no es hasta este momento cuando este tipo de entornos
de trabajos se popularizan, facilitando la tarea de enfrentarse a un ordenador, que
por aquel entonces slo conocan unos pocos. Windows, vino a ser un soplo de
aire fresco para la industria, pues permiti que personas de cualquier condicin
pudieran manejar un ordenador con unos conocimientos mnimos de informtica.
Y si esto pareca la revolucin, no tuvimos que esperar mucho para que el 10 de
Abril de 1989, apareciera el Intel 80486 DX, de nuevo con tecnologa de 32 bits, y
como novedades principales la incorporacin del cach de primer nivel (L1), en el
propio chip, lo que aceleraba enormemente la transferencia de datos de este
cach al procesador, as como la aparicin de coprocesador matemtico tambin
integrado en el procesador, dejando por tanto de ser una opcin como lo era en

los anteriores 80386. Dos cambios que unidos al hecho de que por primera vez se
sobrepasaban el milln de transistores usando la tecnologa de una micra (aunque
en la versin de este procesador que iba a 50 MHz, se us ya la tecnologa de 0,8
micras), haca posible la aparicin de programas de calidad sorprendente, entre
los cuales destacaron los juegos.
Se haba pasado de unos ordenadores en los que prcticamente cualquier tarea
compleja requera del intrprete de comandos de MS-DOS, para poder se
realizada, a otros en los que mover el cursor y hacer clic en la opcin deseada
simplificaba en buena medida las tareas ms comunes. Por su parte, Intel, volvi a
realizar, por ltima vez hasta el momento, una versin de este procesador dos
aos despus. Se trataba del 80486 SX idntico a su hermano mayor, salvo que
no dispona del famoso coprocesador matemtico integrado, lo que supona una
reduccin del coste para aquellas personas que desearan introducirse en la
informtica sin necesidad de pagar una suma elevada.
LLEGA EL PENTIUM
Sin embargo, Intel no se qued contemplando la gran obra que haba creado, y
rpidamente anunci que en breve estara en la calle una nueva gama de
procesadores que multiplicara por cinco de forma general los rendimientos
medios de los 80486. Se trataba e los Pentium, conocidos por P5 en el mundillo
de la informtica, mientras se estaban desarrollando. Y de los que la prensa de
medio mundo auguraba un gran futuro, tal y como as ha sido. Estos
procesadores, pasaran a la historia por ser los primeros a los que Intel, no les
bautiz con un nmero, y s con una palabra. Esto era debido a que otras
compaas dedicadas a la produccin de procesadores, esaban utilizando los
mismos nombres puesto que no se poda registrar una cadena de ellos como
marca y por lo tanto eran de dominio pblico. De modo que Intel no le qued ms
remedio que ponerle una palabra a su familia de procesadores, que adems, con
el paso del tiempo se populariz en los EE.UU. de tal forma, que era identificada
con velocidad y potencia en numerosos cmics y programas de televisin. stos
procesadores que partan de una velocidad inicial de 60 MHz, han evolucionado
hacia lmites insospechados, algo que nadie haba sido capaz de augurar unos
aos antes.
Con una arquitectura real de 32 bits, se usaba de nuevo la tecnologa de 0.8
micras, con lo que se lograba realizar ms unidades en el menor espacio. Los
resultados no se hicieron esperar y las compaas empezaron aunque de forma
tmida a lanzar programas y juegos exclusivamente para el Pentium, hasta el
punto que en este momento quien no posea un procesador de este tipo, est
seriamente atrasado y no puede trabajar con garantas con los programas que
actualmente hay en el mercado. Algo que vino a demostrar la aparicin del
sistema operativo de Microsoft, Windows 95 que aunque funciona en equipos
dotados de un procesador 80486, lo hace sin sacar el mximo partido a sus
funciones. A su vez, la empresa AMD sac su clnico K5, haciendo la competencia
a Intel.

3.4. PENTIUM PRO Y PENTIUM II


La aparicin , el 27 de marzo de 1995, del procesador Pentium Pro, supuso para
los servidores de la red y las estaciones de trabajos un aire nuevo, tal y como
ocurriera con el Pentium en el mbito domstico. La potencia de este nuevo
procesador no tena comparacin hasta entonces , gracias a la arquitectura de 64
bits y el empleo de una tecnologa revolucionaria como es la de 0.32 micras, lo
que permita la inclusin de 5,500.000 transistores en su interior. El procesador
contaba con un segundo chip en el mismo encapsulado que se encargaba de
mejorar la velocidad de la memoria cach, lo que resultaba en un incremento del
rendimiento sustancioso.
Las frecuencias de reloj se mantenan como lmite por arriba de 200 MHz,
partiendo de un mnimo de 150 MHz. Un procesador que en principio no tiene
muchos visos de saltar al mercado domstico, puesto que los procesadores
Pentium MMX, parecen cubrir de momento todas las necesidades de este campo.
El Pentium II, es simplemente un nuevo ingenio que suma a las tecnologas del
Pentium Pro con el MMX. Como resultado, el Pentium II es el procesador ms
rpido de cuantos a comerciado Intel, hasta principios de 1999.
Aunque no podemos considerar la tecnologa MMX, como un procesador en si
mismo, sera injusto no hablar de ella en este trabajo ya que es uno de los
mayores pasos que dio Intel en la dcada pasada .
AMD no se qued atrs en su competencia con la compaa Intel, estrenando su
AMD K6
3.5 PENTIUM III
Este micro sera al Pentium II lo que el K6-2 era al K6; es decir, que su nica
diferencia de importancia radica en la incorporacin de unas nuevas instrucciones
que aumentan el rendimiento matemtico y multimedia... pero slo en aplicaciones
especficamente optimizadas para ello.
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). Pero
tal vez no sea suficiente para vencer al siguiente micro de esta lista
3.6 AMD Athlon (K7)
La gran apuesta de AMD: un micro con una arquitectura totalmente nueva, que le
permite ser el ms rpido en todo tipo de aplicaciones. 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 = ms rpida), instrucciones 3DNow!
para multimedia... y el mejor micro de todos los tiempos en clculos matemticos.
3.7 Pentium 4

La ltima apuesta de Intel, que representa 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
mejor 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 AMD Athlon; si el software est
especficamente preparado (optimizado) para las SSE2, el Pentium 4 puede ser
muy rpido, pero si no no, y el caso es que, por ahora, hay muy pocas
aplicaciones optimizadas.
3.8 AMD Duron
Un micro casi idntico al Athlon pero con menos memoria secundaria (64 KB),
aunque integrada (es decir, ms rpida, la cach va a la misma velocidad que el
micro).

Los microprocesadores 8086 y 8088


por Dario Alejandro Alpern
Historia del 8086/8088
En junio de 1978 Intel lanz al mercado el primer microprocesador de 16 bits: el
8086. En junio de 1979 apareci el 8088 (internamente igual que el 8086 pero con
bus de datos de 8 bits) y en 1980 los coprocesadores 8087 (matemtico) y 8089
(de entrada y salida). El primer fabricante que desarroll software y hardware para
estos chips fue la propia Intel. Reconociendo la necesidad de dar soporte a estos
circuitos integrados, la empresa invirti gran cantidad de dinero en un gran y
moderno edificio en Santa Clara, California, dedicado al diseo, fabricacin y
venta de sus sistemas de desarrollo que, como se explic anteriormente, son
computadoras autosuficientes con el hardware y software necesario para
desarrollar software de microprocesadores.
Los sistemas de desarrollo son factores clave para asegurar las ventas de una
empresa fabricantes de chips. La inmensa mayora de ventas son a otras
empresas, las cuales usan estos chips en aparatos electrnicos, diseados,

fabricados y comercializados por ellas mismas. A estas empresas se las llama


"fabricantes de equipo original", o en ingls, OEM (Original Equipment
Manufacturer). El disminuir el tiempo de desarrollo de hardware y software para
las OEM es esencial, ya que el mercado de estos productos es muy competitivo.
Necesitan soporte pues los meses que les puede llevar el desarrollo de las
herramientas apropiadas les puede significar prdidas por millones de dlares.
Adems quieren ser los primeros fabricantes en el mercado, con lo cual pueden
asegurarse las ventas en dos reas importantes: a corto plazo, ya que al principio
la demanda es mucho mayor que la oferta, y a largo plazo, ya que el primer
producto marca a menudo los estndares.
De esta manera la empresa Intel haba desarrollado una serie completa de
software que se ejecutaba en una microcomputadora basada en el 8085 llamada
"Intellec Microcomputer Development System". Los programas incluan
ensambladores cruzados (stos son programas que se ejecutan en un
microprocesador y generan cdigo de mquina que se ejecuta en otro),
compiladores de PL/M, Fortran y Pascal y varios programas de ayuda. Adems
haba un programa traductor llamado CON V86 que converta cdigo fuente
8080/8085 a cdigo fuente 8086/8088. Si se observan de cerca ambos conjuntos
de instrucciones, queda claro que la transformacin es sencilla si los registros se
traducen as: A -> AL, B -> CH, C -> CL, D -> DH, E -> DL, H -> BH y L -> BL.
Puede parecer complicado traducir LDAX B (por ejemplo) ya que el 8088 no puede
utilizar el registro CX para direccionamiento indirecto, sin embargo, se puede
hacer con la siguiente secuencia: MOV SI, CX; MOV AL, [SI]. Esto aprovecha el
hecho que no se utiliza el registro SI. Por supuesto el programa resultante es ms
largo (en cantidad de bytes) y a veces ms lento de correr que en su antecesor
8085. Este programa de conversin slo serva para no tener que volver a escribir
los programas en una primera etapa. Luego debera reescribirse el cdigo fuente
en assembler para poder obtener las ventajas de velocidad ofrecidas por el 8088.
Luego deba correr el programa en la iSBC 86/12 Single Board Computer basado
en el 8086. Debido al engorro que resultaba tener dos plaquetas diferentes, la
empresa Godbout Electronics (tambin de California) desarroll una placa donde
estaban el 8085 y el 8088, donde se utilizaba un ensamblador cruzado provisto
por la compaa Microsoft. Bajo control de software, podan conmutarse los
microprocesadores. El sistema operativo utilizado era el CP/M (de Digital
Research).
El desarrollo ms notable para la familia 8086/8088 fue la eleccin de la CPU 8088
por parte de IBM (International Business Machines) cuando en 1981 entr en el
campo de las computadoras personales. Esta computadora se desarroll bajo un
proyecto con el nombre "Acorn" (Proyecto "Bellota") pero se vendi bajo un
nombre menos imaginativo, pero ms correcto: "Computadora Personal IBM", con
un precio inicial entre 1260 dlares y 3830 dlares segn la configuracin (con
48KB de memoria RAM y una unidad de discos flexibles con capacidad de 160KB
costaba 2235 dlares). Esta computadora entr en competencia directa con las
ofrecidas por Apple (basado en el 6502) y por Radio Shack (basado en el Z-80).

Arquitectura de los procesadores 8088 y 8086:


El 8086 es un microprocesador de 16 bits, tanto en lo que se refiere a su
estructura como en sus conexiones externas, mientras que el 8088 es un
procesador de 8 bits que internamente es casi idntico al 8086. La nica diferencia
entre ambos es el tamao del bus de datos externo. Intel trata esta igualdad
interna y desigualdad externa dividiendo cada procesador 8086 y 8088 en dos
sub-procesadores. O sea, cada uno consta de una unidad de ejecucin (EU:
Execution Unit) y una unidad interfaz del bus (BIU: Bus Interface Unit). La unidad
de ejecucin es la encargada de realizar todas las operaciones mientras que la
unidad de interfaz del bus es la encargada de acceder a datos e instrucciones del
mundo exterior. Las unidades de ejecucin son idnticas en ambos
microprocesadores, pero las unidades de interfaz del bus son diferentes en varias
cuestiones, como se desprende del siguiente diagrama en bloques:

La ventaja de esta divisin fue el ahorro de esfuerzo necesario para producir el 8088. Slo
una mitad del 8086 (el BIU) tuvo que redisearse para producir el 8088.
La explicacin del diagrama en bloques es la siguiente:

Registros de uso general del 8086/8088:


Tienen 16 bits cada uno y son ocho:
1. AX = Registro acumulador, dividido en AH y AL (8 bits cada uno).
Usndolo se produce (en general) una instruccin que ocupa un byte
menos que si se utilizaran otros registros de uso general. Su parte ms
baja, AL, tambin tiene esta propiedad. El ltimo registro mencionado es el
equivalente al acumulador de los procesadores anteriores (8080 y 8085).
Adems hay instrucciones como DAA; DAS; AAA; AAS; AAM; AAD; LAHF;
SAHF; CBW; IN y OUT que trabajan con AX o con uno de sus dos bytes
(AH o AL). Tambin se utiliza este registro (junto con DX a veces) en
multiplicaciones y divisiones.
2. BX = Registro base, dividido en BH y BL.
Es el registro base de propsito similar (se usa para direccionamiento
indirecto) y es una versin ms potente del par de registros HL de los
procesadores anteriores.
3. CX = Registro contador, dividido en CH y CL.
Se utiliza como contador en bucles (instruccin LOOP), en operaciones con
cadenas (usando el prefijo REP) y en desplazamientos y rotaciones
(usando el registro CL en los dos ltimos casos).
4. DX = Registro de datos, dividido en DH y DL.
Se utiliza junto con el registro AX en multiplicaciones y divisiones, en la
instruccin CWD y en IN y OUT para direccionamiento indirecto de puertos
(el registro DX indica el nmero de puerto de entrada/salida).
5. SP = Puntero de pila (no se puede subdividir).
Aunque es un registro de uso general, debe utilizarse slo como puntero de
pila, la cual sirve para almacenar las direcciones de retorno de subrutinas y
los datos temporarios (mediante las instrucciones PUSH y POP). Al
introducir (push) un valor en la pila a este registro se le resta dos, mientras
que al extraer (pop) un valor de la pila este a registro se le suma dos.
6. BP = Puntero base (no se puede subdividir).
Generalmente se utiliza para realizar direccionamiento indirecto dentro de la
pila.
7. SI = Puntero ndice (no se puede subdividir).
Sirve como puntero fuente para las operaciones con cadenas. Tambin
sirve para realizar direccionamiento indirecto.
8. DI = Puntero destino (no se puede subdividir).
Sirve como puntero destino para las operaciones con cadenas. Tambin
sirve para realizar direccionamiento indirecto.
Cualquiera de estos registros puede utilizarse como fuente o destino en operaciones
aritmticas y lgicas, lo que no se puede hacer con ninguno de los seis registros que se
vern ms adelante.

Adems de lo anterior, cada registro tiene usos especiales:

Unidad aritmtica y lgica


Es la encargada de realizar las operaciones aritmticas (suma, suma con
"arrastre", resta, resta con "prstamo" y comparaciones) y lgicas (AND, OR, XOR
y TEST). Las operaciones pueden ser de 16 bits o de 8 bits.

Indicadores (flags)
Hay nueve indicadores de un bit en este registro de 16 bits. Los cuatro bits ms
significativos estn indefinidos, mientras que hay tres bits con valores
determinados: los bits 5 y 3 siempre valen cero y el bit 1 siempre vale uno (esto
tambin ocurra en los procesadores anteriores).
Registro de indicadores (16 bits)
Bit 15 14 13 12 11 10 9 8

5 4

3 2

1 0

Flag -- -- -- -- OF DF IF TF SF ZF 0 AF 0 PF 1 CF
CF (Carry Flag, bit 0): Si vale 1, indica que hubo "arrastre" (en caso de suma) hacia, o
"prstamo" (en caso de resta) desde el bit de orden ms significativo del resultado. Este
indicador es usado por instrucciones que suman o restan nmeros que ocupan varios bytes.
Las instrucciones de rotacin pueden aislar un bit de la memoria o de un registro
ponindolo en el CF.
PF (Parity Flag, bit 2): Si vale uno, el resultado tiene paridad par, es decir, un nmero par
de bits a 1. Este indicador se puede utilizar para detectar errores en transmisiones.
AF (Auxiliary carry Flag, bit 4): Si vale 1, indica que hubo "arrastre" o "prstamo" del
nibble (cuatro bits) menos significativo al nibble ms significativo. Este indicador se usa
con las instrucciones de ajuste decimal.
ZF (Zero Flag, bit 6): Si este indicador vale 1, el resultado de la operacin es cero.
SF (Sign Flag, bit 7): Refleja el bit ms significativo del resultado. Como los nmeros
negativos se representan en la notacin de complemento a dos, este bit representa el signo:
0 si es positivo, 1 si es negativo.
TF (Trap Flag, bit 8): Si vale 1, el procesador est en modo paso a paso. En este modo, la
CPU automticamente genera una interrupcin interna despus de cada instruccin,
permitiendo inspeccionar los resultados del programa a medida que se ejecuta instruccin
por instruccin.
IF (Interrupt Flag, bit 9): Si vale 1, la CPU reconoce pedidos de interrupcin externas
enmascarables (por el pin INTR). Si vale 0, no se reconocen tales interrupciones. Las
interrupciones no enmascarables y las internas siempre se reconocen independientemente
del valor de IF.

DF (Direction Flag, bit 10): Si vale 1, las instrucciones con cadenas sufrirn "autodecremento", esto es, se procesarn las cadenas desde las direcciones ms altas de memoria
hacia las ms bajas. Si vale 0, habr "auto-incremento", lo que quiere decir que las cadenas
se procesarn de "izquierda a derecha".
OF (Overflow flag, bit 11): Si vale 1, hubo un desborde en una operacin aritmtica con
signo, esto es, un dgito significativo se perdi debido a que tamao del resultado es mayor
que el tamao del destino.

Sistema de control de la unidad de ejecucin


Es el encargado de decodificar las instrucciones que le enva la cola y enviarle las
rdenes a la unidad aritmtica y lgica segn una tabla que tiene almacenada en
ROM llamada CROM (Control Read Only Memory).

Cola de instrucciones
Almacena las instrucciones para ser ejecutadas. La cola se carga cuando el bus
est desocupado, de esta manera se logra una mayor eficiencia del mismo. La
cola del 8086 tiene 6 bytes y se carga de a dos bytes por vez (debido al tamao
del bus de datos), mientras que el del 8088 tiene cuatro bytes. Esta estructura
tiene rendimiento ptimo cuando no se realizan saltos, ya que en este caso habra
que vaciar la cola (porque no se van a ejecutar las instrucciones que van despus
del salto) y volverla a cargar con instrucciones que se encuentran a partir de la
direccin a donde se salta. Debido a esto las instrucciones de salto son (despus
de multiplicaciones y divisiones) las ms lentas de este microprocesador.

Registros de la unidad de interfaz con el bus:


El programador puede acceder a cinco registros de 16 bits cada uno, siendo
cuatro de ellos registros de segmento y el restante el puntero de instruccin (IP).
Los registros de segmento se llaman:
CS: Registro de segmento de cdigo.
DS: Registro de segmento de datos.
ES: Registro de segmento extra.
SS: Registro de segmento de pila.
La utilizacin de estos registros se explica ms adelante, en la seccin que trata de
direccionamiento a memoria.

Lgica de control del bus:


El cometido de este bloque es poder unir los bloques anteriormente mencionados
con el mundo exterior, es decir, la memoria y los perifricos.
El 8088 tiene un bus de datos externo reducido de 8 bits. La razn para ello era prever la
continuidad entre el 8086 y los antiguos procesadores de 8 bits, como el 8080 y el 8085.
Teniendo el mismo tamao del bus (as como similares requerimientos de control y

tiempo), el 8088, que es internamente un procesador de 16 bits, puede reemplazar a los


microprocesadores ya nombrados en un sistema ya existente.
El 8088 tiene muchas seales en comn con el 8085, particularmente las asociadas con la
forma en que los datos y las direcciones estn multiplexadas, aunque el 8088 no produce
sus propias seales de reloj como lo hace el 8085 (necesita un chip de soporte llamado
8284, que es diferente del 8224 que necesitaba el microprocesador 8080). El 8088 y el 8085
siguen el mismo esquema de compartir los terminales correspondientes a los 8 bits ms
bajos del bus de direcciones con los 8 bits del bus de datos, de manera que se ahorran 8
terminales para otras funciones del microprocesador. El 8086 comparte los 16 bits del bus
de datos con los 16 ms bajos del bus de direcciones.
El 8085 y el 8088 pueden, de hecho, dirigir directamente los mismos chips controladores de
perifricos. Las investigaciones de hardware para sistemas basados en el 8080 o el 8085
son, en su mayora, aplicables al 8088.
En todo lo recin explicado se bas el xito del 8088.

Terminales (pinout) del 8088

Este microprocesador est encapsulado en el formato DIP (Dual Inline Package)


de 40 patas (veinte de cada lado). La distancia entre las patas es de 0,1 pulgadas
(2,54 milmetros), mientras que la distancia entre patas enfrentadas es de 0,6
pulgadas (15,32 milmetros).
Ntese en el grfico el semicrculo que identifica la posicin de la pata 1. Esto sirve para no
insertar el chip al revs en el circuito impreso.
El 8086/8088 puede conectarse al circuito de dos formas distintas: el modo mximo y el
modo mnimo. El modo queda determinado al poner un determinado terminal (llamado
MN/MX) a tierra o a la tensin de alimentacin. El 8086/8088 debe estar en modo mximo
si se desea trabajar en colaboracin con el Procesador de Datos Numrico 8087 y/o el
Procesador de Entrada/Salida 8089 (de aqu se desprende que en la IBM PC el 8088 est en
modo mximo). En este modo el 8086/8088 depende de otros chips adicionales como el
Controlador de Bus 8288 para generar el conjunto completo de seales del bus de control.

El modo mnimo permite al 8086/8088 trabajar de una forma ms autnoma (para circuitos
ms sencillos) en una manera casi idntica al microprocesador 8085.
Los 40 pines del 8088 en modo mnimo tienen las siguientes funciones:
1. GND (Masa)
2. A14 (Bus de direcciones)
3. A13 (Bus de direcciones)
4. A12 (Bus de direcciones)
5. A11 (Bus de direcciones)
6. A10 (Bus de direcciones)
7. A9 (Bus de direcciones)
8. A8 (Bus de direcciones)
9. AD7 (Bus de direcciones y datos)
10. AD6 (Bus de direcciones y datos)
11. AD5 (Bus de direcciones y datos)
12. AD4 (Bus de direcciones y datos)
13. AD3 (Bus de direcciones y datos)
14. AD2 (Bus de direcciones y datos)
15. AD1 (Bus de direcciones y datos)
16. AD0 (Bus de direcciones y datos)
17. NMI (Entrada de interrupcin no enmascarable)
18. INTR (Entrada de interrupcin enmascarable)
19. CLK (Entrada de reloj generada por el 8284)
20. GND (Masa)
21. RESET (Para inicializar el 8088)
22. READY (Para sincronizar perifricos y memorias lentas)
23. /TEST
24. /INTA (El 8088 indica que reconoci la interrupcin)
25. ALE (Cuando est uno indica que salen direcciones por AD, en caso
contrario, es el bus de datos)
26. /DEN (Data enable: cuando vale cero debe habilitar los transceptores 8286
y 8287 (se conecta al pin de "output enable"), esto sirve para que no se
mezclen los datos y las direcciones).
27. DT/R (Data transmit/receive: se conecta al pin de direccin de los chips
recin indicados).
28. IO/M (Si vale 1: operaciones con ports, si vale 0: operaciones con la
memoria)
29. /WR (Cuando vale cero hay una escritura)
30. HLDA (Hold Acknowledge: el 8088 reconoce el HOLD)
31. HOLD (Indica que otro integrado quiere aduearse del control de los buses,
generalmente se usa para DMA o acceso directo a memoria).
32. /RD (Cuando vale cero hay una lectura)
33. MN/MX (Cuando esta entrada est en estado alto, el 8088 est en modo
mnimo, en caso contrario est en modo mximo)
34. /SSO (Junto con IO/M y DT/R esta salida sirve para determinar estados del
8088)
35. A19/S6 (Bus de direcciones/bit de estado)

36. A18/S5 (Bus de direcciones/bit de estado)


37. A17/S4 (Bus de direcciones/bit de estado)
38. A16/S3 (Bus de direcciones/bit de estado)
39. A15 (Bus de direcciones)
40. Vcc (+5V)
En modo mximo (cuando se aplica +5V al pin 33) hay algunos pines que cambian de
significado:
24.- QS1: Estado de la cola de instrucciones (bit 1).
25.- QS0: Estado de la cola de instrucciones (bit 0).
26.- S0: Bit de estado 0.
27.- S1: Bit de estado 1.
28.- S2: Bit de estado 2.
29.- /LOCK: Cuando vale cero indica a otros controladores del bus (otros
microprocesadores o un dispositivo de DMA) que no deben ganar el control del bus. Se
activa ponindose a cero cuando una instruccin tiene el prefijo LOCK.
30.- RQ/GT1: Es bidireccional y tiene la misma funcin que HOLD/HLDA en modo
mnimo.
31.- RQ/GT0: Como RQ/GT1 pero tiene mayor prioridad.
34.- Esta salida siempre est a uno.
Por ser este microprocesador mucho ms complejo que el 8085, tiene ms bits de estado
que el recin mencionado. A ttulo informativo se detallan los bits de estado:
S2 IO/M

DT/R /SSO
S1

Significado

S0

Acceso a cdigo (instrucciones)

Lectura de memoria

Escritura a memoria

Bus pasivo (no hace nada)

Reconocimiento de interrupcin

Lectura de puerto de entrada/salida

Escritura a puerto de E/S

Estado de parada (Halt)

QS1 QS0

Significado

No hay operacin

Primer byte del cdigo de operacin

Se vaca la cola de instrucciones

Siguiente byte de la instruccin

Modos de direccionamiento del 8086/8088:


Estos procesadores tienen 27 modos de direccionamiento (una cantidad bastante
ms grande que los microprocesadores anteriores) o reglas para localizar un
operando de una instruccin. Tres de ellos son comunes a microprocesadores
anteriores: direccionamiento inmediato (el operando es un nmero que se
encuentra en la misma instruccin), direccionamiento a registro (el operando es
un registro del microprocesador) y direccionamiento inherente (el operando est
implcito en la instruccin, por ejemplo, en la multiplicacin uno de los operandos
siempre es el acumulador). El resto de los modos sirve para localizar un operando
en memoria. Para facilitar la explicacin de estos modos, se pueden resumir de la
siguiente manera:
Deben sumarse cuatro cantidades: 1) direccin de segmento, 2) direccin base, 3) una
cantidad ndice y 4) un desplazamiento.
La direccin de segmento se almacena en el registro de segmento (DS, ES, SS o CS). En la
prxima seccin se indica la forma en que se hace esto. Por ahora basta con saber que el
contenido del registro de segmento se multiplica por 16 antes de utilizarse para obtener la
direccin real. El registro de segmentacin siempre se usa para referenciar a memoria.
La base se almacena en el registro base (BX o BP). El ndice se almacena en el registro
ndice (SI o DI). Cualquiera de estas dos cantidades, la suma de las dos o ninguna, pueden
utilizarse para calcular la direccin real, pero no pueden sumarse dos bases o dos ndices.
Los registros restantes (AX, CX, DX y SP) no pueden utilizarse para direccionamiento
indirecto. El programador puede utilizar tanto la base como el ndice para gestionar ciertas
cosas, tales como matrices de dos dimensiones, o estructuras internas a otras estructuras,
esquemas que se utilizan en las prcticas comunes de programacin. La base y el ndice son
variables o dinmicas, ya que estn almacenadas en registros de la CPU. Es decir, pueden
modificarse fcilmente mientras se ejecuta un programa.
Adems del segmento, base e ndice, se usa un desplazamiento de 16 bits, 8 bits o 0 bits
(sin desplazamiento). sta es una cantidad esttica que se fija al tiempo de ensamblado
(paso de cdigo fuente a cdigo de mquina) y no puede cambiarse durante la ejecucin del
programa (a menos que el programa se escriba sobre s mismo, lo que constituye una
prctica no aconsejada).
Todo esto genera los 24 modos de direccionamiento a memoria que se ven a continuacin:
- Registro indirecto: 1) [BX], 2) [DI]. 3) [SI].
- Basado: 4) desp8[BX], 5) desp8[BP], 6) desp16[BX], 7) desp16[BP].
- Indexado: 8) desp8[SI], 9) desp8[DI], 10) desp16[SI], 11) desp16[DI].
- Basado-indexado: 12) [BX+SI], 13) [BX+DI], 14) [BP+SI], 15) [BX+DI].
- Basado-indexado con desplazamiento: 16) desp8[BX+SI], 17) desp8[BX+DI], 18)
desp8[BP+SI], 19) desp8[BX+DI], 20) desp16[BX+SI], 21) desp16[BX+DI], 22)
desp16[BP+SI], 23) desp16[BX+DI].
- Directo: 24) [desp16].

Aqu desp8 indica desplazamiento de 8 bits y desp16 indica desplazamiento de 16 bits.


Otras combinaciones no estn implementadas en la CPU y generarn error al querer
ensamblar, por ejemplo, ADD CL,[DX+SI].
El ensamblador genera el tipo de desplazamiento ms apropiado (0, 8 16 bits)
dependiendo del valor que tenga la constante: si vale cero se utiliza el primer caso, si vale
entre -128 y 127 se utiliza el segundo, y en otro caso se utiliza el tercero. Ntese que [BP]
sin desplazamiento no existe. Al ensamblar una instruccin como, por ejemplo, MOV AL,
[BP], se generar un desplazamiento de 8 bits con valor cero. Esta instruccin ocupa tres
bytes, mientras que MOV AL,[SI] ocupa dos, porque no necesita el desplazamiento.
Estos modos de direccionamiento producen algunos inconvenientes en el 8086/8088. La
CPU gasta tiempo calculando una direccin compuesta de varias cantidades.
Principalmente esto se debe al hecho de que el clculo de direcciones est programado en
microcdigo (dentro de la CROM del sistema de control de la unidad de ejecucin). En las
siguientes versiones (a partir del 80186/80188) estos clculos estn cableados en la
mquina y, por lo tanto, cuesta mucho menos tiempo el realizarlos.
Veamos un ejemplo: MOV AL, ES:[BX+SI+6]. En este caso el operando de la izquierda
tiene direccionamiento a registro mientras que el de la derecha indica una posicin de
memoria. Poniendo valores numricos, supongamos que los valores actuales de los
registros sean: ES = 3200h, BX = 200h, SI = 38h. Como se apunt ms arriba la direccin
real de memoria ser:
ES * 10h + BX + SI + 6 = 3200h * 10h + 200h + 38h + 6 = 3223Eh
Estructura de memoria de segmentacin: Como se ha mencionado anteriormente, el
8086/8088 usa un esquema ingenioso llamado segmentacin, para acceder correctamente a
un megabyte completo de memoria, con referencias de direcciones de slo 16 bits.
Veamos cmo funciona. Cualquier direccin tiene dos partes, cada una de las cuales es una
cantidad de 16 bits. Una parte es la direccin de segmento y la otra es el offset. A su vez el
offset se compone de varias partes: un desplazamiento (un nmero fijo), una base
(almacenada en el registro base) y un ndice (almacenado en el registro ndice). La
direccin de segmento se almacena en uno de los cuatro registros de segmento (CS, DS,
ES, SS). El procesador usa estas dos cantidades de 16 bits para calcular la direccin real de
20 bits, segn la siguiente frmula:
Direccin real = 16 * (direccin del segmento) + offset
Tal como veamos antes, dado que 16 en decimal es 10 en hexadecimal, multiplicar por ese
valor es lo mismo que correr el nmero hexadecimal a la izquierda una posicin.
Hay dos registros de segmento que tienen usos especiales: el microprocesador utiliza el
registro CS (con el offset almacenado en el puntero de instruccin IP) cada vez que se debe
acceder a un byte de instruccin de programa, mientras que las instrucciones que utilizan la
pila (llamados a procedimientos, retornos, interrupciones y las instrucciones PUSH y POP)
siempre utilizan el registro de segmento SS (con el offset almacenado en el registro puntero

de pila SP). De ah los nombres que toman: CS es el segmento de cdigo mientras que SS
es el registro segmento de pila.
Para acceder a datos en la memoria se puede utilizar cualquiera de los cuatro registros de
segmento, pero uno de ellos provoca que la instruccin ocupe un byte menos de memoria:
es el llamado segmento por defecto, por lo que en lo posible hay que tratar de usar dicho
segmento para direccionar datos. Este segmento es el DS (registro de segmento de datos)
para todos los casos excepto cuando se utiliza el registro base BP. En este caso el segmento
por defecto es SS.
Si se utiliza otro registro, el ensamblador genera un byte de prefijo correspondiente al
segmento antes de la instruccin: CS -> 2Eh, DS -> 3Eh, ES -> 26h y SS -> 36h. El uso de
estos diferentes segmentos significa que hay reas de trabajo separadas para el programa,
pila y los datos. Cada rea tiene un tamao mximo de 64 KBytes. Dado que hay cuatro
registros de segmento, uno de programa (CS), uno de pila (SS) y dos de datos (segmento de
datos DS y segmento extra ES) el rea de trabajo puede llegar a 4 * 64 KB = 256 KB en un
momento dado suponiendo que las reas no se superponen.
Si el programa y los datos ocupan menos de 64 KB, lo que se hace es fijar los registros de
segmento al principio del programa y luego se utilizan diferentes offsets para acceder a
distintas posiciones de memoria. En caso contrario necesariamente debern cambiarse los
registros de segmento en la parte del programa que lo requiera. Los registros de segmento
DS, ES y SS se cargan mediante las instrucciones MOV y POP, mientras que CS se carga
mediante transferencias de control (saltos, llamadas, retornos, interrupciones)
intersegmento.

Estructura de interrupciones del 8086/8088


Hay tres clases de interrupcin: por hardware, por software e internas (a las dos
ltimas tambin se las llama "excepciones").
Veremos primeramente el caso de interrupciones por hardware: Como se mencion
anteriormente, el 8086/8088 tiene dos entradas de peticin de interrupcin: NMI e INTR y
una de reconocimiento (INTA). La gran mayora de las fuentes de interrupcin se conectan
al pin INTR, ya que esto permite enmascarar las interrupciones (el NMI no). Para facilitar
esta conexin, se utiliza el circuito integrado controlador de interrupciones, que tiene el
cdigo 8259A. Este chip tiene, entre otras cosas, ocho patas para sendas fuentes de
interrupcin (IRQ0 - IRQ7), ocho para el bus de datos (D0 - D7), una salida de INTR y una
entrada de INTA. Esto permite una conexin directa con el 8088/8086. Al ocurrir una
peticin de alguna de las ocho fuentes, el 8259A activa la pata INTR. Al terminar de
ejecutar la instruccin en curso, el microprocesador activa la pata INTA, lo que provoca
que el 8259A enve por el bus de datos un nmero de ocho bits (de 0 a 255) llamado tipo de
interrupcin (programable por el usuario durante la inicializacin del 8259A), que el
8086/8088 utiliza para saber cul es la fuente de interrupcin. A continuacin busca en la
tabla de vectores de interrupcin la direccin del manejador de interrupcin (interrupt
handler). Esto se hace de la siguiente manera. Se multiplica el tipo de interrupcin por
cuatro, y se toman los cuatro bytes que se encuentran a partir de esa direccin. Los dos
primeros indican el offset y los dos ltimos el segmento del manejador, como se muestra a
continuacin.

Posicin memoria
Tipo de interrupcin

00 02 04 06 08 0A 0C 0E 10 12

3FC 3FE

IP CS IP CS IP CS IP CS IP CS .... IP
00

01

02

03

04

CS
FF

Como se puede observar, la tabla ocupa el primer kilobyte de memoria (256 tipos * 4
bytes/tipo = 1024 bytes).
Una vez que se pusieron en la pila los flags, CS e IP (en ese orden), la CPU hace IF <- 0
(deshabilita interrupciones) y TF <- 0 (deshabilita la ejecucin de instrucciones paso a
paso) para que el manejador de interrupcin no sea interrumpido, y carga IP y CS con los
valores hallados en la tabla, con lo que se transfiere el control al manejador de interrupcin,
que es el procedimiento encargado de atender la fuente de interrupcin. Luego de haber
hecho su trabajo, el manejador debe terminar indicndole al controlador de interrupciones
que ya fue atendido el pedido y finalmente deber estar la instruccin IRET, que restaura
los valores de los registros IP, CS y el registro de indicadores. El manejador debe poner en
la pila todos los registros que use y restaurar sus valores antes de salir (en orden inverso al
de su introduccin en la pila), en caso contrario el sistema corre peligro de "colgarse", ya
que, al ocurrir la interrupcin en cualquier momento de la ejecucin del programa, se
cambiaran los valores de los registros en el momento menos esperado, con consecuencias
imprevisibles.
Las interrupciones por software ocurren cuando se ejecuta la instruccin INT tipo. De esta
manera se pueden simular interrupciones durante la depuracin de un programa. El tipo de
interrupcin (para poder buscar el vector en la tabla) aparece en la misma instruccin como
una constante de 8 bits. Muchos sistemas operativos (programas que actan a modo de
interfaz entre los programas de los usuarios (llamados tambin "aplicaciones") y el
hardware del sistema) utilizan esta instruccin para llamadas a servicios, lo que permite no
tener que conocer la direccin absoluta del servicio, permitiendo cambios en el sistema
operativo sin tener que cambiar los programas que lo ejecutan. De esta manera, una de las
primeras operaciones que debe realizar dicho sistema operativo es inicializar la tabla de
vectores de interrupcin con los valores apropiados.
Existen algunas interrupciones predefinidas, de uso exclusivo del microprocesador, por lo
que no es recomendable utilizar estos tipos de interrupcin para interrupciones por
hardware o software.
- Tipo 0: Ocurre cuando se divide por cero o el cociente es mayor que el valor mximo que
permite el destino.
- Tipo 1: Ocurre despus de ejecutar una instruccin si TF (Trap Flag) vale 1. Esto permite
la ejecucin de un programa paso a paso, lo que es muy til para la depuracin de
programas.
- Tipo 2: Ocurre cuando se activa la pata NMI (interrupcin no enmascarable).
- Tipo 3: Existe una instruccin INT que ocupa un slo byte, que es la correspondiente a
este tipo. En los programas depuradores (debuggers) (tales como Debug, CodeView, Turbo

Debugger, etc.), se utiliza esta instruccin como punto de parada (para ejecutar un
programa hasta una determinada direccin, fijada por el usuario del depurador, se inserta
esta instruccin en la direccin correspondiente a la parada y se lanza la ejecucin. Cuando
el CS:IP apunte a esta direccin se ejecutar la INT 3, lo que devolver el control del
procesador al depurador). Debido a esto, si se le ordena al depurador que ejecute el
programa hasta una determinada direccin en ROM (memoria de slo lectura) (por
ejemplo, para ver cmo funciona una subrutina almacenada en dicha memoria), la
ejecucin seguir sin parar all (ya que la instruccin INT 3 no se pudo escribir sobre el
programa). En el 80386, con su elaborado hardware de ayuda para la depuracin, se puede
poner un punto de parada en ROM.
- Tipo 4: Ocurre cuando se ejecuta la instruccin de interrupcin condicional INTO y el
flag OF (Overflow Flag) vale 1.
Los tipos 5 a 31 (1F en hexadecimal) estn reservados para interrupciones internas
(tambin llamados "excepciones") de futuros microprocesadores.
Prioridad entre diferentes fuentes de interrupcin:
1) Error de divisin, INT n (no enmascarable), INTO.
2) NMI (no enmascarable).
3) INTR (enmascarable mediante IF).
4) Ejecucin paso a paso (enmascarable mediante TF).
Bukowski esos procesadores Intel Quad Core Q6600 a 2.4 Ghz funcionan en
sistemas de 32 y 64 bits ??? :?
Por supuesto, ten en cuenta que aunque sean 4 "procesadores" tu luego le
puedes poner el sistema operativo que quieras. Siempre ser recomendable al
menos el de 64 bits, pero an con el de 32 bits la velocidad de procesos es
bestial. Ya sabes que a eso siempre le tenemos que acompaar con la memoria
ram adecuada, un disco duro al menos SATA o SATA2, una buena grfica y
todo ello enchufado a una placa base que sea de calidad.
Para luckyd. La verdad es que igual que lo he buscado yo lo podias haber
buscado t. Todo est sacado de distintos sitios de Internet, menos la ltima
que la tenias aqu en Vagos:
Frecuencia de Reloj:
La frecuencia de reloj es la velocidad en ciclos por segundo (medidas en
hercios) con que una computadora realiza las operaciones ms bsicas.
Diferentes chips en la placa madre pueden tener diferentes frecuencias de
reloj. En general, en computacin, cuando se habla de "la frecuencia de reloj",
se est haciendo referencia a la velocidad del CPU (el microprocesador).
La velocidad de reloj slo es til para comparar entre microprocesadores de
una misma familia de un mismo fabricante. Es decir que un determinado
procesador de una determinada familia no puede ser comparado con otro

procesador de otra familia, incluso aunque sean de un mismo fabricante. Por


ejemplo, puede ser que un procesador de 50 MHz emplee ms eficientemente
los ciclos por segundo que otro procesador con la misma frecuencia de reloj,
esto hara que ciertas tareas en el primer procesador se ejecuten ms
rpidamente que en el segundo procesador. De todas maneras, existen otros
mltiples factores que determinan la velocidad final de la computadora.
Para comparar distintos procesadores de distintas familias suelen usarse
programas benchmarks.
Hace unos aos, los fabricantes ms importantes de microprocesadores (AMD
e Intel) promocionaban la frecuencia de reloj para mostrar cul era el
procesador ms rpido del mercado. Por supuesto que era slo una campaa
de marketing pues, como se dijo anteriormente, no es posible comparar dos
microprocesadores de distintas familias y menos an de distintos fabricantes.
Por esta razn, desde el ao 2000, AMD decidi dejar de lado la frecuencia de
reloj y promocionar sus microprocesadores empleando el nmero de modelo.
Se justificaron en que la frecuencia de reloj de los procesadores AMD eran
menores a los de Intel, pero no necesariamente significaba que su velocidad
sea inferior. A partir del ao 2004, Intel decidi hacer lo mismo.
Memoria Cache:
la palabra cache utilizada en informtica significa memoria temporal;
generalmente de existencia oculta y automtica para el usuario, que
proporciona acceso rpido a los datos de uso ms frecuente o previsible. Por
ejemplo, el "Cach" de disco es un rea de memoria donde el Sistema
transfiere los datos que supuestamente sern accedidos de inmediato. Si
leemos un "cluster" el sistema puede disponer en esta memoria "cache" los
clusters que siguen en la estructura lgica, de forma que, si seguimos
efectuando lecturas, lo ms probable es que los prximos datos estn ya en
memoria y puedan ser accedidos de forma inmediata.
- Tipos de cache
Desde el punto de vista del hardware, existen dos tipos de memoria cache;
interna y externa. La primera, denominada tambin cache primaria, cach de
nivel 1 o simplemente cach L1 (Level one). La segunda se conoce tambin
como cache secundaria, cache de nivel 2 o cache L2.
- Cach interna
Es una innovacin relativamente reciente; en realidad son dos, cada una con
una misin especfica: Una para datos y otra para instrucciones. Estn
incluidas en el procesador junto con su circuitera de control, lo que significa
tres cosas: comparativamente es muy cara; extremadamente rpida, y
limitada en tamao (en cada una de las cachs internas, los 386 tenan 8 KB;
el 486 DX4 16 KB, y los primeros Pentium 8 KB). Como puede suponerse, su
velocidad de acceso es comparable a la de los registros, es decir, centenares de
veces ms rpida que la RAM.

- Cach externa
Es ms antigua que la interna, dado que hasta fecha "relativamente" reciente
estas ltimas eran impracticables. Es una memoria de acceso rpido incluida
en la placa base, que dispone de su propio bus y controlador independiente
que intercepta las llamadas a memoria antes que sean enviadas a la RAM.
La cach externa tpica es un banco SRAM ("Static Random Access Memory")
de entre 128 y 256 KB. Esta memoria es considerablemente ms rpida que la
DRAM ("Dynamic Random Access Memory") convencional, aunque tambin
mucho ms cara (tenga en cuenta que un aumento de tamao sobre los
valores anteriores no incrementa proporcionalmente la eficacia de la memoria
cach). Actualmente (2004) la tendencia es incluir esta cach en el procesador.
Los tamaos tpicos oscilan entre 256 KB y 1 MB.
Frecuencia del BUS:
EL FSB (Front Side Bus)es el bus por el que se comunica la CPU y/o la
memoria RAM con la placa base.
La velocidad final de un procesador se calcula multiplicando su velocidad de
reloj por su FSB.
Por ejemplo procesador que va a 1500 Mhz, sus valores podrin ser 15 de reloj
y 100 Mhz de FSB --> 15x100 = 1500
Una de las tcnicas del overcolking es precisamente variar su FSB.
Si ese mismo procesador lo forzamos a funcionar con un FSB de 133 Mhz,
tendremos una velocidad final de casi 2000 Mhz. Claro que para ese
rendimiento tan extremo necesita ms voltaje, genera ms temperatura y es
probable que se muestre inestable.
La placa base no tiene un FSB concreto, simplemente admite hasta cierta
velocidad.
Si conectas una CPU con el FSB a 166 pero la placa no admite ms de 133
puede ocurrir dos cosas:
A) El equipo no enciende.
B) El equipo enciende pero el procesador funciona por debajo de sus
capacidades, tenemos el efecto contrario al que explicaba del overclocking
Ocurre exactamente igual con la memorias RAM.
Hoy en da, la velocidad de FSB de CPU y RAM suelen ser autodetectadas por la
placa base y no hay que configurar nada. Pero desde BIOS o mediante jumpers
podemos configurarlo a nuestro gusto y necesidades.
Nucleo del Procesador:

http://vagos.es/showthread.php?t=220170