Title :
Streaming BDD manipulation
Author :
Minato, Shin-ichi
Author_Institution :
Network Innovation Labs., Nippon Telegraph & Telephone, Yokosuka, Japan
fDate :
5/1/2002 12:00:00 AM
Abstract :
Binary decision diagrams (BDDs) are commonly used for handling Boolean functions because of their excellent efficiency in terms of time and space. However, the conventional BDD manipulation algorithm is strongly based on the hash table technique, so it always encounters the memory overflow problem when handling large-scale BDD data. This paper proposes a new streaming BDD manipulation method that never causes memory overflow or swap out. This method allows us to handle very large-scale BDD stream data beyond the memory limitation. Our method can be characterized as follows: (1) it gives a continuous tradeoff curve between memory usage and stream data length, (2) valid solutions for a partial Boolean space can be obtained if we break the process before finishing, and (3) easily accelerated by pipelined multiprocessing. An experimental result demonstrates that we can succeed in finding a number of solutions to a SAT problem using a commodity PC with a 64 MB memory, where as the conventional BDD manipulator would have required a 100 GB memory. BDD manipulation has been considered as an intensively memory-consuming procedure, but now we can also utilize the hard disk and network resources as well. The method leads to a new approach to BDD manipulation
Keywords :
Boolean functions; VLSI; binary decision diagrams; integrated circuit design; logic CAD; microcomputer applications; pipeline processing; workstation clusters; 64 MB; Boolean functions; SAT problem; binary decision diagrams; commodity PC; hard disk; memory usage; network resources; partial Boolean space; pipelined multiprocessing; stream data length; streaming BDD manipulation; Binary decision diagrams;
Journal_Title :
Computers, IEEE Transactions on
DOI :
10.1109/TC.2002.1004587