อิเล็กทรอนิกส์ดิจิทัล: ชุดสรุปเร่งรัด

สรุปสูตร ขั้นตอนวิธีทำที่สำคัญของทุกหัวข้อ และโจทย์ฝึก 6 ข้อ พร้อมเฉลยละเอียดไว้ท้ายเล่ม

โจทย์ใหม่กลับไปที่รายวิชา

ในหน้าต่างพิมพ์ ให้เลือก “บันทึกเป็น PDF” เพื่อเก็บสำเนาไว้ในอุปกรณ์ของคุณ

1สูตรและวิธีทำ

ระบบเลข

ค่าประจำตำแหน่ง
ฐานสอง 2k, ฐานแปด 8k, ฐานสิบหก 16k
เป็นเลขฐานสิบ
Σ dk·bk
จากเลขฐานสิบ
หารด้วยฐาน อ่านเศษจากล่างขึ้นบน
ฐานสิบหก ↔ ฐานสอง
เลขฐานสิบหกหนึ่งหลัก = 4 บิต
two’s complement
กลับบิตแล้วบวก 1

ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อป

เกตพื้นฐาน
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
กฎของพีชคณิตแบบบูล
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
กฎของเดอมอร์แกน
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
ลำดับของแผนที่คาร์โนห์
00, 01, 11, 10 (Gray code)
กลุ่มของ 2ᵏ เซลล์
สูญเสีย k ตัวแปร
มัลติเพล็กเซอร์ 4 ต่อ 1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
ฟลิปฟล็อป
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
ตัวนับ
n บิต: 2ⁿ สถานะ; มอด N: n ที่น้อยที่สุดที่ 2ⁿ ≥ N; fout = fclk/N
ตัวนับริปเปิล
fmax = 1/(n·tpd)
ตัวนับริงและตัวนับจอห์นสัน
n และ 2n สถานะ

วิธีการ

  1. สำหรับวงจร ให้ทำจากอินพุตไปถึงเอาต์พุตทีละเกตและเขียนค่าบนทุกเส้น หรือเขียนนิพจน์ของมันแล้วเติมตารางค่าความจริง
  2. สำหรับการทำให้ง่าย ให้ใส่ 1 (และค่าไม่สนใจเป็น X) ลงในแผนที่คาร์โนห์ที่มีแถวและคอลัมน์เรียงตามรหัสเกรย์: 00, 01, 11, 10
  3. ครอบคลุม 1 ด้วยกลุ่ม 1, 2, 4, 8 หรือ 16 เซลล์ให้น้อยที่สุดและใหญ่ที่สุดเท่าที่เป็นไปได้ โดยพันข้ามขอบ แต่ละกลุ่มคือหนึ่งพจน์ผลคูณที่ประกอบด้วยตัวแปรที่คงที่ จัดกลุ่ม 0 สำหรับรูป POS
  4. สำหรับฟลิปฟล็อปและตัวนับ ให้อ่านอินพุตที่ขอบแอ็กทีฟของสัญญาณนาฬิกาแต่ละขอบ เขียนสถานะหลังทุกขอบ และจำไว้ว่าตัวนับ n บิตวนกลับหลัง 2ⁿ สถานะ

การได้มาซึ่งข้อมูลและการสุ่ม

เกณฑ์ไนควิสต์
fs > 2·fmax, fN = fs/2
ความถี่แอลลิอัส
fa = |f − k·fs|, k = round(f/fs)
ขนาดขั้น
1 LSB = VFSR/2ᴺ
ความคลาดเคลื่อนจากการควอนไทซ์ (ปัดเศษ)
±½ LSB
รหัส ADC แบบตัดทิ้ง
D = ⌊Vin/LSB⌋
จำนวนบิตสำหรับความละเอียด r
2ᴺ ≥ span/r
SQNR ในอุดมคติ ไซน์เต็มสเกล
SQNR = 6.02·N + 1.76 dB
อัตราข้อมูล
ช่อง × fs × N บิต/วินาที
ADC แบบมัลติเพล็กซ์
fs = 1/(n·(tc + tset))
UART
Tb = 1/baud; 8N1 = 10 บิตต่อไบต์; ไบต์/วินาที = baud/บิตต่อเฟรม
ตัวหารอัตราบอด
baud = fclk/(16·D)

วิธีการ

  1. เขียนสิ่งที่โจทย์ให้: อัตราการสุ่ม ความถี่ของสัญญาณ จำนวนบิต ช่วงอินพุต อัตราบอด
  2. สำหรับโจทย์การสุ่ม ให้เปรียบเทียบแต่ละความถี่กับ fs/2 ความถี่ที่สูงกว่าจะปรากฏที่ fa = |f − k·fs| โดยใช้พหุคูณของ fs ที่ใกล้ที่สุด
  3. สำหรับโจทย์ความละเอียด หา 1 LSB = VFSR/2ᴺ หรือ N ที่น้อยที่สุดที่ 2ᴺ ≥ ช่วง/ความละเอียด
  4. สำหรับอัตราข้อมูลและลิงก์ UART ให้นับทุกอย่างที่ส่ง: ช่อง จำนวนตัวอย่างต่อวินาที บิตหรือไบต์เต็มต่อตัวอย่าง และบิตเริ่ม บิตพาริตี และบิตหยุดของทุกเฟรม

2โจทย์ฝึก

1.ระบบเลขปานกลาง
two's complement 8 บิต0−12806403201608040201

ตั้งบิตให้เก็บ −80 ใน two's complement 8 บิต อ่านเป็นจำนวนไม่มีเครื่องหมาย ค่าของรูปแบบ U เป็นเท่าใด

N = −808 bit
U =
2.ระบบเลขยาก
32 bit1 px512 px512 pxM = ? KiB

ภาพที่ไม่บีบอัดมีขนาด 512 × 512 พิกเซล และมี 32 บิตต่อพิกเซล ใช้หน่วยความจำ M เท่าใด ในหน่วย KiB (1 KiB = 1024 ไบต์)

512 × 512 px32 bit/px1 KiB = 1024 B
M = KiB
3.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
MUX0I0​0I1​C′I2​0I3​ABS1​S0​F

มัลติเพล็กเซอร์ 4 ต่อ 1 มีอินพุตเลือก S₁ = A และ S₀ = B และอินพุตข้อมูลต่อเข้ากับ I₀ = 0, I₁ = 0, I₂ = C′, I₃ = 0 จาก 8 ชุดของ A, B และ C มีกี่ชุดที่เอาต์พุต F = 1 จงหา N

I₀ = 0I₁ = 0I₂ = C′I₃ = 0
N =
4.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
CLKT1234567

ฟลิปฟล็อป T ที่ทริกเกอร์ขอบขาขึ้นเริ่มด้วย Q = 0 และได้รับอินพุตที่แสดงที่ขอบขาขึ้นของนาฬิกา 7 ขอบ Q เปลี่ยนสถานะกี่ครั้ง N

Q₀ = 0T
N =
5.การได้มาซึ่งข้อมูลและการสุ่มปานกลาง
Vin​N = 1010 V2ᴺ − 101 LSB3.708 V?

ADC 10 บิตที่มีช่วงอินพุต 0 ถึง 10 V ตัดทิ้ง: รหัสเอาต์พุตของมันคือ ⌊Vin/LSB⌋ โดย 1 LSB = VFSR/2ᴺ จงหารหัสเอาต์พุตฐานสิบ D สำหรับอินพุต 3.708 V

N = 10VFSR = 10 VVin = 3.708 V
D =
6.การได้มาซึ่งข้อมูลและการสุ่มยาก
1216⋮16 ch∿01tc​ = 2 µstset​ = 2 µsfs​ = ?

มัลติเพล็กเซอร์ 16 ช่องป้อน ADC ตัวเดียว การแปลงแต่ละครั้งใช้เวลา 2 µs และหลังการสลับช่องทุกครั้ง อินพุตต้องการเวลา 2 µs เพื่อตั้งตัว ช่องถูกสแกนสลับกันโดยไม่หยุดพัก จงหาอัตราการสุ่ม fs ของแต่ละช่อง ในหน่วย kHz

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

3สารละลาย

1.ระบบเลข

คำตอบ: U = 176

การตั้งค่าบิต: แต่ละบิตมีค่าเป็นกำลังของสอง (128, 64, …, 1) เลขฐานสิบหกหนึ่งหลักคือสี่บิตพอดี และใน two's complement 8 บิต บิตซ้ายสุดมีค่า −128 การดำเนินการระดับบิตทำงานกับแต่ละตำแหน่งบิตแยกกัน

กลับบิตแล้วบวกหนึ่ง

80 = 0101 0000
ที่กลับบิตแล้ว: 1010 1111
+1 → 1011 0000

อ่านเป็นแบบไม่มีเครื่องหมาย

1011 0000₂ = 256 − 80 = 176

คำตอบ

U = 176
2.ระบบเลข

คำตอบ: M = 1024 KiB

ระบบเลขตามตำแหน่ง: แต่ละหลักมีค่าเท่ากับค่าของหลักนั้นคูณกำลังของฐาน ในเลขฐานสองแต่ละตำแหน่งมีค่า 1, 2, 4, 8, 16, …; ในเลขฐานสิบหก 1, 16, 256, … โดย A–F แทน 10–15 ในระบบ two's complement 8 บิต บิตซ้ายสุดมีค่า −128 แทนที่จะเป็น +128 ซึ่งเป็นวิธีเก็บจำนวนลบ

บิตและไบต์

512·512·32 = 8388608 bit = 1048576 B

แปลงเป็น KiB

1048576/1024 = 1024 KiB

คำตอบ

M = 1024 KiB
3.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อป

คำตอบ: N = 1

มัลติเพล็กเซอร์: มัลติเพล็กเซอร์ 2ⁿ ต่อ 1 ส่งอินพุตข้อมูลหนึ่งตัวไปยังเอาต์พุต สายเลือก (select) เมื่ออ่านเป็นเลขฐานสองจะเลือกว่าตัวใด สำหรับ MUX 4 ต่อ 1 ที่สายเลือก S₁S₀ = AB จะได้ F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃ การต่ออินพุตข้อมูลเข้ากับ 0, 1, C หรือ C′ ทำให้ MUX สร้างฟังก์ชันใดก็ได้ของ A, B และ C ซึ่งเป็นวิธีที่พบบ่อยในการสร้างตรรกะด้วยชิปตัวเดียว

นิพจน์เอาต์พุต

F = AB′C′

แถวที่ F = 1

ABC = 100
N = 1

คำตอบ

N = 1
4.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อป

คำตอบ: N = 4

ฟลิปฟล็อปและตัวนับ: ฟลิปฟล็อปเปลี่ยนค่าเฉพาะที่ขอบแอ็กทีฟของสัญญาณนาฬิกา D คัดลอกอินพุต (Q⁺ = D); T สลับค่าเมื่อ T = 1; JK คงค่าสำหรับ 00 รีเซ็ตสำหรับ 01 เซตสำหรับ 10 และสลับค่าสำหรับ 11 ตัวนับฐานสอง n บิตมี 2ⁿ สถานะและนับมอดูโล 2ⁿ ตัวนับมอด N นับ 0, 1, …, N − 1 แล้ววนกลับเป็น 0 และต้องใช้ฟลิปฟล็อปจำนวน n ที่น้อยที่สุดที่ 2ⁿ ≥ N แต่ละภาคของตัวนับริปเปิลลดความถี่ลงครึ่งหนึ่ง ดังนั้นเอาต์พุตสุดท้ายของตัวนับมอด N ทำงานที่ fclk/N ตัวนับจอห์นสันที่มีฟลิปฟล็อป n ตัวมี 2n สถานะ ตัวนับริงมี n

Q หลังทุกขอบ

ฟลิปฟล็อป T สลับค่าทุกขอบขาขึ้นเมื่อ T = 1 และคงค่าเมื่อ T = 0

1: T = 0 → Q = 0
2: T = 0 → Q = 0
3: T = 1 → Q = 1
4: T = 1 → Q = 0
5: T = 0 → Q = 0
6: T = 1 → Q = 1
7: T = 1 → Q = 0

นับการเปลี่ยน

0 → 0 → 0 → 1 → 0 → 0 → 1 → 0
N = 4

คำตอบ

N = 4
5.การได้มาซึ่งข้อมูลและการสุ่ม

คำตอบ: D = 379

ความละเอียดของ ADC: ตัวแปลง N บิตแบ่งช่วงเต็มสเกล VFSR เป็น 2ᴺ รหัส จาก 0 ถึง 2ᴺ − 1 หนึ่งขั้นคือ 1 LSB = VFSR/2ᴺ ซึ่งเป็นการเปลี่ยนแปลงที่เล็กที่สุดที่ตัวแปลงแสดงได้ ADC แบบตัดทิ้งให้รหัส ⌊Vin/LSB⌋ ส่วน ADC แบบปัดเศษห่างจากค่าจริงไม่เกิน ½ LSB ซึ่งเป็นความคลาดเคลื่อนจากการควอนไทซ์ของมัน ทุกบิตที่เพิ่มทำให้ LSB ลดครึ่งหนึ่งและเพิ่มอัตราส่วนสัญญาณต่อสัญญาณรบกวนจากการควอนไทซ์ในอุดมคติประมาณ 6 dB โดย SQNR = 6.02·N + 1.76 dB สำหรับไซน์เต็มสเกล เพื่อให้ได้ความละเอียด r ตลอดช่วงหนึ่ง ให้เลือก N ที่น้อยที่สุดที่ 2ᴺ ≥ ช่วง/r

ขนาดขั้น

1 LSB = 10/210 = 9.766 mV

รหัส

Vin/LSB = 3708/9.766 = 379.7
รหัส = ⌊379.7⌋ = 379

คำตอบ

D = 379

ในเลขฐานสองคือ 0101111011

6.การได้มาซึ่งข้อมูลและการสุ่ม

คำตอบ: fs = 15.63 kHz

อัตราข้อมูล: แต่ละช่องส่งมอบ fs ตัวอย่างต่อวินาที ตัวอย่างละ N บิต ดังนั้นอัตราดิบคือ ช่อง × fs × N บิต/วินาที ในหน่วยความจำ หนึ่งตัวอย่างใช้ไบต์เต็ม (ตัวอย่าง 12 บิตเก็บใน 2 ไบต์) ดังนั้นหน่วยความจำสำหรับการบันทึกคือ ช่อง × fs × ไบต์ต่อตัวอย่าง × เวลา ADC แบบมัลติเพล็กซ์แปลงทีละช่อง: การแปลงแต่ละครั้ง (รวมเวลาตั้งตัว) ใช้เวลา t ดังนั้นหนึ่งรอบของ n ช่องใช้เวลา n·t และแต่ละช่องถูกสุ่มที่ 1/(n·t)

เวลาต่อช่อง

2 + 2 = 4 µs

เวลาต่อการสแกน

16·4 = 64 µs

อัตราการสุ่มต่อช่อง

fs = 1/64 µs = 15.63 kHz

คำตอบ

fs = 15.63 kHz

ExamProblems · examproblems.com/courses/digital-electronics