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

Наприклад: Задана таблиця 1 цифрового пристрою, що реалізує функцію F(Xi)(вихідні дані). Вхідними даними є аргумент X, що визначає номер рядка таблиці, представлений у вигляді натурального числа у десятковій системі числення (X10 = 0, 1, 2, …, m). Для синтезу поліноміальної моделі цифрового пристрою використовують двозначну або тризначну систему числення (тризначна система числення використовувалась в ЭОМ «Сетунь»). В цьому випадку аргумент X замінюють кодом числа X в одній із вказаних систем числення зі змінними xi, які однозначно визначають X10= де: q — основа системи числення, xk+1 — значення xk+1 розряду,

Таблиця 1.

+ X xn . xi . x1 F(xi) 0 0 . 0 . 0 F(0) 1 0 . 0 . 1 F(1) . . . . . . . k xkn . xki . xk1 F(k) . . . . . . . m xmn . xmi . xm1 F(m) +

Задача створення аналітичного виразу (математичної моделі) у вигляді полінома F(xi) від незалежних змінних xi), зводиться до визначення вигляду та коефіцієнтів цього полінома, що в свою чергу, залежить від обраної системи числення.

Поліноміальну математичну модель F(xi) шукають у вигляді скалярного добутку двох векторів — bt та P(X) (де: bt — транспонований вектор b).

Компонентами вектора bt є коефіцієнти апроксимуючого полінома.

Нелінійна частина апроксимуючого полінома P(X) залежить від обраної системи числення. Компонентами вектора P(X) для двозначної системи числення є одночлени алгебраїчного полінома, отриманого шляхом перемноження простих лінійних функцій для одного розряду: P(X)=(1+x1)(1+x2)(1+x3)…(1+xi)=1 + x1 + x2 + x1 x2 + x3 + x1 x3 + x2 x3 + x1 x2 x3… до тих пір, поки не виконається співвідношення 2i = m (m — кількість рядків в таблиці 1).

Компонентами вектора P(X) для тризначної системи числення є одночлени алгебраїчного полінома, отриманого шляхом добутку простих квадратних функцій для одного розряду: P(X)=(1 + + )(1+ + )(1 + + )…(1 + + ) = 1 + + + + + + + + + + + + + + + + + + + + + + + + + + … до тих пір, поки не виконається співвідношення 3i = m.

Апроксимуючий поліном прийме вигляд:

F(xi)=bt*P(X)=: + + …

Задача формування математичної моделі зводиться до визначення компонент bj (j= 0,1, …m) вектора b.

Двозначна система числення

Алгебраїчний поліном Алгоритм визначення коефіцієнтів bj полінома F(xi). Вхідним виразом служить матриця C1: .

Подальші матриці будуються за рекурсивною процедурою:до тих пір, поки не виконається співвідношення 2i = m

Для знаходження вектора b, що складається з компонент шуканих коефіцієнтів bj, необхідно перемножити матрицю Ci на вектор, що складається з компонент правого стовпчика F(xi) таблиці 1:b = Ci * F(xi) Поліном Жегалкіна Поліном Жегалкіна має той же вигляд, що і алгебраїчний поліном. Відмінність полягає в тому, що операції алгебраїчного множення та суми замінюються на логічні функції кон'юнкції та суми по mod.2 (виключної диз'юнкції).

Вхідним виразом служить матриця C1:

Подальші матриці будуються відповідно за рекурсивною процедурою:

до тих пір, поки не виконається співвідношення 2i=m .

Для знаходження вектора b, необхідно перемножити матрицю Ci на вектор, що складається з компонент правого стовпчика таблиці 1 з урахуванням підсумовування часткових добутків по mod.2:b = [(Ci)*F(xi)]mod2. Тризначна система числення

Алгебраїчний поліном.

Тризначна симетрична система числення (-1,0,1)

Матриця C1 для симетричної системи числення має вигляд:

C1=

Наступні матриці будуються відповідно до рекурсивних співвідношень:

Ci=

Вектор b знаходять у відповідності з виразом: b=[(Ci)*F(xi)], а поліноміальну математичну модель згідно з виразом:

F(xi) = bt * P(X)

Тризначна несиметрична система числення (0,1,2) Алгоритм той же, що і для симетричної системи числення, відмінність тільки в матрицях:

C1=

Ci=

b=[(Ci)*F(xi)];

F(xi) = bt * P(X).

Модифікація полінома Жегалкіна для тризначної системи числення Модифікований поліном Жегалкіна має той же вигляд, що і алгебраїчний поліном для тризначної системи числення. Відмінність полягає в тому, що алгебраїчна сума замінюється на логічну функції суми по mod.3. Операція множення і зведення в квадрат аргументів xi відповідають алгебраїчному множенню і зведенню аргументу в квадрат:

Існування і єдиність представлення модифікованим поліномом Жегалкіна будь-якої функції тризначної логіки аналогічно доказу для двозначної логіки.

Тризначна симетрична система числення (-1,0,1) Алгоритм визначення коефіцієнтів bj (j= 0,1, …m) аналогічний визначенню цих коефіцієнтів для алгебраїчного полінома в симетричній системі числення (-1,0,1). Відмінність у вхідних матрицях. Матриця C1 для симетричної системи числення (-1,0.1) має вигляд:

C1=    .

Рекурсивне співвідношення для наступних матриць: Ci=    .

Вектор b шукаємо у відповідності з виразом: b=[(Ci)*F(xi)]mod3, а поліноміальну математичну модель згідно з виразом: F(xi) = (bt * P(X))mod.3.

Тризначна несиметрична система числення (0,1,2) Матриця C1 для несиметричною системи числення (0,1,2):

C1=

Рекурсивне співвідношення для наступних матриць: Ci=

b=[(Ci)*F(xi)]mod3;

F(xi) = (bt * P(X))mod.3.

Приклади

Двозначна система числення. Алгебраїчний поліном Задана таблиця 2. Визначити компоненти bj (j= 0,1, …7) вектора b поліноміальної математичної моделі F(xi)=bt * P(X):

Таблиця 2. + x3 x2 x1 F(xi) 0 0 0 F(0)=0 0 0 1 F(1)=1 0 1 0 F(2)=4 0 1 1 F(3)=9 1 0 0 F(4)=16 1 0 1 F(5)=25 1 1 0 F(6)=36 1 1 1 F(7)=49 +

Будуються матриці C2 та C3:

Шуканий вектор b = C3 * F(xi)=

Поліноміальна математична модель:

F(xi) = bt * P(X)=

+ 4* + 4** + 16* + 8** + 16**

Якщо коефіцієнти bj замінити кодами чисел у двозначній системі числення, то отримаємо вектор F(xi), який встановлює зв'язок між розрядами аргумента xi і функції f(k)(k=1,2,…,6):

F(k)=bt * P(X) =

Принципова схема пристрою для зведення чисел у квадрат, згідно отриманої поліноміальної моделі, зображена на мал.1:

Двозначна система числення. Алгебра Жегалкіна Задана таблиця 3. Визначити компоненти bj (j= 0,1, …7) вектора b для полінома Жегалкіна:

Таблиця 3. + x3 x2 x1 F(xi) 0 0 0 F0=0 0 0 1 F1=1 0 1 0 F2=0 0 1 1 F3=1 1 0 0 F4=0 1 0 1 F5=0 1 1 0 F6=1 1 1 1 F7=1 +

Будуються матриці C2 та C3:

Шуканий вектор b:

Поліноміальна математична модель: F(xi)=bt*P(X)= + * + * ]mod.2.

Таблиця 3 реалізує функцію D-тригера. Змінним xi відповідають найменування входів і виходів: x1 = Qt; x2 = D; x3 = C; F(xi) = Qt+1.

Алгоритм функціонування D-тригера описується формулою:Qt+1 = [Qt * (C + 1) + D * C)]mod.2.

Для зменшення обсягу обчислень застосовують властивості рекурсивної процедури побудови матриці Cj. У даному випадку знаходять перші значення коефіцієнтів bj1 (j1 = 0,1, 2, 3) застосовуючи співвідношення: bj1 = [(C2)*F(xi1)]mod2. . Останні коефіцієнти bj2 (j2= 4,5, 6, 7) обчислюються за формулою: bj2=[bj1 + (C2)*F(xi2)]mod2.

Значення функції F(k) може бути у вигляді багаторозрядних десяткових чисел. В цьому випадку необхідно записати ці числа у двозначній системі числення і операцію суми по mod.2 проводити порозрядно.

Тризначна симетрична система числення (-1;0;1). Алгебраїчний поліном Задана таблиця 4. Визначити компоненти bj (j= 0,1, …8) вектора b для алгебраїчного полінома:

Таблиця 4. + x2 x1 F(xi) -1 -1 1 -1 0 -1 -1 1 0 0 -1 -1 0 0 0 0 1 1 1 -1 0 1 0 1 1 1 -1 +

Будується матриця C2:

Шуканий вектор b = C2 * F(xi)=

Поліноміальна математична модель: F(xi) = bt * P(X)=

+  —  —

реалізує функцію F(xi)=( + )mod.3.

Тризначна симетрична система числення (-1;0;1). Модифікований поліном Жегалкіна Задана таблиця 5. Для синтеза математичної моделі необхідно визначити компоненти bj (j= 0, 1, …, 26) вектора b для модифікованого поліному Жегалкіна. Поліноміальна модель F(xi) знаходиться як скалярний добуток двох векторів — b't та P(X).

Таблиця 5. + F(xi) -1 0 1 -1 0 1 -1 -1 -1 -1 0 1 -1 0 1 0 0 0 -1 0 1 -1 0 1 1 1 1 x3 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 x2 -1 -1 -1 0 0 0 1 1 1 -1 -1 -1 0 0 0 1 1 1 -1 -1 -1 0 0 0 1 1 1 x1 -1 0 1 -1 0 1 -1 0 1 -1 0 1 -1 0 1 -1 0 1 -1 0 1 -1 0 1 -1 0 1 +

Побудувавши матрицю C3 за рекурсивними співвідношеннями:

розраховується вектор b: b = [C3 * F(xi)]mod.3.

Визначивши компоненти вектора b отримаємо поліноміальну математичну модель модифікованого полінома Жегалкіна:

F(xi)= ( + * + *  — *  — * )mod.3.

Таблиця 5 реалізує функцію D-тригера. Змінним xi відповідають найменування входів і виходів: x1= Qt; x2= C; x3= D; F(xi)= Qt+1.

Алгоритм функціонування D-тригера описується формулою:Qt+1 = [Qt'' * (1 + C + C2) — D * (С + C2)]mod.3

Див. також Поліном Жегалкіна Модель Математичне моделювання Поліноміальна інтерполяція

Література Пухов Г. Е., Евдокимов В. Ф., Синьков М. В. «Разрядно-аналоговые вычислительные системы». -М., «Сов. радио», 1978. Плющ Ю. А. Аппаратурная реализация функционального преобразования в специализированных вычислительных устройствах/ «Гибридные вычислительные машины». -К., «Наукова думка», 1979. V. Evdokimov, Y. Plushch, A. Chemeris «SYNTHESIS OF DISCRETE DEVICES ON BASIS OF BIT TRANSFORMATIONS»/ ROCZNIKI INFORMATYKI STOSOWANEJ WYDZIALU INFORMATYKI POLITECHNIKI SZCZECINSKIEJ NR 3. Szczecin, 2002. Автор. свид. СССР № 631918. МКИ3 G 06 f 15/32. БИ № 32, 30.08.79г.