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. More... | |
Public Member Functions | |
write_blif_settings () | |
Standard constructor. More... | |
virtual void | operator() (const gate &g, truth_table_map &map) const |
Operator for transforming the gates into BLIF code. More... | |
Public Attributes | |
std::string | tmp_signal_name |
Prefix for the auxiliary variables which are created by the algorithm. More... | |
bool | blif_mv |
Sets if output should comply to BlifMV. More... | |
std::string | state_prefix |
Sets an state prefix for output signals. More... | |
bool | keep_constant_names |
Sets if constant signals should keep their name. More... | |
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 |
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
bool keep_constant_names |
Sets if constant signals should keep their name.
Keeps constant names, but only if they are unique.
Default value is false
std::string state_prefix |
Sets an state prefix for output signals.
Since states have both the same input and output name this prefix is prepended to the respective output names.
Default value is out_
std::string tmp_signal_name |
Prefix for the auxiliary variables which are created by the algorithm.
Default value is tmp