![]() |
Звоните! (926)274-88-54 Бесплатная доставка. Бесплатная сборка. |
Ассортимент тканей График работы: Ежедневно. С 8-00 до 20-00. Почта: soft_hous@mail.ru |
![]() ![]() ![]() |
Читальный зал --> Программные средства foundation CLK D
Рис. 7,80. Часть таблицы переходов D-триггера, демонстрирую-илая некритическую гонку ООО ООО ООО Y1- Y2- Y3 Представим себе теперь, что элемент таблицы переходов, относящийся к состоянию в целом 010/10, изменился и указывает в качестве следующего состояние 110, как показано нарис. 7.81; рассмотрим снова только что проанализированный случай. В результате перехода сигнала CLK к значению 1 схема, находившаяся в устойчивом состоянии в целом 011/00, может, в конце концов, оказаться во внутреннем состоянии ООО или во внутреннем состоянии 111 в зависимости от того в каком порядке и как быстро изменялись значения внутренних переменных. Такой случай называется критической гонкой (critical race). CLK D Y1 Y2 Y3 00
ООО I 10 ООО 111 111 III Рис. 7.81. Таблица переходов с критической гонкой целом 010/10. В этом нет ничего страшного, поскольку в обоих случаях следующим за временно посещаемыми состояниями является одно и то же внутреннее состояние ООО; это означает, что в те моменты, когда схема пребывает во временных состояниях, логика возбуждения продолжает вести петли обратной связи в направлении к одному и тому же устойчивому состоянию в целом 000/10. Поскольку конечное состояние не зависит от порядка, в котором изменяются переменные состояния, такая гонка называется некритической (noncritical race). остерегайтесь критических гонок Проектируя последовательностную схему с обратными связями, вы должны быть уверены, что таблица переходов не содержит критических гонок. В противном случае цепь будет функционировать непредсказуемым образом с совершенно неожиданными переходами в зависимости от таких факторов, как температура, напряжение питания и фаза луны. *7.9.4. Таблицы состояний и таблицы потока Анализ реальной таблицы переходов D-триггера в нашем примере (рис 7.79) показывает, что в ней нет критических гонок; в ней нет других гонок, кроме некритической гонки, разобранной нами выше. После того как этот факт установлен, нам больше не нужны переменные состояния. Вместо этого комбинации переменных состояния можно называть по именам и для каждой комбинации состояние/вход найти значения выходных сигналов, чтобы составить таблицу состояние/выход типа той, какая приведена на рис. 7.82. Рис. 7.82. Таблица состо- Р яние/выход для D-триггера, 00 01 ii 10 изображенного на рис 7 78 50 s2 ,01 s2 .01 (so) ,01 (so) .01 51 s3 . 10 s3 .10 so 10 so . 10 52 (s 01 86 ,01 s6 .01 so ,01 53 , 10 s7 .10 s7 . 10 so .01 54 s2 .01 s2 .01 s7 , ii s7 . ii 55 s3 .10 s3 .10 s7 .10 s7 .10 56 s2 .01 @ .01 s7 . 11 s7 . ii 57 s3 . 10 (s , 10 . 10 (st) . 10 S , Q QN Таблица состояний показывает, что при однократном изменении какого-либо из входных сигналов схема совершает множественные скачки , прежде чем достигнет нового устойчивого состояния в целом. Если, например, схема находится в состоянии 80/11 и входные сигналы принимают значения 01, то схема сначала переходит в состояние S2 и только затем попадает в устойчивое состояние в целом S6/01. В таблице потока (flow table) множественные скачки не принимаются во внимание, а сразу указьшается конечное состояние каждой цепочки переходов. В таблице потока исключаются также строки, соответствующие неиспользуемым состояниям, то есть таким состояниям, которые не являются устойчивыми ни пои каких комбинациях входных сигаалов. Кроме того, оставляются незаполненными те места, предназначенные дня указания следующего состояния, которые, как состояние в целом, не могут быть достигнуты ни из какого устойчивого состояния в целом, как результат изменения лишь одного из сигналов. Составленная по этим правилам таблица потока для D-триггера в нашем примере приведена нарис. 7.83.
Рис. 7.83. Таблица по- CLK D ток/выходдля D-триггера, изображенного на рис 7.78 За поведением триггера, переключающегося по фронту, можно проследить по последовательности переходов от состояния к состоянию, как показано на рис. 7.84. Предположим, что вначале триггер находится в состоянии S0/10, то есть в нем записан О (поскольку Q = 0), сигнал CLK равен 1, сигнал D имеет нулевое значение. Пусть сигнал D изменяется и становится равным 1; из таблицы потока следует, что схема сдвинется на одну позицию влево оставаясь в том же самом устойчивом состоянии в целом с теми же значениями сигналов на выходах. Сигнал D может сколько угодно раз менять свое значение с О на 1 и обратно, и схема при этом будет только скакать взад-вперед между этими двумя положениями в таблице. Однако в случае, когда сигнал CLK станет равным О, схема перейдет во внутреннее состояние S2 или S6 в зависимости от значения сигнала D на этот момент времени; но выходные сигналы останутся неизменными. Мы снова можем изменять значение D, делая его равным О или 1, сколько нам вздумается, и схема при этом будет лишь перескакивать из состояния S2 в состояние S6 и обратно, а выходные сигналы меняться не будут. Наконец, наступает решающий момент, когда сигнал CLK становится равным 1. В зависимости от того, в каком состоянии в этот момент находится схема, - в состоянии S2 или в состоянии S6, - она либо вернется в состояние SO (и выходной сигнал Q останется равным 0), либо перейдет в состояние S7 (и сигнал Q станет равным 1). Аналогичное поведение схемы можно наблюдать, когда в момент действия нарастающего фронта тактового сигнала она находится в состояниях S3 или S7 и выходной сигнал О изменяет свое значение с 1 на 0. ООО «Мягкий Дом» - это Отечественный производитель мебели. Наша профильная продукция - это диваны еврокнижка. Каждый диван можем изготовить в соответствии с Вашими пожеланияи (размер, ткань и материал). Осуществляем бесплатную доставку и сборку. Звоните! Ежедневно! (926)274-88-54 Продажа и изготовление мебели. Копирование контента сайта запрещено. Авторские права защищаются адвокатской коллегией г. Москвы. |