Inicio Instrumentación La tormenta perfecta: cómo las FPGAs, las CPUs multinúcleo y la programación...

La tormenta perfecta: cómo las FPGAs, las CPUs multinúcleo y la programación gráfica están cambiando la economía del diseño embebido

Retos de diseño de los sistemas embebidos
 

Los sistemas embebidos constan de componentes de hardware y software diseñados para realizar una función específica y a menudo tienen restricciones de tiempo real o fiabilidad que van mucho más allá de la computación estándar. Para satisfacer estas demandas a nivel de hardware, los sistemas embebidos tradicionales suelen incorporar microcontroladores, procesadores de señales digitales (DSP) o arrays programables de puertas lógicas (FPGA). Respecto al software, tradicionalmente hacen falta varios lenguajes o herramientas para programar o configurar cada elemento de hardware. Como resultado, los equipos de diseño embebido tradicional requieren miembros con numerosos conocimientos en diseño de hardware y software capaces de integrar el hardware y el software en sistemas embebidos típicos.
Con la explosión de los dispositivos embebidos en las últimas décadas, se han realizado muchas mejoras en los componentes de hardware y en las herramientas software. Sin embargo, a pesar de la innovación y el crecimiento de las herramientas de software y de los componentes de hardware, los enfoques tradicionales de diseño de sistemas embebidos han evolucionado poco o nada y cada vez están demostrando más el lastre que representan. Dado el rápido aumento de nuevos estándares y protocolos, así como la creciente presión sobre los equipos de diseño para ofrecer el producto al mercado con más rapidez, el diseño de sistemas embebido debe realizar un cambio significativo de paradigma.
Para entender mejor la necesidad de una revolución en el diseño de sistemas embebidos, resulta útil considerar las herramientas y procesos actuales. Según un reciente estudio del mundo embebido de UBM Electronics junto con EE Times y Embedded System Design, existen roles y procesos claramente establecidos en el diseño de sistemas embebidos. Para empezar, un equipo de diseño de sistemas embebidos consta de 13,5 miembros de media, en el que el 62 % se dedica a recursos de software mientras que el resto se centra en el desarrollo de hardware. Este patrón en la función y estructura del equipo de diseño embebido ha sido constante durante los últimos cinco años.
Si profundizamos en los proyectos embebidos, el 43 % se centra en desarrollar algo nuevo mientras que el 57 % restante son mejoras de los sistemas embebidos existentes. Las razones principales de una mejora son la adición o incorporación de características de software nuevas o distintas y un procesador nuevo o distinto. De media, los proyectos duran unos 12 meses y, en 2011, asombrosamente el 57 % de los proyectos terminaron tarde o se cancelaron. Además, los equipos de diseño afirmaron que reutilizaron el 87 % del código existente, que incluye código desarrollado internamente, adquirido de trabajo de código abierto y/o comprado. Estas tendencias en proyectos embebidos también han sido extremadamente coherentes año tras año durante los últimos cinco años.
Más allá del proyecto y equipo tradicionales de diseño embebido, también resulta útil señalar el proceso típico de diseño. Una vez definida la arquitectura del sistema basada en las especificaciones del sistema embebido, los equipos de diseño de hardware y software suelen empezar su trabajo por separado. Los ingenieros de hardware desarrollan la arquitectura del hardware, la síntesis y el diseño físico del sistema. Los ingenieros de software trabajan para desarrollar software de aplicación, compiladores y, en algunos casos, el sistema operativo. A medida que los equipos de hardware y software completan su trabajo, existe un esfuerzo de integración en el que se desarrollan controladores de software para las interfaces del hardware. Este esfuerzo de integración es un proceso iterativo, que suele incluir actualizaciones de los controladores software o síntesis de la interfaz del hardware.
Dado el estado actual del diseño de sistemas embebidos, existe una necesidad clara de cambio para sostener la innovación continua a la vez que se mantiene la rápida entrega de productos al mercado. Esta necesidad se acentúa porque la mayoría de los encuestados del estudio de UBM/EE Times aseguró que su función de trabajo conlleva contribuir a la integración del hardware y software o del firmware. Con el crecimiento acelerado de los avances en las tecnologías de hardware y las herramientas de software, el reto que supone la integración está acechando. Este reto, si no se aborda, conllevará productos finales más caros y puede impedir la experimentación, el crecimiento y la entrega de diseños más innovadores al mercado.
 

Arquitectura embebida estándar

 

 
La arquitectura de hardware estándar elimina gran parte del esfuerzo de integración que se requeriría de otra manera. Aunque una arquitectura estándar puede parecer demasiado restrictiva para el espacio embebido en un primer momento, la estandarización del hardware en ordenadores de sobremesa constituye un buen modelo para comparar. En lugar de limitar la aplicabilidad de los procesadores para la informática diaria, una arquitectura estándar, en cambio, hizo posible que los desarrolladores se centraran en sus competencias y se especializaran en proporcionar mejores componentes de hardware y software al mercado. Como resultado de la estandarización, el mercado informático general se benefició de sistemas operativos más robustos, aplicaciones finales más refinadas y avances en los componentes de hardware subyacentes. La lección aprendida es que el tiempo que se ahorra al evitar el esfuerzo de integración de arquitecturas de hardware personalizadas y componentes de software asociados produce mejores soluciones finales que llegan más rápido al mercado.
La arquitectura estándar del mundo embebido debe ser suficientemente flexible para adaptarse a diversos casos de uso y facilitar las actualizaciones. Dadas estas limitaciones, la arquitectura más robusta para la estandarización en el espacio de diseño embebido es un microprocesador y una FPGA que trabajen juntos como una sola unidad. Estos dos elementos juntos permiten gran flexibilidad de diseño. Ya existen ejemplos de esta arquitectura, que revolucionarán el diseño embebido y que han entrado en el mercado como el chip Zynq de Xilinx, el chip SmartFusion de Actel y los productos de hardware de E/S reconfigurables (RIO) de National Instruments.
Una ventaja clave de una arquitectura estándar es que pueden desarrollarse y utilizarse herramientas de alto nivel y optimizadas para el diseño. A su vez, pueden lanzarse antes al mercado productos más complejos con equipos de diseño más pequeños. Esta transformación es posible gracias a que los expertos en diversos campospueden aprovechar herramientas de mayor nivel para participar más en el diseño embebido a la vez que se elimina el trabajo de integrar varios componentes de hardware y software.

Ventajas de la tecnología FPGA

 

 
Para entender mejor la utilidad de la arquitectura estándar, es importante aclarar las ventajas de una FPGA en un diseño embebido. En un nivel superior, las FPGAs son chips programables que implementan funcionalidad de hardware personalizado. La llegada de herramientas de diseño de un nivel superior ha permitido a los que tienen amplia experiencia con el diseño de hardware digital aprovechar la tecnología FPGA. Las ventajas de FPGA son la fiabilidad y el determinismo del hardware sin el coste inicial y la rigidez del diseño ASIC. Además, las FPGA son más ventajosas que los procesadores multinúcleo que ejecutan muchas menos instrucciones en paralelo que lo que consiguen las FPGA existentes y que requieren pilas de software y controladores más sofisticados, lo que disminuye la fiabilidad en comparación con las FPGAs.
Estas ventajas convierten las FPGAs en el elemento de hardware ideal para la creación rápida de prototipos y para conseguir alto rendimiento en el diseño embebido. La tecnología FPGA ofrece a los diseñadores una vía más rápida al mercado con menor coste. Además, la capacidad de cargar nueva lógica y redefinir las conexiones en el tejido de la FPGA permite tener en cuenta usos futuros de diseños y beneficiarse de actualizaciones más robustas sin necesidad de modificar sustancialmente el hardware.
 

Ejemplos del sector

 
La combinación de procesadores y FPGAs en el diseño de sistemas embebidos está creciendo en muchos sectores. Un ejemplo es ePower Technology, una empresa de Dinamarca que diseña sistemas de control embebido en equipos para probar y entrenar músculos. El sistema de entrenamiento energético SYGNUM que desarrollaron utiliza un motor de cinco fases patentado para controlar suavemente la aplicación de resistencia de fuerza durante movimientos de ejercicios. ePower Technology usa FPGAs para controlar los bucles de control de alta velocidad que mantienen los puntos de ajuste de velocidad y posición mientras que un procesador ejecuta un sistema operativo en tiempo real para controlar los bucles de control de baja frecuencia.
Otro ejemplo de arquitectura estándar puede encontrarse en el sector energético. Xtreme Power es una empresa sita en EE. UU. que diseñó un sistema de almacenamiento de energía distribuida con control embebido y basado en varios procesadores y FPGA. Las FPGAs se utilizan para tomar medidas precisas de alta velocidad de potencia trifásica y ejecutar algoritmos avanzados para determinar cómo responder mejor a la inestabilidad de la red eléctrica. Mientras tanto, los procesadores permiten la comunicación Ethernet a otros nodos distribuidos y facilitan el acceso remoto a datos, la gestión de sistemas y diagnósticos.
 

Herramientas de más alto nivel

 
Además de la arquitectura de hardware estándar, las herramientas de diseño de mayor nivel también son esenciales para abordar los crecientes retos en el diseño embebido. Las herramientas de mayor nivel permiten a los expertos en diversos campos participar más estrechamente en el diseño de sistemas embebidos con equipos de diseño más pequeños y eficaces.
La informática general ofrece pruebas de la eficiencia que puede conseguirse en el desarrollo de aplicaciones con lenguajes y herramientas de diseño de nivel superior. No es de sorprender que el mercado embebido haya empezado a observar el crecimiento de herramientas de diseño de nivel superior como la herramienta de síntesis de alto nivel C-to-Gates AutoESL de Xilinx, la herramienta de síntesis Catapult C de Mentor Graphics y el último software de diseño de sistemas LabVIEW de NI.
El cambio a equipos de diseño más pequeños compuestos de expertos en dominios y arquitectos de sistemas es posible gracias a herramientas de diseño de nivel superior y redunda en un proceso de desarrollo mucho más eficaz. Como se mencionó anteriormente, los equipos de diseño embebidos tradicionales son mucho más grandes y contienen a muchos más especialistas, como diseñadores de FPGA, diseñadores de ASIC, diseñadores de circuitos integrados personalizados, diseñadores de software, etc. Esos equipos tan grandes luchan por ejecutar todas las necesidades de diseño en paralelo.
Además, cada grupo de especialistas debe entender el problema y los requisitos de los expertos en dominios relacionados con su especialización antes de poder ejecutar los requisitos. Como resultado, los equipos de diseño tradicional avanzan con dificultad, dado que a menudo cambian los requisitos por el escollo de asociar requisitos del mercado a funciones del sistema y por los problemas de comunicación entre expertos en áreas específicas y especialistas en diseño.
 

Ejemplos del sector

 
Existen varios ejemplos valiosos del sector que ilustran el poder de las herramientas de diseño de nivel superior y de los equipos de diseño más pequeños. Ejemplo de ello es Ventura Aerospace Inc., una pequeña empresa que da servicio al sector de carga aérea con estrictas restricciones de carga y tecnología de extinción de incendios. Ventura Aerospace optó por confiar en un pequeño equipo de expertos y diseñadores de sistemas junto con el software de diseño gráfico de sistemas LabVIEW de NI y el hardware RIO de NI para desarrollar un sistema de control de extinción de incendios para FedEx. Mediante la arquitectura LabVIEW RIO de NI, compuesta de software de diseño gráfico de sistemas y de hardware RIO, el equipo de Ventura Aerospace pudo ofrecer una solución más asequible, de más calidad y más rápido que muchos de sus competidores más grandes. El éxito del equipo de diseño de Ventura Aerospace es la prueba palpable de que los pequeños equipos pueden ser más eficientes y ganar cuota de mercado frente a los competidores que se basan en el diseño tradicional más arraigado cuando utilizan las herramientas adecuadas. Este ejemplo también ilustra la potencia del software de diseño de sistemas de alto nivel que opera junto con una arquitectura de hardware estándar.
Otra medida de éxito con los pequeños equipos puede verse en el creciente número de pequeñas empresas más innovadoras, así como en los activos que adquieren competidores más grandes y más tradicionales. Un ejemplo de eso con diseño embebido es la venta de activos para retina y glaucoma de OptiMedica a Topcon. OptiMedica es una pequeña empresa emergente de California que ha logrado crear un dispositivo médico oftálmico innovador utilizando hardware basado en FPGA y herramientas de diseño gráfico de sistemas de National Instruments. Topcon tiene su base en Tokio, Japón, se creó en 1932 y es uno de los líderes mundiales en fabricación de sistemas de control oftálmico, optométrico, de GPS y de posicionamiento. La venta de activos para retina y glaucoma de OptiMedica a Topcon indica el éxito que se puede conseguir en un sector establecido por un pequeño equipo que utiliza hardware de FPGA junto con las herramientas de diseño de sistemas.
 

El futuro del diseño de sistemas embebidos

 
El siguiente paso en la evolución de herramientas para diseño embebido es la integración de la arquitectura de hardware estándar con herramientas de diseño de sistemas de alto nivel, que elimina el desarrollo de middleware. Un ejemplo de una plataforma de hardware y software integrada en el espacio embebido es la arquitectura RIO LabVIEW de National Instruments. Esas plataformas integradas combinan los puntos fuertes de la arquitectura de hardware estándar con las ventajas de las herramientas de diseño de sistemas de alto nivel.
El futuro del diseño de sistemas embebidos está en esas plataformas integradas, que permiten la innovación más rápida y rentable.

 

 


Etiquetas
sistemas embebidos ejemplos