January 20, 2023 | Author: Anonymous | Category: N/A
Calculateurs Temps Réel
Cours Informatique Temps Réel
[email protected]
ENIM ENI M – Univer Universit sité é de Mo Monas nastir tir 20 2007 07 - 20 2008 08
Lotfi BOUSSAID
Cours Informatique Temps Réel
1
CalculateursPlan Tempsdu Réel cours
• Géné Généra ralilité téss sur sur les les sys systè tème mess tem temps ps ré réel el (1s (1s)) • La CAO de dess Sys Systtèm èmes es Mat atér érie iels ls (5 (5s) s) • Les Les Sys Systè tème mess d’E d’Exp xplo loititat atio ion n (2s (2s)) • La prog progrram amma matition on pa parral allè lèle le (2 (2s) s) • Le Less STR STR em emba barq rqué uéss : le less SOC SOC et le less SOP SOPC C (2s (2s))
Lotfi BOUSSAID
Cours Informatique Temps Réel
2
CalculateursPlan Tempsdu Réel cours
• Géné Généra ralilité téss sur sur le less sys systè tème mess tem temps ps ré réel el • La CAO de dess Sy Syst stèm èmes es Mat atér érie iels ls • Les Sy Systèmes d’E d’Exxplo loiitation • La progr gram amm mation parallllè èle • Le Less STR STR em emba barq rqué uéss : le less SO SOC C et le less SO SOPC PC
Lotfi BOUSSAID
Cours Informatique Temps Réel
3
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Les systè syst ème mess temps ré r éel : dé défin finiti itions ons Qu’est-ce qu’un qu’u n Système temps rré éel ?
Un système sys tème temps réel réel est un système qui contrôle cont rôle ou pilot p ilote e un Un système sys tempsàréel rée l est un système cont contrôle rôle oudepilot p ilote procédé procé détème physique une vitesse vite sse ada dapté ptée equi à l’év l’évolution olution ce e un procédé procé dé que quelles lles que soie soient nt les conditions d’utilisa d’utili sation tion
• Temps Temps réel réel strict/ strict/dur dur (har (hard d real-t real-time ime)) : le non respect d’une contrainte de temps a des conséquences graves (humaines, économiques, écologiques) : besoin de garanties • Temps réel souple/mou (soft real-time) : on peut tolérer le non respect occasionnel d’une contrainte de temps (garanties probabilistes) probabilistes)
Lotfi BOUSSAID
Cours Informatique Temps Réel
4
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
sys tèmess temps ré Les système r éel : dé d éfifini nitition onss (2 (2)
Un système temps réel est un système réactif devant fournir des sorties logiquement correctes tout en respectant strictement des contraintes temporelles explicites •
•
Tout système réactif est au minimum un système temps réel souple.
Le terme "temps réel" est généralement assimilé à "temps réel dur". Ce sont les les systèmes de de ce type qui posent des problèmes spécifiques tant d'analyse que de réalisation et de validation.
•
Le "temps réel" n'est pas un problème de de rapidité intrinsèque. Il suffit suffit de respecter les contraintes de temps imposées par l'environnement.
•
La structure embarquée ou détachée du système n'en change pas les principes. Elle n'influence que le type de solution retenue qui sera spécifique ou standard et plus ou moins réutilisable.
•
La plupart des systèmes dits "temps "temps réel" comportent à la fois des fonctions temps réel d dures ures et des fonctions temps réel souples.
•
Lotfi BOUSSAID
Cours Informatique Temps Réel
5
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Mauv uva ais ise es int i nte erp rpréta rétatition onss de d e la notio not ion n de d e temps ré r éel « Reall-time time is not re rea all-fa fast st » ou « ri rien en n ne e se sert rt d de e co cour urir ir,, il ffau autt pa part rtir ir à po poin intt »
Aller vite n’est pas l’objectif recherché recherché
Lotfi BOUSSAID
Cours Informatique Temps Réel
6
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Domaines d’application (1/2) • • •
Télécommunications mo mobiles de de 3ème génération Fonctions multimédia Grand public
Satellite Faible portée Région Grande Portée
Local Area Large région
Grande Gra nde mobili mobilité té
Lotfi BOUSSAID
Faible Faible mobil mobilité ité
Cours Informatique Temps Réel
7
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Domaines d’application (2/2)
• • •
Une Me Merc rce ede dess cla class sse e S : 65 65 pr proc oces essseu eurs rs Élec Él ectro troni niqu que e emb embar arqu quée ée : 27 27 à 30 30% % du du coû coûtt d’u d’un n vé véhi hicu cule le,, 40 40% % du du coû coûts ts (2020) [source PSA] Logiciels da dans un un vé véhicule – 1ko (1980) et 2Mo (2000 (2000)) – même tendance que l’aéronautique
Source: Sour ce: numatec numatec autom automotive otive
Lotfi BOUSSAID
Cours Informatique Temps Réel
8
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel Système Informatique
Hardware Évolution de l’architecture
Software
• Monoprocess Monoprocesseur, eur, Multipro Multiprocesseu cesseurs rs •• Scalaire, CISC CI SC,ire, , RISC RISC Scala sup superscala erscalaire, ire, vec vectoriel toriel • Van Neuman Neumannn Harvard
CAO de circuits intégrés Outils de description matériel VHDL, Handel-C, Handel-C, SystemC SystemC .. Design Des ign Reu Reuse se : IIP P
OS
Langage
• DOS, DOS, Window Windowss 9x, XP XP • Unix, Linux, Linux, HPUX HPUX ..
Assembleur, Fortran C, C++, LISP, ADA
RTOS RTLinux, µClinux, TRAI, VxWorks
Programmation parallèle V Fortran, C
Conception logicielle Matérielle CODESIGN Lotfi BOUSSAID
Cours Informatique Temps Réel
9
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Microp Mic roproc rocess esseur eurss - le 8080 •
Intel 8080 - 3/1/1974 – Mots de 8 bits – bus adresses 1 16 6 bits, bus don données nées 8 bits – 7 registres 8 bits, A à E,H,L, ⇒ BC, DE, HL 16 bits – 64 k octets adre adressables ssables – transistors rs – 6000 2 MHztransisto – ~ 0.02 mips ?
Lotfi BOUSSAID
Cours Informatique Temps Réel
10
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel Micr Mi crop opro roce cess sseu eurs rs - Le Penti Pentium© um© Pr Pro o
•
Intel Pentium Pro 27/3/95 – bus interne 300 300 bits – bus externe 64 bit – – – –
mémoire : 4 Go mémoire virtuelle virtuelle : 64 To processeur 5.5 M transistors cache intégré intégré
– 166, 180, 200 MHz MHz
Lotfi BOUSSAID
Cours Informatique Temps Réel
11
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Carte mère et Bus PC • •
Format standard – Classique (AT), ATX Supporte : – processeur (ou (ou carte fille Slo Slot1) t1) – mémoire (RAM • SIMM, (RAM, DIMM , cache, BIOS) – – – – –
“chipset” (gestion log logique ique bus) bus ISA et/ou PCI peut inclure un contrôleur SCSI cartes d’extension d’extension connecteurs divers périphériques, alimentation
Ex : carte Pentium
Lotfi BOUSSAID
Cours Informatique Temps Réel
12
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
• Vo Vonn Ne Neum uman annn MÉMOIRE MÉMOIRE
• Harvard
MÉMOIRE MÉMOIRE DONNÉES DONNÉES
Von Neumann vs. Harvard CPU CPU
IO IO
IO IO
IO IO
•••••
BUS SYSTÈME BUS INSTRUCTIONS
MÉMOIRE MÉMOIRE PROGRAMME PROGRAMME
CPU CPU
IO IO
IO IO
IO IO
•••••
BUS DONNÉES Lotfi BOUSSAID
Cours Informatique Temps Réel
13
Calculateurs Réeltèmes Temp néralités tés sur s urTemps les Systèmes Sys Tempss Réel Générali
Les processeurs CISC (Complex (Com plex Inst Instruct ructions ions Set Computer) Computer)
Les avantages • Instructions pplus lus proche prochess d'un lang langage age de ha haut ut niveau • Prog Programm rammation ation pplus lus com compact pact Écrituredd'occupation pplus lus rapide mémoire et plus éélégante légante des application •• Moins 'occupation des pro programmes grammes • Exécution nécessite moins d'octets mémoire
Les inconvénients
• beaucoup trop ddee code codess d'instru d'instruction ction différents différents • taill taillee des iinstr nstructio uctions ns éle élevée vée eett variabl variablee (1 à 15 by bytes tes – octe octets ts par instr instructio uction) n) • structure des in instructions structions non sta standardisées: ndardisées: exéc exécution ution complex complexe, e, peu perform performante ante
Lotfi BOUSSAID
Cours Informatique Temps Réel
14
Calculateurs Réeltèmes Temp néralités tés sur s urTemps les Systèmes Sys Tempss Réel Générali
Les processeurs RISC (Reduced (Red uced Inst Instruct ructions ions Set Computer) Computer) • Nette séparatio séparationn entre les instructions dd'accès 'accès mémoire mémoire et les autr autres es • Instructions sta standardisées, ndardisées, en taille et en ddurée urée d'exé d'exécution cution • Unité de dé décoda codage ge câ câblée, blée, non m micro icrocodé codéee arch architect itecture ure ppipeli ipeline, ne, su supersc perscalair alairee • Très nom nombreu breuxx rregist egistres res à usag usagee ggénér énéral al • Un ou plusieur plusieurss cache (s) interne internes(s) s(s) ainsi que des tamp tampons ons internes et un jeu d'instruction réduit aux instructions simples
Lotfi BOUSSAID
Cours Informatique Temps Réel
15
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Le pipeline (ou pipelining )
• LI : Lecture Lecture de l'Instruction l'Instruction (en anglais FETCH instruction) instruction) depuis le cache cache ; • DI : Décodage Décodage de l'Instr l'Instructi uction on (DECODe (DECODe instruct instruction) ion) et et recherch recherchee des opéran opérandes; des; • EX : Exécu Exécution tion de l'Inst l'Instruc ruction tion (EXECut (EXECutee instruc instruction tion)) •• MEM : Accès Acc mémoir mém (MEMor (ME Mory y acce aclacess) , écrit éc ritur ure e oudans ch char argem gement deres. la mé mémoi moire re ; Ecr itureeès(Write (Wr iteoire instru inestructio ction) n) de valeu vss), aleur r calculée calc ulée les regist reent gistres. ER : Ecritur
Objectif du pipeli Objectif pipeline ne : Être capable de réaliser réaliser chaqu chaquee étape étape en parallèle avec les étapes amont et aval
Lotfi BOUSSAID
Cours Informatique Temps Réel
16
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Les calculateurs Parallèles Les ordinateurs séquentiels :
Augmentation des performances 2 fois / 14 mois (Lois de Moore) Insuffisance pour certaines applications : météorologie, météorolog ie, synthèse et reconstr reconstruction uction d'i d'images, mages, simulations numériques, etc.
Déve évelop lopper per de d es calcul calculate ateurs urs para parallllèle èless
Lotfi BOUSSAID
Cours Informatique Temps Réel
17
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Les calculateurs Parallèles Applications Challenge également appelées parce qu'ellesGrand nécessitent pour leur exécution [1]: « Applications 3T »,
• 1 Té Téra ra octet fl flop opssdde (f (flo atin inggire oper operat atio ionn pe per seco cond nd)) ; eloat mémo mémoire cen centrale trale ; r se • 1 Téra octet par seconde de ban bande de passante pou pourr produire les résultats. résultats.
Ces applications ne sont réalisables actuellement qu’en faisant faisant re recours cours à un para parallélisme llélisme ma massif ssif : Plus de 800 8000 0 processeur proc esseurss GPP !!
[1] François PELLEGRINI, Architecture et systèmes des calculateurs parallèles, ENSEIRB, Octobre 2003.
Lotfi BOUSSAID
Cours Informatique Temps Réel
18
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Modèles de Calculateurs Parallèles Classification de Flynn [1] strea eam m» Architecture SISD « Single Instruction stream, Single Data str
stream » Architecture MISD « Multiple Instruction stream, Single Data stream
Lotfi BOUSSAID
Cours Informatique Temps Réel
19
Calculateurs Réeltèmes Temp Générali néralités tés sur s urTemps les Systèmes Sys Tempss Réel
Modèles de Calculateurs Parallèles Classification de Flynn [1] stream » Architecture SIMD « Single Instruction stream, Multiple Data stream
Architecture MIMD « Multiple Instruction stream, Mingle Data strea stream m»
Lotfi BOUSSAID
Cours Informatique Temps Réel
20
CalculateursPlan Tempsdu Réel cours
• Géné Généra ralilité téss sur sur le less sys systè tème mess tem temps ps ré réel el • La C CA AO de des Sy Systèmes Ma Matérie iells • Les Sy Systèmes d’E d’Exxplo loiitation • La progr gram amm mation parallllè èle • Le Less STR STR em emba barq rqué uéss : le less SO SOC C et le less SO SOPC PC
Lotfi BOUSSAID
Cours Informatique Temps Réel
21
Calculateurs Temps CAO des La CAO SysRéel Syst t èm es Matéri Matériels els
Les circuits circuits FPGA FPGA (Field (Field Programma Programmable ble Gate Arra Array) y) PLD PLD Programmable ProgrammableLogic LogicDevice Device
SPLD SPLD Simple Simple PLD PLD (PAL & GAL) (PAL & GAL)
CPLD CPLD Comp Co mple lex xx PLD PL D Comp Co mple lex PLD PL D
FPGA FPGA Field Field Programmable Programmable Gate Ga te Ar Arra Ar ray Gate Ga te Arra ray yy
SPGA SPGA System System Programmable Programmable Gate Ga te Ar Arra Ar ray Gate Ga te Arra ray yy
~~ 00 àà 550000 Gates Gates
~~ 500 50 5000 àà 30 500 30 0000 000 000 00 Gates Gates
~~ 1000 10 1000 1000 00 àà 250 250 000 000 Gates Gates
~~ 500 500 000 000 Gates Gates
Lotfi BOUSSAID
Cours Informatique Temps Réel
22
Calculateurs Temps La C CAO AO des SysRéel Syst t èm es Mat Mat ér i el s
Les différentes technologies des FPGAs Résumé de dess diffé différe rente ntess te technologie chnologiess Nom:
Reprogrammable:
Volatile:
Technologie:
Fuse
Non
Non
Bipolaire
EPROM
Oui,i, en Ou en deho dehors rs du ci circ rcui uitt
Non
UVCMOS
EEPROM
Oui,, dans le circu Oui circuitit
Non
EECMOS
SRAM
Oui,, dans le circu Oui circuitit
Oui
CMOS
Antifuse
Non
Non
CMOS
Les Fabricants XILINX, ALTERA, ACTEL, Vantis, Lattice, Lucent, Cypress, Atmel, QuickLogic, Philips ..
Lotfi BOUSSAID
Cours Informatique Temps Réel
23
Calculateurs Temps La C CAO AO des SysRéel Syst t èm es Matéri Matériels els
Architecture interne des FPGAs
Switch Matrix Slice S1 Slice S0
Synchronous Dua Dual-P l-Port ort RAM • Fa Fast st & effic efficien ientt log logic ic • Hig ighe hest st flexib flexibility ility
Slice S3 Slice S2
Powerful CLB >300 MHz Performance
BRAM
Programmabl Prog rammablee I/O I/O • 84 840 0 Mbp bps s LV LVDS
Digital Clock Ma Manageme nagement nt • phase Prec Precise isecontrol frequenc frequency y gene generati ration on and • Both Both on on-chip -chip & off-chip clock syn synchron chronization ization
EmbeddedPowerPC • 300 MHz • 420 DMIPS IPS
Lotfi BOUSSAID
Cours Informatique Temps Réel
24
Calculateurs Temps La CAO SysRéel Syst t èm es Matéri Matériels els CAO des
Les ressource ressourcess logiques logiques de base base des circuits circuits FPGAs FPGAs : • Les bloc blocss logiq logiques ues configurabl configurables es CLBs Bloc I/O
• Les blocs entrée entrée/sorti /sortiee • Les cellu cellules les d’inte d’interconnections rconnections programmables
Bloc CLB
Cellules d’interconnections PSM = Programmable Switch Matrix 10 interconnect points per matrix
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps La CAO des CAO SysRéel Syst t èm es Matéri Matériels els
ressourcess logiques Les ressource logiques de base base des circuits circuits FPGAs FPGAs : 1 CLB = 2 (4) Tranches (Slices)
LUT à 4 Entré Entrées es (Look-Up-T (Look-Up-Table) able) Une tableimplanter de transcodage combinatoire (LUT) pouvant : – deux fonctions indépendantes à 4 variables – une fonction complète à 5 variables – une fonction incomplète à 6 variables Tranche (Slice)
• Deux cellules cellules sé séquent quentielles ielles (bascule (basculess D) • Des multiple multiplexeurs xeurs de cconfig onfiguration uration
25
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps La CAO SysRéel Syst t èm es Matéri Matériels els CAO des
Exemple circuits uits FPGAs Xilin Xilinxx Exemple de circ La série Virtex de chez Xilinx compte trois modèles :
niveaux de de métallisation) métallisation) Le Virtex 2.5V Le Virtex-E 1.8V ((0.22µm, 0.18µm, 65 niveaux Le VirtexVirtex-E E 1.8V Exten Extended ded Memor Memoryy
Architecture des Virtex 2.5V et 1.8V [Xi [Xilinx00] linx00]
26
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps La CAO des CAO SysRéel Syst t èm es Matéri Matériels els
Advantages des circuits FPGA • Dél Délai ai de de conce concepti ption on • Pos Possib sibilit ilité é de rec reconf onfigu igurat ration ion • Pr Proto ototyp typage age rapi rapide de • Ré-ut Ré-utilisat ilisation ion de bibliothèque bibliothèque de composants composants (IPs) (IPs) • Fac Facilit ilité é de mis mise e en œu œuvre vre et de test test..
Meilleur compromis entre les critères de coût, de flexibi flexibilit lité é et de perform performance ance
27
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps La CAO SysRéel Syst t èm es Matéri Matériels els CAO des
Les pro progr grè ès technol techn olog ogiq ique ue des des FPG FPGAs
• Compo Composants sants toujou toujours rs pl plus us rap rapides ides • Cap Capaci acité té d’i d’inté ntégra gratio tion n plu pluss éle élevée vée Domaines d’application des FPGAs: • Prototypage rapide • Traitement d’images • Traitement du signal • Cryptographie • Réseaux informatiques • etc...
28
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps CAO AO des SysRéel Syst t èm es Matéri Matériels els La C Stratégie Straté gie de Conceptio Conception n Spécification Spécification Fonctionnelle Fonctionnelle Raffinement & Réutilisation Synthèse Synthèse et et Validation Validation
Niveau Niveau Comportemental Comportemental C, C, VHDL VHDL .... Synthèse Synthèse de de Haut Haut niveau niveau Niveau Niveau RTL RTL VHDL Cont RTL roller VHDL RTL Data r r Data Path Path -- Controlle Controlle Cont roller Synthèse Synthèse RTL RTL Niveau Niveau Logique Logique Nelist Nelist
Prototypage Prototypage
Synthèse Synthèse Logique Logique Niveau Niveau Physique Physique
29
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps CAO AO des SysRéel Syst t èm es Matéri Matériels els La C
Développement d’un FPGA Entrée schématique VHDL
Modelsim
Entrée syntaxique Langage: VHDL VHDL
Diagrammes d’états VHDL
Vérification des erreurs de syntaxe
Simulation fonctionnelle STIMULI Ou TESTBENCH
VHDL
Synthèse
Xilinx Integrated Software Software Environnementt Environnemen ISE
EDIF, XNF
Optimisation Placement / routage dans le circuit choisi
VHDL STIMULI Ou TESTBENCH
Simulation Après synthèse
VHDL, SDF
Simulation temporelle STIMULI Ou TESTBENCH
JEDEC La programmation du circuit se fait soit: • En utilisant utilisant un programma programmateur teur • En téléchargeant le code JEDEC sur l’objet technique (JTAG ou ISP)
30
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps CAO des La CAO SysRéel Syst t èm es Matéri Matériels els
Carte d’évaluation SPARTAN-3 3 connecteurs d’extensions
FPGA Spartan-3 216 Kbits Kbits de bloc RAM Horloge Horlo ge interne interne jusqu’à 500 Mhz
Mémoire SRAM
Port VGA
(256 (256 Kb x 32) 32) Intégrée Intégr ée à la carte carte
Port série Port PS2
9 Leds
8 interrupteurs et 4 boutons-poussoirs
4 afficheurs afficheurs 7 segme segments nts à Leds
31
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps CAO des La CAO SysRéel Syst t èm es Matéri Matériels els
Le VHDL VHSIC (Very High Speed Integr Integrated ated Circui Circuit) t) Hardwa Hardware re Descrip Description tion Langua Language ge
• • • • • • • •
Obje Objets ts et opér opérat ateu eurs rs de base base Logi Logiqu quee conc concur urre rent ntee VS VS syn synch chro rone ne Les « Entity » Les « Component » Les « Package » Les « Test benches » La Syntaxe Fonc Foncti tion onss Comb Combin inat atoi oire ress
• Fonc Foncti tion onss Séque Séquent ntie iell lles es
32
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps CAO AO des SysRéel Syst t èm es Matéri Matériels els La C
Analogie avec circuits logiques réels Exemple: Exem ple: Comp Comparate arateur ur 4 bits bits entity comparateur is port(( A, B: i n bit_vector(0 to 3); port EQ: out bit); en end d comparateur;
architecture arch of comparateur is begin EQ SORTIE SORTIE => SORTIE SORTIE S1 S1 S1 S1 : retrait du module Vérification que le module n'est pas utilisé. Execution Execu tion de cleanup_m cleanup_module odule.. – lsmod : liste de tous tous les modules contenus contenus dans le noyau. ●
●
●
●
●
Le Les s modules modules: RTLinux RT Linux : temps-réel. API POSIX. – rtl_sched.o scheduler – rtl_fifo.o : API API de gestion des FIFOs FIFOs temps-réel. – rtl_posixio.o : API API d'opérations bas-niveau sur les devices. – rtl_time.o : API API de gestion du temps temps (précision : nanoseconde) – rtl.o : micro-noyau micro-noyau temps-réel. L'insertion du module rtl.o rtl.o lance le noyau temps-réel. temps-réel. Les modules modules RTLinux doivent doivent être insérés insérés préalablemen préalablementt à l'insertio l'insertion n de tout module définissant des tâches temps-réel. ● ●
77
Lotfi BOUSSAID
Cours Informatique Temps Réel
78
Calculateurs Temps Less Sys Systè tème messRéel d ’Exp d’E xplo loitita atition on Le
Les Systèmes d’Exploitation Temps Réel Système ystèmess Temps Temps Réel basé sur linux l inux 1.
RTAI (Real Time Application Application Interfa Interface) ce) Départemen Départementt d'ingénieri d'ingénierie e aérospatiale aérospatiale (DIAPM (DIAPM)) de l'Ecole l'Ecole polytechnique polytechniq ue de Milan (Politecni (Politecnico co di Milano). Milano). Il intègre intègre des améliorations améliorations et des correctio corrections ns concernant en particulier les modes temps réel et la gestion des nombres flottants.
2.
µClinux (pro (prononc noncer er « you see lin linux ux ») ») est l'a l'acro cronym nyme e de Microco Microcontr ntroll oller er Linux. Linux. Le proj projet et µCli µClinux nux lancé en janvier 1998 est un portage portage de Linux version version 2.0.x originellem originellement ent sur des processeurs processeurs ne possédant posséd ant d'unité d'unité de gestion mémoire mémoire MMU (Memory (Memory Management Management Unit). Unit). Il supporte les processeurs processeurs (Motorola (Moto rola 683xx, Motorola Motorola ColdFire, ColdFire, i960 d'Intel, d'Intel, ARM7T ARM7TDMI DMI et NIOS NIOS d'Altera. d'Altera. µClinux µClinux basé sur le le noyau Linux 2.4.x est maintenant opérationnel.
Lotfi BOUSSAID
Cours Informatique Temps Réel
CalculateursPlan Tempsdu Réel cours
• Géné Généra ralilité téss sur sur le less sys systè tème mess tem temps ps ré réel el • La C CA AO de des Sy Systèmes Ma Matérie iells • Les Sy Systèmes d’E d’Exxplo loiitation • La progr gram amm mation parallllè èle • Le Less STR STR em emba barq rqué uéss : le less SO SOC C et le less SO SOPC PC
79
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel La programmation Parallèle
Un aperçu du parallélisme
Sequencement Sequencement du du travail travail d'un d'un maçon maçon travaillant travaillant seul seul
80
Lotfi BOUSSAID
Cours Informatique Temps Réel
81
Calculateurs Temps Réel La programmation Parallèle
Un aperçu du parallélisme (2)
Sequencement Sequencement du du travail travail d'un d'un maçon maçon travaillant travaillant seul seul
{{ Sequencement Sequencement du du travail travail de de deux deux maçons maçons travaillant travaillant sur sur deux deux portions portions de de mur mur séparées. séparées.
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel La programmation Parallèle
Le Calcul parallèle : qu'est ce que c'est? « Faire coopérer plusieurs processeurs processeurs pour réaliser un ca calcul lcul » Avv ant antages ages A
: • Rapidi pidité té : Pour N processeurs, processeurs, tem temps ps de ca calcul lcul divisé par N, en théorie.
Tailille le mémoire mémoir e : • Ta Pour N processeurs, on dispose de N fois plus de mémoire (en général)
Difficultés Difficul tés : • Il faut gérer le partage des tâches. • Il faut gérer l'écha l'échange nge d'information d'inf ormation.. (tâches non indépendant indépendantes) es)
82
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel La programmation Parallèle
Qu'est ce qui n'est pas du calcul parallèle. Quand les processeurs ne coopèrent pas :
Calculs monoprocesseurs séquentiels Calculs multiprocesseurs : • Exéc Exécution ution pour une sé série rie de conditi conditions ons initial initiales es différ différentes entes.. • Prob Problème lème divis divisible ible en sous sous-pro -problèmes blèmes indép indépendant endants: s: Exemple: Mouvement de N particules test dans un champ extérieur.
Une architecture architecture parallèle efficace efficace coûte cher, il faut l'utiliser à bon escient.
83
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel La programmation Parallèle
Modèle de parallélisme Ar A r c h i t ec ectt u r e m mat atér érii el elll e:
Modèle de pro programmatio grammation: n:
Le plus utili utilisé sé
Outils de parallélisation:
OpenMP ordinateur à mémoire partagée partagée
MPI ordinateur à mémoire distribuée
84
Cours Informatique Temps Réel
Lotfi BOUSSAID
85
Calculateurs Temps Réel La programmation Parallèle
Mémoire partagée / distribuée
Mémoire distribuée
Mémoire partagée (SMP) Tous les processeurs ont accès à l'ensemble de la mémoire.
Chaque processeur possède sa propre mémoire. mémo ire. Il n'a pa pass accès à celle de dess autre autres. s. ➔
Attention auxsurcoût conflits.de parallélisation. Très peu de ➔ Le plus plus so souven uventt nb proc < 32. ➔ Architecture coûteuse. ➔ ➔
Il faut gérer l'échange de messages (surcoût)
Architecture bon-marché. bon-marché. Il faut ajouter un réseau de com. performant. ➔ Nb de p proc roc ~ ilillim limité ité..
➔ ➔
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel La programmation Parallèle
Revue d'effectif 1: dans le monde Tous les ans, une liste des 500 plus gros ordinateur est publiée sur: http://www.top500.org Extrait de la liste du 8 Novembre 2004:
86
[1] Programmation parallèle pour le le calcul scientifique, scientifique, Benoit Benoit Semelin, 2005 2005
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel La programmation Parallèle
Outils de parallélisation La parallélisa parallélisation tion peutpeut-être être effec effectuées tuées à diver diverss niveaux niveaux:: Langages :
Compositio Composi tional nal C++ (C (CC++ C++)) ➔ Fortran M ➔ Hig High h per perfor forman mance ce Fort Fortran ran (HPF) (HPF) ➔ etc...
➔
Bibliothèques :
Mess Message age Passi Passing ng Interf Interface ace (MP (MPI) I) ➔ Par Parall allel el Vir Virtua tuall Mach Machine ine (PV (PVM): M): ~ obsolè obsolète. te. ➔
Directives de compilation : ➔
OpenMP
➔
Instructions Compilateurs: effica eff icacit cité éspécifiques trèss faible trè faible :constructeur. ➔
Intel Fortran/C compiler: gratuit.
87
Lotfi BOUSSAID
Cours Informatique Temps Réel
88
Calculateurs Temps Réel La programmation Parallèle
Modèle de programmation OpenMP OpenMP est un ensemble de directives de compilation compilation pour parall paralléliser éliser un code sur une architecture SMP (interfaces Fortran, C et C++) Le compilate compil ateur ur interprète in terprète les directive directive OpenMP OpenMP (si il en est capable!) capable!) Les standards d'OpenMP d'OpenMP datent de 1997, ceux d'OpenMP-2 de 2000. Les développeurs de de compilateurs les implémentent.
Modèles d'exécution OpenMP:
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel La programmation Parallèle
Com omme ment nt « fa fair iree tou tourn rner er » un co code de Op Open enM MP ? Écrire le code séquentiel (tout ou partie) Débuguer Se placer sur une machine SMP multiprocesseur Insérer les directives OpenMP Compiler avec l'option appropriée: f90 -omp toto.f90 -o toto.out Définir le nombre de CPU: exp expor ortt OMP OMP_NU _NUM_T M_THRE HREADS ADS =4
Lancer normalement: ./toto.out Débuguer... Éval Évaluer uer les perfo performanc rmances, es, en pa particu rticulier lier le « speed speedup up »: Temps exécution N procs / Temps exécution 1 proc
89
Lotfi BOUSSAID
Cours Informatique Temps Réel
90
Calculateurs Temps Réel La programmation Parallèle
Parallélisat Parall élisation ion sur archit architecture ecturess à mémoir mémoiree distribuée distribuée : Communications Temps Temps de transmissi transmission on d'un message
Sur une architecture architecture à mémoire distri distribuée, buée, les unités de calcu calculs ls doivent échange échangerr des messages. Ces communications communications ne so sont nt pas ins instantanée. tantanée. Le coût dépend du réseau de communications et de l'implémentation MPI. Détails des contributions au coût de communication. Voir graphique.
Conséquences: Il vaut mieux envoyer 1 gros message que plein de d e pe petit titss . Il faut grouper les communication!
T e m p s d e t r a n s m i s s i o n
( 1 0 -1 0 0 µ s )
Débit Dé bit (ba (bandwi ndwidth) dth) Préparation du message (Packing) Initialisation paramètres réseau
Latence
Taille des messages (1-10 Ko) Lotfi BOUSSAID
Cours Informatique Temps Réel
91
Calculateurs Temps Réel La programmation Parallèle
Modes de communications entre process Exemple de mécanisme de communication: (two-sided, buffered, synchrone)
Mode de commnications: définitions One One-side -sided d / Two-side Two-sided d: Un seul processeur gère tout les éléments de la la com / les deux processeurs interviennent, il gère chacun une partie des éléments de la com. Synchrone / Asynchrone Asynchro ne:: Le processeur qui envoi (1) attend / n'attend pas que le processeur qui reçoit (2) ait signalé qu'il était prêt. En mode asynchrone, le processeur (1) transmet les données qui sont écrites dans le buffer de réception du processeur (2). Il viendra les lire plus tard, quand le code lui
dira de faire. Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel La programmation Parallèle
MPI : Introduction MPI est une bibliothè bibliothèque de communica communication tion pour le parallé parallélisme lisme sur architectures architectures à mémoire partagée (Fortran, C,que C++).
Les standards st andards MP MPI: I: MPI 1 (1994): Le coeur de la bibliothèque - Com Commu munic nicate ateur urss - Comm Communic unicatio ations ns locales locales et globale globale - Défin Définition ition de type type de va variab riable le - To Topo polo logi gies es MPI 2 (1997): extensions et support C++ et f90 - Comm Communic unicatio ations ns ''one-sided ''one-sided'''' - Entrées-sorti Entrées-sorties es pa parallèles rallèles (non traitées ici)
Impléme mplémentations ntations gratuites:
L A M: http://www.lam-m http://www.lam-mpi.org pi.orgsur grille de PC ou architectures SMP. MPI 1 et 2 (en partie) MPICH2 MPICH2:: http://www-unix. http://www-unix.mcs.anl.gov/m mcs.anl.gov/mpi/mpich2/ind pi/mpich2/index.htm ex.htm MPI 1 et 2 (en partie) sur grille de PC ou architectures SMP.
92
Lotfi BOUSSAID
Cours Informatique Temps Réel
CalculateursPlan Tempsdu Réel cours
• Géné Généra ralilité téss sur sur le less sys systè tème mess tem temps ps ré réel el • La C CA AO de des Sy Systèmes Ma Matérie iells • Les Sy Systèmes d’E d’Exxplo loiitation • La progr gram amm mation parallllè èle • Le Less STR STR em emba barq rqué uéss : le less SO SOC C et le less SO SOPC PC
93
Lotfi BOUSSAID
Cours Informatique Temps Réel
94
Temps :Réel Les STRCalculateurs embarqués les SOC et les SOPC
Évolution des Applications Multimédia (1) De plus en plus présent dans le quotidien ..
Visiophone GSM 3G TV HD
eTV
Éducation VOD (Set (Set Top Box )
GPS
Lotfi BOUSSAID
Cours Informatique Temps Réel
95
Temps :Réel Les STRCalculateurs embarqués les SOC et les SOPC
Évolution des Applications Multimédia (2) Évolution de la demande de services en : -Télécommunication, - Multimédia, - Traitement du signal
Systèmes sophistiqués : - Puissance de calcul - Flexibilité - Consommation - Portabilité
Objectifs
Satisfaire les besoins de l’utilisateur Répondre aux exigences de ces nouvelles applications
En 2003 : 1 Milliard de téléphones portables pour 200 Millions de PC Cours Informatique Temps Réel
Lotfi BOUSSAID
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Évolution de standards de communication - GSM GPRS EDGE UMTS - Blue Blueto toot oth h 11 Mbi Mbits ts/s /s Hiper Hiperlan2 lan2 à 54 Mbits/ Mbits/ - USB USB 1 1.0 .0 USB 2.0 Firewire - Etc.
Évolution des normes du multimédia M P E E G G 2 21 Au t th h
M P E EG 7 G 7
e n e t n ti i f f i c c a at t i io n o n
D e es c r ri i p t ti i o o n d e e C o o nt e en u AV
MPEG4 Codage objet et interactivité
M P P E EG 1 G C D D V ii d d é é o o
M P PE G E 2 G 2
D V V D D , T
96
T V V H D D
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Exemple d’application Description de Contenu Audiovisuelles : Les Métadonnées
Cut A. Ghaieth
Cut
Cut Désert
Ciel
97
« Arrissala » Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel Les STRCalculateurs embarqués les SOC et les SOPC
Métadonnées = Données sur les Données !! Mouvement MovingRegionType "> Person xml:lang="en">Person 00:00:15 00:00:15 00:00:30 00:00:30 …
98
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Les contraintes de conception des SOC • Les produits ont une durée de plus en plus faible - Ré Rédu duir ire e lle e« «titime me to ma mark rket et» » - Réutil Réutilisati isation on pour conc concevoir evoir d’au d’autres tres prod produits uits
rentabiliser
99
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Réutilisation -- Approche Appro rete pouràlimiter lim iter de lesblocs coûts coût Conceptio Conceche ption nretenue d’un d’unue n SOC partir blo cssprédéfin prédéfinis is
IP : Intellectua Inte llectuall Properties
100
Lotfi BOUSSAID
Cours Informatique Temps Réel
101
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Vers la réutilisation de bloc prédéfinis (Bibliothèques, IP)
Lotfi BOUSSAID
Cours Informatique Temps Réel
102
Temps :Réel Les STRCalculateurs embarqués les SOC et les SOPC
Exploitation des ressources des nouveaux FPGA
Synchronous Dua Dual-P l-Port ort RAM • Fa Fast st & effic efficien ientt logic logic • Hig ighe hest st flexib flexibility ility
Switch Matrix Slice S1 Slice S0
Slice S3 Slice S2
Powerful CLB • >3 >300 00 MHz Perform Performan ance ce
BRAM
Programmabl Prog rammablee I/O I/O • 84 840 0 Mbp bps s LV LVDS
Digital Clock Ma Manageme nagement nt • Precise Precise frequenc frequency y gene generati ration on and phase control • Bo Both th on-chip on-chip & off-chip clock syn synchron chronization ization
EmbeddedPowerPC • 300 MHz • 420 DMIP IPS S
Lotfi BOUSSAID
Cours Informatique Temps Réel
103
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Réduction des coûts Cons onsé ééquences que qu ences de la réduct réduction ion de d es coûts coû ts de d e con conceptio ception n du ma m atériel onséque - Réduir duire e les coûts du maté matériel riel
augmente en propo proportio rtion n les coûts du logi logiciel ciel
– 80% du coût coû t de développeme développement nt d’u d’un n SO SOC Ce est st aujourd’ aujourd’hui hui dû au logi logiciel ciel
- Le –coût du test croî t cation de façon façon expone exponentie ntielle lle Equipes Equipe sd de ecroît vé vérifi rification 2 foi fois s pl plus us no nombreuses mbreuses que ce celles lles de déve développeme loppement nt
Lotfi BOUSSAID
Cours Informatique Temps Réel
104
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
La révolution 1400
-
Le nom nombre bre de SOC ve vendus ndus croî croîtt de 30% pa parr an an
- Pré révisi vision on de ré répa partit rtition ion par par secte secteur ur pour 20 2004 : – Communicati Commun ication on : 44% 44% (cro (croiss issance ance 24% 24% par an) – Ele Electr ctroni onique que grand publi pu blicc : 28 % (cro (crois issance sance 43% 43% par an) – Le reste rest e 28 %
- Les outils de conception évoluent moins vite vit e que la technologi technologie e
1200 1000 800
Nb Soc (M)
600 400 200 0 1995
2000
2005
Lotfi BOUSSAID
Cours Informatique Temps Réel
105
Temps :Réel Les STRCalculateurs embarqués les SOC et les SOPC
Qu’estt ce qu’un systèm Qu’es systèmee embarqué embarqué sur une seule seule puce SOC SOC ? SoC
Composants sur carte CISC
Glue CAN
Glue
UART CNA
ROM RAM
Fonctions spécifiques ASIC Composants virtuels vir tuels IP ROM
RISC
ASIC ATM
CAN Cœur
RAM
FPGA
UART
CAN
DSP
RAM 1
Cœur
RAM 2
RISC
ROM
MPEG Anal An alo o
E/S
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
ntelle llectua ctuall Prope roperty rty ) Noti otion on d’I d ’IP P (Inte • Bl Bloc ocss fon fonct ctio ionn nnel elss com compl plex exes es ré réut utililis isab able less – Hard: déjà implanté, dépe dépendant ndant de la ttechnologies, echnologies, fort fortement ement optimisé – Soft: dans un langage langage de haut niveau (VHDL (VHDL,, Verilog, C++…), paramétrab paramétrables les – Firm: Constitué Constitué d’une combinaison combinaison de code RTL synthétisabl synthétisable, e, de références références de bibliothèque de l’architecture l’architecture cible et d’une Netlist Netlist au niveau po portes rtes
• Normalisat atiion des int nte erfac aces es • Envi Enviro ronne nneme ment nt de déve dévelo lopp ppeme ement nt (co(co-de desi sign gn,, co-sp co-spec ec,, co-ve co-veri rif) f) • Pe Perrform forman ance cess moye moyenn nnes es (pe (peu u opti optimi misé sé))
106
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Utitililisa satition on d’I d’ IP • Bloc ré réutilisable (I (IP) – – – – –
connaître les fonctionnalités estimer les performances dans un système être sûr du bon fonctionnement de l’IP intégrer cet IP dans le système valider le système
107
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Comme ommerce rce d ’IP ’IP « de design sign & reuse reuse »
108
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Problématique • Mod odél élis isat atio ion n des des appl applic icat atio ions ns • Cons Constr truc ucttion ion de l’ar l’arch chititec ectu ture re •• Le pr lème me par tion onne nem matio ent en tns Le prob prob problè oblè lème me du des despa comm cortititi mmun unic icat ions • Le p prroblèm lème d de e la la co consomm ommation
109
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Flot de conception Logicielle/Matérielle : Le Codesign Spécification Partitionnement Co-synthèse
Co-simulation Prototypage.
110
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Less Bus utilisé Le utilis é da dans ns les les SO SOC Le Le Bus Bus AMBA AMBA
Il comprend trois bus bu s : 1. A MB A A HB ( Ad A d v anced anc ed Hig h-p h-per erff or man c e Bu Bus) 2.
Adva Advanc nce ed Sys Syste tem m Bus Bus (AS (ASB) B)
3.
Adva Advanced nced Pe Perip riphe hera rall Bus Bus ((AP APB) B)
111
Lotfi BOUSSAID
Cours Informatique Temps Réel
112
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Less Bus utilisé Le utilis é da dans ns les les SO SOC Le Le Bus Bus AVALON AVALON
- Le bus bus Avalon Avalon est un un bus bus de chez chez Al A l t era er a util utilisé isé pour le processeu processeurr embarqué embarqué Nios OPC C Builder system d’ Al - L’outil SOP A l t er era a génère automatiquement l’ensemble du bus - Les maîtres et esclaves du du bus Avalon interagit ensemble ensemble avec une technique d’arbitrage d’arbitrage appelé Slave-Side - L’arbi L’arbitra trage ge Slave-side déte détermine rmine lequel lequel des maître maître gagne l’accès l’accès à l’esclave l’esclave à un évènement évènement ou plusieurs plusieurs maîtres tentent tentent d’accéder d’accéder au même temps temps à l’esclave.
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Less Bus utilisé Le utilis é da dans ns les les SO SOC Le CoreC onnect Le Bus Bus CoreConnect CoreConnect CoreC onnect
Il comprend trois bus : 1. PL B (Processor Lo cal Bus ) On-chip chip Periph Periph eral eral Bus Bu s ) 2. OPB (On3. DCR b u s (De Device vice Contro l Regist Regist er bus)
113
Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
Less Bus utilisé Le utilis é da dans ns les les SO SOC Le W one Le Bus Bus Wishb Wishbone Wishb ishbone one
Bus partagé
Il comprend deux interface in terfacess de bus : 1.
Maste st er Inte nterfa rf ace
2.
Sl ave ave Inte nterfa rface
114
Crossba rossbar switch switch interconn interconne ection ction Lotfi BOUSSAID
Cours Informatique Temps Réel
Temps :Réel embarqués les SOC et les SOPC Les STRCalculateurs
SoC vs SoP SoPC C • SoC – Peu évolutif – Grandes productions – Fabrication et test long et coûteux
• System on Programmable Chip – Prototypage rapide sur FPGA – – – –
Composant reconfigurable à volonté Moins de portes logiques disponible Consommation plus élevée Performances moins bonnes
115
Cours Informatique Temps Réel
Lotfi BOUSSAID
Temps :Réel Les STRCalculateurs embarqués les SOC et les SOPC
Qu’est-ce qu’un Système sur puce reconfigurable SOPC ? Multiplieurs
Resources Matérielles disponibles
MEM
Processeur SW ou HW
CPU MEM
Process HW
Resources Matérielles disponibles
Transmetteurs
Processeur Région HW reconfigurable
Process HW
Process HW
116
Lotfi BOUSSAID
Cours Informatique Temps Réel
117
Temps :Réel Les STRCalculateurs embarqués les SOC et les SOPC
Méthodologie de conception des SOPC ? Une seule Partition
* Temps de reconfiguration ** Contraintes Mémoires *** Contraintes surfaces
HW Process
Firm IP
Statique
Hard. IP Soft. IP
IP
HLE
RDP
Resources programmable
RDT
disponibles variables
HW Process
HW Process
1
Surface /Latence
T4
T41 T43 T41 T4 3 T422T4
4
Graphe de tâche
3
2
9 5
6
1
7 1
1
Partition( 1) Partition( n)
Lotfi BOUSSAID
Cours Informatique Temps Réel
118
Temps :Réel Les STRCalculateurs embarqués les SOC et les SOPC
Vérification formelle des IP µP Codeur vidéo
DSP
DRAM Réseau Intégré
ASIC A SIC
SRAM
- Vérifier Vérifier que le comport comportement ement des des IP est conform conformee aux spécifica spécifications tions - Simulation Simulation fonctionn fonctionnelle elle traditionne traditionnelle lle insuffisante insuffisante surto surtout ut pour éviter les erreurs d’incompat d’incompatibilit ibilitéé dans les SoC
Faire appel à des preuves de vérificatio vérificationn formelle ou semisemi-formelle formelle
Lotfi BOUSSAID
Cours Informatique Temps Réel
119
Calculateurs Temps Réel
Les STR embarqués : les SOC et les SOPC Vérification formelle des IP
Langage
VHDL Verilog PSL
Outil : Solver
PEC
SVE: Siemens ACL2: Texas Instrument HOL: Unive Université rsité de Camb Cambridge ridge ImPROVE-HDL : TNI-Valiosys
Méthodologie
Assertions Simples Génération d’une librairie
(Assertion + Environnement)
(Property/Environment Constraints)
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel
Les STR embarqués : les SOC et les SOPC Con oncepti ception on basé basée e Plate latefo form rme e Module CELOXICA RC203E
120
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel
Les STR embarqués : les SOC et les SOPC L’Environnement PDK Design Suite • La Bibliothèqu Bibliothèquee PSL (Platform (Platform Sup Support port Labrary) Labrary) – Virgule fixe/flottante, Prise en charge des RAM, Les Filtres FIR, Microblaze
• La Bibliothèqu Bibliothèquee PAL (Platform (Platform Abst Abstractio ractionn Layer) génériques iques (cons (console, ole, contrô contrôleur leur PS/2) – Cores génér
• La Bibliothèq Bibliothèque ue DSM (Data (Data Stream Stream Mana Manager) ger) – Assure la communication entre la partie matérielle et les parties exécutées par un processeur ex: Microblaze
• Le langage Handel-C – Le parallélisme par { }, les canaux de communication, Multi Domaines
121
Lotfi BOUSSAID
Cours Informatique Temps Réel
122
Calculateurs Temps Réel
Lesd’Architecture STR embarqués les SOC et les SOPC Modèle Générique: pour les Applications Applications Multimédia Étude de cas Réel
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel
Les STR embarqués : les SOC et les SOPC Applica App licatio tionn : Rés Résumé umé Vid Vidéo éo Effet Ef fetss de Tra Transi nsitio tionn
123
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel
Les STR embarqués : les SOC et les SOPC Prototype d’Analyse de Contenu AV Extraction d’Images Clés Flux Vidéo MPEG2
Détecteur de Cut
Détecteur de Fondu
Segmentation de la vidéo
Images Clés (Keyframes)
124
Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel
Les STR embarqués : les SOC et les SOPC Implémentation du détecteur de Cut
16 x histogrammes (Dim. 4)
Partie Contrôle
Partie Opérative
125
Schéma synoptique du détecteur de cut Lotfi BOUSSAID
Cours Informatique Temps Réel
Calculateurs Temps Réel
Les STR embarqués : les SOC et les SOPC Implantation Matérielle du détecteur de Fondu baséé sur le Filt bas Filtre re de de SOBEL SOBEL
Filtre de SOBEL
-1 -2 -1 Sx= 0 0 0 1 2 1 g ( x, y ) = f ( x, y ) * S x
+
-1 0 1 Sy= -2 0 2 -1 0 1
f ( x, y ) * S y
g 1( x, y ) = f ( x, y ) * S x g 1( x, y ) = ( f ( x, y ) + 2 f ( x − 1, y ) + f ( x − 2, y )) − ( f ( x, y − 2) + 2 f ( x − 1, y − 2) + f ( x − 2, y − 2)) g 2( x, y ) = f ( x, y ) * S y g 2( x, y ) = ( f ( x, y ) + 2 f ( x, y − 1) + f ( x, y − 2)) − ( f ( x − 2, y ) + 2 f ( x − 2, y − 1) + f ( x − 2, y − 2))
126
G1( Z ) = ([1 + Z 1 ].[1 + Z 1 ] − Z
[1 + Z 1 ].[1 + Z 1 ]). F ( Z ) G 2( Z ) = ([1 + Z N ].[1 + Z N ] − Z 2 [1 + Z N ].[1 + Z N ]). F ( Z ) −
−
−
2 N
−
−
Lotfi BOUSSAID
−
−
−
−
−
Cours Informatique Temps Réel
Calculateurs Temps Réel
Les STR embarqués : les SOC et les SOPC Implantation Matérielle du Détecteur de Fondu
Soluti Sol ution on 1 : Filtre Filtre de SOBE SOBEL L
127