Последовательная логика - Sequential logic

В теория автоматов, последовательная логика это тип логическая схема выход которого зависит не только от текущего значения его входных сигналов, но и от последовательность прошлых вводов, а также история ввода.[1][2][3][4] Это в отличие от комбинационная логика, вывод которого является функцией только текущего ввода. То есть последовательная логика имеет штат (объем памяти), а комбинационная логика - нет.

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

Знакомый пример устройства с последовательной логикой - это телевизор с кнопками "канал вверх" и "канал вниз".[1] Нажатие кнопки «вверх» дает телевизору сигнал о переключении на следующий канал выше того, который он принимает в данный момент. Если телевизор находится на канале 5, нажатие «вверх» переключает его на прием канала 6. Однако, если телевизор находится на канале 8, нажатие «вверх» переключает его на канал «9». Чтобы выбор канала работал правильно, телевизор должен знать, какой канал он принимает в данный момент, что было определено предыдущими выборами каналов.[1] Телевидение сохраняет текущий канал как часть своего штат. Когда ему предоставляется вход «канал вверх» или «канал вниз», последовательная логика схемы выбора канала вычисляет новый канал на основе входа и текущего канала.

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

Синхронная последовательная логика

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

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

Основное преимущество синхронной логики - ее простота. Логическим элементам, выполняющим операции с данными, требуется конечное количество времени, чтобы отреагировать на изменения их входных данных. Это называется Задержка распространения. Интервал между тактовыми импульсами должен быть достаточно длинным, чтобы все логические элементы успели отреагировать на изменения, а их выходы «установились» на стабильные логические значения до того, как появится следующий тактовый импульс. Пока это условие выполняется (игнорируя некоторые другие детали), схема гарантированно будет стабильной и надежной. Это определяет максимальную рабочую скорость синхронной схемы.

Синхронная логика имеет два основных недостатка:

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

Асинхронная последовательная логика

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

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

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

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

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

использованная литература

  1. ^ а б c Вай, М. Майкл (2000). Дизайн СБИС. CRC Press. п. 147. ISBN  0849318769.
  2. ^ Кавана, Джозеф (2006). Последовательная логика: анализ и синтез. CRC Press. стр. ix. ISBN  0849375649.
  3. ^ Липянский, Эд (2012). Основы электрики, электроники и цифрового оборудования для ученых и инженеров. Джон Уайли и сыновья. п. 8.39. ISBN  1118414543.
  4. ^ Далли, Уильям Дж .; Хартинг, Р. Кертис (2012). Цифровой дизайн: системный подход. Издательство Кембриджского университета. п. 291. ISBN  0521199506.

дальнейшее чтение