Transcript (A+B) = A
บทที่ 5 ตรรกวิทยา และ วงจรตรรกะ เบื้องต้น • • • • • หลักวงจรเบือ้ งต้ น พีชคณิตบูลเี บือ้ งต้ น เกต และ ตารางค่ าความจริง การเขียน Function จาก Truth table การเขียนวงจรตรรกะ จาก Function 5-1 ตรรกวิทยา และ วงจรตรรกะเบือ้ งต้ น • การเขียน Function จากวงจรตรรกะ • การออกแบบวงจรตรรกะ • ตัวอย่ างวงจรตรรกะ 5-2 หลักวงจรเบือ้ งต้ น • Two-state Logic เป็ นตรรกะทีม่ คี ่ าตัวแปร 2 สภาวะ – logic 0 แทน switch เปิ ด – logic 1 แทน switch ปิ ด สัญญาณเข้า วงจรไฟฟ้ า สัญญาณออก 5-3 หลักวงจรเบือ้ งต้ น Positive logic • ค่ า 1 แทนด้ วยสั ญญาณไฟฟ้ าแรงดัน สู ง • ค่ า 0 แทนด้ วยสั ญญาณไฟฟ้าแรงดัน ตา่ Negative logic • ค่ า 1 แทนด้ วยสั ญญาณไฟฟ้าแรงดัน ตา่ • ค่ า 0 แทนด้ วยสั ญญาณไฟฟ้ าแรงดัน สู ง high volt 1 low 0 0 high 0 low 0 1 5-4 คานิยาม • • • • • • ตัวคงที่ (Switching Constant) ตัวแปร (Switching Variable) เครื่องหมายการกระทา (Operators : and, or, not) เทอมและนิพจน์ (Terms and Expression) ฟังก์ ชั่น (Function) ตารางค่ าความจริง (Truth Table) 5-5 พีชคณิตบูลนี เบือ้ งต้ น • การกระทาเบือ้ งต้ น • AND แทนด้ วย “.” • OR แทนด้ วย “+” • NOT แทนด้ วย “- ” เรียกวงจร NOT ว่ า Invert A A 1 0 0 1 วงจร AND A B วงจร OR A B 5-6 ตารางแสดง Operator,Gate,Function,Truth Table • Operator Gate Function Truth table A B AND F = A.B 0 In F 0 0 0 1 0 5-7 ตารางแสดง Operator,Gate,Function,Truth Table • Operator Gate Function Truth table A B OR F = A+B 0 In F 0 0 5-8 ตารางแสดง Operator,Gate,Function,Truth Table • Operator Gate Function Truth table NOT F=A A B F 0 - NAND F = A.B 0 0 Inp 1 1 5-9 ตารางแสดง Operator,Gate,Function,Truth Table • Operator Gate Function Truth table In A B NOR F = A+B 0 F 0 1 5-10 การเขียน Switching Function จาก Truth Table • มี 2 วิธี คือ – Positive logic – Negative Logic 5-11 Positive Logic และ Negative Logic • Positive Logic: วิธีนีน้ าเอาข้ อมูลเข้ าจากตารางความ จริงทีม่ ผี ลลัพธ์ มีค่าเป็ น 1 ทุกตัวมา OR กัน • Negative Logic: วิธีนีน้ าเอาข้ อมูลเข้ าจากตารางความ จริงทีม่ ผี ลลัพธ์ เป็ น 0 ทุกตัวมา OR กันแล้ วทาการ NOT ทั้งหมด 5-12 ตัวอย่ าง Positive Logic และ Negative Logic • Truth Table A B F 0 0 0 1 1 0 1 1 Positive Logic 1 0 0 1 F= AB+AB Negative Logic F=AB+AB 5-13 การลดทอนฟังก์ ชัน • มี 2 วิธี คือ – การใช้ ทฤษฎี หรือ สมมติฐานของพีชคณิตบูลนี – การใช้ Kanaugh Map หรือ K-map 5-14 กฎของพีชคณิตบูลนี • กฎการสลับที่ Commutative Law ค A+B = B+A ค A.B = B.A • กฎการกระจาย Distributive Law ค A.(B+C) = (A.B) + (A.C) ค A+(B.C) = (A+B) . (A+C) 5-15 กฎของพีชคณิตบูลนี • กฎการจัดกลุ่ม Association Law ค (A+B) +C = A+(B+C) ค (A.B).C = A.(B.C) • กฎการระบุ Identity Law ค A+A=A ค A.A =A 5-16 กฎของพีชคณิตบูลนี • กฎการนิเสธ Negative Law ค (A )=A ค A =A • กฎความซ้าซ้ อน Redundance Law ค A + AB = A ค A. (A+B) = A 5-17 กฎของพีชคณิตบูลนี • กฎการรวม/การตัดกัน Union and Intersection Law ค 0+A=A ค 1.A =A ค 1+A= 1 ค 0.A = 0 • กฎส่ วนเติมเต็ม Complementary Theorem ค A+A=1 ค A. A= 0 5-18 กฎของพีชคณิตบูลนี • กฎการดูดซึม Absorption Law ค A+A.B=A+B A . (A + B) = A . B • กฎดีมอแกน De Morgan’s Theorem ค A+B=A.B ค A.B = A+B ค A+B=A.B ค A.B = A+B ค A B + AB = AB + AB 5-19 การลดทอนฟังก์ ชัน • F = AB + AB A ( B + B) A.1 A F = AB + AB + AB B ( A +A) +AB B (1) + AB B + AB ( B + B) (B + A) 1 . (B + A) A+B 5-20 การลดทอนฟังก์ ชัน F = AB + ABC + AB (D+E) AB + AB (D+E) + ABC AB ( 1+ (D+E)) + ABC AB .1 + ABC AB + ABC AB (1 +C) AB 5-21 คุณลักษณะของ Karnaugh Map (K-Map) • K-map สาหรับตัวแปร n ตัว ต้ องมี 2n ช่ อง • รหัสประจาแถว แนวนอน/ตั้ง จัดแบบ Gray Code 00 01 11 10 • ช่ อง 2 ช่ องใดๆบนแผนผังทีอ่ ยู่ตดิ กัน มีรหัสไบนารี ต่ างกันเพียงบิทเดียวเท่ า นั้น เรียกว่ า “บิทข้ างเคียง” เช่ น 010 ข้ างเคียงกับ 011 5-22 คุณลักษณะของ Karnaugh Map (K-Map) • คุณสมบัติ “ม้ วนโดยรอบ” ของ K-map • 2 ช่ องทีอ่ ยู่ปลายสุ ดของแต่ ละข้ างในแต่ ละแถวของ K-map จะข้ างเคียงกัน ดังนั้นจึงเสมือนหนึ่ง K-map ม้ วนโดยรอบทั้ง บนลงล่ าง ซ้ ายไปขวา 5-23 การเขียน K-map • K-map ชนิด 2 A0 1 B 00 10 0 AB AB 01 11 1 AB AB ตัวแปร ชนิด 3 ตัวแปร AB B 00 01 11 0 000 010 110 ABC ABC ABC ABC 011 11 1 001 ABC ABC ABC ABC 5-24 การเขียน K-map AB CD 0 0 0 0 0000 ABCD 0 1 0001 ABCD 1 1 0011 ABCD 1 0 0010 ABCD 01 0100 ABCD ABCD 0101 ABCD ABCD 0111 ABCD ABCD 0110 ABCD ABCD ชนิด 4 ตัวแปร 11 1100 ABCD 1101 ABCD 1111 ABCD 1110 ABCD 10 100 100 101 1010 5-25 การแทนฟังก์ ชั่นลงบน K-map • เปลีย่ นมินเทอมทุกเทอมเป็ นรหัสไบนารี • แทนตัวเลขด้ วย 1 ลงในช่ องทีม่ รี หัสตรงกัน • F = ABCD +ABCD+ABCD+ABCD+ABCD AB CD 00 01 11 10 00 01 1 11 1 10 1 1 1 5-26 การรวมเทอมบน K-map • การยุบ 2 ช่ องเป็ น 1 เทอม • ช่ องทีม่ เี ลข 1 ทีอ่ ยู่ตดิ กัน 2 ช่ อง สามารถยุบรวมกัน โดยบิททีต่ ่ างกันไม่ ปรากฏในเทอมใหม่ • ถ้ ารหัสบิททีม่ คี ่ า 1 เทอมใหม่ อยู่ในรู ปปกติ(A) ถ้ า รหัสบิททีม่ คี ่ า 0 เทอมใหม่ อยู่ในรู ป Invert (A) 5-27 ภาพการยุบแบบ 2 เทอม • การยุบ 2 เทอมเป็ น 1 เทอม 0 1 00 01 11 1000 01 11 1 00 1 1 0 1 10 1 1 01 1 1 1 1 11 1 1 10 1 5-28 การยุบ 4 เทอม • การรวมรหัสบิททีเ่ ป็ นหนึ่ง 4 บิทติดกันเข้ าด้ วยกัน ทาให้ ตวั แปรหายไป 2 ตัวแปร AB CD 00 01 1 1 1 1 AB 11CD 10 00 1 1 AB 00 01 11 CD 10 01 11 1 1 1 1 1 1 5-29 การรวม 8 เทอม • การรวม 8 เทอมเป็ น 1 เทอมลดตัวแปรได้ 3 ตัว AB CD 00 00 1 01 1 11 10 01 1 1 11 1 1 AB 10 CD 100 101 11 10 00 01 11 1 1 11 1 1 1 1 1 1 10 5-30 การลดทอนฟังชันด้ วย K-map • F = AB +AB+AB+AB B 0 1 A 0 1 1 1 1 1 F=1 5-31 การลดทอนฟังก์ ชัน • F= ABC+ABC+ABC+ABC+ABC+ABC AB 00 C 0 1 1 11 10 ABC 1 1 1 1 1 ABC 01 F=A +B 5-32 การลดทอนฟังก์ ชัน • F= ABCD +ABCD +ABCD+ABCD +ABCD+ABCD +ABCD+ABCD AB CD 00 01 00 1 1 1 01 11 10 1 11 1 1 1 10 F = AB + BD + CD 1 5-33 การเขียนวงจรตรรกะจาก Switching Function • หลักการ – ถ้ ามีวงเล็บทาเทอมทีอ่ ยู่ในวงเล็บก่ อน – เทอมทีค่ ูณกันใช้ AND gate – เทอมทีบ่ วกกันใช้ OR gate – เทอมที่ Complement ใช้ NOT gate 5-34 การเขียนวงจรจากฟังก์ ชั่น • F = AB +AB A B A B B A AB AB + AB AB 5-35 การเขียนวงจรจากฟังก์ ชั่น • F = AB + CD A B C D AB AB + CD C CD 5-36 เขียนฟังก์ ชั่นจากวงจรตรรกะ • หลักการ เริ่มจาก gate ทีม่ ี input A 2 1 B 1. A+B 3. B(A+B) 4 3 2. A(A=B) 4. A(A+B) + B(A=B) 5-37 การเขียนฟังก์ ชั่นจากวงจร • ตัวอย่ าง 3 A 1 2 B 1. B 4. AB 5 6 4 2. A 3. AB 5. AB + AB 6. AB+AB 5-38 การออกแบบวงจรตรรกะ • ขั้นตอนการสร้ างวงจรตรรกะ – การออกแบบทางตรรกะวิทยาเพือ่ ให้ ได้ ฟังก์ ชันที่ เหมาะสม – การเขียนวงจรตรรกะให้ ทางานตามฟังก์ ชันที่ออกแบบ 5-39 การออกแบบทางตรรกวิทยา • สร้ างตารางค่ าความจริง • เขียนฟังก์ ชันจากตารางค่ าความจริง • ทาการลดทอนฟังก์ ชัน เพือ่ ให้ ได้ วงจรทีใ่ ช้ GATE น้ อยทีส่ ุ ด 5-40 ตัวอย่ างการออกแบบทางตรรกะ • วงจรการบวกเลขฐานสอง (Binary Adder) • HALF ADDER เป็ นวงจรบวกโดยไม่ คานึงถึงตัวทด จากหลักอืน่ A B HALF ADDER S C 5-41 HALF ADDER • สร้ างตารางค่ าความจริงโดยอาศัยหลักการบวก เลขฐานสอง - เขียนฟังก์ ชันแบบ Positive จากตาราง AB S 0 0 0 1 1 0 1 1 C 0 1 1 0 S= AB + AB C = AB - ลดทอนฟังก์ ชัน 0 -เขียนวงจร 0 0 1 5-42 วงจร HALF ADDER • วงจร A B A AB B A AB+AB AB A B C=AB 5-43 วงจรตรรกะของ Parity bit • วงจร Odd Parity (คี)่ สาหรับเลขฐานสอง 3 บิท a b c P TRUTH TABLE A B C 0 0 0 1 0 1 1 1 1 0 1 0 0 1 1 1 P 0 0 1 1 1 0 0 0 1 0 1 0 1 0 0 1 5-44 วงจรตรรกะ Odd Parity • เขียนฟังก์ ชันแบบ Positive Logic ABC +ABC +ABC+ABC - ลดทอนฟังก์ ชัน ab 01 c 00 0 1 1 1 1 11 1 10 P = ABC+ABC+ABC+ABC 5-45 วงจรตรรกะ Odd Parity A B C ABC ABC ABC+ABC+ABC +ABC ABC ABC 5-46 ตรรกะเปรียบเทียบเลข • วงจรเปรียบเทียบเลข 2 จานวนๆละ 1 บิท • ตารางความจริง เขียนฟังชันแบบ Positive X Y < > = 0 0 0 1 0 1 0 1 0 1 1 0 0 0 1 0 < F1 = XY >1F2 = XY =0F3 = XY+XY 0 1 5-47 วงจรเปรียบเทียบเลข • วงจรเปรียบเทียบเลข 2 จานวนๆละ 1 บิท X Y XY XY F3= XY + XY F2 = XY F1 = XY 5-48 FULL ADDER • เป็ นวงจรบวกทีค่ านึงถึงตัวทดจากหลักก่ อน An Bn Cn-1 Full adder Cn An Bn Cn-1 Sn H.A H.A Sn Cn 5-49 วงจรเข้ ารหัส (Encoder) • เป็ นวงจรการให้ รหัสกับข้ อมูลโดยรหัสทีไ่ ด้จะอยู่ใน รู ป Binary เช่ น Keyboard ซึ่งเป็ น standard input ของคอมพิวเตอร์ ตวั อักษรแต่ ละตัวเมือ่ ถูกกดจะส่ ง สั ญญาณเข้ าสู่ ระบบคอมพิวเตอร์ ผ่านวงจรเข้ ารหัสได้ 1 เป็ น รหัส 8 บิท 1 วงจร n m =< 2 2 M Encoder 2 n 5-50 ตัวอย่ าง วงจรเข้ ารหัสแทนเลขฐาน 10 0 1 2 3 4 5 6 7 8 9 Bit 3 2 1 5-51 วงจรถอดรหัส (Decoder) • เป็ นวงจรถอดรหัสหนึ่งเป็ นอีกรหัส เช่ น ถอดรหัสฐาน สองในเครื่องให้ เป็ นเลขฐาน 10 วงจรถอดรหัสจะส่ ง ผลลัพธ์ ออกมาเป็ น Active 0 หรือ Active 1นอกนั้น เป็ นสั ญญาณตรงข้ ามแต่ ละผลลัพธ์ จะ แทนข้ อมูลที่ แน่ นอนอย่ างหนึ่ง 5-52 วงจรถอดรหัสเลขฐานสอง 2 บิทเป็ น ฐาน 10 • • • • • รหัสฐานข้ อมูล 00 01 10 11 ความหมาย (ฐาน 10) 0 1 2 3 5-53 วงจรถอดรหัสแบบ Active 1 A B W X Y Z 5-54