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