DDR3 speed in example

The example of DDR3 interface works on 325MHz. Why is used this speed, please? By the documentation of AS4C128M16D3LB-12 (chip uses in AU) it looks speed could be 400MHz. Thanks a lot.

You can clock the DDR3 faster if your application needs it. However, when you generate the memory controller block with a frequency higher than 325MHz, you get the warning “To achieve optimum resource utilization, maintain default clock period given by the tool or a value greater than the default clock period. Please contact Xilinx Technical Support for further information.”

According to https://www.xilinx.com/support/answers/69313.html by going with 325MHz instead of 400MHz, you save about 30% of the LUTs.

For most applications, this is a valid trade-off. If you need the extra speed and don’t mind the extra resource usage, you can generate the MIG core to run at 400MHz.

Hi, Thanks for info. It’s good to know. I tried to change speed, but have noticed there is this warning “To achieve optimum resource utilization, maintain default clock period given by the tool or a value greater than the default clock period. Please contact Xilinx Technical Support for further information.” in case of your default setting (324.99MHz/3077ps) as well. IP core doesn’t allow set 400MHz because supported range is 3000-3300ps for this type of memory (warning appears). Maybe timing parameter have to be change, but I checked it by the memory chip documentation and it looks are OK. Any idea, please?

I made a custom device with timing pulled from the datasheet. You may need to tweak this for 400MHz. I believe it is on the page right before you select the clock rate (maybe the same page). Anyways, it is somewhere in the Vivado MIG generator.