Download Introducción a los Sistemas Industriales

Document related concepts
no text concepts found
Transcript
PAC- Performance-centered Adaptive Curriculum for Employment Needs
Programa ERASMUS: Acción Multilateral - 517742-LLP-1-2011-1-BG-ERASMUS-ECUE
MASTER DEGREE:
Industrial Systems Engineering
ASIGNATURA ISE3:
Electrónica para sistemas industriales (EIS)
MÓDULO 4:
Circuitos básicos VLSI en las arquitecturas de computadoras
TAREA 4-1:
Sistemas Microprocesador
Introducción a los Sistemas Industriales
Contenido
TAREA 4-1: Sistemas microprocesador ......................................................................... 3
1. INTRODUCCIÓN Y OBJETIVOS ................................................................................. 3
2. CONTENIDO..................................................................................................................... 3
2.1 Microprocesador vs Microcontrolador ............................................................. 3
2.2 Arquitectura de un microprocesador............................................................... 4
2.3 Relojes, núcleos y otros aspectos: Las especificaciones de la CPU .... 8
2.4 Conjunto de instrucciones ................................................................................. 12
2.5 Microarquitectura .................................................................................................. 13
2.6 Paralelismo .............................................................................................................. 15
2.7 Sistemas embebidos............................................................................................ 16
2.8 Importancia del avance de la tecnología ..................................................... 17
2.9 Concepto de familia ............................................................................................. 18
2.10 Generaciones ....................................................................................................... 19
3. CONCLUSIONES ........................................................................................................... 23
4. BIBLIOGRAFÍA Y/O REFERENCIAS ....................................................................... 23
5. ENLACES DE INTERÉS ............................................................................................... 23
Índice de figuras
Figura
Figura
Figura
Figura
Figura
Figura
Figura
Figura
Figura
Figura
Figura
Figura
Figura
1 Organización del microprocesador .................................................................................. 4
2 Organización del microprocesador .................................................................................. 5
3 Buses .................................................................................................................................................... 8
4 Rendimiento y precio ................................................................................................................ 9
5 Buses en el MP .......................................................................................................................... 11
6 Etapas en la ejecución de instrucciones microprocesador ......................... 13
7 Etapas de las instrucciones............................................................................................... 14
8 Entubado de instrucciones ................................................................................................. 15
9 Extensiones en el MP ............................................................................................................. 18
10 Arquitectura 80286 ............................................................................................................... 20
11 Arquitectura 80486 ............................................................................................................... 21
12 Arquitectura Pentium ............................................................................................................ 22
13 Arquitectura interna Itanium ........................................................................................... 23
SISTEMAS MICROPROCESADOR
2
Introducción a los Sistemas Industriales
TAREA 4-1: Sistemas microprocesador
1. INTRODUCCIÓN Y OBJETIVOS
Primeramente vemos la diferencia entre lo que es un
microcontrolador
y un microprocesador. Seguidamente estudiamos parámetros que caracterizan
al microprocesador y que le otorgan ciertas ventajas frente a otros. Estudiar
como mejorando la forma en que se ejecutan de las instrucciones podemos
conseguir mayores velocidades. Finalmente se ve la estructura y arquitectura
de los Intel.
2. CONTENIDO
2.1 Microprocesador vs Microcontrolador
La CPU es el cerebro del microcomputador y actúa bajo el control del
programa almacenado en la memoria. La CPU se ocupa básicamente de traer
las instrucciones del programa desde la memoria, interpretarlas y hacer que se
ejecuten. La CPU también incluye los circuitos para realizar operaciones
aritméticas y lógicas elementales con los datos binarios, en la denominada
Unidad Aritmética y Lógica (ALU).
En
un
microcomputador,
la
CPU
no
es
otra
cosa
que
el
microprocesador, el circuito integrado capaz de realizar las funciones antes
mencionadas. Un microcontrolador es un microcomputador realizado en un
circuito integrado (chip). Históricamente, los microcontroladores aparecieron
con
posterioridad
a
los
microprocesadores
y
han
tenido
evoluciones
independientes.
Los
microprocesadores
se
han
desarrollado
fundamentalmente
orientados al mercado de los ordenadores personales y las estaciones de
trabajo, donde se requiere una elevada potencia de cálculo, el manejo de gran
cantidad de memoria y una gran velocidad de procesamiento. Un parámetro
importante en los microprocesadores es el tamaño de sus registros internos
(8, 16, 32 ó 64 bits), que determina la cantidad de bits que pueden procesar
simultáneamente.
SISTEMAS MICROPROCESADOR
3
Introducción a los Sistemas Industriales
Los microcontroladores se han desarrollado para cubrir las más diversas
aplicaciones. Se usan en automoción, en equipos de comunicaciones y de
telefonía, en instrumentos electrónicos, en equipos de médicos e industriales
de todo tipo, en electrodomésticos, en juguetes, etc.
Los microcontroladores están concebidos fundamentalmente para ser
utilizados
en
aplicaciones
puntuales,
es
decir,
aplicaciones
donde
el
microcontrolador debe realizar un pequeño número de tareas, al menor costo
posible. En estas aplicaciones, el microcontrolador ejecuta un programa
almacenado permanentemente en su memoria, el cual trabaja con algunos
datos almacenados temporalmente e interactúa con el exterior a través de las
líneas de entrada y salida de que dispone. El microcontrolador es parte de la
aplicación (embedded controller). En aplicaciones de cierta envergadura se
utilizan varios microcontroladores, cada uno de los cuales se ocupa de un
pequeño grupo de tareas.
2.2 Arquitectura de un microprocesador
En la Figura 1 se ha representado el esquema simplificado de un
microprocesador.
Figura 1 Organización del microprocesador
SISTEMAS MICROPROCESADOR
4
Introducción a los Sistemas Industriales
Nota: La mayoría de los microprocesadores actuales cuentan con varios
núcleos, por lo que los elementos que aparecen en la Figura 1 estarían
replicados dos veces, cuatro, etc. Además existirían buses de comunicación
adicionales, tanto entre procesadores como con la memoria.
Otro esquema de la organización de un microprocesador se muestra en
la Figura 2:
Figura 2 Organización del microprocesador
LA UNIDAD DE CONTROL
Un microprocesador es un circuito integrado formado por millones de
componentes lógicos que es necesario coordinar para que cada uno realice su
trabajo en el momento que se espera, tarea que recae fundamentalmente en
la conocida como CU (Control Unit) o unidad de control.
Es tarea de la CU emitir las señales necesarias para que la siguiente
instrucción de un programa, cuya localización en memoria la indica un registro
específico al que suele llamarse “contador de programa” o “puntero de
instrucción”, sea transferida hasta el interior del microprocesador (fase de
captación). A continuación esa instrucción se analiza y se preparan
los
operandos que precise (fase de descodificación) para a continuación ejecutarla
(fase de ejecución) y generar los resultados que correspondan (fase de
escritura en memoria y registros).
A través de un bus interno la unidad de control se comunica con el
resto
de
elementos del
microprocesador,
estableciendo
SISTEMAS MICROPROCESADOR
5
por ejemplo
los
Introducción a los Sistemas Industriales
registros que han de utilizarse como operandos en un cálculo o fijando la
operación que debe llevar a cabo la ALU sobre dichos operandos.
LA UNIDAD ARITMÉTICO LÓGICA
Es quien realiza los cálculos del microprocesador, con capacidad de
realizar operaciones aritméticas pero también de tipo lógico. Las operaciones
aritmético lógicas que puede ejecutar por sí mismo un microprocesador
dependerán del diseño de la ALU. Los x86 hasta el 80386, por ejemplo,
contaban con una ALU que ofrecía únicamente operaciones con aritmética
entera y solamente se contemplaban las cuatro operaciones aritméticas
básicas. Las aplicaciones que requerían trabajar con coma flotante, y realizar
operaciones más complejas, tenían que hacerlo por software, lo cual era lento,
o bien requerir que el sistema contase con un coprocesador matemático.
En la actualidad los microprocesadores disponen de una ALU preparada
para operar con aritmética entera y de punto flotante, ejecutando por
hardware operaciones complejas que, de ser implementadas mediante software,
requerirían mucho más tiempo. Incluso se contempla la posibilidad de realizar
operaciones
de
tipo
SIMD,
en
las
que
un
mismo
cálculo
se
aplica
paralelamente a un grupo de datos independientes.
Nota: En documentación de fabricantes como Intel, AMD es fácil encontrar
acrónimos
del
precisamente,
tipo
al
MMX,
tipo
SSE,
de
SSE2
y
operaciones
similares
SIMD
que
que
hacen
permite
mención,
realizar
el
microprocesador.
BANCO DE REGISTROS
Cualquier información sobre la que vaya a actuar el microprocesador,
por ejemplo para realizar un cálculo, debe haberse transferido previamente al
interior de la CPU. Esto es así porque la ALU no puede operar directamente
sobre el contenido de la memoria del sistema, físicamente alojada en circuitos
integrados
independientes
y,
por
tanto,
externa
al
microprocesador.
En
consecuencia debe contar con una zona de almacenamiento interno, accesible
directamente para la ALU y la unidad de control. Esa pequeña área de
memoria
se
divide
en
porciones
de
cierto
tamaño,
llamadas
registros,
asignándole a cada porción un nombre concreto.
Tradicionalmente el banco de registros se ha dividido en dos grupos:
los registros de propósito general y los que tienen una función específica. Al
primer grupo pertenecen aquellos que el programador puede usar libremente
SISTEMAS MICROPROCESADOR
6
Introducción a los Sistemas Industriales
para almacenar temporalmente datos, mientras que los segundos se utilizan de
manera indirecta. Los registros con función específica más usuales son:
•
Contador de programa: contiene la dirección de la memoria donde está
alojada la siguiente instrucción a ejecutar.
•
Puntero de pila: en ocasiones es necesario guardar temporalmente el
contador de programa, por ejemplo al saltar a una subrutina o cuando
el microprocesador debe atender una interrupción externa, con la
intención de recuperarlo posteriormente.
•
Acumulador: puede ser utilizado como registro de propósito general.
•
Estado: mantiene una serie de bits indicando el estado en que se
encuentra el microprocesador.
•
Otros registros.
En un principio los microprocesadores contaban sólo con registros de 8
ó 16 bits pensados para operación aritmética entera, pero en la actualidad el
tamaño ha crecido hasta los 32, 64 bits e incluso 80 bits, contemplándose
tanto la aritmética entera como la de punto flotante.
Nota: El programador en ensamblador debe conocer con precisión el banco de
registros del microprocesador con el que va a trabajar, dado que es uno de
los recursos básicos con los que cuenta. La mayoría de las operaciones:
carga, almacenamiento, cálculo e incluso salto, implicarán siempre la utilización
de uno o más registros.
BUSES
Bus de datos: es bidireccional, permitiendo tanto enviar datos desde el
microprocesador hacia el exterior como a la inversa.
Bus de direcciones: mediante este bus el microprocesador selecciona la
posición de memoria en la que va a escribir o la que se quiere leer.
Bus de control: sirve para que el microprocesador comunique al
sistema si la dirección que está colocando en el bus de direcciones ha de ser
enviada a la memoria o a un dispositivo E/S o si lo que quiere es efectuar
una lectura o una escritura.
SISTEMAS MICROPROCESADOR
7
Introducción a los Sistemas Industriales
Figura 3 Buses
2.3 Relojes, núcleos y otros aspectos: Las especificaciones de la CPU
La mayoría de los microprocesadores se caracterizan por las siguientes
especificaciones:
•
•
•
•
•
•
•
•
•
•
Intel: obviamente, es el nombre del fabricante. Otros: AMD,…
Core 2: hace referencia al nombre del modelo al cual pertenece el
procesador dentro de la familia de productos de Intel. De hecho, se
le conoce como “familia del microprocesador”.
Duo: indica que la CPU tiene dos núcleos.
E675O: es el nombre del procesador. Puede ser otro.
2.66 GHz: indica la velocidad del reloj del procesador.
LGA775: el zócalo de la placa base donde se colocará el procesador.
1333MHz FSB: hace referencia a la velocidad del bus.
4MB L2 caché: es el tamaño de la memoria caché L2 de la CPU.
Conroe: es el tipo de núcleo que utiliza procesador.
65nm: es el proceso de fabricación de la CPU.
FAMILIA DEL PROCESADOR
El nombre de la familia del procesador es un término que engloba a
todos los procesadores que utilizan el mismo tipo de arquitectura. Por ejemplo,
los procesadores Core 2 de Intel utilizan la segunda generación de la
arquitectura Core, que incluye propiedades como la caché inteligente
avanzada (Advanced. Smart Cache), el acceso a memoria inteligente (Smart
Memory Access) y la capacidad de utilizar la energía de forma inteligente
(Intelligent Power Capability). Hablando de una forma genérica, estas familias
se podrían clasificar según su nivel de rendimiento. Así, tendríamos niveles de
rendimiento bajo, medio y alto.
SISTEMAS MICROPROCESADOR
8
Introducción a los Sistemas Industriales
Figura 4 Rendimiento y precio
NÚCLEO DE LOS PROCESADORES
El núcleo del procesador (o para abreviar simplemente "núcleo") hace
referencia a la verdadera unidad de proceso que se encarga de realizar
todas las tareas de la CPU. Hasta hace bien poco, los términos núcleo y
procesador eran equivalentes porque todas las CPU contienen un núcleo. Sin
embargo, a principios del año 2OO5 Intel lo cambió todo cuando presentó el
Pentium D y el Pentium Extreme Edition. Estos dos procesadores tenían dos
núcleos dentro de un mismo chip. Ahora, nos referimos a las CPU más
antiguas como single core y a los nuevos procesadores como dual core.
EL NOMBRE DEL PROCESADOR
A cada CPU se le asigna un nombre (también conocido como el número del
modelo). Este nombre nos dice mucho sobre las propiedades del procesador.
Por ejemplo:
SISTEMAS MICROPROCESADOR
9
Introducción a los Sistemas Industriales
LA VELOCIDAD DEL RELOJ DEL PROCESADOR
La velocidad del reloj del procesador (o simplemente velocidad del
procesador) indica la velocidad con la que se ejecutan los procesos. Dentro
de cada tic-tac del reloj (también conocido como "ciclo del reloj") el
procesador efectúa
una operación. Por lo tanto, cuantos más ciclos por
segundo haya, tanto más rápido será el procesador y mejor rendimiento
tendrá el ordenador. En la actualidad la velocidad del reloj se mide en
gigahercios (GHz), donde 1 GHz representa mil millones de ciclos por segundo.
La velocidad del procesador es a menudo un múltiplo de la velocidad
del bus externo: por ejemplo, un chip de 500 MHz instalado en una placa
base 100 MHz funcionará a 5 veces la velocidad del bus.
Sin embargo, es importante tener en cuenta que una CPU de 1,8 GHz
no es necesariamente dos veces más rápido que una CPU de 900 MHz. Esto
se debe a que diferentes procesadores a menudo utilizan diferentes
arquitecturas. Por ejemplo, puede haber algún procesador puede requiera más
ciclos de reloj para completar una instrucción de multiplicación que otro
procesador. Una CPU de 1,8 GHz puede completar una instrucción de
multiplicación en 4 ciclos, mientras que una CPU de 900 MHz toma 7 ciclos,
por lo tanto, el procesador de 1,8 GHz será de dos veces más rápido. Pero
puede ocurrir la situación inversa, que el procesador de 1,8 GHz tome más de
dos ciclos para llevar a cabo la instrucción, será por tanto dos veces más
lento que el procesador de 900 MHz.
Otros factores, tales como la velocidad de un bus de ordenador, el
tamaño de la caché, la velocidad de la memoria RAM, y la velocidad del disco
duro también contribuyen al rendimiento global de la máquina. Por lo tanto,
mientras que la velocidad de reloj del procesador es un indicador importante
de lo rápido que un ordenador es, no es el único factor que importa.
MILLONES DE INSTRUCCIONES POR SEGUNDO (MIPS)
La velocidad de reloj no se refiere directamente a la velocidad a la que
la CPU ejecuta instrucciones. Los primeros microprocesadores requerían un
máximo de 10 ciclos de reloj para completar una sola instrucción. Los
microprocesadores modernos, llamados de "arquitectura superescalar" tienen
doble o múltiples "tuberías" de manera que más de una instrucción se puede
ejecutar a la vez. Por lo tanto, una medida más precisa de la velocidad del
procesador es MIPS (millones de instrucciones por segundo), aunque la número
de instrucciones reales del procesador rara vez alcanza el máximo teórico.
SISTEMAS MICROPROCESADOR
10
Introducción a los Sistemas Industriales
LA VELOCIDAD DEL BUS
PROCESADOR
El bus del sistema es la vía de
transmisión de datos de la placa
madre que conecta el procesador y
northbridge. Es la vía de datos más
importante
del ordenador porque
todos deberán viajar por ella en un
momento determinado.
En las
máquinas Intel, al bus del sistema
se le conoce
como "bus de la
parte frontal" (FSB), mientras que
en las máquinas AMD se le conoce
como "bus de hípertransporte" (HT).
Como
ya
se
habrá
imaginado, cuanto más rápido se
puedan transferir los datos, mucho
más rápido será el ordenador. Es
decir, que un procesador que
trabaje con un sistema que tenga
una velocidad de bus muy alta
dará mejor rendimiento que el Figura 5 Buses en el MP
mismo
procesador
en
otro
ordenador con una velocidad de bus más baja (asumiendo que el resto de
propiedades que afectan al rendimiento del ordenador sean idénticas). La
velocidad del bus se mide en megahercios (MHz) o, lo que es lo mismo, en
millones de ciclos por segundo. En la actualidad, las velocidades del bus de
datos oscilan entre los 8OO MHz y los 1.333 MHz para los FSB de Intel y
entre los 8OO
MHz y los 1.OOO MHz para los bus HT de AMD.
TAMAÑO DE LA MEMORIA CACHÉ L2 DEL PROCESADOR
Una de las tareas principales de la CPU es enviar y recibir datos de
las zonas de almacenamiento (discos duros y memoria) del sistema. Si
vamos a recuperar tan sólo un dato de cualquiera de estos dispositivos, el
tiempo que empleará el procesador en la tarea será despreciable. Sin
embargo, los procesadores están trabajando constantemente con montañas
de datos. En este caso, si estuviésemos solicitando constantemente datos
al disco duro o a la memoria del sistema, el rendimiento del ordenador
sería muy bajo.
SISTEMAS MICROPROCESADOR
11
Introducción a los Sistemas Industriales
El procesador cuenta con un par de áreas reservadas en el chip de la
memoria que utiliza para guardar los datos a los que se accede con cierta
frecuencia. A estas áreas se la llama "cachés de memoria" y todas las CPU
tienen por lo menos dos: una memoria caché L1 y otra L2. La primera es muy
pequeña y apenas afecta al rendimiento de la CPU. Así que podemos
ignorarla. La importante es la memoria caché L2 que sí influye en el
rendimiento del sistema. Por regla general (y dando por hecho que el resto
de propiedades de la CPU son exactamente iguales) cuanto mayor sea el
tamaño de la caché L2, mejor será el rendimiento del procesador.
El tamaño de la memoria caché L2 se mide en kilobytes (KB) o, más
frecuentemente en, megabytes (MB). El tamaño de las memorias caché L2
delos procesadores Intel que podemos encontrar en la actualidad en el
mercado está entre los 512 KB y los 8 MB, mientras que la memoria caché L2
de los procesadores AMD va desde los 128 KB a los 2 MB.
2.4 Conjunto de instrucciones
Un conjunto
de
instrucciones,
o
la
arquitectura
del
conjunto
de
instrucciones (ISA), es la parte de la arquitectura de computadores que se
encarga de la programación, se incluyen los tipos de datos, instrucciones,
registros,
modos
de
direccionamiento,
arquitectura
de
la
memoria,
interrupciones y manejo de excepciones y los puertos externos I/O.
La arquitectura del conjunto de instrucciones se distingue de la
microarquitectura, que es el conjunto de técnicas de diseño de procesadores
utilizadas para implementar el conjunto de instrucciones. Ordenadores con
diferentes microarquitecturas pueden compartir un conjunto de instrucciones
comunes.
Por
ejemplo,
el
procesador
Intel
Pentium
y
el
AMD
Athlon
implementan un conjunto de instrucciones idénticos de la x86, pero tienen
diferentes diseños internos.
CLASIFICACIÓN DE LOS CONJUNTOS DE INSTRUCCIONES
Los
microprocesadores
CISC
fueron
los
primeros
en
aparecer,
caracterizándose por tener un conjunto de instrucciones que fue ganando en
complejidad a medida que la escala de integración lo permitía. Los programas
escritos para microprocesadores CISC resultan compactos, ya que existen
instrucciones capaces de efectuar operaciones relativamente complejas. Dichas
instrucciones, sin embargo tardan más en ejecutarse que otras más sencillas.
SISTEMAS MICROPROCESADOR
12
Introducción a los Sistemas Industriales
El diseño RISC surgió con el objetivo de conseguir microprocesadores
capaces de ejecutar un mayor número de instrucciones por segundo. Para ello
se decidió que el microprocesador implementase un conjunto reducido de
instrucciones, todas ellas de una longitud similar y fácil de ejecutar. Durante
unos años los procesadores RISC ofrecieron un rendimiento muy superior a los
diseños CISC, ya que el aumento en las frecuencias de reloj y las técnicas de
paralelización favorecían en mayor medida a la arquitectura RISC.
En la actualidad no existen diseños RISC o CISC puros, sino que se
tiende a utilizar lo mejor de ambos mundos. Los microprocesadores x86 de los
últimos años, por ejemplo, cuentan con un conjunto de instrucciones CISC,
muy amplio y con operaciones complejas, pero la unidad de ejecución es de
tipo RISC, existiendo una etapa intermedia en la que las instrucciones son
divididas en microoperaciones más simples.
2.5 Microarquitectura
La microarquitectura, también llamada como organización de la
computadora, es la manera que un conjunto de instrucciones (ISA) es
implementada por el procesador. Un ISA puede ser implementado con
diferentes microarquitecturas. Las implementaciones pueden variar debido a
diferentes objetivos de un diseño dado o debido a los cambios en la
tecnología. La arquitectura de la computadora es la combinación del diseño
de la microarquitectura y del conjunto de instrucciones.
CICLO DE INSTRUCCIONES: ETAPAS
La unidad de búsqueda (Fetch)
obtiene la siguiente instrucción de la
memoria caché.
La unidad decodificadora (Decode
Unit) determina el tipo de instrucción.
La instrucción y el dato son enviados
a la unidad de ejecución (Execution
Unit).
Se almacenan los datos en la unidad
de escritura (Write unit).
Figura 6 Etapas en la ejecución de instrucciones
microprocesador
SISTEMAS MICROPROCESADOR
13
Introducción a los Sistemas Industriales
Ejemplo de procesamiento secuencial de una instrucción:
Figura 7 Etapas de las instrucciones
Requiere una cantidad de hardware considerable. En los procesos
sencillos solo una parte del hardware se activa en un determinado momento:
la que se necesita para resolver la microoperación. Por todo lo anterior este
método es poco eficiente.
ENTUBADO DE INSTRUCCIONES
Es una técnica que permite superponer en el tiempo la ejecución de
varias instrucciones a la vez. No requiere hardware adicional. Sólo se necesita
lograr que todas las partes del procesador trabajen a la vez.
SISTEMAS MICROPROCESADOR
14
Introducción a los Sistemas Industriales
Figura 8 Entubado de instrucciones
•
•
•
Cada operación se descompone en partes.
Se ejecutan en un mismo momento diferentes partes de diferentes
operaciones.
Cada parte se denomina etapa.
2.6 Paralelismo
El paralelismo es un paradigma de la programación concurrente que
consiste en subdividir el conjunto de datos de entrada a un programa, de
manera que a cada procesador le corresponda un subconjunto de esos datos.
Cada procesador efectuará la misma secuencia de operaciones que los otros
procesadores sobre su subconjunto de datos asignado. En resumen: se
distribuyen los datos y se replican las tareas.
Idealmente, esta ejecución simultánea de operaciones, resulta en una
aceleración neta global del cómputo. El paralelismo de datos es un paradigma
suficientemente adecuado para operaciones sobre vectores y matrices, dado
que muchas de ellas consisten en aplicar la misma operación sobre cada uno
de sus elementos.
La computación paralela es inevitable:
•
•
•
Demanda de las aplicaciones: Insaciable necesidad de potencia de
cálculo.
o De propósito general: vídeo, gráficos, CAD, bases de datos…
o Científica: Biología, Química, Física,….
Tendencias tecnológicas:
o El número de transistores en un CI crece rápidamente.
o Se esperan crecimientos lentos de la frecuencia de reloj.
Tendencias en arquitectura:
SISTEMAS MICROPROCESADOR
15
Introducción a los Sistemas Industriales
•
•
o Límites del paralelismo a nivel de instrucción (superescalares).
o Paralelismo a nivel de tareas la vía más adecuada.
Tendencias actuales:
o Los microprocesadores actuales tienen soporte para multiproceso.
o Aparición de estaciones de trabajo multiprocesador: Sun, SGI,
HP,…
o Los microprocesadores del mañana serán multiproceso
Tendencia en las aplicaciones
o Realimentación entre la demanda de potencia y la complejidad
de las aplicaciones.
o Amplio rango de prestaciones demandadas.
o Progresiva potencia con coste progresivo.
2.7 Sistemas embebidos
Un sistema embebido (anglicismo embedded) o empotrado es un sistema de
computación diseñado para realizar una o algunas pocas funciones dedicadas
frecuentemente en un sistema de computación en tiempo real. Al contrario de
lo que ocurre con los ordenadores de propósito general (como por ejemplo
una computadora personal o PC) que están diseñados para cubrir un amplio
rango de necesidades, los sistemas embebidos se diseñan para cubrir
necesidades específicas. En un sistema embebido la mayoría de los
componentes se encuentran incluidos en la placa base (la tarjeta de vídeo,
audio, módem, etc.) y muchas veces los dispositivos resultantes no tienen el
aspecto de lo que se suele asociar a una computadora. Algunos ejemplos de
sistemas embebidos podrían ser dispositivos como un taxímetro, un sistema de
control de acceso, la electrónica que controla una máquina expendedora o el
sistema de control de una fotocopiadora entre otras múltiples aplicaciones.
Por lo general los sistemas embebidos se pueden programar directamente en
el lenguaje ensamblador del microcontrolador o microprocesador incorporado
sobre el mismo, o también, utilizando los compiladores específicos, pueden
utilizarse lenguajes como C o C++; en algunos casos, cuando el tiempo de
respuesta de la aplicación no es un factor crítico, también pueden usarse
lenguajes interpretados como JAVA.
Puesto que los sistemas embebidos se pueden fabricar por decenas de
millares o por millones de unidades, una de las principales preocupaciones es
reducir los costes. Los sistemas embebidos suelen usar un procesador
relativamente pequeño y una memoria pequeña para ello. Los primeros equipos
embebidos que se desarrollaron fueron elaborados por IBM en los años 1980.
Los programas de sistemas embebidos se enfrentan normalmente a tareas de
procesamiento en tiempo real.
SISTEMAS MICROPROCESADOR
16
Introducción a los Sistemas Industriales
2.8 Importancia del avance de la tecnología
Entre los primeros microprocesadores hasta los que se fabrican hoy en día la
diferencia es abismal. En los primeros se trabajaba a una frecuencia de
100KHz con palabras de 4 bits y la memoria alcanzaba una capacidad de 640
bytes. Los actuales tienen frecuencias que alcanzan varios GHz, trabajan con
palabras de 64 bits y manejan memorias de decenas de Gbytes.
LEY DE MOORE
Esta ley establece que el número de
transistores que hay en un circuito integrado
se duplica aproximadamente cada dieciocho
meses. Esto supone que cada año y medio
se duplica el número de elementos que
contienen los microprocesadores, lo que
significa un tremendo aumento de la
potencia y del rendimiento.
LIMITACIONES EN EL AVANCE DE LA TECNOLOGÍA
Entro otros destacan tres parámetros que limitan el avance de la
tecnología:
o
o
La temperatura: La miniaturización y la frecuencia actual de los
procesadores provoca que se genere mucho calor. Hasta el momento, la
solución práctica es el uso de sistemas de refrigeración.
El espacio y la velocidad: Al aumentar el número de transistores, aumenta
la superficie del procesador y al aumentar la escala de integración, los
transistores están más juntos. Como consecuencia de lo anterior aparecen
los siguientes problemas:
SISTEMAS MICROPROCESADOR
17
Introducción a los Sistemas Industriales

Fenómenos de inversión: al comunicarse transistores relativamente
lejanos a frecuencias elevadas, puede ocurrir que el transistor
emisor envíe un nivel lógico y el transistor receptor lo reciba
invertido.

Electromigración: debido a la miniaturización de los transistores los
materiales que los componen quedan más cerca el uno del otro y
los electrones pueden migrar indebidamente entre los propios
materiales o capas próximas.
2.9 Concepto de familia
Una familia de microprocesadores es un conjunto de modelos ligados
por algunas características comunes.
FAMILIA x86
Los procesadores de esta familia son del fabricante Intel, y su arquitectura
responde al nombre IA-32. El núcleo de esta arquitectura es común para todos
los microprocesadores y cada modelo añade extensiones y recursos a dicho
núcleo.
Figura 9 Extensiones en el MP
El juego de instrucciones de esta arquitectura es tipo CISC siendo las
instrucciones numerosas complejas y largas, necesitando múltiples ciclos de
reloj para su ejecución.
La compatibilidad ascendente en el software es la clave del éxito
comercial de la familia x86 y consiste en que los nuevos modelos de
SISTEMAS MICROPROCESADOR
18
Introducción a los Sistemas Industriales
microprocesadores pueden ejecutar el software desarrollado para los modelos
previos. Se cambia el hardware, pero se mantiene el software.
Un Pentium III puede ejecutar programas desarrollados para el Pentium II, el
486 y el 386.
La segunda característica consiste en el aumento del número de
transistores y la incorporación de los recursos más avanzados del momento
en cada nuevo modelo.
Intel incorpora nuevas características a sus nuevos modelos, pero
mantiene la compatibilidad con el software anterior.
2.10 Generaciones
La familia x86 ha ido creciendo a través de seis generaciones y dentro
de cada una, hay diferentes modelos de microprocesadores con diversas
cualidades. Cada modelo de esta familia está orientado a cubrir un sector de
mercado donde el factor del precio, energía o de otras prestaciones sea
sustancial, pero manteniendo siempre la compatibilidad entre todos ellos.
PRIMERA GENERACIÓN 8086
En 1978 aparecen los microprocesadores 8086 y 8088, que se
desarrollaron a partir de un procesador anterior, el 8080, que fue un
microprocesador de 8 bits de gran éxito. El 8086 tiene un bus de 16 bits,
29.000 transistores, un rendimiento 10 veces mayor que el 8080 y lo utilizó
IBM para construir el primer PC.
La filosofía seguida por la familia de microprocesadores 8086 es la de
permitir la compatibilidad y la creación de sistemas informáticos integrados,
para lo cual, se diseñaron diversos coprocesadores:
o 8089 coprocesador de E/S.
SISTEMAS MICROPROCESADOR
19
Introducción a los Sistemas Industriales
o
8087 coprocesador matemático
de coma flotante.
SEGUNDA GENERACIÓN 80286
En 1982,
nuevo impulso
funcionamiento
completamente
o
o
con la aparición de los primeros 80286, Intel trató de dar un
a la industria de los microprocesadores. Admitían el
en modo multitarea y poseían dos modos de funcionamiento
diferenciados:
Modo Real: Se comporta igual que un 8086 pero con mayor velocidad.
Nada más ser conectado a la alimentación, el microprocesador
arranca en este modo.
Modo Protegido: Funciona con capacidad de proceso multitarea y
memoria virtual. Este modo de funcionamiento es propio del 286 y
funcionando en este modo se pierde la compatibilidad con los
procesadores anteriores.
Figura 10 Arquitectura 80286
SISTEMAS MICROPROCESADOR
20
Introducción a los Sistemas Industriales
TERCERA GENERACIÓN 80386
El 80386 fue el primer procesador de 32 bits del mundo y ha llegado a
ser un estándar en la industria. En lugar de los registros de 16 bits de los
microprocesadores anteriores, dispone de registros de 32 bits en la
arquitectura, que sirven para almacenar operandos y direcciones.
CUARTA GENERACIÓN 80486
El 80486 es una versión mejorada del 80386 que además tiene
integrada una memoria caché de 8 Kbyte y un coprocesador matemático
40382, con lo que se consigue que casi la mitad de las instrucciones del
486 se ejecuten en un periodo de reloj, en vez de 1os dos periodos que
requiere el 386.
Figura 11 Arquitectura 80486
QUINTA GENERACIÓN PENTIUM
En 1992 Intel anunció que la quinta generación de su línea de
procesadores compatibles llevaría el nombre de Pentium en yez de 586 u
80586. De este modo, Intel pudo diferenciar el nombre de sus procesadores
de los de sus competidores.
•
Las características principales de los primeros modelos
Velocidades iniciales de 60 y 66 MHz.
SISTEMAS MICROPROCESADOR
21
de Pentium son:
Introducción a los Sistemas Industriales
•
•
•
•
•
•
•
3.100.000 transistores.
Caché interna de 8 KB para datos y 8 KB para instrucciones.
Permite la ejecución de dos instrucciones simultáneamente.
Mejora el rendimiento respecto a los microprocesadores anteriores.
El chip se empaqueta en formato PGA («Pin Grid Array») de 273
pines.
Las principales aportaciones del Pentium son:
Supersegmentación con 14 etapas.
Arquitectura superescalar. Dos cauces de datos, por lo que en un
ciclo se ejecutan más de una instrucción.
Figura 12 Arquitectura Pentium
SEXTA GENERACIÓN ITANIUM
Es el primer procesador con arquitectura completa de 64 bits y surge
de la colaboración de Intel y HP. Es compatible con la familia x86, pero va a
ejecutar
más lentamente
los programas de 32 bits. Su arquitectura se
denomina EPIC (Explicity Parallel Instruction Computing o <<Proceso
de Instrucciones Explícitamente Paralelo»), que le permite ejecutar hasta
seis instrucciones en paralelo por ciclo de reloj, siendo el compilador quien
decide cuáles son las instrucciones que se pueden ejecutar en paralelo sin
conflictos. Esto es posible gracias a la duplicidad de unidades funcionales
dentro del mismo procesador, ya que en el Itanium hay seis unidades de
proceso, dos de coma flotante y cuatro de enteros.
SISTEMAS MICROPROCESADOR
22
Introducción a los Sistemas Industriales
Figura 13 Arquitectura interna Itanium
3. CONCLUSIONES
La evolución de los microprocesadores está ligada a las necesidades
que las personas necesitan en cada momento, así aparecieron en primer lugar
los microprocesadores de uso general y más tarde siendo necesario
microprocesadores más simples pero que sólo realizaran unas pocas
aplicaciones aparecieron los microcontroladores. Con el desarrollo de nuevos
programas y el peso que estos tienen en la sociedad actual para el diseño,
control,… se requieren microprocesadores que tengan una velocidad elevada,
surgen así nuevos diseños que hacen que las instrucciones se ejecuten a
mayor velocidad, paralelismo, microestructuras,…
4. BIBLIOGRAFÍA Y/O REFERENCIAS
[1]
Fernando
Valdés
Pérez,
Ramón
Pallás
Areny.
Microcontroladores:
Fundamentos y aplicaciones PIC. Ed. Marcombo 2007
[2] José María
Martínez.
Angulo Usategui, José Luis Gutiérrez Temiño, Ignacio Angulo
Arquitectura
de
Microprocesadores:
Los
Pentium
a
fondo.
Ed.
Thomson 2003
[3] John Freer. Diseño de Sistemas con Microprocesadores Avanzados. Ed.
Anaya 1989
5. ENLACES DE INTERÉS
SISTEMAS MICROPROCESADOR
23