UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Adventurer
Adventurer
1,634 Views
Registered: ‎04-29-2018

Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

I am trying to get the DDR4 IP working at 1600 on ZCU102. As i don't see any part available with 125 speed grade, have chosen part from 107 speed grade and was able to run the simple pattern but not complex pattern.

Was there any supported Memory part available in the vivado tool for 125 speed grade..?

0 Kudos
1 Solution

Accepted Solutions
Moderator
Moderator
1,898 Views
Registered: ‎11-28-2016

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

The ZCU102 board has a 300MHz clock that's supplied on the reference clock pins for the DDR4 interface so that's the clock period that you must use. The core has an MMCM that can generate a lot of different values for the final 4:1 clock ratio but there are a lot of dependencies that go in to this.  If you configure the IP for a 1249ps interface rate (1601MHz) then in the Reference Input Clock Speed box the closest options to 300MHz are a period of 3331ps or 3330ps.  By selecting one of these the MMCM will be able to generate the ~200MHz clock the IP is expecting.  In reality since we're supplying a 300MHz clock the actual interface rate will be 1600Mbps but the IP thinks it's running at 1601Mbps so then it will run the Complex calibration steps.

15 Replies
Moderator
Moderator
1,570 Views
Registered: ‎02-11-2014

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

Please go through XTP432 if you want to test our the PL DDR4 controller with the MT40A256M16GE-075E on the board. https://www.xilinx.com/support/documentation/boards_and_kits/zcu102/2017_4/xtp432-zcu102-mig-c-2017-4.pdf

 

Unless you are trying to implement the PS DDR4 controller then you will want to go through XTP428 to test that out https://www.xilinx.com/support/documentation/boards_and_kits/zcu102/2017_4/xtp428-zcu102-bit-c-2017-4.pdf

 

Thanks,

Cory

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Adventurer
Adventurer
1,557 Views
Registered: ‎04-29-2018

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hi Cory, I successfully ran the PL DDR4 MIG on the ZCU102 board with the default speed which is 2400.

Now i am trying to run at 1600 speed, so i loaded the timing parameters to match with 1600 and tested it out.

Only the simple pattern seems to pass, but not the complex pattern.

 

So I am wondering if there is a memory part available with 125 speed grade which needs to be selected during MIG configuration. Currently i configured with an available part "MT40A256M16HA-107" but with 1600 timings

0 Kudos
Moderator
Moderator
1,554 Views
Registered: ‎02-11-2014

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

All you need to do to get the PL controller to operate at 1600, is change the operating frequency. You do not need to change the part. Make sure and regenerate the Example Design / Generate Output Products for the IP as well to get a clean design. You should not have to manually change any timing parameters either.

 

Thanks,

Cory

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Adventurer
Adventurer
1,531 Views
Registered: ‎04-29-2018

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Thanks Cory, I tried what you have suggested..Able to PASS calibration, ran simple pattern and there are no data compare errors.

But like i said before, not able to run the complex pattern. It seems to SKIP all the complex stages during Calibration.

Here is the message observed while verifying the complex pattern

"Complex pattern read margin didn't run because either a prior stage of calibration failed or read leveling(complex) stage was skipped"

0 Kudos
Moderator
Moderator
1,518 Views
Registered: ‎11-28-2016

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

This is because Complex Calibration steps only occur above 1600Mbps data rates. Since you're operating at 1600MBps then only the Simple Calibration steps will execute. If you want to run Complex Calibration steps then you'll need to reconfigure the memory controller to operate above 1600Mbps within the guidelines that are supported for the PL interface on the ZCU102 board.

Adventurer
Adventurer
1,490 Views
Registered: ‎04-29-2018

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Thanks ryana..currently my application needs the DDR4 to work at 1600Mbps. So i just wanted to make sure, If this is a limitation to the IP..? And also there is no work around to run complex patterns

0 Kudos
Moderator
Moderator
1,479 Views
Registered: ‎11-28-2016

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

It's not a limitation of the IP, it's to save calibration time when the though process is running complex patterns at a low data rate doesn't add much benefit since there should be plenty of margin at those speeds. The easiest way to work around this is to configure the IP to run at 1601Mbps.

0 Kudos
Adventurer
Adventurer
1,428 Views
Registered: ‎04-29-2018

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Tried with 1601 and also 1610, Calibration with Complex pattern passes but there are data miscompare's..I didn't change any timing parameters, except the operating frequency. Any thoughts..?

0 Kudos
Moderator
Moderator
1,417 Views
Registered: ‎11-28-2016

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

Sounds like there's a configuration issue since this board and interface is capable of running any operating frequency from the minimum supported by the IP to the max that this configuration allows.  I've run this before at 1600Mbps and slower without any issues.

0 Kudos
Moderator
Moderator
1,084 Views
Registered: ‎02-11-2014

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

@ryana is right. You should only be using the MT40A256M16GE-075E in the PL DDR4 Controller and no other part. Please change the device back to this, and then adjust the operating frequency from 2400 MT/s to 1600 MT/s. Keep in mind the Controller GUI takes in the value in ps and not MT/s.

 

Thanks,

Cory

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Adventurer
Adventurer
1,075 Views
Registered: ‎04-29-2018

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Yah i have used the same part "MT40A256M16GE-075E" and in the GUI i set the time period to 1242 ps in order to achieve 1610 Mbps data rate. Was there anything i need to do apart from this..?

0 Kudos
Moderator
Moderator
1,071 Views
Registered: ‎11-28-2016

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

I did a quick test since the ZCU102 supplies a 300MHz clock to the DDR3 core.

You'll have to pick something close to 300MHz like a 3331ps or 3330ps clock which are available for a 1249ps interface rate (1601Mbps).  The rest of the IP configuration needs to match the configuration in the linked XTP432.

0 Kudos
Adventurer
Adventurer
1,048 Views
Registered: ‎04-29-2018

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

I believe we have to pick some thing like 1249x4 = 4996ps, instead of 3331ps. As the PHY to controller clock ratio is 4:1

Let me know if i am wrong. In the earlier i have 1249ps for the operating time period and 4996ps for controller

0 Kudos
Moderator
Moderator
1,899 Views
Registered: ‎11-28-2016

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Hello @trinadhkosuru,

 

The ZCU102 board has a 300MHz clock that's supplied on the reference clock pins for the DDR4 interface so that's the clock period that you must use. The core has an MMCM that can generate a lot of different values for the final 4:1 clock ratio but there are a lot of dependencies that go in to this.  If you configure the IP for a 1249ps interface rate (1601MHz) then in the Reference Input Clock Speed box the closest options to 300MHz are a period of 3331ps or 3330ps.  By selecting one of these the MMCM will be able to generate the ~200MHz clock the IP is expecting.  In reality since we're supplying a 300MHz clock the actual interface rate will be 1600Mbps but the IP thinks it's running at 1601Mbps so then it will run the Complex calibration steps.

Adventurer
Adventurer
1,017 Views
Registered: ‎04-29-2018

Re: Trouble with getting complex pattern working with ZCU102 board at DDR4-1600

Jump to solution

Thanks a lot for explaining the details..It worked like a charm