next up previous contents
Next: The classes CircuitNetlist and Up: A CAD tool for Previous: Core engine   Contents


Code implementation

The whole tool has been written in C++. All the classes of the program are showed in appendix A and all the code details can be found in appendix B.

Here are reported the most important classes of the program:

The first class, CircuitNetlist, and its derived Circuit, contain the graph of the circuit, in which every node is a transistor and every edge is a connection between two transistor.

The class OptimizationAlgorithm is a virtual base class from which every new optimization algorithm should be derived. It provides the interface between the real class that implements the algorithm and the core engine. Every derived class should provide the method Run() that performs the optimizations.

The class EvaluationAlgorithm is again a virtual base class from which every new simulator should be derived; and again every derived class should provide the method Run(...) that performs the evaluation of all the objectives of the circuit, as delay, power consumption and so on.



Subsections
next up previous contents
Next: The classes CircuitNetlist and Up: A CAD tool for Previous: Core engine   Contents
marco+site@equars.com