ffH -> ffFJKG

This commit is contained in:
Eddie Hung 2019-08-15 12:19:34 -07:00
parent aad97168b0
commit 27d5df9467
2 changed files with 15 additions and 15 deletions

View File

@ -38,7 +38,7 @@ void create_ice40_dsp(ice40_dsp_pm &pm)
log("ffA: %s\n", log_id(st.ffA, "--")); log("ffA: %s\n", log_id(st.ffA, "--"));
log("ffB: %s\n", log_id(st.ffB, "--")); log("ffB: %s\n", log_id(st.ffB, "--"));
log("mul: %s\n", log_id(st.mul, "--")); log("mul: %s\n", log_id(st.mul, "--"));
log("ffH: %s\n", log_id(st.ffH, "--")); log("ffFJKG: %s\n", log_id(st.ffFJKG, "--"));
log("addAB: %s\n", log_id(st.addAB, "--")); log("addAB: %s\n", log_id(st.addAB, "--"));
log("muxAB: %s\n", log_id(st.muxAB, "--")); log("muxAB: %s\n", log_id(st.muxAB, "--"));
log("ffO_lo: %s\n", log_id(st.ffO_lo, "--")); log("ffO_lo: %s\n", log_id(st.ffO_lo, "--"));
@ -119,8 +119,8 @@ void create_ice40_dsp(ice40_dsp_pm &pm)
if (st.ffB) if (st.ffB)
log(" ffB:%s", log_id(st.ffB)); log(" ffB:%s", log_id(st.ffB));
if (st.ffH) if (st.ffFJKG)
log(" ffH:%s", log_id(st.ffH)); log(" ffFJKG:%s", log_id(st.ffFJKG));
if (st.ffO_lo) if (st.ffO_lo)
log(" ffO_lo:%s", log_id(st.ffO_lo)); log(" ffO_lo:%s", log_id(st.ffO_lo));
@ -206,9 +206,9 @@ void create_ice40_dsp(ice40_dsp_pm &pm)
cell->setParam("\\C_REG", State::S0); cell->setParam("\\C_REG", State::S0);
cell->setParam("\\D_REG", State::S0); cell->setParam("\\D_REG", State::S0);
cell->setParam("\\TOP_8x8_MULT_REG", st.ffH ? State::S1 : State::S0); cell->setParam("\\TOP_8x8_MULT_REG", st.ffFJKG ? State::S1 : State::S0);
cell->setParam("\\BOT_8x8_MULT_REG", st.ffH ? State::S1 : State::S0); cell->setParam("\\BOT_8x8_MULT_REG", st.ffFJKG ? State::S1 : State::S0);
cell->setParam("\\PIPELINE_16x16_MULT_REG1", st.ffH ? State::S1 : State::S0); cell->setParam("\\PIPELINE_16x16_MULT_REG1", st.ffFJKG ? State::S1 : State::S0);
cell->setParam("\\PIPELINE_16x16_MULT_REG2", State::S0); cell->setParam("\\PIPELINE_16x16_MULT_REG2", State::S0);
cell->setParam("\\TOPOUTPUT_SELECT", Const(st.ffO_hi ? 1 : (st.addAB ? 0 : 3), 2)); cell->setParam("\\TOPOUTPUT_SELECT", Const(st.ffO_hi ? 1 : (st.addAB ? 0 : 3), 2));
@ -229,7 +229,7 @@ void create_ice40_dsp(ice40_dsp_pm &pm)
pm.autoremove(st.mul); pm.autoremove(st.mul);
else else
pm.blacklist(st.mul); pm.blacklist(st.mul);
pm.autoremove(st.ffH); pm.autoremove(st.ffFJKG);
pm.autoremove(st.addAB); pm.autoremove(st.addAB);
if (st.ffO_lo) { if (st.ffO_lo) {
SigSpec O = st.sigO.extract(0,std::min(16,st.ffO_lo->getParam("\\WIDTH").as_int())); SigSpec O = st.sigO.extract(0,std::min(16,st.ffO_lo->getParam("\\WIDTH").as_int()));

View File

@ -82,11 +82,11 @@ code sigB clock clock_pol
} }
endcode endcode
match ffH match ffFJKG
if mul->type != \SB_MAC16 || (!param(mul, \TOP_8x8_MULT_REG).as_bool() && !param(mul, \BOT_8x8_MULT_REG).as_bool() && !param(mul, \PIPELINE_16x16_MULT_REG1).as_bool() && !param(mul, \PIPELINE_16x16_MULT_REG2).as_bool()) if mul->type != \SB_MAC16 || (!param(mul, \TOP_8x8_MULT_REG).as_bool() && !param(mul, \BOT_8x8_MULT_REG).as_bool() && !param(mul, \PIPELINE_16x16_MULT_REG1).as_bool() && !param(mul, \PIPELINE_16x16_MULT_REG2).as_bool())
select ffH->type.in($dff) select ffFJKG->type.in($dff)
select nusers(port(ffH, \D)) == 2 select nusers(port(ffFJKG, \D)) == 2
index <SigSpec> port(ffH, \D) === sigH index <SigSpec> port(ffFJKG, \D) === sigH
// Ensure pipeline register is not already used // Ensure pipeline register is not already used
optional optional
endmatch endmatch
@ -94,16 +94,16 @@ endmatch
code sigH sigO clock clock_pol code sigH sigO clock clock_pol
sigO = sigH; sigO = sigH;
if (ffH) { if (ffFJKG) {
sigH = port(ffH, \Q); sigH = port(ffFJKG, \Q);
for (auto b : sigH) for (auto b : sigH)
if (b.wire->get_bool_attribute(\keep)) if (b.wire->get_bool_attribute(\keep))
reject; reject;
sigO = sigH; sigO = sigH;
SigBit c = port(ffH, \CLK).as_bit(); SigBit c = port(ffFJKG, \CLK).as_bit();
bool cp = param(ffH, \CLK_POLARITY).as_bool(); bool cp = param(ffFJKG, \CLK_POLARITY).as_bool();
if (clock != SigBit() && (c != clock || cp != clock_pol)) if (clock != SigBit() && (c != clock || cp != clock_pol))
reject; reject;