УДК 681.325
АПАРАТНИЙ Б1Т-ПОТОКОВИЙ ONLINE ОБЧИСЛЮВАЧ ДРОБОВО-РАЦ1ОНАЛЬНИХ ФУНКЦ1Й
ЛАРЧЕНКО Б.Д., ШК1ЛЬ О.С., ЛАРЧЕНКО Л.В., ФШШПЕНКО 1.В, ЮЩЕНКО С.В.
Пропонуеться математична модель апаратного бгт-по-токового online обчислювача дробово-рацiональних функцiй, яка отримана алгоритмiчно шляхом непере-рвного паралельного обчислення значень двох рацю-нальних функцш i формуванням вих1дного битового потоку пристрою в моменти рiвностi !х значень. Математична модель обчислювача забезпечуе абсолютну похибку вщтворення 0,5 одиницi молодшого бiту аргументу. Пропонуеться апаратна модель обчислювача, яка сформована на основi цифрового автомата моделi Мура. Розробляеться граф-схема алгоритму роботи пристрою та граф переходiв керуючого автомата. Здшснюеться верифжащя, тестування та iмплемента-цiя запропоновано! моделi в платформу ПЛ1С. Ключовi слова: функцiональне перетворення, бiтовий потж даних, апроксимацiя, математична модель, абсолютна похибка, конвеерш обчислення, алгоритм, кш-цевий автомат, граф переходiв, HDL-модель, ве-рифiкацiя.
Key words: functional conversion, bit-stream data, approximation, mathematical model, absolute error, pipeline calculations, algorithm, finite-state machine, state diagram, HDL-model, verification. 1. Вступ
Одним з напрямюв, пов'язаних 3i створенням но-вих базових елементiв для побудови сенсорних, робототехнiчних та бюшчних систем, систем управлiння е розробка online обчислювачiв, що виконують функцюнальне перетворення шфор-мацiйних сигналiв, представлених бiтовими потоками даних. Б^-потокова форма сигналiв ефек-тивно застосовуеться як в сенсорних штерфейсах, так i при формуваннi керуючих сигналiв [1,2]. В бiт-потоковому кодуваннi даш представляють собою потоки iмпульсiв одинично! амплiтуди ча-стотних або широтно-модульованих сигналiв. При цьому шформативним параметром е фшсо-ване значення iмпульсiв довiльноi тривалостi за часовий штервал. Бiт-потоковi сигнали е квазщифровими, оскiльки iнформацiя представ-ляеться неперервно у чаш та легко перетво-рюеться в дискретнi форми представлення, напри-клад, в бiнарнi коди. Така особливють дозволяе застосовувати при побудовi бiт-потокових функцiональних пристро!в аналоговi пiдходи до
обчислень, реалiзуючи !х в базисi традицiйних цифрових елеменпв [3].
Бiт-потоковi форми сигналiв дозволяють здiйснювати передачу i обробку шформаци способами, що характеризуються можливютю послiдовноi обробки потокiв в темт надходження одиничних бiтiв i високою завадостiйкiстю вна-слiдок непозицiйностi та е^валентност одиничних бiт по вщношенню до !х ваги в цифровому кодi [4]. При цьому б№потокова форма сигналiв зберiгаючи завадостшкють, не дае iнформацiйноi надмiрностi i дозволяе забезпечувати високу швидкодiю пристро!в [5].
Переваги бiт-потокового подання сприяють ро-зробцi вiдповiдних пристро!в для систем управ-лiння i контролю [6,7]. Системи управлшня в своему складi мiстять iнтелектуальнi вимiрювальнi системи, в яких часто передбачена первинна обробка вимiрювальноi iнформацii, що отримують вiд вимiрювальних сенсорiв фiзичних величин, для прийняття рiшень про результати вимiрювань з метою реалiзацii управлшня. При цьому потрiбно виконання рiзних нелiнiйних пе-ретворень бiтових потоюв даних. Обробка даних передбачае як перетворення форми подання ш-формаци, так i виконання лiнеаризацii сигналу сенсора з використанням рiзних нелшшних функцiй. При цьому перевага вщдаеться сенсорам, що забезпечують неперервний процес вимiрювань i перетворень в реальному чаш. При реалiзацii управлшня, в бшьшост випадкiв, по-трiбнi плавнi змiни сигналiв управлiння, напри-клад, при впливi на виконавчi механiзми роботiв, манiпуляторiв, бiонiчних протезiв та iн. Для згладжування сигналiв можуть бути використанi рiзнi нелшшш функцii: логарифмiчна, степенева, дробово-рацiональна, iррацiональна, експонен-цiальна та тригонометричнi [8]. Таким чином, розробка спещализованих апаратних модулiв, що виконують обчислювальш перетворення б№по-токових даних, е актуальною. Потоковi способи передачi та обробки iнформацii характеризуються можливютю реатзацп перетворення за рахунок використання методiв фор-мування прироспв i послiдовноi обробки потокiв у мiру !х надходження на вхщ пристрою. Бгг-по-токовi online обчислювачi елементарних матема-тичних функцiй передбачають реатзащю потокового методу обчислень в реальному чаш з одно-часним паралельно-послщовним виконанням перетворень над одиничними бгами потоку вщповщно до необхiдноi функцii, тобто послщовне обчислення значень функцii, що вико-нуються для сусiднiх значень аргументу. Кожне
наступне значення функци визначають на n^craBi попереднього результату обчислень. При цьому перше обчислення здiйcнюють з урахуван-ням початкових умов - iнщiалiзацп компонентiв пристрою певними значеннями [9]. Застосування програмованих логiчних штеграль-них схем як елементно! бази для реалiзацil бгг-по-токових пристро!в е ефективним рiшенням зав-дяки !х виcокiй технологiчнiй надiйноcтi та швид-коди.
Метою роботи е дослщження та розробка матема-тично!, структурно! та апаратно! моделей проек-тування бiт-потокового online обчислювача дро-бово-рацiональних функцiй. Для досягнення мети визначеш завдання доcлiдження: аналiз способу вщтворення дробово-рацiональних функцiй з б№ потоковою формою подання аргументу, розробка математично! моделi обчислювача на оcновi тео-рil математичного моделювання, синтез архггек-тури обчислювача на оcновi аналiзу способу по-будови конвеерних архiтектур бiт-потокових об-чиcлювачiв полiномiальних функцiй, розробка апаратно! моделi обчислювача на оcновi кшце-вого автомата i верифiкацiя, тестування та iмпле-ментацiя запропоновано! моделi в платформу ПЛ1С.
2. Математичне обгрунтування обчислення дробово-ращональних функцiй
Вiдповiдно до мети дослщження апаратний б№ потоковий online обчислювач дробово-рацюналь-них функцiй мае реатзувати неперервну функцiю
Z aix*'
У = Р
m
-]
(1)
При цьому процес вщтворення функци (2) може бути здшснений на оcновi вибiрки певних бгг Xy
з вхiдного бiтового потоку x, номери яких визначають з нерiвноcтi
max |) < xy < Y(y-|8
max |) +1, (3)
де Y(y -|Smax|) - функцiя, зворотна f(x).
Значення вибiрок Xy, що обираються з вхiдного
бiтового потоку, можуть бути знайденi шляхом поcлiдовно! постановки y = 1, 2, 3, ..., yk в нерiвнicть (3), обчисленням лiво! !! частини i округленням одержуваних дискретних значень в бiльшу сторону до найближчого цшого числа. Розглянутий метод забезпечуе неперервний процес вщтворення функци (2) в реальному чаш в процес надходження б^ового потоку х на вхщ апаратного обчислювача. Перевагою б№ потокових обчиcлювачiв е icтотне спрощення !х технiчно! реалiзацi! завдяки даним, представленим бiтовими потоками. Отже, неперервна функщя (1) може бути вщтво-рена на виходi пристрою апроксимуючою функщею
У = [
£ aixi i=0
+
m
|d max |]
(4)
де l, ai - ц1Л1 додатн1 числа.
В [10] розглянуто метод формування прироста неперервних висхщних функщй. Зазначено, що
неперервна функщя y * = f(x * ) , обмеженнями
* * * * .
яко1 е умови x , y > 0, y < x i яка мае зворотну
* *
x = y(y ), може бути вщтворена на виход1 апаратного б1т-потокового online обчислювача апроксимуючою функщею
y = [f(x)+|5 maxi] . (2)
Тут x, y - вхщний i вихщний б1тов1 потоки даних вщповщно, 0,5 < | 5 max | < 1 - задане граничне значення абсолютно1 похибки вщтворення вщповщних неперервних функцiй. В (2) квадратш дужки означають цшу частину числа.
де х - аргумент функци, що представляе собою б™вий потiк даних; i, а1 - цiлi додатнi числа; |§тах| - граничне значення абсолютно! похибки
п ^
дiлення полшома X а1х на число т. При
1=0
обчисленш полiномiв з цiлими коефiцiентами
похибка обчислення вщсутня.
При абсолютнiй похибцi |5 тах| = 0,5
забезпечуеться мшмальна похибка вiдтворення задано! функцi!, оскшьки результат дiлення округляеться до найближчого цшого числа. На виходi пристрою формуеться бiтовий потiк даних
у.
Апроксимуюча дробово-рацiональна функцiя з урахуванням абсолютно! похибки обчислень
|5 m
= 0,5
, що е оптимальною, мае вигляд
Z aix'
y = [
i=0
m
- + 0,5]
(5)
При обчисленш функци (5) необхщно виконання двох еташв, що мають бути здшсненш в до-слiджуваному пристро1:
- обчислення полiномiальноi функцii X ai x1 , що
1=0
е в чисельнику функци (5);
- дшення полiнома на число m з похибкою I5max| = 0,5 .
3. Математична модель бгт-потокового online обчислювача дробово-ращональних функцш
Отримання математичних моделей бiт-потокових обчислювачiв дробово-рацiональних функцiй описано в [11]. Реалiзацiя апроксимуючих функцiй в апаратних бiт-потокових обчислювачах здiйснюеться на основi способу вiдтворення зво-ротних функцш. Але дробово-рацюнальна функцiя (5) не мае аналогичного виразу зворотно1' ш функцii i обчислення Xy не е можливим за формулою (3), тому було запропоновано шший шлях отримання математично1' моделi обчислювача. Опустивши квадратш дужки i виконавши перетворення функцii (5), отримаемо основну розрахункову нерiвнiсть, на основi яко! розроблено математичну модель пристрою
2^ а;х'у > m(2yk -1):
(6)
i=0
i=0
11 -11 2( S aix^ -X aix22) + A2 > 2m , (7)
i=0
i=0
Aj = 2^ ai xj + A0 - m ,
(8)
АУ-1 = 2(Xа, ху - 2а, х '-1) + А - 2т . (9)
1=0 ,=0
При надходженш на вхщ пристрою деякого бiта Ху бiтового потоку х на його виходi буде
сформований вихiдний бгг ук при виконаннi кожно! нерiвностi системи (7). Отже, першому вихщному бiту у! = 1 вщповщае обраний бiт з номером Х1 вхiдного бiтового потоку х, при цьому буде виконано першу нерiвнiсть системи. Аналогiчно, другому бiту у2 = 2 вiдповiдаe обраний бгг з номером Х2, при якому буде виконано другу нерiвнiсть системи. Для наступних бiтiв вихщного бiтового потоку у будуть виконаш нерiвностi системи (7) вiдповiдно.
Експериментальне дослiдження проведено на прикладi дробово-ращонально! функци
X aix'
У = [J=0-+ 0,5]
(10)
m
де У1 < У < Ук, 1 < Ук < k .
В результат переходу до рiзниць система нерiвностей, що описуе математичну модель апаратного бгт-потокового обчислювача дробово-рацiональноi функци на основi (6), мае вигляд
n
2 X aix\ > m, i=0
n n
2(Saix22 - Saix1i) + Aj > 2m ,
де
абсолютна похибка обчислення |5 m
= 0,5
На пiдставi (6) нерiвнiсть, що необхiдно реалiзувати в пристрой мае вигляд
2^atx;>m(2yk-1).
(11)
2(SSaiXy -}Са;хУ-1) + Ay-i > 2m , i=0 i=0
де Ay-1 - рiзниця, що отримана в результатi порiвняння приростiв поточних значень функцш
n
2X a1 x1 i m(2y -1) мiж двома сусiднiми вузлами
i=0
апроксимацii вiдтворноi функци, отримано1' на попередньому кроцi обчислень; x0, А0 = 0.
В OT^^i нерiвностей (7) Ах i A визначаються вiдповiдно
З урахуванням (11) математична модель б№ потокового обчислювача дробово-рацюнально1' функцii (10) набуде вигляду 2
2 X aixi > m, i=0
2.2. 2( S a. x^ - S aix11) + A1 > 2m, i=0 i=0 2.2. 2(Sa; x, -Sa{x2) + A2 > 2m, (12) i=0 ;=0
2( Sa,xy-S^-1) + A y-1 > 2m,
i=0 i=0
де
Aj = 2^ ai xj + A0 - m ,
1=0
2.2. Dy-1 = 2( Zai xy "Zа.ХУ-1) + Dy-2 " 2m.
(13)
(14)
i=0 i=0
4. Алгоритм конвеерних обчислень полiномiальних функцш
В OCHOBÎ концепцiï конвеeризацiï обчислень лежить подш процесiв виконання дш, що послiдовно виконуються. Конвеерна обробка даних обчислювального процесу вiдбуваеться в режимi паралельного виконання обчислень. В (5) необхщно здiйснювати обчислення полшома n-го степеня, що записаний в чисельнику функци.
Розглянемо алгоритм обчислення полiномiв, що мають вигляд
n
y = Xaix' , (!5)
1=0
де n, ai - цш додатш числа.
Особливiстю полiномiв з щлочисельними коефiцiентами ai е те, що послщовшсть його цшо-чисельних значень функцiï y0, ух, у2, у3,...,у;, як вiдповiдають значенням x=0, 1, 2, 3, ..., i е арифметичним рядом n - го порядку. Отже, задача синтезу полiномiального обчислювача може бути виршена шляхом зниження порядку рiзниць.
Визначимо функщю (15) за виразом
Yi =f(i+1)-f(i) , (16)
де i=0, 1, 2, 3, ..., f(i) - значення функцiï в точщ
x J, f(i+1) - значення функцiï в точщ X ¡+j вiдповiдно.
Для значення i аргументу рiзницi 1-го, 2-го та n-го порядкiв вщповщно визначаються системою рiзницевих рiвнянь
D = Yi+i -Yi,
А2 =А1+1 - А;, (17)
Af =Ai;1-Ai,
Л ; n = A пЛ+1 - A; n-1 Система рiвнянь (17) представляе собою матема-тичну модель б№потокового обчислювача полiномiальноï функцiï. Означена вище методика використана при проектуваннi конвеерно1' ар-хiтектури бiт-потокового обчислювача полiномiальних функцiй, що е складовою части-ною архiтектури пристрою обчислення дробово-ращональних функцш.
При побудовi обчислювачiв компоненти конвеер-но1' архiтектури потребують встановлення почат-кових умов, тобто компоненти мають бути iнiцiалiзованi початковими значеннями
у0, А0, ДО, ...,ДП , а саме, першими членами
арифметичного ряду n-го порядку та арифметич-ними рядами рiзниць 1-го, 2-го та n-го порядюв вiдповiдно.
5. Арх^ектура 6iT-n0T0K0B0r0 online обчислювача дробово-ращональних функцш
Загальна архiтектура пристрою, що вщтворюе дробово-рацiональну функцiю (5), представлена на рис. 1.
Рис. 1. Загальна архитектура бгт-потокового обчислювача дробово-ращональних функцш
Архiтектура обчислювача е синтезом двох блоюв: Block 1 - б№потоковий конвеерний обчислювач полiномiальних функцiй, що вiдтворюе функщю
n
2X a;x,y ; Block 2 - дiльник чисел, що реалiзую
1=0
функцiю m(2yk -1) нерiвностi (6).
Дробово-рацiональний обчислювач в своему складi мiстить суматор результату SUM_RES, n-1 суматорiв SUM1, ..., SUMn-1, регiстри RG1, RG2, групи елеменпв &'1, &1, &2, ..., &n, елементи за-тримки DE'1, DE1, DE2, ..., DEn-1. Основним обчислювальним компонентом е суматор результату SUM_RES, що використовуеться як схема порiвняння паралельних кодiв приростiв гратчастга функцiï
n
2X a1x,y з приростами гратчастга функцiï
1=0
m(2yk -1) з урахуванням i'x рiзницi Ay-1,
отримано! на попередньому кроцi обчислень. Формування сходинок вщтворно" функцii (5) здшснюеться на виходi суматора SUM_RES, в який з Block 1 надходять прямi бiнарнi коди чисел за допомогою бiтiв вхiдного бiтового потоку, а з Block 2 - додатковi коди чисел за допомогою вихщних бтв потоку.
На основi загально! архiтектури обчислювача розроблена архтектура, що реалiзуe дослiджувану функцiю (10), яка мае виг ляд, приведений на рис. 2. Block 1 мютить б№ потоковий конвеерний обчислювач квадратичних полiномiв - квадратор, що реатзуе лiву частину
2
нерiвностi (11), тобто функцiю a^y .
1=0
Компонентами квадратору е суматори SUM1, SUM2, групи лопчних елементiв &1, &2, елемент затримки DE1 i регiстр RG1. Block 2 мютить дшьник чисел, що реатзуе праву частину нерiвностi (11), а саме, m(2yk -1). Дшьник чисел
мютить компоненти: суматор SUM2, групу лопчних елеменпв &3, елемент затримки DE2, регютр RG2. SUM2 е спшьним компонентом в архтектур^ в якому при виконанш кожно! нерiвностi системи (12) генеруеться вихiдний бiт
у.
Рис. 2. Архитектура обчислювача дослiджуваноi функцii
Компоненти архтектури мають бути шщатзо-ваш певними значеннями перед подачею на вхщ обчислювача вхiдного бiтового потоку х, а саме: суматор SUM1 - значенням першого члена ариф-метичного ряду рiзниць 1-го порядку Д0 , RG1 -значенням константи в арифметичному ряду
рiзниць 2-го порядку А2 , RG2 - значенням -2т
, що вщображене в правiй частит системи нерiв-ностей (12). При шщатзацп суматора SUM2 треба врахувати значення шщатзацп з боку квадратора та з боку дшьника чисел, тому SUM2 iнiцiалiзуeться значенням — т + у0.
При подачi на вхiд пристрою б^ового потоку х на виходi SUM2 генеруеться бiтовий потiк у, що е результатом вiдтворення функци (10). 6. Апаратна реалiзацiя дослщжуваного обчислювача
Розроблена апаратна модель обчислювача на ос-новi математично! моделi пристрою (12) та його архтектури (рисунок 2). Вираз функцii (10) перепишемо у виглядi
У = [
а 2Х + äjX + a о m
0,5]
(18)
де а2 = 1, а: = 2, a0 = 5, m = 10 .
В табл. 1 наведено результати обчислення значень функци (18) з похибкою обчислення |S max| = 0,5 i
округленням результату при значеннях вхщного бiтOBOГO потоку довжиною Xmax=10 бiт.
Таблиця 1
X Значення функци Y
x = 1 y _ [12 + 2 4 + 5 + 0,5] _ [1,3] _ 1 10
x = 2 У _ [22 + 2 •2 + 5 + 0,5] _ [ _ 1 10
x = 3 y _ [3 + 2 •3 + 5 + 0, 5] _ [2,5] _ 2 10
x = 4 42 + 2 • 4 + 5 y _ [4 +2 4 + 5 + 0,5] _ [3,4] _ 3 10
x = 5 5 2 + 2 5 + 5 У _ [5 + zo + 5 + 0,5] _ [4,5] _ 4 10
x = 6 y _ [62 + 26 + 5 + 0,5] _ [5,8] _ 5 10
x = 7 7 2 + 2 7 + 5 У _ [' + 5 +0,5] _ [7,3] _ 7 10
x = 8 У _[82 + 2-8 + 5 + 0 ] _[9] _9 10
x = 9 92 + 2^9 + 5 У _ [---+ 0,5] _ [10,9] _ 10
x = 10 y _ [102 + 2-10 + 5 + 0,5] _ [12,5] _ 12 10
Дробово-ращональна функцiя (18) мiстить в чисельнику квадратичний полiном
yi = x2 + 2x + 5 . (19)
Обчислення полшома в пристро! здiйснюеться на основi конвеерних обчислень. Скориставшись
(16), (17), були визначеш значення функци У;,
що е арифметичним рядом 2-го порядку при шдстановщ значень х = 0, 1, 2, 3, ..., 10 та значення арифметичних рядiв рiзниць 1-го та 2-го порядюв вiдповiдно. Отримаш послiдовностi значень арифметичного ряду 2-го порядку та арифметичних рядiв рiзниць 1-го та 2-го порядкiв мають вигляд
у : 5, 8, 13, 20, 29, 40, 53, 68, 85, 104;
А, : 3, 5, 7, 9, 11, 13, 15, 17, 19;
Д : 2, 2, 2, 2, 2, 2, 2, 2.
Компоненти архтектури дослщжуваного обчислювача шщатзуються значеннями: SUM1=3, SUM2= -5, RG1= 2, RG2= -20. В табл. 2 наведено обчислювальний процес в компонентах пристрою при подачi на його вхщ б™-вого потоку довжиною 10 бiтiв (хтах=10). Результата обчислення функци (див. табл. 1) i поява бтв переповнення у на виходi пристрою ствпа-дають. В обчисленнях враховано перенесення чисел з SUM1 в SUM2 зi зсувом на 1 розряд в бш старших розрядiв.
Таблиця 2
reset -clock -
X SUM_2 Y SUM_1
1 -5 + 6 = 1 1 - 20 = -19 1 3+2=5
2 -19 + 10 = -9 5+2 = 7
3 -9 + 14 = 5 5 - 20 = -15 1 7+2 = 9
4 -15 + 18 = 3 3 - 20 = -17 1 9+2=11
5 -17 + 22 = 5 5 - 20 = -15 1 11+2=13
6 -15 + 26 = 11 11 - 20 = -9 1 13+2 =15
7 -9 + 30 = 21 21 - 20 = 1 1 - 20 = -19 1 1 15+2=17
8 -19 + 34 = 15 15 - 20 = -5 1 17+2=19
9 -5 + 38 = 33 33 - 20 = 13 13 - 20 = -7 1 1 19+2=21
10 -7 +42 = 35 35 - 20 = 15 15 - 20 = -5 1 1 21+2=23
При виконанш апаратно! реалiзацi! була розроб-лена блок-схема дослщжуваного пристрою. При-стрiй мiстить три блоки: детектор вхщного б^у. блок б№потокового обчислювача та блок вихщ-ного буфера (рис. 3).
Детектор вхщного 6iiy Б^-потоковий обчислювач Вишдний буфер
Рис. 3. Структурно-блокова схема пристрою
Детектор вхщного бiту призначений для детекту-вання бiтiв вхiдно! послщовносп х i на виход1 встановлюе вщповщний сигнал impulse=1. Цей сигнал буде отримано арифметичним блоком об-числювача. Блок обчислювача мютить «АргохтаШг», що вщтворюе дробово-ращо-нальну функцiю. Блок вихщного буфера призначений для формування вихщно! бiтово! послщов-ност у.
На основi математично! моделi та архiтектури пристрою розроблена змютовна граф-схема алгоритму (ГСА), що описуе принцип його роботи (рис. 4).
Рис. 4. Граф-схема алгоритму роботи пристрою
1. При поданш сигналу скидання (сигнал reset=1) репстри пристрою встановлюються в таю значення: SUM1=3, SUM2=-5, RG1=2, RG2=-20.
2. При надходженш чергового бiту на вид пристрою значення репстра SUM2 збiльшуеться на подвоене значення репстра SUM1, а значення регiстра SUM1 збiльшуеться на значення RG1.
3.Якщо значення регiстра SUM2 невiд'емне, то на виходi SUM2 генеруеться вихвдний бiт, при цьому вiд значення репстра SUM2 вiднiмаеться значення репстра RG2. Пункт 3 повторюеться до тих шр, поки значення репстра SUM2 невiд'емне.
Y
X
В б№потоковому обчислювачi арифметичний блок представлено композищею операцiйного i керуючого автомата. Керуючий автомат описуеться графом переходiв, що був отриманий в результат синтезу ГСА для автомата моделi Мура. Граф переходiв мае три стани: a0, a1, a2 (рис. 5).
За сигналом reset =1 автомат переходить в початковий стан a0 i знаходиться в цьому стащ поки не з'явиться сигнал impulse з вхщного буфера. З приходом сигналу impulse автомат переходить в стан a1. В сташ a1 автомат додае до суми SUM2 подвоене значення вмюту SUM1. тобто зi зсувом на 1 розряд в бш старших розрядiв, а значення регiстра SUM1 збшьшуеться на значення регiстра RG1, а саме на 2. Якщо репстр SUM2 набуде невiд'емного значення, буде згенерований б^ переповнення i автомат перейде у стан а2, шакше вiн перейде в початковий стан а0.
Рис. 5. Граф переходiв керуючого автомата арифметичного блоку
В сташ а2 вiд значення репстра SUM2 вiднiмаeться значення регiстра RG2, оскiльки значення регiстра RG2 переноситься в репстр SUM2 в додатковому код^ а саме, -20. В сташ а2 автомат видае сигнал вихщному буфера для формування б^у на виходi обчислювача. Як ефективне середовище моделювання та верифшаци проекта на платформi FPGA обраний програмний пакет Active-HDL, що дозволяе автоматизувати процес введення проекту в САПР. Апаратна модель пристрою розроблена на мов1 VHDL з використанням автоматно! моделi опису. На рис. 6 наведено фрагмент коду програми, що описуе роботу операцшного автомата i реалiзуе паралельно-послiдовнi обчислення в
арифметичному блоцi пристрою.
process (clock i, reset i)
begin
if (reset i = '1') then
sum <= CONV STD LOGIC VECTOR(c - m, width);
counter <= CONV STD LOGIC VECTOR(a+b,
width);
else
if (falling edge(clock i)) then
if (sum plus ai = '1') then
sum <= sum + counter + counter;
counter <= counter + 2*a;
else
if (sum minus bi = '1' ) then
sum <= sum - 2*m;
end if;
end if;
end if;
end if;
end process;
Рис. 6. Фрагмент коду роботи операцшного автомату
На рис. 7 представлена waveform з результатами моделювання поведшково! моделi бгт-потокового обчислювача дослщжувано! функци (10). На waveform продемонстровано, що результати тестування моделi збтаються з результатами розрахунюв обчислювального процесу в компонентах пристрою. Результати тестування шдтверджують правильнiсть роботи
дослщжуваного обчислювача. Для синтезу обчислювача використана платформа Xilinx SPARTAN 3E сери XC3S100E, в якш було задiяно приблизно 4% ресyрсiв.
Signal name ► reset I Value 0 , , «■ • '80 - • 00' ' - КО' ■
1
Kiocly 0 мшштшшшшжштш
►»J 0 _l l_l l_l l_l l_l l_l l_l l_
<r lnputbu№r_... и- aprox_ou1 0 0 П П П П 1 1 1
П П П П П 1 1
■oy_0 0 П П' П' П П ПП
9 it sum •15 « Ы « I * M « Ы -17 Ы * Ы -3 Ый
3 я counter 33 3 К 1 У i i J К « i 0 i 1 К I
kcountj 26
»state aO
Рис. 7. Результати моделювання поведшково! модел1 обчислювача дробово-рацюнально! функци
7. Висновки
Запропоновано математичну, структурну та апа-ратну моделi бiт-потокового online обчислювача дробово-ращональних фyнкцiй. Наукова новизна полягае в розробщ математично! моделi апаратного б№потокового online обчислювача дробово-ращональних функцш, що представляе собою систему рiзницевих
HepiBHOCTrä. Зазначено, що дробово-ращональш функцiï в загальному випадку не мають анал^ич-ного запису зворотних ïm функцш, тому визна-чити аналiтичним шляхом визначення вибiрок Xy з вхщного бiтового потоку за методом фор-
мування приростiв висхiдних ступiнчастих функцш не е можливим. Але вони можуть бути отриманi алгоритмiчно шляхом неперервного па-ралельного обчислення значень двох рацюналь-них функцiй вщповщно i формуванням вузлiв апроксимацiï вiдтворноï ступiнчастоï функцiï в моменти ïx рiвностi. Запропонована математична модель обчислювача забезпечуе абсолютну похи-бку обчислення 0,5 одиницi молодшого бiту аргументу.
Архтектуру бiт-потокового обчислювача дро-бово-рацюнальних функцiй реалiзовано синтезом двох паралельно з'еднаних блокiв: блоком бгг-по-токового обчислювача полшома i блоком дшьника чисел, яю поеднанi мiж собою основним об-числювальним вузлом - накопичуючим сумато-ром, що використовуеться як схема порiвняння, яка порiвнюе в паралельних кодах прирости двох одночасно вiдтворюваниx висxiдниx функцш. Прирости одше1' з них подаються в суматор за допомогою бтв видного б^ового потоку в прямому код^ а прирости шшо1' функци - його вихщними бiтами в додатковому кодi. В обчислювачi використано переваги принципу побудови б№потоково1' конвеерно1' арxiтектури, що реалiзуе потоковий метод online обчислень з одночасним паралельно-послщовним виконан-ням функщонального перетворення вxiдного бiтового потоку на основi обчислення приростiв вiдтворюваноï функци.
Запропоновано апаратну модель обчислювача, що сформована на основi кiнцевого автомата моделi Мура. Розроблено граф-схему алгоритму роботи пристрою та граф переxодiв керуючого автомата арифметичного блоку. Використання графово1' моделi дозволяе забезпечити наглядшсть, чiткiсть та несуперечливiсть реалiзацiï алгоритму. Апаратна реалiзацiя виконана шляхом побудови мо-делi на мовi опису апаратури в синтезованiй шдмножиш VHDL. Результати моделювання по-ведшково1' моделi пристрою збiглися з теоретич-ними розрахунками. Апаратна модель пристрою iмплементована в Xilinx Spartan FPGA. Л^ература: 1. Dhafer Al-Makhles, Nitish Patel, Akshya Swain. Bitstream control system: Stability and experimental application // Intern. Conf. on Appl. Electronics. Czech Republic, Pilsen, 2013. P. 1-6. 2. Буренева О.И.,
Жирнова О.А. Бит-потоковое устройство извлечения квадратного корня // Известия ЛЭТИ. 2019. №2. С. 26 - 32. 3. Буренева О.И., Жирнова О.А. Многофункциональный бит-потоковый преобразователь // Известия ЛЭТИ. 2019. №10. С. 46 - 53. 4. Gulin A.I., Safyannikov N.M., Bureneva O.I., Kaydanovich A.Yu. Assurance of Fault-Tolerance in Bit-Stream Computing Converters // Proceedings of 16th IEEE East-West Design & Test Symposium (EWDTS'2018). Kazan, Russia, September 14 -17, 2018. Р. 418 - 421. 5. Shkil A. S., Larchenko L. V., Larchenko B. D.. Bit-Stream Power Function Online Computer // Proceedings of 18 IEEE East-West Design & Test Symposium (EWDTS'2020). Varna, Bulgaria. September 4 - 7. 2020. Р.423-428. 6. Fujisaka H., Kurata R., Sakamoto M. andMorisue M. Bit-stream signal processing and its application to communication system // IEEE Proceedings - Circuits, Devices and Systems, 149 3, 2002. 7. Al-Makhles D., Patel N. and Swain A. Conventiona and hybrid bit-stream in real-time system // Proceedings of the 11th Workshop on Intelligent Solutions in Embedded Systems (WISES), Pilsen, Czech Republic, 2013. 8. Сафьян-ников Н.М., Буренева О.И. Следящий потоковый вычислительный преобразователь для интеллектуальных измерительных систем // Международная конференция по мягким вычислениям. 2019. Т.1. С 263-266. 9. Стахiв М.Ю. Автореф. дисертацп. Цифровi функцю-нальш перетворювачi розгортуючого типу з покраще-ними характеристиками // Видавництво Нацюнального ушверситету Львiвська полггехшка. 2013. 21 с. 10. Ларченко Л.В., Кулак Е.М., Ларченко Б.Д. Функцю-нальне перетворення iмпульсних потошв в апаратних обчислювачах математичних функцш // Радюелек-трошка та шформатика. 2019. №3. С.27-34. 11. Шюль
0.С., Ларченко Б.Д., Ларченко Л.В. Декомпозищя математично! моделi би-потокового обчислювача iр-рацюнальних функцш // Радюелектрошка та шформатика. 2019. №4. С. 34-39.
Транслирований список лггератури:
1. Dhafer Al-Makhles, Nitish Patel, Akshya Swain. Bitstream control system: Stability and experimental application // Intern. Conf. on Appl. Electronics. Czech Republic, Pilsen, 2013. P. 1-6.
2. Bureneva O.I., Zhirnova O.A. Bit-potokovoye ustroystvo izvlecheniya kvadratnogo kornya // Izvestiya LETI, 2019, №2, S. 26 - 32.
3. Bureneva O.I., Zhirnova O.A. Mnogofunktsional'nyy bit-potokovyy preobrazovatel' // Izvestiya LETI, 2019, №10. S. 46 - 53.
4. Gulin A.I., Safyannikov N.M., Bureneva O.I., Kaydanovich A. Yu. Assurance of Fault-Tolerance in Bit-Stream Computing Converters // Proceeding of 16th IEEE East-West Design & Test Symposium (EWDTS'2018). Kazan, Russia, September 14 - 17, 2018. pp. 418 - 421.
5. Shkil A. S., Larchenko L. V., Larchenko B. D.. Bit-Stream Power Function Online Computer / // Proceedings of 18 IEEE East-West Design & Test Symposium (EWDTS'2020). Varna, Bulgaria. September 4 - 7, 2020 -pp.423-428.
6. Fujisaka H., Kurata R., Sakamoto M. and Morisue M.. Bit-stream signal processing and its application to
communication system // IEEE Proceedings - Circuits, Devices and Systems, 149 3, 2002.
7. Al-Makhles D., Patel N. and Swain A. Conventional and hybrid bit-stream in real-time system // Proceedings ofthe 11th Workshop on Intelligent Solutions in Embedded Systems (WISES), Pilsen, Czech Republic, 2013.
8. Safyannikov N.M., Bureneva O.I. Sledyashchiy potokovyy vychislitel'nyy preobrazovatel' dlya intel-lektual'nykh izmeritel'nykh sistem // Mezhdunarodnaya konferentsiya po myagkim vychisleniyam. 2019. T.1. S 263-266.
9. Stakhiv M.YU. Avtoref. dysertatsiyi. Tsyfrovi funktsional'ni peretvoryuvachi roz hortuyuchoho typu z pokrashchenymy kharakterystykamy // Vydavnytstvo Natsional'noho universytetu «L'vivs'ka politekhnika». 2013. 21 S.
10. Larchenko L.V., Kulak E. M., Larchenko B. D.. Functional conversion of pulse streams in hardware mathematical functions computer // Radioelectronics and Informatics, 2019. N. 3. S. 27-34.
11. Shkil' O.S., Larchenko B.D., Larchenko L.V. Dekompozytsiya matematychnoyi modeli bit-potokovoho obchislyuvacha irratsional'nikh funktsiy // Radioel-ektronika ta informatyka. 2019. №4. S. 34-39.
Надшшла до редколегii 17.09.2020 Рецензент: д-р техн. наук, проф. Кривуля Г.Ф. Ларченко Богдан Дмитрович, астрант кафедри АПОТ ХНУРЕ. Науковi iнтереси: проектування циф-рових систем засобами САПР, математичне моделю-вання цифрових систем, FPGA. Адреса: Укра!на, 61166, Харшв, пр. Науки, 14, тел. +380(57) 702-13-26. Шкшь Олександр Сергiйович, канд. техн. наук, доцент кафедри АПОТ ХНУРЕ. Науковi штереси: дiагно-стика цифрових систем, дистанцiйна освгга. Адреса: Укра!на, 61166, Харкiв, пр. Науки, 14, тел. +380(57) 702-13-26.
Ларченко Лша Вiкторiвна, канд. техн. наук, доцент кафедри АПОТ ХНУРЕ. Науковi штереси: проектування спецiалiзованих цифрових систем засобами САПР, математичне моделювання. Адреса: Укра!на, 61166, Харшв, пр. Науки, 14, тел. +380(57) 702-13-26.
Фшшпенко 1нна BiKTopiBHa, канд. техн. наук, доцент кафедри АПОТ ХНУРЕ. Науковi штереси: мжро-контролерш системи. Адреса: Украша, 61166, Харшв, пр. Науки, 14, тел. +380(57) 702-13-26. Ющенко Сеpгiй Baлеpiйoвич, мапстрант кафедри АПОТ ХНУРЕ. Науковi штереси: автоматизоване проектування цифрових систем, мжроконтролерш системи. Адреса: Украша, 61166, Харкiв, пр. Науки, 14, тел. +380(57) 702-13-26.
Larchenko Bogdan Dmitrovich, PhD student, Design Automation Department, Kharkiv National University of Radioelectronics. Scientific interests: design automation of digital systems, FPGA. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-13-26. Shkil Alexander Sergeevich. PhD, Associate Professor, Associate Professor of Design Automation Department, Kharkiv National University of Radioelectronics. Scientific education: diagnostics of digital systems, distance education. Address: Ukraine, 61166, Kharkov, Nauka Avenue, 14, tel. +380 (57) 702-13-26. Larchenko Lina Viktorivna, PhD, Associate Professor, Associate Professor of Design Automation Department, Kharkiv National University of Radioelectronics. Scientific interests: design automation of digital systems, mathematical modeling. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-13-26. Filippenko Inna Viktorivna, PhD, Associate Professor, Associate Professor of Design Automation Department, Kharkiv National University of Radioelectronics. Scientific interests: microcontroller systems. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-13-26. Yushchenko Serhiy Valeriyovich student, Design Automation Department, Kharkiv National University of Radi-oelectronics. Scientific interests: design automation of digital systems, microcontroller systems. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-13-26.