Si has tenido PC toda tu vida, muy probablemente su procesador haya sido de arquitectura x86. O x86/64 si es reciente. Sus fabricantes, Intel o AMD, mayoritariamente. En caso de haber tenido ordenadores Apple, puede que hayas trabajado con distintos procesadores. Desde los primeros Motorola de los años 80 a los PowerPC de los 90. Si no eres tan viejo, habrás tenido algún que otro Mac con procesador Intel. Y si te lo acabas de comprar, puede que disfrutes de los procesadores M1, fabricados por la propia Apple. Pero hablemos de CISC, RISC y ARM.

Menciono a Apple porque su elección de procesadores para sus ordenadores sirve para introducir este artículo: la guerra entre dos formas de diseñar un procesador, CISC y RISC. En sus inicios, Apple optó por procesadores de tipo CISC (Motorola). Luego pasó a RISC con los PowerPC de IBM. De nuevo, volvió a CISC con Intel y sus x86/64. Y, finalmente, se ha pasado de nuevo a la filosofía RISC con sus propios M1, basados en la arquitectura ARM, de tipo RISC.

En esta guerra no hay claro vencedor. Ambos han tenido su parte de mercado. En el sector de ordenadores personales, algo caótico, cuando IBM irrumpió con su PC, acabó imponiendo la tendencia CISC a base de popularizar los procesadores Intel. Pero en sectores profesionales o industriales, RISC seguía su camino. Hasta que llegaron los smartphones y demás dispositivos que requerían bajo consumo de energía. La arquitectura RISC, representada por ARM, se impuso como la opción más eficiente. Y hoy prácticamente la totalidad de dispositivos móviles cuentan con procesadores de este tipo. Hasta el punto de que las computadoras personales empiezan a usarlo también. Quién sabe cuál será la tendencia en unos años.

RISC - CISC - ARM - x86
Panel de control de un IBM System 360.. Autor: Wolfgang Stief (Flickr)

Primer procesador fue CISC

En un artículo titulado UNIVAC, la computadora que inspiró a Asimov, hablé de los primeros ordenadores. Entre otras cosas, comenté la dificultad de definir una década de inicio de la computación. Pero si nos atenemos a los ordenadores tal y como los concebimos hoy en día, puede que la década de 1950 sea un buen punto de partida.

En aquel entonces, se crearon las primeras computadoras que pudieron usarse más allá de instalaciones científicas o militares. Con todo, eran muy caras, difíciles de manejar y ocupaban grandes salas. Habrás visto alguna fotografía en internet. Pues bien, la forma de ser de esas primeras máquinas pensantes hacía que las instrucciones que se le daban fueran únicas para dicha máquina. Vamos, que no podías usarlas en otra.

La solución llegó de la mano de IBM, el gigante azul. Fundada en 1911, esta empresa de computación buscó la manera de crear instrucciones compatibles para cualquier ordenador, lo que vendría a ser software compatible. La idea era poder crear programas en forma de sencillas instrucciones de código que ocupasen poca memoria, que entonces era muy cara y escasa. También ahorraría espacio de almacenamiento.

La arquitectura CISC, acrónimo de Complex Instruction Set Computer, es la respuesta a esta necesidad. En castellano, CISC significa Computador con Conjunto de Instrucciones Complejas. Los procesadores basados en CISC, según define la Wikipedia, “tienen un conjunto de instrucciones que se caracteriza por ser muy amplio y permitir operaciones complejas entre operandos situados en la memoria o en los registros internos”. En la práctica, la arquitectura de tipo CISC abarataba el coste y simplificaba la tarea de programar código, compilarlo, ejecutarlo y almacenarlo.

Curiosamente, el acrónimo CISC se acuñó más tarde de existir esta arquitectura, una vez se creó su alternativa RISC. Los primeros ordenadores de este tipo fueron los IBM System/360 de los años 60 y 70 o los PDP de DEC de los años 70 a 90. Pero hubo más fabricantes de procesadores de tipo CISC. El que más conocemos es Intel con sus 8080 o x86, pero también tenemos a Motorola con sus procesadores 68000, Zilog con sus procesadores Z8000 o el más reciente AMD, que también fabrica procesadores de tipo x86 y x86/64.

RISC - CISC - ARM - x86, guerra de los procesadores
Autor: Michael Hicks (Flickr)

Y a la guerra de los procesadores llegó RISC

Durante décadas, la arquitectura CISC fue más que suficiente. Pero en un momento dado, de nuevo IBM se plantea buscar una alternativa. Se la llamó RISC, acrónimo de Reduced Instruction Set Computer, es decir, Computador con Conjunto de Instrucciones Reducido. El propósito era diseñar ordenadores y otros dispositivos que pudieran ejecutar instrucciones segmentadas o en paralelo, algo complicado con la arquitectura CISC. El resultado, menor consumo de memoria y menor tiempo de ejecución, entre otros aspectos más técnicos, como que son más baratos de producir o generan menos calor. Y, en consecuencia, menos consumo de energía.

RISC también tuvo sus representantes. Para empezar, IBM fabricó sus populares procesadores PowerPC. Por su parte, DEC creó sus procesadores DEC Alpha. De RISC surgieron también las arquitecturas MIPS, cuyos procesadores salieron de las fábricas de DEC, NEC, Siemens, Toshiab o Silicon Graphics, entre otros. Y la arquitectura SPARC, creada por Sun Microsystems basándose también en RISC.

El uso de RISC se extendió a todo tipo de computadoras y dispositivos, pero fue más popular en entornos profesionales en forma de servidores y ordenadores de tipo mainframe, así como en tecnología industrial o de telecomunicaciones. Como comenté antes, la computación personal prácticamente fue monopolizada por la arquitectura CISC y sus variantes.

RISC - CISC - ARM - x86, guerra de los procesadores

ARM, el gran éxito de RISC

El éxito más reciente de RISC tiene que ver gracias a ARM. El acrónimo ARM significa Advanced RISC Machines. En castellano, Máquinas RISC Avanzadas. ARM es un tipo de CPU de tipo RISC que fue diseñado y creado por Acorn Computers en la segunda mitad de la década de 1980. De ahí que inicialmente, la A de ARM significara Acorn. En 2016, pasó a ser propiedad de SoftBank y en 2020, NVIDIA se interesó por ella.

Como curiosidad, la empresa responsable de ARM, Acorn Computers, ha sido considerada en ocasiones como la Apple británica. Su relación no acaba aquí. La empresa que se creó para gestionar las licencias de ARM, llamada Advanced RISC Machines Limited, tuvo como participantes tanto a Acorn como a la propia Apple. Y un tercero, VLSI Technology. Acorn aportó a sus empleados, VLSI sus herramientas y tecnología y Apple invirtió unos 3 millones de dólares. Es más. Para Apple Newton, la PDA de Apple y antecesor del iPhone y el iPad, se empleó una CPU ARM. En concreto, un ARM 610.

La arquitectura ARM es licenciable. Es decir, cualquier fabricante puede crear procesadores ARM pagando una licencia de propiedad. A diferencia de procesadores como los x86. De ahí gran parte de su éxito. En la actualidad, marcas como Apple, Alcatel-Lucent, Broadcom, DEC, LG, Nokia, NVIDIA, la propia Microsoft, Sony, Qualcomm (la más popular durante años), Samsung o Texas Instruments, fabrican sus propias CPU de arquitectura ARM para toda clase de dispositivos electrónicos.

Hoy en día encontramos procesadores ARM en smartphones, tabletas, relojes inteligentes y demás wearables, calculadoras, dispositivos NAS, routers y un largo etcétera. Si es pequeño y/o lleva batería, es muy probable que incluya ARM en su interior. Según Statista, en 2019, el 90% de procesadores móviles eran ARM. También el 90% de procesadores para soluciones IoT. Para asistencia a la conducción y dispositivos de entretenimiento durante el viaje, ARM estaba en el 75% de vehículos de este tipo.

Las claves del éxito de ARM son varias. La primera en salir en cualquier debate al respecto es el menor consumo de energía de este tipo de procesadores. Algo básico para unos dispositivos como son los smartphones que dependen de una batería cuya tecnología apenas ha evolucionado en las últimas décadas. Mientras no surge una alternativa real a las baterías actuales, los fabricantes solo pueden reducir el resto de elementos para que colocar una batería mayor en el espacio disponible.

También se suele mencionar el menor coste de producción. Los chips o CPU de tipo ARM se pueden fabricar pagando una licencia en vez de comprarlos directamente como los x86 o similares. No dependes de adquirirlos a un fabricante, como ocurre con otros procesadores. Esto es una ventaja en varios sentidos. Controlas la fabricación, puedes introducir mejoras y no dependes de un tercero. De ahí la decisión de Apple de diseñar sus propios procesadores.

RISC - CISC - ARM - x86, guerra de los procesadores
Prototipo de procesador RISC-V. Autor: Chiara Coetzee (Flickr)

RISC-V, el pilar del hardware libre

Más allá de la omnipresencia de ARM en determinados mercados de computación y electrónica, la arquitectura RISC también se ha hecho con el favor de la comunidad open source. Es decir, que en la búsqueda de un procesador o CPU libre y abierto, se ha optado por la arquitectura RISC como referencia. El resultado, el proyecto conocido como RISC-V, del que hablé tiempo atrás.

Inspirándose en el movimiento de software libre, que ha hecho posible crear programas y aplicaciones con la colaboración y entusiasmo de programadores y empresas de todo el mundo, empresas, organismos públicos y particulares se han unido para hacer el equivalente libre del hardware. Es decir, crear una arquitectura que pueda replicarse y fabricarse sin pagar una licencia comercial.

Una de las razones para que RISC-V haya recibido la atención de, por ejemplo, la Unión Europea, se debe a la guerra fría que se viene produciendo en los últimos años entre Estados Unidos y China en lo que a tecnología se refiere. Solo hay que echar un vistazo a las listas de supercomputadores más rápidos del mundo para ver que con cada actualización de esa lista se van superponiendo ordenadores made in USA y ordenadores made in China.

Tal es esa competitividad, que hace años que China prescindió de la tecnología estadounidense para crear sus propios procesadores. Japón también cuenta con tecnología propia. Pero Europa, por su parte, se ha dado cuenta de que necesita sus propios chips. RISC-V es un primer paso hacia su independencia tecnológica en ese sentido.