Обычно в цифровом дизайне мы имеем дело с триггерами, которые запускаются при переходе тактового сигнала от 0 к 1 (с положительным фронтом), а не при переходе с 1 на 0 (с отрицательным фронтом). Я знал об этом соглашении с первых моих исследований последовательных цепей, но до сих пор не ставил его под сомнение.
Является ли выбор между положительным и отрицательным фронтом произвольным? Или есть практическая причина, почему триггеры с положительным фронтом стали доминирующими?
digital-logic
mosfet
signal
travisbartley
источник
источник
Ответы:
Наилучшее предположение: положительный тренд является побочным продуктом дизайна, пытающегося использовать как можно меньшую площадь / детали до 1970-х годов . Мера экономии затрат на производство за счет увеличения количества чипов на пластине. Современные положительные / отрицательные DFF часто имеют одинаковую общую площадь, поэтому тенденция положительных границ в настоящее время является унаследованной практикой.
Сохранение площади получилось благодаря классическому дизайну D-триггеров. Современные ведущие / ведомые компоненты D-триггера могут использовать две 5-транзисторные защелки; Патенты WO1984003806 А1 и US4484087 A, поданные 23 марта 1984 года. Патент D-защелки с 8 транзиторами был подан 6 февраля 1970 г .; US3641511 . Для простоты конструкции, основанные на защелках SR / SnRn, будут называться «классическими» и «современными» для конструкций, использующих упомянутые патенты на D-защелки / S-ячейки.
В схеме IC логический элемент NAND использует меньшую площадь, чем вентиль NOR из-за характерных свойств NMOS и PMOS. Форма там, площадь сохранения размеров трендовых каскадов. D-образные защелки SnRn меньше, чем у SR-защелок. Классические конструкции D-триггеров основаны на этих логических элементах. После поиска нескольких дизайнов классические дизайны с положительным краем всегда меньше классических дизайнов с отрицательным краем. Переход на современность произошел по мере того, как стоимость чипов стала благоприятной: экономия площади по сравнению с гонораром роялти.
Копаем немного глубже, чтобы продемонстрировать различия в области:
Классический D-триггер с положительным фронтом : на основе схемы Википедия описывает классический D-триггер с положительным фронтом и диаграмму, используя пять NAND2 и один NAND3. Это использует в общей сложности тринадцать NMOS и тринадцать PMOS.
смоделировать эту схему - схема, созданная с использованием CircuitLab
Лучший классический D-триггер с отрицательным фронтом, который я смог найти, - это использование двух D-защелок и двух инверторов. Схематическая ссылочная форма http://students.cs.byu.edu/~cs124ta/labs/L02-FSM/HowToUseMasterSlave.html . Всего используется восемнадцать NMOS и восемнадцать PMOS. Размещение инвертора на классической схеме выше снизит количество транзисторов этой конструкции. В любом случае, классический отрицательный край больше, чем дизайн положительного края.
смоделировать эту схему
Современная конструкция D-триггера может выглядеть следующим образом на основе патентов WO1984003806 A1 и US4484087 Описание D-триггера с пятью транзисторами. Это использует в общей сложности пять NMOS и один PMOS; большая экономия по сравнению с классической Изменение порядка «главный / подчиненный» создаст триггер отрицательного края равного размера.
смоделировать эту схему
Я только демонстрирую самые маленькие возможные проекты. Проекты могут основываться на требованиях дизайна, допустимых стандартных библиотеках ячеек, функциях сброса / предустановки или других причинах.
источник
Здесь есть некоторые базовые предположения, которые были рассмотрены в другом посте (который я не могу найти сейчас).
Если вы посчитаете общее количество размещенных логических элементов и тактовую логику (общее количество отгруженных FF), они, вероятно, будут в процессорах и микропроцессорах, Intel, DEC и т. Д. В результате вы получите небольшие группы люди / команды, которые отвечают за дизайн, охватывающий многие десятилетия, с небольшим количеством деталей внутренней работы.
И наоборот, у вас есть много разных команд, работающих над потоками ASIC, с большим количеством проектов, но соответствующих меньшим объемом.
Большинство конструкций процессоров на самом деле не имеют положительного или отрицательного тактового фронта, но спроектированы с использованием схемы синхронизации с двойной защелкой (NOC (Non Overlapped Clock)).
Таким образом, вы получите входные данные -> (логическое облако) -> фиксатор от часов -> логическое облако -> фиксатор от! Clock. Который является канонической формой главного подчиненного FF с логикой, вставленной внутрь.
Такая методология проектирования имеет несколько преимуществ, но также имеет дополнительную сложность.
Еще одна неприятная вещь заключается в том, что эта методология проектирования не преподается в большинстве университетов. Все конструкции Intel x86 относятся к этому типу (не следует путать внешнюю работу интерфейсов с внутренней работой) с заметными синтезируемыми ядрами SOC, которые они разрабатывали для мобильных телефонов.
Отличный дискурс по этому поводу можно найти в «Dally, William J. и John W. Poulton». Цифровая разработка систем. Cambridge University Press, 1998. В разделе 9.5 обсуждается «синхронная синхронизация без обратной связи» <заголовок главы. Но, чтобы процитировать «синхронизация по фронту, однако, редко используется в высокопроизводительных микропроцессорах и системах, в основном потому, что это приводит к минимальному времени цикла, зависящему от перекоса тактовой частоты».
Да, совершенно педантичный ответ. но важная методология, которая малоизвестна, учитывая, сколько всего транзисторов в этих конструкциях (много и много).
источник
Текущая производительность технологии CMOS (с точки зрения мощности / площади / скорости / стоимости), кажется, нечувствительна к используемой схеме запуска.
Я не могу доказать вышеприведенное утверждение строго, потому что оно требует много предварительных знаний и исследований, и даже краткое изложение доказательства, вероятно, будет слишком длинным для ответа. Насколько мне известно, нет никаких различий, поэтому позвольте мне предположить, что это так.
Я либо не знаю, верно ли ваше утверждение о том, что триггеры обычно запускаются на положительном фронте часов (я верю). Позвольте мне предположить, что это также верно для целей следующего обсуждения.
При всех вышеизложенных предположениях я вижу только две возможности:
Чтобы увидеть, когда срабатывание положительного фронта стало стандартом, я решил проследить эволюцию схем тактирования процессоров Intel :
Похоже, что Intel начала с запуска по отрицательному фронту (если этот термин вообще можно применить к самым первым процессорам), но переключилась на запуск по положительному фронту, начиная с 386.
8086 использовал технологию HMOS (своего рода логика NMOS с истощением нагрузки ), тогда как 80386 был CHMOS (это своего рода CMOS). Похоже, что запуск положительного фронта произошел параллельно с внедрением технологии CMOS. Мы предположили, что CMOS не дает никаких преимуществ для запуска положительного фронта, поэтому кажется, что это соглашение является произвольным.
Однако необходимо учитывать три момента:
Ясно, что есть место для дополнительных исследований. Продолжение следует...
источник