|
| LatchInst (std::string inst_name, std::map< std::string, std::string > port_conns, Type type, vtr::LogicValue init_value, double tcq=std::numeric_limits< double >::quiet_NaN(), double tsu=std::numeric_limits< double >::quiet_NaN(), double thld=std::numeric_limits< double >::quiet_NaN()) |
|
void | print_blif (std::ostream &os, size_t &, int depth=0) override |
| Print the current instance in blif format. More...
|
|
void | print_verilog (std::ostream &os, int depth=0) override |
| Print the current instanse in Verilog, see print_blif() for argument descriptions. More...
|
|
void | print_sdf (std::ostream &os, int depth=0) override |
| Print the current instanse in SDF, see print_blif() for argument descriptions. More...
|
|
virtual | ~Instance ()=default |
|
◆ Type
Types of latches (defined by BLIF)
Enumerator |
---|
RISING_EDGE | |
FALLING_EDGE | |
ACTIVE_HIGH | |
ACTIVE_LOW | |
ASYNCHRONOUS | |
◆ LatchInst()
LatchInst::LatchInst |
( |
std::string |
inst_name, |
|
|
std::map< std::string, std::string > |
port_conns, |
|
|
Type |
type, |
|
|
vtr::LogicValue |
init_value, |
|
|
double |
tcq = std::numeric_limits<double>::quiet_NaN() , |
|
|
double |
tsu = std::numeric_limits<double>::quiet_NaN() , |
|
|
double |
thld = std::numeric_limits<double>::quiet_NaN() |
|
) |
| |
|
inline |
- Parameters
-
inst_name | Name of this instance |
port_conns | Instance's port-to-net connections |
type | Type of this latch |
init_value | Initial value of the latch |
tcq | Clock-to-Q delay |
tsu | Setup time |
thld | Hold time |
◆ print_blif()
void LatchInst::print_blif |
( |
std::ostream & |
os, |
|
|
size_t & |
unconn_count, |
|
|
int |
depth = 0 |
|
) |
| |
|
inlineoverridevirtual |
Print the current instance in blif format.
- Parameters
-
os | The output stream to print to |
unconn_count | The current count of unconnected nets. BLIF has limitations requiring unconnected nets to be used to represent unconnected ports. To allow unique naming of these nets unconn_count is used to uniquify these names. Whenever creating an unconnected net (and using unconn_count to uniquify its name in the file) unconn_count should be incremented. |
depth | Current indentation depth. This is used to figure-out how much indentation should be applied. This is purely for cosmetic formatting. Use indent() for generating consistent indentation. |
Implements Instance.
◆ print_sdf()
void LatchInst::print_sdf |
( |
std::ostream & |
os, |
|
|
int |
depth = 0 |
|
) |
| |
|
inlineoverridevirtual |
◆ print_verilog()
void LatchInst::print_verilog |
( |
std::ostream & |
os, |
|
|
int |
depth = 0 |
|
) |
| |
|
inlineoverridevirtual |
Print the current instanse in Verilog, see print_blif() for argument descriptions.
Implements Instance.
◆ operator<<
std::ostream& operator<< |
( |
std::ostream & |
os, |
|
|
const Type & |
type |
|
) |
| |
|
friend |
◆ operator>>
std::istream& operator>> |
( |
std::istream & |
is, |
|
|
Type & |
type |
|
) |
| |
|
friend |
◆ initial_value_
vtr::LogicValue LatchInst::initial_value_ |
|
private |
◆ instance_name_
std::string LatchInst::instance_name_ |
|
private |
◆ port_connections_
std::map<std::string, std::string> LatchInst::port_connections_ |
|
private |
◆ tcq_
◆ thld_
◆ tsu_
◆ type_
The documentation for this class was generated from the following file: