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
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ę.
Supaprastindami įrašykite vienetus (o nesvarbias reikšmes kaip X) į Karno žemėlapį su Grejaus kodo eilutėmis ir stulpeliais: 00, 01, 11, 10.
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.
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
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.
Skiriamosios gebos uždaviniuose raskite 1 LSB = VFSR/2ᴺ arba mažiausią N, su kuriuo 2ᴺ ≥ ruožas/skiriamoji geba.
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ų seka 0100 0110 saugo sveikąjį skaičių su ženklu papildomajame kode. Kokia jo reikšmė N dešimtainėje sistemoje?
0100 01108 bit
N =
2.Skaičiavimo sistemosSunkus
Nustatykite bitus pagal 8 bitų rezultatą 1001 1100 AND 1011 1000. Kokia rezultato reikšmė R dešimtainėje sistemoje?
1001 1100AND1011 1000
R =
3.Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriaiVidutinis
4 į 1 multiplekserio pasirinkimo įėjimai yra S₁ = A ir S₀ = B, o duomenų įėjimai prijungti prie I₀ = 1, I₁ = 0, I₂ = C′, I₃ = C′. Kiek iš 8 A, B ir C derinių duoda išėjimą F = 1? Raskite N.
I₀ = 1I₁ = 0I₂ = C′I₃ = C′
N =
4.Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriaiSunkus
Funkcijai F(A, B, C, D) = Σm(2, 3, 4, 6, 8, 11, 13, 15) + d(0, 1, 5, 12, 14), kur d žymi nesvarbias sąlygas, raskite esminių pagrindinių implikantų skaičių N.
Registratorius diskretizuoja 2 kanalus po 50 kHz 14 bitų ADC. Kiekviena atskaita saugoma sveikais baitais. Raskite atminties dydį M, reikalingą 10 min įrašui, MB (1 MB = 10⁶ baitų).
n = 2fs = 50 kHzN = 14t = 10 min
M = MB
6.Duomenų kaupimas ir diskretizavimasSunkus
Mikrovaldiklis su 2 MHz taktu nustato UART baud spartą kaip fclk/(16·D), kai D yra sveikasis skaičius, suapvalintas iki artimiausios vertės. Norima sparta yra 4800 baud. Raskite tikrosios baud spartos procentinę paklaidą (teigiama, kai per greita).
fclk = 2 MHznorima = 4800 Bd
e = %
3Tirpalai
1.Skaičiavimo sistemos
Atsakymas: N = 70
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.
Sudėkite vertes
Kiti bitai išlaiko įprastas teigiamas vertes.
64 + 4 + 2 = 70
Atsakymas
N = 70
2.Skaičiavimo sistemos
Atsakymas: R = 152
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.
Bitas po bito
AND duoda 1 tik ten, kur abu bitai yra 1.
1001 1100
AND 1011 1000
= 1001 1000
Rezultato reikšmė
1001 1000₂ = 152
Atsakymas
R = 152
3.Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriai
Atsakymas: N = 4
Multiplekseris: 2ⁿ į 1 multiplekseris perduoda vieną iš savo duomenų įėjimų į išėjimą; pasirinkimo linijos, skaitomos kaip dvejetainis skaičius, nurodo kurį. 4 į 1 MUX su pasirinkimo įėjimais S₁S₀ = AB, F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃. Duomenų įėjimus prijungus prie 0, 1, C arba C′, MUX gali sukurti bet kurią A, B ir C funkciją; tai dažnas būdas sudaryti logiką viena mikroschema.
Išėjimo išraiška
F = A′B′ + AB′C′ + ABC′
Eilutės su F = 1
ABC = 000, 001, 100, 110
N = 4
Atsakymas
N = 4
4.Skaitmeninė logika: elementai, Karno žemėlapiai ir trigeriai
Atsakymas: N = 1
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.
Pagrindiniai implikantai
Didžiausios grupės, kurias galima sudaryti iš vienetų ir X.
C′D′, BD′, BC′, B′CD, A′D′, A′C′, ACD, A′B′, AB
Esminiai pagrindiniai implikantai
C′D′
N = 1
Atsakymas
N = 1
5.Duomenų kaupimas ir diskretizavimas
Atsakymas: M = 120 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
2·50000·2 = 200000 B/s
Atmintis
M = 200000·600 = 1,2 × 10⁸ B = 120 MB
Atsakymas
M = 120 MB
6.Duomenų kaupimas ir diskretizavimas
Atsakymas: e = 0,1603 %
UART: asinchroninis nuoseklusis ryšys kiekvieną baitą siunčia kaip kadrą: vienas starto bitas (žemas lygis), duomenų bitai, nebūtinas lyginumo bitas ir vienas ar du stabdos bitai (aukštas lygis). Baud sparta yra bitų skaičius per sekundę, todėl vienas bitas trunka Tb = 1/baud, o n bitų kadras – n/baud. Įprastas 8N1 formatas turi 10 bitų baitui. Baud generatorius dalija taktinį dažnį: baud = fclk/(16·D) su sveikuoju D, todėl tikroji baud sparta nuo norimos šiek tiek skiriasi; paklaida iki maždaug 2 % paprastai priimtina.
Daliklis
D = 2·10⁶/(16·4800) = 26,04 → 26
Tikroji baud sparta
2·10⁶/(16·26) = 4808 Bd
Paklaida
(4808 − 4800)/4800·100 = 0,1603 %
Atsakymas
e = 0,1603 %
Paklaida, mažesnė nei maždaug 2 %, paprastai priimtina.