Add Loc struct for x/y/z bel locations
Signed-off-by: Clifford Wolf <clifford@clifford.at>
This commit is contained in:
parent
2eb783d626
commit
c0f1af87f6
@ -157,6 +157,11 @@ struct GraphicElement
|
|||||||
std::string text;
|
std::string text;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct Loc
|
||||||
|
{
|
||||||
|
int x = -1, y = -1, z = -1;
|
||||||
|
};
|
||||||
|
|
||||||
NEXTPNR_NAMESPACE_END
|
NEXTPNR_NAMESPACE_END
|
||||||
|
|
||||||
#include "archdefs.h"
|
#include "archdefs.h"
|
||||||
@ -310,6 +315,10 @@ struct Context : Arch
|
|||||||
|
|
||||||
Context(ArchArgs args) : Arch(args) {}
|
Context(ArchArgs args) : Arch(args) {}
|
||||||
|
|
||||||
|
BelId getBelByLocation(Loc loc) const {
|
||||||
|
return getBelByLocation(loc.x, loc.y, loc.z);
|
||||||
|
}
|
||||||
|
|
||||||
// --------------------------------------------------------------
|
// --------------------------------------------------------------
|
||||||
|
|
||||||
// provided by router1.cc
|
// provided by router1.cc
|
||||||
|
31
ice40/arch.h
31
ice40/arch.h
@ -424,7 +424,34 @@ struct Arch : BaseCtx
|
|||||||
return range;
|
return range;
|
||||||
}
|
}
|
||||||
|
|
||||||
BelRange getBelsAtSameTile(BelId bel) const;
|
Loc getBelLocation(BelId bel) const
|
||||||
|
{
|
||||||
|
Loc loc;
|
||||||
|
loc.x = chip_info->bel_data[bel.index].x;
|
||||||
|
loc.y = chip_info->bel_data[bel.index].y;
|
||||||
|
loc.z = chip_info->bel_data[bel.index].z;
|
||||||
|
return loc;
|
||||||
|
}
|
||||||
|
|
||||||
|
BelId getBelByLocation(int x, int y, int z) const
|
||||||
|
{
|
||||||
|
// FIXME
|
||||||
|
return BelId();
|
||||||
|
}
|
||||||
|
|
||||||
|
BelRange getBelsByTile(int x, int y) const
|
||||||
|
{
|
||||||
|
BelRange range;
|
||||||
|
// FIXME
|
||||||
|
return range;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool getBelGlobalBuf(BelId bel) const
|
||||||
|
{
|
||||||
|
return chip_info->bel_data[bel.index].type == TYPE_SB_GB;
|
||||||
|
}
|
||||||
|
|
||||||
|
BelRange getBelsAtSameTile(BelId bel) const NPNR_DEPRECATED;
|
||||||
|
|
||||||
BelType getBelType(BelId bel) const
|
BelType getBelType(BelId bel) const
|
||||||
{
|
{
|
||||||
@ -655,7 +682,7 @@ struct Arch : BaseCtx
|
|||||||
|
|
||||||
// -------------------------------------------------
|
// -------------------------------------------------
|
||||||
|
|
||||||
void estimatePosition(BelId bel, int &x, int &y, bool &gb) const;
|
void estimatePosition(BelId bel, int &x, int &y, bool &gb) const NPNR_DEPRECATED;
|
||||||
delay_t estimateDelay(WireId src, WireId dst) const;
|
delay_t estimateDelay(WireId src, WireId dst) const;
|
||||||
delay_t getDelayEpsilon() const { return 20; }
|
delay_t getDelayEpsilon() const { return 20; }
|
||||||
delay_t getRipupDelayPenalty() const { return 200; }
|
delay_t getRipupDelayPenalty() const { return 200; }
|
||||||
|
Loading…
Reference in New Issue
Block a user