Математический аппарат синтеза k-значных цифровых логических схем на основе линейной алгебры

Математический аппарат синтеза к-значных цифровых логических схем

на основе линейной алгебры

12 2 1 П.С. Будяков , Н.И. Чернов , В.Я. Югай , Н.Н. Прокопенко

1 Донской государственный технический университет 2Южный федеральный университет

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

Ключевые слова: многозначная логика, булева алгебра, линейная алгебра, линейный логический синтез, линейные цифровые структуры, базисы линейного пространства, разложение логических функций, логическая переменная, логический синтез, цифровые логические элементы.

Введение

Ведущим математическим аппаратом логического синтеза цифровых структур безусловно является булева алгебра [1 - 2]. Она сыграла выдающуюся роль в развитии прикладной математики в целом, в теории логического синтеза двузначных цифровых структур, создании методов обработки, преобразования и передачи информации. На ее основе разработана многозначная математическая логика, начало которой был положено Лукасевичем (1920 г.) [3], Э. Постом (1921 г.) [4] и другими исследователями.

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

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

Поэтому на протяжении истории развития цифровой техники неоднократно предпринимались попытки замены булевой алгебры как аппарата логического синтеза различными другими средствами, среди которых спектральные преобразования Фурье, Уолша, Хаара [5], поля Галуа [6 - 8] др. Однако, по крайней мере, в двузначной логике булевой алгебре удалось сохранить свои позиции.

Одним из возможных направлений улучшения технических параметров цифровых структур, активно исследуемых в последние 50 лет, является повышение значности [9 - 14], т.е. переход к многозначной элементной базе. Факторами повышения эффективности многозначной элементной базы являются, например, уменьшение количества переносов при выполнении арифметических операций, увеличение диапазона значений цифр, хранимых в ячейке памяти, повышение информативности (следовательно, уменьшение количества) линий связей в кристалле и т. д. Однако, в рамках традиционного (булева) подхода к это направление не получило прикладного развития, поскольку оно требует наличия функциональных элементов (базовых эквивалентов реализации операций И, ИЛИ, НЕ в двузначной логике) соответствующей значности. Несмотря на многочисленные попытки [15 - 16] такие элементы не были созданы.

Авторами настоящей работы предложена новая базовая концепция линейного логического синтеза цифровых 1Р-блоков для систем связи и вычислительных устройств [17 - 22], суть которой можно определить следующими утверждениями:

- поскольку природных функциональных &-значных элементов не существует, значность следует вложить не в схему, а в сигнал; схемотехника при этом должна быть линейной и по возможности не зависеть от значности;

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

- внутрисхемную обработку сигналов в нелинейных (например, циклических) схемах следует производить в двузначном виде, а &-значный результат обработки формировать на выходе схемы из двузначных выходных сигналов путем соответствующих преобразований;

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

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

Плодотворность этой концепции была подтверждена рядом публикаций и патентов на схемотехнические решения [23 - 26].

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

Целью настоящей работы является краткое изложение кратких основ и свойств линейной алгебры, определяющих привлекательность ее использования в качестве математического аппарата логического синтеза и схемотехнической реализации цифровых ГР-блоков.

1. Линейная алгебра: определение и основные свойства

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

Определение 1. Алгебраической системой называют любую формальную систему А — (А: ОР; Од), которая состоит из множества элементов (носителя) А = {а1, ..., ап} и набора операций ОР =(/1, ...,/) и (или) отношений Од = (г1, ..., гр) над ними.

Если алгебраическая система не содержит операций, она называется моделью относительно отношений Од, если не содержит отношений, то - алгеброй относительно операций О^.

Взаимосвязь между моделями и алгебрами определяется тем, что парная операция на множестве А есть частный случай отношения на этом же множестве. Действительно, для любой п-арной операции /г: Ап— А можно определить (п +1)-арное отношение г/ с Ап+1 так, чтобы кортеж (а1, ..., ап, Ь) ег/ тогда и только тогда, когда Ь = /г (а1, ., ап).

А. Определение линейной алгебры. Корректное определение линейной алгебры на основе основных понятий теории групп приведено ниже.

Определение 2. Алгебра А — (А; •) называется полугруппой, если операция • бинарна и ассоциативна, т.е. если

У (а, ЬеЛЩсеЛ) а • Ь = с;

V(a, Ь, сеЛ) (а • Ь)- с = а • (Ь- с).

Полугруппа А — (А; •) - коммутативная, если операция • коммутативна и конечная, если множество А - конечно.

Полугруппу А — (А; •) называют полугруппой с сокращением, если У(а, х, у еЛ) (ах = ау ^ х = у)л(ха = уа ^ х = у).

Определение 3. Полугруппу А — (А; •) называют группой, если

У(а, ЬеА) 3(х, уеА) ах = Ь л уа = Ь.

Определение 4. Алгебра А ^ (А; +, •> называется полукольцом, если (А; +> - коммутативная полугруппа с сокращением, (А; •> - полугруппа и операции + и • связаны законом дистрибутивности:

У (а, Ь, сеЛ) ((а + Ь) • с = ас + Ьс) л с • (а + Ь) = са + сЬ.

Полугуруппы (А; +> и (А; •> полукольца А ^ (А; +, •> называют аддитивной и мультипликативной полугруппами этого полукольца.

Определение 5. Полукольцо А ^ (А; +, •> называют кольцом, если его аддитивная полугруппа является группой, т.е. если

У(а, ЬеЛ) З(хеЛ) а + х = Ь.

Определение 6. Кольцо А ^ (А; +, •, 0> с выделенным элементом 0 -нулем кольца, в котором существуют элементы (а, ЬеЛ) обладающие свойством а • Ь = 0, называется кольцом с делителями нуля.

Определение 7. Кольцо А ^ (А; +, •, 0> называется телом, если У(а, ЬеЛ), а Ф 0 3(х, уеЛ) ах = Ь л уа = Ь.

Определение 8. Коммутативное тело называется полем.

Определение 9. Пусть имеем множество А элементов (векторов) а, Ь, с,..., х, у, z, ... произвольной природы. Вместе с векторами множества А будем рассматривать вещественные числа а, в, у,., ю,...образующие поле Р вещественных чисел. Пусть для векторов множества А определены операции сложения:

У

и умножения на скаляр аеР:

У (а е Л) (аа е Л).

Линейным пространством А над полем Р называют множество А с определенными выше операциями, удовлетворяющее условиям:

- коммутативности и ассоциативности сложения векторов

У(а, Ь, с е Л) (а + Ь = Ь + а); (а + Ь) + с = а + (Ь + с);

- наличия в А нулевого вектора 0, такого, что

У(х е Л) (х + 0 = х);

- наличия для каждого вектора х в А противоположного ему вектора -х

У(х е Л)3!(-х е Л) (х +(-х) = 0);

- умножения вектора а е Л на единицу поля Р

У(х е Л)л(1 е Р) (1 х = х);

- ассоциативности умножения вектора на число

У(х е Л) л(ав е Р) а (в • х) ^авх

- дистрибутивности умножения векторов на числа

У(а, Ь е Л)лУ (а, в е Р) ((а + в) • а = а • а +в • а)л (а • (а + Ь) = а • а +а • Ь).

Определение 10. Пусть Р — (Р; +, •, 0,1) - поле, (А; +, •, 0) - алгебра с двумя бинарными и одной нульарной операциями. Система Л — (А; +, •, 0, Р) называется линейной алгеброй, если выполняются условия:

- система Л — (А; +, •, 0, Р) - линейное (векторное) пространство над полем Р;

- дистрибутивности операций + и •

У(а, Ь, с е Л) (а + Ь)с = ас + Ьслс(а + Ь) = са +сЬ;

- ассоциативности умножения векторов на элементы поля Р

У(а, Ь е Л)лУ(к е Р) £(аЬ) = (£а)Ь = а(£Ь).

В. Расширение линейной алгебры.

Пусть А — (А; +, •, 0) - векторное пространство линейной алгебры Л, Р — (Р; О = {й^&еР}, 0,1) - поле линейной алгебры Л, в состав которого входят операции а>к, в общем случае не обязательно совпадающие с операциями линейного пространства А. Тогда система Л' — ({А; +, •, 0}, {Р;

О, 0, 1} ) называется расширением линейной алгебры Л.

:

Интерпретируя эту алгебраическую систему определенным образом, можно получать алгебры с различными свойствами. Например, интерпретируя А как множество термов булевых функций f(x1,., xn), операции + и - как max(x1,., xn), min(x1,., xn), получаем алгебру А ^<А; max, min, 0; P>. Точно также, оставив семантику операций в первоначальном виде (т.е. определив их как обычные арифметические операции), можно рассматривать приведенную систему как линейную алгебру на множестве А векторов линейного пространства. Именно в этом виде приведенная алгебраическая система и рассматривается далее.

Удобство такой структуры состоит в независимости процессов формирования базисов линейного пространства А и представления векторов в этом линейном пространстве.

2. Формирование базисов линейной алгебры

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

Рассмотрим в качестве примера двузначные базисы «стрелка Пирса» и «алгебра Жегалкина» и их многозначные аналоги. Начнем со «стрелки Пирса».

Булева алгебра: двузначная функционально полная система состоит из одной операции

n = 2 x1 & x2

^ 3 х^ & х^ & х3

и т.д.

Многозначной булевой реализацией «стрелки Пирса» является базис Поста шт(х1,х2) © 1. Как видно, он значительно отличается от его

двузначной реализации.

Линейная алгебра: двузначный базис включает в себя константу 1, переменные х1, х2, ..., хп и линейное представление конъюнкции на основе операции сравнения. Прямые и обратные базисные матрицы двух и трех переменных приведены ниже.

к = 2, п = 2

1

Л12 =

х.

х^

(х1 + х2) > 1

1111 0 0 11 0 10 1 0 0 0 1

Л-1 =

1 -1

0 0 0 1

0 0

-1 1 1 -1

0 0

-1 1

к = 2, п = 3

" 1 " "1 1 1 1 1 1 11

х1 0 0 0 0 1 1 11

х2 0 0 1 1 0 0 11

Л = х3 0 1 0 1 0 1 0 1

(х1 + х2) > 1 0 0 0 0 0 0 1 1

(х1 + х3) > 1 0 0 0 0 0 1 01

(х2 + х3) > 1 0 0 0 1 0 0 01

(х1 + х2 + х3) > 1 0 0 0 1 0 1 11

л-1 =-

"2 - 2 -2 -2 1 1 1 1

0 0 0 2 1 -1 -1 -1

0 0 2 0 -1 1 -1 -1

1 0 0 0 0 -1 -1 1 1

2 0 2 0 0 -1 -1 1 -1

0 0 0 0 -1 1 -1 1

0 0 0 0 1 -1 -1 1

0 0 0 0 1 1 1 -1

Многозначные базисы включают в себя одну из констант 1, ..., к-1, переменные х1, х2, ..., хп, а также некоторый набор операций над их комбинациями полученными на основе использования операции сравнения. Таким образом, переход к более высокой значности не приводит к использованию новых операций. Прямые и обратные базисные матрицы двух переменных значности 3 и 4 приведены ниже.

к = 3, п = 2

1

х1 > 0 х2 > 0

Л =

( > 0) + (х2 > 0))> 1

х

х

(х1 + х2) > 1 (х1 + х2) > 2 (х1 + х2) > 3

0 1 1 0 1 1 0 1 1

0 0 0 ! 0 1 1 1 ! 1 1 1 1

0 0 0 ! 1 1 1 1 ! 2 1 2 2

0 1 2 ! 0 ^___ 1 2 ! 0 4___ 1 2

0 0 1 ! 0 1 1 1 | 1 1 1

0 0 0 0 0 1 0 1 1

0 0 0 1 ! 0 0 0 1 ! 0 0 1

Л"1 =

1 0 0 0 -10

0__0 0 0 1 01

0 0 -1

0 -1 -1

0 1

0 -1 -1 111 1___0___0_ 1 0 0 0 -1 -1 1 0 1 1 1 1

1 1 1

- 2 -1 -1

1 0___0. 0 0 01 -1 0 -1 1 -1 -1

0 1

Л =

х1 > 0

х2 > 0 х1 > 1

х2 > 1

1 1 -1 0 -1 1 1 0

0 1 1 1 0 0 0 0 0 1 _

к = 4, п = 2

"1 1 1 1 1 1 1 11 1 1 1 1 11 1 1 1

0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1

0 1 1 1 0 1 1 1 1 1 0 1 1 1 ! 0 1 1 1 1

0 0 0 0 0 0 0 0 ! 1 1 1 1 ! 1 1 1 1

и X 1.

0 0 1 1 0 0 1 1 1 0 0 1 1 ! 0 0 1 1

0 0 0 0 1 1 1 1 1 1 2 2 2 2 3 3 3 3

0 1 2 3 0 1 2 1 3 ! 0 1 2 3 0 1 2 3

0 0 0 0 0 1 1 1 1 1 0 1 1 1 ! 0 1 1 1 1

0 0 0 0 0 0 1 1 ! 1 0 0 1 1 ! 0 1 0 1 1

0 0 0 0 0 0 0 0 ! 0 1 1 1 ! 0 1 1 1

0 0 0 0 0 0 0 0 ! 0 0 1 1 ! 0 0 1 1

0 0 0 1 0 1 1 1 1 | 0 1 1 1 0 1 1 1

0~ ~0 ---- 1 --- 0 о" "0" — 1 о" "Г "Г "7 Т" Т

0 0 0 1 0 0 1 1 ! 1 0 1 1 1 ! 1 1 1 1 1

0 0 0 0 0 0 0 1 ! 1 0 0 1 1 ! 0 1 1 1 1

0 0 0 0 0 0 0 0| 0 0 0 1 ¡0 0 1 1

( > 0) + (х2 > 0))> 1 ( > 0) + ( > 1))> 1 (( > 1) + ( >0))> 1 (( > 1) + (х2 > 1))> 1

(2 (х1 > 0) + х2 )> 2 (2( > 1) + х2 )> 2

(х1 + х2 )> 2 (х1 + х2 )> 3 (х1 + х2 )> 4 ,

Теперь рассмотрим базис Жегалкина.

Булева алгебра: двузначная функционально полная система состоит из двух операций (функций) х1 © х2 и 1. Линейная алгебра: двузначный базис включает в себя константу 1, переменные х1, х2, ..., хп и линейное представление суммы по модулю 2 на основе операции модуля разности.

Прямые и обратные базисные матрицы двух и трех переменных приведены ниже

к = 2, п = 2

А =

" 1 " 1 1 1 1 2 -1 -1 -1

Х1 0 0 1 1 А- = 1 0 -1 1 1

Х2 0 1 0 1 2 0 1 -1 1

Х Х21 0 1 1 0 0 1 1 -1

к = 2, п = 3

Л =

1

Х2 Хл

I Л"! Х2

I Л"! Х3 I

Хл

ххч Хл

Хл

Хо

Хл

1111

0 0 0 0

0 0 11

0 10 1 _________

0 10 1

0 110

0 10 1

1111 1111 0 0 11 0 10 1

10 10 0 110 0 0 10

г1

" 4 -1 -2 -1 0 -3 -2 2 "

0 -1 0 1 -2 1 2 0

0 -1 2 -1 0 1 2 -2

1 0 -1 0 1 2 1 -2 0

4 0 0 0 0 0 4 0 -4

0 2 -2 0 2 -2 0 2

0 2 0 -2 0 -2 0 4

_ 0 0 2 2 -2 0 0 -2

Многозначные базисы включают в себя одну из констант 1, ..., к-1, переменные Х1, Х2, ..., Хп, а также некоторый набор операций над их комбинациями полученными на основе использования операции модуля разности. Прямые и обратные базисные матрицы двух трехзначных переменных приведены ниже

к = 3, п = 2

А =

1 "1 1 1 1 1 1 1 1 1

х1 > 0 0 0 0 1 1 1 1 1 1

х2 > 0 0 ) 0 1 1 0 1 1 0 1 1

> 0)-(*2 > 0 1 1 1 0 0 1 0 0

= 0 0 0 1 1 1 2 2 2

Х2 0 1 2 0 1 2 0 1 2

X | •Х'1 х | 0 1 2 0 1 0 0 1 2

•2 | Х1 х | 0 0 0 1 1 1 2 0 2

А =-2

2 -1 -1 ! -1

0 -2 0 1

0 2 0 2 0 0 0~ "Г 0 0 0 -1

2 -1 Т" -2 0

2 -1

2 0 т 0 -1

0 1

0 1 -1

-2 0

1 1

0

0 ! -1 -1 I

0 ! 1 1

___.1_______

0 0 0

1 ! -1 0 -1

-2 ! 1 I

1 1 -1 0

1 ! 0 _

-1 [ 1 0 1

0 ! 0 0 -1 I

1 I -1 0 0

3. Линейное представление двузначных и многозначных логических

функций

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

Алгоритм 1.

а) представить последовательность (множество) значений логической функции вектор-строкой;

б) умножить полученную вектор-строку на столбцы обратной базисной матрицы и получить вектор-строку коэффициентов разложения представляемой логической функции по данному базису;

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

Пример 1. Получить представление операции конъюнкции двух аргументов х1 & х2 значности 2 и 3 базисе Жегалкина.

Решение.

а) представление последовательности значений двузначной логической функции вектор-строкой

х1 & х2 = [0,0,0,1]

б) умножение полученной вектор-строки на столбцы обратной базисной матрицы, получение вектор-строки коэффициентов разложения представляемой логической функции по данному базису и запись выражение операции конъюнкции в алгебре Жегалкина

"2 -1 -1 -1"

х1 & х2 = [0,0,0,1] • 2

0 -11 1 0 1 -11 0 11 -1

1 г и Х1 Х2 Х| Х2

[0,0,0,1] •-[0,1,1,-1]

22 Для значности 3 поступаем аналогично. Вектор последовательности значений операции тт(х1 ,х2) имеет вид

тт(х1, х2) = [0,0,0,0,1,1,0.1.2]

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

:

mini

infxj, x2) = [0,0,0,0,1,1,0.1.2]-

2 -1 -1 -1 0 0 0 0 0

0 -2 2 2 1 0 -1 -1 0

0 1 -1 -1 -1 0 1 1 0

0 2 -2 2 0 1 -1 0 -1

0 2 2 -2 -2 -2 1 1 1

0 0 0 0 0 1 0 -1 0

0 -1 1 -1 0 -1 1 0 1

0 0 0 0 1 0 0 0 -1

0 -1 -1 1 1 1 -1 0 0

= [0,0,0,0,1,1,0.1.2] • ] [0,0,0,0,1,1,-1,0,0] =

Х1 ^Ъ Х2 | Х1 Х21 = 2

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

4. Разложение логических функций

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

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

Определение 11. Вектор ае 27Ш называется монотонно возрастающим (убывающим), если при поразрядном сравнении к-ичных кодов номеров компонент а{ и а] имеет место:

V(i,jе 2 ) I >у ^ ах > а] л I <у ^ а < а].

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

Структуры последовательностей неубывающих компонент для к = 2, 3 и п = 1, 2, 3 приведены в таблице 1.

Таблица 1

Структуры последовательностей неубывающих компонент

для к = 2,3, п = 1, 2, 3

к = 2 к = 3

п = 1

Продолжение таблицы 1

компонент вектора, а сама последовательность включает в себя некоторую вершину и связанные с ней ребрами ближайшие расположенные ниже вершины.

Свойство монотонности векторов из 7т позволяет получить различные представления произвольного вектора посредством монотонных векторов. Рассмотрим такие представления в следующих трех вариантах:

- разностью двух монотонных векторов большей значности;

- алгебраической суммой монотонных векторов той же значности, что и исходный вектор;

- алгебраической суммой монотонных векторов значности, меньшей значности исходного вектора.

Рассмотрим первые два варианта представления.

Задача представления логической функции разностью двух монотонных векторов большей значности решается на основе теоремы:

Теорема 1. Произвольный вектор a = (a0, ai,... am_i} е Zm может быть представлен в виде a = b _ c, где b = (b0, b1,..., bm-1}eZm и c = (c0, c,..., cm-

m

1} eZ .

Доказательством теоремы является следующий алгоритм. Алгоритм 2.

L bo = ao, co = 0;

Г b-i при ai < a-i

2.b ЧА + > , c= b = a;

[bí_1 + at _ ai_1 при at > ai_1

3. i = m _ 1, конец.

Пример 2. Построить представление вектора a = (0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0} в виде разности двух монотонных векторов при k = 2, n = 4, т = kn = 16.

Решение. Последовательность неубывающих компонент для этого случая приведена в табл. 2:

Таблица 2

Последовательности неубывающих компонент

g Последовательности Компоненты

0 0, 1, 2, 4, 8 0, 1, 1, 1, 1

1 1, 3, 5, 9, 1, 0, 0, 0

2 2, 6, 10 1, 0, 1

3, 7, 11 0, 1, 1

3 4, 12 1, 1

5, 13 0, 1

6, 14 0, 1

7, 15 1, 0

Вычисляем компоненты векторов Ь и с. Процесс вычисления показан в табл. 3.

Таблица 3

Вычисление векторов разложения

Ь = 0; С0 = 0;

Ь1 = Ь0 + а1 - а0 = 1; С = 0;

Ь2 = Ь1 + а2 - а1 = 1; = 0;

Ьз = Ь1= 1; = 1;

Ь4 = Ь2 + а4 - а2 = 1; = 0;

Ьз = Ь1= 1; Сз = 0;

Ьб = Ь2 = 1; Сб = 1;

Ь7 = Ьз + а7 - аз = 2; С7 = 1;

Ь8 = Ь4 + а8 - а4 = 1; С8 = 0;

Ь9 = Ь5+ а9- а5 = 1; С9 = 1;

Ью = Ьб + аю - аб = 2; С10 = 1;

Ь11 = Ь7 + а11 - а7 = 2; сц = 1;

Ь12 = Ь4 + а12 - а4 = 1; С12 = 0;

Ь13 = Ь9 + а1з - а9 = 2; С13 = 1;

Ь14 = Ьб + а14 - аб = 2; С14 = 1;

Ь15 = Ь7 = 2; С15 = 2.

Таким образом, вектор представляется разностью монотонных векторов

а = {0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0} = Ь ={0, 1, 1. 1, 1, 1, 1, 2, 1, 1, 2, 2, 1, 2, 2, 2} -с ={0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 2}.

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

Возможность представления произвольного вектора посредством монотонных векторов при сохранении значности существует и определяется следующей теоремой.

Теорема 2. Произвольный вектор а е 7т может быть представлен конечной алгебраической суммой монотонных векторов ai вида

= (-1Г1 Еаг, а1 е 7т, 1 < 5 < 2п(к -1).

аи =

а

1

Для доказательства рассмотрим значения компонент вектора а в последовательностях неубывающих компонент. Построим дл\ вектора a вектор а1 е 7т, значения компонент которого определяются следующим образом:

аг при аг > аг -1; аг-1 при а{ < аг-1;

В результате описанного построения для всех ан имеет место а1г- > а, т.е. аI > а. Построим теперь вектор

Ь1 = а1 - а ={ а10 - а0 , а11 - а1 ,..., а1,т-1 - ат-1 }.

Тогда

а = а1 - Ь1.

Если вектор Ь1 - монотонный, то теорема доказана, в противном случае для него повторяем описанную выше процедуру и представляем его в виде:

¿1 = а2 - ¿2,

а исходный - в виде:

а = а1 - а2 + Ь2.

Если вектор Ь2 оказывается немонотонным, то к нему снова применяем описанную выше процедуру, и т. д.

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

векторе и не вносит новых нарушений монотонности, поскольку сам является монотонным.

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

Решение. Поскольку у монотонных векторов значения компонент в пределах любой последовательности не убывают, то из распределения значений компонент сразу видны места нарушения монотонности (это последовательности 1, 2, 3). Устраняя нарушение монотонности в последовательности 1 и изменяя, соответственно, значения компонент в последующих последовательностях, представим исходный вектор в виде разности векторов, приведенной в табл. 4.

Таблица 4

Исходный вектор а = {0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0} в виде разности

векторов

Я Исходный вектор Вектор 1 Вектор 2

0 0 1 1 1 1 0 1 1 1 1 0 0 0 0 0

1 1 0 0 0 1 1 1 1 0 1 1 1

2 1 0 1 1 1 1 0 1 0

3 0 1 1 1 1 1 0 0

4 1 1 1 1 0 0

5 0 1 1 1 1 0

6 0 1 1 1 1 0

7 1 0 1 1 0 1

Первый из векторов является монотонным, второй - немонотонным (см. строки 2, 3, 5 и 6), поэтому для него повторяем процедуру представления его разностью двух монотонных векторов, приведенного в табл. 2, табл. 5.

Таблица 5

Представление немонотонного вектора 2 в виде двух монотонных векторов

g Исходный вектор Вектор 1 Вектор 2 Вектор 3

0 0 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0

1 1 0 0 0 1 1 1 1 0 1 1 1 0 0 0 0

2 1 0 1 1 1 1 0 1 1 0 0 1

3 0 1 1 1 1 1 1 1 0 1 1

4 1 1 1 1 0 0 0 0

5 0 1 1 1 1 1 0 1

6 0 1 1 1 1 1 0 1

7 1 0 1 1 1 1 1 0

Повторив для вычитаемого вектора (см. строку 7) процедуру представления его в виде разности монотонных векторов, окончательно получим, табл. 6.

Таблица 6

Исходный вектор а = {0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0} в виде алгебраической суммы монотонных векторов

g Исходный вектор Вектор 1 Вектор 2 Вектор 3 Вектор 4

0 0 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

1 1 0 0 0 1 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0

2 1 0 1 1 1 1 0 1 1 0 0 1 0 0 0

3 0 1 1 1 1 1 1 1 0 1 1 0 0 0

4 1 1 1 1 0 0 0 0 0 0

5 0 1 1 1 1 1 0 1 0 0

6 0 1 1 1 1 1 0 1 0 0

7 1 0 1 1 1 1 1 1 0 1

или

а = a\ - a2 + аз - щ = {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,1, 1} - {0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1} + {0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1} - {0, 0, 0, 0 ,0, 0, 0 ,0, 0, 0, 0, 0, 0, 0, 0, 1}.

Заключение

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

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

- процедура синтеза в линейной алгебре проще, чем в булевой: здесь отсутствует, например, необходимость в минимизации, что особенно эффективно при получении представления логических функций большой размерности;

- процедура синтеза в линейной алгебре легко автоматизируема: существует ряд прикладных программ, обрабатывающий данные в матричной форме, например, Matlab, MathCad и др.;

Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 16-37-60054 мол_а_дк

Литература

1. Ермаков И.В., Шелепин Н.А. Схемотехнические решения R-S- и D-триггеров с электрически перепрограммируемой энергонезависимой памятью// Инженерный вестник Дона, 2014, №2 URL: ivdon.ru/magazine/archive/n2y2014/2453.

2. Тюрин С.Ф., Городилов А.Ю., Данилова Е.Ю. Диагностирование логического элемента DC LUT FPGA// Инженерный вестник Дона, 2014, №2 URL: ivdon.ru/magazine/archive/n2y2014/2313.

3. Lukasiewicz J. Logika trojwartosciowa. Львов: Ruch Filozoficzny. r. V., 1920. - Т. 5. - № 9., pp. 169-171.

4. E.L. Post Introduction to a General Theory of Elementary Propositions // Amer. Journ. of Math. 1921. №3, pp. 163-185

5. Pollard J. The Fast Fourier Transform in a Finite Field // Mathematics of Computation. 1971. pp. 365-374.

6. Залманзон Л. А. Преобразование Фурье, Уолша, Хаара и их применение в управлении, связи и других областях. - М.: Наука, 1989. - 496 с.

7. Mozammel H. A. Khan, Nafisa K. Siddika, Marek A. Perkowski Minimization of Quaternary Galois Field Sum of Products Expression for MultiOutput Quaternary Logic Function using Quaternary Galois Field Decision Diagram // in Proceeding of 38th Internanional Symposium on Multiple-Valued Logic (ISML 2008). pp. 125-130.

8. H. Machida, J. Pantovic, I. G. Rosenberg Galois Connection for Hyperclones // in Proceeding of 40th Internanional Symposium on Multiple-Valued Logic (ISML 2010). 2010. pp. 201-204.

9. Карпенко А.С. Многозначные логики (монография). Логика и компьютер. Вып. 4. М.: Наука, 1997, 223 с.

10. Rescher N. Many-valued Logic. N. Y.: Mc.Graw-Hill, 1969, 359 p.

11. Dunn, J., Epstein G. Modern Uses of Multiple Valued Logic Boston: Dordrecht-Holland. 1977, 336 p.

12. Rine, David C. Computer science and multiple-valued logic: theory and applications. Elsevier, N. Y.: North Holland publishing company, 1977, 548 p.

13. Bolc, Leonard, Piotr Borowik Many-Valued Logics 1: Theoretical Foundations. Berlin: Springer, 1991, p. 289.

14. Epstein G. Multiple-valued logic design: an introduction. Bristol: 1993, 370 p.

15. Четвериков Г.Г. Многозначные структуры (анализ, сравнение, синтез, обобщение). Ч.1 изд. К.: ИСМО, 1997, 192 с.

16. Bondarenko M., Karpuhin A., Chetverikov G., Leshchinsky V. Synthesis Methods of Multiple-valued Structures of Bilogical Networks // Proc. of the 12th International Conf. "Mixed design of integrated circuits and systems" (MIXDES 2005). Krakow: 2005. pp. 201-204.

17. Чернов Н.И. Основы логического синтеза цифровых структур над полем вещественных чисел. - Таганрог: ТРТУ, 2000. - 146 с.

18. Chernov N.I. The Effectiveness of the Use of Tool of Linear Spaces in Logical Synthesis of Digital Structures // Proceedings of International Scientific and Technical conferences "Intelligence Systems (IEEE AIS'05)" and "Intelligent CAD Systems (CAD-2005). 2005. pp. 420-424.

19. Чернов Н.И. Логический синтез цифровых структур в линейных алгебрах // Материалы V Международного научно-практического семинара «Проблемы современной аналоговой микросхемотехники». - Шахты, 2006. -С. 27-36.

20. Чернов Н.И., Югай В.Я. Неклассический синтез цифровых структур средствами аналоговой схемотехники // Материалы IX Международного научно-практического семинара «Проблемы современной аналоговой микросхемотехники». (Шахты, 1-3 ноября 2012 года). - Шахты: ФГБОУ ВПО «ЮРГУЭС», 2012, C.138 - 143.

21. Прокопенко Н.Н., Чернов Н.И., Югай В.Я. Линейный логический синтез двузначных цифровых структур в линейных пространствах // Труды

конгресса по интеллектуальным системам и информационным технологиям IS&IT'13. - М.: Физмат- лит, 2013. - C. 278-283.

22. N.I. Chernov, V.Ya. Yugai, N.N. Prokopenko, N.V. Butyrlagin Basic Concept of Linear Synthesis of Multi-Valued Digital Structures in Linear Spaces / // in Proceedings of IEEE East-Wesr Design & Test Simposium (EWDTS'2013), Rostov-on-Don, Russia, September 27-30, 2013. - Kharkov National University of Radioelectronics. - pp. 146 -149.

23. Пат. РФ 2504074 Одноразрядный полный сумматор с многозначным внутренним представлением сигналов // Дворников О.В., Прокопенко Н.Н., Чернов Н.И., Югай В.Я.: заявитель и патентообладатель ГОУ ВПО «ЮРГУЭС». -№ 2012139952/08; заявл. 18.09.2012; опубл. 10.01.2014, Бюл. № 1.

24. Пат. РФ 2509412 Логический элемент "И" с многозначным внутренним представлением сигналов // Прокопенко Н.Н., Чернов Н.И., Югай В.Я.: заявитель и патентообладатель ГОУ ВПО «ЮРГУЭС». -№ 2012142319/08; заявл. 04.10.2012; опубл. 10.03.2014, Бюл. № 7.

25. Пат. РФ 2513717 Логический элемент "2-И" с многозначным внутренним представлением сигналов // Чернов Н.И., Югай В.Я., Прокопенко Н.Н., Будяков П.С.: заявитель и патентообладатель ГОУ ВПО «ЮРГУЭС». -№ 2012138671/08; заявл. 10.09.2012; опубл. 20.04.2014, Бюл. № 11.

26. Пат. РФ 2520416 Устройство для выделения модуля разности двух входных токов // Прокопенко Н.Н., Чернов Н.И., Югай В.Я., Бутырлагин Н.В.: заявитель и патентообладатель ГОУ ВПО «ЮжноРоссийский государственный университет экономики и сервиса». -№ 2012150541/08; заявл. 26.11.2012; опубл. 27.06.2014, Бюл. № 8.

References

1. Ermakov I.V., Shelepin N.A. Inzenernyj vestnik Dona (Rus), 2014, No.2 URL: ivdon.ru/magazine/archive/n2y2014/2453/.

2. Tyurin S.F., Gorodilov A. Yu., Danilova E. Yu. Inzenernyj vestnik Dona (Rus), 2014, No.2 URL: ivdon.ru/magazine/archive/n2y2014/2313.

3. Lukasiewicz J. Logika trojwartosciowa. Lwov: Ruch Filozoficzny. r. V., nr. 9, 1920. pp. 169-171.

4. E.L. Post. Amer. Journ. of Math. 1921. No.3, pp. 163-185.

5. Pollard J. Mathematics of Computation, 1971. pp. 365-374.

6. Zalmanzon L.A. Preobrazovanie Fur'e, Uolsha, Khaara i ikh primenenie v upravlenii, svyazi i drugikh oblastyakh [Fourier, Walsh, and Haar Transforms and Their Applications in Control, Communication, and Other Fields]. Moscow, Nauka, 1989. 496 p.

7. Mozammel H. A. Khan, Nafisa K. Siddika, Marek A. Perkowski Minimization of Quaternary Galois Field Sum of Products Expression for MultiOutput Quaternary Logic Function using Quaternary Galois Field Decision Diagram in Proceeding of 38th Internanional Symposium on Multiple-Valued Logic (ISML 2008). pp. 125-130.

8. H. Machida, J. Pantovic, I. G. Rosenberg Galois Connection for Hyperclones in Proceeding of 40th Internanional Symposium on Multiple-Valued Logic (ISML 2010). 2010. pp. 201-204.

9. A.S. Karpenko. Mnogoznachnye logiki [Multi-valued logics] (monograph), in series "Logics and computer", issue 4. Moscow, 1997, 223 p.

10. Rescher N. Many-valued Logic. N. Y.: Mc.Graw-Hill, 1969, 359 p.

11. Dunn, J., Epstein G. Modern Uses of Multiple Valued Logic Boston: Dordrecht-Holland. 1977, 336 p.

12. Rine, David C. Computer science and multiple-valued logic: theory and applications. Elsevier, N. Y.: North Holland publishing company, 1977, 548 p.

13. Bolc, Leonard, Piotr Borowik Many-Valued Logics 1: Theoretical Foundations. Berlin: Springer, 1991, p. 289.

14. Epstein G. Multiple-valued logic design: an introduction. Bristol: 1993, 370 p.

15. Chetverikov G.G. Mnogoznachnyye struktury (analiz, sravneniye, sintez, obobshcheniye) [Many value structures (analysis, comparison, synthesis, generalization)]. Ch. 1. K.: ISMO, 1997. 192 p.

16. Bondarenko M., Karpuhin A., Chetverikov G., Leshchinsky V. Synthesis Methods of Multiple-valued Structures of Bilogical Networks Proc. of the 12th International Conf. "Mixed design of integrated circuits and systems" (MIXDES 2005). Krakow: 2005. pp. 201-204.

17. Chernov N.I. Osnovy logicheskogo sinteza tsifrovykh struktur nad polem veshchestvennykh chisel [Fundamentals of logic synthesis of digital structures over the field of real numbers]. Taganrog: TRTU, 2000, 146 p.

18. Chernov N.I. "The Effectiveness of the Use of Tool of Linear Spaces in Logical Synthesis of Digital Structures". Proceedings of International Scientific and Technical conferences "Intelligence Systems (IEEE AIS 05) and "Intelligent CAD Systems (CAD-2005), v.1, pp.420 - 424.

19. Chernov N.I. Materialy V Mezhdunarodnogo nauchno-ptakticheskogo seminara "Problemy sovremennoy analogovoy mikroskhemotekhniki". Shakhty, 2006, pp. 27-36.

20. Chernov N.I., Yugay V.Ya. Materialy IX Mezhdunarodnogo nauchno-ptakticheskogo seminara "Problemy sovremennoy analogovoy mikroskhemotekhniki". Shakhty, FGBOU VPO YuRGUES, 2012, pp.138 - 143.

21. Prokopenko N.N., Chernov N.I., Yugay V.Ya. Trudy kongressa po intellektual'nym sistemam i informatsionnym tekhnologiyam IS&IT'13. Moscow: Fizmatlit, 2013. pp. 278-283.

22. N.I. Chernov, V.Ya. Yugai, N.N. Prokopenko, N.V. Butyrlagin Basic Concept of Linear Synthesis of Multi-Valued Digital Structures in Linear Spaces Proceedings of IEEE East-Wesr Design & Test Simposium (EWDTS'2013),

Rostov-on-Don, Russia, September 27-30, 2013. Kharkov National University of Radioelectronics, pp. 146-149.

23. Patent RF 504074 Odnorazryadnyy polnyy summator s mnogoznachnym vnutrennim predstavleniyem signalov [One-digit full adder with multi-valued internal representation of signals]. Dvornikov O. V., Prokopenko N. N., Chernov N. I., Yugai V. Ya., zajavitel' i patentoobladatel' GOU VPO «JuRGUJeS». № 2012139952/08; zajavl. 18.09.2012; opubl. 10.01.2014, Bjul. № 1.

24. Patent RF 2509412 Logicheskiy element "I" s mnogoznachnym vnutrennim predstavleniyem signalov [Logic element "AND" with multi-valued internal representation of signals], Prokopenko N. N., Chernov N. I., Yugai V. Ya.: zajavitel' i patentoobladatel' GOU VPO «JuRGUJeS». № 2012142319/08; zajavl. 04.10.2012; opubl. 10.03.2014, Bjul. № 7.

25. Patent RF 2513717 Logicheskiy element "I" s mnogoznachnym vnutrennim predstavleniyem signalov [Logic element "AND" with multi-valued internal representation of signals] Chernov N. I., Yugai V. Ya., Prokopenko N. N., Budyakov P. S., zajavitel' i patentoobladatel' GOU VPO «JuRGUJeS». № 2012138671/08; zajavl. 10.09.2012; opubl. 20.04.2014, Bjul. № 11.

26. Patent RF 2520416 Ustroystvo dlya vychisleniya modulya raznosti dvukh vkhodnykh tokov [Device for extracting modulus of difference of two current inputs], Prokopenko N. N., Chernov N. I., Yugai V. Ya., Butyrlagin N. V., zajavitel' i patentoobladatel' GOU VPO «Juzhno-Rossijskij gosudarstvennyj universitet jekonomiki i servisa». № 2012150541/08; zajavl. 26.11.2012; opubl. 27.06.2014, Bjul. № 8.