Coming back to this point.
After reading the docs, I understand that the sram outputs are not registered. But all I looked at was the verilog model, and it is quite misleading, because the outputs are registered with the negative edge.
If you do the model timing accurate, then I don’t understand why you make the behavior timing dependent of the user-defined clock period.
The main critical point here is that it can lead to an RTL/silicon mismatch, when the user captures the outputs with a neg-edge. Same problem when the user clocks the sram with the neg-edge of the design clock.
So I’m just trying to contribute here and I can be totally wrong with that, but I recommend to look into this issues again, eventually.
Cheers, Tobias