GRASP—a new search algorithm for satisfiability
Proceedings of the 1996 IEEE/ACM international conference on Computer-aided design
Chaff: engineering an efficient SAT solver
Proceedings of the 38th annual Design Automation Conference
Efficient Computation of Recurrence Diameters
VMCAI 2003 Proceedings of the 4th International Conference on Verification, Model Checking, and Abstract Interpretation
Program Construction, International Summer Schoo
BerkMin: A Fast and Robust Sat-Solver
Proceedings of the conference on Design, automation and test in Europe
Efficient SAT-based unbounded symbolic model checking using circuit cofactoring
Proceedings of the 2004 IEEE/ACM International conference on Computer-aided design
A Method for Automatic Program Inversion Based on LR(0) Parsing
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
A formal approach to the protocol converter problem
Proceedings of the conference on Design, automation and test in Europe
Synthesizing complementary circuits automatically
Proceedings of the 2009 International Conference on Computer-Aided Design
Dimensions in program synthesis
Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming
Synthesizing complementary circuits automatically
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
A halting algorithm to determine the existence of decoder
Proceedings of the 2010 Conference on Formal Methods in Computer-Aided Design
Hi-index | 0.00 |
Complementary synthesis can automatically synthesize the decoder circuit of an encoder. However, its user needs to manually specify an assertion on some configuration pins to prevent the encoder from reaching the non-working states. To avoid this tedious job, we propose an automatic approach to infer this assertion. First, we propose a halting algorithm that can decide the existence of the decoder for every particular assertion. Second, for every invalid value of configuration pins that leads to the non-existence of the decoder, we use cofactoring and Craig interpolation to infer a new formula, which covers a larger set of such invalid values. This second step is repeated until all invalid values are covered by these inferred formulas. Finally, we obtain the final assertion by anding the inverses of all these inferred formulas. The decoder exists if and only if this final assertion is still satisfiable. To illustrate its usefulness, we have run our algorithm on several complex encoder circuits, including PCI-E and Ethernet. Experimental results show that our algorithm can always infer assertions for them.