Sobre el hipotético hardware de NX

Esta será la única entrada que hare en meses sobre el tema, en realidad es un resumen global de lo que he escrito con anterioridad de forma ordenada, la he hecho por las peticiones de la gente por esta entrada en los comentarios.

En fin, al grano.

¿Cual es el proceso con el que le podrían fabricar el SoC de la NX a Nintendo? He aquí el meollo de la cuestión, el proceso de 20nm se ha cuasi-descartado por parte de Nvidia y AMD lo ha descartado del todo. En el caso de Nvidia solo el Tegra X1 esta fabricado bajo proceso y en el caso de AMD tanto CPUs como GPUs bajo el proceso de 20nm han sido canceladas en lo que a lanzamiento se refiere. ¿El motivo? Es por el hecho que los 20nm rompen la Ley de Moore, es decir, el coste por transistor es más alto que el proceso de 28nm cuando debería haber sido más bajo si la progresión fuese la natural., siendo este uno de los motivos para pasar de Bulk a FinFet.

costetransistores

¿Por qué es importante esto? Nintendo no fabrica procesadores, nunca lo ha hecho y siempre ha dejado que se los haga un tercero, en la época NES/SNES fue Ricoh, en N64 fue NEC Electronic (futura Renesas), en GameCube, Wii y Wii U fueron IBM por un lado y Renesas por el otro. Dado el nivel de confianza de Nintendo con sus proveedores. Nintendo con 3DS y Wii U cometió un error enorme, el hecho de realizar chips a medida que dependen unicamente de un proveedor en concreto por el uso de tecnologías propietarias de estos, lo cual choca con el modelo actual de negocio en el desarrollo y fabricación de procesadores donde las fundiciones principales (TSMC, Global Foundries, UMC, Samsung…) suelen alquilar sus lineas de producción a terceros para poder paliar los altos costes de la implementación de los nuevos nodos, es decir, a medida que la Ley de Moore ha ido avanzando los costes de implementación de los nuevos nodos han ido aumentando los costes progresivamente.

GF_Fab_costs

El gráfico de arriba es GlobalFoundries pero es aplicable a todos los fabricantes, el caso es que a medida que han ido apareciendo nuevos nodos de fabricación los costes de la infraestructura han ido subiendo y han hecho que el volumen de ventas necesario para una planta necesite ser enorme para funcionar. Es por ello que todo se ha concentrado en unos pocos y en medio de todo esto los proveedores clásicos de Nintendo en sobremesa, IBM y Renesas, han caído por completo y abandonado el mercado que les obliga a tener un planteamiento completamente distinto y completamente alejado del uso de tecnologías propietarias que habían atado Nintendo de pies y manos a una fundición en concreto. Así pues el uso de la eDRAM de Renesas forzaba a Nintendo a depender de Renesas, el uso del PowerPC 750 forzaba a Nintendo a depender de IBM. En cambio existen multitud de tecnologías para desarrollar un SoC que son de empresas fabless, sin fábrica asociada, las cuales cobran una regalía por chip vendido que incluya su tecnología pero que al no tener una fábrica propia no hay ninguna tecnología propietaria que los ate a sus propias fábricas.

Ahora bien, si que hay contratos con las diferentes fábricas ya que el diseño de los procesadores depende del nodo utilizado y si estas realizando una consola lo que necesitas es que los componentes del SoC principal o en su defecto los procesadores principales estén listos ya no mucho antes que el lanzamiento de la misma sino de la presentación incluso. Dicho de otra manera, se puede hablar de los procesadores en un mapa de ruta o en una presentación pero los ingenieros necesitan que las piezas sean tangibles cuando se encuentran en el laboratorio.

170px-Hands-Fingers-CrossedNo obstante desde el momento en que Nintendo licenciaría la IP del chip y controlaría la fabricación de ellos dependerá el proceso que elijan pero tened en cuenta que el sobrecoste del proceso de 20nm sobre el de 28nm tomará un papel importante. Claro esta que estoy siendo MUY CONSERVADOR, especialmente por lo ocurrido con Wii U donde nos esperábamos que saliese con un chip a 28nm y salió con uno a 40nm por el uso de la eDRAM de Renesas que utilizaba ese nodo. Por el otro lado tampoco hay que olvidar que se rumorea una APU semi-custom aparecerá en el mercado en 2016 utilizando el proceso de 16nm FF, por lo que podría ser la de NX. Así que crucemos los dedos para que tenga algo que ver pero tampoco veamos esto como una confirmación sino como una posibilidad más en toda esta ecuación.

¿Sabéis cual es el problema? Desconocer por completo lo que es real y lo que no en medio de tanto marketing, como he dicho antes los mapas de ruta hablan de productos intangibles, pero es que además la cosa se complica con clientes únicos donde la información esta cerrada a cal y canto. En todo caso hay que aclarar que el motivo por el cual Nintendo en Wii U fue  a los 40nm y no a los 28nm fue por la eDRAM dentro del chip que solo se fabricaba bajo ese nodo.

wiiugpudie

 

En el chip ocupa un tamaño enorme como podéis ver… ¿pero cual era el papel de dicha eDRAM? Pues el hecho de dar suficiente ancho de banda de cara a ciertas operaciones sin necesidad de colocar una enorme cantidad de chips de memoria en el exterior. Por suerte con Xbox One se ha demostrado que la utilidad de la memoria embebida dentro del chip esta en entredicho por el simple hecho que esta aunque pueda otorgar un ancho de banda y ahorrar en memoria no da la suficiente densidad de almacenamiento para las operaciones que requieren un alto ancho de banda por lo que se han de buscar una mejor solución, siendo la mejor de ellas el hecho de separar la memoria embebida del chip y colocarlos ambos en un sustrato/interposer encargado de la interconexión, esto que puede parecer extraterrestre permite separar el nodo de fabricación de la memoria del nodo del procesador y es algo que se ha llevado ya a cabo, tanto con memoria no-TSV (HBM) como con memoria TSV.

El primer ejemplo lo tenemos en el Intel Iris Pro.

El segundo ejemplo en el a punto de ser lanzado “Fiji” de AMD.

amd-fiji-gpu

Esto no es extraño para Nintendo, el hecho de tener un sustrato/interposer para comunicar un grupo de chips entre si, solo que en el caso de Wii U era para comunicar CPU+Latte en vez de SoC+Memoria, pero el caso es que un sustrato/interposer no es ajeno a Nintendo.

MCM_WiiU

Incluso la combinación de CPU+LSI/SoC encima de un sustrato para la comunicación ya la vimos en Wii con el Hollywood y la 1T-SRAM.

hollywood_dies

Como veis no hablo de algo completamente extraterrestre en lo que a consolas Nintendo se refiere y entra dentro de la forma clásica que tienen de diseñar sus consolas de sobremesa, pero la principal ventaja es que permite eliminar la memoria embebida del chip sin tener que colocar una gran cantidad de chips de memoria en la placa base que es lo que Nintendo lleva evitando desde hace ya eones.

Ahora bien, lo que voy a explicar ahora puede sonar complicado pero dice mucho de la forma en la que diseñan su hardware. En el caso de Wii la MEM1 eran los 24MB de memoria 1T-SRAM montados en el mismo sustrato pero los 3MB de memoria embebida para gráficos estaban dentro del chip. En el caso de Wii U la MEM1 y la memoria para los búfers de imagen se encuentran físicamente en el mismo lugar, en la eDRAM. Esto ya lo comente en su día pero es importante repasarlo, la diferencia principal entre Xbox One y Wii U es que en el caso de Wii U la eDRAM es también accesible por la CPU y dada su mayor proximidad con la CPU es utilizada como una especie de Cache de tercer nivel en lo que a la consola se refiere.

Si miramos el diagrama general de Wii U…

WiiUDiagram

La parte que pone System LSI sería en nuestra especulación el sistema formado por SoC+Memoria encima de un sustrato/interposer en NX. Ahora bien… ¿cual sería la naturaleza de dicho memoria? No tiene porque ser memoria HBM o cualquier tipo de memoria TSV, puede ser un chip de memoria convencional con la densidad suficiente para su trabajo o puede ser una pila de chips HBM, en el segundo caso tenemos que partir de otras dos posibilidades, HBM1 o HBM2.

No hay que olvidar que en el caso de la memoria HBM los chips de memoria están apilados y por tanto colocados en vertical.

HBM

Tanto el HBM1 como el HBM2 tienen unos 8 canales de 1024 bits que se pueden repartir cada uno de ellos entre uno o dos modulos de memoria en la pila. En el HBM1 han optado por un solo chip por cada dos canales de memoria y en el HBM2 han optado por un canal por chip de memoria, en el caso de 8 chips por pila, aunque también se mantiene la configuración de cuatro chips por pila.

En el caso del HBM1 una pila de 4 tiene una densidad total de 1GB, si se opta por una configuración 2-Hi entonces no solo la densidad se va a la mitad sino también el ancho de banda, pasando a un bus de 1024 bits a uno de 512 bits tal y como se ve en la siguiente tabla:

normal_HBMmemory-Wccftech2611-1-1

La HBM2 es otra historia, en realidad es lo mismo que la HBM1 solo que pudiendo alcanzar frecuencias más altas y con una densidad de memoria mucho mayor, en ese caso las configuraciones de 1024 bits serían de 4GB u 8GB (pilas de 4 u 8) y las de 512 bits de 2 o 4GB (pilas de 2 o 4).

Una vez explicado el tema de la memoria toca movernos hacía una serie de patentes de AMD, en la primera de ellas podemos leer lo siguiente, lo cual nos describe un comportamiento muy parecido al de la MEM1 de Wii U.

La Cache L3 es compartida por el núcleo CPU y el núcleo GPU e incluye circuitos de memoria que son utilizados para almacenar instrucciones y datos que son utilizados por la CPU y la GPU, respectivamente, para realizar operaciones computacionales.

Es decir, la misma función que la MEM1 de Wii U, pero más adelante agrega:

La Cache de tercer nivel es más grande que la de primer y segundo nivel y se encuentra fuera del procesador.

Empieza a concordar con lo que hemos estado hablando anteriormente, en fin sigamos con una variación de la misma patente.

La cache L3 es implementada utilizando DRAM apilada.

Si miramos los diagramas en la misma patente veremos que son muy parecidos en lo que a organización se refiere a la de Wii U y por tanto a la arquitectura clásica utilizada por Nintendo.

En la misma patente hay un diagrama de Procesador+Memoria HBM en un sustrato/interposer.

HBMAPU

La memoria HBM haría de cache L3 y la función de MEM1, pero no haria la función de MEM2 o memoria externa, cuyo trabajo recaería en una serie de módulos DDR4 fuera del sustrato/interposer. Pero antes de movernos hacía la MEM2 me gustaría hacerle un vistazo a la posible GPU. Si miramos el AMD Fiji que tiene cuatro chips HBM sobre su sustrato/interposer la configuracion de dicha GPU es la siguiente:

Fiji

Obviamente Fiji es un chip enorme inviable para cualquier consola de videojuegos y más para una de Nintendo, pero lo que quiero que veáis es la correlación directa entre el número Shader Engines con el número de chips HBM, un Shader Engine (que incluye CUs y RBEs) por cada chip HBM, por lo que a simple vista
una configuración con un solo HBM tendría que tener un solo Shader Engine. No obstante la relación directa entre el ancho de banda de los HBM y los Shader Engines esta en los RBE. Tenemos unos cuatro RBE por Shader Engine y un grupo de 4 CUs por RBE. El caso es que el otro chip de AMD bajo la arquitectura GCN 1.2 es Tonga.

AMD-Tonga-XT-Block-Diagram

 

Como podéis ver la reducción del ancho de banda lleva a la reducción de los RBE y con ello del número de CUs. Reducir el número de chips HBM a uno del tipo 4-Hi significaría que la configuración de la GPU sería de 16 CUs, es decir 2 menos que PS4 y 4 más que Xbox One. ¿Pero que ocurriría en el caso de una configuración 2-Hi? No podemos reducir más el número de RBEs por lo que deberíamos reducir el número de Shader Engines, dejando la configuración en 8 CUs, lo cual no se debe descartar teniendo en cuenta que Nintendo va a por precio y consumo, pero de cara al apoyo de terceros y de los jugadores sería dispararse contra su propio pie.

shoot-foot

 

¿El motivo? La gente empezaría a comparar las versiones de los juegos multiplataforma, vería que son peores y optaría por las otras consolas. Ya lo hemos visto en PS4 vs Xbox One, lo hemos visto cuando se vieron los juegos multiplataforma en Wii U y la falta de potencia de esta fue un problema, claro esta que es lo que he dicho antes, Nintendo quiere una consola barata y de bajo consumo por lo que independientemente de si la acierte o no en mi especulación existe la posibilidad  flotando en el aire de una configuración con una GPU de 8 CUs, lo cual sería una enorme cagada.

Volviendo al principio dire que no me mojo al 100%, actualmente en TSMC están fabricando los chips con tecnología de 16nm que serán lanzados el año que viene, como he dicho antes se rumorea una APU a 16nm semi-custom. Esto haría posible la configuración de 16 CUs de la que he hablado antes, pero esto no es más que especulación y tratandose de Nintendo con dos generaciones dando menos de lo mínimo esperado uno tiene que mantenerse escéptico en esto, sinceramente no me fío.

Lo último que nos queda es la MEM2, y con esto ya acabamos, creo que va a ser DDR4 del tipo TSV, es decir, 3DS-DDR4.

Captura de pantalla 2015-06-27 a las 15.28.56

No confundir con la memoria HBM, la 3DS-DDR4 es simple y llanamente coger un módulo DDR4 con varios chips y apilarlos todos en un mismo encapsulado pero el ancho de banda no aumenta con más chips por pila sino que lo que aumenta es la densidad por chip/pila. La DDR4 actual sin TSV es de 8Gb (1GB por modulo), con el TSV pasará a ser como mucho de 8GB por chip 3DS-DDR4 que realmente serían cuatro chips DDR4 apilados en uno, es decir, si Nintendo mantuviese por enésima vez un bus de 64 bits con la memoria veríamos que de los cuatro chips MEM2 de Wii U pasaríamos a un solo chip de memoria, reduciendo el tamaño de la placa base al disminuir el número de chips en ella.

En la siguiente tabla de Samsung se ve como en pocos meses estarán disponibles módulos 3DS-DDR4, marcados como TSV al final de la tabla.

Captura de pantalla 2015-06-27 a las 15.44.48

Esto en el caso del uso de memoria HBM1, en el caso del uso de la memoria HBM2 sería posible colocar hasta 8GB de RAM en el HBM, haciendo que la DDR4 externa no fuese suficiente. Ahora bien, si os preguntais a que viene la idea de reducir el espacio ocupado por la placa, os diré una respuesta, para colocar el Disco Duro.

En fin, esto es todo.

Anuncios