diff options
author | David Shah <davey1576@gmail.com> | 2018-08-09 10:49:11 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-09 10:49:11 +0200 |
commit | ed602baa06959ae69cc97fa9e38ce7e9d6c7cd5f (patch) | |
tree | e5bb285ea62df09c30f7cd6dce7c2fe0fcb97f6f /docs/archapi.md | |
parent | 41e05c95aae3b9d3397ec28d8836c40d089386e2 (diff) | |
parent | 834f7e4bfdbfaa8fbb3b51cef18c734176215c83 (diff) | |
download | nextpnr-ed602baa06959ae69cc97fa9e38ce7e9d6c7cd5f.tar.gz nextpnr-ed602baa06959ae69cc97fa9e38ce7e9d6c7cd5f.tar.bz2 nextpnr-ed602baa06959ae69cc97fa9e38ce7e9d6c7cd5f.zip |
Merge pull request #42 from YosysHQ/floorplan
Add basic data structures for floorplanning
Diffstat (limited to 'docs/archapi.md')
-rw-r--r-- | docs/archapi.md | 19 |
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. |