About

Comunicación de Datos

NoCs Networks on Chips

 TECNOLOGÍA NoC

Los diseños multi-núcleo se están convirtiendo en la solución más popular a la mayoría de las limitaciones de los diseños mono-núcleo. Un diseño multi-núcleo sigue el paradigma de diseño conocido como Sistema dentro del Chip (o SoC, del inglés System on-Chip), en el cuál varios núcleos se integran en un mismo chip. Las prestaciones de un diseño SoC dependen en gran medida de la infraestructura de interconexión que implemente.

En este contexto, el paradigma de diseño conocido como red dentro del chip (o NoC, del inglés Network on-Chip) surge como una solución a los desafíos de interconexión presentes en los nuevos diseños de tipo SoC.

Para un diseño concreto, el alto número de posibles soluciones basadas en NoCs incrementa la complejidad de analizar el espacio de diseño y de elegir la NoC óptima. La solución más común a este problema pasa por la utilización de herramientas de alto nivel para la obtención de estimaciones sobre las prestaciones de cada posible solución, que posteriormente serán utilizadas por el diseñador para cribar el espacio de diseño en las primeras etapas del proceso de diseño.

Pero hay una gran diferencia entre las prestaciones estimadas por herramientas de alto nivel y las prestaciones reales obtenidas una vez el sistema se implementa. Este trabajo se centra en el desarrollo de nuevas herramientas de alto nivel de diseño, modelado y simulación de NoCs, con el fin de cribar el espacio de diseño de los candidatos menos atractivos. En un primer paso, nos centraremos en el diseño y desarrollo de una plataforma experimental para analizar arquitecturas alternativas para el diseño de NoCs de forma que permitan evaluar cualquier punto del espacio de diseño de forma rápida y precisa, mediante la anotación de algunos parámetros claves del proceso de síntesis física. En el segundo paso, se revisaron arquitecturas y técnicas de diseño adoptadas del dominio de las redes de interconexión fuera del chip, seleccionando las más prometedoras y, en algunos casos, explotando las características propias de las redes dentro de chip para obtener nuevas soluciones. Este paso, preliminar al desarrollo de la herramienta para la realización de exploraciones del espacio de diseño (o herramientas DSE, del inglés Design Space Exploration), tiene como objetivo depurar las técnicas para la abstracción de los efectos de la implementación física de las NoCs sobre sus prestaciones.

ARQUITECTURA BASE

Varias arquitecturas han sido propuestas en la literatura de NoC. Sin embargo, todos los NoCs tienen tres bloques fundamentales, llamados: switches (también llamados routers), Interfaces de Red (NICs) (también llamados adaptadores de red) y links.

La NOC es una instancia mediante la implementación de un conjunto de estos componentes para formar una topología y configuración de los mismos en términos de profundidad de buffer, etc.

El backbone de un NoC está formado por swiches, que tienen las funciones de ruteo de paquetes de origen a destino. Algunos NoCs se basan en topologías específicas como octágono o anillo, para simplificar el control lógico, Mientras que otros permiten la conectividad arbitraria.

NOCs puede estar basada en conmutación de circuitos o de paquetes, o una mezcla de ambos; el primero está dirigido a proporcionar calidad de servicio con grandes garantías, mientras que el segundo optimiza la eficiencia en los casos generales. Cuando la conmutación de paquetes que se elija, los switches proporcionan recursos de buffer para reducir la congestión y mejorar el rendimiento. También se encargan de las cuestiones de control de flujo, y resolver los conflictos entre los paquetes cuando se superponen en solicitar acceso a los enlaces físicos.

PROTOCOLOS NOC

Dos de los más usuales protocolos de control de flujo son: comunicación switch to switch y basado en retransmisión (los paquetes se envían con optimismo, pero una copia de ellos también se almacena por el remitente, y, si el receptor está ocupado, un cable de retroalimentación para solicitar la retransmisión se levanta) o basado en crédito (el receptor constantemente informa al remitente acerca de su capacidad de aceptar los datos, y sólo se envían datos cuando los recursos son ciertamente disponibles). De extremo a extremo los esquemas de control de flujo, donde NIs periféricos intercambian información del control de flujo directamente entre sí, se utilizan raramente más debido a sus requisitos de búfer, el escenario de uso más común consiste en poner en práctica NoCs que circuitswitching.

Un  Ni es necesario para conectar cada núcleo con el NoC. Nis cubren las transacciones de requerimientos y respuestas en packetes y viceversa. Los paquetes son divididos en una secuencia de control de flujo unITS (FLITS) antes de la transición, para disminuir los requisitos de paralelismo en cable físico. Los Nis son asociados en NoCs en sistemas maestros y esclavos.

Muchas de las soluciones actuales de los NoC aplacan el enrutamiento estático, lo que significa tablas dedicadas Ni (LUTs) especifican la ruta que los paquetes siguen en la red para llegar a su destino final. Este tipo de enrutamiento reduce la complejidad de la lógica de enrutamiento en el NOC.

Como alternativa, el ruteo se puede realizar dentro de la misma topología, normalmente en una forma de adaptación, sin embargo, con ventaja de rendimiento, en orden de entrega y el punto muerto y bloqueo activo, libertad que siguen siendo un problema a ser estudiado en este último caso.

En general, dos señales de reloj diferentes pueden ser unidos a las Nis: la primera unidad de la NI front-end, el lado al que está conectado el núcleo externo, y la segunda impulsa la NI de fondo, del lado interno NoC. Estos relojes pueden, en general, ser independientes. Esta disposición permite que el NOC se ejecute un diferente (y potencialmente rápido) reloj de los núcleos unidos, que es crucial para mantener transacciones con bajos niveles de latencia.

 
FIGURA 1. Arquitectura de bloques de  un X pipes NoC: (a) switch, (b) NI y (c) link.

En este trabajo vamos a emplear la librería NoC de x pipes,  como una solución de estado de la técnica de NoC que incorpora la mayoría de las características y las soluciones arquitectónicas que se han propuesto en el diseño de NoC, por lo tanto, es representante razonable de varios puntos de diseño. El NoC x pipes es un ejemplo de una librería muy flexible de componentes en  bloques (Figura 1).

NoC x pipes pueden emplear ACK/NACK (basado en retransmisión) o Stall/Go (basado en crédito) como protocolos de control de flujo, usando entradas y salidas de búfer respectivamente, para una máxima eficiencia. Links pueden ser segmentados  y no se implementan canales virtuales, ya que esto permite una aplicación más agil. Estancamiento se pueden evitar con la construcción en la definición de las tablas de enrutamiento incluido en los NIs. Dos separadas NIs se definen, es decir, un iniciador (para los núcleos de maestro) y un destino (para los núcleos de esclavos); un dispositivo maestro / esclavo requiere un NI de cada tipo que se le atribuye. La interfaz entre los núcleos y las NIs es de punto a punto como se define en el Protocolo Open Core (OCP) 2.0 especificación utilizada como interfaz pública del NOC, lo que garantiza la reutilización máxima de los diferentes núcleos y MPSoCs. X pipes NIs soportan dos diferentes señales de reloj, una para la interface OCP y otra para la interfaz interna del x pipes; la frecuencia del reloj debe ser un múltiplo entero de la OCP, para simplificar el hardware y la sobrecarga  de desempeño de la sincronización del reloj. Dado que cada núcleo puede ejecutar en un divisor diferente de frecuencia las x pipes, plataformas mixtas de reloj son posibles, lo que proporciona una gran flexibilidad.

EXPERIMENTOS Y CASOS DE ESTUDIO CON NOC

En esta sección se muestran los análisis de las arquitecturas NOC a través de la aplicación del flujo de diseño propuesto NOC basado en varios estudios de casos que representan arquitecturas modernas MPSoC multimedia. 
Además, comparamos costumbre arquitecturas NOC con respecto a la normal NOC basado en soluciones, tales como diferentes tipos de malla basada en topologías.

EXPERIMENTOS EN BASE A MPSOC

Hemos aplicado el procedimiento de la topología de diseño propuesto a seis puntos de referencia diferentes MPSoC, procesador de vídeo (VPROC) de 42 núcleos, un decodificadorMPEG4 (MPEG4), de 12 núcleos, un objeto decodificador de vídeo de avión (VOPD) de 12 núcleos, una ventana de visualización multi pantalla (MWD) la aplicación de 12 núcleos, un Picture-in-Picture (PIP) la aplicación de 8 núcleos y un procesamiento de imágenes (IMP) la aplicación de 23 núcleos.

Para la comparación, generó la costumbre y la malla de topologías para los puntos de referencia, mediante la modificación del procedimiento de diseño para sintetizar los NOCs sobre la base de estructura de malla. Para obtener topologías de malla, se generó un diseño con cada núcleo conectado a un interruptor y restringir el tamaño de pasar a tener 5 de entrada / salida. También genera una variante de la topología de malla básica: optimizar la malla (opt-mesh), donde los puertos y los enlaces que no han sido utilizados por los flujos de tráfico se retiran.

El gráfico central y el plano de la topología personalizada sintetizados por nuestro instrumento de uno de los puntos de referencia (VOPD) se muestran en la figura 2. El consumo de energía de la red (el consumo de energía a través de los conmutadores y enlaces), el número de saltos promedio y los resultados de diseño del área de los puntos de referencia diferentes también se presentan en la Tabla 1. Tenga en cuenta que el número de saltos promedio es el mismo para la malla y optar por una malla, como en la no aplicación de malla sólo los puertos no utilizados y los enlaces de la malla se han eliminado y el resto de las conexiones se mantienen.

FIGURA 2. VOPD personalizado topología de plano y la gráfica principal.


 
TABLA 1
Comparación con topologías estándares


Los resultados de topología personalizada en un promedio de2:78 mejora en el consumo de energía y la mejora de 1:59 en el número de saltos en comparación con la malla estándar de topologías. 

El área de los diseños de las diferentes topologías es similar, gracias a floorplanning eficiente de los diseños. Se puede observar en la figura 1 que sólo la zona holgura que queda muy poca en el plano. Esto se debe a que consideran que el área de los elementos de la red durante el proceso de floorplanning, y no después de la floorplanning de bloques. 

El tiempo de ejecución total de la síntesis de la topología y arquitectura proceso de ajuste de parámetros para los diferentes puntos de referencia se presentan en la Tabla 2. Teniendo en cuenta el tamaño de problema grande y espacio de soluciones de gran tamaño que se explora (8 pasos de frecuencia diferentes, cuatro anchos diferentes enlace, de 42 núcleos para las llamadas VPROC y varios de los Floorplanner) y el hecho de que el ajuste de parámetros NOC y la síntesis de la topología son haces importante, el tiempo de ejecución del motor no es muy grande. Esto se debe principalmente a la utilización de herramientas para la partición jerárquica y floorplanning, y nuestro desarrollo de heurísticos rápidos para sintetizar la topología en el flujo de diseño NOC propuesto. Por lo tanto, los resultados muestran que optimizados para aplicaciones específicas para la síntesis de NOC MPSoCs se puede realizar en un tiempo limitado.

Además, hemos realizado las comparaciones de sintetizar las topologías estándar contra varias otras topologías. Se ha optimizado las topologías de rendimiento, sujeto a las limitaciones de tiempo de diseño y de la aplicación de destino. Las comparaciones contra cinco topologías estándar (malla, toro, hipercubo, Clos y la mariposa) para un punto de referencia IMP con 25 núcleos se presentan en la figura 3.

Como una observación interesante, encontramos que la prohibición de ciertos giros para evitar que ocurran durante el trazado tiene un impacto insignificante en los resultados de potencia y el rendimiento de todos los puntos de referencia. Esto es así porque, aunque algunos giros que se evitan, el procedimiento de cálculo de la trayectoria podría fácilmente encontrar otros caminos con un bajo costo, ya que varios caminos alternativos de bajo costo existen entre cada origen y destino.

 
Figura 3. Las comparaciones de rendimiento de NOC diferentes topologías.

COMPARACIONES A NIVEL DE DISPOSICIÓN.

Usando la librería de tecnología de 130nm, que anteriormente había desarrollado un manual de diseño de una NOC MPSoC que corre los puntos de referencia multimedia. El diseño consta de 30 núcleos: 10 ARM7 procesadores con caches, 10 memorias privadas (una memoria separada para cada procesador), 5 generadores de tráfico personalizados, 5 memorias compartidas y los dispositivos de apoyo inter-procesador de comunicaciones. La mano de diseño NOC tiene 15 interruptores conectados en un 5 3 cuasi-red en malla (2 núcleos conectados a cada interruptor), que se muestra en la figura 4 (a). El diseño está muy optimizado, con la memoria privada de ser conectado a los procesadores a través de un único interruptor y las memorias compartidas distribuidas alrededor de los interruptores.

La disposición del diseño se presenta en la Figura 4 (b), como se muestra, la estructura de malla se mantuvo en el diseño. Cada uno de los núcleos tiene una superficie de 1  en el diseño. El proceso completo, desde la especificación de la topología a la generación de diseño tomó varias semanas debido a la retroalimentación de varios bucles para fijar el momento y varias áreas de violaciones, y para optimizar el diseño final de acuerdo con el desempeño requerido por objetivo MPSoC multimedia. El CON post-diseño podría apoyar una frecuencia máxima de operación de 885 MHz, que está determinada por la ruta crítica en la tubería del interruptor. El consumo de energía de la topología para el tráfico funcional ha sido evaluado como 368mW.

Se ha aplicado un proceso de síntesis de la topología con el objetivo de minimizar el consumo de energía, para sintetizar automáticamente la NOC para esta aplicación. Hemos establecido las restricciones en el diseño y la frecuencia requerida para el funcionamiento de la misma (885 MHz), como los de la mano de diseño de la topología.

La topología y el diseño de NOC sintetizada se presentan en las figuras 4 (c) y (d). La topología de síntesis tiene menos interruptores (8 interruptores) que la topología handdesigned. Se puede apoyar la misma frecuencia máxima de funcionamiento (885 MHz), sin ningún tipo de violación de tiempo en los cables. Como habíamos tenido en cuenta la longitud de los cables durante el proceso de síntesis para estimar la frecuencia que podría ser apoyado, podríamos sintetizar la topología más eficiente de la energía que todavía se reuniría la frecuencia deseada. Por otra parte, para llegar a un punto de diseño manual que requiere varias iteraciones de diseño de la topología y las fases de lugar y ruta, que habría sido un proceso muy lento.

 
Figura 4.

Diseño de nivel de los cálculos de consumo de energía en el programa funcional que el tráfico de la topología ha sintetizado el consumo de energía 277mW, que es inferior a la 1:33 de diseñado la topología a mano. Teniendo en cuenta el hecho de que la topología handdesigned está muy optimizado, con gran parte del tráfico de la comunicación (que se encuentra entre los núcleos de ARM y sus recuerdos privados) que atraviesan un solo interruptor, estos ahorros se logran por completo de manera eficiente la difusión de la memoria compartida en torno a los distintos modificadores.

El diseño NOC se ha optimizado de forma manual, en gran medida (por medio de interruptores en movimiento, NIs) para reducir el área del diseño. El diseño de la topología de síntesis se obtiene de forma totalmente automática, y sigue siendo el área del diseño es similar a la del diseño del manual (sólo un aumento marginal del 4,3% en el área).

Se han realizado simulaciones de los ciclos del diseño a mano y los NOC sintetizados por dos puntos de referencia multimedia. El tiempo de aplicación total de los puntos de referencia (incluyendo el tiempo de cálculo) y las latencias de paquetes promedio de las transacciones de lectura de las topologías se presentan en las figuras 5 (a) y (b). La topología de costumbre no sólo coincide con el rendimiento de la mano de diseño de topología, sino que proporciona un promedio de 10% de reducción en tiempo de ejecución total y del 11,3% en la latencia de los paquetes. Por lo tanto, estos resultados demuestran que la adecuada CAD y soporte de herramientas efectivamente puede permitir la síntesis de la competencia de las últimas NOC MPSoCs.

Figura 5.  Tiempo de ejecución y la latencia de dos puntos de referencia multimedia para diferentes tamaños de caché. (a) El tiempo de ejecución y (b) la latencia media de lectura.

APLICACIONES DE REDES NOC

Idirect SatManage
SatManage es un conjunto de sofisticadas herramientas de software basado en Web para la automatización, control e integración de redes híbridas y aplicaciones basados ​​en NOC.

SatManage es una extensión de gran alcance para iDirect IVantage SNM, teniendo operaciones NOC a un nivel aún más alto de rendimiento de la red y la escalabilidad. Con un potente conjunto de herramientas basadas en Web, permite a los proveedores de servicios SatManage para mejorar la calidad global del servicio y operaciones de red.

SatManage características en general:

·         Administración basada en Web Suite
·         Supervisión de gran alcance, inteligente y análisis de datos
·         Ver y analizar el rendimiento de la red en tiempo real
·         Automática de problemas de billetaje y la integración con Remedy
·         gestión de fallos detallados y capacidades de presentación de informes SLA
·         Seguimiento de cada mando a distancia ubicación y el estado
·         Altamente personalizable puntos de vista con múltiples niveles de autorización
·         Apoyo a todas las redes terrestres y satelitales
·         Integración con todos los portales de los clientes

SatManage consiste en un paquete básico más opcional paquetes funcionales para maximizar el rendimiento de red y disponibilidad. Al ofrecer una visión en profundidad sobre todos los aspectos de rendimiento de la red del cliente, los proveedores de servicios pueden ofrecer servicios diferenciados como automatizados de informes de SLA, las estadísticas de rendimiento y optimizar las implementaciones de red para los clientes. Los proveedores de servicios también pueden automatizar las tareas de Nivel I Help Desk Support. El resultado es optimizar las operaciones, el aumento de cumplimiento contractual y la satisfacción al cliente.

NoC conjunto de herramientas 

El conjunto de herramientas NOC proporciona valiosos recursos para la gestión de la red. El Sol de interrupción Predictor permite a los proveedores de servicios de suscripción preferente para tomar medidas antes de prepararse para las interrupciones del servicio y las notificaciones de difusión a los clientes. Pruebas de aceptación del circuito se puede automatizar para ganar tiempo mientras que el módulo de estado remoto controla el rendimiento y la salud de un mando a distancia y presenta datos en particular, en un amistoso en formato gráfico de usuario. El conjunto de herramientas de ayuda a optimizar las operaciones NOC NOC y aumentar las notificaciones a los clientes.

Movilidad 

El paquete de Movilidad ofrece un conjunto de herramientas para el seguimiento en tiempo real y gestión de mandos móvil. Un mapa basado en el sistema de Google ofrece imágenes de satélite actuales, huellas de los satélites, en tiempo real del tiempo, el radar y herramientas de mapeo a través de superposiciones externa. Los proveedores de servicios pueden ver en tiempo real de las instantáneas de la salud, el estado y la ubicación exacta de cada distancia.

CONCLUSIONES

Se concluye que el diseño de la topología de las NOC de costumbre a demás de tener un mejor rendimiento en su diseño también proporciona un mejor tiempo de ejecución y una latencia menos al enviar los paquetes. Lo cual no muestra que las NOC  de última generación son muy buenas y eficientes.

Muchos de los conocimiento en su mayoría no toman en cuenta muchos temas como la frecuencia y posiblemente también de tensión. Se debería incluir una manera de diseñar mejores mecanismos para la partición de NoC, cómo mejor control de los parámetros de funcionamiento de cada partición.

Las aplicaciones emergentes demandan un nivel muy alto de rendimiento en la próxima generación de dispositivos integrados. Por lo tanto, las nuevas técnicas y mecanismos de interconexión que pueden proporcionar soluciones para un diseño eficiente de estas complejas arquitecturas de próxima incrustados son muy necesarios. NOC se han convertido en un camino prometedor estructurado de la realización de las interconexiones en el silicio, la superación de las limitaciones de las soluciones basadas en el bus.

Los bloques y los flujos de diseño personalizado para el diseño de la topología NOC han alcanzado un nivel de madurez comparable a la tradicional basada en la interconexión bus on-chip. De hecho, el flujo de diseño presentado es actualmente capaz de sintetizar una completa NOC basado en la interconexión de encargo para una arquitectura MPSoC cierto, a partir de una alto nivel de especificación, en pocas horas.

RECOMENDACIONES

A pesar de la gran cantidad de investigaciones dedicadas a los CON en los últimos años, especialmente para lograr un nivel de madurez y poder integrar CAD NOC basada en las interconexiones de los flujos de diseño moderno de la técnica de MPSoCs, aún queda mucho por hacer y esto se debería seguir investigando para tener en un futuro una solución y una mejora en las NOC.

Muchos de los problemas están en la integración de las consideraciones físicas de diseño, desarrollo arquitectónico y soporte de las herramientas ya que con las implementaciones que hasta la actualidad se han realizado se llega a un consenso de que hay una necesidad a nivel de sistema de la integración de los bloques en diferentes frecuencias de operación.

BIBLIOGRAFÍA

Read more