diff options
author | Sergiusz Bazanski <q3k@q3k.org> | 2018-07-26 16:22:19 +0100 |
---|---|---|
committer | Sergiusz Bazanski <q3k@q3k.org> | 2018-07-26 16:22:19 +0100 |
commit | 4a21436dfa98caa458a8e6e130cf1f6305968650 (patch) | |
tree | 4e1dd3f04e5b671acf958eba6f7dc930ae4d1547 /ecp5/arch.h | |
parent | c897c0ca9afab1d758f5c1b77312e77057a4c814 (diff) | |
parent | 03f92948d1504c32049da065c0e73e01f96d8033 (diff) | |
download | nextpnr-4a21436dfa98caa458a8e6e130cf1f6305968650.tar.gz nextpnr-4a21436dfa98caa458a8e6e130cf1f6305968650.tar.bz2 nextpnr-4a21436dfa98caa458a8e6e130cf1f6305968650.zip |
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr
Diffstat (limited to 'ecp5/arch.h')
-rw-r--r-- | ecp5/arch.h | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/ecp5/arch.h b/ecp5/arch.h index 4400db5e..d9d29c76 100644 --- a/ecp5/arch.h +++ b/ecp5/arch.h @@ -98,7 +98,7 @@ NPNR_PACKED_STRUCT(struct LocationTypePOD { }); NPNR_PACKED_STRUCT(struct PIOInfoPOD { - Location abs_loc; + LocationPOD abs_loc; int32_t bel_index; RelPtr<char> function_name; int16_t bank; @@ -107,7 +107,7 @@ NPNR_PACKED_STRUCT(struct PIOInfoPOD { NPNR_PACKED_STRUCT(struct PackagePinPOD { RelPtr<char> name; - Location abs_loc; + LocationPOD abs_loc; int32_t bel_index; }); @@ -117,6 +117,26 @@ NPNR_PACKED_STRUCT(struct PackageInfoPOD { RelPtr<PackagePinPOD> pin_data; }); +enum TapDirection : int8_t +{ + TAP_DIR_LEFT = 0, + TAP_DIR_RIGHT = 1 +}; + +enum GlobalQuadrant : int8_t +{ + QUAD_UL = 0, + QUAD_UR = 1, + QUAD_LL = 2, + QUAD_LR = 3, +}; + +NPNR_PACKED_STRUCT(struct GlobalInfoPOD { + int16_t tap_col; + TapDirection tap_dir; + GlobalQuadrant quad; +}); + NPNR_PACKED_STRUCT(struct ChipInfoPOD { int32_t width, height; int32_t num_tiles; @@ -124,6 +144,7 @@ NPNR_PACKED_STRUCT(struct ChipInfoPOD { int32_t num_packages, num_pios; RelPtr<LocationTypePOD> locations; RelPtr<int32_t> location_type; + RelPtr<GlobalInfoPOD> location_glbinfo; RelPtr<RelPtr<char>> tiletype_names; RelPtr<PackageInfoPOD> package_info; RelPtr<PIOInfoPOD> pio_info; @@ -517,6 +538,8 @@ struct Arch : BaseCtx return id(name.str()); } + IdString getWireType(WireId wire) const { return IdString(); } + uint32_t getWireChecksum(WireId wire) const { return wire.index; } void bindWire(WireId wire, IdString net, PlaceStrength strength) @@ -595,6 +618,8 @@ struct Arch : BaseCtx PipId getPipByName(IdString name) const; IdString getPipName(PipId pip) const; + IdString getPipType(PipId pip) const { return IdString(); } + uint32_t getPipChecksum(PipId pip) const { return pip.index; } void bindPip(PipId pip, IdString net, PlaceStrength strength) |