Settings for write_blif. More...
Public Types | |
typedef std::map< unsigned, std::map< std::vector < boost::optional< bool > >, bool > > | truth_table_map |
Stores truth tables. | |
Public Member Functions | |
write_blif_settings () | |
Standard constructor. | |
virtual void | operator() (const gate &g, truth_table_map &map) const |
Operator for transforming the gates into BLIF code. | |
Public Attributes | |
std::string | tmp_signal_name |
Prefix for the auxiliary variables which are created by the algorithm. | |
bool | blif_mv |
Sets if output should comply to BlifMV. |
Settings for write_blif.
typedef std::map<unsigned, std::map<std::vector<boost::optional<bool> >, bool> > truth_table_map |
Stores truth tables.
The key is the index of the respective target line. The value is a map itself, which maps input monoms to output values for that target.
Standard constructor.
Initializes default values
virtual void operator() | ( | const gate & | g, |
truth_table_map & | map | ||
) | const [virtual] |
Operator for transforming the gates into BLIF code.
By convention the first input signals are for the target lines and then the control lines. The number of output signals is the number of target lines. Only the cubes have to be printed, not the .names declaration.
This operator has to be overridden when new gate types should be supported.
The signature of this operator changed in RevKit version 1.1.1
g | The current g to be transformed |
map | Truth table map to be filled with cubes (check the source code for examples) (since 1.1.1) |
bool blif_mv |
Sets if output should comply to BlifMV.
In BlifMV spaces are inserted between the elements of the input cubes.
Default value is false
std::string tmp_signal_name |
Prefix for the auxiliary variables which are created by the algorithm.
Default value is tmp