Hi, there appears to be a small bug with your otherwise excellent deepfifo module. On reset you initialise the read and write addresses to zero, not the base_addr parameter.
Thanks, that's not a small bug, and it has been fixed. Judging from how long it took until someone came up with this, it's safe to assume that the vast majority use base_addr as zero (the default).