Template Struct Netlist

Inheritance Relationships

Derived Type

Template Parameter Order

  1. typename graph_t

Struct Documentation

template<typename graph_t>
struct Netlist

Netlist.

Netlist is implemented by xn::Graph, which is a networkx-like graph.

Subclassed by HierNetlist< graph_t >

Public Types

using nodeview_t = typename graph_t::nodeview_t
using node_t = typename graph_t::node_t
using index_t = typename nodeview_t::key_type

Public Functions

Netlist(graph_t G, const nodeview_t &modules, const nodeview_t &nets)

Construct a new Netlist object.

Parameters
  • G[in]

  • module_list[in]

  • net_list[in]

  • module_fixed[in]

  • G[in]

  • modules[in]

  • nets[in]

Template Parameters
  • nodeview_t

  • nodemap_t

Netlist(graph_t G, uint32_t numModules, uint32_t numNets)

Construct a new Netlist object.

Parameters
  • G[in]

  • num_modules[in]

  • num_nets[in]

inline auto begin() const
inline auto end() const
inline auto number_of_modules() const -> size_t

Get the number of modules.

Returns

size_t

inline auto number_of_nets() const -> size_t

Get the number of nets.

Returns

size_t

inline auto number_of_nodes() const -> size_t

Get the number of nodes.

Returns

size_t

inline auto get_max_degree() const -> size_t

Get the max degree.

Returns

index_t

Returns

size_t

inline auto get_max_net_degree() const -> size_t

Get the max net degree.

Returns

index_t

inline auto get_module_weight(const node_t &v) const -> unsigned int

Get the module weight.

Parameters

v[in]

Returns

int

inline auto get_net_weight(const node_t&) const -> int

Get the net weight.

Returns

int

Public Members

graph_t G
nodeview_t modules
nodeview_t nets
size_t num_modules = {}
size_t num_nets = {}
size_t num_pads = 0U
size_t max_degree = {}
size_t max_net_degree = {}
std::vector<unsigned int> module_weight
bool has_fixed_modules = {}
py::set<node_t> module_fixed