A multiple clock domain (MCD) microarchitecture uses a
globally-asynchronous, locally-synchronous (GALS) clocking style. In an
MCD microprocessor each functional block operates with a separately
generated clock, and synchronizing circuits ensure reliable inter-domain
communication. Thus, fully synchronous design practices are used in the
design of each domain.