Make logic cell positioning a constant

Signed-off-by: David Shah <davey1576@gmail.com>
This commit is contained in:
David Shah 2018-07-09 17:00:54 +02:00
parent b5cf1c8257
commit 132c5b5019
3 changed files with 12 additions and 6 deletions

View File

@ -426,10 +426,10 @@ std::vector<GraphicElement> Arch::getBelGraphics(BelId bel) const
if (bel_type == TYPE_ICESTORM_LC) {
GraphicElement el;
el.type = GraphicElement::G_BOX;
el.x1 = chip_info->bel_data[bel.index].x + 0.82;
el.x2 = chip_info->bel_data[bel.index].x + 0.92;
el.y1 = chip_info->bel_data[bel.index].y + 0.45 + (chip_info->bel_data[bel.index].z) * (0.5 / 8);
el.y2 = chip_info->bel_data[bel.index].y + 0.5 + (chip_info->bel_data[bel.index].z) * (0.5 / 8);
el.x1 = chip_info->bel_data[bel.index].x + logic_cell_x1;
el.x2 = chip_info->bel_data[bel.index].x + logic_cell_x2;
el.y1 = chip_info->bel_data[bel.index].y + logic_cell_y1 + (chip_info->bel_data[bel.index].z) * logic_cell_pitch;
el.y2 = chip_info->bel_data[bel.index].y + logic_cell_y2 + (chip_info->bel_data[bel.index].z) * logic_cell_pitch;
el.z = 0;
ret.push_back(el);

View File

@ -262,8 +262,8 @@ void gfxTileWire(std::vector<GraphicElement> &g, int x, int y, GfxTileWireId id)
GraphicElement el;
el.type = GraphicElement::G_LINE;
el.x1 = x + lc_lut_swbox_x2;
el.x2 = x + 0.82;
el.y1 = y + 0.4675 + (0.005 * input) + z * (0.5 / 8);
el.x2 = x + logic_cell_x1;
el.y1 = y + 0.4675 + (0.005 * input) + z * logic_cell_pitch;
el.y2 = el.y1;
g.push_back(el);
}

View File

@ -59,6 +59,12 @@ const float span4v_swbox_x2 = 0.375;
const float span4v_swbox_y1 = 0.300;
const float span4v_swbox_y2 = 0.400;
const float logic_cell_x1 = 0.82;
const float logic_cell_x2 = 0.92;
const float logic_cell_y1 = 0.45;
const float logic_cell_y2 = 0.50;
const float logic_cell_pitch = 0.0625;
enum GfxTileWireId {
TILE_WIRE_GLB2LOCAL_0,
TILE_WIRE_GLB2LOCAL_1,