aboutsummaryrefslogtreecommitdiffstats
path: root/nexus/arch.h
diff options
context:
space:
mode:
Diffstat (limited to 'nexus/arch.h')
-rw-r--r--nexus/arch.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/nexus/arch.h b/nexus/arch.h
index 89723853..886ee557 100644
--- a/nexus/arch.h
+++ b/nexus/arch.h
@@ -258,6 +258,8 @@ NPNR_PACKED_STRUCT(struct ChipInfoPOD {
uint16_t width;
uint16_t height;
uint32_t num_tiles;
+ uint32_t num_pads;
+ uint32_t num_packages;
RelPtr<GridLocationPOD> grid;
RelPtr<GlobalInfoPOD> globals;
RelPtr<PadInfoPOD> pads;
@@ -827,6 +829,8 @@ struct Arch : BaseCtx
const DatabasePOD *db;
const ChipInfoPOD *chip_info;
+ int package_idx;
+
// Binding states
struct LogicTileStatus
{
@@ -1430,6 +1434,13 @@ struct Arch : BaseCtx
// -------------------------------------------------
+ const PadInfoPOD *get_pin_data(const std::string &pin) const;
+ Loc get_pad_loc(const PadInfoPOD *pad) const;
+ BelId get_pin_bel(const std::string &pin) const;
+ const PadInfoPOD *get_bel_pad(BelId bel) const;
+
+ // -------------------------------------------------
+
// List of IO constraints, used by PDC parser
std::unordered_map<IdString, std::unordered_map<IdString, Property>> io_attr;