8.11. Larger 5 and 6variable Karnaugh mapsLarger Karnaugh maps reduce larger logic designs. How large is large enough? That depends on the number of inputs, fanins, to the logic circuit under consideration. One of the large programmable logic companies has an answer.
The answer is no more than six inputs for most all designs, and five inputs for the average logic design. The five variable Karnaugh map follows.
The older version of the five variable Kmap, a Gray Code map or reflection map, is shown above. The top (and side for a 6variable map) of the map is numbered in full Gray code. The Gray code reflects about the middle of the code. This style map is found in older texts. The newer preferred style is below.
The overlay version of the Karnaugh map, shown above, is simply two (four for a 6variable map) identical maps except for the most significant bit of the 3bit address across the top. If we look at the top of the map, we will see that the numbering is different from the previous Gray code map. If we ignore the most significant digit of the 3digit numbers, the sequence 00, 01, 11, 10 is at the heading of both sub maps of the overlay map. The sequence of eight 3digit numbers is not Gray code. Though the sequence of four of the least significant two bits is. Let's put our 5variable Karnaugh Map to use. Design a circuit which has a 5bit binary input (A, B, C, D, E), with A being the MSB (Most Significant Bit). It must produce an output logic High for any prime number detected in the input data.
We show the solution above on the older Gray code (reflection) map for reference. The prime numbers are (1,2,3,5,7,11,13,17,19,23,29,31). Plot a 1 in each corresponding cell. Then, proceed with grouping of the cells. Finish by writing the simplified result. Note that 4cell group A'B'E consists of two pairs of cell on both sides of the mirror line. The same is true of the 2cell group AB'DE. It is a group of 2cells by being reflected about the mirror line. When using this version of the Kmap look for mirror images in the other half of the map. Out = A'B'E + B'C'E + A'C'DE + A'CD'E + ABCE + AB'DE + A'B'C'D Below we show the more common version of the 5variable map, the overlay map.
If we compare the patterns in the two maps, some of the cells in the right half of the map are moved around since the addressing across the top of the map is different. We also need to take a different approach at spotting commonality between the two halves of the map. Overlay one half of the map atop the other half. Any overlap from the top map to the lower map is a potential group. The figure below shows that group AB'DE is composed of two stacked cells. Group A'B'E consists of two stacked pairs of cells. For the A'B'E group of 4cells ABCDE = 00xx1 for the group. That is A,B,E are the same 001 respectively for the group. And, cd="xx" that is it varies, no commonality in cd="xx" for the group of 4cells. Since ABCDE = 00xx1, the group of 4cells is covered by A'B'XXE = A'B'E.
The above 5variable overlay map is shown stacked. An example of a six variable Karnaugh map follows. We have mentally stacked the four sub maps to see the group of 4cells corresponding to Out = C'F'
A magnitude comparator (used to illustrate a 6variable Kmap) compares two binary numbers, indicating if they are equal, greater than, or less than each other on three respective outputs. A three bit magnitude comparator has two inputs A_{2}A_{1}A_{0} and B_{2}B_{1}B_{0} An integrated circuit magnitude comparator (7485) would actually have four inputs, But, the Karnaugh map below needs to be kept to a reasonable size. We will only solve for the A>B output. Below, a 6variable Karnaugh map aids simplification of the logic for a 3bit magnitude comparator. This is an overlay type of map. The binary address code across the top and down the left side of the map is not a full 3bit Gray code. Though the 2bit address codes of the four sub maps is Gray code. Find redundant expressions by stacking the four sub maps atop one another (shown above). There could be cells common to all four maps, though not in the example below. It does have cells common to pairs of sub maps.
The A>B output above is ABC>XYZ on the map below.
Where ever ABC is greater than XYZ, a 1 is plotted. In the first line abc="000" cannot be greater than any of the values of XYZ. No 1s in this line. In the second line, abc="001", only the first cell abcxyz= 001000 is ABC greater than XYZ. A single 1 is entered in the first cell of the second line. The fourth line, abc="010", has a pair of 1s. The third line, abc="011" has three 1s. Thus, the map is filled with 1s in any cells where ABC is greater than XXZ. In grouping cells, form groups with adjacent sub maps if possible. All but one group of 16cells involves cells from pairs of the sub maps. Look for the following groups:
The group of 16cells, AX' occupies all of the lower right sub map; though, we don't circle it on the figure above. One group of 8cells is composed of a group of 4cells in the upper sub map overlaying a similar group in the lower left map. The second group of 8cells is composed of a similar group of 4cells in the right sub map overlaying the same group of 4cells in the lower left map. The four groups of 4cells are shown on the Karnaugh map above with the associated product terms. Along with the product terms for the two groups of 8cells and the group of 16cells, the final SumOfProducts reduction is shown, all seven terms. Counting the 1s in the map, there is a total of 16+6+6="28" ones. Before the Kmap logic reduction there would have been 28 product terms in our SOP output, each with 6inputs. The Karnaugh map yielded seven product terms of four or less inputs. This is really what Karnaugh maps are all about! The wiring diagram is not shown. However, here is the parts list for the 3bit magnitude comparator for ABC>XYZ using 4 TTL logic family parts:
