mirror of
https://github.com/corundum/corundum.git
synced 2025-01-30 08:32:52 +08:00
Fix timing of IDDR2 on Spartan 6
Signed-off-by: Alex Forencich <alex@alexforencich.com>
This commit is contained in:
parent
a77c671920
commit
713b138ece
11
rtl/iddr.v
11
rtl/iddr.v
@ -86,11 +86,14 @@ if (TARGET == "XILINX") begin
|
|||||||
.S(1'b0)
|
.S(1'b0)
|
||||||
);
|
);
|
||||||
end else if (IODDR_STYLE == "IODDR2") begin
|
end else if (IODDR_STYLE == "IODDR2") begin
|
||||||
|
wire q1_int;
|
||||||
|
reg q1_delay;
|
||||||
|
|
||||||
IDDR2 #(
|
IDDR2 #(
|
||||||
.DDR_ALIGNMENT("C0")
|
.DDR_ALIGNMENT("C0")
|
||||||
)
|
)
|
||||||
iddr_inst (
|
iddr_inst (
|
||||||
.Q0(q1[n]),
|
.Q0(q1_int),
|
||||||
.Q1(q2[n]),
|
.Q1(q2[n]),
|
||||||
.C0(clk),
|
.C0(clk),
|
||||||
.C1(~clk),
|
.C1(~clk),
|
||||||
@ -99,6 +102,12 @@ if (TARGET == "XILINX") begin
|
|||||||
.R(1'b0),
|
.R(1'b0),
|
||||||
.S(1'b0)
|
.S(1'b0)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
always @(posedge clk) begin
|
||||||
|
q1_delay <= q1_int;
|
||||||
|
end
|
||||||
|
|
||||||
|
assign q1[n] = q1_delay;
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end else if (TARGET == "ALTERA") begin
|
end else if (TARGET == "ALTERA") begin
|
||||||
|
Loading…
x
Reference in New Issue
Block a user