sdram icon indicating copy to clipboard operation
sdram copied to clipboard

REFRESH operation is 90ns

Open tomcircuit opened this issue 2 years ago • 0 comments

First off, this is a nice and streamlined SDRAM controller in VHDL - thank you!

As I was simulating this (GHDL/GTKWave) I noticed that a REFRESH operation takes 90ns, not 70ns. I suspect that this is an artifact of the change to rising clock edges and the extra buffer stage. In the waveforms below, refresh_i is clocked at 704ns, and done_o is clocked at 794ns. dT = 90ns

sdram_simple_90ns_refresh

I believe the fix is as simple as adjusting the timer_x assignment at line 300 from timer_x <= 7; to timer_x <= 5; With the new assignment, the REFRESH operation now takes 70ns to run.

sdram_simple_70ns_refresh

Here is zip file with modified source and testbench and makefile for GHDL/GTKWave sdram_simple_90ns_refresh_issue.zip

tomcircuit avatar Apr 20 '23 15:04 tomcircuit