Download Tendencias de los sistemas integrados

Document related concepts
no text concepts found
Transcript
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