Динамическая логика (цифровая электроника) - Википедия - Dynamic logic (digital electronics)

В Интегральная схема дизайн, динамическая логика (или иногда синхронизированная логика) - это методология проектирования в комбинаторная логика схемы, особенно реализованные в MOS технологии. Он отличается от так называемой статической логики тем, что использует временное хранение информации в паразитных емкостях и емкостях затвора.[1] Он был популярен в 1970-х годах, а недавно стал свидетелем возрождения дизайна высокоскоростных цифровых устройств. электроника, особенно компьютер Процессоры. Динамические логические схемы обычно быстрее, чем статические аналоги, и требуют меньшей площади поверхности, но их сложнее спроектировать. Динамическая логика имеет более высокую скорость переключения[требуется разъяснение ] чем статическая логика[2] но емкостные нагрузки переключаемые меньше[3] поэтому общее энергопотребление динамической логики может быть выше или ниже в зависимости от различных компромиссов. Говоря о конкретном логическая семья, динамического прилагательного обычно достаточно, чтобы отличить методологию проектирования, например динамичный CMOS[4] или же динамичный ТАК ЧТО Я дизайн.[2]

Динамическая логика отличается от так называемой статическая логика в этой динамической логике используется тактовый сигнал в реализации комбинационная логика схемы. Обычно тактовый сигнал используется для синхронизации переходов в последовательная логика схемы. Для большинства реализаций комбинационной логики тактовый сигнал даже не требуется.

Статическую / динамическую терминологию, используемую для обозначения комбинаторных схем, не следует путать с тем, как одни и те же прилагательные используются для различения устройств памяти, например статическая RAM из динамическое ОЗУ.[5]

Терминология

В контексте логического дизайна термин динамическая логика чаще используется по сравнению с синхронизированная логика, поскольку он показывает различие между этим типом дизайна и статическая логика. Чтобы дополнительно запутать дело, синхронизированная логика иногда используется как синоним последовательная логика. Это нестандартное использование, и его следует избегать.

Статическая логика против динамической

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

В большинстве типов логического проектирования, называемых статическая логика, всегда есть какой-то механизм для управления выходом либо высоким, либо низким. Во многих популярных стилях логики, таких как TTL и традиционные CMOS, этот принцип можно перефразировать как утверждение о том, что между выходом и источником питания всегда есть путь постоянного тока с низким сопротивлением. Напряжение или земля. В качестве примечания: в этом определении, конечно, есть исключение в случае высокого сопротивление выходы, такие как буфер с тремя состояниями; однако даже в этих случаях схема предназначена для использования в более крупной системе, где какой-либо механизм будет управлять выходом, и они не считаются отличными от статической логики.

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

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

Статическая логика не имеет минимума тактовая частота - часы можно ставить на неопределенное время. Хотя может показаться, что бездействие в течение длительного периода времени не особенно полезно, это дает три преимущества:

  • возможность приостановить систему в любое время значительно упрощает отладку и тестирование, позволяя использовать такие методы, как одиночный шаг.
  • возможность запустить систему на очень низком уровне тактовая частота позволяет маломощная электроника чтобы работать дольше от данной батареи.
  • полностью статическая система может немедленно возобновить работу именно с того места, где она была остановлена; человеку не нужно ждать, пока система загрузится или возобновит работу.[6]

Возможность приостановить систему в любое время на любой срок также может использоваться для синхронизации ЦП с асинхронным событием. (Хотя для этого существуют и другие механизмы, такие как прерывания, циклы опроса, входные контакты процессора на холостом ходу [например, RDY на 6502 ], или механизмы расширения цикла шины процессора, такие как входы WAIT, с использованием аппаратного обеспечения для синхронизации тактовой частоты ЦП со статическим ядром, проще, более точны во времени, не используют память программного кода и почти не потребляют мощность ЦП, пока он ожидающий. В базовом исполнении, чтобы начать ожидание, ЦП будет записывать в регистр, чтобы установить двоичный бит защелки, который будет соединен операцией И или ИЛИ с тактовой частотой процессора, останавливая процессор. Сигнал от периферийного устройства сбросит эту защелку, возобновив работу ЦП. [Аппаратная логика должна блокировать входы управления защелкой по мере необходимости, чтобы гарантировать, что переход выхода защелки не приведет к мгновенному изменению уровня тактового сигнала и вызовет тактовый импульс, высокий или низкий, который короче, чем обычно.])

В частности, хотя многие популярные процессоры используют динамическую логику,[нужна цитата ] Только статические ядра - ЦП, разработанные с использованием полностью статической технологии, - могут использоваться в космических спутниках из-за их более высокой радиационная стойкость.[7]

При правильной разработке динамическая логика может быть более чем в два раза быстрее статической. Он использует только более быстрые транзисторы N, которые улучшают оптимизацию размеров транзисторов. Статическая логика медленнее, потому что в ней вдвое больше емкостной загрузка, выше пороги, и использует медленные транзисторы P для логики. С динамической логикой может быть труднее работать, но это может быть единственный выбор, когда требуется повышенная скорость обработки. Большая часть электроники в наши дни работает на частоте более 2 ГГц[когда? ] требуют использования динамической логики, хотя некоторые производители, такие как Intel, разработали микросхемы с полностью статической логикой для снижения энергопотребления.[8] Обратите внимание, что снижение энергопотребления не только увеличивает время работы с ограниченными источниками питания, такими как батареи или солнечные батареи (как в космических кораблях), но также снижает требования к тепловому дизайну, уменьшая размер необходимых радиаторов, вентиляторов и т. Д., Что в Turn снижает вес и стоимость системы.

В общем, динамическая логика значительно увеличивает количество транзисторов, которые переключаются в любой момент времени, что увеличивает энергопотребление по сравнению со статической КМОП.[8] Есть несколько методы энергосбережения которые могут быть реализованы в системе на основе динамической логики. Кроме того, каждая шина может передавать произвольное количество битов, и нет сбоев, связанных с потерей энергии. Энергосберегающие тактовые стробирующие и асинхронные методы гораздо более естественны в динамической логике.

Пример статической логики

В качестве примера рассмотрим статическую логическую реализацию шлюза CMOS NAND:

CMOS NAND.svg

Эта схема реализует логическую функцию

Если А и B оба высокие, выходной сигнал будет низким. А если либо А или же B низкие, выход будет повышен. Всегда выводится либо низкий, либо высокий уровень.

Пример динамической логики

Рассмотрим теперь динамическую логическую реализацию той же логической функции:

Dlnand.svg

Схема динамической логики требует двух фаз. Первый этап, когда Часы низкий, называется этап настройки или фаза предварительной зарядки и вторая фаза, когда Часы высокий, называется этап оценки. На этапе настройки выход безоговорочно устанавливается на высокий уровень (независимо от значений входов А и B). В конденсатор, который представляет емкость нагрузки этого затвора, становится заряженным. Поскольку нижний транзистор выключен, во время этой фазы невозможно установить низкий уровень на выходе.

Вовремя этап оценки, Часы в приоритете. Если А и B также высоки, выход будет понижен. В противном случае выходной сигнал остается высоким (из-за емкости нагрузки).

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

Кроме того, когда оба А и B имеют высокий уровень, так что выходной сигнал низкий, схема будет перекачивать одну нагрузку конденсатора с Vdd на землю за каждый тактовый цикл, сначала заряжая, а затем разряжая конденсатор в каждом тактовом цикле. Это делает схему (с выходом, подключенным к высокому импедансу) менее эффективным, чем статическая версия (которая теоретически не должна пропускать ток, кроме как через выход), и когда А и B входы постоянны и оба имеют высокий уровень, динамический логический элемент И-НЕ использует мощность пропорционально тактовая частота, если он работает правильно. Рассеивание мощности можно минимизировать, поддерживая низкую емкость нагрузки, но это, в свою очередь, сокращает максимальное время цикла, требуя более высокой минимальной тактовой частоты; более высокая частота увеличивает потребление энергии в соответствии с только что упомянутым соотношением. Следовательно, невозможно снизить энергопотребление в режиме простоя (когда оба входа высокие) ниже определенного предела, который возникает из равновесия между тактовой частотой и емкостью нагрузки.

Популярная реализация логика домино.

Смотрите также

Рекомендации

  1. ^ Ларс Ванхаммар (1999). Интегральные схемы DSP. Академическая пресса. п. 37. ISBN  978-0-12-734530-7.
  2. ^ а б Эндрю Маршалл; Сридхар Натараджан (2002). Дизайн SOI: аналоговые, запоминающие и цифровые методы. Springer. п. 125. ISBN  978-0-7923-7640-8.
  3. ^ А. Альберт Радж, Т. Лата. Дизайн СБИС. PHI Learning Pvt. ООО п. 167. ISBN  978-81-203-3431-1.
  4. ^ Брюс Джейкоб; Спенсер Нг; Дэвид Ван (2007). Системы памяти: кэш, DRAM, диск. Морган Кауфманн. п. 270. ISBN  978-0-12-379751-3.
  5. ^ Дэвид Харрис (2001). Устойчивый к перекосам дизайн схемы. Морган Кауфманн. п. 38. ISBN  978-1-55860-636-4.
  6. ^ Ричард Мюррей.«Аппаратное обеспечение PocketBook II».
  7. ^ AMSAT-DL: «Нет RISC, нет удовольствия!» В архиве 2013-04-13 в Wayback Machine Питер Гюльцов
  8. ^ а б http://www.anandtech.com/cpuchipsets/intel/showdoc.aspx?i=3448&p=9

Общие ссылки

  • Сунг-Мо Канг; Юсуф Леблебичи (2003). Цифровые интегральные схемы CMOS: анализ и проектирование (3-е изд.). Макгроу-Хилл. ISBN  978-0-07-246053-7. Глава 9, «Динамические логические схемы» (глава 7 во 2-м издании)
  • Р. Джейкоб Бейкер (2010). CMOS: схемотехника, компоновка и моделирование (3-е изд.). Wiley-IEEE. ISBN  978-0-470-88132-3. Глава 14, «Динамические логические ворота»
  • Эндрю Маршалл; Сридхар Натараджан (2002). Дизайн SOI: аналоговые, запоминающие и цифровые методы. Springer. ISBN  978-0-7923-7640-8. Глава 7, «Динамический дизайн SOI»

внешняя ссылка