aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/archapi.md7
-rw-r--r--docs/netlist.md1
2 files changed, 8 insertions, 0 deletions
diff --git a/docs/archapi.md b/docs/archapi.md
index df7cd0a1..0f0e6181 100644
--- a/docs/archapi.md
+++ b/docs/archapi.md
@@ -13,6 +13,7 @@ The contents of `ArchRanges` is as follows:
|`TileBelsRangeT` | `BelId` |
|`BelAttrsRangeT` | std::pair<IdString, std::string> |
|`BelPinsRangeT` | `IdString` |
+|`CellBelPinRangeT` | `IdString` |
|`AllWiresRangeT` | `WireId` |
|`DownhillPipRangeT` | `PipId` |
|`UphillPipRangeT` | `PipId` |
@@ -250,6 +251,12 @@ Return the type (input/output/inout) of the given bel pin.
Return a list of all pins on that bel.
+### CellBelPinRangeT getBelPinsForCellPin(CellInfo *cell_info, IdString pin) const
+
+Return the list of bel pin names that a given cell pin should be routed to. In most cases there will be a single bel pin for each cell pin; and output pins must _always_ have only one bel pin associated with them.
+
+*BaseArch default: returns a one-element array containing `pin`*
+
Wire Methods
------------
diff --git a/docs/netlist.md b/docs/netlist.md
index 763f7d40..2e989a33 100644
--- a/docs/netlist.md
+++ b/docs/netlist.md
@@ -52,6 +52,7 @@ Relevant fields from a netlist point of view are:
- `nets` is a map from net name to a `unique_ptr<NetInfo>` containing net data
- `net_aliases` maps every alias for a net to its canonical name (i.e. index into `nets`) - net aliases often occur when a net has a name both inside a submodule and higher level module
- `ports` is a list of top level ports, primarily used during JSON export (e.g. to produce a useful post-PnR simulation model). Unlike other ports, top level ports are _not_ added to the driver or users of any connected net. In this sense, nets connected to top-level ports are _dangling_. However, top level ports _can_ still see their connected net as part of their `PortInfo`.
+ - `port_cells` is a map of top level port cells. This is a subset of the `cells` maps containing only ports.
Context also has a method `check()` that ensures all of the contracts met above are satisfied. It is strongly suggested to run this after any pass that may modify the netlist.