Removing dff absorption operated by ql_dsp
Signed-off-by: Samy <samy.charas@cpe.fr>
diff --git a/ql-qlf-plugin/ql_dsp.pmg b/ql-qlf-plugin/ql_dsp.pmg
index e607e66..1d87ce4 100644
--- a/ql-qlf-plugin/ql_dsp.pmg
+++ b/ql-qlf-plugin/ql_dsp.pmg
@@ -63,7 +63,7 @@
code argQ ffA sigA clock clock_pol
if (mul->type != \QL_DSP || !param(mul, \A_REG).as_bool()) {
argQ = sigA;
- subpattern(in_dffe);
+ //subpattern(in_dffe);
if (dff) {
ffA = dff;
clock = dffclock;
@@ -76,7 +76,7 @@
code argQ ffB sigB clock clock_pol
if (mul->type != \QL_DSP || !param(mul, \B_REG).as_bool()) {
argQ = sigB;
- subpattern(in_dffe);
+ //subpattern(in_dffe);
if (dff) {
ffB = dff;
clock = dffclock;
@@ -91,7 +91,7 @@
(mul->type != \QL_DSP)) {
argD = sigH;
argSdff = false;
- subpattern(out_dffe);
+ //subpattern(out_dffe);
if (dff) {
// F/J/K/G do not have a CE-like (hold) input
if (dff->hasPort(\EN))
@@ -135,7 +135,7 @@
(mul->type != \QL_DSP)) {
argD = sigH;
argSdff = false;
- subpattern(out_dffe);
+ //subpattern(out_dffe);
if (dff) {
// H does not have a CE-like (hold) input
if (dff->hasPort(\EN))
@@ -222,7 +222,7 @@
if (nusers(sigO) == 2) {
argD = sigO;
argSdff = !mux;
- subpattern(out_dffe);
+ //subpattern(out_dffe);
}
// Otherwise try just its least significant 16 bits
@@ -230,7 +230,7 @@
argD = sigO.extract(0, 16);
if (nusers(argD) == 2) {
argSdff = !mux;
- subpattern(out_dffe);
+ //subpattern(out_dffe);
o_lo = dff;
}
}
@@ -265,7 +265,7 @@
if (!sigCD.empty() && sigCD != sigO &&
(mul->type != \QL_DSP || (!param(mul, \C_REG).as_bool() && !param(mul, \D_REG).as_bool()))) {
argQ = sigCD;
- subpattern(in_dffe);
+ //subpattern(in_dffe);
if (dff) {
// Reset signal of C (IRSTTOP) and D (IRSTBOT)
// shared with A and B
@@ -309,6 +309,10 @@
endcode
// #######################
+// Currently, QL_DSP performs only combinatorial operations
+// but we aim to convert it into a mac unit in the futur
+// so we're leaving the subpattern in the code, it is
+// however not being used for now.
subpattern in_dffe
arg argD argQ clock clock_pol
@@ -362,6 +366,10 @@
endcode
// #######################
+// Currently, QL_DSP performs only combinatorial operations
+// but we aim to convert it into a mac unit in the futur
+// so we're leaving the subpattern in the code, it is
+// however not being used for now.
subpattern out_dffe
arg argD argSdff argQ clock clock_pol