บทท่ี 4 การใชไบนารีลอจิกเกตวตั ถปุ ระสงค หลงั จากไดศ กึ ษาในบทที่ 4 นีแ้ ลว จะสามารถ 1. เขียนวงจรลอจิกจาก Boolean expression ตา ง ๆ ได 2. ออกแบบวงจรลอจกิ จากตารางความจริงโดยใช Boolean expression ชว ยยุบละเขียนวงจรดว ย AND-OR ลอจิก 3. ลดความซาํ้ ซอ นของ Boolean expression โดยใช NAND เกตแทนได 4. แกไ ขปญหาลอจิกโดยใชต วั เลือกขอมูลได 5. แกไขปญ หาลอจกิ โดยใชต ัวเลือกขอ มูลได ในบทที่ 3 เราไดรจู ักสญั ลกั ษณ ตารางความจรงิ และ Boolean expression ของไบนารลี อจิกเกตมาแลว เกตตาง ๆ นั้น สามารถนาํ มาสรางวงจรดิจติ อลไดทุกวงจร ในบทท่ี 4 น้ี จะไดเรียนรูวาสัญลกั ษณ ตารางความจริงและ Boolean expression สามารถนาํ มาแกปญ หาในงานอเิ ลก็ ทรอนิกสไดจรงิ เราจะตอเกตโดยใชวงจรลอจกิ เชงิ จัดหมู (combinational logic circuits) และเกตตา ง ๆ รวมทงั้ ตวั อินเวอรเตอรในการแกปญหาทางลอจิก ละใช “tools of the trade” ในการแกปญหาทางลอจิกถาหากตอ งการทราบสัญลักษณข องเกต ตารางความจริง และ Boolean expression สามารถอางไดใ นบทสรุปของบทท่ี 3 ไดแ กร ูปที่ 3.51 ซง่ึ ไดส รุปลอจกิ เกตทส่ี ําคัญๆท่ีตอ งใชไวแลว ผูท ่อี ยูในงานดจิ ิตอลอิเล็กทรอนกิ สจะตองสามารถจัดหมเู กตได วงจรเชงิ จัดหมสู ามารถใชก บั ไอซไี ดท้งั แบบ TTL หรอื CMOS4.1 โครงสรา งของวงจรจาก Boolean expression เราใช Boolean expression ในการสรางวงจรลอจิกได สมมตวิ าเรามี Boolean expressionA+B+C =Y (อานวา “A or B or C เทากบั เอาตพุต Y ”) และสรางวงจรขนึ้ มา โดยใชฟ ง กช ั่นลอจิก ซึง่จะพบวาอินพุตทัง้ 3 อนิ พตุ นนั้ จะเขาสู OR เกต และไดเ อาตพ ุตเปน Y ซึ่งแสดงไดด ังรปู ท่ี 4.1 รปู ที่ 4.1 แสดงภาพของลอจิกไดอะแกรม จากสมการบลู ิน A+B+C = Y สมมติวา เรามี Boolean expression เปน ( A B + AB + B C = Y ) (อา นวา not A and Bor A and B or not B and C เทากับเอาตพุต Y) ขน้ั ตอนแรกเราจะรูท นั ทเี ลยวา โครงสรา งของวงจรจะตองเปน OR เกต 3 อินพุตโดยแตล ะอนิ พตุ คอื A B B A B C ดงั รปู ที่ 4.2 a) ซึง่ แสดง เกต 3อินพตุ เอาตพ ุตท่ไี ดจ ะเปน Y และเขยี นใหมไดดงั รูปที่ 4.2 b) 73
รปู ท่ี 4.2 แสดงขั้นที่ 1 ของโครงสรา งวงจรลอจิก ขัน้ ตอนตอ ไปเขียนวงจรดจิ ติ อลทง้ั หมดของ Boolean expression ( A B + AB + B C = Y )โดยรูป 4.3 b) จะแสดงเหน็ วา อินพตุ ทเี่ ปน B C จะสรา งจาก AND เกต 2 ระหวา งอนิ พุต C กับอนิ พตุB ทผี่ านมาจากอนิ เวอรเตอรแ ลว สว นรูปที่ 4.3 b) จะเพม่ิ AND เกต 3 ซง่ึ แจะเปนสวนของ ABเอาตพ ตุ ที่ได จะเปน อินพุตของ OR เกต สว นรปู ท่ี 4.3 c) จะเพม่ิ AND เกต 4 และอนิ เวอรเ ตอร 6 เขาไป เพ่ือใหเปน A B และเปน อนิ พตุ ของแอนดเกตตอไป นีค่ อื โครงสรางของวงจรทงั้ หมดโดยสรางจากBoolean expression ( A B + AB + B C = Y ) รปู ที่ 4.3 แสดงข้ันตอนท่ี 2 ของโครงสรา งวงจรลอจกิ 74
จะเห็นวาในการสรางวงจร เราจะเรมิ่ พิจรณาวงจรจากเอาตพตุ กอ น แลวเขยี นวงจรออกมาจากนั้นจึงคอย ๆ มองไปทางอินพตุ จะเหน็ วา วงจรลอจกิ เชงิ จดั หมูสามารถสรางจาก Booleanexpression ได Boolean expression ที่พบตอไปสองรปู แบบคือ แบบ sum-of-product ซึง่ แสดงไดในรูปท่ี 4.2 หรืออีกตัวอยา งหนึ่ง เชน สมการ (AB)+(B.C) = Y สําหรบั Boolean expression อกี แบบหน่ึง คือ product-of-sums เรยี กวา Maxterm form เชน สมการ (A+B)(B+C) = Yโจทยทดสอบ จงตอบคําถามตอ ไปน้ี1. จงขียนโครงสรา งของวงจรดิจติ อลโดยใช AND OR NOT เกต จาด Boolean expressionตอไปน้ี a) (A + B)(A + B) = Y ) b) (A + B)(C + B)(B + D) = Y )2. minterm Boolean expression ใชเ รียกรูปแบบ.............................................3. maxterm Boolean expression ใชเ รยี กรปู แบบ.............................................4.2 การเขียนวงจรจาก maxterm Boolean expression สมมตวิ าเรามี maxterm Boolean expression (A + B + C)(A + B ) = Y ) ถาหากเขียนวงจรดจิ ิตอลขน้ั แรกมองเปน AND เกต 2 อินพตุ โดยอนิ พตุ แตล ะคาคือ (A + B + C) และ (A + B )โดยเอาตพุตทีไ่ ดคือ Y ดังแสดงดงั รปู ที่ 4.4 a) หรือเขียนใหมไ ดด งั รูป 4.4 b) รปู ท่ี 4.4 แสดงข้ันตอนท่ี 1 ของโครงสรางแบบ product-of-SUM ข้นั ตอนตอ ไปเขยี นวงจรดงั รูปที่ 4.5 โดยเทอม (A + B ) จะนาํ มาจาก OR เกต2 และอนิ เวอรเตอร 3 และ 4ดังแสดงในรูป 4.5 a) สาํ หรบั เทอม (A+B+C) ทีจ่ ะเปน อินพุตหนง่ึ ของ AND เกตจะนาํ มาจากเอาตพ ุตของ OR เกต5 ดังรปู ที่ 4.5 b) จะเปน วงจรท่เี ขยี นจาก maxterm Booleanexpression (A + B + C)(A + B ) = Y 75
รูปที่ 4.5 แสดงข้ันตอนท่ี 2 ของโครงสรา งแบบ product-of-SUM สรปุ ไดวาถา หากเราตอ งการแปลง Boolean expression เปนวงจรดจิ ติ อลหําจากขวาไปซา ย(เอาตพตุ ไปอนิ พตุ ) โดยใชเ กตพ้ืนฐานตางๆ ไดแ ก AND OR และ NOT เกต รวมกับวิธกี ารจัดหมขู องวงจรลอจิกซึง่ จะพบวา ทั้ง maxterm และ minterm Boolean expression สามารถเขียนเปนวงจรลอจิกได โดย minterm expression จะสรา งจากวงจร AND-ORลอจิก ดังรปู 4.3 c) สําหรับmaxterm expression สรา งจากวงจร AND-ORลอจิก ดงั รปู 4.5 b) จะเห็นวา เราสามารถพิสจู น minterm และ maxterm Boolean expression แล แปลงBoolean expression เปน วงจรดจิ ติ อลเชงิ จดั หมูท่สี รางจาก AND OR และ NOT เกตไดโจทยท ดสอบ จงตอบคําถามตอ ไปน้ี 4. จงเขียนลอจกิ โดยใช AND OR และ NOT เกตจาก Boolean expression ตอ ไปน้ี A. (A + B)(A + B ) = Y B. (A + B)(C) = Y C. (A + B)(C + D )(A + C ) = Y 5.จากคาํ ถามขอ 4 Boolean expression คอื ........... (maxterm minterm) 6. จากคาํ ถามขอ 4 Boolean expression เปน รปู แบบ........ (products-of-sums ,sums-of-products) 7. Maxterm Boolean expression จะสรา งโดยใชว งจรลอจกิ ............... (AND-OR,OR-AND) 76
4.3 ตารางความจริง และ Boolean expression พีชคณิตบลู นี สามารถนาํ มาเขยี นในรูปวงจรลอจิกได ตารางความจริงกเ็ ปนอีกวิธีหนง่ึ ท่นี าํ มาเขยี นเปนวงจรลอจิกได การออกแบบวงจรในงานอเิ ล็กทรอนกิ สจ ะแปลงตารางความจรงิ เปน Booleanexpression พจิ ารณาตารางความจรงิ จากรปู ที่ 4.6 a) จะพบวามี 2 กรณที ีแ่ ปลงจาก 3 ทอี่ ินพตุ A,B และ Cท่ีทําใหเกิดเอาตพตุ เปน ลอจิก “1” ซึ่งไดแ ก (CBA) และ (CBA) รูปที่ 4.6 แสดงรูปแบบของสมการบูลีน ที่ไดม าจากตารงความจริง ในรูปที่ 4.6 b) เปนการแสดงการจัดหมเู ขาดว ยกนั โดยใชวิธีการ OR จาก Truth table รปู ท่ี4.6 a) และ Boolean expression ในรปู ที่ 4.6 b) จะนํามาใชในการสรา งวงรจลอจกิ บางคร้ังเราจะตองแปลง Boolean expression ใหเปนตารางควาจริง กส็ ามารถทําไดพิจารณา Boolean expression ใน จะเห็นวามีสองสว นของคาอินพุต A,B และ C ที่จะทาํ ใหเ อาตพุตเปนลอจิก “1” ในรปู ท่ี 4.7 b) จะเขียนตารางความจริงใชคา A,B และ C คา ตารางตาง ๆ ลงไป สําหรับผลลพั ธของเอาตพ ุตใหใสคาทไ่ี ดจาก Boolean expression ใสคา ”1” ลงไปสําหรบั คาตวั แปรอืน่ ๆใหเปนลอจกิ “0” ทง้ั หมดท้ัง Boolean expression ในรูปที่ 4.7 a) และตารางความจรงิ ในรูปที่ 4.7 b)สามารถนาํ มากําหนดแบบของวงจรลอจิกได 77
รปู ท่ี 4.7 แสดงการเขียนตารางความจริงจากสมการบูลีน สมมติวาเรามี Boolean expression ดงั แสดงในรปู ที่ 4.8 a) ขัน้ แรกถา พิจารณาดูจะพบวา มี 2อินพุตทีจ่ ะใหล อจกิ “1” จากนั้นเขียนตา ง ๆ ลงในตารางความจริง เทอมทมี่ อี ยใู น Boolean expressionA.B+A.B.C = Y จะเห็นเทอมท่ไี ดคาลอจกิ “1” ซงึ่ มอี ยูดว ยกัน 3 คา ตรงนต้ี องระมัดระวัง โดยเทอมC.A จะให 2 คา คอื คา B เปน “0” และ B เปน “1” ซึ่งอธบิ ายไดในรปู ที่ 4.8 สว นเทอมอ่นื ๆ จะเปน“0” ทง้ั หมด ดังน้นั Boolean expression ในรูปท่ี 4.8 a) สามารถเขยี นเปนตารางความจริงได ในรูปท่ี 4.8 b) ซ่งึ สามารถนาํ ไปเขียนลอจิกไดเ ชนกัน รูปที่ 4.8 แสดงการเขยี นตารางความจรงิ จากสมการบลู นี ถงึ ตรงนี้เราไดร ูวธิ ีแปลงตารางความจริงเปน Boolean expression และแปลง Booleanexpression เปน ตารางความจรงิ แลว 78
โจทยทดสอบ จงตอบคําถามตอไปน้ี 8. จากรูป 4.6 a) สมมตวิ า 2 บรรทัดสุดทายของตารางความจริง มีเอาตพตุ เปน “1” (นอกนัน้ เปน “0” ทัง้ หมด) sums-of-products Boolean expression 9. จากรูป 4.6 b) ถา Boolean expression (CBA ) + (CB A) = Y ตารางความจรงิ จะมี เอาตพตุ เปน High ใน 2 บรรทัดใด 10. จงเขียนตารางความจรงิ สําหรับ Boolean expression (CBA ) + (CB A) = Y4.4 โจทยต ัวอยาง ในหัวขอที่ 4.1 ถึง 4.3 ควรจะตองฝกใหชาํ นาญถาหากจะทํางานดา นดิจิตอลอิเล็กทรอนิกสตวั อยา งตอไปนีจ้ ะเปน การแปลงจากตารางความจริง เปน Boolean expression และแปลงเปนวงจรดจิ ติ อล ดงั แสดงในรูปที่ 4.9 รปู ที่ 4.9 แสดสงถึงระบบอเิ ล็กทรอนิกสล็อก (Electronics Lock) a) สมการบูลีน b) วงจรลอจิก สมมติวาเราจะออกแบบระบบ electronic lock อยา งงา ย (คลา ยๆ กับการกดรหัสตวั เลขจากกระเปา เดนิ ทาง) ระบบ lock น้ี จะเปด lock ไดก ต็ อเมื่อมีการกดสวิตซ 3 ตัวอยา งเหมาะสม โดยถาใหเอาตพ ตุ เปน “1” ระบบ lock จะเปด ถาเราออกแบบใหการกดสวิตชเปนลกั ษณะตารางความจรงิ ในรปู 79
ท่ี 4.9 a) โดยมรี หสั เปดสองคา จะเหน็ วา ระบบ lock จะเปดได ก็ตอ เมอื่ อินพุตจากสวิตช A BและC ใหเอาตพตุ ออกมาเปน “1” ในรูป 4.9 b) จะเขยี น minterm Boolean expression ของวงจรระบบelectronic lock ที่เราออกแบบจากตารางความจริง สาํ หรับวงจรลอจกิ จะแสดงไดในรปู ท่ี 4.9 c) ซึ่งเขียนออกาจาก Boolean expression จากตัวอยางของระบบในรูปที่ 4.9 น้ี จะเห็นวาเราสามารถแปลงตารางความจรงิ ใหเ ปนBoolean expression และแปลงตอไปใหเ ปน วงจรทางลอจิกได ซงึ่ จะพบวา ถา เราตอ งการการออกแบบอะไรสกั อยาง สามารถแกปญ หาได โดยการเขยี นในลกั ษณะตารางความจริงออกมากอนจากนนั้ จงึ สรางเปนวงจรลอจกิ ไดโจทยทดสอบ จงตอบคําถามตอไปน้ี 11. จงใชตารางความจริงของระบบ electronic lock เขียน minterm Boolean expression จาก ตารางความจริงน้ี รูปท่ี 10 12. จากโจทยในขอ 11 ถาหากวงจรลอจิกจาก Boolean expression ของระบบ electronic lock จะเขยี นไดอยางไร4.5 การลดความซา้ํ ซอน (Simplifying) เพ่อื ทําสมการบลู นี ใหอ ยใู นรปู ท่ีงายและประหยัด วงจรดจิ ติ อลหากวงจรมีความซํา้ ซอนและใชเกตเปนจาํ นวนมาก จะทาํ ใหไ มประหยดั จะตอ งนําสทการบูลนี นัน้ มาลดรูป ใหไ ดสมการอยูในรูปแบบท่งี ายกอนทจี่ ะนําไปสรางเปน วงจรตอไป พจิ ารณาBoolean expression (A B) + (AB ) + (AB) = Y ในรูปท่ี 4.10 a) ถาเรานําไปเขยี นเปนวงจรลจิกจะตองใช AND เกต 3 ตวั อนิ เวอรเตอร 2 ตวั และ OR เกต 3 อินพุตอกี 1 ตัว ซงึ่ แสดงไดดังรปู ที่ 4.11b) หากนําBoolean expression ในรปู ที่ 4.11 a) และวงจรลอจิกในรปู 4.11 b) ถา นํามาเขียนเปนตารางความจริง จะไดดงั รูป 4.11 c) ซ่ึงจะพบวาตารางความจริงนี้ สอดคลองกบั ตารางความจรงิ ของ OR เกต 80
2 อินพุต ดงั น้ัน Boolean expression (A B) + (AB ) + (AB) = Y จะสอดคลอ งกบั Booleanexpression ของ OR เกต 2 อินพตุ ดังแสดงในรปู 4.10 d) นนั้ หมายความวา วงจรลอจกิ ในรูป 4.11 b)สามารถเขยี นแทนไดดว ย OR เกต 2 อนิ พุตตัวเดียว ดงั รปู ที่ 4.11 e) จากตัวอยางในรปู ท่ี 4.10 จะแสดงใหเปนวา Boolean expression ของด้งั เดิม สามารถทาํ ใหดูงา ยขน้ึ หรอื ยุบลงได ถาเรานํา Boolean expression มาสรางเปนวงจรดิจิตอล การยบุ ใหเลก็ ลง จะทาํใหเ ปน การประหยดั ในการใชเกต ซ่ึงจะทาํ ใหว งจรดจิ ิตอลที่เราออกแบบขน้ึ มีราคาไมแ พง วิธที ี่ใชยุบBoolean expression ใหดงู ายขึ้น ท่ีนิยมใชม ีสองวธิ ี คือ ใชพ ชี คณติ บูลีน (Boolean algebra) และใชKnaugh mapping พชี คณติ บลู นี เกดิ ข้นึ จาก George Boole (1815-1864) ตอมาถกู ดัดแปลงใหเหมาะสมกบั งานทางดา นดิจิตอลในป 1930 การใชพ ชี คณิตบลู นี จะเปนพนื้ ฐานในการทําวงจรใหดงู า ยขนึ้ แตจะใชเวลานานกวาการใช Knaugh mapping ในทนี่ ้จี ะไมกลาวถงึ การใชพ ีชคณิตบูลนี แตจะกลาวถึงวิธีKnaugh mapping ตงั้ แตหวั ขอท่ี 4.6 ถึง 4.10 รปู ท่ี 4.11 แสดงการทําสมการบลู ีนใหอยูในรูปแบบงา ย 81
โจทยท ดสอบ จงตอบคําถามตอ ไปนี้ 13. วงจรลอจกิ ในรปู ที่ 4.11 b) และ e) ผลลพั ธที่ไดจะ..............................(different identical)กยั ตารางความจรงิ 14. สมการบลู ีนสามารถทําใหอ ยใู นรปู งายไดโดยใช. ..............algebra หรอื ................mapping4.6 Karnaugh maps ในป 1953 Maurice Karnaugh ไดอ ธบิ ายการลดรูปสมการบูลีน โดยใชวธิ แี ผนผงั Knaughmap (ในทนี่ ีจ้ ะขอเรียกวา K map) ซง่ึ จะทาํ การแกสมการบลู นี ทาํ ไดง า ยและเร็วข้ึน โดยแผนผัง K Mapนี้ จะประกอบดวยชองตาราง ท่สี ามารถแทนคาของอินพุททุกคา ของสมการทจ่ี ะเปน ไปได ถาใชสมการบูลีน 2 ตัวแปรจะเขียนไดเ ปนตารางแบบ 4 ชอ ง ถา ใชส มการบูลีน 3 ตัวแปรจะเขยี นไดเ ปน ตารางแบบ 8ชอง ถา ใชสมการบูลีน 4 ตวั แปร จะเขยี นไดเปนตารางแบบ 16 ชอง พิจารณารูปที่ 4.12 จากตารางความจริงเอาตพตุ Y ทีเ่ กดิ จากอนิ พตุ A และ B สามารถเขียนเปน K map โดยเขียนเปน สี่เหลย่ี มจัตตุรัส ดังรูปท่ี 4.12 โดยมีชอ งส่ีเหลี่ยม 4 ชองประกอบกนั สาํ หรบั ตัวแปรอนิ พุตสองตวั A และ B ชอ งสี่เหล่ยี มแรก จะเปนของตัวแปร A B ชอ งส่ีเหลี่ยมท่ีสอง จะเปน ของตัวแปร A B ตามลําดบั รปู ที่ 4.12 แสดงถึงความหมายของชองตางใน Knaughmap รปู ที่ 4.13 แสดงการเขียนลอจกิ 1 ลงใน Knaughmap 82
สําหรับปญ หาโจทย ในรปู ท่ี 4.11 เริ่มแรกเรามี Boolean expression เปน(A B) + (AB ) + (AB) = Y ซ่งึ เขยี นได ดังรปู ที่ 4.13 a) จากนั้นเขียนเทอมท่ีเปน 1 ลงไปใน K mapโดยคา ในตารางความจรงิ จะตรงกับคาใน K map ซึง่ เขียนไดดงั รปู ที่ 4.13 b) สาํ หรับการแกสมการเอาตพุตใหเปน สมการท่งี า ยขึ้น จะทําไดโ ดยการรวมเทอมที่เปน 1 เรียกวา การสรา งลูป (looping) ในรปู ท่ี 4.14 จะเปนการสรางลปู โดยรวมชอ งท่ี 1 จํานวนสองชอ งตดิ ตอกนั เรียกวากลุมสอง (groups oftwo) โดยวธิ ีการสรางลปู ท่พี บมากมี 3 ประเภท คือ การสรา งลปู แบบกลมุ 2 การสรา งลูปแบบกลุม 4และการสรางลปู แบบกลุม 8 โดยนํา “1” จาํ นวน 8 ตวั ท่ีอยตู ิดกันมารวมกัน รปู ที่ 4.14 แสดงการทํารวมชองทีเ่ ปน 1 เขา ดวยกันใน Knaughmap รูปที่ 4.15 แสดงการลดรูปตัวแปรสมการบูลีนจาก Knaughmap จากรปู ที่ 4.13 พจิ ารณาลปู ท่ี 2 จะเหน็ วา ในแตละลปู จะเขียนในเทอมของ OR เกตได และในเทอมน้ัน จะกําจดั ตัวแปรได 1 ตัว พิจารณารูปที่ 4.15 ซึ่งจะเขยี นผลลัพธท ่ไี ดแ ตล ะลูป ออกมาจากนน้ันํามา OR กันกจ็ ะไดส มการเอาตพ ุต ในลปู นอนของรปู ท่ี 4.15 จะไดผลลัพธอ อกมาเปน A เนือ่ งจากถานาํ แตล ะชองมาเขยี นเปน สมการบูลนี เทอม B และ B สามารถกาํ จัด (eliminated) ออกไปไดด วยพีชคณติ บลู นี จะเหลอื เพยง A สาํ หรับ ลูปนอน A และ A สามารถจาํ กัดออกไปไดเ ชน กนั จะเหลือเพียง B สําหรับลปู ตั้ง เมอื่ นําสองลูปมา OR กนั จะไดส มการเอาตพตุ เปน A + B = Y จะเหน็ วาBoolean expression ที่ไดจะอยูในรูปงายขึน้ สรปุ ลวขัน้ ตอนในการยุบสมการบูลีนใหอยใู นรปู งายมี 6ขน้ั ตอน คอื a. เรม่ิ ตน เขียนสมการบลู ีนแบบ minterm b. เขยี นคา ที่เปน 1 ลงบน K map c. สรา งลปู เทอมท่เี ปน 1 (ลูป 2 ลปู 4 หรือลูป 8) d. ยบุ ตวั แปรในแตละลูป โดยตวั แปรทม่ี ี complement จะถูกยบุ ไป e. ทาํ การ OR เทอมที่เหลอื อยู (หนง่ึ เทอมตอหน่งึ ลูป) f. เขยี น minterm ของสมการบูลีน 83
โจทยท ดสอบ จงตอบคําถามตอไปนี้ 15. ใครเปนผูท่พี ัฒนาแผนภาพในรปู ที่ 4.13 16. จงเขยี นขั้นตอนตางๆ หกข้นั ตอนในการทาํ สมการบลู นี ใหอยใู นรูปงาย โดยใชแผนผัง K-map รูปท่ี 4.16 แสดงการลดรูปตวั แปรสมการบูลีนจาก Knaughmap (a) กอ นการลดรูปสมการบลู นี (b) เขยี นเลข 1 ลงใน Map (c) รวมชองที่เปน 1 เขาดว ยกัน (d) ไดส มการบลู นี ทีล่ ดรูปแลว4.7 แผนผัง Karnaugh maps แบบ 3 ตวั แปร สมการบูลีนแบบ 3 ตวั แปร หากเราเขยี นเปน Knaugh Map จะไดแผนผังขนาด 8 ชอ งพิจารณาจากสมการบูลีน (AB C) + (AB C) + (AB C)(ABC ) = Y ซ่งึ เขยี นไวใ นรปู 4.16 a) ในการเขยี น K-map ของสมการตวั แปร จะเขยี นไดดงั รปู ที่ 4.16 b) ซ่ึงจะไดช องสเ่ี หล่ยี มท้งั หมดจํานวน 8 ชอ งสาํ หรบั ตัวแปร A B และ C จากน้นั เขียนเลข 1 ของเทอมทเ่ี ปน ลอจกิ “1” ลงในแผนผงั ซ่งึ มที ัง้ หมด 4เทอม สงั เกตเหน็ ไดว า จะมี 1 สองตัวตดิ กันอยู 2 คู ใหขียนลปู แบบลูปสองลูปลงไป จะไดดังรปู 4.16c) ในลปู ต้ังสามารถยุบ B และ B ได ซึง่ เหลือ A และ C จะไดเ ปนเทอม สําหรับลูปบนสดุ เทอม C 84
และ C สามารถยุบได ซ่งึ จะเหลอื เทอม AB จากน้ันนาํ แตละเทอมมา OR กัน จะไดส มการบูลีนดงั รปูท่ี 4.16 d) คอื (A C) + (A B ) = Y จากรูปท่ี 4.16 สงั เกตการเขยี นเทอมตาง ๆ จากบนลงลางจะเห็นวา แตละเทอมในแตละชองจะมีตัวแปรตา งกนั อยูห น่งึ ตวั แปร โดยเร่ิมจาก (A B ) ชอ งถดั มาจะเปน (A B) เปลย่ี น (B ) เปน (B)จากนัน้ จะถกู เปล่ียนเปน AB ในชองถดั ลงมาซง่ึ จะเปลี่ยนA เปน A ตอมาจะเปล่ียน AB เปน AB ในชอ งถัดลงมาโดยตวั แปรB จะถูกเปล่ยี นเปน การเขียนเทอมตา งๆ ใน K map จะตอ งเขยี นใหถ ูกผิดจะทําใหคาํ ตอบท่ีออกมาผิดโจทยท ดสอบ จงตอบคําถามตอไปนี้17. จากสมการบูลีน (AB C) + (A BC) + (AB C) + (AB C) = Y จงทาํ ตอไปนี้ เขยี นเทอมทเี่ ปน 1 ลงในแผนผัง แบบสามตัวแปร เขยี นลปู ของ 1 แบบกลมุ สองหรอื ส่ี ลดรูปตัวแปรในลูปนนั้ เขยี นสมการบูลีนที่อยูรูปงาย18. จากสมการบูลีน (A BC) + (A BC) + (AB C) + (AB C) + (ABC) = Y จงทําตอไปนี้ เขียนเทอมท่เี ปน 1 ลงในแผนผงั แบบสามตวั แปร เขยี นลูปของ 1 แบบกลมุ สองหรอื สี่ ลดรปู ตวั แปรในลูปนัน้ เขียนสมการบลู นี ท่ีอยรู ูปงาย4.8 Karnaugh Maps แบบ 4 ตวั แปร ตารางความจรงิ ของสมการบูลีนแบบ 4 ตัวแปร จะมีคาเปนไปได 16 คา เราสามารถลดรูปสมการบูลนี แบบ 4 ตัวแปรโดยใชแผนผงั เชนกัน แผนผงั karnaugh สาํ หรับ 4 ตวั แปรจะมี 16 ชอง หาพิจารณาสมการบลู ีน (AB CD ) + (ABCD) + (A B B D) + (B B CD) + (ABCD) + (AB C D) = Yในรปู ที่ 4.17 a จากนน้ั ใหกรอกตวั เลข 1 ลงไปดังรูป 4.17 b จากนนั้ ใหรวมลูป โดยการรวมชอ งทเี่ ปน 1ในชองทีอ่ ยูติดกนั ตามแนวต้ังหรือแนวนอน จะเห็นวาสมารถทาํ ลูปแบบกลุม 4 และกลมุ 2 ไดอ ยางละหนง่ึ ลปู ดังรูปท่ี 4.17 c โดยลปู ลางเปนแบบกลุม 2 สามารถยุบตัวแปรเปน (D ) และ (D) ออกไปไดจะไดผ ลลัพธเปน (ABC ) สาํ หรับลปู บนจะเปนแบบกลมุ 4 ซึ่งสามารถยบุ ตวั แปรออกไปได 2 ตัว ซึ่งในกรณนี ้สี ามารถยบุ ตัวแปร C และ C ตวั แปร B และ B ออกไปได จะไดผ ลลพั ธเ ปน A D จากนน้ัใหน ําเทอม ABC และ AD มา OR กนั จะไดส มการบลู ีนในรปู แบบงา ยเปน ดงั รูปท่ี 4.17 d คอื( AB C) + ( AD) = Y 85
รูปท่ี 4.17 การลดความซับซอนของพีชคณิตบูลีนขนาด 4 ตัวแปรดวย Karnaugh Map การทาํ สมการบูลีนใหงา ยขน้ึ จากสมการบูลนี แบบสองตัวแปรและส่ีตัวแปร สามารถทําไดโดยวิธสี รางลปู ลงบนแผนผงั ดงั แสดงในรปู ท่ี 4.14 ถึงรปู ท่ี 4.16 ทกี่ ลา วมาโจทยท ดสอบ19. จากสมการบูลนี ตอ ไปนี้ (������������̅ ∙ ������������ ∙ ������������� ∙ ������������� ) + (������������ ∙ ������������ ∙ ������������� ∙ ������������� ) + (������������̅ ∙ ������������ ∙ ������������� ∙ ������������) + (������������ ∙ ������������ ∙ ������������� ∙ ������������) + (������������ ∙ ������������� ∙ ������������ ∙ ������������� ) = ������������ จงทาํ ใหอ ยูในรปู งา ยขึ้น โดย ก. เขียนเทอมทเ่ี ปน 1 ลงในแผนผงั แบบส่ตี วั แปร ข. ทาํ ลปู ของ 1 แบบกลมุ สองและกลุมสี่ ค. ลดคา ตัวแปรในแตละลปู ง. เขยี นสมการบลู นี ในรูปงา ย20. จากสมการบูลนี ตอไปน้ี (������������̅ ∙ ������������� ∙ ������������� ∙ ������������� ) + (������������̅ ∙ ������������� ∙ ������������� ∙ ������������� ) + (������������̅ ∙ ������������ ∙ ������������� ∙ �������������) + (������������ ∙ ������������ ∙ ������������� ∙ ������������) + (������������ ∙ ������������ ∙ ������������ ∙ ������������� ) = ������������ จงทาํ ใหอ ยใู นรูปงายขน้ึ โดย จ. เขยี นเทอมทีเ่ ปน 1 ลงในแผนผงั แบบ 4 ตัวแปร ฉ. ทาํ ลูปของ 1 แบบกลมุ สองและกลมุ สี่ ช. ลดคา ตวั แปรในแตละลปู ซ. เขียนสมการบูลนี ในรูปงา ย 86
4.9 Karnaugh Maps แบบอน่ื ๆ ในหวั ขอท่ีจะกลาวถึง Kanaugh Map แบบตาง ๆ ทอ่ี าจพบไดใ นสมการบูลนี ที่ตอ งการจะลดลูปพิจารณาสมการบลู ีนในรูปท่ี 4.18 a ซ่งึ เปน ฟงชนั่ บลู นี แบบสตี่ ัวแปร สี่เทอมและเมือเขียนสวนท่เี ปน 1ลงไปในแตล ะชอง จะไดดงั รปู ที่ 4.18 b จะเห็นวา สว นท่ีเปน 1 จะอยูทางดานซายสุดและขวาสุด เราจะถอื วา อยูติดกัน หรืออาจกลาวไดวาตาราง Kanaugh Map นนั้ สามารถมวนมาตอกันได โดยเชองทีอ่ ยูตดิ กนั จะมคี า ลอจิกตา งกันอยู 1 คา) ดงั น้นั สมการน้ีสามารถสรา งลูปแบบลูปสไ่ี ด สามารถกาํ จัดตัวแปรตางๆ ได คอื (A) และ (A ) ตัวแปร (C) และ (C) ผลลัพธจ ะเปน สมการที่อยใู นรปู งายคือ (BD) ดงัแสดงในรูป 4.18 c รูปท่ี 4.18 แสดงการลดความซับซอนของนิพจนบ ลู ีน โดยพจิ ารณาชองท่ีมีเลข 1 ที่เปน แนวตัง้ ตดิ กนั สองตวั จํานวนสองคู ในลกั ษณะ 1ติดกัน 4 ตัว อกี ตวั อยา งหน่งึ พิจารณารปู ที่ 4.19 a เทอมท่ีเปน 1 จะอยดู า นบนสุดและลางสุดซึ่งก็ถอื วา อยูตดิ กนั สามารถสรา งลูปเปน ลูปแบบกลุม 4 ได จะไดสมการบูลนี ทีล่ ดรูปแลว เปน (B C) = Y ดังรปู4.19 b โดยสามารถกาํ จดั ตัวแปร (A) และ (A ) ตวั แปร และ กําจดั ตวั แปร (D) และ (D) ออกไปได สําหรับรปู ท่ี 4.20 a เทอมทีเ่ ปน 1 จะอยูท ่มี มุ ทั้งสขี่ องแผนผงั ซง่ึ ก็ถอื วา อยูตดิ กนั สามารถสรางลปู แบบกลุม 4 ได และกาํ จดั ตวั แปร (A) และ (A ) และกาํ จดั ตวั แปร (C) และ (C ) ออกไป จะไดสมการบูลนี ทีอ่ ยใู นรปู งา ยเปน (BD) ดังรปู ที่ 4.20 b 87
รปู ที่ 4.19 แสดงการลดความซับซอ นของนพิ จนบ ลู นี โดยเทอมท่เี ปน 1 ตดิ กันทางแนวนอน ทอ่ี ยทู างดานบนและดา นลา ง รปู ที่ 4.20 แสดงการลดความซบั ซอนของนิพจนบลู นี โดยเทอมท่เี ปน 1 ที่อยูท่มี มุ ทัง้ สขี่ องแมป็โจทยทดสอบ จงตอบคาํ ถามตอ ไปนี้ 21. จากสมการบูลีนตอ ไปน้ี (������������̅ ∙ ������������� ∙ ������������� ∙ ������������� ) + (������������̅ ∙ ������������� ∙ ������������� ∙ ������������� ) + (������������̅ ∙ ������������ ∙ ������������� ∙ �������������) + (������������ ∙ ������������ ∙ ������������� ∙ ������������) + (������������ ∙ ������������ ∙ ������������ ∙ ������������� ) + (������������ ∙ ������������ ∙ ������������ ∙ ������������� ) = ������������ จงทาํ ใหอ ยูในรปู งา ย โดยเขยี นเทอมท่เี ปน 1 ลงในแผนผังแบบสีต่ ัวแปร สรา งลูปของ 1 *แบบกลุมสองหรือกลมุ สี่ลดรูปตัวแปรตาง ๆ ที่อยูในลูปเขียนสมการบูลนี ทอี่ ยใู นรปู งาย 88
4.10 Karnaugh Maps แบบ 5 ตัวแปร โดยทัว่ ไปแลว การใชแผนผัง K-Map เพอื่ ยุบสมการทนี่ ิยมทํากัน จะเปน สมการท่ีมีตัวแปรต้ังแตตั้งแต 2 ถงึ 5 ตวั แปร หากมตี ัวแปรมากกวานีก้ ็สามารถทาํ ได แตคอ นขางลาํ บาก ตองใชโปรแกรมคอมพวิ เตอรเ ขา มาชว ย หรือใชว ิธีทางเลขคณิต เชน วธิ ี Tabulation Method หรือ Quine–McCluskey จะสะดวกกวา แผนผัง K-Map อีกหนงึ่ ท่ีจะพบในหัวขอ น้ีจะเปน แบบสามมิติ พจิ ารณาตารางความจรงิ ในรูปที่ 4.21 ซึง่ จะมีคาทางลอจิกทง้ั หมด 32 คา โดยเกิดจากตัวแปร 5 ตวั ขอ มูลในตารางความจรงิ สามารถเขยี นเปน สมการบูลีนได ดังรปู ท่ี 4.21(a) สําหรับแผนผงั สามารถเขียนไดด ังรูป 4.21(b) ซง่ึ เปนแผนภาพแบบสามมิติ โดยแตชัน้ จะแทนได 4 ตัวแปร และชั้นบนจะเปน ตัวแปร Eและชน้ั ลา งจะเปน E จะกลายเปนกลุม 8 สาํ หรบั คา ท่เี ปน 1 เทอมทอี่ ยโู ดยเด่ยี ว ไมสมารถยบุ หรือทาํใหอยูในรูปงา ยได เทอมนีค้ ือ E ,D ,C ,B ,A สาํ หรับลูปกลมุ 8 สามารถยบุ ได 3 ตัวแปรคือE, E ,C,C ,B B กับเทอม D A ในรูปที่ 4.21(b) รูปท่ี 4.21 การใชแผนผังคาโนหขนาด 5 ตวั แปร ในการลดความซ้ําซอนของสการบลู นีโจทยทดสอบ จงตอบคําถามตอ ไปน้ี23 จากสมการบูลนี ตอ ไปนี้ (������������ ∙ ������������� ∙ ������������� ∙ ������������� ∙ �������������) + (������������ ∙ ������������� ∙ ������������� ∙ ������������ ∙ �������������) + (������������ ∙ ������������� ∙ ������������� ∙ ������������� ∙ ������������) + (������������ ∙ ������������� ∙ ������������� ∙ ������������ ∙ ������������) + (������������̅ ∙ ������������ ∙ ������������ ∙ ������������ ∙ ������������) +(������������̅ ∙ ������������� ∙ ������������ ∙ ������������ ∙ ������������)+= ������������ จงทําใหอ ยใู นรปู งายโดยใชแ ผนผงั K-Map สาํ หรับ 5 ตัวแปรมาลดรปู ตวั แปรตา ง ๆ ในลูป แลวเขยี นสมการบลู ีน 89
4.11 การใชลอจกิ เกต NAND จากบทท่ี 3 ในหัวขอ ท่ี 3.8 เราไดทราบมาแลววาตวั NAND เกตนนั้ สามารถนาํ มาสรางเปนเกตชนดิ ตา งๆ ได ซ่งึ บางครงั้ เรยี กวา Universal gate ในหวั ขอ ทจ่ี ะกลา วการนาํ เกตมาสรา งเปนวงจรลอจิกตา ง ๆ พจิ ารณาสมการบูลีน (������������ ∙ ������������ + ������������ ∙ ������������̅ = ������������) ซึ่งเขยี นไดในรูปที่ 4.22 a ในการเขยี นวงจรลอจกิ ข้นัแรกใหเขียนวงจรลอจิกจากสมการบลู ีนตรง ๆ กอน จะไดดงั ในรูปที่ 4.22 b โดยใช And เกต Or เกตและอนิ เวอรเตอร จะเหน็ วา วงจรทส่ี รา งออกมา จะตองใชไดซีดิจติ อลถงึ สามชนดิ ในงานช้ินนี้ ตอ ไปจะนาํ NAND เกตมาใชใ นวงจรนี้ ซ่งึ จะกลายเปน วงจร Nand–Nand ลอจกิ ดงั รปู 4.21 c)จะทําใหง านช้นิ นี้ ใชไอซีทเี่ ปน Nand เกตเพยี งอยา งเดยี ว วงจรในรปู ท่ี 4.21c) สามารถใชแ ทนสมการบูลนี ได������������ ∙ ������������ + ������������ ∙ ������������̅ = ������������ ถา หากนาํ มาสรา งเปนวงจรอเิ ล็กทรอนกิ สจะทําไดส ะดวกกวา วงจรในรูป4.21b) ซง่ึ จะตองใชเ กตถึง 3 ชนิด รูปที่ 4.22 การใชแนนเกตในวงจรลอจกิ (a) สมการบลู ี (b) วงจรลอจกิ แบบ AND-OR (c) วงจรลอจกิ แบบที่ปรบั มา ใช NAND อยา งเดยี ว จากวงจรในรูป 4.22b) จะเห็นวาตัวอินเวอรเ ตอรจ ะแทนดว ย Nand เกตหน่งึ ตัว สาํ หรับ Andเกตทัง้ 2 ตวั จะใสเครอ่ื งหมายจุดอินเวอรเตอรเขาไปทางเอาตพุต ใสจุดอินเวอรเตอรเขาไปแลว จะตอ งใสทางอินพตุ ของ Or เกตดวย เพ่อื จะไดลบลางกันไป เมือ่ ใสจุดอนิ เวอรเ ตอรใ น And เกตแลว เกตตัวน้ีจะกลายเปน Nand เกต และเมือ่ ใสจุดอินเวอรเ ตอรเ ขาไปท่อี ินพุตท้งั สองของ Or เกตแลวแลวเกตตัวนี้ 90
จะกลายเปน Nand เกตเชนกัน ถึงตรงนจ้ี ะเห็นวา ถามี And เกต สองตัวมาตอ เปนอินพุตของ Or เกต เราสามารถเปลี่ยนเปน Nand เกต ไดโ ดยงา ยสรุป การใช NAND เกตมาสรา งเปนวงจรสามารถทําไดตามขั้นตอนตอไปนี้ 1. เรม่ิ ตน เขียน minterm (sum-of-product)ของ Boolean expression 2. เขียนวงจรลอจิกของ AND-OR ลอจกิ โดยใชเกต AND-OR และ NOT 3. นํา NAND เกตมาแทนในเทอมของ AND และ OR เกต 4. นาํ NAND เกตมาแทนอนิ เวอรเ ตอรท กุ ตวั 5. ทดสอบวงจรกบั ตารางความจรงิโจทยทดสอบ จงตอบคาํ ถามตอไปน้ี 24. วงจรในรปู 4.21 b)เรียกวา .........................(AND-OR,NAND-NAND)ลอจิก 25. วงจรในรปู 4.22 b)เรยี กวา .........................(different ,identical) กบั ตารางความจรงิ 26. จงเขยี นขั้นตอนตา งๆหา ข้ันตอนในการแปลงsum-of-productของสมการบูลนี มาเปน NAND-NANDลอจิก4.12 โปรแกรมจําลองสถานการณ Logic Converter ปจจบุ ันเมื่อเรารวู ิธีการบวกลบเลขในชวี ติ ประจําวันแลว เม่ือตอ งการความถกู ตอ งและรวดเร็วเราจึงใชเ คร่อื งคาํ นวณเลขมาชว ย การลดความซํา้ ซอนของสมการพีชคณติ บูลีนนัน้ เราสามารถทาํ ไดโดยทฤษฎตี างๆ หรือ Karnaugh Map แตในทางปฏิบัติ ปจจุบันน้มี โี ปรแกรมจําลองสถานการณ(Simulator) คือโปรแกรม Multisim ของ National Instrument เปนโปรแกรมที่สามารถนาํ มาใชจําลองสถานการณของวงจรอเิ ล็กทรอนกิ สต า งๆ ทัง้ แอนะลอ็ กและดิจติ อลไดอยา งมากมาย ในโปรกรม Multisim มเี ครอ่ื งมอื อยตู วั หนงึ่ คือ Logic Converter มคี วามสามรถในการแปลงพีชคณิตบูลนี ไปเปน ตารางความจรงิ จากตารางความจรงิ ไปเปนพชี คณติ บูลีน ลดความซา้ํ ซอ นได และแปลงตารางความจรงิ พีชคณิตบูลีน ไปเปน วงจรลอจกิ ได รปู ท่ี 4.23 Logic Converter ในโปรแกรม Multisim 91
รปู ที่ 4.24 Logic Converter Screen รปู ที่ 4.25 ขนั้ ตอนท่ี 1 วาดวงจรลอจิกรูปท่ี 4.26 ขั้นตอนที่ 2 และ 3 สรางตารางความจรงิ และพีชคณิตบูลนี ทย่ี ังไมลดความซํ้าซอ น 92
รปู ท่ี 4.27 ข้นั ตอนที่ 4 การใชคาํ สง่ั แปลงจากตารางความจริงไปเปนพีชคณติ บูลนี ท่ลี ดความซาํ้ ซอ น รูปที่ 4.28 ขัน้ ตอนที่ 5 การใชค ําส่งั สรางวงจรลอจิกท่ใี ช NAND เกต รูปที่ 4.29 ทดลองวงจร 93
จากตัวอยา งการใช Logic Converter ที่ผานมาน้ัน เราควรทดลองใหหมดทกุ คําส่ัง เพ่ือความเขาใจเฃน ทดลองกรอกพีชคณติ บูลนี เพ่ือสรางวงจรลอจกิ เปนตนแบบฝก หัดทา ยบท3.1 ใชกฏของ De Morgan's ในการหาสมการที่งา ยขึน้3.2 หาตารางความจริง ตามสมการตอไปนี้3.3 หาตารางความจริง ตามสมการตอไปนี้3.4 จงออกแบบสัญญาณกนั ขโมยโดยมี 4 อนิ พตุ อนิ พุต A เปนตัวควบคมุ สวิตซ อินพุต B เปนตัวตรวจจับวามแี รงกระทําทีป่ ระตตู เู ซฟ อินพตุ C เปน สญั ญาณใชพลังงานแบตเตอรี่ และ อินพตุ Dเปน การติดตอ กับสวติ ซบ นทางเขา ออกของทีเ่ ก็บขอมูล จงเขียนแบบสวติ ซเ พอื่ แสดงสญั ญาณสาํ หรบั กนัขโมยโดยทาํ ใหเกิดเสยี งรอง เม่ือมีการขโมยโยกยาย และควบคมุ สวติ ซใหปด หรือ เม่อื ในทเี่ กบ็ เปดภายหลังท่เี กบ็ ขอมูลหรอื เมื่อท่ีเกบ็ เปดการควบคมุ สวติ ซใหเ ปด3.5 จงใช Karnaugh-map ในการลดรปู ฟง กชันตอไปน้ี ƒ(A,B,C,D) = Σm(2,3,4,5,7,8,10,13,15)3.6 จงใช Karnaugh-map ในการลดรูปฟง กช นั ตอ ไปน้ี 94
Search
Read the Text Version
- 1 - 22
Pages: