Tytuł pozycji:
Wykorzystanie dwupoziomowej optymalizacji do poprawy wyników syntezy z wykorzystaniem BDD
W artykule przedstawiona jest koncepcja syntezy ukierunkowanej na zrównoważoną optymalizację powierzchni i prędkości działania układu. Pierwszym etapem syntezy jest dekompozycja wierszowa wykorzystująca BDD, ukierunkowana na struktury PAL. Celem dekompozycji jest minimalizacja liczby bloków logicznych struktury programowalnej. Drugi etap syntezy jest ukierunkowany na optymalizację szybkości działania układu. Istotą dwupoziomowej optymalizacji jest odpowiednie wykorzystanie trójstanowych buforów wyjściowych. Uzyskane rezultaty eksperymentów dowodzą szczególnej efektywności proponowanych rozwiązań dla struktur CPLD zbudowanych z bloków typu PAL o niewielkiej liczbie iloczynów.
This paper presents a concept of the original method of two-stage BDD-based decomposition combined with two-level PAL-oriented optimization. The aim of the proposed approach is oriented on the balanced (speed/area) optimization. The first step of the method is original PAL-oriented decomposition. The presented non-standard decomposition provides minimization of the implemented circuit area and reduction of necessary logic blocks in the programmable structure. This decomposition consists in sequential search for an input partition providing feasibility of implementation of the free block in one PAL-based logic block, containing a predefined number of product terms. In the presented algorithms the Reduced Ordered Binary Diagrams were used as an efficient representation of logic functions. The partitioning of the variables in a partition matrix is equivalent to the cut in the ROBDD diagram representing the logic function. To efficiently approximate the number of product terms in a sum of product form, the concept of path counting was developed. The second step of the proposed logic synthesis is oriented to the speed optimization. The original two-level optimization is based on utilizing tri-state buffers. The results of experiments prove that the presented approach is especially effective for CPLD structures which consist of PAL-based logic blocks containing a low number of product terms