Multi-Procesador ST Nomadik Diseño de Procesadores para Multimedia

Download Report

Transcript Multi-Procesador ST Nomadik Diseño de Procesadores para Multimedia

Universidad de Las Palmas de Gran Canaria
Instituto Universitario de Microelectrónica Aplicada
Diseño de Procesadores para Multimedia
Multi-Procesador ST Nomadik
Manuel Alexis de los Reyes Darias
A. Núñez
Contenido
 Introducción
 Arquitectura
 Hardware
 Software
 Otras
Características
Multi-Procesador ST Nomadik
Los procesadores para
multimedia NomadikTM han
sido diseñado
específicamente para
teléfonos móviles y
dispositivos portátiles
inalámbricos. Ofrecen un
consumo de potencia muy
bajo, acotada calidad de
audio y vídeo a una
frecuencia dada, desarrollo
de software simplificado y
escalabilidad para futuras
aplicaciones multimedia.
Introducción (1)
El procesador NOMADIK habilita la
comunicación audiovisual y la
reproducción de contenidos
multimedia en dispositivos móviles,
PDAs o sistemas de entretenimiento
para automóviles.
diseño de procesadores
ultimedia en nuestros días
nfronta los siguientes
aradigmas.
Introducción (2)
 Consumo
de potencia muy reducido.
 Calidad nativa de vídeo y audio.
 Adecuado soporte para el desarrollo de
aplicaciones para facilitar un Time-toMarket reducido.
 Adaptabilidad a múltiples segmentos
del mercado y futuras aplicaciones
multimedia.
Introducción (3)
l aumento de los costes de diseño y de ingeniería
o recurrente (NRE) de las máscaras de los ASICs,
nido a la mayor densidad de procesadores
ntegrados y a la creciente complejidad del software
ncapsulado ha propiciado que recientemente haya
obrado especial relevancia entre los fabricantes de
stemas integrados en chip (SoC) la brecha
xistente entre el diseño de ASICs con células
stándar y FPGAs.
l balance entre configurabilidad y eficiencia
epresenta un problema, especialmente para
quellos diseños de producción a mediana escala
entre algunos cientos y cien mil unidades), donde a
menudo es preciso conciliar las características de
ensidad y desempeño de los ASIC, para cumplir las
specificaciones del producto y objetivos de coste,
on el time-to-market de las FPGAs, para cumplir los
bjetivos del mercado.
Configurabilidad
or esta razón, el fabricante de SoC
ST
Icroelectronics ha desarrollado su propia
metodología de diseño y herramientas para atenuar
sta brecha: la metodología Multiplex de
TMicroelectronics.
Vs. Eficiencia
Introducción (4)
 El
potencial talón de Aquiles de los
procesadores para aplicaciones móviles
reside en el consumo de energía:
– La potencia y capacidad de las baterías crece entre
10-15% anualmente.
– Los requerimientos de alimentación de estos
procesadores crece entre 35-40% anualmente.
Introducción (5)
SIA Technology Roadmap (2002 Update)
Introducción (6)
 Factores
que contribuyen al consumo
de energía:
– Corrientes de fuga.
– Tensión de alimentación.
– Frecuencia de reloj.
Introducción (7)

Desempeño Vs. Consumo de potencia
– Para alcanzar un óptimo nivel de compresión es
necesario recurrir a cómputos intensivos, para lo
que se requieren procesadores con velocidad de
cómputo elevada y, en consecuencia, un elevado
consumo de potencia.
– Para reducir el consumo de potencia deberemos
operar a frecuencias más bajas.
– Los co-procesadores cobran importancia en
detrimento de la velocidad del procesador principal.
Introducción (8)
Para operar a frecuencias más bajas:
 Instrucciones
SIMD (single-instructionmultiple-data), aprovechan el paralelismo a
nivel de datos en los algoritmos de
codificación de imagen.
 Arquitecturas VLIW (very-long-instructionword), permiten ejecutar simultáneamente
varias operaciones en un mismo ciclo de
reloj.
Estrategia Nomadik:
Introducción (9)
Los procesadores Nomadik están
basados en la plataforma Nomadik,
un estándar abierto, desarrollado
por ST 
conjuntamente con otros
miembros de la industria, para
asegurar que la arquitectura del
terminal móvil sea sencillo de
programar, uso de una CPU no
propietaria, y un sistema operativo

(SO) y Modem radio abierto para
conferir libertad al fabricante a la

hora de diferenciar sus productos.
Arquitectura de procesamiento distribuida en
lugar de una arquitectura de procesador
monolítica.
CPU estándar para dispositivos móviles.
Soporte para una variedad de periféricos y
sistemas operativos, lo que permite al
fabricante diferenciar el producto final.
 APIs abiertas y bien documentadas para
facilitar el desarrollo de software.
 Escalable mediante la adición de coprocesadores a demanda.
Contenido
 Introducción
 Arquitectura
 Hardware
 Software
 Otras
Características
Multi-Procesador ST Nomadik
La arquitectura ST Nomadik ha sido
especialmente
diseñada
para
aplicaciones multimedia móviles. Esto
supone soporte para la codificación y
decodificación MPEG-4, así como para
la presentación en pantallas de
terminales móviles (160 x 160) y PDAs
(desde 320 x 240 hasta 680 x 480).
Arquitectura (1)
La figura muestra el diagrama de
bloques de la primera implementación
de la arquitectura multiprocesador
Nomadik. La CPU principal del sistema
es ARM926E-JS. Esta CPU se centra en
labores de coordinación y control, por
lo que la mayoría de las funciones
multimedia
son
realizadas
por
aceleradores
especializados.
La
primera versión de Nomadik incluye
aceleradores para audio y video. Todas
las unidades se conectan mediante un
bus AMBA.
Arquitectura (2)
Procesamiento distribuido:
– El uso de aceleradores inteligentes independientes
alivia extraordinariamente la carga de la CPU.
– Se requieren 0,2 MIPS (0,07% de CPU) para decodificar
un stream de vídeo QCIF a 15 fps.
– Operaciones a baja frecuencia permiten realizar
cálculos con MIPS intensivos para procesado rápido a
nivel de paquete, recuperación de errores y control de
tareas para optimización de carga y retardo.
Arquitectura (3)
 Bus
AMBA
– Maximiza el ancho de banda entre CPU, aceleradores
multimedia, memoria del sistema y periféricos.
– Se efectúa un escalado de la imagen en el sensor antes de
la compresión para almacenar y acceder a menos datos.
– Se emplea una compresión especial sin pérdidas para
minimizar la conmutación de las líneas en el bus.
 Periféricos
Nomadik
– Soportan SS.OO. de alto nivel como Symbian, Linux o
Windows CE.NET.
– Interfaces externas necesarias para aplicaciones móviles
multimedia como LCD, MMC, tarjetas digitales de seguridad
y codecs de audio.
Contenido
 Introducción
 Arquitectura
 Hardware
 Software
 Otras
Características
Multi-Procesador ST Nomadik
El dispositivo se basa en la combinación del
procesador
ARM926EJ-S
con
procesadores
inteligentes que operan de manera independiente
pero concurrente para manejar las funciones
críticas de codificación de video y audio, incluido el
pre/post-procesado. El desarrollo de software se ha
simplificado con la programación en lenguaje de
alto nivel de la arquitectura de CPU ARM, que
incluye un acelerador Java para una ejecución en
tiempo real eficiente.
Hardware (1)
ARM926EJ-S
Hardware (2)
 Núcleo
RISC 32-bit ARM926EJ-S, que
opera a 350MHz fabricado con
tecnología CMOS 0,13m.
 Formato Thumb 16-bit para suboperaciones y código de alta densidad.
 MMU (Unidad de Gestión de Memoria).
 Caché de instrucciones de 32 Kbytes.
 Caché de datos de 16 Kbytes.
Hardware (3)
 Multiplicador
de 16x32 bit para
operaciones MAC en un único ciclo.
 Potente soporte para debugging en
tiempo real.
 Tecnología Jazelle para acelerar la
ejecución del 95% de las instrucciones
Java.
 JVM (Máquina Virtual Java) ejecuta el
5% restante de instrucciones.
Hardware (4)
 VLIM
DSP
– Ejecuta instrucciones VLIW para un
aprovechamiento óptimo de la energía.
– Ejecución de 1 instrucción por ciclo.
– Completamente sintetizable.
– Completamente programable en C.
– Modo de datos en punto fijo 16/24 bit.
– Modo de datos en punto flotante 32 bit.
– Caché de instrucciones de 2 niveles.
Cada acelerador consiste en un pequeño
procesador heterogéneo. Ambos están
basados en el núcleo integrado MMDSP+ de
ST, que proporciona aritmética de enteros 16/-24 bit y aritmética en punto flotante 32-bit.
Hardware (5)
 El
MMDSP+ Implementa funciones por
hardware para reducir la disipación de
energía y garantizar el funcionamiento
previsto, incluso bajo las peores
condiciones.
–
–
–
–
Estimación del movimiento
Codificación y decodificación de datos.
Filtrado de imagen.
Conversión de color.
El acelerador de video incluye un
MMDSP+, una unidad de formateo de
imágenes de entrada, una unidad de
codificación de vídeo, una unidad de
post-procesado de vídeo y un
controlador de interrupciones. El

acelerador de vídeo incluye dos
buses: uno para
la
conexión del de estimación del movimiento que
–
Algoritmo
MMDSP+, las unidades hardware,
minimiza
la ventana de búsqueda para el mejor
memoria y controlador
de
interrupciones, y macro-bloque
otro que conecta las candidato y correspondiente vector
unidades hardware entre sí y al bus
de movimiento.
AMBA.
Hardware (6)
Acelerador de vídeo inteligente
– Soporte para codificación VGA
– SRAM interna de 48 Kbytes para almacenamiento de
frame y la ventana de búsqueda .
– Memoria externa para procesamiento de vídeo.
– Gran eficiencia energética.
Hardware (7)
Acelerador de video inteligente
Hardware (8)
Cadena de reproducción de la imagen
Hardware (9)

Acelerador de vídeo inteligente:
– ROM con acceso seguro y SRAM como caché para guardar las
tramas de vídeo y realizar búsquedas en ventana.
– La SRAM reduce la latencia de la memoria, el consumo de
energía y el ancho de banda interno, especialmente durante la
codificación de vídeo.
– Sensores CMOScon resoluciones de hasta 1,3M píxeles que
consumen un tercio de la energía de los sensores CCD
equivalentes.
– Memorias Flash de alta densidad con arquitectura multi-banco,
1,8V de alimentación y modo síncrono de lectura a ráfagas.
El procesador de audio depende
menos de unidades hardware.
Hardware (10)
Incluye
un
MMDSP+,
memoria,
unidades E/S y dos buses internos.
 Acelerador
de audio inteligente:
– Soporte para codificación de audio digital AAC,
MP3, MPEG-1 Layer I y II, MPEG-2 Layer II, MIDI,
MP3Pro, Dolby Digital, etc.
– Soporte para decodificación de audio digital AAC,
MPEG-1, MP3, etc.
– Efectos de sonido surround 3-D SRS, WOW,
Incredible Sound, Circle Surround, etc.
– Caché de instrucciones de nivel 2 que reduce en un
60% los accesos a memoria externa y el consumo
de energía en la decodificación MP3.
Hardware (11)
Acelerador de audio inteligente
Contenido
 Introducción
 Arquitectura
 Hardware
 Software
 Otras
Características
Multi-Procesador ST Nomadik
El núcleo ARM de Nomadik
permite portar fácilmente
software a la plataforma.
Nomadik soporta la
arquitectura OMAP.
Software (1)
Software (2)
Capa Superior: APIs con el SO para abstraer
los detalles de la implementación del
procesador.
 Capa inferior: APIs con el hardware periférico
para las aplicaciones multimedia
(controladores LCD, sensores de imagen,
cámaras, etc.).
 La ejecución directa de los bytes código Java
en la CPU ARM926 consume menos energía y
silicio que una JVM convencional, un
compilador JIT y un co-procesador.

Contenido
 Introducción
 Arquitectura
 Hardware
 Software
 Otras
Características
Multi-Procesador ST Nomadik
k emplea técnicas a todos los niveles de
ción con objeto de minimizar el consumo de
procesadores heterogeneos distribuidos,
os eficientes para estimación del movimiento
unciones de cálculo intensivo, compresión de
en el bus, memoria integrada, juegos de
iones especializadas y una gestión de la
agresiva. Nomadik consume 20 mW al
– Nomadik implementa algoritmos para la estimación del
car MPEG-4 a 15 tramas/segundo con
control de tasa de bit y estabilización de
ón QCIF, incluido elmovimiento,
audio MP3.
Otras Características
 Algoritmo:
imagen para reducir la computación, memoria y ancho de
banda.
 Gestión
de la energía:
– La CPU se mantiene en los modos de ahorro de energía
tanto como sea posible: IDLE (en espera), DOZE (reloj
lento) y SLEEP (casi estática). El chip completo (salvo RTC
y PMU) puede despertar en´menos de 3 ms.
Otras Características
 Metodología
de diseño:
– Modelado extensivo de algoritmos, simulación
hardware/software y síntesis RTL para reducir el consumo
de potencia.
 Procesado
del silicio:
– Reducción de la alimentación de la puerta lógica. Nomadik
se ha implementado con tecnología CMOS de 0,13 m
alimentada a 1,2 V.
– Transistores high-Vt prolongan la vida de la batería
mientras que los transistores low-Vt se dedican a funciones
críticas.
 Empaquetado
del dispositivo:
– Apilamiento de memoria.
Universidad de Las Palmas de Gran Canaria
Instituto Universitario de Microelectrónica Aplicada
Multi-Procesador ST Nomadik
FIN
Manuel Alexis de los Reyes Darias
A. Núñez