-
Notifications
You must be signed in to change notification settings - Fork 494
Description
There appears to be issues when running PSRAM at non default frequencies.
I am running on 4.4.4, using a Pimoroni Pico Plus 2, and I am using the PSRAMTest example sketch.
The PSRAM is rated and programmed for 109MHz for this board.
I am testing the SCK speed using an oscilloscope for diagnostics.
I believe DDR is enabled for the following due to half expected clock being measured.
50MHz core, 109MHz PSRAM measures about 15MHz SCK and passes.
150MHz core, 109MHz PSRAM measures 50MHz SCK and passes.
200MHz core, 109MHz PSRAM measures about 67MHz SCK and fails.
150MHz core, 50MHz PSRAM measures about 25MHz SCK and passes.
200MHz core, 50MHz PSRAM measures about 33MHz SCK and passes.
300MHz core, 50MHz PSRAM does not give a PSRAM clock and fails.
In the following, I can only guess the speed drops low enough for DDR to disable.
50MHz core, 5MHz PSRAM measures about 1.7MHz SCK and passes.
150MHz core, 5MHz PSRAM measures 5MHz SCK and passes.
200MHz core, 5MHz PSRAM measures about 6.7MHz SCK and passes.
300MHz core, 5MHz PSRAM measures 10MHz SCK and passes.
From the data I collected, it seems the calculations are correct for 150MHz but the calculations do not scale to allow for changing of the core clock, creating stability issues at high clocks, and leaving performance on the table at low clocks.