Upcoming SlideShare
×

# Minimization of switching functions

1,312 views
1,204 views

Published on

A technique for minimization of switching functions has been described in this presentation that can be easily programmed and is equally suitable for paper and pencil as well.
The technique does not generate all the prime implicants but looks for existence of a prime implicant thus reducing the search space. It allows simplification of switching functions having variables greater than 8 as well.

1 Comment
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• This appears to be a very powerful technique for simplifying/minimizing switching/boolean functions. It essentially looks for EPIs (Essential Prime Implicants) after minterms covered by the EPIs are marked don't care. It substantially reduces the search space, and does not need to generate all PIs as in Q-M technique.
Generation of only EPIs.(after marking minterms covered earlier as don't care) results in reduction of effort considerably. As a paper-pencil technique, it takes much less space and effort.
As computer implementation, it requires much less space (and time) and hence can be used for functions with large value of variables as compared to tabular method (Q-M technique).

Are you sure you want to  Yes  No
• Be the first to like this

Views
Total views
1,312
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
16
1
Likes
0
Embeds 0
No embeds

No notes for slide

### Minimization of switching functions

1. 1. SIMPLIFICATION OF SWITCHING FUNCTIONS A PAPER AND PENCIL TECHNIQUE Prof. Sureshchander Email: suresh.chander@gmail.comThe rules of Boolean algebra are used for algebraic manipulation of switching functions. This process, however,is quite involved, and finding the right line of attack requires considerable ingenuity, judgement, experience andsometimes plain luck and yet there is no way of finding if a minimal or near minimal solution has been found.Various non-algebraic methods of simplification are available. The notable among them are: Map method of Veitch and Karnaugh Tabular method of of Quine-McCluskey. Svoboda’s method of grids Sureshchander’s search technique. ("Minimization of Switching Functions - A Fast Technique", IEEE Trans. on Computer, vol. C-24, pp. 753-756.). This may be called as Sureshchander’s Search Technique or ST technique.Of these Veitch and Karnaugh method, popularly known as K-maps, is very popular. It is very powerful tool forfunctions upto 5-variables. The tabular method or Quine-McCluskey technique decomposes the problem intotwo parts Determination of prime-implicants. Selection of prime implicants from a prime implicant chart for a minimal cover. » This method is quite laborious and unsuitable for functions more than seven variables for paper and pencil solutions. The method can be programmed but the number of prime implicants become very large for values of n greater than 10. For example, the upper bound of PIs for a 10 variable function is 58024. It is more than three billions (3485735825) for a 20 variable function. It may be noted that upper bound of PIs for a function of n variables is (3 n -2n). In this method, Q-M technique, a trivial function with all TRUE minrterms will require determination of all (3 n -2n) PIs to conclude that f(x1, x2, ..., xn) = 1Sureshchander’s Search Technique or ST technique:The ST technique reduces the search space for generating minimal sum-of-products (or product-of-sums) form.All EPIs and other PIs are generated with minimal effort without generating all the PIs as in Q-M technique.The technique is programmable. Here paper and pencil procedure of ST technique is described.Definition 1:If there are r minterms that are at a distance-1 from a minterm Pi, Pi is said to have rth-degree consensus.Definition 2:If Pi and all the r minterms at a distance-1 from it are covered by a sub-cube, then Pi is said to have proper rth-degree consensus.. Such a sub-cube will have 2r (TRUE) minterms including Pi and r minterms at a distance-1from it, and will be an rth-order sub-cube. In order to know that a Pi has proper consensus, it is necessary to know which (2r - (r + 1)) terms arerequired to form an rth-order sub-cube and whether these terms are TRUE or not. This technique has three steps: 1. Generate (2r - (r + 1)) terms for a Pi term. 2. Check if these (2r - (r + 1)) terms are TRUE, for an SOP form. 3. If all the terms, (2r - (r + 1)), at step 2 above are TRUE, then PI is selected. This PI will have 2 r minterms.
2. 2. Selection of (2r-(r + 1)) terms:The (2r-(r + 1)) terms required for proper rth-degree consensus are selected as follows:There are r-minterms that are at distance-1 from Pi. The other minterms are given by following relations:Let r-minterms, at distance-1 from Pi, be m11, m12, ..., m1r.. Let these terms be called m1 and Pi term as m0.The m2, m3, ..., mr terms will be:m2 = m1i +m2j –m0, i = 1, 2, ..., r-1 j = (i+1), ..., r; i ≠ jm3 = m1i +m1j + m1k – 2m0, i = 1, 2, ..., (r-2) j = (i+1), ..., (r-1) k = (j+1), ..., r; i ≠ j ≠ kIn general,mk, k = 2, 3, ..., r, terms are calculated as sum of k m1 terms minus (k -1) times m0.Definition 3: mk, k = 0, 1, 2, ..., r , terms are at a distance-k from Pi minterm. mr will have only one minterm.Definition 4: mkj minterm is at a distance-k from a Pi minterm.If a Pi term, in an n variables function, has nth degree consensuses, then all 2n minterms should be TRUE for aproper nth-degree consensus. In this case, the function is reduced to f = 1.The search technique will be illustrated with following examples.Example 1: f = ∑ (4, 8,9,10, 11 12, 13, 14, 15)Let us consider 12 as a Pi, Fig 1. Only minterms 4, 8, 13 and 14 are at distance-1 from minterm 12. Hence,minterm 12 has 4th-degree consensus.Here m0 is 12, and m1 terms are 4, 8, 13, 14. m2 terms can be generated as: 4 + 8 – 12 = 0 4 + 13 – 12 = 5 AB 4 + 14 – 12 = 6 0 4 12 8 8 + 13 – 12 = 9 CD 11 11 0 m2 1 m1 1m0 1 m1 8 + 14 – 12 = 10 13 + 14 – 12 = 15 1 5 13 11 9 25 11 0 m3 0 m2 1 m1 1 m2 3 the m terms are 3 7 7 6 25 15 11 2 11 4 + 8 + 13 – 2*12 = 1 11 11 0 m4 0 m3 1 m2 1 m3 4 + 8 + 14 – 2*12 = 2 4 + 13 + 14 – 2*12 = 7 2 6 25 11 10 25 11 3 2 8 + 13 + 14 – 2*12 = 11 0m 0m 1m 1 1 m2 and m4 is Fig. 1 4 + 8 + 13 +14 – 3*12 = 3Obviously minterm 12 does not have proper 4th-degree consensus as minterms 0, 5, 6, 9, 1, 2 and 3 are notTRUE . We need not have generated all the (2r – (r + 1)) as minterm 0 is FALSE. The process of generation of
3. 3. further minterms (for proper consensus) is to be terminated when a (generated) minterm is not TRUE that is it isFALSE.In this example, minterm 9, has 3rd -degree consensus with minterms 8, 11 and 13. For a proper consensus, thefollowing terms should be TRUE. m0 term 9 (Pi) m1 terms 8, 11, 13 (3rd degree consensus terms with m0 are minterms at distance-1 from m0) m2 terms: 8 + 11 – 9 = 10 (m2 terms are distance-2 from m0) 8 + 13 – 9 = 12 11 + 13 – 9 = 15 m3 term 8 + 11 + 13 – 9 – 9 = 14 (m3 term is at distance-3 from m0)Since all m2 and m3 minterms (10, 12, 15, 14) are TRUE, minterm 9 has proper 3rd-degree consensus, i.e., thereexists a 3rd order subcube (of 8 minterms). The sub-cube is (8, 9, 10, 11, 12, 13, 14, 15).Definition 5:The PI in product form is product of TRUE literals of the minterm having lowest decimal value andFALSE (complimented) literals of the minterm having highest decimal value among the 2r minterms.In present case minterm with lowest decimal value is 8 or A , i.e., A is TRUE, and minterm 15 (highestdecimal value) is ABCD that does not have any FALSE minterm. Hence the PI has only one literal namely A.Don’t care conditions.The don’t care minterms, in this method, are treated as if they have already been covered. In other words, thedon’t care terms are not used as Pi terms. However, don’t cares can be used for enlarging a sub-cube.Now, paper and pencil procedure of ST technique is described with some examples.Example 2: Simplify the switching function f (A, B, C, D) = ∑ (0, 2, 4, 9, 12, 15 + ∑ (1, 5, 7, 10)The minterms are grouped according to the number of 1’s in their binary representation, Fig.2.A minterm in k-group is compared with the terms of both (k-1) and (k+1) groups to finddistance-1 terms from it. For example, minterm 7 is at a distance-1 from minterms 5 in(k-1) and minterm 15 in (k+1) group. Note minterm 7 is not at a distance-1 from minterm9 in (k-1) -------------------------------------------------------- No. of 1’s minterms --------------------------------------------------------A minterm in k-group is at a distance-1 from (k-1) group if 0 0✓✓ ----------------------- --------------------------------- a) the minterm in (k-1) group has less numeric value 1 1, 2✓, 4✓✓ than the term in k-group. -------------------------------------------------------- 2 5, 9✓, 10, 12✓ b) their difference is a power of 2. -------------------------------------------------------- 3 7 --------------------------------------------------------A minterm in k-group is at a distance-1 from (k+1) group if 4 15✓ -------------------------------------------------------- a) the minterm in (k+1) group has more numeric Fig. 2 k - chart Note: minterms 0 and 4 were not selected as PI value than the term in k-group. ------------------------------------------------------------------------------------------------------------------------ b) their difference is a power of 2. P m ), terms m terms 0 m2 terms 1 m3 terms minterns in sub-cube PI i ( ------------------------------------------------------------------------------------------------------------------------The search chart for this example is shown in Fig. 3. ✓ 0 1, 2, 4 6x ------------------------------------------------------------------------------------------------------------------------The don’t cares are underlined in figures 2 and 3. * 2 0 (0, 2) ------------------------------------------------------------------------------------------------------------------------The minterms selected in a PI (prime implicant) are ✓ 4 0, 5, 12 8 x✓ marked in Fig.3. Double ✓ mark indicates that ------------------------------------------------------------------------------------------------------------------------ * 9 1 (1, 9) ------------------------------------------------------------------------------------------------------------------------ * 12 4 (4, 12) ------------------------------------------------------------------------------------------------------------------------ * 7 15 (7, 15) ------------------------------------------------------------------------------------------------------------------------ Fig. 3 Search Chart with sub-cubes and PIs Pi terms are ✓marked once they are included in a subsequent selected PI. The ✓ and * Pi terms are not considered in subsequent iterations.
4. 4. a particular minterm was not selected on the first encounter.In this example, there are 4 PIs, all are 1-order sub-cube. It may be observed that minterm 9 is not atdistance-1 from any non-don’t care term, minterm 1 (a don’t care term) is used to enlarge the subcube.Example 3: Simplify the switching function f (A, B, C, D, E) = ∑ (0, 1, 3, 4, 5, 7, 8, 9,10, 11,12, 13, 21,24, 25,26, 28, 29)The minterms of the function are grouped according to the number of 1s in a minterm, Fig. 4a. The searchchart with m1, m2, m3 minterms, and their corresponding subcube and PI are shown in Fig. 5. It may be observed that procedure described is a paper-pencil technique. It can be programmed easily.minterm 0 has proper 3rd degree consensus, All the generated m2 and m3 minterms are TRUE hence, a subcube(0, 1, 4, 5, 8, 9, 12, 13) is formed. The PI is . All the minterms covered by PI are ✓ marked, Fig. 4a.Next non ✓ marked minterm is 3, it is now chosen as next Pi. It does not have proper consensus of 2nd-degreeas minterm 15 is FALSE.We continue to look for next non ✓ marked minterm that is 10. It results in a subcube (8, 10, 24, 26). Theminterms in sub-cube (8, 10, 24, 26), PI , are ✓ marked, Fig. 4b. Next Pi is minterm 7. It has 2nd-degreeconsensus with mniterms 3 and 5. Note that minterm 5 has already been included in PI . It can be treated asdon’t care term, but still m2 is generated for a possible larger sub-cube. Resulting m2 minterm is 1, a mintermalready covered by PI . The PI thus formed is (1, 3, 5, 7), only minterms 3 and 7 are the non-coveredminterms. So ✓ mark minterm 3 and 7, Fig. 4c. Likewise, remaining terms (11), (21, 29), (25, 28) are ✓marked after PIs with 11, 21 and 25 respectively are formed, Fig. 4d.Note: minterm 11 has 0th –order consensus as minterms 3, 9 and 10 are treated as don’t cares having beenincluded earlier in sub-cubes (0, 1, 4, 5, 8, 9, 12, 13), (1, 3, 5, 7) and (8, 10, 24, 26).The process is continued till all the minterms are covered. In case some minterms remain uncovered (non ✓marked terms). The process is reiterated from the top. A cyclic condition may exist in certain cases. The cycle isbroken by reducing the rth-degree consensus of the first (or any) minterm in the cycle to (r-1)-degree consensusby removing one of the distance-1 minterm of the selected Pi. ---------------------------------------------------------------------------------------------------------------- -------------------------------------------------------- No. of 1’s mintermsNo. of 1’s minterms No. of 1’s minterms ---------------------------------------------------------------------------------------------------------------- -------------------------------------------------------- 0 0✓0 0✓ 0 0✓ ---------------------------------------------------------------------------------------------------------------- -------------------------------------------------------- 1 1✓, 4✓, 8✓1 1✓, 4✓, 8✓ 1 1✓, 4✓, 8✓ ---------------------------------------------------------------------------------------------------------------- -------------------------------------------------------- 2 3✓, 5✓, 9✓, 10✓, 12✓, 24✓2 3, 5✓, 9✓, 10, 12✓, 24 2 3, 5✓, 9✓, 10✓, 12✓, 24✓ ---------------------------------------------------------------------------------------------------------------- -------------------------------------------------------- 3 7✓, 11, 13✓, 21, 25, 26✓, 283 7, 11, 13✓, 21, 25, 26, 28 3 7, 11, 13✓, 21, 25, 26✓, 28 ---------------------------------------------------------------------------------------------------------------- -------------------------------------------------------- 4 294 29 4 29 ---------------------------------------------------------------------------------------------------------------- -------------------------------------------------------- Fig 4c k chart Fig 4a k chart Fig 4b k chart (3, 7) are ✓ marked after proper 2nd –degree(0, 1, 4, 5, 8, 9, 12, 13) are ✓ marked after proper (10, 24, 26) are ✓ marked after proper proper consensus for minterm 7 is established.3 –degree proper consensus for minterm 0 is rd 2 –degree proper consensus for minterm 10 is nd 1 and 5 have already been ✓ marked.established. established. 8 has already been ✓ marked -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ No. of 1’s minterms3r Pi (m0), terms m1 terms m2 terms m3 terms minterns in sub-cube PI -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ 0 0✓ *0 1, 4, 8 5, 9, 12 13 (0, 1, 4 ,5, 8, 9, 12, 13) -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ 1 1✓, 4✓, 8✓ ✓ 3 1, 7, 11 5, 9, 15x -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ 2 3✓, 5✓, 9✓, 10✓, 12✓, 24✓ -------------------------------------------------------- *10 8. 26 24 (8, 10, 24, 26) 3 7✓, 11✓, 13✓, 21✓, 25✓, 26✓, 28✓ ------------------------------------------------------------------------------------------------------------------------ * -------------------------------------------------------- 7 3, 5 1 (1, 3, 5, 7) 4 29✓ ------------------------------------------------------------------------------------------------------------------------ * -------------------------------------------------------- 11 3, 9, 10 1, 2x (1, 3, 9, 11) Fig. 4d k Chart ------------------------------------------------------------------------------------------------------------------------ Likewise, remaining terms (11), (21, 29), * 21 5, 29 13 (5, 13, 21, 29) (25, 28) are ✓ marked after PIs with 11, 21 and ------------------------------------------------------------------------------------------------------------------------ 25 respectively are formed. *25 9, 24, 29 8, 13, 28 12 (8, 9, 12, 13, 24, 25, 28, 29) B The process of forming PIs is stopped after all ------------------------------------------------------------------------------------------------------------------------ terms in the chart have been ✓ marked Fig. 5 Search Chart with sub-cubes and PIs
5. 5. Example 4: Simplify the switching functionf (a, b, c, d, e, f) = ∑ (1, 2, 3, 4, 5, 8, 9, 10, 17, 20, 24, 25, 27, 32, 33, 34, 36, 37, 40, 41, 42, 43, 44. 45, 46, 47, 48, 56, 59, 62)The minterms of the function are grouped according to the number of 1s in a minterm, Fig. 6a . The searchchart with m1, m2, m3 minterms, and their corresponding subcube and PI are shown in Fig. 7. It may be observed that it is a paper-pencil technique.Using search technique, seven PIs were chosen in the first iteration, four in the second and final iteration.-------------------------------------------------------- -------------------------------------------------------- --------------------------------------------------------No. of 1’s minterms No. of 1’s minterms No. of 1’s minterms-------------------------------------------------------- -------------------------------------------------------- --------------------------------------------------------1 1, 2, 4, 8, 32 1 1✓, 2, 4✓, 8✓, 32✓ 1 1✓, 2✓✓, 4✓, 8✓, 32✓-------------------------------------------------------- -------------------------------------------------------- --------------------------------------------------------2 3, 5, 9, 10, 17, 20 2 3, 5, 9✓, 10, 17✓, 20✓ 2 3✓✓, 5✓✓, 9✓, 10✓✓, 17✓, 20✓ 24, 33, 34, 36, 40, 48 24✓, 33, 34, 36, 40✓, 48✓ 24✓, 33✓✓, 34✓✓, 36✓✓, 40✓, 48✓-------------------------------------------------------- -------------------------------------------------------- --------------------------------------------------------3 25, 37, 41, 42, 44, 56 3 25✓, 37, 41✓, 42✓, 44✓, 56✓ 3 25✓, 37✓✓, 41✓, 42✓, 44✓, 56✓-------------------------------------------------------- -------------------------------------------------------- --------------------------------------------------------4 27, 43, 45, 46 4 27✓, 43✓, 45✓, 46✓ 4 27✓, 43✓, 45✓, 46✓-------------------------------------------------------- -------------------------------------------------------- --------------------------------------------------------5 47, 59, 62 5 47✓, 59✓, 62✓ 5 47✓, 59✓, 62✓-------------------------------------------------------- -------------------------------------------------------- -------------------------------------------------------- Fig. 6a k Ckart Fig. 6b k-chart Fig. 6c k-chart Seven PIs were selected in first iteration, the Four PIs were selected in second iteration, the minterms covered by them are ✓ marked. minterms covered by them are ✓✓ marked.3r ------------------------------------------------------------------------------------------------------------------------------------------- Pi (m0), terms m1 terms 3r m2 terms m3 terms minterns in sub-cube PI ------------------------------------------------------------------------------------------------------------------------------------------- ✓1 3, 5, 9, 17, 7x ------------------------------------------------------------------------------------------------------------------------------------------- ✓✓2 3, 10, 34 11x ------------------------------------------------------------------------------------------------------------------------------------------- ✓4 5, 20, 36 21x, 37 ------------------------------------------------------------------------------------------------------------------------------------------- ✓8 9, 10, 24 11x, ------------------------------------------------------------------------------------------------------------------------------------------ ✓32 33, 34, 36, 40 35x ------------------------------------------------------------------------------------------------------------------------------------------- **3 1, 2 0x (2, 3) ------------------------------------------------------------------------------------------------------------------------------------------- **5 1, 4, 37 0x, 33 (1, 5, 33, 37) ------------------------------------------------------------------------------------------------------------------------------------------- x ✓9 1, 8, 25, 41 0 ------------------------------------------------------------------------------------------------------------------------------------------- **10 2, 8, 42 0x, 34 (2, 10, 34, 42) ------------------------------------------------------------------------------------------------------------------------------------------- *17 1, 25 9 (1, 9, 17, 25) ------------------------------------------------------------------------------------------------------------------------------------------- *20 4 (4, 20) ------------------------------------------------------------------------------------------------------------------------------------------- *24 8, 25, 56 40, 9, 57x (8, 24, 40, 56) ------------------------------------------------------------------------------------------------------------------------------------------- x ✓✓33 1, 32, 37, 41 0 , 36, 40, 45 44 ------------------------------------------------------------------------------------------------------------------------------------------- ✓✓34 2, 32, 42 0x , 10 ------------------------------------------------------------------------------------------------------------------------------------------- **36 4, 32, 37, 44 0x. 33, 40, 45 41 (32, 33, 36, 37, 40, 41, 44, 45) ------------------------------------------------------------------------------------------------------------------------------------------- *48 32, 56 40 (32, 40, 48, 56) ------------------------------------------------------------------------------------------------------------------------------------------- x ✓✓37 5, 33, 36, 45 1, 4, 13 ------------------------------------------------------------------------------------------------------------------------------------------- ✓41 9, 33, 40, 43, 45 35, 37, 47 39x ------------------------------------------------------------------------------------------------------------------------------------------- ✓42 10, 34, 40, 43, 46 2,11x ------------------------------------------------------------------------------------------------------------------------------------------- ✓44 36, 40, 45, 46 32, 37, 38x ------------------------------------------------------------------------------------------------------------------------------------------- *27 25, 59 57x (27, 59) ------------------------------------------------------------------------------------------------------------------------------------------- *43 41, 42, 47, 59 40, 45, 46, 57x 44 (40, 41, 42, 43, 44, 45, 46, 47) ------------------------------------------------------------------------------------------------------------------------------------------- *62 46 (46, 62) -- ------------------------------------------------------------------------------------------------------------------------------------------- Fig. 7 Search Chart with sub-cubes and PIs The minimal sum-of-products is: + + + + + + + +
6. 6. No explanation is given for above charts as the procedure has been explained earlier and process is selfexplanatory.There may be instances when a switching function may not have an EPI. Consider, for example, the functionExample 5: f (A, B, C, D) = ∑ (0, 1, 5, 7, 8, 10, 14, 15)The search chart, Fig. 9, is cyclic as no PI can be selected in first iteration. The cycle is broken by reducing theconsensus of a Pi term by one. Any Pi can be chosen. Let us consider Pi 0. Pi 0 has 2nd order consensus. It hasto be reduced to 1st-order consensus by dropping one m1 term, let it be term 8. Now Pi 0 has 1st-order consensus.The terms in sub-cube (0, 1), prime implicant so formed are treated as don’t cares for subsequent P i terms.The remaining PIs, , as outlined earlier. -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ No. of 1’s minterms Pi (m0), terms m1 terms m2 terms m3 terms minterns in sub-cube PI -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ 0 0✓✓ **0 1, 8 9x (0, 1) ----------------------- --------------------------------- ------------------------------------------------------------------------------------------------------------------------ 1 1, 8✓✓ ✓ 1 0,5 4x (0, 2) -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ 2 5 ✓✓, 10, ** 8 0, 10 2x (8, 10) -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ 3 7, 14✓✓ x **5 1, 7 3 (5, 7) -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ 4 15 ✓ 10 8, 14 12x (8, 10) -------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------ Fig. 8 k - chart ✓ 7 5, 15 13x Note: minterms 0 and 4 were not selected as PI ------------------------------------------------------------------------------------------------------------------------ **14 10,15 11x (14, 15) ------------------------------------------------------------------------------------------------------------------------ ✓ 15 7, 14 6x (14, 15) - ----------------------------------------------------------------------------------------------------------------------- Fig. 9 Search Chart with sub-cubes and PIs Cyclic condition. Here double asterisk mark is placed against all the selected PIs as they all have been selected in second iteration..A technique for minimization of switching functions has been described in this presentation that can be easilyprogrammed and is equally suitable for paper and pencil as well.The technique does not generate all the prime implicants but looks for existence of a prime implicant thusreducing the search space. It allows simplification of switching functions having variables greater than 8 as well. ***