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

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

Текст

Реферат: Винахід належить до області обчислювальної техніки та може бути використаний при побудові систем, заснованих на знаннях (knowledge-based systems). Процесор обробки знань містить: головний комп'ютер, універсальний процесор, оперативну пам'ять, пам'ять бази знань, пам'ять магазину, пам'ять сліду, два блоки вводу-виводу, блок управління, буферний регістр, блоки імені структури, номера слова фрейму, координати сліду, адреси у вхідному масиві, адреси у вихідному масиві, лічильника ітерації, істинності, ознак інтерпретації, адреси бази знань, даних пам'яті бази знань, лічильника магазину, даних пам'яті магазину, вершини сліду, даних пам'яті сліду. Технічним результатом, що досягається даним винаходом, є підвищення ефективності та спрощення зберігання знань. UA 110379 C2 (12) UA 110379 C2 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 Даний винахід належить до області обчислювальної техніки та може бути використаний при побудові систем, заснованих на знаннях (knowledge-based systems). Відомий пристрій [SU 1455345, 30.01.1989, Устройство для реализации ерехід ів алгорифмов Маркова // Довгань В.Μ, Кореневский Н.А., Бойко Ю.Л., Плотников В.В.], який призначено для обробки інформаційних потоків та масивів даних текстового та числового характерів згідно із заданими нормальними ерехід ів та складається із: блока організації підставлення, комутатора, блока пам’яті слова, блока регістрів слова, дешифратора межі слова, блока пошуку входження, блока керування. Більш швидкодіючим є пристрій [SU 1635192, 15.03.91, Устройство для реализации подстановок слов // Довгаль В.Μ., Корольков О.Ф., Керекеша В.В., Старков Φ.А., Шевелев С.С.], який дозволяє оброблювати дані символьного та числового типів за допомогою нормальних ерехід ів, які складаються виключно із формул підставлення з двобуквеними лівими та правими частинами, при цьому всі ліві частини (антецеденти) формул паралельно порівнюються із двобуквеним початковим словом (ситуацією) за допомогою асоціативного вузла порівняння. Відомий пристрій складається із: блока пам’яті слів, блока пам’яті входжень, блока пам’яті підстановок, вузла зсуву, комутатора, першого вузла контролю оброблюваного слова, вузла порівняння, блока організації підстановки елементів логіки, лічильника та блока керування. Більш досконалим щодо функціональних можливостей є пристрій [RU2039375, 22.06.1992, Устройство для реализации продукций // Довгаль В.Μ, Старков Φ.Α., Керекеша B.R., Шевелев С.С., Леонов Е.И.], який складається із: блока пам’яті слів, вузла порівняння, блока керування, регістра символу ситуації, регістра маркера ситуації, блока тегів, блока ідентифікації активної продукції та регістра зсуву показника зчитування. Блоки сполучені між собою за допомогою окремих шин та працюють під управлінням блока керування. Серед головних особливостей відомого пристрою (RU2039375, 22.06.1992) слід відмітити те, що він допускає обробку продукцій нефіксованої довжини. Головним недоліком даного пристрою є те, що продукції у блоці пам’яті слів зберігаються у вигляді символьного масиву нефіксованої довжини. Це призводить до неефективного використання пам’яті слів та до необхідності по-символьної перевірки в процесі співставлення антецедентів. Найближчим до запропонованого є пристрій [US Patent, number 5218669 June 8, 1993, VLSI hardware implemented rule-based expert system apparatus and method (апаратно реалізована система обробки продукцій них правил) // Hidеaki Kobayashi, Masahiro Shindo], вибраний за прототип. Пристрій являє собою співпроцесор та містить: блок управління, блок вводу-виводу, робочу пам’ять, арифметико-логічний блок та оперативну пам’ять. Блок вводу-виводу призначений для забезпечення обміну даними та командами між системою обробки продукційних правил та головним комп’ютером. Процесор продукційних правил у складі блока управління, арифметико-логічного блока та робочої пам’яті призначений для ефективної обробки продукційних правил та реалізований у формі інтегральної мікросхеми. Арифметико-логічний блок призначений для виконання команд: порівняння над даними (=, , , =, NOT, AND, OR); переміщення даних; логічного зсуву та переходу. Блок управління керує роботою всіх модулів процесора продукційних правил, а також процесом обміну даними між пам’яттю правил та блоком вводу-виводу. Оперативна пам’ять містить набір команд фіксованої довжини. Кожна команда містить такі поля: «тип команди», «прапор» (умова (condition)/дія (action)) та два операнди. Якщо поточна команда у полі «прапор» містить умову, то відбувається порівняння операндів у залежності від коду поля «тип команди». Якщо команда характеризується як дія, то над поточними операндами виконується дія, зазначена у полі «тип команди». Серед недоліків прототипу можна вказати наступні. 1) Необхідність виконання великої кількості обчислень у процесі пошуку активної продукції при співставленні антецедентів. Це пов’язано із тим, що між продукційними правилами, які містяться в оперативній пам’яті у вигляді команд спеціального формату, відсутній ієрархічний зв’язок. 2) Відсутність механізму пояснення логічного виводу. 3) Відсутність ефективного представлення у пам’яті ітераційних та рекурсивних структур. Спільними ознаками прототипу та пропонованої моделі є головний комп’ютер, оперативна пам’ять, блок управління, арифметико-логічний блок, робоча пам’ять та перший блок вводу-виводу, перший вхід-вихід якого підключений до системної шини пристрою, В основу моделі поставлена задача побудови спеціалізованої системи обробки знань. Будьяка задача, поставлена у вигляді імені функції та значення її аргументу, вирішується виводом рішення у процесі інтерпретації бази знань. База знань складається із структури взаємозв’язаних визначень термінів, кожне з яких представляється у формі одного з п’яти фреймів: альтернативи, послідовності, ітерації, 1 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 текстової константи або терміналу. Усякий фрейм – послідовність слів фіксованої довжини (наприклад, трибайтових), серед яких розрізняється перше слово, а в кожному зі слів – перший байт і наступні. Фрейми текстової константи й термінала – однослівні, ітерації – двохслівні, альтернативи й послідовності – багатослівні. Фрейми визначень всіх термінів будь-якої бази знань розміщено у пам’яті бази знань у вигляді ієрархічної структури, що усуває проблему множини конфліктних правил. Такий принцип організації бази знань дозволяє ефективно зберігати та інтерпретувати ітераційні й рекурсивні структури визначень. Ще однією важливою відмінністю системи обробки знань є те, що структура процесу інтерпретації, процесу виводу рішення зберігається спеціальними засобами ведення сліду. З метою розширення функціональних можливостей інтерпретації рекурсивних, ітераційних та вкладених структур і формування структури виводу рішення задачі у прототип, що містить головний комп’ютер, підключений до першого входу-виходу першого блока вводу-виводу, блок управління та оперативну пам’ять, введено універсальний процесор, другий блок вводу-виводу, буферний регістр, блоки імені структури, номера слова фрейму, адреси бази знань, координати сліду, вершини сліду, адреси у вхідному масиві, адреси у вихідному масиві, лічильника ітерації, істинності, лічильника магазину та ознак інтерпретації, пам’ять бази знань, пам’ять магазину, пам’ять сліду, блок даних пам’яті бази знань, блок даних пам’яті магазину, блок даних пам’яті сліду, при цьому другий вхід-вихід першого блока вводу-виводу, перший вхід-вихід другого блока вводу-виводу, універсальний процесор і оперативна пам’ять підключені до системної шини пристрою, перший вихід другого блока вводу-виводу підключено до першого входу блока управління, перший вихід якого підключено до першого входу другого блока вводу-виводу, другий вихід блока управління підключено до перших входів блоків імені структури, номера слова фрейму, координати сліду, адреси у вхідному масиві, адреси у вихідному масиві, лічильника ітерації, істинності та ознак інтерпретації, третій вихід блока управління підключено до перших входів блоків адреси бази знань, даних пам’яті бази знань, лічильника магазину, даних пам’яті магазину, вершини сліду та даних пам’яті сліду, другий вихід другого блока вводувиводу підключено до других входів блоків імені структури, номера слова фрейму, адреси бази знань, координати сліду, вершини сліду, адреси у вхідному масиві, адреси у вихідному масиві, лічильника ітерації, істинності, лічильника магазину, ознак інтерпретації, даних пам’яті бази знань, даних пам’яті магазину та даних пам’яті сліду, вихід пам’яті бази знань підключено до третіх входів блока управління, другого блока вводу-виводу, блоків імені структури, номера слова фрейму та ознак інтерпретації, вихід нам’яті магазину підключено до четвертого входу блока імені структури, до четвертого входу блока номера слова фрейму, до третіх входів блоків координат сліду, адреси у вхідному масиві та адреси у вихідному масиві, вихід пам’яті сліду підключено до п’ятого входу блока номера слова фрейму та до третього входу блока лічильника ітерації, вихід блока імені структури підключено до шостого входу буферного регістра, до третього входу блока адреси бази знань, до шостого входу блока номера слова фрейму, до третього входу блока даних пам’яті бази знань, до шостого входу блока даних нам’яті магазину та до третього входу блока даних пам’яті сліду, вихід блока номера слова фрейму підключено до четвертого входу блока адреси бази знань, вихід блока координати сліду підключено до другого входу блока даних пам’яті магазину та до четвертого входу блока вершини сліду, вихід блока адреси у вхідному масиві підключено до четвертого входу блока даних пам’яті магазину та до п’ятого входу буферного регістра, вихід блока адреси у вихідному масиві підключено до п’ятого входу блока даних пам’яті магазину та до четвертого входу буферного регістра, вихід блока лічильника ітерації підключено до другого входу буферного регістра, до сьомого входу блока даних пам’яті магазину та до четвертого входу блока даних пам’яті сліду, вихід блока істинності підключено до першого входу буферного регістра, вихід блока ознак інтерпретації підключено до третього входу блока істинності, до третього входу буферного регістра та до восьмого входу блока даних пам’яті магазину, четвертий вихід блока управління підключено до входів управління пам’яті бази знань, магазину та сліду, адресні входи яких з’єднані із виходами блока адреси бази знань, лічильника магазину та блока вершини сліду відповідно, вихід блока даних пам’яті бази знань підключено до входу даних пам’яті бази знань, вихід блока лічильник магазину підключено до четвертого входу блока даних пам’яті бази знань, вихід блока даних пам’яті магазину підключено до входу даних пам’яті магазину, вихід блока вершини сліду підключено до четвертого входу блока координати сліду, вихід блока даних пам’яті сліду підключено до входу даних пам’яті сліду, вихід буферного регістра підключено до других входів другого блока вводу-виводу та блока управління. Відмітними ознаками запропонованої системи обробки знань від відомого прототипу є: 1) модуль розширення функціональності системи реалізовано на базі програмованої логічної інтегральної схеми; 2) знання зберігаються у вигляді множини визначень термінів та 2 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 відокремлено від алгоритму їх обробки; 3) алгоритм роботи пристрою обробки знань за допомогою системи автоматизованого проектування оптимізовано у відповідності з встановленими обмеженнями та апаратно «зашитий» у автомат управління по типу Мура; 4) знання, що містяться у базі знань зберігаються у вигляді ієрархічної структури, яка значно підвищує ефективність пошуку рішення за рахунок логічного виводу тільки у необхідній частині бази знань; 5) зберігається структура логічного виводу, яка в подальшому може бути використана для пояснення ходу логічного виводу або породження нової структури даних; 6) надається можливість ефективно зберігати та інтерпретувати ітераційні та рекурсивні структури даних, які містять визначення з використанням відношень кон’юнкції, диз’юнкції та інверсії. На фіг. 1 наведено структуру процесора обробки знань; на фіг. 2 наведено структуру блока управління; на фіг. 3. наведено структуру буферного регістра RБ 9, блоків імені структури Б01 10, адреси бази знань Б03 18, даних пам’яті бази знань БDT_БЗ 19, адреси у вхідному масиві Б06 13, адреси у вихідному масиві Б07 14, лічильника магазину БЛМ 20, даних пам’яті магазину БDT_GM 21, даних пам’яті сліду БDT_ПС 23; на фіг. 4 наведено структуру блоків номера слова фрейму Б 02 11, координати сліду Б04 12, вершини сліду Б05 22, лічильника ітерації Б08 15 та істинності Б09 16; на фіг. 5 наведено структуру блока ознак інтерпретації БОІ 17; на фіг. 6 наведено структуру запису пам’яті магазину та сліду; на фіг. 7 наведено структуру слова бази знань; на фіг. 8 наведено структуру байта ознак слова фрейму; на фіг. 9 наведено структуру шаблонів фреймів; на фіг. 10 наведено граф алгоритму роботи процесора. У ерех. 1 наведено регістровий склад блоків, у ерех. 2 наведено опис команд блока управління, у ерех. 3 наведено реалізацію базових процедур алгоритму роботи процесора. Процесор обробки знань (фіг. 1) складається із: головного комп’ютера 1, модуля розширення функціональності 2, співпроцесора знань 3, першого блока вводу-виводу 4, універсального процесора 5, оперативної пам’яті 6, що включає пам’ять програм, пам’ять термінальних програм, словник термінів, вхідний та вихідний масиви, другого блока вводувиводу 7, блока управління 8, буферного регістра RБ 9, блока імені структури Б01 10, блока номера слова фрейму Б02 11, блока координати сліду В04 12, блока адреси у вхідному масиві Б0613, блока адреси у вихідному масиві Б07 14, блока лічильника ітерації Б08 15, блока істинності Б09 16, блока ознак інтерпретації БОІ 17, блока адреси бази знань Б03 18, блока даних пам’яті бази знань БDT_Б3 19, блока лічильника магазину БЛM 20, блока даних пам’яті магазину БDT_ПМ 21, блока вершини сліду Б05 22, блока даних пам’яті сліду БDT_ПС 23, пам’ять бази знань RAMБЗ 24, пам’ять магазину RAMПМ 25, пам’ять сліду RAMПМ 26. Головний комп’ютер 1 призначений для постановки завдання, зчитування результатів роботи модуля розширення функціональності 2 та конфігурації роботи модуля 2. Універсальний процесор 5 призначений для виконання термінальних програм на замовлення співпроцесора 3. Співпроцесор 3 розширює набір команд універсального процесора 5 та призначений для швидкої апаратної обробки поставленого завдання, що надійшло від головного комп’ютера 1. Головний комп’ютер 1 через перший блок вводу-виводу 4 підключений разом з універсальним процесором 5, оперативною пам’яттю 6 та першими входами-виходами другого блока вводу-виводу 7 до системної шини процесора. Перший вихід другого блока вводу виводу 7 підключено до першого входу блока управління 8, перший вихід якого підключено до першого входу другого блока вводу-виводу 7. Другий вихід блока управління 8 підключено до перших входів блоків імені структури Бої 10, номера слова фрейму Б 02 11, координати сліду Б04 12, адреси у вхідному масиві Б06 13, адреси у вихідному масиві Б07 14, лічильника ітерації B08 15, істинності Б09 16, ознак інтерпретації БOI 17. Третій вихід блока управління 8 підключено до перших входів блоків адреси бази знань Б 03 18, даних пам’яті бази знань БDT_БЗ 19, лічильника магазину БЛМ 20, даних пам’яті магазину БDT_ПМ 21, вершини сліду Б05 22, даних пам’яті сліду БDТ_ПС 23. Другий вихід другого блока вводу-виводу 7 підключено до других входів блоків імені структури Б01 10, номера слова фрейму Б02 11, адреси бази знань Б03 18, координати сліду Б04 12, вершини сліду Б05 22, адреси у вхідному масиві Б06 13, адреси у вихідному масиві Б07 14, лічильника ітерації Б08 15, істинності Б09 16, лічильника магазину БЛМ 20, ознак інтерпретації БОІ 17, даних пам’яті бази знань БDT_БЗ 19, даних пам’яті магазину БDT_ПМ 21, даних пам’яті сліду БDT_ПС 23. Вихід пам’яті бази знань RAMБЗ 24 підключено до третіх входів блока управління 8, другого блока вводу-виводу 7, блоків імені структури Б01 10, номера слова фрейму Б02 11 та ознак інтерпретації БOI 17. Вихід пам’яті магазину RAMПM 25 підключено до четвертого входу блока імені структури Б01 10, до четвертого входу блока номера слова фрейму Б02 11, до третіх входів блоків координат сліду Б04 12, адреси у вхідному масиві Б06 13 та адреси у вихідному масиві Б07 14. Вихід пам’яті сліду RAMПC 26 підключено до П’ЯТОГО входу блока номера слова фрейму Б02 11 та до третього входу блока лічильника ітерації Б08 15. Вихід блока імені структури Б01 10 підключено до шостого входу буферного регістра R Б 9, до третього входу блока адреси 3 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 бази знань Б03 18, до шостого входу блока номера слова фрейму Б02 11, до третього входу блока даних пам’яті бази знань БDT_Б3 19, до шостого входу блока даних пам’яті магазину БDT_ПM 21, до третього входу блока даних пам’яті сліду БDT_ПC 23. Вихід блока номера слова фрейму Б02 11 підключено до четвертого входу блока адреси бази знань Б 03 18. Вихід блока координати сліду Б04 12 підключено до другого входу блока даних пам’яті магазину БDT_ПM 21 та до четвертого входу блока вершини сліду Б05 22. Вихід блока адреси у вхідному масиві Б06 13 підключено до четвертого входу блока даних пам’яті магазину БDT_ПМ 21 та до п’ятого входу буферного регістра RБ 9. Вихід блока адреси у вихідному масиві Б 07 14 підключено до п’ятого входу блока даних пам’яті магазину БDT_ПM 21 та до четвертого входу буферного регістра R Б 9. Вихід блока лічильника ітерації Б08 15 підключено до другого входу буферного регістра R Б 9, до сьомого входу блока даних пам’яті магазину БDT_ПM 21 та до четвертого входу блока даних пам’яті сліду БDT_ПС 23. Вихід блока істинності Б09 16 підключено до першого входу буферного регістра RБ 9. Вихід блока ознак інтерпретації БOI 17 підключено до третього входу блока істинності Б09 16, до третього входу буферного регістра RБ 9 та до восьмого входу блока даних пам’яті магазину БDT_ПM 21. Четвертий вихід блока управління 8 підключено до входів управління пам’яті бази знань RAMБЗ 24, магазину RAMПM 25 та сліду RAMПС 26, адресні входи яких з’єднані із виходами блока адреси бази знань Б03 18, лічильника магазину БЛМ 20 та блока вершини сліду Б05 22 відповідно. Вихід блока даних пам’яті бази знань БDT_БЗ 19 підключено до входу даних пам’яті бази знань RAMБЗ 24. Вихід блока лічильник магазину Б ЛМ 20 підключено до четвертого входу блока даних пам’яті бази знань БDT_БЗ 19. Вихід блока даних пам’яті магазину БDT_ПM 21 підключено до входу даних пам’яті магазину RAMПM 25. Вихід блока вершини сліду Б05 22 підключено до четвертого входу блока координати сліду В04 12, вихід блока даних пам’яті сліду БDT_ПC 23 підключено до входу даних пам’яті сліду RAMПС 26. Вихід буферного регістра RБ 9 підключено до других входів другого блока вводу-виводу 7 та блока управління 8. Детальний опис регістрів блоків, що входять до складу процесора обробки знань 3 наведено у ерех. 1. Операційна частина співпроцесора знань 3 виконує команди, наведені у ерех. 2, множину яких можна розділити на 8 груп: а) завантаження даних із Ri до Ri; б) завантаження константи до Ri; в) інкремент даних у Ri та завис їх у Ri; г) декремент даних у Ri та запис їх у Rj; д) завантаження зовнішніх даних у Ri; е) завантаження даних із пам’яті до Ri; ж) команди для роботи із пам’яттю; з) команди запиту на обробку термінальних програм. Розглянемо принцип роботи пристрою: 1. Ініціалізація процесора обробки знань. Відбувається ззовні за допомогою блока вводувиводу 4. Залежно від команд універсального процесора 5, у регістри співпроцесора знань 3 відбувається завантаження початкових даних. Після цього виконується ініціалізація пам’ятей 24, 25 та 26. 2. Передача управління роботи. Після завершення етапу ініціалізації управління передається співпроцесору 3, який виконує алгоритм згідно з фіг. 10. 3. Обробка поставленого завдання. Залежно від поточного стану блок управління 8 формує на виходах команди, що керують другим блоком вводу-виводу 7, операційною частиною (блоки 9-23) та пам’ятями 24-26 співпроцесора 3. 3.1. Команда з другого виходу блока управління 8 надходить на вхід блоків 10-17. Залежно від типу поточної команди відбувається модифікація даних, що містяться у регістрах цих блоків 10-17 або передача даних із них до блоків (18-23) роботи із пам’ятями 24-26. 3.2. Команда з третього виходу блока управління 8 керує модифікацією даних регістрів блоків 18-23. 3.3. Команда з четвертого виходу блока 8 управління керує завантаженням та зчитування даних пам’ятей 24-26. 3.4. Для обробки термінальних програм співпроцесор 3 через блок вводу-виводу 7 видає завдання універсальному процесору 5. Після завершення виконання термінальної програми універсальний процесор 5 надсилає через блок вводу-виводу 7 відповідну команду завершення опрацювання термінальної програми та результати її виконання. 4. Передача результатів роботи. Після завершення виконання вихідного завдання результати за допомогою універсального процесора 5 передаються до головного комп’ютера 1. Блок вводу-виводу 7 виконує обмін даними та командами між універсальним процесором та 4 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 співпроцесором 3. Оперативні пам’яті 24, 25 та 26 розміщені на кристалі програмованої логічної інтегральної схеми. Головною їхньою функцією є оперативне (при наявності живлення кристалу) збереження знань, використовуваних в процесі роботи пристрою. Блок 8 управління (фіг. 2) складається із трьох модулів: логіка переходів 27, пам’ять станів 28 та вихідна логіка 29. Блок 8 управління за результатами аналізу кодів на першому, другому та третьому входах формує на його виходах команди управління блоком вводу-виводу 7 та операційною частиною співпроцесора 3. Логіка переходів 27 визначає наступний стан блока управління 8, що є функцією від поточного стану пам’яті станів 28 та кодів на входах блока управління 8. Пам’ять станів 28 складається із набору елементів пам’яті та призначена для збереження поточного стану блока 8 управління. Команди на виходах блока управління 8 визначаються вихідною логікою 29 та є функцією від поточного стану пам’яті станів 28. Багато вхідні блоки RБ, Б01, Б03, БDT_БЗ, Б06, Б07, БDT_ПM, БDT_ПС можуть бути виконані у формі структури фіг. 3 у складі відповідних мультиплексора MX і та регістра Rі. Вхід мультиплексора MXі·з’єднаний із n шинами вхідних даних та шиною команд. На входи регістра R i надходять дані з виходу MXi та відповідна команда. Під управлінням відповідної команди відбувається комутація входів мультиплексора і запис даних у регістр R i. Блоки Б02, Б04, Б05, Б08, Б09 можуть бути виконані у формі структури, зображеної на фіг. 4. Вона складається із мультиплексора MXi, арифметико-логічного пристрою, інвертора та відповідного регістра Ri. Інформаційні входи мультиплексора MXi з’єднано із n шинами вхідних даних, інверсії вхідних даних та виходами арифметико-логічного пристрою, а виходи підключено до входів регістра Ri. При надходженні відповідної команди відбувається комутація входів мультиплексора MXi і запис даних у регістр Ri. Блок ознак інтерпретації БOI може бути виконаний у формі структури фіг.5, яка складається із мультиплексора МХi, регістра ознак сліду (R10), регістра ознак породження (R11), регістра Інв_1 (R12), регістра Інв_2 (R13), регістра типу фрейму (R14), регістра ознаки останнього елемента (R15). Входи мультиплексора MXi з’єднані із двома шинами вхідних даних та шиною команд. Входи регістрів Ri(R10-R15) з’єднані із виходами MXi та шиною команд. При надходженні відповідної команди відбувається комутація вхідних даних мультиплексора MX i та їх запис у відповідний регістр Ri. База знань (БЗ) представляється у формі інформаційної структури множини визначень, вузлами якої є поняття (термінальні – константи чи іменовані процедури, або не термінальні), а дугами – відношення альтернативи, послідовності чи ітерації, що зв’язують поняття (вузли) визначальної частини будь-якого визначення. Пам’ять бази знань RAMБЗ 24 зберігає знання у машинній формі, що складається із множини фреймів, кожний із яких має структуру масиву слів фіксованої довжини (наприклад, 3 байти). Довжина фрейму залежить від типу відношення, яке він описує, та від числа понять у визначальній частині і може складати від одного до деякого скінченного числа слів. Пам’яті магазину RAMПМ 25 та пам’ять сліду RAMПC 26 зберігають (у формі фіг. 6) оперативну інформацію процесу інтерпретації бази знань. Пам’ять сліду зберігає структуру виводу рішення задачі, яка може бути використана для пояснення процесу рішення задачі або при породженні наслідку. Пам’ять магазину зберігає проміжні дані процесу виводу рішення. Якщо на деякому етапі процесу інтерпретації вибраний шлях виявився хибним, то відбувається відновлення необхідного вмісту регістрів співпроцесора 3 зчитуванням даних із пам’яті магазину. На фіг. 7 наведено структуру слів бази знань, із яких складаються фрейми. Кожне слово бази знань містить 24-біти: байт ознак інтерпретації та інформаційне поле. Інформаційне поле залежно від типу поточного фрейму містить: фізичну адресу, що посилається на інший фрейм; фізичну адресу, що посилається на текстову константу; номер (ім’я) термінальної програми. На фіг. 8 наведено структуру байта ознак. Дане поле містить інформацію про тип фрейму та ознаки його інтерпретації. Згідно з фіг. 9 кожен фрейм містить голову та елементи, пов’язані одним відношенням: альтернативи, послідовності чи ітерації. Голова та будь-який з елементів займають декілька послідовно розташованих комірок пам’яті, елементи одного фрейму також розташовуються послідовно, причому голова фрейму розташована першою в даній послідовності. Розмір фреймів (число елементів в одному фреймі) альтернативи чи послідовності може бути довільним, але скінченним. Фрейм ітерації складається із двох компонент: голови та посилання на керований елемент, яким є фрейм деякого довільного поняття, за виключенням визначеного у формі ітерації. Цим забезпечується зв’язність різних фреймів у єдину багаторазово вкладену структуру, що може містити рекурсивні конструкції. Складність опису (потужність множини 5 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 понять, структура їхнього взаємозв’язку) може бути довільною та обмежується ресурсами конкретної реалізації (об’ємом оперативної пам’яті, об’ємом зовнішньої пам’яті, розрядністю вузлів та шин). Ті поняття бази знань, які не визначені через поняття бази знань, є термінальними та містять посилання на константи або термінальні програми, що у подальшому виконуються універсальним процесором. Описана таким чином інформаційна структура прикладної області є базою знань прикладної області. На фіг. 10 у формі орієнтованого циклічного графу наведено алгоритм роботи процесора обробки знань. При виконанні цього алгоритму пристрій виконує набір процедур, зміст яких визначено у ерех. 3. У ерех. 3 як змінні Rx та Ry можуть бути застосовані регістри R01-R09, ROI, RЛМ. Пристрій працює наступним чином, безперервно виконуючи алгоритм фіг. 10 від початкової команди «старт» аж до зупинки тактового сигналу. В опису алгоритму використано наступні позначення: ПОЗ – процесор обробки знань, УП – універсальний процесор, БЗ – база знань, ΠΜ – пам’ять магазину, ПС – пам’ять сліду, ΙΝΡ – пам’ять вхідного масиву, OUT – пам’ять вихідного масиву, ПП – пам’ять програм. 1. Початкова установка: - завантаження БЗ; - завантаження бібліотек термінальних програм в ПП УП або формування (конфігурування) структури У11; - завантаження даних (аргументу обчислювальної функції) в масиви INP і OUT пам’яті даних УП; - установка регістрів у початковий стан, зокрема регістр R14:=00; - перехід в стан 2. 2. Прийом завдання процесором ПОЗ: - якщо отримано завдання, то: - прийом від УП адрес даних в R06, R07 та ознак інтерпретації (режиму інтерпретації в R10, R11, значення інверсії  2 в R13 та в R15:=X); - R01:= адреса БЗ; - запис значень регістрів [R06], [R07] в ПМ; - запис ознак інтерпретації (R14 – тип фрейму=00, режим інтерпретації – R10=0/1, R11=0/1, R12 – Інв_1=Х, R13-1нв_2=0/1, R15 =Х) в ПМ; - перехід в стан 3. - Якщо отримано значення істинності, то зберегти його в R09 та перейти в стан 21; - інакше, очікування завдання поверненням до пункту 2. 3. Аналіз завдання і режиму його інтерпретації (R14+R10+R11) процесором ПОЗ: - R02:= [R01] (вміст R01 записати в R02); - R03:= [R01] (вміст R01 записати в R03); - читання першого слова фрейму, R10:= [поле OC], R14:= [поле «тип фрейму»], R12:= [поле  1]; - аналіз R14, R10 та R11: - якщо R14=(00)&(R10=0/1)&(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. Передача термінального завдання процесору УП: - R01:= [перший та другий байти першого слова фрейму]; - запис R06, R07 та ознак інтерпретації (тип фрейму – термінал; поточний режим інтерпретації – R10, R11; інверсія із завдання -  1) в ПМ; - передача R01, R06, R07 та ознак інтерпретації процесору УП; - перехід в стан 2. 5. Розпізнавання альтернативи: 6 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 - R02:=[R02] + 1; - R03:= [R02]; - читання другого слова фрейму, R13:= [поле  2], R15:= [поле ОЕ], R10»:= [значення (0/1) ознаки розпізнавання із слідом] або R11»:=[значення (0/1) ознаки породження], R01:= [перший та другий байти другого слова фрейму]; - запис значень регістрів [R06], [R07], [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму альтернативи та R12 – Інв_1 з першого слова фрейму; R13 – Інв_2, R15-OE з другого слова фрейму та поточний режим інтерпретації – R10=0, R11=0) в ПМ; - R10:= R10·; R11:= R11»; - перехід в стан 3. 6. Породження альтернативи: - R10:= R10»; - аналіз R10 (біту «ознака сліду», взятого з першого слова фрейму): якщо 0, то перехід в стан 21, інакше – в 7. 7. Встати на слід: - RC04:= [перший та другий байти першого слова фрейму]; - RC08:= [ПС за адресою RC04]; - R03:= [R02] + [RC08]; - читання вибраного слова фрейму, R13:= [поле] 2], R15:= [поле OE], R01:= [перший та другий байти вибраного слова фрейму]; - запис [R06], [R07] в ПМ; запис ознак інтерпретації (R14 – тип фрейму альтернативи та R12Інв_1 з першого слова фрейму; R13 – Інв_2, R15-OE з вибраного слова фрейму та поточний режим інтерпретації – R10=0/1, R11=1) в ПМ; - перехід в стан 3. 8. Розпізнавання альтернативи із слідом: - RC08:= 1; - RC04:= [R05] + 1; - запис [RC08] в ПС за адресою [RС04]; - R03:= [R02] + [КС08]; - читання другого слова фрейму, R13:= [поле  2], R15:= [поле OE], - R01:= [перший та другий байти вибраного слова фрейму]; - запис [R06], [R07], [R05], [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму альтернативи та R12 – Інв_1 з першого слова фрейму; R13 – Інв_2, R15 – ОE з вибраного слова фрейму та поточний режим інтерпретації – R10=1, R11=0) в ПМ; - R05:= [RC04]; - перехід в стан 3. 9. Породження альтернативи по сліду: - RC04:= [RC04] + 1; - RC08:= [ПС] за адресою [RC04]; - R03:= [R02] + [RC08]; - читання вибраного слова фрейму, R13:= [поле  2], R15:= [поле OE], - R01:= [перший та другий байти вибраного слова фрейму]; - запис [R06], [R07] в ПМ; запис ознак інтерпретації (R14 – тип фрейму альтернативи та R12Інв_1 з першого слова фрейму; R13 – Інв_2, R15 – ОЕ з вибраного слова фрейму та поточний режим інтерпретації – R10=1, R11=1) в ПМ; - перехід в стан 3. 10. Породження послідовності: - R10:= R10S; - аналіз R10 (біту «ознака сліду», взятого з першого слова фрейму): якщо 1, то переходимо в стан 11, інакше – в 12. 11. Встати на слід: - RC04:= [перший та другий байти першого слова фрейму]; - перехід в стан 12. 12. Породження послідовності по сліду або без сліду: - R02:= [R02]+ 1; - R03:= [Ro2]; - читання другого слова фрейму, R13:= [поле  2], R15:= [поле ОЕ], R01:= [перший та другий байти другого слова фрейму]; - запис значень регістрів [R06], [К07], [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму послідовності та R12-Інв_1 з першого слова фрейму; R13 – Інв_2, R15 – ОЕ З другого слова 7 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 фрейму та поточний режим інтерпретації – R10=0/1, R11=1) в ПМ; - перехід в стан 3. 13. Розпізнавання послідовності із слідом: - RC08:= 1; - RC04:= [R05] - R03:= [R02]+ [RC08]; - читання другого слова фрейму, R13:= [поле  2], R15:= [поле OE], R01:= [перший та другий байти другого слова фрейму]; - запис [R06], [R07], [R05], [R02], [RC08] В ПМ; запис ознак інтерпретації (R14 – тип фрейму послідовності та R12-Інв_1 з пертого слова фрейму; R13-IНВ_2, R15 – ОЕ з другого слова фрейму та поточний режим інтерпретації – R10=0/1, R11=1) в ПМ; - перехід в стан 3. 14. Завершити породження ітерації по сліду: - RC08:= [RC08] – 1; - R03:= [R02] + 1; - читання другого слова фрейму, R13:= [поле  2], R01:=[перший та другий байти другого слова фрейму]; - запис [RC08], [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму ітерації та R12 – Інв_1 з першого слова фрейму; R13 – Інв_2 з другого слова фрейму та поточний режим інтерпретації – R10=0/1, R11=1) в ПМ; - перехід в стан 3. 15. Розпізнавання ітерації: - R03:= [R02] +1; = - читання другого слова фрейму, R13:= [поле  2], R15:= [поле ОЕ], R10’: [значення (0/1) ознаки розпізнавання із слідом] або R11»:= [значення (0/1) ознаки породження], R01:= [перший та другий байти другого слова фрейму]; - запис значень регістру [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму ітерації та R12 – Інв_1 з першого слова фрейму; R13 – Інв_2, R15 – ОЕ з другого слова фрейму та поточний режим інтерпретації – R10=0, R11=0) в MM; - R10:= R10»: R11:= R11»; - перехід в стан 3. 16. Встати на слід: - RC04:= [другий та третій байти першого слова фрейму]; - RC08:= [ПС] по адресі RC04; - якщо лічильник [RC08] І  0, то перехід в стан 14, інакше – в стан 19. 17. Породження ітерації: - R10:= R10·; - аналіз R10 (біту «ознака сліду», взятого з першого слова фрейму): якщо 1, то переходимо в стан 16, інакше – в 19. 18. Розпізнавання ітерації із слідом: - RC04:= [R05] + 1; - RC08:= 0; - запис [RC08] В ПС по адресі RC04; - R03:= [R02] + 1; - читання другого слова фрейму, R13:= [поле  2], R01:= [перший та другий байти другого слова фрейму]; - запис [R05], [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму ітерації та R12 – Інв_1 з першого слова фрейму; R13 – Інв_2 з другого слова фрейму та поточний режим інтерпретації – R10=1, R11=0) в ПМ; - R05: = [RC04]; - перехід в стан 3. 19. Завершити породження ітерації без сліду: - R09:= R12; - перехід в стан 21. 20. Породження ітерації по сліду: - RC04:= [RC04] + 1; - RC08:= [ПС] по адресі RC04; - якщо [RC08]  0, то перехід в стан 14, інакше – в стан 19. 21. Прийом і аналіз прапорів: - ознаки інтерпретації з магазину К10, R11, R12, R13, R14, R15:= [верхній запис ПМ]; 8 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 - R09 = [R09]  [R13]; - аналіз R14, R09, R10 та R11: - якщо R14=(00)&R09=1&(R10=0/1)&(R11=0/1), то переходимо до п. 22 (прапор хибність на термінал); - якщо R14=(00)&R09=0&(R10=0/1)&(R11=0/1), то переходимо до п. 23 (прапор істина на термінал); - якщо R14=01&R09=0&R10=0&R11=0, то перехід до п. 24 (розпізнавання альтернативи після прапору істина); - якщо R14=01&R09=0&R10=1&R11=0, то перехід до п. 25 (розпізнавання альтернативи із слідом після прапору істина); - якщо R14=01&R09=0&R10=0/1&R11=1, то перехід до п. 27 (породження альтернативи після прапору істина); - якщо R14=01&R09=1&R10=0&R11=0, то перехід до п. 28 (розпізнавання альтернативи після прапору хибність); - якщо R14=01&R09=1&R10=1&R11=0, то перехід до п. 30 (розпізнавання альтернативи із слідом після прапору хибність); - якщо R14=01&R09=1&R10-0/1&R11=1, то перехід до п. 32 (породження альтернативи після прапору хибність); - якщо R14=10&R09=0&R10=0&R11=0, то перехід до п. 34 (розпізнавання послідовності після прапору істина); - якщо R14=10&R09=0&R10=1&R11=0, то перехід до п. 35 (розпізнавання послідовності із слідом після прапору істина); - якщо R14=10&R09=0&R10=0/1&R11=1, ТО перехід до п. 37 (породження послідовності після прапору істина); - якщо R14=10&R09=1&R10=0&R11=0, то перехід до п. 38 (розпізнавання послідовності після прапору хибність); - якщо R14=10&R09=1&R10=1&R11=0, ТО перехід до п. 40 (розпізнавання послідовності із слідом після прапору хибність); - якщо R14=10&R09=1&R10=0/1&R11=1, то перехід до п. 41 (породження послідовності після прапору хибність); - якщо R14=11&R09=0&R10=0&R11=0, ТО перехід до п. 42 (розпізнавання ітерації після прапору істина); - якщо R14=11&R09=0&.R10=1&R11=0, ТО перехід до п. 43 (розпізнавання ітерації із слідом після прапору істина); - якщо R14=11&R09=0&R10=1&R11=1, ТО перехід до п. 44 (породження ітерації після прапору істина); - якщо R14=11&R09=1&R10=0&.R11=0, ТО перехід до п. 46 (розпізнавання ітерації після прапору хибність); - якщо R14=11&R09=1&R10=1&R11=0, ТО перехід до п. 47 (розпізнавання ітерації із слідом після прапору хибність); - якщо R14=11&R09=1&R10=0/1&R11=1, ТО перехід до п. 48 (породження ітерації після прапору хибність). 22. Відновлення покажчиків INP, OUT: - R06:= [R06 із ПМ]; - R07:= [R06 ІЗ ПМ]; - перехід в стан 2. 23. Набуття нових значень покажчиків TNP, OUT: - виштовхнути [R06], [R07] із ПΜ; - перехід в стан 2. 24. Розпізнавання альтернативи після прапору істина: - виштовхнути [R02 З ПМ]; - виштовхнути [R06 та R07] із ПМ; - R09:= [R09]  [R12]; - перехід в стан 21. 25. Розпізнавання альтернативи із слідом після прапору істина: - R02:=[R02 із ПМ]; - R03:=[R02]; - RC04:= [R05 із ΠΜ]; - ОС першого слова фрейму:= 1; поля  1 та тип фрейму – відновити; - [перший та другий байти першого слова фрейму]:= [RC04]; 9 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 - виштовхнути [R06 та R07] із ПМ; - R09:= [R09]  [R12]; - перехід в стан 21. 26. Вихід з розпізнавання альтернативи: - виштовхнути [R02 ІЗ ПМ]; - R09:=[R09]  [R12]; - перехід в стан 21. 27. Породження альтернативи по сліду після прапору істина: - виштовхнути [R06 та R07] із ПМ; - R09:=[R09]  [R12]; - перехід в стан 21. 28. Розпізнавання альтернативи після прапору хибність: - відновлення покажчиків INP, OUT: R06:= [R06 з ПМ], R07:= [R07 з ПМ]; - аналіз значення R15: якщо 1, перехід в стан 26, інакше – в стан 29. 29. Розпізнавання нового варіанту альтернативи: - R02:= [R02 із ПМ] + 1; - R03:= [R02]; - читання чергового слова фрейму альтернативи, К13:= [поле  2], R15:= [поле ОЕ], R10’:= [значення (0/1) ознаки розпізнавання із слідом] або R11»:= [значення (0/1) ознаки породження], R01:= [перший та другий байти вибраного слова фрейму]; - запис значень регістрів [К06], [R07], [R02] в ПМ; - запис ознак інтерпретації (R14 – тип фрейму альтернативи та R12 – Інв_1 з першого слова фрейму – тобто відновлення їхніх значень у магазині; R13 – Інв_2, R15 – ОЕ з чергового слова фрейму та відновити записаний у магазині вхідний режим інтерпретації – R10=0, R11=0) в ПМ; - R10:= R10» R11:=R11»; - перехід в стан 3. 30. Розпізнавання альтернативи із слідом після прапору хибність: - відновлення покажчиків TNP, OUT: R06:= [R06 З ПМ], R07:= [R07 З ПМ]; - аналіз значення R15: якщо 1, перехід в стан 31, інакше – в стан 33. 31. Вихід із розпізнавання альтернативи із слідом: - виштовхнути [R02 із ПМ]; - R05:=[R15 із ПМ]; - R09:= [R09]  [R12]; - перехід в стан 21. 32. Породження альтернативи по сліду після прапору хибність: - відновлення покажчиків R06:= [R06 із ПМ], R07:= [R07 із ПМ]; - R09:=[R09]  [R12]; - перехід в стан 21. 33. Розпізнавання із слідом нового варіанту альтернативи: - RC04:= [R05 із ПМ] + 1; - RC08:= [RC08 із ПС]+ 1; - запис [RC08] в ПС по адресі RC04; - R02:= [R02 із ПМ]; - R03:= [R02] + [RC08]; - читання чергового слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], - R01:= [перший та другий байти вибраного слова фрейму]; - запис [R06], [R07], [R05], [R02] в ПМ – цей запис відновлюється; - запис ознак інтерпретації (R14 – тип фрейму альтернативи та R12 – Інв_1 з першого слова фрейму, відновлених з магазину; R13 – Інв_2, R15 – ОЕ з вибраного слова фрейму та поточний режим інтерпретації – R10=1, R11=0) в ПМ; - R05:=[RC04]; п- ерехід в стан 3. 34. Розпізнавання послідовності після прапору істина: - аналіз значення R15: якщо 1, перехід в стан 24, інакше – в стан 29. - 35. Розпізнавання послідовності із слідом після прапору істина: - аналіз значення R15: якщо 1, перехід в стан 25, інакше – в стан 36. 36. Продовжити розпізнавання послідовності із слідом: = - RC08: [RC08 із ПМ] + 1; - R03:= [R02] + [RC08]; - читання чергового слова фрейму. R13:= [поле  2], R15:= [поле ОЕ], R01:= [перший та другий 10 UA 110379 C2 5 10 15 20 25 30 35 40 45 50 55 60 байти вибраного слова фрейму]; - запис [R06], [R07], [R05], [R02], [RC08] в ПМ; запис ознак інтерпретації (R14 – тип фрейму послідовності та R12 – Інв_1 з першого слова фрейму; R13 – Інв_2, R15 – ОЕ з другого слова фрейму та поточний режим інтерпретації – R10=0/1, R11=1) в ПМ; - перехід в стан 3. 37. Породження послідовності після прапору істина: - аналіз значення R15: якщо 1, перехід в стан 24, інакше – в стан 39. 38. Розпізнавання послідовності після прапору хибність: - відновлення покажчиків INP, OUT: R06:= [R06 з ПМ], R07:= [R07 з ПМ]; - перехід в стан 26. 39. Продовжити породження послідовності: - R02:= [R02 із ПМ]+1; - R03:=[R02]; - читання чергового слова фрейму послідовності. R13:= [поле  2], R15:= [поле ОЕ], R01:= [перший та другий байти другого слова фрейму]; - запис [R06], [R07], [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму послідовності та R12 – Інв_1 з першого слова фрейму; R13-Інв_2, R15 – ОЕ з другого слова фрейму та поточний режим інтерпретації – R10=0/1, R11=1) в ПМ; - перехід в стан 3. 40. Розпізнавання послідовності із слідом після прапору хибність: - відновлення покажчиків: R05:= [R05 із ПМ], R06:= [R06 із ПМ], R07:= [R07 із ПМ]; - R10:= R10’·; R11:= R11»; - перехід в стан 26. 41. Породження послідовності після прапору хибність: - відновлення покажчиків INP, OUT: R06:= [R06 із ПМ], R07:= [R07 із ПМ]; - R10:= R10»; R11:= R11»; - виштовхнути [R02 ІЗ ПМ]; - R09:= [R09]  [R12]; - перехід в стан 21. 42. Розпізнавання ітерації після прапору істина: - R03:= [R02 із ПМ] + 1; - читання другого слова фрейму, R 13:= [поле  2], R15:= [поле ОЕ], R10\:= [значення (0/1) ознаки розпізнавання із слідом] або R11:= [значення (0/1) ознаки породження], R01:= [перший та другий байти другого слова фрейму]; - запис значення регістру [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму ітерації та R12 – Тнв_1 з першого слова фрейму; R13-IНВ_2, R15 – ОЕ з другого слова фрейму та поточний режим інтерпретації – R10=0, R11=0) в ПМ; - тобто тут просто збільшення лічильника магазину без фактичного запису (запис зберігається); - R10:= R10»; R11=R11»; - перехід в стан 3. 43. Розпізнавання ітерації із слідом після прапору істина: = - RC04: [R05 із ПМ] + 1; - RC08:= [RC08 із ПС по адресі RC04] + 1; - запис [RC08] В ПС по адресі RC04; - R03:= [R02 із ПМ] + 1; - читання другого слова фрейму. R13:= [поле  2], R01:= [другий та третій байти другого слова фрейму]; - запис [R05], [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму ітерації та R12 – Інв_1 з першого слова фрейму; R13 – Інв_2 з другого слова фрейму та поточний режим інтерпретації – R10=1, R11=0) в ПМ; - тобто тут просто збільшення лічильника магазину без фактичного запису (запис зберігається); - перехід в стан 3. 44. Породження ітерації після прапору істина: - RC08:= [RC08 із ПМ]; - аналіз [RC08]: якщо [RC08]  0, то перехід в стан 45, інакше – в стан 46. 45. Продовжити породження ітерації після прапору істина: - RC08:= [RC08] – 1; - R03:= [R02 із ПМ] + 1; - читання другого слова фрейму. R13:= [поле  2], R01:= [перший та другий байти другого слова фрейму]; 11 UA 110379 C2 5 10 15 20 - запис [RC08], [R02] в ПМ; запис ознак інтерпретації (R14 – тип фрейму ітерації та R12 – Інв_1 з першого слова фрейму; R13 – Інв_2 з другого слова фрейму та поточний режим інтерпретації – R10=0/1, R11=1) в ПМ; - перехід в стан 3. 46. Завершити породження ітерації та розпізнавання ітерації після прапору хибність: - виштовхнути [R02 із ПМ]; - R09:= [R12]; - перехід в стан 21. 47. Розпізнавання ітерації із слідом після прапору хибність: - R03:= [R02 із ПМ]; - RC04:= [R05 із ПМ]; - ОС першого слова фрейму:= 1; поля  1 та тип фрейму – відновити; - [перший та другий байти першого слова фрейму]:= [RC04]; - R09:= [R12]; - перехід в стан 21. 48. Породження ітерації після прапору хибність: - виштовхнути [R02 ІЗ ПМ]; - виштовхнути [RC08 із ПМ]; - R09:= [R12]; - перехід в стан 21. Оскільки система обробки знань підтримує системний шинний інтерфейс (наприклад, АРВ), то вона може бути легко інтегрована в сучасні мікропроцесорні системи на кристалі з метою розширення їхнього набору команд. Таблиця 1 Блок Б01 Б02 Б03 Б04 Б05 Б06 Б07 Б08 Б09 БOI БЛМ БDT БЗ БDT ПМ БDT ПС Регістр, що входить у Розрядність, біт блок R01 16 R02 16 R03 16 RC04 16 R05 16 R06 16 R07 16 RC08 16 R09 16 R10 1 R11 1 R12 1 ROI R13 1 R14 3 R15 1 RЛМ 16 RDT БЗ 16 RDT ПМ 16 RDT ПС 16 Опис регістра Регістр імені структури Регістр номера слова фрейму Регістр адреси бази знань Регістр координати сліду Регістр вершини сліду Регістр адреси у вхідному масиві Регістр адреси у вихідному масиві Регістр ітерації Регістр істинності Регістр ознаки сліду Регістр ознаки породження Регістр Інв_1 Регістр Інв_2 Регістр типу фрейму Регістр ознаки останнього елемента Регістр лічильника магазину Регістр даних пам’яті бази знань Регістр даних пам’яті магазину Регістр даних пам’яті сліду 25 Таблиця 2 № 1 2 3 4 5 6 7 8 Ім’я команди LD ¬ R12, R09 LD 0, RC08 LD DTПВВ, R01 LD DTПВВ, R02 LD DTПВВ, R03 LD D 1 ПВВ, RC04 LD DTПВВ, R05 LD DTПВВ, R06 Опис команди Завантаження інверсії регістра R12 у R09 Завантаження «0» у регістр RC08 Завантаження зовнішніх даних у R01 Завантаження зовнішніх даних у R02 Завантаження зовнішніх даних у R03 Завантаження зовнішніх даних у RC04 Завантаження зовнішніх даних у R05 Завантаження зовнішніх даних у R06 12 UA 110379 C2 Таблиця 2 № 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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 Ім’я команди LD DТ ПВВ, R07 LD DTПВВ, RC08 LD DTПВВ, R09 LD DTПВВ, RDT БЗ LD DTПВВ, RDT ПМ LD DTПВВ, RDT ПС LD DTПВВ, RЛМ LD DТ ПВВ, ROI LD R01, R02 LD R01, R03 LD R01, RDT БЗ LD R01, RБ LD R02+1, R02 LD R02, R03 LD R02, RDT ПМ LD R02, RDT ПС LD R03, RDT БЗ LD RC04+1, RC04 LD RC04, R05 LD R05+1, RC04 LD R05, RDT ПМ LD R06, RDT ПМ LD R06, RБ LD R07, RDT ПМ LD R07, RБ LD RC08-1, RC08 LD RC08+1,RC08 LD RC08, RDT ПМ LD RC08, RDT ПС LD RC08, RБ LD R09  R13, R09 LD R09, RБ LD R10, RБ LD RAMБЗ, R01 LD RAMБЗ, R02 LD RAMБЗ, RC04 LD RAMБЗ, R10 LD RAMБЗ, R11 LD RAMПМ, R01 LD RAMПМ, R02 LD RAMПМ, R05 LD RAMПМ, R06, LD RAMПМ, R07 LD RAMПС, R02 LD RAMПС, RC08 LD ROI, RDT ПМ RD КЛМБЗ RD RAMПМ RD RАМПС REQ_TERM_PRG WR RAMБ3 WR RAMПМ WR RAMПС Опис команди Завантаження зовнішніх даних у R07 Завантаження зовнішніх даних у RC08 Завантаження зовнішніх даних у R09 Завантаження зовнішніх даних у RDT БЗ Завантаження зовнішніх даних у RDT ПМ Завантаження зовнішніх даних у RDT ПС Завантаження зовнішніх даних у RЛM Завантаження зовнішніх даних у ROI Завантаження даних із R01 у R02 Завантаження даних із R01 У R03 Завантаження даних із R01 у RDT БЗ Завантаження даних із R01 у RБ Інкрсмент R02 Завантаження даних із R02 у R03 Завантаження даних із R02 У RDT ПМ Завантаження даних із R02 у RDT ПС Завантаження даних із R03 у RDT БЗ Інкремент RC04 Завантаження даних із RC04 у R05 Інкремент RO5 та запис у RC04 Завантаження даних із R05 у RDT ПМ Завантаження даних із R06 У RDT ПМ Завантаження даних із R06 у RБ Завантаження даних із R07 У RDT ПМ Завантаження даних із R07 у RБ Декремент RC08 Інкремент RC08 Завантаження даних із RC08 у RDT ПМ Завантаження даних із RC08 у RDT ПС Завантаження даних із RC08 У RБ Завантаження даних із R09  R13 у R09 Завантаження даних із R09 у RБ Завантаження даних із R10 у RБ Завантаження даних із RAMБЗ у R01 Завантаження даних із RAMБЗ у R02 Завантаження даних із RAMБЗ у RC04 Завантаження даних із RAMБЗ у R10 Завантаження даних із RAMБЗ у R11 Завантаження даних із RAMПМ у R01 Завантаження даних із RAMПМ у R02 Завантаження даних із RAMПМ у R05 Завантаження даних із RAMПМ у R06 Завантаження даних із RAMПМ у R07 Завантаження даних із RAMПС у R02 Завантаження даних із RAMПС у RC08 Завантаження даних із ROI у RDT ПМ Зчитування даних із пам'яті бази знань Зчитування даних із пам'яті магазину Зчитування даних із пам'яті сліду Запит на обробку термінальної програми Запис даних у пам'ять бази знань Запис даних у пам'ять магазину Запис даних у пам'ять сліду 13 UA 110379 C2 Таблиця 3 № 1 4 5 6 7 Реалізація базових процедур LD Rx, Ry LD Ry, RRA Зчитування слова із оперативної пам'яті по адресі, який RDRAM міститься в Ry, та запис в Rx LD DATARAM, Rx LD BLy, BLWA Запис даних, що знаходяться в регістрі Rx в оперативну LD BLX, ВLDT пам'ять, по адресі, що знаходиться в Ry WR RAM Інкремент даних у Rx та їх запис у Ry LD Rx+1, Ry Декремент даних у Rx та їх запис у Ry LD Rx-1, Ry Запис "0"у Rx LD 0, Rx Запис "1" у Rx LD 1, Rx 8 Інвертування Rx та запис отриманих даних у Ry 9 Завантаження зовнішніх даних у Rx 10 Зчитування першого слова фрейму 11 Аналіз Rx 12 Передача Rx до універсального процесора 2 3 Базова процедура Вміст Rx записати в Rу R LD x , Ry LD DTПВВ, Rх LD R02, RRA RD RAM LD Rx, RБ, LD Rx, RБ REQ_TER_PROGR ФОРМУЛА ВИНАХОДУ 5 10 15 20 25 30 35 Процесор обробки знань, що містить головний комп'ютер, підключений до першого входувиходу першого блока вводу-виводу, блок управління та оперативну пам'ять, який відрізняється тим, що в нього введено універсальний процесор, другий блок вводу-виводу, буферний регістр, блоки імені структури, номера слова фрейму, адреси бази знань, координати сліду, вершини сліду, адреси у вхідному масиві, адреси у вихідному масиві, лічильника ітерації, істинності, лічильника магазину та ознак інтерпретації, пам'ять бази знань, пам'ять магазину, пам'ять сліду, блок даних пам'яті бази знань, блок даних пам'яті магазину, блок даних пам'яті сліду, при цьому другий вхід-вихід першого блока вводу-виводу, перший вхід-вихід другого блока вводу-виводу, універсальний процесор і оперативна пам'ять підключені до системної шини пристрою, перший вихід другого блока вводу-виводу підключено до першого входу блока управління, перший вихід якого підключено до першого входу другого блока вводу-виводу, другий вихід блока управління підключено до перших входів блоків імені структури, номера слова фрейму, координати сліду, адреси у вхідному масиві, адреси у вихідному масиві, лічильника ітерації, істинності та ознак інтерпретації, третій вихід блока управління підключено до перших входів блоків адреси бази знань, даних пам'яті бази знань, лічильника магазину, даних пам'яті магазину, вершини сліду та даних пам'яті сліду, другий вихід другого блока вводувиводу підключено до других входів блоків імені структури, номера слова фрейму, адреси бази знань, координати сліду, вершини сліду, адреси у вхідному масиві, адреси у вихідному масиві, лічильника ітерації, істинності, лічильника магазину, ознак інтерпретації, даних пам'яті бази знань, даних пам'яті магазину та даних пам'яті сліду, вихід пам'яті бази знань підключено до третіх входів блока управління, другого блока вводу-виводу, блоків імені структури, номера слова фрейму та ознак інтерпретації, вихід пам'яті магазину підключено до четвертого входу блока імені структури, до четвертого входу блока номера слова фрейму, до третіх входів блоків координат сліду, адреси у вхідному масиві та адреси у вихідному масиві, вихід пам'яті сліду підключено до п'ятого входу блока номера слова фрейму та до третього входу блока лічильника ітерації, вихід блока імені структури підключено до шостого входу буферного регістра, до третього входу блока адреси бази знань, до шостого входу блока номера слова фрейму, до третього входу блока даних пам'яті бази знань, до шостого входу блока даних пам'яті магазину та до третього входу блока даних пам'яті сліду, вихід блока номера слова фрейму підключено до четвертого входу блока адреси бази знань, вихід блока координати сліду підключено до другого входу блока даних пам'яті магазину та до четвертого входу блока вершини сліду, вихід блока адреси у вхідному масиві підключено до четвертого входу блока даних пам'яті магазину та до п'ятого входу буферного регістра, вихід блока адреси у вихідному масиві підключено до 14 UA 110379 C2 5 10 п'ятого входу блока, даних пам'яті магазину та до четвертого входу буферного регістра, вихід блока лічильника ітерації підключено до другого входу буферного регістра, до сьомого входу блока даних пам'яті магазину та до четвертого входу блока даних пам'яті сліду, вихід блока істинності підключено до першого входу буферного регістра, вихід блока ознак інтерпретації підключено до третього входу блока істинності, до третього входу буферного регістра та до восьмого входу блока даних пам'яті магазину, четвертий вихід блока управління підключено до входів управління пам'яті бази знань, магазину та сліду, адресні входи яких з'єднані із виходами блока адреси бази знань, лічильника магазину та блока вершини сліду відповідно, вихід блока даних пам'яті бази знань підключено до входу даних пам'яті бази знань, вихід блока лічильника магазину підключено до четвертого входу блока даних пам'яті бази знань, вихід блока даних пам'яті магазину підключено до входу даних пам'яті магазину, вихід блока вершини сліду підключено до четвертого входу блока координати сліду, вихід блока даних пам'яті сліду підключено до входу даних пам'яті сліду, вихід буферного регістра підключено до других входів другого блока вводу-виводу та блока управління. 15 UA 110379 C2 16 UA 110379 C2 17 UA 110379 C2 18 UA 110379 C2 Комп’ютерна верстка Г. Паяльніков Державна служба інтелектуальної власності України, вул. Урицького, 45, м. Київ, МСП, 03680, Україна ДП “Український інститут промислової власності”, вул. Глазунова, 1, м. Київ – 42, 01601 19

Дивитися

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

МПК / Мітки

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

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

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

<a href="https://ua.patents.su/21-110379-procesor-obrobki-znan.html" target="_blank" rel="follow" title="База патентів України">Процесор обробки знань</a>

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