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
8-bits two's complement0−12806403201608040201

Stel de bits zo in dat ze −58 opslaan in 8-bits tweecomplement. Wat is de waarde U van het patroon, gelezen als getal zonder teken?

N = −588 bit
U =
2.TalstelselsMoeilijk
24-bits tweecomplement, N = ??teken???????????????????????

Wat is het meest negatieve gehele getal N dat in 24-bits two's complement past?

24 bit
N =
3.Digitale logica: poorten, K-kaarten & flip-flopsGemiddeld
ABCD000111100001111010111302140517161120131151141809011110

Gebruik de Karnaugh-kaart om de minimale product-van-sommenvorm (POS) van F(A, B, C, D) = Σm(0, 1, 3, 4, 6, 7, 8, 10, 12, 14, 15) te vinden. Hoeveel somtermen (factoren) N heeft die?

F(A, B, C, D) = Σm(0, 1, 3, 4, 6, 7, 8, 10, 12, 14, 15)
N =
4.Digitale logica: poorten, K-kaarten & flip-flopsMoeilijk
ABCD00011110000111100001X302040507X61120130151141819011010

Bepaal voor F(A, B, C, D) = Σm(8, 9, 12, 14) + d(3, 6), waarbij d de don’t-care-condities aangeeft, het aantal N essentiële priemimplicanten.

F(A, B, C, D) = Σm(8, 9, 12, 14) + d(3, 6)
N =
5.Data-acquisitie en bemonsteringGemiddeld
∿01N = 125 kHz? MB

Een recorder bemonstert één kanaal met 5 kHz en een 12-bits ADC. Elke sample wordt in hele bytes opgeslagen. Bepaal het geheugen M dat nodig is voor een opname van 10 min, in MB (1 MB = 10⁶ bytes).

n = 1fs = 5 kHzN = 12t = 10 min
M = MB
6.Data-acquisitie en bemonsteringMoeilijk
1216⋮16 ch∿01tc​ = 5 µstset​ = 2 µsfs​ = ?

Een multiplexer met 16 kanalen voedt één ADC. Elke conversie duurt 5 µs, en na elke kanaalwissel heeft de ingang 2 µs nodig om in te stellen. De kanalen worden om de beurt zonder pauze afgetast. Bepaal de bemonsteringsfrequentie fs van elk kanaal, in kHz.

n = 16tc = 5 µstset = 2 µs
fs = kHz

3Oplossingen

1.Talstelsels

Antwoord: U = 198

Bits instellen: elke bit is een macht van twee waard (128, 64, …, 1). Eén hexadecimaal cijfer is precies vier bits, en in 8-bits tweecomplement is de meest linkse bit −128 waard. Bitsgewijze bewerkingen werken op elke bitpositie apart.

Omkeren en één optellen

58 = 0011 1010
omgekeerd: 1100 0101
+1 → 1100 0110

Lezen zonder teken

1100 0110₂ = 256 − 58 = 198

Antwoord

U = 198
2.Talstelsels

Antwoord: N = −8,389 × 10⁶

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.

Meest negatieve waarde

−223 = −8388608

Antwoord

N = −8388608
3.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: N = 3

Karnaugh-kaarten: de cellen staan in Gray-code (00, 01, 11, 10), dus naburige cellen, ook die over de randen heen, verschillen in precies één variabele. Groepeer de enen in rechthoeken van 1, 2, 4, 8 of 16 cellen, zo groot en zo weinig mogelijk, totdat elke 1 gedekt is. Elke groep is één productterm: de variabelen die erin constant blijven. Een groep van 2ᵏ cellen verliest k variabelen. Don’t-cares (X) mogen worden gebruikt om groepen groter te maken maar hoeven nooit gedekt te worden. Groepeer je in plaats daarvan de nullen, dan krijg je de minimale POS-vorm.

ABCD000111100001111010111302140517161120131151141809011110

Groepeer de nullen

Elke groep is een rechthoek van 2ᵏ cellen; randcellen zijn buren van de cellen op de tegenoverliggende rand.

(B′ + C + D′)
(A′ + B + D′)
(A + B + C′ + D)

Minimale POS-vorm

F = (B′ + C + D′)(A′ + B + D′)(A + B + C′ + D)
N = 3

Antwoord

N = 3
4.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: N = 1

Karnaugh-kaarten: de cellen staan in Gray-code (00, 01, 11, 10), dus naburige cellen, ook die over de randen heen, verschillen in precies één variabele. Groepeer de enen in rechthoeken van 1, 2, 4, 8 of 16 cellen, zo groot en zo weinig mogelijk, totdat elke 1 gedekt is. Elke groep is één productterm: de variabelen die erin constant blijven. Een groep van 2ᵏ cellen verliest k variabelen. Don’t-cares (X) mogen worden gebruikt om groepen groter te maken maar hoeven nooit gedekt te worden. Groepeer je in plaats daarvan de nullen, dan krijg je de minimale POS-vorm.

Priemimplicanten

De grootste groepen die uit enen en X’en gevormd kunnen worden.

BCD′, AC′D′, ABD′, AB′C′
ABCD00011110000111100001X302040507X61120130151141819011010

Essentiële priemimplicanten

AB′C′
N = 1

Antwoord

N = 1
5.Data-acquisitie en bemonstering

Antwoord: M = 6 MB

Datasnelheden: elk kanaal levert fs samples per seconde van N bits, dus de ruwe snelheid is kanalen × fs × N bit/s. In het geheugen neemt een sample hele bytes in beslag (een sample van 12 bits wordt in 2 bytes opgeslagen), dus het geheugen voor een opname is kanalen × fs × bytes per sample × tijd. Een gemultiplexte ADC zet de kanalen na elkaar om: elke conversie (inclusief insteltijd) duurt t, dus een ronde van n kanalen duurt n·t en elk kanaal wordt bemonsterd met 1/(n·t).

Bytes per sample

⌈12/8⌉ = 2 B

Bytesnelheid

1·5000·2 = 10000 B/s

Geheugen

M = 10000·600 = 6 × 10⁶ B = 6 MB

Antwoord

M = 6 MB
6.Data-acquisitie en bemonstering

Antwoord: fs = 8,929 kHz

Datasnelheden: elk kanaal levert fs samples per seconde van N bits, dus de ruwe snelheid is kanalen × fs × N bit/s. In het geheugen neemt een sample hele bytes in beslag (een sample van 12 bits wordt in 2 bytes opgeslagen), dus het geheugen voor een opname is kanalen × fs × bytes per sample × tijd. Een gemultiplexte ADC zet de kanalen na elkaar om: elke conversie (inclusief insteltijd) duurt t, dus een ronde van n kanalen duurt n·t en elk kanaal wordt bemonsterd met 1/(n·t).

Tijd per kanaal

5 + 2 = 7 µs

Tijd per scan

16·7 = 112 µs

Bemonsteringsfrequentie per kanaal

fs = 1/112 µs = 8,929 kHz

Antwoord

fs = 8,929 kHz

ExamProblems · examproblems.com/courses/digital-electronics