2019-08-18 09:57 PM
We have an existing bare metal environment using STM32F446ZET6 and 8MB of SRAM which works fine, hundreds of examples in the field.
A new smaller version of this platform uses PSRAM, namely IS66WVC4M16ECLL.
We are getting memory corruption issues we can't solve, despite very clean signals, no burst mode and slowing everything down..
Arduino dev forum seems to report similar issues, as yet unsolved.
Anyone else seen this?
2019-08-19 12:44 AM
You seem to hint there may be hardware issues with the PSRAM. To confirm that, write a trivial program - simply just writing to the memory, reading back and checking - possibly in a pattern as similar to the real usage as possible.
JW
2019-08-19 01:06 AM
That's what we have been doing.
However I'm the hardware guy. I've pointed the firmware dev guy to the driver for the disco board that uses PSRAM and the differences between the part on that board and the one we are using. Turns out he was using the existing SRAM code (it pays to ask the obvious questions!)
So watch this space, the issue may be resolved!
2019-08-19 02:55 AM
Hummm.
I was under the impression that PSRAMs are DRAMs with additional internal circuitry to make them function exactly as SRAMs... in other words, IMO there shouldn't be any difference between handling PSRAMs and SRAMs, or am I mistaken?
> disco board that uses PSRAM
Which one is it, for reference?
JW
2019-08-19 05:15 PM
Yes, so was I. That's why I used it! But from what we are seeing, not entirely so.
Board is STM32F7231EK6. We are looking at the code for this board and the datasheets for the ISSI PSRAM that it uses compared to our larger ISSI 64Mb part.
Current thinking is it's not hardware because the errors are consistent. We have been able to rule out stuck or shorted data and address lines over two prototypes.
2019-08-19 07:08 PM
The STM32F723iEK6 is a Chip, the board would presumably be this one https://www.st.com/en/evaluation-tools/32f723ediscovery.html
IS66WV51216EBLL-55BLI
An EE that does HW & SW
2019-08-19 07:18 PM
That's the one. Guess I should have said "board for STM32F723iEK6."
The IS66WV51216EBLL-55BLI is the PSRAM on that board.
Will be working on this again in a few hours.
2020-01-20 06:53 PM
Managed to solve? My EM7644SU16AxP-70LFx with an STM32F417 is also corrupting. D7 is at a high level sometimes. In the keil memory view the date is 00 then changes to 80, and it looks like this,
00 80 00 80 changing even if I update. I don't know if it's the memory or the STM.
D0 ~ D6-D8 ~ D15 are ok, only D7 is wrong.
2020-01-20 08:04 PM
Well yes, we did fix it. I should have reported this.
On our prototype board ball D6 (Vdd) and ball E1 (VddQ) were reversed. VddQ should be on 3.3v, Vdd on 1.8v. The pin naming in the datasheet is ambiguous.
To get the PSRAM on the prototype board working we dropped the 3.3v to 2.4v to get it to work. Very hard to patch a BGA! Had to do another PCB spin. It was a routing pain since this is a 4 layer board.
2020-01-20 09:20 PM