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 complement?−128?64?32?16?8?4?2?1

Schrijf −31 als 8-bits patroon in two's complement. Lees het patroon als binair getal zonder teken: wat is de waarde U in decimaal?

N = −318 bit
U =
2.TalstelselsMoeilijk
10-bits tweecomplement, N = ??teken?????????

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

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

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

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

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

F(A, B, C, D) = Σm(1, 3, 7, 8, 13) + d(5, 6, 11, 12, 14)
N =
5.Data-acquisitie en bemonsteringGemiddeld
Vin​N = 105 V2ᴺ − 101 LSB2,546 V?

Een 10-bits ADC met een ingangsbereik van 0 tot 5 V kapt af: zijn uitgangscode is ⌊Vin/LSB⌋ met 1 LSB = VFSR/2ᴺ. Bepaal de decimale uitgangscode D voor een ingang van 2,546 V.

N = 10VFSR = 5 VVin = 2,546 V
D =
6.Data-acquisitie en bemonsteringMoeilijk
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​10·Tb​19200 Bd, 8N1

Een 24-bits ADC stuurt elke sample via een UART met 19200 baud, formaat 8N1 (startbit, 8 databits, 1 stopbit). Elke sample wordt als 3 hele byte(s) verzonden en de verbinding is voortdurend bezet. Bepaal de hoogste signaalfrequentie fmax die zonder aliasing kan worden bemonsterd, in Hz.

baud = 19200 BdN = 248N1
fmax = Hz

3Oplossingen

1.Talstelsels

Antwoord: U = 225

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.

Omkeren en één optellen

31 = 0001 1111
omgekeerd: 1110 0000
+1 → 1110 0001

Lezen zonder teken

1110 0001₂ = 256 − 31 = 225

Antwoord

U = 225
2.Talstelsels

Antwoord: N = −512

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

−29 = −512

Antwoord

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

Antwoord: L = 5

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

AB′C′ → m(4)
ABC → m(7)
A′BC → m(3)
ABC00011110010001130214051706

Groepeer en lees af

F = BC + AB′C′

Tel de literals

L = 5

Antwoord

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

Antwoord: N = 2

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.

B′CD, BC′D, A′D, AC′D′, A′BC, ABC′
ABCD00011110000111100011130204X517X6X12113015X141809X11010

Essentiële priemimplicanten

A′D, AC′D′
N = 2

Antwoord

N = 2
5.Data-acquisitie en bemonstering

Antwoord: D = 521

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.

Stapgrootte

1 LSB = 5/210 = 4,883 mV

Code

Vin/LSB = 2546/4,883 = 521,4
code = ⌊521,4⌋ = 521

Antwoord

D = 521

In binair is dat 1000001001.

6.Data-acquisitie en bemonstering

Antwoord: fmax = 320 Hz

UART: een asynchrone seriële verbinding verstuurt elke byte als een frame: één startbit (laag), de databits, een optionele pariteitsbit en een of twee stopbits (hoog). De baudrate is het aantal bits per seconde, dus één bit duurt Tb = 1/baud en een frame van n bits duurt n/baud. Het gangbare 8N1-formaat heeft 10 bits per byte. De baudgenerator deelt de klok: baud = fclk/(16·D) met een geheel getal D, dus de werkelijke baudrate wijkt iets af van de gewenste; een fout onder ongeveer 2 % is meestal acceptabel.

Bits per sample op de lijn

3·10 = 30 bit

Hoogste bemonsteringsfrequentie

fs,max = 19200/30 = 640 Hz

Nyquistgrens

fmax = 640/2 = 320 Hz

Antwoord

fmax = 320 Hz

ExamProblems · examproblems.com/courses/digital-electronics