Antes que nada tenemos que tener en cuenta que Nintendo en ningún momento ha hecho el anuncio oficial de quien puede ser el proveedor de la GPU de NX por lo que pese a que el Nvidia Tegra X2 es el que parece tener más números según los últimos rumores que han ido apareciendo durante las últimas semanas también se han de tener en cuenta otras posibilidades y la alternativa al Tegra X2 que esta sonando con más fuerza los últimos días es el del M3000. DMP es una pequeña empresa japonesa que se dedica al diseño de chips gráficos para dispositivos móviles, la tenía descartada porque su arquitectura más potente (SMAPH-S) era del nivel del PowerVR SGX543MPn de PS Vita a nivel de potencia y no soportaba APIs como Vulkan, no obstante DMP se encontraba en la misma diapositiva que Nintendo en lo que a los socios del grupo Khronos que están trabajando en Vulkan pero desconocíamos su arquitectura.

NintendoDMPVulkan

La relación entre Nintendo y DMP es la siguiente: Fueron los diseñadores del chip utilizado en 3DS por lo que hay un precedente de colaboración pero como es obvió no van a utilizar ni el PICA200 ni el SMAPH-S y dada la relación entre DMP y Nintendo con la actual portátil existen muchas posibilidades de que su nueva arquitectura acabe dentro de las entrañas de la NX. ¿Pero como es dicha arquitectura? Sabemos realmente muy poco de la misma, pero hay una serie de pros y contras relacionados con la misma, aunque la fuente original es en Japonés por lo que interpretar la información es algo confuso pero haré lo que se pueda.

  • El nombre en clave de la GPU es «Musashi». Es decir… M3000 significaría Musashi 3000.
  • Esta diseñada bajo la API del grupo Khronos OpenGL ES 3.2 y por lo tanto estamos hablando de una GPU que estaría en cuanto al set de características (no de potencia) al nivel de las utilizadas en PS4 y Xbox One. OpenGLES32
  • No olvidemos que Vulkan funciona a partir de GPUs que soporten OpenGL ES 3.1 hacía adelante: vulkan-4
  • El diagrama de arquitectura del M3000 es el siguiente: M3000-GPUコアブロック図
  • El GLManager es el planificador para poder gestionar varios hilos de contexto distintos, hay que recordad que tanto OpenGL ES 3.1 en adelante como Vulkan a nivel de GPU soportan varios hilos de ejecución distintos. La ventaja de Vulkan sobre OpenGL ES 3.x es el hecho que permite la creación de las múltiples listas de comandos no solo por un solo núcleo de la CPU sino por varios. Comparativamente en este aspecto OpenGL ES 3.1 y 3.2 serían como Direct3D 11 y Vulkan como Direct 3D 12.
  • Tenemos cuatro Shader Cluster con 16 núcleos cada uno de ellos, esto son unos 64 Stream Processors en total pero la arquitectura esta pensada para escalar en ese aspecto de tal manera que el chip base el M3100 tendría un solo núcleo con 4 Clusters, el M3200 serían 8 núcleos y por tanto 8 Clusters y el M3400 tendría unos 16 Clusters. El número de Stream Processors en la configuración más alta sería de 256, la misma potencia que… el rumoreado Tegra X2.
  • DMP podría colocar las extensiones Maestro que en apariencia serían clave para la compatibilidad hacía atrás con los juegos de la gama 3DS, sobre el particular tema de los gráficos en 3DS tengo que hacer una entrada, bueno… Sobre el particular tema de las APIs en 3DS, en realidad el segundo motivo por el cual la gente se agarra a esto es la compatibilidad hacía atrás tipica de las portátiles de Nintendo.

Pero esto tiene un handicap muy grande, es solo un anuncio sobre el papel y no existe ninguna demostración de la GPU funcionando por lo que yo antes de ir asegurando de manera prepotente que el chip existe sería prudente. Precisamente DMP es famosa por vender la piel del oso antes de cazarlo y ya ocurrio con el SMAPH-S que no estuvo disponible para Nintendo a tiempo y tuvieron que lanzar 3DS con el PICA200 y una retahila de excusas sumamente ridículas. La gente no sabe que la GPU escogida por Nintendo era originalmente la incluida en el Tegra 2 de Nvidia pero DMP se adelanto prometiendo una GPU similar a menor precio que no tuvieron lista a tiempo y de ahí a que Nintendo terminará con el PICA200, el cual es el origen de los males de Nintendo.

El otro tema es el de la compatibilidad hacía atrás… Con una sola pantalla a 720P y con el enorme aumento de resolución… ¿Como piensa adaptar Nintendo la doble pantalla de 3DS? Pensad que sin cambios de resolución a base de un simple escalado la distribución de pantallas quedaría de la siguiente manera:

3dsnx

El espacio de ambas pantallas es demasiado pequeño por lo que para una mejor comodidad lo mejor sería escalar:

3DSNXSS

Lo cual como podéis ver en la distribución clásica de las pantallas de Nintendo para sus portátiles no cabría por lo que tendríamos que buscar una distribución alternativa en este caso como colocar ambas pantallas en horizontal pero entonces la cosa también se complica:

3DSNXSSH

Para que esta posición no fuese un problema entonces la pantalla de NX debería ser de 1440×720 pixels en total en vez de 1280×720, es decir, una pantalla con un ratio 18:9 lo cual es un formato de pantalla raro, la otra posibilidad es que al igual que pasa con la consola virtual de DS en Wii U es que la pantalla sobre la que ocurre la interacción en ese momento sea la que este re-escalada dejando a la otra con su tamaño original.

3DSNXSSH2

3DSNXSSH3

Pero el problema de las pantallas no es el único, en el caso de 3DS y New 3DS la GPU tiene asignada una memoria embebida en su interior por lo que existen movimientos de de datos expresos en el código, es el mismo problema que con la ESRAM de Xbox One que si la hacemos desaparecer entonces el código se vuelve incompatible y se tiene que volver a escribir. Si es verdad la compatibilidad hacía atrás con 3DS entonces dicha memoria embebida se tiene que incluir si o si dentro del chip y aunque no es una imposibilidad técnica esto supone un sobrecoste sobre el SoC final de la consola y el tema del tamaño de los procesadores en consolas lo miran mucho, no sería la primera vez que un chip pasa por el «editor» para sufrir «censura» por el hecho de que su tamaño y por tanto coste relacionado trastoca todo el esquema.

No obstante me sorprende el hecho de que la gente considere a NX como sustituta directa a corto plazo de 3DS, más que nada porque si por lógica histórica nos tenemos que guiar para tener una referencia el precio de salida de NX será de 25.000 yenes, por lo que estará fuera del rango de precio en el que se encuentra 3DS en este momento y Nintendo ya cometió el error con el precio de 3DS por lo que pienso que durante un tiempo mantendrán a 3DS en el mercado hasta que aparezca lo que podríamos llamar NX Lite que sería puramente portátil. Es decir, pienso que la estrategia de Nintendo con NX es la de empezar con un hardware que ocupe ambos espacios de manera ambigua para luego diversificarse en ofertas de portátil y sobremesa que serían compatibles al 100% con los juegos bajo la plataforma NX, es decir… una gama de productos compatibles entre si con diferentes especificaciones técnicas como ocurre con iOS aunque eso ya es especular mucho y rizar el rizo.