What are common ways that modern processors handle data hazards with asynchronous registers
In general any asynchronous inputs to the system (such as from peripherals) would be synchronized with a dual rank register to make it synchronous to the processor clock before it is used by any processor state machine.



From: Synchronization in digital logic cercuits