Antes de empezar he de decir que he hecho cambios en el diagrama de la entrada anterior de esta serie, dicho esto voy a centrarme en uno de los cambios, el del uncore dado que es sumamente importante.

#1 No hay cambios en el Uncore

Mi planteamiento inicial de Xbox Scorpio con ESRAM era utilizando el Uncore actual de AMD para PC pero he llegado a la conclusión de que esto es contraproducente ya que puede crear incompatilidades en lo que al acceso a la memoria se refiere y por ello he mantenido el esquema utilizado en Xbox One, es decir… Que la memoria aunque esta físicamente unificada realmente esta separada en dos espacios diferenciados:

HSALite

Debido a que hay dos espacios de memoria distinto tenemos dos accesos a la memoria distintos en el sistema, aunque solo la GPU tiene acceso al bus no-coherente y el resto de elementos pasan sus datos a través del bus coherente. ¿Que significa esto? Simple, cuando en un sistema multiprocesador si el cambio en un espacio de la memoria por un procesador es comunicado a los otros a través de un mecanismo de coherencia entonces se dice que el sistema es coherente. En los SoC de AMD el bus que comunica la GPU con el mecanismo de coherencia se llama Onion pero no se debe confundir con la unidad encargada de gestionar los accesos a la memoria a través del bus coherente, trabajo que recae en el UNB, el cual en el diagrama lo ha llamado simplemente UNB pese a tener varios elementos en su interior para simplificar las cosas.

La GPU accede al espacio coherente a través del bus Onion, en este caso PS4 es algo más avanzada al soportar el Northbridge del Kaveri que añade un bus más llamado Onion+, dicho bus permite a la GPU acceder a la memoria coherente del sistema a la increible velocidad de 10GB/seg haciendo bypass a las caches L1 y L2 de la GPU. Xbox One tiene solamente el Onion, el cual hace lo mismo pero sin hacer bypass de las caches de la GPU a una velocidad de 20GB/seg entre la GPU y el Unified Northbridge, el cual por cierto accede a la RAM a una velocidad de 30 GB/seg, por la que hay momentos en que el ancho de banda de la memoria para la GPU en Xbox One puede ser de 38 GB/seg… Es decir, que tenemos cuello de botella en el caso de Xbox One cuando un juego es intensivo de CPU, cuello que no debería ser problema en el caso de Xbox Scorpio por la velocidad de 320GB/seg de la memoria.

¿Pero cual es el motivo que le llevaría a Microsoft ha reciclar los elementos del Uncore de Xbox One para ello? Simple, TSMC que sería el fabricante ya tiene los elementos diseñados por parte de AMD para la Xbox One S en lo que a nivel de uncore se refiere y Microsoft podría reutilizarlo con el único cambio en el controlador de memoria (pasaría de DDR3 a GDDR5X) y el cableado correspondiente dentro del chip para la comunicación con el nuevo sistema de memoria. Pero esa parte corresponde a la parte No-Coherente que se encuentra fuera del Northbridge.

Eso si, antes de completar el sistema e ir a por la CPU nos quedan dos elementos muy importantes.

#2 Sonido y E/S

Aquí voy a ser rápido:

capture2qj23

El sistema de audio dedicado de la familia Xbox One se encuentra conectado al UNB a una velocidad de 4GB/seg, el AXI Bridge no es más que el Audio Crossbar que se comunica directamente con el Unified Northbridge. Es curioso que esta unidad no se encuentre conectada al GPU Hub respecto al PC y a PS4, pero el hecho de que se encuentre separada demuestra que es una unidad a medida hecha por Microsoft para Xbox One, es junto a la ESRAM uno de los elementos conflictivos y esta pensado para descargar a la CPU de las tareas de procesamiento del sonido.

¿Pero como se genera el sonido si el la salida AV se encuentra en la GPU? Sencillo, sus datos siguen el siguiente camino:

  1. Coherent Northbridge.
  2. Fusion Compute Link
  3. GPU Hub
  4. AV Out

El otro elemento importante es la E/S, de esta parte se encarga el Southbridge que esta comunicado con el SoC principal a través de un puerto PCI Expressx4.

xbox-one-system-architecture-diagram-e1379013243541

Dudo mucho que Microsoft unifique el Southbridge dentro del SoC por temas de espacio y porque no lo ha hecho en Xbox One S tal y como se puede ver en la siguiente imagen donde el Southbridge sigue siendo un chip aparte:

xboxonesmb

Con el Southbridge de Xbox One en Scorpio tenemos ya el esquema completo a excepción de la CPU, es más, el Southbridge es el encargado de controlar que el software y el hardware este certificado y es el último elemento para asegurar la compatibilidad… Bueno, el penúltimo, pero con ello tenemos asegurada la compatibilidad hacía atrás con los periféricos de Xbox One.

¿El diagrama después de esta entrada? El siguiente… Como no es definitivo he re-ordenado ciertas cosas pero este va  a servir de base para la siguiente entrada:

scorpiowocpu

Con esto termino la entrada, la siguiente será unicamente sobre el elemento que nos falta… la CPU.