SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Downloaden Sie, um offline zu lesen
1




Los microprocesadores de INTEL
Barry B. BREY
Prentice Hall

Designing Embedded Systems with
PIC Microcontrollers , Principles and applications
Tim Wilmshurst
ELSEVIER

Microcontrolador PIC16F84, Desarrollo de Proyectos.
Enrique Palacios
Alfaomega RA-MA




                                                          1
2


                       CAPÍTULO 1
            Introducción al microprocesador
                   Y a la computadora
OBJETIVOS DEL CAPÍTULO

  1. Comunicarse adecuadamente usando términos de cómputo como bit,
     byte, datos, sistema de memoria real, EMS (Sistema de Memoria
     Expandida), XMS (Sistema de Memoria Extendida), DOS, BIOS, E/S y
     otros.
  2. Explicar brevemente la historia de la computadora y enumerar algunas
     aplicaciones de los sistemas de cómputo.
  3. Ofrecer un panorama general de los diferentes miembros de las familias
     80X86, Pentium y Pentium II.
  4. Dibujar el diagrama de bloques de una computadora y explicar la
     función de cada bloque.
  5. Describir la función del microprocesador y detallar su funcionamiento
     básico.
  6. Definir el contenido del sistema de memoria de la computadora personal


1.1 UNA SEMBLANZA HISTÓRICA

LA ERA MECÁNICA
La idea de hacer cálculos usando una máquina se remonta al año 500 a.C.
cuando los babilonios inventaron el ábaco, la primera calculadora mecánica.

El ábaco, usado ampliamente aún en la actualidad, no fue superado sino hasta
1642, cuando el matemático Blaise Pascal inventó una calculadora construida
con engranes y ruedas. Cada engrane tenía diez dientes que, cuando daba una
vuelta completa, hacía avanzar un segundo engrane una posición.
Éste es el mismo principio usado en el mecanismo del Tacómetro (odómetro)
del automóvil y es la base de todas las calculadoras mecánicas.


                                                                           2
3
A propósito, el lenguaje de programación PASCAL se llama así en honor a
Blaise Pascal, por su trabajo como pionero en matemáticas y con la
calculadora mecánica.

     La aparición de las primeras máquinas mecánicas prácticas basadas en
engranes, usadas para el cómputo de información, data del siglo xix, antes de
que el hombre inventara la bombilla eléctrica.
El hombre soñaba con máquinas que pudieran efectuar cómputos numéricos
con base en un programa y no simplemente obtener resultados numéricos,
como con una calculadora.

      En 1937 se descubrió, a través de planos y revistas, que Charles
Babbage fue uno de los pioneros de las máquinas mecánicas de cómputo,
ayudado por Augusta Ada Byron, la Condesa de Lovelace.
Babbage fue comisionado por la Real Sociedad Astronómica de Gran Bretaña
en 1823 para elaborar una máquina calculadora programable. Esta máquina
tendría que generar tablas de navegación para la Marina Real.
Babbage aceptó el reto y comenzó a crear lo que llamó su Máquina analítica.
Esta máquina era una computadora mecánica que almacenaba 1000 números
decimales de 20 dígitos y un programa variable que podía modificar la
función de la máquina para realizar diferentes tareas de cálculo.
La alimentación de información se hacía a través de tarjetas perforadas. Se
supone que Babbage obtuvo esta idea de Joseph Jacquard, un francés que
usaba tarjetas perforadas para alimentar información a una máquina tejedora
(es decir, la programaban) inventada por él en 1801.
El telar de Jacquard utilizaba tarjetas perforadas para producir complicados
patrones de tejido en la tela elaborada.

     Después de muchos años de trabajo, el sueño de Babbage empezó a
desvanecerse cuando se dio cuenta de que los mecánicos de su época eran
incapaces de crear las piezas requeridas para completar su creación. La
máquina analítica requería de más de 50,000 partes mecánicas, que no podían
ser elaboradas con la precisión suficiente como para permitir un
funcionamiento confiable.




                                                                            3
4
LA ERA ELÉCTRICA
El siglo XIX vio el surgimiento del motor eléctrico (concebido por Michael
Faraday); con él llegó una multitud de máquinas sumadoras movidas por
motor, todas basadas en la calculadora mecánica desarrollada por Blaise
Pascal.
Estas calculadoras mecánicas impulsadas eléctricamente fueron equipos de
oficina comunes hasta el inicio de los años setenta del siglo XX, cuando
apareció la calculadora electrónica de mano, introducida primero por Bomar.
Monroe fue también un pionero de las calculadoras electrónicas, pero sus
máquinas eran modelos de escritorio, de cuatro funciones, y tenían el tamaño
de las cajas registradoras actuales.

      En 1889, Herman Hollerith desarrolló la tarjeta perforada para el
almacenamiento de datos. Aparentemente, al igual que Babbage, tomó
prestada la idea de Jacquard, pues creó una máquina mecánica (movida por un
motor eléctrico) que contaba, ordenaba y cotejaba información almacenada en
tarjetas perforadas.
Hollerith fue comisionado por el gobierno de Estados Unidos para utilizar su
sistema de tarjetas perforadas para almacenar y tabular la información del
censo de 1890.

      En 1896, Hollerith creó la Tabulating Machine Company, la cual
desarrolló una línea de máquinas que funcionaban bajo el mismo principio.
Después de algunas fusiones, la Tabulating Machine Company e convirtió en
la International Bussines Machines Corporation, ahora más conocida como
IBM, Inc. (Las tarjetas perforadas utilizadas en computadoras son
frecuentemente llamadas tarjetas Hollerith; el código
de 12 bits usado en una tarjeta perforada se llama código Hollerith.)

     Las máquinas mecánicas movidas por motor eléctrico dominaron el
mundo del procesamiento de información hasta la construcción de la primera
calculadora electrónica en 1941 por un inventor alemán llamado Konrad Zuse.
Su computadora de cálculo, la Z3, se utilizó en el diseño de aeronaves y
misiles para el ejército alemán durante la Segunda Guerra Mundial. Si Zuse
hubiera recibido el apoyo financiero adecuado por parte del gobierno alemán,
muy probablemente habría desarrollado un sistema de cómputo mucho más
poderoso.
                                                                           4
5
Hoy Zuse finalmente recibe el reconocimiento por su trabajo en el área de la
electrónica digital, que comenzó en los años treinta, y por su sistema de
cómputo Z3.

      Se ha descubierto recientemente (gracias a la publicación de documentos
militares británicos, antes secretos) que la primera computadora electrónica
fue puesta en funcionamiento en 1943 para descifrar códigos militares
alemanes.

El primer sistema de cómputo electrónico, el cual usaba tubos al vacío
(bulbos), fue inventado por Alan Turing. Turing llamó a su máquina
Colossus, probablemente a causa de su tamaño. Un problema de la Colossus
consistía en que, a pesar de que su diseño permitía descifrar códigos militares
alemanes generados por la máquina Enigma, no podía resolver otros
problemas. Colossus no era programable, sino que era un sistema de cómputo
con un programa fijo, lo cual en la actualidad se llama una computadora de
propósito específico.


     La primera computadora electrónica programable de propósito general
fue desarrollada en 1946 en la Universidad de Pennsylvania. Esta primera
computadora moderna se llamaba ENIAC (Electronics Numerical Integrator
and Calculator).
La ENIAC era una máquina enorme que contenía más de 17,000 bulbos y más
de 800 kilómetros de cables; pesaba más de 30 toneladas y aun así realizaba
solamente unas 100,000 operaciones por segundo.

De todos modos, la ENIAC lanzó al mundo hacia la era de las computadoras
electrónicas. La ENIAC se programaba recableando sus circuitos; un proceso
que tomaba varios días a muchos trabajadores. Los trabajadores cambiaban
las conexiones eléctricas sobre tableros de conexiones semejantes a los de los
primeros teléfonos.

Otro problema de la ENIAC era la vida útil de los bulbos, los cuales requerían
de mantenimiento constante.



                                                                              5
6
Los hechos posteriores más relevantes fueron los correspondientes al
desarrollo del transistor en 1948 por los laboratorios Bell, seguido por la
invención del circuito integrado en 1958 por Jack Kilby de Texas Instruments.
El circuito integrado condujo al desarrollo de circuitos digitales integrados
ETL (lógica resistencia-transistor) en los años sesenta y del primer
microprocesador de Intel Corporation en 1971.


En aquel entonces, Intel y uno de sus ingenieros, Marcian E. Hoff,
desarrollaron el microprocesador 4004, el dispositivo que inició la
revolución del microprocesador que continúa hoy en día a un ritmo cada vez
más acelerado.


AVANCES EN PROGRAMACIÓN

Una vez desarrolladas las máquinas programables, empezaron a aparecer los
programas y lenguajes de programación. Como ya se mencionó, la primera
computadora electrónica programable se programaba volviendo a cablear sus
circuitos.

Puesto que este método resultó ser demasiado fastidioso para aplicaciones
prácticas, en el inicio de la evolución de los sistemas de cómputo comenzaron
a aparecer lenguajes de programación para poder controlarlos.

El primero de estos lenguajes, lenguaje de máquina, se formó con ceros y
unos utilizando claves binarias almacenadas en la memoria de la computadora
como grupos de instrucciones llamados programas.

Este método resultó ser más eficiente que volver a cablear la máquina, pero
aun así era extremadamente tardado desarrollar un programa debido al gran
número de claves necesarias.


La primera persona en desarrollar un sistema que aceptaba instrucciones y las
almacenaba en memoria, fue el matemático John von Neumann.

                                                                            6
7
A menudo las computadoras son llamadas máquinas de von Neumann en su
honor (sin embargo, recuerde que Babbage ya había desarrollado el concepto
mucho antes).


A principios de los años cincuenta, una vez que las computadoras como la
UNIVAC estaban disponibles, se utilizó el lenguaje ensamblador para
simplificar la tarea de introducir en la computadora el código binario
correspondiente a las instrucciones. El ensamblador permitió al programador
el uso de códigos nemónicos (como ADD para la suma) en lugar de números
binarios como 01000111.

Aunque el lenguaje ensamblador es una ayuda para la programación, no fue
sino hasta 1957 (cuando Grace Hopper desarrolló el primer lenguaje de
programación de alto nivel llamado FLOW-MATIC) que las computadoras
fueron más fáciles de programar.

En el mismo año, IBM desarrolló el lenguaje FORTRAN (FORmula
TRANslator) para sus sistemas de cómputo. FORTRAN permitió a los
programadores desarrollar programas que usaban fórmulas para resolver
problemas matemáticos (note que FORTRAN todavía lo utilizan algunos
científicos para programar computadoras).
Otro lenguaje similar presentado aproximadamente un año después que el
FORTRAN, fue el ALGOL (ALGOrithmic Language).

El primer lenguaje realmente exitoso y distribuido para aplicaciones de
negocios fue el COBOL (Computer Business Oriented Language). Aunque el
uso de COBOL ha disminuido en los últimos años, todavía es muy utilizado
en muchos sistemas empresariales grandes.
Otro lenguaje de negocios muy popular en el pasado es RPG (Report Program
Generator), el cual permite programar especificando la forma de entrada,
salida y los cálculos.


Desde esos primeros días de la programación, han aparecido más lenguajes.
Algunos de los más comunes son el BASIC, C/C++, PASCAL y ADA.
BASIC y PASCAL fueron diseñados para la enseñanza de programación, pero
                                                                          7
8
han salido del salón de clases y son utilizados en muchos sistemas de
cómputo;

BASIC es probablemente el más sencillo de aprender. Algunas estimaciones
indican que el lenguaje BASIC se utiliza en el 80% de los programas para
computadora personal escritos por usuarios.

Recientemente, una nueva versión de BASIC, VISUAL BASIC, ha hecho más
fácil la programación en el ambiente Windows.

El lenguaje VISUAL BASIC podría tarde o temprano sustituir a C/C++ y a
PASCAL.

En la comunidad científica, C/C++ y (en algunas ocasiones) PASCAL
aparecen como programas de control. Ambos lenguajes, especialmente
C/C++, permiten al programador casi un completo control sobre el ambiente
de programación y el sistema de cómputo.

En muchos casos, C/C++ está reemplazando a algunos de los programas
de bajo nivel para control de la máquina, normalmente reservados para
el lenguaje ensamblador.

Aun así, el lenguaje ensamblador sigue desempeñando un papel importante en
la programación. La mayoría de los programas de videojuego escritos para
máquinas personales están escritos casi exclusivamente en lenguaje
ensamblador. El lenguaje de máquina también es distribuido junto con C/C++
y PASCAL para realizar funciones de control de la máquina de manera
eficiente.

El lenguaje ADA, muy usado por el Departamento de Defensa de Estados
Unidos, es llamado así en honor de Augusta Ada Byron, Condesa de
Lovelace.

La Condesa trabajó con Charles Babbage al principio del siglo XIX en el
desarrollo de su Máquina analítica.



                                                                         8
9
LA ERA DEL MICROPROCESADOR

El primer microprocesador del mundo, el Intel 4004, era de 4 bits; constaba de
un controlador programable dentro de un chip.
Direccionaba escasas 4096 localidades de memoria de 4 bits de ancho. (Una
localidad de memoria de 4 bits de ancho a menudo se llama nibble.)

El conjunto de instrucciones del 4004 constaba solamente de 45 instrucciones
y fue fabricado con tecnología MOSFET de canal P, que en aquel entonces
representaba la vanguardia tecnológica y permitía la ejecución de solamente
50 KIPs (miles de instrucciones por segundo).

Esta velocidad era baja comparada con las 100,000 instrucciones por segundo
ejecutadas por la computadora ENIAC de 30 toneladas, en 1946. La
diferencia principal era que e1, 4004 pesaba mucho menos de una onza.

En un principio abundaron las aplicaciones para este dispositivo. El
microprocesador de 4 bits debutó en los primeros sistemas de videojuego,
calculadoras y en pequeños sistemas de control basados en el
microprocesador.

Uno de estos primeros videojuegos fue producido por Balley.
Los principales problemas de este primer microprocesador fueron su
velocidad, ancho de palabra y tamaño de memoria.

EL 4040
Posteriormente INTEL liberó el 4040, una versión actualizada del 4004
anterior.
El 4040 operaba a mayor velocidad, aunque carecía de mejoras en el ancho de
palabra y tamaño de memoria.
Otras compañías, particularmente Texas Instruments (TMS-1000), también
produjeron microprocesadores de 4 bits.
El microprocesador de 4 bits aún sobrevive en aplicaciones poco exigentes
como hornos de microondas y pequeños sistemas de control;
La mayoría de las calculadoras todavía están basadas en microprocesadores de
4 bits que procesan códigos BCD (decimal codificado en binario) de 4 bits.

                                                                             9
10
El 8008

Al darse cuenta de que el microprocesador era un producto comercialmente
viable, en 1971 INTEL puso a la venta el 8008, una versión extendida de 8
bits del 4004.

El 8008 direccionaba una memoria mayor (16 KB, 1KB=1024bytes) y
contenía instrucciones adicionales (un total de 48) que ofrecían la oportunidad
de aplicarlo en sistemas más avanzados.

A medida que los ingenieros desarrollaban aplicaciones más exigentes para el
microprocesador 8008, descubrieron que la pequeña memoria, baja velocidad
y conjunto de instrucciones limitaban su utilidad.


El 8080
Intel reconoció estas limitaciones e introdujo el 8080 en 1973, el primero de
los microprocesadores modernos de 8 bits.

MC6800
Aproximadamente 6 meses después, Motorola Corporation presentó su
microprocesador MC6800. Esto activó el auge del 8080, y en un menor grado
del MC6800, lo que dio inicio a la era del microprocesador.

Muy pronto otras compañías presentaron sus propias versiones del
microprocesador de 8 bits. La tabla 1-1 lista varios de estos primeros
microprocesadores y sus fabricantes; de éstos, sólo Intel y Motorola continúan
creando con éxito versiones nuevas y mejoradas.

Zilog también lo hace, pero ha
permanecido en un segundo
plano, concentrándose en los
microcontroladores    y    los
controladores incrustados en
lugar de los microprocesadores
de propósito general.

                                                                             10
11
Rockwell prácticamente abandonó el desarrollo de microprocesadores, para
dedicarse a los circuitos de módems.
La participación de Motorola en el mercado de microprocesadores disminuyó
de cerca del 50% a una parte mucho menor.



¿QUÉ TENÍA DE ESPECIAL EL 8080?

El 8080 no sólo podía direccionar más memoria y ejecutar instrucciones
adicionales, sino también las ejecutaba diez veces más rápido que el 8008.

Una suma que en el 8008 requería de 20 µseg (50,000 instrucciones por
segundo), necesitaba sólo 2.0 µseg (500,000 instrucciones por segundo) en
un sistema basado en el 8080.
Además, el 8080 era compatible con la lógica TTL (lógica transistor-
transistor), a diferencia del 8008 que no era directamente compatible. Esto
permitió el establecimiento de interfaces más sencillas y menos costosas.

El 8080 también direccionaba 4 veces más memoria (64 KB) que el 8008 (16
KB). Estas mejoras son las responsables de iniciar la era del 8080.

A propósito, la primera computadora personal, la MITS Altair 8800, fue
lanzada al mercado en 1974. (Observe que el número 8800 fue escogido
probablemente para evitar violaciones de derecho de autor con Intel.) El
intérprete del lenguaje BASIC escrito para la computadora Altair 8800 fue
desarrollado por Bill Gates, el fundador de la empresa Microsoft Corp.

El programa ensamblador para la Altair 8800 fue escrito por la compañía
Digital Research Corporation, la cual produjo el primer sistema operativo
(DR-DOS) para la computadora personal.




                                                                         11
12
EL MICROPROCESADOR 8085.
En 1977, Intel Corporation presentó una versión actualizada del 8080: el
8085.
Éste sería el último de los microprocesadores de propósito general de 8 bits
desarrollados por Intel. A pesar de ser sólo ligeramente más avanzado que el
8080, el 8085 ejecutaba software a una velocidad aun mayor.

Una suma que tomaba al 8080 2.0 µseg (500,000 instrucciones por segundo),
requería solamente de 1.3 µseg (769,230 instrucciones por segundo) en el
8085.
Las principales ventajas del 8085 fueron su generador interno de reloj, su
controlador interno de sistema y una frecuencia de reloj más alta.
Este nivel mayor de integración de componentes en el 8085 redujo su costo e
incrementó su utilidad. Intel ha vendido más de 100 millones de copias del
microprocesador 8085, su microprocesador de 8 bits de propósito general de
mayor éxito.

Dado que el 8085 es fabricado también (bajo licencias) por muchas otras
compañías, existen más de 200 millones de estos microprocesadores.

Otra compañía que vendió 500 millones de microprocesadores de 8 bits es
Zilog Corporation, que produjo el microprocesador Z-80. El Z-80 es
compatible en lenguaje de máquina con el 8085, lo que significa que ¡existen
más de 700 millones de microprocesadores que ejecutan código 8085/Z-80
compatible!



EL MICROPROCESADOR MODERNO

En 1978, Intel liberó el microprocesador 8086 y aproximadamente un año
después, el 8088. Ambos dispositivos son microprocesadores de 16 bits, que
ejecutaban instrucciones en tan sólo 400 µseg (2.5 MIPs o millones de
instrucciones por segundo).

 Además, el 8086 y 8088 direccionaban 1 MB de memoria, lo que era 16
veces más memoria que el 8085. (1 MB = 1,048,576 bytes.)
                                                                          12
13
Esta velocidad de ejecución y tamaño de memoria mayores permitieron a los
8086 y 8088 reemplazar a las minicomputadoras de rendimiento relativamente
bajo en muchas aplicaciones.

Otra característica de los 8086 y 8808 fue una pequeña memoria caché (o
cola) con instrucciones de 4 o 6 bytes que leía con antelación algunas
instrucciones antes de que fueran ejecutadas. Esta cola de instrucciones
aceleró la operación de muchas secuencias de instrucciones y probó ser la
base para las cachés con instrucciones mucho mayores encontradas en los
microprocesadores modernos.

El tamaño incrementado de memoria y las instrucciones adicionales en el
8086 y 8088 dieron origen a muchas aplicaciones sofisticadas para
microprocesadores. Las mejoras al conjunto de instrucciones incluían a la
multiplicación y la división, de las que carecían los microprocesadores
anteriores.

Además, el número de instrucciones se incrementó de 45 en el 4004, a 246 en
el 8085 y a más de 2,000 variantes en los microprocesadores 8086 y 8088.

Observe que estos microprocesadores se llamaban CISC (computadoras de
conjunto complejo de instrucciones) por la cantidad y la complejidad de las
instrucciones.

Las instrucciones adicionales facilitaron el desarrollo de aplicaciones
eficientes y sofisticadas, aunque al principio el gran número de instrucciones
era abrumador y su aprendizaje requería mucho tiempo.
Los microprocesadores de 16 bits también ofrecían mayor capacidad de
almacenamiento en registros que los de 8 bits. Los registros adicionales
permitían la escritura de software más eficiente.
Los microprocesadores de 16 bits evolucionaron principalmente debido a la
necesidad de sistemas de mayor memoria.

La popularidad de la familia Intel se consolidó en 1981, cuando IBM decidió
usar el microprocesador 8088 en su computadora personal. Aplicaciones
como hojas de cálculo electrónicas, procesadores de texto, correctores de
ortografía y diccionarios basados en la computadora hacen uso intensivo de la
                                                                            13
14
memoria y por lo tanto requieren más de los 64 KB proporcionados por los
microprocesadores de 8 bits para lograr una ejecución más eficiente. Los
microprocesadores 8086 y 8088 de 16 bits ofrecían 1 MB de memoria para
dichas aplicaciones.

Muy pronto, el sistema de memoria de 1 MB fue insuficiente para bases de
datos grandes y otras aplicaciones. Esto llevó a Intel a presentar en 1983 al
microprocesador 80286, una versión actualizada del 8086.



EL MICROPROCESADOR 80286.

El microprocesador 80286 (también, con arquitectura de 16 bits) era
prácticamente idéntico a los 8086 y 8088, excepto porque direccionaba un
sistema de memoria de 16 MB, en vez de uno de 1 MB.

El conjunto de instrucciones del 80286 también era prácticamente idéntico al
de los microprocesadores 8086 y 8088, excepto por algunas instrucciones
adicionales que administraban los 15 MB adicionales de memoria.

La velocidad de reloj del 80286 era mayor, por lo que la versión original de
8.0 MHz ejecutaba algunas instrucciones en tan sólo 250 µseg (4.0 MIPs).
También se hicieron algunos cambios en la ejecución interna de las
instrucciones, lo que condujo a un incremento en la velocidad (por un factor
de 8) para muchas instrucciones, en comparación con el 8086 y 8088.



EL MICROPROCESADOR DE 32 BITS.

Las aplicaciones comenzaron a requerir mayores velocidades del
microprocesador, más memoria y rutas de datos más anchas. Esto condujo a
Intel Corporation a crear el 80386 en 1986.

Este microprocesador representó una revisión mayor de la arquitectura de 16
bits de los procesadores 8086 al 80286.
                                                                           14
15
El 80386 fue el primer microprocesador práctico de 32 bits de Intel, e incluía
un bus de datos y direccionamiento de memoria de 32 bits (Intel produjo con
anterioridad un microprocesador de 32 bits, llamado iapx-432, el cual no tuvo
éxito). Por medio de esos buses de 32 bits, el 80386 direccionaba hasta 4 GB
de memoria (1 GB de memoria contiene 1024 MB o 1,073,741,824
localidades).

Una memoria de 4 GB puede almacenar la asombrosa cantidad de un millón
de páginas de información de texto ASCII escrito a máquina a doble espacio.
El 80386 estuvo disponible en algunas versiones modificadas: como el
80386SX, que direccionaba 16 MB de memoria a través de un bus de datos de
16 bits y direccionamiento de 24 bits; el 80386SU80386SLC, que
direccionaba 32 MB de memoria a través de un bus de datos de 16 bits y
direccionamiento de 25 bits. Una versión del 80386SLC contenía una
memoria caché interna que le permitía procesar información a velocidades
aún mayores.


En 1995 Intel liberó el microprocesador 80386EX, al cual se le conoce como
PC incrustada porque contiene todos los componentes de una computadora
personal AT en un solo circuito integrado.
El 80386EX también contiene 24 líneas para entrada y salida de información,
un bus de direccionamiento de 26 bits, un bus de datos de 16 bits, un
controlador de refresco para DRAM (memoria dinámica) y una lógica
programable de selección de dispositivo.



APLICACIONES

      Entre las aplicaciones que necesitan velocidades mayores del
microprocesador y sistemas de memoria más grandes, se incluyen los sistemas
de software que utilizan una GUI (Interfaz Gráfica de Usuario).
Las pantallas modernas a menudo contienen 256,000 o más píxeles
(elementos de imagen). La menos sofisticada es la de tipo VGA (Matriz de
Gráficos de Vídeo) y tiene una resolución de 640 píxeles por cada una de las
480 líneas de barrido.
                                                                            15
16


Para presentar una pantalla de información, es necesario cambiar cada
elemento gráfico, lo que requiere un microprocesador de alta velocidad.
Muchos paquetes de software nuevos utilizan este tipo de interfaz de vídeo.
Los paquetes basados en la GUI requieren altas velocidades de
microprocesador y adaptadores de vídeo acelerados para una manipulación
rápida y eficiente de la información de texto y gráficos.

      El sistema más notorio que requiere una alta velocidad de cálculo para
su interfaz gráfica de despliegue, es el Windows' de Microsoft Corporation.
La interfaz gráfica de usuario tiene un tipo de despliegue conocido como
WYSIWYG (Lo Que Ve Es Lo Que Obtiene).

El microprocesador de 32 bits es necesario por el ancho de su bus de datos,
que transfiere números reales (punto flotante de precisión sencilla) que
requieren una memoria de 32 bits de ancho.

Para procesar eficientemente los números reales de 32 bits, el
microprocesador debe transferirlos eficientemente entre sí mismo y la
memoria. Si los números pasaran a través de un bus de datos de 8 bits, le
tomaría cuatro ciclos de lectura o escritura; sin embargo, cuando pasan a
través de un bus de datos de 32 bits, sólo requiere de un ciclo de lectura o
escritura.

Esto acelera significativamente cualquier programa que trabaje con números
reales. La mayoría de los lenguajes de alto nivel, hojas de cálculo electrónicas
y sistemas de administración de bases de datos, utilizan números reales para
almacenar la información.

Los números reales también son usados en paquetes de diseño gráfico que
utilizan vectores para trazar imágenes en la pantalla.
Éstos incluyen los sistemas CAD (dibujo asistido por computadora), como el
AutoCAD, ORCAD y otros.
Además de ofrecer velocidades de reloj mayores, el 80386 incluyó una unidad
de manejo de memoria que permitía al sistema operativo asignar y administrar
los recursos de memoria.

                                                                              16
17
Los microprocesadores anteriores dejaron la administración de memoria
completamente a cargo del software.
El 80386 incluyó circuitería especializada para la administración y asignación
de memoria, lo que mejoró su eficiencia y redujo la carga adicional del
software.

El conjunto de instrucciones del microprocesador 80386 seguía siendo
compatible con los anteriores 8086, 8088 y 80286.
Algunas instrucciones adicionales usaban los registros de 32 bits y
administraban el sistema de memoria.
Observe que las instrucciones y técnicas de administración de memoria
utilizadas por el 80286 también eran compatibles con el microprocesador
80386.
Estas características permitían al software anterior de 16 bits operar con el
microprocesador 80386.



EL MICROPROCESADOR 80486.

En 1989 Intel liberó el microprocesador 80486, el cual incluía un
microprocesador parecido al 80386, un coprocesador numérico parecido al del
80387 y un sistema de memoria caché de 8 KB en un solo empaque integrado.

La estructura interna del 80486 fue modificada respecto a la del 80386 de
manera tal que aproximadamente la mitad de las instrucciones eran ejecutadas
en un ciclo de reloj, en lugar de dos.
En virtud de que el 80486 estaba disponible en una versión de 50 MHz,
aproximadamente la mitad de las instrucciones eran ejecutadas en 25µseg (50
MIPs). El incremento promedio de velocidad para una mezcla típica de
instrucciones fue de aproximadamente el 50% en comparación con el 80386
operando a la misma frecuencia de reloj.

Versiones posteriores al 80486 ejecutaban instrucciones a velocidades aún
mayores, con una versión a 66 MHz de doble reloj (80486DX2). Esta versión
ejecutaba instrucciones

                                                                            17
18
a la velocidad de 66 MHz, con transferencias de memoria que eran ejecutadas
a 33 MHz (es por ello que este microprocesador fue llamado de doble reloj).

Una versión de triple reloj de Intel, el 80486DX4, incrementó la velocidad de
ejecución interna a 100 MHz, con transferencias a memoria de 33 MHz.
Note que el microprocesador 80486DX4 ejecutaba instrucciones
aproximadamente a la misma velocidad que el Pentium de 60 MHz. También
contenía una memoria caché expandida a 16 KB en vez de la caché estándar
de 8KB de los microprocesadores 80486 anteriores.

La compañía Advanced Micro Devices (AMD) produjo una versión de triple
reloj que operaba con una velocidad de bus de 40 MHz y una velocidad de
reloj de 120 MHz.
El futuro promete microprocesadores que ejecuten instrucciones internas a
velocidades
de hasta 1 GHz o más.

Otras versiones del 80486 fueron llamadas procesadores "Overdrive"a. El
procesador Overdrive en realidad fue una versión de doble reloj del 80486DX
que sustituyó a un 80486SX o a un 80486DX de menor velocidad.
Cuando el procesador Overdrive se introducía en su base, deshabilitaba o
sustituía al 80486SX o al 80486DX y operaba como una versión de doble
reloj del microprocesador.

Por ejemplo, si un 80486SX a 25 MHz era sustituido con un microprocesador
Overdrive, éste operaba como un microprocesador 80486DX2 a 50 MHz con
una velocidad de transferencia a memoria de 25 MHz.

La tabla 1-2 muestra muchos de los microprocesadores producidos por Intel y
Motorola con la información sobre su tamaño de palabras y de memoria.
Hay otras compañías que producen microprocesadores, pero ninguna ha
alcanzado el éxito de Intel y, en menor medida, de Motorola.




                                                                           18
19


EL MICROPROCESADOR PENTIUM.

El Pentium, fabricado en 1993, era similar a los microprocesadores 80386 y
80486.
Este microprocesador fue etiquetado originalmente como P5 µ 80586, pero
Intel decidió no usar un número ya que parecía imposible registrarlo como tal.

Las dos versiones iniciales del Pentium operaban con una velocidad de reloj
de 60 y 66 MHz, y tenían la capacidad de procesar 110 MIPs; contaban
además con una versión de 100 MHz y 1.5 veces la velocidad de reloj, que
operaba a 150 MIPs.

El Pentium de doble reloj que operaba a 120 y 133 y 233 MHz
El tamaño de la memoria caché se incrementó a 16 KB, a diferencia de la de 8
KB encontrada en la versión básica del 80486.

El Pentium contenía una memoria caché de 8 KB para instrucciones y una de
8 KB para datos(para programas que manejan una gran cantidad de
información de memoria)

El sistema de memoria contenía hasta 4 GB, con un ancho de bus de datos
incrementado de los 32 bits encontrados en el 80386 y 80486, a 64 bits.

La velocidad de transferencia del bus de datos era ya sea de 60 o 66 MHz,
dependiendo de la versión del Pentium. (Recuerde que la velocidad de bus del
80486 era de 33 MHz.)

Este bus de datos más ancho permitió el uso de números de punto flotante de
doble precisión, utilizados para el moderno despliegue gráfico de alta
velocidad generado por vectores. Estas velocidades de bus mayores
permitirían que el software de realidad virtual operara en forma más realista
en las plataformas actuales y futuras basadas en el Pentium.




                                                                            19
20




     20
21
El ancho ampliado del bus de datos y la velocidad de ejecución mayor del
Pentium, permiten que los despliegues de vídeo a pantalla completa operen a
velocidades de barrido de 30 Hz o más; lo cual es comparable con la
televisión comercial.

Versiones más recientes del Pentium también incluían instrucciones
adicionales llamadas extensiones multimedia o instrucciones MMX. Aunque
Intel esperaba que las instrucciones MMX fueran ampliamente usadas, parece
que pocas compañías de software las han utilizado.

Posteriormente Intel liberó el esperado Pentium Overdrive (P24T) para
sistemas anteriores basados en el 80486 que operan a velocidades de reloj de
63 o de 83 MHz.
La versión de 63 MHz actualiza los anteriores sistemas 80486DX2 a 50 MHz;
la versión de 83 MHz actualiza los sistemas 80486DX2 a 66MHz.
El sistema actualizado a 83 MHz opera a una velocidad que oscila entre la del
Pentium a 66 MHz y la del Pentium a 75 MHz.

Si las tarjetas de vídeo basadas en el bus local VESA y los controladores de
disco con memoria caché parecen ser demasiado caros para desecharlos, el
Pentium Overdrive representa una ruta de actualización ideal del 80486 al
Pentium.

Probablemente la característica más ingeniosa del Pentium la constituyen sus
dos procesadores independientes para enteros, gracias a los cuales puede
ejecutar simultáneamente dos instrucciones independientes entre sí, lo que se
conoce como tecnología superescalar. Esto permite al Pentium ejecutar
frecuentemente dos instrucciones por cada ciclo de reloj.
Otra característica que incrementa el rendimiento es una tecnología de
predicción de saltos que acelera la ejecución de programas que incluyen
ciclos.
Al igual que el 80486, el Pentium también utiliza un coprocesador interno de
punto flotante para manipular información de este tipo, aunque con una
mejoría en velocidad de hasta cinco veces.




                                                                           21
22
Estas características aseguran un éxito continuo para la familia de
microprocesadores Intel. También permitirían que el Pentium sustituyera a
algunas de las máquinas RISC (computadoras con conjunto reducido de
instrucciones) que actualmente ejecutan una instrucción por ciclo de reloj.

Algunos procesadores RISC recientes ejecutan más de una instrucción por
ciclo de reloj, por medio de la tecnología superescalar.
Recientemente, Motorola, Apple e IBM produjeron el PowerPC, un
microprocesador RISC que tiene dos unidades de ejecución de enteros y una
unidad de punto flotante.

El PowerPC en verdad incrementa el rendimiento de la Apple Macintosh,
pero en la actualidad sigue siendo lento para emular a la familia de
microprocesadores Intel. Las pruebas realizadas indican que el software de
emulación actual ejecuta las aplicaciones de DOS y Windows a una velocidad
menor que un microprocesador 80486SX a 25 MHz.

Actualmente existen seis millones de computadoras Apple Macintosh' y más
de 260 millones de computadoras personales basadas en microprocesadores
Intel. Según reportes de 1998, el 96% de todas las PCs corrían el sistema
operativo Windows.




Con la finalidad de comparar la velocidad de varios microprocesadores, Intel
desarrolló el índice iCOMP. Éste es una mezcla de los índices SPEC92, ZD
Bench y Power Meter. El iCOMP1 e utilizó para medir la velocidad de los
microprocesadores Intel hasta el Pentium. La figura 1-1 muestra las velocida
des relativas de la versión 80386DX a 25 MHz básica hasta la versión del
Pentium a 233 MHz en la parte superior del espectro.




                                                                          22
23




Desde la liberación del Pentium Pro y el Pentium II, Intel ha cambiado al uso
del índice iCOMP2, que está escalado por un factor de 10 en comparación
con el índice iCOMP1 (un microprocesador con un índice de 1000 usando el
iCOMPI se tabula como uno de 100 en el iCOMP2). Otra diferencia son los
marcadores utilizados para la puntuación.
La figura 1-2 muestra el índice iCOMP2 que incluye al Pentium 11 a una
velocidad de hasta 400 MHz.




                                                                           23
24




PROCESADOR PENTIUM PRO.

Anteriormente tenía el nombre de microprocesador P6. El Pentium Pro
contiene 21 millones de transistores, tres unidades para enteros, así como una
unidad de punto flotante para mejorar el rendimiento de la mayoría del
software. Las velocidades básicas de reloj eran de 150 y 166 MHz en la
emisión inicial, que estaba disponible desde fines de 1995.

Además de la memoria caché interna de primer nivel (L1) de 16 KB (8 KB
para datos y 8 KB para instrucciones), el procesador Pentium Pro también
contiene una memoria caché de segundo nivel (L2) de 256 KB.

Otro cambio importante es que utiliza 3 máquinas de ejecución, de modo que
puede ejecutar tres instrucciones a la vez. Esto representa un cambio respecto
del Pentium, el cual ejecuta dos instrucciones simultáneamente;

El microprocesador Pentium Pro ha sido optimizado para ejecutar código de
32 bits de manera eficiente; por esta razón es usado con frecuencia con
Windows NT en lugar de versiones normales de Windows 95. Intel lanzó el
procesador Pentium Pro pensando en el mercado de servidores.

Un cambio adicional más es que el Pentium Pro puede direccionar tanto un
sistema de memoria de 4 GB, como uno de 64 GB. El Pentium Pro tiene un

                                                                            24
25
bus de dirección de 36 bits cuando está configurado para un sistema de
memoria de 64 GB.



MICROPROCESADORES PENTIUM 11.

Liberado en 1997, En lugar de ser un circuito integrado como las versiones
anteriores del microprocesador, Intel ha colocado al Pentium II en una
pequeña tarjeta de circuito impreso. La razón principal para este cambio es
que la memoria caché L2 que se encontraba en la tarjeta principal del Pentium
no era suficientemente rápida como para justificar un nuevo microprocesador.

En el sistema Pentium, la memoria caché L2 trabaja a la velocidad del bus del
sistema, a 60 o 66 MHz. La memoria caché L2 y el microprocesador se
encuentran en una tarjeta de circuito impreso, llamada módulo Pentium II.
Esta memoria caché L2 montada en la misma tarjeta que el procesador,
trabaja a una velocidad de 133 MHz y almacena 512 KB de información.
El microprocesador del módulo Pentium II es en realidad un Pentium Pro con
extensiones MMX, el cual no tiene memoria caché L2 interna.

En 1998, Intel cambió la velocidad del bus del Pentium II. Debido a que los
microprocesadores Pentium II de 266 a 333 MHz usaban una velocidad
externa de bus de 66 MHz, se creaba un cuello de botella, por lo que los
microprocesadores Pentium II más recientes usan ahora una velocidad de bus
de 100 MHz.

Los microprocesadores Pentium II de 350, 400 y 450 MHz usan todos esta
velocidad mayor de bus de memoria de 100 MHz.
Este bus de memoria más rápido requiere el uso de una SDRAM (RAM
dinámica sincrónica) de 8 nseg, en lugar de la SDRAM de 10 nseg que se usa
en el bus de 66 MHz.


A mediados de 1998, Intel anunció una nueva versión del Pentium II llamada
Xeon, que fue específicamente diseñado para aplicaciones en estaciones de
trabajo y servidores de alto rendimiento.
                                                                           25
26
La diferencia principal entre el Pentium II y el Pentium II Xeon radica en que
el Xeon está disponible con una memoria caché L1 de 32 KB y una caché L2
ya sea de 512 K, 1 o 2 MB.
El Xeon opera con el conjunto de chips 440GX y está diseñado para trabajar
con cuatro procesadores Xeon en el mismo sistema; característica que es
similar al Pentium Pro.


Este producto más reciente representa un cambio en la estrategia de Intel:
Intel ahora produce una versión profesional y una versión para casa u oficina
del microprocesador Pentium 11.



EL FUTURO DE LOS MICROPROCESADORES.

Se espera que el éxito de la familia Intel deberá continuar por bastantes años.
Lo que puede ocurrir es una migración a la tecnología RISC, pero es más
probable un cambio a una nueva tecnología, desarrollada conjuntamente por
Intel y Hewlett-Packard.

Esta nueva tecnología seguirá incorporando el conjunto de instrucciones CISC
de la familia de microprocesadores 80X86, de tal forma que el software
existente para el sistema sobrevivirá.

La premisa básica detrás de esta tecnología es que muchos microprocesadores
podrán comunicarse entre sí en forma directa, permitiendo el procesamiento
paralelo sin ningún cambio al conjunto de instrucciones o al programa.

Actualmente, la tecnología superescalar utiliza muchos microprocesadores,
pero todos ellos comparten el mismo conjunto de registros. Esta nueva
tecnología, contendrá muchos microprocesadores, cada uno con su propio
conjunto de registros que está articulado con los registros de los demás
microprocesadores.
Esta tecnología debería ofrecer verdadero procesamiento paralelo sin la
necesidad de escribir un programa especial.

                                                                             26
27
Intel planea presentar una nueva arquitectura de microprocesadores con 64
bits de ancho y un bus de datos de 128 bits. Esta nueva arquitectura, cuyo
nombre clave es Merced, es una iniciativa conjunta de Intel y Hewlett-
Packard, llamada EPIC (Instrucciones explícitas de procesamiento paralelo).

La arquitectura Merced permite un mayor paralelismo que las arquitecturas
tradicionales, como las del Pentium Pro o Pentium II.
Estos cambios incluyen 128 registros para enteros de propósito general, 128
registros de punto flotante, 64 registros de predicados y muchas unidades de
ejecución que garanticen recursos suficientes para el software.

La figura 1-3 muestra la estructura interna de los microprocesadores 80486,
Pentium, Pentium Pro y Pentium 11. Cada vista de estos microprocesadores:
la CPU (Unidad Central de Procesamiento), el coprocesador y la memoria
caché. La ilustración muestra la complejidad y nivel de integración en cada
versión del microprocesador.




TAREA INVESTIGAR:
Tabla comparativa PI, PII, PIII, PIV …
Reseña evolución de la Mac … Power PC.
Pelicula : Los piratas del Valle del silicio comentarios 1 Hoja.


                                                                          27
28


1.2 EL SISTEMA PERSONAL                DE    CÓMPUTO        BASADO        EN
MICROPROCESADORES

Los costosos sistemas de cómputo tipo mainframe desarrollados a principio
de los ochentas, no son tan poderosos como las computadoras actuales
basadas en los microprocesadores 80486, Pentium, Pentium Pro o Pentium 11.
De hecho, muchas compañías pequeñas están sustituyendo sus computadoras
mainframe por sistemas basados en microprocesadores.

Compañías tales como DEC (Digital Equipment Corporation) han dejado de
producir mainframes para concentrar sus recursos en sistemas basados en
microprocesadores.

La figura 1-4 muestra el diagrama de bloques de una computadora personal.
Este diagrama también es aplicable a cualquier sistema de cómputo, desde las
primeras computadoras mainframe hasta los sistemas más recientes basados
en microprocesadores.




Tarea:   Super       computadora,       minicomputadora,      computadora,
microcomputadora.


                                                                          28
29
LA MEMORIA Y EL SISTEMA DE ENTRADA /SALIDA (E/S)

La estructura de memoria de todos los sistemas Intel, desde el 80X86 al
Pentium II, es similar. Desde las primeras computadoras personales basadas
en el 8088, presentadas en 1981 por IBM, como a las versiones más poderosas
y de alta velocidad basadas en el Pentium 11.

La figura 1-5 muestra el mapa de memoria de un sistema personal de
cómputo. Este mapa se aplica a cualquier computadora IBM o a cualquiera de
los muchos clones compatibles con IBM que existen.

El sistema de memoria está dividido en tres partes principales: El TPA (Área
de Programas Temporales), el área de sistema y el XMS (Sistema de Memoria
Extendida).

El tipo de microprocesador en su
computadora determina si existe
un     sistema    de    memoria
extendida. Si la computadora se
basa en los antiguos 8086 u 8088
(PC o XT ), tanto el TPA como
el área de sistema existen, pero
no hay un área de memoria
extendida.

Las PC y XT contienen:
   640 KB de TPA
y 384 KB de memoria de sistema
para un total de 1 MB de
memoria.

El primer megabyte de memoria se conoce frecuentemente como sistema de
memoria real o convencional, debido a que cada microprocesador Intel está
diseñado para operar en esta área utilizando el modo de operación real.




                                                                          29
30
Los sistemas de cómputo basados en el 80286 y hasta el Pentium II, no sólo
contienen el TPA (640 KB) y un área de sistema (384 KB), sino que también
contienen una memoria extendida. Estas máquinas a menudo son llamadas de
clase AT.


Las computadoras PS/1 y PS/2 producidas por IBM, son otras versiones del
mismo diseño básico de memoria. La PS/2 se conoce como sistema de
arquitectura de microcanal.

BUSES
Se tiene el bus PCI (Interconexión de Componentes Periféricos) en casi todos
los sistemas del Pentium al Pentium 11: La memoria extendida contiene hasta
15 MB en la computadora basada en el 80286 y 80386SX, y hasta 4095 MB
en los microprocesadores 803861)X, 80486 y Pentium, además del primer
megabyte de memoria real o convencional.

Observe que cada uno de estos buses es compatible con las versiones
anteriores. Es decir, las tarjetas de interfaz de 8 bits funcionan con el bus ISA
de 8 bits, ISA de 16 bits o EISA de 32 bits.
De la misma forma, una tarjeta de interfaz de 16 bits funciona en el sistema
ISA de 16 bits o EISA de 32 bits.

Otra clase de bus encontrado en muchas computadoras basadas en el 80486 es
el bus local VESA, bus VL. El bus local establece la interfaz del disco y el
vídeo con el microprocesador al nivel del bus local, lo que permite que las
interfaces de 32 bits operen a la misma velocidad de reloj que el
microprocesador.


Los estándares de bus ISA y EISA funcionan a sólo 8 MHz, lo que reduce el
rendimiento de las interfaces de vídeo y de disco que usan dichos estándares.
El bus PCI es ya sea un bus de 32 bits o de 64 que está específicamente
diseñado para operar con los microprocesadores Pentium hasta Pentium 11 a
una velocidad de bus de 33 MHz.

En los sistemas más recientes, han aparecido dos buses nuevos.
                                                                               30
31
  • El primero en aparecer fue el USB (Bus Serial Universal). Este bus tiene
    por objeto conectar dispositivos periféricos como teclados, ratones,
    módems y tarjetas de sonido al microprocesador por medio de un enlace
    de datos serial y un par de cables trenzados.
    La idea principal es reducir el costo del sistema reduciendo del número
    de cables. Otra ventaja es que el sistema de sonido puede tener una
    fuente de alimentación independiente de la PC, lo que significa mucho
    menos ruido. Las velocidades de transferencia de datos a través del
    USB son de 10 Mbps (USB1) a 300 Mbps (USB2)

  • Un segundo bus es el AGP (Puerto Acelerado de Gráficos) para
    tarjetas de vídeo.
    El puerto acelerado de gráficos transfiere información entre la tarjeta de
    vídeo y el microprocesador a velocidades mayores (66 MHz con una
    trayectoria de datos de 64 bits, o 533 MB por segundo)

     Este cambio en el subsistema de vídeo permitió trabajar con los nuevos
     reproductores de DVD para PC.


El TPA.

El área de programas temporales almacena al sistema operativo DOS y otros
programas que controlan al sistema de cómputo.

El DOS (Sistema operativo de disco) controla la manera en que es
organizada y controlada la memoria de disco, así como las funciones y el
control de algunos dispositivos de E/S conectados al sistema.
Windows también realiza estas funciones para aplicaciones basadas en
Windows.

La figura 1-6 muestra la organización del TPA en un sistema de cómputo.
El BIOS (Sistema Básico de Entrada/Salida) BIOS del sistema es un
conjunto de programas almacenados ya sea en una memoria de lectura (ROM)
o en una memoria flash que controla muchos de los dispositivos de E/S
conectados a su computadora.

                                                                            31
32
Observe que la memoria flash es una EEPROM (Memoria de sólo lectura
borrable eléctricamente) que el sistema borra por medio de impulsos
eléctricos, mientras que una ROM es un dispositivo que debe ser programado
en una máquina especial que se llama programador de EPROM (Memoria
programable/borrable de sólo lectura) o en la fábrica al momento de elaborar
la ROM.




Las áreas de comunicaciones del BIOS y DOS contienen información
temporal que los programas utilizan para acceder a los dispositivos de E/S y a
las características internas de la computadora.


                                                                            32
33
Note que el TPA contiene memoria de lectura/escritura (llamada RAM o
memoria de acceso aleatorio), la cual puede cambiar durante la ejecución de
un programa.

      El programa IO.SYS se carga en el TPA desde un disco cada vez que
el sistema MSDOS o PCDOS inicia. El IO.SYS contiene programas que
permiten al DOS utilizar el teclado, el despliegue de vídeo, la impresora y
otros dispositivos de E/S que a menudo se encuentran en un sistema de
cómputo.
El programa IO.SYS enlaza el DOS con los programas almacenados en la
memoria ROM del BIOS del sistema.


     Los controladores de dispositivos son programas que controlan
dispositivos de E/S como el ratón, la memoria caché de disco, el escáner de
mano, la memoria CD-ROM (Memoria de Sólo Lectura en Disco Compacto),
el DVD (Disco Digital Versátil) o los dispositivos instalables, así como los
programas.
El tamaño del área de controladores y el número de éstos varían de una
computadora a otra.

Los controladores instalables son programas que controlan o manejan los
dispositivos o programas que son agregados a la computadora. Se trata
normalmente de archivos que poseen la extensión SYS (como MOUSE.SYS);
en las versiones 3.2 y posteriores del DOS, los archivos tienen la extensión
EXE (como EMM386.EXE).

Windows utiliza un archivo llamado SYSTEM.INI para cargar sus
controladores. Y contienen un registro que guarda la información del sistema
y sus controladores. Usted puede examinar el registro por medio del programa
REGEDIT.


El programa COMMAND.COM (procesador de comandos) controla el
funcionamiento de la computadora desde el teclado cuando ésta opera en
modo DOS. El programa COMMAND.COM procesa los comandos del DOS
conforme van siendo escritos desde el teclado.
                                                                              33
34
El área libre del TPA almacena los programas de aplicación del DOS
mientras son ejecutados. Estos programas de aplicación incluyen procesadores
de texto, hojas electrónicas de cálculo, programas de diseño asistido por
computadora y otros.
El TPA también almacena los programas del tipo TSR (residente en
memoria), los cuales permanecen en memoria en estado inactivo hasta que
son llamados por una tecla de método abreviado u otro evento como una
interrupción.

EL ÁREA DEL SISTEMA.

El área del sistema, aunque más pequeña
que el TPA, es igual de importante. El
área de sistema contiene programas ya
sea en ROM o en memoria flash, así
como áreas de RAM de lectura/escritura
para almacenamiento de datos. La figura
1-7 muestra el área de sistema de una
computadora típica.

Manejo del Vídeo
La primer área del espacio del sistema
contiene memoria RAM para despliegue
de vídeo, así como programas de control
de vídeo en ROM o memoria flash. Esta
área empieza en la localidad A0000H y se
extiende hasta C7FFFH.

Algunas tarjetas de vídeo más recientes
reubican la memoria en áreas más altas
del sistema de memoria, para su uso con
el sistema operativo Windows. Las tarjetas de vídeo en algunas computadoras
utilizan las localidades de memoria E180000OH y E2FFFFFFH con
Windows para extender su memoria de vídeo.




                                                                          34
35
El BIOS de vídeo, ubicado en una memoria ROM o flash, se encuentra en las
localidades desde COOOOH hasta C7FFFH y contiene programas que
controlan el despliegue de vídeo en el sistema operativo DOS.

ROM para disco duro
Si la computadora tiene conectado un disco duro, la tarjeta de interfaz podría
contener una ROM y un BIOS de disco. Esta ROM, que frecuentemente se
encuentra en los discos duros antiguos tipo MFM o RLL, contiene software de
bajo nivel para establecer el formato del disco en la localidad C8005H.

Área libre
El área comprendida entre la localidad C8000H y la DFFFFH a menudo está
libre. Ésta se utiliza para los sistemas de memoria expandida (EMS) en un
sistema PC o XT, o para el sistema de memoria alta en un sistema AT.


ROM del BASIC
Las localidades de memoria de la EOOOOH a la EFFFFH contienen el
lenguaje BASIC en ROM encontrado en los primeros sistemas personales de
cómputo de IBM.
En las computadoras más recientes esta área a menudo se encuentra abierta o
libre.

ROM del BIOS
Finalmente, la ROM del BIOS del sistema se localiza en los últimos 64 KB
del área de sistema (FOOOOH a FFFFFH). Esta ROM controla la operación
de los dispositivos básicos de E/S conectados a la computadora; no controla la
operación del sistema de vídeo, el cual tiene su propia ROM de BIOS en la
localidad COOOOH.

La primera parte del BIOS del sistema (F0000H a F7FFFH) a menudo
contiene los programas que configuran la computadora; la segunda parte
contiene los procedimientos que controlan al sistema básico de E/S.




                                                                            35
36
Espacio de E/S.
El espacio de E/S (entrada/salida) del sistema de cómputo se extiende desde el
puerto de E/S OOOOH hasta el puerto FFFFH (una dirección de puerto de
E/S es similar a una dirección de memoria, salvo que en vez de direccionar
memoria, direcciona un dispositivo de E/S).

Los dispositivos de E/S permiten al microprocesador comunicarse con el
mundo exterior. El espacio de E/S permite a la computadora acceder a hasta
64 KB con dispositivos diferentes de 8 bits.
En la mayoría de las computadoras más recientes hay un gran número de estas
localidades disponibles para expansión.
La figura 1-9 muestra el mapa de E/S que se encuentra en muchos sistemas
personales de cómputo.

El área de E/S contiene dos secciones principales:
 • El área por debajo de la localidad de
   E/S 0400H se considera reservada
   para los dispositivos del sistema
 • El área restante es espacio de E/S
   disponible para expansión de los
   sistemas más recientes y se extiende
   desde el puerto de E/S 0400H hasta
   el FFFFH.

Algunas de las tarjetas madres de las
computadoras más recientes también
pueden utilizar direcciones arriba de la
0400H.

Comúnmente, las direcciones de E/S
entre la 0000H y la OOFFH direccionan
componentes de la tarjeta madre de la
computadora,      mientras    que    las
direcciones entre la 0100H y la 03FFH
direccionan dispositivos ubicados en las
tarjetas de expansión.

                                                                            36
37
Hay varios dispositivos de E/S con control sobre el funcionamiento del
sistema que no son diseccionados en forma automática. En su lugar, la ROM
del BIOS del sistema direcciona a estos dispositivos básicos, cuya ubicación y
función puede variar ligeramente de una computadora a otra.

El acceso a la mayoría de los dispositivos de E/S deberá realizarse siempre a
través de llamadas a funciones del DOS o del BIOS para mantener la
compatibilidad de un sistema de cómputo con otro. El mapa de la figura 1-9
sirve de guía para ilustrar el espacio de E/S en el sistema.




EL SISTEMA OPERATIVO DOS
El sistema operativo es el programa que controla a la computadora.
El sistema operativo Windows, que contiene al DOS, se encuentra instalado
en la gran mayoría de las computadoras personales.
El sistema operativo es almacenado en: un disco flexible, un disco duro, en
un volumen de una LAN (red de área local), en una ROM

Algunos sistemas que utilizan Windows CE como sistema operativo también
lo almacenan en una ROM.
Un ejemplo es la computadora personal de Tandy Corporation. Cada vez que
la computadora se enciende o es inicializada, el sistema operativo es leído
desde el disco o la LAN. Llamamos a esta operación inicialización del
sistema.

Una vez que el DOS ha sido leído e instalado en memoria, éste controla la
operación de:
  • Sistema de cómputo,
  • De sus dispositivos de E/S y
  • De los programas de aplicación.

La primera tarea del DOS después de ser cargado en memoria es usar el
archivo CONFIG.SYS . Este archivo especifica varios controladores que
son cargados en memoria, configurando la máquina para su operación bajo
control del DOS.
                                                                            37
38


Observe que este archivo no define la operación de Windows, la cual está
definida en su propio archivo de registros.


AUTOEXEC.BAT . Una vez que el sistema operativo concluye su
configuración, de acuerdo con lo indicado por el archivo CONFIG.SYS, la
computadora ejecuta el archivo AUTOEXEC.BAT (lote de ejecución
automática).
Si este archivo no existe, la computadora solicita la hora y fecha. El ejemplo
1-2 muestra un ejemplo de un archivo típico.

El archivo AUTOEXEC.BAT contiene los comandos que se ejecutan al
momento de encender la computadora; y son los mismos que se especifican
desde el teclado, pero el archivo AUTOEXEC.BAT nos ahorra este trabajo
cada vez que la computadora se enciende.

Aun los sistemas que operan con Windows contienen a menudo un archivo
AUTOEXEC.BAT para establecer diversas etiquetas y trayectorias para
aplicaciones del DOS que a menudo siguen existiendo.




EL MICROPROCESADOR

Algunas veces llamado CPU (unidad central de procesamiento), el
microprocesador es el elemento de control del sistema de cómputo. El
microprocesador controla la memoria y la E/S a través de una serie de
conexiones llamadas buses.

                                                                            38
39
Los buses
  • Seleccionan un dispositivo de E/S o de memoria,
  • Transfieren información entre estos dispositivos y el microprocesador,
  • y controlan los sistemas de E/S y memoria.

El microprocesador realiza tres tareas principales para el sistema de cómputo:
   1) Transferencia de datos entre él mismo y la memoria o sistema de E/S;
   2) Operaciones lógicas y aritméticas simples, y
   3) Control de flujo del programa por medio de decisiones simples.

El poder del microprocesador radica en su capacidad para ejecutar miles de
millones de instrucciones por segundo provenientes de un programa o
software (grupo de instrucciones) almacenado en el sistema de memoria.
Este concepto de programa almacenado convirtió a las computadoras y a los
microprocesa dores en dispositivos muy poderosos (recuerde que Babbage
también quería utilizar el concepto de programa almacenado en su Máquina
analítica).


La tabla 1-3 muestra las operaciones
lógicas y aritméticas ejecutadas por la
familia de microprocesadores de Intel.
Estas operaciones son básicas, pero a
través de ellas es posible resolver
problemas muy complejos.

Los datos son procesados desde el
sistema de memoria o los registros
internos; los formatos son variables e
incluyen un byte (8 bits), una palabra (16
bits) y una palabra doble (32 bits).

Es importante considerar que solamente los microprocesadores del 80386 al
Pentium II manejan directamente números de 8, 16 y 32 bits; los anteriores,
del 8086 al 80286, manejaban directamente números de 8 y 16 bits.


                                                                             39
40
A partir del 80486, el microprocesador contenía un coprocesador numérico
que le permitía realizar operaciones aritméticas complejas utilizando la
notación de punto flotante.
El coprocesador numérico, que es similar al chip de una calculadora,
constituía una componente adicional en las computadoras basadas en los
microprocesadores 8086 al 80386.

Otra característica que hace poderoso al microprocesador es su capacidad para
tomar decisiones simples basadas en hechos numéricos. Por ejemplo, un
microprocesador puede decidir si un número es cero, si es positivo, etc.
Estas decisiones simples permiten al microprocesador modificar el flujo del
programa,
de manera que los programas parecen razonar por medio de estas decisiones
simples.

La tabla 1-4 muestra las capacidades de toma de decisiones de los
microprocesadores de la familia Intel.




BUSES.

Un bus es un conjunto de conductores comunes que interconectan
componentes en un sistema de cómputo.

En el sistema de cómputo basado en el microprocesador, existen tres buses
para esta transferencia de información: el bus de direcciones, el de datos y el
de control.
                                                                             40
41
La figura 1-10 muestra cómo estos buses interconectan varios componentes
del sistema, como el microprocesador, la RAM (memoria de
lectura/escritura), la ROM (memoria de sólo lectura) y algunos pocos
dispositivos de E/S.




El bus de direcciones solicita a la memoria una localidad de memoria o a los
dispositivos de E/S una localidad de E/S.

Si la E/S es direccionada, el bus de direcciones contiene una dirección de E/S
de 16 bits
entre OOOOH y FFFFH.
La dirección de E/S de 16 bits, o número de puerto, selecciona uno de 64 K
dispositivos diferentes de E/S.

Si la memoria es direccionada, el bus de direcciones contiene una dirección de
memoria, la cual varía en ancho de una versión del microprocesador a otra.

El bus de datos transfiere información entre el microprocesador y su espacio
de direccionamiento de memoria y E/S. Las transferencias de datos varían en
tamaño, desde 8 hasta 64 bits.



                                                                               41
42
Microproce Tamaño         Ancho de los buses    Localidades
sador       de                   de             Mínima – Máxima
            Memori            Datos y
            a                Dirección
8086        1MB              16         20      0 0000H – F FFFFH.
8088        1MB               8         20
80186       1MB              16         20
80188       1MB               8         20
80286       16 MB            16         24      00 0000H - FF FFFFH.
80386SX     16 MB            16         24
80386DX     4 GB             32         32      0000 0000H - FFFF FFFFH.
80386EX     64 MB            16         26      00 0000H - FF FFFFH.
80486       4 GB             32         32      0000 0000H - FFFF FFFFH.
Pentium     4 GB             64         32
Pentium     4 GB             32         32
OverDrive
Pentium Pro 4 GB               64         32
Pentium Pro 64 GB              64         36    0 0000 0000H - F FFFF
                                                FFFFH
Pentium II    4 GB             64         32    0000 0000H - FFFF FFFFH.
Pentium II    64 GB            64         32    0 0000 0000H - F FFFF
                                                FFFFH

La ventaja de un bus de datos más ancho es la velocidad de las aplicaciones
que utilizan formatos de datos grandes.

Por ejemplo, si la memoria almacena un número de 32 bits, el
microprocesador 8088 requiere 4 operaciones de transferencia para concluir,
ya que su bus de datos es de sólo 8 bits de ancho. El 80486 realiza la misma
tarea en una sola transferencia, ya que su bus de datos es de 32 bits de ancho.

En todos los miembros de la familia, la memoria está numerada por byte.




                                                                             42
43




     43
44
El bus de control contiene líneas que seleccionan ya sea a la memoria o la E/S
y que ocasionan que éstas efectúen una operación de lectura o escritura.
En la mayoría de los sistemas de cómputo existen 4 líneas del bus de control:
   • MRDC (control de lectura de memoria),
   • MWTC (control de escritura de memoria),
   • IORC (control de lectura de E/S)
   • IOWC (control de escritura de E/S).

Observe que la raya encima de los caracteres indica que la señal de control
está activa en cero (active-low) ; esto es, se encuentra activa cuando un cero
lógico aparece en la línea de control.




Practica
Investigar: (forma física , señales, protocolos)
El puerto serial
El puerto Paralelo




                                                                            44

Weitere ähnliche Inhalte

Was ist angesagt?

Antecedentes De La Computadora
Antecedentes De La ComputadoraAntecedentes De La Computadora
Antecedentes De La ComputadoraAlvaradoEcheverria
 
Evolucion de las computadoras
Evolucion de las computadorasEvolucion de las computadoras
Evolucion de las computadorasfede501
 
Desarrollo historico de la computacion
Desarrollo historico de la computacionDesarrollo historico de la computacion
Desarrollo historico de la computacionJose Arrieta
 
Historia de las Computadoras.
Historia de las Computadoras. Historia de las Computadoras.
Historia de las Computadoras. Erick_x3
 
Fundametos del computador1
Fundametos del computador1Fundametos del computador1
Fundametos del computador1Pedro Torres
 
Universidad popular del cesar
Universidad popular del cesarUniversidad popular del cesar
Universidad popular del cesarJhon Bueno
 
Historia del pc
Historia del pcHistoria del pc
Historia del pcPAGM626
 
Trasfondo Historico De Las Computadoras Final
Trasfondo Historico De Las Computadoras   FinalTrasfondo Historico De Las Computadoras   Final
Trasfondo Historico De Las Computadoras Finalteresomoza
 
La Historia Del Computador
La Historia Del ComputadorLa Historia Del Computador
La Historia Del Computadorxavier x
 
Fundamentos steven
Fundamentos stevenFundamentos steven
Fundamentos stevenSteven Inoa
 
Evolucion de los computadores por jose david barrios b
Evolucion de los computadores por jose david barrios bEvolucion de los computadores por jose david barrios b
Evolucion de los computadores por jose david barrios bJoseDavid24
 

Was ist angesagt? (17)

Antecedentes De La Computadora
Antecedentes De La ComputadoraAntecedentes De La Computadora
Antecedentes De La Computadora
 
Evolucion de las computadoras
Evolucion de las computadorasEvolucion de las computadoras
Evolucion de las computadoras
 
Desarrollo historico de la computacion
Desarrollo historico de la computacionDesarrollo historico de la computacion
Desarrollo historico de la computacion
 
Historia de las Computadoras.
Historia de las Computadoras. Historia de las Computadoras.
Historia de las Computadoras.
 
Tarea no2
Tarea no2Tarea no2
Tarea no2
 
Evolucion de lads computadoras
Evolucion de lads computadorasEvolucion de lads computadoras
Evolucion de lads computadoras
 
Fundametos del computador1
Fundametos del computador1Fundametos del computador1
Fundametos del computador1
 
Historia del pc
Historia del pcHistoria del pc
Historia del pc
 
Juan jose ruiz calderon 9 04
Juan jose ruiz calderon 9 04Juan jose ruiz calderon 9 04
Juan jose ruiz calderon 9 04
 
Tarea 2
Tarea 2Tarea 2
Tarea 2
 
Universidad popular del cesar
Universidad popular del cesarUniversidad popular del cesar
Universidad popular del cesar
 
Historia del pc
Historia del pcHistoria del pc
Historia del pc
 
Trasfondo Historico De Las Computadoras Final
Trasfondo Historico De Las Computadoras   FinalTrasfondo Historico De Las Computadoras   Final
Trasfondo Historico De Las Computadoras Final
 
Historia del computador
Historia del computadorHistoria del computador
Historia del computador
 
La Historia Del Computador
La Historia Del ComputadorLa Historia Del Computador
La Historia Del Computador
 
Fundamentos steven
Fundamentos stevenFundamentos steven
Fundamentos steven
 
Evolucion de los computadores por jose david barrios b
Evolucion de los computadores por jose david barrios bEvolucion de los computadores por jose david barrios b
Evolucion de los computadores por jose david barrios b
 

Andere mochten auch

Presentación fase planificación equipo d
Presentación fase planificación equipo dPresentación fase planificación equipo d
Presentación fase planificación equipo dguillaso
 
Didacticas contemporaneas
Didacticas contemporaneasDidacticas contemporaneas
Didacticas contemporaneasnelsonguapacha
 
ISCAD - SIAP - Aula do dia 31_10_2007
ISCAD - SIAP - Aula do dia 31_10_2007ISCAD - SIAP - Aula do dia 31_10_2007
ISCAD - SIAP - Aula do dia 31_10_2007Luis Vidigal
 
APRENDIZAJE VIRTUAL
APRENDIZAJE VIRTUALAPRENDIZAJE VIRTUAL
APRENDIZAJE VIRTUALLaura Prieto
 
Ensamble de un pc
Ensamble de un pcEnsamble de un pc
Ensamble de un pcLala15d
 
Mi Diario En Las Artes Marciales
Mi Diario En Las Artes MarcialesMi Diario En Las Artes Marciales
Mi Diario En Las Artes Marcialesguest9c4bfce
 

Andere mochten auch (7)

Presentación fase planificación equipo d
Presentación fase planificación equipo dPresentación fase planificación equipo d
Presentación fase planificación equipo d
 
Didacticas contemporaneas
Didacticas contemporaneasDidacticas contemporaneas
Didacticas contemporaneas
 
ISCAD - SIAP - Aula do dia 31_10_2007
ISCAD - SIAP - Aula do dia 31_10_2007ISCAD - SIAP - Aula do dia 31_10_2007
ISCAD - SIAP - Aula do dia 31_10_2007
 
APRENDIZAJE VIRTUAL
APRENDIZAJE VIRTUALAPRENDIZAJE VIRTUAL
APRENDIZAJE VIRTUAL
 
Organizing
OrganizingOrganizing
Organizing
 
Ensamble de un pc
Ensamble de un pcEnsamble de un pc
Ensamble de un pc
 
Mi Diario En Las Artes Marciales
Mi Diario En Las Artes MarcialesMi Diario En Las Artes Marciales
Mi Diario En Las Artes Marciales
 

Ähnlich wie R68618

Ähnlich wie R68618 (20)

Generaciones de las computadoras
Generaciones de las computadorasGeneraciones de las computadoras
Generaciones de las computadoras
 
Historia de la computadora
Historia de la computadoraHistoria de la computadora
Historia de la computadora
 
Historia de la computadora
Historia de la computadoraHistoria de la computadora
Historia de la computadora
 
Origen del computador
Origen del computadorOrigen del computador
Origen del computador
 
Fundamentos steven
Fundamentos stevenFundamentos steven
Fundamentos steven
 
1 historia de la computación
1 historia de la computación1 historia de la computación
1 historia de la computación
 
Desarrollo histórico de la computadora
Desarrollo histórico de la computadoraDesarrollo histórico de la computadora
Desarrollo histórico de la computadora
 
actividad 5
actividad 5actividad 5
actividad 5
 
Antecedentes De La Computadora
Antecedentes De La ComputadoraAntecedentes De La Computadora
Antecedentes De La Computadora
 
La Computadora
La ComputadoraLa Computadora
La Computadora
 
Fundamento del computador tarea 1
Fundamento del computador tarea 1Fundamento del computador tarea 1
Fundamento del computador tarea 1
 
NTIXC
NTIXCNTIXC
NTIXC
 
Nticx
NticxNticx
Nticx
 
Que es una computadora
Que es una computadoraQue es una computadora
Que es una computadora
 
Trabajo sobre el computador
Trabajo sobre el computadorTrabajo sobre el computador
Trabajo sobre el computador
 
Fundamentos del computador
Fundamentos del computadorFundamentos del computador
Fundamentos del computador
 
El origen de las computadoras
El origen de las computadorasEl origen de las computadoras
El origen de las computadoras
 
Fundamentos de la computadora jorge
Fundamentos de la computadora jorgeFundamentos de la computadora jorge
Fundamentos de la computadora jorge
 
Isocrates HomeWork :D (Fundamentos)
Isocrates HomeWork :D (Fundamentos)Isocrates HomeWork :D (Fundamentos)
Isocrates HomeWork :D (Fundamentos)
 
El origen de las computadoras
El origen de las computadorasEl origen de las computadoras
El origen de las computadoras
 

R68618

  • 1. 1 Los microprocesadores de INTEL Barry B. BREY Prentice Hall Designing Embedded Systems with PIC Microcontrollers , Principles and applications Tim Wilmshurst ELSEVIER Microcontrolador PIC16F84, Desarrollo de Proyectos. Enrique Palacios Alfaomega RA-MA 1
  • 2. 2 CAPÍTULO 1 Introducción al microprocesador Y a la computadora OBJETIVOS DEL CAPÍTULO 1. Comunicarse adecuadamente usando términos de cómputo como bit, byte, datos, sistema de memoria real, EMS (Sistema de Memoria Expandida), XMS (Sistema de Memoria Extendida), DOS, BIOS, E/S y otros. 2. Explicar brevemente la historia de la computadora y enumerar algunas aplicaciones de los sistemas de cómputo. 3. Ofrecer un panorama general de los diferentes miembros de las familias 80X86, Pentium y Pentium II. 4. Dibujar el diagrama de bloques de una computadora y explicar la función de cada bloque. 5. Describir la función del microprocesador y detallar su funcionamiento básico. 6. Definir el contenido del sistema de memoria de la computadora personal 1.1 UNA SEMBLANZA HISTÓRICA LA ERA MECÁNICA La idea de hacer cálculos usando una máquina se remonta al año 500 a.C. cuando los babilonios inventaron el ábaco, la primera calculadora mecánica. El ábaco, usado ampliamente aún en la actualidad, no fue superado sino hasta 1642, cuando el matemático Blaise Pascal inventó una calculadora construida con engranes y ruedas. Cada engrane tenía diez dientes que, cuando daba una vuelta completa, hacía avanzar un segundo engrane una posición. Éste es el mismo principio usado en el mecanismo del Tacómetro (odómetro) del automóvil y es la base de todas las calculadoras mecánicas. 2
  • 3. 3 A propósito, el lenguaje de programación PASCAL se llama así en honor a Blaise Pascal, por su trabajo como pionero en matemáticas y con la calculadora mecánica. La aparición de las primeras máquinas mecánicas prácticas basadas en engranes, usadas para el cómputo de información, data del siglo xix, antes de que el hombre inventara la bombilla eléctrica. El hombre soñaba con máquinas que pudieran efectuar cómputos numéricos con base en un programa y no simplemente obtener resultados numéricos, como con una calculadora. En 1937 se descubrió, a través de planos y revistas, que Charles Babbage fue uno de los pioneros de las máquinas mecánicas de cómputo, ayudado por Augusta Ada Byron, la Condesa de Lovelace. Babbage fue comisionado por la Real Sociedad Astronómica de Gran Bretaña en 1823 para elaborar una máquina calculadora programable. Esta máquina tendría que generar tablas de navegación para la Marina Real. Babbage aceptó el reto y comenzó a crear lo que llamó su Máquina analítica. Esta máquina era una computadora mecánica que almacenaba 1000 números decimales de 20 dígitos y un programa variable que podía modificar la función de la máquina para realizar diferentes tareas de cálculo. La alimentación de información se hacía a través de tarjetas perforadas. Se supone que Babbage obtuvo esta idea de Joseph Jacquard, un francés que usaba tarjetas perforadas para alimentar información a una máquina tejedora (es decir, la programaban) inventada por él en 1801. El telar de Jacquard utilizaba tarjetas perforadas para producir complicados patrones de tejido en la tela elaborada. Después de muchos años de trabajo, el sueño de Babbage empezó a desvanecerse cuando se dio cuenta de que los mecánicos de su época eran incapaces de crear las piezas requeridas para completar su creación. La máquina analítica requería de más de 50,000 partes mecánicas, que no podían ser elaboradas con la precisión suficiente como para permitir un funcionamiento confiable. 3
  • 4. 4 LA ERA ELÉCTRICA El siglo XIX vio el surgimiento del motor eléctrico (concebido por Michael Faraday); con él llegó una multitud de máquinas sumadoras movidas por motor, todas basadas en la calculadora mecánica desarrollada por Blaise Pascal. Estas calculadoras mecánicas impulsadas eléctricamente fueron equipos de oficina comunes hasta el inicio de los años setenta del siglo XX, cuando apareció la calculadora electrónica de mano, introducida primero por Bomar. Monroe fue también un pionero de las calculadoras electrónicas, pero sus máquinas eran modelos de escritorio, de cuatro funciones, y tenían el tamaño de las cajas registradoras actuales. En 1889, Herman Hollerith desarrolló la tarjeta perforada para el almacenamiento de datos. Aparentemente, al igual que Babbage, tomó prestada la idea de Jacquard, pues creó una máquina mecánica (movida por un motor eléctrico) que contaba, ordenaba y cotejaba información almacenada en tarjetas perforadas. Hollerith fue comisionado por el gobierno de Estados Unidos para utilizar su sistema de tarjetas perforadas para almacenar y tabular la información del censo de 1890. En 1896, Hollerith creó la Tabulating Machine Company, la cual desarrolló una línea de máquinas que funcionaban bajo el mismo principio. Después de algunas fusiones, la Tabulating Machine Company e convirtió en la International Bussines Machines Corporation, ahora más conocida como IBM, Inc. (Las tarjetas perforadas utilizadas en computadoras son frecuentemente llamadas tarjetas Hollerith; el código de 12 bits usado en una tarjeta perforada se llama código Hollerith.) Las máquinas mecánicas movidas por motor eléctrico dominaron el mundo del procesamiento de información hasta la construcción de la primera calculadora electrónica en 1941 por un inventor alemán llamado Konrad Zuse. Su computadora de cálculo, la Z3, se utilizó en el diseño de aeronaves y misiles para el ejército alemán durante la Segunda Guerra Mundial. Si Zuse hubiera recibido el apoyo financiero adecuado por parte del gobierno alemán, muy probablemente habría desarrollado un sistema de cómputo mucho más poderoso. 4
  • 5. 5 Hoy Zuse finalmente recibe el reconocimiento por su trabajo en el área de la electrónica digital, que comenzó en los años treinta, y por su sistema de cómputo Z3. Se ha descubierto recientemente (gracias a la publicación de documentos militares británicos, antes secretos) que la primera computadora electrónica fue puesta en funcionamiento en 1943 para descifrar códigos militares alemanes. El primer sistema de cómputo electrónico, el cual usaba tubos al vacío (bulbos), fue inventado por Alan Turing. Turing llamó a su máquina Colossus, probablemente a causa de su tamaño. Un problema de la Colossus consistía en que, a pesar de que su diseño permitía descifrar códigos militares alemanes generados por la máquina Enigma, no podía resolver otros problemas. Colossus no era programable, sino que era un sistema de cómputo con un programa fijo, lo cual en la actualidad se llama una computadora de propósito específico. La primera computadora electrónica programable de propósito general fue desarrollada en 1946 en la Universidad de Pennsylvania. Esta primera computadora moderna se llamaba ENIAC (Electronics Numerical Integrator and Calculator). La ENIAC era una máquina enorme que contenía más de 17,000 bulbos y más de 800 kilómetros de cables; pesaba más de 30 toneladas y aun así realizaba solamente unas 100,000 operaciones por segundo. De todos modos, la ENIAC lanzó al mundo hacia la era de las computadoras electrónicas. La ENIAC se programaba recableando sus circuitos; un proceso que tomaba varios días a muchos trabajadores. Los trabajadores cambiaban las conexiones eléctricas sobre tableros de conexiones semejantes a los de los primeros teléfonos. Otro problema de la ENIAC era la vida útil de los bulbos, los cuales requerían de mantenimiento constante. 5
  • 6. 6 Los hechos posteriores más relevantes fueron los correspondientes al desarrollo del transistor en 1948 por los laboratorios Bell, seguido por la invención del circuito integrado en 1958 por Jack Kilby de Texas Instruments. El circuito integrado condujo al desarrollo de circuitos digitales integrados ETL (lógica resistencia-transistor) en los años sesenta y del primer microprocesador de Intel Corporation en 1971. En aquel entonces, Intel y uno de sus ingenieros, Marcian E. Hoff, desarrollaron el microprocesador 4004, el dispositivo que inició la revolución del microprocesador que continúa hoy en día a un ritmo cada vez más acelerado. AVANCES EN PROGRAMACIÓN Una vez desarrolladas las máquinas programables, empezaron a aparecer los programas y lenguajes de programación. Como ya se mencionó, la primera computadora electrónica programable se programaba volviendo a cablear sus circuitos. Puesto que este método resultó ser demasiado fastidioso para aplicaciones prácticas, en el inicio de la evolución de los sistemas de cómputo comenzaron a aparecer lenguajes de programación para poder controlarlos. El primero de estos lenguajes, lenguaje de máquina, se formó con ceros y unos utilizando claves binarias almacenadas en la memoria de la computadora como grupos de instrucciones llamados programas. Este método resultó ser más eficiente que volver a cablear la máquina, pero aun así era extremadamente tardado desarrollar un programa debido al gran número de claves necesarias. La primera persona en desarrollar un sistema que aceptaba instrucciones y las almacenaba en memoria, fue el matemático John von Neumann. 6
  • 7. 7 A menudo las computadoras son llamadas máquinas de von Neumann en su honor (sin embargo, recuerde que Babbage ya había desarrollado el concepto mucho antes). A principios de los años cincuenta, una vez que las computadoras como la UNIVAC estaban disponibles, se utilizó el lenguaje ensamblador para simplificar la tarea de introducir en la computadora el código binario correspondiente a las instrucciones. El ensamblador permitió al programador el uso de códigos nemónicos (como ADD para la suma) en lugar de números binarios como 01000111. Aunque el lenguaje ensamblador es una ayuda para la programación, no fue sino hasta 1957 (cuando Grace Hopper desarrolló el primer lenguaje de programación de alto nivel llamado FLOW-MATIC) que las computadoras fueron más fáciles de programar. En el mismo año, IBM desarrolló el lenguaje FORTRAN (FORmula TRANslator) para sus sistemas de cómputo. FORTRAN permitió a los programadores desarrollar programas que usaban fórmulas para resolver problemas matemáticos (note que FORTRAN todavía lo utilizan algunos científicos para programar computadoras). Otro lenguaje similar presentado aproximadamente un año después que el FORTRAN, fue el ALGOL (ALGOrithmic Language). El primer lenguaje realmente exitoso y distribuido para aplicaciones de negocios fue el COBOL (Computer Business Oriented Language). Aunque el uso de COBOL ha disminuido en los últimos años, todavía es muy utilizado en muchos sistemas empresariales grandes. Otro lenguaje de negocios muy popular en el pasado es RPG (Report Program Generator), el cual permite programar especificando la forma de entrada, salida y los cálculos. Desde esos primeros días de la programación, han aparecido más lenguajes. Algunos de los más comunes son el BASIC, C/C++, PASCAL y ADA. BASIC y PASCAL fueron diseñados para la enseñanza de programación, pero 7
  • 8. 8 han salido del salón de clases y son utilizados en muchos sistemas de cómputo; BASIC es probablemente el más sencillo de aprender. Algunas estimaciones indican que el lenguaje BASIC se utiliza en el 80% de los programas para computadora personal escritos por usuarios. Recientemente, una nueva versión de BASIC, VISUAL BASIC, ha hecho más fácil la programación en el ambiente Windows. El lenguaje VISUAL BASIC podría tarde o temprano sustituir a C/C++ y a PASCAL. En la comunidad científica, C/C++ y (en algunas ocasiones) PASCAL aparecen como programas de control. Ambos lenguajes, especialmente C/C++, permiten al programador casi un completo control sobre el ambiente de programación y el sistema de cómputo. En muchos casos, C/C++ está reemplazando a algunos de los programas de bajo nivel para control de la máquina, normalmente reservados para el lenguaje ensamblador. Aun así, el lenguaje ensamblador sigue desempeñando un papel importante en la programación. La mayoría de los programas de videojuego escritos para máquinas personales están escritos casi exclusivamente en lenguaje ensamblador. El lenguaje de máquina también es distribuido junto con C/C++ y PASCAL para realizar funciones de control de la máquina de manera eficiente. El lenguaje ADA, muy usado por el Departamento de Defensa de Estados Unidos, es llamado así en honor de Augusta Ada Byron, Condesa de Lovelace. La Condesa trabajó con Charles Babbage al principio del siglo XIX en el desarrollo de su Máquina analítica. 8
  • 9. 9 LA ERA DEL MICROPROCESADOR El primer microprocesador del mundo, el Intel 4004, era de 4 bits; constaba de un controlador programable dentro de un chip. Direccionaba escasas 4096 localidades de memoria de 4 bits de ancho. (Una localidad de memoria de 4 bits de ancho a menudo se llama nibble.) El conjunto de instrucciones del 4004 constaba solamente de 45 instrucciones y fue fabricado con tecnología MOSFET de canal P, que en aquel entonces representaba la vanguardia tecnológica y permitía la ejecución de solamente 50 KIPs (miles de instrucciones por segundo). Esta velocidad era baja comparada con las 100,000 instrucciones por segundo ejecutadas por la computadora ENIAC de 30 toneladas, en 1946. La diferencia principal era que e1, 4004 pesaba mucho menos de una onza. En un principio abundaron las aplicaciones para este dispositivo. El microprocesador de 4 bits debutó en los primeros sistemas de videojuego, calculadoras y en pequeños sistemas de control basados en el microprocesador. Uno de estos primeros videojuegos fue producido por Balley. Los principales problemas de este primer microprocesador fueron su velocidad, ancho de palabra y tamaño de memoria. EL 4040 Posteriormente INTEL liberó el 4040, una versión actualizada del 4004 anterior. El 4040 operaba a mayor velocidad, aunque carecía de mejoras en el ancho de palabra y tamaño de memoria. Otras compañías, particularmente Texas Instruments (TMS-1000), también produjeron microprocesadores de 4 bits. El microprocesador de 4 bits aún sobrevive en aplicaciones poco exigentes como hornos de microondas y pequeños sistemas de control; La mayoría de las calculadoras todavía están basadas en microprocesadores de 4 bits que procesan códigos BCD (decimal codificado en binario) de 4 bits. 9
  • 10. 10 El 8008 Al darse cuenta de que el microprocesador era un producto comercialmente viable, en 1971 INTEL puso a la venta el 8008, una versión extendida de 8 bits del 4004. El 8008 direccionaba una memoria mayor (16 KB, 1KB=1024bytes) y contenía instrucciones adicionales (un total de 48) que ofrecían la oportunidad de aplicarlo en sistemas más avanzados. A medida que los ingenieros desarrollaban aplicaciones más exigentes para el microprocesador 8008, descubrieron que la pequeña memoria, baja velocidad y conjunto de instrucciones limitaban su utilidad. El 8080 Intel reconoció estas limitaciones e introdujo el 8080 en 1973, el primero de los microprocesadores modernos de 8 bits. MC6800 Aproximadamente 6 meses después, Motorola Corporation presentó su microprocesador MC6800. Esto activó el auge del 8080, y en un menor grado del MC6800, lo que dio inicio a la era del microprocesador. Muy pronto otras compañías presentaron sus propias versiones del microprocesador de 8 bits. La tabla 1-1 lista varios de estos primeros microprocesadores y sus fabricantes; de éstos, sólo Intel y Motorola continúan creando con éxito versiones nuevas y mejoradas. Zilog también lo hace, pero ha permanecido en un segundo plano, concentrándose en los microcontroladores y los controladores incrustados en lugar de los microprocesadores de propósito general. 10
  • 11. 11 Rockwell prácticamente abandonó el desarrollo de microprocesadores, para dedicarse a los circuitos de módems. La participación de Motorola en el mercado de microprocesadores disminuyó de cerca del 50% a una parte mucho menor. ¿QUÉ TENÍA DE ESPECIAL EL 8080? El 8080 no sólo podía direccionar más memoria y ejecutar instrucciones adicionales, sino también las ejecutaba diez veces más rápido que el 8008. Una suma que en el 8008 requería de 20 µseg (50,000 instrucciones por segundo), necesitaba sólo 2.0 µseg (500,000 instrucciones por segundo) en un sistema basado en el 8080. Además, el 8080 era compatible con la lógica TTL (lógica transistor- transistor), a diferencia del 8008 que no era directamente compatible. Esto permitió el establecimiento de interfaces más sencillas y menos costosas. El 8080 también direccionaba 4 veces más memoria (64 KB) que el 8008 (16 KB). Estas mejoras son las responsables de iniciar la era del 8080. A propósito, la primera computadora personal, la MITS Altair 8800, fue lanzada al mercado en 1974. (Observe que el número 8800 fue escogido probablemente para evitar violaciones de derecho de autor con Intel.) El intérprete del lenguaje BASIC escrito para la computadora Altair 8800 fue desarrollado por Bill Gates, el fundador de la empresa Microsoft Corp. El programa ensamblador para la Altair 8800 fue escrito por la compañía Digital Research Corporation, la cual produjo el primer sistema operativo (DR-DOS) para la computadora personal. 11
  • 12. 12 EL MICROPROCESADOR 8085. En 1977, Intel Corporation presentó una versión actualizada del 8080: el 8085. Éste sería el último de los microprocesadores de propósito general de 8 bits desarrollados por Intel. A pesar de ser sólo ligeramente más avanzado que el 8080, el 8085 ejecutaba software a una velocidad aun mayor. Una suma que tomaba al 8080 2.0 µseg (500,000 instrucciones por segundo), requería solamente de 1.3 µseg (769,230 instrucciones por segundo) en el 8085. Las principales ventajas del 8085 fueron su generador interno de reloj, su controlador interno de sistema y una frecuencia de reloj más alta. Este nivel mayor de integración de componentes en el 8085 redujo su costo e incrementó su utilidad. Intel ha vendido más de 100 millones de copias del microprocesador 8085, su microprocesador de 8 bits de propósito general de mayor éxito. Dado que el 8085 es fabricado también (bajo licencias) por muchas otras compañías, existen más de 200 millones de estos microprocesadores. Otra compañía que vendió 500 millones de microprocesadores de 8 bits es Zilog Corporation, que produjo el microprocesador Z-80. El Z-80 es compatible en lenguaje de máquina con el 8085, lo que significa que ¡existen más de 700 millones de microprocesadores que ejecutan código 8085/Z-80 compatible! EL MICROPROCESADOR MODERNO En 1978, Intel liberó el microprocesador 8086 y aproximadamente un año después, el 8088. Ambos dispositivos son microprocesadores de 16 bits, que ejecutaban instrucciones en tan sólo 400 µseg (2.5 MIPs o millones de instrucciones por segundo). Además, el 8086 y 8088 direccionaban 1 MB de memoria, lo que era 16 veces más memoria que el 8085. (1 MB = 1,048,576 bytes.) 12
  • 13. 13 Esta velocidad de ejecución y tamaño de memoria mayores permitieron a los 8086 y 8088 reemplazar a las minicomputadoras de rendimiento relativamente bajo en muchas aplicaciones. Otra característica de los 8086 y 8808 fue una pequeña memoria caché (o cola) con instrucciones de 4 o 6 bytes que leía con antelación algunas instrucciones antes de que fueran ejecutadas. Esta cola de instrucciones aceleró la operación de muchas secuencias de instrucciones y probó ser la base para las cachés con instrucciones mucho mayores encontradas en los microprocesadores modernos. El tamaño incrementado de memoria y las instrucciones adicionales en el 8086 y 8088 dieron origen a muchas aplicaciones sofisticadas para microprocesadores. Las mejoras al conjunto de instrucciones incluían a la multiplicación y la división, de las que carecían los microprocesadores anteriores. Además, el número de instrucciones se incrementó de 45 en el 4004, a 246 en el 8085 y a más de 2,000 variantes en los microprocesadores 8086 y 8088. Observe que estos microprocesadores se llamaban CISC (computadoras de conjunto complejo de instrucciones) por la cantidad y la complejidad de las instrucciones. Las instrucciones adicionales facilitaron el desarrollo de aplicaciones eficientes y sofisticadas, aunque al principio el gran número de instrucciones era abrumador y su aprendizaje requería mucho tiempo. Los microprocesadores de 16 bits también ofrecían mayor capacidad de almacenamiento en registros que los de 8 bits. Los registros adicionales permitían la escritura de software más eficiente. Los microprocesadores de 16 bits evolucionaron principalmente debido a la necesidad de sistemas de mayor memoria. La popularidad de la familia Intel se consolidó en 1981, cuando IBM decidió usar el microprocesador 8088 en su computadora personal. Aplicaciones como hojas de cálculo electrónicas, procesadores de texto, correctores de ortografía y diccionarios basados en la computadora hacen uso intensivo de la 13
  • 14. 14 memoria y por lo tanto requieren más de los 64 KB proporcionados por los microprocesadores de 8 bits para lograr una ejecución más eficiente. Los microprocesadores 8086 y 8088 de 16 bits ofrecían 1 MB de memoria para dichas aplicaciones. Muy pronto, el sistema de memoria de 1 MB fue insuficiente para bases de datos grandes y otras aplicaciones. Esto llevó a Intel a presentar en 1983 al microprocesador 80286, una versión actualizada del 8086. EL MICROPROCESADOR 80286. El microprocesador 80286 (también, con arquitectura de 16 bits) era prácticamente idéntico a los 8086 y 8088, excepto porque direccionaba un sistema de memoria de 16 MB, en vez de uno de 1 MB. El conjunto de instrucciones del 80286 también era prácticamente idéntico al de los microprocesadores 8086 y 8088, excepto por algunas instrucciones adicionales que administraban los 15 MB adicionales de memoria. La velocidad de reloj del 80286 era mayor, por lo que la versión original de 8.0 MHz ejecutaba algunas instrucciones en tan sólo 250 µseg (4.0 MIPs). También se hicieron algunos cambios en la ejecución interna de las instrucciones, lo que condujo a un incremento en la velocidad (por un factor de 8) para muchas instrucciones, en comparación con el 8086 y 8088. EL MICROPROCESADOR DE 32 BITS. Las aplicaciones comenzaron a requerir mayores velocidades del microprocesador, más memoria y rutas de datos más anchas. Esto condujo a Intel Corporation a crear el 80386 en 1986. Este microprocesador representó una revisión mayor de la arquitectura de 16 bits de los procesadores 8086 al 80286. 14
  • 15. 15 El 80386 fue el primer microprocesador práctico de 32 bits de Intel, e incluía un bus de datos y direccionamiento de memoria de 32 bits (Intel produjo con anterioridad un microprocesador de 32 bits, llamado iapx-432, el cual no tuvo éxito). Por medio de esos buses de 32 bits, el 80386 direccionaba hasta 4 GB de memoria (1 GB de memoria contiene 1024 MB o 1,073,741,824 localidades). Una memoria de 4 GB puede almacenar la asombrosa cantidad de un millón de páginas de información de texto ASCII escrito a máquina a doble espacio. El 80386 estuvo disponible en algunas versiones modificadas: como el 80386SX, que direccionaba 16 MB de memoria a través de un bus de datos de 16 bits y direccionamiento de 24 bits; el 80386SU80386SLC, que direccionaba 32 MB de memoria a través de un bus de datos de 16 bits y direccionamiento de 25 bits. Una versión del 80386SLC contenía una memoria caché interna que le permitía procesar información a velocidades aún mayores. En 1995 Intel liberó el microprocesador 80386EX, al cual se le conoce como PC incrustada porque contiene todos los componentes de una computadora personal AT en un solo circuito integrado. El 80386EX también contiene 24 líneas para entrada y salida de información, un bus de direccionamiento de 26 bits, un bus de datos de 16 bits, un controlador de refresco para DRAM (memoria dinámica) y una lógica programable de selección de dispositivo. APLICACIONES Entre las aplicaciones que necesitan velocidades mayores del microprocesador y sistemas de memoria más grandes, se incluyen los sistemas de software que utilizan una GUI (Interfaz Gráfica de Usuario). Las pantallas modernas a menudo contienen 256,000 o más píxeles (elementos de imagen). La menos sofisticada es la de tipo VGA (Matriz de Gráficos de Vídeo) y tiene una resolución de 640 píxeles por cada una de las 480 líneas de barrido. 15
  • 16. 16 Para presentar una pantalla de información, es necesario cambiar cada elemento gráfico, lo que requiere un microprocesador de alta velocidad. Muchos paquetes de software nuevos utilizan este tipo de interfaz de vídeo. Los paquetes basados en la GUI requieren altas velocidades de microprocesador y adaptadores de vídeo acelerados para una manipulación rápida y eficiente de la información de texto y gráficos. El sistema más notorio que requiere una alta velocidad de cálculo para su interfaz gráfica de despliegue, es el Windows' de Microsoft Corporation. La interfaz gráfica de usuario tiene un tipo de despliegue conocido como WYSIWYG (Lo Que Ve Es Lo Que Obtiene). El microprocesador de 32 bits es necesario por el ancho de su bus de datos, que transfiere números reales (punto flotante de precisión sencilla) que requieren una memoria de 32 bits de ancho. Para procesar eficientemente los números reales de 32 bits, el microprocesador debe transferirlos eficientemente entre sí mismo y la memoria. Si los números pasaran a través de un bus de datos de 8 bits, le tomaría cuatro ciclos de lectura o escritura; sin embargo, cuando pasan a través de un bus de datos de 32 bits, sólo requiere de un ciclo de lectura o escritura. Esto acelera significativamente cualquier programa que trabaje con números reales. La mayoría de los lenguajes de alto nivel, hojas de cálculo electrónicas y sistemas de administración de bases de datos, utilizan números reales para almacenar la información. Los números reales también son usados en paquetes de diseño gráfico que utilizan vectores para trazar imágenes en la pantalla. Éstos incluyen los sistemas CAD (dibujo asistido por computadora), como el AutoCAD, ORCAD y otros. Además de ofrecer velocidades de reloj mayores, el 80386 incluyó una unidad de manejo de memoria que permitía al sistema operativo asignar y administrar los recursos de memoria. 16
  • 17. 17 Los microprocesadores anteriores dejaron la administración de memoria completamente a cargo del software. El 80386 incluyó circuitería especializada para la administración y asignación de memoria, lo que mejoró su eficiencia y redujo la carga adicional del software. El conjunto de instrucciones del microprocesador 80386 seguía siendo compatible con los anteriores 8086, 8088 y 80286. Algunas instrucciones adicionales usaban los registros de 32 bits y administraban el sistema de memoria. Observe que las instrucciones y técnicas de administración de memoria utilizadas por el 80286 también eran compatibles con el microprocesador 80386. Estas características permitían al software anterior de 16 bits operar con el microprocesador 80386. EL MICROPROCESADOR 80486. En 1989 Intel liberó el microprocesador 80486, el cual incluía un microprocesador parecido al 80386, un coprocesador numérico parecido al del 80387 y un sistema de memoria caché de 8 KB en un solo empaque integrado. La estructura interna del 80486 fue modificada respecto a la del 80386 de manera tal que aproximadamente la mitad de las instrucciones eran ejecutadas en un ciclo de reloj, en lugar de dos. En virtud de que el 80486 estaba disponible en una versión de 50 MHz, aproximadamente la mitad de las instrucciones eran ejecutadas en 25µseg (50 MIPs). El incremento promedio de velocidad para una mezcla típica de instrucciones fue de aproximadamente el 50% en comparación con el 80386 operando a la misma frecuencia de reloj. Versiones posteriores al 80486 ejecutaban instrucciones a velocidades aún mayores, con una versión a 66 MHz de doble reloj (80486DX2). Esta versión ejecutaba instrucciones 17
  • 18. 18 a la velocidad de 66 MHz, con transferencias de memoria que eran ejecutadas a 33 MHz (es por ello que este microprocesador fue llamado de doble reloj). Una versión de triple reloj de Intel, el 80486DX4, incrementó la velocidad de ejecución interna a 100 MHz, con transferencias a memoria de 33 MHz. Note que el microprocesador 80486DX4 ejecutaba instrucciones aproximadamente a la misma velocidad que el Pentium de 60 MHz. También contenía una memoria caché expandida a 16 KB en vez de la caché estándar de 8KB de los microprocesadores 80486 anteriores. La compañía Advanced Micro Devices (AMD) produjo una versión de triple reloj que operaba con una velocidad de bus de 40 MHz y una velocidad de reloj de 120 MHz. El futuro promete microprocesadores que ejecuten instrucciones internas a velocidades de hasta 1 GHz o más. Otras versiones del 80486 fueron llamadas procesadores "Overdrive"a. El procesador Overdrive en realidad fue una versión de doble reloj del 80486DX que sustituyó a un 80486SX o a un 80486DX de menor velocidad. Cuando el procesador Overdrive se introducía en su base, deshabilitaba o sustituía al 80486SX o al 80486DX y operaba como una versión de doble reloj del microprocesador. Por ejemplo, si un 80486SX a 25 MHz era sustituido con un microprocesador Overdrive, éste operaba como un microprocesador 80486DX2 a 50 MHz con una velocidad de transferencia a memoria de 25 MHz. La tabla 1-2 muestra muchos de los microprocesadores producidos por Intel y Motorola con la información sobre su tamaño de palabras y de memoria. Hay otras compañías que producen microprocesadores, pero ninguna ha alcanzado el éxito de Intel y, en menor medida, de Motorola. 18
  • 19. 19 EL MICROPROCESADOR PENTIUM. El Pentium, fabricado en 1993, era similar a los microprocesadores 80386 y 80486. Este microprocesador fue etiquetado originalmente como P5 µ 80586, pero Intel decidió no usar un número ya que parecía imposible registrarlo como tal. Las dos versiones iniciales del Pentium operaban con una velocidad de reloj de 60 y 66 MHz, y tenían la capacidad de procesar 110 MIPs; contaban además con una versión de 100 MHz y 1.5 veces la velocidad de reloj, que operaba a 150 MIPs. El Pentium de doble reloj que operaba a 120 y 133 y 233 MHz El tamaño de la memoria caché se incrementó a 16 KB, a diferencia de la de 8 KB encontrada en la versión básica del 80486. El Pentium contenía una memoria caché de 8 KB para instrucciones y una de 8 KB para datos(para programas que manejan una gran cantidad de información de memoria) El sistema de memoria contenía hasta 4 GB, con un ancho de bus de datos incrementado de los 32 bits encontrados en el 80386 y 80486, a 64 bits. La velocidad de transferencia del bus de datos era ya sea de 60 o 66 MHz, dependiendo de la versión del Pentium. (Recuerde que la velocidad de bus del 80486 era de 33 MHz.) Este bus de datos más ancho permitió el uso de números de punto flotante de doble precisión, utilizados para el moderno despliegue gráfico de alta velocidad generado por vectores. Estas velocidades de bus mayores permitirían que el software de realidad virtual operara en forma más realista en las plataformas actuales y futuras basadas en el Pentium. 19
  • 20. 20 20
  • 21. 21 El ancho ampliado del bus de datos y la velocidad de ejecución mayor del Pentium, permiten que los despliegues de vídeo a pantalla completa operen a velocidades de barrido de 30 Hz o más; lo cual es comparable con la televisión comercial. Versiones más recientes del Pentium también incluían instrucciones adicionales llamadas extensiones multimedia o instrucciones MMX. Aunque Intel esperaba que las instrucciones MMX fueran ampliamente usadas, parece que pocas compañías de software las han utilizado. Posteriormente Intel liberó el esperado Pentium Overdrive (P24T) para sistemas anteriores basados en el 80486 que operan a velocidades de reloj de 63 o de 83 MHz. La versión de 63 MHz actualiza los anteriores sistemas 80486DX2 a 50 MHz; la versión de 83 MHz actualiza los sistemas 80486DX2 a 66MHz. El sistema actualizado a 83 MHz opera a una velocidad que oscila entre la del Pentium a 66 MHz y la del Pentium a 75 MHz. Si las tarjetas de vídeo basadas en el bus local VESA y los controladores de disco con memoria caché parecen ser demasiado caros para desecharlos, el Pentium Overdrive representa una ruta de actualización ideal del 80486 al Pentium. Probablemente la característica más ingeniosa del Pentium la constituyen sus dos procesadores independientes para enteros, gracias a los cuales puede ejecutar simultáneamente dos instrucciones independientes entre sí, lo que se conoce como tecnología superescalar. Esto permite al Pentium ejecutar frecuentemente dos instrucciones por cada ciclo de reloj. Otra característica que incrementa el rendimiento es una tecnología de predicción de saltos que acelera la ejecución de programas que incluyen ciclos. Al igual que el 80486, el Pentium también utiliza un coprocesador interno de punto flotante para manipular información de este tipo, aunque con una mejoría en velocidad de hasta cinco veces. 21
  • 22. 22 Estas características aseguran un éxito continuo para la familia de microprocesadores Intel. También permitirían que el Pentium sustituyera a algunas de las máquinas RISC (computadoras con conjunto reducido de instrucciones) que actualmente ejecutan una instrucción por ciclo de reloj. Algunos procesadores RISC recientes ejecutan más de una instrucción por ciclo de reloj, por medio de la tecnología superescalar. Recientemente, Motorola, Apple e IBM produjeron el PowerPC, un microprocesador RISC que tiene dos unidades de ejecución de enteros y una unidad de punto flotante. El PowerPC en verdad incrementa el rendimiento de la Apple Macintosh, pero en la actualidad sigue siendo lento para emular a la familia de microprocesadores Intel. Las pruebas realizadas indican que el software de emulación actual ejecuta las aplicaciones de DOS y Windows a una velocidad menor que un microprocesador 80486SX a 25 MHz. Actualmente existen seis millones de computadoras Apple Macintosh' y más de 260 millones de computadoras personales basadas en microprocesadores Intel. Según reportes de 1998, el 96% de todas las PCs corrían el sistema operativo Windows. Con la finalidad de comparar la velocidad de varios microprocesadores, Intel desarrolló el índice iCOMP. Éste es una mezcla de los índices SPEC92, ZD Bench y Power Meter. El iCOMP1 e utilizó para medir la velocidad de los microprocesadores Intel hasta el Pentium. La figura 1-1 muestra las velocida des relativas de la versión 80386DX a 25 MHz básica hasta la versión del Pentium a 233 MHz en la parte superior del espectro. 22
  • 23. 23 Desde la liberación del Pentium Pro y el Pentium II, Intel ha cambiado al uso del índice iCOMP2, que está escalado por un factor de 10 en comparación con el índice iCOMP1 (un microprocesador con un índice de 1000 usando el iCOMPI se tabula como uno de 100 en el iCOMP2). Otra diferencia son los marcadores utilizados para la puntuación. La figura 1-2 muestra el índice iCOMP2 que incluye al Pentium 11 a una velocidad de hasta 400 MHz. 23
  • 24. 24 PROCESADOR PENTIUM PRO. Anteriormente tenía el nombre de microprocesador P6. El Pentium Pro contiene 21 millones de transistores, tres unidades para enteros, así como una unidad de punto flotante para mejorar el rendimiento de la mayoría del software. Las velocidades básicas de reloj eran de 150 y 166 MHz en la emisión inicial, que estaba disponible desde fines de 1995. Además de la memoria caché interna de primer nivel (L1) de 16 KB (8 KB para datos y 8 KB para instrucciones), el procesador Pentium Pro también contiene una memoria caché de segundo nivel (L2) de 256 KB. Otro cambio importante es que utiliza 3 máquinas de ejecución, de modo que puede ejecutar tres instrucciones a la vez. Esto representa un cambio respecto del Pentium, el cual ejecuta dos instrucciones simultáneamente; El microprocesador Pentium Pro ha sido optimizado para ejecutar código de 32 bits de manera eficiente; por esta razón es usado con frecuencia con Windows NT en lugar de versiones normales de Windows 95. Intel lanzó el procesador Pentium Pro pensando en el mercado de servidores. Un cambio adicional más es que el Pentium Pro puede direccionar tanto un sistema de memoria de 4 GB, como uno de 64 GB. El Pentium Pro tiene un 24
  • 25. 25 bus de dirección de 36 bits cuando está configurado para un sistema de memoria de 64 GB. MICROPROCESADORES PENTIUM 11. Liberado en 1997, En lugar de ser un circuito integrado como las versiones anteriores del microprocesador, Intel ha colocado al Pentium II en una pequeña tarjeta de circuito impreso. La razón principal para este cambio es que la memoria caché L2 que se encontraba en la tarjeta principal del Pentium no era suficientemente rápida como para justificar un nuevo microprocesador. En el sistema Pentium, la memoria caché L2 trabaja a la velocidad del bus del sistema, a 60 o 66 MHz. La memoria caché L2 y el microprocesador se encuentran en una tarjeta de circuito impreso, llamada módulo Pentium II. Esta memoria caché L2 montada en la misma tarjeta que el procesador, trabaja a una velocidad de 133 MHz y almacena 512 KB de información. El microprocesador del módulo Pentium II es en realidad un Pentium Pro con extensiones MMX, el cual no tiene memoria caché L2 interna. En 1998, Intel cambió la velocidad del bus del Pentium II. Debido a que los microprocesadores Pentium II de 266 a 333 MHz usaban una velocidad externa de bus de 66 MHz, se creaba un cuello de botella, por lo que los microprocesadores Pentium II más recientes usan ahora una velocidad de bus de 100 MHz. Los microprocesadores Pentium II de 350, 400 y 450 MHz usan todos esta velocidad mayor de bus de memoria de 100 MHz. Este bus de memoria más rápido requiere el uso de una SDRAM (RAM dinámica sincrónica) de 8 nseg, en lugar de la SDRAM de 10 nseg que se usa en el bus de 66 MHz. A mediados de 1998, Intel anunció una nueva versión del Pentium II llamada Xeon, que fue específicamente diseñado para aplicaciones en estaciones de trabajo y servidores de alto rendimiento. 25
  • 26. 26 La diferencia principal entre el Pentium II y el Pentium II Xeon radica en que el Xeon está disponible con una memoria caché L1 de 32 KB y una caché L2 ya sea de 512 K, 1 o 2 MB. El Xeon opera con el conjunto de chips 440GX y está diseñado para trabajar con cuatro procesadores Xeon en el mismo sistema; característica que es similar al Pentium Pro. Este producto más reciente representa un cambio en la estrategia de Intel: Intel ahora produce una versión profesional y una versión para casa u oficina del microprocesador Pentium 11. EL FUTURO DE LOS MICROPROCESADORES. Se espera que el éxito de la familia Intel deberá continuar por bastantes años. Lo que puede ocurrir es una migración a la tecnología RISC, pero es más probable un cambio a una nueva tecnología, desarrollada conjuntamente por Intel y Hewlett-Packard. Esta nueva tecnología seguirá incorporando el conjunto de instrucciones CISC de la familia de microprocesadores 80X86, de tal forma que el software existente para el sistema sobrevivirá. La premisa básica detrás de esta tecnología es que muchos microprocesadores podrán comunicarse entre sí en forma directa, permitiendo el procesamiento paralelo sin ningún cambio al conjunto de instrucciones o al programa. Actualmente, la tecnología superescalar utiliza muchos microprocesadores, pero todos ellos comparten el mismo conjunto de registros. Esta nueva tecnología, contendrá muchos microprocesadores, cada uno con su propio conjunto de registros que está articulado con los registros de los demás microprocesadores. Esta tecnología debería ofrecer verdadero procesamiento paralelo sin la necesidad de escribir un programa especial. 26
  • 27. 27 Intel planea presentar una nueva arquitectura de microprocesadores con 64 bits de ancho y un bus de datos de 128 bits. Esta nueva arquitectura, cuyo nombre clave es Merced, es una iniciativa conjunta de Intel y Hewlett- Packard, llamada EPIC (Instrucciones explícitas de procesamiento paralelo). La arquitectura Merced permite un mayor paralelismo que las arquitecturas tradicionales, como las del Pentium Pro o Pentium II. Estos cambios incluyen 128 registros para enteros de propósito general, 128 registros de punto flotante, 64 registros de predicados y muchas unidades de ejecución que garanticen recursos suficientes para el software. La figura 1-3 muestra la estructura interna de los microprocesadores 80486, Pentium, Pentium Pro y Pentium 11. Cada vista de estos microprocesadores: la CPU (Unidad Central de Procesamiento), el coprocesador y la memoria caché. La ilustración muestra la complejidad y nivel de integración en cada versión del microprocesador. TAREA INVESTIGAR: Tabla comparativa PI, PII, PIII, PIV … Reseña evolución de la Mac … Power PC. Pelicula : Los piratas del Valle del silicio comentarios 1 Hoja. 27
  • 28. 28 1.2 EL SISTEMA PERSONAL DE CÓMPUTO BASADO EN MICROPROCESADORES Los costosos sistemas de cómputo tipo mainframe desarrollados a principio de los ochentas, no son tan poderosos como las computadoras actuales basadas en los microprocesadores 80486, Pentium, Pentium Pro o Pentium 11. De hecho, muchas compañías pequeñas están sustituyendo sus computadoras mainframe por sistemas basados en microprocesadores. Compañías tales como DEC (Digital Equipment Corporation) han dejado de producir mainframes para concentrar sus recursos en sistemas basados en microprocesadores. La figura 1-4 muestra el diagrama de bloques de una computadora personal. Este diagrama también es aplicable a cualquier sistema de cómputo, desde las primeras computadoras mainframe hasta los sistemas más recientes basados en microprocesadores. Tarea: Super computadora, minicomputadora, computadora, microcomputadora. 28
  • 29. 29 LA MEMORIA Y EL SISTEMA DE ENTRADA /SALIDA (E/S) La estructura de memoria de todos los sistemas Intel, desde el 80X86 al Pentium II, es similar. Desde las primeras computadoras personales basadas en el 8088, presentadas en 1981 por IBM, como a las versiones más poderosas y de alta velocidad basadas en el Pentium 11. La figura 1-5 muestra el mapa de memoria de un sistema personal de cómputo. Este mapa se aplica a cualquier computadora IBM o a cualquiera de los muchos clones compatibles con IBM que existen. El sistema de memoria está dividido en tres partes principales: El TPA (Área de Programas Temporales), el área de sistema y el XMS (Sistema de Memoria Extendida). El tipo de microprocesador en su computadora determina si existe un sistema de memoria extendida. Si la computadora se basa en los antiguos 8086 u 8088 (PC o XT ), tanto el TPA como el área de sistema existen, pero no hay un área de memoria extendida. Las PC y XT contienen: 640 KB de TPA y 384 KB de memoria de sistema para un total de 1 MB de memoria. El primer megabyte de memoria se conoce frecuentemente como sistema de memoria real o convencional, debido a que cada microprocesador Intel está diseñado para operar en esta área utilizando el modo de operación real. 29
  • 30. 30 Los sistemas de cómputo basados en el 80286 y hasta el Pentium II, no sólo contienen el TPA (640 KB) y un área de sistema (384 KB), sino que también contienen una memoria extendida. Estas máquinas a menudo son llamadas de clase AT. Las computadoras PS/1 y PS/2 producidas por IBM, son otras versiones del mismo diseño básico de memoria. La PS/2 se conoce como sistema de arquitectura de microcanal. BUSES Se tiene el bus PCI (Interconexión de Componentes Periféricos) en casi todos los sistemas del Pentium al Pentium 11: La memoria extendida contiene hasta 15 MB en la computadora basada en el 80286 y 80386SX, y hasta 4095 MB en los microprocesadores 803861)X, 80486 y Pentium, además del primer megabyte de memoria real o convencional. Observe que cada uno de estos buses es compatible con las versiones anteriores. Es decir, las tarjetas de interfaz de 8 bits funcionan con el bus ISA de 8 bits, ISA de 16 bits o EISA de 32 bits. De la misma forma, una tarjeta de interfaz de 16 bits funciona en el sistema ISA de 16 bits o EISA de 32 bits. Otra clase de bus encontrado en muchas computadoras basadas en el 80486 es el bus local VESA, bus VL. El bus local establece la interfaz del disco y el vídeo con el microprocesador al nivel del bus local, lo que permite que las interfaces de 32 bits operen a la misma velocidad de reloj que el microprocesador. Los estándares de bus ISA y EISA funcionan a sólo 8 MHz, lo que reduce el rendimiento de las interfaces de vídeo y de disco que usan dichos estándares. El bus PCI es ya sea un bus de 32 bits o de 64 que está específicamente diseñado para operar con los microprocesadores Pentium hasta Pentium 11 a una velocidad de bus de 33 MHz. En los sistemas más recientes, han aparecido dos buses nuevos. 30
  • 31. 31 • El primero en aparecer fue el USB (Bus Serial Universal). Este bus tiene por objeto conectar dispositivos periféricos como teclados, ratones, módems y tarjetas de sonido al microprocesador por medio de un enlace de datos serial y un par de cables trenzados. La idea principal es reducir el costo del sistema reduciendo del número de cables. Otra ventaja es que el sistema de sonido puede tener una fuente de alimentación independiente de la PC, lo que significa mucho menos ruido. Las velocidades de transferencia de datos a través del USB son de 10 Mbps (USB1) a 300 Mbps (USB2) • Un segundo bus es el AGP (Puerto Acelerado de Gráficos) para tarjetas de vídeo. El puerto acelerado de gráficos transfiere información entre la tarjeta de vídeo y el microprocesador a velocidades mayores (66 MHz con una trayectoria de datos de 64 bits, o 533 MB por segundo) Este cambio en el subsistema de vídeo permitió trabajar con los nuevos reproductores de DVD para PC. El TPA. El área de programas temporales almacena al sistema operativo DOS y otros programas que controlan al sistema de cómputo. El DOS (Sistema operativo de disco) controla la manera en que es organizada y controlada la memoria de disco, así como las funciones y el control de algunos dispositivos de E/S conectados al sistema. Windows también realiza estas funciones para aplicaciones basadas en Windows. La figura 1-6 muestra la organización del TPA en un sistema de cómputo. El BIOS (Sistema Básico de Entrada/Salida) BIOS del sistema es un conjunto de programas almacenados ya sea en una memoria de lectura (ROM) o en una memoria flash que controla muchos de los dispositivos de E/S conectados a su computadora. 31
  • 32. 32 Observe que la memoria flash es una EEPROM (Memoria de sólo lectura borrable eléctricamente) que el sistema borra por medio de impulsos eléctricos, mientras que una ROM es un dispositivo que debe ser programado en una máquina especial que se llama programador de EPROM (Memoria programable/borrable de sólo lectura) o en la fábrica al momento de elaborar la ROM. Las áreas de comunicaciones del BIOS y DOS contienen información temporal que los programas utilizan para acceder a los dispositivos de E/S y a las características internas de la computadora. 32
  • 33. 33 Note que el TPA contiene memoria de lectura/escritura (llamada RAM o memoria de acceso aleatorio), la cual puede cambiar durante la ejecución de un programa. El programa IO.SYS se carga en el TPA desde un disco cada vez que el sistema MSDOS o PCDOS inicia. El IO.SYS contiene programas que permiten al DOS utilizar el teclado, el despliegue de vídeo, la impresora y otros dispositivos de E/S que a menudo se encuentran en un sistema de cómputo. El programa IO.SYS enlaza el DOS con los programas almacenados en la memoria ROM del BIOS del sistema. Los controladores de dispositivos son programas que controlan dispositivos de E/S como el ratón, la memoria caché de disco, el escáner de mano, la memoria CD-ROM (Memoria de Sólo Lectura en Disco Compacto), el DVD (Disco Digital Versátil) o los dispositivos instalables, así como los programas. El tamaño del área de controladores y el número de éstos varían de una computadora a otra. Los controladores instalables son programas que controlan o manejan los dispositivos o programas que son agregados a la computadora. Se trata normalmente de archivos que poseen la extensión SYS (como MOUSE.SYS); en las versiones 3.2 y posteriores del DOS, los archivos tienen la extensión EXE (como EMM386.EXE). Windows utiliza un archivo llamado SYSTEM.INI para cargar sus controladores. Y contienen un registro que guarda la información del sistema y sus controladores. Usted puede examinar el registro por medio del programa REGEDIT. El programa COMMAND.COM (procesador de comandos) controla el funcionamiento de la computadora desde el teclado cuando ésta opera en modo DOS. El programa COMMAND.COM procesa los comandos del DOS conforme van siendo escritos desde el teclado. 33
  • 34. 34 El área libre del TPA almacena los programas de aplicación del DOS mientras son ejecutados. Estos programas de aplicación incluyen procesadores de texto, hojas electrónicas de cálculo, programas de diseño asistido por computadora y otros. El TPA también almacena los programas del tipo TSR (residente en memoria), los cuales permanecen en memoria en estado inactivo hasta que son llamados por una tecla de método abreviado u otro evento como una interrupción. EL ÁREA DEL SISTEMA. El área del sistema, aunque más pequeña que el TPA, es igual de importante. El área de sistema contiene programas ya sea en ROM o en memoria flash, así como áreas de RAM de lectura/escritura para almacenamiento de datos. La figura 1-7 muestra el área de sistema de una computadora típica. Manejo del Vídeo La primer área del espacio del sistema contiene memoria RAM para despliegue de vídeo, así como programas de control de vídeo en ROM o memoria flash. Esta área empieza en la localidad A0000H y se extiende hasta C7FFFH. Algunas tarjetas de vídeo más recientes reubican la memoria en áreas más altas del sistema de memoria, para su uso con el sistema operativo Windows. Las tarjetas de vídeo en algunas computadoras utilizan las localidades de memoria E180000OH y E2FFFFFFH con Windows para extender su memoria de vídeo. 34
  • 35. 35 El BIOS de vídeo, ubicado en una memoria ROM o flash, se encuentra en las localidades desde COOOOH hasta C7FFFH y contiene programas que controlan el despliegue de vídeo en el sistema operativo DOS. ROM para disco duro Si la computadora tiene conectado un disco duro, la tarjeta de interfaz podría contener una ROM y un BIOS de disco. Esta ROM, que frecuentemente se encuentra en los discos duros antiguos tipo MFM o RLL, contiene software de bajo nivel para establecer el formato del disco en la localidad C8005H. Área libre El área comprendida entre la localidad C8000H y la DFFFFH a menudo está libre. Ésta se utiliza para los sistemas de memoria expandida (EMS) en un sistema PC o XT, o para el sistema de memoria alta en un sistema AT. ROM del BASIC Las localidades de memoria de la EOOOOH a la EFFFFH contienen el lenguaje BASIC en ROM encontrado en los primeros sistemas personales de cómputo de IBM. En las computadoras más recientes esta área a menudo se encuentra abierta o libre. ROM del BIOS Finalmente, la ROM del BIOS del sistema se localiza en los últimos 64 KB del área de sistema (FOOOOH a FFFFFH). Esta ROM controla la operación de los dispositivos básicos de E/S conectados a la computadora; no controla la operación del sistema de vídeo, el cual tiene su propia ROM de BIOS en la localidad COOOOH. La primera parte del BIOS del sistema (F0000H a F7FFFH) a menudo contiene los programas que configuran la computadora; la segunda parte contiene los procedimientos que controlan al sistema básico de E/S. 35
  • 36. 36 Espacio de E/S. El espacio de E/S (entrada/salida) del sistema de cómputo se extiende desde el puerto de E/S OOOOH hasta el puerto FFFFH (una dirección de puerto de E/S es similar a una dirección de memoria, salvo que en vez de direccionar memoria, direcciona un dispositivo de E/S). Los dispositivos de E/S permiten al microprocesador comunicarse con el mundo exterior. El espacio de E/S permite a la computadora acceder a hasta 64 KB con dispositivos diferentes de 8 bits. En la mayoría de las computadoras más recientes hay un gran número de estas localidades disponibles para expansión. La figura 1-9 muestra el mapa de E/S que se encuentra en muchos sistemas personales de cómputo. El área de E/S contiene dos secciones principales: • El área por debajo de la localidad de E/S 0400H se considera reservada para los dispositivos del sistema • El área restante es espacio de E/S disponible para expansión de los sistemas más recientes y se extiende desde el puerto de E/S 0400H hasta el FFFFH. Algunas de las tarjetas madres de las computadoras más recientes también pueden utilizar direcciones arriba de la 0400H. Comúnmente, las direcciones de E/S entre la 0000H y la OOFFH direccionan componentes de la tarjeta madre de la computadora, mientras que las direcciones entre la 0100H y la 03FFH direccionan dispositivos ubicados en las tarjetas de expansión. 36
  • 37. 37 Hay varios dispositivos de E/S con control sobre el funcionamiento del sistema que no son diseccionados en forma automática. En su lugar, la ROM del BIOS del sistema direcciona a estos dispositivos básicos, cuya ubicación y función puede variar ligeramente de una computadora a otra. El acceso a la mayoría de los dispositivos de E/S deberá realizarse siempre a través de llamadas a funciones del DOS o del BIOS para mantener la compatibilidad de un sistema de cómputo con otro. El mapa de la figura 1-9 sirve de guía para ilustrar el espacio de E/S en el sistema. EL SISTEMA OPERATIVO DOS El sistema operativo es el programa que controla a la computadora. El sistema operativo Windows, que contiene al DOS, se encuentra instalado en la gran mayoría de las computadoras personales. El sistema operativo es almacenado en: un disco flexible, un disco duro, en un volumen de una LAN (red de área local), en una ROM Algunos sistemas que utilizan Windows CE como sistema operativo también lo almacenan en una ROM. Un ejemplo es la computadora personal de Tandy Corporation. Cada vez que la computadora se enciende o es inicializada, el sistema operativo es leído desde el disco o la LAN. Llamamos a esta operación inicialización del sistema. Una vez que el DOS ha sido leído e instalado en memoria, éste controla la operación de: • Sistema de cómputo, • De sus dispositivos de E/S y • De los programas de aplicación. La primera tarea del DOS después de ser cargado en memoria es usar el archivo CONFIG.SYS . Este archivo especifica varios controladores que son cargados en memoria, configurando la máquina para su operación bajo control del DOS. 37
  • 38. 38 Observe que este archivo no define la operación de Windows, la cual está definida en su propio archivo de registros. AUTOEXEC.BAT . Una vez que el sistema operativo concluye su configuración, de acuerdo con lo indicado por el archivo CONFIG.SYS, la computadora ejecuta el archivo AUTOEXEC.BAT (lote de ejecución automática). Si este archivo no existe, la computadora solicita la hora y fecha. El ejemplo 1-2 muestra un ejemplo de un archivo típico. El archivo AUTOEXEC.BAT contiene los comandos que se ejecutan al momento de encender la computadora; y son los mismos que se especifican desde el teclado, pero el archivo AUTOEXEC.BAT nos ahorra este trabajo cada vez que la computadora se enciende. Aun los sistemas que operan con Windows contienen a menudo un archivo AUTOEXEC.BAT para establecer diversas etiquetas y trayectorias para aplicaciones del DOS que a menudo siguen existiendo. EL MICROPROCESADOR Algunas veces llamado CPU (unidad central de procesamiento), el microprocesador es el elemento de control del sistema de cómputo. El microprocesador controla la memoria y la E/S a través de una serie de conexiones llamadas buses. 38
  • 39. 39 Los buses • Seleccionan un dispositivo de E/S o de memoria, • Transfieren información entre estos dispositivos y el microprocesador, • y controlan los sistemas de E/S y memoria. El microprocesador realiza tres tareas principales para el sistema de cómputo: 1) Transferencia de datos entre él mismo y la memoria o sistema de E/S; 2) Operaciones lógicas y aritméticas simples, y 3) Control de flujo del programa por medio de decisiones simples. El poder del microprocesador radica en su capacidad para ejecutar miles de millones de instrucciones por segundo provenientes de un programa o software (grupo de instrucciones) almacenado en el sistema de memoria. Este concepto de programa almacenado convirtió a las computadoras y a los microprocesa dores en dispositivos muy poderosos (recuerde que Babbage también quería utilizar el concepto de programa almacenado en su Máquina analítica). La tabla 1-3 muestra las operaciones lógicas y aritméticas ejecutadas por la familia de microprocesadores de Intel. Estas operaciones son básicas, pero a través de ellas es posible resolver problemas muy complejos. Los datos son procesados desde el sistema de memoria o los registros internos; los formatos son variables e incluyen un byte (8 bits), una palabra (16 bits) y una palabra doble (32 bits). Es importante considerar que solamente los microprocesadores del 80386 al Pentium II manejan directamente números de 8, 16 y 32 bits; los anteriores, del 8086 al 80286, manejaban directamente números de 8 y 16 bits. 39
  • 40. 40 A partir del 80486, el microprocesador contenía un coprocesador numérico que le permitía realizar operaciones aritméticas complejas utilizando la notación de punto flotante. El coprocesador numérico, que es similar al chip de una calculadora, constituía una componente adicional en las computadoras basadas en los microprocesadores 8086 al 80386. Otra característica que hace poderoso al microprocesador es su capacidad para tomar decisiones simples basadas en hechos numéricos. Por ejemplo, un microprocesador puede decidir si un número es cero, si es positivo, etc. Estas decisiones simples permiten al microprocesador modificar el flujo del programa, de manera que los programas parecen razonar por medio de estas decisiones simples. La tabla 1-4 muestra las capacidades de toma de decisiones de los microprocesadores de la familia Intel. BUSES. Un bus es un conjunto de conductores comunes que interconectan componentes en un sistema de cómputo. En el sistema de cómputo basado en el microprocesador, existen tres buses para esta transferencia de información: el bus de direcciones, el de datos y el de control. 40
  • 41. 41 La figura 1-10 muestra cómo estos buses interconectan varios componentes del sistema, como el microprocesador, la RAM (memoria de lectura/escritura), la ROM (memoria de sólo lectura) y algunos pocos dispositivos de E/S. El bus de direcciones solicita a la memoria una localidad de memoria o a los dispositivos de E/S una localidad de E/S. Si la E/S es direccionada, el bus de direcciones contiene una dirección de E/S de 16 bits entre OOOOH y FFFFH. La dirección de E/S de 16 bits, o número de puerto, selecciona uno de 64 K dispositivos diferentes de E/S. Si la memoria es direccionada, el bus de direcciones contiene una dirección de memoria, la cual varía en ancho de una versión del microprocesador a otra. El bus de datos transfiere información entre el microprocesador y su espacio de direccionamiento de memoria y E/S. Las transferencias de datos varían en tamaño, desde 8 hasta 64 bits. 41
  • 42. 42 Microproce Tamaño Ancho de los buses Localidades sador de de Mínima – Máxima Memori Datos y a Dirección 8086 1MB 16 20 0 0000H – F FFFFH. 8088 1MB 8 20 80186 1MB 16 20 80188 1MB 8 20 80286 16 MB 16 24 00 0000H - FF FFFFH. 80386SX 16 MB 16 24 80386DX 4 GB 32 32 0000 0000H - FFFF FFFFH. 80386EX 64 MB 16 26 00 0000H - FF FFFFH. 80486 4 GB 32 32 0000 0000H - FFFF FFFFH. Pentium 4 GB 64 32 Pentium 4 GB 32 32 OverDrive Pentium Pro 4 GB 64 32 Pentium Pro 64 GB 64 36 0 0000 0000H - F FFFF FFFFH Pentium II 4 GB 64 32 0000 0000H - FFFF FFFFH. Pentium II 64 GB 64 32 0 0000 0000H - F FFFF FFFFH La ventaja de un bus de datos más ancho es la velocidad de las aplicaciones que utilizan formatos de datos grandes. Por ejemplo, si la memoria almacena un número de 32 bits, el microprocesador 8088 requiere 4 operaciones de transferencia para concluir, ya que su bus de datos es de sólo 8 bits de ancho. El 80486 realiza la misma tarea en una sola transferencia, ya que su bus de datos es de 32 bits de ancho. En todos los miembros de la familia, la memoria está numerada por byte. 42
  • 43. 43 43
  • 44. 44 El bus de control contiene líneas que seleccionan ya sea a la memoria o la E/S y que ocasionan que éstas efectúen una operación de lectura o escritura. En la mayoría de los sistemas de cómputo existen 4 líneas del bus de control: • MRDC (control de lectura de memoria), • MWTC (control de escritura de memoria), • IORC (control de lectura de E/S) • IOWC (control de escritura de E/S). Observe que la raya encima de los caracteres indica que la señal de control está activa en cero (active-low) ; esto es, se encuentra activa cuando un cero lógico aparece en la línea de control. Practica Investigar: (forma física , señales, protocolos) El puerto serial El puerto Paralelo 44