Skaitmeninė elektronika: pasiruošimo paketas

Formulių lapai, pagrindiniai kiekvienos temos metodų žingsniai ir 6 uždavinių, o pilni sprendimai pateikti gale.

Nauji uždaviniaiAtgal į kursą

Spausdinimo lange pasirinkite „Išsaugoti kaip PDF“, kad nuosavą kopiją išsaugotumėte savo įrenginyje.

1Formulės ir metodai

Skaičiavimo sistemos

Pozicijų vertės
dvejetainė 2k, aštuntainė 8k, šešioliktainė 16k
Į dešimtainę
Σ dk·bk
Iš dešimtainės
dalykite iš pagrindo, liekanas skaitykite iš apačios į viršų
Šešioliktainė ↔ dvejetainė
vienas šešioliktainis skaitmuo = 4 bitai
Papildomasis kodas
invertuokite bitus ir pridėkite 1

Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriai

Pagrindiniai elementai
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Būlio taisyklės
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgano dėsniai
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Karno žemėlapio tvarka
00, 01, 11, 10 (Gray code)
2ᵏ langelių grupė
netenka k kintamųjų
4 į 1 multiplekseris
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Trigeriai
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Skaitikliai
n bitų: 2ⁿ būsenų; mod-N: mažiausias n, kad 2ⁿ ≥ N; fout = fclk/N
Nuosekliojo veikimo (ripple) skaitiklis
fmax = 1/(n·tpd)
Žiediniai ir Johnsono skaitikliai
n ir 2n būsenų

Metodas

  1. Grandinei dirbkite nuo įėjimų iki išėjimo po vieną elementą ir užrašykite reikšmę ant kiekvieno laido arba užrašykite išraišką ir užpildykite teisingumo lentelę.
  2. Supaprastindami įrašykite vienetus (o nesvarbias reikšmes kaip X) į Karno žemėlapį su Grejaus kodo eilutėmis ir stulpeliais: 00, 01, 11, 10.
  3. Vienetus padenkite kuo mažiau ir kuo didesnių 1, 2, 4, 8 ar 16 langelių grupių, apsisukančių per kraštus; kiekviena grupė yra vienas sandaugos narys iš kintamųjų, kurie joje nesikeičia. POS formai grupuokite nulius.
  4. Trigeriams ir skaitikliams skaitykite įėjimus kiekvienu aktyviu taktiniu frontu, užrašykite būseną po kiekvieno fronto ir atminkite, kad n bitų skaitiklis apsisuka po 2ⁿ būsenų.

Duomenų kaupimas ir diskretizavimas

Naikvisto kriterijus
fs > 2·fmax, fN = fs/2
Persiklojimo dažnis
fa = |f − k·fs|, k = round(f/fs)
Žingsnio dydis
1 LSB = VFSR/2ᴺ
Kvantavimo paklaida (apvalinimas)
±½ LSB
Nupjaunantis ADC kodas
D = ⌊Vin/LSB⌋
Bitų skaičius skiriamajai gebai r
2ᴺ ≥ span/r
Idealus SQNR, pilnos skalės sinusas
SQNR = 6,02·N + 1,76 dB
Duomenų sparta
kanalai × fs × N bit/s
Multipleksuojamas ADC
fs = 1/(n·(tc + tset))
UART
Tb = 1/baud; 8N1 = 10 bitų vienam baitui; baitai/s = baud/bitai viename kadre
Baud spartos daliklis
baud = fclk/(16·D)

Metodas

  1. Užsirašykite, kas duota: diskretizavimo dažnį, signalo dažnius, bitų skaičių, įėjimo ruožą, baud spartą.
  2. Diskretizavimo uždaviniuose kiekvieną dažnį palyginkite su fs/2; aukštesnis dažnis pasirodo ties fa = |f − k·fs|, kai imamas artimiausias fs kartotinis.
  3. Skiriamosios gebos uždaviniuose raskite 1 LSB = VFSR/2ᴺ arba mažiausią N, su kuriuo 2ᴺ ≥ ruožas/skiriamoji geba.
  4. Duomenų spartos ir UART ryšio uždaviniuose suskaičiuokite viską, kas siunčiama: kanalus, atskaitas per sekundę, bitus ar sveikus baitus vienai atskaitai ir kiekvieno kadro starto, lyginumo ir stabdos bitus.

2Uždaviniai

1.Skaičiavimo sistemosVidutinis
8 bitų papildomasis kodas0−12806403201608040201

Nustatykite bitus, kad jie saugotų −70 8 bitų dvejetainiu papildomuoju kodu. Skaitant kaip skaičių be ženklo, kokia šablono reikšmė U?

N = −708 bit
U =
2.Skaičiavimo sistemosSunkus
8 bit1 px256 px256 pxM = ? KiB

Nesuspaustas vaizdas yra 256 × 256 pikselių, 8 bitų pikseliui. Kiek atminties M jis užima, KiB (1 KiB = 1024 baitai)?

256 × 256 px8 bit/px1 KiB = 1024 B
M = KiB
3.Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriaiVidutinis
ABCD0001111000011110111111

Šiame Karno žemėlapyje lygiai vienas vienetas neturi gretimo vieneto, todėl minimalioje SOP formoje lieka vieno langelio grupe (pilna keturių literalų minterma). Kaimynai per žemėlapio kraštus skaičiuojami. Spustelėkite tą langelį.

F = Σm(0, 1, 7, 8, 9, 11)
  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.Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriaiSunkus
CLKJK1234567

Kylančiuoju frontu valdomas JK trigeris pradeda nuo Q = 0 ir gauna parodytus įėjimus. Spustelėkite pirmąjį taktinį frontą, kuriuo Q iš 1 grįžta į 0.

Q₀ = 0JK
  1. 1taktinis frontas 1
  2. 2taktinis frontas 2
  3. 3taktinis frontas 3
  4. 4taktinis frontas 4
  5. 5taktinis frontas 5
  6. 6taktinis frontas 6
  7. 7taktinis frontas 7
5.Duomenų kaupimas ir diskretizavimasVidutinis
∿01N = 1420 kHz? MB

Registratorius diskretizuoja vieną kanalą 20 kHz dažniu 14 bitų ADC. Kiekviena atskaita saugoma sveikais baitais. Raskite atminties dydį M, reikalingą 2 min įrašui, MB (1 MB = 10⁶ baitų).

n = 1fs = 20 kHzN = 14t = 2 min
M = MB
6.Duomenų kaupimas ir diskretizavimasSunkus
f0fs​/2fs​2fs​17,5 kHz7f₁?

17,5 kHz stačiakampė banga diskretizuojama 50 kHz dažniu be antipersiklojimo filtro. Stačiakampėje bangoje yra nelyginės harmonikos 3f₁, 5f₁, 7f₁, … Kokiu dažniu fa jos harmonika 7f₁ pasirodo diskretizuotuose duomenyse? Pateikite kHz.

f₁ = 17,5 kHzfs = 50 kHzharmonika: 7f₁
fa = kHz

3Tirpalai

1.Skaičiavimo sistemos

Atsakymas: U = 186

Bitų nustatymas: kiekvienas bitas vertas dvejeto laipsnio (128, 64, …, 1). Vienas šešioliktainis skaitmuo yra lygiai keturi bitai, o 8 bitų dvejetainiame papildomajame kode kairysis bitas vertas −128. Bitinės operacijos atliekamos kiekvienai bito pozicijai atskirai.

Invertuokite ir pridėkite vienetą

70 = 0100 0110
invertuota: 1011 1001
+1 → 1011 1010

Perskaitykite be ženklo

1011 1010₂ = 256 − 70 = 186

Atsakymas

U = 186
2.Skaičiavimo sistemos

Atsakymas: M = 64 KiB

Pozicinės skaičiavimo sistemos: kiekvienas skaitmuo vertas savo reikšmės, padaugintos iš pagrindo laipsnio. Dvejetainėje sistemoje pozicijos vertos 1, 2, 4, 8, 16, …, šešioliktainėje 1, 16, 256, …, o A–F reiškia 10–15. 8 bitų papildomajame kode kairysis bitas vertas −128 vietoj +128; taip saugomi neigiami skaičiai.

Bitai ir baitai

256·256·8 = 524288 bit = 65536 B

Paverskite į KiB

65536/1024 = 64 KiB

Atsakymas

M = 64 KiB
3.Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriai

Atsakymas: AB = 01, CD = 11

Karno žemėlapiai: langeliai išdėstyti Grejaus kodu (00, 01, 11, 10), todėl gretimi langeliai, įskaitant esančius per kraštus, skiriasi tiksliai vienu kintamuoju. Sugrupuokite vienetus į 1, 2, 4, 8 arba 16 langelių stačiakampius, kuo didesnius ir kuo mažiau, kol bus padengtas kiekvienas vienetas. Kiekviena grupė yra vienas sandaugos narys: kintamieji, kurie joje nesikeičia. 2ᵏ langelių grupė netenka k kintamųjų. Nesvarbias reikšmes (X) galima naudoti grupėms didinti, bet jų dengti nebūtina. Grupuojant nulius, gaunama minimali POS forma.

Kiekvieno vieneto kaimynai

Vienetas su gretimu vienetu gali įeiti į dviejų ar daugiau langelių grupę.

m7: m6, m5, m3, m15 → 0
ABCD0001111000011110111111

Izoliuotas vienetas

m7 = A′BCD → AB = 01, CD = 11

Atsakymas

AB = 01, CD = 11
4.Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriai

Atsakymas: taktinis frontas 3

Trigeriai ir skaitikliai: trigeris keičiasi tik aktyviu taktinio signalo frontu. D nukopijuoja savo įėjimą (Q⁺ = D); T perjungia, kai T = 1; JK išlaiko esant 00, nustato į 0 esant 01, nustato į 1 esant 10 ir perjungia esant 11. n bitų dvejetainis skaitiklis turi 2ⁿ būsenų ir skaičiuoja moduliu 2ⁿ; mod-N skaitiklis skaičiuoja 0, 1, …, N − 1 ir grįžta į 0, jam reikia mažiausiai n trigerių, kad 2ⁿ ≥ N. Kiekviena nuosekliojo (ripple) skaitiklio pakopa perpus sumažina dažnį, todėl paskutinis mod-N skaitiklio išėjimas veikia fclk/N dažniu. n trigerių Johnsono skaitiklis turi 2n būsenų, žiedinis – n.

Q po kiekvieno fronto

JK trigeris: 00 išlaiko, 01 nustato į 0 (Q = 0), 10 nustato į 1 (Q = 1), 11 perjungia.

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

Pirmasis pokytis iš 1 į 0

taktinis frontas 3

Atsakymas

taktinis frontas 3
5.Duomenų kaupimas ir diskretizavimas

Atsakymas: M = 4,8 MB

Duomenų spartos: kiekvienas kanalas per sekundę pateikia fs atskaitų po N bitų, todėl žalioji sparta yra kanalai × fs × N bit/s. Atmintyje atskaita užima sveikus baitus (12 bitų atskaita saugoma 2 baituose), todėl įrašo atmintis yra kanalai × fs × baitai vienai atskaitai × laikas. Multipleksuojamas ADC kanalus keičia vieną po kito: kiekvienas keitimas (su nusistovėjimu) trunka t, todėl n kanalų ratas trunka n·t, o kiekvienas kanalas diskretizuojamas 1/(n·t) dažniu.

Baitai vienai atskaitai

⌈14/8⌉ = 2 B

Baitų sparta

1·20000·2 = 40000 B/s

Atmintis

M = 40000·120 = 4,8 × 10⁶ B = 4,8 MB

Atsakymas

M = 4,8 MB
6.Duomenų kaupimas ir diskretizavimas

Atsakymas: fa = 22,5 kHz

Diskretizavimas: ADC signalą matuoja fs kartų per sekundę. Pagal Naikvisto ir Šenono teoremą dažnis f užfiksuojamas teisingai tik kol f < fs/2, Naikvisto (atspindžio) dažnis, todėl diskretizavimo dažnis turi viršyti dvigubą aukščiausią signalo dažnį. Aukštesnis dažnis neprarandamas: jis pasirodo kaip persiklojimo dažnis fa = |f − k·fs|, kai sveikasis k rezultatą perkelia į ruožą nuo 0 iki fs/2. Atskaitos jų atskirti negali, todėl analoginis antipersiklojimo filtras prieš ADC turi pašalinti viską, kas didesnė už fs/2.

Harmonikos dažnis

7f₁ = 7·17,5 kHz = 122,5 kHz

Artimiausias diskretizavimo dažnio kartotinis

m = round(2,45) = 2

Persiklojimo dažnis

fa = |122,5 − 2·50| = 22,5 kHz

Atsakymas

fa = 22,5 kHz

Persiklojimo dažnis patenka į signalo juostą, kur jokio skaitmeninio filtro jo pašalinti negali. Padeda tik analoginis filtras prieš ADC.

ExamProblems · examproblems.com/courses/digital-electronics