Vous êtes sur la page 1sur 71

Universit Mohamed I Oujda Ecole Nationale des sciences appliques Dpartement Gnie Electrique

Projet de Fin dAnne :

Analyse des Circuits de Mesure du Capteur ISFET et Affichage des Tensions Relatives au pH sur lEcran LCD de la Carte SPARTAN3E

Ralis par :
Mr. AMEKRANE Younes. Mlle. BOUSELHAM Loubna. Mlle. RABYI Kaoutar. Mlle. YAHYAOUI Fatima.

Encadr par
Mr. B. HAJJI

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

exxv|xx
Au terme de ce travail, on tient exprimer nos sincres gratitudes, dans un premiers temps notre encadrant Mr .HAJJI pour son suivi, sa patience, et son coute lors de la ralisation de ce travail. On adresse galement nos remerciements nos enseignants et tous ceux qui ont contribu llaboration de ce travail de prs ou loin.

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Sommaire
Introduction ........................................................................................................ 4

Partie I : Principe du capteur ISFET et tude des diffrents circuits de mesure


Chapitre I : Principe et thorie du capteur ISFET
I. Principe du transistor MOSFET .................................................................................... 8 II. Principe et thorie du capteur ISFET ...................................................................... 10

Chapitre II: Conception dun MOSFET canal N adapt au capteur ISFET


I. Dtermination des paramtres du modle niveau 3 PSPICE ................................ 12 II. Conception finale ........................................................................................................ 13 III. Caractristiques du MOSFET ................................................................................... 13 IV. Caractristiques dISFET .......................................................................................... 14

Chapitre III : Etude des circuits de mesure


Introduction ....................................................................................................................... 18 I. Circuit de mesure n1 .................................................................................................. 19 II. Circuit de mesure n2 ................................................................................................. 23 III. Circuit de mesure n3 ................................................................................................ 27 IV. Tableau rcapilutatif des rsultats ........................................................................... 31

Partie II : Affichage des valeurs de tensions relatifs au Ph sur lcran LCD de la carte SPARTAN3E
Chapitre I : Prsentation de la carte FPGA SPARTAN3E
I. Introduction ................................................................................................................... 35

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

II. Composant s de la carte SPARTAN3E...................................................................... 36

Chapitre II : Principe du logiciel de synthse ISE8.1 de xilinx ...................... 38

Chapitre III : Modlisation dun CAN et affichage des rsultats sur lcran LCD
I. Introduction ................................................................................................................... 45 II. Le microcontrleur picoblaze ..................................................................................... 46 III. La conversion analogique numrique ..................................................................... 48

Chapitre IV : Modlisation du CAN et affichage des rsultats sur lcran LCD avec utilisation du picoblaze
I. Description gnrale ..................................................................................................... 57 II. Les composants de programme ................................................................................. 58

Chapitre V : Rsultat du test. ........... 62

Conclusion.65

Annexes......66

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

INTRODUCTION

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Les capteurs chimiques ISFET (Ion Sensisitive Field Effect Transistor) sont devenus aujourdhui primordiaux du fait de leurs nombreuses applications dans des domaines trs divers de recherche scientifique (fondamentale et applique). Ils sont largement utiliss dans la biologie, biochimie, mdecine, scurit, agriculture et environnement. Dans le cadre de ce projet, dans un premier temps, on sintresse ltude des diffrents circuits de mesure pour capteur ISFET, en analysant la linarit de mesure, sensibilit et effet de la temprature pour chaque circuit. Le second volet de ce projet consiste raliser un code VHDL sous loutil ISE8.1 Xilinx modlisant la conversion analogique numrique des valeurs de tension relatives au pH afin de les afficher sur lcran LCD de la carte SPARTAN3E.

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Partie I : Principe du capteur ISFET et tude des diffrents circuits de mesure

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Chapitre I : Principe et thorie du capteur ISFET

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Le capteur ISFET est issu du transistor MOSFET (Metal Oxyde Semiconductor Field Effect Transistor) dont la grille est remplace par une membrane chimiquement sensible aux ions H+, en contact direct avec la solution tudier. On rappelle dabord la structure, le principe de fonctionnement et les caractristiques du transistor MOSFET.

I. Principe du transistor MOSFET :


Dans un substrat de silicium de dopage p (cas dun MOSFET canal N) sont implantes deux zones de dopage n formant la source (S) et le drain D et aux quelles sont appliques des connexions mtalliques. La zone centrale situe entre source et drain est le canal ; une fine couche isolante surmonte le canal et la mtallisation quelle porte constitue llectrode grille qui est llectrode de contrle de la conductivit du canal.

Fig 1.1 : Structure du transistor MOSFET Lapplication dune tension positive entre la grille et le substrat produit un champ lectrique qui attire les lectrons et repousse les trous la surface du substrat. Une fois la tension est suffisante (Vgs>VT) ; un canal de type N se forme, ce dernier assure le passage du courant de la source vers le drain. Si une tension est appliques entre le drain et la source (Vds>Vgs) ; le champ lectrique est plus faible cot drain, ce qui provoque le phnomne de pincement du canal N, donc le courant du drain tend vers une valeur constante.

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Fig 1.2 : Caractristique statique dun transistor MOSFET

Le courant Ids est fonction des tensions Vgs et Vds ; on tablit que : - Pou Vds < Vgs-VT : zone linaire Ids= [Vgs VT IDS= (Vgs- VT)
Avec : = .Cox. : mobilit des lectrons. Cox : capacit de lisolant W : largeur de grille L : longueur de grille. VT=VFB + 2 F VFB : tension de bande plate. F : potentiel de fermi. QB : charge dans la couche de dpltion du substrat. VFB= SI : travail de sortie dun lectron de Si. M : travail du mtal de la grille. Qss : charge localise linterface oxyde_Si. Qox : charge localise dans loxyde

Vds] *Vds

Pou Vds > Vgs - VT : zone de saturation

Et :

Et :

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

II. Principe et thorie du capteur ISFET :

Fig 1.3: Structure du capteur ISFET La tension seuil VT devient dans ce cas en fonction des caractristiques chimiques de la solution : VFB devient : Avec : VFB= Er 0 +sol Er : Potentiel de llectrode de rfrence. sol : Potentiel du liquide. 0 : Potentiel lectrostatique qui dpend de pH de solution. + 2F VTH = Er 0 +sol + 2F) VDS ]

Donc :

IDS= VDS [ VGS- (Er 0 +sol -

On dduit le circuit lectrique quivalent lISFET :

VpH = - Er + 0 La dpendance entre pH et 0 est exprime par la thorie de site-binding :

Avec pHpzc: pH au point de charge nulle Le potentiel de rference est li la temprature par la relation suivante : Er= Avec Eabs Er : potentiel dHydrogne : potentiel relatif lelectrode de rfrence 298.16

: coefficient de temprature

10

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Chapitre II Conception dun MOSFET canal N adapt au capteur ISFET

11

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

On fait une conception qui rpond aux spcifications suivantes : Electriques : - Tension de seuil VT = 0,2 V - Polarisation lectrique: Vgs 3 V; Ids 1 mA; Vds 5V; Technologiques : - Epaisseur de loxide :Tox = 9.69 e-8m - Dopage de substrat : Nsub = 1 e15 cm-3 - Langeur du canal : L = 30 e-6 m - Largeur du canal : W =800 e-6 m - Diffusion latral dans le canal : LD = 0 - Profondeur de la jonction : Xj = 1 e-6 m - Densit des tats de surface : Nss = 1 cm-3

I.
-

Dtermination des paramtres du modle niveau 3 PSPICE :


Cox = eox/Tox avec : eox= 3.453 e-11 F/m Cox = 356, 346 e-6 F/m2

PHI = 2*UT*ln(Nsub/ni) avec : UT= 25 mV PHI = 0.4337 V

GAMMA = ((2*q*esi*Nsub)1/2) /Cox avec : q= 1.6021 e-19 C esi= 1.0359 e-10 F/m GAMMA = 511.265 e-6 V 1/2

VT0 = VFB + GAMMA*(PHI)1/2 + PHI Avec : VFB = WK (q*Nss/Cox) WK = -((eg+type.PHI)/2) 0.05 (type = +1 puisquil sagit dun MOSFET de type N ; eg = 1.115eV) VT0 = -500 e-6 V

Equations de courant Ids : Vgs VT : Ids =0

Vgs > VT : Ids = Kp.W/L.[Vgs VT ((1+FB).Vds/2)] .Vds Avec : FB= FN+ [(GAMMA.FS) /(4.PHI )] FN=( DELTA..esi)/(2.W.Cox) On fixe DELTA et ETA 0, et on fait varier Kp jusqu avoir une caractristique Ids=f(Vds) rpond aux spcifications dj cites. On trouve : Kp =22.000E-6 A/V2

12

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

II.

Conception finale :
.MODEL N-ISFET NMOS ISFET + LEVEL=3 + L=30.000E-6 + W=800.00E-6 + KP=22.000E-6 + RS=1 + RD=1.0000E-18 + VTO=-500.00E-6 + RDS=1.0000E6 + TOX=969.00E-9 + CGSO=40.000E-12 + CGDO=10.000E-12 + CBD=1.0000E-9 + IS=1.0000E-9 + RB=1.0000E-9 + PHI=.4337 + GAMMA=511.27E-6 + THETA=331.00E-6 + KAPPA=1 + VMAX=80.000E3 + XJ=1.0000E-6 + UO=400 *RG=0 *GAMMA=511.27E-6 (0,1.0000E30,1) 6 *DELTA=0

III.

Caractristiques du MOSFET :
1. Caractristique Ids=f(Vds) :

Fig 2.1 : Ids=f(Vds ) du MOSFET pour Vgs=1 , Vgs=1.5, Vgs=2 , Vgs=2.5 et Vgs= 3 =2.5

13

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

2. Caractristique Ids=f(Vgs) pour Vds=1.5V:

Fig 2.2 : caractristique Ids=f(Vgs) du MOSFET

IV.

Caractristiques dISFET :
1. Caractristique Ids=f(Vds):
PARAM ET ERS:
pH = 1

Vph

Vds M1 N-ISFET 0Vdc

- Er= 0.3V - UT= 0.025V

{-Er+(2.3*Ut*0.88*(7.5-pH))} Vg 1.5Vdc

Fig 2. 3 : Ids=f(Vds) pour pH=1, pH=4, pH=7 et pH=10

14

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

2. Effet de temprature :
a. Effet de temprature li au MOSFET : Pour pH= 4 :

Fig 2. : Ids=f(Vds) pH=4 pour T=10C, T=20C et T=30C 2.4

Le courant Ids diminue lorsque la temprature augmente. En rgion de saturation, le courant diminue de 0.024mA lorsque la temprature augmente de 10C.

Pour pH= 10 :

Fig 2.5 : Ids=f(Vds) pH=10 pour T=10C, T=20C et T=30C

Le courant Ids diminue lorsque la temprature augmente. En rgion de saturation le courant diminue de 0.015mA lorsque la temprature augme augmente de 10C.

15

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

b. Effet de temprature li lISFET:

Fig 2.6 : Ids=f(Vds) dISFET pH=1 pour T=283K et T=303K

Vout diminue par 1.949 V, lorsque la temprature augmente par 20K 20K.

16

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Chapitre III Etude des circuits de mesure

17

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Introduction
Dans cette partie, on fait ltude des circuits de mesure, en analysant la sensibilit de Vout au pH, la linarit, et leffet de temprature. Pour ltude de la sensibilit, on procde de la manire suivante : On a VpH = -Er+(2.3*UT*0.88*(7.5-pH) VpH = - 2.3*UT*0.88*pH Vout/pH = (Vout/VpH) * (VpH/pH) = - 2.3*UT*0.88*(Vout/VpH) Vout/pH = - 50.6 e-3*(Vout/VpH) Pour mesurer lactivit des ions, on utilise des circuits qui fonctionnent soit en zone linaire, soit en zone de saturation. Si on souhaite mesurer le courant drain-source Ids en fonction du pH, i.e. en fonction de VT, on fixe le Vgs et le Vds : - En zone linaire : En zone sature : Vgs VT cte ; le courant ne varie pas linairement avec la tension de seuil VT. Pour obtenir la dpendance linaire, il faut travailler avec la racine carre du courant Ids :

Si on souhaite mesurer la tension grille-source Vgs en fonction de pH (VT), i.e. de la tension de seuil VT, on fixe le courant Ids et la tension Vds : En zone linaire : - En zone sature : 1 Donc il est plus intressant de mesurer la tension grille-source Vgs parce que le signal de sortie dpend linairement de lactivit des ions quel que soit le rgime de fonctionnement. Pour ltude des circuits, on prend : Eabs Er 0.1 0.205 1

0.0014 0.88

7.5

Pour ltude en rgime linaire, on polarise le MOSFET au point M (0.8V ; 0.74mA). Pour ltude en rgime satur, on polarise le MOSFET au point M (5V ; 1.14mA)

18

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

I.

Circuit de mesure n1 : mesure de Vs Vd et Id constant


Vcc

Vph

0
{-Er+(2.3*Ut*0.88*(7.5-pH))}

N-ISFET

Vout

Id

1. Etude en rgime linaire : gime


Vcc= 0.8V Id=0.74mA

Fig 3.1.1 : Vout=f(VpH)

Sensibilit : S =|Vout/pH| : Vout/pH| Pour VpH= 100mV Vout = -3.4183V = Pour VpH= - 400mV Vout = -3.9160V Vout/VpH= (-3.4183+3.9160)/ (100+400) e-3= 0.9954 3= S= 0.9954 *50.6 e e-3=50.36 e-3V/pH = 50.36 mV/pH S=50.36 mV/PH

Linarit : Bonne

19

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Effet de temprature : Effet de temprature lie au MOSFET :

Fig 3.1.2 :Vout=f(VpH) pour T=10C, T=30C et T=50C

Vout augmente par 6.05mV lorsque la temprature augmente par 20C 6.05mV, Effet de temprature lie au capteur ISFET: On fait une analyse paramtrique dont le paramtre variable est la n temprature (T).
0

V1

PARAM ET ERS:
pH = 1 T = 300

0.8Vdc

{-(0.305+(0.0014*(T-298.16)))}

Vph1

M1 N-ISFET Out
V

Vg 0.5Vdc

Er

{(2.3*K*T*0.88* (7.5-pH))/q}

I1 0.74mAdc

Fig 3.1.3 :Vout=f(VpH) T=283K, T=293Ket T=303K

Vout diminue par 14.05mV lorsque la temprature augmente par 10 14.05mV, 10K

20

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

2. Etude en rgime satur : gime


Vcc= 5V Id=1.14mA

Fig 3.1.4 :Vout=f(VpH)

Sensibilit : S =|Vout/pH| : Vout/pH| Pour VpH= -500.704 500.704mV Vout = -6.3547V Pour VpH= 100mV Vout = -5.7535V = Vout/VpH= ( Vout/VpH= (-6.3547+-5.7535)/( (-500.704-100)e-3)= 1 3)= S= 1*50.6 e-3=50.6 e-3V/pH = 50.6 mV/pH S=50.6mV/PH Linarit : Mauvaise linarit pour VpH -460.563mV , c..d pour pH 10.5 VpH Effet de temprature : Effet de temprature lie au MOSFET :

Fig 3.1.5 :Vout=f(VpH) pour T=10C, T=30C et T=50C

21

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Vout augmente par 3.5mV,lorsque la temprature augmente par 20C Effet de temprature lie au capteur ISFET :

Fig 3. :Vout=f(VpH)pour T=283K,293K et 303K 3.1.6

Vout diminue par 9mV,lorsque la temprature augmente par 10K

22

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

II.

Circuit de mesure n2 :

4 6

V-

I1 2

OUT LM741 7 + V+ 3

Vph

0
{-Er+(2.3*Ut*0.88*(7.5-pH))}

N-ISFET 7 3 I2 2 + V+

R1 Out 6

LM741OUT
4 V-

Le courant Id est maintenu constant par la source de courant I2 et la tension st Vds est maintenu constante par la source de courant I1 et la rsistance R1.

1. Etude en rgime linaire : gime


R1= 1K I2= 0.74mA I1=0.8mA

Fig 3.2.1 :Vout=f(VpH)

Sensibilit : S =|Vout/pH| : Vout/pH| Pour VpH=0mV Vout = -1.1789V Pour VpH= - 400mV Vout = -1.15097V Vout/VpH= (-1.1789+1.5097)/(400 e-3)= 0.82 1.1789+1.5097)/(400 S= 0.82*50.6 e-3=41.49 e 3=41.49 e-3V/pH = 41.49 mV/pH S=41.49mV/PH
23

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Linarit : Mauvaise linarit pour VpH -280mV , c..d pour pH 8 VpH Effet de temprature : Effet de temprature lie au MOSFET :

Fig 3.2.2 :Vout=f(VpH) pour T=10C, T=30C , T=40C et T=50C

Vout diminue par 27.9mV,lorsque la temprature augmente par 10C

Effet de temprature lie au capteur ISFET :

Fig 3.2.3 :Vout=f(VpH) T=283K, T=293Ket T=303K

Vout diminue par 12.7mV,lorsque la temprature augmente par 10 10K

24

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

2. Etude en rgime satur : gime


R1= 1K I2= 1.14 1.14mA I1=5mA mA

Fig 3.2.4 :Vout=f(VpH)

Sensibilit : VpH=0V : Vout= -6.1408V 6.1408V VpH=300mV : Vout= Vout=-6.4406V Vout/VpH= 0.82 Vout/VpH= S = 50.56 mV/pH S=50.56mV/PH

Linarit : Bonne linarit Effet de temprature : Effet de temprature lie au mosfet:

Fig 3.2.5 :Vout=f(VpH) pour T=10C, T=30C et T=50C

Le Vout dimminue par 5.4 mV quand la temprature augme augmente de 20C


25

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Effet de temprature lie au capteur ISFET :

Fig 3.2.6 :Vout=f(VpH) T=283K, T=293Ket T=303K

Le Vout dimminue par 13.6 mV quand la temprature augmente de 10K

26

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

III.

Circuit de mesure n : n3

LM741 7
3 Vph +

V+ Vout OUT V6

A
N-ISFET 2 MOSFET I1 4

0
{-Er+(2.3*Ut*0.88*(7.5-pH))}

1. Etude en rgime linaire : gime

- R= 20K - I1=1.48mA - Vcc = 15V

Fig 3.3.1 :Vout=f(VpH)

Sensibilit : - VpH=39.640mV Vout = 2.5988V - VpH= -500mV Vout = 2.1829V Vout/VpH= (2.5988 (2.5988-2.1829)/((39.640+500)e-3)= 0.77 S=Vout/PH=-0.0506*0.77=0.03899 S=38.99mV/PH Linarit : Mauvaise linarit pour VpH -400mV , c..d pour pH 9.5 VpH

27

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Effet de temprature : Effet de temprature lie au mosfet:

Fig 3.3.2:Vout=f(VpH) pour T=10C, T=20C et T=30C 0C

Lorsque la temprature augmente de 10C : - Vout diminue de 54.3mV pour pH< pH<7 - Vout diminue de 43.2mV pour pH=7 - Vout diminue de 53.2mV pour pH>7

Effet de temprature li au capteur ISFET :

Fig 3.3.3 :Vout=f(VpH) T=283K, T=293Ket T=303K

Vout diminue par 14.67mV,lorsque la temprature augmente par 10K

28

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

2. Etude en rgime satur : gime

- R= 8.5 8.5K - I1=2.2 =2.28mA - Vcc = 15V

Fig 3. 3.4 :Vout=f(VpH)

Sensibilit : S =|Vout/pH| : Vout/pH| Pour VpH= 100mV Vout = 599.906mV Pour VpH= -500mV Vout = 99.908mV 500mV Vout/VpH= (599.906 Vout/VpH= (599.906-99.908)/(100-500)= 0.99 S= 0.99*50.6 e-3=50.09 e 3=50.09 e-3V/pH = 50.09 mV/pH S=50.09mV/PH Linarit : Bonne linarit Effet de temprature : Effet de temprature li au mosfet:

Fig 3.3.5 :Vout=f(VpH) pour T=10C, T=30C et T=50C

Dans ce cas la temprature na aucun effet sur la caractristiqu Vout = f(VpH)


29

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Effet de temprature li au capteur ISFET :

Fig 3.3.6 :Vout=f(VpH) T=283K, T=293Ket T=303K

Vout diminue par 14mV,lorsque la temprature augmente par 10K

30

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

On remarque que le circuit n1 donne les meilleur rsultas, puisquil a presque la meme sensibilit pour les deux rgimes (linaire et satur) et moins sensible leffet du tempraure par rapport aux autres circuits.

31

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Aprs avoir fait ltude des diffrents circuits de mesure, on passe la deuxime partie concernant la conversion analogique numrique de la tension Vout issue de circuit de mesure et son affichage sur l cran LCD de la carte SPARAN3E .

Solution pH

Capteur ISFET

Circuit de mesure

CAN

Carte SPARTAN3E LCD

32

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Partie II :
Conversion analogiques numriques des valeurs de tensions rfrence pH et affichage sur lcran LCD de la carte SPARTAN3E

33

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Chapitre I : Prsentation de la Carte FPGA SPARTAN3E

34

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

I.

Introduction :
Les FPGA (Field Programmable Gate Array) regroupent les FPGA , les CPLD,

EPLD, PLA, PAL ou tout les circuits numriques dont larchitecture interne peur tre configure par lutilisateur . Xilinx et Altera occupent les premires places en terme de parts de marchs. De plus, les architectures des FPGAs de chez Xilinx et Altera sont fondamentalement diffrentes. Dans notre projet on a travaill sur une carte FPGA chez XILINX SPARTAN 3E qui a une architecture de type lots de calcul, Dans ce cas, le FPGA est constitu dune matrice plane dlments. Ces lments constituent les ressources logiques et de routages programmables du FPGA. Cette carte est cibl pour des applications forte valeur ajout :

Rseaux et tlcommunications (routage de dorsale). Vido-numrique (effets visuels, encodage, ...). Traitement numrique du signal. Emulation d'ASIC. Modulation / Dmodulation implmente de manire logicielle (Software Defined Radio).

Figure 1 : carte FPGA SPARTAN3E

35

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

II.

Composant de la carte SPARTAN3E :


La carte SPARTAN3E deXlinx est spcialement conu pour rpondre des

applications de hautes performances. Elles est dot de plusieurs composants qui ont un large domaine dapplication. Les composants principaux de cette carte sont : Le FPGA XC3S500E Les circuits FPGA sont constitus dune matrice de blocs logiques programmables entours de blocs dentres sorties programmables. Lensemble est reli par un rseau dinterconnexion programmable.Chaque composant de la carte dispose de ports sur l FPGA. Cette carte dispose de 232 entrs/sorties utilisateurs, 320 FPGA pins et plus de 10000 cellules logiques. Alimentation La carte doit tre alimente par une tension continue. Des rgulateurs fournissent les tensions ncessaires pour le fonctionnement du FPGA (3.3 Volts) et pour les entres sorties (Input/Output). Les horloges Des signaux dhorloges sont disponibles sur la carte : Un oscillateur 50 Mhz qui est utilis presque par tous les tests seffectuant sur la carte. Il ya aussi une entre dhorloge externe (SMA Clock). Le FPGA peut aussi fournir un signal dhorloge lextrieur via le connecteur SMA travers ce port ou bien mme on peut faire fonctionner le FPGA avec une autre frquence issue de lextrieur. Interface USB

Cette interface va nous servir pour la programmation du FPGA avec lutilitaire iMPACT du logiciel ISE. Intel Flash Memory LIntel Flash Memory permet de stocker le programme de configuration du FPGA (si la programmation se fait de type PROM). La programmation de cette mmoire peut seffectuer soit sur le port USB ou bien mme sur le port RS232 via lhyper terminal de communication sous Windows. La procdure consiste charger

36

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

limage de programmation dans le Flash Memory et de le transfrer ensuite au FPGA. Interfaces analogiques CAN/CNA : La carte dispose aussi des interfaces analogiques qui sont essentiellement des convertisseurs analogique numrique et numrique analogique Cette interface est donc intressante pour le traitement du son ou de la parole. On pourra donc faire entrer des signaux analogiques et faire des traitements ncessaires pour adapter nos signaux notre carte et les envoyer aussi lextrieur. Ecran LCD La carte de dveloppement Spartan 3e starter kit dispose dun afficheur LCD, deux lignes de 16 caractres Cet afficheur sert afficher des diffrents informations en utilisant le code ASCII. Cependant laffichage des informations est lent et peu precis cest pour cela on fait appel au controlleur picoblaze qui permet de grer le timming de laffichage et de contrler la communication avec le LCD. Les LED, Switches et boutons poussoirs Les LED (Light Emitting Diode) permettent donc de faire des tests de bases comme par exemple raliser des portes logiques (OU, ET,) ou bien de tester des fonctions logiques combinatoires. On lutilise aussi pour tester des compteurs. En gnral, les LED ne sont pas utiliss touts seuls, on les combine avec les Switches ou bien les boutons poussoirs disponibles sur la carte. On les utilise pour tester des programmes de registres.

37

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Chapitre II : Principe du logiciel de synthse ISE 8.1 de xilinx

38

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

I.

Crez un nouveau projet :

File / New Project Nommez le projet et enregistrez le dans le rpertoire. Laissez Top-Level source type en HDL et Cliquez sur Next. La source est le fichier VHDL que va compiler le programme ISE pour crer le circuit lectronique sur le FPGA de la carte Spartan3. Nous utilisons le langage VHDL mais d'autres langages peuvent tre utiliss comme Verilog. Nous travaillerons partir de fichiers crits en VHDL donc le type est HDL.

II.

Remplissez les catgories suivantes :


Pour une carte Spartan 3E :

Product Category: All Family: Spartan3E Device: XC3S500E Package: FG320 Speed Grade: -4 Top-Level Module Type: HDL Synthesis Tool: XST (VHDL/Verilog) Vrifiez que Enable Enhanced Design Summary est coch. Laissez les valeurs par dfaut dans les champs restant. Cliquez sur Next

Figure 3 : proprits de la carte Spartan3E utilise

III.

Crez une source VHDL :


Dans la fentre Project cliquez sur New Source
39

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Slectionnez le type de source : VHDL module Entrez le nom du fichier <nom>

Vrifiez que Add to project est bien coch Cliquez sur Next.

Figure 4 : Cration dun fichier source VHDL

IV.

Dfinissez les entres et les sorties du programme :


Aprs le nom de lentity, vous pouvez choisir le nom de larchitecture (par dfaut cest behavioural). Cliquez sur Next

Si vous devez utilisez des vecteurs de plusieurs bits, vous devrez cocher bus puis, pour un vecteur de 8 bits par exemple, indiquer 7 dans MSB et 0 dans LSB.

Un rsum s'affiche. Cliquez sur Finish. La partie cration d'une source est termine. Cliquez sur Next.

Figure 5 : dfinition des entres et sorties

40

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

V.

Add existing source :

Vous avez la possibilit d'ajoutez des sources VHDL dj existantes. Cliquez sur Add Source Slectionnez le fichier VHDL ajouter, Vrifiez que Copy to project est bien coch Cliquez sur Next Un rsum du projet s'affiche. Cliquez sur Finish. Une fentre vous demande de vrifier le statut du fichier synchro que vous ajoutez au projet. Slectionnez Synthesis/Imp + Simulation. Cliquez sur OK

VI.

Ecrire le programme en VHDL


Vous pouvez maintenant complter le fichier VHDL.

VII.

Compilation et implmentation du projet


Pour vrifier s'il n'y a pas d'erreurs dans votre projet, vous pouvez le compiler

une premire fois. Dans la fentre de gauche du navigateur, slectionnez Sources for :

Synthesis / Implementation (dans un menu droulant) et slectionnez <nom> dans la hirarchie. Dans la fentre en bas gauche Processes double cliquez sur Synthesize-XST

Corrigez ventuellement les erreurs et recommencez.

VIII.

Assignement des pins :

Il vous faut maintenant dfinir les entres/sorties du FPGA utiliser. Comme le FPGA est intgr sur une carte comportant des afficheurs, des boutons poussoirs, une horloge, un port VGA, etc... la documentation de la carte fournit le nom des pins du FPGA relies ces entres et sorties.
41

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Par exemple pour une carte Spartan3E : clk : "C9"; clk : "T9"; allez dans la fentre en bas gauche Processes double cliquez sur Users

Constraints / Assign Package Pins. Une fentre Xilinx Pace s'ouvre. A gauche dans Design Object List I/O pins entrez le nom des pins pour

toutes les entres et sorties dans la fentre Loc. Enregistrez. Dans Bus delimiter slectionnez XST Default. Fermez la fentre Pace.

Figure 6 contenant les pins utiliss en projet CAN sur LCD avec picoblaze Compiler nouveau le projet comme dans ltape 8. Puis effectuez la synthse et le placement-routage en double-cliquant sur Implement Design.

IX.

Pour programmer le FPGA de la carte :


Dans la fentre en bas gauche Processes , droulez le + de Generate

Programming File et double cliquez sur Configure Device (Impact), La fentre du programme Impact s'ouvre. Suivant les cas, vous aurez des messages de Warning et
42

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

des fentres de dialogues qui peuvent s'ouvrir dans un ordre diffrent. Voici les diffrents cas et ce qu'il faut rpondre : A l'ouverture d'Impact, si une fentre s'ouvre, vrifiez que Configure devices using Boundary-scan chain et Automatically connect to a cable and identify boundary scan chain est bien coch puis cliquez sur Finish. Si un message de Warning s'affiche cliquez sur OK Si une fentre Assign new configuration File s'ouvre , choisissez <nom>.bit Un Warning s'affiche rpondez OK. Faites Cancel si la fentre s'ouvre nouveau. La fentre doit prsenter trois carrs avec le logo Xilinx et le premier doit tre <nom>.bit.

Figure 7 : Ouverture du logiciel Impact de programmation Faites un clic droit sur <nom>.bit et choisissez Program.

S'il y a un problme de connection avec le cble de programmation, Slectionnez Output / Cable Setup et vrifiez que dans Communication mode Platform Cable USB est bien coch et que dans Port Usb1 est indiqu. Cliquez sur OK.

43

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Chapitre III : Modlisation dun CAN et affichage de rsultat sur cran LCd

44

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

I.

Introduction :
Le but de cette partie de projet est de raliser un programme VHDL

permettant dafficher la conversion des valeurs des tensions rfrences de pH sur lcran LCD de la carte FPGA. Dans un premier temps on a implant un design en utilisant loutil ISE8.1 de XILINX, ce design contient : La modlisation du convertisseur analogique numrique de la carte. La modlisation de lafficheur LCD dans la carte. Un programme utilisant la notion component qui permet dafficher les valeurs convertis par le CAN dans le LCD.

Figure 8 Les diffrents tests sur ce programme on t effectu sans erreurs.

45

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Figure 9 Cependant lors de limplantation sur la FPGA on remarque quil ny a pas de communication entre le LCD et le convertisseur, mme si le programme a t implant avec succs...

II.

Le microcontrolleur picoblaze :
Le microprocesseur embarqu dans le FPGA (Spartan 3E) est de la famille des

a. Dfinition :

Picoblaze (srie III), cest un microprocesseur dvelopp, optimis et fourni gratuitement par la socit Xilinx. Le Picoblaze est un processeur 8 bits disposant dun jeu dinstructions limit. Il gre le protocole de communication avec le contrleur de lcran LCD et cela en phase avec les demandes daffichage que nous allons lui adresser

b. Larchitecture interne du Picoblaze :

46

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Signal IN_PORT

Direction INPUT

description Port dentre des donnes. Les donnes sont captures durant le front montant de lhorloge Entre dinterruption gnr en laissant cette entre dans ltat haut pendant deux cycle dhorloge Remise zero, suivant la configuration de la FPGA, elle est gnre en laissant cette entre dans ltat haut pendant un cycle dhorloge au minimum Lhorloge ; caractrise par sa frquence (50Mhz pour SPARTAN 3E )tout les lments de Picoblaze sont synchroniss suivant le front montant de lhorloge. Port de sorties de donnes. les donnes apparaissent sur ce port durant deux cycles dhorloge lors une instruction de sortie Port des adresses : les I/O port dadresse aparaissent durant deux cycles dhorloges . Read strobe : lors du front montant, ce signal indique que les donnes dentre sur IN_PORT[7:0] sont capturs dans le registre spcifi. Ce signal est gnr pendant le 2eme cycle dhorloge du deuxime cycle de Input instruction, ce signal est gnralement utilis pour la lecture Write strobe : lors du front montant, ce signal indique que les donnes de sorties sont prsentes sur OUT_PORT[7:0] Ce signal est gnr pendant le 2eme cycle dhorloge du deuxime cycle de output instruction, ce signal est gnralement utilis pour lcriture. Interrupt Acknowledge: il indique un vnement dinterruption. Ce signal est gnr pendant le 2eme cycle dhorloge du deuxime cycle de interrupt instruction .

INTERRUPT

INPUT

RESET

INPUT

CLK

INPUT

OUT_PORT[7:0]

OUTPUT

PORT_ID[7:0] READ_STROBE

OUTPUT OUTPUT

WRITE_STROBE

OUTPUT

INTERRUPT_ACK

OUTPUT

47

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

c. Pourquoi utiliser le Pircoblaze : Les microcontrleurs et les FPGA permettent de raliser nimporte quelle fonction numrique et logique. Les FPGA ont lavantage davoir des microcontrleurs intgrs qui permettent daugmenter la performance, minimiser le cout tout en garantissant une simplicit dusage. La gestion du protocole permettant dafficher des informations sur lcran LCD est complexe, mettant en oeuvre des temporisations spcifiques pour le transfert des donnes. Dans notre projet le picoblaze sert grer les communications avec lafficheur LCD, car ce dernier ne peut pas grer toutes les donnes fournies par le convertisseur analogique numrique do la ncessit de passer par le microcontrleur incorpor dans la FPGA Afin dutiliser le picoblaze il faut intgrer le programme associ comme composant dans notre application, ce programme est dlivr gratuitement par le constructeur XILINX (voir partie programme et tests).

III.

La conversion analogique numrique :


La carte FPGA de SPARTAN 3E comporte deux convertisseurs analogiques, le

a. Dfinition :

processus conversion est bas sur un pramplificateur comportant deux amplificateurs inverseurs et deux convertisseurs analogiques numriques les entres analogiques sont placs dans lentte J7 (voir figure 10).

Figure 10

48

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

La chaine de conversion analogique utilise une technologie linaire LTC6912-1 un pramplificateur programmable qui reoit le signal dentre, la sortie de ce pramplificateur est connect au CAN (technologie linaire LTC1407A-1), ces deux composants sont programms et contrl par le FPGA(figure 11)

figure : 11 b. Pramplificateur : Le pramplificateur contient deux amplificateurs inverseurs, les signaux sont amplifies proportionnellement une tension rfrence v=1.65V. le gain de chaque amplificateur est programm de -1 -100 qui permet dimplanter un signal dentre dans le CAN au minimum gale 12.5mV. Linterface de control de pramplificateur: Linterface de communication avec lamplificateur est base sur lenvoi dun mot de commande de 8bits, dcoup en deux squences de 4bits, le MSB est le B3, en agissant sur ce mot de 8 bits ; on contrle le gain.

49

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Figure 12 Le AMP_DOUT: output permet dvoquer le gain prcdent de lamplificateur Le SPI_MOSI cest loutput du maitre FPGA, et linput de lesclave amplificateur, il prsente les 8 bits programmable du gain AMP_CS : le gain de lamplificateur est activ quand le signal AMP_CS est ltat haut SPI_SCK : lhorloge

La plage de variation de la tension dentre en fonction du gain :

50

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

c. Le convertisseur analogique numrique:

o Processus de conversion : Le LTC1407A-1 fournit deux CAN. Les deux entres analogiques sont prlevs simultanment quand le signal AD_CONV est appliqu. Le rsultat de la conversion ne sera prsent jusqu ce que le prochain AD_CONV est appliqu, la frquence maximum de prlvement est de 1.5 Mhz et la tension de sortie est prsent en un mot de 14 bits sur chacun des convertisseurs (figure 13)

Figure 13 o Caractristiques de convertisseur : La plage de conversion varie entre 1.25v relativement la tension rfrence v=1.65v, cette tension correspond au code (000016) la sortie de convertisseur. une variation maximal de la tension dentre varie entre 0.4V et 2.9V(quand le gain est gale -1), donc ce convertisseur a une rsolution de ( 2.9-0.4/ 214 ) =0.152 mv Ce convertisseur peut convertir donc 2*214 (2*8192)=16384 valeurs.

51

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Remarque : En pratique il existe une lgre variation entre la tension dentre et la sortie code cela est du la tension de rfrence et au bruit du systme o Expression de la sortie numrique :

Sortie numrique=

8192

52

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

1. Lafficheur LCD :

Le LCD de la carte SPARTAN3E permet dafficher des donnes significatives prleves des circuits lectroniques. Lutilisation du LCD est simple pour les petits projets malheureusement pour les projets les plus complexes lutilisation des protocoles de communication entre la FPGA et lafficheur devient indispensable (utilisation du microcontrleur). le LCD peut supporter jusqu 8 bits dinterface de donnes, cependant La FPGA contrle le LCD via une interface de 4 bits de donnes.

Figure 14

53

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

o Les signaux dinterface de LCD :

Ces signaux permettent le contrle du LCD par le FPGA

Signal SF_D<8>

Fonction Data bit DB7est partag avec startanflash(mmoire de 128Mbit)

SF_D<9>

Data bit DB6 est partag avec startanflash

SF_D<10>

Data bit DB5 est partag avec startanflash

SF_D<11>

Data bit DB4 est partag avec startanflash

LCD_E

Read/Write commande 0: Dsactiv 1: Read/Write operation activ

LCD_RS

Selection de registre 0: mmoire occupe lors de lecture 1: donne pour lopration de lecture et de lcriture

LCD_RW

Control de lecture et de lcriture 0: Ecriture,le LCD accepte les datas 1: lecture , le LCD presente les datas

SF_CE0

Permet dactiver la PROM startaflash SF_CE0=0 la FPGA lit le caractere dans le LCD SF_CE0=1 la FPGA accs a la startaflash prom

54

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

o Affichage des caractres : La ROM contient des caractres en code ASCII, en langue anglaise et chinoise. Chaque caractre un code unique sur 8 bits(voir schma ci-dessous)

55

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Chapitre IV : Modlisation du CAN et affichage des rsultats sur Ecran LCD avec utilisation du PicoBlaze

56

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

I.

Description gnrale :
le picoblaze contrle les deux chaines programmables de lamplificateur LTC6912-1 et du convertisseur analogique numrique LTC1407A-1 Ce programme fonctionne avec une horloge de 50 Mhz. Les mesures sont prleves de lentre VINA et amplifis puis affichs sur cran LCD Les boutons poussoirs sont utiliss pour contrler le gain de lamplificateur

Figure 14: schma synoptique rsumant la structure du design


57

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

II.

Les composants du programme :


Le programme principal de notre projet contient trois fichiers sources (.VHD) et

un fichier de contrainte (.UCF).

a. Le fichier source picoblaze_amp_adc_ctrl : Cette partie englobe tous les composants du projet dans une seule architecture en utilisant la notion (componenent) Les entres sorties de larchitecture globale sont les I/O du convertisseur et de lamplificateur et du LCD. (voir annexeA Blackbox de larchitecture)

58

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Larchitecture contient deux composants KSCMP3 (modlisation du pircoblaze .VHD) et adc_ctrl (modlisation de la ROM .VHD). Larchitecture contient des diffrents signaux permettant de connecter les composants utiliss.

Signaux utiliss pour connecter le picoblaze avec la ROM et les I/O :

Signaux utiliss pour la gestion des interruptions :

Les signaux pour les oprations du LCD :

b. Le code source KSCPM3 et adc_ctrl: Le code KSCPM3 dcrit larchitecture gnrale du Picoblaze, il contient une description des diffrents lments du microprocesseur : les registres, lALU, les interruptions, la mmoire interne(voir exemple simulation annexe D) Le code adc_ctrl contient le code assembleur du microprocesseur convertit on VHDL laide du logiciel IDE (cette partie nest pas traite dans notre projet) Ces codes sont fournit par le constructeur Xilinx et tlchargeable gratuitement sur www.xilinx.com/picoblaze.

59

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

c. Le fichier de contrainte (picoblaze_amp_adc_ctrl.UCF) : On dfinit dans ce fichier les contraintes dutilisation : Contraintes temporelles :

Dans notre projet lhorloge a t fix 20ns (frquence de fonctionnement 50Mhz).

60

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Lassign package pins :

Dans cette tapes il faut assigner des pattes spcifiques du FPGA des ports dentre sorties du design, pour notre projet on a 42 entres sorties, larchitecture du FPGA dfinit une patte spcifique chacune de ses I/O.

Les pins des I/O sont les emplacements en bleu.(voir annexe les pins de chaque I/O).

Tests du programme : Aprs synthtisation, implmentation et gnration du bitstream on implmente le programme sur la FPGA via une connexion USB afin de procder au test. de procder au test.

61

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Chapitre V :

Rsultats du test

62

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Les photos ci-dessous ont t captur de lecran LCD on connectant sur l entre VINA une tension de teste v=1.8v prsente sur le point de test J7. Message daccueil montrant que le code sest implment sur la carte

Pour VIN=0 (aucune tension a convertir) VA=1.65 correspond la tension de rfrence du CAN et la sortie est videment nulle.

La tension sur le point J7 est 1.8v suprieur la tension de rfrence 1.65v. La sortie A/D=(1.8-1.65)*-1=-0,15 (pour un gain=-1)

La tension de sortie varie en fonction du gain

63

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Gain=-2 A/D output = 0.15v -2 = -0.30v

Gain=-5 A/D output = 0.15v -5 = -0.75v

Gain=-10 A/D output= 0.15v -10 = -1.25v

64

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Conclusion
Au cours de ce travail, on a eu loccasion de dcouvrir le capteur chimique ISFET. Dans un premier temps, on a fait ltude des diffrents circuits de mesures du capteur et une comparaison entre les performances des circuits tudis (linarit, bruit, temprature, sensibilit) cela on utilisant le logiciel ORCAD. Puis, on est pass la ralisation dun programme VHDL (en utilisant le logiciel ISE8.1 de XILINX) permettant la conversion analogique numrique des valeurs des tensions relatives au pH issues des circuits de mesure et leurs affichages sur lcran LCD de la carte FPGA SPARTAN3E Pour conclure Ce projet nous a permis dapprofondir nos connaissances en ORCAD et dvelopper notre sens danalyse des circuits lectroniques ; ce projet a t aussi loccasion de dcouvrir un nouvel outil : ISE8.1 Xilinx ; et de se familiariser avec la carte FPGA SPARTAN3E. Vu que qu'il y a eu des moments difficiles o on avanait plus, ce projet a t une exprience trs enrichissante, il nous a permis dapprendre grer les situations dlicates et aussi de donner le maximum de nos capacit afin de raliser le travail demand dans un temps limit.

65

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

ANNEXES

66

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

Annexe A : BlackBox de larchitecture avec les diffrents entres/sorties

67

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

ANNEXE B: Les Pins de chaque I/O

68

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

ANNEXE C : Limage et les statistiques montrent que le design occupe 129 tranches et 1 Bram, seulement 2% de tranche FPGA et 5% de la ram ont t utilise

Number of occupied Slices: Number of Block RAMs:

129 out of 4,656 1 out of 20 5%

2%

Total equivalent gate count for design: 76,248

69

Projet de Fin dAnne : ISFET

Anne universitaire : 2008/2009

ANNEXE D: Exemple de simulation de KSCMP3

70