Procesadores
Procesadores
Historia
En la prehistoria de la informática sólo unos pocos cientos de personas en todo el mundo tenían las aptitudes necesarias para ponerse a los mandos de los ordenadores de la época. Allá por los años 50 y 60, los computadores eran máquinas que ocupaban varias habitaciones e incluso necesitaban de múltiples operarios para funcionar correctamente. Apenas trabajaban para grandes universidades o ejércitos y eran completamente desconocidas en los hogares.
Es
evidente que esto ha cambiado radicalmente con el paso de los años y
ahora cualquiera tiene a su disposición un ordenador sencillo de
utilizar. Pero antes no era así. Entonces, ¿cómo empezó a fraguarse la era de la Información?
Las máquinas que cambiaron el mundo
Tras
la era industrial y aprovechando la segunda guerra mundial, los
gobiernos más potentes se vieron en la necesidad de invertir el tiempo
de sus mejores científicos en idear máquinas que pudiesen tratar
información, ya sea procedente del enemigo y en ese caso descifrándola, o
enviándola oculta a un aliado. Para ello necesitaban disponer de una
estructura y organización que les permitiese procesar información que
estuviese en un formato conocido, y además almacenar los resultados para
poder estudiarlos a posteriori. Nació la arquitectura de Von Neumann
La arquitectura de Von Neumann fue ideada por John Von Neumann en
la década de los 40 para un trabajo del gobierno americano, y hoy en
día sigue vigente en la mayoría de los computadores modernos. Su misión
es servir un esquema de funcionamiento genérico que permitiese a un
ordenador ejecutar tareas sucesivamente, sin tener que modificar la
estructura física del equipo. Según esta organización, el computador
dispone de una lista de instrucciones que un procesador interno va
descifrando y más tarde ejecutando. Una vez que ha finalizado esa
ejecución se pasa al siguiente elemento de la lista, y se repite el
proceso. Para ello se necesitan tres componentes básicos:
1- Una unidad de proceso que incluirá ALU y unidad de control.
2- Dispositivos de memoria para almacenar información, bien temporal o final.
3- Periféricos de entrada/salida para comunicarse con el usuario.
La
arquitectura de Von Neumann fue utilizada por primera vez en el ENIAC o
Electronic Numerical Integrator And Computer, que trabajó para el
gobierno estadounidense entre los años 1946 y 1955. Sobre él hablaremos
en el último apartado.
¿Y cómo trabajarían estos primeros computadores?
Mediante el sistema binario. Se trata de un sistema de numeración con un funcionamiento similar al decimal al que estamos acostumbrados los seres humanos, pero utilizando únicamente el 0 y el 1. A partir de estos dos números se construye toda la información, si bien es cierto que trabajar en binario es algo bastante poco habitual al existir otras herramientas mucho más avanzadas y fáciles de interpretar por el ser humano. Lo mejor del sistema binario es que es un sistema simple que permite construir circuitos electrónicos para realizar operaciones matemáticas de una forma sencilla a través de circuitos elementales.
El
procesador dispone de una serie de circuitos electrónicos que son
utilizados por los algoritmos, ideados por el ser humano para afrontar
problemas. ¿Qué es, entonces, un algoritmo?
Un algoritmo es una secuencia de órdenes o instrucciones que se dictan en un cierto orden. Es necesario que cada paso esté muy bien definido y que se siga un orden estricto para que la máquina sea capaz de ejecutarlo sin problemas.
En definitiva, el procesador se encarga de recibir secuencias de órdenes y ejecutarlas. Estas órdenes serán mayoritariamente matemáticas (suma estos dos números y guarda el resultado en esta determinada posición de memoria) pero también de almacenamiento o interrupciones del sistema. Y precisamente estas órdenes simples y atómicas se denominan instucciones, que son las operaciones que un procesador es capaz de entender y ejecutar. Por ejemplo, suma dos números y almacena el resultado en esta memoria, o multiplica estos dos números, o algo mucho más simple como almacena este dato en esta posición de la memoria.
Las instrucciones son operaciones muy simples pero con las que se construye todo, y un conjunto de estas instrucciones se denomina set de instrucciones o ISA (Instruction Set Architecture). Por ejemplo, x86 es la ISA de los procesadores Intel o AMD domésticos actuales, los cuales a su vez utilizan múltiples microarquitecturas, y ARM es la ISA de los procesadores de Samsung, Qualcomm, Apple, etc. En posteriores artículos entraremos más a fondo en los diferentes juegos de instrucciones así como en las arquitecturas más representativas del mercado actual.
¿Y qué es una microarquitectura?
Hablar de procesadores es una introducción esencial para continuar hablando de microarquitectura. ¿Qué es una microarquitectura?
Un microprocesador no es sólo un cerebro que procesa información (técnicamente la parte que realiza las operaciones se llama ALU, Arithmetic Logic Unit o unidad aritmético lógica), sino mucho más. Está compuesto de registros (pequeñas memorias donde se almacenan datos),
buffers, cachés, unidades de proceso, ALU, y mucho más. Todo esto se
fabrica utilizando componentes electrónicos ciertamente pequeños (las arquitecturas actuales de nuestros ordenadores utilizan transistores de 22 nanómetros, 0.000022 milímetros)
y no siempre nos encontraremos con todos. Es necesaria una organización
y estructuración de todos los componentes a la que se denomina
microarquitectura.
Los primeros procesadores
Los
primeros procesadores no funcionaban con transistores si no con
válvulas de vacío, y fue la Segunda Guerra Mundial la que propició que
los gobiernos investigasen en máquinas que fuesen capaces de operar con
información de forma muy rápida en comparación con la velocidad de
cálculo humana. Uno de los primeros equipos era el ENIAC, el primero que
siguió la arquitectura de Von Neumann y sobre el cual hay unos datos
bastantes interesantes en su entrada de Wikipedia:
Contenía 17.488 tubos de vacío, 70.000 resistencias y 10.000 condensadores, entre otros muchos componentes.
Su peso total era de 27 toneladas, ocupando una superficie de 167 metros cuadrados.
Para hacerla funcionar era necesario operar 6000 interruptores... manualmente, claro.
Requería una potencia de 160 kiloVatios.
Permitía operar hasta 5.000 sumas y 357 multiplicaciones por segundo.
Empezó
a operar en 1946 tras casi tres años de diseño, desarrollo y
fabricación por parte de J. Mauchly y J. Presper Eckert en la
Universidad de Pennsylvania. Cesó su labor el 2 de octubre de 1955.
Si
bien esta primera generación de computadores se caracterizó por
trabajar con válvulas de vacío, programarse en código máquina o, a lo
sumo, ensamblador, la segunda generación de procesadores evolucionó de
forma muy notable debido a la escasa fiabilidad y durabilidad de las
primeras propias válvulas.
Empezó la carrera de los transistores, el almacenamiento magnético (es decir, los primeros discos duros), los lenguajes de alto nivel y los primeros sistemas operativos monousuario. Por entonces IBM ya llevaba varios años dando guerra y puso en el mercado una de las máquinas más avanzadas y exclusivas de la historia en su contexto, el IBM 7090 que es considerado como el primer ordenador con CPU de transistores de la historia. Era seis veces más potente que su antecesor (el IBM 709) y costaba la mitad, así que era una inversión asegurada.
Comentarios
Publicar un comentario