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−12816403211608141211

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

1101 01118 bit
N =
2.TalstelselsMoeilijk
klik op de bits om ze in te stellen012806403201608040201

Stel de bits in op het 8-bits resultaat van 1010 0000 OR 1111 0101. Wat is de waarde R van het resultaat in decimaal?

1010 0000OR1111 0101
R =
3.Digitale logica: poorten, K-kaarten & flip-flopsGemiddeld
ABCD0001111000011110111111

In deze Karnaugh-kaart heeft precies één 1 geen naburige 1, dus hij blijft een groep van één cel (een volledige minterm van vier literals) in de minimale SOP-vorm. Buren over de randen van de kaart tellen mee. Klik op die cel.

F = Σm(1, 2, 6, 11, 14, 15)
  1. 1AB = 00, CD = 00
  2. 2AB = 00, CD = 01
  3. 3AB = 00, CD = 11
  4. 4AB = 00, CD = 10
  5. 5AB = 01, CD = 00
  6. 6AB = 01, CD = 01
  7. 7AB = 01, CD = 11
  8. 8AB = 01, CD = 10
  9. 9AB = 11, CD = 00
  10. 10AB = 11, CD = 01
  11. 11AB = 11, CD = 11
  12. 12AB = 11, CD = 10
  13. 13AB = 10, CD = 00
  14. 14AB = 10, CD = 01
  15. 15AB = 10, CD = 11
  16. 16AB = 10, CD = 10
4.Digitale logica: poorten, K-kaarten & flip-flopsMoeilijk
TQ0​Q0​TQ1​Q1​TQ2​Q2​CLK

Een 3-bits ripple-teller (asynchroon) is gebouwd met flip-flops met een voortplantingsvertraging van 12 ns elk. Alle uitgangen moeten stabiel zijn vóór de volgende klokflank. Bepaal de maximale klokfrequentie fmax.

n = 3tpd = 12 ns
fmax = MHz
5.Data-acquisitie en bemonsteringGemiddeld
Vin​N = 1210 V2ᴺ − 101 LSB6,078 V?

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

N = 12VFSR = 10 VVin = 6,078 V
D =
6.Data-acquisitie en bemonsteringMoeilijk
Vin​N = ?VFSR​2ᴺ − 101 LSB

Een audiometing vraagt een ideale signaal-kwantisatieruisverhouding van minstens 100 dB voor een sinus met volle uitsturing. Bepaal het kleinste aantal ADC-bits N.

SQNR ≥ 100 dB
N =

3Oplossingen

1.Talstelsels

Antwoord: N = −41

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 + 64 + 16 + 4 + 2 + 1 = −41

Antwoord

N = −41
2.Talstelsels

Antwoord: R = 245

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.

Bit voor bit

OR geeft 1 waar minstens één bit 1 is.

1010 0000
OR 1111 0101
= 1111 0101

Waarde van het resultaat

1111 0101₂ = 245

Antwoord

R = 245
3.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: AB = 00, CD = 01

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.

Buren van elke 1

Een 1 met een naburige 1 kan deel uitmaken van een groep van twee of meer.

m1: m0, m3, m5, m9 → 0
ABCD0001111000011110111111

De geïsoleerde 1

m1 = A′B′C′D → AB = 00, CD = 01

Antwoord

AB = 00, CD = 01
4.Digitale logica: poorten, K-kaarten & flip-flops

Antwoord: fmax = 27,78 MHz

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.

Slechtste insteltijd

T = 3·12 ns = 36 ns

Maximale frequentie

fmax = 1/36 ns = 27,78 MHz

Antwoord

fmax = 27,78 MHz
5.Data-acquisitie en bemonstering

Antwoord: D = 2489

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 = 10/212 = 2,441 mV

Code

Vin/LSB = 6078/2,441 = 2490
code = ⌊2490⌋ = 2489

Antwoord

D = 2489

In binair is dat 100110111001.

6.Data-acquisitie en bemonstering

Antwoord: N = 17

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.

Los op voor N

N ≥ (100 − 1,76)/6,02 = 16,32

Naar boven afronden

N = 17
controle: 6,02·17 + 1,76 = 104,1 dB ≥ 100 dB

Antwoord

N = 17

ExamProblems · examproblems.com/courses/digital-electronics