mirror of https://github.com/YosysHQ/yosys.git
Added $_DFFE_??_ cell types
This commit is contained in:
parent
2903143ae5
commit
fad9cec47b
|
@ -156,6 +156,10 @@ struct CellTypes
|
|||
for (auto c1 : list_np)
|
||||
setup_type(stringf("$_DFF_%c_", c1), {"\\C", "\\D"}, {"\\Q"});
|
||||
|
||||
for (auto c1 : list_np)
|
||||
for (auto c2 : list_np)
|
||||
setup_type(stringf("$_DFFE_%c%c_", c1, c2), {"\\C", "\\D", "\\E"}, {"\\Q"});
|
||||
|
||||
for (auto c1 : list_np)
|
||||
for (auto c2 : list_np)
|
||||
for (auto c3 : list_01)
|
||||
|
|
|
@ -892,6 +892,11 @@ namespace {
|
|||
if (cell->type == "$_DFF_N_") { check_gate("DQC"); return; }
|
||||
if (cell->type == "$_DFF_P_") { check_gate("DQC"); return; }
|
||||
|
||||
if (cell->type == "$_DFFE_NN_") { check_gate("DQCE"); return; }
|
||||
if (cell->type == "$_DFFE_NP_") { check_gate("DQCE"); return; }
|
||||
if (cell->type == "$_DFFE_PN_") { check_gate("DQCE"); return; }
|
||||
if (cell->type == "$_DFFE_PP_") { check_gate("DQCE"); return; }
|
||||
|
||||
if (cell->type == "$_DFF_NN0_") { check_gate("DQCR"); return; }
|
||||
if (cell->type == "$_DFF_NN1_") { check_gate("DQCR"); return; }
|
||||
if (cell->type == "$_DFF_NP0_") { check_gate("DQCR"); return; }
|
||||
|
|
|
@ -163,6 +163,38 @@ always @(posedge C) begin
|
|||
end
|
||||
endmodule
|
||||
|
||||
module \$_DFFE_NN_ (D, Q, C, E);
|
||||
input D, C, E;
|
||||
output reg Q;
|
||||
always @(negedge C) begin
|
||||
if (!E) Q <= D;
|
||||
end
|
||||
endmodule
|
||||
|
||||
module \$_DFFE_NP_ (D, Q, C, E);
|
||||
input D, C, E;
|
||||
output reg Q;
|
||||
always @(negedge C) begin
|
||||
if (E) Q <= D;
|
||||
end
|
||||
endmodule
|
||||
|
||||
module \$_DFFE_PN_ (D, Q, C, E);
|
||||
input D, C, E;
|
||||
output reg Q;
|
||||
always @(posedge C) begin
|
||||
if (!E) Q <= D;
|
||||
end
|
||||
endmodule
|
||||
|
||||
module \$_DFFE_PP_ (D, Q, C, E);
|
||||
input D, C, E;
|
||||
output reg Q;
|
||||
always @(posedge C) begin
|
||||
if (E) Q <= D;
|
||||
end
|
||||
endmodule
|
||||
|
||||
module \$_DFF_NN0_ (D, Q, C, R);
|
||||
input D, C, R;
|
||||
output reg Q;
|
||||
|
|
Loading…
Reference in New Issue