La Opción Global Foundries en NX (I): ¿PPC 750 again?

Para los profanos, Global Foundries es fabricante de chips al igual que TSMC pero con la particularidad al igual que TSMC de que no hace sus propios diseños sino que fabrica para otros, siendo su principal cliente AMD para quien fabrica los SoC/APU para PC. No obstante los SoC/APU para PS4 y Xbox One son realizados en TSMC por lo que no podemos apostar por ninguna de las dos opciones.

¿Es posible que el socio de Nintendo sea Global Foundries para la fabricación de uno cuantos componentes de la consola? Existe una posibilidad que no me gusta en absoluto porque personalmente no tiraría por ahí después de la mala experiencia ocurrida en el caso de Wii U, pero hay que tener en cuenta que Global Foundries le compro las fábricas a IBM y esta última era el fabricante de las CPUs de Wii y Wii U, con esa antediluviana CPU que se había mantenido en Wii U para la compatibilidad hacía atrás con la misma pero en un formato multinúcleo.

La CPU de Wii U utilizaba una CPU fabricada bajo el proceso CU-45, actualmente existe un proceso llamado CU-32 que es propiedad ahora de Global Foundries y es que una versión mejorada del CU-45 y la pregunta que me viene a la mente sería… ¿Y si Nintendo va a sacar una nueva iteración de dicho procesador con una mayor velocidad de reloj y un mayor número de núcleos aprovechando el proceso de 32nm para esta?

¿Pero porque pienso que Nintendo podría ir al PowerPC de nuevo? Recordad, que todo escenario no se puede descartar pero el motivo principal es el siguiente:

WiiUOS

Si es cierto que el nuevo mando de control va a incluir funciones del Wii U Gamepad lo más normal es pensar que Nintendo recicle la estructura de software del Café OS para la siguiente generación, permitiendo no solo la compatibilidad hacía atrás con Wii U en la consola sino que además dicho SO se ampliaría para dar apoyo a mejoras importantes. Pero hay una diapositiva reciente de GlobalFoundries que me ha llamado la atención porque he tenido un Deja Vu enorme con ella:

GF2

Dicho diapositiva me recuerda enormemente a la siguiente configuración de Wii U:

MCM_WiiU

¿Cuando no puedes fusionar un chip en un SoC? Cuando este ha sido diseñado para un proceso de fabricación que es distinto al del resto de componentes y por tanto no se pueden fabricar en un solo bloque compacto. El único escenario que veo posible en que la lógica de la CPU y la GPU se separen es que Nintendo utilice de nuevo una CPU derivada del núcleo que lleva utilizando desde hace generaciones, explicaría el ir con GlobalFoundries.

Pero esto no significa que el resto del sistema se vaya a basar en el mismo hardware que Wii U, en especial la GPU por las últimas noticias que tenemos.Sabemos que Nintendo ahora forma parte del consorcio Khronos para implementar Vulkan por lo que esto significaría un cambio en la arquitectura seleccionada de la GPU del sistema:

api-vulkan-nintendo-nintendon1

khronos_group

El rumor de que el mando de la consola pueda hacer de “Kinect” es cuanto menos interesante porque es precisamente el procesamiento de imagenes a lo Kinect una de las aplicaciones en las que la computación de propósito general en una GPU es necesario por lo que no es viable en un sistema con una GPU capaz de trabajar con un solo contexto, el gráfico, como es la GPU de Wii U:

Unity-Wii-U
03

Sino que funciona mejor cuando existen los contextos computación y gráficos al mismo tiempo por lo que la GPU tiene que ser más avanzada que la de Wii U y dar apoyo a dicha función con una GPU lo suficientemente potente.

DX11 to DX12_zpsj4qm3yiy

DirectX 12 y Vulkan son equivalentes en el sentido de que ambas APIs utilizan varios núcleos de la CPU para crear la listas de comandos:

Vulkan2

Lo que ayudaría a paliar uno de los problemas que tendría Wii U con la CPU de cara a NX y aumentaría el rendimiento pero en ningún momento estoy hablando de utilizar la misma CPU que Wii U sino una nueva iteración con una mayor cantidad de núcleos y velocidad de reloj para el nuevo sistema que además permite el re-uso del software de Wii U en todos los aspectos.

En esta entrada me voy a centrar solo en la CPU, la cual en el caso de Wii U es la siguiente:

espresso_layout

La interfaz utilizada por IBM para intercomunicar los varios núcleos y las caches L2 de cada núcleo entre si es un estándar llamado CoreConnect.

system-on-chip-buses-12-638-1

slide_7

Coreconnect soporta hasta 16 elementos conectados a si mismo por lo que tendríamos una configuración máxima de 8 núcleo y sus respectivas caches L2. Siendo el bus PLB por donde se conectan los procesadores entre ellos, dicha configuración de hasta 8 núcleos con sus respectivas caches L2 se ve aquí perfectamente:

20100301_2

Esto sería para la CPU solamente, lo que ocurre es que este escenario no me gusta pero tampoco lo podemos descartar en absoluto. Ahora bien, con el proceso de fabricación de 32nm… ¿Que podemos obtener? Por una simple regla de tres y teniendo en cuenta que la velocidad de reloj escala linearmente con cada nuevo proceso y si tenemos en cuenta la documentación del CU-32 entonces:

Captura de pantalla 2016-03-13 a las 14.39.42

Es decir, un 30% de más en la velocidad de reloj, lo que la pondría a 1.6 Ghz y en el caso de la configuración máxima con 8 núcleos sería según el Dhrystone:

  • 1600 Mhz*8 núcleos*2,3 DMIPS/ciclo/núcleo = 29.440 DMIPS

Tenemos que tener en cuenta que la cifra de la CPU de PS4 para los 8 núcleos es de 38.400 DMIPS, por eso no me gusta la opción Global Foundries porque hace aparecer el viejo fantasma del núcleo PowerPC, lo cual facilitaría el traslado de una generación a otra a Nintendo pero todos sabemos que sería un error mayúsculo por motivos que he ido mencionando en este blog en los últimos años.

Anuncios