Cada nueva generación de terminales móviles nos trae hardware más potente capaz de hacer cosas impensables años atrás, pero cuyas capacidades de actualización son muy limitadas o directamente nulas. Proyectos como Ara buscan darnos la posibilidad de cambiar algunos elementos del teléfono (por ejemplo la cámara, la memoria, el sistema de sonido, etc.) mediante módulos externos, mejorando así su flexibilidad.
Sin embargo, hay apuestas todavía más arriesgadas, como las de las empresas Flex Logix Technologies y Efinix, que proponen llevar el diseño de hardware con chips reprogramables a los teléfonos de nueva generación. ¿Para qué?, ¿qué ventajas e inconvenientes nos aportaría?
Hacia el hardware programable
La idea básica es muy sencilla. En lugar de insertar en los terminales chips con las interconexiones perfectamente definidas pero estáticas, se utilizan chips programables que pueden adoptar diferentes funcionalidades dentro del teléfono. No estamos hablando de programación por software como sucede ahora, sino de variar físicamente las interconexiones a nivel del hardware.
Es decir, se trataría de hacer algo parecido a lo que actualmente se utiliza con los sistemas basados en FPGAs (Field Programmable Gate Array), dispositivos que contienen bloques lógicos cuya interconexión y funcionalidad puede ser configurada ex profeso para cada necesidad concreta mediante un lenguaje de descripción especializado.
La lógica programable puede utilizarse para funciones muy básicas, como por ejemplo las realizadas por una simple puerta lógica, pero también para realizar funciones complejas como un sistema combinacional o todo un chip completo.

Con ello se consigue poder cambiar el hardware según las necesidades que vayamos teniendo en cada momento y adaptándolo a la realización de funciones específicas. Sería algo así como ir cambiando de chip para cada grupo de funciones que queramos utilizar en el teléfono.
Flex Logix Technologies afirma que añadir este tipo de tecnología a la producción de chips comerciales sólo incrementaría su precio en unos 15 céntimos, pero mejoraría enormemente las posibilidades y la flexibilidad de las funciones del móvil. ¿Por qué?
Ventajas e inconvenientes

Pues para empezar porque se pueden implementar funciones específicas para cada uso dentro de un mismo chip de forma muy eficiente. Por ejemplo, se habla de ser capaces de ir adaptando sobre la marcha el hardware para que analice los diferentes datos procedentes de los múltiples sensores del móvil logrando eficiencias de un orden de magnitud (x10 o x20).
De este modo podríamos lograr que nuestros teléfonos estuviesen permanentemente analizando datos procedentes de múltiples fuentes (por ejemplo de objetos de la Internet de las cosas o de los dispositivos de salud y cuantificación) sin que la batería se agotase al poco tiempo. Muy bien pero, si es una tecnología tan potente, ¿por qué no se ha usado hasta ahora?
Bueno, usarse si se ha usado, pero en los sectores profesionales y casi siempre para proyectos de prototipado y similares. Los principales motivos han sido el mayor consumo de los componentes con respecto a los chips tradicionales y el mayor espacio, ya que es necesario albergar muchas más partes que no se van a usar en todo momento, pero que tienen que estar ahí por si cambia la función del hardware.

Sin embargo, estas empresas afirman que han sido capaces de superar dichos inconvenientes y lograr consumos razonables con espacios más reducidos, con lo que esta tecnología de reprogramación hardware podría estar lista para llegar a nuestros teléfonos en pocos años.
De este modo y si pensamos además en la utilización conjunta con sistemas del tipo Proyecto Ara y similares, podríamos tener una enorme flexibilidad en nuestros móviles del futuro, ampliando considerablemente su vida útil, lo que por otra parte quizá vaya en contra del interés de la poderosa industria de la obsolescencia programada.
Más información | MIT Technology Review
En Xataka Móvil | Proyecto Ara
Ver 7 comentarios
7 comentarios
ergwrtwewfbrthertg
quitando sectores muy , pero que muy específicos , esta tecnología no tiene futuro.
y no tiene futuro porque ningún fabricante de hardware quiere que sus productos se actualicen consiguiendo nuevas funcionalidades sino que les compres un producto nuevo con dichas funcionalidades nuevas y "exclusivas".
morderous
Solo 15 céntimos mas caras? Poco me parece dado el precio que tienen las FPGA's.
dark_god
No le veo futuro como el centro de la tecnología. Podría ser interesante como elemento secundario, en unos pocos escenarios como bien describe el post, pero nunca como un elemento central. Además para tareas de leer sensores de manera continuada ya tienes en los snapdragons un DSP que se puede encargar de esas tareas con una eficiencia brutal.
javitel
He dado una asignatura en la carrera única y exclusivamente de FPGA, diseño de sistemas digitales y la verdad es que me parece que está muy bien abordado este post aunque hay que contrastar ciertas características negativas de estas placas y es que son mucho más complejas que el hardware propiamente dicho, pues no solo incluyen todos los componentes necesarios, si no que además incluye toda la lógica necesaria para programarla, si que es verdad que comparado con el procesamiento por software éste es mucho mas eficiente, pero comparado con crear una placa a medida no se va a ganar mucho más, pues muchas veces te conviene crear un módulo específico antes que programarlo pues aprovecharás mucho mejor el hardware que contiene, pues es mucho más barato por ejemplo comprar un divisor matemático que programarlo en VHDL o Verilog, los lenguajes más usados para plataformas de hardware programable como Spartan.
Por otro lado existen variantes de las FPGA que incluyen operadores ya hechos, estos bloques se llaman shadow clusters y permiten mejorar el porcentaje de espacio utilizado ya que existen ya unidades que permiten realizar tareas específicas sin necesidad de programarlas a mano haciendo uso de más puertas lógicas y sus respectivas conexiones.
Como opinión propia, las FPGA están muy bien donde están y es para prototipado, te permite emular un hardware y ver su comportamiento pero al final la capacidad de programarlo únicamente aumenta los componentes internos creando redundancia y finalmente esto significa que tenemos componentes de sobra ya que no todos van a ser empleados y que tienes más lógica que gestiona las conexiones para que esta placa se comporte como el hardware que deseas.
Además de que por muy reprogramable que sea siempre queda atado a la obsolescencia atada a la tecnología, por lo que si se crea un nuevo formato de transistor o un nuevo nivel de integración la placa vuelve a quedar obsoleta.
teknosrp
¿AVR's y PIC's del futuro?