Systèmes multi-processeurs intégrés sur puce



Documents pareils
Une méthode de conception de systèmes sur puce

Conception de circuits numériques et architecture des ordinateurs

INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1

Téléinformatique et télématique. Revenons aux définitions

1.Introduction - Modèle en couches - OSI TCP/IP

Leçon 1 : Les principaux composants d un ordinateur

La carte à puce. Jean-Philippe Babau

Le modèle client-serveur

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Initiation au HPC - Généralités

Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July ENPC.

Architecture matérielle des systèmes informatiques

Le multiplexage. Sommaire

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

ORDONNANCEMENT CONJOINT DE TÂCHES ET DE MESSAGES DANS LES RÉSEAUX TEMPS RÉELS 4. QUELQUES EXEMPLES DU DYNAMISME ACTUEL DU TEMPS RÉEL

Administration des ressources informatiques

Sanity Check. bgcolor mgcolor fgcolor

TD 1 - Transmission en bande de passe

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Limitations of the Playstation 3 for High Performance Cluster Computing

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

Cours Bases de données

Assembleur. Faculté I&C, André Maurer, Claude Petitpierre

Réplication des données

<Insert Picture Here> Solaris pour la base de donnés Oracle

Introduction. Adresses

ELP 304 : Électronique Numérique. Cours 1 Introduction

Temps Réel. Jérôme Pouiller Septembre 2011

Introduction à la Programmation Parallèle: MPI

NOTIONS DE RESEAUX INFORMATIQUES

La technologie Java Card TM

Choix d'un serveur. Choix 1 : HP ProLiant DL380 G7 Base - Xeon E GHz

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

TD Architecture des ordinateurs. Jean-Luc Dekeyser

Chapitre VII : Principes des réseaux. Structure des réseaux Types de réseaux La communication Les protocoles de communication

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

Evolution de l infrastructure transport

Cours n 12. Technologies WAN 2nd partie

Groupe Eyrolles, 2000, 2004, ISBN :

Introduction à l informatique temps réel Pierre-Yves Duval (cppm)

PL7 Micro/Junior/Pro Métiers communication Tome 1. TLXDSCOMPL7xxfre

Les liaisons SPI et I2C

Cisco Certified Network Associate Version 4

2. DIFFÉRENTS TYPES DE RÉSEAUX

Module BDR Master d Informatique (SAR)

Parallélisme et Répartition

Optimisations des SGBDR. Étude de cas : MySQL

Algorithmique des Systèmes Répartis Protocoles de Communications

Vers du matériel libre

Chapitre 4 : Les mémoires

Ordinateurs, Structure et Applications

Spécifications détaillées

Introduction aux systèmes temps réel. Iulian Ober IRIT

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Conception des systèmes répartis

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

Modélisation des interfaces matériel/logiciel

1) Où est le problème? Chère lectrice, cher lecteur, On est entre nous, alors on va se tutoyer.

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Cours des réseaux Informatiques ( )

Architecture des ordinateurs

Logique séquentielle

Marché Public en procédure adaptée : Infrastructure Informatique régionale hébergée CAHIER DES CHARGES ET DES CLAUSES TECHNIQUES

Guide Mémoire NETRAM

Routage Statique. Protocoles de Routage et Concepts. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

Micro ordinateur & Périphériques Mémoire de masse Disque dur (SOLUTION)

Introduction aux Systèmes et aux Réseaux

OPC Factory Server- Réglage des paramètres de communication

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Tsoft et Groupe Eyrolles, 2005, ISBN :

Organisation des Ordinateurs

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

Contributions à l expérimentation sur les systèmes distribués de grande taille

Configuration automatique

Adressage des données des contrôleurs du WAGO-I/O-SYSTEM 750. Note d application

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

Un concept multi-centre de données traditionnel basé sur le DNS

Conversion d un entier. Méthode par soustraction

La VOIP :Les protocoles H.323 et SIP

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

TER Réseau : Routeur Linux 2 Responsable : Anthony Busson

Présentation du modèle OSI(Open Systems Interconnection)

TABLE DES MATIERES. I. Objectifs page 2. II. Types de réseaux page 2. III. Transmission page 2. IV. Câbles page 3. V.

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

Présentation du système informatique utilisé et éléments d architecture des ordinateurs

Préconisations Techniques & Installation de Gestimum ERP

Système de Gestion de Fichiers

Master d'informatique 1ère année Réseaux et protocoles. Couche physique

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Réseau Global MIDI Note applicative

Fiche technique CPU 315SN/PN (315-4PN33)

Informatique industrielle A Systèmes temps-réel J.F.Peyre. Partie I : Introduction

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

Un ordinateur, c est quoi?

Fourniture de matériels informatiques MARCHÉ N Cahier des Clauses Techniques Particulières

Réseaux grande distance

Transmission d informations sur le réseau électrique

Transcription:

Systèmes multi-processeurs intégrés sur puce version 1.0 PHY 568 Alain Greiner

Pla n Architectures multi-processeurs à mémoire partagée Applications parallèles embarquées Bus système / exemple du PIBUS 2

Bu t Un système multiprocesseurs intégré sur puce (MPSoC), cherche à exploiter le parallélisme «gros grain» d une unique application embarquée. Exemple : contrôle d un téléphone portable Une même puce contient plusieurs processeurs exécutant en parallèle différentes tâches. Ces tâches communiquent généralement entre elles à travers un espace d adressage partagé, suivant un schéma producteur/consommateur. 3

Espace d adressage partagé Les maîtres (ou initiateurs) démarrent une transaction en effectuant une lecture ou une écriture à une adresse particulière. Les esclaves (ou cibles) terminent la transaction en renvoyant la donnée demandée (lecture), ou en renvoyant un acquittement (écriture) Esclaves RAM ROM TTY I/O Interconnect Maîtres P0 P1 P2 P3 Une transaction est un couple (commande / réponse). 4

Décodage des adresses Tous les composants du système ont la même vision de l implantation des cibles dans l espace d adressage. ROM FFFF FFFF L interconnect décode les bits de poids fort de l adresse pour pour acheminer la commande vers la cible concernée. 31 0 MSB LSB La cible décode les poids faible de l adresse pour adresser la case mémoire visée, en lecture ou en écriture. RAM TTY I/O 0000 0000 5

Pla n Architectures multi-processeurs à mémoire partagée Applications parallèles embarquées Bus système / exemple du PIBUS Principe des mémoires caches 6

Caractéristiques Générales Les applications logicielles sont souvent décrite sous forme d un réseau de tâches communicant entre elles à travers des canaux de communication. Une tâche est un programme séquentiel «infini» qui utilise des fonctions de communication prédéfinies : Un canal de communication est très souvent un tampon mémoire circulaire, géré comme une FIFO logicielle, et protégé par par un verrou d accès exclusif. while(1) { send(channel, buffer) } while(1) { receive(channel, buffer) } Tâche productrice Canal Tâche consommatrice 7

Parallélisme de type «pipe- line» T0 T1 T2 T3 Cette structure se retrouve fréquemment dans les applications de type «traitement de flux video», telles que décodage MPEG Lorsque le temps de calcul pour traiter une image est supérieur à la période de l image, on découpe le traitement en plusieurs tâches. Chaque tâche i a une durée inférieure à la période image, et est exécutée sur un processeur particulier. La durée d exécution de chaque tâche est variable (elle dépend généralement de l image), mais toutes les tâches doivent avoir des durées moyennes peu assez voisines, pour «équilibrer» le pipe-line. 8

Parallélisme de type «task- farm» Cette structure se retrouve fréquemment dans les applications de type «télécommunication», telles que classification de paquets dans un flux Gigabit Ethernet. T0 Tin T1 Tout Tn Toutes les tâches Ti accomplissent le même traitement, mais sur des paquets différents. 9

Parallélisme mixte On peut évidemment combiner les deux structures : T00 T01 Tin T10 T11 Tout Tn0 Tn1 Dans tous les cas, l expression du parallélisme «gros grain» (découpage en tâches et définition du schéma de communication) est à la charge du concepteur du système. 10

Pla n Architectures multi-processeurs à mémoire partagée Applications parallèles embarquées Bus système / exemple du PIBUS 11

Bus système L interconnect est réalisé comme un ensemble de nappes de fils partagées par plusieurs émetteurs. La limitation de ce type d interconnect est de ne permettre qu une seule transaction à la fois Esclaves RAM ROM TTY I/O BCU Maîtres P0 P1 P2 P3 12

NRESET CK Les signaux du PIBUS commande A[31:0] OPC[3:0] READ LOCK Cible j Maître i D[31:0] ACK[2:0] réponse GNTi REQi BCU SELj 13

Caractéristiques Générales Synchrone : Tous les composants connectés au bus doivent être cadencés par la même horloge et respecter les mêmes contraintes de setup-time et hold-time. Pipeliné : Il existe des nappes de fils séparées pour transporter les adresses et pour transporter les données. Rafales : il est possible de lire ou d écrire plusieurs mots de 32 bits en une seule transaction. 14

Fonctionnement pipe- line GNT GNT GNT AD AD0 AD1 AD2 AD3 AD DT DT0 DT1 DT2 DT3 DT LOCK ~ 0 ~ 1 1 1 0 ~ 0 Recouvrement entre 2 transactions consécutives : L allocation du bus à un nouveau maître (GNT) se fait pendant le dernier cycle de la transaction précédente. Recouvrement entre transferts au sein d une rafale : L adresse correspondant au transfert (i+1) est transmise durant le même cycle que la donnée (i) 15

Fonctionnement «asynchrone» La durée d une transaction n est pas garantie : - le nombre de cycles d attente pour obtenir l allocation du bus (entre l activation du signal REQ et l obtention du signal GNT) est généralement non prédictible -la cible peut insérer des cycles d attente si elle n est pas capable de répondre en un cycle GNT GNT AD AD0 AD1 AD1 AD1 AD2 AD3 XXX DT XXX XXX DT0 DT1 DT2 DT3 ACK ~ wait ready ~ wait wait ready ready ready ready 16

Les trois fonctions du contrôleur de bus 1/ Allocation du bus (et arbitrage entre les différents maîtres, en cas de requêtes simultanées). 2/ Décodage des bits de poids fort de l adresse, et sélection de la cible concernée par la transaction. 3/ Gestion «d un chien de garde» permettant de terminer la transaction, lorsque la cible sélectionnée ne répond pas. 17

Allocation du bus Le mécanisme d arbitrage possède une topologie en étoile. Chaque maître est connecté au BCU par deux signaux«privés» : - REQi est une demande d allocation du bus par le maître i - GNTi est une autorisation d utilisation du bus pour le maître i BCU REQ0 GNT0 P0 REQ1 GNT1 P1 REQ2 GNT2 P2 18

Automate du contrôleur de bus Le BCU est contrôlé par un automate à 4 états. IDLE REQ REQ L allocation du bus se fait dans les états IDLE et DT. AD LOCK DTAD LOCK RDY + LOCK RDY.LOCK DT RDY.REQ RDY RDY.REQ 19

Politiques d arbitrage La politique d arbitrage n est pas définie par le protocole du PIBUS : elle est spécifique à chaque système intégré. Il existe de nombreuses politiques possibles : priorité tournante (round robin) priorité fixe (cablées dans le BCU) réservation de bande passante 20