Bug in DDR template in Lattice FPGAs ?

A

ALuPin

Guest
Hi,

I am trying to use the "DDR_MEM" Lattice template which is responsable
for the datapath for DDR SDRAM controller.

"DDR_MEM" can be found in the MODULE/IP MANAGER under
ARCHITECTURE_MODULES
--> IO --> DDR_MEM

When instantiating that module and compiling my design I can see in
the timing analysis
that the bits on the bidirectional busses DQ and DQS have
different Clock-To-Output times.

In my opinion the busses should be routed into IO register cells
when instantiating that special template.

So there are three possibilities:

1. They are not routed into IO register cells so that the PERFORMANCE
ANALYST does show different tCO
2. They ARE routed into IO register cells, but the PERFORMANCE ANALYST
does not take them into timing calculation
3. I have to make any assignment so that the busses are routed into
IO registers. But I have not found any assignment possibility in
the PREFERENCE EDITOR.

Has someone experienced similar or same problems ?

Thank you in advance.

Rgds
André
 
DQ and DQS should have different clock-to-output timing. DQS rising
edge should be in the middle of DQ output window. So receiver can use
DQS rising edge to clock in data contained in DQ valid window.

What DDR is different from normal SDRAM is DDR is source synchronous
driving device. DQS is used to clock in data sent by data sender.

Weng
 
"Weng Tianxiang" <wtx@umem.com> wrote in message news:<1114014790.606879.149020@f14g2000cwb.googlegroups.com>...
DQ and DQS should have different clock-to-output timing. DQS rising
edge should be in the middle of DQ output window. So receiver can use
DQS rising edge to clock in data contained in DQ valid window.

What DDR is different from normal SDRAM is DDR is source synchronous
driving device. DQS is used to clock in data sent by data sender.

Weng
I am NOT talking of DQ with regard to DQS.

I am talking about the bits of the bus DQ and the bits of the bus
DQS ! They have different tCO.
I already know DDR basics ;o)
 
OK, maybe my question was not clear enough, one more try:

Having a look at the data bus DQ I can see the following in the
PERFORMANCE ANALYST (that is the STATIC TIMING ANALYSIS):

SOURCE DESTINATION DELAY (ns)

CLK Dq_15 9.971
CLK Dq_14 9.971
CLK Dq_13 9.701
CLK Dq_12 9.701
CLK Dq_11 9.698
CLK Dq_10 9.698
CLK Dq_9 9.974
CLK Dq_8 9.974
CLK Dq_7 10.574
CLK Dq_6 10.070
CLK Dq_5 10.350
CLK Dq_4 10.314
CLK Dq_3 10.070
CLK Dq_2 10.574
CLK Dq_1 10.350
CLK Dq_0 10.314


As you can see there are different tCO for the bits of the bus,
the same for DQS, ALTHOUGH using the Lattice datapath template as
described in my previous post.

Any ideas?

Rgds
André
 
Andre,

I think what you are missing are the constraints. Have set your Tco,
fmax, Setup and Pin Assignment constraints? Use either the preference
file (.prf) or the Pre-Map Preference Editor to set your constraints.
Also TN1050 can help you out.

rgds,

cristian
 
"cas7406@yahoo.com" <cas7406@yahoo.com> wrote in message news:<1114271914.892049.115680@z14g2000cwz.googlegroups.com>...
Andre,

I think what you are missing are the constraints. Have set your Tco,
fmax, Setup and Pin Assignment constraints? Use either the preference
file (.prf) or the Pre-Map Preference Editor to set your constraints.
Also TN1050 can help you out.

rgds,

cristian
Hi Cristian,

yes I have set the constraints for all the other signals which do not
come out the DATAPATH template. In the Timing Analysis these signals
(for example the address bus for DDR) do have the same tCO.

I have constrained DQ and DQS in the PREFERENCE EDITOR under "In/Out Clock"
whereas the other signals are constrained under "Cell Attributes".
But the constraints for DQ and DQS do have no effect on the tCO.

Rgds
André
 
Andre,

You should be able to constraint the Tco for the DQ and DQS in the
input_setup/clock_to_output preference window.
Check the example at
$ispLEVER/ispcpld/examples/latticeEC/preferences_attributes/ddr/vhdl/ddr.syn

and let me know.

rgds,

cristian

ALuPin wrote:
"cas7406@yahoo.com" <cas7406@yahoo.com> wrote in message
news:<1114271914.892049.115680@z14g2000cwz.googlegroups.com>...
Andre,

I think what you are missing are the constraints. Have set your
Tco,
fmax, Setup and Pin Assignment constraints? Use either the
preference
file (.prf) or the Pre-Map Preference Editor to set your
constraints.
Also TN1050 can help you out.

rgds,

cristian

Hi Cristian,

yes I have set the constraints for all the other signals which do not
come out the DATAPATH template. In the Timing Analysis these signals
(for example the address bus for DDR) do have the same tCO.

I have constrained DQ and DQS in the PREFERENCE EDITOR under "In/Out
Clock"
whereas the other signals are constrained under "Cell Attributes".
But the constraints for DQ and DQS do have no effect on the tCO.

Rgds
André
 

Welcome to EDABoard.com

Sponsor

Back
Top