Minimization of Two-Level Functions

Size: px
Start display at page:

Download "Minimization of Two-Level Functions"

Transcription

1 ¹±oŽ bž± «b ² ««¼ «±

2 Goals: Minimization of Two-Level Functions Minimize cover cardinality Minimize number of literals PLA implementation: Minimize number of rows Minimize number of transistors --> Minimize area and time Karnaugh map: manual minimization f=σm(0,2,3,6,7,8,9,10,13) ab cd f=b d +a c+ac d

3 Quine-McCluskey Method Minimization of Two-Level Functions Exact minimization (global minimum) Generate all prime implicants Start from 0-dimensional cubes (minterms( minterms) Find k-dimensional cubes from (k-1)-dimensional cubes (find cubes that are diffenrent in only one position) Find a minimum prime cover Minimum set of prime implicants covering all the minterms 1 s Minterms m 0 m 2 m 8 m 3 m 6 m 9 m 10 m 7 m ,2 0,8 2,3 2,6 2,10 8,9 8,10 3,7 6,7 9,13 1-Cubes 00x0 x x 0x10 x x * 10x0 0x11 011x 1x01* 0,2,8,10 2,3,6,7 2-Cubes x0x0 * 0x1x *

4 Minimization of Two-Level Functions * 0,2,8,10 essential * 2,3,6,7 8,9 * 9,13 f=m 0,2,8,10 +m 2,3,6,7 +m 9,13 =b d +a c+ac d

5 «µb ª± Minimization of Two-Level Functions x y sw uz vx vy b 0001x1 b x01111 c 00x111 d 10111x e 10x110 f x00110 covering proposition CP=(a+f)(a+c)(b+c)(e+f)(d+e)(b+d) m 6 m 7 m 15 m 38 m 46 m 47 =abe+abdf+acde+bcef+cdfcdf (exponential) select terms with fewest product terms (abe( abe, cdf) ---> then select the term with fewest literals

6 ª«b ª± Minimization of Two-Level Functions select a no yes select b select b no yes... select c... select c If worse, prune the branch

7 Complexity: Minimization of Two-Level Functions Number of minterms: ~ 2 n Number of prime implicants: ~ 3 n /n Very large table Covering problem is NP-complete --> Branch and bound technique Use heuristic minimization Find a minimal cover using iterative improvement. Example: MINI, PRESTO, ESPRESSO

8 MINI S.J.Hong, R.G. Cain, and D.L.Ostapco Ostapco,, "MINI: a heuristic approach for logic minimization," IBM J. of Res.. and Dev., Sep Three processes Expansion: Expand implicants and remove those that are covered Reduction: Reduce implicants to minimal size Reshape: Modify implicants

9 Expansion MINI Iterate on implicants Make implicants as large as possible Remove covered implicants Goal: Minimal prime cover w.r.t. single cube containment Most minimizers use this technique Algorithm: For each implicant { For each care literal { Replace literal by * If (implicant not valid) restore } Remove all implicants covered by expanded implicants }

10 MINI Example * Take Expand * 0 0 ok Expand * * 0 ok Expand * * * not ok Restore * * 0 Remove covered implicants * * Take Expand * 0 1 not ok Restore Expand 0 * 1 not ok Restore Expand 0 0 * ok Remove covered implicants * * *

11 Use heuristics to: MINI Order the implicants --> Place on top of the list those cubes that are hard to merge with other cubes encoding: 1-->01 0-->10 X-->11 null --> 00 C >inner product:1+3+2=6 C C C # of 1s: C4 higher priority hard to merge C3 expand these first C1 C2

12 MINI Order the literals (direction of expansion) --> Choose a permutation for which expansion covers as many cubes as possible If we expand this literal, C1 covers many other cubes --> Choose it C C covers Validity check: Check intersection of expanded implicant with X OFF

13 Reduce MINI Iterate on implicants Reduce implicant size while preserving cover cardinality Goal: Escape from local minima Alternate with expansion Algorithm: For each implicant { For each don't care literal { Replace literal by 1 or 0 If (implicant not valid) restore } } Heuristics: ordering Example: * * 0 can't be reduced 0 0 * can be reduced to 0 0 1

14 Reshape MINI Modify implicants while preserving cover cardinality. Goal: Escape from local minima. A, B : disjoint A and B are different in exactly two parts One different part of A covers the corresponding part of B A=π 1 π 2 π i π j π p B=π 1 π 2 µ i µ j π p π j covers µ j A =π 1 π 2 π i (π j µ j ) π p B =π 1 π 2 (π i µ i ) µ j π p A=1x1 A =111 B=001 B =X01

15 MINI Alternate with expansion and reduce. Example: 1x1 a b c x reshape 111 a b c x x expand a b c x x x01 11x

16 µ² µµ±b p p» ±» ± nb p pš ª Š ª nb p p n ƒpžp «± ««± «o ««««nb Ž± «b b b «««¼ «± ƒ ± «ª µb ± b Ž b» ª µ«µnb bbb ¹ bbb ¹ b ƒ ««µª µnbs{zvp µ µb b± b ± b «b µ

17 ³ b± b±² «± µ spb ± ² µ² µµ±b ± ² b ª b± oµ bj ± ² b± bš b bš k tpb º² º² b ªb«² «b«±b b² «b b ± b ± «² «µ upb µµ «b² «µ º b µµ «b² «µb b² b ª b«b ª b ± i b bµ vpb b ± ˆ«b b ««b«b ± wpb b ªb«² «b ±b b ««b µµ «b«² «xpb btnbvnb bwb «b ±b«² ± ypbž µ µ²»b nb º² nb b«b ± b µ«b b «µ» bµ µµ nb ± «b ª b««± zpb µ² µ b ª b µµ «b² «µb b«±b ª b ± b b b ª Žƒbµ b µbµ² µ b µb²±µµ«

18 «««± µ µ² µµ±b nbb bb nb b ˆˆ bboo b ± ²»bµ² ««b «± µ µb ± b «² b± ² µ bb s npppn n ms msnpppn m Ÿ ¹ª b «bbrnb«bº bº «bj«o ª ªb«² b «kb ²² µb ± ² bbbbbbbbbbbbbsnb«bsnb«bº«bº«b ² b ²² µb ± b ± ² ² µb ± b ± ² bbbbbbbbbbbbbtnb«bº«bº«b ± µb ± b ²² b ± µb ± b ²² bbbbbbbbbbbbbunb«b ª b ± µ²± «b² ± b b«µb ± bbbbbbb µ b ± b ª bj«o ko ª ªb± ² bbbbbbbbbbbbbvnb«b ª b ± µ²± «b² ± b b«µb µ bbbbbbbbbbbbbbbb ± b ª bj«o ko ª ªb± ² º ² sbbºtimºsºui tbbºtbmºsºui b ± bºtib«µb tbrbtbvbuÿ b ± bºsºuib«µb sbtbrbvbvÿ

19 ± ± µ² µµ±b ± ± b ± b b b ¹p p pb b ²b«µb «b µb b b b ² b¹«ª ± ²± µ bbbbbbbbbj ² k bb nbb«b b²bbr bbbbbbbbbbbbbbbbbbbtnbb«b² b² bbrb± bs bbbbbbbbbbbbbbbbbbbvnbb«b² b² bbu bbbbbbbbbbbbbbbbbbb nbb± ª ¹«µ oo b² s t bbbb ² j jjjb bk jjjb bk s k t k k ª b ± b «««± bµ «µ «µ b²b b b ² b b bmb² b bmb²

20 µ² µµ±b ± ± b ² b± b bµ b± b µb b¹«ªb µ² b ±b b²b«µb µ b± b µb ª b b ± ± µb± b ª b µb«b bbbbb ºkbbbbbbbbsbsbrbtbvbv bbbbbbbbbbbb bbrbsbtbrbvbv bbbbbbbbbbbbbbbbsbsbsbsbvbu bbbbbbbbbbbb²bbºvbb tbtbtbsbvbvÿ bbbbbbbbbbbboo b ºv bbsbsbrbtbvbv bbbbbbbbbbbbbbbbbbbbbsbsbsbtbvbu bbbbbbbbbbbb²bbºv bb tbtbtbrbvbvÿ bb tbtbtbrbvbvÿ bbbbbbbbbbbboo b ºv bbsbsbrbtbvbv bbbbbbbbbbbbbbbbbbbbbbrbsbtbtbvbv

21 ª ± b º² µ«± bbº b bº b º bmbº bº b b º bbbbbb ºkbbbbbbbsbsbrbtbvbv bbrbsbtbrbvbv bbbbsbsbsbsbvbu µ² µµ±b ºv bbsbsbrbtbvbv bbbbbbsbsbsbtbvbu ºv bbsbsbrbtbvbv bbbbbbrbsbtbtbvbv bbbbbbbbbbbbºvb ºv bmbºv b b ºv bbbbbbbbbbbbbsbsbrbsbvbvbbbbmbbbbsbsbrbrbvbv bbbbbbbbbbbbbbsbsbsbsbvbubbbbbbbbbrbsbtbrbvbv b

22 ± ± ± b«µ«µ² µµ±b b«µb ± ± ± b«µ«b«bº bº b«bº bº b brboo bsb µ µbb b brboo bsb µ µbb ª «b± ² µb± b b brboo bs ±b µbª bº bº ± ± ± b µ«b«µb ± ± ± b«µ«b«bº bº b«bº bº b brboo bsb µ µbb b brboo bsb µ µbb ª «b± ² µb± b b bsboo br ±b µbª bº bº m ± ± ± b«µ«b«b ± ± ± b µ«b«b b «± ƒb «± b«µb b bj ± ± ± kb«b«b«µ bj ± ± ± kb«b«b«µb b bj«µ«b± bj«µ«b± µ«kb«b b«µb «µ

23 ³ b± b±² «± µ spb ± ² µ² µµ±b ± ² b ª b± oµ bj ± ² b± bš b bš k tpb º² º² b ªb«² «b«±b b² «b b ± b ± «² «µ upb µµ «b² «µ º b µµ «b² «µb b² b ª b«b ª b ± i b bµ vpb b ± ˆ«b b ««b«b ± wpb b ªb«² «b ±b b ««b µµ «b«² «xpb btnbvnb bwb «b ±b«² ± ypbž µ µ²»b nb º² nb b«b ± b µ«b b «µ» bµ µµ nb ± «b ª b««± zpb µ² µ b ª b µµ «b² «µb b«±b ª b ± b b b ª Žƒbµ b µbµ² µ b µb²±µµ«

24 ± ² b ± ² «± µ² µµ±b ± ² «± b± b b b b ± bˆb b b º² µµ b µ b ± bˆb b b º² µµ b µ bbbbˆ b bbº bº bjˆº k bmbjˆº k bb«bˆb«µb ± ± ± b«µ«b«bº bº b b bbbbˆ b bbº bº bjˆº k bmbjˆº º k bb«bˆb«µb ± ± ± b µ«b«bº bº bb ±± bb bˆb«µb ± ± ± b«µ«b«bº bº nb ª ˆº º b bˆº oo bˆbbº bˆ bº bˆº bmbº bº bˆº b bbbbbbbbº bˆ bº bˆº bmbº bˆ bº bˆº º bmbº bº bˆ bbbbbbbbbbbbbbbbbbbbbbbbbbº bˆ bº bˆº bmbˆ bˆº º b bbbbbbbbº bˆ bº bˆº bmbˆ bˆº º ˆº bbbbbbbbbbbbbbbbbbbbbbbbbbjº º bmbˆº º kbˆº bbbbbˆ b bbº bº bjˆº k bmbjˆº k bˆº º

25 µ² µµ±b ª bˆb«µb ± ± ± b«µ«b«bº bº n ± ² «± b± bº bº bjˆº k b b bbbbb¾ˆº º ¾b~b¾ˆ¾bj µb¹«ªbtiµb«b o ª ªb²±µ««± k bbbbb b± b µµb «bjº º b«µb ± k ± ² «± b± bjˆº k b b bbbbb¾ˆº ¾bb¾ˆ¾ bbbbb b± b µµb «bjº º b«µb ± k µ«b ± ² «± bbbbbˆ bbºs bbºs jˆºs k mbjˆºs k bbbbbbbbbbºs jˆ jˆºs ºs k mbºt jˆºsºt ºsºt k mbjˆºsºt k bbbbbbbbbppp bºs jˆ jˆºs ºs k mbºt jˆºsºt ºsºt k mbpppbmbº jˆºsºt ºsºt º º k mbjˆºsºt k ºsºt º º bbbbbboo b b b «nb«snpppn nb b ª b±»b «µb «b ± btn ª bˆºsºt ºsºt º º b«µb ± ±»b b ª b ± ² b«µb ²»p j b«µb b b«bˆb b b «b«µb ª b«o ª ªb ± ²± b± b k

26 µ² µµ±b ª±«b± b «µ ª±±µ b «µb ± b ª b µ b b j¹«ªb º«b b± tiµkboo b «µb ª b µ«± b µ b ª b nb ª±±µ b «µ b ª b «b ª b ²² b ±µ b± «b ª b± ª b µb± bˆboo b µb µb»bt µb µb²±µµ«µb µb²±µµ«± ² «± bj ± o k ˆ bjº ˆº mº º ˆº º k bbbbbbjº ˆ º ˆº k jº º ˆº º k b bbbbjº º mjˆº k kjº º mjˆº º k k bbbbbbº bº jˆº º k mº º jˆº k mjˆº k jˆº º k bbbbbbº bº jˆº º k mº º jˆº k bbbbbbj¹ª bº bº rnbº bº jˆº º k mº º jˆº k bjˆº º k bjˆº k jˆº º k ¹ª bº bº snbº bº jˆº º k mº º jˆº k bjˆº k bjˆº k jˆº º k k

27 µ² µµ±b If c F, c F=0 --> c (cfc cf c + c F c )=0 --> c F c =0 F=cF c + c F c = cf c --> F =cf =c +( +(F c ) x1 x2 x3 x4 x F = > c=[ ]=x2 --> F =x2f =x2 +(F x2 ) simpler than F x1 x2 x3 x4 x x2 = F x2

28 µ² µµ±b Procedure COMP1(F) /* Given a cover F of ff = { f, d, r}, r a single output logic function. /* returns R, a cover of the offset r. /* n is the number of input variables. Begin if (row of all 2's) Return (R<-- ) if (F is unate) ) Return (R<--UNATE COMPLEMENT(F)) c<--f 1 /* Initialize with first cube for (j=1,,, n) /* Extract cube c Begin /* representing columns for (i,= 2,..., F ) /* of all 0's or all 1's If (c( j F i j) ) then c j <-- 2 End R<--UNATE COMPLEMENT({c}) /* Complement cube c F<--F c j<--binate SELECT(.F) /* Select the most /* binate variable. R<--R MERGE_WITH_CONTAINMENT(COMP1(F xj ), COMP1(F xj )) /* Complement cofactors /* and merge. Append /* to partial result R Return End

29 ƒ Ž jˆk µ² µµ±b b º bj² r j km² s j kk ¹ª b² r j kb«µbeb± b µb¹«ªbr µb«b o µb«b o ª ªb«² b²±µ««± b² s j kb«µbeb± b µb¹«ªbs µb«b o µb«b o ª ªb«² b²±µ««± Š ƒ (COMP1( (COMP1(F xj ), COMP1(F xj = xj(f xj ) +xj (F xj ) )) xj )) x1 x2 x3 x4 x x2 = F x2 (F x2 most binate p 0 (3)=2, p 1 (3)=2 x2 ) = x3(f x2x3 ) +x3 (F (F x2x3 ) x1 x2 x3 x4 x5 x2x3 = F x2x3 x1 x2 x3 x4 x5 x2x3 = F x2x3

30 ³ b± b±² «± µ spb ± ² µ² µµ±b ± ² b ª b± oµ bj ± ² b± bš b bš k tpb º² º² b ªb«² «b«±b b² «b b ± b ± «² «µ upb µµ «b² «µ º b µµ «b² «µb b² b ª b«b ª b ± i b bµ vpb b ± ˆ«b b ««b«b ± wpb b ªb«² «b ±b b ««b µµ «b«² «xpb btnbvnb bwb «b ±b«² ± ypbž µ µ²»b nb º² nb b«b ± b µ«b b «µ» bµ µµ nb ± «b ª b««± zpb µ² µ b ª b µµ «b² «µb b«±b ª b ± b b b ª Žƒbµ b µbµ² µ b µb²±µµ«

31 º² µ² µµ±b «b µb«b ª b ± ƒ b µb«b ª b± b± b µ«bµ«¼ p oo b Ž b µb b ± b b ±b ± b± ª b µb b µµ b ±b b ± b»b± ª b µp b ª b b ± ² µb«b² ± µp «b ± µb«b b bj k spb b b bj kb«b ª b± oµ bª µb±»b± b ± bj kb ª µ «µ «µb ª b ± ±¹«b ± ««± n bbbbbbbbj sb b b rkb± bj rb b b sk ± b b ± b b º² p ºkb rstnbb sss oo b ± bsb± b b ± b b º² p b² ± bµ«¼ b»b «««b ª b º b ± nb nb µb ª b ± b b ± p

32 µ² µµ±b tpb b ± µb ª b b b º² b ±b ± b µb»b µb«ª b± oµ b µb²±µµ«p b ª b b ±b ± b ± b µnbµ b b ± b¹«ª º«b ± «µb ¹ b b b± ª b µb«b ª b± oµ p ª b ± µ²± «b ± µb b ± b µb b ««p µb b ««p upb b b µb«b ª b± oµ bª b ±b ± «b± b ± b n µ b ª b ± b ± b º² µ«± pb ª b ± µ²± «b ± b ± b µb b ««p vp ² bµ ²bsnbtnb bub «jskb b ± µ b ««oo b ± jtkb b µb«b ª b± oµ b b ««oo bµ b b ««b ± µb ± b º² µ«± jukb b µb«b ª b± oµ b b ± oo bµ b ± b º² µ«± b µb»b ± µb µb²±µµ«nb ± bbbb beb± b «µ oo b «b ª b ««b ± b ± b± b ª b ± «b «º oo b ob ± ² oo b µ bª «µ «µ

33 µ² µµ±b ± «b «º ± oµ bb srsrs ± oµ b ssslrr tsrsss urssrs vssrrr r r r r when c j ri j c is not expanded for these columns --> {c} R=

34 ³ b± b±² «± µ spb ± ² µ² µµ±b ± ² b ª b± oµ bj ± ² b± bš b bš k tpb º² º² b ªb«² «b«±b b² «b b ± b ± «² «µ upb µµ «b² «µ º b µµ «b² «µb b² b ª b«b ª b ± i b bµ vpb b ± ˆ«b b ««b«b ± wpb b ªb«² «b ±b b ««b µµ «b«² «xpb btnbvnb bwb «b ±b«² ± ypbž µ µ²»b nb º² nb b«b ± b µ«b b «µ» bµ µµ nb ± «b ª b««± zpb µ² µ b ª b µµ «b² «µb b«±b ª b ± b b b ª Žƒbµ b µbµ² µ b µb²±µµ«

35 µµ «b² «µ µ² µµ±b ± µ µ µb µ µ µb± b ¹±b µb b b b«µb b bµ ªb ª b j nb kbbrnb bb b b n b n «b j nb kbbsnb b «bb b ««nb«b b ««b brnbrn bbbbtbbnb± ª ¹«µ n «b j nb kb btnbb bb btnbb bb d=121 e=102 c=200

36 µ² µµ±b ˆ± b b² «b²nb«b«b ª b ± µ µ µb± bjj± oµ b b oµ ko½² kb oµ ko½² k ¹«ªb²b ± ²»b ± µb²nb²b«µb ± b µµ «p p p essential not essential ª»b b ± µ µ µ p ((on-set dc-set)-{p}) does not cover p even though p is not essential

37 µ² µµ±b ƒbµ b± b µb b ± µb b b²b«b b«b ² bj ± ± b± b b¹p p p ²kb«µb b ± ±»p ±± b ²²±µ b b ± µb² oo b b²bb² ex) bbbbb ²²±µ b 021 C = 102 oo bj b²k ² ² ² s bbbbj b²k ² ² b² ² ²b s jsk jtk s ² ± bjskjtknb b sbj ± ±»k b ² s oo b b²bbj²b ²b mb²ib b ²i kb² b²b b ² b²b oo b b ± µb² p = 201 j µ b ² sb»b µµ ² «± k C p 022 = 122 = 222

38 ± ±»b ± ² «± µ² µµ±b b«b ª b«µb b ±¹b± btiµb«b ª b ± p ˆ µ b«b ª b ± bª µb b ± b± b bsiµb± b briµp ˆ µ b «b ª b µ b ± b b± b «µ b «µb ± «b«b ªb b ± «b«b ªb jt ± tiµ kb± b ª b ± b«µb µµb ª bt p b ± b ± b ª b ± nb µb ± ² b ± ±»b ± b ª ± ± µp b«µb b ± ±»b«b b«b º b b b º i b b ± ± «µp ±± ~b b b º bb b º i bbsn bbb bbº bº º bmbº bº i º i i bbº bº bmbº bº ibbsp bb b ²²±µ b bbsb b b º b bspb ª bspb ª b º bbrb ± bµ± b«² bbbbb ± ««± p bbbbb µ b b º b«µb«² b± bº bº nb¹ b bµ bº bº bbsb¹«ª± bbbbb «b ª b b b º bbrp bbboo b bbº bº º bmbº bº i º i i bbr bbboo b b«µb ± b b ± ±» bbboo b ± ««±

39 ³ b± b±² «± µ spb ± ² µ² µµ±b ± ² b ª b± oµ bj ± ² b± bš b bš k tpb º² º² b ªb«² «b«±b b² «b b ± b ± «² «µ upb µµ «b² «µ º b µµ «b² «µb b² b ª b«b ª b ± i b bµ vpb b ± ˆ«b b ««b«b ± wpb b ªb«² «b ±b b ««b µµ «b«² «xpb btnbvnb bwb «b ±b«² ± ypbž µ µ²»b nb º² nb b«b ± b µ«b b «µ» bµ µµ nb ± «b ª b««± zpb µ² µ b ª b µµ «b² «µb b«±b ª b ± b b b ª Žƒbµ b µbµ² µ b µb²±µµ«

40 b ± µ² µµ±b ««± b ª b² «b ± b«±b ¹±bµ µ µ b b± b b µµ «b µ µ b b± b b µp ˆ± b b b b«b ª b ± bj± oµ knb«bjj± oµ b b oµ kbo b oµ kbo ½ k b«µb b ± ±»nb ª b«µnb«bjj± oµ b b oµ kbob½ k b oµ kbob½ k ± µb nb ª b b«µb b b bj b b knb µ b b«µb b knb µ b b«µb b µµ «b bj b b kp b kp ƒb b b b«µb² b b«bj oµ b «µb² b b«bj oµ b b k «µb ± b b ± ±»p ««b µb«b b b ±»b p ±»b b µb b ± p ˆ ± b ª bµ b b ² b± b² b b µnb º b ««bµ b b bµ ªb ª b b b b b«µbµ «b b ± p oo b ««b ± b ±

41 µ² µµ±b d d c c b p b p a a, d : relatively essential b, c : partially redundant a a, c : relatively essential b : totally redundant

42 ³ b± b±² «± µ spb ± ² µ² µµ±b ± ² b ª b± oµ bj ± ² b± bš b bš k tpb º² º² b ªb«² «b«±b b² «b b ± b ± «² «µ upb µµ «b² «µ º b µµ «b² «µb b² b ª b«b ª b ± i b bµ vpb b ± ˆ«b b ««b«b ± wpb b ªb«² «b ±b b ««b µµ «b«² «xpb btnbvnb bwb «b ±b«² ± ypbž µ µ²»b nb º² nb b«b ± b µ«b b «µ» bµ µµ nb ± «b ª b««± zpb µ² µ b ª b µµ «b² «µb b«±b ª b ± b b b ª Žƒbµ b µbµ² µ b µb²±µµ«

43 «± µ² µµ±b «b µb ± b «± b ª b µ b pb b ª b ««b µb ««µ«b²µ ±o «µ bj b± b «µ ª µkp ºkb² jrstsuvnbrtssvvkbbu oo Ž µ b µb b b b ±µ b µp Ž b º² µ«± b ±b ± b«µb «ª ± µp

44 µ² µµ±b ˆ± b b b b «b ª b ± nb ± ² b ª b µ µ b b µ ± ««bjj± oµ bob½ kb b oµ k b oµ k bb bjˆj kk on-{c} {c} dc µbb j bjˆj kk k µb b boo b boo bµ bµ b brboo bµbb bµ bµ m bµ bµ µbb bµ bµ b bj j bjˆj kk kk

45 µ² µµ±b j kbª µb±»b ª b «µb ª b b ± ± b ±b b µb«b p j ºkb j bmb b kbb ƒ bª µb±»b ª b «µb ª b b ± b«b b b«b ± ² ± j ºkbj bmb b bmb b k bb bmb b µb«b bƒ bª b «µb«b j ºkb bj bmb bj bmb kbb b bmb b j bƒ kbª µb b ª b «µb«b b b «µb ± ± b ±b µb«bƒ oo b j bƒ kbb b jƒ k bbbbbbbbjsk j ºkb j bmb b kbb kbb bbbbb b j bmb b j bmb kbb kbb bƒb b nbƒ b nbƒ bbr oo bj jƒkk bj j ƒ m ƒ kk bj j ƒ kk bj b jƒ kk bboob»bjsk b bj jƒ kk bj jƒ kk b jƒ k boobƒ b ± µb ± bª b «µb«b bbjtk

46 µ² µµ±b µbb bj j bjˆj kk bj j bjˆj kk kk b b jj bjˆj kk k kboob»bjtkb b bjˆj kk b b b b b j bjjˆj kk kk k k b b jjˆj jˆj k k k b b jˆj k k j kbb jº j º kbmbº bº j º oo b µ«b ± ² «± kk º kk j kbb jº º bmbº bº º k bbbbb b j jº º kbmb jº º k bbbbbbº bº j º kbmbº bº b j º kboob»bjsk oo b j j kkb b j b jº j º kbmbº bº b j º kk bbº bº º bmbº bº º bº j º kbmbº bº b j º k oo b j kb b j b jº j º kbmbº bº b j º kk ˆ ± bjukb bjvkn j kbb bjº j º kbmbº bº b j º kk j kbb j k b jº j º kbmbº bº b j º kk b jº j º kbmbº bº b j º kkbboob b º bj º bbbbbbbbjuk bbbbbbbbjvk º k

47 ³ b± b±² «± µ spb ± ² µ² µµ±b ± ² b ª b± oµ bj ± ² b± bš b bš k tpb º² º² b ªb«² «b«±b b² «b b ± b ± «² «µ upb µµ «b² «µ º b µµ «b² «µb b² b ª b«b ª b ± i b bµ vpb b ± ˆ«b b ««b«b ± wpb b ªb«² «b ±b b ««b µµ «b«² «xpb btnbvnb bwb «b ±b«² ± ypbž µ µ²»b nb º² nb b«b ± b µ«b b «µ» bµ µµ nb ± «b ª b««± zpb µ² µ b ª b µµ «b² «µb b«±b ª b ± b b b ª Žƒbµ b µbµ² µ b µb²±µµ«

48 Ž µ µ² µ² µµ±b b µb«²»p oo b± b«² p ª b µ b ± b b µb ½ snb tnb pppb ² b ² b «µb ± µµ b b ± p º² b ª b b µb ±b b bµ b± b ¹b² «µp b ƒ b¹«ªbˆb bšnb¹ª bˆb«µb ª bµ b± b± bšnb¹ª bˆb«µb ª bµ b± b± ² «µb bšb«µb ª bµ b± b ¹b² «µp

49 ³ b± b±² «± µ spb ± ² µ² µµ±b ± ² b ª b± oµ bj ± ² b± bš b bš k tpb º² º² b ªb«² «b«±b b² «b b ± b ± «² «µ upb µµ «b² «µ º b µµ «b² «µb b² b ª b«b ª b ± i b bµ vpb b ± ˆ«b b ««b«b ± wpb b ªb«² «b ±b b ««b µµ «b«² «xpb btnbvnb bwb «b ±b«² ± ypbž µ µ²»b nb º² nb b«b ± b µ«b b «µ» bµ µµ nb ± «b ª b««± zpb µ² µ b ª b µµ «b² «µb b«±b ª b ± b b b ª Žƒbµ b µbµ² µ b µb²±µµ«

50 µ² µ µ² µµ±b b b± b «µb«b ªb p oo b b Žƒb «ºb µbµ² µ b µb²±µµ«p oo b ª b «b ±b b ± b b«² ± b «bbb² ±² «µp b ± b ± b «² b ± ² b b ª b µb ± bµ«b± ² p j ºk rstuvv rssvvu rsrvuu bbboo bt b b«µb b ± bt b± ² p Ž±¹ b± ² b² b± ² b² bµ² µ ± ² b«b ± b ± bµ«b± ² j ºk rstuvv rssvvuboo brssvuu rsrvuu

51 «µ b«² b² µ² µµ±b b«² b² bµ² µ ˆ± b ªb b ª bª µb b ª nb² ± b º² b±² «± ± b«² b² p j ºk bboo rstuvv rssvuu rsrvuu rstuvv rstvuu

Two-Level Logic Optimization ( Introduction to Computer-Aided Design) School of EECS Seoul National University

Two-Level Logic Optimization ( Introduction to Computer-Aided Design) School of EECS Seoul National University Two-Level Logic Optimization (4541.554 Introduction to Computer-Aided Design) School of EECS Seoul National University Minimization of Two-Level Functions Goals: Minimize cover cardinality Minimize number

More information

Symbolic Programming. Symbolic Programming. Symbolic Programs for Playing Chess. AI in Practice: Playing Chess. Artificial Intelligence Chapter 2

Symbolic Programming. Symbolic Programming. Symbolic Programs for Playing Chess. AI in Practice: Playing Chess. Artificial Intelligence Chapter 2 Symbolic Programming Symbolic Programming Artificial Intelligence Chapter 2 z Create symbols and symbolic expressions: ˆ NB Ž SNB Ž NBJŠ Š Bˆ KN BBBJ B Ž SB Ž K z Pass them around as arguments to procedures.

More information

Giovanni De Micheli. Integrated Systems Centre EPF Lausanne

Giovanni De Micheli. Integrated Systems Centre EPF Lausanne Two-level Logic Synthesis and Optimization Giovanni De Micheli Integrated Systems Centre EPF Lausanne This presentation can be used for non-commercial purposes as long as this note and the copyright footers

More information

Advanced Digital Logic Design EECS 303

Advanced Digital Logic Design EECS 303 Advanced Digital Logic Design EECS 303 http://ziyang.eecs.northwestern.edu/eecs303/ Teacher: Robert Dick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 Outline 1. 2. 2 Robert Dick

More information

Synthesis 1. 1 Figures in this chapter taken from S. H. Gerez, Algorithms for VLSI Design Automation, Wiley, Typeset by FoilTEX 1

Synthesis 1. 1 Figures in this chapter taken from S. H. Gerez, Algorithms for VLSI Design Automation, Wiley, Typeset by FoilTEX 1 Synthesis 1 1 Figures in this chapter taken from S. H. Gerez, Algorithms for VLSI Design Automation, Wiley, 1998. Typeset by FoilTEX 1 Introduction Logic synthesis is automatic generation of circuitry

More information

Synthesis of 2-level Logic Heuristic Method. Two Approaches

Synthesis of 2-level Logic Heuristic Method. Two Approaches Synthesis of 2-level Logic Heuristic Method Lecture 8 Exact Two Approaches Find all primes Find a complete sum Find a minimum cover (covering problem) Heuristic Take an initial cover of cubes Repeat Expand

More information

VLSI System Design Part II : Logic Synthesis (1) Oct Feb.2007

VLSI System Design Part II : Logic Synthesis (1) Oct Feb.2007 VLSI System Design Part II : Logic Synthesis (1) Oct.2006 - Feb.2007 Lecturer : Tsuyoshi Isshiki Dept. Communications and Integrated Systems, Tokyo Institute of Technology isshiki@vlsi.ss.titech.ac.jp

More information

Unit 4: Formal Verification

Unit 4: Formal Verification Course contents Unit 4: Formal Verification Logic synthesis basics Binary-decision diagram (BDD) Verification Logic optimization Technology mapping Readings Chapter 11 Unit 4 1 Logic Synthesis & Verification

More information

Logic Synthesis and Verification

Logic Synthesis and Verification Logic Synthesis and Verification Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 2012 1 SOPs and Incompletely Specified Functions Reading: Logic Synthesis

More information

ICS 252 Introduction to Computer Design

ICS 252 Introduction to Computer Design ICS 252 Introduction to Computer Design Logic Optimization Eli Bozorgzadeh Computer Science Department-UCI Hardware compilation flow HDL RTL Synthesis netlist Logic synthesis library netlist Physical design

More information

IvOWELL JOURNAL. FOR A BIG CONGRESS.

IvOWELL JOURNAL. FOR A BIG CONGRESS. x 2 2 B X 2 2 Y- B Z x K- - * \ F 2 K» j x 3 zz K - Y K Kx K - ««B* j «K 2 x K! 3 - : 5 j F) % x B F * ( - K 23 x x % F B F * ( K x Y 3 F B j x X j * ; j - zz / - j - ; K: ;? - : - Y : ; j ; -: : - * :

More information

Binary recursion. Unate functions. If a cover C(f) is unate in xj, x, then f is unate in xj. x

Binary recursion. Unate functions. If a cover C(f) is unate in xj, x, then f is unate in xj. x Binary recursion Unate unctions! Theorem I a cover C() is unate in,, then is unate in.! Theorem I is unate in,, then every prime implicant o is unate in. Why are unate unctions so special?! Special Boolean

More information

Thursday, May 11, Funds and what they may do i o r you. Phone or write today.. DONALD A. BURLESON, Representative

Thursday, May 11, Funds and what they may do i o r you. Phone or write today.. DONALD A. BURLESON, Representative 96 6 b b K k b b b b k k b b b b b Q K k k k b 3 $6 b K $ b k 6 9 9 3 3 389 3977 b k k z! k b 7 b b " " :? q q b bb j k b 96 5 3 8 ; "! ( 496) 3879 " j b b j k bb b " " k k b b b 9 6 9 6 5 : k k b b b

More information

1/28/2013. Synthesis. The Y-diagram Revisited. Structural Behavioral. More abstract designs Physical. CAD for VLSI 2

1/28/2013. Synthesis. The Y-diagram Revisited. Structural Behavioral. More abstract designs Physical. CAD for VLSI 2 Synthesis The Y-diagram Revisited Structural Behavioral More abstract designs Physical CAD for VLSI 2 1 Structural Synthesis Behavioral Physical CAD for VLSI 3 Structural Processor Memory Bus Behavioral

More information

ESOP CIRCUIT MINIMIZATION BASED ON THE FUNCTION ON-SET. Likai Chai

ESOP CIRCUIT MINIMIZATION BASED ON THE FUNCTION ON-SET. Likai Chai ESOP CIRCUIT MINIMIZATION BASED ON THE FUNCTION ON-SET By Likai Chai A Thesis Submitted to the Faculty of Mississippi State University in Partial Fulfillment of the Requirements for the Degree of Master

More information

Introduction. The Quine-McCluskey Method Handout 5 January 24, CSEE E6861y Prof. Steven Nowick

Introduction. The Quine-McCluskey Method Handout 5 January 24, CSEE E6861y Prof. Steven Nowick CSEE E6861y Prof. Steven Nowick The Quine-McCluskey Method Handout 5 January 24, 2013 Introduction The Quine-McCluskey method is an exact algorithm which finds a minimum-cost sum-of-products implementation

More information

ESE535: Electronic Design Automation. Today. EDA Use. Problem PLA. Programmable Logic Arrays (PLAs) Two-Level Logic Optimization

ESE535: Electronic Design Automation. Today. EDA Use. Problem PLA. Programmable Logic Arrays (PLAs) Two-Level Logic Optimization ESE535: Electronic Design Automation Day 18: March 25, 2013 Two-Level Logic-Synthesis Today Two-Level Logic Optimization Problem Behavioral (C, MATLAB, ) Arch. Select Schedule RTL FSM assign Definitions

More information

Assign auniquecodeto each state to produce a. Given jsj states, needed at least dlog jsje state bits. (minimum width encoding), at most jsj state bits

Assign auniquecodeto each state to produce a. Given jsj states, needed at least dlog jsje state bits. (minimum width encoding), at most jsj state bits State Assignment The problem: Assign auniquecodeto each state to produce a logic level description. Given jsj states, needed at least dlog jsje state bits (minimum width encoding), at most jsj state bits

More information

CSEE 6861 CAD of Digital Systems Handout: Lecture #3

CSEE 6861 CAD of Digital Systems Handout: Lecture #3 SEE 6861 D of Digital Systems Handout: Lecture #3 2/4/16 Prof. Steven M. Nowick nowick@cs.columbia.edu Department of omputer Science (and Elect. Eng.) olumbia University New York, NY, US ESPRESSO lgorithm:

More information

Karnaugh Map (K-Map) Karnaugh Map. Karnaugh Map Examples. Ch. 2.4 Ch. 2.5 Simplification using K-map

Karnaugh Map (K-Map) Karnaugh Map. Karnaugh Map Examples. Ch. 2.4 Ch. 2.5 Simplification using K-map Karnaugh Map (K-Map) Ch. 2.4 Ch. 2.5 Simplification using K-map A graphical map method to simplify Boolean function up to 6 variables A diagram made up of squares Each square represents one minterm (or

More information

Design of Framework for Logic Synthesis Engine

Design of Framework for Logic Synthesis Engine Design of Framework for Logic Synthesis Engine Tribikram Pradhan 1, Pramod Kumar 2, Anil N S 3, Amit Bakshi 4 1 School of Information technology and Engineering, VIT University, Vellore 632014, Tamilnadu,

More information

COPYRIGHTED MATERIAL INDEX

COPYRIGHTED MATERIAL INDEX INDEX Absorption law, 31, 38 Acyclic graph, 35 tree, 36 Addition operators, in VHDL (VHSIC hardware description language), 192 Algebraic division, 105 AND gate, 48 49 Antisymmetric, 34 Applicable input

More information

University of Technology

University of Technology University of Technology Lecturer: Dr. Sinan Majid Course Title: microprocessors 4 th year Lecture 5 & 6 Minimization with Karnaugh Maps Karnaugh maps lternate way of representing oolean function ll rows

More information

CSE 140: Logic Minimization Lecture

CSE 140: Logic Minimization Lecture CSE 140: Logic Minimization Lecture What is Logic Minimization? Input: A set of minterms corresponding to a function F Output: A minimal set of prime implicants that corresponds to function F Example:

More information

Combinatorial Algorithms. Unate Covering Binate Covering Graph Coloring Maximum Clique

Combinatorial Algorithms. Unate Covering Binate Covering Graph Coloring Maximum Clique Combinatorial Algorithms Unate Covering Binate Covering Graph Coloring Maximum Clique Example As an Example, let s consider the formula: F(x,y,z) = x y z + x yz + x yz + xyz + xy z The complete sum of

More information

SEPP: a New Compact Three-Level Logic Form

SEPP: a New Compact Three-Level Logic Form SEPP: a New Compact Three-Level Logic Form Valentina Ciriani Department of Information Technologies Università degli Studi di Milano, Italy valentina.ciriani@unimi.it Anna Bernasconi Department of Computer

More information

Specifying logic functions

Specifying logic functions CSE4: Components and Design Techniques for Digital Systems Specifying logic functions Instructor: Mohsen Imani Slides from: Prof.Tajana Simunic and Dr.Pietro Mercati We have seen various concepts: Last

More information

CprE 281: Digital Logic

CprE 281: Digital Logic CprE 28: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Minimization CprE 28: Digital Logic Iowa State University, Ames, IA Copyright Alexander Stoytchev Administrative

More information

Pointers & Arrays. CS2023 Winter 2004

Pointers & Arrays. CS2023 Winter 2004 Pointers & Arrays CS2023 Winter 2004 Outcomes: Pointers & Arrays C for Java Programmers, Chapter 8, section 8.12, and Chapter 10, section 10.2 Other textbooks on C on reserve After the conclusion of this

More information

L3: Representations of functions

L3: Representations of functions L3: Representations of functions Representations of Boolean functions Boolean expression Two level sum of product form, factorized form Truth tables Karnaugh maps Cubes (MIN,MAX) notation positional cube

More information

A B AB CD Objectives:

A B AB CD Objectives: Objectives:. Four variables maps. 2. Simplification using prime implicants. 3. "on t care" conditions. 4. Summary.. Four variables Karnaugh maps Minterms A A m m m3 m2 A B C m4 C A B C m2 m8 C C m5 C m3

More information

Logic Synthesis & Optimization Lectures 4, 5 Boolean Algebra - Basics

Logic Synthesis & Optimization Lectures 4, 5 Boolean Algebra - Basics Logic Synthesis & Optimization Lectures 4, 5 Boolean Algebra - Basics 1 Instructor: Priyank Kalla Department of Electrical and Computer Engineering University of Utah, Salt Lake City, UT 84112 Email: kalla@ece.utah.edu

More information

LOGIC SYNTHESIS AND VERIFICATION ALGORITHMS. Gary D. Hachtel University of Colorado. Fabio Somenzi University of Colorado.

LOGIC SYNTHESIS AND VERIFICATION ALGORITHMS. Gary D. Hachtel University of Colorado. Fabio Somenzi University of Colorado. LOGIC SYNTHESIS AND VERIFICATION ALGORITHMS by Gary D. Hachtel University of Colorado Fabio Somenzi University of Colorado Springer Contents I Introduction 1 1 Introduction 5 1.1 VLSI: Opportunity and

More information

User s Manual. Ronwaldo A. Collado Diosdado Y. Tejoso Jr. CMSC 130 Logistic Design and Digital Computer Circuits Second Semester, A. Y.

User s Manual. Ronwaldo A. Collado Diosdado Y. Tejoso Jr. CMSC 130 Logistic Design and Digital Computer Circuits Second Semester, A. Y. The Quine-McCluskey Method, also known as the Tabulation Method is a specific step-by-step method that is ensured to generate a simplified standard-form expression for a function. Ronwaldo A. Collado Diosdado

More information

Quine-McCluskey Algorithm

Quine-McCluskey Algorithm Quine-McCluskey Algorithm Useful for minimizing equations with more than 4 inputs. Like K-map, also uses combining theorem Allows for automation Chapter Edward McCluskey (99-06) Pioneer in Electrical

More information

CHICAGO, A P R I L

CHICAGO, A P R I L j v v ) ; ) ) b b F F F F x v bj Y Y K Q Y : 79 29 393 7 0 Y b - j bb b v- * bv b - b b b j b b b b v b b v b b v b * v K j v v b ; - v 8 - bj v - b b v v v v? v v * v b» j»q v- XY! b v b b v b x q b b

More information

Combinational Logic Circuits Part III -Theoretical Foundations

Combinational Logic Circuits Part III -Theoretical Foundations Combinational Logic Circuits Part III -Theoretical Foundations Overview Simplifying Boolean Functions Algebraic Manipulation Karnaugh Map Manipulation (simplifying functions of 2, 3, 4 variables) Systematic

More information

CSCI 220: Computer Architecture I Instructor: Pranava K. Jha. Simplification of Boolean Functions using a Karnaugh Map

CSCI 220: Computer Architecture I Instructor: Pranava K. Jha. Simplification of Boolean Functions using a Karnaugh Map CSCI 22: Computer Architecture I Instructor: Pranava K. Jha Simplification of Boolean Functions using a Karnaugh Map Q.. Plot the following Boolean function on a Karnaugh map: f(a, b, c, d) = m(, 2, 4,

More information

A Fast Two-level Logic Minimizer

A Fast Two-level Logic Minimizer A Fast Two-level Logic Minimizer P. Srinivasa Rao = James Jacobt Microelectronics and Computer Division Nortel, P.O. Box 3511 I. T. I.. Bangalore, India palati itibang. ernet. in Ottawa KIY 4H7, Canada

More information

Heuristic Minimization of Boolean Relations Using Testing Techniques

Heuristic Minimization of Boolean Relations Using Testing Techniques Heuristic Minimization of Boolean Relations Using Testing Techniques Abhijit Ghosh Srinivas Devadas A. Richard Newton Department of Electrical Engineering and Coniputer Sciences University of California,

More information

APPLESHARE PC UPDATE INTERNATIONAL SUPPORT IN APPLESHARE PC

APPLESHARE PC UPDATE INTERNATIONAL SUPPORT IN APPLESHARE PC APPLESHARE PC UPDATE INTERNATIONAL SUPPORT IN APPLESHARE PC This update to the AppleShare PC User's Guide discusses AppleShare PC support for the use of international character sets, paper sizes, and date

More information

A New Algorithm to Create Prime Irredundant Boolean Expressions

A New Algorithm to Create Prime Irredundant Boolean Expressions A New Algorithm to Create Prime Irredundant Boolean Expressions Michel R.C.M. Berkelaar Eindhoven University of technology, P.O. Box 513, NL 5600 MB Eindhoven, The Netherlands Email: michel@es.ele.tue.nl

More information

Incompletely Specified Functions with Don t Cares 2-Level Transformation Review Boolean Cube Karnaugh-Map Representation and Methods Examples

Incompletely Specified Functions with Don t Cares 2-Level Transformation Review Boolean Cube Karnaugh-Map Representation and Methods Examples Lecture B: Logic Minimization Incompletely Specified Functions with Don t Cares 2-Level Transformation Review Boolean Cube Karnaugh-Map Representation and Methods Examples Incompletely specified functions

More information

ON AN OPTIMIZATION TECHNIQUE USING BINARY DECISION DIAGRAM

ON AN OPTIMIZATION TECHNIQUE USING BINARY DECISION DIAGRAM ON AN OPTIMIZATION TECHNIQUE USING BINARY DECISION DIAGRAM Debajit Sensarma # 1, Subhashis Banerjee #1, Krishnendu Basuli #1,Saptarshi Naskar #2, Samar Sen Sarma #3 #1 West Bengal State University, West

More information

CS8803: Advanced Digital Design for Embedded Hardware

CS8803: Advanced Digital Design for Embedded Hardware CS883: Advanced Digital Design for Embedded Hardware Lecture 2: Boolean Algebra, Gate Network, and Combinational Blocks Instructor: Sung Kyu Lim (limsk@ece.gatech.edu) Website: http://users.ece.gatech.edu/limsk/course/cs883

More information

ASCII Code - The extended ASCII table

ASCII Code - The extended ASCII table ASCII Code - The extended ASCII table ASCII, stands for American Standard Code for Information Interchange. It's a 7-bit character code where every single bit represents a unique character. On this webpage

More information

Symbolic Hazard-Free Minimization and Encoding of Asynchronous Finite State Machines

Symbolic Hazard-Free Minimization and Encoding of Asynchronous Finite State Machines Symbolic Hazard-Free Minimization and Encoding of Asynchronous Finite State Machines 1 Introduction There has been a renewed interest in asynchronous design, because of their potential for high-performance,

More information

Gate-Level Minimization. BME208 Logic Circuits Yalçın İŞLER

Gate-Level Minimization. BME208 Logic Circuits Yalçın İŞLER Gate-Level Minimization BME28 Logic Circuits Yalçın İŞLER islerya@yahoo.com http://me.islerya.com Complexity of Digital Circuits Directly related to the complexity of the algebraic expression we use to

More information

Advanced Digital Logic Design EECS 303

Advanced Digital Logic Design EECS 303 Advanced Digital Logic Design EECS 303 http://ziyang.eecs.northwestern.edu/eecs303/ Teacher: Robert Dick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 Outline 1. Finite state machines

More information

9/10/2016. ECE 120: Introduction to Computing. The Domain of a Boolean Function is a Hypercube. List All Implicants for One Variable A

9/10/2016. ECE 120: Introduction to Computing. The Domain of a Boolean Function is a Hypercube. List All Implicants for One Variable A University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering ECE 120: Introduction to Computing To Simplify, Write Function as a Sum of Prime Implicants One way to simplify a

More information

USB-ASC232. ASCII RS-232 Controlled USB Keyboard and Mouse Cable. User Manual

USB-ASC232. ASCII RS-232 Controlled USB Keyboard and Mouse Cable. User Manual USB-ASC232 ASCII RS-232 Controlled USB Keyboard and Mouse Cable User Manual Thank you for purchasing the model USB-ASC232 Cable HAGSTROM ELECTRONICS, INC. is pleased that you have selected this product

More information

Combinational Logic & Circuits

Combinational Logic & Circuits Week-I Combinational Logic & Circuits Spring' 232 - Logic Design Page Overview Binary logic operations and gates Switching algebra Algebraic Minimization Standard forms Karnaugh Map Minimization Other

More information

ICS 252 Introduction to Computer Design

ICS 252 Introduction to Computer Design ICS 252 Introduction to Computer Design Lecture 10 Eli Bozorgzadeh Computer Science Department-UCI Reference Lecture note Ankur Srivastava http://www.enee.umd.edu/class/enee644/ Chapter 7(7.3,7.4) of the

More information

File Formats. Appendix A. A.1 Benchmarks. A.2 ESPRESSO Format

File Formats. Appendix A. A.1 Benchmarks. A.2 ESPRESSO Format Appendix A File Formats A.1 Benchmarks Tables A.1 and A.2 present benchmark parameters for two-level logic (in ESPRESSO format) set and finite-state tables (in KISS2 format) set respectively. A.2 ESPRESSO

More information

1 Construct implication chart, one square for each combination of states. 2 Square labeled S i, S j, if outputs differ than square gets X (0).

1 Construct implication chart, one square for each combination of states. 2 Square labeled S i, S j, if outputs differ than square gets X (0). Advanced Digital Logic Design EECS 33 http://ziyang.eecs.northwestern.edu/eecs33/ FSM design overview Teacher: Robert Dick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 State diagram

More information

Gate-Level Minimization. section instructor: Ufuk Çelikcan

Gate-Level Minimization. section instructor: Ufuk Çelikcan Gate-Level Minimization section instructor: Ufuk Çelikcan Compleity of Digital Circuits Directly related to the compleity of the algebraic epression we use to build the circuit. Truth table may lead to

More information

Homework 3 Handout 19 February 18, 2016

Homework 3 Handout 19 February 18, 2016 CSEE E6861y Prof. Steven Nowick Homework 3 Handout 19 February 18, 2016 This homework is due at the beginning of class on Thursday, March 3. NOTE: A correct answer without adequate explanation or derivation

More information

ece5745-pla-notes.txt

ece5745-pla-notes.txt ece5745-pla-notes.txt ========================================================================== Follow up on PAL/PROM/PLA Activity ==========================================================================

More information

ECE 5745 Complex Digital ASIC Design Topic 12: Synthesis Algorithms

ECE 5745 Complex Digital ASIC Design Topic 12: Synthesis Algorithms ECE 5745 Complex Digital ASIC Design Topic 12: Synthesis Algorithms Christopher Batten School of Electrical and Computer Engineering Cornell University http://www.csl.cornell.edu/courses/ece5745 RTL to

More information

±» ²¼ ª² ª³ ±» ² ª±² ( 80 ±«) ± ³» ³ ª² ; ±² ²¼ ³² ³±² ± ¹ ³ ³ ³ ³ ² «³ ± ««¾±² - ± ³«³»µ «; ² ª±² ( ±², ±, ±±³ ), ± ±² µ ±² ³ª²³».» µ³ ±²» ² ª±² ( «¾

±» ²¼ ª² ª³ ±» ² ª±² ( 80 ±«) ± ³» ³ ª² ; ±² ²¼ ³² ³±² ± ¹ ³ ³ ³ ³ ² «³ ± ««¾±² - ± ³«³»µ «; ² ª±² ( ±², ±, ±±³ ), ± ±² µ ±² ³ª²³».» µ³ ±²» ² ª±² ( «¾ Ž ˆŸ Š ˆŸŒ Ž Ž ¹µ±, ±²³ ¾¹ 5- ª«±± ³ ² ² ª ±²¼ ; \ ¹ " ±²» ² ±ª ² ±ª» ³»µ ±² ±³¹ ±² ² «¼ ( ² ; ³ «±²¼{ ³ «±²¼, : ±«, ), ² ±ª«; «² «¼ ( ª -, ;, ±«, ); ±«² «¼ ( ±««ª «±² ² ; ² ); ±² ( «; «, ±«,, ); ««(,

More information

o w n b a p t i s m by a B a p t i s t m i n i s t e r, t h e P e d o baptist minister,who.se labors previously h e had

o w n b a p t i s m by a B a p t i s t m i n i s t e r, t h e P e d o baptist minister,who.se labors previously h e had 55 [ G 5 b b K x «««\ K b «0 ( X K K -Q F F «x b x F «««0«- «7 Q ««K «««xz / 7«b «b «««b K b «««b «x K/ = ( b«k «««K KF K F? xx- -«««- «- b - K- «7 b «b - /«b b qk «z x «««b - &- F «7 «b x G K Q xx Fb

More information

IEEE Transactions on computers

IEEE Transactions on computers 215 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising

More information

3.4 QUINE MCCLUSKEY METHOD 73. f(a, B, C, D, E)¼AC ĒþB CD þ BCDþĀBD.

3.4 QUINE MCCLUSKEY METHOD 73. f(a, B, C, D, E)¼AC ĒþB CD þ BCDþĀBD. 3.4 QUINE MCCLUSKEY METHOD 73 FIGURE 3.22 f(a, B, C, D, E)¼B CD þ BCD. FIGURE 3.23 f(a, B, C, D, E)¼AC ĒþB CD þ BCDþĀBD. A¼1map are, 1, and 1, respectively, whereas the corresponding entries in the A¼0

More information

Chapter 3. Gate-Level Minimization. Outlines

Chapter 3. Gate-Level Minimization. Outlines Chapter 3 Gate-Level Minimization Introduction The Map Method Four-Variable Map Five-Variable Map Outlines Product of Sums Simplification Don t-care Conditions NAND and NOR Implementation Other Two-Level

More information

R.M.D. ENGINEERING COLLEGE R.S.M. Nagar, Kavaraipettai

R.M.D. ENGINEERING COLLEGE R.S.M. Nagar, Kavaraipettai L T P C R.M.D. ENGINEERING COLLEGE R.S.M. Nagar, Kavaraipettai- 601206 DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING EC8392 UNIT - I 3 0 0 3 OBJECTIVES: To present the Digital fundamentals, Boolean

More information

UNIT II. Circuit minimization

UNIT II. Circuit minimization UNIT II Circuit minimization The complexity of the digital logic gates that implement a Boolean function is directly related to the complexity of the algebraic expression from which the function is implemented.

More information

An Introduction to Zero-Suppressed Binary Decision Diagrams

An Introduction to Zero-Suppressed Binary Decision Diagrams An Introduction to Zero-Suppressed Binary Decision Diagrams Alan Mishchenko Department of Electrical and Computer Engineering Portland State University, Portland, OR 97207, USA alanmi@ee.pdx.edu; http://www.ee.pdx.edu/~alanmi/research.htm

More information

Chapter 2 Combinational Logic Circuits

Chapter 2 Combinational Logic Circuits Logic and Computer Design Fundamentals Chapter 2 Combinational Logic Circuits Part 2 Circuit Optimization Overview Part Gate Circuits and Boolean Equations Binary Logic and Gates Boolean Algebra Standard

More information

Combinational Logic Circuits

Combinational Logic Circuits Chapter 2 Combinational Logic Circuits J.J. Shann (Slightly trimmed by C.P. Chung) Chapter Overview 2-1 Binary Logic and Gates 2-2 Boolean Algebra 2-3 Standard Forms 2-4 Two-Level Circuit Optimization

More information

Literal Cost F = BD + A B C + A C D F = BD + A B C + A BD + AB C F = (A + B)(A + D)(B + C + D )( B + C + D) L = 10

Literal Cost F = BD + A B C + A C D F = BD + A B C + A BD + AB C F = (A + B)(A + D)(B + C + D )( B + C + D) L = 10 Circuit Optimization Goal: To obtain the simplest implementation for a given function Optimization is a more formal approach to simplification that is performed using a specific procedure or algorithm

More information

OOstaExcel.ir. J. Abbasi Syooki. HTML Number. Device Control 1 (oft. XON) Device Control 3 (oft. Negative Acknowledgement

OOstaExcel.ir. J. Abbasi Syooki. HTML Number. Device Control 1 (oft. XON) Device Control 3 (oft. Negative Acknowledgement OOstaExcel.ir J. Abbasi Syooki HTML Name HTML Number دهدهی ا کتال هگزاد سیمال باینری نشانه )کاراکتر( توضیح Null char Start of Heading Start of Text End of Text End of Transmission Enquiry Acknowledgment

More information

Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube

Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube Kavish Gandhi April 4, 2015 Abstract A geodesic in the hypercube is the shortest possible path between two vertices. Leader and Long

More information

Lecture 5 C Programming Language

Lecture 5 C Programming Language Lecture 5 C Programming Language Summary of Lecture 5 Pointers Pointers and Arrays Function arguments Dynamic memory allocation Pointers to functions 2D arrays Addresses and Pointers Every object in the

More information

Switching Theory And Logic Design UNIT-II GATE LEVEL MINIMIZATION

Switching Theory And Logic Design UNIT-II GATE LEVEL MINIMIZATION Switching Theory And Logic Design UNIT-II GATE LEVEL MINIMIZATION Two-variable k-map: A two-variable k-map can have 2 2 =4 possible combinations of the input variables A and B. Each of these combinations,

More information

;/ *. 7 &9*R . C 2 <0* # "2 <AC (:* "' < %)V AB C. Downloaded from qjal.smtc.ac.ir at 23: on Sunday May 13th 2018

;/ *. 7 &9*R . C 2 <0* # 2 <AC (:* ' < %)V AB C. Downloaded from qjal.smtc.ac.ir at 23: on Sunday May 13th 2018 ( - ) 1394 @R$ 8 %& b ;/ *. 7 1393/12/18 1394/2/28 :6# :G"#a 2 "V*D 1 AB C &9*R "' : > ; *$ id: 0* :6 i: > (:* 0 > ' # *,2 T# "? 0 > # "5 EOAB N*> # "5 UA;

More information

Redacted for privacy

Redacted for privacy AN ABSTRACT OF THE T'AE3IS Jorge F. Martinez-Carballido for the degree of Doctor of Philosophy in Electrical and Computer Engineering presented on November 12, 1982. Title: PRONTO: A Product Term Reduction

More information

Larger K-maps. So far we have only discussed 2 and 3-variable K-maps. We can now create a 4-variable map in the

Larger K-maps. So far we have only discussed 2 and 3-variable K-maps. We can now create a 4-variable map in the EET 3 Chapter 3 7/3/2 PAGE - 23 Larger K-maps The -variable K-map So ar we have only discussed 2 and 3-variable K-maps. We can now create a -variable map in the same way that we created the 3-variable

More information

2.6 BOOLEAN FUNCTIONS

2.6 BOOLEAN FUNCTIONS 2.6 BOOLEAN FUNCTIONS Binary variables have two values, either 0 or 1. A Boolean function is an expression formed with binary variables, the two binary operators AND and OR, one unary operator NOT, parentheses

More information

A New Heuristic for DSOP Minimization

A New Heuristic for DSOP Minimization A New Heuristic for DSOP Minimization Anna Bernasconi Department of Computer Science University of Pisa, Italy annab@di.unipi.it Fabrizio Luccio Department of Computer Science University of Pisa, Italy

More information

CSE241 VLSI Digital Circuits UC San Diego

CSE241 VLSI Digital Circuits UC San Diego CSE241 VLSI Digital Circuits UC San Diego Winter 2003 Lecture 05: Logic Synthesis Cho Moon Cadence Design Systems January 21, 2003 CSE241 L5 Synthesis.1 Kahng & Cichy, UCSD 2003 Outline Introduction Two-level

More information

1. Oracle Mobile Agents? 2. client-agent-server client-server

1. Oracle Mobile Agents? 2. client-agent-server client-server 1. Oracle Mobile Agents?!"#$ application software system%. &'( )'*+, -. */0 1 23 45 678 9:; >?, %@ +%. - 6A(mobility) : B? CDE@ F GH8!" * channel #I 1 = / 4%. ()'*, &', LAN) - * application

More information

Chapter 3 Simplification of Boolean functions

Chapter 3 Simplification of Boolean functions 3.1 Introduction Chapter 3 Simplification of Boolean functions In this chapter, we are going to discuss several methods for simplifying the Boolean function. What is the need for simplifying the Boolean

More information

Read-Once Functions (Revisited) and the Readability Number of a Boolean Function. Martin Charles Golumbic

Read-Once Functions (Revisited) and the Readability Number of a Boolean Function. Martin Charles Golumbic Read-Once Functions (Revisited) and the Readability Number of a Boolean Function Martin Charles Golumbic Caesarea Rothschild Institute University of Haifa Joint work with Aviad Mintz and Udi Rotics Outline

More information

TOM S RIVER. N. J. APRIL 1, 1857.

TOM S RIVER. N. J. APRIL 1, 1857. P b J [ J ) --------- J P 857 7 c < ( v v k k ( Ì k \ bv F í xbk ( v c c< k v J 4? 9 b (b bx c c í c c k c c b k Ö ) c ( b c ck b é P c // k ( cà ( k kc ( b b v #> b Ü) v # k # v [ vb b c< c b c v b b

More information

SPAREPARTSCATALOG: CONNECTORS SPARE CONNECTORS KTM ART.-NR.: 3CM EN

SPAREPARTSCATALOG: CONNECTORS SPARE CONNECTORS KTM ART.-NR.: 3CM EN SPAREPARTSCATALOG: CONNECTORS ART.-NR.: 3CM3208201EN CONTENT SPARE CONNECTORS AA-AN SPARE CONNECTORS AO-BC SPARE CONNECTORS BD-BQ SPARE CONNECTORS BR-CD 3 4 5 6 SPARE CONNECTORS CE-CR SPARE CONNECTORS

More information

Switching Circuits Simplifications Using Binary Coded Octal Minterms

Switching Circuits Simplifications Using Binary Coded Octal Minterms Vol. 2, No. 2, pp. 45-51, 2017 OI: http://ijoaem.org/00202-04 Switching Circuits Simplifications Using Binary Coded Octal Minterms Sahadev Roy Abstract In this paper, a simple approach for detection of

More information

Breakup Algorithm for Switching Circuit Simplifications

Breakup Algorithm for Switching Circuit Simplifications , No.1, PP. 1-11, 2016 Received on: 22.10.2016 Revised on: 27.11.2016 Breakup Algorithm for Switching Circuit Simplifications Sahadev Roy Dept. of ECE, NIT Arunachal Pradesh, Yupia, 791112, India e-mail:sdr.ece@nitap.in

More information

ECE 3060 VLSI and Advanced Digital Design

ECE 3060 VLSI and Advanced Digital Design ECE 3060 VLSI and Advanced Digital Design Lecture 15 Multiple-Level Logic Minimization Outline Multi-level circuit representations Minimization methods goals: area, delay, power algorithms: algebraic,

More information

IT 201 Digital System Design Module II Notes

IT 201 Digital System Design Module II Notes IT 201 Digital System Design Module II Notes BOOLEAN OPERATIONS AND EXPRESSIONS Variable, complement, and literal are terms used in Boolean algebra. A variable is a symbol used to represent a logical quantity.

More information

Cofactoring-Based Upper Bound Computation for Covering Problems

Cofactoring-Based Upper Bound Computation for Covering Problems TR-CSE-98-06, UNIVERSITY OF MASSACHUSETTS AMHERST Cofactoring-Based Upper Bound Computation for Covering Problems Congguang Yang Maciej Ciesielski May 998 TR-CSE-98-06 Department of Electrical and Computer

More information

Problem Solving (Computing) Array and Pointer

Problem Solving (Computing) Array and Pointer CS101 Introduction to computing Problem Solving (Computing) & Array and Pointer A. Sahu and S. V.Rao Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Outline Loop invariant and loop

More information

SPARE CONNECTORS KTM 2014

SPARE CONNECTORS KTM 2014 SPAREPARTSCATALOG: // ENGINE ART.-NR.: 3208201EN CONTENT CONNECTORS FOR WIRING HARNESS AA-AN CONNECTORS FOR WIRING HARNESS AO-BC CONNECTORS FOR WIRING HARNESS BD-BQ CONNECTORS FOR WIRING HARNESS BR-CD

More information

Switching Circuits & Logic Design

Switching Circuits & Logic Design Switching Circuits & Logic Design Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 23 5 Karnaugh Maps K-map Walks and Gray Codes http://asicdigitaldesign.wordpress.com/28/9/26/k-maps-walks-and-gray-codes/

More information

Experiment 3: Logic Simplification

Experiment 3: Logic Simplification Module: Logic Design Name:... University no:.. Group no:. Lab Partner Name: Mr. Mohamed El-Saied Experiment : Logic Simplification Objective: How to implement and verify the operation of the logical functions

More information

Working with Combinational Logic

Working with Combinational Logic KTZ_238576_M3.fm Page 93 Thursday, November 4, 24 2:38 PM H P T E R Working with ombinational Logic Introduction Now that we ve learned about two-level logic and had a short introduction to multilevel

More information

Disjoint, Partition and Intersection Constraints for Set and Multiset Variables

Disjoint, Partition and Intersection Constraints for Set and Multiset Variables Disjoint, Partition and Intersection Constraints for Set and Multiset Variables Christian Bessiere ½, Emmanuel Hebrard ¾, Brahim Hnich ¾, and Toby Walsh ¾ ¾ ½ LIRMM, Montpelier, France. Ö Ð ÖÑÑ Ö Cork

More information

Disjoint Support Decompositions

Disjoint Support Decompositions Chapter 4 Disjoint Support Decompositions We introduce now a new property of logic functions which will be useful to further improve the quality of parameterizations in symbolic simulation. In informal

More information

2.1 Sets 2.2 Set Operations

2.1 Sets 2.2 Set Operations CSC2510 Theoretical Foundations of Computer Science 2.1 Sets 2.2 Set Operations Introduction to Set Theory A set is a structure, representing an unordered collection (group, plurality) of zero or more

More information

Binary Decision Diagrams (BDD)

Binary Decision Diagrams (BDD) Binary Decision Diagrams (BDD) Contents Motivation for Decision diagrams Binary Decision Diagrams ROBDD Effect of Variable Ordering on BDD size BDD operations Encoding state machines Reachability Analysis

More information

Solutions to Problem Set 1

Solutions to Problem Set 1 CSCI-GA.3520-001 Honors Analysis of Algorithms Solutions to Problem Set 1 Problem 1 An O(n) algorithm that finds the kth integer in an array a = (a 1,..., a n ) of n distinct integers. Basic Idea Using

More information