Є ще 14 сторінок.

Дивитися все сторінки або завантажити PDF файл.

Формула / Реферат

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

Текст

Реферат: Пристрій для обробки знань належить до області обчислювальної техніки та може бути використаний при побудові систем, заснованих на знаннях (knowledge-based systems). Пристрій для обробки знань містить: головний комп'ютер; першу та другу оперативну пам'ять; продукційний процесор у складі першого регістра даних, першої робочої пам'яті, першого мультиплексора, двох регістрів-лічильників координат вхідного та вихідного масивів, першого блока вводу-виводу, першого арифметико-логічного блока та першого блока керування; другий блок вводу-виводу та процесор баз знань у складі третього блока вводу-виводу, другого блока керування, другого арифметико-логічного блока, двох мультиплексорів, двох буферних регістрів, другої робочої пам'яті, регістра адреси, другого регістра даних, п'ятьох регістрів керування та дешифратора команд. Перевагами запропонованого пристрою є: знання зберігаються у вигляді множини визначень термінів та відокремлено від алгоритму їхньої обробки; знання, що містяться у базі знань зберігаються у вигляді ієрархічної структури, яка значно підвищує ефективність пошуку рішення за рахунок логічного виводу тільки у необхідній частині бази знань; надається можливість ефективно зберігати та інтерпретувати ітераційні та рекурсивні структури даних, які містять визначення з використанням відношень альтернативи, послідовності та ітерації. UA 109323 C2 (12) UA 109323 C2 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 Даний винахід належить до області обчислювальної техніки та може бути використаний при побудові систем, заснованих на знаннях (knowledge-based systems). Відомий пристрій [SU1455345, 30.01.1989, Устройство для реализации нормальных алгорифмов Маркова // Довгань В.М, Кореневский Н.А., Бойко Ю.Л., Плотников В.В.], який призначено для обробки інформаційних потоків та масивів даних текстового та числового характерів згідно із заданими нормальними алгорифмами та складається із: блока організації підставлення, комутатора, блока пам'яті слова, блока регістрів слова, дешифратора межі слова, блока пошуку входження, блока керування. Блок організації підставлення містить першу та другу групу елементів АБО, перший та другий реверсивний регістри, перший та другий елементи І та цифровий компаратор. Блок регістрів слова містить елемент І, елемент АБО, елемент затримки та групу спеціалізованих регістрів. Блок пошуку входження містить групу елементів АБО-НІ, групу цифрових компараторів, групу елементів АБО та елемент І. Більш швидкодіючим є пристрій [SU1635192, 15.03.91, Устройство для реализации подстановок слов // Довгаль В.М., Корольков О.Ф., Керекеша В.В., Старков Ф.А., Шевелев С.С.], який дозволяє оброблювати дані символьного та числового типів за допомогою нормальних алгорифмів, які складаються виключно із формул підставлення з двобуквеними лівими та правими частинами, при цьому всі ліві частини (антецеденти) формул паралельно порівнюються із двобуквеним початковим словом (ситуацією) за допомогою асоціативного вузла порівняння. Відомий пристрій складається із: блока пам'яті слів, блока пам'яті входжень, блока пам'яті підстановок, вузла зсуву, комутатора, першого вузла контролю оброблюваного слова, вузла порівняння, блока організації підстановки, елемента І, другого вузла контролю оброблюваного слова, елемента АБО-НІ, лічильника та блока керування. Більш досконалим щодо функціональних можливостей є пристрій [RU2039375, 22.06.1992, Устройство для реализации продукций // Довгаль В.М., Старков Ф.А., Керекеша В.В., Шевелев С.С., Леонов Е.И.], який складається із: блока пам'яті слів, вузла порівняння, блока керування, регістра символу ситуації, регістра маркера ситуації, блока тегів, блока ідентифікації активної продукції та регістра зсуву показника зчитування. Блоки сполучені між собою за допомогою окремих шин та працюють під керуванням блока керування. Серед головних особливостей відомого пристрою (RU2039375, 22.06.1992) слід відмітити те, що він допускає обробку продукції нефіксованої довжини. Головним недоліком даного пристрою є те, що продукції у блоці пам'яті слів зберігаються у вигляді символьного масиву нефіксованої довжини. Це призводить до неефективного використання пам'яті слів та до необхідності по-символьної перевірки в процесі співставлення антецедентів. Найближчим до запропонованого є пристрій [US Patent, number 5218669 June 8, 1993, VLSI hardware implemented rule-based expert system apparatus and method (апаратно реалізована система обробки продукційних правил) // Hideaki Kobayashi, Masahiro Shindo], вибраний за прототип. Пристрій являє собою співпроцесор та містить: перший блок керування, перший блок вводу-виводу, першу робочу пам'ять, перший арифметико-логічний блок та першу оперативну пам'ять. Блок вводу-виводу призначений для обміну даними та командами між головним комп'ютером та співпроцесором, реалізованим у формі інтегральної мікросхеми та призначеним для ефективної обробки продукційних правил. Арифметико-логічний блок призначений для виконання команд: порівняння над даними (=, , , =, NOT, AND, OR); переміщення даних; логічного зсуву та переходу. Блок керування керує роботою всіх модулів співпроцесора. Серед недоліків прототипу можна вказати: 1) Необхідність виконання великої кількості обчислень у процесі пошуку активної продукції при співставленні антецедентів. Це пов'язано із тим, що між продукційними правилами, які містяться в оперативній пам'яті у вигляді команд спеціального формату, відсутній ієрархічний зв'язок. 2) Відсутність механізму пояснення логічного виводу. 3) Відсутність ефективного представлення у пам'яті ітераційних та рекурсивних структур. В основу винаходу поставлена задача побудови спеціалізованого пристрою для обробки знань. Всяка задача, поставлена у вигляді імені функції та значення її аргументу, вирішується виводом рішення у процесі інтерпретації бази знань. База знань складається із структури взаємозв'язаних визначень термінів, кожне з яких подане у формі одного з п'яти фреймів: альтернативи, послідовності, ітерації, текстової константи або термінала. Усякий фрейм - послідовність слів фіксованої довжини (наприклад, трибайтових), серед яких розрізняється перше слово, а в кожному зі слів - перший байт і наступні. Фрейми текстової константи й термінала - однослівні, ітерації - двохслівні, альтернативи й послідовності - багатослівні. Фрейми визначень всіх термінів всякої бази знань 1 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 розміщено у пам'яті бази знань у вигляді ієрархічної структури, що усуває проблему множини конфліктних правил. Такий принцип організації бази знань дозволяє ефективно зберігати та інтерпретувати ітераційні й рекурсивні структури визначень. Ще однією важливою відмінністю пристрою для обробки знань є те, що структура процесу інтерпретації зберігається в пам'яті сліду. З метою розширення функціональних можливостей інтерпретації рекурсивних, ітераційних та вкладених структур і формування структури виводу рішення задачі у пристрій, що містить головний комп'ютер, першу оперативну пам'ять, перший блок вводу-виводу, перший блок керування, перший арифметико-логічний блок, першу робочу пам'ять, перший регістр даних та регістр-лічильник координат вхідного масиву, у якому перший вхід-вихід першого блока вводувиводу підключений до системної шини пристрою, другий вхід-вихід першого блока вводувиводу підключений до входів-виходів регістра-лічильника координат вхідного масиву, третій вхід-вихід першого блока вводу-виводу підключений до входів-виходів першого блока керування, а четвертий вхід-вихід першого блока вводу-виводу разом із входами-виходами першого арифметико-логічного блока та першими входами-виходами першого регістра даних, з'єднаного другими входами-виходами з входами-виходами першої робочої пам'яті, об'єднано шиною даних, введено перший мультиплексор, регістр-лічильник координат вихідного масиву, другу оперативну пам'ять, другий та третій блоки вводу-виводу, другий арифметико-логічний блок, другий блок керування, другий та третій мультиплексори, два буферні регістри, другу робочу пам'ять, п'ять регістрів керування, дешифратор команд, регістр адреси та другий регістр даних, при цьому п'ятий вхід-вихід першого блока вводу-виводу підключено до входів-виходів регістра-лічильника координат вихідного масиву, вихід якого разом із виходом регістралічильника координат вхідного масиву через перший мультиплексор підключені до адресних входів першої робочої пам'яті, головний комп'ютер через другий блок вводу-виводу, вхід-вихід першої оперативної пам'яті та перший вхід-вихід третього блока вводу-виводу підключені до системної шини пристрою, перший вихід третього блока вводу-виводу підключено до першого входу другого блока керування, чий перший вихід підключено до першого входу третього блока вводу-виводу, другий вихід якого підключено до другого входу другого блока керування та третього входу другого мультиплексора, чий перший вхід разом із другим входом третього блока вводу-виводу і третім входом другого блока керування підключено до виходу другої оперативної пам'яті, вихід другого мультиплексора підключений до входу першого буферного регістра, вихід якого з'єднаний із першим входом другої робочої пам'яті, чиї виходи підключені до входів третього мультиплексора, другий вхід другого мультиплексора з'єднаний із виходом другого арифметико-логічного блока, чий вхід разом із третім входом третього блока вводувиводу, першими входами регістра адреси та другого регістра даних підключений до виходу другого буферного регістра, чий вхід з'єднаний із виходом третього мультиплексора, а вхід керування другого мультиплексора з'єднаний із першим виходом першого регістра керування, вхід якого з'єднаний із другим виходом другого блока керування, а другий вихід підключений до входу другого регістра керування, чий перший вихід через дешифратор команд підключений до входів керування другої робочої пам'яті, а другий вихід підключений до входу третього регістра керування, чий перший вихід підключений до входу керування третього мультиплексора, а другий вихід підключений до входу четвертого регістра керування, чий перший вихід підключений до входів керування регістра адреси оперативної пам'яті та другого регістра даних, а другий вихід з'єднаний із входом п'ятого регістра керування, чий вихід підключений до входів керування другої оперативної пам'яті, чиї входи адреси і даних з'єднані із виходами регістра адреси та другого регістра даних відповідно. Відмітними ознаками запропонованого пристрою для обробки знань від відомого прототипу є: 1) знання зберігаються у вигляді множини визначень термінів та відокремлено від алгоритму їхньої обробки; 2) алгоритм роботи пристрою апаратно «зашитий» у блок керування; 3) знання у базі знань зберігаються у вигляді ієрархічної структури, що підвищує ефективність пошуку рішення за рахунок логічного виводу лише у необхідній частині бази знань; 4) зберігається структура логічного виводу, яка в подальшому може бути використана для пояснення ходу логічного виводу або породження нової структури даних; 5) надається можливість ефективно зберігати та інтерпретувати ітераційні та рекурсивні структури даних, які містять визначення з використанням відношень альтернативи, послідовності та ітерації. На фіг. 1 наведено структуру пристрою для обробки знань, на фіг. 2 наведено структуру другого блока керування, на фіг. 3 наведено структуру другого арифметико-логічного блока, на фіг. 4 наведено структуру слова бази знань, на фіг. 5 наведено структуру байта ознак слова фрейму, на фіг. 6 наведено структуру шаблонів фреймів, на фіг. 7 наведено структуру запису пам'яті магазина та сліду, на фіг. 8 зображено граф алгоритму роботи системи. У табл. 1 2 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 наведено опис регістрів другої робочої пам'яті, у табл. 2 наведено опис команд другого блока керування, у табл. 3 наведено реалізацію базових процедур алгоритму роботи пристрою. Пристрій для обробки знань (фіг. 1) складається із: головного комп'ютера 1; модуля 2 розширення функціональності; продукційного процесора 8 у складі: першого регістра даних 11, першої робочої пам'яті 12, першого мультиплексора 14, регістра-лічильника координат вхідного масиву 10, регістра-лічильника координат вихідного масиву 15, першого блока вводу-виводу 9, першого арифметико-логічного блока 17 та першого блока керування 18; першої 23 та другої 31 оперативної пам'яті; другого блока вводу-виводу 3 та процесора баз знань 4 у складі: третього блока вводу-виводу 5, другого блока керування 6, другого арифметико-логічного блока 7, другого 16 та третього 25 мультиплексорів, першого 19 та другого 26 буферних регістрів, другої робочої пам'яті 21, регістра 28 адреси, другого регістра 29 даних, п'ятьох 13, 20, 24, 27, 30 регістрів Rупр1 - Rупр5 керування та дешифратора Дш 22 команд. Головний комп'ютер 1 призначений для постановки завдання та зчитування результатів роботи модуля 2 розширення функціональності. Продукційний процесор 8 призначений для виконання термінальних програм на замовлення процесора 4 баз знань. Процесор 4 баз знань призначений для обробки завдання, яке надійшло від головного комп'ютера 1, шляхом інтерпретації баз знань, що зберігаються в другій оперативній пам'яті 31, та використовуючи функціональні можливості продукційного процесора 8 для виконання термінальних програм обробки даних. Три блоки вводу-виводу призначені для організації інтерфейсу між головним комп'ютером 1, модулем 2, продукційним процесором 8 та процесором 4 баз знань. Перший вхід-вихід першого блока вводу-виводу 9 підключений до системної шини пристрою, другий вхід-вихід першого блока вводу-виводу 9 підключений до входів-виходів регістралічильника координат вхідного масиву 10, третій вхід-вихід першого блока вводу-виводу 9 підключений до входів-виходів першого блока керування 18, четвертий вхід-вихід першого блока вводу-виводу 9 разом із входами-виходами першого арифметико-логічного блока 17 та першими входами-виходами першого регістра даних 11, з'єднаного другими входами-виходами з входами-виходами першої робочої пам'яті 12, об'єднано шиною даних продукційного процесора 8, п'ятий вхід-вихід першого блока вводу-виводу 9 підключено до входів-виходів регістра-лічильника координат вихідного масиву 15, вихід якого разом із виходом регістралічильника координат вхідного масиву 10 через перший мультиплексор 14 підключені до адресних входів першої робочої пам'яті 12, головний комп'ютер 1 через другий блок вводувиводу 3, входи-виходи першої оперативної пам'яті 23 та перші входи-виходи третього блока вводу-виводу 5 підключені до системної шини пристрою, перший вихід третього блока вводувиводу 5 підключено до першого входу другого блока керування 6, чий перший вихід підключено до першого входу третього блока вводу-виводу 5, другий вихід якого підключено до другого входу другого блока керування 6 та третього входу другого мультиплексора 16, чий перший вхід разом із другим входом третього блока вводу-виводу 5 і третім входом другого блока керування 6 підключені до виходу другої оперативної пам'яті 31, вихід другого мультиплексора 16 підключений до входу першого буферного регістра 19, вихід якого з'єднаний із першим входом другої робочої пам'яті 21, чиї виходи підключені до входів третього мультиплексора 25, другий вхід другого мультиплексора 16 з'єднаний із виходом другого арифметико-логічного блока 7, чий вхід разом із третім входом третього блока вводу-виводу 5 та першими входами регістра 28 адреси та другого регістра 29 даних підключений до виходу другого буферного регістра 26, чий вхід з'єднаний із виходом третього мультиплексора 25, а вхід керування другого мультиплексора 16 з'єднаний із першим виходом першого регістра керування 13, вхід якого з'єднаний із другим виходом другого блока керування 6, а другий вихід підключений до входу другого регістра керування 20, чий перший вихід через дешифратор команд 22 підключений до входів керування другої робочої пам'яті 21, а другий вихід підключений до входу третього регістра керування 24, чий перший вихід підключений до входу керування третього мультиплексора 25, а другий вихід підключений до входу четвертого регістра керування 27, чий перший вихід підключений до входів керування регістра 28 адреси та другого регістра 29 даних, а другий вихід з'єднаний із входом п'ятого регістра керування 30, чий вихід підключений до входів керування другої оперативної пам'яті 31, чиї входи адреси і даних з'єднані із виходами регістра 28 адреси та другого регістра 29 даних відповідно. Обидва блоки керування 6 та 18 складаються із трьох модулів (фіг. 2): логіки переходів 32, пам'яті станів 33 та вихідної логіки 34. Блоки керування за результатами аналізу кодів на входах формують на виходах команди керування: перший блок керування - вузлами та блоками продукційного процесора 8, а другий блок керування - вузлами та блоками процесора 4 баз 3 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 знань відповідно. Логіка переходів 32 визначає наступний стан відповідного блока керування, що є функцією від поточного стану та кодів на його входах. Команди на виходах блока керування визначаються вихідною логікою 34 та є функцією від поточного стану пам'яті 33 станів. Перший арифметико-логічний блок 17 призначений для виконання системних програм та термінальних команд: порівняння над даними (=, , , =, NOT, AND, OR); переміщення даних; логічного зсуву та переходу. Другий арифметико-логічний блок 7 (фіг. 3) складається із: інкрементора 35, декрементора 36 та інвертора 37, що виконують відповідно арифметичні операції інкремент, декремент та інвертування операнду з виходу другого буферного регістра 26. Виходи інкрементора, декрементора та інвертора є виходами другого арифметико-логічного блока 7. В оперативній пам'яті 31 розрізняються розташовані послідовно: пам'ять бази знань (БЗ), пам'ять сліду (ПС) та пам'ять магазина (ПМ). Для доступу до них застосовуються регістр 28 адреси та регістр 29 даних. База знань представляється у формі інформаційної структури множини визначень, вузлами якої є поняття (термінальні - константи чи іменовані процедури, або не термінальні), а дугами відношення альтернативи, послідовності чи ітерації, що зв'язують поняття (вузли) всякого визначення. Пам'ять бази знань зберігає знання у машинній формі, що складається із множини фреймів, кожний із яких має структуру масиву слів фіксованої довжини (наприклад, 3 байти). Довжина фрейму залежить від типу відношення, яке він описує, та від числа понять у визначальній частині і може складати від одного до деякого скінченного числа слів. На фіг. 4 наведено приклад структури слів із складу фреймів бази знань, кожне з них містить 24-біти: байт ознак інтерпретації та 16-біт інформаційне поле. Інформаційне поле залежно від типу поточного фрейму містить: фізичну адресу, що посилається на інший фрейм; фізичну адресу, що посилається на текстову константу; номер (ім'я) термінальної програми. На фіг. 5 наведено структуру байта ознак, що містить інформацію про тип фрейму та ознаки його інтерпретації. Розглянемо побудову фреймів детальніше (фіг. 6). Кожен фрейм містить голову та елементи, пов'язані одним відношенням: альтернативи, послідовності чи ітерації. Голова та будь-який з елементів займають декілька послідовно розташованих комірок пам'яті, елементи одного фрейму також розташовуються послідовно, причому голова фрейму розташована першою в даній послідовності. Розмір фреймів (число елементів в одному фреймі) альтернативи чи послідовності може бути довільним, але скінченним. Фрейм ітерації складається із двох компонент: голови та посилання на ітерований елемент, яким є фрейм деякого довільного поняття, за виключенням визначеного у формі ітерації. Цим забезпечується зв'язність різних фреймів у єдину багаторазово вкладену структуру, що може містити рекурсивні конструкції. Складність опису (потужність множини понять, структура їхнього взаємозв'язку) може бути довільною та обмежується ресурсами конкретної реалізації (об'ємом оперативної пам'яті, об'ємом зовнішньої пам'яті, розрядністю вузлів та шин). Ті поняття бази знань, які не визначені через поняття бази знань, є термінальними та містять посилання на константи або термінальні програми, що у подальшому виконуються продукційним процесором. Описана таким чином інформаційна структура прикладної області є базою знань прикладної області. Пам'яті сліду та магазина зберігають (у формі фіг. 7) оперативну інформацію процесу інтерпретації бази знань. Пам'ять сліду зберігає структуру виводу рішення задачі, яка може бути використана для пояснення процесу рішення задачі або при породженні наслідку. Пам'ять магазина зберігає проміжні дані процесу виводу рішення. Якщо на деякому етапі процесу інтерпретації вибраний шлях виявився хибним, то відбувається відновлення необхідного вмісту регістрів другої робочої пам'яті зчитуванням даних із пам'яті магазина. Другий арифметико-логічний блок 7, другий та третій мультиплексори 16 та 25, буферні регістри 19 та 26, друга робоча пам'ять 21, п'ять регістрів 13, 20, 24, 27, 30 керування, дешифратор 22 команд, регістр 28 адреси та регістр 29 даних разом складають пристрій для обробки даних процесора 4 баз знань. Регістровий склад другої робочої пам'яті 21 наведено у табл. 1. Регістри (R 01 - R09, RОІ, RСПМ) призначені для збереження значень мінімальної кількості змінних, достатніх для виконання процесу інтерпретації довільної бази знань. Пристрій для обробки даних процесора 4 баз знань побудовано як п'ятиступеневий конвеєр команд та даних, тому за один такт роботи він може виконувати до п'яти команд. Зовнішні вхідні 4 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 дані, що надходять до третього блока 5 вводу-виводу, призначені для ініціалізації або модифікації вмісту регістрів процесора 4 баз знань. Процесор обробки знань 4 виконує команди, набір яких наведено у табл. 2. Роботою кожної стадії конвеєра команд керує команда, яка надходить із відповідного регістра 13, 20, 24, 27, 30 керування R УПРі. При цьому робота конвеєра команд організована таким чином, що команда, яка надійшла на вхід R УПРі, на наступному такті роботи надходить до входу RУПРі+1. Розглянемо роботу пристрою для обробки даних процесора 4 баз знань згідно до кожної із п'яти стадій. I стадія: команда з першого виходу регістра R УПР1 13 надходить на вхід керування другого мультиплексора 16. Залежно від її типу у перший буферний регістр R Б1 19 завантажуються: зовнішні дані із третього блока 5 вводу-виводу, дані із оперативної пам'яті 31, дані із другого арифметико-логічного блока 7 або дані не завантажуються. Другий арифметико-логічний блок 7 здатен виконувати над даними, що містяться у другому буферному регістрі RБ2 26, операції: інкремент, декремент, встановлення у «0», встановлення у «1», інвертування з урахуванням даних, що містяться у регістрі ознак інтерпретації R ОІ другої робочої пам'яті 21. II стадія: команда з першого виходу другого регістра керування RУПР2 20 надходить на вхід дешифратора 22 команд, залежно від цієї команди відбувається або ні запис даних із регістра RБ1 19 в один із регістрів (R01 - R09, RОІ, RСПМ) другої робочої пам'яті 21. III стадія: команда з першого виходу третього регістра керування RУПР3 24 надходить на вхід керування третього мультиплексора 25 та залежно від типу команди ініціює або ні запис у другий буферний регістр RБ2 26 даних із одного з регістрів (R01 - R09, RОІ, RСПМ) Другої робочої пам'яті 21. IV стадія: команда з першого виходу четвертого регістра керування RУПР4 27 залежно від типу команди ініціює або ні запис даних із другого буферного регістра R Б2 26 в один із регістрів 28 або 29. V стадія: команда з виходу п'ятого регістра R УПР5 30 керування залежно від команди ініціює або ні запис чи зчитування даних із оперативної пам'яті 31. Якщо на будь-якій стадії роботи конвеєра даних вхідні дані тимчасово відсутні, то другий блок 6 керування призупиняє роботу конвеєра даних, доки необхідні дані не будуть отримані. Множину команд, наведених у табл. 2, можна розділити на 8 груп: а) завантаження зовнішніх даних у RБ1 (команда № 1); б) завантаження даних із оперативної пам'яті 31 до RБ1 (команда № 2); в) завантаження даних із RБ2 до RБ1 (команда № 3); г) арифметичні (команди № 4-8); д) запису даних із RБ1 до R01 - R15, RОІ, RСПМ (команди № 9-24); е) запису даних із R01 - R09, RСПМ, RОІ, до RБ2 (команди № 25-35); ж) запису даних у регістри 28, 29 адреси і даних (команди № 36-37); з) запису та зчитування даних з другої оперативної пам'яті 31 (команди № 38-39). Розглянемо, яким чином виконуються команди кожної із зазначених груп. Команди групи а): зовнішні дані з системної шини через третій блок 5 вводу-виводу надходять на третій вхід другого мультиплексора 16. Під керуванням команди № 1 ці дані через мультиплексор 16 завантажуються у перший буферний регістр RБ1 19. Команди групи б): дані з виходу оперативної пам'яті 31 надходять на перший вхід другого мультиплексора 16 та через нього записуються у перший буферний регістр R Б1 19 під керуванням команди № 2. Команди групи в): дані з виходу другого буферного регістра R Б2 26 через другий арифметико-логічний блок 7 без їхньої зміни надходять на другий вхід мультиплексора 16 та через нього під керуванням команди № 3 завантажуються у перший буферний регістр RБ1 19. Команди групи г): дані з виходу другого буферного регістру R Б2 26 надходять в другий арифметико-логічний блок 7, який одночасно видає на свій вихід п'ять результатів операцій: R Б2 + 1, RБ2 - 1, 0, 1, RБ 2 . Залежно від типу команди на вході другого мультиплексора 16 через нього в перший буферний регістр R Б1 19 завантажується один із цих результатів: R Б2 + 1, RБ2 - 1, 55 0, 1, RБ 2 . Команди групи д): дані з виходу першого буферного регістру R Б1 19 залежно від коду команди на виході дешифратора 22 записуються в один з регістрів R 01 - R09, RСПМ, RОІ другої робочої пам'яті 21. Команди групи е): дані з виходу одного з регістрів R 01 - R09, RСПМ, RОІ другої робочої пам'яті 21 залежно від коду команди на вході третього мультиплексора 25 через нього записуються у другий буферний регістр RБ2 26. 5 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 Команди групи ж): дані з виходу другого буферного регістру R Б2 26 залежно від коду команди на виході четвертого регістра керування RУПР4 27 записуються в один із регістрів 28 адреси чи 29 даних. Команди групи з): залежно від коду команди на виході п'ятого регістра керування R УПР5 30 відбувається запис даних у оперативну пам'ять 31 із регістра 29 даних за адресою, що міститься у регістрі 28, або зчитування даних із оперативної пам'яті 31 за адресою, яка міститься у регістрі 28 адреси. На фіг. 8 у формі орієнтованого циклічного графа наведено алгоритм роботи пристрою для обробки знань. При виконанні цього алгоритму пристрій виконує набір процедур, зміст яких визначено у табл. 3. У табл. 3 як змінні R x та Ry можуть бути застосовані регістри R 01 - R09, RОІ, RПМ. Пристрій працює наступним чином, безперервно виконуючи алгоритм фіг. 8 від початкової команди «старт» аж до зупинки тактового сигналу. В опису алгоритму використано наступні позначення: ПБЗ - процесор бази знань, ПР - продукційний процесор, БЗ - база знань, ПМ пам'ять магазина, ПС - пам'ять сліду, INP - пам'ять вхідного масиву, OUT - пам'ять вихідного масиву, ПП - пам'ять програм. 1. Початкова установка: - Завантаження БЗ; - Завантаження бібліотек термінальних програм в ПП ПР або формування (конфігурування) структури ПР; - Завантаження даних (аргументу обчислювальної функції) в масиви INP і OUT першої робочої пам'яті 12 даних ПР 8; - Установка регістрів у початковий стан. - Перехід в стан 2. 2. Прийом завдання процесором ПБЗ: - Якщо отримано завдання, то: - прийом від ПР адрес даних в R6, R7 та ознак інтерпретації (режиму інтерпретації в R10, R11, значення інверсії  2 в R13 та в R15:=X); - R1 := адреса БЗ; - запис значень регістрів [R6], [R7] в ПМ; - запис ознак інтерпретації (R14 - тип фрейму=00, режим інтерпретації –R10=0/1, R11=0/1, R12 Інв_1=Х, R13 - Інв_2=0/1, R15=X) в ПМ; - перехід в стан 3. - Якщо отримано значення істинності, то зберегти його в R9 та перейти в стан 21; - Інакше, очікування завдання поверненням до пункту 2. 3. Аналіз завдання і режиму його інтерпретації (R14 + R10 + R11) процесором ПБЗ: - R2 := [R1] (вміст R1 записати в R2); - R3 := [R1] (вміст R1 записати в R3); - Читання першого слова фрейму, R10:= [поле ОС], R14:= [поле «тип фрейму»], R12:= [поле  1]. - Аналіз R14, R10 та R11: Якщо R14=(00)&(R10=0/l)&(R11=0/1), то переходимо до п. 4 (термінали), Якщо (R14=01/10)&R10=0&R11=0, то перехід до п. 5 (розпізнавання альтернативи), Якщо R14=01&R10=0&R11=1, то перехід до п. 6 (породження альтернативи), Якщо R14=01&R10=1&R11=0, то перехід до п. 8 (розпізнавання альтернативи із слідом), Якщо R14=01&R10=1&R11=1, то перехід до п. 9 (породження альтернативи по сліду), Якщо R14=10&R10=0&R11=1, то перехід до п. 10 (породження послідовності), Якщо R14=10&R10=1&R11=1, то перехід до п. 12 (породження послідовності по сліду), Якщо R14=10&R10=1&R11=0, то перехід до п. 13 (розпізнавання послідовності із слідом), Якщо R14=11&R10=0&R11=0, то перехід до п. 15 (розпізнавання ітерації), Якщо R14=11&R10=0&R11=1, то перехід до п. 17 (породження ітерації), Якщо R14=11&R10=1&R11=0, то перехід до п. 18 (розпізнавання ітерації із слідом), Якщо R14=11&R10=1&R11=1, то перехід до п. 20 (породження ітерації по сліду). 4. Передача термінального завдання процесору ПР: - R1:= [перший та другий байти першого слова фрейму]; - Запис R6, R7 та ознак інтерпретації (тип фрейму - термінал; поточний режим інтерпретації R10, R11; інверсія із завдання -  1) в ПМ; - Передача R1, R6, R7 та ознак інтерпретації процесору ПР; - Перехід в стан 2. 5. Розпізнавання альтернативи: 6 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 - R2:=[R2] + 1; - R3:=[R2]; - Читання другого слова фрейму. R 13:= [поле  2], R15:= [поле ОЕ], R10’:= [значення (0/1) ознаки розпізнавання із слідом] або R11’:= [значення (0/1) ознаки породження], R1:= [перший та другий байти другого слова фрейму]. - Запис значень регістрів [R6], [R7], [R2] в ПМ. Запис ознак інтерпретації (R 14 - тип фрейму альтернативи та R12 - Інв_1 з першого слова фрейму; R 13 - Інв_2, R15 - ОЕ з другого слова фрейму та поточний режим інтерпретації - R10=0, R11=0) в ПМ; - R10:= R10’; R11:= R11’; - Перехід в стан 3. 6. Породження альтернативи: - R10:=R10’; - Аналіз R10 (біта «ознака сліду», взятого з першого слова фрейму): якщо 0, то перехід в стан 21, інакше - в 7. 7. Встати на слід: - RC4:= [перший та другий байти першого слова фрейму]; - RC8:= [ПС за адресою RC4]; - R3:= [R2] + [RC8]; - Читання вибраного слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], R1:= [перший та другий байти вибраного слова фрейму]. - Запис [R6], [R7] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму альтернативи та R12 Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з вибраного слова фрейму та поточний режим інтерпретації - R10=0/1, R11=1) в ПМ; - Перехід в стан 3. 8. Розпізнавання альтернативи із слідом: - RC8:=1; - RC4:=[R5] + 1; - Запис [RC8] в ПС за адресою [RC4]; - R3:=[R2] + [RC8]; - Читання другого слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], - R1:= [перший та другий байти вибраного слова фрейму]. - Запис [R6], [R7], [R5], [R2] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму альтернативи та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з вибраного слова фрейму та поточний режим інтерпретації - R10=1, R11=0) в ПМ; - R5:=[RC4]; - Перехід в стан 3. 9. Породження альтернативи по сліду: - RC4:=[RC4] + 1; - RC8:= [ПС] за адресою [RC4]; - R3:=[R2] + [RC8]; - Читання вибраного слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], - R1:= [перший та другий байти вибраного слова фрейму]. - Запис [R6], [R7] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму альтернативи та R12 Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з вибраного слова фрейму та поточний режим інтерпретації - R10=1, R11=1) в ПМ; - Перехід в стан 3. 10. Породження послідовності: - R10:= R10’; - Аналіз R10 (біта «ознака сліду», взятого з першого слова фрейму): якщо 1, то переходимо в стан 11, інакше - в 12. 11. Встати на слід: - RC4:= [перший та другий байти першого слова фрейму]; - Перехід в стан 12. 12. Породження послідовності по сліду або без сліду: - R2:=[R2] + 1; - R3:=[R2]; - Читання другого слова фрейму. R11:= [поле  2], R15:= [поле ОЕ], R1:= [перший та другий байти другого слова фрейму]. 7 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 - Запис значень регістрів [R6], [R7], [R2] в ПМ. Запис ознак інтерпретації (R 14 - тип фрейму послідовності та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з другого слова фрейму та поточний режим інтерпретації - R10=0/1, R11=1) в ПМ; - Перехід в стан 3. 13. Розпізнавання послідовності із слідом: - RC8:=1; - RC4:=[R5]; - R3:=[R2] + [RC8]; - Читання другого слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], R1:= [перший та другий байти другого слова фрейму]. - Запис [R6], [R7], [R5], [R2], [RC8] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму послідовності та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з другого слова фрейму та поточний режим інтерпретації - R10=0/1, R11=1) в ПМ; - Перехід в стан 3. 14. Завершити породження ітерації по сліду: - RC8:=[RC8]-1; - R3:=[R2] + 1; - Читання другого слова фрейму. R13:= [поле  2], R1:= [перший та другий байти другого слова фрейму]. - Запис [RC8], [R2] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму ітерації та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2 з другого слова фрейму та поточний режим інтерпретації R10=0/1, R11=1) в ПМ; - Перехід в стан 3. 15. Розпізнавання ітерації: - R3:=[R2] + 1; - Читання другого слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], R10’:= [значення (0/1) ознаки розпізнавання із слідом] або R11’:= [значення (0/1) ознаки породження], R1:= [перший та другий байти другого слова фрейму]. - Запис значень регістру [R2] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму ітерації та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з другого слова фрейму та поточний режим інтерпретації - R10=0, R11=0) в ПМ; - R10:= R10’; R11:= R11’; - Перехід в стан 3. 16. Встати на слід: - RC4:= [другий та третій байти першого слова фрейму]; - RC8:= [ПС] по адресу RC4; - Якщо лічильник [RC8] ≠ 0, то перехід в стан 14, інакше - в стан 19. 17. Породження ітерації: - R10:= R10’: - Аналіз R10 (біта «ознака сліду», взятого з першого слова фрейму): якщо 1, то переходимо в стан 16, інакше - в 19. 18. Розпізнавання ітерації із слідом: - RC4:=[R5] + 1; - RC8:= 0; - Запис [RC8] в ПС по адресу RC4; - R3:=[R2] + 1; - Читання другого слова фрейму. R13:= [поле  2], R1:= [перший та другий байти другого слова фрейму]. - Запис [R5], [R2] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму ітерації та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2 з другого слова фрейму та поточний режим інтерпретації R10=1, R11=0) в ПМ; - R5:=[RC4]; - Перехід в стан 3. 19. Завершити породження ітерації без сліду: - R9:= R12; - Перехід в стан 21. 20. Породження ітерації по сліду: - RC4:=[RC4] + 1; - RC8:= [ПС] по адресу RC4; - Якщо [RC8] ≠ 0, то перехід в стан 14, інакше - в стан 19. 8 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 21. Прийом і аналіз прапорів: - Ознаки інтерпретації з магазина R10, R11, R12, R13, R14, R15:= [Верхній запис ПМ]; - R9:=[R9]  [R13]; - Аналіз R14, R9, R10 та R11: Якщо R14=(00)&R9=1&(R10=0/1)&(R11=0/1), то переходимо до п. 22 (прапор хибність на термінал), Якщо R14=(00)&R9=0&(R10=0/1)&(R11=0/1), то переходимо до п. 23 (прапор істина на термінал), Якщо R14=01&R9=0&R10=0&R11=0, то перехід до п. 24 (розпізнавання альтернативи після прапора істина), Якщо R14=01&R9=0&R10=1&R11=0, то перехід до п. 25 (розпізнавання альтернативи із слідом після прапора істина), Якщо R14=01&R9=0&R10=0/1&R11=1, то перехід до п. 27 (породження альтернативи після прапора істина), Якщо R14=01&R9=1&R10=0&R11=0, то перехід до п. 28 (розпізнавання альтернативи після прапора хибність), Якщо R14=01&R9=1&R10=1&R11=0, то перехід до п. 30 (розпізнавання альтернативи із слідом після прапора хибність), Якщо R14=01&R9=1&R10=0/1&R11=1, то перехід до п. 32 (породження альтернативи після прапора хибність), Якщо R14=10&R9=0&R10=0&R11=0, то перехід до п. 34 (розпізнавання послідовності після прапора істина), Якщо R14=10&R9=0&R10=1&R11=0, то перехід до п. 35 (розпізнавання послідовності із слідом після прапора істина), Якщо R14=10&R9=0&R10=0/1&R11=1, то перехід до п. 37 (породження послідовності після прапора істина), Якщо R14=10&R9=1&R10=0&R11=0, то перехід до п. 38 (розпізнавання послідовності після прапора хибність), Якщо R14=10&R9=1&R10=1&R11=0, то перехід до п. 40 (розпізнавання послідовності із слідом після прапора хибність), Якщо R14=10&R9=1&R10=0/1&R11=1, то перехід до п. 41 (породження послідовності після прапора хибність), Якщо R14=11&R9=0&R10=0&R11=0, то перехід до п. 42 (розпізнавання ітерації після прапора істина), = Якщо R14=11&R9=0&R10=1&R11 0, то перехід до п. 43 (розпізнавання ітерації із слідом після прапора істина), Якщо R14=11&R9=0&R10=0/1&R11=1, то перехід до п. 44 (породження ітерації після прапора істина), Якщо R14=11&R9=1&R10=0&R11=0, то перехід до п. 46 (розпізнавання ітерації після прапора хибність), Якщо R14=11&R9=1&R10=1&R11=0, то перехід до п. 47 (розпізнавання ітерації із слідом після прапора хибність), Якщо R14=11&R9=1&R10=0/1&R11=1, то перехід до п. 48 (породження ітерації після прапора хибність). 22. Відновлення покажчиків INP, OUT: - R6:=[R6 із ПМ]; - R7:=[R7 із ПM]; - Перехід в стан 2. 23. Набуття нових значень покажчиків INP, OUT: - Виштовхнути [R6], [R7] із ПМ; - Перехід в стан 2. 24. Розпізнавання альтернативи після прапора істина: - Виштовхнути [R2 з ПМ]; - Виштовхнути [R6 та R7] із ПМ. - R9:=[R9]  [R12]; - Перехід в стан 21. 25. Розпізнавання альтернативи із слідом після прапора істина: - R2:=[R2 із ПM]; - R3:=[R2]; - RC4:= [R5 із ПМ]; 9 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 - ОС першого слова фрейму:= 1; поля  1 та тип фрейму - відновити; - [перший та другий байти першого слова фрейму]:= [RC4]; - Виштовхнути [R6 та R7] із ПМ. - R9:=[R9]  [R12]; - Перехід в стан 21. 26. Вихід з розпізнавання альтернативи: - Виштовхнути [R2 із ПМ]; - R9:=[R9]  [R12]; - Перехід в стан 21. 27. Породження альтернативи по сліду після прапора істина: - Виштовхнути [R6 та R7] із ПМ. - R9:=[R9]  [R12]; - Перехід в стан 21. 28. Розпізнавання альтернативи після прапора хибність: - Відновлення покажчиків INP, OUT: R6:= [R6 з ПМ], R7:= [R7 з ПМ]; - Аналіз значення R15: якщо 1, перехід в стан 26, інакше - в стан 29. 29. Розпізнавання нового варіанта альтернативи: - R2 := [R2 із ПМ] + 1; - R3:=[R2]; - Читання чергового слова фрейму альтернативи. R13:= [поле  2], R15:= [поле ОЕ], R10’:= [значення (0/1) ознаки розпізнавання із слідом] або R11’:= [значення (0/1) ознаки породження], R1:= [перший та другий байти вибраного слова фрейму]. - Запис значень регістрів [R6, [R7], [R2] в ПМ. Запис ознак інтерпретації (R 14 - тип фрейму альтернативи та R12 - Інв_1 з першого слова фрейму - тобто відновлення їхніх значень у магазині; R13 - Інв_2, R15 - ОЕ з чергового слова фрейму та відновити записаний у магазині вхідний режим інтерпретації - R10=0, R11=0) в ПМ; - R10:= R10’; R11:= R11’; - Перехід в стан 3. 30. Розпізнавання альтернативи із слідом після прапора хибність: - Відновлення покажчиків INP, OUT: R6:= [R6 з ПМ], R7:= [R7 з ПМ]; - Аналіз значення R15: якщо 1, перехід в стан 31, інакше - в стан 33. 31. Вихід із розпізнавання альтернативи із слідом: - Виштовхнути [R2 із ПМ]; - R5:=[R5 із ПM]; - R9:=[R9]  [R12]; - Перехід в стан 21. 32. Породження альтернативи по сліду після прапора хибність: - Відновлення покажчиків R6:= [R6 із ПМ], R7:= [R7 із ПМ]; - R9:=[R9]  [R12]; - Перехід в стан 21. 33. Розпізнавання із слідом нового варіанта альтернативи: - RC4:=[R5 із ПM]+1; - RC8:=[RC8 із ПС]+l; - Запис [RC8] в ПС по адресу RC4; - R2:=[R2 із ПM]; - R3:=[R2] + [RC8]; - Читання чергового слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], - R1:= [перший та другий байти вибраного слова фрейму]. - Запис [R6], [R7], [R5], [R2] в ПМ - ця запис відновлюється; - Запис ознак інтерпретації (R14 - тип фрейму альтернативи та R12 - Інв_1 з першого слова фрейму, відновлених з магазина; R13 - Інв_2, R15 - ОЕ з вибраного слова фрейму та поточний режим інтерпретації - R10=1, R11=0) в ПМ; - R5:=[RC4]; - Перехід в стан 3. 34. Розпізнавання послідовності після прапора істина: - Аналіз значення R15: якщо 1, перехід в стан 24, інакше - в стан 29. 35. Розпізнавання послідовності із слідом після прапора істина: - Аналіз значення R15: якщо 1, перехід в стан 25, інакше - в стан 36. 36. Продовжити розпізнавання послідовності із слідом: - RC8:=[RC8 із ПM]+1; 10 UA 109323 C2 5 10 15 20 25 30 35 40 45 50 55 60 - R3:=[R2] + [RC8]; - Читання чергового слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], R1:= [перший та другий байти вибраного слова фрейму]. - Запис [R6], [R7], [R5], [R2], [RC8] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму послідовності та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з другого слова фрейму та поточний режим інтерпретації - R10=0/1, R11=1) в ПМ; - Перехід в стан 3. 37. Породження послідовності після прапора істина: - Аналіз значення R15: якщо 1, перехід в стан 24, інакше - в стан 39. 38. Розпізнавання послідовності після прапора хибність: - Відновлення покажчиків INP, OUT: R6:= [R6 з ПМ], R7:= [R7 з ПМ]; - Перехід в стан 26. 39. Продовжити породження послідовності: - R2:= [R2 із ПМ]+1; - R3:=[R2]; - Читання чергового слова фрейму послідовності. R13:= [поле  2], R15:= [поле ОЕ], R1:= [перший та другий байти другого слова фрейму]. - Запис [R6], [R7], [R2] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму послідовності та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з другого слова фрейму та поточний режим інтерпретації - R10=0/1, R11=1) в ПМ; - Перехід в стан 3. 40. Розпізнавання послідовності із слідом після прапора хибність: - Відновлення покажчиків: R5:= [R5 із ПМ], R6:= [R6 із ПМ], R7:= [R7 із ПМ]; - R10:= R10’; R11:= R11’; - Перехід в стан 26. 41. Породження послідовності після прапора хибність: - Відновлення покажчиків INP, OUT: R6:= [R6 із ПМ], R7:= [R7 із ПМ]; - R10:= R10’; R11:= R11’; - Виштовхнути [R2 із ПМ]; - R9:= [R9]  [R12]; - Перехід в стан 21. 42. Розпізнавання ітерації після прапора істина: - R3:= [R2 із ПM]+1; - Читання другого слова фрейму. R 13:= [поле  2], R15:= [поле ОЕ], R10’:= [значення (0/1) ознаки розпізнавання із слідом] або R11’:= [значення (0/1) ознаки породження], R1:= [перший та другий байти другого слова фрейму]. - Запис значення регістру [R2] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму ітерації та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2, R15 - ОЕ з другого слова фрейму та поточний режим інтерпретації - R10=0, R11=0) в ПМ; - тобто тут просто збільшення лічильника магазина без фактичного запису (запис зберігається) - R10:= R10’; R11:= R11’; - Перехід в стан 3. 43. Розпізнавання ітерації із слідом після прапора істина: - RC4:= [R5 із ПМ]+1; - RC8:= [RC8 із ПС по адресу RC4]+1; - Запис [RC8] в ПС по адресу RC4; - R3:= [R2 із ПМ]+1; - Читання другого слова фрейму. R 13:= [поле  2], R1:= [другий та третій байти другого слова фрейму]. - Запис [R5], [R2] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму ітерації та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2 з другого слова фрейму та поточний режим інтерпретації R10=1, R11:=0) в ПМ; - тобто тут просто збільшення лічильника магазина без фактичного запису (запис зберігається) - Перехід в стан 3. 44. Породження ітерації після прапора істина: -RC8:=[RC8 із ПM]; - Аналіз [RC8]: якщо [RC8] ≠ О, то перехід в стан 45, інакше - в стан 46. 45. Продовжити породження ітерації після прапора істина: - RC8:= [RC8]-1; - R3:= [R2 із ПМ]+1; 11 UA 109323 C2 5 10 15 20 - Читання другого слова фрейму. R13:= [поле  2], R1= [перший та другий байти другого слова фрейму]. - Запис [RC8], [R2] в ПМ. Запис ознак інтерпретації (R14 - тип фрейму ітерації та R12 - Інв_1 з першого слова фрейму; R13 - Інв_2 з другого слова фрейму та поточний режим інтерпретації R10=0/1, R11=1) в ПМ; - Перехід в стан 3. 46. Завершити породження ітерації та розпізнавання ітерації після прапора хибність: - Виштовхнути [R2 із ПМ]; - R9:= [R12]; - Перехід в стан 21. 47. Розпізнавання ітерації із слідом після прапора хибність: - R3:= [R2 із ПM]; - RC4:= [R5 із ПM]; - ОС першого слова фрейму:= 1; поля  1 та тип фрейму - відновити; - [перший та другий байти першого слова фрейму] := [RC4]; - R9:= [R12]; - Перехід в стан 21. 48. Породження ітерації після прапора хибність: - Виштовхнути [R2 із ПМ]; - Виштовхнути [RC8 із ПМ]; - R9:= [R12]; - Перехід в стан 21. Таблиця 1 Регістр, № R01 R02 R03 RC04 R05 R06 R07 RC08 R09 R10 R11 R12 ROI R13 R14 Rl5 RCПМ Опис Регістр імені структури Регістр номера слова фрейму Регістр адреси бази знань Регістр-лічильник координати сліду Регістр вершини сліду Регістр адреси у вхідному масиві Регістр адреси у вихідному масиві Регістр-лічильник ітерації Регістр істинності Регістр ознаки сліду Регістр ознаки породження Регістр Інв_1 Регістр Інв_2 Регістр типу фрейму Регістр ознаки останнього елемента Регістр-лічильник пам'яті магазина 25 12 Розрядність, біт 16 16 16 16 16 16 16 16 16 1 1 1 1 3 1 16 UA 109323 C2 Таблиця 2 № Ім'я команди Код команди ПУ 1 LD DTEXT, RБ1 00000 0000 00000 0001 b 2 LD RAM, RБ1 00000 0000 00000 0010 b 3 LD RБ2, RБ1 00000 0000 00000 0011 b 4 5 6 7 LD RБ2 + 1, RБ1 LD RБ2 - 1, RБ1 LD 0, RБ1 LD 1, RБ1 00000 0000 00000 0100 b 00000 0000 00000 0101 b 00000 0000 00000 0110 b 00000 0000 00000 0111 b 8 LD RБ 2 , RБ1 00000 0000 00000 1000 b 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 LD RБ1, R01 LD RБ1, R02 LD RБ1, R03 LD RБ1, RC04 LD RБ1, R05 LD RБ1 R06 LD RБ1, R07 LD RБ1, RC08 LD RБ1, R09 LD RБ1, R10 LD RБ1, R11 LD RБ1, R12 LD RБ1, R13 LD RБ1, R14 LD RБ1, R15 LD RБ1 RCПМ LD R01, RБ2 LD R02, RБ2 LD R03, RБ2 LD RC04, RБ2 LD R05, RБ2 LD Ro6, RБ2 LD R07, RБ2 LD RC08, RБ2 LD R09, RБ2 LD RОІ, RБ2 LD RCПМ, RБ2 LD RБ2, RRA LD RБ2, RDT 00000 0000 00001 0000 b 00000 0000 00010 0000 b 00000 0000 00011 0000 b 00000 0000 00100 0000 b 00000 0000 00101 0000 b 00000 0000 00110 0000 b 00000 0000 00111 0000 b 00000 0000 01000 0000 b 00000 0000 01001 0000 b 00000 0000 01010 0000 b 00000 0000 01011 0000 b 00000 0000 01100 0000 b 00000 0000 01101 0000 b 00000 0000 01110 0000 b 00000 0000 01111 0000 b 00000 0000 10000 0000 b 00000 0001 00000 0000 b 00000 0010 00000 0000 b 00000 0011 00000 0000 b 00000 0100 00000 0000 b 00000 0101 00000 0000 b 00000 0110 00000 0000 b 00000 0111 00000 0000 b 00000 1000 00000 0000 b 00000 1001 00000 0000 b 00000 1010 00000 0000 b 00000 1011 00000 0000 b 00001 0000 00000 0000 b 00011 0000 00000 0000 b 38 WR RDT, RAM 00100 0000 00000 0000 b 39 RDRAM, RRAM 01000 0000 00000 0000 b 40 REQ INT 10000 0000 00000 0000 b 13 Опис команди Завантаження зовнішніх даних у буферний регістр RБ1 Завантаження даних із оперативної пам'яті 27 у буферний регістр RБ1 Завантаження даних із буферного регістра RБ2 У буферний регістр RБ1 Інкремент RБ2 та завантаження у RБ1 Декремент RБ2 та завантаження у RБ1 Завантажити 0x0 у RБ1 Завантажити 0x1 у RБ1 Інверсія RБ2 із урахуванням ознак інверсії фрейму та запис у RБ1 Завантаження даних із RБ1 у R01 Завантаження даних із RБ1 у R02 Завантаження даних із RБ1 у R03 Завантаження даних із RБ1 у RC04 Завантаження даних із RБ1 у R05 Завантаження даних із RБ1 у R0 Завантаження даних із RБ1 у R07 Завантаження даних із RБ1 у RC08 Завантаження даних із RБ1 у R09 Завантаження даних із RБ1 у R10 Завантаження даних із RБ1 у R11 Завантаження даних із RБ1 у R12 Завантаження даних із RБ1 у R11 Завантаження даних із RБ1 у R14 Завантаження даних із RБ1 у R15 Завантаження даних із RБ1 у RCПМ Завантаження даних із R01 у RБ2 Завантаження даних із R02 у RБ2 Завантаження даних із R03 у RБ2 Завантаження даних із RC04 y RБ2 Завантаження даних із R05 у RБ2 Завантаження даних із R06 у RБ2 Завантаження даних із R07 у RБ2 Завантаження даних із RC08 y RБ2 Завантаження даних із R09 у RБ2 Завантаження даних із ROI у RБ2 Завантаження даних із RCПМ y RБ2 Завантаження даних із RБ2 у RRA 16 Завантаження даних із RБ2 у RDT 17 Завантаження даних із RDT 17 в оперативну пам'ять 5 Зчитування даних із оперативної пам'яті 5 у вихідний буфер Запит на обробку термінала UA 109323 C2 Таблиця 3 № 1 2 3 4 5 6 7 8 9 10 11 12 Реалізація базових процедур LD Rx, RБ2 Вміст Rx записати в Ry LD RБ2, RБ1 LD RБ2, Ry LD Ry, RБ2 LD RБ2, RRA Зчитування слова із оперативної пам'яті 27 по адресу, який RD RAM, DTRAM міститься в Ry, та запис в регістр Rx LD DTRAM, RБ1 LD RБ1, Rx LD Ry, RБ2 LD RБ2, RWA Запис даних, що знаходяться в регістрі R x в оперативну LD Rx, RБ2 пам'ять, по адресу, що знаходиться в регістрі Ry LD RБ2, RDT WR RDT, RAM LD Rx, RБ2 Інкремент регістра Rx LD RБ2 + 1, RБ1 LD RБ1, Rx LD Rx, RБ2 Декремент регістра Rx LD RБ2 - 1, RБ1 LD RБ1, Rx LD 0, RБ1 Запис «0» в регістр Rx LD RБ1, Rx LD 1, RБ1 Запис «1» в регістр Rx LD RБ1 Rx LD Rx, RБ2 Базова процедура Інвертування регістра Rx із урахуванням ознак інтерпретації LD RБ 2 , RB1 LD RБ1, Rx LD DTEXT, RБ1 Завантаження зовнішніх даних у регістр Rx LD RБ1, Rx LD R02, RБ2 Зчитування першого слова фрейму LD RБ2, RRA RD RAM, DTRAM Аналіз Rx LD Rx, RБ2 LD Rx, RБ2 Передача Rx, до ПОП REQ INT ФОРМУЛА ВИНАХОДУ 5 10 15 20 Пристрій для обробки знань, що містить головний комп'ютер, першу оперативну пам'ять, перший блок вводу-виводу, перший блок керування, перший арифметико-логічний блок, першу робочу пам'ять, перший регістр даних та регістр-лічильник координат вхідного масиву, при цьому перший вхід-вихід першого блока вводу-виводу підключений до системної шини пристрою, другий вхід-вихід першого блока вводу-виводу підключений до входів-виходів регістра-лічильника координат вхідного масиву, третій вхід-вихід першого блока вводу-виводу підключений до входів-виходів першого блока керування, а четвертий вхід-вихід першого блока вводу-виводу разом із входами-виходами першого арифметико-логічного блока та першими входами-виходами першого регістра даних, з'єднаного другими входами-виходами з входамивиходами першої робочої пам'яті, об'єднано шиною даних, який відрізняється тим, що введені перший мультиплексор, регістр-лічильник координат вихідного масиву, другу оперативну пам'ять, другий та третій блоки вводу-виводу, другий арифметико-логічний блок, другий блок керування, другий та третій мультиплексори, два буферні регістри, другу робочу пам'ять, п'ять регістрів керування, дешифратор команд, регістр адреси та другий регістр даних, при цьому п'ятий вхід-вихід першого блока вводу-виводу підключено до входів-виходів регістра-лічильника 14 UA 109323 C2 5 10 15 20 25 координат вихідного масиву, вихід якого разом із виходом регістра-лічильника координат вхідного масиву через перший мультиплексор підключені до адресних входів першої робочої пам'яті, головний комп'ютер через другий блок вводу-виводу, вхід-вихід першої оперативної пам'яті та перший вхід-вихід третього блока вводу-виводу підключені до системної шини пристрою, перший вихід третього блока вводу-виводу підключено до першого входу другого блока керування, чий перший вихід підключено до першого входу третього блока вводу-виводу, другий вихід якого підключено до другого входу другого блока керування та третього входу другого мультиплексора, чий перший вхід разом із другим входом третього блока вводу-виводу і третім входом другого блока керування підключено до виходу другої оперативної пам'яті, вихід другого мультиплексора підключений до входу першого буферного регістра, вихід якого з'єднаний із першим входом другої робочої пам'яті, чиї виходи підключені до входів третього мультиплексора, другий вхід другого мультиплексора з'єднаний із виходом другого арифметикологічного блока, чий вхід разом із третім входом третього блока вводу-виводу, першими входами регістра адреси та другого регістра даних підключений до виходу другого буферного регістра, чий вхід з'єднаний із виходом третього мультиплексора, а вхід керування другого мультиплексора з'єднаний із першим виходом першого регістра керування, вхід якого з'єднаний із другим виходом другого блока керування, а другий вихід підключений до входу другого регістра керування, чий перший вихід через дешифратор команд підключений до входів керування другої робочої пам'яті, а другий вихід підключений до входу третього регістра керування, чий перший вихід підключений до входу керування третього мультиплексора, а другий вихід підключений до входу четвертого регістра керування, чий перший вихід підключений до входів керування регістра адреси оперативної пам'яті та другого регістра даних, а другий вихід з'єднаний із входом п'ятого регістра керування, чий вихід підключений до входів керування другої оперативної пам'яті, чиї входи адреси і даних з'єднані із виходами регістра адреси та другого регістра даних відповідно. 15 UA 109323 C2 16 UA 109323 C2 17 UA 109323 C2 18 UA 109323 C2 19 UA 109323 C2 Комп’ютерна верстка А. Крулевський Державна служба інтелектуальної власності України, вул. Василя Липківського, 45, м. Київ, МСП, 03680, Україна ДП “Український інститут інтелектуальної власності”, вул. Глазунова, 1, м. Київ – 42, 01601 20

Дивитися

Додаткова інформація

МПК / Мітки

МПК: G06F 15/18, G06N 5/02

Мітки: пристрій, обробки, знань

Код посилання

<a href="https://ua.patents.su/22-109323-pristrijj-dlya-obrobki-znan.html" target="_blank" rel="follow" title="База патентів України">Пристрій для обробки знань</a>

Подібні патенти