Ophidian
 All Classes Namespaces Functions
Public Member Functions | List of all members
ophidian::timingdriven_placement::timingdriven_placement Class Reference

Public Member Functions

 timingdriven_placement (const std::string &dot_verilog_file, const std::string &dot_def_file, const std::string &dot_lef_file, const std::string m_dot_lib_late, const std::string m_dot_lib_early, double clock_in_ps)
 
Cell cell_find (std::string name) const
 Finds a Cell by its name.
 
std::string cell_name (Cell c) const
 Gets the name of a cell.
 
std::size_t cell_lookup (Cell c) const
 
const std::vector< Pin > & cell_pins (Cell c) const
 
bounds< CellIterator > cells () const
 Gets the cells. More...
 
Net net_find (std::string name) const
 Finds a Net by its name. More...
 
std::string net_name (Net n) const
 Gets the name of a net.
 
const std::vector< Pin > & net_pins (Net net) const
 Gets the pin of a net.
 
entity_system::entity_index net_lookup (Net net) const
 
void net_register_property (entity_system::property &p)
 
bounds< NetIterator > nets () const
 Gets the nets. More...
 
std::string pin_name (Pin pin) const
 Gets the name of a pin.
 
Net pin_net (Pin pin) const
 Gets the net of a pin.
 
std::size_t pin_lookup (Pin pin) const
 
Cell pin_owner (Pin pin) const
 
bounds< PinIterator > pins () const
 Gets the pins. More...
 
void place_cell (Cell cell, Point destination)
 Places a cell in a position.
 
Point cell_position (Cell cell) const
 Gets the cell's position.
 
Geometry cell_geometry (Cell cell) const
 Gets the cell's geometry. More...
 
Point pin_position (Pin pin) const
 
void update_timing ()
 Updates the timing information.
 
timing::TimeType late_wns () const
 
timing::TimeType early_wns () const
 
timing::TimeType late_tns () const
 
timing::TimeType early_tns () const
 
timing::TimeType early_rise_slack (Pin p) const
 
timing::TimeType early_fall_slack (Pin p) const
 
timing::TimeType late_rise_slack (Pin p) const
 
timing::TimeType late_fall_slack (Pin p) const
 
timing::TimeType early_rise_arrival (Pin p) const
 
timing::TimeType early_fall_arrival (Pin p) const
 
timing::TimeType late_rise_arrival (Pin p) const
 
timing::TimeType late_fall_arrival (Pin p) const
 
timing::TimeType early_rise_slew (Pin p) const
 
timing::TimeType early_fall_slew (Pin p) const
 
timing::TimeType late_rise_slew (Pin p) const
 
timing::TimeType late_fall_slew (Pin p) const
 
const timing::endpointstiming_endpoints () const
 

Member Function Documentation

Geometry ophidian::timingdriven_placement::timingdriven_placement::cell_geometry ( Cell  cell) const
inline
Parameters
thecell to retrieve the geometry
Returns
the cell geometry, translated to the cell position
bounds<CellIterator> ophidian::timingdriven_placement::timingdriven_placement::cells ( ) const
inline
Returns
bounds<CellIterator> of Netlist's Cell Entity System
Net ophidian::timingdriven_placement::timingdriven_placement::net_find ( std::string  name) const
inline
Parameters
namethe name of the net
Returns
Net entity representing the Net you are looking for, an exception is thrown if there is no net called name
bounds<NetIterator> ophidian::timingdriven_placement::timingdriven_placement::nets ( ) const
inline
Returns
bounds<NetIterator> of Netlist's Net Entity System
bounds<PinIterator> ophidian::timingdriven_placement::timingdriven_placement::pins ( ) const
inline
Returns
bounds<PinIterator> of Netlist's Pin Entity System

The documentation for this class was generated from the following files: