En el mundo de la informática hay algo conocido como Open Source, término que tal vez te resulte familiar porque seguramente conocerás varios proyectos de ese tipo. Básicamente, hace referencia a que un software es de código abierto, lo que significa que, si tienes los conocimientos necesarios, eres libre de modificarlo a tu gusto sin que por eso infrinjas una ley o debas pagar regalías por el uso de esa tecnología.
Lo que quizás no sabías es que también existen proyectos de hardware Open Source, como los procesadores RISC-V (RISC 5), que verás en este Informe USERS.
Autor: Pier Ciccariello
Qué son los procesadores CISC y RISC
Los procesadores son el verdadero cerebro de una computadora, los encargados de procesar la información que reciben y entregar los resultados obtenidos. Para hacerlo, realizan operaciones con los datos de entrada, utilizando un conjunto de instrucciones y registros dentro del chip.
Existen, básicamente, dos tipos de procesadores, denominados CISC (Complex Instruction Set Computer, computadora de conjunto de instrucciones complejo) y RISC (Reduced Instruction Set Computer, computadora con conjunto de instrucciones reducido). Los primeros son como los que posiblemente tengas en tu PC de escritorio o notebook con arquitecturas como la x86 o la x64, usadas por Intel y AMD para cualquiera de las gamas de sus productos. Los segundos son empleados por firmas como Qualcomm, Samsung y Apple, entre otras, para los SoC (System on a Chip, sistema en un chip) presentes en smartphones, tabletas o algunos equipos portátiles.
CISC no es otra cosa que un gran conjunto de instrucciones que el procesador puede ejecutar a nivel de lenguaje ensamblador. Este sistema fue desarrollado por Intel. Lo que ocurre en esta arquitectura es que se reduce la cantidad de instrucciones que ejecuta el software y se ignora el número de ciclos por instrucción; se especializa en instrucciones complejas para el hardware, que siempre será más rápido que el software por ser ejecutado.
Otra ventaja que supone la arquitectura CISC es que el compilador requiere poco esfuerzo para traducir los programas desarrollados en lenguajes de alto nivel a código máquina. Además, el tamaño del código es relativamente pequeño, lo que disminuye el consumo de memoria durante su ejecución, así como el almacenamiento de sus instrucciones. También requiere menos instrucciones para realizar la misma función en arquitecturas basadas en RISC.
Como desventaja, esta tecnología demanda varios ciclos del reloj para realizar una instrucción de software, lo cual se traduce en una caída de rendimiento. Este diseño requiere de muchos más transistores que la arquitectura RISC, hecho que lleva a un consumo mayor y a una generación de temperatura más elevada, además de implicar un tamaño físico más grande. Otro punto interesante es que no se utilizan todas las instrucciones en la ejecución de un software: por lo general, solo el 20% de ellas son suficientes para ejecutar el 80% del código.
CISC está diseñado con menos registros y más nodos de direccionamiento –usualmente, entre 5 y 20–, y las instrucciones que puedes utilizar son más grandes que una sola palabra.
La arquitectura RISC funciona sobre la base de una serie de instrucciones simples y altamente personalizadas, lo cual reduce el tiempo de ejecución de cada instrucción optimizando y limitando su cantidad. Por cada ciclo de instrucción se emplea solo un ciclo del reloj, donde existe un método de obtención, decodificación y ejecución de la instrucción (fetch-decode-execute). Este tipo de procesadores pueden ejecutar varias instrucciones complejas cuando son combinadas con otras de mayor simplicidad.
La cantidad de transistores empleados en su desarrollo es menor, por lo que su fabricación es más rápida y económica. También el tamaño físico final de los procesadores es más chico y la generación de calor en ellos es inferior.
Otro factor clave en esta tecnología es un menor consumo energético, lo que, en dispositivos móviles, permite optimizar la autonomía de la batería.
Los procesadores ARM (inicialmente Acorn RISC Machines y en la actualidad Advanced RISC Machine, máquina RISC avanzada) están basados, como su sigla lo indica, en arquitectura RISC, en un principio, de 32 bits, hasta la salida del
V8-A, que alcanzó los 64 bits en el año 2011. Estos procesadores son diseñados por ARM Holdings, que licencia el estándar a otros fabricantes, por lo que podrás encontrar muchas variantes. Los que fabrican los procesadores deben pagar regalías a quienes la diseñan, adquiriendo de esa forma derecho a modificarla según sus necesidades.
Los procesadores del tipo ARM utilizan arquitectura RISC, como los Qualcomm Snapdragon y los Samsung Exynos, así como los utilizados en placas Raspberry Pi, que emplean procesadores Broadcom.
Para ejecutar varias etapas de instrucciones, este tipo de procesador emplea la técnica de canalización con el objetivo de optimizar el flujo de trabajo. Utiliza varios registros para almacenar las instrucciones y obtener una respuesta más rápida minimizando los accesos a la memoria del sistema mediante instrucciones LOAD y STORE. Al poseer un conjunto de instrucciones sencillas y limitadas en número, los tiempos de ejecución son menores.
Como desventaja de esta arquitectura, se requiere del uso de memorias muy rápidas y una buena cantidad de caché para acompañar el rendimiento del procesador y almacenar gran cantidad de instrucciones.
En la actualidad, la mayoría de los compiladores de software manejan instrucciones complejas que no siempre son compatibles con la arquitectura RISC.
Continúa leyendo el Informe USERS 196 y aprende más sobre el hardware Open Source, el proyecto RISC-V y los productos basados en esta tecnología.
Informe USERS es una publicación digital semanal exclusiva para suscriptores de RedUSERS Premium, en ella analizamos en profundidad temas de actualidad en tecnología: tendencias, aplicaciones, hardware, nuevas tecnologías y más.
RedUSERS PREMIUM contiene cientos de publicaciones y puedes leerlas a todas, por una mínima cuota mensual SUSCRIBETE!