EL PROCESADOR
El objetivo principal
de un procesador es el de ejecutar los distintos pasos de una tarea. Debe
también conseguir funcionar lo más rápidamente posible, consumiendo la mínima
potencia y evitando errores y paradas. Para ello, el procesador utiliza una
serie de operaciones elementales, a partir de las cuales se pueden resolver
tareas más complejas. Cada una de las operaciones elementales tiene un código
binario y puede tener uno, o varios operandos sobre los que actuar.
Un procesador está
formado por una serie de componentes que trabajan de forma coordinada para
ejecutar las instrucciones que forman los programas. Estos componentes son los
siguientes:
Existen dos tipos de unidades de control: las cableadas, usadas generalmente en máquinas sencillas, y las micro programadas, propias de máquinas más complejas. En el primer caso, los componentes principales son el circuito de lógica secuencial , el de control de estado, el de lógica combinacional y el de emisión de reconocimiento de señales de control. En el segundo caso, la microprogramación de la UC se encuentra almacenada en una micro memoria, a la cual se accede de manera secuencial para posteriormente ir ejecutando cada una de las micro instrucciones.
La unidad de control tiene, así mismo, algo muy necesario, que es el generador de impulsos de reloj, encargado de sincronizar el funcionamiento del procesador. Para ello, se emplea un cristal de cuarzo externo a la CPU que le suministra a través de una de sus patas una onda cuadrada. Cada período de la onda recibe el nombre de ciclo de reloj, y se utiliza su frecuencia para medir la velocidad del procesador. Para realizar cualquier operación, el procesador tiene unas tablas en las que se especifica los ciclos de reloj que dura, la unidad de control coloca los operandos necesarios para la misma, donde se necesiten y espera los ciclos que marca la tabla, para darla por concluida. Las funciones de la unidad de control son las de controlar el funcionamiento paso a paso del procesador, mientras éste ejecuta cada una de las instrucciones de un programa.
De forma más específica, las funciones de la unidad de control son:
- Controlar la secuencia en que se ejecutan las instrucciones.
- Controlar el acceso del procesador a la memoria principal.
- Regular las temporizaciones de todas las operaciones que ejecuta el procesador.
- Enviar y recibir señales de control desde los periféricos.
Fig. 1 Componentes trabajando en conjunto |
CAMINO DE DATOS (DATAPATH)
Un datapath es una
colección de unidades funcionales (tales como unidades aritméticas lógicas o
multiplicadores, que realizan operaciones de procesamiento de datos), registros
y buses. Junto con la unidad de control compone la unidad central de
procesamiento (CPU).
Los caminos de datos
son sistemas digitales utilizados con frecuencia para la manipulación de datos
y la realización de cálculos numéricos complejos.
Bloques
funcionales de un camino de datos.
En los procesadores
informáticos, el camino de datos a menudo consiste en los siguientes bloques
funcionales, o alguna variación de los mismos:
- El registro de instrucciones almacena la instrucción actual a ejecutar.
- El contador de programa (PC) almacena la dirección de la siguiente instrucción que se va a buscar.
- El registro de direcciones de memoria (MAR) es un registro que almacena la dirección de memoria a partir de la cual los datos se recogen en la CPU o la dirección a la que se enviarán y almacenarán los datos.
- El
registro de datos de memoria (MDR) es un registro de la unidad de control de un
ordenador que contiene los datos que se van a almacenar en el almacenamiento
informático (por ejemplo, RAM) o los datos después de una búsqueda desde el
almacenamiento informático.
También hay dos registros inherentes en el procesador que facilitan la comunicación del procesador con la memoria, o básicamente ayudan en las operaciones de memoria del registro.
A
través de este enlace https://www.youtube.com/watch?v=rkRrmAhr3aY usted
podrá ver cómo funciona la unidad de control y el camino de datos.
Fig. 2 Visión Abstracta de la implementación del Subconjunto MIPS |
SEGMENTACION
La Segmentación (pipelining) Es un método
por el cual se consigue aumentar el rendimiento de algunos
sistemas electrónicos digitales. Es aplicado, sobre todo, en
microprocesadores. El paralelo con la programación existe en que los cálculos
deben ser registrados o sincronizados con el reloj cada cierto tiempo para
que la ruta crítica (tramo con más carga o retardo computacional entre dos
registros de reloj) se reduzca.
El símil con la
programación existe en que los cálculos deben ser registrados o sincronizados
con el reloj cada cierto tiempo para que la ruta crítica (tramo con más carga o
retardo computacional entre dos registros de reloj) se reduzca.
La ruta crítica es en
realidad la frecuencia máxima de trabajo alcanzada por el conjunto. A mayor
ruta crítica (tiempo o retraso entre registros) menor es la frecuencia máxima
de trabajo y a menor ruta crítica mayor frecuencia de trabajo. La una es la
inversa de la otra. Repartir o segmentar equitativamente el cálculo hace que
esa frecuencia sea la óptima a costa de más área para el almacenamiento o
registro de los datos intervinientes y de un retraso o latencia (en ciclos de
reloj/tiempo) en la salida del resultado equivalente al número de
segmentaciones o registros realizados. La ventaja primordial de este sistema es
que, tal y como se muestra en la imagen, una vez el canal (pipe) está
lleno, es decir, después de una latencia de cuatro en la imagen, los resultados
de cada comando vienen uno tras otro cada flanco de reloj y sin latencia extra
por estar encadenados dentro del mismo canal. Todo esto habiendo maximizado la
frecuencia máxima de trabajo.
Fig. 3 Segmentación |
Comentarios
Publicar un comentario