My synthesis run keeps inferring a latch on the address decoder. I have a default in the case statement — what else causes this?
A default covers the case arms, but every output assigned inside the block needs a value on every path. Assign all of them at the top of the always block, then override.
This bit me last week too. Default-assign everything first, fixed it instantly.