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

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

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

N = −778 bit
U =
2.ระบบเลขยาก
8 bit1 px800 px600 pxM = ? KiB

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

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

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

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

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

Q₀ = 0T
  1. 1ขอบสัญญาณนาฬิกา 1
  2. 2ขอบสัญญาณนาฬิกา 2
  3. 3ขอบสัญญาณนาฬิกา 3
  4. 4ขอบสัญญาณนาฬิกา 4
  5. 5ขอบสัญญาณนาฬิกา 5
  6. 6ขอบสัญญาณนาฬิกา 6
  7. 7ขอบสัญญาณนาฬิกา 7
5.การได้มาซึ่งข้อมูลและการสุ่มปานกลาง
122 ch∿01N = 1650 kHz? MB

ตัวบันทึกสุ่ม 2 ช่อง ช่องละ 50 kHz ด้วย ADC 16 บิต แต่ละตัวอย่างถูกเก็บเป็นไบต์เต็ม จงหาหน่วยความจำ M ที่ต้องใช้สำหรับการบันทึก 30 นาที ในหน่วย MB (1 MB = 10⁶ ไบต์)

n = 2fs = 50 kHzN = 16t = 30 min
M = MB
6.การได้มาซึ่งข้อมูลและการสุ่มยาก
SD0​D1​D2​D3​D4​D5​D6​D7​1/fbaud​2 MHz / (16·D)

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

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

3สารละลาย

1.ระบบเลข

คำตอบ: U = 179

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

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

77 = 0100 1101
ที่กลับบิตแล้ว: 1011 0010
+1 → 1011 0011

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

1011 0011₂ = 256 − 77 = 179

คำตอบ

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

คำตอบ: M = 468.8 KiB

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

บิตและไบต์

800·600·8 = 3840000 bit = 480000 B

แปลงเป็น KiB

480000/1024 = 468.75 KiB

คำตอบ

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

คำตอบ: N = 5

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

ABCD000111100001111000010312141517060120130150141819011010

จัดกลุ่ม 0

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

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

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

F = (B + C′ + D′)(B′ + C′ + D)(A′ + C′)(A′ + B′)(A + B + C)
N = 5

คำตอบ

N = 5

มีการจัดกลุ่มอีกแบบที่มีขนาดเท่ากัน ซึ่งมีจำนวนพจน์และลิเทอรัลเท่ากัน

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

คำตอบ: ขอบสัญญาณนาฬิกา 6

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

การเปลี่ยนจาก 1 เป็น 0 ครั้งแรก

ขอบสัญญาณนาฬิกา 6

คำตอบ

ขอบสัญญาณนาฬิกา 6
5.การได้มาซึ่งข้อมูลและการสุ่ม

คำตอบ: M = 360 MB

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

ไบต์ต่อตัวอย่าง

⌈16/8⌉ = 2 B

อัตราไบต์

2·50000·2 = 200000 B/s

หน่วยความจำ

M = 200000·1800 = 3.6 × 10⁸ B = 360 MB

คำตอบ

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

คำตอบ: e = 0.1603 %

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

ตัวหาร

D = 2·10⁶/(16·2400) = 52.08 → 52

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

2·10⁶/(16·52) = 2404 Bd

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

(2404 − 2400)/2400·100 = 0.1603 %

คำตอบ

e = 0.1603 %

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

ExamProblems · examproblems.com/courses/digital-electronics