Skip to Main Content
SOCRATES is a rule-based expert system that optimizes combinational logic for a specific target technology. The system performs substitutions of equivalent gate configurations, thereby reducing the overall area of the implementation and improving the speed of the design. A control mechanism uses various backup strategies to choose the rules applied to the circuit. Users can easily extend the library of transformation rules through a rule generation module that automatically encodes rules and inserts them into the knowledge base. Timing constraints placed on the circuit can be modified to allow the designer to explore a large design space in a matter of minutes. Implementations generated by the system are comparable in area and speed to circuits designed by experts.