Користувач:YP/пісочниця

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Поліноміальні моделі цифрових пристроїв.[ред. | ред. код]

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

<! «Таблица перевода номеров AWG в дюймы и миллиметры» содержит столбец: «Примерный метрический витой эквивалент». Википедия и Coogle не дает расшифровку этого термина. Прошу администратора решить эту проблему добавлением соответствующей ссылки.>

Наприклад: Задана таблиця 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:

Мал. 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) знаходиться як скалярний добуток двох векторів - bt та 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

Дивись також[ред. | ред. код]

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

Література[ред. | ред. код]

  1. Пухов Г.Е., Евдокимов В.Ф., Синьков М.В. "Разрядно-аналоговые вычислительные системы". -М., "Сов. радио", 1978.
  2. Плющ Ю.А. Аппаратурная реализация функционального преобразования в специализированных вычислительных устройствах/ "Гибридные вычислительные машины". -К., "Наукова думка", 1979.
  3. 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.
  4. Автор. свид. СССР № 631918. МКИ3 G 06 f 15/32. БИ № 32, 30.08.79г.