Can & Cna
Can & Cna
Can & Cna
Notes de cours :
Conversion Numérique Analogique
Conversion Analogique Numérique
Préparé par :
Prof : A. EL FARNANE
Électronique 2018/2019
Les CAN et les CNA
1. Introduction :
L’électronique est divisée en deux domaines distincts :
Le domaine analogique où les variables peuvent prendre une infinité de valeurs différentes, les
signaux varient continument. Tous les signaux issus des capteurs sont analogiques, et traduisent
des phénomènes physiques qui varient continument.
Le domaine numérique où les variables prennent uniquement deux états, un état haut et un état
bas.
Le domaine numérique est maintenant prédominant. Il s’est beaucoup développé grâce aux progrès faits
par les microprocesseurs. Jadis, beaucoup de signaux sont traités de façon analogiques, aujourd’hui le
sont par programmation de microprocesseurs.
Les gros avantages apportés par la numérisation des signaux sont la possibilité de stockage, de
transformation et de restitution des données sans qu’elles ne soient modifiés. On peut par exemple faire
transiter un signal sonore de qualité HI-FI par une ligne téléphonique sans que la bande passante réduite
ni le bruit de cette ligne ne soient gênants, ce qui aurait été impossible avec le signal analogique de
départ !
Le traitement des données par programmation introduit aussi une souplesse dans la conception de
produits à base d’électronique : un même circuit électronique pourra traiter des signaux différents, seul le
programme va changer. Par contre, l’électronique analogique nécessite un changement et une
conception des composants.
Mais, à la base, les signaux ont toujours une nature analogique ! Il faut donc les amplifier et
éventuellement les extraire de signaux parasites (tension de mode commun par exemple). Le domaine
analogique va donc toujours exister au moins en amant de toute chaine de traitement. Parfois, on a aussi
besoin d’un signal analogique en sortie de cette chaine de traitement, il faudra alors reconvertir les
données numériques en signal analogique.
Le passage d’un type de donnée à l’autre se fera par des convertisseurs, composants « mixtes » qui vont
manipuler des tensions analogiques en entrée et des signaux logiques en sortie ou vice versa. Il existe
deux catégories de convertisseurs :
Les Convertisseurs Analogique Numérique (CAN, ADC en anglais, pour Analog to Digital
Converter), qui vont transformer les tensions analogiques en signaux logiques aptes à être traités
par microprocesseur (numérisation des signaux).
Les Convertisseurs Numérique Analogique (CNA, DAC en anglais, pour Digital to Analog
Converter) qui vont convertir les signaux logiques en tension analogique.
Plusieurs types de convertisseurs sont disponibles dans chaque catégorie, qui se différencie par leur
précision, leur vitesse de traitement de l’information et leur prix.
2. Notions générales :
2-1. Conversion analogique numérique (CAN) :
2-1-1. Principe de fonctionnement :
On a vu dans l'introduction que les signaux numériques ne varient pas de façon continue. En fait, quand
on voudra numériser un signal analogique (donc continu), il va falloir le discrétiser sur deux dimensions :
le temps et l'amplitude.
Il est impossible de décrire un signal avec une infinité de valeurs ; on va le mesurer à des instants biens
déterminés : c'est ce qu'on appelle l’échantillonnage. Pour ce qui est de l'amplitude, à un intervalle de
tension du signal d'entrée on fera correspondre une valeur unique : c'est la quantification (voir figure 1).
Cette valeur sera ensuite codée en binaire et restituée sous forme binaire en sortie du convertisseur pour
être traitée par de l'électronique numérique.
La figure 1 représente la fonction de transfert d'un CAN, à savoir le code numérique de sortie en fonction
de la tension d'entrée. On y voit clairement les plages de tension associées à un état numérique de
sortie :
Si 0.0 ≤Ve < 0.1V Vlog = 0
Si 0.1 ≤Ve < 0.2V Vlog = 1
Si 0.6 ≤Ve < 0.7V Vlog = 6
L'étape de quantification de la conversion analogique numérique entraîne une perte d'information. Un
résumé graphique de tout ceci est exprimé sur la figure 2 : on y voit un signal analogique en entrée (une
sinusoïde), et les échantillons issus de la conversion analogique numérique, avec la double discrétisation
mentionnée.
2-1-2. Définitions :
Nous allons donner ci-dessous plusieurs définitions théoriques afin de bien comprendre à quoi elles
correspondent dans la réalité, un exemple de convertisseur 3 bits est exposé plus loin.
Toutes ces définitions sont données pour des convertisseurs parfaits ; en pratique, on est loin du compte,
car ces composants intègrent des comparateurs différentiels, amplificateurs opérationnels et autres
réseaux de résistances qui sont imparfaits. Nous allons lister ensuite les principaux défauts des
convertisseurs.
A. Plage de conversion :
Le convertisseur délivrera en sortie un nombre fini de codes numériques, correspondant à une gamme de
tension analogique d'entrée bornée : c'est la plage de conversion (ou tension de pleine échelle) du
convertisseur. Cette plage de conversion sera couramment de 0-5V, 0-10V, ou encore ±5V ou ±10V. Il
existe aussi d'autres plages de conversion moins utilisées.
B. Résolution :
Le signal numérisé sera d'autant plus riche en information que l'intervalle de tension qui sera codé par le
même nombre binaire sera petit, et ceci à plage de conversion donnée. La résolution du CAN sera
l'intervalle de tension d'entrée à laquelle correspondra un même nombre binaire. En théorie, cet
intervalle de tension est le même pour tous les codes binaires, en pratique, ça ne sera pas toujours le cas.
La résolution correspondra à la valeur théorique.
C. Dynamique :
La dynamique d'un signal est le rapport entre la tension maximale et la tension minimale que pourra
prendre ce signal. Pour un CAN, ce sera le nombre binaire le plus élevé divisé par le plus faible qui est 1
(et pas 0 qui correspond à un signal nul), donc, le nombre de codes binaires différents que peut fournir le
convertisseur moins un (le zéro !).
Si on prend l'exemple d'un convertisseur 8 bits. Notre convertisseur aura donc une dynamique de 256,
qu'on exprimera plutôt sous la forme " 8 bits ", ou encore 48dB = 20log(256).
D. Mise en relation :
Il est possible de relier la dynamique, la résolution et la plage de conversion d'un convertisseur. La
résolution correspond à la variation d'une unité du code binaire, cette unité est égale à la variation du bit
de poids le plus faible (LSB = least signifiant bit en Anglais). Si on désigne par ∆Vmax la plage de conversion
et N le nombre de bits du convertisseur, on a la relation :
∆V
LSB = 2maxN
(1)
L'exemple suivant clarifiera cette relation.
L'erreur est toujours négative (valeur par défaut), et oscille entre 0 et -1 LSB (0 à -1V ici).
Il serait souhaitable d'avoir plutôt une
erreur centrée autour de 0, de manière à
quantifier tantôt par excès, tantôt par
défaut ; en effet, en quantifiant
systématiquement par défaut, on
introduit un offset dans le signal
numérisé. Pour pallier cet inconvénient,
on introduit un décalage au niveau du
premier LSB du convertisseur, comme il
est indiqué sur la figure 5. La première
transition n'a pas lieu pour 1 LSB, mais
pour 1/2 LSB seulement, ce qui fait que
jusqu'à une valeur d'entrée inférieure à
1/2 LSB, on quantifie par défaut, et entre
1/2 et 1 LSB, on quantifie par excès.
Figure 5 : Fonction de transfert d'un CAN 3 bits corrigé
L'erreur obtenue devient celle de la figure 6 : elle est symétrique par rapport à 0 et égale à ±1/2 LSB.
Il y a juste une exception : le 1/2 LSB tronqué au début va se retrouver en bout d'échelle (voir figure 5) : le
dernier état numérique correspondra à une plage d'entrée analogique valant 1 +1/2 LSB. L'erreur de
quantification sera plus grande sur cette plage, ce qui n'est d'ailleurs pas très grave !
En pratique, la majorité des CAN ont une fonction de transfert décalée pour assurer une erreur de
quantification symétrique. Il faudra toutefois s'en assurer en lisant la spécification du constructeur. Ce
détail pourra être important si on fait de la mesure précise avec une carte d'acquisition de donnée
(comprenant un CAN). Pour régler le gain et l'offset de la chaîne de conversion, il faudra observer la
première et la dernière transition, et la calibration sera différente si le convertisseur est décalé ou pas ;
un biais d'1/2 LSB pourra fausser les mesures si on se trompe !
2-2-2. Définitions :
A. Résolution :
La résolution du CNA sera la variation de tension de sortie correspondant à la variation d'une unité du
nombre binaire en entrée. La définition est équivalente à celle du CAN.
B. Plage de conversion :
Il y a ici une petite différence avec le CAN (voir figure 8). La plage de conversion numérique va de 0 à
2N −1, N étant le nombre de bits du convertisseur, et à chaque valeur numérique correspond une valeur
analogique de sortie et une seule. Par rapport à celle du CAN, la plage de conversion s'arrêtera donc un
LSB plus tôt (sur l'échelle analogique du CAN, ceci correspond à la dernière transition numérique).
C. Dynamique :
La définition est équivalente à celle du CAN.
D. Mise en relation :
Vu ce qui a été dit sur la plage de conversion, la relation entre le pas de quantification (1 LSB), la plage de
conversion ∆Vmax ; et le nombre de bits du convertisseur sera légèrement différente de l'équation (1). La
figure 8 du paragraphe suivant va éclairer cette équation :
∆Vmax
LSB= (2)
2N −1
En pratique, pour un nombre de bits supérieur à 8, l'écart entre les deux formules reste très faible ! Il
n'empêche que dans le cas de mesures précises.
2-2-3. Exemple d’un CNA à 3 bits :
Pratiquement, le fabricant des convertisseurs Analog Devices définit cette erreur ainsi : C'est l'écart entre
la valeur théorique et la valeur réelle mesurée sur la dernière transition du convertisseur et exprimé en
LSB. Cette mesure suppose que l'ajustage du zéro soit parfait.
3. Conversion numérique/analogique :
Il existe principalement deux types de convertisseurs numérique/analogique sur le marché : les
convertisseurs à résistances pondérées, et les convertisseurs à réseau R/2R. Ces derniers sont
prédominants. Il existe aussi des convertisseurs à réseaux de condensateurs fonctionnant sur le même
principe de base que les réseaux à résistances.
3-1. Architecture génériques :
Quel que soit le type de convertisseur étudié, on retrouvera toujours la même structure, constituée des
mêmes éléments de base ; seule la réalisation technologique des blocs de base différera d'un
convertisseur à l'autre. Il est donc intéressant d'étudier l'architecture générique mettant en évidence les
points communs à tous les convertisseurs.
Sur la figure 13, on distingue 5 blocs :
Un buffer numérique d'entrée : Celui-ci est chargé de garder en mémoire la donnée
numérique pendant le temps de conversion, il sert aussi d'interface entre les parties
numérique et analogique du convertisseur.
Une référence de tension : Son importance est capitale pour la précision de l'ensemble, c'est
elle qui donne le signal de référence servant à la détermination des tensions de sortie.
L'arbre de commutation (switching tree en anglais) : Il est commandé par le buffer d'entrée
et va déterminer les résistances qui seront alimentées par la référence de tension.
Le réseau de résistances : C'est un ensemble de résistances qui est alimenté par la référence
de tension via l'arbre de commutation et qui vont générer des courants très précises en
fonction du code binaire d'entrée.
Le convertisseur courant/tension : C’est un amplificateur servant à transformer les courants
générés par le réseau de résistances en tension de sortie. Il est optionnel, certains CNA ne
l'incluent pas, d'autres l'incluent.
On retrouvera donc toujours ces éléments de base, la distinction entre les convertisseurs se faisant
généralement dans le réseau de résistances (et par voie de conséquences dans l'arbre de commutation).
Le schéma de la figure 14 montre un CNA 4 bits. Par extension, on peut construire un CNA ayant un
nombre de bits quelconque en augmentant les entrées logiques et en y affectant des résistances de
valeur convenable (toujours dans le rapport des puissances de deux).
On remarque que le LSB est affecté à la résistance de plus grande valeur, et le MSB à celle de plus faible
valeur. Nous appellerons a0 le MSB, a1 le bit suivant, ..., et aN−1 le LSB d'un convertisseur à N bits. Si on
applique le résultat de l'amplificateur sommateur inverseur à ce montage, on trouve :
a a a a
Vs = −Eréf R × ( R0 + 2R1 + 4R2 + ⋯ + 2N−1
N−1
) (3)
R
Soit :
E
réf
Vs = − 2N−1 × (2N−1 a0 + 2N−2 a1 + 2N−3 a2 + ⋯ + aN−1 ) (4)
Dans le cas de notre convertisseur 4 bits, la solution est :
Eréf
Vs = − × (8a0 + 4a1 + 2a2 + a3 ) (5)
8
Le MSB est affecté au coefficient le plus fort, et les bits successifs voient leur coefficient divisé par deux
par rapport au bit précédent.
On peut calculer la résolution (LSB) de ce convertisseur : c'est la variation de la tension de sortie lorsque
l'entrée numérique varie d'une unité, donc soit :
E
LSB = 8réf (6)
Dans le cas général d'un convertisseur à N bits, on aurait :
réf E
LSB = 2N−1 (7)
L'équation (2) va nous permettre de calculer la plage de conversion. Si on injecte le résultat de (7) dans
l'équation (2), on obtient :
(2N −1)
∆Vmax = × Eréf (8)
2N−1
Où ∆Vmax représente la plage de conversion, ou pleine échelle du convertisseur. Pour notre convertisseur
15
4 bits, cette pleine échelle vaut ( 8 × Eréf ). Ceci est dû au fait que le convertisseur de N bits comporte 2N
états différents, dont zéro, ce qui fait que le dernier état est égal à 2N−1 , et pas 2N .
3-2-2. Précision :
Le schéma de ce convertisseur nous permet de mieux comprendre les erreurs citées au paragraphe
précédent :
L'erreur de gain sera directement proportionnelle à l'imprécision de la référence de tension
et de la résistance de contre-réaction.
L'erreur d'offset sera dûe à l'offset de l'amplificateur.
L'erreur de linéarité est dûe au mauvais appairage des résistances dans le rapport des
puissances de 2.
Le temps d'établissement sera donné par la réponse de l'amplificateur à un échelon de
tension.
Pour revenir aux erreurs de linéarité, il faut noter que la précision relative sur chaque résistance aura un
impact sur le résultat global qui va doubler tous les bits en allant du LSB vers le MSB. En effet, une erreur
de 10% de la résistance du LSB ne va fausser le résultat que de 1,1 fois le LSB. Par contre, 10% d'erreur sur
la résistance du MSB va induire une erreur égale à 1,1 fois le MSB, soit 2N−1 fois plus que celle faite sur le
LSB dans les mêmes conditions.
Le principal problème provient de l'intégration de ces résistances : dans les circuits intégrés, on sait tenir
une telle précision, mais la proportionnalité des résistances est obtenue en leur donnant des dimensions
proportionnelles à leur valeur.
Ces défauts font que ce convertisseur n'est pas viable économiquement, surtout si on le compare au CNA
à réseau R/2R, plus facile à intégrer.
Les courants I3 et ID sont égaux (diviseur de courant avec deux résistances égales). On a donc :
I
I3 = ID = 2C (9)
Les branches où circulent I3 et ID sont en fait deux résistances égales (2R) en parallèle, soit l'équivalent
d'une résistance moitié, donc R. Cette résistance équivalente est en série avec celle où circule Ic . Le
courant Ic circule donc dans une résistance équivalente à 2R. Le circuit devient :
On retombe strictement sur le même type de réseau que précédemment. On en déduit facilement :
IB IA I
I2 = Ic = ; I1 = IB = ; I0 = IA = 2 (10)
2 2
Le réseau R/2R nous fournit des courants en progression géométrique de raison 2 : on retombe sur la
même chose que le convertisseur à résistances pondérées.
La tension de sortie VS du convertisseur sera égale à :
Eréf a1 a2 a
𝑉𝑆 = − × (a0 + + + 83 ) (12)
4 2 4
Le résultat est donc du même genre que pour le CNA à résistances pondérées. On note un facteur 1/4,
mais on peut remarquer qu'il suffit de mettre une résistance égale à 4R en contre-réaction pour retomber
sur le même résultat.
3-3-2. Précision :
Pour ce qui est de la précision requise sur les résistances, on retrouve les mêmes défauts que pour le CNA
précédent :
La référence de tension et la résistance de contre-réaction vont engendrer la même erreur de
pleine échelle.
Une erreur sur la résistance du MSB aura 2N−1 fois plus d'influence que la même erreur sur le
LSB.
Par contre, l'intégration sera plus aisée, et on sera capables de faire des convertisseurs précis et à plus
grand nombre de bits que le CNA à résistances pondérées. En instrumentation, on rencontrera
fréquemment des CNA à 12 bits de ce type, notamment sur des cartes d'acquisition de données pour
micro-ordinateurs.
3-4. Utilisation des CNA :
3-4-1. Utilisation classique :
Les CNA sont bien entendu utilisables tels quels pour faire de la conversion numérique/analogique. On les
retrouvera en sortie de chaîne de traitement numérique lorsqu'un signal analogique est requis
(commande et contrôle de processus, etc.). Ils seront suivis d'un filtre plus ou moins sophistiqué destiné à
supprimer les « marches d'escalier » inhérentes à la numérisation. Dans le cas de l'audio numérique, le
filtrage est d'une importance fondamentale, et c'est lui qui conditionne grandement la qualité du son. Cet
aspect n'est donc pas à sous-estimer. Il faudra faire attention au filtrage dans le cas où ces convertisseurs
sont inclus dans une boucle d'asservissement : les escaliers peuvent être néfastes à la stabilité du
système.
3-4-2. Amplificateurs à gain programmable :
Les montages étudiés peuvent se résumer tous les deux à une chose : ce sont des amplificateurs d'une
tension continue (Eréf ) dont le gain est ajustable par une entrée numérique (les codes binaires). On peut
donc penser à une autre utilisation des CNA : si on remplace Eréf par une tension alternative quelconque,
on peut utiliser l'entrée numérique pour faire varier le gain de l'ampli, et donc le signal en sortie.
3-4-3. Filtres programmable :
De la même manière, on peut intégrer ces réseaux dans certains schémas de filtres, et obtenir ainsi des
filtres à fréquence de coupure variable et commandée par un signal numérique.
3-4-4. Multiplieur :
Une autre application importante est la multiplication de signaux : l'un sera analogique (en remplacement
de Eréf ) et l'autre numérique. Ce signal numérique pourra être un signal préalablement numérisé. La
sortie va donner le produit des deux signaux.
Les convertisseurs à comptage d'impulsion : Très précis, et par construction, sont aptes à filtrer
des bruits importants. En contrepartie, ils sont très lents, donc destinés à faire des mesures de
signaux stabilisés.
4-2-2. Précision :
Dans le principe, ce CAN pourrait être relativement précis. En pratique, on butte sur un inconvénient de
taille : il faut 2N − 1 comparateurs pour un convertisseur à N bits, soit 63 comparateurs pour un de 6 bits
et 255 pour un de 8 bits ! Le procédé devient donc vite limitatif.
La principale source d'erreur provient de l'offset des comparateurs qui va introduire de la non linéarité
différentielle.
La rapidité va être conditionnée par la vitesse des comparateurs et du décodeur logique. La cadence de
conversion est nettement supérieure au MHz, et peut atteindre des centaines de MHz pour les
oscilloscopes numériques.
4-2-3. Utilisation :
De par leur principe, ces CAN sont limités à 6 ou 8 bits, ce qui est insuffisant pour l'instrumentation. Ce
handicap est négligeable en oscilloscope numérique : certains constructeurs utilisent des convertisseurs 6
bits, ce qui est suffisant pour décrire l'axe vertical de l'écran avec une résolution supérieure à 2%.
Pour les applications requérant des vitesses élevées mais non extrêmes, on utilise des convertisseurs
semi-parallèles, qui utilisent beaucoup moins de comparateurs et conservent une vitesse de conversion
intéressante, ceci avec une résolution pouvant atteindre 12 bits.
Le schéma de principe d'un tel convertisseur est donné par la figure 22. Les principaux éléments le
constituant sont :
Un générateur de rampe (intégration d'une tension de référence).
Deux comparateurs comparant la rampe l'un au zéro, l'autre à la tension à mesurer.
Divers éléments de logique, dont un générateur de porte, une horloge, un compteur et un
système d'affichage.
Lorsque la logique commande le démarrage d'une mesure, il y a remise à zéro de l'intégrateur (rampe) et
des compteurs ; ensuite, la tension de rampe croît linéairement avec le temps (figure 23). Quand le
premier comparateur bascule à t0, la porte autorise le comptage des impulsions délivrées par l'horloge.
Quand le deuxième comparateur bascule, il ferme cette porte, et la valeur contenue dans les compteurs
est verrouillée et transmise aux afficheurs.
La pleine échelle sera donnée en nombre de points Nmax , c'est à dire le comptage maximale autorisé par
la dynamique des compteurs. Dans ce cas, la résolution sera l'inverse de Nmax , et elle sera d'autant
meilleure que Nmax sera grand.
Le résultat montre qu'on aura intérêt à avoir une fréquence d'horloge élevée à rampe donnée pour avoir
une bonne résolution. Il indique aussi le plus gros défaut de ce convertisseur : la mesure dépend de la
fréquence d'horloge, de la tension de référence, et des composants R et C de l'intégrateur. Si on sait faire
des horloges à quartz stables et des références de tension de précision, il en est tout autrement avec les
capacités servant dans l'intégrateur : la précision initiale est moyenne (sauf tri), et les dérives
(vieillissement, température...) difficiles à maîtriser.
L'autre gros défaut est une grande sensibilité au bruit : si la tension d'entrée varie sous l'effet d'une
perturbation quelconque, le deuxième comparateur peut fermer la porte et arrêter le processus de
comptage : la valeur lue sera fausse. Il faut noter ici que la tension d'entrée doit impérativement être fixe,
sinon, on mesure n'importe quoi !
4-4-2. Convertisseur double rampe :
Ce type de convertisseur va pallier les défauts du convertisseur simple rampe. Le schéma de principe est donné par
la figure 24 ci-dessous.
La valeur affichée est directement proportionnelle au comptage, et elle est indépendante des composants
R et C, et aussi de la fréquence de l'horloge.
L'autre gros avantage du montage double rampe est son immunité au bruit : le signal étant intégré, seule
la valeur moyenne du bruit sera prise en compte, soit une valeur nulle dans la plupart des cas. Si un
parasite perturbe le signal lors de la mesure, seule son intégrale sera prise en compte, s'il est bref, elle
sera négligeable, et le résultat très peu modifié.
4-4-3. Résolution et Précision :
Pour ce type de convertisseurs, la dynamique n'est plus exprimée en bits, mais en points, qui
correspondent à la capacité maximum du compteur.
Les multimètres de poche font 2000 ou 3000 points, les plus évolués en font 20 000 ou 30 000, et les
multimètres de laboratoire dépassent allégrement les 100 000 points.
Il ne faut toutefois pas se tromper à leur précision réelle, qui est souvent bien. Par exemple, un
multimètre 2000 points (11 bits équivalent à 2048 points) ne dépasse guère une précision de 0,5% de
pleine échelle, soit l'équivalent de 8bits ! Et encore, ceci est valable pour des mesures de tensions
continues ; pour les mesures de courant ou de résistances, la précision peut tomber à 1 ou 2%. En fait, ce
sont les composants externes au convertisseur (ampli, atténuateur) qui déterminent la précision.