mirror of https://github.com/YosysHQ/yosys.git
coolrunner2: Add a few more primitives
These cannot be inferred yet, but add them to cells_sim.v for now
This commit is contained in:
parent
36b75dfcb7
commit
b102c0e254
|
@ -134,3 +134,113 @@ module LDCP_N (G, PRE, CLR, D, Q);
|
|||
Q <= 1;
|
||||
end
|
||||
endmodule
|
||||
|
||||
module BUFG(I, O);
|
||||
input I;
|
||||
output O;
|
||||
|
||||
assign O = I;
|
||||
endmodule
|
||||
|
||||
module BUFGSR(I, O);
|
||||
input I;
|
||||
output O;
|
||||
|
||||
assign O = I;
|
||||
endmodule
|
||||
|
||||
module BUFGTS(I, O);
|
||||
input I;
|
||||
output O;
|
||||
|
||||
assign O = I;
|
||||
endmodule
|
||||
|
||||
module FDDCP (C, PRE, CLR, D, Q);
|
||||
parameter INIT = 0;
|
||||
|
||||
input C, PRE, CLR, D;
|
||||
output reg Q;
|
||||
|
||||
initial begin
|
||||
Q <= INIT;
|
||||
end
|
||||
|
||||
always @(posedge C, negedge C, posedge PRE, posedge CLR) begin
|
||||
if (CLR == 1)
|
||||
Q <= 0;
|
||||
else if (PRE == 1)
|
||||
Q <= 1;
|
||||
else
|
||||
Q <= D;
|
||||
end
|
||||
endmodule
|
||||
|
||||
module FTCP (C, PRE, CLR, T, Q);
|
||||
parameter INIT = 0;
|
||||
|
||||
input C, PRE, CLR, T;
|
||||
output wire Q;
|
||||
reg Q_;
|
||||
|
||||
initial begin
|
||||
Q_ <= INIT;
|
||||
end
|
||||
|
||||
always @(posedge C, posedge PRE, posedge CLR) begin
|
||||
if (CLR == 1)
|
||||
Q_ <= 0;
|
||||
else if (PRE == 1)
|
||||
Q_ <= 1;
|
||||
else if (T == 1)
|
||||
Q_ <= ~Q_;
|
||||
end
|
||||
|
||||
assign Q = Q_;
|
||||
endmodule
|
||||
|
||||
module FTCP_N (C, PRE, CLR, T, Q);
|
||||
parameter INIT = 0;
|
||||
|
||||
input C, PRE, CLR, T;
|
||||
output wire Q;
|
||||
reg Q_;
|
||||
|
||||
initial begin
|
||||
Q_ <= INIT;
|
||||
end
|
||||
|
||||
always @(negedge C, posedge PRE, posedge CLR) begin
|
||||
if (CLR == 1)
|
||||
Q_ <= 0;
|
||||
else if (PRE == 1)
|
||||
Q_ <= 1;
|
||||
else if (T == 1)
|
||||
Q_ <= ~Q_;
|
||||
end
|
||||
|
||||
assign Q = Q_;
|
||||
endmodule
|
||||
|
||||
module FTDCP (C, PRE, CLR, T, Q);
|
||||
parameter INIT = 0;
|
||||
|
||||
input C, PRE, CLR, T;
|
||||
output wire Q;
|
||||
reg Q_;
|
||||
|
||||
initial begin
|
||||
Q_ <= INIT;
|
||||
end
|
||||
|
||||
always @(posedge C, negedge C, posedge PRE, posedge CLR) begin
|
||||
if (CLR == 1)
|
||||
Q_ <= 0;
|
||||
else if (PRE == 1)
|
||||
Q_ <= 1;
|
||||
else if (T == 1)
|
||||
Q_ <= ~Q_;
|
||||
end
|
||||
|
||||
assign Q = Q_;
|
||||
endmodule
|
||||
|
|
Loading…
Reference in New Issue