Tendencias de los sistemas integrados

Tendencias de los sistemas integrados Oportunidades y retos de la tecnología de sistemas en chips y de sistemas integrados interconectados en la autom...
20 downloads 2 Views 107KB Size
Tendencias de los sistemas integrados Oportunidades y retos de la tecnología de sistemas en chips y de sistemas integrados interconectados en la automatización industrial Grant Martin, Richard Zurawski

Courtesy Philips

Los avances de la tecnología de procesos y la disponibilidad de nuevas herramientas de diseño están ampliando el campo de aplicación de los sistemas integrados, que se implementan como conjunto de chips en una placa o como conjunto de módulos en un circuito integrado. La tecnología de sistemas en chips (SoC, System-on-Chip) se está extendiendo actualmente en la automatización industrial para crear complejos dispositivos inteligentes de campo. Esta tendencia va acompañada de la adopción de diseños basados en plataformas, lo que facilita el diseño y la verificación de sistemas complejos SoC con una amplia reutilización del hardware y software IP (Propiedad Intelectual). Otro importante aspecto de la evolución de los sistemas integrados es la tendencia a interconectar nodos integrados aplicando tecnologías de redes especializadas, conocidas frecuentemente como sistemas integrados interconectados (NES, Networked Embedded Systems).

Revista ABB 2/2006

9

Tendencias de los sistemas integrados

Tecnologías de sistemas integrados

L

a tecnología SoC (System-on-Chip), una revolución del diseño de circuitos integrados (CI), ha sido posible gracias a los avances de la tecnología de procesos, que permiten integrar los principales componentes y subsistemas de un producto electrónico en un solo chip o juego integrado de chips [1]. Este desarrollo ha sido muy bien acogido por los diseñadores de chips complejos, ya que permite la máxima integración posible para obtener más rendimiento con menor consumo de energía y ofrece otras ventajas de coste y tamaño. Estos factores son muy importantes para el diseño y la utilización de SoC es, con gran probabilidad, una de las principales decisiones del desarrollo de sistemas integrados en tiempo real. Un procesador SoC es un circuito integrado complejo, o juego integrado de chips, que combina los principales elementos o subsistemas funcionales de un producto completo. Los diseños SoC más exigentes incluyen al menos un 1

procesador programable y a menudo una combinación de un procesador de control RISC y un DSP de procesado de señales digitales. También incluyen estructuras de comunicaciones sobre chips: bus o buses de procesadores y de periféricos y, en ocasiones, un bus de sistema de alta velocidad. Para los procesadores SoC es muy importante que el chip tenga unidades de memoria jerarquizadas y enlaces con memorias externas. Para la mayoría de las aplicaciones de proceso de señales se proporciona por medio de hardware cierto grado de unidad funcional de aceleración, que consigue más rendimiento y menos consumo de energía. Para la interconexión con el exterior, el diseño de SoC incluye varios bloques de proceso de periféricos compuestos por componentes analógicos e interfaces digitales (por ejemplo, para buses de sistema en el nivel de tarjeta o panel posterior). La futura tecnología SoC puede incorporar sensores y actuadores basados en sistemas micro-

Dispositivo SoC típico para aplicaciones de consumo

Acceso a memoria externa

Flash

RAM

ICache

DCache

DMA

Bus de sistema

Microprocesador

RAM

Flash

DCache

ICache

DSP

Bus periférico PLL

Test

Descodificatión MPEG

PCI

Video I/F

USB

Audio CODEC

Disk Controller

100 base-T

10

Puente de bus

electro-mecánicos, o procesamiento químico (laboratorio en un chip) 1 . Entre los diseños SoC más interesantes, que comprenden hardware y software, están los procesadores programables, los sistemas operativos en tiempo real y otros elementos de software dependientes del hardware. Así pues, el diseño y uso de SoC implica, además del hardware, diseño e ingeniería en el nivel de sistemas, compromisos de hardwaresoftware y particiones, así como arquitectura, diseño e implementación de software. Sistemas en chips programables

Recientemente se ha ampliado el campo de aplicación de SoC. Además de circuitos integrados personalizados (custom IC), circuitos integrados de aplicación específica (ASIC) o componentes estándar de aplicación específica (ASSP), el nuevo planteamiento incluye ahora el diseño y uso de partes lógicas reconfigurables y complejas con procesadores integrados. En algunos casos se incorporan, además, otros bloques de elementos con propiedad intelectual, disponibles en el mercado, como procesadores, memorias o funciones especiales para aplicaciones, que se adquieren a terceros. Xilinx (Virtex-II PRO Platform FPGA, Virtex-IV) y Altera (SOPC) son algunas empresas que ofrecen estas matrices FPGA de puertas programables por el usuario. Esta tendencia hacia la tecnología SoC combina gran número de circuitos lógicos reconfigurables con procesadores RISC (reduced instruction set computing) integrados, para aplicar a un diseño combinaciones flexibles y adaptables de proceso de hardware y software. Los algoritmos con gran contenido de lógica de control y gran flujo de datos de proceso pueden dividirse en el procesador RISC de control, cuya lógica reconfigurable acelera el hardware. La combinación resultante no maximiza el rendimiento ni minimiza el consumo de energía ni los costes, en comparación con custom IC o ASIC/ASSP para las mismas funciones, pero a cambio es muy flexible para modificar el diseño en el campo y evita los grandes costes de ingeniería que provocan los cambios en el campo. Por tanto las nuevas aplicaciones e interfaces y los algoritmos mejorados pueden ser transferidos a productos que ya están en funcionamiento real. Revista ABB 2/2006

Tendencias de los sistemas integrados

Tecnologías de sistemas integrados

Otras soluciones, como las estructuras lógicas del tipo matrices de puertas de metal programables, junto con subsistemas de procesadores residentes y otros núcleos –como los ofrecidos por “ASIC Estructurados” de LSI Logic (RapidChip) y NEC (Instant Silicon Solutions Platform)– son formas de SoC intermedias entre el proceso “full mask” y las matrices de puertas programables por el usuario. Este caso tiene dos inconvenientes específicos: lentitud de la creación de diseños (de un día a varias semanas); más trabajo de ingeniería no recurrente que en FPGA (pero mucho menos que un juego completo de máscaras); menos costes, más rendimiento y menos consumo de energía que FPGA (del orden del 15–30% peor que con ASIC). Actualmente hay otros planteamientos mixtos de interés, como el caso de ASIC/ASSP con una región FPGA en un chip, para dar más opciones a los equipos de diseño. Otra variante es la combinación de un procesador configurable implementado en parte y permanentemente en silicio, junto con una región FPGA que se utiliza para la extensión de instrucciones y otras implementaciones de hardware de campo. La compañía de semiconductores Stretch inc, por ejemplo, utiliza el procesador configurable Tensilica en este tipo de plataforma SoC 1 . Revista ABB 2/2006

2

Procesador LX de Tensilica Caracterización base ISA Opcional y configurable

Funciones configurables Función opcional Caracterización por el diseñador (TIE) Controles de procesador

Instrucción Fetch/descodificación

Seguimiento/JTAG/OCD

Colas definidas por el usuario/ puertos hasta 1 M pins

Unidades de ejecución definidas por el usuario, archivos e interfaces de registro

Preparación de la ejecución definida paralelamente por el diseñador FLIX, „N“ ancho

Unidades de ejecución definidas por el usuario, archivos e interfaces de registro

Otros productos para este campo son los núcleos de proceso e interfaces formados por bloques de multiplicación y acumulación (MAC, Multiply–ACcumulate), destinados al procesado de imágenes y de señales de flujo de datos DSP, y las interfaces serie de alta velocidad para la comunicación por cable, entre ellos los bloques serializadores/de-serializadores SERDES. Los SoC de integración de sistemas en chip programable no son específicos de una aplicación, pero tampoco completamente genéricos. Queda por ver si los SoC tendrán éxito en aplicaciones de consumo de gran volumen o quedarán limitados a dos campos principales: la rápida creación de prototipos de diseños que serán reorientados hacia implementaciones ASIC o ASSP y los elementos de gama superior, relativamente caros, de infraestructura de comunicaciones, que requieren flexibilidad in situ y para los cuales se pueden aceptar mayores costes y más consumo de energía junto con un rendimiento menor.

Carga/memoria Unidad #2

Preparación de ejecución base ISA

Archivo de registro

Interruptores, puntos de inflexión, temporizadores

Memorias de instrucción local

Base ALU Unidad de ejecución opcional

Unidad de ejecución definida por el usuario

Interfaz de bus externo

Interfaz de procesador (PIF) hacia el bus del sistema

Memorias de instrucción local

Máquina Vectra LX DSP Carga de datos/ unidad de memoria

Plataformas y plataformas programables

Durante los últimos años el diseño se ha concentrado en los SoC complejos y en la reutilización de componentes virtuales, el llamado “diseño basado en plataforma” [1, 2], una metodología de diseño planificado que reduce el tiempo y el trabajo requeridos –además de los riesgos inherentes– al diseñar y verificar un SoC complejo. Para ellos se reutilizan ampliamente combinaciones de hardware [3] y software [4] con propiedad intelectual. A diferencia de la reutilización de IP bloque por bloque, el diseño basado en plataforma ensambla grupos de componentes para constituir una arquitectura de plataforma reutilizable, la cual, a su vez se combina con librerías de componentes virtuales de hardware y software ya verificados y caracterizados, para aplicaciones específicas, formando una plataforma de integración SoC. Varias razones explican la creciente popularidad del diseño con base en plataformas: diseño más productivo, menos riesgos, más facilidad de uso de componentes virtuales ya integrados, provenientes de otros campos de diseño, y reutilización de arquitecturas SoC creadas por expertos. Entre las plataformas industriales están las aplicaciones com-

Interfaz de memoria local Xtensa

pletas para productos específicos como Philips Nexperia y TI OMAP [5], las SOPC reconfigurables y las basadas en procesadores. Las plataformas basadas en procesadores, como ARM PrimeXsys, utilizada por numerosos procesadores Tensilica extendidos y configurados, se concentran en el procesador, en la arquitectura de bus requerida y en los periféricos básicos, así como en los sistemas operativos en tiempo real y en los programas básicos de control. FPGA y los dispositivos SOPC constituyen una “metaplataforma”, es decir, una plataforma para crear plataformas. Estos dispositivos contienen capacidades básicas más genéricas y procesadores integrados IP, buses sobre chips, bloques IP especiales como MACs y SERDES y otros bloques IP ya cualificados. Los diseñadores pueden encargar estos dispositivos a empresas como Xilinx y Altera y a continuación personalizar la metaplataforma con librerías IP de dominios específicos de la aplicación, antes de entregarla a los equipos de diseños derivados. Sistemas integrados interconectados

Otro importante aspecto de esta evolución son los sistemas integrados distribuidos, llamados sistemas integrados in11

Tendencias de los sistemas integrados

Tecnologías de sistemas integrados

terconectados para resaltar la infraestructura de interconexión y el protocolo de comunicación. Un sistema integrado interconectado es un conjunto de nodos integrados, distribuidos espacial y funcionalmente, interconectados por una infraestructura de comunicación cableada y/o inalámbrica y de protocolos, que interaccionan entre sí y con el entorno por medio de sensores y actuadores. El sistema también puede comprender un nodo maestro que coordina la computación y la comunicación para conseguir objetivos específicos. Los controladores integrados en nodos o dispositivos de campo, como sensores y actuadores, se encargan de la conversión de señales, del proceso de datos y señales y de la comunicación sobre chips. La funcionalidad y las capacidades de proceso y comunicación de los controladores, cada día mayores, han reforzado la extendida tendencia a interconectar dispositivos de campo en torno a redes especializadas, frecuentemente llamadas redes de áreas de campo, que normalmente son un enlace de comunicación digital multipunto y bidireccional [6]. En general, el uso de redes especializadas (de áreas de campo) es ventajoso: la combinación de hardware y software integrados es más flexible, el sistema ofrece mejores prestaciones y se simplifican la instalación, actualización y mantenimiento del sistema. Los sistemas integrados interconectados están presentes en numerosas aplicaciones (automoción, trenes y aviones, edificios de oficinas y aplicaciones industriales) y están dedicados principalmente a

3

la supervisión y el control. Algunos ejemplos representativos son las redes que conectan dispositivos de campo, como los sensores y actuadores con controladores de campo, concretamente los controladores PLC para automatización industrial o las unidades de control electrónico (ECU) para la automoción. También se utilizan en interfaces hombre-máquina, por ejemplo, en visualizadores del salpicadero de automóviles y en el sistema SCADA (control de supervision y adquisición de datos) para automatización industrial. Las tecnologías de redes especializadas son tan diversas como los campos de aplicación. Por ejemplo: PROFIBUS, PROFInet o EtherNet/IP (ambas con comunicación en tiempo real) para el control y automatización industrial; LonWorks, BACnet, y EIB/KNX para la automatización y control de edificios; CAN, TTP/C y FlexRay para la automoción; y Train Communication Network (TCN) para la automatización de trenes. La diversidad de requisitos de las aplicaciones (tiempo real flexible/riguroso, seguridad crítica, topología de red, etc.) exige gran variedad de soluciones y el uso de protocolos basados en diversos principios de operación. El resultado de ello ha sido una plétora de redes para numerosas aplicaciones específicas [6] 3 . Dados los requisitos de comunicación de las aplicaciones, las redes de áreas de campo –a diferencia de las redes LAN– suelen tener bajas velocidades de transferencia de datos, manejan paquetes pequeños de datos y generalmente han de operar en tiempo real, lo que

Típica arquitectura de red de área de campo en la automatización industrial Control network controller

Field area network (Fieldbus)

I/O modules

switchgear

drives

puede hacer necesaria la transferencia de datos determinista o de tiempo limitado. No obstante, en las redes de campo ya son comunes velocidades de transferencia de datos superiores a 10 Mbit/s, como en las redes LAN. Las redes de áreas de campo para automatización industrial (a diferencia de la automatización y control de edificios) no tienen gran necesidad de funciones de encaminamiento o de control de extremo a extremo. En consecuencia, en estas redes sólo se utilizan las capas 11 (capa física), 2 (capa de enlace de datos, inclusive implícitamente la capa de control de acceso al medio) y 7 (capa de aplicación, inclusive capa de usuario) del modelo de referencia ISO/OSI [7]. Para garantizar una respuesta determinista hay que utilizar esquemas de planificación apropiados, frecuentemente en sistemas operativos en tiempo real de dominios específicos de aplicación o en aplicaciones en tiempo real, “desnudas” (mínimas) y personalizadas. Los sistemas integrados interconectados para aplicaciones en que la seguridad es crítica, como x-by-wire, que adopta soluciones electro-mecánicas para sustituir soluciones mecánicas o hidráulicas por sistemas eléctricos/electrónicos, han de tener un alto grado de dependencia que garantice la seguridad del sistema a los fallos. Como ejemplos mencionaremos el control de vuelo en aviones y de conducción por cable en automóviles, cuyo fallos pueden poner en peligro vidas humanas, propiedades o el medio ambiente. Para evitar estos riesgos es necesario suministrar servicios fiables, a prueba de fallos, a petición del usuario. La dependencia de los sistemas x-bywire es un requisito principal, pero también una restricción a la hora de adoptar este tipo de sistema. Aunque el uso de redes de áreas de campo basadas en líneas cableadas es muy común, la tecnología inalámbrica, inclusive las soluciones híbridas de líneas con o sin cables, resulta muy interesante en varios campos de aplicación. En la automatización industrial, por ejemplo, las redes de dispositivos inalámbricos (sensores y actuadores) pueden proporcionar ayuda para las operaciones móviles, como en el caso

instrument motor

Nota 1)

Véase en la figura 1, página 47, una breve descripción del modelo OSI.

12

Revista ABB 2/2006

Tendencias de los sistemas integrados

Tecnologías de sistemas integrados

de robots móviles, y para la supervisión y control de equipos en entornos peligrosos y de difícil acceso. Una categoría independiente es la de redes de sensores inalámbricos, concebida específicamente para la supervisión. Oportunidades y retos de SoC y MPSoC

Numerosas oportunidades se derivan del eficiente diseño, sin errores, de SoC y especialmente de un SoC multiprocesador (MPSoC, Multi-Processor System-on-Chip), que combina las ventajas del proceso en paralelo y de la alta capacidad de integración de SoC. Otros campos de interés son la verificación de núcleos integrados en SoC, los cálculos de energía, la seguridad de los sistemas integrados y el desarrollo de sistemas de seguridad crítica en el contexto de control por cable (vuelo, conducción) y otras aplicaciones [8]. Densidades de circuitos y frecuencias de operación cada vez mayores, así como el uso de diseños de sistemas sobre chips, han producido un gran volumen de datos de prueba para los actuales circuitos integrados basados en núcleos incorporados. Reducir el volumen de datos y el tiempo son dos retos importantes a la hora de verificar los circuitos de este tipo. Otros problemas son la creciente disparidad entre las prestaciones de diseño y el equipo automático utilizado para las pruebas, que ha convertido las pruebas de velocidad, especialmente las de circuitos de alta velocidad, en un desafío, con el resultado de pérdida creciente de productividad, alto coste de las pruebas funcionales hechas manualmente y mayores costes de equipos de prueba de alta velocidad y gran número de patillas. La creciente disipación de energía, resultado del aumento de densidad de circuitos integrados y de la frecuencia del reloj, afecta directamente al coste de encapsulado y refrigeración, además de a la fiabilidad y a la vida útil. Éstos y otros factores, como la alimentación por baterías y el tamaño limitado de los dispositivos (como en el caso de los portátiles), hacen que el diseño para bajo consumo de energía sea prioritario en los sistemas integrados. Las técnicas y metodologías de diseño que tienen por objeto reducir la disipación de energía, tanto estática como dinámica, suelen concentrarse Revista ABB 2/2006

en los siguientes campos: optimización en el nivel de sistema/aplicación, que explora la implementación de tareas con diferencias de potencia/energía en función de las características del servicio; subsistemas de proceso con bajo consumo de energía, como el escalado de tensión y frecuencia, el escalado de recursos dinámicos y la selección de núcleos de procesadores; finalmente, los subsistemas de memoria con bajo consumo de energía, como la optimización jerárquica de memoria caché, los nuevos esquemas de partición horizontal y vertical de memoria caché y el escalado dinámico de elementos de memoria. Los recursos de anchura de banda comercial para la computación, memoria y ancho de banda de comunicación de los controladores en dispositivos integrados (dispositivos de campo en automatización industrial, por ejemplo), relativamente limitados, plantean retos considerables a la implantación de políticas eficaces de seguridad que, en general, exigen importantes recursos.

Esto limita la aplicabilidad de los principales protocolos criptográficos, incluso de las versiones personalizadas por los proveedores. Los sistemas operativos que se ejecutan en controladores pequeños suelen implementar únicamente los servicios esenciales y no ofrecen la posibilidad de autentificación o control de acceso para proteger los dispositivos de campo cuya misión y seguridad son críticas. La creciente demanda de acceso remoto para procesar datos en fábrica puede exponer los sistemas de automatización a posibles ataques contra la seguridad electrónica y con ello comprometer la integridad de estos sistemas y la seguridad de la planta. La exigencia de disponibilidad del sistema y/o de la planta puede tener como consecuencia que la actualización del software de seguridad en dispositivos de campo en funcionamiento resulte poco práctica o esté plagada de riesgos.

Grant Martin

Grant Martin

Tensilica, USA Richard Zurawski

Grant Martin es Director científico en Tensilica, Inc. Su licenciatura y máster en Matemáticas los hizo en la Universidad de Waterloo (Canadá). Ha trabajado en Burroughs (Escocia), BNR/Nortel (Canadá) y Cadence Design Systems en San José (California) antes de ingresar en Tensilica en 2004.

ISA Group, USA [email protected]

Bibliografía [1] H. Chang, L. Cooke, M. Hunt, G. Martin, A. McNelly, L. Todd: Surviving the SOC Revolution: A Guide to Platform-Based Design. Kluwer Academic Publishers, 1999. [2] A. Sangiovanni-Vincentelli, G. Martin: PlatformBased Design and Software Design Methodology for Embedded Systems. IEEE Design and Test of Computers 18 (2001) 6, 23–33.

Richard Zurawski

[3] M. Keating, P. Bricaud: Reuse Methodology Manual for System-on-a-Chip Designs. Kluwer Academic Publishers, 1998 (First Edition),

Richard Zurawski es Presidente de ISA Group (San Francisco). Ha ocupado puestos ejecutivos en diversas empresas de la región de San Francisco y en Kawasaki Electric (Tokyo) y ha sido catedrático del Instituto de Ciencias Industriales de la Universidad de Tokyo. Es editor de una colección de libros sobre tecnología de información industrial (CRC Press/Taylor & Francis). Tiene un máster en Ingeniería eléctrica y es licenciado en Ciencias Computacionales.

1999 (Second Edition), 2002 (Third Edition). [4] G. Martin, C. Lennard: Invited CICC paper. Improving Embedded Software Design and Integration for SOCs. Custom Integrated Circuits Conference, May 2000, 101–108. [5] G. Martin, H. Chang (Editors): Winning the SOC Revolution: Experiences in Real Design. Kluwer Academic Publishers, 2003. [6] R. Zurawski (ed.): The Industrial Communication Systems, Special Issue. Proceedings of the IEEE, 93 (2005) 6. [7] Zimmermann H.: OSI Reference Model: The ISO model of architecture for open system interconnection. IEEE Transactions on Communications, 28(4): 425–432, 1980. [8] R. Zurawski (ed.): Embedded Systems Handbook. Taylor & Francis, 2005.

13