HyperRAM and FlexSPI minimum frequency

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

HyperRAM and FlexSPI minimum frequency

2,794 Views
patriciocohen
Contributor IV

Hi,

I have a board that has some nets incorrectly connected between the processor and the HyperRAM device : The FlexSPI Data A and Data B signal groups are swapped 

I have reworked the board for fixing the connections but I think it will not be possible to operate the bus at full speed. I tried doing a test and there were read/write errors

For this prototype, the external memory is required to allocate the LCD frame buffer for the display.

This is a prototype so very high speeds are not important at this stage, but it is necessary to have the external memory operating in order to have the display working.

What's the minimum frequency the HyperRAM device can be operated with the IMXRT1062?

I know that hyperbus memories are very high speed devices, but since the IMXRT1062 is the one controlling the FlexSPI bus, that makes me think that it could be operated at lower frequencies.  For instance, could I make it work at 30 MHz instead of 200 MHz? If this is possible I could configure the output buffer strength to low so to avoid signal integrity problems.

Thank you very much in advance,

Best regards,

Patricio 

 

0 Kudos
Reply
10 Replies

2,767 Views
patriciocohen
Contributor IV

Hi @kerryzhou, can you please give me a hand with this?

Thanks you,

Patricio

0 Kudos
Reply

2,755 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @patriciocohen ,

  Yes, of course, you can use 30 MHz instead of 200 MHz, the flexSPI can support it.

  You just need to check your flexRAM doesn't have a minimum frequency limit.

 

Wish it helps you!

Best Regards,

Kerry

0 Kudos
Reply

2,689 Views
patriciocohen
Contributor IV

Hi Kerry,

I'm trying to modify the hyper ram example for making it work at 30MHz. Can you please help me?

The example is located at https://www.nxp.com/docs/en/nxp/application-notes-software/AN12239SW.zip

I haven't been able to make it work.

I'm using the S27KS0642GABHV020 hyper ram device and the IMXRT1062

It always stops here: (no success reading ram id)

status = flexspi_hyper_ram_get_id(EXAMPLE_FLEXSPI, &vendorID);
if (status != kStatus_Success)
{
//no success
return status;
}

Thank you

Patricio

0 Kudos
Reply

2,653 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @patriciocohen ,

  Do you check the flexSPI clock, whether it can output the 30Mhz or not?

  If it already output the correct frequency, then it means your hardware or the external chip may still have issues, maybe you need also check hardware side, not only focus the software side.

Best Regards,

kerry

0 Kudos
Reply

2,334 Views
patriciocohen
Contributor IV

Hi Kerry,

I have been checking the hardware and I have seen the clock correctly. I wired manually a new hyperram chip to be sure it is not damaged.

The answer I get from the console is the following:

coreclk: 600000000; ahbclk: 150000000; hyperbusclk: 32727271
FlexSPI HyperRAM example started!
Vendor ID: 0x8104
IP Command Read/Write data Failure at 0x0 - 0x7ff!

It seems that the vendor ID is not correct.

I really don't know how to proceed, please help me.

I attached the MCUXPRESSO project I'm using. 

Thank you,

Patricio

 

 

0 Kudos
Reply

2,269 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @patriciocohen ,

    I find your used hyperRAM is similar to the application note:

https://www.nxp.com/docs/en/nxp/application-notes/AN12239.pdf

https://www.nxp.com/docs/en/nxp/application-notes-software/AN12239SW.zip

Do you also check this application note code, whether that works OK on your side?

As I don't have your hyperRAM related board, so, until now, I can't test it on my side.

Now, you can get the Vendor ID: 0x8104, but that is not correct, right?

About your code, do you refer to the AN12239SW?

Best Regards,

Kerry

 

0 Kudos
Reply

1,678 Views
Lukas_Frank
Senior Contributor I

Dear @kerryzhou ,

 

There are some missing points for using HyperRAM with FlexSPI on RT1064. This example code and application note is not enough.

 

How should I design LUT?

How should I refer to the differences between 1050 and 1064 ?

I tried to configure my own example by using reference 1050 code by building it on flexspi_hyper_flash_polling_transfer SDK example. But it is not successfull.

 

Is there a deterministic guide?

 

Thanks

0 Kudos
Reply

1,656 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @Lukas_Frank ,   

   If you have any question, please create your own question post, then we will help you in your own question post, thanks.

Best Regards,

kerry

0 Kudos
Reply

1,650 Views
Lukas_Frank
Senior Contributor I

Dear @kerryzhou ,

 

You solved lots of my issues in the past. Thank you.

 

I have created some issue but can't get solution. Here are my issues below to wait reply. We will be use RT1064 for mass product after prototyping some requirements. Therefore, it is important us to use HyperFlash and HyperRam on our custom boards. I am looking forward to hearing from you.

 

Issues: 

https://community.nxp.com/t5/i-MX-RT/IMXRT1064-HyperFlash-via-FlexSPI/m-p/1763368

https://community.nxp.com/t5/i-MX-RT/IMXRT1064-HyperRAM-Configuration-Issue/m-p/1763813

https://community.nxp.com/t5/i-MX-RT/IMXRT1064-HyperRAM-Usage/m-p/1764070

 

Thanks and Regards.

0 Kudos
Reply

1,645 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @Lukas_Frank ,

  I find your post already have some of my colleagues to support you, eg, omar, so, to avoid the duplicated working time, please wait my colleague omar's updated information, thanks.

Best Regards,

Kerry

0 Kudos
Reply