แผนผังคาร์โนห์
(Karnaugh Map : KM : K-map)
<< 8.1 การดัดแปลงทฤษฎีบูลีนไปเป็นแผนผังคาร์โนห์
<< 8.2 การลดรูปฟังก์ชั่นโดยใช้ แผนผังคาร์โนห์
<< 8.3 เทอมไม่สนใจ (Don’t Care term)
<< 8.4 K-map ชนิด 6 ตัวแปร และ n ตัวแปร
การลดรูปสมการบูลีน หรือ ฟังก์ชัน ให้สั้นที่สุด เราสามารถทำได้โดยการใช้ทฤษฎีของบูลีน แต่เป็นการยากในกรณีที่มีหลายๆ
ตัวแปร การใช้แผนผังคาร์โนห์ (Karnaugh Map : KM : K-map) ช่วยในการแก้ปัญหาจะเป็นการง่ายกว่า และจะมีข้อผิดพลาด
น้อยกว่า
|
8.1 การดัดแปลงทฤษฎีบูลีนไปเป็นแผนผังคาร์โนห์
พิจารณาการลดทอนสมการลอจิกโดยใช้ทฤษฎีบูลีนของสมการต่อไปนี้
|
ทั้ง 4 กรณีที่กล่าวถึงข้างต้น จะทำการลดทอนโดยใช้ทฤษฎีบูลีนโดยตรง ซึ่งสามารถดัดแปลงไปเป็น K-mapโดยมี
หลักการดังนี้
1. ต้องเป็นสมการลอจิกที่อยู่ในรูป Canonical Sum หรือ Canonical Product เท่านั้น
2. จำนวนเทอมในกลุ่มที่จะลดทอน = เมื่อ m = 1, 2, 3, 4, … ดังนั้นการลดทอนโดยวิธี K-map สมาชิกในกลุ่มต้องมี
จำนวนเทอมเป็น 2, 4, 6, 8, 16, … เทอม
3. เขียนแทนแต่ละเทอมด้วยเลขฐานสอง พิจารณาเทอมคู่ที่มีเลขฐานสองต่างกันเพียงบิตเดียว สามารถทำการลดทอนได้โดย
ตัดบิตที่ต่างกันออกบิตที่เหลือเปลี่ยนกลับไปเป็นตัวแปรจะได้สมการผลการลดทอน
จาก 4 กรณีข้างต้นสามารถดัดแปลงวิธีการลดทอนใหม่ได้ดังนี้
|
|
8.2 การลดรูปฟังก์ชั่นโดยใช้ แผนผังคาร์โนห์
8.2.1 K-map ชนิด 1 ตัวแปร
เราสามารถทราบจำนวน Cell ของตาราง K-map ชนิด 1 ตัวแปร ได้จากความสัมพันธ์ คือ โดยที่
n เป็นจำนวนตัวแปรนั่นแสดงว่าตาราง K-map ชนิด 1 ตัวแปร จะมีจำนวน Cell เท่ากับ Cell แสดงดังรูปที่ 8.1
|
รูปที่ 8.1 แสดงตาราง K-map ชนิด 1 ตัวแปร
|
ตัวอย่างตาราง K-map ชนิด 1 ตัวแปร ในสภาวะมีค่าเอาต์พุตที่แตกต่างกันออกไป เราสามารถจำแนกออกได้
เป็น 4 ลักษณะด้วยกัน แสดงดังรูปที่ 8.2
|
รูปที่ 8.2 ตัวอย่างของตาราง K-map ชนิด 1 ตัวแปร
|
จากรูปที่ 8.2 (ค) แสดงให้เห็นว่า ไม่สามารถทำการลดรูปฟังก์ชันให้ต่ำกว่านี้ได้อีก เนื่องจากในตาราง K-map มี “1”
เพียงตัวเดียว และถูกวางอยู่ใน Cell 1 ซึ่งมีค่ากำกับตำแหน่งเท่ากับ “1” (A=1) ทำให้ผลลัพธ์ที่เราได้ คือ F = A แสดงดังรูปที่ 8.3
|
รูปที่ 8.3 ตัวอย่างแสดงการลดรูปฟังก์ชันด้วยตาราง K-map ชนิด 1 ตัวแปร
|
จากรูปที่ 8.2 (ข) เราไม่สามารถทำการลดรูปฟังก์ชันนี้ได้อีกแล้ว เนื่องจากว่ามี “1” อยู่เพียงตัวเดียว โดยที่ “1” วางอยู่ใน Cell 0
มีค่ากำกับตำแหน่งเท่ากับ “0” (A = 0) ทำให้เราได้ผลลัพธ์จาก K-map นี้คือ แสดงดังรูปที่ 8.4
|
รูปที่ 8.4 ตัวอย่างแสดงการลดรูปด้วยตาราง K-map ชนิด 1 ตัวแปร
รูปที่ 8.5 ตัวอย่างแสดงการลดรูปด้วยตาราง K-map ชนิด 1 ตัวแปร
|
จากรูปที่ 8.5 จะประกอบด้วย Minterm = 1 จำนวน 2 ตัวด้วยกัน ซึ่งถูกวางอยู่ใน Cell 0 และ Cell 1 ในรูปที่ 8.5 แสดง
ให้เห็นลักษณะของการวงรอบ 2 แบบเพื่อเปรียบเทียบกัน การลดรูปฟังก์ชันในรูปที่ 8.5 (ข) เป็นการวงรอบ Minterm 1 แยกกัน
แล้วนำเอาค่าผลลัพธ์ที่ได้จาก 2 วงรอบ มาบวกกันตามรูปแบบ Canonical SOP ผลลัพธ์ที่เราได้ เกิดจากการนำเอาผลลัพธ์ทั้ง 2
วงรอบมาบวกกัน คือ
ส่วนการลดรูปฟังก์ชันในลักษณะแสดงดังรูปที่ 8.5 (ค) เราสามารถสรุปได้โดยทันทีเลยว่าผลลัพธ์เท่ากับ “1” เพราะทุก Cell
ของตาราง K-map มีค่า Minterm เป็น “1” ความแตกต่างของการลดรูปฟังก์ชันที่ยกขึ้นมาเปรียบเทียบให้เห็นดังรูปที่ 8.5(ข) และ
8.5(ค) ทำให้เราพบว่าผลลัพธ์ที่ได้จากการลดรูปฟังก์ชันนั้น ไม่ได้สิ้นสุดอยู่ที่การใช้ตาราง K-map เพราะเราจะต้องนำผลลัพธ์
แต่ละวงรอบมาพิจารณา เพื่อจัดให้อยู่ในรูปแบบ Canonical SOP แต่การลดรูปฟังก์ชันดังแสดงในรูปที่ 8.5 (ค) เราจะได้ผลลัพธ์
การลดรูปโดยการใช้ตาราง K-map อย่างแท้จริง เพราะฉะนั้น การวงรอบ เราจำเป็นอย่างยิ่งที่จะต้องวงรอบในครั้งหนึ่งๆ ให้สามารถ
ครอบ- คลุม Minterm ได้จำนวนมากที่สุด และอยู่ในกฎการวงรอบที่ถูกต้อง
|
8.2.2 K-map ชนิด 2 ตัวแปร
K-map ชนิด 2 ตัวแปรจะประกอบด้วยจำนวน Cell เท่ากับ 22 = 4 Cell พิจารณาตาราง K-map ชนิด 2 ตัวแปรได้
ดังรูปที่ 8.6
|
รูปที่ 8.6 ตารางแสดง K-map ชนิด 2 ตัวแปร
|
หลักการพิจารณาผลลัพธ์ของวงรอบ
1. การเปรียบเทียบค่าประจำตำแหน่งของ Cell
พิจารณารูปที่ 8.7 จะเห็นว่ามี Minterm ที่เป็น “1” อยู่ใน Cell 0 และ Cell 1 เราจะทำการวงรอบ Minterm
เหล่านี้เข้าด้วยกัน เสมือนเป็นการวงรอบ และ นั่นเอง ในการวงรอบทั้ง 2 Cell จะมีตัวแปร A ที่ถูกทำ Comple-
-ment เหมือนกัน (มีเครื่องหมายบาร์)เป็นผลให้เราไม่สามารถตัดตัวแปร A ทิ้งได้ และอีกตัวแปรหนึ่งคือ B เราจะเห็นว่า
ใน Cell 0 มีการ Complement ตัวแปร B อยู่ และไม่ถูก Complement ใน Cell 1 เพราะฉะนั้นเราจำเป็นต้องตัด
ตัวแปร B ทิ้งไป ผลลัพธ์ที่เราได้จากการวงรอบในครั้งนี้คือ
|
รูปที่ 8.7 ตัวอย่างแสดงการลดรูปด้วยตาราง K-map ชนิด 2 ตัวแปร |
2. การเปรียบเทียบค่ากำกับตำแหน่งของ K-map
การพิจารณาผลลัพธ์ของการวงรอบมีหลักการง่ายๆ คือ ถ้าเมื่อไหร่ที่ค่ากำกับตำแหน่งของตัวแปรในวงรอบนั้นๆ ต่างกัน
เราสามารถตัดตัวแปรนั้นทิ้งไปได้เลย จากรูปที่ 8.8 (ก) หากเราพิจารณาไปที่ตัวแปร A จะเห็นว่า ค่ากำกับตำแหน่งของ
ตัวแปร A มีค่าเป็น “0” ในส่วนของตัวแปร B จะเห็นว่ามีทั้งที่เป็น “0” และ “1” นั่นหมายความว่า วงรอบนี้ค่ากำกับ
ตำแหน่งของตัวแปร B มีค่าไม่เท่ากันจึงต้องตัดตัวแปร B ทิ้งไป ผลลัพธ์ที่เราจะได้ คือ การที่ตัวแปร A ต้องมี
เครื่องหมายบาร์ (Complement) เพราะว่าค่ากำกับตำแหน่งของตัวแปร A มีค่าเป็น “0”
|
รูปที่ 8.8 ตัวอย่างแสดงการลดรูปด้วยตาราง K-map ชนิด 2 ตัวแปร
|
ขั้นตอนการลดรูปฟังก์ชัน
1. ให้พิจารณาว่า Minterm ของทุก Cell ในตาราง K-map มีค่าเป็ฯ “1” หรือ “0” หรือไม่ ถ้าหากในตาราง K-map
มีค่าเป็น “1”ทุก Cell สามารถสรุปได้ทันทีว่า ผลลัพธ์ของการลดรูปฟังก์ชันมีค่าเท่ากับ “1” และผลลัพธ์การลดรูปฟังก์ชัน
จะมีค่าเป็น “0” ถ้าหากMinterm ในทุก Cell มีค่าเท่ากับ “0”
2. ถ้าค่า Minterm ในตาราง K-map ไม่ได้เป็น “0” และ “1” ทุก Cell เราจะต้องพิจารณาต่อไปว่า เราจะทำการวงรอบ
อย่างไร เพื่อให้สามารถครอบคลุม Minterm ที่เป็น “1” ให้ได้มากที่สุด พิจารณาตัวอย่างการวงรอบ Minterm ที่เป็น
“1” ดังรูปที่ 8.8 (ข)
|
รูปที่ 8.8 (ต่อ)
การวงรอบ “1” ในครั้งแรก ทำให้เราได้ค่าเป็น ออกมา ซึ่งอาศัยหลักการพิจารณาดังที่ได้กล่าวมาแล้ว
|
3. เราได้ทำการวงรอบ “1” ไป 1 วงรอบแล้ว ต่อไปก็ให้พิจารณาต่อไปว่า ยังเหลือ Minterm ที่เป็น “1” อีกหรือไม่ สำหรับ
ตัวอย่างที่ยกมาประกอบการอธิบาย ยังเหลือ “1” อยู่อีก 1 ตัว เพราะ ฉะนั้นเราจะต้องทำการวงรอบ MInterm ตัวที่เหลือ
โดยการวงรอบร่วมกับ Minterm ที่ถูกวงรอบไปแล้วในครั้งแรก เพื่อต้องการให้ผลลัพธ์ของการลดรูปมีตัวแปรน้อยที่สุด
แสดงดังรูปที่ 8.8 (ค) ผลการลดรูปในวงรอบที่ 2 โดยอาศัยการพิจารณาตามหลักการลดรูปฟังก์ชันในข้างต้น เราจะได้ผลลัพธ์
การลดรูป คือ B
|
รูปที่ 8.8 (ต่อ)
|
4. เมื่อเราได้ดำเนินการวงรอบ Minterm ที่เป็น “1” ในตาราง K-map คตรบทุกค่าแล้ว ต่อไปจะเป็นขั้นตอนของการนำเอาผลลัพธ์
ที่ได้จากการวงรอบทั้งสองครั้ง มาทำการบวกกัน เพื่อจัดให้อยู่ในรูปแบบ Canonical SOP จากการลดรูปฟังก์ชันทั้งสองครั้ง
เราจะได้ ในการพิสูจน์ผลลัพธ์ของการลดรูปฟังก์ชัน เราสามารถตรวจผลลัพธ์การลดรูปฟังก์ชันได้โดยใช้ตารางความ
จริงหรือใช้ทฤษฎีของบูลีน
|
ข้อควรระวัง ลักษณะการวงรอบ Minterm “1” ที่ไม่ถูกต้อง แสดงดังรูปที่ 8.9
รูปที่ 8.9 ตัวอย่างการวงรอบที่ไม่ถูกต้องในขั้นต้น
|
ตัวอย่างที่ 8.1 การลดรูปฟังก์ชัน
วิธีทำ สร้างตารางความจริงของฟังก์ชันที่กำหนด
|
ตัวอย่างที่ 8.2 การลดรูปฟังก์ชัน
วิธีทำ
|
8.2.3 K-map ชนิด 3 ตัวแปร
ตาราง K-map ชนิด 3 ตัวแปรจะประกอบด้วยจำนวน Cell เท่ากับ Cell พิจารณาตาราง K-map ชนิด
3 ตัวแปรได้ดังรูปที่ 8.10
|
รูปที่ 8.10 รูปแบบของตาราง K-map ชนิด 3 ตัวแปร
|
รูปที่ 8.11 (ก) เป็นตัวอย่างตารางความจริงที่เรากำหนดค่าเอาต์พุต F ขึ้นมา เพื่อจะใช้ศึกษาวิธีการลดรูปฟังก์ชัน โดยใช้ตาราง
K-map ชนิด3 ตัวแปร เราสามารถดำเนินตามขั้นตอยเหมือนกับการลดรูปฟังก์ชันด้วยตาราง K-map ชนิด 2 ตัวแปร นั่นคือ การใส่ค่า
Minterm ที่เป็น “1” ของเอาต์พุต F ลงใน Cell ต่างๆ ของตาราง K-map ให้ทำการวงรอบ “1” ให้ได้จำนวนมากที่สุด (จำนวนของ
“1” ในแต่ละวงรอบจะมีค่าเท่ากับ โดยที่ n จะให้ แทนจำนวนเต็มบวกและศูนย์ เช่น เป็นต้น)
ผลของการวงรอบในครั้งแรก เราจะได้ผลลัพธ์เท่ากับ เพราะค่ากำกับตำแหน่งของตัวแปร B มีค่าไม่เท่ากัน และตัวแปร C ก็เช่นเดียวกัน
ซึ่งค่ากำกับตำแหน่งไม่เท่ากันแสดงดัง รูปที่ 8.11 (ค) จากการสิ้นสุดของการวงรอบในครั้งแรกทำให้ยังเหลือ Minterm อยู่อีกหนึ่งตัว
เพราะฉะนั้นเราจะต้องทำการวงริบต่อไปให้เสร็จสิ้น โดยทำการวงรอบ Minterm ตัวที่เหลือกับ Minterm ตัวที่ถูก วงรอบไปแล้ว
เพื่อจุดประสงค์ต้องการให้หารวงรอบ MInterm ได้จำนวนมากที่สุด ผลัพธ์ที่ได้จากการวงรอบครั้งที่ 2 คือ BC
|
รูปที่ 8.11 ตัวอย่างการลดรูปด้วยตาราง K-map ชนิด 3 ตัวแปร
|
ตัวอย่างที่ 8.3
วิธีทำ แสดงดังรูปที่ 8.12
รูปที่ 8.12 การลดรูปฟังก์ชันของตัวอย่างที่ 8.3
|
ตัวอย่างที่ 8.4
วิธีทำ แสดงดังรูปที่ 8.13
รูปที่ 8.13 การลดรูปฟังก์ชันของตัวอย่างที่ 8.4
|
ตัวอย่างที่ 8.5
วิธีทำ แสดงดังรูปที่ 8.14
รูปที่ 8.14 การลดรูปฟังก์ชันของตัวอย่างที่ 8.5
|
8.2.4 K-map ชนิด 4 ตัวแปร
K-map ชนิด 4 ตัวแปรจะประกอบด้วยจำนวน Cell เท่ากับ Cell พิจารณา K-map ชนิด 4 ตัวแปรได้
ดังรูปที่ 8.15
|
รูปที่ 8.15 รูปแบบของตาราง K-map ชนิด 4 ตัวแปร
|
ตารางความจริงในรูปที่ 8.16 เป็นการแสดงสภาวะของตัวแปร A, B, C และ D มีการกำหนด ค่าเอาต์พุต F เพื่อใช้ประกอบการ
ทำความเข้าใจการลดรูปฟังก์ชันด้วยตาราง K-map ชนิด 4 ตัวแปร เมื่อเราได้ใส่ค่า Minterm ที่เป็น “1” ลงในตาราง K-map
เรียบร้อยแล้ว ขั้นตอนต่อไปเป็นการวงรอบ Minterm ที่เป็น ”1”
|
วงรอบครั้งที่ 1
ที่เราทำการวงรอบ เป็นการวงรอบ Minterm “1” จำนวน 4 ตัวแปรด้วยกัน ผลลัพธ์ที่ได้จากการวงรอบแรกนี้ คือ CD
จากผลลัพธ์เราจะสังเกตเห็นว่า ค่ากำกับตำแหน่งของตัวแปร A มีค่าไม่เท่ากัน ส่วนค่ากำกับตำแหน่งของตัวแปร B ก็มีค่า
ไม่เท่ากันเช่นกันเป็นผลทำให้เราต้องตัดตัวแปร A และ B ทิ้งไป สำหรับผลลัพธ์จะไม่มีการ Complement เพราะค่ากำกับ
ตำแหน่งของตัวแปร C และ D มีค่าเป็น “1” ทั้งคู่ แสดงดังรูปที่ 8.16 (ค)
|
วงรอบครั้งที่ 2
เราสามารถทำการวงรอบ Minterm “1” ได้ 4 ตัวด้วยกัน เมื่อพิจารณาวงรอบเราจะสังเกตเห็นว่า ค่ากำกับตำแหน่งของตัวแปร
A มีค่าเท่ากัน จึงยังคงตัวแปร A เอาไว้ ส่วนค่ากำกับตำแหน่งของตัวแปร B มีค่าไม่เท่ากัน จึงตัดตัวแปร B ทิ้งไป ต่อไปให้มา
พิจารณาคู่ตัวแปร CD จะเห็นว่าค่ากำกับตำแหน่งของตัวแปร C มีค่าเท่ากัน เราจึงยังคงตัวแปร C เอาไว้ ส่วนตัวแปรD จะมีค่า
กำกับตำแหน่งไม่เท่ากัน เป็นผลให้ต้องตัดตัวแปร D ทิ้งไป ผลลัพธ์ของการลดรูปในวงรอบนี้ จะได้เท่ากับ AC แสดงดังรูปที่ 8.16 (ง)
|
วงรอบครั้งที่ 3
จะเป็นการวงรอบ Minterm เพียงจำนวน 2 ตัว ซึ่งอยู่ใน Cell 1 เนื่องจาก Minterm จำนวน 2 ตัวนี้ ไม่สามารถทำการวงรอบร่วมกับ
Minterm อื่นได้ จึงจำเป็นที่จะต้องทำการวงรอบ Minterm แค่ 2 ตัวเท่านั้น ผลลัพธ์ที่ได้จากการวงรอบ คือ เราได้ทำการ
วงรอบไปแล้ว3 วงรอบด้วยกัน ยังเหลือ Minterm อีกหนึ่งตัวอยู่ใน Cell 2 เมื่อพิจารณาแล้ว “1” ตัวนี้ สามารถทำการวงรอบร่วมกับ “1”
ใน Cell 3,Cell 10, Cell 11 ได้ และเราจะเห็นว่าค่ากำกับตำแหน่งของตัวแปร A ในวงรอบนี้มีค่าไม่เท่ากัน เราจึงต้องตัดตัวแปร D
ทิ้งไปในส่วนของผลลัพธ์ที่ได้จากการวงรอบในวงรอบนี้ คือ ดังรูปที่ 8.16 (ฉ)
|
รูปที่ 8.16 ตัวอย่างการลดรูปฟังก์ชันโดยตาราง K-map 4 ตัวแปร
รูปที่ 8.16 (ต่อ)
|
เมื่อเราได้ทำการวงรอบ Minterm ครบทุกตัว ต่อไปเป็นการพิจารณาผลลัพธ์ของการลดรูปของฟังก์ชันนี้ หรือการนำผลลัพธ์ จากการวงรอบในแต่ละครั้ง มาบวกกันตามรูปแบบ Canonical SOP ซึ่งเราจะได้ |
ตัวอย่างที่ 8.6
วิธีทำ
ตอบ
|
ตัวอย่างที่ 8.7 วิธีทำ ตอบ |
ตัวอย่างที่ 8.8
วิธีทำ
ตอบ
|
8.2.5 K-map ชนิด 5 ตัวแปร K-map ชนิด 5 ตัวแปรจะประกอบด้วยจำนวน Cell เท่ากับ Cell พิจารณาตาราง K-map ชนิด 5 ตัวแปรได้ ดังรูปที่ 8.17 |
รูปที่ 8.17 รูปแบบของตาราง K-map ชนิด 5 ตัวแปร
|
สมการข้างบนเป็นอีกสมการหนึ่งที่สามารถชี้ชัดได้ว่า การลดรูปฟังก์ชันที่มีความสำคัญอย่างยิ่งเพราะว่าเป็นฟังก์ชันที่ยาวและมี
ตัวแปรมากการพิจารณาการลดรูปฟังก์ชันโดยอาศัยตาราง K-map ชนิด 5 ตัวแปร สามารถดำเนินการลดรูปตามขั้นตอนการลดรูปที่ได้
กล่าวมาแล้ว ซึ่งขั้นแรกสุดเราจะต้องนำค่า Minterm ที่เป็น “1” ใส่ลงในตาราง K-map แสดงดังรูปที่ 8.18
|
รูปที่ 8.18 ตัวอย่างการใส่ค่าลงในตาราง K-map ชนิด 5 ตัวแปร
|
การวงรอบ Minterm ที่เป็น “1” ภายในตาราง K-map ให้พิจารณาแยกระหว่างวงรอบแต่ละ K-map โดยการคำนึงถึงลักษณะ
การวงรอบที่เหมือนกัน แสดงดังรูปที่ 8.19
|
รูปที่ 8.19 ตัวอย่างการวงรอบ “1” ของตาราง K-map 5 ตัวแปร
|
ขั้นตอนต่อไปให้พิจารณาเปรียบเทียบตำแหน่งของวงริบทั้ง 2 K-map โดยการปิดค่ากำกับตำแหน่งของตัวแปร A เอาไว้ ถ้าวงรอบใดอยู่
ในตำแหน่ง เดียวกันก็สามารถทำการลดรูปร่วมกันได้ วงรอบแรกอยู่ใน Cell 2, Cell 10, Cell 18 และ Cell 26 ทำให้ได้ผลการลดรูปเท่ากับ
แสดงดังรูปที่ 8.20
|
รูปที่ 8.20 ตัวอย่างการวงรอบร่วมระหว่างตาราง K-map ในการวงรอบครั้งแรก
|
วงรอบต่อไปก็จะอาศัยหลักการพิจารณาเช่นเดียวกับการลดรูปในวงรอบแรก โดยการพิจารณาค่ากำกับตำแหน่งระหว่าง K-map
ทั้งสอง โดยการปิดค่ากำกับตำแหน่งของตัวแปร A เอาไว้ ผลการลดรูปในวงรอบที่ประกอบด้วย Minterm ใน Cell 7, Cell 15, Cell 23
และ Cell 31 คือ CDE แสดงดังรูปที่ 8.21
|
รูปที่ 8.21 ตัวอย่างการวงรอบร่วมระหว่างตาราง K-map ในการวงรอบครั้งที่ 2
|
วงรอบ Minterm ใน Cell 0 และ Cell 1 ไม่สามารถวงรอบร่วมกับ Minterm ในตาราง K-map ทางขวามือ เพราะว่าใน Cell 16
และ Cell 17ไม่ม ี Minterm ที่เป็น “1” (Minterm เป็น “0”) เพราะฉะนั้นจึงดำเนินการลดรูปฟังก์ชัน เฉพาะภายในตาราง K-map
ทางซ้ายมือ ซึ่งผลการลดรูปเท่ากับ และอีก 2 วงรอบที่สามารถทำการลดรูปฟังก์ชันร่มกันได้ คือ วงรอบที่ประกอบด้วย Minterm
ใน Cell 12, Cell 13, Cell 28 และ Cell 29 ผลการลดรูปฟังก์ชันในวงรอบนี้เท่ากับ แสดงดังรูปที่ 8.22
|
รูปที่ 8.22 ตัวอย่างการลดรูปในการวงรอบครั้งที่ 3 และ 4
ผลลัพธ์จากการลดรูปฟังก์ชันทั้ง 4 วงรอบที่ผ่านมา เราจะได้ผลลัพธ์ของการลดรูป คือ
|
ตัวอย่างที่ 8.9
วิธีทำ
|
ตัวอย่างที่ 8.10
วิธีทำ
|
ข้อควรระวัง จากตัวอย่างที่ 8.10 ลักษณะการวงรอบที่ผิด แสดงดังรูปที่ 8.23 กล่าวคือลักษณะการวงรอบร่วมทั้ง 2 วงรอบ
ไม่ได้อยู่ในตำแหน่งเดียวกันหรือวงรอบทั้งสอง ไม่เป็น Logic Adjacent กัน จึงไม่สามารถทำการวงรอบร่วมกันได้
|
รูปที่ 8.23 ตัวอย่างการวงรอบที่ไม่ถูกต้องของตาราง K-map 5 ตัวแปร
|
ตัวอย่างที่ 8.11
วิธีทำ
<< G o To Top
|
8.3 เทอมไม่สนใจ (Don’t Care term)
การออกแบบวงจรดิจิตอลในบางสภาวะ เราไม่มีความจำเป็นที่จะต้องกำหนดค่าเอาต์พุตให้กับสภาวะนั้นเป็น “1” หรือ “0”
นั่นก็หมายถึงว่าในสภาวะนั้นสามารถมีค่าเอาต์พุตเป็น “1” หรือ “0” ก็ได้ เพราะฉะนั้นแล้ว เราจะแทนลักษณะเหตุการณ์เช่น
นี้ด้วยเงื่อนไข Don’t Care เพื่อเป็นประโยชน์ต่อการลดรูปฟังก์ชัน เราอาจจะกำหนด Don’t Care ให้ใช้สัญลักษณ์แทนได้
หลายอย่าง เช่น d แต่ในกรณีนี้เราจะใช้สัญลักษณ์ โดยจะกำหนดให้ มีค่าเป็น Minterm ที่เป็น “1” หาก อยู่ในวงรอบ
และจะกำหนดให้ เป็น Minterm ที่เป็น “0” หากว่า ตัวนั้นอยู่นอกวงรอบ
|
ตัวอย่างที่ 8.12
วิธีทำ
|
ในตัวอย่างที่ 8.12 ใน Cell 2 และ Cell 6 ถูกกำหนดให้ Minterm มีค่าเป็น “1” เพื่อให้สามารถทำการวงรอบร่วมกับ
Minterm ที่เป็น “1” อีก 2 ตัว ส่วน ใน Cell 0 ถูกกำหนดให้เป็น Minterm ที่มีค่าเป็น “0” เพื่อไม่เป็นการเพิ่มตัวแปรใน
ฟังก์ชันให้มีจำนวนมากขึ้นอีก
|
8.4 K-map ชนิด 6 ตัวแปร และ n ตัวแปร
จากการลดรูปฟังก์ชันโดยใช้ตาราง K-map ที่ผ่านมาทั้งหมดตั้งแต่ 1 ตัวแปรถึง 5 ตัวแปร การลดรูปฟังก์ชันโดยใช้ตาราง
K-map อยู่บนพื้นฐานของการลดรูปฟังก์ชัน โดยใช้ทฤษฎีของบูลีน ในลักษณะของการแยกตัวประกอบร่วมทั้งสิ้น การจัดรูปแบบ
ของตาราง K-map โดยอาศัยความเป็น Logic Adjacent กันของแต่ละ Cell ที่อยู่ใกล้กัน เพื่อให้เกิดความง่ายต่อการลดรูป
ฟังก์ชัน เราจะสังเกตเห็นได้ว่า ค่ากำกับตำแหน่งทั้งแนวนอนและแนวตั้ง ได้มาจากการประยุกต์ รหัสเกรย์ (Gray Code) ด้วยกัน
ทั้งสิ้น เราจะนำเอาตารางของรหัสเกรย์ มาทำความเข้าใจต่อการลดรูปฟังก์ชันที่มีจำนวนตัวแปรมากขึ้นจนถึง n ตัวแปร
(n คือจำนวนเต็มบวกใดๆ)
|
รูปที่ 8.24 ตารางจำนวนรหัสเกรย์ 16 จำนวน
|
จากตารางในรูปที่ 8.24 ค่าลำดับที่แสดงให้เห็นในตารางทั้ง 2 ได้มาจากการพิจารณา ของรหัสเกรย์ ผลของการ
จัดวางตำแหน่งใหม่แสดงดังตารางทางขวามือ ไม่สามารถจัดอยู่ในนิยามของรหัสเกรย์ได้อีกแล้ว สำหรับลักษณะการพิจารณาความ
เป็น Logic Adjacent กันตั้งแต่ 0-15 การจัดวางตำแหน่งใหม่ของค่าที่แสดงในตารางทางขวามือ เราจะยึดเอาค่าในลำดับที่ 0
เป็นหลัก แล้วจัดวางค่า จำนวนในลำดับที่ 1, 2 และ 3 ให้มีความเป็น Logic Adjacent หรือมีระยะห่างน้อยที่สุด โดยเปรียบเทียบ
กับค่าที่วางอยู่ในลำดับ 0 ตัวอย่างเช่น เราได้จัดวางค่า “0100” ไว้ในตำแหน่งแรกของลำดับที่ 1 ซึ่งตรงกับตำแหน่งแรกในลำดับ 0 คือ
“0000” การจัด “0100” ไว้ในตำแหน่งแรกเพราะค่า “0100” มีความเป็น Logic Adjacent กับค่า “0000” ในลำดับ 0 โดยค่า
0101, 0111 และ 0110 ไม่มีความเป็น Logic Adjacent กับค่า “0000” สำหรับการจัดวางตำแหน่งใหม่ของลำดับอื่นๆ นั้นก็
สามารถพิจารณาได้ในลักษณะเดียวกัน ส่วนการจัดวางตำแหน่งใหม่ในลำดับที่ 3 จะพบว่าไม่มีความเป็น Logic Adjacent กันเลยเมื่อ
เปรียบเทียบกับค่าในลำดับ 0 เพราะฉะนั้น การจัดให้เราพิจารณาระยะห่างที่น้อยที่สุด คือ 2 บิต ตัวอย่างเช่น การจัดค่า“1100” ไว้ใน
ตำแหน่งแรกของลำดับที่ 3 เพราะว่าค่าจำนวนอื่นๆ ในลำดับที่ 3 มีระยะห่างกับค่า “0000” มากกว่า 2 บิต ทั้งนั้นจากการศึกษาที่ผ่านมา
เราจะพบว่า Cell 0 กับ Cell 3 ของตาราง K-mapไม่สามารถวงรอบร่วมกันได้ ก็เนื่องมาจากสาเหตุความไม่ได้เป็น Logic Adjacent
กันนั่นเอง
ต่อไปเราจะนำเอาค่าที่ได้จากการจัดรูปใหม่ดังแสดงในรูปที่ 8.24 มาสร้างเป็นตาราง K-map 6 ตัวแปร จากรูปแบบของตาราง
K-map ที่ได้ศึกษากันมา จะดำเนินการแบ่งจำนวนตัวแปรออกเป็น 2 ส่วน คือ ตัวแปรที่อยู่ในแนวตั้ง และตัวแปรที่อยู่ในแนวนอน ทั้งนี้ทั้งนั้น
การแบ่งจำนวนตัวแปรจะเป็นไปในลักษณะที่แนวตั้งมากกว่าแนวนอน หรือตรงกันข้าม หรือเท่ากันขึ้นอยู่กับความพึงพอใจของผู้วิเคราะห์ และ
ออกแบบ เพื่อความหลากหลายในการทำความ เข้าใจตาราง K-map จำนวน 6 ตัวแปร เราจะมีการกำหนดให้จำนวนตัวแปรในแนวตั้งและ
แนวนอนมีจำนวนเท่ากันเป็นกรณีแรก และกรณีที่ 2 เราจะกำหนดให้ตัวแปรในแนวตั้งเป็น 4 ตัวแปร และที่เหลืออีก 2 ตัวแปร อยู่ในแนวนอน
ดังแสดงในรูปที่ 8.25 และ 8.26 ตามลำดับ
|
รูปที่ 8.25 ตัวอย่างตาราง K-map จำนวน 6 ตัวแปร ในรูปแบบที่กำหนดให้แนวตั้ง
และแนวนอนมีจำนวนตัวแปรเท่ากัน [F(A,B,C,D,E,F)]
รูปที่ 8.26 ตาราง K-map จำนวน 6 ตัวแปร ในรูปแบบที่กำหนดให้แนวตั้งประกอบด้วย
4 ตัวแปร และแนวนอนประกอบด้วย 2 ตัวแปร [F(A,B,C,D,E,F)]
|
ให้เราพิจารณาตาราง K-map จำนวน 6 ตัวแปร ดังแสดงในรูปที่ 8.25 และ 8.26 จะเห็นว่ามันได้ขยายมาจากตาราง K-map
จำนวน 2 ตัวแปร และการวงรอบเพื่อการลดรูปฟังก์ชัน ให้เราทำความเข้าใจให้จงหนักว่า จะต้องเป็น Cell ที่เป็น Logic Adjacent
กันเท่านั้น เราจะทำความเข้าใจการลดรูปฟังก์ชันในตัวอย่างที่ 8.13
|
ตัวอย่างที่ 8.13 เราจะดำเนินการลดรูปฟังก์ชันต่อไปนี้
|
วิธีทำ
จากตัวอย่างแรกของการลดรูปฟังก์ชัน นอกเหนือจากการพิจารณาความเป็น Logic Adjacent ของค่า “1”
ในแต่ละ Cell แล้ว เพื่อรักษาผลประโยชน์ของการวงรอบที่สูงสุด ในขั้นต้นเราควรพิจารณา “1” ของทั้ง 4 ส่วน
ของตาราง K-map ตัวอย่างเช่น การวงรอบ “1” ใน Cell 2, 3, 6, 7, 1011, 14, 15, 34, 35, 38, 39, 42, 43,
46, 47 เพื่อให้เหลือตัวแปรน้อยที่สุด โดยจำเป็นที่เราจะต้องกำหนดให้ ใน Cell ที่ต้องวงรอบร่วมมีค่าเป็น “1”
จากนั้นก็ดำเนินการพิจารณาระหว่าง 2 ส่วนของตาราง K-map ซึ่งอาจจะเป็นส่วนของมันเอง เช่น ตัวอย่างการวง
รอบ “1” ใน Cell ที่ 1 และ 3 กับ 17 และ 19
|
ข้อที่ 1 ขั้นตอนที่ 1
ขั้นตอนที่ 2
ขั้นตอนที่ 3
|
ข้อที่ 3 ของตัวอย่างที่ 8.13 เป็นฟังก์ชันจำนวน 7 ตัวแปร เพราะฉะนั้นเราจะเลือกแบ่งจำนวนตัวแปรทางแนวตั้งเป็นจำนวน
4 ตัวแปร และในแนวนอนจำนวน 3 ตัวแปร ดังแสดงให้เห็นในขั้นตอนการลดรูปฟังก์ชัน การพิจารณาวงรอบ “1” ในขั้นต้น เราควร
พิจารณาร่วมกันทั้ง 8 ส่วนของตาราง K-map และ 4, 2, 1 ตามลำดับ
เมื่อเราได้ทราบถึงโครงสร้างและที่มาของตาราง K-map ตลอดจนข้อกำหนดของการวงรอบ “1” เพื่อลดรูปฟังก์ชัน คงจะ
ไม่เป็นเรื่องยากอีกแล้วสำหรับการลดรูปด้วยตาราง K-map ที่มีจำนวนตัวแปรมากๆ แต่ถึงแม้ว่าเราจะมีความเข้าใจและสามารถลดรูป
ฟังก์ชันที่มีจำนวนตัวแปรมากๆ ได้แล้วการจะนำไปสู่ประสิทธิผลอันสูงสุดของการออกแบบ มันไม่เป็นเช่นนั้น ระบบดิจิตอลมีข้อจำกัด
หลายอย่าง ที่ทำให้ตัวมันไม่สามารถเป็นระบบใหญ่ได้ ถ้าหากเราต้องการออกแบบระบบดิจิตอลที่มีความซับซ้อน และมีการจัดการด้าน
ข้อมูลจำนวนมาก คงเป็นเรื่องที่ไม่ดีแน่ ถ้าเราจะต้องใช้ระบบดิจิตอล (ระดับความเหมาะสม ไม่มีเกณฑ์ตัดสินที่ตายตัว ขึ้นอยู่กับความ
ต้องการของผู้ออกแบบ โดยอาศัยปัจจัยต่างๆ ตัดสิน เช่น ความสะดวกในการออกแบบงบประมาณ ความง่ายต่อการใช้งาน เป็นต้น
สิ่งเหล่านี้ล้วนเป็นเงื่อนไขทางการตลาดทั้งสิ้น) เราควรจะหันไปให้ความสนใจกับไมโครโปรเซสเซอร์ หรือ ไมโครคอนโทรลเลอร์
หรือ ไมโครคอมพิวเตอร์ต่อไป
|
้ ข้อที่ 2 ขั้นตอนที่ 1 ขั้นตอนที่ 2
ขั้นตอนที่ 3
ข้อที่ 3 ขั้นตอนที่ 1 (8 ส่วน)
ขั้นตอนที่ 2 (4 ส่วน)
ขั้นตอนที่ 3 (2 และ 1 ส่วน)
|
ไม่มีความคิดเห็น:
แสดงความคิดเห็น