Tipos de procesadores.
En los ultimos años
se distinguen dos grandes tendencias en la construcción de procesadores.
Se diferencian esencialmente en las características de su repertorio
de instrucciones.
• Los procesadores CISC (Complex Instruction Set Computer) tienen un repertorio
con un número de instrucciones alto (200-300); estas instrucciones además
son más complejas que las de RISC, con lo que la circuitería necesaria
para decodificación y secuenciación también aumenta, y
la velocidad del proceso disminuye. Como ventaja, tenemos que se necesitan menos
insttrucciones para ejecutar una tarea. Además, el formato de las instrucciones
es bastante variable (es decir, hay bastantes formatos). Además, el diseño
hace que el procesador tenga que realizar constantes accesos a memoria.
• Los procesadores RISC (Reduced Instruction Set Computer) tienen características
opuestas a los CISC. Su juego de instrucciones es más reducido (menos
de 128), y las instrucciones son más sencillas (con lo que se necesitarán
más instrucciones para ejecutar una tarea). El formato de instrucciones
es fijo (o serán pocos formatos), con lo que el control del hardware
es más sencillo y se facilita la colocación de las instrucciones
en la memoria, lo que implica que los accesos a la memoria se aceleren. Por
otra parte, estos accesos a memoria son menos frecuentes ya que el procesador
posee un mayor número de registros. Estos procesadores son los que están
presentes en las estaciones de trabajo. Como ejemplos podemos citar los procesadores
ALPHA de Digital Equipment, y los SuperSPARC y MicroSPARC de Sun Microsystems
y Texas Instruments.
Relacionada con los conceptos RISC y CISC está la técnica de segmentación
("pipeline"); esta técnica consiste en dividir la ejecución
de la instrucción en bloques independientes que se ejecutan en paralelo.
Es más eficiente para los procesadores RISC, aunque también se
implementa en CISC. Para incrementar el rendimiento del procesador se debe bucar
instrucciones ejecutables en paralelo. El sistema de carga de instrucciones
debe analizar la secuencia de instruciones que entran al procesador y buscar
instrucciones ejecutables en paralelo asi como diseñar un control que
tenga en cuenta posibles dependencias de datos entre las instrucciones a ejecutar
en paralelo. Esto hace que el hardware empiece a complicarse
Otro tipo de procesadores emplean un conjunto de instrucciones diseñadas
"ad hoc" para explotar el paralelismo del hardware que disponen en
su interior, son los procesadores VLIW ( Very Long Instruction Word). Una instruccion
VLIW es empaquetada en una palabra muy larga por el compilador, incluyendo varias
(de 4 a 8) instrucciones elementales. Esta palabra larga se corresponde con
el formato adecuado para controlar en paralelo todas las unidades funcionales.
De tal manera que toda la instruccion larga equivale a 1-8 instrucciones elementales
que se ejecutan simultaneamente. En este tipo de procesadores la complicación
de buscar el paralelismo entre instrucciones y sus dependencias se pasan al
compilador. El inconveniente es que el compilador se hace mas complejo.
Modo de operación
de un microprocesador.
El procesador en términos funcionales es una caja negra que recibe como
entrada instrucciones y datos, produciendo como salida nuevos datos.
Los datos son elaborados en su interior de acuerdo a un algoritmo expresado
mediante las instrucciones. El procesador ejecutando las instrucciones secuencialmente
genera como resultado los nuevos datos de salida.
Los datos de salida pueden ser ligeras modificación de los de entrada
o incluso copias de los mismos, aunque normalmente la salida serán datos
nuevos creados a partir de la entrada y modificados de acuerdo a complejos algoritmos.
Nada impide que los datos de salida puede ser la codificación de nuevas
instrucciones para el procesador.
Finalmente, los datos de salida producidos por el procesador se almacenan en
el sistema de memoria o se envian a los dipositivos perifericos que los necesiten
y asi lo requieran.
En un microprocesador de propósito general, la tarea a realizar se especifica
en un programa.
Un programa consiste en una secuencia de instrucciones, codificadas (código
máquina) de acuerdo a un formato interpretable por el procesador.
El procesador sólo será capaz de ejecutar un conjunto básico
de instrucciones, cada una de las cuales realiza una operación elemental
muy simple. La tarea a realizar se debe especificar de acuerdo a esta instrucciones
elementales. El programa por tanto sera la secuenciación de las instrucciones
elementales de tal manera que lleven a cabo el algoritmo que describe la tarea
que se desea realizar.
El proceso que deber realizar una microprocesador para ejecutar estos programas
puede subdividirse en los siguientes pasos:
1. Obtener el código del programa a ejecutar y los datos desde algun
lugar de almacenamiento.
2. Realizar la elaboración de los datos de entrada de acuerdo a las instrucciones
elementales que se encuentren codificadas en el programa. Estas instrucciones
se ejecutan una a una de manera secuencial.
3. Guardar el resultado de la manipulación de los dados en algún
medio de almacenamiento o enviarlo a los dispositivos periféricos.
Estructura interna (Hardware) de un microprocesador
En el interior de un microprocesador encontramos las siguientes partes claramente
definidas:
Tipos
Pentium-75 ; 5x86-100 (Cyrix y AMD)
AMD 5x86-133
Pentium-90
AMD K5 P100
Pentium-100
Cyrix 686-100 (PR-120)
Pentium-120
Cyrix 686-120 (PR-133) ; AMD K5 P133
Pentium-133
Cyrix 686-133 (PR-150) ; AMD K5 P150
Pentium-150
Pentium-166
Cyrix 686-166 (PR-200)
Pentium-200
Cyrix 686MX (PR-200)
Pentium-166 MMX
Pentium-200 MMX
Cyrix 686MX (PR-233)
AMD K6-233
Pentium II-233
Cyrix 686MX (PR-266); AMD K6-266
Pentium II-266
Pentium II-300
Pentium II-333 (Deschutes)
Pentium II-350
Pentium II-400
Referencias.
http://www.terra.es/tecnologia/articulo/html/tec681.htm
http://www.ii.uam.es/~fjgomez/innovacion_docente/cpu/dentroCPU.html