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

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

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

N = −538 bit
U =
2.ระบบเลขยาก
คลิกบิตเพื่อตั้งค่า012806403201608040201

ตั้งบิตให้เป็นผลลัพธ์ 8 บิตของ 1110 0100 AND 0010 1100 ค่าของผลลัพธ์ R เป็นเท่าใดในเลขฐานสิบ

1110 0100AND0010 1100
R =
3.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABC00011110011011131214051706

ใช้แผนที่คาร์โนห์หารูปผลคูณของผลบวก (POS) ที่น้อยที่สุดของ F(A, B, C) = Σm(0, 1, 2, 3, 4, 7) มีกี่พจน์ผลบวก (ตัวประกอบ) N

F(A, B, C) = Σm(0, 1, 2, 3, 4, 7)
N =
4.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
CLKT12345678

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

Q₀ = 0T
N =
5.การได้มาซึ่งข้อมูลและการสุ่มปานกลาง
Vin​N = ?2.5 V2ᴺ − 10≤ 0.5 mV

ADC ที่มีช่วงอินพุต 0 ถึง 2.5 V ต้องแยกแยะขั้นขนาด 0.5 mV หรือเล็กกว่า จงหาจำนวนบิตที่น้อยที่สุด N

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

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

fclk = 32 MHzเป้าหมาย = 115200 Bd
e = %

3สารละลาย

1.ระบบเลข

คำตอบ: U = 203

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

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

53 = 0011 0101
ที่กลับบิตแล้ว: 1100 1010
+1 → 1100 1011

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

1100 1011₂ = 256 − 53 = 203

คำตอบ

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

คำตอบ: R = 36

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

ทีละบิต

AND ให้ 1 เฉพาะที่ทั้งสองบิตเป็น 1

1110 0100
AND 0010 1100
= 0010 0100

ค่าของผลลัพธ์

0010 0100₂ = 36

คำตอบ

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

คำตอบ: N = 2

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

ABC00011110011011131214051706

จัดกลุ่ม 0

ทุกกลุ่มเป็นสี่เหลี่ยมของ 2ᵏ เซลล์ เซลล์ที่ขอบเป็นเพื่อนบ้านของเซลล์ที่ขอบตรงข้าม

(A′ + B + C′)
(A′ + B′ + C)

รูป POS ที่น้อยที่สุด

F = (A′ + B + C′)(A′ + B′ + C)
N = 2

คำตอบ

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

คำตอบ: N = 3

ฟลิปฟล็อปและตัวนับ: ฟลิปฟล็อปเปลี่ยนค่าเฉพาะที่ขอบแอ็กทีฟของสัญญาณนาฬิกา 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 = 1 → Q = 1
2: T = 1 → Q = 0
3: T = 1 → Q = 1
4: T = 0 → Q = 1
5: T = 0 → Q = 1
6: T = 0 → Q = 1
7: T = 0 → Q = 1
8: T = 0 → Q = 1

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

0 → 1 → 0 → 1 → 1 → 1 → 1 → 1 → 1
N = 3

คำตอบ

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

คำตอบ: N = 13

ความละเอียดของ 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

จำนวนขั้นที่ต้องใช้

2500 mV/0.5 mV = 5000

บิต

log₂(5000) = 12.29
212 = 4096 < 5000 ≤ 213 = 8192
N = 13

คำตอบ

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

คำตอบ: e = 2.124 %

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

ตัวหาร

D = 32·10⁶/(16·115200) = 17.36 → 17

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

32·10⁶/(16·17) = 117647 Bd

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

(117647 − 115200)/115200·100 = 2.124 %

คำตอบ

e = 2.124 %

ความคลาดเคลื่อนที่เกินประมาณ 2 % ทำให้ลิงก์ไม่น่าเชื่อถือ: ให้เลือกสัญญาณนาฬิกาหรืออัตราบอดอื่น

ExamProblems · examproblems.com/courses/digital-electronics