เมื่อเรามาคำนวณ GATE ดังตัวอย่างนี้ เราจำเป็นต้องใช้ GATE จำนวน 3 Input เป็นอย่างต่ำ เพื่อให้ได้ผลลัพท์ตาม Truth Tables ดังกล่าว และในการต่อวงจรนั้น สุดท้ายแล้วเราก็ยังไม่รู้ว่าจะต้แงต่อวงจรยังไงและใช้จำนวน GATE เท่าไร อะไรบ้าง
ซึ่งคราวนี้จะมาดูว่าเราสามารถกระทำอะไรกับตาราง Truth Table นี้ได้บ้าง
1.) Sum - of - products ( SOP )
Sum of products คือการทำ Boolean Expression ในรูปของการบวกกันของผลคุณ เช่น ABC+AC+BC
**เสริม Boolean Expression คือ การแปลงจาก Truth Tables ที่เราสนใจนั้น ให้อยู่ในรูปของสมการ **
กรณีนี้ เราเขียน Boolean Expression ในรูปผลคุณของ Input ใดที่ทำให้ Output เป็น "1"
จากนั้นก็เขียน Boolean Expression ให้อยู่ในรูปของ Sum of products จะได้
จากนั้น เราก็จะได้ Logic Gates เป็นหน้าตา ดังนี้
ยังไงก็ตามวงจรนี้ก็ยังดูซับซ้อนมากต่อการ implement ดังนี้เราสามารถลดรูปลงได้ โดยใช้เทคนิคของ Boolean Algebra
Boolean Algebra หรือ พีชคณิตของบูลีน เป็นหลักทางคณิตศาสตร์ที่ใช้วิเคราะห์ปัญหาทางตรรก ถูกคิดค้นโดยนักคณิตศาสตร์ชาวอังกฤษ ชื่อ จอร์จ บูล( George Boole ) ค่อมาก็มีผู้พัฒนาให้สมบูรณ์ขึ้นอีกหลายคน ปัจจุบันนี้เราใช้พีชคณิตของบูลีนในการออกแบบวงจร Logic Gates ซึ่งเป็นการลดความยุ่งยากของวงจรลง
1.) เอกลักษณ์ของบูลีในการบวก
1.1 A + 0 = A เพราะว่า ต่อให้ A=0 ผลที่ได้คือ 0 + 0 = 0 และถ้า A = 1 ผลที่ได้คือ 1 + 0 = 1 ดังนั้นจึงสรุปว่า A + 0 = A
1.2 A + 1 = 1 เพราะว่า ต่อให้ A=0 ผลที่ได้คือ 0 + 1 = 1 และถ้า A = 1 ผลที่ได้คือ 1 + 1 = 1 ดังนั้นจึงสรุปว่า A + 1 = 1
1.3 A + A = A เพราะว่า เราเอาขา Input มาต่อร่วมกัน เลยทำให้ A=0 ผลที่ได้คือ 0 + 0 = 0 และถ้า A = 1 ผลที่ได้คือ 1 + 1 = 1 ดังนั้นจึงสรุปว่า A + A = A
1.4 A +`A= 1 เพราะว่า เราเอาขา Input มาต่อร่วมกันและมีขาหนึ่งที่ต่อแบบ Inverts ไว้ เลยทำให้ A=0 ผลที่ได้คือ 0 + 1 = 1 และถ้า A = 1 ผลที่ได้คือ 1 + 0 = 1 ดังนั้นจึงสรุปว่า A +`A= 1
หมายเหตุ `A คือ Inverts ของ A เช่นกัน
2.) เอกลักษณ์ของบูลีในการคุณ
2.1 0A = 0 เพราะว่า ต่อให้ A=0 ผลที่ได้คือ 00 = 0 และถ้า A = 1 ผลที่ได้คือ 01 = 0 ดังนั้นจึงสรุปว่า 0A = 0
2.2 1A = A เพราะว่า ต่อให้ A=0 ผลที่ได้คือ 10 = 0 และถ้า A = 1 ผลที่ได้คือ 11 = 1 ดังนั้นจึงสรุปว่า 1A = A
2.3 AA = A เพราะว่า เราเอาขา Input มาต่อร่วมกัน เลยทำให้ A=0 ผลที่ได้คือ 00 = 0 และถ้า A = 1 ผลที่ได้คือ 11 = 1 ดังนั้นจึงสรุปว่า AA = A
2.4 A`A= 0 เพราะว่า เราเอาขา Input มาต่อร่วมกันและมีขาหนึ่งที่ต่อแบบ Inverts ไว้ เลยทำให้ A=0 ผลที่ได้คือ 01 = 0 และถ้า A = 1 ผลที่ได้คือ 10 = 0 ดังนั้นจึงสรุปว่า A`A= 0
หมายเหตุ `A คือ Inverts ของ A เช่นกัน
สรุป เอกลักษณ์ของบูลีนจะเป็นไปตามนี้
*** เพิ่มเติม : ถ้าเราต่อ Inverts 2 ชั้น ผลที่ได้คือ จะได้ผลลัพธ์เหมือน input ทันที
คุณสมบัติของบูลีน
1. การสลับที่ (Commutative law)
A + B = B + A และ AB = BA
2. กฎการจัดหมู่ (Associative law)
(A + B)+C = A+(B + C) และ (AB)C = A(BC)
3. กฎการกระจาย (Distributive law)
A(B + C) = AB+AC และ A+(BC) = (A+B)(A+C)
สรุป คุณสมบัติของบูลีนเป็นไปตามนี้
การลดรูปโดยใช้กฎของบูลีน
1. A + AB = A
เกิดจาก...
จะได้รูปวงจรดังนี้
2. A + `AB = A+B
เกิดจาก...
จะได้รูปวงจรดังนี้
หมายเหตุ `A คือ Inverts ของ A เช่นกัน
3. (A+B)(`A+C) = A + BC
เกิดจาก...
จะได้วงจรดังรูปต่อไปนี้
สรุป การลดรูปโดยใช้กฏของบูลีนจะเป็นดังนี้
หมายเหตุ `A คือ Inverts ของ A เช่นกัน
เกี่ยวกับ The Exclusive - OR Function (XOR)
XOR 1 ตัว จะมีลักษณะเหมือนกับ A`B + `AB
ลองลดรูปวงจรโดยการใช้กฎของบูลีนกันเถอะ
จากวงจรนี้ เราสามารถลดรูปวงจรโดยใช้บูลีนได้เป็นดังนี้
จะเหลือรูปวงจรเพียงแค่นี้
อารัมภบทต่อมา เราต้องเพิ่ม Output ขึ้นมาอีก 1 หล่ะ คราวนี้เราจะทำเยี่ยงใย???
ถ้าเห็นอย่างนี้เราคงทำ SOP อย่างแน่นอนซึ่งผลของ Boolean Expression ก็จะได้แบบนี้
ซึ่งเราสามารถนำ Boolean Expression นี้ไปลดรูปได้ปกติแต่จะมีโอกาสผิดสูงมากเพราะมีจำนวนพจน์ถึง 6 พจน์ด้วยกัน ซึ่งมากพอสมควร ซึ่งเราจะมาเรียนรูปวิธีลดต่อไปคือ
2.) Products - of - sum ( POS )
Products of sum คือการทำ Boolean Expression ในรูปของการคูณกันของผลบวก เช่น (A+B+C)(A+C)(B+C) แต่คราวนี้เราจะสนใจที่ Output เป็น "0"
ซึ่งจะทำให้ได้วงจรเพิ่มเต็มเป็นดังนี้
และเช่นเดียวกันเราสามารถลดรูปวงจรนี้ได้โดยใช้ Boolean Algebra ได้เช่นกัน
DeMorgan's theorem
ทฤษฏีที่สำคัญอีกทฤษฎีของ Digital Logic โดยพื้นฐานแล้วมันมีไว้เพื่อแปลงรูปนิเสธของ logic เพื่อช่วยให้ง่ายต่อการคำนวณ Boolean Algebra และบทเด่นของมันคือ ยุบ bar กรณีที่มี 2 bar ขึ้นไปได้
ตัวอย่างของ DeMorgan ในการแทนอุปกรณ์
ตัวอย่างการใช้ DeMorgan Law.
Ref :: http://www.electrical4u.com/de-morgans-theorem-and-demorgans-laws/
***ทิ้งทายด้วย***
ทำไม Sum (บวก) ต้องแทนด้วย OR Gates??
ทำไม Product (คูณ) ต้องแทนด้วย AND Gate??
นั่นก็เพราะ.......ตามนั้นนะ
Class Work
1.) ทำการต่อวงจร SOP ดังตัวอย่างวงจรข้างบน พบว่า สายเยอะมาก และการทดลองเป็นไปด้วยดี
2.) ทำการเพิ่มวงจรในส่วนของ POS ลงไปด้วย ซึ่งได้ลดรูปวงจรจากตัวอย่างแล้วได้เป็น
ทำให้ได้หน้าตาวงจรออกมาเป็นดังนี้
และนี้คือผลของการต่อวงจรจริง
หน้าตาเหมือนข้างบนมากแทบแยกไม่ออก |
2) ลองพยายมลดรูป POS โดยไม่ใช่ XOR ผลปรากฎว่า เยอะยิ่งกว่าเดิมซะอีก เลยต้องทำใจยอมใช้ XOR
**หมายเหตุ ที่ต่อวงจร POS ลง Output ที่ช่องตรวจสอบสถานะ Logic เพราะเพื่อจะดูความแตกต่างของ SOP และ POS ได้ชัดเจนยิ่งขึ้น และจากโจทย์คือ เราต้องตรวจสอบ Input ทั้งสามด้วยว่า เราป้อน Input ที่เหมือนกันหรือเปล่า ถ้าเหมือนกัน ไฟ Output สีเขียวก็ติด แต่ถ้ามี input ใดที่ต่างจากเพื่อน ไฟ output จากสีเขียวก็กลายเป็นสีแดง