250 likes | 441 Views
T.I. DAVINCI TM. Digital Media Processor. Índice. ¿Qué es un DSP? ¿Qué es TI DaVinci TM ? TI DaVinci TM TMS320DM6467 Subsistema ARM Subsistema DSP Resumen Aplicaciones Referencias. ¿Qué es un DSP?.
E N D
T.I. DAVINCITM Digital Media Processor José Antonio Mori de Santiago
Índice • ¿Qué es un DSP? • ¿Qué es TI DaVinciTM? • TI DaVinciTM TMS320DM6467 • Subsistema ARM • Subsistema DSP • Resumen • Aplicaciones • Referencias José Antonio Mori de Santiago
¿Qué es un DSP? El término se refiere a microprocesadores específicamente diseñados para realizar procesado digital de señal. Los DSPs utilizan arquitecturas especiales para acelerar los cálculos matemáticos intensos implicados en la mayoría de sistemas de procesado de señal en tiempo real. José Antonio Mori de Santiago
Arquitectura de los DSPs Basado en la Operación [...] Tenemos un filtro FIR: José Antonio Mori de Santiago
¿Qué es DaVinciTM? DaVinci esta basado en un núcleo DSP (C64x+) y consiste en ‘Digital Signal Processing SoCs’ escalable y programable, aceleradores y periféricos que son optimizados para una amplia gama de equipos digitales de vídeo. ¿Entonces no es un DSP? José Antonio Mori de Santiago
Familia DaVinciTM (I) TMS320DM355 digital media processors consiste en un subsistema de procesamiento de vídeo integrado un co-procesador MPEG-4/JPEG más un core ARM con 216 MHz o 270 Mhz. Optimizado para uso portátil y otros productos de vídeo HD de bajo consumo de energía, este procesador duplica la duración de la batería de productos HD de hoy en día. DM355 es ideal para aplicaciones tales como cámaras digitales o videocámaras, reproductores multimedia portátiles, cámaras de red IP, marcos de fotografía digital, vídeo-porteros, baby monitors y muchos otros. TMS320DM647 / TMS320DM648 digital media processors, se basan en el core TMS320C64x+DSP, y están optimizados para multi-channel video security y aplicaciones de infraestructura, incluyendo grabadoras de vídeo digital (DVRs), servidores de vídeo IP, sistemas de visión artificial y aplicaciones de alto rendimiento de imágenes. TMS320DM643X digital media processors, basado en un core DSP TMS320C64x +DSP, tienen un precio mínimo de $ 9,95. Los procesadores TMS320DM6437, TMS320DM6435, TMS320DM6433, TMS320DM6431 son ideales para aplicaciones multimedia digitales que sean sensibles al precio e incluyen características especiales que los hacen adecuados para sistemas de entretenimiento a bordo, sistemas machine-vision, robótica, seguridad de vídeo telefonía y vídeo, así como aplicaciones para automoviles como control de salida del carril y evasión de colisiones. José Antonio Mori de Santiago
Familia DaVinciTM (y II) TMS320DM644x digital media processors son SoCs altamente integrados basada en un procesador ARM926 y un core TMS320C64x+ DSP. Los TMS320DM6446, TMS320DM6443 y TMS320DM6441 son ideales para aplicaciones como video-teléfono, automotive infotainment, cámaras digitales, streaming media e IP set-top box. TMS320DM646x digital media processors son system-on-chips (SoCs) basados en DSPs, que están especialmente diseñados para tiempo real, multi-formato de HD-vídeo multiplicando por 10 el rendimiento y dividiendo el precio entre 10. El TMS320DM6467 consta de un core ARM9, un core C64x+DSP, HD-vídeo / Co-procesadores de imagen (HD-VICP), motor de conversión de datos de vídeo interfaces orientadas a video. El DM6467 está específicamente diseñado para hacer frente al reto de los HD para los mercados comercial y de consumo, como los media gateways, unidades de control multi-point, adaptadores multimedia digitales, vídeo servers digitales, grabadores para el mercado de la seguridad e IP set-top boxes. José Antonio Mori de Santiago
Caracteristicas de DaVinciTMTMS320DM6467 ·DM SoC de alto rendimiento – 594 MHz C64x+™ Clock Rate – 297 MHz ARM926EJ-S™ Clock Rate – Ocho (32-Bit C64x+) Instrucciones/Ciclo – 4752 C64x+ MIPS Ciclo MAC – Software compatible con C64x / ARM9™ José Antonio Mori de Santiago
El subsistema ARM está diseñado para dar a la ARM926EJ-S (ARM9) el control del dispositivo. En general, la ARM es responsable de la configuración y el control del dispositivo, incluido el subsistema DSP, el subsistema VPSS y la mayoría de los periféricos y memorias externas. Incluye: · Procesador ARM926EJ-S RISC · ARMv5TEJ (32/16-bit) instruction set · Little endian operation · Co-Processor 15 (CP15) · MMU · 16KB Instruction cache · 8KB Data cache · Buffer de Escritura · 32KB Internal Tightly-Coupled Memory (TCM) RAM (32-bit wide access) · 8KB Internal ROM (ARM bootloader for non-EMIFA boot options) · Embedded Trace Module y Embedded Trace Buffer (ETM/ETB) · ARM Interrupt Controller · PLL Controller · Power and Sleep Controller (PSC) · System Module Subsistema ARM José Antonio Mori de Santiago
· El procesador ARM926EJ-S es miembro de la familia ARM9 de microprocesadores de proposito general. Este procesador está orientado a aplicaciones multi-tasking donde la gestión de memoria, el alto rendimiento, el pequeño tamaño de dado, y la baja potencia son importantes. · El ARM926EJ-S soporta instrucciones ARM de 32 bits y THUMB de 16 bits, que permite al usuario tener un compromiso entre un alto rendimiento y alta densidad de código. · En concreto, el procesador ARM926EJ-S sorpota el conjunto de instrucciones ARMv5TEJ, que incluye las características para una ejecución eficaz de Java byte codes, proporcionando rendimiento Java similar al Just in Time (JIT) Java interpreter, pero sin code overhead. Procesador ARM926EJ-STM José Antonio Mori de Santiago
Core del ARM926EJ-STM Fetch: Lectura de la instrucción y almacenamiento en pipeline de instrucciones. Decode: La instrucción se decodifica y se leen los operandos desde del banco de registro 3 puertos. Execute: Operación sobre el Shifter, la ALU o, en instrucciones load/store se calcula la EA. Buffer/Data: Acceso al dato en memoria. En procesamiento el resultado de la ALU se pasa al siguiente pipeline. Write-back: El dato, leído de memoria o resultante ALU RF. José Antonio Mori de Santiago
Componentes ARM926EJ-STM (I) CP15: Se utiliza para la configuración y control de instrucciones y data caches, Tightly-Coupled Memories (TCMs), Memory Management Unit (MMU) y otros subsistemas del ARM. MMU: Proporciona la memoria virtual característica requerida por los sistemas operativos, como Linux ®, Windows ® CE, Ultron ®, ThreadX ®, etc. Un conjunto único de dos niveles de tabla de página almacenados en la memoria principal es usado para controlar la traducción de direcciones, chequeo de permisos y los atributos de la región de memoria para datos e instrucciones. La MMU utiliza un único Translation Lookaside Buffer (TLB) como caché para la información contenida en las tablas de página. Tiene las siguientes caracteristicas: · Arquitectura ARM estándar v4 y v5 MMU · Mapping sizes son: – 1MB (sections) – 64KB (large pages) – 4KB (small pages) – 1KB (tiny pages) · Los permisos para paginas grandes y pequeñas pueden ser especificadas por separado para cada · Hardware page table walks cuarto de pagina(permiso de subpagina). José Antonio Mori de Santiago
Componentes ARM926EJ-STM (II) Caches y Buffer de Escritura: El tamaño de la caché de instrucciones es de 16KB, la caché de datos es de 8KB. Además, las caches tienen las siguientes características: · Virtual index, virtual tag, y direccionamiento usan Modified Virtual Address (MVA). · Asociativa de cuatro vias, con una linea de cache de ocho palabras por linea (32 bytes por linea) y dos bits de sucio en la Data-cache. · La Data-caché soporta write-through y write-back (o copy back), que seleccionará la región de memoria usando el bit C y B en las tablas de traducción de la MMU. · Las operaciones de mantenimiento caché proporcionan una eficiente invalidación de, toda la Data-caché o Intruccion-caché, de regiones de la Data-caché o la Intruccion-caché, y regiones de memoria virtual. El Bufer de Escritura es un componente que evita que el bus se quede en algún momento sin datos. José Antonio Mori de Santiago
Componentes ARM926EJ-STM (y III) Tightly Coupled Memory (TCM): La memoria RAM y ROM son conectadas al ARM926EJ-S por medio del interfaz TCM que provee conexiones separadas a los buses de datos e instrucciones y da al core un acceso óptimo a los mismos. AMBA High-performance Bus(AHB): El subsistema ARM usa el puerto AHB de el ARM926EJ-S para conectar el ARM al bus Config y a la memoria externa. Emplea arbitros para el acceso por separado a las Date-AHB y instrucción-AHB. Embedded Trace Macrocell (ETM) and Embedded Trace Buffer (ETB): El ETM ayuda al debug y consiste en dos partes: · El Trace Port proporciona capacidad de función en tiempo real para el ARM9. · El Triggering proporciona comparadores de direcciones y datos, contadores, secuenciadores y recursos de trigger. El trace port del DM6467 esta conectado al ETB, que tiene un buffer de memoria de 4KB. José Antonio Mori de Santiago
Subsistema DSP El subsistema DSP incluye las siguientes características: · C64x+ DSP CPU · 32KB L1 Program (L1P)/Cache (up to 32KB) · 32KB L1 Data (L1D)/Cache (up to 32KB) · 128KB Unified Mapped RAM/Cache (L2) · Little endian José Antonio Mori de Santiago
Core C64+DSP Doble Data Path: A y B. Cada uno dispone de su su propio conjunto de buses. Existen dos tipos de conexiones: -InternosComunican sus unidades funcionales con su banco de registros y la memoria de datos. -Cruzados Comunica el banco registros del otro data path con sus unidades funcionales. José Antonio Mori de Santiago
Datapaths INTERNOS Load Data paths: Cargar datos desde memoria. Store Data paths: Almacenamiento de datos a memoria. Data Address paths: Generación de direcciones. EXTERNOS Permiten el intercambio de datos y direcciones entre ambos data paths: Dos datos (1X,2X). Dos de direcciones de operados. José Antonio Mori de Santiago
Unidades Funcionales • Cada unidad ejecuta un conjunto especifico de operaciones • Dispone de cuatro unidades de 32 bits por cada data path • Las unidades .L y .S pueden operar con operandos de 40 bits. Operaciones aritméticas y de comparación de 32/40 bits. Operaciones Lógicas de 32 bits. Normalización de enteros y cuenta de bits. Saturación aritmética para operaciones de 32/40 bits. Disponen de ALUsde 32 bits y desplazadoresde 40 bits para: Aritmética de 32 bits, operaciones lógicas y campos de bits. Desplazamientos de 32/40 bits. Saltos (.S2 solamente si se usa un registro como desplazamiento) Transferencias hacia/desde registros de control (sólo .S2). Generación de constantes. Multiplicadores hardware con operandosson de 32 bits => Varias opciones. Multiplicación con desplazamiento a izquierda y saturación. Carga y almacenamiento con desplazamiento constante de 5 bits y 15 bits (Sólo en .D2). Sumas/restas de 32 bits. Cálculo para direccionamiento lineal y circular. José Antonio Mori de Santiago
Archivo de Registros Cada data path dispone de 16 registros de propósito general de 32 bits. A0-A15 B0-B15 Se utilizan para: Almacenamiento de datos. Punteros a datos (direccionamiento indirecto). Registros condicionales para cualquier instrucción (Sólo A1,A2,B0,B1,B2). La CPU puede utilizar operandos de: 8/16/32 bits. 40/64 bits, en este caso se utilizan pares de registros para su almacenamiento: Deben tener el mismo datapath El registro par almacena los LSBs El registro impar almacena los 8/32 MSBs. José Antonio Mori de Santiago
Resumen José Antonio Mori de Santiago
Aplicaciones José Antonio Mori de Santiago
ARCHOS Los reproductores portátiles ARCHOS tienen la combinación perfecta entre video de alta calidad, batería de larga vida, un gran diseño y características avanzadas. Cinco nuevos productos ARCHOS proveen al usuario de formas slim en l 404 y el 404 camcorder, capacidad extrema en el 160-GB 504 y las últimas innovaciones en el 604 y el 604 Wi-Fi. Los modelos ARCHOS utilizan procesadores basados en la tecnología DaVinci, que nos permite tener un bajo nivel de consumo con una excepcional funcionalidad, contando con audio, video e imagen. ARCHOS consigue reunir todas estas características en uno de los media players más finos y ligeros del mercado. Empresa francesa. José Antonio Mori de Santiago
Aethra Aethra leverages TI’s DaVinci™ technology-based integrated solution to provide their compact, new generation video phones for personal IP and ISDN video conferencing, with better processing power and framework software. Using a single DaVinci digital media processor, Aethra was able to integrate a complete H.264-based IP videophone, providing full software programmability and codec flexibility and leveraging TI Code Composer Studio™ IDE (single development environment), thereby reducing their time to market and achieving optimum system cost. Empresa italiana. José Antonio Mori de Santiago
Y más.. Cell Konka Sentivision Red Embedded Desing José Antonio Mori de Santiago
Referencias • www.ti.com • http://en.wikipedia.org/wiki/Main_Page • http://embedded-system.net • www.eetimes.com • Apuntes Sistemas Electrónicos Digitales (3º curso) José Antonio Mori de Santiago