Diseño y desarrollo de sistemas integrados

El diseño y desarrollo de sistemas integrados se rige por los requisitos de las aplicaciones y las tecnologías de la información. Con la innovación y el desarrollo continuos de la tecnología microelectrónica, el nivel de integración y el nivel de proceso de los circuitos integrados a gran escala han mejorado continuamente. En particular, la introducción del sistema operativo en tiempo real integrado (RTOS) proporciona el soporte subyacente y la plataforma de desarrollo de alta eficiencia para el desarrollo de software de aplicaciones de sistemas integrados complejos.

Proceso de diseño de sistemas integrados

Fase de diseño

La fase inicial del diseño conceptual de un nuevo producto implica cierta previsión del producto basada en las predicciones del mercado, las necesidades de los clientes y el desarrollo tecnológico. Al planificar un producto, se elabora un estudio de viabilidad del mismo con estimaciones del número de unidades vendidas, el precio y los beneficios. Esto conduce a la creación de un diseño inicial del producto, las especificaciones de diseño y el plan de marketing del producto. En esta fase, también pueden participar diseñadores industriales para crear un nuevo concepto de embalaje del producto.

No hay que olvidar que el precio de venta debe cubrir los costes de marketing, diseño y desarrollo de la empresa, además del coste de fabricación de cada unidad del producto. Esto depende del volumen de ventas, pero no es raro que el precio sea dos o tres veces superior al coste de producción de una unidad del producto.

embedded systems design process
embedded systems design process

Fase de desarrollo

La mayor parte del trabajo de implementación del hardware y el software se lleva a cabo al final de la fase de diseño y durante la fase de desarrollo. El análisis crítico de las decisiones de diseño ayuda a determinar si es físicamente posible implementar el concepto del proyecto basándose en las especificaciones del mismo. A menudo se crean maquetas eléctricas y de software antes de analizar las decisiones de diseño. A continuación, se diseñan y construyen un pequeño número de prototipos, que se utilizan para realizar pruebas más detalladas del hardware y el software.

fase de producción

Por último, en la fase de producción se fabrica una gran cantidad de producto. En primer lugar, se suele crear un pequeño lote piloto para realizar pruebas y evaluaciones adicionales antes de comenzar la producción en masa. Los ingenieros de calidad trabajan continuamente para mejorar la calidad del producto y del proceso. Los ingenieros de soporte se ocupan de los cambios que siguen a la introducción de un nuevo producto y proporcionan soporte técnico para el mismo. Dadas las tendencias actuales de globalización, la producción en masa de un nuevo dispositivo integrado suele tener lugar en otro país donde resulta más rentable. Para muchos dispositivos integrados, el proceso completo dura entre seis meses y un año, pero la competitividad del mercado obliga constantemente a acortar el ciclo de vida del producto.

Desarrollo de un proyecto de sistema integrado

Las principales tareas de desarrollo de software y diseño de ingeniería se llevan a cabo en la fase de desarrollo, que ahora se describirá con más detalle. En primer lugar, los diseñadores deben elegir el procesador y el sistema operativo. La elección de un procesador para un dispositivo integrado implica tener en cuenta muchos factores, como el precio, el rendimiento, el consumo de energía y la compatibilidad con el software.

embedded systems development process
embedded systems development process

Elija el procesador.

Los fabricantes proporcionan manuales en los que describen sus procesadores y suelen facilitar a los desarrolladores una placa de referencia completa que puede utilizarse como punto de partida a la hora de desarrollar un nuevo diseño informático que utilice dicho procesador. Una descripción detallada de cada procesador, dispositivo de memoria y todos los chips necesarios excede el alcance de esta guía, pero más adelante se analizarán algunas de las propiedades de hardware más generales que afectan directamente a la creación de software.

Conectar dispositivos de hardware al procesador.

Una vez que el diseñador de hardware del sistema integrado ha seleccionado el procesador y los dispositivos de memoria correspondientes, el siguiente paso es añadir los dispositivos de E/S de hardware y la estructura de bus correspondiente necesaria para conectar los dispositivos requeridos al procesador. El diseño de dispositivos integrados implica seleccionar y conectar el hardware necesario para los distintos dispositivos de E/S requeridos en el nuevo diseño.

Probar, depurar y rediseñar.

Después de introducir cuidadosamente el diagrama esquemático del diseño, se diseña una placa de circuito impreso (PCB) para el dispositivo integrado utilizando un sistema de diseño asistido por ordenador (CAD) de placas de circuito impreso. Esta herramienta importa la información de conexión de los pines desde un diagrama de circuitos y la utiliza para diseñar y probar los conductores de cobre utilizados para conectar los circuitos integrados (ICS) en una placa de circuito impreso. Se crean varias placas de circuito impreso, se llenan con los componentes necesarios y luego se utilizan para realizar pruebas de software exhaustivas en el nuevo diseño. Cualquier error de diseño de hardware detectado durante las pruebas requerirá un cambio en el diagrama del circuito, la modificación del diseño de la placa de circuito impreso y una nueva. Esto aumentará el ciclo de producción de las placas de circuito impreso y las pruebas, lo que aumentará el tiempo de desarrollo en consecuencia.

Elija el sistema operativo.

Las herramientas de desarrollo de software suelen venir incluidas con el sistema operativo. Dado que el sistema operativo está escrito en C / C++, para generar un nuevo sistema operativo se necesita un compilador, un editor de enlaces, un depurador y herramientas de imagen binaria. Las mismas herramientas se suelen utilizar para el desarrollo de aplicaciones.

El desarrollo de software se lleva a cabo en paralelo con el desarrollo de hardware con el fin de reducir el tiempo total de desarrollo del producto. Esto cobra aún más importancia dado el ciclo de vida cada vez más corto de los dispositivos integrados actuales. Para el desarrollo y las pruebas de software, se pueden utilizar herramientas de emulación y placas informáticas integradas con hardware similar que ejecuten el mismo sistema operativo antes de que esté disponible una nueva plataforma de hardware. Dado que la mayor parte del código está escrito en C / C++/C#, la mayor parte del software puede incluso desarrollarse y probarse en otro procesador o emulador. A continuación, el código se recompila para el nuevo procesador para la última ronda de desarrollo y pruebas cuando el nuevo hardware está disponible.

Cuando haya completado el desarrollo de su software, puede transferirlo a un dispositivo real para su prueba y lanzamiento final. Windows Embedded CE tiene un emulador ARM junto con herramientas de desarrollo. El emulador le permite ejecutar su software en un PC a una velocidad mucho mayor que el hardware real. El emulador se puede utilizar para depurar y perfilar su software, y también se puede utilizar para el desarrollo de software para dispositivos remotos.

Tecnologías de memoria para dispositivos integrados

La mayoría de los dispositivos integrados utilizan actualmente dos tipos de memoria: SDRAM o, en ocasiones, SRAM para la memoria principal, y Flash o ROM para la memoria no volátil. La SDRAM tiene un coste por bit de memoria significativamente menor que la SRAM, pero requiere un controlador de hardware más sofisticado para los ciclos periódicos de actualización dinámica de la memoria. Una de las decisiones más importantes que se deben tomar al inicio del proceso de diseño es la cantidad de memoria de cada tipo que necesita el dispositivo.

memoria SDRAM

SDRAM es la abreviatura de «Synchronous Dynamic Random Access Memory» (memoria dinámica síncrona de acceso aleatorio). Utiliza una tensión de funcionamiento de 3,3 V y un ancho de banda de 64 bits. También es la memoria más utilizada desde hace mucho tiempo, desde el chipset 430TX hasta el chipset 845, todos son compatibles con SDRAM. La SDRAM sincroniza la CPU y la RAM a través del mismo reloj, de modo que la CPU y la RAM pueden compartir un ciclo de reloj y funcionar de forma sincronizada a la misma velocidad. El flanco ascendente de cada pulso de reloj inicia la transferencia de datos, y la velocidad es un 50 % superior a la de la memoria EDO.

Memoria flash

El sistema operativo y los programas de aplicación suelen almacenarse en la memoria flash, ya que la mayoría de los dispositivos integrados no disponen de disco duro.

Los dispositivos de memoria flash almacenan datos en chips flash. Los chips flash contienen un patrón de electrones que se mueven en bucle. Los electrones se almacenan en la celda de memoria y se mueven de un lado a otro entre los diferentes bits de datos del chip. El número de bits se mide por la velocidad a la que se mueven los electrones entre las celdas o bits.

Cuando se realiza un cambio en un bit, se escribe en el siguiente bit. Si se cambian dos bits a la vez, se añaden dos nuevos bytes al programa, y así sucesivamente.

SDRAM frente a Flash

La SDRAM es más rápida que la memoria flash, lo que la hace ideal para aplicaciones que requieren un acceso rápido a los datos.

La SDRAM consume menos energía que la memoria flash, lo que la hace ideal para dispositivos portátiles.

La SDRAM es más cara que la memoria flash, lo que la hace menos ideal para aplicaciones en las que el coste es un factor importante.

La memoria flash es más duradera que la SDRAM, por lo que se utiliza a menudo en aplicaciones en las que es necesario almacenar datos durante largos periodos de tiempo.

La memoria flash tiene una velocidad de lectura mucho más lenta en comparación con la SDRAM.

La memoria flash solo admite un número limitado de operaciones de escritura, por lo que el uso de un sistema de memoria virtual con paginación bajo demanda (como en un ordenador de sobremesa) con memoria flash (en lugar de un disco duro) que sirva como dispositivo de intercambio de páginas de memoria virtual no suele utilizarse en dispositivos integrados.

Compartir en:

Scroll al inicio

Cotización