Las diferencias entre ARM e Intel

Con el rumor siempre presente de que las MacBooks ARM están ganando energía renovada, es hora de comprender las diferencias técnicas entre los procesadores ARM y los procesadores x86 más comunes fabricados por Intel y AMD.

¿Qué significa x86 de todos modos?

Los procesadores Intel que se encuentran en las computadoras de escritorio y portátiles a veces se denominan procesadores «x86». Esto puede ser un poco confuso si alguna vez notó sus dos carpetas de Archivos de programa en Windows.

x86-brazo-1

Windows 7, 8 y 10 se refieren a sus programas de 32 bits con el término «x86» y sus programas de 64 bits (en algunos contextos) como «x64». Eso no es estrictamente exacto. Los procesadores con capacidad para 64 bits deberían denominarse x86-64, pero es mucho más tosco.

El nombre «x86» proviene de los procesadores Intel originales de 16 bits que usaban el conjunto de instrucciones x86, el 8086. Las generaciones futuras que compartían el mismo conjunto de instrucciones también compartían el mismo sufijo, como el 80386. Esto se mantuvo hasta los chips Pentium, que rompió la convención de nomenclatura, pero todavía usamos «x86» para referirnos a este tipo de chips.

Conjuntos de instrucciones

8086-intel-chip

Todos los procesadores se basan en lo que se llama un «conjunto de instrucciones». Este es un conjunto de operaciones rudimentarias que un chip puede realizar e instrucciones sobre cómo realizarlas. Le dice al chip cómo hacer operaciones matemáticas básicas y mover datos. El lenguaje de programación para estas instrucciones se llama lenguaje ensamblador.

La principal diferencia entre los chips ARM y x86 es su conjunto de instrucciones. Los chips x86 son CISC, que significa «computación de conjunto de instrucciones complejas». Los chips CISC intentan representar una tarea dada en la menor cantidad posible de líneas de ensamblaje, abstrayendo funciones básicas. Estas operaciones más complejas también deben ejecutarse en el transcurso de múltiples ciclos de reloj. Los chips ARM son RISC, que significa «computación de conjunto de instrucciones reducido». Los chips RISC incluyen conjuntos de instrucciones extremadamente rudimentarios, que dividen cada proceso en pasos extremadamente pequeños y simples. Cada uno de estos pasos más pequeños se puede ejecutar en un solo ciclo de reloj.

CISC frente a RISC

brazo-vs-x86

Si un chip CISC necesita multiplicar dos números, podría ejecutar un solo comando: MULT 2, 3. Este único comando cubrirá la carga de números de la memoria, los multiplicará y almacenará el resultado en la ubicación de memoria correcta. Un chip RISC que realice la misma operación requeriría muchos más pasos. Primero un LOAD instrucción para mover los números de los registradores a la unidad de ejecución. Entonces un PROD instrucción para multiplicar los números. Finalmente, un STOR instrucciones para colocar el resultado en el registro correcto.

Si bien el chip CISC puede parecer más eficiente porque sus comandos parecen más simples, tenga en cuenta algunas diferencias importantes:

  • Primero, los chips CISC ejecutan comandos en varios ciclos de reloj, mientras que cada instrucción en un chip RISC se ejecuta en un solo ciclo de reloj. Por ello, nuestra hipotética MULT El comando puede ejecutarse en la misma cantidad de ciclos que el conjunto de instrucciones RISC que realizan la misma tarea.
  • En segundo lugar, todas las instrucciones y la lógica de CISC deben almacenarse en transistores. Los chips RISC pueden usar menos transistores porque necesitan almacenar menos instrucciones.
  • Tercero, la menor cantidad de transistores requeridos por RISC permite un menor uso de energía.

Hay algunas ventajas para CISC. Primero, la computadora no necesita hacer mucho trabajo para convertir un lenguaje de programación de nivel humano como C a un lenguaje ensamblador de nivel de procesador. De hecho, el MULT El comando mencionado anteriormente es muy similar al comando C foo = foo * bar. Los chips RISC le piden al compilador que haga mucho más trabajo para convertir el código en lenguaje ensamblador. Los chips CISC también pueden operar directamente en la memoria principal, mientras que los chips RISC solo pueden operar en los registros de la CPU.

El consumo de energía

Conjunto de chips de brazo x86

La otra diferencia central entre las arquitecturas es el uso de energía. Gracias a sus conjuntos de instrucciones reducidos, los chips RISC requieren menos transistores para funcionar. Esto significa que es necesario alimentar menos transistores, lo que genera ahorros de energía y reducción del calor. Esto ha llevado a que los chips ARM funcionen en casi todos los dispositivos móviles.

Los chips x86 de Intel y AMD son mejores para las máquinas de escritorio donde el consumo de energía no es un problema. También están incluidos en las computadoras portátiles que, obviamente, funcionan con baterías. Sin embargo, el poder no es tan premium como en los teléfonos inteligentes, lo que permite chips más potentes.

Conclusión

La distinción de más alto nivel entre los chips se basa en la potencia y la velocidad. Los chips ARM son excelentes para entornos de bajo consumo, pero normalmente son más lentos, mientras que los chips x86 funcionan rápidamente pero no son tan conscientes del consumo de energía. Sin embargo, esa generalización básica está cambiando, ya que Intel intenta producir versiones de bajo consumo de sus chips x86, y los chips ARM, como el A10 Fusion de Apple, comienzan a superar a los chips de las computadoras portátiles.

Publicaciones Similares

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *