From f5f7ef68649e873e6e5dc912544ed8abb5eb8fc3 Mon Sep 17 00:00:00 2001 From: gatecat Date: Sun, 3 Oct 2021 19:33:07 +0100 Subject: mistral: Adding support for MLABs as memory Signed-off-by: gatecat --- mistral/arch.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'mistral/arch.h') diff --git a/mistral/arch.h b/mistral/arch.h index a808f69d..77a35caf 100644 --- a/mistral/arch.h +++ b/mistral/arch.h @@ -437,6 +437,7 @@ struct Arch : BaseArch bool isValidBelForCellType(IdString cell_type, BelId bel) const override; BelBucketId getBelBucketForCellType(IdString cell_type) const override; + BelBucketId getBelBucketForBel(BelId bel) const override; // ------------------------------------------------- @@ -469,6 +470,7 @@ struct Arch : BaseArch bool is_alm_legal(uint32_t lab, uint8_t alm) const; // lab.cc bool is_lab_ctrlset_legal(uint32_t lab) const; // lab.cc bool check_lab_input_count(uint32_t lab) const; // lab.cc + bool check_mlab_groups(uint32_t lab) const; // lab.cc void assign_comb_info(CellInfo *cell) const; // lab.cc void assign_ff_info(CellInfo *cell) const; // lab.cc @@ -480,6 +482,10 @@ struct Arch : BaseArch uint64_t compute_lut_mask(uint32_t lab, uint8_t alm); // lab.cc + // Keeping track of unique MLAB write ports to assign them indices + dict get_mlab_key(const CellInfo *cell, bool include_raddr = false) const; // lab.cc + mutable idict> mlab_groups; + // ------------------------------------------------- bool is_io_cell(IdString cell_type) const; // io.cc -- cgit v1.2.3