90 likes | 261 Views
EEE324 Digital Electronics. Lecture 5: Software fo r Digital Logic. Ian McCrum Room 5B18, 02890366364 IJ.McCrum@ulster.ac.uk http://www.eej.ulst.ac.uk/~ian/modules/EEE342. Logic Minimisation. Karnaugh Maps show graphically all places were the logic adjacency theorem can be applied.
E N D
EEE324 Digital Electronics Lecture 5:Software for Digital Logic Ian McCrum Room 5B18, 02890366364 IJ.McCrum@ulster.ac.uk http://www.eej.ulst.ac.uk/~ian/modules/EEE342
Logic Minimisation • Karnaugh Maps show graphically all places were the logic adjacency theorem can be applied. • There is also a tabular method known as the Quine McClusky algorithm. It builds exhaustive lists of • Implicants ( a group on a Kmap that contains 1s) • Prime impliants (a group not completely within another larger group) • Essential Prime implicants (contains terms not completely within another larger group) • The method then selects the best set of terms to “cover” all the ones required. The EPIs and an optimum subset of PIs. • There is an old DOS package called McBoole that can do QM efficiently for up to 16 inputs.
Limitations of the software • Both Kmaps and QM work on individual product terms, combining candidates to from implicants of fewer and fewer variables • In very large problems it is impractical to extract the set of canonical product terms. • A 100 input problem would have 2^100 possible input patterns (though we would work with less than half this number it is still a large number) • 1024 is 2^10, megabits=2^20 and gigabits 2^30 i.e a billion. • 2^100 is a thousand billion billion gigabits
ESPRESSO Software • Rather than expanding to a minterm list, this software examines logic terms looking for reductions • It may not find the best solution, it should find a “near-optimal” one. In practice it does badly on small problems where exhaustive solution is viable. • It (and McBoole) accepts inputs in a special form known as the BLIF. The Berkely Logic Interface Format.
The SIS suite of software • As well as logic minimisation we need to automatically generate sequential systems, this also needs computers for big problems.] • The Sequential Interactive Synthesis package of programs contains ESPRESSO and other s/w. It is from Berkely University and available on the web. • The ESPRESSO software is an example of a HEURISTIC algorithm; it guesses and searches, uses previous search results and stops when it thinks it is near enough… • The algebra is complex, uses cubes, sharp functions and a process of partial expansions, irredundant cover and reduction, the text “Logic Minimisation algorithms for VLSI synthesis” in the library covers the theory (well beyond the course) • Of interest is that parts of this software are found in commercial logic design systems.
Example of the PLA format of the BLIF The input part has 0,1,x for each input variable of the function. The 0 and 1 mean that the product term applies when this variable is 0 or 1. The x means that the product term applies when this variable is 0 and 1. The output part contains 0,1,d for each output variable. A don’t care d term is useful if minimising across multiple outputs. .i 3 ; only 1 space .o 4 ; between items 10x 101 ; unless a comment x01 100 110 110 11x 010 11x 010 110 100 x01 100 10x 101
McBoole and Sis are on my website • We will not run McBoole or SIS this year. • They require either linux or an early version of windows • They can be run using emulation or virtualisation technology such as dosbox? or Virtualbox