cours_conception des systemes embarques
Post on 06-Jul-2015
303 Views
Preview:
TRANSCRIPT
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 1/36
- p. 1/133
RTS6: Conception et programmation deSystèmes Embarqués
cours 1: Introduction aux systèmesembarqués
Antoine Fraboulet, Fabrice Jumel, Lionel Morel, Tanguy Risset
tanguy.risset@insa-lyon.frLab CITI, INSA de Lyon
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
Plan du cours 1 (2H)
s Introduction générale aux systèmes embarquéss Architecture des processeurs embarquéss Présentation rapides du MSP430s Systèmes sur puces
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 2/36
Introduction
qUn peu d’histoire
qAujourd’hui
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
- p. 3/133
Un peu d’histoire
Introduction
qUn peu d’histoire
qAujourd’hui
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
Un peu d’histoire
s Fin du XIXème siècle : démonstration du potentiel destechnologies électroniques pour les transmissions sans fil.
s Seconde guerre mondialex Application au calcul (décryptage)x Premiers ordinateurs (ENIAC)
s 1947-1954x Invention puis commercialisation des transistors à
semi-conducteursx Les « transistors » remplacent les postes radio à tubes
s Années 60 et 70: premiers circuits intégrés, LSI
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 3/36
Introduction
qUn peu d’histoire
qAujourd’hui
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
- p. 5/133
Un peu d’histoire
s 1960-2002x Réduction des tailles de transistors (≃ 10000)x Évolution anticipée (loi de Moore)x Industrie au coeur de la croissance économique des 50
dernières annéesx Augmentation exponentielle des performances
s Puissance (Joy) :MIPS = 2année−1984
s Densité (Moore) :Transistors par puce = 2année−1964s Densité des supports magnétiques «Maximal Areal
Density» (Frank): MAD = 10année−1971
10s
“Stagnation” des performances pour la rapidité d’accèsaux disques→ RAID (multiplications des disques) etcaches.
Introduction
qUn peu d’histoire
qAujourd’hui
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
Aujourd’hui
s Circuits mixtes analogique/digital (télécommunications)s Micro-systèmes (capteurs, actionneurs intégrés)s Nano-technologies (horizon 5 à 10 ans)s Taille de gravure: 90 nms Coûts de R&D de plus en plus élevéss La demande (ordinateurs, téléphones mobiles, etc.) stagnes Peu de produits vraiment nouveaux (VHS => DVD,
caméscopes => numériques, téléphones fixes => mobiles)s Crise financière et économique des TIC
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 4/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 7/133
Processeurs embarqués
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Part de marché
s Quel est le le microprocesseur le plus vendu ?x Réponse classique: "Le Pentium: 92% du marché"
s Faux!......x En fait les Pentium ne représentent que 2% des
microprocesseurs vendus dans le monde.
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 5/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 9/133
Contradiction ?
s Alors d’ou vient la position d’Intel (16% du marché dessemi-conducteurs) ?
s processeurs: 2% du silicium, 30% des revenus
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Et au sein des processeurs
s 3 milliards de processeurs 8 bits vendus par an (8051, 6805etc.)
s 32 bits (Pentium, Athlon, mais aussi PowerPC, 68000, MIPS,ARM etc.)
s La plupart (98%) sont embarqués (3 fois plus d’ARM vendusque de Pentium)
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 6/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 11/133
Variété des processeurs embarqués
s Les applications sont plus variées que pour les ordinateurss Beaucoup de processeurs embarqués sont des processeurs
de bureau qui n’ont pas percés (MIPS, 68K, SPARC, ARM,PowerPC)
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Une image en 2007
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 7/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 13/133
Architecture "Von Neuman" ou "Princeton"
s La mémoire contient les données et les instructionss L’unité centrale (CPU) charge les instructions depuis la
mémoire.s Un ensemble de registres aide le CPU:
x Compteur d’instructions (Program counter: PC),x Registre d’instruction (Instruction register: IR)x Pointeur de pile (stack pointer: SP)x Registres à usage général (Accumulateur: A)
Memory Proc
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Architecture Harvard
s Données et instructions dans des mémoires séparéess Autorise deux accès simultanés à la mémoire.s Utilisé pour la plupart des DSP
x meilleure bande passantex Performances plus prédictibles
Proc
Memory
Memory
Data
Instruction
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 8/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 15/133
Le jeu d’instruction
s Le jeu d’instruction (Instruction Set Architecture: ISA) a uneimportance capitalex Il détermine les instructions élémentaires exécutées par le
CPU.x C’est un équilibre entre la complexité matérielle du CPU
et la facilité d’exprimer les actions requisesx On le représente de manière symbolique (ex: MSP, code
sur 16 bits):mov r5,@r8 ; commentaire [R8]<-R5
lab: ADD r4,r5 ; R5<-R5+R4
s Deux classes de jeux d’instructions:x
CISC: Complex Instruction Set Computerx RISC: Reduce Instruction Set Computer
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
CISC: Complex Instruction Set Computer
s Une instruction peut designer plusieurs opérationsélémentaires.
Ex: un load, une opération arithmétique et un store,Ex: calculer une interpolation linéaire de plusieurs
valeurs en mémoire.s Accélération par des mécanismes matériels complexess Grandes variations de taille et de temps d’exécution pour les
instructionss Résulte en un code compact mais complexe à générer.s Vax, Motorola 68000, Intel x86/Pentium
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 9/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 17/133
Exemple: instructions de l’ISA du Pentium
JE EIP + displacement
JE Condition Displacement
4 8
Call
CALL Offset
8 32
Mov $EBX, [EDI+displacement]
MOV
6 1
wd r−m postbyte
8
Displacement
8
Push ESI
PUSH Reg
5
Add $EAX, Immediate
4
ADD
Test $EDX, Immediate
1
17 32
ImmediatePostBytewTEST
4
32
Immediate
13
Reg w
8
3
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
RISC: Reduced Instruction Set Computer
s Petites instructions simples, toutes de même taille, ayanttoutes (presque) le même temps d’exécution
s Pas d’instruction complexes Accélération en pipelinant l’exécution (entre 3 et 7 étages de
pipeline pour une instruction) ⇒ augmentation de la vitessed’horloge
s Code plus simple à générer, mais moins compacts Tous les microprocesseurs modernes utilisent ce paradigme:
SPARC, MIPS, ARM, PowerPC, etc.
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 10/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 19/133
Exemple: instructions de l’ISA du MSP
15 13 12 11 1014 9 8 7 6 5 4 3 2 1 0
0 0 1 condition PC offset (10 bits)
relative Jumps
15 13 12 11 1014 9 8 7 6 5 4 3 2 1 0
opcode Dest reg. Ad Dest reg.B/W As
2 operands instruction
15 13 12 11 1014 9 8 7 6 5 4 3 2 1 0
1 operand instruction
0 0 0 00 1 opcode B/W Ad Dest reg.
Exemples:s PUSB.B R4
s JNE -56
s ADD.W R4,R4
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Le CPU
s L’unité de contrôle configure le chemin de donnée suivantl’instruction à exécuter.
s L’exécution d’une instruction est décomposée en plusieursphases d’un cycle.
PC IR
Processor
Memory
Control unit
ALU
Datapath
Register File
control/Status
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 11/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 21/133
Le pipeline RISC: exemple du MIPS
s Le pipeline dépend de l’architecture, pour le MIPS:x Instruction Fetch (IF, Fetch):
charge l’instruction dans l’IRx Instruction Decode (ID, Decode):
décode l’instruction et met en place le contrôle du cheminde donnée
x Execute (Ex): exécute le calcul dans le chemin dedonnée.
x Memory access (Mem): accède la mémoirex Write Back (WB): écrit dans le banc de registre
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Le pipeline RISC: exemple du MIPS
s Physiquement, l’architecture du processeur est organisée encalculs combinatoires pour chaque étape de pipeline,séparés par des registres.
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 12/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 23/133
Le pipeline RISC: exemple du MIPS
s Lorsque l’instruction suivante ne peut pas être exécutée toutde suite, cela crée une "bulle".
s Par exemple une addition utilisant un registre qui vient d’êtrechargé doit être retardé d’un cycle.
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Bilan architecture non pipelinée
s Exécution non pipelinée:x 5 cycles pour exécuter une instructionx ⇒ 15 cycles pour 3 instructions.
s Exécution pipelinée:x 5 cycles pour exécuter une instructionx 8 cycles pour 3 instructions.x ⇒ sans branchement, une instruction par cyclex Un branchement (conditionnel ou pas) interrompt le
pipeline car il faut attendre de décoder l’adresse debranchement pour charger l’instruction suivante⇒quelques cycles d’inactivité (pipeline stall)
x Lors d’un branchement, certain ISA autorisent l’utilisationde ces delai slots : une ou deux instructions après lebranchement sont exécutées, que le branchement soitpris ou pas (comme si elles étaint écrites avant lebranchement).
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 13/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 25/133
Parallélisme au sein du processeur
Indépendamment du pipeline, Deux paradigmes dominants:s Super Scalaire
x Duplication des unités,x Répartition au vol des instructions sur les unités
disponibles (re-ordonnancement des instructions: out of order execution )
x Exemple: le PowerPC 970 (4 ALU, 2 FPU)x Efficace mais complexifie l’unité de contrôle (problème
des interruptions)s Very Large Instruction Word (VLIW)
x Duplication des unités,x
L’ordonnancement des instructions est fixé à lacompilation (tout se passe comme si les instructionspouvait être regroupe sur 64 bits, 128 bits etc.)
x Inventé par Josh Fisher (Yale) à partir du trace schedulingx Les processeurs VLIW sont tous basés sur les
architecures RISC, avec entre 4 et 8 unités.x Exemple: TriMedia (Philips), Itanium IA64 (Intel).
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Parallélisme au sein du processeur
Une autre approche possible: instructions SIMD.s Modification du data-path pour proposer des opérations
parallèles sur 16 ou 8 bitss Exemple: Sun Visual Instruction Set, Intel Pentium MMX,
Philips TriMedias Gains importants sur certains traitements mais très peu
utilisé en pratique (difficile à inférer par le compilateur)x Librairies écrites en assembleur (programmes non
portables)x Fonction C représentant les instructions assembleurs
(compiler intrinsic )x Exemple: instruction ifir8ii R1, R2, R3 du Trimedia:
8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits
* ** *
+
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 14/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 27/133
Mémoire
s Plusieurs technologies pour les mémoires:x Mémoires statiques (SRAM): petites, rapides,
consommatrices, peu denses (chères).x Mémoires dynamiques (DRAM): grandes, lentes, très
denses, transactions chèress De plus en plus de place On-Chip pour la mémoire (dans ce
cas elles sont moins efficaces que les chips mémoire).s Ne pas oublier que le code aussi réside en mémoires Tous les systèmes ont des caches pour cacher les temps de
latence lors de l’accès à la mémoire, en général plusieursniveaux de caches: hiérarchie mémoire.
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Principe du Cache
0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1Processeur1 cycle
Cache de données (SRAM)
10−20 cycles Espacemémoireadressable
0
N−1
Mémoire principale (DRAM)
3
2
1
0
4
7
6
5
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
17
16
18
19
20
21
22
23
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 15/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 29/133
Hiérarchie Mémoire
Mémoire cachede niveau 4
Processeur /DSP /DSP
Processeur
ASIC / ASIP
contrôleurmémoire
Bus système externe
Bancs de mémoire DRAM
SOC
D I D I
Cache
de niveau 3 de niveau 2
Cache
D: cache de données
I: cache d’instructions
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Différents types de processeurs embarqués
s Beaucoup de Processeurs à usage général ayant une oudeux générations
s 4, 8, 16 ou 32 bits (taille des mots)s RISC et CISCs DSP: Digital Signal Processors ASIP: Application Specific Integrated Processor
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 16/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 31/133
68000, x86
s Famille des Motorola 68000x Un des plus vieux processeur embarqué (ex Sun, Mac)x Architecture CISCx ISA propre et les meilleurs outils de développement,
beaucoup d’utilisateurss Famille des x86
x Démarre au 8086 (Intel) puis 80286, 386, 486, Pentium, etAthlon (AMD)
x En processeurs embarqués: 5 fois moins que MIPS, ARMou 68000.
x architecture CISC, compatible avec le code du 8086x
compatibilité mais mauvaises performances
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
SPARC, 29000 et i960
s SPARCx Un des premier RISC à avoir été embarqué (pratiquement
plus aujourd’hui)x SPARC est une architecture brevetée (soft core,
Intellectuel Property: IP), plusieurs compagnies fabriquentdes SPARCs 29000 (AMD)
x Le 29000 a eu beaucoup de succès (imprimante laserApple) grâce à ces 192 registres
x AMD a arrêté la production car le développement desoutils coûtait trop cher.
s i960 (intel)x
Le i960 a été le plus vendu des processeurs embarquésau milieu des années 90 (router réseau et HP Laserjet).
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 17/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 33/133
MIPS, ARM, SuperH et PowerPC
s MIPS (microprocessor without interlocked pipeline stages)x Originellement pour les stations puissantes (SGI)x Puis, marché des consoles de jeux (Nitendo N64)x Famille très étendue: du plus gros (MIPS 20Kc, 64 bit) au
plus petit (SmartMIPS, 32 bit pour carte à puce)s ARM (Advanced RISC Machines, ex Acorn)
x Un des 32 bits embarqués les plus populaires :téléphones portables
x Faible consommationx Le successeur: StrongArm est commercialisé par Intel
sous le nom de XScale
s SuperH (ou SH: Hitachi) Utilisé dans les stations Sega et lesPDAs PowerPC autant utilisé en embarqué qu’en ordinateur
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Et les autres....
s Plus de 100 processeurs embarqués 32 bits sur le marchés Les constructeurs de FPGA proposent des soft-processeurs
pour configurer les FPGA: Nios (Altera), MicroBlaze (Xilinx)s Certain processeurs RISC (Crusoe de Transmetta) peuvent
exécuter du code CISC (Intel)x Principe: recompilation du code à l’exécution (runtime
compilation )x Gain obtenus par un mécanisme de cache, d’optimisation
poussée des portion de code répétées (boucle), et grâceau parallélisme de niveau instruction
x Réduction drastique de la consommation pour desperformances équivalentes
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 18/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 35/133
Micro-contrôleurs
s Utilisé pour le contrôle embarquéx Censeur, contrôleurs simplesx Manipule des événements, quelques données mais en
faible quantitéx Exemple: camescope, disque dur, appareil photo
numérique, machine à laver, four à micro-ondes Quelques caractéristiques fréquentes
x Périphériques présents sur le circuit (timer, convertisseuranalogique numérique, interface de communication),accessible directement grâce aux registres
x Programme et données intégrées au circuitx
Accès direct du programmeur à de nombreuses brochesdu circuitx Instructions spécialisées pour les manipulation de bits.
s Le MSP430 appartient à cette catégorie
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
DSP: Digital Signal Processing
s Utilisés pour les applications de traitement du signalx Grande quantités de données numérisées, souvent
organisées en fluxx Filtre numérique sur téléphone, TV numérique,
synthétiseur de sonss Relativement proche des GPP, mais quelques
caractéristiques en plus:x Bande passante élevée (deux bus)x Instructions dédiées pour les calculs de traitement du
signal: multiplication accumulation,x Arithmétique spécifique (mode d’arrondi)x Registres dédiés pour certains opérateurs.x Constructeurs: Texas Instrument, puis Analog Devices,
Motorola
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 19/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 37/133
Quelques mécanismes matériels utiles
s Densité de code:x La taille du code est importante pour les codes
embarqués car elle influe sur la taille de la mémoire
utiliséex Un programme C compilé pour SPARC prendra deux fois
plus de place en mémoire que le même programmecompilé pour le 68030.
x En général les code RISC sont deux fois moins dense queles codes CISC (ex: instruction TBLS du 68300: table lookup and interpolate )
x Les options de compilation doivent être utilisées avecprécaution.
x Le code est quelquefois stocké compressé etdecompressé au vol par du matériel spécifique.
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Quelques mécanismes matériels utiles
s Manipulations au niveau bit:x Utilisé pour les algorithmes de cryptage mais surtout pour
les pilotes de périphériques.x La plupart des périphériques indiquent leur état au
processeur en mettant un certain bit à 1 dans un certainregistre.x Un processeur standard doit rapatrier le mot de 32 bit,
masquer et tester à 0x Les instructions BIC, BIT et BIS du MSP430 font des
manipulation au niveau bit dans la mémoire
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 20/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 39/133
Quelques mécanismes matériels utiles
s Données non-alignésx De nombreux traitements manipulent des données de
taille non-multiple de 32 (paquets TCP/IP, video streams,
clés d’encryption, 20 bits, 56 bits)x Les processeurs RISC savent uniquement transférer des
mots (32 bits) alignés (calés sur une adresse multiple de32 bits).
x La plupart des architectures CISC (68k, x86) peuvent fairedes chargements non alignés
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Quelques mécanismes matériels utiles
s Gestion spécifique du cachex Les caches améliorent les performances mais introduisent
du non-déterminisme.x Les contraintes spécifiques des systèmes embarqués ont
entraîné des mécanismes particuliers pour les cachex On peut vouloir bloquer le cache (cache locking): forcercertaines données ou instruction à se charger et resterdans le cache (on parle aussi de mémoire scratch-pad memory ou de software controlled cache ).
x La plupart des caches utilisent une politique deWrite-Back: une donnée modifiée dans le cache n’est pasforcément immédiatement recopiée en memoire. Dans lecas de périphériques mappés en mémoire, il est
indispensable de recopier immédiatement (politiquewrite-through )
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 21/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 41/133
Quelques mots sur la consommation
s Trois composantes de la consommation d’une porte logique(inverseur)x Consommation dynamique : P dyn = C.V 2CC
(C capacité de la porte)x Consommation statique : P static = V CC .I leak
(V CC : tension d’alimentation, I leak intensité descourants de fuite)
x Consommation de court-circuit P cs = K.τ.(V CC − 2V Th)3.(K :constante technologique ; V Th:tension seuil ;
τ :temps de montée descente du signal)s Aujourd’hui (2004) P dyn ≫ P static ≫ P cs
s Demain (2007) P dyn ≈ P static≫ P cs
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Consommation d’un circuit CMOS
s Généralisation naïve en prenant en compte une activitémoyenne α (nombre moyen de portes commutant)x Consommation dynamique : P dyn = C.V 2CC .α.f
(f : fréquence du circuit)x
Consommation statique : P static = V CC .I leak.N.kdesign(N: nombre de portes, kdesign constante dépendantdu design)
s Cette modélisation est très imprécise pour un circuit dont lecomportement n’est pas stationnaire (ex: processeur)
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 22/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 43/133
Réduction statique de la consommation
s Le facteur le plus important est la tension d’alimentation(V CC ) d’abord 3.3 V puis 2.5 V. Les versions récentes deXscale (strong ARM, Intel) et les puces smartCard
fonctionnent a 0.65 Vs On peut différencier les tensions en fonction du bloc du chip:
1.5 V pour le processeur, 3.3 pour l’interface du bus et lespattes d’entrée/sortie (ex: Strong ARM de Digital)
s Plus la technologie est intégrée, moins elle consomme(capacité diminuée).
s Fréquence d’horloge peu élevée compensée par leparallélisme
s Complexité réduite des différents composants (moins deregistres, architectures RISC)
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
Réduction dynamique de la consommation
s Gestion dynamique de la fréquence d’horloges Exemple: processeur Crusoe (Transmetta)
Suppression de l’horloge sur un bloc (Dynamic clock gating )
s Gestion dynamique de l’alimentation (pas encore réalisé)
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 23/36
Introduction
Processeurs embarqués
qProcesseurs embarqués
qÉconnomie
q ISA
qPipeline
qClassification
qCharactéristiques
introduction au MSP 430
Présentation des SoC
- p. 45/133
Low Power Mode pour le MSP430
s Différent mode pour réduire la consommationx LPM0: le CPU est arrétéx LPM1, LPM2: l’horloge rapide (MCLK) est aussi arrétéex LPM3 le générateur d’horloge est arrétéx LPM4 : l’oscillateur du crystal est arrété
s Le temps de reprise est d’autant plus long que la veille estprofonde.
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500
qDocuments techniques
q
ArchitectureqPériphériques
qChaîne de développement
Présentation des SoC
introduction au MSP 430
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 24/36
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500qDocuments techniques
qArchitecture
qPériphériques
qChaîne de développement
Présentation des SoC
- p. 47/133
TI MSP430 : ez430-rf2500
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500
qDocuments techniques
q
ArchitectureqPériphériques
qChaîne de développement
Présentation des SoC
Documents techniques
s Documents du cours http://
s Manuel de programmation du MSP(MSP430x2xx_Family_User’s_Guide_(Rev._D)_slau144d.pdf)
s Manuel du MSP430F2274 (msp430f2274.pdf)
s Feuilles de schématiques User’s Manual EZ430
(eZ430-RF2500_User Guide_SLAU227A.pdf)
s Datasheet du composant radio (cc2500.pdf)s Documents IAR
x IAR compiler reference guide, ...s Site de Texas Instrument
x
Exemples de programme / drivers, Notes d’application, ...s The mspgcc toolchain:
http://mspgcc.sourceforge.net/
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 25/36
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500qDocuments techniques
qArchitecture
qPériphériques
qChaîne de développement
Présentation des SoC
- p. 49/133
Architecture du MSP
RISC−CPU
16 bit
Flash
ROMRAM
Timer
Watchdog
Adress
Data
Peripheral
Clock
Peripheral Peripheral
Peripheral Peripheral
Bus
Ctrl
Conv
Bus16
16 8
8
16 bits 8 bits 8 bits
8 bits8 bits
J T A G
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500
qDocuments techniques
q
ArchitectureqPériphériques
qChaîne de développement
Présentation des SoC
CPU RISC 16 bits
s 28 Instructions sur 16 bitss 64 Ko de mémoire adressable
s Périphériques mappés enmémoire
s 16 registres 16 bits (r0-r16)x r0: PC (Program counter)x r1: SP (Stack pointeur)x r2: SR (status register)x r3: constante 0
. . . . .
dest src
16 bit ALU
Z
C
VN
M D B M e m o r y D a t a B u s
M A B M e m o r y A d d r e s s B u s
R0/PC Program counter
R2/SR/CG1 Status Reg
R1/SP Stack Pointer
R3/CG2 Constant Gen
R4 General Purpose
R5 General Purpose
R14 General Purpose
R15 General Purpose
15 13 12 11 1014 9 8 7 6 5 4 3 2 1 0
Reserved V SCG1 SCG1 GCOS−
COFF
CPU
OFFN Z
R3: Status Register
GIE
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 26/36
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500qDocuments techniques
qArchitecture
qPériphériques
qChaîne de développement
Présentation des SoC
- p. 51/133
Periphérique intégrés
s timerss contrôleur LCDs mutliplieur cablés contrôleur de buss convertisseur analogique numérique, comparateurs ports séries
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500
qDocuments techniques
q
ArchitectureqPériphériques
qChaîne de développement
Présentation des SoC
Périphérique mappé en mémoire
s l’écriture à une certaine adresse est interprétée comme unecommunication avec le périphérique.
s Exemple : le multiplieur matérielx Accessible par des registres mappés entre les adresses
0x0130 et 0x013Fx Écriture à l’adresse 0x130, positionne le premier
opérande (unsigned mult)x Écriture à l’adresse 0x138, positionne le deuxième
opérande et lance le calculx Le résultat est à l’adresse 0x013A, sur 32 bits
s Les autres périphériques sont aussi accessibles par desregistres mappé en mémoire: les SFR (Special Function
Registers), en C:x écriture vers le périphérique: SFR = valeur
x lecture des registres du périphérique: variable = SFR
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 27/36
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500qDocuments techniques
qArchitecture
qPériphériques
qChaîne de développement
Présentation des SoC
- p. 53/133
Exemple: multiplieur cablé
int main(void) {
int i;
int *p,*res;
p=0x130;
*p=2;
p=0x138;
*p=5;
res=0x13A;i=*res;
nop();
}
int main(void) {
int i;
int *p,*res;
__asm__("mov #304, R4");
__asm__("mov #2, @R4");
// p=0x130;
// *p=2;
__asm__("mov #312, R4");
__asm__("mov #5, @R4");
//p=0x138;
//*p=5; __asm__("mov #314, R4");
__asm__("mov @R4, R5");
//res=0x13A;
i=*res;
nop();
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500
qDocuments techniques
q
ArchitectureqPériphériques
qChaîne de développement
Présentation des SoC
Mapping mémoire
s Interrupt Vector Table: indique les adresses des fonctions degestion des interruption
s Lors du Boot, le MSP va lire l’adresse 0xFFFE: handler dureset.
s Sur le MSP430F149:x 0x0 à 0x1FF:
périphériquesx 0x200 à B=0x9FF: RAM
(2Ko), Données et piled’exécution
x 0xC00 à 0xFFF: Bootmem.
x 0x1000 à 0x10FF: byteinfo. mem.
x A=0x1100 à 0xFFFF:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1Interrupt Vector Table
FLASH/ROM
RAM
0xFFFF
0xFFE0
0xFFDF
0x200
0x1FF
0x100
0xFF
0x10
16 bit peripheral Modules
6 bit peripheral Modules
Word/Byte
Word/Byte
Word/Byte
Byte
Word
A
B
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 28/36
Introduction
Processeurs embarqués
introduction au MSP 430
q introduction au MSP 430
qTI MSP430 : ez430-rf2500qDocuments techniques
qArchitecture
qPériphériques
qChaîne de développement
Présentation des SoC
- p. 55/133
Chaîne de développement
s Plusieurs configurationsx Programmation directe du micro-contrôleurx Simulation du micro-contrôleur (sans les périphériques)
s Plusieurs plateformes de développementx mspgcc (GNU)x IAR (texas Instrument)x ..
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
qQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
RTS6: Conception et programmation de Systè
Introduction aux systèmes sur puces (SoC)
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 29/36
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoCqQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
- p. 57/133
Qu’est ce qu’un SoC
s "System" : une collection d’éléments en interaction.s "On Chip" : sur un seul circuit.s
Mais tous les circuits intégrés ne sont pas des SOC, UnSOC implémente une fonction "complète"x Décodeur MPEG2 vidéo + audio + système + transport +
graphique + interface utilisateurx Terminal GSM : tout sauf la RF
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
qQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
Q’est ce qu’un SoC
s Une seule fonctionun seul programme, exécuté en boucle
s Contraintes importantescoût, consommation, taille, performance, . . .
s Prise en compte de l’environnementdoivent réagir en fonction de nombreux paramètressouvent associé à des contraintes de temps-réel
s Les éléments constitutifs d’un SOC sont "complexes",réutilisables et de nature variée :x Fonctions analogiques (convertisseurs A/N, filtres, etc.)x Fonctions numériques câblées (décodeur de Viterbi)x Fonctions logicielles (sur micro-contrôleur, DSP, RISC)x
Composants de base (mémoires)
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 30/36
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoCqQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
- p. 59/133
Exemple SoC: appareil photo numérique
CAN
UART
CCD
Lentille
preprocesseur CCD (?)
compression
JPEG (?)microcontroleur (?)
s Une seule fonction : prendre des photoss Contraintes : taille, poids, consommation
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
qQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
Autre exemple: iPaQ H5500
s Site http://www.handhelds.org/: "encourage andfacilitate the creation of open source software for use onhandheld and wearable computers"
s Adaptation de linux pour PDA
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 31/36
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoCqQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
- p. 61/133
iPaQ H5500, une fois démonté
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
qQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
Architecture carte iPaQ H5500
Cotulla Intel PXA250
ARM Xscale
SDRAM 0
SDRAM 1
SAMSUNG
S3CA400A01
(SAMCOP)
BUS
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 32/36
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoCqQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
- p. 63/133
Architecture S3CA400A01 (companion chip)
Interuption
Interface
Intel
Cotulla
(Xscale)
32 KBytes
DMA (2channel)
USB
Bridge
LED
OneWire
SD Host
FCD I/F
UART
Touch Panel I/F
ADC
DMA
PWR Man.PCMCIA
Expansion
B u s s y s t e m e ( A H B )
B u s p e r i p h é r i q u e ( A P B )
Accel I/F
LED[4:0]
DQ
SD Card I/F
FCD I/F
2
6
11
RXD[1:0]
TXD[1:0]
A D C [ 3 : 0 ]
X P . X
M . Y
P . Y
M c o n t r o l
A d d r [ 1 0 : 0 ]
D a t a [ 3 1 : 0 ]
MA[25:0]
MD[31:0]
DREQ[1:0]
nOE
RDY
CS[5:2]
CINT
nWE
DP[1:0]
DN[1:0]
Reset, PLL, VCC, MCU−CLK
Interne Buffer
Accelerometer
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
qQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
Critères de qualité de conception d’un SOC
s Métriques usuellesx Coût à l’unité: coût de fabrication d’une unité sans inclure
les coût non récurrentsx Coûts non récurrents: coût de conception d’un système
(coût de mise en place de la première pièce).x Taillex Performancex Consommationx Évolutivité: possibilité de faire évoluer le système pour en
avoir des versions dérivées.
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 33/36
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoCqQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
- p. 65/133
Critères de qualité de conception d’un SOC
s Métriques usuelles (suite)x Temps de prototypage : temps de mise en place d’un
premier système fonctionnelx Temps de mise sur le marché : système suffisamment
fiable pour être commercialiséx Maintenance : possibilité de modifications du système par
rapport à sa première versionx Fiabilité, sûreté de fonctionnement, . . .
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
qQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
Choix en fonction des contraintes
s Une grande souplesse de réalisation est possiblex Il n’y a pas de solution unique
implémentation
contraintede coût
implémenationuniquement logicielle
de performance
Performance
Coût
contrainte
uniquement matérielle
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 34/36
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoCqQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
- p. 67/133
Méthodologie de conception
Intérêts du «codesign»s Conception rapide de SoC : time to market
x Cycle de conception de haut niveau pour réduire les
temps d’estimations des solutionss Réduire la difficulté de validation et déboguage
x Réutilisation d’IPx Modules reconfigurables
s Converger vers une solution optimale en fonction descontraintes de départ
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
qQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
Méthodologie de conception
s La conception nécessite d’avoir une modélisation complètes Approche logicielle
x les objets migrent vers le HW jusqu’à ce que lescontraintes de performances soit atteintes (pour un coût
minimum)s Approche matérielle
x les objets migrent en SW tant que les contraintes deperformances restent atteintes (pour un coût minimum)
s Le meilleur partitionnement nécessite en général l’expertised’un concepteur.
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 35/36
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoCqQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
- p. 69/133
SocLib
http://soclib.lip6.fr/s Environnement de conception et de simulation gratuit et
open sources Utilise des modèles de composants écrits en SystemC
x processeurx interconnexionx périphériquesx . . .
s Utilisation d’une chaîne de compilation standard (GNU)
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoC
qQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
Organisation logicielle
s Système d’exploitation multithread : Mutek
x Gestion de l’API de thread Posixx Gestion des interruptionsx Commutation de contexte rapide
s Logiciel cross-compilé avec gccs Intégration du système avec l’applicatif à l’édition des liens
5/8/2018 Cours_Conception Des Systemes Embarques - slidepdf.com
http://slidepdf.com/reader/full/coursconception-des-systemes-embarques 36/36
Introduction
Processeurs embarqués
introduction au MSP 430
Présentation des SoCqQu’est ce qu’un SoC
qExemple SoC: appareil photo
numériqueqAutre exemple: iPaQ H5500
qArchitecture carte iPaQ
H5500qArchitecture S3CA400A01
(companion chip)qCritères de qualité de
conception d’un SOCqChoix en fonction des
contraintesqMéthodologie de conception
qSocLib
qOrganisation logicielle
qExemple d’une plateforme
soclib
- p. 71/133
Exemple d’une plateforme soclib
I
MISP 3000
D
RAM
sémaphores
Interconnexion
CacheRAM
TTY
RAM multi bancs
filtre audio
top related