Ir al contenido principal

Hablemos de la arquitectura ARM

  En este post hare un pequeño resumen sobre la arquitectura ARM, lo cual es fundamental conocer al entrar a conocer la  arquitectura de los computadores.
Primero que todo ARM significa "Advanced Risc Machine" y anteriormente Acorn RISC machine, es una arquitectura tipo RISC que fue diseñada. Este tipo de arquitectura con relativa simplicidad fue principalmente diseñado con el fin de realizar ciertas tareas pero en una velocidad mucho más rápida que el diseño de los procesadores CISC.


File:ARM-HP-PRINTER.JPG
Foto de un procesador ARM en la placa base de una impresora. Socram8888 (2008)
                             

Inicio
 Su origen viene en la década de los 80, donde Acorn Computers emprendió con un proyecto para desarrollar procesadores con potencia elevado para sus propios equipos.
En 1986 se lanzó el primer procesador ARM.
  • ARM1
The ARM1 processor chip installed in the Acorn ARM Evaluation System. Original photo by Flibble, https://commons.wikimedia.org/wiki/File:Acorn-ARM-Evaluation-System.jpg, CC BY-SA 3.0.
 ARM1 processor chip instalado en el Acorn ARM Evaluation System. by FlibbleCC BY-SA 3.0.

Principales características de ARM   

  • arquitectura que permita cargar y almacenar
  • Conjunto de instrucciones ortogonales
  • Principalmente ejecución de un solo ciclo.
  • Diseño de ahorro de energía mejorado.
  • 64 y 32 bits para un alto rendimiento escalable.
  • Soporte de virtualización de hardware.
  • El diseño simplificado de los procesadores ARM permite un procesamiento multi-core más eficiente y una codificación más fácil para los desarrolladores.


¿Qué máquinas utiliza arquitectura ARM?
Estos procesadores son común verlos en dispositivos móviles como por ejemplo:
  • Celulares 
  • Tablets 
  • reproductores de multimedia
Si se pueden encontrar en otros sistemas como lavadoras y automóviles. 

Licencia
Algo particular de la empresa que creo ARM, es que no quieren dar la intención de fabricar sus propios chips. En lugar de ello licencia sus creaciones a otros fabricantes y esto ayuda a que se extienda su presencia en el mercado.
por ejemplo:

  •  Tegra de Nvidia
  • OMAP de Texas Instruments
  • Snapdragon de Qualcomm

Actualidad
Esta arquitectura cada vez es más potente y se hace más presente en el diario vivir del humano.


Juan M.H redactó: "Con la arquitectura ARM y los procesadores creados a su alrededor, como Cortex-A5 o Cortex-A9, se proporciona a los usuarios de dispositivos móviles toda la potencia necesaria para poder usar sus terminales en el día a día, pero también en funciones avanzadas. Navegar por la red disponiendo de un rendimiento rápido y de alta compatibilidad, dar soporte a la tecnología Adobe Flash o hacerse cargo de la seguridad en diversos sistemas, como el bloqueo de SIM o el uso de sistemas de pago DRM, son algunas de las funciones en las que ARM juega un papel especial. La tecnología de ARM se ha convertido en algo fundamental del sector móvil y el apoyo que le están proporcionando los fabricantes es una buena demostración de ello."
En cuanto cantidad de producción ARM se ha venido convirtiendo en la arquitectura de 32 bits más exitosa ha presentado avances los cuales complace dispositivos que quiere prioridad de potencia en ciertas tareas.
En realidad, la arquitectura ARM, con diseños en los que se integran más de 30.000 transistores, está presente en un gran número de dispositivos electrónicos en manos o utilizados por usuarios particulares y profesionales, y a diario se venden más de 16 millones de productos basados en esta arquitectura de ARM Holdings.

Referencias
Juan Manzano Ulmeher. (2013). ¿Qué Son Los Procesadores ARM?. 2017, de ibertronica Sitio web: http://www.ibertronica.es/blog/tutoriales/que-son-los-procesadores-arm/
Importancia de la arquitectura ARM, sitio web: https://www.importancia.org/arquitectura-arm.php
Matthew H, Stephen J. Bigelow, ARM Processor. sitio web: http://whatis.techtarget.com/definition/ARM-processor

Comentarios

Entradas populares de este blog

Código BCD

¿Qué es código BCD? El código BCD (decimal codificado, en inglés Binary-Coded Decimal), es una representación de números decimales en el sistema binario, lo cual cada dígito decimal es una codificación con secuencia de 4 bits, con esta representación se puede ver la relación que existe entre un número decimal y ese número en codificación binaria. Este sistema de numeración es ponderado, lo cual quiere decir que cada posición de una secuencia de dígitos obtiene cierto valor.  Esta representación llega a utilizar 4 dígitos binarios para representar 0 al 9. Para poder el representar el equivalente se pone el valor 1 donde se ocupa y 0 donde no se ocupa, con 4 dígitos, se pueden representar 16 números (0000-1111), pero en el código BCD, sólo se usan diez de ellos, las 6 combinaciones que no se emplean (1010, 1011, 1100, 1101, 1110 y 1111) no son válidas en el código BCD.  (Ver imagen 1) Imagen 1: números decimales respresentados en BCD Ejemplo 1   En el ejemplo 1 se

Obtener el residuo: operación módulo en ensamblador

 Para este blog quisiera hablar de un algoritmo que encontré y me sirvió para la tarea que me habían dejado. El algoritmo que encontré saca el residuo que se obtiene de una división, osea hace la operación módulo. El residuo es algo que durante el colegio no le tome importancia y me sorprende la importancia que tiene en el ámbito de la programación. Un ejemplo donde se utiliza el residuo en la programación es cuando el programador quiere obtener el último dígito de algún número.  La operación de módulo encuentra el residuo que queda después  de aplicar una división. (Ejemplos en la ilustración 1) Ilustración 1. Ejemplo de divisiones que dejan residuo Muchos lenguajes para aplicar el módulo de dos números funciona simplemente utilizando el signo "%" en el medio de los dos números, otros ponen "mod" en medio de los dos números. Sin embargo en algunos tipos  de lenguajes ensamblador no existe una forma tan directa y fácil para obtener el residuo de una divisió

Sucesión de Fibonacci: código ensamblador

En este blog, me gustaría dar un resumen comprensible sobre una sucesión interesante e infinita, hablo de la sucesión de Fibonacci. Es fundamental llegar a programar esta sucesión cuando eres estudiante de ingeniería de computación, ya que es un buen ejercicio para cuando se esta aprendiendo recursividad. Funcionalidades recursivas fue, es y será siempre una herramienta primordial para la creación de programas. Imagen 1. Sucesión de Fibonacci, sitio web: gutl.jovenclub.cu/python-y-la-sucesion-de-fibonacci La sucesión de Fibonacci Primero que todo, esta aportación de la matemática de parte de Leonardo De Pisa   surge de un problema que propuso  Liber Abaci, lo cual el problema consistía en:  " ¿Cuántas parejas de conejos conseguiremos en un año si empezamos con una pareja de conejos que produce cada mes otra pareja que a su vez procrea a los dos meses de vida? " Entonces a partir de ese problema, la sucesión de Fibonacci consta de siempre sumar los dos últimos