Microprocesadores para comunicaciones NVIDIA GoForce Autor: Jesús Abrahan Rodríguez Lorenzo Índice 1. Introducción ------------------------------------------------------- Pág. 3 1.1 Historia Nvidia -------------------------------------- Pág.3 1.2 Hitos en la historia de la compañía ---------- Pág. 3 2. GoForce ----------------------------------------------------------- Pág. 6 2.1 GoForce 2100 -------------------------------------- Pág. 6 2.2 GoForce 3000 -------------------------------------- Pág. 6 2.3 GoForce 4000 -------------------------------------- Pág. 7 2.4 GoForce 4800 -------------------------------------- Pág. 8 2.5 GoForce 5500 -------------------------------------- Pág. 8 2.6 GoForce 6100 -------------------------------------- Pág. 9 3. Arquitectura ----------------------------------------------------- Pág. 10 3.1Familia ARM11 ----------------------------------- Pág. 10 3.2 Procesador ARM1176JZF-S ------------------ Pág. 11 4. Tecnología nPower -------------------------------------------- Pág. 12 4.1 Comparación de arquitecturas del sistema- Pág. 12 4.2 Captura de imágenes de megapíxeles ------ Pág. 13 4.3 Menos consumo de energía -------------------- Pág. 13 5. Mercado ----------------------------------------------------------- Pág. 14 6. Referencias ------------------------------------------------------- Pág. 17 2 1. Introducción 1.1 Historia Nvidia Nvidia Corporation es un fabricante estadounidense de procesadores gráficos (GPUs), chipsets, tarjeta gráficas y dispositivos para consolas (Play Station 3). Con base en Santa Clara, California, es junto con ATI Technologies e Intel Coporation, uno de los líderes del sector. En 2007, obtuvo un beneficio neto de 797,6 millones de dolares. Nvidia fué fundada en California en enero de 1993, por Jen-Hsun Huang, Chris Malachowsky, y Curtis Priem, que situaron su sede en California en abril de 1993. Nvidia es una palabra compuesta por Video y Envidia. A partir de la creación de su serie de chipsets gráficos GeForce, los chipsets se ocupan prácticamente de todo el proceso gráfico, constituyendo lo que Nvidia nombró GPU (procesador dedicado exclusivamente al procesamiento de gráficos, para aligerar la carga de trabajo del procesador central en aplicaciones como los videojuegos y o aplicaciones 3D interactivas). 1.2 Hitos en la historia de la compañía 1995 Lanzamiento de NV1:primer producto de NVIDIA. 1996 Asume un papel clave en la industria del desarrollo de juegos gracias al soporte Direct 3D. 1997 Presentación de Riva 128: El primer procesador Direct3D de 128 bits. 1998 Presentación RIVA 128ZX. Introducción del primer procesador procesamiento multitextura: RIVA TNT. 3D con funciones de 1999 Introducción de la familia Quadro: las primeras GPUs del mundo destinadas a estaciones de trabajo. Lanzamiento de GeForce 256: la primera unidad de procesamiento gráfico (GPU) del mundo. Primera oferta pública de acciones. 2000 Compra de activos de 3dfx Graphics. Introducción de GeForce2 Go: la primera GPU del mundo dirigida al mercado de ordenadores portátiles. 3 Elección de la GPU y el MCP de NVIDIA como procesadores para la XBOX de Microsoft: suministro de 2 procesadores y venta de la licencia de su revolucionaria tecnología 3D a Microsoft. 2001 Primera compañía de semiconductores en alcanzar 1.000 millones de dólares en facturación. Anuncio de Quadro2 Go: la primera GPU dirigida al mercado de estaciones de trabajo portátiles. Presentación de GeForce3: la primera GPU programable del mercado. 2002 Lanzamiento de GeForce FX: se inicia una nueva era de gráficos cinematográficos. Presentación de la familia nForce2: procesadores para plataformas multimedia. Se rebasa la cifra de 100 millones de procesadores distribuidos. 2003 Introducción del procesador GoForce: el primer procesador multimedia para dispositivos de mano con capacidad para manejar megapíxeles. Adquisición de Media Q: el principal proveedor de tecnología de procesamiento de gráficos y contenidos multimedia para dispositivos inalámbricos. Lanzamiento de la familia GeForce4: una gama completa de GPUs para sistemas DirectX9 fijos y portátiles. 2004 Lanzamiento de GoForce 3D 4500: el primer procesador 3D multimedia para dispositivos inalámbricos del mundo. Se alcanza la cifra de 300 millones de procesadores distribuidos. 2005 Lanzamiento del procesador GeForce Go 6800: la GPU más rápida del mercado de portátiles. Anuncio del desarrollo de un nuevo procesador gráfico (RSX) para PLAYSTATION®3 en colaboración con Sony Computer Entertainment (SCE). 2006 NVIDIA presenta CUDA: el comienzo de la revolución de la GPU como procesador de cálculo. NVIDIA y TSMC celebran la venta del procesador número 500 millones. Adquisición de Hybrid Graphics Ltd., empresa líder en el desarrollo de software de gráficos 2D y 3D integrado para dispositivos móviles. 4 2007 Forbes nombra a NVIDIA empresa del año 2007. NVIDIA consigue el primer trimestre de facturación de 1.000 millones de dólares. Lanzamiento de las GPU GeForce 8 con tecnología SLI para portátiles (los primeros portátiles DX10 del mercado). 2008 Apple adopta la GPU GeForce 9400M de NVIDIA para sus novedosos portátiles MacBook, MacBook Pro y MacBook Air. Adobe incorpora soporte nativo para las unidades de procesamiento gráfico (GPU) de NVIDIA en Creative Suite 4. El kit de herramientas y el SDK de CUDA se ponen a disposición de los usuarios de Mac. 5 2. GoForce Nvidia GoForce son una serie de procesadores gráficos creados especialmente para dispositivos móviles (PDAs, Smartphones, teléfonos móviles, reproductores de vídeo y audio etc…). Incluyen la tecnología nPower para un uso eficiente de energía. Actualmente en el mercado existen varias series de chipset de aceleración gráfico GoForce. En este trabajo nos centramos en las series: 2100, 3000, 4000, 4800, 5500 y 6100. 2.1 GoForce 2100 El procesador multimedia NVIDIA GoForce 2100 permite a los fabricantes de dispositivos móviles incorporar rápidamente cámaras digitales y gráficos en color al diseño de sus productos. El procesador GoForce 2100 ofrece a los diseñadores de dispositivos de mano uno de los primeros motores de aceleración por hardware para gráficos 2D con resoluciones de 320 x 240 píxeles en la pantalla LCD. También incluye más memoria integrada para proporcionar mayor resolución de pantalla, colores más vivos y compresión JPEG. Por último, el motor gráfico de 64 bits, con doble almacenamiento en buffer y una resolución de 176 x 220. Otras características a destacar: Cámara de 1,3 Megapixels. 160 KB de memoria integrada Interfaz de pantalla LCD muy flexible que proporciona conexión con pantallas de muy diversos tipos y tamaños Interfaz de CPU muy flexible que proporciona conexión con una amplia variedad de CPUs del sistema 2.2 GoForce 3000 Las funciones multimedia de los procesadores NVIDIA GoForce 3000 ofrecen un conjunto muy completo de funciones para teléfonos móviles, entre las que se incluyen soporte de cámara digital de dos megapíxeles, reproducción de vídeo de alta calidad, aceleración de gráficos para juegos y tecnología nPower de NVIDIA, que permite utilizar todas estas funciones multimedia con el máximo rendimiento y el mínimo consumo de batería. Sus principales características a destacar: Soporte de cámara de 2 megapíxeles El soporte de cámaras de alta resolución permite captar imágenes de calidad fotográfica desde el teléfono móvil y verlas en un monitor de PC de alta resolución o imprimirlas con un tamaño de 12,7 x 17,8 cm. 6 Zoom digital 8x Zoom digital de alta calidad que pone el móvil a la altura de las cámaras digitales autónomas. Si se combina con una cámara de alta resolución, proporciona imágenes ampliadas con una impresionante calidad de imagen. Descodificador MPEG-4 Permite reproducir (descodificar) secuencias vídeo desde el teléfono móvil, lo que significa que puede realizar funciones de vídeo bajo demanda y reproducción de vídeo continuo. El uso de filtros de hardware dedicados hace que la reproducción de vídeo sea de excelente calidad. 2.3 GoForce 4000 Entre la amplia gama de funciones que ofrecen estos nuevos procesadores se incluyen: soporte de cámara digital de tres megapíxeles, captura y reproducción de vídeo de alta calidad a 30 cuadros por segundo, aceleración de gráficos para juegos. Sus principales características a destacar: Soporte de cámara de 3 megapíxeles El soporte de cámaras de alta resolución permite usar el dispositivo para hacer fotografías de excelente calidad que pueden imprimirse con un tamaño de 20,3 x 25,4 cm. Zoom digital 8x Codificación/descodificación MPEG-4 y H.263 Un máximo de 640 KB de memoria SRAM de 64 bits integrada La memoria dedicada permite procesar imágenes, gráficos y aplicaciones de vídeo en el chip, lo que significa menor consumo de energía del sistema. Soporta pantallas de alta resolución sin tener que acceder a la memoria externa, con lo que necesita menos potencia para enviar la salida a la pantalla. Motor de gráficos 2D de 64 bits Gráficos de alto rendimiento y precisión mejoran todas las funciones, desde el simple desplazamiento del texto a la ejecución de juegos a alta velocidad. El motor de gráficos 2D de 64 bits acelera el rendimiento de funciones gráficas tales como el renderizado de imágenes en color y proporciona una interfaz de usuario más rica y eficiente. 7 2.4 GoForce 4800 La GPU NVIDIA GoForce 4800 proporciona impresionantes imágenes digitales 3D con varios megapíxeles de resolución, reproducción y captura de vídeo y mayor duración de la batería para los dispositivos de mano más avanzados. Sus principales características a destacar: Soporte de cámara de 3 megapíxeles. Zoom digital 8x Codificación/descodificación de MPEG-4 y H.263. Motor de gráficos 2D de 64 bits. 1280 KB de memoria SRAM dedicada de 128 bits Procesador de geometría. El procesador de geometría integrado realiza cálculos complejos de transformación y configuración de triángulos al tiempo que descarga de trabajo a la CPU del dispositivo. De esta manera, permite ejecutar aplicaciones 3D muy sofisticadas a alta velocidad y con mínimo consumo de batería. Sombreadores programables Primer chipset de gráficos 3D con modelos de sombreado programables para dispositivos de mano. Esta tecnología, normalmente reservada a los PC, proporciona imágenes de calidad fotográfica y permite disfrutar de escenas complejas y personajes casi reales directamente en el móvil. Multitexturizado Esta función aplica a cada píxel un total de 6 texturas simultáneas a alta velocidad, lo que se traduce en un eficaz renderizado de las imágenes 3D, permite renderizar gráficos con un alto grado de realismo que se refleja en propiedades como la reflexión de las superficies o la fiel representación de los juegos de luces y sombras. 2.5 GoForce 5500 Las principales características de GoForce 5500 son: Televisión con calidad de imagen La GPU NVIDIA 5500 es compatible con los nuevos estándares de red (como DVB-H, ISDB-T y DMB) y los últimos formatos de datos (como H.264 y WMV9) . 8 Juegos 3D El nuevo motor 3D de GoForce 5500 procesa hasta 2,6 M de triángulos por segundo y nada menos que 200 M de píxeles por segundo sin apenas tocar la batería del terminal. Reproducción calidad DVD Las GPU GoForce pueden codificar (grabar) y descodificar (reproducir) imágenes a 30 cuadros por segundo, lo que proporciona vídeo de alta calidad donde las imágenes se suceden rápidamente, sin saltos ni interrupciones. Sonido envolvente Con el procesador de audio GoForce 5500, nunca un móvil sonó tan bien. La reproducción de sonido MP3, AAC y AAC+ a 320 kbits/s con efectos de ecualización y encadenado de audio son el nuevo estándar. Fotos de gran nítidez GoForce 5500 eleva la calidad de las fotos a niveles (hasta 10 megapíxeles) que la mayoría de las cámaras digitales autónomas de la actualidad no pueden alcanzar. 2.6 GoForce 6100 Las principales características de GoForce 6100 son: Núcleo dedicado ARM1176JZ-S de 250 MHz y alto rendimiento. Aceleración integrada en el hardware para procesar la gran carga de trabajo de las funciones multimedia y de seguridad. H.264, MPEG-4 con resoluciones hasta VGA, 30 fps. Soporte de sensor de cámara de 10 megapíxeles. Mínimo consumo incluso durante la ejecución de funciones multimedia complejas. Calidad de reproducción de audio similar al iPod. Canal de procesamiento de imágenes dedicado para la visualización de fotos. Salida a TV en formatos de vídeo compuesto y S-video. Conexión con cualquier red: redes 3G WiFi, Bluetooth, GPS, WiMax. 9 3. Arquitectura Los dispositivos GoForce utilizan procesadores de la familia ARM11, cuyas características principales se presentan a continuación. 3.1 Familia ARM11 Arquitectura con un potente repertorio de instrucciones tipo ARMv6 El repertorio de instrucciones Thumb reduce los requerimientos de memoria en un 35%. aplicaciones multimedia, llevando al doble el rendimiento en el procesamiento de video. -chip (ARM1176JZ-S y ARM1176JZF-S cores) -2, mejora el rendimiento, el uso de energía y la densidad de código (ARM1156T2-S y ARM1156T2F-S) -- 0.6 mW/MHz (0.13μm, 1.2V) incluyendo los controladores de cache. -- Modos de bajo consumo para ahorro de energía. -- Gestión inteligente de la energía (Intelligent Energy Manager (IEM)) en forma dinámica (ARM1176JZ-S and ARM1176JZF-S) -- Pipeline de 8 etapas (9 etapas para el ARM1156T2(F)-S) -- Pipelines separados para almacenamiento y aritméticas las operaciones de carga- -- Predicción de salto (Branch Prediction) y Retorno de pila (Return Stack) -- Sistema de memoria de alto rendimiento de 64 bits aumenta la velocidad de acceso a los datos para procesamiento de aplicaciones multimedia y aplicaciones de redes. -- Sistema de memoria ARMv6 acelera el cambio de contexto del Sistema Operativo aumentando la velocidad de respuesta y el rendimiento en tiempo real JF-S, ARM1176JZF-S y ARM1156T2F-S) para aplicaciones de control de automóviles/industrials y aceleración gráfica 3D 10 3.2 Procesador ARM1176JZF-S En la sección 2.6 referida a GoForce 6100 ya anticipabamos que dicho chipset de aceleración gráfica incluía un procesador de un núcleo ARM1176JZF-S a 250 Mhz. La arquitectura de este procesador la podemos observar en la siguiente imagen. El procesador ARM1176JZF-S de gama alta, que es capaz de ejecutarse por encima de los 550 MHz en las actuales tecnologías de proceso de 90nm, incluye una unidad de punto flotante que acelera gráficos de 3D. Incorpora la tecnología de seguridad ARM TrustZone, que evita el acceso no autorizado a la información personal y otros datos delicados almacenados en la memoria integrada. La tecnología TrustZone facilita el desarrollo de soluciones de seguridad portátiles que sean compatibles con diferentes sistemas operativos. El procesador ARM1176JZF-S también utiliza la tecnología ARM Intelligent Energy Manager (IEM), que reduce el consumo de energía al ajustar dinámicamente la frecuencia de reloj y el voltaje suministrado según los requerimientos de procesamiento del software que corre sobre él. La tecnología IEM reduce el consumo de energía del procesador hasta en un 70%. 11 4. Tecnología nPower nPower es una fórmula pensada para reducir y gestionar el consumo de energía en los dispositivos inalámbricos desde una perspectiva global del producto. Decisiones de diseño inteligentes como el uso de motores de hardware dedicados y la integración de la cantidad correcta de memoria SRAM forman las bases para conseguir una arquitectura de muy bajo consumo energético que, bien implementada, garantizará un nivel de rendimiento y duración de la batería muy por encima de las expectativas de los usuarios. 4.1 Comparación de arquitecturas del sistema La Figura de la izquierda es un ejemplo de arquitectura basada en el procesador GoForce. En este caso, el procesador maneja todas las funciones de previsualización de imágenes de la cámara (varios megapíxeles) sin que tenga que intervenir el procesador de banda base. La ruta que siguen los datos es directa: del módulo de la cámara a la entrada de vídeo del procesador GoForce y (una vez realizada la conversión del espacio de colores y el escalado) de la interfaz de pantalla plana a la pantalla QVGA sin la necesidad de que intervenga el procesador o que la memoria externa acceda a un buffer de gráficos externo. Comparemos esto con la figura de la derecha, que representa un diseño con procesador de banda base donde no se ha incluido el procesador GoForce. La cámara se conecta al procesador de banda base, que debe detener (o al menos ralentizar) lo que está haciendo para poder realizar la conversión del espacio de colores y el escalado de imagen, los datos de la imagen deben escribirse en la memoria del sistema, que requiere mucha más energía que el buffer de gráficos integrado en el procesador GoForce. Asimismo, para mostrar la imagen es necesario volver a leer los datos de la memoria externa (más gasto de energía) y enviarlos a la pantalla. Por último, enviar los datos a la pantalla también puede exigir la presencia de un circuito de sincronización externo, otra función que ya está integrada en todos los productos GoForce. 12 4.2 Captura de imágenes de megapíxeles Supongamos que capturamos una imagen con un tamaño superior a un megapíxel. La codificación JPEG de una imagen de 1,3 MP necesita aproximadamente 175 MIPS. Si se realiza esta tarea en el software de un procesador típico, el dispositivo disipará aproximadamente 280 mW, suponiendo que funcione a 300 MHz. Por el contrario, el procesador GoForce, disipa aproximadamente 13 mW al realizar la codificación e incluyendo el refresco continuo de la pantalla QVGA. Por otra parte, puede que oigamos decir que un procesador de banda base puede manejar la codificación JPEG sin necesidad de ningún chip acelerador. Pero ese procesador podría llegar a consumir diez veces más energía que una solución que incluyese un procesador multimedia dedicado como GoForce y seguiría sin proporcionar el mismo nivel de rendimiento. 4.3 Menos consumo de energía GoForce puede proporcionar mayor ahorro porque permite al procesador general funcionar en modo de espera en casos en que, de otra manera, debería funcionar en modo activo. Si trabaja en solitario, el procesador necesita mantenerse en modo activo durante la previsualización de imágenes en la pantalla LCD de la cámara. Si se añade un producto GoForce al sistema, éste se encarga de toda la operación de previsualización y sin intervención de la CPU, que podría dejarse en modo inactivo o de baja frecuencia. 13 5. Mercado Las unidades de procesamiento gráfico (GPU) NVIDIA GoForce se encuentran en los siguientes móviles y dispositivos de mano. Características: Procesador Marvell XScale (317 MHz) 128 MB de RAM y 32 MB de RAM para video Pantalla de 4″ WVGA (800 x 480 de resolución) Chip gráfico Nvidia GoForce 5500 Conectividad USB 2.0, WiFi, WiBro (como WiMax, pero móvil) y posiblemente Bluetooth 15 botones (10 dedicados a juegos) Capacidades de televisión DMB con un periférico adicional Sistema operativo Windows CE Características: procesador Intel XScale PXA270 a 520 MHz. pantalla de 3.6 pulgadas con resolución VGA, es decir, 640×480 píxeles. Gráficos Nvidia GoForce 5500. 14 Características: El reproductor de MP3 Sensa E250 presenta un diseño ultra compacto y moderno e integra una pantalla TFT color 1,8", un puerto para tarjetas de memoria microSD para completar su gran capacidad de memoria de 2 Gb. El Sensa E250 es compatible con el servicio de música on line Microsoft PlayForSure. Características: El W900i es un reproductor completo de música de alta calidad, teléfono y un dispositivo de “imaging” capaz de realizar descargas súper rápidas de todo tipo de archivos multimedia. Este nuevo modelo continúa el exitoso camino que el W800i ha experimentado desde su lanzamiento. Incluye un chipset gráfico GoForce 4800. 15 Otros dispositivos que incluyen chipset GoForce 16 6. Referencias http://www.nvidia.es/page/corporate_timeline.html http://es.wikipedia.org/wiki/Nvidia http://www.arm.com/products/CPUs/ARM1176.html http://www.pcworld.com.mx:82/pcw_completo_NOTICIAS.asp?pcwi d=1346 http://foro.todopocketpc.com/showthread.php?s=&postid=60258 http://www.nvidia.es/page/goforce_design_wins.html 17