1893

Особенности синтеза многоуровневых схем. Методы вынесения за скобки и допустимых конфигураций

Доклад

Коммуникация, связь, радиоэлектроника и цифровые приборы

Многоуровневая реализация на основе скобочных форм. Особенности синтеза многоуровневых схем методом допустимых конфигураций (д.к.).

Русский

2013-01-06

26.87 KB

6 чел.

Особенности синтеза многоуровневых схем. Методы вынесения за скобки и допустимых конфигураций.

Известно, что элементы этого класса образуют полный функциональный базис, т.е. любая КС может быть построена только на этих элементах. Сами элементы И-НЕ легко реализуются с использованием интегральной технологии, микросхема может содержать несколько вентилей И-НЕ. В структурном плане каждый вентиль состоит из последовательно соединённых схем И и инвертора, причём выходной каскад усиливает и формирует сигнал, что позволяет подавать выход одного элемента И-НЕ на входы других, наращивая глубину КС практически без ограничений.

Для реализации булевой функции на элементах И-НЕ удобно представить её в д.н.ф.:y=k1 \/ k2 \/…\/ km, где ki – простая конъюнкция, i = 1,2,…,m. Затем д.н.ф. дважды инвертируется по закону де’Моргана:

Естественно что нет необходимости всякий раз при реализации булевой функции дважды инвертировать и преобразовывать д.н.ф.. Справедливо следующее правило: для реализации б.ф. на элементах И-НЕ достаточно по д.н.ф. построить двухярусную реализацию на элементах И и ИЛИ и затем все вентили (И и ИЛИ) заменить вентилями И-НЕ. Если некоторая конъюнкция в д.н.ф. состоит из одной буквы, то на выходной вентиль подаётся входная переменная и знак инверсии над этой переменной меняется на противоположный. Если входные переменные представлены не парафазным кодом, т.е. только прямыми значениями, то схема дополняется ярусом инверторов и таким образом становиться трех ярусной.

Многоуровневая реализация на основе скобочных форм.

Определённого сокращения можно достичь, если при реализации б.ф. перейти от д.н.ф. к скобочным формам. Рассмотрим только такие скобочные формы, которые получаются из д.н.ф. путём объединения нескольких конъюнкций в скобки с вынесением за скобки общего множителя, состоящего из одной или нескольких переменных. В этом случае каждая конъюнкция, входящая в дизъюнкцию, будет содержать в числе сомножителей не более одной дизъюнкции. В свою очередь любая дизъюнкция, являющаяся сомножителем, может быть также преобразована в скобочную форму и таким образом б.ф. оказывается представленной в виде вложенных друг в друга выражений, заключённых в скобки.

Пример:

y=x1x2x3~x4x6 \/ x2x3x5x6 \/ x1~x2~x3x5x6 \/ ~x2~x3~x4x6 \/ x4x5~x6 \/ x3x4x5

y=x6(x2x3(x1~x4 \/ x5) \/ ~x2~x3 (x1x5 \/ ~x4)) \/ x4x5(~x6 \/ x3)

Если б.ф. представлена в скобочной форме, то соответствующая ей реализация на элементах И-НЕ получается путём многократного применения того же приёма двойного инвертирования исходной дизъюнкции с последующим преобразованием полученного выражения по закону де’Моргана. Удобно обозначить каждую дизъюнкцию, входящую в скобочную форму, некоторой промежуточной переменной и для реализации этой дизъюнкции применить описанный выше приём.

Пример:

v1=x1~x4 \/ x5, v2=x1x5 \/ ~x4, v3=x2x3v1 \/ ~x2~x3v2, v4=~x6 \/ x3, y=x6v3 \/ x4x5v4

Ясно, что переход от д.н.ф. к скобочной форме не однозначен и что различным скобочным формам соответствуют схемы различной сложности. При оценке эффективности вынесения символов за скобки по критерию уменьшения суммарного числа входов вентилей И-НЕ необходимо руководствоваться правилом: если в дизъюнктивной форме объединить в скобки k слагаемых с вынесением за скобки общего множителя, содержащего r переменных, то это приведёт к сокращению G суммарного числа входов в КС.

G = r ( k – 1 ) +S - 2 ,

Где S – количество конъюнкций из числа заключённых в скобки, которые до вынесения общего множителя содержали ровно r +1 сомножителей и, следовательно, после вынесения множителя за скобки превратились в однобуквенные выражения. Таким образом, целесообразны те преобразования, при которых r, k и S достигают максимума.

При совместной реализации нескольких функций к скобочной форме целесообразно преобразовывать отдельно общие части и остатки. Иначе общие части нужно будет реализовывать несколько раз и, как правило, связанное с этим усложнение схемы не компенсируется переходом к скобочной форме. Переход к скобочной форме всегда увеличивает глубину схемы и, следовательно, уменьшает быстродействие -> оптимальная скобочная форма достигается перебором.

Особенности синтеза многоуровневых схем методом допустимых конфигураций (д.к.)

Изложенные ранее методы синтеза КС на элементах И-НЕ используют не все возможности оптимизации. Они основываются на аппарате минимизации булевых функций в классе д.н.ф.. Иной подход, основан на покрытии элементов множества М1 б.ф. совокупностью подмножеств (названных допустимых конфигурациями и чаще всего не являющихся интервалами). Понятие допустимой конфигурации основано на следующей интерпретации формулы А∩=А\В, что сводится к вычитанию из множества А элементов множества В.

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

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

Используя аппарат допустимых конфигураций, можно сразу по матричной форме получить структурную формулу КС на языке допустимых конфигураций. Однако, выделение удачных допустимых конфигураций, приводящих к КС с меньшей сложностью, - дело опыта и интуиции. При проектировании КС для заданной б.ф. первоначально надо выделить основные конфигурации. Для чего находим на матрице минимальные (в векторном смысле) элементы множества М1. Далее для выделенного набора строим простую конфигурацию. Интервал, внешняя переменная которого равна 1. Затем необходимо удалить (вычесть) нулевые элементы, посредством некоторой допустимой конфигурации(интервал содержащий все нулевые наборы в первоначальной комбинации) этот интервал может содержать и некоторые единичные наборы.

F = V1 v V2; V1 = x2 \ Vдоп1; Vдоп1 = x4 \ x1x3; V2 = x3 \ Vдоп1 \ Vдоп2; Vдоп2 = x1x3.

&

&

&

&

&

X1

X3

X4

X3

X2

Vдоп1

Vдоп2

V1

V2

F

V2

Vдоп1

Vдоп2

   *      *

*               *      *      *

V1

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

Необходимо различать записи:

V1 = X1 \ Vдоп1 \ Vдоп2 И V1 = X1 \ ( Vдоп1 \ Vдоп2)

&

&

&

Vдоп1

Vдоп2

&

&

&


 

А также другие работы, которые могут Вас заинтересовать

69708. Перевантаження конструкторів 27.5 KB
  Для перевантаження конструктора існують три причини: гнучкість, можливість створення ініціалізованих (не ініціалізованих) об’єктів і конструкторів копіювання. Досить часто об’єкти класу можна створити декількома способами.
69709. Параметри по замовчуванню 24.5 KB
  Значення за замовчанням задається за допомогою синтаксичної конструкції яка дуже схожа на ініціалізацію змінної. Наприклад наступний оператор оголошує що функція myfunc отримує один аргумент типу double що за замовчанням приймає значення...
69710. Перевантаження операторів за допомогою дружніх функцій 23 KB
  Оператори можна перенавантажувати за допомогою дружніх функцій, які не являються членами класу. Це означає, що дружні функції не отримують неявно покажчик this. Отже, перевантажена операторна функція отримує параметри явно. Таким чином, при перевантаженні бінарного оператора дружня...
69711. Конструктори 34 KB
  Конструктор призначений для ініціалізації об’єкту і викликається автоматично при його створенні. Основні властивості конструкторів. Конструктор не повертає значення, навіть типу void. Не можна отримати покажчик на конструктор.
69712. Дружні функції 25 KB
  Метод як правило використовується для реалізації властивостей об’єкту а у вигляді дружніх функцій оформляються дії не представляючі властивості класу але концептуально що входять в його інтерфейс і потребуючі в доступі до його прихованих полів наприклад перевизначення операції...
69713. Громадсько-політична діяльність Юліана Романчука (1842–1932) 130.5 KB
  Формування політичних поглядів Ю. Романчука, його кар’єра як політичного лідера, парламентська діяльність, робота в національно-культурних та економічних інституціях, видавничій та публіцистичних сферах, роль у визвольних змаганнях 1914–1923 рр.
69714. Адвокатура в кримінальному процесі 114 KB
  Адвокат - захисник підозрюваного, обвинувачуваного, підсудного. Конституція України – головні принципи забезпечення підозрюваному, обвинувачуваному, підсудному права на захист, презумпцію невинуватості та змагальності. Адвокат – представник по потерпілого, цивільного позивача і цивільного відповідача.
69715. Вказівники на об’єкти 27.5 KB
  Як відомо, при збільшенні покажчика на одиницю він переміщається на наступний елемент того ж типу. Наприклад, цілочисельний покажчик посилатиметься на наступне ціле число. Як правило, адресна арифметика залежить від типу покажчика. (Інакше кажучи, вона залежить від типа даних, на які посилається покажчик.).
69716. Виділення пам’яті для об’єктів 42 KB
  Використовуючи оператора new, можна динамічно виділяти пам’ять для об’єктів. В цьому випадку оператора поверне покажчик на створений об’єкт. Динамічно створений об’єкт нічим не відрізняється від інших. При його створенні також викликається конструктор...