μSpider Environnement de Conception de Réseaux sur Puce Samuel Evain Soutenance de Thèse de Doctorat LESTER-UBS Vendredi 24 novembre 2006, Lorient Samuel Evain Plan I. Contexte de l’étude II. Outil de CAO III. Garantir le temps réel par un TDMA IV. TDMA dans le contexte d’horloges hétérogènes V. Sécurité VI. Applications et résultats VII. Conclusion, perspectives Samuel Evain 2 I. Contexte de l’étude II. III. IV. V. VI. VII. 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 I. Contexte de l’étude II. Outil de CAO III. Garantir le temps réel par un TDMA IV. TDMA dans le contexte d’horloges hétérogènes V. Sécurité VI. Applications et résultats VII. Conclusion, perspectives Samuel Evain 3 I. Contexte de l’étude •CAO pour l’électronique embarquée II. III. IV. V. VI. VII. 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 •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. Samuel Evain 4 I. Contexte de l’étude •CAO pour l’électronique embarquée II. III. IV. V. VI. VII. 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 •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. Samuel Evain 5 I. Contexte de l’étude •CAO pour l’électronique embarquée II. III. IV. V. VI. VII. 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 •Un NoC (Network on Chip) •Espace de conception •Contributions et positionnement des travaux •Avancée des travaux au cours du temps •Les communications Les communications La communication devient dominante par rapport au traitement en termes de temps, de consommation, et de surface. IP IP IP IP ? IP IP IP IP IP 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. Samuel Evain 6 I. Contexte de l’étude II. III. IV. V. VI. VII. 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 Routeur NI NI W W IP IP Instructions mot mot Routeur NI NI W W Charge utile IP: Intellectual Property IP IP Entête mot Flit Phit mot mot NI: Network Interface Samuel Evain Queue 7 I. Contexte de l’étude II. III. IV. V. VI. VII. 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. Samuel Evain 8 I. Contexte de l’étude II. III. IV. V. VI. VII. 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. NI Nécessite NI Méthode de décision, Outil de décision. Samuel Evain 9 I. Contexte de l’étude II. III. IV. V. VI. VII. 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. Samuel Evain 10 I. Contexte de l’étude II. III. IV. V. VI. VII. 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. Samuel Evain 11 I. Contexte de l’étude II. III. IV. V. VI. VII. 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 Flot de conception 1) Etape de spécification Spécification de l’application Choix des paramètres du NoC 2) Dérivation automatique des contraintes de communication 3) Configuration automatique du NoC Minimise la profondeurs des FIFOs 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) Couches OSI Domaines de recherche Système IP source Messages/transactions IP destination Wrapper Paquet/Flux Interface réseau réseau Liaison Physique routeur source Ctrl flux Présentation Wrapper Adaptateur réseau Interface Réseau Application/ Flit routeur intermédiaire routeur destination Ctrl flux Ctrl flux Ctrl flux Phit Lien Lien Samuel Evain Session/ Transport Réseau Liaison Physique 12 I. Contexte de l’étude II. Outil de CAO III. IV. V. VI. VII. 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 I. Contexte de l’étude II. Outil de CAO III. Garantir le temps réel par un TDMA IV. TDMA dans le contexte d’horloges hétérogènes V. Sécurité VI. Applications et résultats VII. Conclusion, perspectives Samuel Evain 13 I. Contexte de l’étude II. Outil de CAO III. IV. V. VI. VII. 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. Samuel Evain 14 I. Contexte de l’étude •Caractéristiques II. Outil de CAO •Le flot de l’outil µSpider III. IV. V. VI. VII. Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes Sécurité Applications et résultats Conclusion, perspectives •Adaptateur de protocole NoC – bus OPB •Mise en œuvre sur plate forme FPGA Xilinx Le flot de l’outil µSpider Génération / Importation d’une architecture Contraintes de communication (.xls) Topologie du NoC (.xml) Graphe de l’application (.xml) Dimensionnement du TDMA en nombre de slots Dérivation des contraintes Exploration, décision library noc_v1_00_e; Calcul du nombre de slots nécessaires à chaque communication use noc_v1_00_e.generique_parameter_pck.all; Exploration spatio-temporelle pour chaque communication use noc_v1_00_e.archi_noc3mb4RGT_noc_parameter_pck.all; Pour chaque communication, sélection d’un chemins et des slots entity archi_noc_entity is Dimensionnement des FIFOs port ( Description de l’architecture du NoC Configuration, Génération noc_clock: in (.xml) std_logic; Génération Codes VHDL RTL du NoC (.vhd) Code C pour les pilotes du µBlaze Samuel Evain 15 I. Contexte de l’étude II. Outil de CAO III. IV. V. VI. VII. 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 µBlaze 1 (Maître) WRS1 Bus OPB 1 (Esclave) NIport NI1 R R R R NI2 NIport WRM2 (Maître) Bus OPB 2 RAM ctrl (Esclave) Envoi de message NoC µBlaze 1 (Maître) WRS1 Bus OPB 1 (Esclave) NIport NI1 R R R R NI2 NIport WRS2 Bus OPB 2 (Esclave) Samuel Evain µBlaze 2 (Maître) 16 I. Contexte de l’étude II. Outil de CAO III. IV. V. VI. VII. 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) Programme Pilote HAL WRS1 Bus OPB 1 (Esclave) NIport NI1 R R R R NI2 NIport WRM2 (Maître) Bus OPB 2 RAM ctrl (Esclave) HAL: Hardware Abstraction Layer @ de l’adaptateur WRS1 sur le bus OPB1 @ pointée par le programme du processeur dans son espace mémoire Numéro de connexion @ de la RAM sur le bus OPB2 Samuel Evain 17 I. Contexte de l’étude II. Outil de CAO III. IV. V. VI. VII. 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 Samuel Evain 18 I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. 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 I. Contexte de l’étude II. Outil de CAO III.Garantir le temps réel par un TDMA IV. TDMA dans le contexte d’horloges hétérogènes V. Sécurité VI. Applications et résultats VII. Conclusion, perspectives Samuel Evain 19 I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. 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 IP 2 IP 3 NI_0 NI_1 R1 R2 NI_2 Samuel Evain 20 •Des slots de temps pour répartir le trafic I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. TDMA avec des horloges hétérogènes Sécurité Applications et résultats Conclusion, perspectives •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 Slots de temps Exploration sur les dimensions espace et temps BE GT FIFO y x Samuel Evain 21 I. II. Contexte de l’étude Outil de CAO •Des slots de temps pour répartir le trafic •Routage spatio-temporel III. Garantir le temps réel par un TDMA •Extraction des contraintes de communication IV. V. VI. VII. TDMA avec des horloges hétérogènes Sécurité Applications et résultats Conclusion, perspectives •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: delai 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 NI_1 R00 R01 R10 R11 Samuel Evain NI_2 22 I. II. Contexte de l’étude Outil de CAO •Des slots de temps pour répartir le trafic •Routage spatio-temporel III. Garantir le temps réel par un TDMA •Extraction des contraintes de communication IV. V. VI. VII. TDMA avec des horloges hétérogènes Sécurité Applications et résultats Conclusion, perspectives •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 Tâche 1 Tâche 2 Tâche 3 Tâche 4 sortie Contraintes de communication (latence, bande-passante) Samuel Evain 23 I. II. Contexte de l’étude Outil de CAO •Des slots de temps pour répartir le trafic •Routage spatio-temporel III. Garantir le temps réel par un TDMA •Extraction des contraintes de communication IV. V. VI. VII. TDMA avec des horloges hétérogènes Sécurité Applications et résultats Conclusion, perspectives •Principe pour décider les chemins •Algorithme de routage •Communications mutuellement exclusives Extraction des contraintes de communication depuis les contraintes applicatives Contraintes applicatives Comment dériver les contraintes de communication depuis les contraintes applicatives? entrée Tâche 2 Tâche 1 Tâche 3 Tâche 4 sortie Contraintes de communication (latence, bande-passante) Les interdépendances du problème Latence Bande passante Il faut casser les dépendances Samuel Evain 24 I. II. Contexte de l’étude Outil de CAO •Des slots de temps pour répartir le trafic •Routage spatio-temporel III. Garantir le temps réel par un TDMA •Extraction des contraintes de communication IV. V. VI. VII. TDMA avec des horloges hétérogènes Sécurité Applications et résultats Conclusion, perspectives •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 3 Comi 1 Latence 4 2 Bande passante TDMA min i=1 à N Samuel Evain 25 I. II. Contexte de l’étude Outil de CAO •Des slots de temps pour répartir le trafic •Routage spatio-temporel III. Garantir le temps réel par un TDMA •Extraction des contraintes de communication IV. V. VI. VII. TDMA avec des horloges hétérogènes Sécurité Applications et résultats Conclusion, perspectives •Principe pour décider les chemins •Algorithme de routage •Communications mutuellement exclusives Extraction des contraintes de communication depuis les contraintes applicatives Longueur du chemin Latence Longueur de chemin maximum acceptable Relâchement de la contrainte Chemin minimum i Latence d’accès dans le TDMA Bande-passante Bande passante obtenue i Arrondi supérieur durant le calcul des slots à réserver dans la table TDMA Bande passante requise i 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. Samuel Evain 26 I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. 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. Samuel Evain 27 I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. 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 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. NI_N1 NI_N2 R00 R10 R20 R01 R11 R02 R03 NI_N0 C0 NI_W0 NI_N3 C4 R30 NI_E0 R21 R31 NI_E1 R12 R22 R32 NI_E2 R13 R23 R33 NI_E3 C5 NI_W1 C2 NI_W2 C1 NI_W3 C3 C6 C7 NI_S0 NI_S1 NI_S2 Samuel Evain NI_S3 28 I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. 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é 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 1/3 1/3+1/3 = 2/3 1/3 1/3 1/3 1/3+1/3 = 2/3 1/3 Samuel Evain 29 I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. 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) 1. Extraction des chemins candidats pour chacune des communications non satisfaites. 2. Pré-réservation de chaque slot de chaque chemin candidat par un poids pour chacune des communications non encore satisfaites. 3. Sélection de la communication Ci à satisfaire parmi toutes les communications non satisfaites. 4. Sélection d’un chemin Pi pour la communication Ci parmi les chemins candidats. 5. Réservation des slots du chemin Pi par la communication Ci. Ci est marquée comme satisfaite. 6. Annulation de toutes les pré-réservations devenues obsolètes. Samuel Evain 30 I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. 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. 7 Nombre moyen de sauts 6 5 4 3 2 1 0 Choix naif Le plus court chemin Application 1 Application 2 Le chemin ayant la Le chemin ayant la plus faible "somme plus faible "prédes préréservation réservations sur maximale" ses arcs" Application 3 Inconvénient: Le temps d ’exploration: quelques heures. Heuristiques Pré-réserver moins de chemin. Samuel Evain 31 I. II. Contexte de l’étude Outil de CAO III. Garantir le temps réel par un TDMA IV. V. VI. VII. 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: IP NI_0 R1 Réservations multiples 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 NI_0 R1 Samuel Evain 32 I. II. III. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA IV. TDMA avec des horloges hétérogènes V. VI. VII. Sécurité Applications et résultats Conclusion, perspectives •Problématique •Difficulté •NoC GALS •Les instructions dans les sub-NoCs Plan I. Contexte de l’étude II. Outil de CAO III. Garantir le temps réel par un TDMA IV. TDMA dans le contexte d’horloges hétérogènes V. Sécurité VI. Applications et résultats VII. Conclusion, perspectives Samuel Evain 33 •Problématique I. II. III. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA IV. TDMA avec des horloges hétérogènes V. VI. VII. Sécurité Applications et résultats Conclusion, perspectives •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 Notre solution Trafic garanti par TDMA + adaptateurs Samuel Evain 34 I. II. III. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA IV. TDMA avec des horloges hétérogènes V. VI. VII. 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 1 Horloge 3 skew Horloge 4 Horloge 5 Samuel Evain 35 •Problématique •Difficulté I. II. III. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA IV. TDMA avec des horloges hétérogènes V. VI. VII. Sécurité Applications et résultats Conclusion, perspectives •NoC GALS •Les instructions dans les sub-NoCs NoC GALS Horloge 2 Sub-NoC régi par un TDMA Horloge 1 Horloge 3 Sub-NoC régi par un TDMA Sub-NoC régi par un TDMA Sub-NoC régi par un TDMA Sub-NoC régi par un TDMA skew Routeur temporel Synchroniseur de TDMA Horloge 4 Samuel Evain Horloge 5 36 I. II. III. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA •Problématique •Difficulté •NoC GALS IV. TDMA avec des horloges hétérogènes •Les instructions dans les sub-NoCs V. VI. VII. Sécurité Applications et résultats Conclusion, perspectives Les instructions dans les sub-NoCs Sub-NoC 1 TDMA 1 Sub-NoC 2 TDMA 2 Sub-NoC 3 TDMA 3 IP1 NI1 R R S S R R R S S R R NI2 IP2 IP3 NI3 R R S S R R R S S R R NI4 IP4 ID Instructions de routage pour traverser le sub-NoC 1 1 3 2 Instructions de routage pour traverser le sub-NoC 2 3 2 Instructions de routage pour traverser le sub-NoC 3 2 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. Samuel Evain 37 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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 I. Contexte de l’étude II. Outil de CAO III. Garantir le temps réel par un TDMA IV. TDMA dans le contexte d’horloges hétérogènes V. Sécurité VI. Applications et résultats VII. Conclusion, perspectives Samuel Evain 38 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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. Samuel Evain 39 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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 Street sign: est, est, sud, sud, descendre. Nord Ouest Routeur Est Descendre Sud X-Y: +2 saut en X puis 2 saut en Y. -Y -X Routeur X Y +5 +4 Street-sign avec codage relatif instruction en fonction du port d’entrée et de sortie du routeur. Routeur +3 +1 Samuel Evain +2 40 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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: +5 +3 +4 +2 +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é. Samuel Evain 41 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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 courante Avant l’exécution de la première instruction par le routeur: Exécution et complément de l’ instruction dans le routeur: +2 +2 Instruction « Fin de Chemin » (Optionnelle) Seconde instruction +1 +3 +0 +1 +3 +0 Complément +4 Instruction retour=(nombre de ports du routeur) – instruction aller 4=( 6 - 2) Samuel Evain 42 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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 aller S R1 R2 R3 R4 2 D 3 Inversion de l’ordre des instructions ? RETOUR 4 3 2 4 1 Samuel Evain 43 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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 Instruction retour R1 inv. •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 b5 b4 b3 b2 b1 b0 Instruction aller R2 Instruction aller R3 Instruction aller R4 b3 b2 b2 B1 b0 b1 b0 b4 b3 b2 b1 b0 Les instructions dans l’entête du paquet: Instruction aller R1 b5 b4 b3 b2 b1 Instruction Instruction retour retour R1 R1 inv. B5 B4 B3 B0 b1 B2 Instruction aller R2 b0 b3 b2 b1 Instruction aller R3 b0 Instruction Instruction retour retour R2 R2 inv. b2 b1 Instruction aller R4 b0 b4 Instruction Instruction retour retour R3 R3 inv. b3 b2 b1 In re b0 B0 b1 Instruction Instruction retour retourR4 R4inv. B2 B4 B1 B5 B0 B3 B0 B2 B1 B1 B2 B0 B3 B2 B3 B0 B1 B0 B2 B4 B0 B3 B1 B2 B2 B1 B3 B0 B4 Les instructions retour pour les routeurs R4 à R1: Instruction retour R4 Instruction retour R3 Instruction retour R2 Instruction retour R1 B0 B3 B1 B2 B1 B3 B0 B4 B2 B5 B1 B0 B0 B1 B3 B2 B2 B3 B1 B0 B0 B1 B5 B2 B4 B0 B3 B1 B2 B1 B3 B0 B4 B4 Samuel Evain 44 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes •Problématique •Politique de routage •Street-sign avec codage relatif •Complément & décalage V. Sécurité •SPA : Self Complemented Path coding VI. VII. Applications et résultats Conclusion, perspectives •Réarrangement binaire automatique des instructions •Sécurisation en Multi-zones SPA : Self Complemented Path coding Trusted Boomerang Path Ni A Chemin AtoB Ni D AtoD A Vérification du chemin: BtoA=R(AtoB) ? B Chemin BtoD C Chemin CtoD DtoA Réseau de routeurs R R R R R R AtoD Déduction du chemin retour: DtoA DtoA =R(AtoD) D RAM DtoB =R(BtoD) DtoC =R(CtoD) Samuel Evain 45 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes •Problématique •Politique de routage •Street-sign avec codage relatif •Complément & décalage V. Sécurité •SPA : Self Complemented Path coding VI. VII. Applications et résultats Conclusion, perspectives •Réarrangement binaire automatique des instructions •Sécurisation en Multi-zones SPA : Self Complemented Path coding Source Path Authentication Chemin A à C AtoC= NIc 2,2,1,3,0 CtoA = 1,1,1,1,0 A B NIa NIb Chemin B à C BtoC= Routeur Routeur Routeur R(CtoA) = 0,1,1,1,1 Vérification chemins reçus = R(CtoA) ? Routeur Routeur Routeur Routeur Routeur Routeur C Chemins reçus AtoC= 0,1,1,1,1 BtoC= 0,2,2,1,3 1,1,1,1,0 Samuel Evain 46 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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. A NI Routeur Routeur Path filter Routeur Routeur NI Samuel Evain B 47 I. II. III. IV. V. 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é VI. Applications et résultats VII. Conclusion, perspectives •Applications •Mise en œuvre sur plate forme FPGA •Chaîne MC-CDMA MC-SS-MA •Turbo-décodeur •Traitement d’image Plan I. Contexte de l’étude II. Outil de CAO III. Garantir le temps réel par un TDMA IV. TDMA dans le contexte d’horloges hétérogènes V. Sécurité VI. Applications et résultats VII. Conclusion, perspectives Samuel Evain 48 I. II. III. IV. V. 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é VI. Applications et résultats VII. 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 Samuel Evain 49 I. II. III. IV. V. 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é VI. Applications et résultats VII. 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 BRAM BRAM ctrl MicroBlaze MicroBlaze BRAM BRAM ctrl Bus OPB 0 Bus OPB 1 WRS WRM WRS NIport M1 NIport S1 NIport S0 NoC WRM NIport M0 NIport S2 NIport M2 WRS WRM Bus OPB 2 MicroBlaze BRAM BRAM ctrl Samuel Evain 50 •Applications I. II. III. IV. V. 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é VI. Applications et résultats VII. Conclusion, perspectives •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 3 processeurs µBlaze 3 Bus OPB 3 Mémoires RAM 3 Wrappers esclaves 3 Wrappers maîtres NoC Samuel Evain 51 I. II. III. IV. V. 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é VI. Applications et résultats VII. 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 3 microBlazes, 3 RAMs NoC Fréquence maximale: 91MHz 4 routeurs, 6 Nis, 3 wrapper_S (4 channels), 3 wrapper_M (2 channels). Lectures et écritures 2 modes: Polling Le processeur scrute l’arrivée des données sur le wrapper esclave. Interruption Le wrapper esclave prévient le processeur qu’une donnée est arrivée par une interruption. 1 million de mots de 32 bits transférés avec succès entre les 3 processeurs et les 3 RAMs. Samuel Evain 52 I. II. III. IV. V. 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é VI. Applications et résultats VII. 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 FPGA Virtex-II Pro FF1152 VP-50-5. capacité : 23616 slices . Le NoC avec les wrappers occupe 11418 slices. Répartition des composants du NoC en %: 12 10 8 6 Série1 4 2 0 NI_2ch NI_4ch R_3ports R_4ports W_maitre W_esclave Samuel Evain 53 I. II. III. IV. V. 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é VI. Applications et résultats VII. Conclusion, perspectives •Applications •Mise en œuvre sur plate forme FPGA •Chaîne MC-CDMA MC-SS-MA •Turbo-décodeur •Traitement d’image Chaîne MC-CDMA MC-SS-MA Transmission: Projet 4MORE Application flot de donnée RAM 48 CHANNEL CODER 96 BIT INTERLEAVING 96 CDMA 24*24 6*24 MIMO ENCODER Une chaîne d’émission et une autre de réception. Elle a permis de valider: 24*24 MAPPING 24*30 24*30 OFDM MODULATION 1 OFDM MODULATION 2 1280*30 1280 * 30 S P P DDDDDDDDDDDD P P DDDDDDDDDDDD P P Z RF IF 1 La technique de 32 Symboles OFDM dimensionnement du TDMA, 672*6 La technique d’allocation des Réception: 23*30 MIMO CHANNEL CFO 1 ESTIMATION 1 slots de temps, 1280*30 RAM RF IF 1 OFDM DEM 1 ROTOR 1 L’utilisations des multiRAM RF IF 2 OFDM DEM 2 ROTOR 2 réservations pour les 1280 * 30 MIMO CHANNEL CFO 2 ESTIMATION 2 23*30 communications 672*6 mutuellement exclusives. 30*1 672*24 672*30 672*30 672*24 30*1 S P P D D D D D D D D D D D D P P D D D D D D D D D D D D P P Z RF IF 2 672*24*2 MIMO DECODER 2 MIMO DECODER 1 MIMO DECODER 3 672*24*2 672*24 CDMA 672*24 SOFT DEMAPPING 24*84 32 Symboles OFDM CHANNEL DECODER 24*84 BIT INTERLEAVING MAC LAYER Samuel Evain 54 I. II. III. IV. V. 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é VI. Applications et résultats VII. Conclusion, perspectives •Applications •Mise en œuvre sur plate forme FPGA •Chaîne MC-CDMA MC-SS-MA •Turbo-décodeur •Traitement d’image Chaîne MC-CDMA MC-SS-MA NoC 32 bits Topologie en grille 4x4 (16 routeurs) Solution trouvée Table de 6 slots Génération du VHDL ~50000 lignes de codes VHDL générées en 6 secondes. Synthèse xilinx Durée 9 min Fréquence maximum = 103MHz 16220 slices (68%FPGA) Samuel Evain 55 I. II. III. IV. V. 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é VI. Applications et résultats VII. Conclusion, perspectives •Applications •Mise en œuvre sur plate forme FPGA •Chaîne MC-CDMA MC-SS-MA •Turbo-décodeur •Traitement d’image Turbo décodeur Application complexe de nombreuses communications potentielles. L’architecture: 8 processeurs (P0 à P7) Les communications: Chaque processeur émet par chacun de ses deux ports une information extrinsèque selon l’ordonnancement de l’entrelaceur. Décodeur 1 Décodeur 2 oa ob P4 ia ib oa ob P0 ia ib oa ob P1 ia ib oa ob P2 ia ib oa ob P5 ia ib NoC oa ob P3 ia ib oa ob P6 ia ib oa ob P7 ia ib Samuel Evain 56 I. II. III. IV. V. 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é VI. Applications et résultats VII. Conclusion, perspectives •Applications •Mise en œuvre sur plate forme FPGA •Chaîne MC-CDMA MC-SS-MA •Turbo-décodeur •Traitement d’image Turbo décodeur 128 communications peuvent être identifiées. Alors que seulement 16 informations extrinsèques sont créées tous les Temiss ; Le débit total des échanges est de 16*90Mo/s=1,4Go/s. Une solution à base de bus est donc exclue. Une entrée i peut recevoir jusqu’à 8 informations extrinsèques à la fois Débit pire cas de 720Mo/s. Probabilité de 1/224. En moyenne, une entrée reçoit une seule information extrinsèque par cycle d’émission soit un débit de 90Mo/s. C’est donc un problème complexe Samuel Evain 57 I. II. III. IV. V. 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é VI. Applications et résultats VII. Conclusion, perspectives •Applications •Mise en œuvre sur plate forme FPGA •Chaîne MC-CDMA MC-SS-MA •Turbo-décodeur •Traitement d’image Turbo décodeur 2 solutions proposées: BE avec règle de priorité Priorité maximale à l’informations extrinsèque transportant l’ information la plus significative, Utilisation d’un arbitrage sur priorité dans les routeurs. GT avec restriction Limitation à 5 informations extrinsèques reçue par un port durant 3 périodes consécutives de l’entrelaceur, Utilisation des exclusions mutuelles: Indispensable car sinon il faudrait reconfigurer les tables TDMA à chaque période de l’entrelaceur, soit toutes les 0,1 µs. Solution avec un NoC à 200 MHz, 24 bits de largeur de données. Table TDMA de 10 slots. Samuel Evain 58 I. II. III. IV. V. 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é VI. Applications et résultats VII. Conclusion, perspectives •Applications •Mise en œuvre sur plate forme FPGA •Chaîne MC-CDMA MC-SS-MA •Turbo-décodeur •Traitement d’image Traitement d’image Application de suivi d’objets Projet EPICURE (CEA) Img i (320*240*8) Elle a permis de valider la technique de dérivation des contraintes. Avec exclusions mutuelles Slots de la table TDMA 10 5 FIFO dans les NIs 65 60 Img i-2 (320*240*8) Img i-3 (320*240*8) Img a. (320*240*1) IP2 Img b. (320*240*1) Dilatation Étiquetag e Image étiquetée (320*240*n) IP7 M4 Enveloppe & center de gravité Structure des objets (6*9bits par objet) Kalma n IP6 IP3 M3 IP4 T M1 M2 Érosion Reconstruction morphologique Img de font (320*240*8) IP1 Moyenne & soustraction du font & seuillage Exclusion mutuelle Réduction de la table TDMA Réduction du coût en FIFO Sans exclusion mutuelle Img i-1 (320*240*8) Not moving object detection Structure des objets (4*9bits par objet) IP5 Img i (320*240*8) M5 IP7 M5 M.À J. de l’image de fond Samuel Evain Img de font (320*240*8) Incrustatio n IP7 Img Vga (320*240*8) VGA M1 Img i (320*240*8) Img de font (320*240*8) M1 59 I. II. III. IV. V. VI. 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 VII. Conclusion, perspectives •Conclusion •Collaborations •Perspectives •Communications scientifiques Plan I. Contexte de l’étude II. Outil de CAO III. Garantir le temps réel par un TDMA IV. TDMA dans le contexte d’horloges hétérogènes V. Sécurité VI. Applications et résultats VII.Conclusion, perspectives Samuel Evain 60 I. II. III. IV. V. VI. 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 VII. Conclusion, perspectives •Conclusion •Collaborations •Perspectives •Communications scientifiques Conclusion Principales contributions Définition d’un flot de conception. Définition d’une technique d’affectation des chemins dans le réseau. Technique pour garantir le service dans un contexte multi horloges. Technique de codage des instructions de routage avec des aspects sécurités. Développement d’une architecture paramétrable générique d’un réseau sur puce. Développement d’un outil de CAO pour configurer et générer le réseaux sur puce (code C et VHDL RTL). Validation sur plateforme FPGA Xilinx. Samuel Evain 61 I. II. III. IV. V. VI. 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 VII. Conclusion, perspectives •Conclusion •Collaborations •Perspectives •Communications scientifiques Collaborations Projets : Equipe Projet Multi-Laboratoire (Sep 2002 - Sep 2005) INSA - IETR (Institut d'Electronique et de Télécommunications de Rennes) UBS – LESTER (Laboratoire d'électronique des systèmes temps réels) GET R-PUCE (2005 - 2006) ENSTB – Électronique et RSM (Réseaux, Sécurité et Multimédia) INT d'Evry – RST (Réseaux et Services des Télécommunications) UBS – LESTER Samuel Evain 62 I. II. III. IV. V. VI. 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 VII. Conclusion, perspectives •Conclusion •Collaborations •Perspectives •Communications scientifiques Perspectives Complément de développements Ouvert des perspectives pour la sécurité Thèse en cours au LESTER Interaction entre le NoC et l’OS pour contrôler la QoS et la sécurité, Synthèse systemC TLM car le test du monitoring impose une simulation rapide. Conception spécifique à l’application Dépôt projet ANR collaboration avec TAMCIC (ENST Bretagne) Lien application-NoC. Transfert data dépendant. Optimisation guidée par la connaissance de l’application. Valorisation (études en cours) Samuel Evain 63 I. II. III. IV. V. VI. 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 VII. Conclusion, perspectives •Conclusion •Collaborations •Perspectives •Communications scientifiques Communications scientifiques Conférences internationales S. Evain, J-Ph. Diguet, Milad El Khodary and D. Houzet, “Automated derivation of NoC Communication Specifications from Application Constraints”, IEEE SIPS 2006, Workshop on Signal Processing Systems, Banff, AB, Canada, October 2-4, 2006. S. Evain, J. P. Diguet, D. Houzet, "µSpider NoC Road Map", DATE 06 Workshops, Future Interconnects and Networks on Chip Workshops, March 10, 2006. S. Evain, J. P. Diguet, "From NoC Security Analysis To Design Solutions", in IEEE SIPS 2005, Workshop on Signal Processing Systems, Athens, Greece, November 2-4, 2005. S. Evain, J. P. Diguet, D. Houzet, "A CAD Tool for efficient NoC design", IEEE ISPACS 2004, International Symposium on Intelligent Signal Processing and Communication Systems, Seoul, Korea, November 18-19, 2004. S. Evain, J. P. Diguet, D. Houzet, "µSpider: a CAD Tool for efficient NoC design", IEEE NORCHIP 2004, Oslo, NORWAY, November 8-9, 2004. Revue Internationale S. Evain, J-Ph. Diguet and D. Houzet, “NoC Design Flow for TDMA and QoS Management in a GALS Context”, EURASIP Journal on Embedded Systems, Volume 2006, Hindawi Publishing Corporation, 2006, accepté. Brevet “Routeur et réseau de routage". Déposé le 28 octobre 2005. Samuel Evain 64 Merci, Questions? Samuel Evain 65 I. II. III. IV. Contexte de l’étude Outil de CAO Garantir le temps réel par un TDMA TDMA avec des horloges hétérogènes V. Sécurité VI. VII. 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 aller Les chemins aller et retour: S R1 R2 R3 R4 D retour Les instructions aller pour les routeurs R1 à R4: Instruction aller R2 Instruction aller R1 B5 B4 B3 B2 B1 B0 B3 B2 B1 B0 Instruction aller R3 Instruction aller R4 B2 B3 B1 B0 B4 B2 B1 B0 Dans chaque routeur, l’instruction de retour est calculée et l’ordre de ses bits (poids fort - poids faible) est inversé Les instructions retour avec les bits inversés et toujours dans l’ordre R1 à R4: Instruction retour R2 Instruction retour R3 Instruction retour R1 B0 B1 B2 B3 B4 B5 B0 B1 B2 B3 B0 B1 B2 B0 Instruction retour R4 B1 B2 B3 B4 A destination, l’ordre des bits (poids fort - poids faible) de l’ensemble du champ instruction est inversé Les instructions retour pour les routeurs R4 à R1: Instruction retour R4 B4 B3 B2 B1 B0 Instruction retour R1 Instruction retour R3 Instruction retour R2 B2 B1 B0 B3 B2 B1 B0 B5 B4 B3 Samuel Evain B2 B1 B0 66