660 likes | 751 Views
μSpider Environnement de Conception de Réseaux sur Puce. Samuel Evain Soutenance de Thèse de Doctorat LESTER-UBS Vendredi 24 novembre 2006, Lorient. Plan. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA dans le contexte d’horloges hétérogènes Sécurité
E N D
μSpiderEnvironnement de Conception de Réseaux sur Puce Samuel Evain Soutenance de Thèse de Doctorat LESTER-UBS Vendredi 24 novembre 2006, Lorient
Plan • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA dans le contexte d’horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC (Network on Chip) • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps Plan • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA dans le contexte d’horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC (Network on Chip) • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps CAO pour l’électronique embarquée • Problématique de la conception • Degré d’intégration, • Nombre grandissant d’applications, • Manipuler d’important volume de données. • Moyen pour maîtriser la complexité. • Réutilisation de l’existant (IP), • Augmentation du niveau d’abstraction. • Un outil de CAO pour l’électronique prend en compte: • Logiciel, • Application, • Architecture.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC (Network on Chip) • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps CAO pour l’électronique embarquée • Client : utilisateur du système embarqué • Performance (capacité de traitement et consommation faible), • Évolution, pérennité, • Sécurité, • Prix. • Constructeur de circuits • Réduire la surface, • Réduire la consommation, • Satisfaire des contraintes de temps réel (bande passante, latence). • Réduire le temps de conception et de mise sur le marché. • Constructeur d’un outil de CAO • Abstraire le problème, • Automatiser des taches fastidieuses et sources d’erreurs, • Réduire le temps d’exploration de l’espace de conception, • Chercher à maximiser des critères pour aboutir à une solution qui convient.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC (Network on Chip) • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps Les communications • La communication devient dominante par rapport au traitement en termes • de temps, • de consommation, • et de surface. • Nécessité • D’un moyen de communication adapté aux futures systèmes. • Problématique • Apporter une solution pour appréhender la complexité de l’espace de conception. IP IP IP IP ? IP IP IP IP IP ? ? ?
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC (Network on Chip) • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps Un NoC (Network on Chip) Un réseau Un paquet Lien Routeur Routeur NI NI Instructions Entête W W mot IP IP Routeur Routeur mot Flit mot Phit Charge utile NI NI mot W W IP: Intellectual Property mot Queue IP IP NI: Network Interface
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC (Network on Chip) • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps Un NoC (Network on Chip) • Les avantages du réseau : • Interconnexion : Flexibles, Extensibles, grand débit cumulé. • Pas d’arbitrage central. • Tous les types de trafics peuvent être mélangés. • Les inconvénients du réseau : • Latence (fonction du nombre de routeurs traversés). • Risque de contention. • Nécessite des règles pour garantir le trafic. • Pourquoi le NoC devient incontournable? • Complexité des schémas d’interconnexion entre les IPs. • Niveau d’abstraction: une offre unifiée de services de communications. • Formalisation: maîtrise de l’espace de solution.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps Espace de conception : vue générale d’un NoC • Large espace de conception • Topologie, • Choix des chemins, • Configuration pour satisfaire la QoS, • Profondeur des FIFOs. • Nécessite • Méthode de décision, • Outil de décision. NI NI
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps Espace de conception: Approche de parcours retenue • Problème d’optimisation • Approche heuristique. • Fonction de coût • Maximiser l’utilisation du NoC. • Réduire la surface en faisant la meilleure utilisation du réseau en réduisant la quantité de FIFO requise. • Contraintes • QoS / Applications : Latence, Débit, Sécurité, Coût, Sûreté de fonctionnement. • QoS / Concepteur : Temps de conception. • Nos choix: • Commutation par paquet. • Routage par la source. • Applications en partie statiques. • Temps réel par TDMA pour les communications critiques.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps Contributions et positionnement des travaux • Outil de CAO pour la conception automatique de NOC • Exploration. • Décision. • Synthèse. • Algorithme de décision • Extraction des contraintes de communication depuis les contraintes applicatives. • Méthode de décision pour configurer le réseau et assurer le service. • Solution pour garantir la QoS en présence d’horloges hétérogènes • Technique faible coût de sécurisation. • Validation • Cas réels pour la décisions. • Synthèse testée sur FPGA Xilinx.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • CAO pour l’électronique embarquée • Les communications • Un NoC • Espace de conception • Contributions et positionnement des travaux • Avancée des travaux au cours du temps Avancée des travaux au cours du temps Couches OSI Flot de conception Domaines de recherche IP source IP destination Système Application/ 1) Etape de spécification Spécification de l’application Choix des paramètres du NoC Messages/transactions Présentation Wrapper Wrapper 2) Dérivation automatique des contraintes de communication Session/ Adaptateurréseau Transport Paquet/Flux Interface réseau Interface réseau 3) Configuration automatique du NoC Minimise la profondeurs des FIFOs routeur source routeur intermédiaire routeur destination Réseau Réseau • 4) Génération automatique du code • Code VHDL RTL pour la synthèse logique (NIs, Routeurs, Table d’instruction de chemin, …) • Code C (pilotes) Flit Ctrl flux Ctrl flux Ctrl flux Ctrl flux Liaison Liaison Phit Lien Lien Physique Physique
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Caractéristiques • Le flot de l’outil µSpider • Adaptateur de protocole NoC – bus OPB • Mise en œuvre sur plate forme FPGA Xilinx Plan • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA dans le contexte d’horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Caractéristiques • Le flot de l’outil µSpider • Adaptateur de protocole NoC – bus OPB • Mise en œuvre sur plate forme FPGA Xilinx Caractéristiques • Approche objet • Technologies logicielles • Langage de programmation: Java, • Environnement de développement: Eclipse, • Fichiers d’échange standard: XML. • Génération • du code VHDL RTL du NoC (routeurs, NIs, wrappers, liens), • des pilotes C pour le microprocesseur µBlaze, • des fichiers pour ajouter le Noc en tant que composant de la bibliothèque de EDK de Xilinx.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Caractéristiques • Le flot de l’outil µSpider • Adaptateur de protocole NoC – bus OPB • Mise en œuvre sur plate forme FPGA Xilinx Le flot de l’outil µSpider Contraintes de communication (.xls) Génération / Importation d’une architecture Topologie du NoC (.xml) Graphe de l’application (.xml) Dimensionnement du TDMA en nombre de slots Exploration, décision Dérivation des contraintes library noc_v1_00_e; use noc_v1_00_e.generique_parameter_pck.all; use noc_v1_00_e.archi_noc3mb4RGT_noc_parameter_pck.all; entity archi_noc_entity is port ( noc_clock: in std_logic; Calcul du nombre de slots nécessaires à chaque communication Exploration spatio-temporelle pour chaque communication Pour chaque communication, sélection d’un chemins et des slots Configuration, Génération Dimensionnement des FIFOs Description de l’architecture du NoC (.xml) Génération Codes VHDL RTL du NoC (.vhd) Code C pour les pilotes du µBlaze
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Caractéristiques • Le flot de l’outil µSpider • Adaptateur de protocole NoC – bus OPB • Mise en œuvre sur plate forme FPGA Xilinx Adaptateur de protocole NoC – bus OPB • Transaction lecture/écriture Adaptateur NoC-OPB NoC RAM ctrl (Esclave) Bus OPB 2 µBlaze 1 (Maître) WRS1 (Esclave) NI1 Bus OPB 1 NI2 WRM2 (Maître) R R NIport NIport R R • Envoi de message NoC µBlaze 2 (Maître) Bus OPB 2 µBlaze 1 (Maître) WRS1 (Esclave) NI1 Bus OPB 1 NI2 WRS2 (Esclave) R R NIport NIport R R
R R R R • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Caractéristiques • Le flot de l’outil µSpider • Adaptateur de protocole NoC – bus OPB • Mise en œuvre sur plate forme FPGA Xilinx Adaptateur de protocole NoC – bus OPB • Adaptateur matériel (wrapper) et logiciel (pilote) NoC µBlaze 1 (Maître) RAM ctrl (Esclave) Bus OPB 2 Pilote HAL Programme WRS1 (Esclave) NI1 Bus OPB 1 NI2 WRM2 (Maître) NIport NIport • HAL: Hardware Abstraction Layer @ de l’adaptateurWRS1 sur le bus OPB1 @ pointée par le programme du processeur dans son espace mémoire Numéro de connexion @ de laRAMsur le bus OPB2
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Caractéristiques • Le flot de l’outil µSpider • Adaptateur de protocole NoC – bus OPB • Mise en œuvre sur plate forme FPGA Xilinx Mise en œuvre sur plate forme FPGA Xilinx • Plateforme de prototypage: Xilinx Virtex-II Pro FF1152 PROTO BOARD. • FPGA Xilinx Virtex-II Pro FF1152 VP-50-5. • Logiciel: Xilinx ISE 8.2 SP3. FPGA: Xilinx Virtex-II Pro FF1152 VP50-5
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Plan • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA dans le contexte d’horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Des slots de temps pour répartir le trafic • L’utilisation des liens est répartie dans le temps entre les communications. • L’envoi des paquets depuis les interfaces d’entrée du réseau est rythmé par des réservations de slots de temps dans des tables TDMA. • Le pré-ordonnancement du TDMA • Garantit l’absence de conflit, • Assure la bande passante, • Assure la latence. IP 1 NI_0 IP 2 R2 NI_1 R1 IP 3 NI_2
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Routage spatio-temporel • Vue topologique t • Vue Spatio-temporelle • Exploration sur les dimensions espace et temps Slots de temps GT BE FIFO y x
R00 R01 NI_1 R10 NI_2 R11 • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Routage spatio-temporel • Définir le nombre de slots de la table TDMA: N. • Bande passante d’un slot=1/N de la bande passante du lien. • Répartition de l’utilisation du lien • Influe sur: • la latence • la taille des FIFOs • Définir le nombre de slots à réserver dans la table TDMA • Bande passante de la communication • Décider du chemin spatio-temporel • Chemin • Slots occupés dans la table TDMA delai
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Extraction des contraintes de communication depuis les contraintes applicatives Contraintes applicatives entrée sortie Tâche 1 Tâche 2 Tâche 3 Tâche 4 Contraintes de communication (latence, bande-passante)
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Extraction des contraintes de communication depuis les contraintes applicatives Contraintes applicatives • Les interdépendances du problème • Il faut casser les dépendances Comment dériver les contraintes de communicationdepuis les contraintes applicatives? entrée sortie Tâche 1 Tâche 2 Tâche 3 Tâche 4 Contraintes de communication (latence, bande-passante) Latence Bande passante
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Extraction des contraintes de communication depuis les contraintes applicatives OK Règles de cadence et d’initialisation =f(L,Bw) 5 Non OK 4 2 1 3 TDMA min Latence Bande passante Comi i=1 à N
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Extraction des contraintes de communication depuis les contraintes applicatives • Le relâchement de la contrainte sur la longueur des chemins permet de trouver plus facilement une solution lors de l’étape d’exploration des chemins spatio-temporels. Bande-passante Longueur du chemin Latence Bande passante obtenue i Longueur de chemin maximum acceptable Latence d’accès dans le TDMA Arrondi supérieur durant le calcul des slots à réserver dans la table TDMA Relâchement de la contrainte Chemin minimum i Bande passante requise i
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Principe pour décider les chemins • Faire les meilleurs choix pour allouer les chemins pour 2 raisons: • Aboutir à une solution avec le NoC le moins coûteux. • Aboutir à une solution avec la taille de table TDMA la plus réduite pour réduire la taille des FIFOs.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Principe pour décider les chemins NI_N1 NI_N2 NI_N3 NI_N0 • Plusieurs chemins possibles • Même longueur. • Pas la même conflit avec les autres communications • Décision concerté par pré-réservation des slots. • Un poids est affecté à chaque slot de chaque chemin candidat. C0 C4 NI_W0 NI_E0 R20 R30 R00 R10 C5 NI_W1 R21 R31 R01 R11 NI_E1 C2 NI_W2 R22 R32 R02 R12 NI_E2 C1 NI_W3 R23 R33 R03 R13 NI_E3 C3 C6 C7 NI_S1 NI_S2 NI_S3 NI_S0
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Principe pour décider les chemins • La pré-réservation des slots Communication nécessitant un paquet de 2 slots dans la table TDMA NI_1 R1 Table TDMA de 6 slots Somme des pré-réservations de chaque slot: Slot déjà réservé 1/3 1/3 Trois emplacements possibles pour transférer les 2 slots du paquet de cette communication dans la table de slots de ce lien 1/3 1/3+1/3 = 2/3 1/3 1/3 1/3+1/3 = 2/3 1/3 1/3 1/3
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Algorithme de routage • Algorithme • Tant que les communications n’ont pas toutes un chemin réservé (elles ne sont pas satisfaites) • Extraction des chemins candidats pour chacune des communications non satisfaites. • Pré-réservation de chaque slot de chaque chemin candidat par un poids pour chacune des communications non encore satisfaites. • Sélection de la communication Ci à satisfaire parmi toutes les communications non satisfaites. • Sélection d’un chemin Pi pour la communication Ci parmi les chemins candidats. • Réservation des slots du chemin Pi par la communication Ci. Ci est marquée comme satisfaite. • Annulation de toutes les pré-réservations devenues obsolètes.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Algorithme de routage • Après évaluation nous avons retenu les heuristiques suivantes: • Sélection de la communication • Critère de bande-passante sur laxité. • Sélection du chemin • Le chemin ayant la plus faible pré-réservation maximale sur son chemin. • Cette méthode permet de trouver une solution avec: • Une table TDMA plus petite, • Des FIFOs également plus petites. • Plus de chance de succès. • Inconvénient: • Le temps d ’exploration: quelques heures. • Heuristiques • Pré-réserver moins de chemin. Nombre moyen de sauts
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Des slots de temps pour répartir le trafic • Routage spatio-temporel • Extraction des contraintes de communication depuis les contraintes applicatives • Principe pour décider les chemins • Algorithme de routage • Communications mutuellement exclusives Communications mutuellement exclusives • Réservations unique • Certaines communications peuvent être identifiées comme mutuellement exclusives. • Optimisation: • Réservation commune de slots de temps entre les communications mutuellement exclusives. • Les réservations multiples permettent • une meilleure utilisation des slots de temps, • une réduction de la longueur de la table TDMA et donc de son temps de rotation. IP R1 NI_0 • Réservations multiples IP NI_0 R1
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Difficulté • NoC GALS • Les instructions dans les sub-NoCs Plan • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA dans le contexte d’horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Difficulté • NoC GALS • Les instructions dans les sub-NoCs Problématique • Circuit synchrone avec • une seule horloge, • pas de problème de skew. • Circuit de grande taille • Skew des horloges, • Plusieurs domaines d’horloge. • Recherche de solution • Par simulation du système ou • Système asynchrone • Ne permet pas l’utilisation du TDMA • Technique avec délai minimum avant envoi ou Notre solution Trafic garanti par TDMA + adaptateurs Notre solution Trafic garanti par TDMA
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Difficulté • NoC GALS • Les instructions dans les sub-NoCs Difficulté : TDMA NON OPERATIONNEL … Horloge 2 Horloge 3 skew Horloge 1 Horloge 4 Horloge 5
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Difficulté • NoC GALS • Les instructions dans les sub-NoCs NoC GALS Horloge 2 Horloge 3 Sub-NoC régi par un TDMA Sub-NoC régi par un TDMA Sub-NoC régi par un TDMA skew Horloge 1 Sub-NoC régi par un TDMA Sub-NoC régi par un TDMA Routeur temporel Horloge 4 Horloge 5 Synchroniseur de TDMA
Instructions de routage pour traverser le sub-NoC 2 3 2 Instructions de routage pour traverser le sub-NoC 3 2 • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Difficulté • NoC GALS • Les instructions dans les sub-NoCs Les instructions dans les sub-NoCs Sub-NoC 1TDMA 1 Sub-NoC 2TDMA 2 Sub-NoC 3TDMA 3 • La connaissance des instructions de routage au travers des différents Sub-NoCs est distribuée. • Réduction de la taille du champ instruction de chemin dans l’entête du paquet. • Plus grande indépendance entre les Sub-NoCs. IP1 IP2 S S S S NI1 R R R R R R R NI2 IP3 IP4 S S S S R R R R R R R NI3 NI4 ID Instructions de routage pour traverser le sub-NoC 1 1 3 2
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique des instructions • Sécurisation en Multi-zones Plan • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA dans le contexte d’horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique des instructions • Sécurisation en Multi-zones Problématique • La sécurité contre • Les attaques malveillante, • L’extraction d’informations, • Les fautes (fiabilité). • Problématique • Offrir une solution avec une mise en œuvre efficace, simple et peu coûteuse. • Principe • Ne pas s’appuyer sur des informations transportées en tant que données (qui peuvent donc être facilement modifiées), • Utiliser l’information de routage des paquets.
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique des instructions • Sécurisation en Multi-zones Politique de routage Nord • Street sign: • est, est, sud, sud, descendre. • X-Y: • +2 saut en X puis 2 saut en Y. • Street-sign avec codage relatif • instruction en fonction du port d’entrée et de sortie du routeur. Ouest Est Routeur Descendre Sud -Y X -X Routeur Y +5 +4 Routeur +3 +1 +2
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique des instructions • Sécurisation en Multi-zones Street-sign avec codage relatif Aller: Retour: +3 +5 +2 +4 +4 Routeur Routeur +3 +1 +1 +5 +2 +2 +4 = Nombre de ports du routeur => déduction du chemin retour. L’instruction pour utiliser une sortie varie en fonction du n° du port d’entrée. L’instruction identifie le port d’entrée => Sécurité. !
+0 +1 +3 • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique des instructions • Sécurisation en Multi-zones Complément & décalage Instruction « Fin de Chemin » (Optionnelle) Instruction courante Seconde instruction Avant l’exécution de la première instruction par le routeur: +0 +2 +1 +3 Exécution et complément de l’ instruction dans le routeur: +2 Complément +4 +4 Instruction retour=(nombre de ports du routeur) – instruction aller 4=(6 - 2)
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique • Sécurisation en Multi-zones Réarrangement binaire automatique des instructions de routage • Le nombre de ports de chaque routeur peut être différent =>Le nombre de bits nécessaire au codage des instructions peut donc varier aussi. • Pour réduire le codage du champ d’instruction => codage de largeur variable • Pb: comment inverser l’ordre des instructions au niveau du destinataire (il ne connaît pas la taille de chacune). 1 2 3 4 aller Inversion de l’ordre des instructions S R1 R2 R3 R4 D ? RETOUR 4 3 2 1
Instruction aller R1 Instruction aller R2 Instruction aller R3 Instruction aller R4 Instruction retour R1 inv. Instruction retour R2 inv. Instruction retour R3 inv. Instruction retour R4 inv. B0 B1 B2 B3 b5 B5 b5 B4 b4 b4 b3 b3 B3 B2 b2 b2 b1 B1 b1 B0 b0 b0 b3 b3 b2 b2 b1 B1 b0 b0 b2 b2 b1 b1 b0 b0 b4 b4 b3 b3 b2 b2 b1 b1 b0 b0 B0 B1 B2 B3 B0 B0 B0 B1 b1 b1 B2 B2 B2 B3 B3 B3 B4 B4 B4 B5 B5 B5 B0 B0 B0 B1 B1 B1 B2 B2 B2 B0 B0 B0 B1 B1 B1 B2 B2 B2 B3 B3 B3 B4 B4 B4 B3 B2 B1 B0 B2 B1 B0 B4 B3 B2 B1 B0 B0 B1 B2 B3 B4 B3 B2 B1 B0 B2 B1 B0 B3 B2 B1 B0 B5 B4 B3 B2 B1 B0 • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives Instruction retour R1 inv. • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique • Sécurisation en Multi-zones aller Les chemins aller et retour: S R1 R2 R3 R4 D RETOUR Les instructions aller pour les routeurs R1 à R4: Instruction aller R1 Instruction aller R2 Instruction aller R3 Instruction aller R4 Les instructions dans l’entête du paquet: Instruction retour R1 inv. Instruction retour R1 Instruction retour R2 inv. Instruction retour R3 inv. Instruction retour R4 inv. Instruction retour R2 Instruction retour R3 Instruction retour R4 Les instructions retour pour les routeurs R4 à R1: Instruction retour R4 Instruction retour R3 Instruction retour R2 Instruction retour R1
R R R R R R • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique des instructions • Sécurisation en Multi-zones SPA : Self Complemented Path coding • Trusted Boomerang Path Ni A Ni D Chemin AtoB Déduction du chemin retour: Réseau de routeurs AtoD RAM AtoD A DtoA D DtoA =R(AtoD) Vérification du chemin: DtoA BtoA=R(AtoB)? DtoB =R(BtoD) DtoC =R(CtoD) B Chemin BtoD C Chemin CtoD
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique des instructions • Sécurisation en Multi-zones SPA : Self Complemented Path coding • Source Path Authentication Chemin A à C NIc AtoC= 2,2,1,3,0 CtoA = 1,1,1,1,0 R(CtoA) = 0,1,1,1,1 NIa Routeur Routeur Routeur A Vérification chemins reçus = R(CtoA) ? C Routeur Routeur Routeur NIb Routeur Routeur Routeur Chemins reçus B AtoC= 0,1,1,1,1 BtoC= Chemin B à C 0,2,2,1,3 BtoC= 1,1,1,1,0
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Problématique • Politique de routage • Street-sign avec codage relatif • Complément & décalage • SPA : Self Complemented Path coding • Réarrangement binaire automatique des instructions • Sécurisation en Multi-zones Sécurisation en Multi-zones • Vérifier les instructions de routage • sur le trajet : Path filter • Ne laisse passer que les paquets dont le chemin est autorisé en amont et en aval. • à la réception. NI Routeur Routeur Path filter Routeur Routeur NI A B
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Applications • Mise en œuvre sur plate forme FPGA • Chaîne MC-CDMA MC-SS-MA • Turbo-décodeur • Traitement d’image Plan • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA dans le contexte d’horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives
Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Applications • Mise en œuvre sur plate forme FPGA • Chaîne MC-CDMA MC-SS-MA • Turbo-décodeur • Traitement d’image Applications • Mise en œuvre sur plate forme FPGA • Intégration composant dans la bibliothèque EDK • Exemple • Applications réelles • Chaîne MC-CDMA MC-SS-MA • Application flot de données • Turbo décodeur • Application avec de nombreuses communications potentielles • Traitement d’image • Application complexe
BRAM BRAM ctrl MicroBlaze Bus OPB 1 WRM WRS NIport M1 NIport S1 NIport S0 WRS MicroBlaze Bus OPB 0 BRAM ctrl BRAM NIport M0 WRM NIport S2 NIport M2 WRS WRM Bus OPB 2 BRAM ctrl BRAM MicroBlaze • Contexte de l’étude • Outil de CAO • Garantir le temps réel par un TDMA • TDMA avec des horloges hétérogènes • Sécurité • Applications et résultats • Conclusion, perspectives • Applications • Mise en œuvre sur plate forme FPGA • Chaîne MC-CDMA MC-SS-MA • Turbo-décodeur • Traitement d’image Mise en œuvre sur plate forme FPGA Xilinx NoC