aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2018-08-08 10:27:08 +0200
committerDavid Shah <davey1576@gmail.com>2018-08-09 10:39:53 +0200
commit5ddde5c49ffaf6c2f827e9805caac0b7dd43f4a0 (patch)
tree3ce490a0df0ddce0487277cee8f55720247f8178 /docs
parenta9b6543361ba35202cbe6c6c16860c3e8a388bc4 (diff)
downloadnextpnr-5ddde5c49ffaf6c2f827e9805caac0b7dd43f4a0.tar.gz
nextpnr-5ddde5c49ffaf6c2f827e9805caac0b7dd43f4a0.tar.bz2
nextpnr-5ddde5c49ffaf6c2f827e9805caac0b7dd43f4a0.zip
Add pip locations
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Diffstat (limited to 'docs')
-rw-r--r--docs/archapi.md19
1 files changed, 14 insertions, 5 deletions
diff --git a/docs/archapi.md b/docs/archapi.md
index df2bc468..473cdd2e 100644
--- a/docs/archapi.md
+++ b/docs/archapi.md
@@ -74,15 +74,19 @@ Return a string representation of the ArchArgs that was used to construct this o
### int getGridDimX() const
-Get grid X dimension. All bels must have Y coordinates in the range `0 .. getGridDimX()-1` (inclusive).
+Get grid X dimension. All bels and pips must have Y coordinates in the range `0 .. getGridDimX()-1` (inclusive).
### int getGridDimY() const
-Get grid Y dimension. All bels must have Y coordinates in the range `0 .. getGridDimY()-1` (inclusive).
+Get grid Y dimension. All bels and pips must have Y coordinates in the range `0 .. getGridDimY()-1` (inclusive).
-### int getTileDimZ(int x, int y) const
+### int getTileBelDimZ(int x, int y) const
-Get Z dimension for the specified tile. All bels with the specified X and Y coordinates must have a Z coordinate in the range `0 .. getTileDimZ(X,Y)-1` (inclusive).
+Get Z dimension for the specified tile for bels. All bels with at specified X and Y coordinates must have a Z coordinate in the range `0 .. getTileDimZ(X,Y)-1` (inclusive).
+
+### int getTilePipDimZ(int x, int y) const
+
+Get Z dimension for the specified tile for pips. All pips with at specified X and Y coordinates must have a Z coordinate in the range `0 .. getTileDimZ(X,Y)-1` (inclusive).
Bel Methods
-----------
@@ -97,7 +101,7 @@ Get the name for a bel. (Bel names must be unique.)
### Loc getBelLocation(BelId bel) const
-Get the X/Y/Z location of a given bel.
+Get the X/Y/Z location of a given bel. Each bel must have a unique X/Y/Z location.
### BelId getBelByLocation(Loc loc) const
@@ -238,6 +242,11 @@ Get the name for a pip. (Pip names must be unique.)
Get the type of a pip. Pip types are purely informal and
implementations may simply return `IdString()`.
+### Loc getPipLocation(PipId pip) const
+
+Get the X/Y/Z location of a given pip. Pip locations do not need to be unique, and in most cases they aren't. So
+for pips a X/Y/Z location refers to a group of pips, not an individual pip.
+
### uint32\_t getPipChecksum(PipId pip) const
Return a (preferably unique) number that represents this pip. This is used in design state checksum calculations.