Durante una charla en el Simposio Internacional de Arquitectura de Computación, Li-Shiuan Peh, un profesor de investigación en ingeniería eléctrica y ciencias de la computación del MIT, presentó un chip de 36 núcleos que incorpora la arquitectura de red en un chip (NoC, por network on a chip). Dicha arquitectura echa por tierra el clásico concepto de bus que se usa en los chips multi-núcleo.
Según el reporte de noticias del MIT (Massachusetts Institute of Technology), la red de nodos dentro del chip reemplaza al tradicional bus por un router adosado a cada núcleo, lo que permite que los datos viajen entre los núcleos en paquetes de un tamaño determinado. Los núcleos se conectan con otros núcleos inmediatamente adyacentes.
“Se pueden alcanzar a los vecinos muy rápidamente”, dijo Bhavya Daya, el principal autor del paper. “También se puede optar por múltiples caminos hacia un destino. Si se quiere ir a través, en lugar de seguir un único camino congestionado, se puede elegir entre varias opciones”.
El chip cuenta a con una segunda red que tapa a la primera. Los circuitos conectados a esta red indicarán que sus núcleos asociados están enviando solicitudes de datos sobre la red principal. Estas solicitudes son simples, permitiendo que los nodos en la red oculta las combinen y las envíen sin demoras.
El informe de los investigadores señala que los grupos de solicitudes alcanzan a los routers de los núcleos a intervalos discretos. Los routers determinan cuántas solicitudes se han hecho durante cada intervalo, y qué núcleos las efectuaron. Los núcleos también tienen diferentes prioridades jerárquicas y usan un protocolo llamado “Snoopy”, debido a que los núcleos se “olfatean” (snoop) entre sí para determinar qué solicitudes se atienden en primer lugar.
“Por ejemplo, durante un intervalo dado, tanto el núcleo 1 como el núcleo 10 envían solicitudes, pero el núcleo 1 tiene una mayor prioridad”, según el informe del MIT. “El router del núcleo 32 puede recibir el requisito del núcleo 10 antes de recibir el del núcleo 1, pero lo retendrá hasta que haya pasado el del núcleo 1”.
Esta clase de ordenamiento simula el orden cronológico que se logra utilizando una topología de bus. La jerarquía se mezcla durante cada intervalo, por lo que todos los núcleos reciben una atención equitativa, según indica el informe.
Una vez que los prototipos de los chips demuestren su operatividad, Daya y su equipo planean usar una versión de Linux adaptada para aprovechar los 32 núcleos, de forma tal de ver cómo la plataforma ejecuta aplicaciones reales. Luego de eso, los diseños del chip serán lanzados como código open-source.









