Lecture 1 Introductionpersonal.sut.ac.th/paramate/files/digital/lecture05.pdf ·...

Post on 27-Jan-2020

1 views 0 download

transcript

Lecture 4 Review

Paramate Horkaew

School of Computer Engineering, Institute of EngineeringSuranaree University of Technology

Previous Lecture• Algebra of Real Numbers• Rules for Operations in Boolean Algebra

• Useful Boolean Theorems and Distributivity

• Duality and Negative Logic

• De Morgan’s Laws, Law of Consensus

• Shannon’s Expansion Theorem

• The Exclusive OR (XOR) in Boolean Algebra

• Sum-of-Products (NAND) and Product-of-Sum (NOR) Designs

• Optimizing Digital Designs– Spatial Optimization

– Temporal Optimization

Boolean AlgebraRules of Operations นิยามโดย George Boole ในป 1854 เพื่อใชในการแกสมการสําหรับตัวแปร ที่เปน จริง (1) หรือ เท็จ (0) และประกอบดวยตัวดําเนินการ (operations) คือ AND, OR และ INVERT ซึ่งมีสัจพจนดังนี้

{ }1,0∈+ BA { }1,0∈⋅BA

( ) ( ) CBACBA ++=++ ( ) ( ) CBACBA ⋅⋅=⋅⋅

ปด

จัดกลุม

ABBA +=+ ABBA ⋅=⋅ สลับที่

( ) CABACBA ⋅+⋅=+⋅ ( ) CABACBA +⋅+=⋅+ แจกแจง

11,1,00,0 =+=⋅=⋅=+ AAAAAA เอกลักษณ

01 =⋅=+ AAAAสะทอนกลับ

Dua

lity

Distributivityคือคุณสมบัติการแจกแจง นิยามโดย

( ) CABACBA ⋅+⋅=+⋅ ( ) CABACBA +⋅+=⋅+

ซึ่งนําไปสูทฤษฎียอยๆ คือ absorption/adsorption และ adjacency (ลาง)

( )( )

( ) ( ) YYXYX

YXYXXXYXX

=+⋅+

⋅=+⋅

=+⋅

YYXYX

YXYXXXYXX

=⋅+⋅

+=⋅+

=⋅+

ทฤษฎีเหลานี้มีบทบาทสําคัญในการลดรูปสมการ Boolean และจํานวน gate ที่ใชในวงจรดิจิตอล

Duality and Negative Logicสังเกตวาจากทฤษฎีพบวา

{ }1,0∈+ BA { }1,0∈⋅BA

( ) ( ) CBACBA ++=++ ( ) ( ) CBACBA ⋅⋅=⋅⋅

ABBA +=+ ABBA ⋅=⋅Dua

lity

01 =⋅=+ AAAA

สามารถสรางไดโดยเปลี่ยน AND เปน OR เปลี่ยนตัวแปรปกติ เปนตัวแปร complement และ เปลี่ยน 0 เปน 1 (และกลับกัน)

การทํา complement ในลักษณะนี้ ใชในดานการออกแบบเพื่อแปลงวงจรที่ active HI เปน active low (negative logic)

De Morgan’s Law

De Morgan’s Law นิยามไวเพื่อใหเราสามารถแปลงวงจรที่ใช NAND gate ไปเปนวงจรที่ใช NOR gate และชวยใหเราออกแบบโยกยาย ตัว inverter ได

LL

LL

++++=⋅⋅⋅⋅

⋅⋅⋅⋅=++++

DCBADCBA

DCBADCBA

ตัวอยางของ De Morgan สามารถอธิบายไดดวย ‘ครอบครัวหมี’ นั่นคือ ถาให ลูกหมี (B) พอหมี (P) และ แมหมี (M) แทนดวย สมการ B = P • M

MPMPB +=⋅=นิเสธของประโยค ครอบครัวหมี คือ

ลูกหมีจะไมเกิด ถาในครอบครัวนี้ พอหมีไมอยู หรือ แมหมีไมอยู

Law of Consensus

กฎความยินยอม เปนกฎที่นิยามสําหรับ สมการสามตัวแปร

( ) ( ) ( ) ( ) ( )CABACBCABACABACBCABA+⋅+=+⋅+⋅+

⋅+⋅=⋅+⋅+⋅

ในการลงมตินั้น หาก B และ C มติใหผาน (หรือไมผาน) ตรงกัน ก็ถือวามตินั้นไดรับการยินยอม (หรือคัดคาน) จากเสียงสวนใหญ

ถาหาก A บอกวาเห็นดวยกับคนใดคนหนึ่งเทานั้น B กับ C ก็ไมจําเปนตองมีความเห็นยินยอมพรอมกันก็ได เพราะมติจะผานแนนอน นอกเสียจากวาทั้ง B และ C คัดคาน

Shannon’s Expansion Theorem

ในทํานองเดียวกันกับ พีชคณิตจํานวนจริง การแยกตัวประกอบ ก็มีประโยชนสําหรับ Boolean Algebra เชนกัน โดยเฉพาะอยางยิ่งการแยกพจน ใหเปนกลุมๆ

กําหนดให X แทนฟงกชัน Boolean ใดๆ สําหรับตัวแปล X1 ถึง XN

( ) ( ) ( ) 132132321 ,,,,,0,,,,,1,,,,, XXXXFXXXXFXXXXF NNN ⋅+⋅= KKK

เมื่อใชทฤษฎี Duality โดยการสลับ AND กับ OR และ 0 กับ 1 จะได

( ) ( )[ ] ( )[ ]132132321 ,,,,,1,,,,,0,,,,, XXXXFXXXXFXXXXF NNN +⋅+= KKK

Examples( ) ( ) ZYXWZYXWF +⋅⊕=,,,กําหนดฟงกชัน Boolean

จงแยกตัวประกอบ X และ Y, เริ่มจาก X

( ) ( )[ ] ( )[ ][ ] [ ]ZYWXZYWX

ZYWXZYWXZYXWF+⋅⋅++⋅⋅=

+⋅⊕⋅++⋅⊕⋅= 01,,,

แยกตัวประกอบ Y

( ) [ ] [ ][ ] [ ][ ] [ ]

[ ] [ ]ZWYXZYXZWYXZYXZWYXZWYXZWYXZWYX

ZYWXZYWXZYXWF

+⋅⋅+⋅⋅++⋅⋅+⋅⋅=

+⋅⋅⋅++⋅⋅⋅

++⋅⋅⋅++⋅⋅⋅=

+⋅⋅++⋅⋅=

0101

,,,

ซึ่งถาแยกตัวประกอบ W ตอไปอีก เราจะไดผลลัพธสุดทายเปน canonical SOP

Sum-of-Products (NAND)

เราทราบวา คอลัมน output ใดๆ จากตารางคาความจริง สามารถสรางไดดวยอุปกรณ ซึ่งประกอบโดย SOP 2 ระดับ (level) นั่นคือ AND gate มาตอขนานกัน แลวนํา output (minterm) ของแตละตัวมาเขาที่ OR gate

กําหนดให Σ แทน OR และ Π แทน AND และ mi คือ minterm ที่ให output เปน 1 รูปแบบ SOP พื้นฐานสามารถเขียนไดเปน

∑=i

imOUT

ทํา complement สองครั้งแลวใช De Morgan’s Law จะไดวา

∏∑ ==i

ii

i mmOUT

โดยที่ INV (mi) แทนการทํา NAND ของ minterm literals และ INV (Π) ก็คือ NAND นั่นเอง ตารางคาความจริงใดๆ สามารถสรางไดดวย NAND gate

Product-of-Sums (NOR)

เลือก maxterm (INV ของ i/p มา OR กัน) จาก OUT = 0 แลวนํามา AND กัน

OUT เปนศูนยเมื่อตัวใดตัวหนึ่งเปนศูนย ซึ่งตรงกับ AND gate

( ) ( )LKJLKJOUT ++⋅++=

Product-of-Sums (NOR)

เราทราบวา คอลัมน output ใดๆ จากตารางคาความจริงยังสามารถสรางไดดวยอุปกรณ ซึ่งประกอบโดย POS 2 ระดับ (level) นั่นคือ OR gate มาตอขนานกัน แลวนํา output (maxterm) ของแตละตัวมาเขาที่ AND gate

กําหนดให Σ แทน OR และ Π แทน AND และ Mi คือ maxterm ที่ให output เปน 1 รูปแบบ SOP พื้นฐานสามารถเขียนไดเปน

ii

MOUT ∏=

ทํา complement สองครั้งแลวใช De Morgan’s Law จะไดวา

∑∏ ==i

ii

i MMOUT

โดยที่ INV (Mi) แทนการทํา NOR ของ maxterm literals และ INV (Σ) ก็คือ NOR นั่นเอง ถาตารางมีจํานวน 0 นอยกวา 1 ควรใช POS มิฉะนั้นใช SOP

Output Timingตารางคาความจริง และ สมการ Boolean ระบุเฉพาะวา output จะเปลี่ยนแปลงไป อยางไร เมื่อ input เปลี่ยน แตจะไมบอกวา output ที่เปลี่ยนนั้นจะเกิดขึ้น เมื่อใด

ถึงแมวา ดวยเทคโนโลยีปจจุบัน ความแตกตางดานเวลาจะอยูในระดับ nano วินาที (10-9) แตวา ถาหาก output สองตัวมีคา delay ไมเทากัน อาจทําใหเกิดภาวะ ที่ output หนึ่งเปลี่ยนกอน อีก output หนึ่ง ซึ่งเรียกวา transient glitch

เหมือนกับ ลอรถยนต ถาสองขางหมุนดวยความเร็วไมเทากัน แมเพียงเล็กนอย ก็อาจจะทําให เกิดแรงบิดที่ผิดปกติ และ เสียศูนยได ในวงจร Digital นั้น transient glitch จะมีผลกระทบตอการตรวจจับ ความเปลี่ยนแปลง ที่เวลาขณะใดๆ มีสองชนิดคือ

static-0 hazard คาดหวังให output มีคาคงที่ 0 แตปรากฏวามีคาเปน 1 ชั่วขณะstatic-1 hazard คาดหวังให output มีคาคงที่ 1 แตปรากฏวามีคาเปน 0 ชั่วขณะ

Transient Glitch

ตัวอยาง

ถากําหนดใหวงจร gate เปนดังรูป ถา delay ที่เกิดขึ้นแตละเกท มีคาเทากับ 12 nanosec. ถากําหนดใหที่สถานะปจจุบัน PQR = 111

• จงเขียนแผนผังเวลา เมื่อ Q เปลี่ยนคาจาก 1 เปน 0

• จงหาวิธีแกไข static-1 hazard ที่เกิดขึ้น

Glitch Correction

เนื่องจากผลลัพธที่ออกมาจาก X และ Y เปลี่ยนตาม Q ไมพรอมกัน ดังนั้นจึงตองหา gate (delay) มาเพิ่มที่ input OR gate เพื่อยืนสถานะรวมกับ Y ในระหวางที่ กําลังรอ X เปลี่ยน input ตาม Q ซึ่ง input Z ดังกลาวตองมี delay เทาๆ กับ Y

ใชกฎ Consensus ยอนหลัง

RPQRQPQRQPOUT

⋅+⋅+⋅=

⋅+⋅=

Course Outline

• Introduction to Digital System• Truth Table and Boolean Algebra• Methods for Minimizing Boolean Expression• Programmable Circuits• Sequential Flip-Flops• Synchronous Counters• Synchronous Finite State Machine• A/D and D/A Conversion• Asynchronous Sequential Circuit Design• Practical Digital Designs (Part I Arithmetic Operations)• Practical Digital Designs (Part II Microprocessor)• Practical Digital Designs (Part III Data Communication)

Lecture 5 Methods for Minimizing Boolean Expression

Paramate Horkaew

School of Computer Engineering, Institute of EngineeringSuranaree University of Technology

Lecture Outline• Simplification of Boolean Expressions using Boolean Algebra• Technical Terms in Boolean Algebra• Truth Table as 2D Maps

• Karnaugh Map: Definition and Properties– Labeling Inputs

– Applying Adjacency Theorem

– Sub-cubes and Prime Implicants

– The Wrap-Around

– Gathering Zeros

– Don’t Care in K-Map

– K-Map for more than 4 Inputs: The Hypercubes

• Quine-McCluskey Algorithms (Type I)– Minimum SOP (not multi-layer logic)

Simplification ExamplesLevel 1

( )( ) ( ) XXXX

XXXXXXXXXXXXXX

=⋅=+⋅+=⋅=⋅+++

=++=⋅+⋅+⋅

101...

001

Level 2 ( )

( )( )( )

( )sadsorption double

1

adsorption

11

SRQPSRQPQPQPSRQPQP

QPQPRRQPRQPRQP

SRQPSRSRQP

PPRQPPRQP

⋅+⋅=⋅+⋅+⋅=⋅+⋅⋅⋅+⋅

⋅=⋅⋅=+⋅⋅=⋅⋅+⋅⋅

⋅+⋅=⋅+⋅⋅⋅

=⋅=+⋅⋅=+⋅⋅

X

YX ⋅

Adsorption คือการเกาะตัวเปนคราบของสสาร ชนิดหนึ่ง (X) บนพื้นผิวของสสาร ที่อยูในสถานะของแข็งหรือของเหลว อีกชนิดหนึ่ง (Y)

Simplification ExamplesLevel 2 ( )

( )

( ) ( )( ) ( )

111

=+=+⋅+⋅+⋅+⋅

=+⋅+=

+⋅++⋅=⋅+⋅+⋅+⋅

+=⋅+=

⋅++⋅=⋅+⋅+⋅

=+⋅=⋅+⋅

ABCABCBABABABA

AABBBBABBABABABABA

BABAA

BABBABABABAA

BBABABA

Simplification Examples( ) ( )

( )LHSZYX

ZYYZXZYYXXZX

ZYYXXZXXRHSZXYXZYX

=⋅+=⋅+++⋅=

⋅+⋅+⋅+=⋅+⋅+⋅+⋅=

+⋅+=⋅+

1

Level 3 Proof

Axiom

( )( ) ( )

( )( ) ( )( ) ( ) RHSZXYX

ZXYX

ZXYX

ZYXZYX

ZYXLHS

=+⋅+=

+++=

⋅+⋅=

+⋅=⋅⋅=

⋅+=De Morgan’s

Simplification Examples( )( )

BDCADCBDADC

BDABADCBCDABCACD

⋅⋅+⋅⋅=

⋅+⋅⋅=

⋅+⋅+⋅⋅=⋅⋅+⋅⋅+⋅⋅Level 4

( ) ( ) ( ) ( ) ( ) ( )( )( ) ( ) ( )( ) ( ) ( )

( ) ( )( ) ( ) ( )( ) ( ) ( )( ) ( ) ( )( ) ( ) ( )( ) ( )

( ) ( ) ( )( )CEDBCACAB

BACEDBACCEDACABBC

CBCACEDCBCBACACEDCB

CBACEDCBACBACEDCAABBBA

CBACEDCBABABABACBACEDCBABABA

CCBACEDCBABABACEDCBABA

⋅⋅+⋅+⋅+⋅=⋅+⋅⋅++⋅=⋅⋅+⋅+⋅+⋅=⋅+⋅+⋅⋅+⋅=

⋅⋅+⋅+⋅⋅+⋅=

⋅⋅+⋅⋅+⋅+=

⋅⋅+⋅⋅+⋅+⋅++⋅=

⋅⋅+⋅⋅+⋅⋅+⋅+⋅+⋅=

⋅⋅+⋅⋅+⋅⋅+⋅+⋅=

+⋅+⋅⋅+⋅⋅+⋅=⋅+⋅⋅+⋅⋅+⋅

ลดตอไมไดเพราะวา เปนพจนที่ระบุวา output เปน 1 ก็ตอเมื่อ มี input อยางนอย 2 ตัวเปน 1 ซึ่งทุกตัวเปน PI ที่สําคัญ (หากตัดตัวใดตัวหนึ่งออก จะทําใหคาความจริงเปลี่ยนไป)

สวนพจนสุดทายเปนพจนอิสระ (PI)

Technical Terms in Boolean Algebra

Cover คือ พจนทุกพจนของ SOP ที่ทําให OUTPUT เปน 1 ในตารางคาความจริง หรือ อาจจะหมายถึง บางพจนที่ทําให OUTPUT เปน 1 ก็ได ซึ่งอาจเรียกวา sub-cubes หรือ on-set

Imply ถา A imply B แลว (ถา A เปนจริง แลว B เปนจริงดวย) เชน P•Q•R= 1 imply วา P•Q = 1

Implicants คือ พจนผลคูณ (Product Term) ในพจนของ SOP เชน P•Q เปนimplicant หนึ่งของ P•Q•R

Prime Implicant คือ Implicant ที่ไมสามารถตัด literal ออกไปได โดยไมทําใหคาความจริงเปลี่ยน

Implicants and Prime Implicants

cover

BACACBCBACBACBACBAOUT

⋅+⋅+⋅=⋅⋅+⋅⋅+⋅⋅+⋅⋅=ตัวอยาง

Implicants ไดแก B•C, A•C และ A•B

Prime Implicant เนื่องจาก Implicants ทั้งสามตัวไมสามารถตัด Literals ไดอีกโดยไมทําให คาความจริงเปลี่ยน ดังนั้นทั้งสามตัวเปน Prime Implicants

นอกจากนี้ไมสามารถตัด Implicant ตัวใดตัวหนึ่ง ออกโดยไมทําใหคาความจริงเปลี่ยน ดังนั้นทั้งสามตัวเปน Essential Prime Implicants

ผลรวมของ Essential Prime Implicants คือ SOP ที่ลดรูปแลว เรียก Implicant แตละตัววา Sufficient Condition และ Implicants ทั้งสามตัววา Necessary Condition

Adjacency Theorem

จากคุณสมบัติการแจกแจง (และ Duality)

( ) CABACBA ⋅+⋅=+⋅ ( ) CABACBA +⋅+=⋅+

นําไปสูทฤษฎี adjacency

YYXYX =⋅+⋅ ( ) ( ) YYXYX =+⋅+

ทฤษฎีเหลานี้มีบทบาทสําคัญในการลดรูปสมการ Boolean และจํานวน gate ที่ใชในวงจรดิจิตอล โดยใช K-map

Venn Diagram to Maps

Venn Diagram คือแผนภูมิ อธิบายความหมายของ AND, OR, NOT, XORสําหรับ set ที่ซอนทับกัน

ดานขวามือ คือแผนผังตรรกะ (Logic Diagram/Logical Map) ที่สมมูลกัน

Assigning Output Labels

จากตารางคาความจริงแบบ 2 input (A, B) และ 1 output (OBA) ดานซายจัดอยูในรูปแบบตารางขนาด 2x2 ดานขวา

คา output แตละกรณีจะบรรจุอยูในชองของ input ที่สัมพันธกันตัดกัน

A Logical Map Example

จากตารางคาความจริง เขียน OUT ในรูปของ SOP ของ input และ ลดรูปสมการโดยใช ทฤษฎีบท Boolean (adjacency) ได A ดังสมการดานซาย

จากตารางเห็นวา OUT เปน 1 ใน column ที่ A = 1

A 3-Input Exampleตัวอยาง กําหนดให Buzzer สงเสียงเตือนเมื่อ a) กุญแจอยูในสถานะ ON(Key = 1) แตวา ประตูเปด (Door=1) หรือ b) กุญแจ OFF แตปลอย Break (Break = 1) หรือ c) ประตูเปด และปลอย Break

จากตารางคาความจริง นํามาจัดเรียงใน Matrix ไดดังขวามือ

BKDKBDBKDKOUT ⋅+⋅=⋅+⋅+⋅=Law of Consensus

Visual Simplificationจากแผนผังตรรกะที่ได ใชทฤษฎีบท adjacency เพื่อลดรูปนิพจน

1) จัดกลุม output ที่เปน 1 (covers) ที่มีอินพุทรวมกัน (อยูติดกัน)2) กลุมที่จัดไดแตละกลุมคือ Prime Implicant

1) กลุม P คือ INV (K) • B2) กลุม Q คือ K • D

3) รวม Prime Implicants ดวย OR (ในรูป SOP)

( )( )

DKBKOUTDKBBDKQBKDDBKP

⋅+⋅=

⋅=+⋅⋅=

⋅=+⋅⋅=

Kanaugh Map (K-Map)Definitionคือแผนผัง ซึ่งแสดงเซทของ ตารางสี่เหลี่ยม ที่เชื่อมตอกัน โดยที่ตารางแตละชองแสดง minterm ของตารางคาความจริงที่พิจารณา

Propertiesแตละชองของตารางคือคา output ซึ่งเปนไปได 3 กรณี ไดแก 0, 1 หรือ X (Don’t Care) ขึ้นอยูกับ minterm ที่สัมพันธกัน

แตละชองจะมีคา input ที่แตกตางกับชองขางเคียง เพียงแค 1 ตัวแปร (หรือ 1Literal) เทานั้น ซึ่งทําไดโดยการกําหนดคา Input แตละชองจะนิยามตามรหัส Gray ซึ่งแตละรหัส ในอนุกรม จะแตกตางกับรหัสขางเคียงเพียง 1 บิต

ตารางตรงบริเวณขอบ หรือมุม จะพับทบ (Wrap Around) เพื่อใหแตละชอง มีชองขางเคียง 4 ชอง

Labeling in Kanaugh Map

ตัวอยาง การ Label K-Map แบบ 2 และ 3 inputs

จาก K-Map แบบ 4 inputs และวงกลมแสดง covers จงหา Prime Implicants

( )

( )

WYZXYZOUTWYZ

XXZYWZYXWZYXWXYZ

WWXYZZYXWZYXW

⋅⋅+⋅⋅=

⋅⋅=

+⋅⋅⋅=⋅⋅⋅+⋅⋅⋅

⋅⋅=+⋅⋅⋅=⋅⋅⋅+⋅⋅⋅

Compact SOPตัวอยาง การระบุ covers แบบติดกัน 4 ชอง (เปนรูปสี่เหลี่ยมจัตุรัส)

( ) ( ) ( ) ( )ZYXWZYXWZYXWZYXW ⋅⋅⋅+⋅⋅⋅+⋅⋅⋅+⋅⋅⋅

( ) ( ) ( )( )( ) XWZZXW

YYZYYZXWZYZYZYZYXW⋅=+⋅⋅=

+⋅++⋅⋅⋅=⋅+⋅+⋅+⋅⋅⋅

Maximum Sub-cubesตัวอยาง จาก K-Map และ Covers ดังรูป จงหา Prime Implicants

ZW ⋅Cover ดานบนลดรูปไดเปนXWZWOUT ⋅+⋅=

XW ⋅Cover ดานลางลดรูปไดเปน

สังเกต รูปทรงของ cover จะมีความกวางและยาวเปน 2N, N = 0, 1, 2, …

Plausible Sub-cube Shapesจากขอสังเกตขางตน กลุมของ output = 1 ที่ติดกัน (cover) มีรูปทรงไดดังตอไปนี้

รูปทรงดานซายมือทั้งหมด ป ร ะ ก อ บ ด ว ย canonical SOP ซึ่งมี minterm 4 พจน

แตละรูปแบบสามารถจัด covers ไดดังตอไปนี้

สังเกตวาจํานวน PI ที่ไดมีคานอยกวา 4

An Example (The L-Shape)Covers รูปตัว L ตองการ sub cubes เพียงแค 2 กลุม

กลุมตรงกลางเปนกลุมที่ซ้ําซอน นั่นคือเปน implicant ของกลุมอื่น (C • A)

K-Map รูปทรงนี้ใชสําหรับพิสูจน Consensus Law ได

BCABBCACAB ⋅+⋅=⋅+⋅+⋅

The Wrap-AroundWrap-Around คือ คุณสมบัติหนึ่งของ K-Map ที่ระบุวา minterm ที่ output เปน 1 ซึ่งอยูบริเวณขอบ สามารถนํามาจับกลุมรวมกันกับฝงตรงขามได ดังตัวอยาง

ตัวอยาง 1 ตัวอยาง 2

ACACACOUT

⊕=⋅+⋅=

ACOUT ⋅=

Gathering Zerosเราสามารถสราง POS จาก K-Map ไดโดยรวบรวม minterm ที่เปน 0

CACAOUTOUT

CAOUT

+=⋅==

⋅=CAOUT +=

Don’t Care in K-MapDon’t Care (DC) แทนดวย X ใน K-Map สามารถทําใหเปน 0 หรือ 1 ไดตามความเหมาะสม เพื่อใหสามารถจัดกลุมได ขนาดกวางที่สุด

จากตัวอยางหาก กําหนด X ใหเปน 1 และ 0 อยางเหมาะสมแลว OUT จะเปน SOP ขนาดเล็ก CDOUT +=

Quine-McCluskey Algorithm (I)

K-Map สําหรับกรณีที่จํานวน input มากกวา 4 ตัวจะตองใชตารางแบบ Hypercubes ซึ่งทําใหการลดรูปนิพจน Boolean ยุงยากมากขึ้น

ขั้นตอนวิธี Quine-McCluskey แกไขปญหาดังกลาว โดยเสนอวิธีลดรูปนิพจน Boolean ที่มีจํานวน input ไดมากถึง 18 ตัว (ขึ้นอยูกับขอจํากัดทางเทคโนโลยี)

Quine-McCluskey Algorithm พัฒนาขึ้นในป 1952 และ ปรับปรุงเมื่อป 1956 มีหลักการดังนี้

• แสดงตารางคาความจริงเฉพาะ minterm ที่ใหคา OUT = 1• เรียงลําดับ minterm ตามจํานวน literals ที่มีคาเปน 1• จับคู minterm ที่มี literals ตางกัน 1 ตําแหนง• รวม minterm แตละคูดวยกันโดยใชทฤษฎี adjacency• ทําซ้ํา สําหรับกลุมของ minterm ที่จับคูแลว

An Example of A 5-input Caseวิธีทํา

• สมมติให minterms ที่ทําให output เปน 1 แสดงได ดังตารางดานซาย

• โดยอาศัยหลักการ adjacency จัดกลุม minterms ที่ไดตามจํานวน literals ที่มีคาเปน 1 ดังตารางดานขวา

Applying Adjacency Theoremวิธีทํา (ตอ) จับคู minterms ที่มี literals ตางกันเพียง 1 ตําแหนง สําหรับแตละคู ผลลัพธที่ได จะเปน X (Don’t Care) ที่ตําแหนงที่ literal ตางกัน

Adjacency at the Next Levelวิธีทํา (ตอ) ทําซ้ําขั้นตอนเดิมสําหรับ Column ที่สอง หาก minterm ใดไมสามารถจับคูได แสดงวาเปน Prime Implicants (กรอบสี่เหลี่ยม)

OR

( )AEBCABCBCEOUT

+⋅⋅=

⋅⋅+⋅⋅= QM Algorithm จะหา minimum SOP

QM ไมสามารถหา multi-level logic ได

Another QM Exampleตัวอยางนี้แสดงกรณีที่ Prime Implicants ปรากฏใน column ตางๆ

( ) ( ) ( )BDEACDEABCDEOUT ⋅⋅+⋅⋅⋅+⋅⋅⋅⋅=

Conclusions• Simplification of Boolean Expressions using Boolean Algebra• Technical Terms in Boolean Algebra• Truth Table as 2D Maps

• Karnaugh Map: Definition and Properties– Labeling Inputs

– Applying Adjacency Theorem

– Sub-cubes and Prime Implicants

– The Wrap-Around

– Gathering Zeros

– Don’t Care in K-Map

– K-Map for more than 4 Inputs: The Hypercubes

• Quine-McCluskey Algorithms (Type I)– Minimum SOP (not multi-layer logic)

Midterm Exam (30%)31 มกราคม (8:00-10:00 AM) วิธีทํา + บรรยาย + เลือกตอบ (5 ขอใหญ)

• เลขฐานตางๆ 2, 8, 10, ... ใดๆ การแปลงระหวางฐาน (5 %)– การดําเนินการทางคณิตศาสตร

• Discrete System และ วงจร Switch (5 %)– ตารางคาความจริง

– ออกแบบวงจร Logic พื้นฐานโดยใช Switch

• พีชคณติ Boolean (9 %)– แกสมการ การจัด/ลดรูปนิพจนแบบ Boolean โดยใชทฤษฎีบท และพิสูจน

– การคํานวณ และวิเคราะห และแกไข Timing Glitch จาก วงจรที่กําหนดให

• การลดรูป วงจร หรือ สมการ ตรรกะโดยใช ตาราง (9 %)– K-Map และ QM-Algorithm

• วงจร Logic แบบโปรแกรมได (2 %)