Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889), страница 157
Текст из файла (страница 157)
Рис. 7.74. Таблица состояний для 0-защелки, изображенной на рис. 7.72, с обведенными кружками устойчивыми состояниями в целом С0 5 ОО 01 11 1О ВО Я Я 5( Я 51 95 Я Я ВО Чтобы проанализировать работу схемы, нам необходимо определить также, как ведут себя выходные сигналы в зависимости от внутреннего состояния и сигналов, действующих на входах. В данном примере два выхода, поэтому выходные сигналы определяются двумя уравнениями выхода (оигри( едиа((опз): О =С. О+С7.7+0 У Ой =С 0'+Т. Рис. 7.75. Таблица состояний и выхода для 0-защелки С0 01 11 10 ао (,3, О( Я), О( 5(.11 В( Я!О Я!О Я!О (,йб(, О 80,01 Обратите внимание на то, что О и ОЙ вЂ” это выходы, но не переменные состояния, хотя у схемы два выхода, сигналы на которых теоретически могут образовывать четыре комбинации значений, имеется только одна переменная состояния т и, следовательно, только два состояния.
Значения выходных сигналов, предсказываемые уравнениями для О и О(Ч, можно включить в объединенную таблицу состояний и выхода, полностью описывающую работу схемы, как это сделано на рис. 7.75. Хотя обычно О и О(Ч дополняют друг друга, они могут все же иметь одинаковые значения (1) в течение короткого времени при переходе из состояния ВО в состояние 81, как это видно из записи в таблице в столбце для С 0 =11. 708 Глава 7. Принципы проектирования последоватальностных схем Рис. 7.76.
Анализ поведения 0-защел- ки прн нескольких переходах С0 00 0! 11 !О 80 О80 Л~ О80 .01 81 ® 10 ® !О С81~ !О ®,<П 80, О! Теперь мы можем вернуться к вопросу об одновременном изменении входных сигналов. Несмотря на то, что на практике может происходить «почти одновременное» изменение входных сигналов, мы должны предполагать при анализе поведения последовательностных схем, что ничего не случается одновременно. В пользу невозможности одновременных событий говорит разброс самих задержек в компонентах схемы, которые зависят от напряжения питания, температуры и значений параметров, выдерживавшихся при изготовлении.
Как следствие этого, наблюдаемое нами «одновременное» изменение и входных сигналов в действительности, с точки зрения работы схемы, происходит в каком-то определенном порядке, и при этом существует и! различных вариантов. Теперь по таблице состояний и выхода мы можем предвидеть поведение схемы, Прежде всего отметим, что столбцы таблицы состояний расположены в том порядке, в каком входные сигналы перебираются в карте Карно, так что только один бит в совокупности входных сигналов меняется при последовательном переходе от столбца к столбцу.
Такое расположение поможет нам при анализе, поскольку предполагается, что каждый раз меняется только один входной сигнал и что схема всегда успевает достичь устойчивого состояния в целом до того, как произойдет изменение другого входного сигнала. В любой момент времени схема находится в каком-то внутреннем состоянии и на ее входах действуют какие-то сигналы; мы называем эту комбинацию состоянием схемы в целом. Давайте начнем с устойчивого состояния в целом '80/00" (8 = 80, С0 = 00), как показано на рнс.
7.76. Предположим, что сигнал 0 изменяется и становится равным 1. Состояние в целом смещается на одну позицию вправо и схема попадает в новое устойчивое состояние в целом. Теперь значение сигнала на входе 0 другое, но внутреннее состояние и выходные сигналы остаются теми же, что и раньше. Далее, пусть изменяется сигнал С и принимает единичное значение. Состояние в целом смешается еше на одну позицию вправо и оказывается нестабильным состоянием 80/11. Запись в таблице указывает, что следующим внутренним состоянием схемы будет состояние 81, так что состояние в целом смещается на одну позицию вниз и становится равным 81/П. Смотрим, каким является следующее состояние, указываемое в этом месте таблицы, и убеждаемся, что схема снова достигла устойчивого состояния в целом. Подобным образом можно проследить поведение схемы при любой желаемой последовательностии одиночных изменений входных сигналов. У.9.
Последовэтельностные схемы с обратной связью 709 Рис. ЧЛ г. Измене- ние нескольких сиг- налов на входах 0- защелки 00 01 !1 10 О О О 8" О О1ч Одновременное изменение входных сигналов не всегда вызывает непредсказуемое поведение. Но чтобы установить это, необходимо проанализировать все случаи изменения сигналов в любом возможном порядке; если все онн приводят к одному и тому же результату, то сигналы на выходе схемы предсказуемы.
Если, например, О-защелка вначале находится в состоянии в целом 80/00 и сигналы С и О одновременно изменяются от 0 до 1, то конечным всегда будет состояние в целом 81/11. 7.9.2. Анализ схем с несколькими цепями обратной СВЯЗИ В схеме с несколькими цепями обратной связи необходимо разорвать все петли, вставляя в каждую из них свой фиктивный буфер и вводя свою переменную состояния. Разрыв петель обратной связи в данной схеме можно осуществить многими способами; математики называют их сечениями (аи нег).
Как узнать, какое из них лучше? Ответ таков: хорошим является любое минииальное сечение (яитта! сиг пег), то есть сечение с минимальным числом разрезов. Математики могут предложить алгоритм поиска минимального сечения, но если вы разрабатываете небольшую цифровую схему, то найти подходящие места в схеме можно невооруженным глазом. Рассмотрим, например, поведение О-защелки, изображенное на рис. 7.77. Предположим, что сначала схема находится в устойчивом состоянии в целом 81/11, и пусть оба сигнала С и 0 «одновременно» принимают нулевое значение. На самом деле схема ведет себя так, как если бы один из этих сигналов перешел в 0 первым. Предположим, что первым измен~шея сигнал С. Тогда последовательность из двух направленных влево стрелок в таблице показывает нам, что схема перейдет в устойчивое состояние в целом 81/00. Однако в случае, если первым изменяется сигнал О, другая последовательность стрелок показывает, что новым устойчивым состоянием в целом будет 80/00.
Таким образом, конечное состояние схемы оказывается непредсказуемым; секрет заключается в том, что в действительности при одновременном переходе в 0 сигналов С и 0 петля обратной связи становится метастабильной. Интервал времени, в пределах которого действует представление об одновременности, определяется временем установления и временем удержания данной О-защелки.
710 Глава 7. Принципы проектирование последовательностных схем Различные сечения схемы приводят к различным уравнениям возбуждения, таблицам переходов и таблицам состояние~выход. Однако существует взаимно однозначное соответствие между устойчивыми состояниями в целом, полученными при одном минимальном сечении данной схемы, и устойчивыми состояниями в целом, полученными при другом минимальном сечении той же самой схемы.
Другими словами, таблицы состояние/выход, полученные для разных минимальных сечений, демонстрируют одно и то же поведение вход~выход, разве что различными будут имена и коды состояний. Если вы воспользовались для анализа последовательностной схемы с обратными связями сечением с числом разрезов больше минимального, то результирующая таблица состояние/выход все же будет правильно описывать поведение схемы. Однако у нее будет в 2 раз больше состояний, чем это необходимо, где т — число лишних разрезов. Для сведения этой большой таблицы к надлежащим размерам можно воспользоваться формальной процедурой минимизации числа состояний, но гораздо лучше сразу взять минимальное сечение. Хорошим примером последовательностной схемы с несколькими обратными связями является серийно выпускаемый 0-триггер ТТЛ-семейств, переключающийся по положительному фронту, схема которого представлена на рис.
7.20. На рис. 7.78 эта схема воспроизведена в упрощенном виде в предположении, что на входах Рй Е и СЫЧ Е исходной схемы активные уровни сигналов никогда не возникают; на рис. 7.78 показаны также фиктивные буферы, вставленные в места разрыва трех петель обратной связи. Из-за наличия трех обратных связей здесь имеется восемь возможных состояний в отличие от схемы с двумя обратными связями и с минимальным числом состояний„равным четырем, которая приведена на рис. 7.! 9. Мы еще вернемся к этому загадочному отличию позднее.
Ь К'~ Ув О) ськ Н' уп.ськ.В' Рис. 7.78. упрощенная схема О-ТРиггера, переключающегося ав аюложительному фронту 7.9. Последовательностные схемы с обратной связью 711 Нз принципиальной схемы на рис. 7.78 можно вывести следующие уравнения возбуждения и уравнения выхода: У<* =У2 О+У1 С1 К У2* =У1 + С~К'+У2 0 Уз* =У1.С1К+У! УЗ+УЗ С1.К'+У2 УЗ 0 0 = У1 С1.К + У1 . УЗ + УЗ С!.К'+ У2 . УЗ 0 С(ч =УЗ'+У1' У2' С1.К+У1' С1.К 0'. Соответствующая таблица переходов приведена на рис.
7.79, где устойчивые со- стояния в целом обведены кружками. Но прежде чем продвинуться дальше, нам необходимо ввести понятие «гонок», рис. 7.79. Таблица пере- ходов для О-триггера, изоб- раженного на рис. 7.78 С(.К 0 У(У2УЗ 00 О( $$ $0 о(н> о ! о о и) Снн)',3 Со<Й)) (Н)3 О( ! О>3 0(Н) (>00 О(О С)$0) $(О $ И> ООО О(3 С)$3) $33 $33 <НН) $00 0$0 010 3$3 3$3 И)3 01$ 03$ $33 $3! с($<) с>$$") с>$$) щ 330 ОИ) $$$ О($ У1 У2" УЗ" *7.9.3.
Гонки Говорят, что в последовательностной схеме с обратной связью происходит гонка (состязание, гасе), когда в результате изменения одного входного сигнала меняется несколько переменных из числа тех, которыми определяется внутреннее состояние. На рис. 7.79, например, гонка имеет место, когда схема находится в устойчивом состоянии в целом О! 3(00 и сигнал С(.К меняет свое значение с 0 на 1 Из таблицы видно, что следующим внутренним состоянием будет 000, то есть изменятся две переменные. Как говорилось выше, логические сигналы никогда на практике не изменяются «одновременно». Поэтому переход от внутреннего состояния 011 к внутреннему состоянию 000 может происходить либо в последовательности О!1 — ) 00! — ) 000, либо в последовательности 01! — ) 010 -+ 000. На рис.
7.80 показано, как рассматРиваемая схема должна переходить из состояния в целом О! 3(00 в состояние в целом 000/10 при изменении сигнала С(.Кот 0 до 1. Как видим, по пути схема может на короткое время оказаться в состоянии в целом 00!(!О или в состоянии в 712 Глава 7. Принципы проектирования последовательностных схем Рис. 7.80. Часть таблицы пере- ходов !)-триггера, демонстрирую- щая некритическую гонку С1.К 0 У! У2 УЗ 00 О! 11 И) о>х) ои> ои> Схх)) г,>хм) о>1 о!1 щю г>хх> ~ О И> Со> О 1>О 1>О !ХХХ> У!" У2" УЗ Представим себе теперь, что элемент таблицы переходов, относящийся к состоянию в целом 010>'10, изменился и указывает в качестве следующего состояние 110.
как показано на рис. 7.81; рассмотрим снова только что проанализированный случай. В результате перехода сигнала С! К к значению 1 схема, находившаяся в устойчивом состоянии в целом 011>00, может, в конце концов, оказаться во внутреннем состоянии 000 или во внутреннем состоянии 1! 1 в зависимости от того в каком порядке и как быстро изменялись значения внутренних переменных.