Una red en un chip o red en chip ( NoC / ˌ ɛ n ˌ oʊ ˈ s iː / en-oh- SEE o / n ɒ k / knock ) [nb 1] es un subsistema de comunicaciones basado en red en un circuito integrado (" microchip "), más típicamente entre módulos en un sistema en un chip ( SoC ). Los módulos en el IC son típicamente núcleos IP semiconductores que esquematizan varias funciones del sistema informático , y están diseñados para ser modulares en el sentido de la ciencia de redes . La red en chip es una red de conmutación de paquetes basada en enrutador entre módulos SoC .
La tecnología NoC aplica la teoría y los métodos de las redes informáticas a la comunicación en chip y aporta mejoras notables con respecto a las arquitecturas de comunicación de bus y de barra transversal convencionales . Las redes en chip vienen en muchas topologías de red , muchas de las cuales todavía son experimentales en 2018. [ cita requerida ]
En la década de 2000, los investigadores comenzaron a proponer un tipo de interconexión en chip en forma de redes de conmutación de paquetes [1] para abordar los problemas de escalabilidad del diseño basado en bus . Las investigaciones anteriores propusieron el diseño que enruta los paquetes de datos en lugar de enrutar los cables. [2] Luego, en 2002 se propuso el concepto de "red en chips". [3] Los NoC mejoran la escalabilidad de los sistemas en chip y la eficiencia energética de los SoC complejos en comparación con otros diseños de subsistemas de comunicación. Son una tecnología emergente , con proyecciones de gran crecimiento en el futuro cercano a medida que las arquitecturas de computadoras multinúcleo se vuelvan más comunes.
Los NoC pueden abarcar dominios de reloj sincrónicos y asincrónicos, conocidos como cruce de dominios de reloj , o utilizar lógica asincrónica sin reloj. Los NoC admiten arquitecturas electrónicas asincrónicas a nivel global y sincrónicas a nivel local , lo que permite que cada núcleo de procesador o unidad funcional del sistema en chip tenga su propio dominio de reloj . [4]
Las arquitecturas NoC generalmente modelan redes dispersas de mundo pequeño (SWN) y redes libres de escala (SFN) para limitar la cantidad, la longitud, el área y el consumo de energía de los cables de interconexión y las conexiones punto a punto .
La topología determina la disposición física y las conexiones entre nodos y canales. El mensaje atraviesa saltos y la longitud del canal de cada salto depende de la topología. La topología influye significativamente tanto en la latencia como en el consumo de energía. Además, dado que la topología determina la cantidad de rutas alternativas entre nodos, afecta la distribución del tráfico de la red y, por lo tanto, el ancho de banda y el rendimiento de la red alcanzados. [5]
Tradicionalmente, los circuitos integrados se han diseñado con conexiones punto a punto dedicadas , con un cable dedicado a cada señal. Esto da como resultado una topología de red densa . Para diseños grandes, en particular, esto tiene varias limitaciones desde el punto de vista del diseño físico . Requiere una potencia cuadrática en el número de interconexiones. Los cables ocupan gran parte del área del chip y, en la tecnología CMOS nanométrica , las interconexiones dominan tanto el rendimiento como la disipación de potencia dinámica , ya que la propagación de la señal en los cables a través del chip requiere múltiples ciclos de reloj . Esto también permite que se acumulen más capacitancia , resistencia e inductancia parásitas en el circuito. (Consulte la regla de Rent para obtener una discusión de los requisitos de cableado para conexiones punto a punto).
La escasez y la localidad de las interconexiones en el subsistema de comunicaciones producen varias mejoras con respecto a los sistemas tradicionales basados en bus y en barras transversales .
Los cables en los enlaces de la red en chip son compartidos por muchas señales . Se logra un alto nivel de paralelismo , porque todos los enlaces de datos en el NoC pueden operar simultáneamente en diferentes paquetes de datos . [ ¿Por qué? ] Por lo tanto, a medida que la complejidad de los sistemas integrados sigue creciendo, un NoC proporciona un rendimiento mejorado (como el rendimiento ) y escalabilidad en comparación con las arquitecturas de comunicación anteriores (por ejemplo, cables de señal punto a punto dedicados , buses compartidos o buses segmentados con puentes ). Los algoritmos [ ¿Cuáles? ] deben diseñarse de tal manera que ofrezcan un gran paralelismo y, por lo tanto, puedan utilizar el potencial del NoC.
Algunos investigadores [¿ quiénes? ] piensan que los NoC deben ofrecer compatibilidad con la calidad de servicio (QoS), es decir, cumplir con los diversos requisitos en términos de rendimiento , demoras de extremo a extremo, equidad [6] y plazos . [ cita requerida ] La computación en tiempo real, incluida la reproducción de audio y video, es una de las razones para brindar compatibilidad con QoS. Sin embargo, las implementaciones de sistemas actuales como VxWorks , RTLinux o QNX pueden lograr computación en tiempo real de submilisegundos sin hardware especial. [ cita requerida ]
Esto puede indicar que para muchas aplicaciones en tiempo real la calidad de servicio de la infraestructura de interconexión en chip existente es suficiente, y sería necesaria una lógica de hardware dedicada para lograr una precisión de microsegundos, un grado que rara vez se necesita en la práctica para los usuarios finales (la fluctuación de sonido o video solo necesita una garantía de latencia de décimas de milisegundos). Otra motivación para la calidad de servicio (QoS) a nivel de NoC es admitir que varios usuarios concurrentes compartan recursos de un solo multiprocesador de chip en una infraestructura de computación en la nube pública . En tales casos, la lógica de QoS de hardware permite al proveedor de servicios realizar garantías contractuales sobre el nivel de servicio que recibe un usuario, una característica que puede ser considerada deseable por algunos clientes corporativos o gubernamentales. [ cita requerida ]
Aún quedan muchos problemas de investigación desafiantes por resolver en todos los niveles, desde el nivel de enlace físico hasta el nivel de red y hasta la arquitectura del sistema y el software de aplicación. El primer simposio de investigación dedicado a redes en chip se celebró en la Universidad de Princeton en mayo de 2007. [7] El segundo Simposio Internacional IEEE sobre Redes en Chip se celebró en abril de 2008 en la Universidad de Newcastle .
Se han llevado a cabo investigaciones sobre guías de ondas ópticas integradas y dispositivos que comprenden una red óptica en un chip (ONoC). [8] [9]
La forma posible de aumentar el rendimiento del NoC es utilizar canales de comunicación inalámbrica entre chiplets , denominados red inalámbrica en chip (WiNoC). [10]
En un sistema multinúcleo conectado por NoC, los mensajes de coherencia y las solicitudes de errores de caché deben pasar por conmutadores. Por consiguiente, los conmutadores pueden ampliarse con elementos de seguimiento y reenvío simples para detectar qué bloques de caché serán solicitados en el futuro por qué núcleos. Luego, los elementos de reenvío envían por multidifusión cualquier bloque solicitado a todos los núcleos que puedan solicitar el bloque en el futuro. Este mecanismo reduce la tasa de errores de caché. [11]
El desarrollo y los estudios de NoC requieren la comparación de diferentes propuestas y opciones. Se están desarrollando patrones de tráfico de NoC para ayudar a dichas evaluaciones. Los puntos de referencia de NoC existentes incluyen NoCBench y MCSL NoC Traffic Patterns. [12]
Una unidad de procesamiento de interconexión (IPU) [13] es una red de comunicación en chip con componentes de hardware y software que implementan conjuntamente funciones clave de diferentes modelos de programación de sistema en chip a través de un conjunto de primitivas de comunicación y sincronización y proporcionan servicios de plataforma de bajo nivel para habilitar funciones avanzadas [ ¿cuáles? ] en aplicaciones heterogéneas modernas [ definición necesaria ] en un solo chip .
{{cite book}}
: CS1 maint: others (link)Adaptado de la columna de Avinoam Kolodny en el boletín electrónico ACM SIGDA por Igor Markov.
El texto original se puede encontrar en http://www.sigda.org/newsletter/2006/060415.txt
{{cite book}}
: CS1 maint: location missing publisher (link){{cite book}}
: CS1 maint: location missing publisher (link)