Globally Asynchronous Locally Synchronous

Globally asynchronous locally synchronous (GALS) is the architecture pattern where each subsystem runs with its own local clock while inter-domain communication uses asynchronous interfaces - it combines synchronous design productivity with scalable multi-domain integration.

What Is GALS?

  • Definition: Partitioning a chip into locally clocked islands connected by asynchronous or pausible-clock links.
  • Local Advantage: Each domain can optimize frequency, voltage, and clock tree independently.
  • Global Interface: Cross-domain boundaries use synchronizers, FIFOs, or handshake wrappers.
  • Target Systems: Large SoCs with heterogeneous accelerators and variable workload behavior.

Why GALS Matters

  • Scalability: Reduces global clock closure complexity in very large designs.
  • Power Efficiency: Domains can run at right-sized frequency and voltage without full-chip penalties.
  • Variation Isolation: Timing issues in one island do not force global frequency reduction.
  • IP Reuse: Independent clock domains simplify integration of third-party or legacy blocks.
  • Robustness: Better tolerance to local process and thermal differences across the die.

How GALS Is Realized

  • Domain Partitioning: Group logic by latency needs, workload profile, and voltage targets.
  • Boundary Design: Insert CDC-safe interfaces with verified buffering and metastability protection.
  • System Validation: Stress asynchronous crossings with jitter, drift, and burst-traffic scenarios.

GALS is a pragmatic architecture for modern heterogeneous SoCs where one global clock is no longer optimal - it preserves synchronous design strengths while enabling flexible, variation-aware system scaling.

Take globally asynchronous locally synchronous further

Ask the copilot about this term, or have our engineers assess it against your process.