Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 400161.doc
Скачиваний:
12
Добавлен:
30.04.2022
Размер:
1.66 Mб
Скачать

2.2 Принципы вычисления управляемости

2.2.1. Определение и передача значений управляемости

В системе CAMELOT управляемость (впредь будем обозначать ее CY) может принимать относительное значение от 0 до 1. Максимальное значение 1 имеет такой узел, как первичный вход, где можно легко установить как логическую 1, так и логический 0. Другое предельное значение управляемости 0 имеет узел, который не может быть установлен в одно из двух возможных логических состояний. Практически значения управляемости большинства узлов в схеме лежат между этими двумя границами.

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

Рис 2.2 Условное обозначение устройства.

Рассмотрим устройство в виде, представленном на рис. 2.2. Если входы устройства управляются непосредственно, то управляемости его выходов должны просто в относительных единицах отражать меру способности устройства к установке на каждом выходе 0 и 1, что определяется логической передаточной функцией устройства. Однако в общем случае управляемость входов устройства не 100%-ная. Поэтому управляемость выходов должна учитывать как способность к передаче логических значений через устройство, так и значения управляемости на его входах. Таким образом, выражение, используемое для вычисления значения CY каждого выхода, представляется как

CY (выходного узла) = CTFf {CY (входных узлов)}, (2.1)

где CTF (Controlability Transfer Factor) – коэффициент передачи управляемости устройства, связанный с этим выходом, и функция f сочетает значения управляемости всех входов устройства, которые могут управлять рассматриваемым выходом. Коэффициент CTF и функция f определяются в следующих лекциях.

2.2.2. Коэффициент передачи управляемости (CTF)

Коэффициент CTF выхода является мерой, характеризующей степень различия способности устройства генерировать на данном выходе значение 1 от способности генерировать значение 0. Этот коэффициент зависит только от логической функции, реализуемой устройством, и не зависит от места его расположения в схеме.

Простой, но тем не менее эффективный способ количественной оценки CTF определяется выражением

(2.2)

где N(0) - число всех способов установки логического 0 на выходе устройства; N(1) - число всех способов установки состояния 1. Следовательно, CTF=1, когда N(0) = N(1) (как, например, в элементе Исключающее ИЛИ). В маловероятном случае, когда N(0) или N(1) равны нулю, CTF также равняется 0, что указывает на неуправляемость выходного состояния. В общем случае 0< CTF <1,0.

На рис.2.3 представлены примеры вычисления CTF для логических вентилей. Для этих устройств, как и для всех комбинационных устройств, значения N(0) и N(1) могут быть получены из таблиц истинности. Заметим, что для устройств с несколькими выходами каждый выход будет характеризоваться своим собственным значением CTF и в общем случае эти значения не будут одинаковыми.

Процедура вычисления CTF для устройств с памятью несколько сложнее. Рассмотрим , например , триггер типа J-K, представленный на рис 2.4.

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

Рассмотрим выражение для выхода Q+:

Q+ = [(JQ+ Q)T+Q ]PC+ = J TPC+ QTPC+Q PC+ (2.3)

В бесскобочной форме этого выражения каждый конъюнктивный терм (логическое произведение) представляет собой совокупность клеток карты Карно (минтермов) функции выхода Q+, отмеченных единичными значениями. Если известно сколько минтермов включает каждый конъюнктивный терм и гарантируется, что ни одно подмножество минтермов, образующих терм, не пересекается с другим (т.е. множество конъюнктивных термов образует разбиение входящих в них минтермов на непересекающиеся подмножества), то можно вычислить N(1).

N (0) = 1

N (1) = 1

CTF = 1

N (0)= 1

N (1) = 3

CTF = 0,5

N (0) = 1

N (1) = 7

CTF = 0,25

N (0) = 2

N (1) = 2

CTF = 1

Рис 2.3 Вычисление значения CTF для простых функций

T=1 означает присутствие отрицательного фронта тактового импульса

Рис. 2.4. J-K триггер SN7476

Первое условие выполняется легко. Если Q+ - функция n переменных и i-ый конъюнктивный терм содержит j переменных (j<=n), то число единичных значений функции, представленное i-м термом, равно 2 n-1. Второе условие обеспечивается не так легко, однако существует простая процедура, которую можно использовать для решения этой задачи. Процедура основана на применении двух основных операций для каждой пары термов:

а) проверки условия разбиения пары конъюнктивных термов;

б) видоизменения одного терма относительно другого, если пара термов не образует разбиения.

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

ПРОЦЕДУРА: Пусть Т1 и Т2 – два терма дизъюнктивной нормальной формы булевой функции, не удовлетворяющие условию разбиения, и пусть RC=Т1/Т2 – разность подмножеств переменных, входящих в термы Т1 и Т2. Предположим, что RC – непустое множество переменных Х1,Х2,…,Хn (все переменные Х представлены в прямой форме, но это не влияет на общность результата). Процедура преобразования пары Т1 и Т2 в совокупность непересекающихся подмножеств минтермов описывается операцией расширения:

(2.4)

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

Возвращаясь к выражению (2.3), можно заметить, что каждый терм является блоком разбиения множества минтермов функции Q+. Следовательно, число всех минтермов, входящих в функцию, составляет:

2 минтерма в терме J TPC (отсутствует переменная К);

3 минтерма в терме K TPC (отсутствует переменная J);

4 минтерма в терме Q PC (отсутствуют переменные J, K);

32 минтерма в терме (отсутствуют переменные J, K, T, P, C), откуда суммарное число минтермов равно 40. Перед тем как сделать заключение, что N(1) = 40, необходимо обратить внимание на другой фактор, а именно на запрещенные и переходные состояния. Для триггера на рис. 2.4 неустойчивые состояния его выходов вызываются следующими термами, каждый из которых представляет 8 запрещенных наборов переменных:

Р = 0, С = 1, Q = 0,

P = 1, C = 0, Q = 1,

P = 0, C = 0, Q = 0.

Если по какой-либо причине появляется любой из этих 24 наборов, то начальное состояние 0, определенное в каждом наборе, становится неустойчивым и в конечном результате перейдет в устойчивое состояние, противоположное начальному. Необходимо позаботиться о том, чтобы устранить такие запрещенные комбинации из полученного множества минтермов. В этом примере первые три терма определяют множество разрешенных наборов. Тем не менее 24 клетки карты Карно являются запрещенными и число единичных значений функции должно быть соответственно меньше. В этом случае четвертый терм, , уменьшается на 16 наборов, соответствующих 16 запрещенным состояниям для Р = 0, значениями функции выхода. Следовательно, N(1) = 24. Зная N (1) можно найти значение N(0), вычисляя оставшееся число разрешенных переходов триггера. В этом триггере имеется 26 возможных переходов состояний, некоторые из них являются запрещенными. Таким образом, N(0) определяется, как

N (0) = [2 6 – общее число запрещенных переходов] – N (1) = 16.

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

К рассматриваемой методике необходимо сделать одно заключительное замечание. Вычисление CTF основано на представлении выходной функции Q+ функцией пяти входных переменных триггера (J,K,T,P,C) текущего внутреннего состояния Q. Строго говоря, Q не является входной переменной триггера, однако включение ее в число входных переменных основано на том, что управляемость последующего состояния на выходе основано на том, что управляемость последующего состояния на выходе Q+ зависит от его предыдущего состояния.