La carrera de los bits y los megahercios, cuarta parte

encabezado-carrerabits1

La madurez del 3D: Xbox, GameCube y PlayStation 2

Volvemos a la carga. Este artículo es algo así como una despedida a la generación PS2/Xbox/GC, en la que haré mi propia comparación de estas tres fantásticas plataformas, que han alcanzado cada una una posición distinta en el mercado. Pero dejemos de momento el mercado al margen. En este artículo voy a entrar un poco más en temas de hardware clave, aprovechando el propio hilo para ir introduciéndolos, como de costumbre. Habiendo leído las anteriores entregas, no tendréis mayor problema. El motivo por el que decido incluir esto es porque son cosas muy habituales que mucha gente nombra sin saber lo que dice. Y a la vez, a menudo son términos complejos de entender y no accesible para muchos.

Unos pocos conceptos sobre chips

Quien no tenga los siguientes conceptos claros, o no tenga ni idea de lo que son, hará bien leyendo este apartado, creo yo. Estos conceptos son: encapsulado, die, transistor y escala de integración tecnológica.
  • Encapsulado : Los procesadores son circuitos electrónicos que están construidos sobre material semiconductor, habitualmente silicio. El proceso es muy complejo, y no voy a detenerme en ello de momento. Lo importante es comprender, que cuando vemos un chip, casi siempre vemos la cobertura, en forma de un encapsulado de plástico o cerámica, que además tiene unos pines metálicos que lo comunican con el exterior, y sirven para soldarlo a la placa donde estén el resto de componentes.
encapsulado1.jpgencapsulado2.jpg A la izquierda se ve un ejemplo de encapsulado con pines en los bordes, que lo sueldan a la placa. A la derecha tenemos un ejemplo típico de CPU, con los pines en su parte inferior.

Existen multitud de encapsulados distintos.
  • Die : Se llama así al circuito electrónico en sí mismo. Lo que está encerrado en el encapsulado. En el caso de las CPU, a veces se emplea el término core, o núcleo (sí, el español también existe). El die es, por tanto, la parte esencial del chip, donde todo el proceso se lleva a cabo, que luego es conectado mediante cableado a los pines del encapsulado, y encerrado allí para protegerlo.
die1.jpgdie2.jpg

Arriba se ve el die de un 486, visto por debajo del encapsulado (realmente está tapado por una chapa protectora MUY difícil de quitar). Abajo se ve el die de un Athlon XP (core Barthon), al que he resaltado algunas partes importantes.

Por tanto, si una CPU se dice de doble core, o doble núcleo, quiere decir que tiene 2 dies metidos en un mismo encapsulado Y es por tanto, casi equivalente a tener 2 CPUs idénticas (aunque cuidadito de decir que es exactamente lo mismo, porque si entramos en detalle, hay muchos factores que analizar, y que no haré aquí, por irse de tema). Los procesadores de varios cores serán esta generación de videoconsolas, algo habitual. La CPU de la Xbox 360, llamada Xeon, tiene 3 cores idénticos. La CPU de la PS3, o Cell, tendrá 1 core principal, parecido a los de Xeon, y unos 7 cores secundarios. La CPU de la Wii , por lo que sé, no será multi core, pero se especulaba que podría ser dual core (a fecha de agosto de 2006).
  • Transistores : Los circuitos integrados están constituidos mayormente por transistores; dispositivos electrónicos que en aplicaciones digitales se usan para procesar información, o almacenarla. Esto lo consiguen gracias a una cualidad que tienen, muy curiosa.
Un transistor tiene 3 terminales, y controlando uno de ellos, podemos permitir o cortar el paso de corriente entre sus otros dos terminales. Esto representa los famosos “ 1” y “ 0” , y permite la computación.

transistor.jpg

Así dicho, parece sencillo, aunque la teoría es muy compleja, así que no entraré en ello. Ahora bien, en aplicaciones analógicas, los transistores funcionan en lo que se llama zona activa, y se usan principalmente como amplificadores. Pero en aplicaciones digitales, y esto incluye a todos los circuitos digitales, y casi la totalidad de los componentes de un ordenador o una videoconsola, los transistores nunca funcionan en zona activa (es más, eso sería una situación de la que tendríamos que huir). En cambio, siempre están en zona de saturación o de corte. La saturación representa el «1», y es el estado en el que el transistor deja pasar toda la corriente que es capaz, y el corte representa el «0», en el que el transistor no deja pasar nada de corriente (idealmente hablando). En los circuitos integrados, los transistores se graban en obleas de silicio, y en lugar de tener la forma que ves arriba, tienen una estructura planar.

transistorp.jpg

Para dar un poco de culturilla…existen muchos tipos de transistores, en función de la tecnología que se empleé, aunque basicamente los hay de 2 tipos, los bipolares (BJT), y los de efecto campo (FET). Hoy en día, la práctica totalidad de los circuitos integrados usan transistores FET, y en concreto tecnología CMOS. Otra tecnologías FET es la NMOS, ya anticuada, y usada hasta la generación de los 80. Las CPUs de la NES, la Master System o la Gameboy, fueron implementadas en NMOS. Hoy en día, CMOS ha tomado el relevo, pues permite una mayor integración (más transistores por chip) y un menos consumo eléctrico.


  • Escala de integración tecnológica: En un circuito integrado interesa poder hacer los transistores pequeños, y ponerlos lo más juntos posible. Así, el tamaño final del die será más reducido. Y eso se traduce en un menos coste por chip, y menos consumo, entre otros. Los micrones de un chip, hacen referencia a la distancia mínima que hay entre dos transistores, en micrómetros, o micras (milésima parte de un milimetro). Pero no se pueden juntar los transistores tanto como se quiera. Reducir esta distancia requiere de nuevos medios de fabricación.
Una CPU hecha en tecnología 0.25um, como la CPU de la Dreamcast , ha sido construida con una tecnología que permitía juntar los transistores 0.25um como máximo. No más. La historia se ve bien en los procesadores de PC. Los Athlon XP de AMD comenzaron siendo fabricados en 0.18um, y se redujeron posteriormente a 0.13um. Esto permitió reducir el tamaño del die de 128mm2 a 80mm2 (milímetros cuadrados), como puedes ver en la imagen (el viejo core es el de la derecha, más grande que el de su sucesor). Esto permitió que el nuevo core funcionara con menos voltaje, y por tanto, consumiera y se calentara menos, y también, que alcanzara más altos MHz.

paltho.jpg

Cuando una empresa necesita fabricar un mismo chip pero a menos micrones, tiene que hacer una inversión y desembolso considerable. No es gratis. El proceso se vuelve más complejo y delicado. Y desde luego, llegará un momento en el que no se podrá seguir reduciendo la escala de integración (otra manera de referirse a distancia de los componentes en el circuito). A día de hoy, las nuevas CPUs de ordenador se fabrican a 65nm (nanómetros), es decir, 0.065um, e Intel ya está preparándose para empezar la transición a los 45nm. ¡Enhorabuena, ya has pasado todo el rollo teórico! Ahora pasemos a cosas, que tal vez sean más interesantes.

EL RENDIMIENTO DE LA XBOX Y GAMECUBE FRENTE A LA PLAYSTATION 2

Me gustaría centrarme un poco ahora sobre las consolas, y analizar los distintos enfoques usados para alcanzar el alto rendimiento que esta generación nos ha ofrecido. ¿Cómo ha afrontado cada compañía el reto? Esta sección es importante, porque si después de leer la comparativa consola-PC, piensas que todas las consolas usan un esquema similar al de la PS2, te equivocas. A por ello.

VISIÓN GENERAL DE LA GAMECUBE DE NINTENDO

De la PS2 ya he hablado suficiente. Más de lo que querría, jeje. Ahora echemos un vistazo a las tripas de la pequeña máquina de Nintendo, cuya potencia no es en absoluto proporcional a su tamaño. La GameCube es un buen ejemplo de esquema típico de consola 3D. No obstante, su hardware difiere bastante del de PS2., Sigue un esquema muy estándar, y además de ser bastante potente, está bien diseñada. Se podría decir que la PS2 es única, pero la complejidad de su programación también lo es . En cambio, la programación de GameCube es más sencilla, debido entre otras cosas, a: – La arquitectura de su CPU es bien conocida, basada en un PowerPC de IBM. – Al contrario que la PS2, cuya potencia se obtiene distribuyendo el trabajo a los distintos procesadores, la Gamecube concentra todo su poder en la CPU y su chip gráfico, y es pues, más fácil de manejar. En la PS2, además del código que se ejecuta en la CPU , hay otros que se ejecutan en las unidades vectoriales, por ejemplo, que para nada entienden el mismo leguaje que la CPU. – La Gamecube tiene una memoria RAM de alta velocidad, y otra de baja velocidad, además de la caché de la CPU , mientras que la PS2 dispone de un mayor número de memorias intermedias, y caches, que dificultan un buen diseño y aprovechamiento del hardware.
  • La CPU de la Gamecube.
Llamada Gekko, es un derivado del PowerPC 750, también conocido como G3. La arquitectura PowerPC tiene ya larga tradición, y han sido usados en los Macintosh desde 1994. Aunque los actuales PowerPC son procesadores de 64 bits, tanto el G3 como el Gekko son de 32 bits. En comparación con otras CPUs, el Gekko no puede alcanzar muchos MHz, debido en gran parte a su corto pipeline de sólo 4 etapas. Parece que en la fase de diseño se planeaba que funcionara a unos 400MHz, pero finalmente se pudo llegar a los 485 MHz. Esto parece ponerle en desventaja frente a los 700 MHz de la XBox , o los de cualquier ordenador del momento. Pero nosotros ya sabemos que no podemos dejarnos engañar por los MHz. Hablar sólo de MHz es equivalente a no dar casi ninguna información. El Gekko tiene 2 ALUs de 32 bits (para operaciones con enteros), y una FPU de 64 bits (para operaciones en coma flotante), y multitud de registros, 32 de propósito general, y 32 para operaciones en coma flotante. A modo de rápida e incompleta comparación, la CPU de la Xbox sólo tiene 8 registros de propósito general, y sino me equivoco, 8 registros para operaciones MMX, y otros 8 para SSE. Además, el Gekko dispone de más caché L1 y L2. En comparación con la CPU de la Xbox , un Pentium III tuneado, el Gekko es capaz de dar mucha guerra, a pesar de funcionar a menos MHz. La comparación con el Emotion Engine de la Playstation 2 no es nada fácil, porque son cosas muy distintas. Al final de este artículo, no obstante, espero que este aspecto quede un poco más claro. Sólo quiero remarcar ahora, que mientras el Emotion Engine puede alcanzar los 6,5 GFLOPs, el Gekko no llega ni a 2 GFLOP. No obstante, cuidadín. Gran parte del rendimiento del Emotion Engine se emplea en el cálculo de geometrías, como veremos ahora, mientras que la Gamecube realiza esta tarea en su GPU, liberándo al Gekko de ello.

Playstation 2
Gamecube
Velocidad
300 MHz
485 MHz
Caches
40Kb ( instrucciones) 32Kb (datos) 16Kb (SPRAM)
32Kb para instrucciones (L1) 32Kb para datos (L1) 256Kb (L2)
GFLOPS
6.5 GFLOPS
1,6 GFLOPS
Nintendo se preocupó por el consumo y la disipación térmica. El Gekko tiene un consumo de sólo 5W. Los PowerPC 750 ya fueron mejorando esta característica. Los primeros, fabricados en 0,25 micrones, disipaban más de 7W a menos de 400Mhz. Posteriores versiones, fabricadas en 0,20 micrones, y con conexiones de cobre, en lugar de aluminio, redujeron este consumo a 6W a 500MHz. Aunque no es mi objetivo, daré una breve comparativa del Gekko con las CPUs en las que se basó. En concreto, se dice que es un Power PC 750CXe modificado (te lo puedes saltar si quieres).
PowerPC 750 PowerPC 750CXe Gekko
Año 199720012001
Tecnología 0.26 micrones0.18 micrones0.18 micrones
Transistores 6.35 millones20 millones21 millones
Tamaño del die 67 mm243 mm243 mm2
Cache L1 64 Kb unificada64 Kb unificada64 Kb unificada
Cache L2 512 Kb (externa)256 Kb (integrada)256 Kb (integrada)
MHz 233~366MHz400~700MHz485MHz

  • Flipper. La GPU de la Gamecube.
La GPU de la Gamecube , llamada Flipper, funciona a 162MHz, y hace a su vez de northbridge, es decir, centro de comunicaciones. Todos los dispositivos se comunican con la CPU a través de él. El chip fue diseñado por ArtX, ahora comprado por ATI, y contiene el procesador gráfico, memoria embebida y un generador de sonido, todo integrado en un área de 120mm2, usando tecnología de 0.18um, como el Gekko, y albergando 51 millones de transistores. Al contrario que el chip gráfico de la Playsation 2, Flipper no tiene una tasa de relleno de pixels tan elevada, es decir, no es capaz de dibujar tantos pixels por segundo, pero en cambio tiene una arquitectura más moderna capaz de realizar ciertos procesos de forma acelerada, como es lo normal en cualquier GPU moderna, incluidas las tarjetas gráficas de ordenador. En una GPU no sólo importa la tasa de relleno, sino también su velocidad a la hora de calcular geometrías, su ancho de banda con la memoria de vídeo y memoria RAM, y la cantidad de memoria de vídeo que tenga. La principal diferencia entre el chip gráfico de la Playstation 2, y el de cualquier GPU moderna, es que éstas últimas llevan a cabo no sólo las tareas de renderizado, sino también de transformación, es decir, se encargan del cálculo de geometría e iluminación, liberando a la CPU de esta tarea. En otras palabras, se encargan de mover polígonos. En la Playstation 2, la geometría e iluminación es calculada en el interior del Emotion Engine, en las unidades vectoriales. Por ello, gran parte de su rendimiento en coma flotante es empleado en esto. El chip gráfico, se encarga de renderizar la escena, es decir, generarla y mostrarla. Pero los cálculos se le dan ya hechos por la CPU, consumiendole a ésta última, gran parte de sus recursos. Es por eso por lo que el chip gráfico de la Play 2 no es una GPU propiamente dicha. La Gamecube en cambio, tiene una GPU, integrada en el Flipper. Ésta se encarga de la transformación e iluminación, y también del renderizado. Para ello, tiene 4 pixel pipelines. Cada píxel pipeline puede generar un píxel por ciclo de reloj. Como el Flipper funciona a 162 MHz, la Gamecube puede generar 648 millones de pixels por segundo: 162MHz * 4 = 648 Mpixels/s Cada píxel pipeline puede aplicar una textura por ciclo, luego el número de téxels por segundo es el mismo (un téxel es la unidad mínima de una textura aplicada a un polígono tridimensional, así como un píxel es la unidad mínima de imagen plana de 2 dimensiones). Como el bus que une el Flipper con la memoria RAM funciona a 324 MHz, y es de 64 bits, el ancho de banda de la GPU con la memoria principal es de 2,6 Gb/s: 324MHz * 64bits / 8 = 2,6 Gb/s Además, la GPU dispone de 3 Mb de memoria integrada en el propio Flipper (embebida) muy rápida. 1 Mb es dedicada a texturas, y el resto a buffer de imagen y buffer Z. Las texturas almacenadas en la memoria de texturas pueden ser accedidas a gran velocidad, ya que ofrece un ancho de banda de 10 Gb/s, pero tiene la limitación de tener un tamaño muy reducido, insuficiente para almacenar muchas texturas. Las que no caben, tienen que traerse de la memoria, cuya velocidad es del orden de 4 veces menor. Comparemos finalmente las capacidades de renderizado de la GPU.

Playstation 2 Gamecube
Píxel Fill-rate 2400 Mpíxels/s648 Mpíxels/s
Téxel Fill-rate 1200 Mtéxels/s648 Mtéxels/s
Memoria embebida 4 Mb3 Mb
Ancho de banda de la memoria embebida. 9,6 Gb/s (texturas) 38,4 Gb/s (buffers)10,4 Gb/s (texturas) 7,68 Gb/s (buffers)
Ancho de banda con memoria principal 2,4 Gb/s3,6 Gb/s
A todo esto hay que añadir los cálculos de transformación e iluminación. Para esta tarea, estimo que el Flipper puede realizar unos 7 GFLOPs.
  • Memoria
La Gamecube tiene 2 tipos de memoria RAM. – 24 Mb de memoria T1-SRAM. Una memoria rápida, con un ancho de banda de 2.6Gb/s. Teniendo en cuenta la PS 2 y la Xbox , que usan memoria Rambus y DDR respectivamente, la Gamecube queda un poco por detrás en este aspecto. Pero la memoria T1-SRAM tiene a su favor una latencia muy baja, que le favorece especialmente en accesos aleatorios. La latencia es el tiempo que tarda una memoria en dar un dato que se le ha pedido. La latencia, aunque no influye en la velocidad a la que se transfiere la información, sí afecta al rendimiento global, y aunque es más difícil medir su impacto, éste, sin duda existe. – 16 Mb de memoria de 81 MHz (ARAM). Esta memoria más lenta se usa para tareas que no requieran un ancho de banda elevado. No sólo funciona más lenta que la 1T-SRAM, sino que emplea un bus de sólo 8 bits. Su ancho de banda es de 81Mb/s: 81MHz * 8bits / 8 = 81 Mb/s Una de las aplicaciones usuales es el audio.

Playstation 2
Gamecube
Tamaño RAM
32 Mb
24 Mb (1T-SRAM) 16 Mb ( ARAM )
Velocidad RAM
3.2 Gb/s
2.6 Gb/s (1T-SRAM) 81 Mb/s ( ARAM )

  • Buses y ancho de banda. Esquema general.
La Gamecube sigue un esquema típico, mucho más sencillo conceptualmente que el de la Playstation 2.

gcbuses.jpg

La CPU y la memoria RAM van conectadas al Flipper. O sea que la CPU accede a la RAM a través de él. Y por tanto, es importante considerar la velocidad a la que pueden comunicarse los distintos dispositivos con el Flipper. El Flipper está conectado a la CPU a través de un bus de 64 bits que funciona también a 162MHz. El ancho de banda entre ellos es pues de 1.3Gb/s. 162 MHz * 64 bits / 8 = 1300Mb/s. El Fliper y la memoria están unidos por un bus de 64 bits a 324MHz, dando exactamente el doble de ancho de banda.
Playstation 2Gamecube
Ancho de banda CPU-RAM 2,4 Gb/s1,3 Gb/s
Ancho de banda GPU-RAM 2,4 Gb/s3,6 Gb/s
Ancho de banda CPU-GPU 1,2 Gb/s1,3 Gb/s

VISIÓN GENERAL DE LA XBOX DE MICROSOFT

Ahora veamos como trabaja la consola de Microsoft. La XBOX es un espécimen muy interesante, porque se parece mucho a un PC, “tuneado” para el juego. Aunque desde luego, sigue beneficiándose de las numerosas ventajas de ser una consola:
  • Juegos programados especificamente para su hardware, lo que permite aprovechar al máximo el sistema.
  • Todos los juegos funcionan igual en cualquier sistema, sin preocuparnos por sistema operativo, drivers, etc…
  • Un sistema cerrado y estable, que no debe darnos ningún problema de compatibilidades, configuración o rendimiento.
  • El precio: habitualmente notablemente inferior a lo que costaría jugar en un PC.
Microsoft ha tenido el lujo de tener la consola más potente del mercado a lo largo de más de 4 años. Aunque este detalle no ha sido suficiente para hacerla la número uno, sí que le ha valido como un fantástico pasaporte que le brinda ahora, con su Xbox 360, la oportunidad de aspirar a una posición muy elevada, y con la cuál, por cierto, sigue ampliando el tiempo en que sus consolas son las más potentes, ya que ha sido la única de su generación en el mercado hasta el reciente lanzamiento de la Playstation 3 (que aún no llegará a Europa), y a espera del inminente lanzamiento de Wii. Aunque no hay información oficial de Nintendo, es casi seguro (99,9%) que la Wii no se acercará al rendimiento de la Xbox 360. El caso de la Playsation 3 es mucho más complejo y discutido, y será el tema central del próximo artículo.

xbuses.jpg


  • La Xbox y su CPU
La CPU es un derivado del Pentium 3. Más concretamente, una mezcla de Celeron y Pentium 3. Por tanto, es de arquitectura x86, o lo que es lo mismo, un procesador de ordenador PC. Esta similitud, unido a que fué la primera consola que incorporaba disco duro de serie, tipo IDE, de los mismos que usan los PCs, la convirtió pronto en una consola peculiar. Pero en realidad, es igual que otras consolas, sólo que se ha escogido una CPU y un disco duro que ya se estaba usando en otro sistema. Se supone, por tanto, que las conversiones de juegos entre Xbopx y PC debe ser relativamente sencilla de hacer. El procesador era el más rápido que una consola había tenido nunca, en cuanto a MHz. Aún así, no puede rivalizar con el Emotion Engine de la PS2. Pero la XBOX no necesita tal cosa, porque mientras la PS2 se apoya en el Emotion Engine para hacer todos los cálculos, la XBOX tiene un chip gráfico potente que se encarga de las tareas de transformación y cálculo de geometría. El chip gráfico de la consola de Sony no tiene tal capacidad. Así pues, mientras la CPU de la XBOX no es en sí más potente que el Emotion Engine, el sistema en general, sí sobrepasa a la Playsation 2. Es más lógico comparar la CPU con la de la Gamecube, cuyo chip gráfico, como ya vimos, también se encarga de la costosa tarea de transformación. A pesar de que funciona a muchos más MHz, seguramente la CPU de la Xbox no supera por mucho al Gekko de la Gamecube, que es en sí, una arquitectura bastante buena. Su rendimiento en coma flotante se obtiene sabiendo que un Pentium 3 tiene dos unidades de ejecución para ello, una que realiza operaciones complejas (como la multiplicación), y otra operaciones más simples (como la suma). Por tanto, podemos realizar una multiplicación y una suma simultáneamente, usándo ambas unidades de ejecución. Entonces, sabiendo que cada unidad puede hacer 2 operaciones por ciclo, entre las dos, 4 operaciones. Y como la CPU funciona a 733MHz 733MHz * 4 = 2932 = 2.9GFLOPS.

Playstation 2 Gamecube Xbox
Velocidad 300 MHz485 MHz733 MHz
Caches 40Kb ( instrucciones) 32Kb (datos) 16Kb (SPRAM)32Kb+32Kb (L1) 256Kb (L2)16Kb+16Kb (L1) 128Kb (L2)
GFLOPS 6.5 GFLOPS1,6 GFLOPS2.9 GFLOPS
  • Una GPU como Dios manda.
En este apartado la Xbox se lleva el premio. La GPU de la Xbox, el NV2A, una cosa a mitad de camino entre una Geforce 3 Ti200 y una Ti500, es sin duda la más potente de esta generación. Además, su arquitectura es la de una GPU típica, es decir, que tiene vertex shaders y pixel shaders. Intentaré dar una pincelada a estos conceptos, fundamentales hoy en día. Los vertex shaders son unidades que se encargan de la transformación, es decir, burdamente hablando, generar y mover los polígonos, y los efectos de iluminación. Como ya comenté, la GPU de la Gamecube, el Flipper, también calcula estas cosas, pero no por vertex shaders, sino por un motor de transformación e iluminación (TnL), que es un sistema previo a los vertex shaders, que son mucho más flexibles. El NV2A dispone de 2 vertex shaders, que trabajan en paralelo. Con esto conseguimos liberar a la CPU de esta tarea, que requiere mucha coma flotante. Los pixel shaders se encargan de generar los pixels que corresponden a los polígonos, iluminación y efectos calculados. La Gamebube tenía 4 pixel pipelines, como dije, que vendrían a hacer lo mismo. En la Xbox también tenemos 4 pixel shaders, luego el fill rate será ahora 233MHz * 4 = 932MPixels/s Pero estos pipelines son más robustos que los de la Gamecube, pues cada uno dispone de 2 unidades de texturas (ver la imagen de abajo). Esto quiere decir que cada pipeline puede trabajar sobre un píxel cada ciclo, pero puede aplicar dos texturas simultánemente, en lugar de una solo. Así pués, consigue el doble de fill rate de texels: 233MHz * 4 * 2 = 1864MTexels/s El pixel shader de la izquierda tiene una sola unidad de texturas (TMU) El pixel shader de la derecha tiene 2 unidades de texturas (TMU) tmu.jpg La flecha negra representa un píxel que entra en el pixel pipeline. La flecha roja son texturas que se aplican al píxel. Cuando se usen varias texturas, la Xbox tirará mucho mejor que sus competidoras. La parte negativa es que no dispone de memoria embebida o integrada para tareas de vídeo. Recordémos que la Gamecube usa 3Mb, integrados en el Flipper (GPU), que le ofrecen anchos de banda elevados de hasta 10Gb/s, y la Playstation 2 también dispone de 4Mb de este tipo de memoria. Éstas proporcionan un almacén temporal que permite al chip gráfico acceder a las texturas ahí almacenadas a una velocidad muy alta. En la Xbox, las texturas deben viajar directamente desde la memoria principal a la GPU, cuando son requeridas. Al ser la memoria de la Xbox discreta (es decir, no integrada), la información debe moverse por un bus del chip de la memoria al chip gráfico, y es, por tanto, habitualmente un viaje más lento. Eso sí, los 3 y 4Mb de memoria integrada de la Gamecube y Playsation 2 son demasiado pequeñas para hacer grandes cosas, ya que a penas se dispone de 1Mb para texturas. En cambio, la Xbox dispone de 64Mb de RAM unificada, que se usa para todo, y permite guardar más texturas, aunque su acceso sea más lento. Aún así, como el ancho de banda de la CPU es de sólo 1Gb/s, no atosigará demasiado a la memoria, y la GPU dispondrá del resto de su ancho de banda, que en este caso, es bastante. En definitiva, la Xbox gana en cuanto a GPU.

Playstation 2 Gamecube XBox
Píxel Fill-rate 2400 Mpíxels/s648 Mpíxels/s932 Mpíxels/s
Téxel Fill-rate 1200 Mtéxels/s648 Mtéxels/s1864 Mtéxels/s
Memoria embebida 4 Mb3 Mb
Ancho de banda de la memoria embebida9,6 Gb/s (texturas) 38,4 Gb/s (buffers)10,4 Gb/s (texturas) 7,68 Gb/s (buffers)
Ancho de banda con memoria principal 2,4 Gb/s3,6 Gb/s6,4 Gb/s
  • Memoria
La Xbox tiene otro enfoque respecto al esquema elegido por Sony y Nintendo, aunque propone un sistema muy considerable. En lugar de tene una memoria principal, y a parte unos cuantos megas de memoria de video embebida en el chip gráfico, como hacen sus competidoras, ésta emplea una sóla memoria que se usa para todo, o memoria unificada. Cabe remarcar que se trata de una memoria «normal», lo de «unificada» se dice no por el tipo de circuito, sino por el uso que se le da. La parte positiva de esta propuesta es una mayor flexibilidad, porque puedes usar la mitad de la RAM como memoria de programa, y la otra para tareas gráficas, o si la situación lo requiere, dedicar casi la totalidad de la misma a texturas, por ejemplo. En concreto, la consola de Microsoft vuelve a ganar en cuanto a la velocidad de su memoria, usándo una RAM de tipo DDR, muy parecida a la que vienen usando los PCs desde hace años; sin ir más lejos, en el momento que la Xbox salió al mercado. Aunque mientras en los PCs proliferaron las DDR de 266MHz y 333MHz, la de la Xbox corre a 400MHz. Y aún a fecha de hoy, es la memoria de tipo DDR más rápida, y para superarla, un PC debe usar las nuevas DDR-II, disponibles a partir de 533MHz (aunque si no saltas a DDR-II 666MHz, es casi preferible la DDR a 400MHz, porque las DDR-II tienen una mayor latencia que su equivalente DDR. Ahora bien, la DDR-II 666MHz es la memoria más estandar a fecha de hoy, o sea que no está nada mal). Los 400MHz de la memoria de la Xbox está conectada al northbridge a través de un generoso bus de 128 bits, ofreciendo un ancho de banda de 6,4Gb/s, el doble que la de la Playsation 2: 400MHz * 128bits / 8 = 6400Mb/s = 6,4Gb/s
Playstation 2 Gamecube XBox
Tamaño RAM 32 Mb24 Mb (1T-SRAM) 16 Mb ( ARAM )64 Mb
Velocidad RAM 3.2 Gb/s2.6 Gb/s (1T-SRAM) 81 Mb/s ( ARAM )6.4 Gb/s
  • Buses y ancho de banda
Para finalizar, dejo aquí los esquémas de las 3 consolas para compararlas, y debajo, la tabla resumen de los anchos de banda de los buses más rápidos del sistema.
xbuses.jpg
gcbuses.jpgps2buses.jpg Cabe percatarse que la Xbox y la Gamecube usan un northbridge, mientras que la Playstation 2 usa la CPU como centro de comunicaciones, a la que todo está conectado. La Gamecube dispone de 2 tipos de RAM, mientras que las demás no, y por ello en la Xbox y PS2, he representado en el lugar de la memoria adicional, el chip I/O, o southbridge, es decir, el chip que se encarga de conectar los buses y dispositivos «lentos» (por ejemplo, DVD, puertos USB, mandos,…) a los buses de alta velocidad, de la CPU y demás gaita. Como puede verse, el ancho de banda de la memoria de la Xbox es amplamente el más elevado. La conexión entre la CPU y el chip gráfico es similar…
Playstation 2 Gamecube XBox
Ancho de banda CPU-RAM 2,4 Gb/s1,3 Gb/s1 Gb/s
Ancho de banda GPU-RAM 2,4 Gb/s3,6 Gb/s6,4 Gb/s
Ancho de banda CPU-GPU 1,2 Gb/s1,3 Gb/s1 Gb/s
CONCLUSIONES Tres sistemas, tres grandes visiones de como alcanzar el alto rendimiento que los juegos en 3D requieren. Cada uno tiene sus puntos fuertes, y sus puntos débiles, aunque casi con certeza, y en mi opinión, es la Xbox la máquina más potente, que además posee disco duro de serie, y muchas posibilidades al margen del juego. La Playstation 2 la colocaría a la altura de la Gamecube, ésta última a su vez con la ventaja de ser muy compacta.Aunque debo dejar claro que el hardware no significa mucho en el mundo de las videoconsolas. A lo largo de la historia d elos videojuegos, casi siempre a triunfado ekl sistema menos potente:
  • La NES se impuso a la Master System, a pesar de tener una CPU más lenta, mucha menos memoria, y un chip de vídeo con menos capacidad de colores y sprites.
  • La Super Nintendo se impuso a todos sus competidores, y aunque era más potente que la Megadrive, no así de la 32X, y otros inventos como el CD-i, 3DO, Atari Jaguar, Amiga CD32,… o la gran Neogeo, la consola de los ricos. Ninguna alcanzó su exito y las ventas de la SNES.
  • La Gameboy, con su pantalla monocroma, barrió a todas las portatiles de la historia, incluyendo la Game Gear y la Atari Lynx, superiores en rendimiento y capacidades.
  • La Gameboy Advance ha seguido barriendo, eliminando a la Neogeo Pocket, la Wonderswan,…
  • La Nintendo DS sigue con la hegemonía de las portatiles de Nintendo, dejándo a raya a la poderosa (?) PSP.
  • La Playstation se comió a la Nintendo 64 e incluso a la Dreamcast, que era ampliamente más potente en todos los aspectos.
  • La Playstation 2 ha ganado esta generación, por lo mismo que en todos los otros casos, por los juegos que han salido para ella, que es, al fin y al cabo, lo que hace una consola.
Espero que este artículo, y los que les predecieron, haya servido a la gente que no tenía conociemientos, o simplemente conocía por encima, a entender un poco mejor el tema del hardware, que bajo mi punto de vista, tiene una gran importancia. No ya porque la consola más potente vaya a ser la mejor, que no tiene porque serlo, y eso nos dice la historia, sino por haber eliminado un poco de «analfabetismo digital», y porque, dicho sea de paso, aunque queramos dar toda la importancia a los juegos, que por una parte es como debe ser, no debemos olvidar que éstos juegos requieren un sistema donde ejecutarse, y no está de más conocer los secretos que se esconden tras estas cajas de plástico. ¿No? El próximo artículo seguirá la línea de este, pero en esta ocasión hablaré de la Xbox 360 y la Playstation 3, e intentaré mascar toda la información que he ido acumulando a lo largo de los meses. Se nos ha intentado vender que la Playstation 3 es muy superior a la Xbox 360. No estoy tan seguro de esta aplastante diferencia. Además, Microsoft está dando pasos inteligentes, y solucionando muchos de los errores de su primera consola. Son sistemas con una filosofía subyacente muy distinta, y creo que echarles un vistazo ofrece un interesante conocimiento. ¡Un saludo a todos! http://www.consolasparasiempre.net
Redactor
  1. Leviath

    Antees de leer practicamente nada y tal tengo que decir que siento una gran tristeza al ver como Dreamcast ha sido olvidada una vez más. Tened un poco más de sensibilidad, anda. 

  2. David

    Venga hombre :) Quieres un artículo sobre la Dreamcast? jeje.

    No la he olvidado, solo que esta generación no la incluye… La he mencionado alguna vez en los anteriores artículos, y si no la trato aquí, es por simplificar. Esa consola es fabulosa.

  3. Pep Sànchez

    Gran trabajo, como siempre.

    Cada vez se complican más las cosas, pero también se vuelven más interesantes; el esfuerzo merece la pena.

    Preparando cachiporras y armas con bolas de goma para repeler trolls y flamers en en la 5ª parte de la carrera ;) 

  4. Tolrak

    Buen artículo, aunque este es de los que necesitan ser leídos varias veces; ¡que cantidad de información!

    Gracias ;)
     

  5. Spidey

    Sencillamente genial. Portentoso documento, sí señor…

  6. basilisk

    Podrian colocar los links de los anteriores? Estafabulosa. Gracias

  7. Alatriste

    Dios , ya esta aki la 4ª parte deste genial documental, primeramente darte las gracias David por currarte los articulos ke a mi por lo menos me interesan muchisimo, ademas ke lo redactas de forma amena y cosas mas o menos especificas de la informatica, nos las haces entender a la gente de apie con total naturalidad. Te mereces un 10 como la copa de un pino.

  8. David

    Muchas gracias a todos por vuestros comentarios :)

    Viendo que ya 3 de vosotros me preguntáis por la Dreamcast, enmendaré mi error dedicando un pequeño apendice a ella, pero que publicaré después de la 5ª parte, dedicada a la Xbox360 y PS3, por ser un tema de cierta actualidad. 

    CeRO_CoOL, ahora bien, tal y como ya expliqué en el primer artículo, en el que sí mencionaba a la Dreamcast, NO es una consola de 128 bits. Te recomiendo leer el primer artículo que puedes buscar aquí en Anait o en mi web personal, http://www.consolasparasiempre.net, y verás que no me olvidé de esta consola, sólo que decidí no incluirla en este artículo para simplificar y no tener una comparación a cuatro bandas, que podría ser buf :)

  9. SpaceDevil

    David, eres un puto crack. Así de claro y contundente me pronuncio.

    Teniendo en cuenta que el tema se puede hacer algo indigesto para los más profanos, tu prosa es lo suficientemente amena como para que continuemos leyendo.

     

    Estoy con Pep en que con la 5ª entrega habrá que estar preparado para todo tipo de barbaridades en los comentarios, y es que la cosa anda muy calentita…

     

  10. Alatriste

    Lo ke si es verdad, eske apeteceria ver un analisis detallado tb de dreamcast, pero weno kiza ya era pedir demasiado, tb estaria bien uno de Nds y psp a ver como van dotadas esas makinitas.

    Lo ke da la sensacion del articulo, aun con todas las dificultades de PS2, da la sensacion ke deberia ser mas burra de lo ke los juegos han demostrado, incluso muchos ahora despues de 7 años de salir al mercado, aunke juegos como Gt3 o Metal Gear 2 estan a la altura de Game Cube, los demas estan claramente por debajo.

    Si tienes 6.5 Gflops , si ultilizas 5 Gflops en las operaciones geometricas, (se kedaria 5<7 con gamecube, pero donde flakea ps2 es en resolucion y en texturas no en poligonos, asi ke esa no puede ser la causa de su menor potencia en los juegos) Despues en memoria tb es muy bruta esta makina, con 32 megas a 2.6 gbits y gamecube 3.6 gbits, pero solo 24 megas este punto es el unico en ke la supera Gamecube, pero no es tan claro, ademas playstation 2 tienes 4 megas de memoria embebida vs los 3 de gamecube, tb mas veloces ke akella. Ademas de una grafica con un fill rate increible, no se entiende ke a la practica la playstation 2 estubiera en cuanto a texturas peor dotada incluso con Dreamcast, porke en PS2 se ven esas texturas tan cutres, cuando en dreamcast con 16 megas ya tenias por ejemplo en el sonic o el shenmue unas texturas de cesped y demas de la leche. Estaria muy bien una comparacion con Dreamcast. Claro ke todo esto basandome en tu articulo, ke no es tan detallado kiza como es en la realidad y hay mas factores en cuenta.

  11. Radical Ed

    Yo también estóy con Pep. Ya me estoy preparando para las gilipollezes que voy a decir en los comentarios ;)

  12. David

    Muchas gracias Adan. Espero seguir manteniendo el listón, de momento si te interesa la Dreamcast, el 6º y ultimo artículo, de momento, trata sobre ella.