aboutsummaryrefslogtreecommitdiffstats
path: root/nexus/fasm.cc
diff options
context:
space:
mode:
Diffstat (limited to 'nexus/fasm.cc')
-rw-r--r--nexus/fasm.cc18
1 files changed, 18 insertions, 0 deletions
diff --git a/nexus/fasm.cc b/nexus/fasm.cc
index fcbe0b8c..0c53e836 100644
--- a/nexus/fasm.cc
+++ b/nexus/fasm.cc
@@ -596,6 +596,22 @@ struct NexusFasmWriter
}
pop();
}
+ // Write out config for an LRAM_CORE cell
+ void write_lram(const CellInfo *cell)
+ {
+ BelId bel = cell->bel;
+ push_bel(bel);
+ write_enum(cell, "ASYNC_RST_RELEASE", "SYNC");
+ write_enum(cell, "EBR_SP_EN", "DISABLE");
+ write_enum(cell, "ECC_BYTE_SEL", "ECC_EN");
+ write_enum(cell, "GSR", "DISABLED");
+ write_enum(cell, "OUT_REGMODE_A", "NO_REG");
+ write_enum(cell, "OUT_REGMODE_B", "NO_REG");
+ write_enum(cell, "RESETMODE", "SYNC");
+ write_enum(cell, "UNALIGNED_READ", "DISABLE");
+ write_cell_muxes(cell);
+ pop();
+ }
// Write out FASM for unused bels where needed
void write_unused()
{
@@ -710,6 +726,8 @@ struct NexusFasmWriter
write_dsp(ci);
else if (ci->type == id_PLL_CORE)
write_pll(ci);
+ else if (ci->type == id_LRAM_CORE)
+ write_lram(ci);
blank();
}
// Write config for unused bels