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
Positionnez les bits pour qu’ils représentent −44 en complément à deux sur 8 bits. Lu comme un nombre non signé, quelle est la valeur U du motif ?
N = −448 bit
U =
2.Systèmes de numérationDifficile
Une image non compressée fait 1280 × 720 pixels avec 24 bits par pixel. Quelle mémoire M occupe-t-elle, en Kio (1 Kio = 1024 octets) ?
1280 × 720 px24 bit/px1 KiB = 1024 B
M = KiB
3.Logique numérique : portes, tableaux de Karnaugh et basculesMoyen
Un multiplexeur 4 vers 1 a ses entrées de sélection S₁ = A et S₀ = B, et ses entrées de données reliées à I₀ = C, I₁ = C, I₂ = 1, I₃ = C. Pour combien des 8 combinaisons de A, B et C la sortie vaut-elle F = 1 ? Trouvez N.
I₀ = CI₁ = CI₂ = 1I₃ = C
N =
4.Logique numérique : portes, tableaux de Karnaugh et basculesDifficile
Un registre à décalage de 4 bits Q₃Q₂Q₁Q₀ contient 0011. À chaque front d’horloge, les bits se décalent d’une place vers la droite (Q₃ → Q₂ → Q₁ → Q₀, Q₀ est perdu) et l’entrée série entre dans Q₃. L’entrée série vaut 1, 1, 1, 1, 1, 0, 1 aux fronts 7. Donnez l’état final Q = Q₃Q₂Q₁Q₀ sous forme de nombre décimal.
Q₃Q₂Q₁Q₀ = 00111, 1, 1, 1, 1, 0, 1
Q =
5.Acquisition de données et échantillonnageMoyen
Trouvez le rapport signal sur bruit de quantification idéal SQNR d’un CAN de 20 bits pour une sinusoïde pleine échelle.
N = 20
SQNR = dB
6.Acquisition de données et échantillonnageDifficile
Un microcontrôleur à horloge de 4 MHz règle le débit en bauds de son UART à fclk/(16·D), avec D un entier arrondi à la valeur la plus proche. La cible est 38400 bauds. Trouvez l’erreur en pourcentage du débit réel (positive quand il est trop rapide).
fclk = 4 MHzcible = 38400 Bd
e = %
3Solutions
1.Systèmes de numération
Réponse: U = 212
Positionner les bits : chaque bit vaut une puissance de deux (128, 64, …, 1). Un chiffre hexadécimal correspond exactement à quatre bits, et en complément à deux sur 8 bits, le bit le plus à gauche vaut −128. Les opérations bit à bit s’appliquent séparément à chaque position de bit.
Inverser et ajouter un
44 = 0010 1100
inversé: 1101 0011
+1 → 1101 0100
Le lire en non signé
1101 0100₂ = 256 − 44 = 212
Réponse
U = 212
2.Systèmes de numération
Réponse: M = 2700 KiB
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.
Bits et octets
1280·720·24 = 22118400 bit = 2764800 B
Convertir en Kio
2764800/1024 = 2700 KiB
Réponse
M = 2700 KiB
3.Logique numérique : portes, tableaux de Karnaugh et bascules
Réponse: N = 5
Multiplexeur : un multiplexeur 2ⁿ vers 1 transmet l’une de ses entrées de données à la sortie ; les lignes de sélection, lues comme un nombre binaire, choisissent laquelle. Pour un MUX 4 vers 1 avec sélections S₁S₀ = AB, F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃. En reliant les entrées de données à 0, 1, C ou C′, le MUX produit n’importe quelle fonction de A, B et C, ce qui est une manière courante de réaliser une logique avec un seul circuit.
Expression de sortie
F = A′B′C + A′BC + AB′ + ABC
Lignes avec F = 1
ABC = 001, 011, 100, 101, 111
N = 5
Réponse
N = 5
4.Logique numérique : portes, tableaux de Karnaugh et bascules
Réponse: Q = 11
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.
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.
RSBQ idéal
SQNR = 6,02·20 + 1,76 = 122,2 dB
Réponse
SQNR = 122,2 dB
6.Acquisition de données et échantillonnage
Réponse: e = −6,994 %
UART : une liaison série asynchrone envoie chaque octet sous forme de trame : un bit de start (bas), les bits de données, un bit de parité facultatif et un ou deux bits de stop (haut). Le débit en bauds est le nombre de bits par seconde, donc un bit dure Tb = 1/baud et une trame de n bits dure n/baud. Le format courant 8N1 compte 10 bits par octet. Le générateur de bauds divise l’horloge : baud = fclk/(16·D) avec un entier D, donc le débit réel diffère légèrement de la cible ; une erreur inférieure à 2 % environ est généralement acceptable.
Diviseur
D = 4·10⁶/(16·38400) = 6,51 → 7
Débit réel en bauds
4·10⁶/(16·7) = 35714 Bd
Erreur
(35714 − 38400)/38400·100 = −6,994 %
Réponse
e = −6,994 %
Une erreur supérieure à environ 2 % rend la liaison peu fiable : choisissez une autre horloge ou un autre débit.