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

สรุปสูตร ขั้นตอนวิธีทำที่สำคัญของทุกหัวข้อ และโจทย์ฝึก 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

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

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

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

1280 × 720 px32 bit/px1 KiB = 1024 B
M = KiB
3.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABC000111100101324576

จงทำ F = A′B′ + A′BC + A′BC′ + AB′C′ ให้เป็นรูปผลบวกของผลคูณที่น้อยที่สุด นิพจน์ที่ทำให้ง่ายแล้วมีกี่ลิเทอรัล L

F = A′B′ + A′BC + A′BC′ + AB′C′
L =
4.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
TQ0​Q0​TQ1​Q1​TQ2​Q2​CLKMOD-5

ตัวนับมอด-5 แบบซิงโครนัสนับ 0, 1, …, 4 แล้ววนกลับเป็น 0 เริ่มที่ 4 หลังพัลส์นาฬิกา 7 พัลส์ จะแสดงค่านับ Q (เป็นเลขฐานสิบ) เท่าใด

Q0 = 47N = 5
Q =
5.การได้มาซึ่งข้อมูลและการสุ่มปานกลาง
Vin​N = 102.5 V2ᴺ − 101 LSB1.793 V?

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

N = 10VFSR = 2.5 VVin = 1.793 V
D =
6.การได้มาซึ่งข้อมูลและการสุ่มยาก
SD0​D1​D2​D3​D4​D5​D6​D7​1/fbaud​12 MHz / (16·D)

ไมโครคอนโทรลเลอร์ที่มีนาฬิกา 12 MHz ตั้งอัตราบอดของ UART เป็น fclk/(16·D) โดย D เป็นจำนวนเต็มที่ปัดไปยังค่าใกล้ที่สุด เป้าหมายคือ 2400 baud จงหาเปอร์เซ็นต์ความคลาดเคลื่อนของอัตราบอดจริง (เป็นบวกเมื่อเร็วเกินไป)

fclk = 12 MHzเป้าหมาย = 2400 Bd
e = %

3สารละลาย

1.ระบบเลข

คำตอบ: U = 175

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

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

81 = 0101 0001
ที่กลับบิตแล้ว: 1010 1110
+1 → 1010 1111

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

1010 1111₂ = 256 − 81 = 175

คำตอบ

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

คำตอบ: M = 3600 KiB

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

บิตและไบต์

1280·720·32 = 29491200 bit = 3686400 B

แปลงเป็น KiB

3686400/1024 = 3600 KiB

คำตอบ

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

คำตอบ: L = 3

พีชคณิตแบบบูล: กฎที่ทำให้นิพจน์ง่ายขึ้นได้แก่ X + X′ = 1 และ X·X′ = 0, X + X = X, การดูดกลืน X + X·Y = X, กฎการรวม X·Y + X·Y′ = X, X + X′Y = X + Y และทฤษฎีบทฉันทามติ XY + X′Z + YZ = XY + X′Z กฎของเดอมอร์แกนเปลี่ยน (X·Y)′ เป็น X′ + Y′ และ (X + Y)′ เป็น X′·Y′ แผนที่คาร์โนห์ใช้กฎเหล่านี้ในรูปภาพ: ทุกกลุ่มของสองเซลล์ที่อยู่ติดกันคือการใช้ XY + XY′ = X หนึ่งครั้ง

มินเทอมของนิพจน์

A′B′ → m(0, 1)
A′BC → m(3)
A′BC′ → m(2)
AB′C′ → m(4)
ABC00011110011011131214050706

จัดกลุ่มและอ่านค่า

F = B′C′ + A′

นับลิเทอรัล

L = 3

คำตอบ

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

คำตอบ: Q = 1

ฟลิปฟล็อปและตัวนับ: ฟลิปฟล็อปเปลี่ยนค่าเฉพาะที่ขอบแอ็กทีฟของสัญญาณนาฬิกา 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

รอบเต็ม

ทุก 5 พัลส์ทำให้ตัวนับกลับสู่สถานะเดิม

7 = 1·5 + 2

ค่านับหลังพัลส์ที่เหลือ

Q = (4 + 2) mod 5 = 1
Q = 001₂

คำตอบ

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

คำตอบ: D = 734

ความละเอียดของ 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 = 2.5/210 = 2.441 mV

รหัส

Vin/LSB = 1793/2.441 = 734.4
รหัส = ⌊734.4⌋ = 734

คำตอบ

D = 734

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

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

คำตอบ: e = −0.1597 %

UART: ลิงก์อนุกรมแบบอะซิงโครนัสส่งแต่ละไบต์เป็นเฟรม: บิตเริ่มหนึ่งบิต (ต่ำ) บิตข้อมูล บิตพาริตีแบบเลือกได้ และบิตหยุดหนึ่งหรือสองบิต (สูง) อัตราบอดคือจำนวนบิตต่อวินาที ดังนั้นหนึ่งบิตใช้เวลา Tb = 1/baud และเฟรม n บิตใช้เวลา n/baud รูปแบบ 8N1 ที่พบบ่อยมี 10 บิตต่อไบต์ ตัวกำเนิดบอดหารสัญญาณนาฬิกา: baud = fclk/(16·D) โดย D เป็นจำนวนเต็ม ดังนั้นอัตราบอดจริงต่างจากเป้าหมายเล็กน้อย ความคลาดเคลื่อนต่ำกว่าประมาณ 2 % มักยอมรับได้

ตัวหาร

D = 12·10⁶/(16·2400) = 312.5 → 313

อัตราบอดจริง

12·10⁶/(16·313) = 2396 Bd

ความคลาดเคลื่อน

(2396 − 2400)/2400·100 = −0.1597 %

คำตอบ

e = −0.1597 %

ความคลาดเคลื่อนที่ต่ำกว่าประมาณ 2 % มักยอมรับได้

ExamProblems · examproblems.com/courses/digital-electronics