mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-13 04:28:18 +00:00
ecp5: Do not use specify in generate in cells_sim.v.
This commit is contained in:
parent
1586000048
commit
d0f4d0b153
|
@ -355,37 +355,24 @@ module TRELLIS_FF(input CLK, LSR, CE, DI, M, output reg Q);
|
||||||
end
|
end
|
||||||
endgenerate
|
endgenerate
|
||||||
|
|
||||||
generate
|
specify
|
||||||
// TODO
|
$setup(DI, negedge CLK &&& CLKMUX == "INV", 0);
|
||||||
if (CLKMUX == "INV")
|
$setup(CE, negedge CLK &&& CLKMUX == "INV", 0);
|
||||||
specify
|
$setup(LSR, negedge CLK &&& CLKMUX == "INV", 0);
|
||||||
$setup(DI, negedge CLK, 0);
|
$setup(DI, posedge CLK &&& CLKMUX != "INV", 0);
|
||||||
$setup(CE, negedge CLK, 0);
|
$setup(CE, posedge CLK &&& CLKMUX != "INV", 0);
|
||||||
$setup(LSR, negedge CLK, 0);
|
$setup(LSR, posedge CLK &&& CLKMUX != "INV", 0);
|
||||||
`ifndef YOSYS
|
`ifndef YOSYS
|
||||||
if (SRMODE == "ASYNC" && muxlsr) (negedge CLK => (Q : srval)) = 0;
|
if (SRMODE == "ASYNC" && muxlsr && CLKMUX == "INV") (negedge CLK => (Q : srval)) = 0;
|
||||||
|
if (SRMODE == "ASYNC" && muxlsr && CLKMUX != "INV") (posedge CLK => (Q : srval)) = 0;
|
||||||
`else
|
`else
|
||||||
if (SRMODE == "ASYNC" && muxlsr) (LSR => Q) = 0; // Technically, this should be an edge sensitive path
|
if (SRMODE == "ASYNC" && muxlsr) (LSR => Q) = 0; // Technically, this should be an edge sensitive path
|
||||||
// but for facilitating a bypass box, let's pretend it's
|
// but for facilitating a bypass box, let's pretend it's
|
||||||
// a simple path
|
// a simple path
|
||||||
`endif
|
`endif
|
||||||
if (!muxlsr && muxce) (negedge CLK => (Q : DI)) = 0;
|
if (!muxlsr && muxce && CLKMUX == "INV") (negedge CLK => (Q : DI)) = 0;
|
||||||
endspecify
|
if (!muxlsr && muxce && CLKMUX != "INV") (posedge CLK => (Q : DI)) = 0;
|
||||||
else
|
endspecify
|
||||||
specify
|
|
||||||
$setup(DI, posedge CLK, 0);
|
|
||||||
$setup(CE, posedge CLK, 0);
|
|
||||||
$setup(LSR, posedge CLK, 0);
|
|
||||||
`ifndef YOSYS
|
|
||||||
if (SRMODE == "ASYNC" && muxlsr) (posedge CLK => (Q : srval)) = 0;
|
|
||||||
`else
|
|
||||||
if (SRMODE == "ASYNC" && muxlsr) (LSR => Q) = 0; // Technically, this should be an edge sensitive path
|
|
||||||
// but for facilitating a bypass box, let's pretend it's
|
|
||||||
// a simple path
|
|
||||||
`endif
|
|
||||||
if (!muxlsr && muxce) (posedge CLK => (Q : DI)) = 0;
|
|
||||||
endspecify
|
|
||||||
endgenerate
|
|
||||||
endmodule
|
endmodule
|
||||||
|
|
||||||
// ---------------------------------------
|
// ---------------------------------------
|
||||||
|
|
Loading…
Reference in a new issue