Antes del lanzamiento de la consola Sony PlayStation 2, Sega comercializó a finales de 1998 la Dreamcast. Desafortunadamente la compañía decició abandonar la producción de hardware de entretenimiento para uso domestico y se dedicó exclusivamente al software y a las máquinas recreativas, con lo que abandonó la producción de su última consola. Vamos a hacer un repaso de sus características técnicas.
Empezaremos con un diagrama de bloques de los diferentes elementos que la componen:
Como se puede ver hay 2 bloques principales, que son la CPU y la GPU en la que además han integrado el chipset que permite a la consola comunicarse con el resto de dispositivos y periféricos de la consola. Como puede verse en el diagrama, hay 3 memorias diferenciadas. En primer hay 16 MB SDRAM que son la memoria principal a la que pueden acceder tanto la CPU como la GPU a través de un bus compartido. Este bus tiene un ancho de 64 bits y una frecuencia de 100 MHz, consiguiento un máximo de 800 MB/s. Un bus con las mismas características une la GPU con la memoria de video que en este caso son 8 MB. Por último, el chip de sonido (un ARM7 junto con un DSP) tiene su propia memoria (2MB) a la que puede acceder mediante un bus de 16 bits de ancho y una frecuencia de 66MHz.
Veamos con más detalle la CPU de la Dreamcast. Se trata de un procesador SH-4 diseñado y fabricado por Hitachi. Es un procesador RISC superescalar de 32 bits. Está segmentado en 5 etapas y funciona a 200 MHz. Tiene una caché de instrucciones de 8 KB. y una caché de datos de 16 KB. Ambas usan mapeo directo. Este procesador tiene un rendimiento (medido usando el benchmark Dhrystone 1.1) de 360 MIPS.
Como se puede ver en la imagen del chip del procesador SH-4, una parte importante del circuito integrado se dedica a la unidad de FPU y al motor de gráficos vectoriales. Esta última es una unidad SIMD. Está pensado especialmente para realizar productos de vectores y matrices para gráficos en 3D. El procesador puede realizar 4 multiplicaciones y 4 sumas en coma flotante de precisión simple simultaneamente. Esto da un máximo teórico de 1.4 GFLOPS aunque en la práctica es imposible alimentar la CPU con datos suficientes para llegar a obtener este rendimiento y el máximo ronda los 0.9 GFLOPS.
La GPU PowerVR 2 fabricada por NEC y diseñada por Imagination Technologies, funciona a una frecuencia de 100 MHz y tiene ciertas peculiaridades sobre las GPUs habituales. No realiza las tareas de transformación de polígonos cuyo cálculo realiza el procesador (gracias a la unidad de gráficos vectoriales). Tampoco utiliza un buffer-z, que se basa en una tecnología llamada tile-rendering. Consiste en dividir la escena en una cuadrícula y renderizarlas una por una independientemente. Como se renderiza solo una pequeña parte de la escena, la información necesaria se puede almacenar en una pequeña memoria local a la que le procesador accede rápidamente. La técnica utilizada es parecida al trazado de rayos y consigue decidir qué polígono está más cerca de la camara, con lo que nunca se dibujan polígonos que están por detrás de otros (evitando completamente el overdraw) y permite utilizar transparencias correctamente independientemente del orden en que se dibujen los polígonos. Aunque la velocidad y la tasa de relleno de esta GPU no sean muy elevadas, el hecho de que no haya overdraw hace que se aproveche al 100% obteniendo un rendimiento muy bueno.
En general el diseño del hardware de la consola no es especialmente novedoso, pero sí que está bastante equilibrado y el funcionamiento global con juegos 3D en tiempo real era muy bueno para los estándares de la época, siendo capaz de renderizar más de 5 millones de polígonos por segundo con iluminación y texturas. Además introdujo varias novedades, como el modem incorporado con la posibilidad de jugar por red o el uso de tarjetas de memoria externas en las que salvar el progreso de las partidas que incluso incluían una pequeña pantalla y controles con los que poder jugar a mini-juegos.
Empezaremos con un diagrama de bloques de los diferentes elementos que la componen:
Como se puede ver hay 2 bloques principales, que son la CPU y la GPU en la que además han integrado el chipset que permite a la consola comunicarse con el resto de dispositivos y periféricos de la consola. Como puede verse en el diagrama, hay 3 memorias diferenciadas. En primer hay 16 MB SDRAM que son la memoria principal a la que pueden acceder tanto la CPU como la GPU a través de un bus compartido. Este bus tiene un ancho de 64 bits y una frecuencia de 100 MHz, consiguiento un máximo de 800 MB/s. Un bus con las mismas características une la GPU con la memoria de video que en este caso son 8 MB. Por último, el chip de sonido (un ARM7 junto con un DSP) tiene su propia memoria (2MB) a la que puede acceder mediante un bus de 16 bits de ancho y una frecuencia de 66MHz.
Veamos con más detalle la CPU de la Dreamcast. Se trata de un procesador SH-4 diseñado y fabricado por Hitachi. Es un procesador RISC superescalar de 32 bits. Está segmentado en 5 etapas y funciona a 200 MHz. Tiene una caché de instrucciones de 8 KB. y una caché de datos de 16 KB. Ambas usan mapeo directo. Este procesador tiene un rendimiento (medido usando el benchmark Dhrystone 1.1) de 360 MIPS.
Como se puede ver en la imagen del chip del procesador SH-4, una parte importante del circuito integrado se dedica a la unidad de FPU y al motor de gráficos vectoriales. Esta última es una unidad SIMD. Está pensado especialmente para realizar productos de vectores y matrices para gráficos en 3D. El procesador puede realizar 4 multiplicaciones y 4 sumas en coma flotante de precisión simple simultaneamente. Esto da un máximo teórico de 1.4 GFLOPS aunque en la práctica es imposible alimentar la CPU con datos suficientes para llegar a obtener este rendimiento y el máximo ronda los 0.9 GFLOPS.
La GPU PowerVR 2 fabricada por NEC y diseñada por Imagination Technologies, funciona a una frecuencia de 100 MHz y tiene ciertas peculiaridades sobre las GPUs habituales. No realiza las tareas de transformación de polígonos cuyo cálculo realiza el procesador (gracias a la unidad de gráficos vectoriales). Tampoco utiliza un buffer-z, que se basa en una tecnología llamada tile-rendering. Consiste en dividir la escena en una cuadrícula y renderizarlas una por una independientemente. Como se renderiza solo una pequeña parte de la escena, la información necesaria se puede almacenar en una pequeña memoria local a la que le procesador accede rápidamente. La técnica utilizada es parecida al trazado de rayos y consigue decidir qué polígono está más cerca de la camara, con lo que nunca se dibujan polígonos que están por detrás de otros (evitando completamente el overdraw) y permite utilizar transparencias correctamente independientemente del orden en que se dibujen los polígonos. Aunque la velocidad y la tasa de relleno de esta GPU no sean muy elevadas, el hecho de que no haya overdraw hace que se aproveche al 100% obteniendo un rendimiento muy bueno.
En general el diseño del hardware de la consola no es especialmente novedoso, pero sí que está bastante equilibrado y el funcionamiento global con juegos 3D en tiempo real era muy bueno para los estándares de la época, siendo capaz de renderizar más de 5 millones de polígonos por segundo con iluminación y texturas. Además introdujo varias novedades, como el modem incorporado con la posibilidad de jugar por red o el uso de tarjetas de memoria externas en las que salvar el progreso de las partidas que incluso incluían una pequeña pantalla y controles con los que poder jugar a mini-juegos.
Patxi Astiz
No hay comentarios:
Publicar un comentario