aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5/arch.h
diff options
context:
space:
mode:
authorDavid Shah <davey1576@gmail.com>2018-07-18 15:34:22 +0200
committerDavid Shah <davey1576@gmail.com>2018-07-18 15:34:22 +0200
commit5393841c669775eab5a5e5fde9be2bab3ec67879 (patch)
tree443a2ff087b456113f322c4ef6ae82b86d67093a /ecp5/arch.h
parent08ceb8a059d96a0546c02eb3ee75e46093e2ee44 (diff)
downloadnextpnr-5393841c669775eab5a5e5fde9be2bab3ec67879.tar.gz
nextpnr-5393841c669775eab5a5e5fde9be2bab3ec67879.tar.bz2
nextpnr-5393841c669775eab5a5e5fde9be2bab3ec67879.zip
ecp5: Adding PIO data to chipdb
Signed-off-by: David Shah <davey1576@gmail.com>
Diffstat (limited to 'ecp5/arch.h')
-rw-r--r--ecp5/arch.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/ecp5/arch.h b/ecp5/arch.h
index 4bb71b47..5158fe5c 100644
--- a/ecp5/arch.h
+++ b/ecp5/arch.h
@@ -96,13 +96,36 @@ NPNR_PACKED_STRUCT(struct LocationTypePOD {
RelPtr<PipInfoPOD> pip_data;
});
+NPNR_PACKED_STRUCT(struct PIOInfoPOD {
+ Location abs_loc;
+ int32_t bel_index;
+ RelPtr<char> function_name;
+ int16_t bank;
+ int16_t padding;
+});
+
+NPNR_PACKED_STRUCT(struct PackagePinPOD {
+ RelPtr<char> name;
+ Location abs_loc;
+ int32_t bel_index;
+});
+
+NPNR_PACKED_STRUCT(struct PackageInfoPOD {
+ RelPtr<char> name;
+ int32_t num_pins;
+ RelPtr<PackagePinPOD> pin_data;
+});
+
NPNR_PACKED_STRUCT(struct ChipInfoPOD {
int32_t width, height;
int32_t num_tiles;
int32_t num_location_types;
+ int32_t num_packages, num_pios;
RelPtr<LocationTypePOD> locations;
RelPtr<int32_t> location_type;
RelPtr<RelPtr<char>> tiletype_names;
+ RelPtr<PackageInfoPOD> package_info;
+ RelPtr<PIOInfoPOD> pio_info;
});
#if defined(_MSC_VER)