Hi,
I want to evaluate hyperram using flexspi on the i.MX RT 1064. I found some appnotes, but the driver example no longer seems to be included in the latest SDKs. Where can I find it? Is hyperram still being actively supported?
Any help on this would be highly appreciated
HyperRAM demo is not included in RT1064 SDK, as there is no HyperRAM in RT1064-EVK.
You can refer to AN12239SW https://www.nxp.com/docs/en/nxp/application-notes-software/AN12239SW.zip
Hello, the RT 1064 EVK board supports hyperram just fine according to the schematic. In fact, as far as I can tell the 1064 EVK is pretty much identical to the 1050 EVK. Both boards require swapping of the on board hyperflash with a hyperram chip according to the application note AN12239. Also, using hyperram seems like it would be a pretty common use case for all sorts of applications because of the much lower pin count compared to SDRAM. So I don't really understand why the example would no longer be included in the SDK.
In any case, I have tried to adapt the example code you sent me, to my own hardware. I can get it running, however the first read/write check fails on the hyperram. I.e. comparing the read buffer to the write buffer. If I understand correctly, the RAM is filled with sequential numbers (0,1,2,3,...) and is read out again and compared to check if the read/write was successful. When I look in the read buffer, the sequential numbers are there, however they are shifted by 4 (so it starts with 4,5,6,...). It looks to me like some sort of timing issue. Can you provide any clues as to what might be wrong with my config?
The hyperram I'm using is also the Cypress S27KS0641, but I am using 3V3 instead of 1V8 so the SPI clock needed to be lowered to at least 100MHz. However I am unsure of the other parameters ( .CSInterval,.CSHoldTime,.CSSetupTime, etc.). I can't really see how the values in the example code relate to the datasheet values of the S27KS0641.
Also, just to confirm: there is no problem in using FLEXSPI on the IMX RT1064 because of the on chip flash right? Because that one uses a different bus entirely (FLEXSPI2)?