Vous êtes sur la page 1sur 39

ELEC 222

Bases d'architectures des systmes lectroniques

page 1

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Architecture gnrique Test Traitement Mmoire Energie Communications


Intgration

Homme et Machines
page 2 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

Scurit

A ct des 3 grands blocs fonctionnels (traitement, mmoire et communication) que composent une architecture de systme lectronique, se trouvent des blocs trs importants pour la bonne marche du systme : La partie test : qui garantit la fiabilit du systme. Par exemple pour les ASICs il faut utiliser des structures de Scan Path pour gnrer des vecteurs vrifiant lintgrit des quipotentielles aprs la fabrication du circuit. La partie nergie. Qui permet dalimenter le systme den faon optimale, cest--dire en ayant la consommation de puissance minimale. Cette partie peut consister en une optimisation architecturale ou bien un bloc spcifique contrlant dynamiquement lalimentation de blocs fonctionnels comme cest le cas dans les appareils portables avec les mises en veille des blocs forte consommation. Le bloc intgration qui doit faciliter et/ou respecter la compatibilit de lenvironnement dans lequel le systme va sinsrer. Cette partie concerne principalement le bloc communication ou il est question de respecter des caractristiques lectriques et des protocoles de communication. Le bloc scurit qui permet doit protger la fois au sens du piratage et au sens cryptographique quand le systme traite des informations confidentielles (cas des cartes puces)

Le types de signaux
Signaux de contrle Horloge
- Indispensable pour l'volution des calculs

Reset
- Indispensable pour le dmarrage

Commandes
- Gnres pas les machines tats

Donnes Donnes effectives traits Pointeurs de donnes (adresses) Indicateurs

page 3

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Tout systme lectronique dispose d'au moins 2 signaux de commandes que sont l'horloge et le Reset. Le reset fixe ltat initial des machines tats des contrleurs, alors que lhorloge fixe le cadencement. Le fonctionnement synchrone permet de fiabiliser le traitement par la simple connaissance du chemin critique entre 2 registres (voir la leon sur la logique synchrone) Les signaux de commandes sont gnrs et utiliss dans les contrleurs qui sont des machines tats spcifiables par des graphes dtats. Les donnes sont gnres et utilises dans les chemins de donnes data path composs doprateurs pilots par des signaux de commandes

Rappel de la logique synchrone

1 seule horloge de priode T Calcul fiable si :


T > tco + tcrit + tsu tco > th (toujours garanti)

tsu th

H D

T
tco tcrit tsu
D

Il suffit de connatre Tcrit !


H1

page 4

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Le fonctionnement synchrone permet de fiabiliser le traitement par la simple connaissance du chemin critique entre 2 registres (voir la leon sur la logique synchrone)

Gnration dhorloge
gain A Dphasage le systme oscille si
t

A=1

= 180
1 2t 1 2

le systme oscille la frquence


t

le systme oscille la frquence (impdance nulle) L


C

LC

la frquence est plus stable avec un quartz qui a un facteur de qualit suprieur

page 5

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

La thorie des systmes asservis nous dit qu'un systme en "boucle ferme"est instable si son gain en "boucle ouverte" est suprieur ou gal 1 quand sa phase est de 180 . (critre de stabilit de Nyquist). Lorsque le gain est prcisment gal 1 une certaine frquence o la phase vaut 180 , le systme oscille cette frquence. C'est ce principe qui est gnralement utilis pour les oscillateurs. Lorsqu'on reboucle sur lui-mme un inverseur de temps de propagation t, il est facile de montrer sur un chronogramme que le systme oscille la frquence 1/2t. Les temps de propagation tant trs dispersifs, il est difficile dobtenir une frquence prcise. Un circuit rsonant LC a une impdance nulle sa frquence de rsonance, ce qui permet dosciller cette frquence. Les bobines utilises pour linductance L ont une rsistance R non ngligeables, ce qui engendre une frquence de rsonance peu stable. Le cristal de quartz a un modle lectrique correspondant un circuit lectrique LC avec un trs bon facteur de qualit L/R. Ce dispositif est trs utilis comme gnrateur dhorloge dans les systmes lectroniques.

Synthse dhorloge Principe : systme asservi en phase


CLK ref

/Q

CLK_OUT

Phase Locked Loop

Fout=P/Q fref

/P

compensation le "skew" d'horloge multiplication de la frquence si diviseur dans la boucle de raction

page 6

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Les boucles verrouillage de phase ou Phase Locked Loop PLL permettent de synthtiser un signal dhorloge la frquence voulue. Lhorloge de rfrence peut tre gnre laide dun oscillateur quartz. Elle est compare la sortie de la PLL. Ceci constitue un systme asservi ayant pour but de minimiser lerreur de phase entre lhorloge de rfrence et lhorloge gnre. Cette erreur est ensuite moyenne et pilote une VCO Voltage Control Oscillator gnrant lhorloge de sortie. Quand la PLL est verrouille, lhorloge de sortie la mme phase que lhorloge de rfrence. Ceci permet de compenser le skew , ou dphasage de lhorloge utile, qui est du sa forte charge pour piloter les bascules D du circuit. En utilisant des diviseurs de frquence sur lhorloge de rfrence (facteur Q) et dans la boucle de retour de lhorloge de sortie (facteur P), la frquence de lhorloge de sortie est gale P/Q la frquence de lhorloge de rfrence.

Distribution de lhorloge

Rail d'horloge

Arbre d'horloge

page 7

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Une horloge a une charge trs leve dans les circuits. Elle peur atteindre des dizaines de milliers dentres de bascule. Les mthodes pour diminuer linfluence de cette charge sont soit : Utiliser un amplificateur (buffer) bas sur des paires CMOS surdimensionnes et une quipotentielles dhorloge large donc moins rsistive. Utiliser un arbre dhorloge gnrant des quipotentielles diffrentes mais quilibres en charge de faon avoir des quitemporelles .

Dmarrage du systme
RESET synchrone :
RESET_N
D

RESET_N
D

mise 0
RESET asynchrone :
D

mise 1
RESET_N
prn

RESET_N

clrn

Exemple de circuit de RESET :


Vcc

mise 0

mise 1

s1
trigger de Schmitt

RESET_N

s1

RESET_N

seuil

page 8

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Le systme lectronique ncessite un signal spcifique dinitialisation : le RESET. Il correspond une quipotentielle particulire. Celle-ci peut agir dune faon synchrone sur lentre D de la bascule mais il est plus judicieux dutiliser une entre asynchrone (mise 1 : preset ou mise 0 : clear) des bascules D. Les bibliothques ce cellules ASIC et FPGA dispose gnralement de ce type de bascule. Lutilisation des entres asynchrone est rserve au RESET et il est vivement recommand de ne pas utiliser de la logique sur ces entres qui au moindre parasite risquent de rinitialiser la bascule. Le RESET est gnr automatiquement la mise sous tension. Pour rgler son temps dactivation ncessaire ltablissement de lalimentation, un circuit RC est utilis. Un comparateur hystrsis (Trigger de Schmitt) permet davoir un bel chelon sur la sortie RESET. Lhystrsis vite linfluence du bruit thermique qui peut donner lieu des oscillations lorsque le RESET atteint le seuil de comparaison. Certains systmes disposent dun bouton poussoir pour rarmer manuellement le systme. Cest le cas pour certains ordinateurs PC.

Problmes de dmarrage
Oubli du Reset sur les machines tat la variable d'tat est initialise sans condition sur le Reset. La simulation ne dtecte pas le problme et le circuit dmarre dans un tat quelconque. Les contrleurs peuvent ne pas dmarrer en mme temps cause des diffrences de phase clk/reset
CTR CTR A A CTR CTR B B CTR CTR C C

N-RESET CLK

Phase = -1
page 9 Dpt COMELEC / Groupe SEN

Phase = +1

ELEC 222 Architectures et FPGAs

Certaine prcautions doivent tre prises pour dmarrer correctement un systme. Un contrleur (ou machine tats) doit imprativement tre initialis avec le RESET. Si ce nest pas le cas, le systme risque de dmarrer dans un tat qui nest pas fonctionnel ou qui nest pas celui de ltat initial de la machine tats. Comme le RESET a une charge trs leve, il existe un risque sur la cohrence du dmarrage des diffrents contrleurs du systme. Le RESET peut arriver juste avant le front dhorloge pour certains et juste aprs pour dautres. Il existera alors un cycle dhorloge dcart entre eux.

Stratgies pour bien dmarrer


Utilisation systmatique du Reset sur tous les processus de contrle
commandes

Contrle centralis

Contrleur Contrleur unique unique

Bloc Bloc A A Bloc Bloc B B Bloc Bloc C C

N-RESET CLK

Contrle distribu avec resynchronisation Bascule


GLOBAL

CTR CTR A A

CTR CTR B B

CTR CTR C C

N-RESET CLK
page 10 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

Pour viter le problme prcdent; les solutions consistent : Centraliser le contrle, ce qui nest possible que pour les petits systme Auto synchroniser les contrleurs entre eux. Synchroniser le RESET avant de lutiliser. Cette solution simple est souvent utilise. Il faut toutefois vrifier que le RESET a le temps de se propager durant une priode dhorloge car il est trs charg.

Unit de traitement
traitement traitement mmoire mmoire

communication communication

entres : modes et indicateurs

donnes entrantes

actions

partie contrle

partie oprative

Signaux de contrle

donnes sortantes

page 11

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Le traitement est compos de la partie contrle pour gnrer les signaux de commandes et de la partie oprative pour traiter les donnes. Les systmes lectroniques de contrle pur (robots, automates) nont pas ou peu de donnes traiter. Ils gnrent des commandes pour les actionneurs lectromcaniques.

15

Les types de traitement

logiciel
Mmoire Mmoire instructions instructions Mmoire Mmoire donnes donnes

Matriel
Mmoire Mmoire donnes donnes

processeur
Interface Le contrle peut tre modifi par les instructions :

Contrleur

Partie Oprative

Interface Le contrleur est optimis Plusieurs oprations peuvent avoir lieu en mme temps

Flexibilit Temps de dveloppement


page 12 Dpt COMELEC / Groupe SEN

=> Performances

ELEC 222 Architectures et FPGAs

Les 2 types de traitement reposent avant tout sur des technologies lectroniques. Un traitement logiciel utilise un processeur alors quun traitement matriel utilise un contrleur spcialis. Le traitement logiciel est par essence trs flexible car il est facile de changer les instructions et leur squence. Le gnie logiciel permet des temps de dveloppement trs courts. Le traitement matriel permet dobtenir des performances trs suprieures du fait que le contrle est spcifique et les oprateurs peuvent tre utiliss en parallle.

Machine tats

Gnre les signaux de contrle :


Machine squentielle synchrone tats finis tat futur
entres Logique
H

tat prsent
registre
D

Logique

sorties

Registre des variables internes

Machine tats de Moore : sorties = f(tat) Machine tats de Mealy : sorties = f(entres,tat)

page 13

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Rappel sur les machines tats qui constituent la partie contrle des systmes. L intelligence du contrleur vient de son calcul squentiel qui dpend des entres et des tats passs du circuit. Une machine tats est un circuit squentiel possdant des variables internes dont les valeur illustrent l tat du circuit. Pour un systme synchrone, ces variables internes sont stockes dans un registre dtats et elle servent dentres la fonction de calcul de ltat futur qui va devenir ltat des variables internes au prochain front dhorloge. Les sorties de la machine tats dpendent des variables internes (Machine de Moore) ou des variables internes et des entres (Machine de Mealy)

Graphe d'tats
spcification d'une machine tats par graphe : 1
e=0

2
condition de transitions sur les entres Les sorties sont indiques sur les tats

3 4
S=1

Le graphe doit tre : complet : pour chaque tat conditions = 1


Non contradictoire : ij!=iCiCj=0
page 14 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

La spcification par graphe ncessite des vrifications fonctionnelles garantes de la spcification du systme. Dautre part le graphe doit respecter ces 2 rgles : La compltude : Tout tat actif doit donner lieu un passage un autre tat (ou passage dun jeton ). Il faut donc que toutes les combinaisons dentre dfinissent le futur tat sinon le jeton risque dtre perdu et la machine peut se bloquer. La non-contradiction. La passage dun tat doit se faire vers un unique tat. Le fait davoir plusieurs jetons simultanment rend le systme non fiable. Dans les systmes complexes, les machines tats peuvent tre architectures de faon hirarchique.

Exemple de machine tats Graphe d'tats


MON DES
haut m d

Codage des tats


"one hot": 1tat sur 4 bits Q3 Q2 Q1 Q0 S0=0001 S1=0010 S2=0100 S3=1000
bas
D Q

m='1'

S0
bas='1' DES='1' d='1'

S1

MON='1' haut='1'

S3

S2

quations des sorties :


MON = Q1 DES = Q3

Schma logique

m
D Q

MON

quations des tats futurs :


D1 = Q0.m + Q1. /haut D2 = Q1.haut + Q2. /d D3 = Q2.D + Q3. /bas D0 = Q3.Bas + Q0. /m

haut
D Q

d
D Q

DES

clk N_reset

page 15

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Dans cet exemple, le codage One hot est choisi. Les quations illustrent la facilit dobtention des rsultats avec ce type de codage, au dtriment du nombre de bascules. Lutilisation des langage VHDL ou Verilog avec des outils de synthse vite au concepteur les tapes de choix des bits et de codage.

Machine tat programmable : Squenceur


Le squenceur ou "Automate" est une machine tats de MOORE o un compteur indique ltat courant
Instruction :

Mmoire programme action Adresse de saut sorties


adresse

tat entres

compteur
+1,saut

commandes

page 16

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Le squenceur est une machine tats de Moore gnrique dont le registre dtat est un compteur qui peut tre incrment ou charg par une nouvelle valeur. Ce compteur pointe dans une mmoire sur une instruction qui contient laction effectuer (+1 ou saut) en fonction des entres et ladresse de saut dans le cas dun saut. Linstruction a galement un champ pour les sorties servant piloter des actionneurs extrieurs. Lensemble des instructions sappelle un programme et le compteur sappelle le compteur de programme ou PC. Cette architecture sinspire de la fameuse machine de Turing o le ruban est remplac par une mmoire lectronique. Cette architecture de squenceur sappelle aussi automate programmable. Elle est trs utilise en lectromcanique pour piloter des robots industriels.

Processeur
Architecture mmoire unique (Von Neumann) ou spare (Harvard) :

Mmoire programme
Action Sur PC
Adresse de saut ou mode d'accs aux donnes

Mmoire donnes donne

opration
Adresse donne

REG. INSTR.

Adresse instruction contrle


PC

Dcodage Dcodage contrle contrle

REG ADRESSE

REG DATA

Compteur Compteur Programme Programme

adresse adresse donnes donnes

Unit Unit de de calcul calcul

page 17

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Larchitecture Von Neuman oblige aller chercher successivement en mmoire linstruction puis la donne. En disposant de 2 mmoires respectives pour les instructions et les donnes, il devient possible de parallliser les accs et donc daugmenter les dbits de calcul. Cest le but de larchitecture Harvard qui est utilise dans tous les processeurs performants.

Partie oprative data flow


Gestion du flux entrant
Contrleur Contrleur Centralise Centralise ou ou distribu distribu

Gestion du flux sortant

registre Donnes_in
D D D

Donnes_out

Traitement en pipeline Contrle simple

page 18

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Dans le cas dun traitement d'un flux de donnes, les structures en pipeline sont appropries. Le contrle est en gnral assez simple. Il peut lui-mme tre distribu en pipeline et tre associ chaque oprateur.

Partie oprative Control Driven


donnes

commandes

contrleur
H

Contrleur centralis complexe squentialisation des oprations Utilis dans les processeurs

page 19

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Lapproche "control driven" consiste piloter le cur opratif par un contrleur unique qui dcide du type dopration et de laiguillage des donnes. Cette approche est celle quon retrouve dans les calculateurs gnriques et les microprocesseurs avec lunit arithmtique et logique.

Mmoire
Principaux types
traitement traitement mmoire mmoire

communication communication

Type DFF SRAM DRAM FLASH

Accs direct adresse adresse adresse

Vitesse Densit volatilit **** *** ** * ++ +++ ++ Y Y Y N

techno

page 20

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Les principales mmoires sont listes dans le tableau. Chaque type a son propre intrt : DFF : accs individuel et rapidit SRAM : rapidit et densit DRAM : densit FLASH : non volatilit

Blocs mmoire
traitement traitement mmoire mmoire

donne crire
communication communication

lecture/criture adresse n

mmoire mmoire

donne lue 2n mots de donnes


RAM

ROM 0 criture: Mask ROM Plusieurs critures : EPROM EEPROM 1criture : FLASH OTP ROM SRAM

Non volatiles :
DRAM NVRAM MRAM FRAM Holographique

page 21

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

La mmoire lectronique stocke 2^n mots de m bits. Un seul mot est accd la fois. Chaque mot est donc associ une adresse. La mmoire agit comme une fonction combinatoire sur les bits d'adresse en lecture. En criture il faut de plus activer le signal de commande dcriture et lui fournir la donne crire. Les mmoires rcentes sont synchrones et ont une horloge en entre. Cela simplifie beaucoup le contrle qui doit juste satisfaire la contrainte du chemin critique par rapport la priode d'horloge : Tcrit < Th

Mappe mmoire
indique les champs dadresse mmoire dans un systme Chaque botier a son "Chip Select"
mmoire adressable
LSBs adresse FFFF

mmoire MEM 1

9FFF

MEM 1
9000

MSBs adresse

dcodeur

CS

donnes
3FFF

LSBs adresse

mmoire MEM 2

MEM 2
3000

MSBs adresse

dcodeur

CS

0000
page 22 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

Un systme lectronique utilisant un champ mmoire, comme un microprocesseur, doit avoir une mappe mmoire correspondant aux zones dadresse des diffrents lments. Une faon de dissocier 2 lments, comme par exemple des botiers mmoire, est de piloter diffremment un signal dentre souvent appel "chip select" CS. Ce CS fait lobjet dun dcodage sur les bits de fort poids MSBs de ladresse alors que le botier reoit les bits de faible poids. Si on considre un systme disposant de 16 bits dadresse, la mappe mmoire se situe entre 0x0000 et OxFFFF. Si on veut quune mmoire de 4K octets (donc 12 bits dadresse) soit situe dans la zone 0x9000 0x9FFF, Le CS doit correspondre au dcodage des 4 MSBs la valeur 9.

Principales technologies silicium


EEPROM, FLASH : base sur les transistors grille flottante
grille flottante grille polysilicium drain
N+ N+

oxyde

SRAM : CMOS

vue en coupe

DRAM : capacit grille d'un transistor MOS => ncessit de rafrachissement mais capacit x4

page 23

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Les principales technologies sont la mmoire ROM ou plus rcemment FLASH , la RAM statique SRAM et la ram dynamique DRAM. La mmoire FLASH utilise des transistors double grille avec grille flottante. Les charges injectes dans la grille flottante sont captures et peuvent rester quelques annes. La mmoire est dite non volatile. La mmoire SRAM repose sur un systme stable assur avec 2 inverseurs reboucls sur eux-mmes. 2 transistors de commande de part et d'autre permettent l'criture et la lecture. La mmoire DRAM est la capacit grille d'un transistor MOS. Cette petite capacit se dcharge assez vite et un systme de rafrachissement est ncessaire. Les mmoires SRAM et DRAM sont volatiles. La mmoire DRAM est optimale en terme de taille (1 point=1 transistor) mais est plus lente. De gros progrs ont t fait sur les interfaces des mmoires de faon acclrer les dbits. Par exemple la mmoire FLASH est crite par secteurs de donnes. De mme la mmoire DRAM, assez lente en accs alatoire devient rapide si toute une range est prcharge dans une mmoire rapide et accde en rafale.

Canaux de tranmission locaux


traitement traitement mmoire mmoire

communication communication

point point

Bus
1 seule connexion
ncessite un arbitrage transfert simultan entre 2 lments seulement

C2 =
page 24

n(n-1) connexions 2

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Il existe de nombreuses faons de faire communiquer les lments d'un systme lectronique entre eux. Les liaisons "point point" sont simples mettre en uvre mais il faut de nombreuses liaisons pour chaque lment. La contrainte de modularit et d'intgration favorise les liaisons de type "BUS" ou un ensemble d'quipotentielles est commun tous les lments. Le prix payer pour ce gros avantage est le fait qu'une seule communication est possible la fois. D'autre part si plusieurs lments veulent prendre le bus, il faut un arbitre qui dcide des priorits donner et indique le "Matre" du bus.

Transfert sur un bus


Ncessit dassocier un champ dadresse un lment. chaque lment a son propre dcodeur dadresse gnrant un CS Espace adressable soit dans la mappe mmoire soit dans la mappe E/S (n'existe pas toujours)
matre matre du du bus bus

esclave esclave 1 1

esclave esclave 2 2

esclave esclave 3 3

esclave esclave 4 4

Bus de donnes Bus dadresses


bus de contrle :
horloge, activit du cycle de transfert, direction des transferts (lecture/criture), gestion du protocole dchange

page 25

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Les lments sur un bus ont leur propre champ d'adresse correspondant l'activation de leur "Chip Slect" . Quand un matre dispose du bus, il doit prsenter l'adresse de l'"esclave" vis sur le bus d'adresse, le type de transaction sur le bus de commandes, et les donnes en criture sur le bus de donnes ( ou attendre les donnes s'il s'agit d'une lecture).

Sorties 3 tats et "open drain" Modles fonctionnels des sorties de portes logiques :
sortie classique
Vdd

open drain
{0,Z}

Vdd

trois tats
{0,1,Z}

{0,1}
e s

OE
s e
e oe

e s
s

page 26

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Les sorties d'un systme lectronique se font d'une faon traditionnelle en CMOS avec un rseau de transistors P tirant 1 et un rseau dual de transistor N tirant 0. Pour relier les sorties entre elles, ce qui n'est pas possible en sortie CMOS, il peut tre intressant d'enlever le rseau de transistor P. La sortie prend 2 tats 0 et Z; Le Z symbolise l'tat "haute impdance" o la sortie n'est force aucun potentiel. Ce type de sortie s'appelle sortie "Open Drain". Une autre type de sortie est la sorties 3 tats qu'on peut symboliser comme un sortie CMOS avec un transistor supplmentaire en srie pour permettre un 3me tat qui est Z. Cette sortie a donc un signal de commande "Output Enable" OE autorisant soit la sortie CMOS classique 2 tats, soit la mise en tat haute impdance Z. Ce type de sortie se dit aussi "buffer 3 tats"

Intrt du 3 tats pour les bus


Ncessit dune logique 3 tats pour assurer la bidirectionnalit du bus : 1 seul buffer doit tre actif sinon conflit.

criture
matre matre du du bus bus

1 0
OE

esclave esclave 1 1
n_CS n_CS

0 0
OE

esclave esclave 2 2 n_CS n_CS

1 0
OE

esclave esclave 3 3
n_CS n_CS

OE

Bus de donnes
page 27 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

Les sorties 3 tats permettent les transferts bidirectionnels de donnes sur un bus. Quand un matre crit l'esclave n 2, seul le sign al OE du matre doit tre actif.

Intrt du 3 tats pour les bus

lecture
matre matre du du bus bus

1 0
OE

esclave esclave 1 1
n_CS n_CS

0 1
OE

esclave esclave 2 2 n_CS n_CS

1 0
OE

esclave esclave 3 3
n_CS n_CS

OE

Bus de donnes
en rsum :

OE matre = criture OE esclave_i =lecture ET CS_i


page 28 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

Quand le matre lit l'esclave n 2, seul l' OE de la sortie de l'esclave 2 est actif.

Bus multiplex
Permet d'viter les conflits potentiels Pas besoin de 3-tats Exemple : AMBA

page 29

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Intrt de l' open drain possibilit de connecter les sorties entre elles :
rsistance de tirage 1

s1 e1

s
s1 0 0 1 1 s2 0 1 0 1 S 0 0 0 1

s2 e2

porte ET cable

page 30

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Les sorties "Open Drain" permettent des connexions de plusieurs sorties. Si on relie la sortie une rsistance connecte la tension d'alimentation Vdd, l'tat Z correspondra un potentiel Vdd (donc niveau logique '1') par le biais de cette rsistance de "tirage" ou "pull up". Le signal S rsultant de cette connexion est quivalent une porte ET dont les entres sont S1 et S2. Cette proprit est trs intressante car elle permet de construire une porte ET avec beaucoup d'entres sans porte CMOS. On parle de "ET cbl" pour le diffrencier de la porte CMOS.

Exemple de sorties en open drain


signal dacquittement dun bus
ACK 1 ACK 2 ACK 3 ACK 4

ACK

matre matre

ACK 1 ACK 2 ACK 3 ACK 4


page 31

OC OC OC

ACK matre matre

1 seule quipotentielle
OC

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Dans un bus ayant un protocole asynchrone, le nombre de signaux "accus de rception" peut tre trs grand. De mme un processeur peut avoir une ligne d'interruption gnre par un grand nombre d'lments priphriques. La fonctionnalit demande est un OU logique faisant la somme des signaux issus de chaque lment. Ce OU doit avoir un nombre d'entres variable et important. L'utilisation des sortie "Open Drain" permet de raliser un ET cbl qui devient un OU cbl si tous les signaux sont en logique inverse (utilisation du thorme de De Morgan).

Protocole de communication synchrone


Lhorloge rythme les changes entre matre et esclave. Le nombre de cycle est constant
cycle lecture CLK adresse R/W mise par lesclave donne mise par le matre adresse esclave lire adresse esclave crire cycle criture

page 32

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

Le protocole utilis sur un bus est celui qu'on retrouve dans tous les systmes de communication. Il est soit direct , c'est dire sans proccupation d'acceptation de l'lment adress, ou asynchrone c'est--dire avec un change "poigne de main" ou "Handshake" pour s'assurer de la fiabilit de la transaction. Dans le cas de l'change direct, on parle plutt d'change synchrone en lectronique car l'accs dure un nombre constant de cycles d'horloge. Les 2 lments en communication se sont mis d'accord l'avance sur le nombre de cycles d'horloge ncessaire la transaction.

Protocole de communication asynchrone


Lchange est assur par un processus de Handshake, lesclave renvoie au matre soit un signal pour acquiescer ou ralentir l'change.
cycle lecture CLK matre adresse Read N_Write Donne esclave N_WAIT
page 33 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

cycle criture

adresse esclave lire

adresse esclave crire

esclave

matre

Le protocole asynchrone ncessite un signal "accus de rception" ou "feu vert" de l'lment adress vers le matre de faon s'assurer que la transaction va bien se passer. Il permet certains lments lents de faire attendre le matre. Il existe 2 philosophies; Soit ce signal en retour dit : "Je suis prt" , auquel cas il faut toujours que l'esclave gnre ce signal chaque transaction. Ou bien le signal en retour signifie "attendez !" auquel cas il n'est pas ncessaire que l'esclave gnre le signal s'il est assez rapide. Attention les protocole Asynchrone ne veut pas dire qu'il n'y a pas d'horloge. Dans l'exemple ci-dessus, il existe toujours une horloge car la logique est Synchrone mais la communication est Asynchrone.

Test
Exhaustivit du test
test test processing processing memoire memoire Energie Energie communications communications
integration integration

Electrique (testeur sous pointes) Optique Boundary scan test par JTAG pour les cartes Scan chain pour les ASICs

securit securit Homme et Machines

page 34

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

A ct des 3 blocs fonctionnels : Traitement, Mmoire et Interfaces, les blocs annexes ont d'un systme lectronique numrique visent amliorer la fiabilit, la consommation faible, la compatibilit et la scurit. Le bloc de TEST est indispensable. Il permet de garantir la qualit du produit pour : , Faire des conomies au niveau de la maintenance Avoir une image de produit de qualit (impact marketing fort) Pour un systme lectronique, l'architecture peut tre modifie de faon rajouter des blocs de test spcifiques. Les stratgies de test reposent la fois sur des tests fonctionnels (trs longs) et sur des tests d'intgrit lectrique vrifiant que chaque quipotentielle ne soit pas coupe en ou court-circuit. Une technique courante de vrification de l'intgrit lectrique consiste chaner les bascules D de faon obtenir un grand registre dcalage "scan chain". Par ce biais il est possible de rentrer des valeurs au circuit tester puis de rcuprer les rsultats sur les bascules chantillonnant le rsultat. Les outils de CAO sont capables de gnrer automatiquement les vecteurs de test pour qu'un maximum d'quipotentielles passe d'un niveau logique l'autre et que le test soit le plus exhaustif possible.

Port JTAG
Le JTAG est un contrleur interne ou "TAP controller" qui permet Test de la connectivit (par Boundary Scan testing) Accs aux resssources internes des processeur pour le dbogage Chargement de netlists pour les FPGAs Fonctions personnalises

exemple de Boundary Scan Test :


TDI TD0 TDI TD0

chip1

chip2

Line to be tested
page 35 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

Le port JTAG "Joint Test Action Group" est une contrleur grant un flux de donnes srie (TDI en entre et TDO en sortie) permettant d'effectuer diverses oprations dont celle du test pour lequel il a t conu l'origine. L'opration de test appele "Boundary Scan test" permet de tester la connectivit des composants assembls entre eux. Chaque composant a ses broches d'entre/sortie relies par un grand registre dcalage qui est lui mme reli par les broches TDI et TDO un autre circuit. Le tout constituant un norme registre dcalage. Les contrleurs JTAG ou "TAP controller" effectuent des oprations d'criture ou de lecture dans ces registres. Il est donc possible de forcer un niveau logique sur une broche de sortie et de lire le niveau sur la branche d'entre de la mme quipotentielle d'un autre composant. Si les niveaux concident, l'quipotentielle est considre intgre.

Contrainte de consommation d'nergie

processing processing

memoire memoire

test test Energie Energie

Consommation dynamique En CMOS L'essentiel de la consommation provient des courants de charge et dcharge des capacits rparties

communications communications

integration integration securit securit

Homme et Machines

Vdd

Consommation statique

Due aux courants de fuite. Quasi nulle dans les technologies >130nM mais devient non ngligeable
page 36 Dpt COMELEC / Groupe SEN ELEC 222 Architectures et FPGAs

La consommation est majoritairement due la dcharge et charge des capacits lorsque les transistors d'une paire CMOS commutent. La puissance moyenne dissipe est donc proportionnelle la frquence moyenne d'activit des quipotentielles donc la frquence d'horloge du systme synchrone. La puissance statique est quasi-nulle. Dans les technologies infrieures 100nm la proportion de la consommation statique due aux courants de fuite devient perceptible.

Contrainte d'intgration sur carte

processing processing

memoire memoire

test test Energie Energie

Grande Densit d'intgration sur circuit imprim


2*n couches de routage Composants CMS sur les 2 faces Botiers trs petits avec de + en + de broches

communications communications

integration integration securit securit

Homme et Machines

Problmes dIntgrit du signal


Interfrence entre lignes (mission/rception) Adaptation de lignes (rflxion)

page 37

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

L'intgration dans un environnement se fait tous les niveaux : mcanique, lectrique, protocolaire, logiciel, Ces contraintes sont considrer depuis la spcification du systme jusqu' l'assemblage final. Concernant l'assemblage sur circuit imprim qui est constitu de plusieurs couches de routage en cuivre, il existe de fortes contraintes de place, d'intgrit du signal et de rayonnement lectromagntique (CEM). Il est donc trs important de vrifier l'assemblage. Il faut d'abord effectuer le placement et le routage des composants puis analyser statiquement les critres de transmission sur ligne, d'interfrences et de rayonnement pour vrifier que le niveau de perturbations n'est pas critique. Ce sont les mmes problmes rencontrs dans les circuits intgrs mais avec des dimensions moindres.

Encapsulation des circuits


Plus d'E/S* en moins d'espace Rduire l'espace entre broches "pitch". : 2,54mm => 0,5 mmm Utiliser une matrice de broches plutt que sur la priphrie du boitier Utiliser les circuits "FlipChip" o les E/S sont internes la puce circuit boitier

DIP (Dual In Line Package)

QFP (Quad Flat Package)


pitch=0,5mmm

BGA (Ball Grid Array) pitch=1mmm

* Loi de Rent:
Dissipation de puissance Boitier cramique Systme de refroidissement
page 38 Dpt COMELEC / Groupe SEN

N = K.G

N=nombre d'E/S K=nombre d'entres/portes G=nombre de portes =constante de Rent dpendant de l'application~0,6 ELEC 222 Architectures et FPGAs

Les botiers ont beaucoup volu pour tenir compte de l'augmentation de la densit de portes et de l'augmentation du nombre d'entres/sorties E/S, comme l'indique la loi empirique de Rent. Les premiers botiers taient rectangulaires et disposaient de broches sur 2 cts (botiers DIP Dual In Line Package). Le fait que les broches traversent l'isolant du circuit imprim diminue la "routabilit" car toutes les couches du circuit imprim sont pnalises. Pour remdier cela les botiers ont volu pour avoir des broches soudables uniquement en surface (composants monts en surface CMS , Surface mounted devices SMD) Avec l'augmentation des E/S, les broches se sont installes sur la priphrie de botiers carrs (Quad Flat Package, 240 broches maximum ), donc avec un meilleur facteur de forme. La faible distance entre broches de l'ordre de 0,5mm diminue la fiabilit des connexions. Les botiers rcents disposent de broches disposes matriciellement sous le circuit permettant la fois une augmentation du nombre de broches et une distance entre broches suprieure 0,5mm (BGA : Ball Grid Array)

Contrainte de scurit

processing processing

memoire memoire

test test Energie Energie

Eviter le copiage
Utiliser du matriel ddi

communications communications

integration integration securit securit

Protger les communications Cryptographie : Algorithmes trs efficaces.


Matriel vulnrable car fuit de l'information par le biais de canaux physiques. Utiliser des structures rsistantes aux "attaques"

Homme et Machines

page 39

Dpt COMELEC / Groupe SEN

ELEC 222 Architectures et FPGAs

La scurit est 2 niveaux : La protection contre les copiages La protection contre l'intrusion ou l'espionnage des messages vhiculs Pour viter le copiage , le simple fait de choisir la conception d'un circuit personnalis constitue une protection par rapport une solution logicielle. Pour les FPGAs, il existe la possibilit de chiffrer la netlist. Pour la protection des communications, les algorithmes cryptographiques sont largement utiliss. Il existe cependant des vulnrabilits potentielles au niveau matriel du fait que les fonctions lectroniques dissipent de l'nergie refltant une partie du secret protger. Ces "attaques" sur le matriel sont difficiles raliser et peuvent tre contrecarres par des architectures rsistantes en cours de mise au point dans des laboratoires de recherche.

Vous aimerez peut-être aussi