Disseny d'un Adaptador d'IPs per a NoCs · Disseny d’un Adaptador d’IPs per a NoCs Francesc...
Transcript of Disseny d'un Adaptador d'IPs per a NoCs · Disseny d’un Adaptador d’IPs per a NoCs Francesc...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Disseny d’un Adaptador d’IPs per a NoCs
Francesc Vila
Presentació del Projecte Final de CarreraUniversitat Autònoma de Barcelona
28 de Setembre de 2009
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Evolución de la tecnología
• System on Chip (SoC). Sistemas con un procesador yvarios periféricos.
• MultiProcessor System on Chip (MPSoC). SoC queintegra varios procesadores.
• Network on Chip (NoC). Sistemas con variosprocesadores con una interconexión distinta a losMPSoC.
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Evolución de la tecnología
• System on Chip (SoC). Sistemas con un procesador yvarios periféricos.
• MultiProcessor System on Chip (MPSoC). SoC queintegra varios procesadores.
• Network on Chip (NoC). Sistemas con variosprocesadores con una interconexión distinta a losMPSoC.
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Evolución de la tecnología
• System on Chip (SoC). Sistemas con un procesador yvarios periféricos.
• MultiProcessor System on Chip (MPSoC). SoC queintegra varios procesadores.
• Network on Chip (NoC). Sistemas con variosprocesadores con una interconexión distinta a losMPSoC.
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Ventajas de las NoC
El uso de NoC nos supone varias ventajas:
• Aumento de la escalabilidad del sistema• Buses -> Enlaces punto a punto• Menor ancho de las pistas• Menos interferencias
• Explotar el paralelismo• Todos los enlaces pueden operar simultáneamente
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Ventajas de las NoC
El uso de NoC nos supone varias ventajas:
• Aumento de la escalabilidad del sistema• Buses -> Enlaces punto a punto• Menor ancho de las pistas• Menos interferencias
• Explotar el paralelismo• Todos los enlaces pueden operar simultáneamente
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Ventajas de las NoC
El uso de NoC nos supone varias ventajas:
• Aumento de la escalabilidad del sistema• Buses -> Enlaces punto a punto• Menor ancho de las pistas• Menos interferencias
• Explotar el paralelismo• Todos los enlaces pueden operar simultáneamente
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Ventajas de las NoC
El uso de NoC nos supone varias ventajas:
• Aumento de la escalabilidad del sistema• Buses -> Enlaces punto a punto• Menor ancho de las pistas• Menos interferencias
• Explotar el paralelismo• Todos los enlaces pueden operar simultáneamente
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Ventajas de las NoC
El uso de NoC nos supone varias ventajas:
• Aumento de la escalabilidad del sistema• Buses -> Enlaces punto a punto• Menor ancho de las pistas• Menos interferencias
• Explotar el paralelismo• Todos los enlaces pueden operar simultáneamente
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Diseño de una interfaz
Adaptar un procesador a una red
AHB-APBBridge
LEON3 Memória
Timer
Interfaz
APB
AHB
RED
ÁrbitroAMBA
BLOQUEBÁSICO
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
GRLIB
La GRLIB es una librería de IP cores. Contiene:
• Un procesador (LEON3)• Controladores de memoria• Módulo ethernet• . . .
Además, nos proporciona:• Un único modo de conectar los dispositivos (bus
AMBA)• Scripts para la síntesis y la simulación• Nos abstrae el uso de distintas herramientas
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
GRLIB
La GRLIB es una librería de IP cores. Contiene:
• Un procesador (LEON3)• Controladores de memoria• Módulo ethernet• . . .
Además, nos proporciona:• Un único modo de conectar los dispositivos (bus
AMBA)• Scripts para la síntesis y la simulación• Nos abstrae el uso de distintas herramientas
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
GRLIB
La GRLIB es una librería de IP cores. Contiene:
• Un procesador (LEON3)• Controladores de memoria• Módulo ethernet• . . .
Además, nos proporciona:• Un único modo de conectar los dispositivos (bus
AMBA)• Scripts para la síntesis y la simulación• Nos abstrae el uso de distintas herramientas
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
GRLIB
La GRLIB es una librería de IP cores. Contiene:
• Un procesador (LEON3)• Controladores de memoria• Módulo ethernet• . . .
Además, nos proporciona:• Un único modo de conectar los dispositivos (bus
AMBA)• Scripts para la síntesis y la simulación• Nos abstrae el uso de distintas herramientas
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Flujo de diseño
Estructura de directorios y ficheros a modificar:
GRLIB
Makefile bin designs doc lib
leon3-altera-ep1c20 leon3-xillinx-ml403leon3-digilent-xup leon3-avnet-3s1500
Makefile
config.vhd
leon3mp.vhd
testbench.vhd
...
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Top de la interfaz
Type Generator
Packetizer
Counter
NIControl
WormholeSplitter
WormholeJoiner
Queue
Procesador Interfaz Interfaz Red
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Unidad de control
Controla el funcionamiento de los otros componentes
31 0123415
PALABRA DE MEMÓRIA
CONTROL
Enviar/Recibir
Principio
Fin
Único
Datos disponibles
NÚMERO DE SECUENCIA
• Envío1 Leer las opciones2 Leer el dato
• Recepción1 Escribir si el paquete está disponible y el número de
secuencia2 Escribir el dato
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Buffer de recepción
• Hay un buffer para cada nodo de la red• Los paquetes se guardan en el órden en el que llegan• Es una estructura FIFO
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Packetizer
Este módulo nos crea los paquetes a enviar
0 15 16 3123 24
Dirección origen Dirección destino
Número secuencia Tamaño
Datos
Tipo
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Wormhole splitter
Este módulo nos divide el paquete en distintos flits.Tenemos los siguientes tipos:
• Start flit• Middle flit• End flit
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Wormhole splitter
Este módulo nos divide el paquete en distintos flits.Tenemos los siguientes tipos:
• Start flit• Middle flit• End flit
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Wormhole splitter
Este módulo nos divide el paquete en distintos flits.Tenemos los siguientes tipos:
• Start flit• Middle flit• End flit
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Wormhole joiner
Este es el módulo que une los flits formando un paquete
• Quita las marcas del inicio de los flits• Une el contenido de los flits formando el paquete
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Driver
• Inicializa la interfaz• Proporciona funciones de acceso a la interfaz
• Enviar paqueteint enviar paquete (int destino, intflags, void data)
• Recibir paqueteint recibir paquete (int destino, int* nseq, void* data)
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Indice
1 IntroducciónMotivación y objetivosTrabajo realizado
2 Entorno de trabajo
3 Diseño de la interfazEsquema lógicoDriver
4 Resultados y Conclusiones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Resultados y Conclusiones
• Se trata de una interfaz simple.• Conseguimos abstraer la red al procesador.• Con la simulación del timing conseguimos una
frecuencia máxima de 65MHz. Por lo tanto elthroughput:
Th = 65·106 ciclosseg ·
1flitciclo ·
4bytes15flit ·
1MByte220Bytes ' 16Mbytes
seg
• Posibles mejoras• Añadir fiabilidad punto a punto.• Enviar más datos en un paquete.• Implementar interrupciones
Disseny d’unAdaptadord’IPs per a
NoCs
Francesc Vila
IntroducciónMotivación yobjetivos
Trabajo realizado
Entorno detrabajo
Diseño de lainterfazEsquema lógico
Driver
Resultados yConclusiones
Disseny d’un Adaptador d’IPs per a NoCs
Francesc Vila
Presentació del Projecte Final de CarreraUniversitat Autònoma de Barcelona
28 de Setembre de 2009