1 / 28

Flexible Two-Level Boolean Minimizer BOOM‑II and Its Applications

Flexible Two-Level Boolean Minimizer BOOM‑II and Its Applications. Petr Fi š er, Hana Kub átová Department of Computer Science and Engineering Czech Technical University in Prague Karlovo n á m. 13, 121 35 Prague 2 e-mail: fiserp@fel.cvut.cz, kubatova@fel.cvut.cz. Outline. Introduction

yon
Download Presentation

Flexible Two-Level Boolean Minimizer BOOM‑II and Its Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Flexible Two-Level Boolean Minimizer BOOM‑II and Its Applications Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University in Prague Karlovo nám. 13, 121 35 Prague 2 e-mail: fiserp@fel.cvut.cz, kubatova@fel.cvut.cz

  2. Outline • Introduction • Brief Description of BOOM-II • Main Phases of BOOM-II • Experimental Results • Applications • Conclusions Euromicro DSD'06, Cavtat

  3. Introduction • BOOM-II is a heuristic multi-outputtwo-level Boolean minimizer • Combination of two minimizers general purpose minimizer • The performance is improved • Minimization process can be influenced by many constraints (decomposition, low-power design, DFT, …) Euromicro DSD'06, Cavtat

  4. BOOM-II Combination of BOOM and FC-Min Advantages & Drawbacks Euromicro DSD'06, Cavtat

  5. BOOM – CD Search • This is the main phase of BOOM • Produces a set of implicants satisfying the cover, not necessarily PIs • These implicants are then expanded into PIs • Can be very efficiently influenced to produce “good” implicants • Drawback: only single-output functions are considered Euromicro DSD'06, Cavtat

  6. BOOM - Implicant Reduction Reduces PIs into group implicants Very time-consuming for functions with many outputs  here is the problem Euromicro DSD'06, Cavtat

  7. Covering problem solution Creates an irredundant set of implicants covering the on-set Greedy heuristic is used Euromicro DSD'06, Cavtat

  8. FC-Min • Completely different approach to minimization • First, the cover of the on-set is found, then the implicants are generated for this cover • No PIs are produced, just the group implicants are found • Generates only the necessary set of group implicants – fast, low memory demands Euromicro DSD'06, Cavtat

  9. FC-Min – Find Cover • Computes rectangle cover of theon-set • Determines the number of product terms in the solution, not their structure • Independent on literals Euromicro DSD'06, Cavtat

  10. FC-Min – Find Cover Example PLA: 11010 10000 10000 11100 01001 01100 01111 01010 00110 00111 01110 00000 10110 00011 00001 01101 10101 10111 11100 10100 Euromicro DSD'06, Cavtat

  11. FC-Min – Find Implicants Phase Main Idea: When a term (cube) should cover a particular output vector, the corresponding input vector must be contained in this cube  Thus the minimumterm for ti must be constructed as a minimum supercube of all the input vectors corresponding to rows of ti Euromicro DSD'06, Cavtat

  12. t1 covers 4, 6 and 8 00110 10110 10101 -01-- FC-Min – Find Implicants Phase PLA: 0 11010 10000 1 10000 11100 2 01001 01100 3 01111 01010 4 00110 00111 5 01110 00000 6 10110 00011 7 00001 01101 8 10101 10111 9 11100 10100 Euromicro DSD'06, Cavtat

  13. BOOM-II • Most of the phases are randomized heuristics • Thus, repeated runs of the minimization process could yield different solutions • We repetitively run the minimizers, while alternating them and put all the implicants into a common pool • Then we solve CP • The ratio of FC-Min & BOOM runs can be adjusted – according to the nature of the problem Euromicro DSD'06, Cavtat

  14. Iterative Minimization Euromicro DSD'06, Cavtat

  15. BOOM-II Euromicro DSD'06, Cavtat

  16. Structure of the Solution Euromicro DSD'06, Cavtat

  17. Structure of the Solution All implicants Solution implicants • BOOM is better to generate PIs • FC-Min is better to generate group implicants • BOOM IR phase can be omitted Euromicro DSD'06, Cavtat

  18. Experimental Results Random problem: 300 inputs 5 outputs 200 care terms Euromicro DSD'06, Cavtat

  19. Experimental Results Random problem: 20 inputs 10 outputs 500 care terms Euromicro DSD'06, Cavtat

  20. Applications • Output grouping (decomposition) • Design for testability • Load balancing • … Euromicro DSD'06, Cavtat

  21. Applications Output grouping (single-level partitioning) Euromicro DSD'06, Cavtat

  22. Applications Output grouping (single-level partitioning) • Determine which outputs should stay together, to minimize the overall logics • Based on FC-Min • Grouping matrix is proposed Euromicro DSD'06, Cavtat

  23. Output Grouping • Based onGrouping Matrix G • Symmetric matrix of dimensions [m, m], where m is the number of output variables • The value G[i, j] defines the strength binding two output variables i and j together • It is constructed from the cover obtained in the Find Cover phase Euromicro DSD'06, Cavtat

  24. G-Matrix Derived from valid coverage of the on-set Euromicro DSD'06, Cavtat

  25. G-Matrix • This was a very simple example • Values greater than 1 are there in practice • Two outputs having the highest value in the matrix are grouped together • The precision can be refined by repeating the process (Find Cover) Euromicro DSD'06, Cavtat

  26. Influencing BOOM-II Run CD-Search • Selection of literals is based on their frequency of occurrence in the on-set • This “weight” can be somehow modified FC-Min Implicant Expansion • Prefer removing “unwanted” literals Covering problem solution • The selection function is modified Euromicro DSD'06, Cavtat

  27. Output Grouping - Example • Comparison with random grouping • Final logic synthesized by SIS and decomposed into 2-input NAND gates Euromicro DSD'06, Cavtat

  28. Conclusions • BOOM-II has been presented • Combination of two different approaches to implicant generation • Universal Boolean minimizer • The minimization process can be influenced to meet given constraints • Can be downloaded from http://service.felk.cvut.cz/vlsi/prj/BOOM Euromicro DSD'06, Cavtat

More Related