Почему не полностью распространены асинхронные схемы? [закрыто]


19

Насколько я понимаю, большинство современных потребительских процессоров основаны на синхронной логике. В некоторых высокоскоростных приложениях (обработка сигналов и т. Д.) Для более высокой скорости используется логика асинхронизации.

Тем не менее, на современном рынке скорость в потребительских товарах является одним из главных преимуществ (см. AMD против Intel). Является ли разработка более сложной литографии быстрее, чем принятие полностью асинхронной логики? Или логика асинхронизации слишком сложна / непрактична для приложений VLSI?


4
Я думаю, что их очень сложно запрограммировать на процедурной основе.
mehmet.ali.anil

16
Нынешние архитектуры являются гибридными. Синхронные блоки связаны между собой асинхронно. И да, асинхронная логика намного сложнее.
Евгений Ш.

5
Потому что у нас пока нет хороших инструментов для закрытия асинхронного времени.
Oldfart

2
Системы становятся все более асинхронными. На современных процессорах такие вещи, как ОЗУ, кэш и ядра ЦП, работают с независимыми тактовыми частотами. Новые процессоры Intel HEDT делают еще один шаг вперед и позволяют каждому из множества ядер чипов работать на тактовых частотах, независимых друг от друга, а также от ОЗУ, кеша и внешних шин и т. Д.
J ...

1
Следует помнить одну вещь: синхронные часы вводят стандартизированное сердцебиение для системы, в то время как если вы используете чисто асинхронный дизайн, в противном случае тривиальные временные различия, такие как задержка распространения, могут быть учтены другими способами. Также относительно эффективно реализовать чистые функции в асинхронных проектах, но функции с состоянием (или более сложные операции, такие как квадратный корень) могут усложняться. Маршрутизация сигналов также может быть затруднена (нет автобусов, вы можете застрять, соединяя все со всем).
JRH

Ответы:


45

Я провел несколько лет в стартапе, коммерциализируя технологию асинхронного проектирования, поэтому я знаком с причинами:

  • асинхронный не является по своей сути быстрее. Наихудшая задержка пути остается неизменной. Просто иногда вы можете воспользоваться более быстрым выполнением пути.

  • У async тоже есть накладные расходы на обнаружение завершения.

  • Инструменты дизайна. Это действительно большая проблема: на самом деле нет полного асинхронного потока инструментов, доступных с тем же качеством, что и синхронный дизайн.

  • Повышение квалификации. Вам фактически придется переучить всех ваших дизайнеров на новой парадигме и инструментах.

  • Риск и консервативность. Большая часть отрасли «производит нечто похожее на предыдущее, но немного другое». Это имеет очень высокий шанс на работу. Компании гораздо более неохотно строят что-то совершенно иное, поскольку у них гораздо больше шансов на полное списание, которое стоит десятки миллионов долларов.


Это может быть дешевле, но медленнее.
Тони Стюарт Sunnyskyguy EE75

3
Я помню, как думал об этом однажды, и также понял: синхронизированный чип тривиально разогнан (для батареи / температуры / и т. Д.), Тогда как асинхронизированный чип, вероятно, меньше?
Мычание утки

С точки зрения средств проектирования / парадигмы, синхронная логика способна полностью игнорировать сбои в выводе комбинаторной логики и требует только отсутствия тактовых сигналов. Кроме того, асинхронные схемы с большей вероятностью требуют добавления дополнительной задержки для некоторых сигналов, чтобы гарантировать, что сигнал готовности не может поступить в следующий блок до поступления данных и т. Д. В синхронных схемах искусственная задержка редко требуется. На ум приходит один из немногих случаев - удовлетворение требований времени удержания, которые часто могут быть удовлетворены естественной задержкой. Кроме того, некоторые ситуации в домене с перекрестной синхронизацией могут нуждаться в задержке.
Кевин Кэткарт

Я думаю, что во многих ситуациях использование двухфазных непересекающихся тактовых импульсов может дать много преимуществ по сравнению с единичными тактовыми импульсами. При использовании одиночных синхроимпульсов любые импульсы запуска могут привести к тому, что система перескочит через рельсы, но при использовании двухфазных синхроимпульсов, генерируемых путем подачи тактового сигнала через два компаратора, пульсирующие импульсы на фазе синхроимпульса будут безвредными, если им предшествует или сопровождается тактовый импульс действительной длины без промежуточного импульса на противоположной тактовой фазе.
суперкат

3
@MooingDuck Это зависит от логической парадигмы. Я работал над некоторой Null Convention Logic, и она будет работать так быстро, как позволят условия (процесс, напряжение, температура). Из- за этих условий вам не нужно будет уделять этому меньше времени , он сделает это автоматически .
W5VO

3

Очень заманчиво проектировать асинхронные интегральные схемы. Другие ответы уже охватывают множество причин дважды подумать, прежде чем делать это. Вот еще один:

Разработка IC не закончена с дизайном. Проверка и проверка одинаково важны. Не только инструменты проектирования очень продвинуты для синхронных схем, но и инструменты моделирования и испытательное оборудование - то же самое.

верификация

Недостаточно, чтобы цепи работали в лабораторных условиях. Они должны быть устойчивыми по отношению к диапазону рабочего напряжения (V), диапазону рабочей температуры (T) и изменениям, связанным с производственным процессом (P). Для синхронной логики это может быть гарантировано с помощью статического временного анализа. Схема разомкнута на все временные пути, от триггера до триггера. Время установки и удержания проверяется для каждого отдельного временного тракта и для различных комбинаций P, T и V. Эти комбинации PTV являются так называемыми углами моделирования.

Подобная проверка может быть выполнена для асинхронных схем, но она намного сложнее и намного менее поддерживается инструментами проектирования. Он также ограничивает конструктор асинхронными конструкциями, которые фактически могут быть проверены. Не существует надежной проверки для произвольных асинхронных схем.

Тестовое задание

Аналогичные трудности возникают при тестировании оборудования. Тестирование синхронной логики полностью поддерживается стандартами тестирования и оборудованием. Тестирование асинхронных схем не только более сложное, но и из-за отсутствия временной абстракции недостаточно даже доказать, что схема будет работать для всех углов PTV. Схема может выйти из строя из-за условий гонки при некоторой комбинации PTV, которая не покрыта углами.

Резюме

Разработчики ИС не отказались от асинхронной парадигмы, но асинхронная логика имеет серьезные недостатки при проверке и валидации. В промышленном контексте проект асинхронной ИС должен быть ограничен конструкцией, которая, как можно доказать, работает во всем пространстве параметров изменения процесса, а также в рабочих диапазонах температуры и напряжения.

Так называемая «Локально синхронная глобально асинхронная» конструкция - это один из способов получить больше преимуществ и меньше недостатков обеих парадигм синхронизации.


0

Асинхронные двоичные счетчики проще, потому что они используют только 1 ячейку памяти или T триггер на деление на два. Следовательно, старые CD и 74HC4020 и 4040 предлагают много бинарных этапов по дешевке. Задержка поддержки на каждом этапе означает, что она не может быть использована без условий гонки или сбоев с логическим декодированием двоичных адресов, если только задержка поддержки не меньше 1/2 входного тактового цикла с использованием заднего фронта для фиксации результата. Выходная задержка затем умножается на N каскадов.

Синхронные двоичные счетчики используют дополнительную ячейку памяти для D FF для задержки, но сводят к минимуму задержку до значения 1 для любой длины счетчиков, чтобы она занимала большую площадь.

Следовательно, все ЦП используют дополнительные тактовые частоты для оптимизации ожидаемой задержки в адресах и чтении / записи памяти, чтобы максимизировать производительность, но не превышать время задержки, время установки и удержания.

Память теперь использует много фаз, таких как DDR, 3DR, 4DR, 5DR, особенно для графической памяти, но с тактовыми частотами ЦП, которые идут намного быстрее, чем частота ОЗУ за один цикл, так что задержки чтения и записи могут быть синхронизированы с помощью одного, нескольких или половины числа Суперклок (например, 100 МГц xN), обозначенный T дробным или целым числом, считается для каждого параметра. Эти задержки реквизита увеличиваются с темпом. Для CMOS и уменьшайте при более высоком напряжении Vram, которое при правильном охлаждении может уменьшить задержку или другое увеличение Pd и температуры, а также ухудшить (замедлить). Таким образом, охлаждение, V, f, T все имеют решающее значение для оптимальной задержки, независимо от того, используется ли она для операций Async или Sync.


-1

Ранние логические схемы были асинхронными. Часто они были смешаны с аналоговыми схемами тоже. Однако с течением времени проекты становились все более сложными, что требовало от инженеров работы над одним проектом. Временные диаграммы асинхронности. логика может быть громоздкой, когда много состояний. Теперь добавьте команду инженеров, пытающихся связать различные блоки логики вместе, но время между ними не очень хорошо выровнено. Конструкции становятся хрупкими к изменениям непредвиденными способами.

Введите синхронный логический дизайн. Теперь все потоки состояний выровнены по тактовому сигналу, что позволяет очень хорошо определять интерфейсы и быть более устойчивым к изменениям конструкции. Да, он может использовать больше ворот, но он (как правило) стабилен по конструкции; в отличие от стабильного до тех пор, пока его никто не трогает!


1
Существуют также методологии асинхронного проектирования, которые гарантируют «правильный дизайн» и «четко определенные интерфейсы». Они просто отличаются от упрощающих предположений, сделанных для синхронных конструкций.
Эдгар Браун
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.