URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 266 |
Rev 1765 |
// $Header: /home/marcus/revision_ctrl_test/oc_cvs/cvs/or1k/mp3/lib/xilinx/unisims/FDRE_1.v,v 1.1.1.1 2001-11-04 18:59:47 lampret Exp $
|
// $Header: /home/marcus/revision_ctrl_test/oc_cvs/cvs/or1k/mp3/lib/xilinx/unisims/FDRE_1.v,v 1.1.1.1 2001-11-04 18:59:47 lampret Exp $
|
|
|
/*
|
/*
|
|
|
FUNCTION : D-FLIP-FLOP with sync reset and clock enable
|
FUNCTION : D-FLIP-FLOP with sync reset and clock enable
|
|
|
*/
|
*/
|
|
|
`timescale 100 ps / 10 ps
|
`timescale 100 ps / 10 ps
|
|
|
`celldefine
|
`celldefine
|
|
|
module FDRE_1 (Q, C, CE, D, R);
|
module FDRE_1 (Q, C, CE, D, R);
|
|
|
parameter cds_action = "ignore";
|
parameter cds_action = "ignore";
|
parameter INIT = 1'b0;
|
parameter INIT = 1'b0;
|
|
|
output Q;
|
output Q;
|
reg q_out;
|
reg q_out;
|
|
|
input C, CE, D, R;
|
input C, CE, D, R;
|
|
|
tri0 GSR = glbl.GSR;
|
tri0 GSR = glbl.GSR;
|
|
|
buf B1 (Q, q_out);
|
buf B1 (Q, q_out);
|
|
|
always @(GSR)
|
always @(GSR)
|
if (GSR)
|
if (GSR)
|
assign q_out = INIT;
|
assign q_out = INIT;
|
else
|
else
|
deassign q_out;
|
deassign q_out;
|
|
|
always @(negedge C)
|
always @(negedge C)
|
if (R)
|
if (R)
|
q_out <= 0;
|
q_out <= 0;
|
else if (CE)
|
else if (CE)
|
q_out <= D;
|
q_out <= D;
|
|
|
specify
|
specify
|
if (R)
|
if (R)
|
(negedge C => (Q +: 1'b0)) = (1, 1);
|
(negedge C => (Q +: 1'b0)) = (1, 1);
|
if (!R && CE)
|
if (!R && CE)
|
(negedge C => (Q +: D)) = (1, 1);
|
(negedge C => (Q +: D)) = (1, 1);
|
endspecify
|
endspecify
|
|
|
endmodule
|
endmodule
|
|
|
`endcelldefine
|
`endcelldefine
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.