mirror of
https://github.com/YosysHQ/yosys
synced 2025-08-08 20:21:25 +00:00
abc9: not enough to techmap_fail on (* init=1 *), hide them using $__
This commit is contained in:
parent
5ad3a85288
commit
722540dbf9
4 changed files with 48 additions and 12 deletions
|
@ -2,20 +2,24 @@
|
|||
module $_DFF_x_(input C, D, output Q);
|
||||
parameter [0:0] _TECHMAP_WIREINIT_Q_ = 1'bx;
|
||||
parameter _TECHMAP_CELLTYPE_ = "";
|
||||
generate if (_TECHMAP_WIREINIT_Q_ === 1'b1)
|
||||
wire _TECHMAP_FAIL_ = 1;
|
||||
else if (_TECHMAP_CELLTYPE_ == "$_DFF_N_") begin
|
||||
wire D_;
|
||||
$__DFF_N__$abc9_flop #(.INIT(_TECHMAP_WIREINIT_Q_)) _TECHMAP_REPLACE_ (.C(C), .D(D), .Q(Q), .n1(D_));
|
||||
$_DFF_N_ ff (.C(C), .D(D_), .Q(Q));
|
||||
wire D_;
|
||||
generate if (_TECHMAP_CELLTYPE_ == "$_DFF_N_") begin
|
||||
if (_TECHMAP_WIREINIT_Q_ === 1'b0) begin
|
||||
$__DFF_N__$abc9_flop #(.INIT(_TECHMAP_WIREINIT_Q_)) _TECHMAP_REPLACE_ (.C(C), .D(D), .Q(Q), .n1(D_));
|
||||
$_DFF_N_ ff (.C(C), .D(D_), .Q(Q));
|
||||
end
|
||||
else
|
||||
$__DFF_N_ _TECHMAP_REPLACE_ (.C(C), .D(D), .Q(Q));// hide from abc9 using $__ prefix
|
||||
end
|
||||
else if (_TECHMAP_CELLTYPE_ == "$_DFF_P_") begin
|
||||
wire D_;
|
||||
$__DFF_P__$abc9_flop #(.INIT(_TECHMAP_WIREINIT_Q_)) _TECHMAP_REPLACE_ (.C(C), .D(D), .Q(Q), .n1(D_));
|
||||
$_DFF_P_ ff (.C(C), .D(D_), .Q(Q));
|
||||
if (_TECHMAP_WIREINIT_Q_ === 1'b0) begin
|
||||
$__DFF_P__$abc9_flop #(.INIT(_TECHMAP_WIREINIT_Q_)) _TECHMAP_REPLACE_ (.C(C), .D(D), .Q(Q), .n1(D_));
|
||||
$_DFF_P_ ff (.C(C), .D(D_), .Q(Q));
|
||||
end
|
||||
else
|
||||
$__DFF_P_ _TECHMAP_REPLACE_ (.C(C), .D(D), .Q(Q)); // hide from abc9 using $__ prefix
|
||||
end
|
||||
else if (_TECHMAP_CELLTYPE_ != "")
|
||||
$error("Unrecognised _TECHMAP_CELLTYPE_");
|
||||
endgenerate
|
||||
wire _TECHMAP_REMOVEINIT_Q_ = 1;
|
||||
endmodule
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue