Глобально асинхронный локально синхронный ( GALS ) в электронике — это архитектура для проектирования электронных схем , которая решает проблему безопасной и надежной передачи данных между независимыми доменами синхронизации . GALS — это модель вычислений , которая появилась в 1980-х годах. Она позволяет проектировать компьютерные системы, состоящие из нескольких синхронных островов (используя синхронное программирование для каждого такого острова), взаимодействующих с другими островами с помощью асинхронной связи , например, с помощью FIFO .
Схема GALS состоит из набора локально синхронных модулей, взаимодействующих друг с другом через асинхронные оболочки. Каждая синхронная подсистема («домен синхронизации») может работать на собственных независимых тактовых частотах. Преимущества включают в себя гораздо более низкие электромагнитные помехи (EMI). Схема CMOS (логические вентили) требует относительно большого тока питания при изменении состояния с 0 на 1. Эти изменения агрегируются для синхронной схемы , поскольку большинство изменений инициализируются активным фронтом синхронизации. Поэтому большие всплески тока питания происходят на активных фронтах синхронизации. Эти всплески могут вызывать большие электромагнитные помехи и могут привести к неисправности схемы . Чтобы ограничить эти всплески, используется большое количество развязывающих конденсаторов . Другое решение — использовать стиль проектирования GALS, т. е. проектирование (локально) синхронное (поэтому его легче проектировать, чем асинхронную схему ), но глобально асинхронное, т. е. существуют различные (например, сдвинутые по фазе, нарастающие и падающие активные фронты) режимы тактового сигнала, поэтому всплески тока питания не агрегируются одновременно. Следовательно, стиль проектирования GALS часто используется в системах на кристалле (SoC). [1] Он особенно часто используется в архитектурах сетей на кристалле (NoC) для SoC. [2]
Некоторые более крупные схемы GALS содержат несколько ЦП. Обычно каждый ЦП в таком асинхронном массиве простых процессоров имеет свой собственный независимый генератор. Этот генератор может быть остановлен, когда для его ЦП нет работы.
В некоторых случаях каждый ЦП далее делится на более мелкие модули, каждый из которых имеет собственные независимые часы, а в некоторых случаях часы вообще отсутствуют ( Асинхронная схема § Асинхронный ЦП ).