3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-04-13 04:28:18 +00:00
This commit is contained in:
Eddie Hung 2019-09-05 10:07:56 -07:00
parent aa462da395
commit 0166e02e78

View file

@ -1,14 +1,14 @@
pattern xilinx_dsp pattern xilinx_dsp
state <SigBit> clock state <SigBit> clock
state <SigSpec> sigA sigffAmux sigB sigC sigM sigP sigPused state <SigSpec> sigA sigffAmux sigB sigC sigM sigP
state <IdString> ffAmuxAB ffMmuxAB postAddAB postAddMuxAB state <IdString> ffAmuxAB ffMmuxAB postAddAB postAddMuxAB
match dsp match dsp
select dsp->type.in(\DSP48E1) select dsp->type.in(\DSP48E1)
endmatch endmatch
code sigA sigB code sigA sigffAmux sigB sigM
sigA = port(dsp, \A); sigA = port(dsp, \A);
int i; int i;
for (i = GetSize(sigA)-1; i > 0; i--) for (i = GetSize(sigA)-1; i > 0; i--)
@ -26,12 +26,9 @@ code sigA sigB
if (sigB[i].wire) if (sigB[i].wire)
++i; ++i;
sigB.remove(i, GetSize(sigB)-i); sigB.remove(i, GetSize(sigB)-i);
endcode
code sigM
SigSpec P = port(dsp, \P); SigSpec P = port(dsp, \P);
// Only care about those bits that are used // Only care about those bits that are used
int i;
for (i = 0; i < GetSize(P); i++) { for (i = 0; i < GetSize(P); i++) {
if (nusers(P[i]) <= 1) if (nusers(P[i]) <= 1)
break; break;