Матричная реализация булевых функций.

Цифровые устройства на программируемых БИС с матричной структурой.

Пример 2.14.

Элементы И-ИЛИ-НЕ.

Пример 2.13.

Пример 2.12.

Пример 2.11.

Преобразование функции в «штрих Шеффера»:

;

в «стрелку Пирса»:

 

Общее отрицание на элементе «ИЛИ-НЕ» может быть реализовано одним из вышеприведённых методов,

или

.

Чтобы не усложнять итоговое выражение, в дальнейшем отрицания переменных и общее отрицание будем сохранять.

 

Преобразование функции в «штрих Шеффера»:

 

в «стрелку Пирса»:

 

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

Реализовать на двухвходовых элементах «И-НЕ»:

Схема, реализующая эту функцию, изображена на рис. 2.20.

 

  Рис. 2.20  

а) элемент 2-3-2-3И-4ИЛИ-НЕ без дополнительных выходов для подключения расширителей по И; б) элемент 4-4И-2ИЛИ-НЕ с дополнительными входами С, Е; в) расширитель по И ТТЛ серии. Элементы могут иметь дополнительные входы И-ИЛИ-НЕ для подключения расширителей по И (см. рис. 2.21 «б»).

 

   

 

Прежде чем определить порядок синтеза логических схем на элементах, решим следующую частную задачу.

 

На элементах 2-2И-2ИЛИ-НЕ реализовать функцию F, заданную диаграммой Карно:

 

Решение:

1) Получим МДНФ отрицания функции F.

   

 

2) Реализуем всё, что можно реализовать на данном элементе.

 

   

 

3) Реализуем на выбранном элементе функцию , повторив шаги 1 и 2.

 

   

Окончательно получим схему для реализации функции F.

   

 

Сформируем общий порядок синтеза схем на элементах И-ИЛИ-НЕ с учётом ограничений на число входов элементов.

1. Получить ДНФ отрицания исходной функции F.

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

3. Повторять шаги 1 и 2 до тех пор, пока не реализуем всю функцию на заданных интегральных микросхемах.

 

 

В качестве функциональных узлов БИС, ориентированных на реализацию логических функций, широко используются так называемые матричные схемы. Они представляют собой ортогональную решётку, в узлах которой включены элементы с односторонней проводимостью (ЭОП). В качестве таких элементов используются диоды, биполярные и МОП транзисторы и т.д.

 

Рассмотрим матрицу М1 (Рис. 2.22.), в которой ЭОП-ом является диод:

 

Такая матрица по каждому из своих выходов р12345 реализует конъюнкцию входных переменных х1234:

 

Рассмотрим матрицу М2 (Рис. 2.23.), в которой ЭОП является биполярным транзистором.

 

Такая матрица по каждому из своих выходов у1, у2, у3 реализует функции «ИЛИ» входных переменных p1, р2, р3, р4, p5:

 

Соединяя матрицы М1 и М2 так, как показано на рис. 2.24, можно реализовать на выходах у1, у2, у3 полученной структуры следующие ДНФ входных переменных х1, х2, х3, х4:

 

 

Построение схем с матричной структурой сводится к определению точек пересечения шин, где должны быть включены ЭОП, и настройке (программированию) матриц - установке ЭОП в найденных точках. По

способу настройки (программированию) различают матрицы: настраиваемые (программируемые): 1) на заводе-изготовителе, 2)пользователем и 3) репрограммируемые (многократно настраиваемые). Матрицы первого типа называются масочными (М-типа), второго типа – программируемыми (П-типа) и третьего типа – репрограммируемыми (Р-типа).

В М-матрицах соединение ЭОП с шинами осуществляется на заводе-изготовителе один раз с помощью специальных масок, используемых для металлизации определённых участков БИС. После изготовления БИС полученные соединения не могут быть изменены. БИС М–типа дороги, так как стоимость масок - шаблонов очень высока.

П-матрицы поставляются потребителю не настроенными и содержащими ЭОП в каждой точке пересечения их шин. Настройка сводится к удалению (отключению) некоторых ненужных ЭОП. Физически процесс настройки осуществляется различными способами, например, путём пропускания серии импульсов тока большой амплитуды через соответствующий ЭОП и разрушения плавкой перемычки, включённой последовательно с этим ЭОП. Таким образом, П–матрицы программируются однократно потребителем.

   

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

Сложность реализации булевых функций принято оценивать суммарной информационной ёмкостью (площадью) матриц S(M):

S(M)=S(M1)+S(M2)=2*s*q+q*t, где s – число входов матрицы М1,

q – число выходов матрицы М1 (число вертикалей, промежуточных шин), t – число выходов матрицы М2 и структуры в целом.

Для лучшего использования ёмкости при реализации булевых функций необходимо представлять их в минимальной ДНФ. Для нашего случая информационная ёмкость равна: S(M)=2*4*5+5*3=55.