Dans la fenêtre d’impression, choisissez « Enregistrer au format PDF » pour garder une copie sur votre appareil.
1Formules et méthodes
Systèmes de numération
Poids des positions
binaire 2k, octal 8k, hexa 16k
Vers le décimal
Σ dk·bk
Depuis le décimal
diviser par la base, lire les restes de bas en haut
Hexa ↔ binaire
un chiffre hexa = 4 bits
Complément à deux
inverser les bits et ajouter 1
Logique numérique : portes, tableaux de Karnaugh et bascules
Portes de base
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Règles booléennes
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgan
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Ordre du tableau de Karnaugh
00, 01, 11, 10 (Gray code)
Groupe de 2ᵏ cases
perd k variables
Multiplexeur 4 vers 1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Bascules
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Compteurs
n bits : 2ⁿ états ; modulo N : plus petit n tel que 2ⁿ ≥ N ; fout = fclk/N
Compteur asynchrone
fmax = 1/(n·tpd)
Compteurs en anneau et Johnson
n et 2n états
Méthode
Pour un circuit, travaillez des entrées vers la sortie, une porte à la fois, et écrivez la valeur sur chaque fil, ou écrivez son expression et remplissez la table de vérité.
Pour la simplification, placez les 1 (et les états indifférents sous forme de X) dans un tableau de Karnaugh dont les lignes et colonnes suivent le code de Gray : 00, 01, 11, 10.
Couvrez les 1 avec le moins possible de groupes de 1, 2, 4, 8 ou 16 cases, aussi grands que possible, en débordant sur les bords ; chaque groupe est un terme produit formé des variables qui restent constantes. Regroupez les 0 pour la forme POS.
Pour les bascules et les compteurs, lisez les entrées à chaque front d’horloge actif, notez l’état après chaque front, et rappelez-vous qu’un compteur de n bits repasse à zéro après 2ⁿ états.
Acquisition de données et échantillonnage
Critère de Nyquist
fs > 2·fmax, fN = fs/2
Fréquence d’alias
fa = |f − k·fs|, k = round(f/fs)
Pas de quantification
1 LSB = VFSR/2ᴺ
Erreur de quantification (arrondi)
±½ LSB
CAN à troncature
D = ⌊Vin/LSB⌋
Nombre de bits pour une résolution r
2ᴺ ≥ span/r
RSBQ idéal, sinusoïde pleine échelle
SQNR = 6,02·N + 1,76 dB
Débit de données
canaux × fs × N bit/s
CAN multiplexé
fs = 1/(n·(tc + tset))
UART
Tb = 1/baud ; 8N1 = 10 bits par octet ; octets/s = baud/bits par trame
Diviseur de débit en bauds
baud = fclk/(16·D)
Méthode
Notez les données : fréquence d’échantillonnage, fréquences du signal, nombre de bits, plage d’entrée, débit en bauds.
Pour les questions d’échantillonnage, comparez chaque fréquence à fs/2 ; une fréquence plus élevée apparaît à fa = |f − k·fs|, avec le multiple de fs le plus proche.
Pour les questions de résolution, calculez 1 LSB = VFSR/2ᴺ, ou le plus petit N tel que 2ᴺ ≥ étendue/résolution.
Pour les débits et les liaisons UART, comptez tout ce qui est envoyé : canaux, échantillons par seconde, bits ou octets entiers par échantillon, et bits de start, de parité et de stop de chaque trame.
2Exercices
1.Systèmes de numérationMoyen
Écris −116 comme motif de 8 bits en complément à deux. Lis ce motif comme un nombre binaire non signé : quelle est sa valeur U en décimal ?
N = −1168 bit
U =
2.Systèmes de numérationDifficile
Un système doit donner à chacun de 2265 éléments son propre code binaire, tous de même longueur. Quel est le plus petit nombre de bits b nécessaire ?
2265
b = bit
3.Logique numérique : portes, tableaux de Karnaugh et basculesMoyen
Utilisez le tableau de Karnaugh pour trouver la forme produit de sommes (POS) minimale de F(A, B, C) = Σm(0, 3, 4, 5, 6, 7). Combien de termes somme (facteurs) N a-t-elle ?
F(A, B, C) = Σm(0, 3, 4, 5, 6, 7)
N =
4.Logique numérique : portes, tableaux de Karnaugh et basculesDifficile
Une horloge de 100 kHz pilote un compteur modulo 100. Trouvez la fréquence fout de sa sortie de poids fort, qui effectue un cycle par cycle de comptage.
fclk = 100 kHzN = 100
fout = kHz
5.Acquisition de données et échantillonnageMoyen
Un CAN de plage d’entrée 0 à 1 V doit résoudre des pas de 0,2 mV ou moins. Trouvez le plus petit nombre de bits N.
VFSR = 1 Vrésolution = 0,2 mV
N =
6.Acquisition de données et échantillonnageDifficile
Un signal carré de 6 kHz est échantillonné à 20 kHz sans filtre anti-repliement. Un signal carré contient les harmoniques impairs 3f₁, 5f₁, 7f₁, … À quelle fréquence fa l’harmonique 5f₁ apparaît-il dans les données échantillonnées ? Donnez-la en kHz.
f₁ = 6 kHzfs = 20 kHzharmonique: 5f₁
fa = kHz
3Solutions
1.Systèmes de numération
Réponse: U = 140
Systèmes de numération positionnels : chaque chiffre vaut sa valeur multipliée par une puissance de la base. En binaire les positions valent 1, 2, 4, 8, 16, … ; en hexadécimal 1, 16, 256, …, avec A–F pour 10–15. En complément à deux sur 8 bits, le bit de gauche vaut −128 au lieu de +128 : c'est ainsi qu'on stocke les nombres négatifs.
Inverser et ajouter un
116 = 0111 0100
inversé: 1000 1011
+1 → 1000 1100
Le lire en non signé
1000 1100₂ = 256 − 116 = 140
Réponse
U = 140
2.Systèmes de numération
Réponse: b = 12 bit
Systèmes de numération positionnels : chaque chiffre vaut sa valeur multipliée par une puissance de la base. En binaire les positions valent 1, 2, 4, 8, 16, … ; en hexadécimal 1, 16, 256, …, avec A–F pour 10–15. En complément à deux sur 8 bits, le bit de gauche vaut −128 au lieu de +128 : c'est ainsi qu'on stocke les nombres négatifs.
Puissances de deux
211 = 2048 < 2265
212 = 4096 ≥ 2265
Réponse
b = 12
3.Logique numérique : portes, tableaux de Karnaugh et bascules
Réponse: N = 2
Tableaux de Karnaugh : les cases sont ordonnées en code de Gray (00, 01, 11, 10), donc les cases voisines, y compris celles de part et d’autre des bords, diffèrent par exactement une variable. Regroupez les 1 en rectangles de 1, 2, 4, 8 ou 16 cases, aussi grands que possible et en aussi petit nombre que possible, jusqu’à ce que chaque 1 soit couvert. Chaque groupe est un terme produit : les variables qui restent constantes à l’intérieur. Un groupe de 2ᵏ cases perd k variables. Les états indifférents (X) peuvent servir à agrandir les groupes mais n’ont jamais besoin d’être couverts. Regrouper les 0 donne la forme POS minimale.
Regrouper les 0
Chaque groupe est un rectangle de 2ᵏ cases ; les cases de bord sont voisines des cases du bord opposé.
(A + B + C′)
(A + B′ + C)
Forme POS minimale
F = (A + B + C′)(A + B′ + C)
N = 2
Réponse
N = 2
4.Logique numérique : portes, tableaux de Karnaugh et bascules
Réponse: fout = 1 kHz
Bascules et compteurs : une bascule ne change qu’au front actif de l’horloge. D copie son entrée (Q⁺ = D) ; T change d’état quand T = 1 ; JK conserve pour 00, remet à 0 pour 01, met à 1 pour 10 et change d’état pour 11. Un compteur binaire de n bits a 2ⁿ états et compte modulo 2ⁿ ; un compteur modulo N va de 0, 1, …, N − 1 puis revient à 0, et exige le plus petit n tel que 2ⁿ ≥ N bascules. Chaque étage d’un compteur asynchrone divise la fréquence par deux, donc la dernière sortie d’un compteur modulo N tourne à fclk/N. Un compteur Johnson de n bascules a 2n états, un compteur en anneau n.
Division de fréquence
fout = 100 kHz / 100 = 1 kHz
Réponse
fout = 1 kHz
5.Acquisition de données et échantillonnage
Réponse: N = 13
Résolution du CAN : un convertisseur de N bits divise sa plage pleine échelle VFSR en 2ᴺ codes, de 0 à 2ᴺ − 1. Un pas vaut 1 LSB = VFSR/2ᴺ : la plus petite variation que le convertisseur peut afficher. Un CAN à troncature donne le code ⌊Vin/LSB⌋ ; un CAN à arrondi n’est jamais à plus de ½ LSB de la valeur réelle, c’est son erreur de quantification. Chaque bit supplémentaire divise le LSB par deux et ajoute environ 6 dB au rapport signal sur bruit de quantification idéal RSBQ = 6,02·N + 1,76 dB pour une sinusoïde pleine échelle. Pour atteindre une résolution r sur une étendue, choisissez le plus petit N tel que 2ᴺ ≥ étendue/r.
Pas nécessaires
1000 mV/0,2 mV = 5000
Bits
log₂(5000) = 12,29
212 = 4096 < 5000 ≤ 213 = 8192
N = 13
Réponse
N = 13
6.Acquisition de données et échantillonnage
Réponse: fa = 10 kHz
Échantillonnage : un CAN mesure le signal fs fois par seconde. D’après le théorème de Nyquist–Shannon, une fréquence f n’est correctement captée que si f < fs/2, la fréquence de Nyquist (de repliement) ; la fréquence d’échantillonnage doit donc dépasser le double de la plus haute fréquence du signal. Une fréquence plus élevée n’est pas perdue : elle apparaît comme un alias à fa = |f − k·fs|, avec l’entier k qui ramène le résultat entre 0 et fs/2. Les échantillons ne permettent pas de distinguer les deux, donc un filtre anti-repliement analogique doit supprimer tout ce qui dépasse fs/2 avant le CAN.
Fréquence de l’harmonique
5f₁ = 5·6 kHz = 30 kHz
Multiple le plus proche de la fréquence d’échantillonnage
m = round(1,5) = 2
Fréquence d’alias
fa = |30 − 2·20| = 10 kHz
Réponse
fa = 10 kHz
L’alias tombe dans la bande du signal, où aucun filtre numérique ne peut l’éliminer. Seul un filtre analogique placé avant le CAN est efficace.