FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
5741 Discussions

EMIF Cyclone 10 GX: emif_usr_clk frequency incorrect

Schroeti
New Contributor I
364 Views

Hi,

i've instantiated the EMIF IP core to connect to a DDR3 SODIMM memory on a customer board. The EMIF is fed by a configurable clock generator. Some information:

- pll_ref_clk frequency: 100MHz

- memory clock frequency: 800MHz

- clock rate of user logic: quarter

- Quartus prime pro; version 20.3

Everything works fine, except one thing:
The timing analyzer reports a emif_usr_clk frequency of 100MHz while this is actually 200MHz (measured with oscilloscope).

Then I compiled the design with different pll_ref_clk settings with following reported results:
pll_ref_clk frequency - usr_clk frequency
50MHz - 200MHz
100MHz - 100MHz
200MHz - 50MHz

Strange. My understanding is, that the user clock only depends on the memory clock.

I'm afraid this wrong frequency affects synthesis and fitting results badly.
How can i fix this?

0 Kudos
1 Solution
yoichiK_intel
Employee
316 Views

In the top.sdc you are setting pll reference clock as 50Mhz and this causes the incorrect emif_usr_clk frequency.  Please remove the following constraint from sdc then you should see the correct clock frequency in the report.   The pll reference clock frequency is defined in the IP sdc.

 

create_clock -name {clk_emif} -period 20.0 [get_ports {emif_clk_clk}]

View solution in original post

6 Replies
yoichiK_intel
Employee
349 Views

Hi

 

If your memory clock is 800Mhz and quarter rate for user logic is chosen emif_usr_clk frequency should be 200Mhz.

Can you attach your QAR design in this forum ?

Schroeti
New Contributor I
344 Views

Here it is.

yoichiK_intel
Employee
330 Views

Hi 

When I compile the design I see the emif_usr_clk is reported as 200Mhz in the clocks GUI. Can you confirm ?

Schroeti
New Contributor I
320 Views

Yes, exactly as I logged. Sorry, I forgot to change the reference clock back away from 50MHz before generating the qar.

Would you please set the emif pll reference clock to 200MHz, then you should see the effect.

yoichiK_intel
Employee
317 Views

In the top.sdc you are setting pll reference clock as 50Mhz and this causes the incorrect emif_usr_clk frequency.  Please remove the following constraint from sdc then you should see the correct clock frequency in the report.   The pll reference clock frequency is defined in the IP sdc.

 

create_clock -name {clk_emif} -period 20.0 [get_ports {emif_clk_clk}]

View solution in original post

Schroeti
New Contributor I
313 Views
Reply