Digitale elektronica: samenvattingspakket

Formuleoverzichten, de belangrijkste methodestappen voor elk onderwerp en 6 oefenopgaven, met volledige oplossingen achterin.

Nieuwe opgavenTerug naar het vak

Kies in het printvenster “Opslaan als pdf” om een kopie op je apparaat te bewaren.

1Formules en methoden

Talstelsels

Plaatswaarden
binair 2k, octaal 8k, hex 16k
Naar decimaal
Σ dk·bk
Vanuit decimaal
deel door het grondtal en lees de resten van onder naar boven
Hex ↔ binair
één hexcijfer = 4 bits
Two's complement
inverteer de bits en tel 1 op

Digitale logica: poorten, K-kaarten & flip-flops

Basispoorten
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Booleaanse regels
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgan
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Volgorde van de Karnaugh-kaart
00, 01, 11, 10 (Gray code)
Groep van 2ᵏ cellen
verliest k variabelen
4-naar-1-multiplexer
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Flip-flops
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Tellers
n-bits: 2ⁿ toestanden; mod-N: kleinste n met 2ⁿ ≥ N; fuit = fklok/N
Ripple-teller
fmax = 1/(n·tpd)
Ring- en Johnson-tellers
n en 2n toestanden

Methode

  1. Werk bij een schakeling van de ingangen naar de uitgang, één poort tegelijk, en schrijf de waarde op elke draad, of schrijf de uitdrukking op en vul de waarheidstabel in.
  2. Zet voor vereenvoudiging de enen (en de don’t-cares als X) in een Karnaugh-kaart met rijen en kolommen in Gray-code: 00, 01, 11, 10.
  3. Dek de enen met zo weinig en zo grote groepen van 1, 2, 4, 8 of 16 cellen als mogelijk, met terugloop om de randen; elke groep is één productterm van de variabelen die constant blijven. Groepeer de nullen voor de POS-vorm.
  4. Lees bij flip-flops en tellers de ingangen af op elke actieve klokflank, schrijf de toestand na elke flank op, en onthoud dat een n-bits teller na 2ⁿ toestanden terugloopt.

Data-acquisitie en bemonstering

Nyquistcriterium
fs > 2·fmax, fN = fs/2
Aliasfrequentie
fa = |f − k·fs|, k = round(f/fs)
Stapgrootte
1 LSB = VFSR/2ᴺ
Kwantisatiefout (afronding)
±½ LSB
Afkappende ADC-code
D = ⌊Vin/LSB⌋
Bits voor een resolutie r
2ᴺ ≥ span/r
Ideale SQNR, volle-schaal sinus
SQNR = 6,02·N + 1,76 dB
Datasnelheid
kanalen × fs × N bit/s
Gemultiplexte ADC
fs = 1/(n·(tc + tset))
UART
Tb = 1/baud; 8N1 = 10 bits per byte; bytes/s = baud/bits per frame
Baudrate-deler
baud = fclk/(16·D)

Methode

  1. Schrijf op wat gegeven is: bemonsteringsfrequentie, signaalfrequenties, aantal bits, ingangsbereik, baudrate.
  2. Vergelijk bij bemonsteringsvragen elke frequentie met fs/2; een hogere frequentie verschijnt bij fa = |f − k·fs| met het dichtstbijzijnde veelvoud van fs.
  3. Bepaal bij resolutievragen 1 LSB = VFSR/2ᴺ, of de kleinste N met 2ᴺ ≥ bereik/resolutie.
  4. Tel bij datasnelheden en UART-verbindingen alles wat wordt verzonden: kanalen, samples per seconde, bits of hele bytes per sample, en de start-, pariteits- en stopbits van elk frame.

2Oefenopgaven

1.TalstelselsGemiddeld
plaatswaarden in two's complement1−12806413211618041211

Het 8-bits patroon 1011 1011 slaat een geheel getal met teken op in two's complement. Wat is de waarde N in decimaal?

1011 10118 bit
N =
2.TalstelselsMoeilijk
32 bit1 px512 px512 pxM = ? KiB

Een ongecomprimeerde afbeelding is 512 × 512 pixels met 32 bits per pixel. Hoeveel geheugen M kost die, in KiB (1 KiB = 1024 bytes)?

512 × 512 px32 bit/px1 KiB = 1024 B
M = KiB
3.Digitale logica: poorten, K-kaarten & flip-flopsGemiddeld
ABC000111100101324576

Vereenvoudig F = AC + A′BC + ABC′ tot zijn minimale som-van-productenvorm. Hoeveel literals L bevat de vereenvoudigde uitdrukking?

F = AC + A′BC + ABC′
L =
4.Digitale logica: poorten, K-kaarten & flip-flopsMoeilijk
CLKJK12345678

Een JK-flip-flop, getriggerd op de stijgende flank, begint met Q = 0 en krijgt bij 8 stijgende klokflanken de getoonde ingangen. Hoe vaak N verandert Q van toestand?

Q₀ = 0JK
N =
5.Data-acquisitie en bemonsteringGemiddeld
Vin​N = 6VFSR​2ᴺ − 101 LSB

Bepaal de ideale signaal-kwantisatieruisverhouding SQNR van een 6-bits ADC voor een sinus met volle uitsturing.

N = 6
SQNR = dB
6.Data-acquisitie en bemonsteringMoeilijk
f0fs​/2fs​800 Hz7f₁?

Een blokgolf van 800 Hz wordt zonder anti-aliasingfilter bemonsterd met 8 kHz. Een blokgolf bevat de oneven harmonischen 3f₁, 5f₁, 7f₁, … Bij welke frequentie fa verschijnt zijn harmonische 7f₁ in de bemonsterde data? Geef het antwoord in Hz.

f₁ = 800 Hzfs = 8 kHzharmonische: 7f₁
fa = Hz

3Oplossingen

1.Talstelsels

Antwoord: N = −69

Positionele talstelsels: elk cijfer is zijn waarde maal een macht van het grondtal waard. Binair zijn de posities 1, 2, 4, 8, 16, … waard, hexadecimaal 1, 16, 256, …, met A–F voor 10–15. In 8-bits two's complement is het meest linkse bit −128 waard in plaats van +128; zo worden negatieve getallen opgeslagen.

Plaatswaarden optellen

De andere bits houden hun gewone positieve waarde.

−128 + 32 + 16 + 8 + 2 + 1 = −69

Antwoord

N = −69
2.Talstelsels

Antwoord: M = 1024 KiB

Positionele talstelsels: elk cijfer is zijn waarde maal een macht van het grondtal waard. Binair zijn de posities 1, 2, 4, 8, 16, … waard, hexadecimaal 1, 16, 256, …, met A–F voor 10–15. In 8-bits two's complement is het meest linkse bit −128 waard in plaats van +128; zo worden negatieve getallen opgeslagen.

Bits en bytes

512·512·32 = 8388608 bit = 1048576 B

Omrekenen naar KiB

1048576/1024 = 1024 KiB

Antwoord

M = 1024 KiB
3.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: L = 6

Booleaanse algebra: de regels die uitdrukkingen vereenvoudigen zijn X + X′ = 1 en X·X′ = 0, X + X = X, absorptie X + X·Y = X, de samenvoegregel X·Y + X·Y′ = X, X + X′Y = X + Y en de consensusstelling XY + X′Z + YZ = XY + X′Z. De wetten van De Morgan veranderen (X·Y)′ in X′ + Y′ en (X + Y)′ in X′·Y′. Een Karnaugh-kaart past deze regels grafisch toe: elke groep van twee naburige cellen is één toepassing van XY + XY′ = X.

Mintermen van de uitdrukking

AC → m(5, 7)
A′BC → m(3)
ABC′ → m(6)
ABC00011110010001130204151716

Groepeer en lees af

F = BC + AC + AB

Tel de literals

L = 6

Antwoord

L = 6
4.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: N = 5

Flip-flops en tellers: een flip-flop verandert alleen op de actieve klokflank. D kopieert zijn ingang (Q⁺ = D); T wisselt als T = 1; JK houdt vast bij 00, reset bij 01, zet bij 10 en wisselt bij 11. Een n-bits binaire teller heeft 2ⁿ toestanden en telt modulo 2ⁿ; een mod-N-teller telt 0, 1, …, N − 1 en dan weer 0, en heeft de kleinste n met 2ⁿ ≥ N flip-flops nodig. Elke trap van een ripple-teller halveert de frequentie, dus de laatste uitgang van een mod-N-teller loopt op fklok/N. Een Johnson-teller van n flip-flops heeft 2n toestanden, een ringteller n.

Q na elke flank

Een JK-flip-flop: 00 houdt vast, 01 reset (Q = 0), 10 zet (Q = 1), 11 wisselt.

1: J = 1, K = 1 → Q = 1
2: J = 0, K = 1 → Q = 0
3: J = 1, K = 0 → Q = 1
4: J = 1, K = 0 → Q = 1
5: J = 0, K = 0 → Q = 1
6: J = 0, K = 1 → Q = 0
7: J = 0, K = 1 → Q = 0
8: J = 1, K = 0 → Q = 1

Tel de veranderingen

0 → 1 → 0 → 1 → 1 → 1 → 0 → 0 → 1
N = 5

Antwoord

N = 5
5.Data-acquisitie en bemonstering

Antwoord: SQNR = 37,88 dB

ADC-resolutie: een N-bits omzetter verdeelt zijn volle-schaalbereik VFSR in 2ᴺ codes, van 0 tot 2ᴺ − 1. Eén stap is 1 LSB = VFSR/2ᴺ: de kleinste verandering die de omzetter kan tonen. Een afkappende ADC geeft de code ⌊Vin/LSB⌋; een afrondende ADC zit nooit meer dan ½ LSB van de ware waarde af, zijn kwantisatiefout. Elke extra bit halveert de LSB en voegt ongeveer 6 dB toe aan de ideale signaal-kwantisatieruisverhouding SQNR = 6,02·N + 1,76 dB voor een sinus met volle uitsturing. Om een resolutie r over een bereik te halen, kies je de kleinste N met 2ᴺ ≥ bereik/r.

Ideale SQNR

SQNR = 6,02·6 + 1,76 = 37,88 dB

Antwoord

SQNR = 37,88 dB
6.Data-acquisitie en bemonstering

Antwoord: fa = 2400 Hz

Bemonstering: een ADC meet het signaal fs keer per seconde. Volgens het Nyquist–Shannon-theorema wordt een frequentie f alleen correct vastgelegd zolang f < fs/2, de Nyquistfrequentie (vouwfrequentie), dus de bemonsteringsfrequentie moet groter zijn dan twee keer de hoogste signaalfrequentie. Een hogere frequentie gaat niet verloren: ze verschijnt als alias bij fa = |f − k·fs|, met het hele getal k dat het resultaat tussen 0 en fs/2 brengt. De samples kunnen de twee niet uit elkaar houden, dus een analoog anti-aliasingfilter moet alles boven fs/2 verwijderen vóór de ADC.

Frequentie van de harmonische

7f₁ = 7·800 Hz = 5,6 kHz

Dichtstbijzijnde veelvoud van de bemonsteringsfrequentie

m = round(0,7) = 1

Aliasfrequentie

fa = |5600 − 1·8000| = 2400 Hz

Antwoord

fa = 2400 Hz

De alias komt binnen de signaalband terecht, waar geen digitaal filter hem kan verwijderen. Alleen een analoog filter vóór de ADC helpt.

ExamProblems · examproblems.com/courses/digital-electronics