Why CPU DDR Memory Controller Has 2 Clock Outputs?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Why CPU DDR Memory Controller Has 2 Clock Outputs?

1,988 Views
electronx
Contributor I

I'm trying to understand the ddr structure for the iMX6 Rex Module module. The cpu used is the MCIMX6Q5EYM10AC model from the nxp i.mx quad series.
www.nxp.com/docs/en/data-sheet/IMX6DQCEC.pdf
www.imx6rex.com/wp-content/uploads/2016/04/iMX6-Rex-Module-Schematic.pdf
A configuration was made using 4 x16 DDR3 DRAM, with a total of 64 word lengths. So far everything is great. Why are there 2 (DRAM_SDCLK_0, DRAM_SDCLK_1 ) clock outputs?Does it matter from which clock source we feed the ddr chips?

 
 

 

 

0 Kudos
Reply
7 Replies

1,864 Views
electronx
Contributor I

Thanks for your answer @Harvey021 . I also see that only the "SDCKE_0" pin is used for the clock enable status. Can the SDCKE_0 pin also control the DRAM_SDCLK_1 clock source?
Can SDCKE_1pin also check the ,clock source "DRAM_SDCLK_0" ?

0 Kudos
Reply

1,750 Views
Harvey021
NXP TechSupport
NXP TechSupport

i.MX6Q support 64 bit data bus, and up to 2 ranks. So, it has 2 CS signals, 2 CKE signals, 2 ODT signals and 2 SDCLK. In theory, rank 0 should uses XXX_0, and rank 1 should uses xxx_1.

On NXP reference design, 6Q connects 4x DDR3 chips, each chip has 16 bit data bus. All 4 DDR3 chips are connected to rank 0, that is why they use xxx_0, but 2 of them connects to SDCK0 and the other 2 connects to SDCK1. Because SDCK0 and SDCK1 come from the same source, so they are equal. To facilitate PCB routing, if using T-topology, 2 connects to SDCK0 and 2 connects to SDCK1 is a good choice. All can be connected to SDCK0 if using Fly-by topology.

 

Best regards

Harvey

0 Kudos
Reply

1,725 Views
rudi_cyber
Contributor III

 In theory, rank 0 should uses XXX_0, and rank 1 should uses xxx_1.

 

Here is theory in i.MX6 reference manual.

We are talking about the DDR3 not the LPDDR2. Please note it. 

We are talking about the T-TOP of the i.MX6 schemation design from NXP.

Ok, let's disscuss more further about fly-by. If we use fly-by and we mount ddr chip on the bottom layer. 

According you input, connect to  SDCK0, how to do layout? could it  be tangle, there?  

 

 

无标题.png

 

Still you did answer the quesion. You said "SDCKE0 is only for clock0." 

Repeat the question.

The following is from NXP reference design iMX6Q-SABRE-SDB-DESIGNFILES.

As you said "SDCKE0 is only for clock0.", so NXP provides a wrong schematic for over 10 years, right?

So where we can download correct schematic? could you please provide link.

 

无标题1.png

 

0 Kudos
Reply

1,839 Views
Harvey021
NXP TechSupport
NXP TechSupport

SDCKE0 is only for clock0.

 

Best regards

Harvey

0 Kudos
Reply

1,816 Views
rudi_cyber
Contributor III

But the following is from NXP reference design iMX6Q-SABRE-SDB-DESIGNFILES.

As you said "SDCKE0 is only for clock0.", so NXP provides a wrong schematic for over 10 years, right?

So where we can download correct schematic? could you please provide link. 

 

 

1.png

0 Kudos
Reply

1,830 Views
electronx
Contributor I

SDCKE_1 pin is not connected anywhere. DRAM_SDCLK_1 clock source, how is it controlled?

0 Kudos
Reply

1,875 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi @electronx 

In principle, these two clocks are the same, both come from a clock source (for example: PLL2 528M). Generally, clock1 is used for the first 32 bits, and clock0 is used for the last 32 bits. 

 

Best regards

Harvey

0 Kudos
Reply