Convert async resets to sync resets
Convert all asynchronous resets to synchronous resets to make timing closure and routing easier.
This is recommended by Xilinx: https://docs.xilinx.com/r/en-US/ug949-vivado-design-methodology/Synchronous-Reset-vs.-Asynchronous-Reset
And empirically, it helps a lot with very full designs.