Some parts of the design (/common/FIFO.vhd) use a synchronous reset while the rest of the design uses an asynchronous reset. It's not really a bug, but inconsistent design, and it caused a lot of trouble for me.
I think the whole design should use either synchronous or asynchronous reset