วิธีการควินแม็กคลัสกี้
(QM)
<< 9.1 หลักการของ (QM)
<< 9.2 ขั้นตอนการลดทอนสมการลอจิกโดยวิธี QM
<< 9.3 การลดทอนสมการลอจิก QM โดยใช้เลขฐานสิบ
<< 9.4 การลดทอนสมการลอจิกที่มีเทอม Don’t Care
<< 9.5 การลดทอนสมการลอจิกที่มีหลายเอาต์พุตโดยวิธี QM
วิธี K-map เป็นวิธีที่ดัดแปลงมาจากทฤษฎีบูลีน โดยใช้วิธีการรวมพื้นที่แทนการใช้กฎของบูลีน ข้อดีของวิธีนี้ก็คือ การหาคำตอบ
มีกฎเกณฑ์ตายตัวเป็นขั้นเป็นตอน แต่ก็ช้ากับสมการลอจิกที่มีตัวแปรไม่เกิน 6 ตัว และไม่เหมาะที่จะใช้กับสมการที่มีเอาต์พุตมากกว่า 1
เอาต์พุตการลดทอนสมการลอจิกอีกวิธีหนึ่งที่จะกล่าวถึงก็คือ วิธี QM ซึ่งเป็นวิธีที่ดัดแปลงมาจากทฤษฎีบูลีนเช่นเดียวกับวิธี K-map
ต่างกันที่วิธี K-map จะเปลี่ยนจากสมการไปเป็นพื้นที่ ส่วนวิธีQM จะเปรียบเทียบแต่ละเทอมกันโดยตรง เป็นวิธีการที่เหมาะกับสมการ
ลอจิกที่ซับซ้อน มีหลายตัวแปร มีหลายเอาต์พุต แต่มีข้อเสียที่วิธีนี้กฎเกณฑ์ในการหาคำตอบยุ่งยากกว่าวิธีอื่น ทำให้หาคำตอบได้ช้า
การลดทอนสมการลอจิกโดยทฤษฎีบูลีน และ K-map ใช้ได้ทั้งสมการที่อยู่ในรูป Mintem และ Maxterm แต่สำหรับวิธี QM
ที่กล่าวถึงจะใช้กับสมการในรูป Minterm เท่านั้น ถ้าโจทย์กำหนดสมการในรูป Maxterm ต้องเปลี่ยนเป็น Minterm ก่อน แล้วจึงจะ
ลดทอนสมการโดยวิธี QM ได้
|
9.1 หลักการของ (QM) ก่อนที่จะกล่าวถึงหลักการของ QM จะต้องทำความเข้าใจความหมายของคำว่า เทอมประชิด PI และ PI สำคัญ 9.1.1 เทอมประชิด (Adjacent) เทอมประชิด (Adjacent) ก็คือเทอมของตัวแปรที่เมี่อเปลี่ยนเป็นเลขฐานสองแล้ว จะมีตัวเลข ต่างกันเพียง 1 บิต ซึ่งเป็น เทอมที่สามารถรวมกลุ่มกันได้ ถ้าพิจารณาจาก K-map ก็คือ เทอมที่อยู่ในช่องที่ติดกันนั่นเอง 9.1.2 PI (Prime Implicant) PI หมายถึง การรวมกลุ่มเลข 1 ที่อยู่บน K-map โดยที่สมาชิกทั้งหมดในกลุ่ม จะต้องไม่เป็นกลุ่มย่อยของ PI อื่น(เพียง l PI) ที่มีจำนวนสมาชิกมากกว่า หรืออาจกล่าวได้ว่า PI ก็คือกลุ่มของเลข 1 บน K-map ที่ไม่เป็นชุดย่อย (Subset) ของ PI อื่น 9.1.3 PI สำคัญ (Essential Prime Implicant) PI สำคัญ หมายถึง PI ที่มีสมาชิกอย่างน้อย 1 ตัว ไม่ได้เป็นสมาชิกของ PI อื่นพิจารณา K-map รูปที่ 9.1 |
|
จากรูปที่ 9.1 (ก) ประกอบด้วย PI ทั้งหมด 6 PI คือ
|
จำนวน PI ก็คือ จำนวนกลุ่มของเลข 1 ที่รวมกันได้ทั้งหมดบน K-map แต่การเลือกไปใช้งานนั้นจะเลือก PI ไปใช้งาน
เพียงบางตัวเท่านั้นโดยต้องเลือกจำนวน PI ให้น้อยที่สุด ที่สามารถครอบคลุม (Cover) ทุก Minterm ที่อยู่บน K-map
ได้ ซึ่งมีหลักการในการเลือก PI ดังนี้
1.เลือก PI สำคัญทุก PI มาใช้งาน ถ้า PI สำคัญสามารถครอบคลุมเลข 1 บน K-map ได้ครบทุกตัว ไม่ต้องเลือก PI ที่เหลือ
2. กรณี PI สำคัญที่เลือกมาใช้งานตามข้อ 1 ยังไม่สามารถครอบคลุมเลข 1 บน K-map ได้ครบทุกตัว ให้เลือก PI ที่เหลือมาใช้งาน
แต่จำนวน PI ต้องน้อยที่สุด ที่สามารถครอบคลุมเลข 1 ที่เหลือทุกตัวได้
3. นำ PI ที่เลือกทั้งหมดมาบวกกัน (OR) เปลี่ยนแต่ละ PI ไปเป็นตัวแปร ก็จะได้ผลการลดทอนสมการ
จาก K-map รูปที่ 9.1 (ก) PI สำคัญคือ
|
|
จากหลักการที่กล่าวถึงข้างต้น จะดัดแปลงเป็นวิธี QM โดยการนำแต่ละ Minterm ที่กำหนดในสมการเปลี่ยนเป็นเลขฐานสอง
แล้วทำการเปรียบเทียบ Minterm ทีละคู่เพื่อหา PI จากนั้นจึงทำการเลือก PI มาใช้งาน
<< Go To Top
|
9.2 ขั้นตอนการลดทอนสมการลอจิกโดยวิธี QM
การลดทอนสมการลอจิกโดยวิธี QM มีวิธีการดังนี้
1. จากสมการที่กำหนดต้องเขียนในรูป Minterm เปลี่ยนแต่ละ Minterm ไปเป็นเลขฐานสอง (Binary Code) จัดแบ่ง Minterm
เป็นกลุ่มตามจำนวนเลข 1ใน Minterm นั้น ได้แก่ กลุ่มที่ไม่มีเลข 1จัดไว้ 1 กลุ่ม กลุ่มที่มีเลข 1 จำนวน 1 ตัวจัดไว้ 1 กลุ่ม
กลุ่มที่มีเลข 1 จำนวน 2 ตัว จัดไว้ 1 กลุ่ม เป็นต้น นำไปเขียนลงใน List 1
2. จาก List l Minterm ในกลุ่มที่มีจำนวนเลข 1 ต่างกัน 1 ตัว ให้นำมาเปรียบเทียบกัน ถ้าMinterm คู่ไหนเป็นเทอมประชิด
(มีบิตต่างกัน 1 บิต) ให้เขียน เครื่องหมาย
|
ตัวอย่างที่ 9.1 จงลดทอนสมการโดยวิธี QM
|
ขั้นตอนที่ 2 รวมกลุ่ม Minterm ที่เป็นเทอมประชิด นำผลการรวมกลุ่มไปเขียนเป็น List 2, 3, ... จนไม่สามารถจะรวบกลุ่มได้อีก
|
จาก List 1 พิจารณา Minterm กลุ่มที่มีจำนวนเลข 1 ต่างกัน 1 ตัว ถ้า Minterm คู่ใดมีบิตต่างกัน 1 บิต
สามารถรวมกลุ่มกัน ได้โดยตัดบิตที่ต่างกันออก นำผลการรวมกลุ่มไปเขียนลงใน List 2 เช่น
|
ขั้นตอนที่ 3 เขียนตารางเลือก PI โดยเขียน PI ในแนวตั้งและเขียน Minterm ที่กำหนดจากโจทย์ในแนวนอน
|
PI1 มาจาก List 3 จัดไว้ 1 กลุ่ม PI2 ถึง PI7 มาจาก List 2 จัดไว้อีก 1 กลุ่ม PI แต่ละตัวสามารถครอบคลุม Mintermใด
ได้บ้างจะ เขียนเครื่องหมาย X ลงในช่องนั้น เช่น
|
ขั้นตอนที่ 4 หา PI สำคัญ
จากตารางในขั้นตอนที่ 3 หา PI สำคัญ โดยพิจารณาตามแนวตั้งของแต่ละ Minterm เพื่อหาช่องที่มีเครื่องหมาย X
เพียงตัวเดียว เช่น ในแนวตั้งของ m9 มีเครื่องหมาย X เพียงตัวเดียวให้เขียนวงกลมล้อมรอบเครื่องหมาย X นั้น พิจารณาตาม
แนวนอนจะได้ว่า
|
ขั้นตอนที่ 5 จากขั้นตอนที่ 4 PI สำคัญคือ
|
|
จากตาราง
|
ขั้นตอนที่ 6 น าPI ที่เลือกมา OR กัน
|
ดังนั้นการเลือก PI มาใช้งานให้ยึดหลักการดังนี้
1. เลือกจำนวน PI ให้น้อยที่สุด เพราะจำนวน PI จะมีผลกับจำนวนเทอมของสมการโดยที่ จำนวน PI = จำนวนเทอมของสมการ
2. ถ้าเลือกตามข้อ l แล้วปรากฏว่า มีคำตอบมากกว่า 1 คำตอบ ให้เลือกคำตอบที่ PI อยู่ใน List ที่สูงกว่า (List 2 สูงกว่า List 1,
List 3 สูงกว่าList 2 เป็นต้น) เพราะมีจำนวนตัวแปรน้อยกว่าเช่น ถ้าลดทอนสมการแล้วมี 2 คำตอบที่มี PI บางตัวแตกต่างกัน
ให้นำ PI ที่ต่างกันมาเปรียบเทียบกัน สมมุติคำตอบที่ 1เป็น PIที่อยู่ใน List 2 คำตอบที่ 2 เป็น PI ที่อยู่ใน List 4 กรณีเช่นนี้ให้
เลือกคำตอบที่ 2
<< Go To Top
|
9.3 การลดทอนสมการลอจิก QM โดยใช้เลขฐานสิบ
การลดทอนสมการลอจิกวีธี QM ที่กล่าวถึงมาแล้วนั้น เป็นกรณีใช้เลขฐานสอง ถ้าเป็นสมการที่มีหลายตัวแปร จำนวนบิตก็มีมากขึ้น
ทำให้หาคำตอบได้ช้า อาจจะดัดแปลงไปใช้เลขฐานสิบแทนเพราะ Minterm ที่มีบิตต่างกัน 1 บิต ถ้าพิจารณาในรูปเลขฐานสิบก็คือ Minterm
ที่มีค่าแตกต่างกันเท่ากับ
|
ตัวอย่างที่ 9.2 จากสมการลอจิกในตัวอย่างที่ 9.1 จงลดทอนสมการวิธี QM โดยใช้เลขฐานสิบ
วิธีทำ
จากตัวอย่างที่ 9.1
|
9.4 การลดทอนสมการลอจิกที่มีเทอม Don’t Care
การลดทอนสมการลอจิกโดยวิธี QM กรณีที่เทอม Don’t Care รวมอยู่ด้วยนั้น ในขั้นตอนการ แบ่งกลุ่มตามจำนวนตัวเลข 1 ทั้ง
Minterm และ Don’t Care จะนำมาพิจารณาร่วมกัน โดยไม่มีการแยกว่า เทอมใดเป็น Minterm เทอมใดเป็น Don’t Care แต่ใน
ขั้นตอนสร้างตารางเลือก PI ให้เขียนเฉพาะเทอมที่เป็น Minterm ลงในตารางเลือก PI เทอมที่เป็น Don’t Care ให้ตัดออกส่วนการ
กำหนดชื่อ PI ให้กำหนดเฉพาะกลุ่มที่มี Mintermร่วมอยู่ด้วยอย่างน้อย 1 Minterm กลุ่มใดมีเทอมDon’t Care เพียงอย่างเดียวให้ตัดออก
ไม่ต้องกำหนดชื่อ PI
|
ตัวอย่างที่ 9.3 จงลดทอนสมการลอจิกโดยวิธี QM |
9.5 การลดทอนสมการลอจิกที่มีหลายเอาต์พุตโดยวิธี QM
การลดทอนสมการลอจิกที่มีหลายเอาต์พุต จะใช้หลักการเดียวกับกรณีเอาต์พุตเดียวตามที่กล่าวถึงในข้างต้น แต่จะมีความ
ซับซ้อนมากกว่า เพราะต้องพิจารณาการใช้เกตร่วมกันของแต่ละเอาต์พุตด้วยซึ่งมีหลักการดังนี้
1. แต่ละเทอมไม่ว่าจะเป็น Minterm หรือ Don’t Care จะต้องระบุด้วยว่าเป็นสมาชิกของเอาต์พุตใดบ้าง เรียกว่าการ
กำหนด แฟล็ก (Flag)
2. การรวมกลุ่มนอกจากจะเป็นเทอมประชิด (มีบิตต่างกัน 1 บิต) แล้ว ต้องมีแฟล็ก (เอาต์พุต) เหมือนกันอย่างน้อย 1 ตัว
เรียกแฟล็กที่เหมือนกันว่า แฟล็กร่วม (Common Flag) เขียนเครื่องหมาย
|
ตัวอย่างที่ 9.4 จงลดทอนสมการลอจิกที่มี 3 เอาต์พุต โดยวิธี QM พร้อมเขียนวงจรลอจิก
|
จาก List 1
|
การพิจารณาว่า PI แต่ละตัวครอบคลุม Minterm ใดบ้างนั้น จะต้องพิจารณาแฟล็กประกอบด้วย เช่น
|
|
จากสมการข้างต้น ปรากฏว่า PI สำคัญไม่สามารถครอบคลุมได้ครบทุก Minterm ดังนั้นต้องเลือก PI อื่นมาใช้งาน
(เพี่อให้ครอบคลุมครบทุก Minterm) โดยพยายามเลือก PI ให้ใช้งานร่วมกันได้มากที่สุด เช่น f3 ไม่มี PI สำคัญอยู่เลย
ประกอบด้วย
|
|
นำทั้ง 3 เอาต์พุต (
|
|
รูปที่ 9.1 แสดง PI บน K-map





ข้อสังเกต จากตัวอย่างที่ 9.1 จะเห็นว่า PI ที่อยู่ใน List ต่างกันเมื่อเปลี่ยนตัวแปร จะได้จำนวนตัวแปรไม่เท่ากัน เช่น
เขียนตารางเลือก PI เหมือนตัวอย่างที่ 9.1
เขียนตารางเลือก PI โดยตัดเทอมที่เป็น Don’t Care ออก
PI สำคัญคือ
วิธีทำ
นำเทอมทั้งหมดจากโจทย์ (ทั้ง Minterm และ Don’t Care) เขียนลงใน List 1 โดยแบ่งเป็นกลุ่มตาม
จำนวนเลข1และระบุชื่อแฟล็กของแต่ละเทอม




เปลี่ยน PI ที่เลือกไปเป็นตัวแปร
ผลการลดทอนสมการคือ
จากผลการลดทอนนำไปเขียนวงจรลอจิก
รูปที่ 9.2 วงจรลอจิกจากสมการที่ได้ทำการลดรูปแล้ว
ไม่มีความคิดเห็น:
แสดงความคิดเห็น