HOME

TheInfoList



OR:

Globally asynchronous locally synchronous (GALS), in
electronics Electronics is a scientific and engineering discipline that studies and applies the principles of physics to design, create, and operate devices that manipulate electrons and other Electric charge, electrically charged particles. It is a subfield ...
, is an architecture for
designing A design is the concept or proposal for an object, process, or system. The word ''design'' refers to something that is or has been intentionally created by a thinking agent, and is sometimes used to refer to the inherent nature of something ...
electronic circuit An electronic circuit is composed of individual electronic components, such as resistors, transistors, capacitors, inductors and diodes, connected by conductive wires or Conductive trace, traces through which electric current can flow. It is a t ...
s that addresses the problem of safe and reliable
data transfer Data communication, including data transmission and data reception, is the transfer of data, transmitted and received over a point-to-point or point-to-multipoint communication channel. Examples of such channels are copper wires, optical ...
between independent
clock domain In electronics, metastability is the ability of a digital electronic system to persist for an unbounded time in an unstable equilibrium or metastable state. In digital logic circuits, a digital signal is required to be within certain voltage or ...
s. GALS is a
model of computation In computer science, and more specifically in computability theory and computational complexity theory, a model of computation is a model which describes how an output of a mathematical function is computed given an input. A model describes how ...
that emerged in the 1980s. It allows to design computer systems consisting of several synchronous islands (using synchronous programming for each such island) interacting with other islands using
asynchronous communication In telecommunications, asynchronous communication is transmission of data, generally without the use of an external clock signal, where data can be transmitted intermittently rather than in a steady stream. Any timing required to recover data fro ...
, e.g. with FIFOs.


Details

A GALS circuit consists of a set of locally synchronous modules communicating with each other via asynchronous wrappers. Each synchronous subsystem ("clock domain") can run on its own independent clock (frequency). Advantages include much lower electromagnetic interference (EMI). The
CMOS Complementary metal–oxide–semiconductor (CMOS, pronounced "sea-moss ", , ) is a type of MOSFET, metal–oxide–semiconductor field-effect transistor (MOSFET) semiconductor device fabrication, fabrication process that uses complementary an ...
circuit (logic gates) requires relatively large supply current when changing state from 0 to 1. These changes are aggregated for
synchronous circuit In digital electronics, a synchronous circuit is a digital circuit in which the changes in the state (computer science), state of memory elements are synchronized by a clock signal. In a sequential logic, sequential digital logic circuit, data ...
as most changes are initialised by an active clock edge. Therefore, large spikes on supply current occur at active clock edges. These spikes can cause large electromagnetic interference, and may lead to circuit
malfunction A malfunction is a state in which something functions incorrectly or is obstructed from functioning at all. Some types of malfunctions are: *Malfunction (parachuting) A malfunction is a partial or total failure of a Parachute, parachuting de ...
. In order to limit these spikes large number of
decoupling capacitor In electronics, a decoupling capacitor is a capacitor used to decouple (i.e. prevent electrical energy from transferring to) one part of a circuit from another. Noise caused by other circuit elements is shunted through the capacitor, reduc ...
s are used. Another solution is to use a GALS design style, i.e. design (locally) is synchronous (thus easier to be designed than
asynchronous circuit Asynchronous circuit (clockless or self-timed circuit) is a sequential logic, sequential digital logic electrical network, circuit that does not use a global clock circuit or clock signal, signal generator to synchronize its components. Instea ...
) but globally asynchronous, i.e. there are different (e.g. phase shifted, rising and falling active edge) clock signal regimes thus supply current spikes do not aggregate at the same time. Consequently, GALS design style is often used in
system on a chip A system on a chip (SoC) is an integrated circuit that combines most or all key components of a computer or Electronics, electronic system onto a single microchip. Typically, an SoC includes a central processing unit (CPU) with computer memory, ...
(SoC).Zhoukun WANG and Omar HAMMAMI. "A 24 Processors System on Chip FPGA Design with Network on Chip"

/ref> It is especially used in
network on a chip A network on a chip or network-on-chip (NoC or )This article uses the convention that "NoC" is pronounced . Therefore, it uses the convention "a" for the indefinite article corresponding to NoC ("a NoC"). Other sources may pronounce it as an ...
(NoC) architectures for SoCs. Some larger GALS circuits contain multiple CPUs. Generally each CPU in such an
asynchronous array of simple processors The asynchronous array of simple processors (AsAP) architecture comprises a 2-D array of reduced complexity programmable processors with small scratchpad memories interconnected by a reconfigurable mesh network. AsAP was developed by researchers ...
has its own independent oscillator. That oscillator can be halted when there's no work for its CPU to do. In some cases each CPU is further divided into smaller modules, each with their own independent clock, or in a few cases no clock at all ().


See also

* Synchronous programming *
Asynchronous programming Asynchrony, in computer programming, refers to the occurrence of events independent of the main program flow and ways to deal with such events. These may be "outside" events such as the arrival of signals, or actions instigated by a program that t ...
*
Concurrency (computer science) Concurrency refers to the ability of a system to execute multiple tasks through simultaneous execution or time-sharing (context switching), sharing resources and managing interactions. Concurrency improves responsiveness, throughput, and scalabi ...
*
Asynchronous system The primary focus of this article is asynchronous control in digital electronic systems. In a synchronous system, operations ( instructions, calculations, logic, etc.) are coordinated by one, or more, centralized clock signals. An asynchro ...
* Clock domain crossing *
SIGNAL A signal is both the process and the result of transmission of data over some media accomplished by embedding some variation. Signals are important in multiple subject fields including signal processing, information theory and biology. In ...
– a dataflow-oriented synchronous language enabling multi-clock and GALS specifications


References


General

*
Dataflow Architectures for GALS
{{DEFAULTSORT:Globally Asynchronous Locally Synchronous Synchronization Digital circuits