Автомат бондаренка пошуку помилок
Формула / Реферат
1. Автомат пошуку помилок, що містить блок завантаження, настроювання й ініціалізації і блок керування, входи і виходи яких з'єднані з входами і виходами всіх блоків автомата, блок генерації вихідного сигналу, що є частиною тестованої системи, вхід якого з'єднаний з виходами блока керування та блока порівняння, а вихід з'єднаний із входом блока компаратора, вихід якого з'єднаний з одним із входів блока порівняння, інший вхід якого з'єднаний з виходом блока генерації вихідного сигналу, а виходи блока порівняння з'єднані з входами компаратора, а при необхідності - автоматично і з входами блока генерації вихідного сигналу і блока керування, блок перехоплення спеціалізованих сигналів, вхід якого з'єднаний з виходом блока генерації вихідного сигналу, а вихід - із входом блока керування, блок пам'яті, з'єднаний входами і виходами також і з блоком генерації вихідного сигналу, компаратором і блоком порівняння, блок статистики, входи якого з'єднані з виходами всіх інших блоків, крім блока пам'яті, а вихід його також з'єднаний із входом блока пам'яті, який відрізняється тим, що додатково введено два блоки - генератор евристичних сигналів і блок перетворення, мінімізації і класифікації, при цьому входи генератора евристичних сигналів з'єднані з виходами блока пам'яті, блока порівняння і блока перетворення, мінімізації і класифікації, а вихід - із входом блока керування, крім того, вхід блока перетворення, мінімізації і класифікації з'єднаний з виходом блока порівняння, а вихід - з входом блока пам'яті, а при необхідності - автоматично і з входами блока генерації вихідного сигналу, блока керування та компаратором.
2. Автомат пошуку помилок за п. 1, який відрізняється тим, що блок завантаження, настроювання й ініціалізації складається з модуля початкового настроювання і модуля початкового завантаження й ініціалізації.
3. Автомат пошуку помилок за п. 1, який відрізняється тим, що блок генерації вихідного сигналу складається з генератора припустимого псевдовипадкового сигналу, генератора першої пари вихідних порівнюваних сигналів, генератора другої пари вихідних порівнюваних сигналів.
4. Автомат пошуку помилок за п. 1, який відрізняється тим, що блок керування складається з модуля загального керування, лічильника циклів і таймера.
5. Автомат пошуку помилок за п. 1, який відрізняється тим, що генератор евристичних сигналів складається з модуля побудови евристики і модуля оцінки ефективності евристики.
6. Автомат пошуку помилок за п. 1, який відрізняється тим, що компаратор складається з головного компаратора і модуля допоміжних компараторів.
7. Автомат пошуку помилок за п. 1, який відрізняється тим, що блок пам'яті складається з модуля збереження даних виконаних операцій, що модифікується, модуля пам'яті збереження вихідних некоректних сигналів, що модифікується, модуля пам'яті збереження списку типу некоректних вихідних сигналів, що модифікується, модуля пам'яті збереження евристик і аналізатора типу некоректних вихідних сигналів.
8. Автомат пошуку помилок за п. 1, який відрізняється тим, що блок перетворення, мінімізації і класифікації складається з мінімізатора сигналу, перемикача версій тестованої системи, модуля перевірки відтворюваності результату, модуля ваги кожного некоректно згенерованого вихідного сигналу і аналізатора типу некоректних вихідних сигналів.
9. Автомат пошуку помилок за п. 1, який відрізняється тим, що блок статистики складається з модуля обчислення статистики і модуля збереження статистики.
10. Автомат пошуку помилок за п. 1, який відрізняється тим, що блок генерації вихідного сигналу складається з модуля генерації вихідного сигналу.
11. Автомат пошуку помилок за п. 1, який відрізняється тим, що блок перехоплення спеціалізованих сигналів складається з модуля перехоплення переривань.
Текст
Винахід відноситься до автоматики й обчислювальної техніки і може бути використай в автоматах пошуку помилок у складних автоматичних системах, у тому числі й оснащених програмним забезпеченням. Відомий ”Спосіб визначення погрішностей датчиків систем автоматичного регулювання параметрів технологічних процесів і пристрій для його здійснення” (Патент України №18197, МПК-6 G05В23/00, БВ-5-97p.), причому пристрій містить регульований об'єкт, датчик технологічного параметра, установлений на об'єкті, задатчик, блок порівняння, одним входом з'єднаний із задатчиком, виходом з'єднаний з регулятором, виконавчим механізмом на виході регулятора і регулювальним органом на вході регульованого об'єкта, покажчик положення регулюючого органа, при цьому в пристрій уведений вимірник інтенсивності потоку чи речовини енергії на вході регулюючого органа, суматор, джерело каліброваного сигналу, калібрований дільник напруги і два ключі, при цьому вхід суматора з'єднаний з виходом датчика, а другий вхід через ключ з нормально відкритим контактом із джерелом каліброваного сигналу, вихід суматора через калібрований дільник напруг з'єднаний із другим входом блоку порівняння, а ключ з нормально відкритим контактом шунтує калібрований дільник напруги. Недоліком відомого пристрою є неможливість визначення помилок, що виникають у тестуємої системі на рівні збоїв апаратного і/чи програмного забезпечення при видачі пристроєм сигналів, обумовлених на його виході як коректних. Найбільш близьким по технічній сутності і результату, що досягається, і обраним як прототип є ”Автомат пошуку помилок у системі Mathematica” (Див. головні Web сайти компанії Wolfram Research, Inc.: http://www.wolfram.com, http://www.wolfram.co.uk, http://www.wolfram.co.jp.). Кожна версія системи Mathematica піддається великому обсягу тестування до її офіційного випуску. Гнітюча частина цього тестування здійснюється автоматизованою системою, що написана мовою Mathematica. Автоматизована система подає мільйони прикладів вхідних виражень у систему Mathematica, і перевіряє, що результат правильний. Часто мається тонкості у виконанні такої перевірки: потрібно взяти до уваги різне поводження рандомизованих алгоритмів і таких моментів, як розходження в арифметиці машинної точності на комп'ютерах різних систем. Тестові вхідні вираження, використовувані автоматизованою системою, отримані декількома способами: Для кожної функції системи Mathematica розроблені вхідні вираження, що здійснюють перевірку як загальних, так і часток випадків. - Розроблено вхідні вираження, тестуючі кожну функціональність внутрішнього коду. - Використовуються всі приклади в даній книзі й в інших книгах по системі Mathematica. - Оптично відскановані стандартні чисельні таблиці для тестових вхідних виражень. - Уведено формули з усіх стандартних математичних таблиць. - Уведено вправи з підручників. - Для пар функцій таких як Integrate і D чи Factor і Expand, випадкові вираження сгенеровані і протестовані. Під час виконання тестів автоматизована тестуюча система перевіряє не тільки результати, але також і побічні ефекти, такі як повідомлення системи, кількість використаної пам'яті і швидкість. Мається також спеціально обладнана вимірювальною апаратурою версія системи Mathematica, що розроблена, щоб проводити тести на внутрішню погодженість даних. Ця версія системи Mathematica працює на маленькій частці швидкості реальної системи Mathematica, перевіряючи на кожнім кроці внутрішню погодженість пам'яті, переривання, і так далі. Обладнана вимірювальною апаратурою версія системи Mathematica також реєструє, до яких частин вихідного коду Mathematica відбувається звертання, дозволяючи підтвердити, що всі різні внутрішні функції в системі Mathematica були випробувані даними тестами. Усі стандартні тести для системи Mathematica у плановому порядку проводяться на кожній версії Mathematica для кожної різної комп'ютерної системи. У залежності від швидкості комп'ютерної системи, ці тести займають від кілька днів до декількох тижнів комп'ютерного часу. Крім того, величезне число тестів, заснованих на випадкових вхідних вираженнях, еквівалентне багатьом рокам рахункового комп'ютерного часу, проводиться на різних вибіркових комп'ютерних системах. Однак, навіть при наявності всього цього обсягу тестування, у системі настільки складної як система Mathematica, неминуче залишаться помилки. Стандарти правильності для системи Mathematica, безумовно, набагато вище, ніж для типових математичних доказів. Але так само як довгі докази будуть неминуче містити помилки, що залишаються невиявленими багато років, така складна система програмного забезпечення як система Mathematica буде містити помилки, що залишаються невиявленими навіть після того, як мільйони людей використовували її. Незважаючи на величезний обсяг тестування, проведеного для системи Mathematica, все-таки існує імовірність, виявлення помилок у системі Mathematica у ході роботи. Логіка роботи тестуючої системи пошуку помилок, закладена в системі Mathematica, може представлена в такому вигляді. Перелік логічних блоків прототипу. Блок 1п-блок завантаження, настроювання й ініціалізації. Функція - призначена для завантаження, настроювання й ініціалізації автомата і тестуємого апаратного і/чи програмного забезпечення (далі по тексту - А і/чи ПЗ). Склад - логічний блок. Робота - ініціалізація роботи всіх блоків автомата, усіх тестуємих версій А і/чи ПЗ, уведення первісної точності порівняння сигналів (яка впливає на швидкість роботи автомата), уведення числа перевірок у тесті на відтворюваність, уведення числа версій тестуємого А і/чи ПЗ у пам'ять автомата. Блок 2п-блок генерації вихідного сигналу. Функція - генерація вихідного сигналу. Склад - логічний блок генерації, що є частиною тестуємої системи А і/чи ПЗ. Робота - по запиті блоку 4п чи блоки 7п подає на вхід тестуємого А і/чи ПЗ сигнали, що змушують дану систему А і/чи ПЗ згенерувати вихідний сигнал, що надходить на блок 5п. Блок 3п-блок перехоплення спеціалізованих сигналів. Функція - перехоплює спеціалізовані сигнали. Склад - логічний блок. Робота - перехоплює спеціалізовані сигнали, що надходять від блоку 2п і передає їх на блок 4п. Блок 4п-блок керування Функція - керування роботою автомата. Склад - логічний блок керування. Робота - керує роботою всіх блоків автомата по сигналах, що надходить від інших блоків автоматів. Блок 5п-компаратор. Функція - порівняння сигналів. Склад - блок, що складається з головного і допоміжного компараторів. Робота - порівнює сигнали, що надходять із блоку 2п між собою і, при необхідності, з еталонним сигналом і передає сигнали блоку 7п. Блок 6п-блок пам'яті. Функція - збереження, запис, читання і видача сигналів. Склад - логічний блок пам'яті. Робота - збереження, запис, читання і видача по запиті сигналів, що надходять від блоків 1п, 2п, 4п,5п, 7п. Блок 7п-блок порівняння. Функція - порівнює сигнали. Склад - логічний блок. Робота - порівнює сигнали, що надходять від блоку 2п, записує згенеровані даним блоком сигнали в блок 5п, при необхідності подає сигнали на блоки 2п, 4п, 5п. Блок 8п-блок статистики. Функція - генерує сигнали статистики. Склад - логічний блок. Робота - на підставі сигналів, отриманих від блоків 1п-4п, 5п-7п, генерує сигнали статистики, призначені для блоку 4п і записувані в блок 6п. Робота блоків прототипу. У блок 1п вручну вводяться дані по первісній точності порівняння сигналів, число перевірок у тесті на відтворюваність, число версій тестуємого А і/чи ПЗ. Блок 1п инициализирует роботу всіх блоків автомата, усіх тестуємих версій А і/чи ПЗ. Блок 1п починає запис усіх робочих сигналів у блок 6п. Далі блок 1п передає керування блоку 4п, що і здійснює всі належні операції керування автоматом. У випадку фатального збою чи автомата А і/чи ПЗ, керування автоматично повертається блоку 1п. Блок 4п ініціалізує свій внутрішній лічильник числа операцій, запитуючи при необхідності його поточне значення з блоку пам'яті 6п. Блок керування 4п запитує в блоку пам'яті 6п вихідний некоректний сигнал і передає його блоку 2п. Блок 2п передає пари вихідних сигналів, згенерованих двома незалежними способами з вхідного сигналу блоку 5п, що порівнює різниця між сигналами у вихідній парі і передає результати порівняння блоку 7п. У блоці 7п при нормальній роботі тестуємого А і/чи ПЗ різниця між сигналами у вихідній парі дорівнює нулю, а розбіжність різниці між сигналами у вихідній парі ідентифікується як помилка в тестуємом А і/чи ПЗ. Спектр відхилення від нуля різниці між сигналами у вихідній парі вказує на тип помилки в тестуємом А і/чи ПЗ. При виникненні ненульової різниці між сигналами в блоці 7п сигнали фільтруються, перетворяться, мінімізуються і класифікуються, а результат записується в блок пам'яті 6п. Далі блок 7п передає керування блоку 8п, що після завершення своєї роботи передає керування блоку 4п і цикл роботи автомата повторюється із самого початку. У випадку, якщо на якому-небудь етапі роботи відбувається фатальний збій чи автомата тестуємого А і/чи ПЗ, блок 1п запитує сигнали, необхідні для подальшого керування з блоків 6п і 8п, ініціалізує роботу всіх блоків і робота автомата продовжується. Недоліком прототипу є повільна робота системи повиявленню помилок і невисокий відсоток перебування наявних помилок у деяких типах апаратного і/чи програмного забезпечення. Задачею винаходу є розробка нового автомата пошуку помилок, що дозволяє автоматично знаходити помилки в деяких типах апаратного і/чи програмного забезпечення з досягненням технічного результату прискорення і повноти пошуку помилок. Поставлена задача зважується тим, що в ”Автоматі пошуку помилок”, що містить блок завантаження, настроювання й ініціалізації і блок керування, входи і виходи яких з'єднані з входами і виходами всіх блоків автомата, блок генерації вихідного сигналу, що є частиною тестуємої системи, вхід якого з'єднаний з виходами блоку керування та блоку порівняння, а вихід з'єднаний із входом блоку компаратора, вихід якого з'єднаний з одним із входів блоку порівняння, інший вхід якого з'єднаний з виходом блоку генерації вихідного сигналу, а виходи блоку порівняння з'єднані з входами компаратора, а при необхідності, автоматично і з входами блоку генерації вихідного сигналу і блоку керування, блок перехоплення спеціалізованих сигналів, вхід якого з'єднаний з виходом блоку генерації вихідного сигналу, а вихід - із входом блоку керування, блок пам'яті, з'єднаний входами і виходами також і з блоком генерації вихідного сигналу, компаратором і блоком порівняння, блок статистики, входи якого з'єднані з виходами всіх інших блоків, крім блоку пам'яті, а вихід його також з'єднаний із входом блоку пам'яті, додатково введено два блоки - генератор евристичних сигналів і блок перетворення, мінімізації і класифікації, при цьому входи генератора евристичних сигналів з'єднані з виходами блоку пам'яті, блоку порівняння і блоку перетворення, мінімізації і класифікації, а вихід - із входом блоку керування, крім того, вхід блоку перетворення, мінімізації і класифікації з'єднаний з виходом блоку порівняння, а вихід - з входом блоку пам'яті, а при необхідності, автоматично і з входами блоку генерації вихідного сигналу, блоку керування та компаратором, крім того, блок завантаження, настроювання й ініціалізації складається з модуля початкового настроювання і модуля початкового завантаження й ініціалізації, блок генерації вихідного сигналу складається з генератора припустимого псевдовипадкового сигналу, генератора першої пари вихідних порівнюваних сигналів, генератора другої пари вихідних порівнюваних сигналів, блок керування складається з модуля загального керування, лічильника циклів і таймера, генератор евристичних сигналів складається з модуля побудови евристики і модуля оцінки ефективності евристики, компаратор складається з головного компаратора і модуля допоміжних компараторів, блок пам'яті складається з модуля збереження даних виконаних операцій, що модифікується, модуля пам'яті збереження вихідних некоректних сигналів, що модифікується, модуля пам'яті збереження списку типу некоректних вихідних сигналів, що модифікується, модуля пам'яті збереження евристик і аналізатора типу некоректних вихідних сигналів, блок перетворення, мінімізації і класифікації складається з мінімізатора сигналу, перемикача версій тестуємої системи, модуля перевірки відтворюваності результату, модуля ваг некоректно згенерованих вихідних сигналів і аналізатора типу некоректних вихідних сигналів, блок статистики складається з модуля обчислення статистики і модуля збереження статистики, блок генерації вихідного сигналу складається з модуля генерації вихідного сигналу, блок перехоплення спеціалізованих сигналів складається з модуля перехоплення переривань. Новим у пристрої, що заявляється, є нові елементи і зв'язки системотехніки автомата пошуку помилок, що дозволяють виконати задачу, поставлену в сьогоденні винаходу з досягненням технічного результату прискорення і повноти пошуку помилок. Суттєвими ознаками пристрою, що заявляється, співпадаючими з прототипом, є наступні ознаки: - блок завантаження, настроювання й ініціалізації; - блок керування; - входи і виходи блоку завантаження, настроювання й ініціалізації і блоку керування з'єднані з входами і виходами всіх блоків автомата; - блок генерації вихідного сигналу, що є частиною тестуємої системи; - вхід блоку генерації вихідного сигналу з'єднаний з виходами блоку та керування блоку порівняння, а вихід з'єднаний із входом блоку компаратора; - вихід блоку компаратора з'єднаний з одним із входів блоку порівняння; - інший вхід блоку порівняння з'єднаний з виходом блоку генерації вихідного сигналу, а виходи блоку порівняння з'єднані з входами компаратора, а при необхідності, автоматично і з входами блоку генерації вихідного сигналу і блоку керування; - блок перехоплення спеціалізованих сигналів; - вхід блоку перехоплення спеціалізованих сигналів з'єднаний з виходом блоку генерації вихідного сигналу, а вихід - із входом блоку керування; - блок пам'яті; - блок пам'яті з'єднаний входами і виходами також і з блоком генерації вихідного сигналу, компаратором і блоком порівняння; - блок статистики; - входи блоку статистики з'єднані з виходами всіх інших блоків, крім блоку пам'яті, а вихід його також з'єднаний із входом блоку пам'яті. Відмітними від прототипу суттєвими ознаками пристрою, що заявляється, є наступні ознаки: - додатково введені два блоки - генератор евристичних сигналів і блок перетворення, мінімізації і класифікації; - входи генератора евристичних сигналів з'єднані з виходами блоку пам'яті, блоку порівняння і блоку перетворення, мінімізації і класифікації, а вихід - із входом блоку керування; - вхід блоку перетворення, мінімізації і класифікації з'єднаний з виходом блоку порівняння, а вихід - із входом блоку пам'яті, а при необхідності, і з входами блоку генерації вихідного сигналу, блоку керування, компаратора. Приватними відмітними від прототипу суттєвими ознаками пристрою, що заявляється, є наступні ознаки: - блок завантаження, настроювання й ініціалізації складається з модуля початкового настроювання і модуля початкового завантаження й ініціалізації; - блок генерації вихідного сигналу складається з генератора припустимого псевдовипадкового сигналу, генератора першої пари вихідних порівнюваних сигналів, генератора другої пари вихідних порівнюваних сигналів; - блок керування складається їхнього модуля загального керування, лічильника циклів і таймера; - генератор евристичних сигналів складається з модуля побудови евристики і модуля оцінки ефективності евристики; - компаратор складається з головного компаратора і модуля допоміжних компараторів; - блок пам'яті складається з модуля збереження даних виконаних операцій, що модифікується, модуля пам'яті збереження вихідних некоректних сигналів, що модифікується, модуля пам'яті збереження списку типу некоректних вихідних сигналів, що модифікується, модуля пам'яті збереження евристик і аналізатора типу некоректних вихідних сигналів; - блок перетворення, мінімізації і класифікації складається з мінімізатора сигналу, перемикача версій тестуємої системи, модуля перевірки відтворюваності результату, модуля ваг неправильно обчислених вихідних сигналів і аналізатора типу некоректних вихідних сигналів; - блок статистики складається з модуля обчислення статистики і модуля збереження статистики; - блок генерації вихідного сигналу складається з модуля генерації вихідного сигналу; - блок перехоплення спеціалізованих сигналів складається їхнього модуля перехоплення переривань. Між суттєвими ознаками винаходу, що заявляється, і технічним результатом, якій досягається, існує наступний причинно-наслідковий зв'язок. Дійсно, наявність нових елементів системотехніки і нових зв'язків між ними і наявними в прототипі блоками дозволяє значно прискорити пошук помилок у деяких типах апаратного і/чи програмного забезпечення, причому кількість знайдених помилок у кілька разів перевищує кількість помилок, знайдених за допомогою прототипу за той же проміжок часу. Розглянемо призначення, склад і роботу основних блоків автомата. Блок 1 - блок завантаження, настроювання й ініціалізації. Функція - призначена для завантаження, настроювання й ініціалізації автомата і тестуємого А і/чи ПЗ Склад - логічний блок. Робота - ініціалізація роботи всіх блоків автомата, усіх тестуємих версій А і/чи ПЗ уведення первісної точності порівняння сигналів (яка впливає на швидкість роботи автомата), уведення числа перевірок у тесті на відтворюваність, уведення числа версій тестуємого А і/чи ПЗ в пам'ять автомата. Блок 2 - блок генерації вихідного сигналу Функція - генерація вихідного сигналу. Склад - логічний блок генерації, що є частиною тестуємої системи А і/чи ПЗ. Робота - по запиті блоку 4 чи блоки 8 подає на вхід тестуємого А і/чи ПЗ сигнали, що змушують дану систему А і/чи ПЗ згенерувати вихідний сигнал, що надходить на блок 6. Блок 3 - блок перехоплення спеціалізованих сигналів. Функція - перехоплює спеціалізовані сигнали. Склад - логічний блок. Робота - перехоплює спеціалізовані сигнали, що надходять від блоку 2 і передає їх на блок 4 і блок 9. Блок 4 - блок керування. Функція - керування роботою автомата. Склад- логічний блок керування. Робота - керує роботою всіх блоків автомата по сигналах, що надходить від інших блоків автоматів. Блок 5 - генератор евристичних сигналів. Функція - генерує сигнали евристики. Склад - логічний блок. Робота - на підставі сигналів, отриманих від блоків 7-9, генерує сигнали, що надходять на блок 4 для керування роботою автоматом. Блок 6 - компаратор. Функція - порівняння сигналів. Склад - блок, що складається з головного і допоміжного компараторів. Робота - порівнює сигнали, що надходять із блоку 2 між собою і, при необхідності, з еталонним сигналом і передає сигнали блоку 8. Блок 7 - блок пам'яті. Функція - збереження, запис, читання і видача сигналів. Склад - логічний блок пам'яті. Робота - збереження, запис, читання і видача по запиті сигналів, що надходять від блоків 1,2, 4-6, 8 і 9. Блок 8 - блок порівняння. Функція - порівнює сигнали. Склад - логічний блок. Робота - порівнює сигнали, що надходять від блоку 2, записує згенеровані даним блоком сигнали в блок 6, при необхідності подає сигнали на блоки 2, 4, 6. Блок 9 - блок перетворення, мінімізації і класифікації. Функція - фільтрує, мінімізує і класифікує сигнали. Склад - логічний блок. Робота - фільтрує, мінімізує і класифікує сигнали, що надходять від блоку 8, записує згенеровані даним блоком сигнали в блок 7, при необхідності подає сигнали на блоки 2, 4, 6. Блок 10 - блок статистики. Функція - генерує сигнали статистики. Склад - логічний блок. Робота - на підставі сигналів, отриманих від блоків 1-9, генерує сигнали статистики, призначені для блоку 4 і записувані в блок 7. Далі розглянемо, з яких модулів складаються вищевказані блоки 1-10. Автомат складається з наступних 26 модулів: 1а. Модуль початкового настроювання. 2а. Модуль збереження даних виконаних операцій. 3а. Модуль генерації вихідного сигналу. 4а. Модуль початкового завантаження й ініціалізації. 5а. Лічильник циклу. 6а. Модуль перехоплення переривань. 7а. Модуль пам'яті, що модифікується, збереження вихідних некоректних сигналів. 8а. Модуль пам'яті, що модифікується, збереження евристик. 9а. Модуль первісної оцінки, що модифікується, вихідних сигналів. 10а. Генератор припустимого псевдовипадкового сигналу. 11а. Генератор першого сигналу пари вихідних порівнюваних сигналів. 12а. Генератор другого сигналу пари вихідних порівнюваних сигналів. 13а. Головний компаратор. 14а. Модуль допоміжних компараторів. 15а. Мінімізатор сигналу. 16а. Модуль побудови евристики. 17а. Модуль ваг некоректно обчислених вихідних сигналів. 18а. Аналізатор типу некоректних вихідних сигналів. 19а. Модуль оцінки ефективності евристики. 20а. Модуль збереження, що модифікується, списку типу некоректних вихідних сигналів. 21а. Перемикач версій тестуємого А і/чи ПО. 22а. Модуль перевірки відтворюваності результату. 23а. Модуль обчислення статистики. 24а. Модуль збереження статистики. 25а. Таймер. 26а. Модуль загального керування. Розглянемо роботу блоків 1-10. У блок 1 вручну вводяться дані по первісній точності порівняння сигналів, число перевірок у тесті на відтворюваність, число версій тестуємого А і/чи ПЗ. Блок 1 ініціалізує роботу всіх блоків автомата, усіх тестуємих версій А і/чи ПЗ. Блок 1 починає запис усіх робочих сигналів у блок 7. Далі блок 1 передає керування блоку 4, що і здійснює всі належні операції керування автоматом. У випадку фатального збою чи автомата А й/чи ПЗ, керування автоматично повертається блоку 1. Блок 4 ініціалізує свій внутрішній лічильник числа операцій, запитуючи при необхідності його поточне значення з блоку пам'яті 7. Блок керування 4 запитує в блоку пам'яті 7 вихідний некоректний сигнал і передає його блоку 2, можливо, у залежності від поточного стану автомата, попередньо перетворивши його за допомогою блоку 8. Блок 2 передає пари вихідних сигналів, згенеровані двома незалежними способами з вхідного сигналу блоку 6, що порівнює різницю між сигналами у вихідній парі і передає результати порівняння блоку 8. У блоці 8 при нормальній роботі тестуємого А і/чи ПЗ різницю між сигналами у вихідній парі дорівнює нулю, а розбіжність різниці між сигналами у вихідній парі ідентифікується як помилка в тестуємом А і/чи ПЗ. Спектр відхилення від нуля різниці між сигналами у вихідній парі вказує на тип помилки в тестуємом А і/чи ПЗ. При виникненні ненульової різниці між сигналами в блоці 8 сигнали фільтруються, перетворяться, мінімізуються і класифікуються, а результат записується в блок пам'яті 7. Далі блок 8 передає керування блоку 9, що після завершення своєї роботи передає керування блоку 2 і цикл роботи автомата повторюється із самого початку. У випадку, якщо на якому-небудь етапі роботи відбувається фатальний збій чи автомата тестуємого А і/чи ПЗ, блок 1 запитує сигнали, необхідні для подальшого керування з блоків 7 і 9, ініціалізує роботу всіх блоків і робота автомата продовжується. Розглянемо опис функцій, складу і роботи модулів. 1а. Модуль початкового настроювання. Функція - призначена для вказівки первісної точності порівняння сигналів (яка впливає на швидкість роботи автомата), для опису кількості перевірок у тесті на відтворюваність, для вказівки кількості тестуємих версій А і/чи ПЗ. Склад - пристрій уведення первісної точності порівняння сигналів, пристрій уведення числа кількості перевірок, пристрій уведення числа тестуємих версій А і/чи ПЗ. Робота - уведення вищевказаних параметрів у пам'ять автомата. 2а. Модуль збереження даних виконаних операцій. Функція - збереження даних всіх операцій, виконаних автоматом у процесі тестування. Склад - модуль збереження інформації про виконані операції. Робота - запис поточних виконаних операцій і їхніх результатів. 3а. Модуль генерації вихідного сигналу (знаходиться в тестуємій системі). Функція - генерація поточного тестуємого вихідного сигналу, породженого А і/чи ПЗ у відповідь на тестуємий вхідний сигнал. Склад - модуль, що знаходиться в тестуємій системі. Робота - генерація поточного тестуємого вихідного сигналу, виконуване засобами самої тестуємой системи А і/чи ПЗ. 4а. Модуль початкового завантаження й ініціалізації. Функція - первісний запуск усіх версій тестуємого А і/чи ПЗ й інших компонентів системи, або повторний запуск перерахованих вище компонентів після фатального збою автомата і/чи тестуємого А і/чи ПЗ. Склад - модуль запуску усіх версій тестуємого А і/чи ПЗ й інших компонентів системи. Робота - запуск усіх версій тестуємого А і/чи ПЗ й інших компонентів системи або повторний запуск перерахованих вище компонентів після фатального збою автомата і/чи тестуємої А і/чи ПЗ. 5а. Лічильник циклу. Функція - підрахунок загальної кількості циклів перевірок, початих автоматом, але можливо не завершених через фатальний збій тестуємого А і/чи ПЗ чи самого автомата. Склад - лічильник циклу. Робота - підрахунок загальної кількості циклів перевірок, початих автоматом, але можливо не завершених через фатальний збій тестуємого А і/чи ПЗ чи самого автомата. 6а. Модуль перехоплення переривань (знаходиться в тестуємої системі). Функція - відслідковує появу сигналу переривання, породжуваного тестуємої системою в процесі виконання операцій. Склад - модуль захоплення параметрів сигналу переривання. Робота - захоплення і збереження параметрів сигналу переривання з метою їхнього подальшого використання керування роботою автомата. 7а. Модуль пам'яті, що модифікується, збереження вихідних некоректних сигналів. Функція - збереження, запис, читання і видача по запиті всіх категорій вихідних сигналів тестуємого А і/чи ПЗ, з який генератором випадкових сигналів будуються тестуємі вхідні сигнали, для яких вихідні сигнали є потенційно некоректними. Склад - модуль пам'яті. Робота - використання існуючих вихідних некоректних чи сигналів внесення нових вихідних некоректних сигналів тестуємого А і/чи ПЗ, з який генератором випадкових сигналів будуються тестуємі вхідні потенційно некоректні сигнали. 8а. Модуль пам'яті, що модифікується, збереження евристик. Функція - збереження евристик для генерації нових потенційно некоректних вхідних сигналів генератором випадкових сигналів. Склад - модуль пам'яті, що модифікується, збереження цих евристик. Робота - запис і читання цих евристик. 9а. Модуль первісної оцінки, що модифікується, вихідних сигналів. Функція - збереження, запис і читання вихідних сигналів, що генерувалися некоректно хоча б в одній попередній версії А і/чи ПЗ, чи приводили до фатального збою хоча б однієї попередньої версії А і/чи ПЗ. Склад - модуль пам'яті, що модифікується, збереження вихідних сигналів. Робота - збереження, запис, читання і видача по запиті вихідних сигналів. 10а. Генератор припустимого псевдовипадкового сигналу. Функція - генерація нового вхідного сигналу, за допомогою блоку пам'яті, що модифікується, збереження некоректних вихідних сигналів. Склад - модуль для генерації нового тестуемого вхідного сигналу. Робота - сигнали, що надходять з модуля 9а, перетворяться за допомогою сигналів з модуля 8а. 11а. Генератор першого сигналу пари вихідних порівнюваних сигналів. Функція - генерація першого вхідного сигналу пари вихідних порівнюваних сигналів за допомогою блоку пам'яті, що модифікується, збереження некоректних вихідних сигналів. Склад - модуль для генерації. Робота - сигнали, що надходять з модуля 9а, перетворяться за допомогою сигналів з модуля 8 а. 12а. Генератор другого сигналу пари вихідних порівнюваних сигналів. Функція - генерація другого вхідного сигналу пари вихідних порівнюваних сигналів за допомогою блоку пам'яті, що модифікується, збереження некоректних вихідних сигналів. Склад - модуль для генерації. Робота - сигнали, що надходять з модуля 9, перетворяться за допомогою сигналів з модуля 8а. 13а. Головний компаратор (швидкий, неспеціалізований). Функція - порівняння першого і другого сигналу пари вихідних порівнюваних тестуємих сигналів, а у випадку, якщо порівняння неможливе здійснити, генерація спеціалізованого сигналу помилки. Склад - головний (неспеціалізований) компаратор. Робота - генерація результуючої нормалізованої різниці між першим і другим сигналами пари вихідних порівнюваних тестуємих сигналів, а у випадку, якщо порівняння неможливе здійснити, генерація спеціалізованого сигналу помилки. Розбивка компараторів на модуль 13а і модуль 14а виконаний у метою прискорення роботи автомата. 14а. Модуль допоміжних компараторів (повільних, спеціалізованих). Функція - порівняння першого і другого сигналу пари вихідних порівнюваних тестуємих сигналів, у випадку коли головний (неспеціалізований) компаратор згенерував спеціалізований сигнал помилки. Склад - містить кілька допоміжних спеціалізованих компараторів. Робота - генерація результуючої нормалізованої різниці між першим і другим сигналами пари вихідних порівнюваних тестуємих сигналів, у випадку коли головний (неспеціалізований) компаратор згенерував спеціалізований сигнал помилки. 15а. Мінімізатор сигналу. Функція - генерація відфільтрованого вхідного тестуемого сигналу, що може потенційно викликати некоректний сигнал того ж типу, що і вихідний вхідний тестуємий сигнал. Склад - модуль фільтрації. Робота - побудова нового тестуємого вхідного сигналу шляхом фільтрації вихідного тестуємого вхідного сигналу. 16а. Модуль побудови евристики. Функція - генерація нової евристики на основі аналізу сигналів блоків 7а-9а і 15а, 20а, 23а. Склад - модуль, що генерує нову евристику. Робота - генерація нової евристики на основі аналізу сигналів модулів 7а-9а і 15а, 20а, 23а. 17а. Блок ваг некоректно обчислених вихідних сигналів. Функція - обчислення ваги кожної нового некоректного сигналу на підставі сигналів модулів 5а і 7а і запис, читання, збереження і видача по запиті. Склад - логічний модуль. Робота - обчислення ваги нового некоректного сигналу і запис його у власний модуль пам'яті, що модифікується. 18а. Аналізатор типу некоректних вихідних сигналів. Функція - генерація типу помилки вихідного сигналу в результаті порівняння й аналізу сигналів модулів 13а і/чи 14а і 21а. Склад - логічний модуль. Робота - генерація типу помилки вихідного сигналу в результаті порівняння й аналізу сигналів модулів 13а і/чи 14а і 21а. 19а. Модуль оцінки ефективності евристики. Функція - генерація ваги заданої евристики. Склад - логічний пристрій. Робота - генерує сигнал, що залежить від числа успішних застосувань даної евристики і загального числа її застосування. 20а. Модуль збереження, що модифікується, списку типу некоректних вихідних сигналів. Функція - для збереження унікальних типів некоректних вихідних сигналів і запису нових типів некоректних вихідних сигналів. Склад - логічне запам'ятовуюче пристрій. Робота - збереження списку типу помилок і запис нових типів помилок у модуль пам'яті, що модифікується. 21а. Перемикач версій тестуємого А і/чи ПЗ. Функція - для включення необхідної версії А і/чи ПЗ. Склад - логічний селектор. Робота - включає необхідну версію А і/чи ПЗ з метою перевірки можливості генерування в ній конкретного вихідного некоректного сигналу. 22а. Модуль перевірки відтворюваності результату. Функція - для перевірки відтворюваності результату. Склад - логічний пристрій. Робота - подає на блок генерації вихідного сигналу (модуль 3а) новий згенерований вихідний некоректний сигнал і запускає повний цикл перевірки цього сигналу. 23а. Модуль обчислення статистики. Функція - для обчислення спектра сигналів, що характеризують статистику роботи автомата. Склад - логічний пристрій. Робота - на підставі даних модулів 1а-9а, 11а-15а, 18а-21а обчислює спектр сигналів, що характеризують статистику роботи автомата, що необхідно для оцінки ефективності роботи автомата і керування автоматом. 24а. Блок збереження статистики. Функція - для збереження спектра сигналів, що характеризують статистику роботи автомата. Склад - логічний пристрій. Робота - зберігає дані, отримані модулем 23а. 25а. Таймер. Функція - для визначення максимального часу, виділеного для виконання даної операції. Склад - логічний тимчасовий пристрій. Робота - фіксує час, витрачений на виконання поточної операції і при перевищенні граничного часу, генерує спеціалізований сигнал помилки. 26а. Блок загального керування. Функція - керування послідовністю тестування А і/чи ПЗ. Склад - логічний пристрій. Робота - керує роботою автомата, викликаючи дані всіх модулів, крім 1а і 4а, і передаючи дані всім модулям, крім 1а, 4а, 5а і 25а. Розглянемо роботу модулів автомата. У модуль 1а вручну вводяться дані по первісній точності порівняння сигналів, число перевірок у тесті на відтворюваність, число версій тестуємого А і/чи ПЗ. Модуль 1а ініціалізує роботу всіх модулів автомата, усіх тестуємих версій А і/чи ПЗ. Модуль 1 а починає запис усіх робітник сигналів у модуль 2а. Далі модуль 1а передає керування модулю 4а, що і здійснює всі належні операції керування автоматом. У випадку фатального збою чи автомата А і/чи ПЗ, керування автоматично повертається модулю 1а. Модуль 4а ініціалізує свій внутрішній лічильник числа операцій, запитуючи при необхідності його поточне значення з модуля пам'яті 2а. Блок керування 4, а конкретно, модуль 26а, запитує в модуля пам'яті 7а вихідний некоректний сигнал і передає його модулю За, можливо, у залежності від поточного стану автомата, попередньо перетворивши його за допомогою модуля 8а. Блок 2, а конкретно, модулі 11а і 12а, передають пари вихідних сигналів, згенерованих двома незалежними способами з вхідного сигналу блоку 6, а конкретно, модулю 13а, що порівнює різниця між сигналами у вихідній парі і передає результати порівняння блоку 8, а саме, модулю 18а. У блоці 8 при нормальній роботі тестуємого А і/чи ПЗ різницю між сигналами у вихідній парі дорівнює нулю, а розбіжність різниці між сигналами у вихідній парі ідентифікується як помилка в тестуємом А і/чи ПЗ. Спектр відхилення від нуля різниці між сигналами у вихідній парі вказує на тип помилки в тестуємом А і/чи ПЗ. При виникненні ненульової різниці між сигналами в блоці 8 сигнали фільтруються, перетворяться, мінімізуються модулем 15 а і класифікуються за допомогою модулів 18а, 21а і 22а, а результат записується в блок пам'яті 7. Далі блок 8, а саме, модуль 22а, передає керування блоку 9 (конкретно - модулю 23а), що після завершення своєї роботи передає керування модулю 24а, що, у свою чергу, передає керування блоку 4, а саме, модулю 26а, і цикл роботи автомата повторюється із самого початку. У випадку, якщо на якому-небудь етапі роботи відбувається фатальний збій чи автомата тестуємого А і/чи ПЗ, блок 1, а конкретно, модуль 4а, запитує сигнали, необхідні для подальшого керування з блоків 7, а саме, з модуля 2а і модулі 24а, і блоку 9, а конкретно, модуля 23а, ініціалізує роботу всіх блоків і модулів і робота автомата продовжується. На модуль 5а надходять сигнали з модулів 1а і 4а, він підраховує загальну кількість циклів перевірок, початих автоматом, але можливо не завершених через фатальний збій тестуємого А й/чи ПО чи самого автомата, що потрібно для генерації модулем 2 3 а і модулями 17а-20а сигналу, що показує ефективність керування і необхідних модулю 26а для генерації сигналів керування роботою автомата. На модуль ба надходять сигнали переривання з модуля 3а (куди вони, у свою чергу, надходять з модулів 10а-12а), породжувані тестуємої системою в процесі виконання операцій, далі модуль ба модифікує отримані сигнали і передає їх модулю 26а, що здійснює загальне керування роботою автомата. Модуль ба записує результати у свій внутрішній блок пам'яті і видає їх по запиті модулів 16а-20а, 22а і 23а. Модуль 9а одержує з модулів 3а і 4а вихідні сигнали, що генерувалися некоректно хоча б в одній попередній версії А і/чи ПЗ, чи приводили до фатального збою хоча б однієї попередньої версії А і/чи ПЗ, зберігає, записує і передає по запиті сигнали модулів 10а-12а. Блок 2 складається з модулів 10а-12а. Модуль 10а одержує сигнали з модуля 9а, перетворить їх за допомогою сигналів з модуля 8а, генерує новий вхідний тестуємий сигнал за допомогою модуля 7а і передає його модулям 11a і 12а. Модуль На одержує сигнали з модуля 10а, перетворить їх за допомогою внутрішньої логіки, генерує перший вхідний сигнал пари вихідних порівнюваних сигналів за допомогою модуля 7а і передає його модулю 13а. Модуль 12а одержує сигнали з модуля 10а, перетворить їх за допомогою внутрішньої логіки, генерує другий вхідний сигнал пари вихідних порівнюваних сигналів за допомогою модуля 7а і передає його модулю 13а. Блок 6 складається з двох компараторів - модуля 13а (головного компаратора) і модуля 14а (допоміжних компараторів). Модуль 13а - головний компаратор (швидкий, неспеціалізований) робить порівняння першого і другого сигналу пари вихідних порівнюваних тестуємих сигналів і генерує результуючу нормалізовану різницю між першим і другим сигналами пари вихідних порівнюваних тестуємих сигналів, а у випадку, якщо порівняння неможливе здійснити, генерує спеціалізований сигнал помилки. Модуль 14а - блок допоміжних компараторів (повільних, спеціалізованих) робить порівняння першого і другого сигналу пари вихідних порівнюваних тестуємих сигналів і генерує результуючу нормалізовану різницю між першим і другим сигналами пари вихідних порівнюваних тестуємих сигналів, у випадку коли головний (неспеціалізований) компаратор згенерував спеціалізований сигнал помилки. Розбивка компараторів на модуль 13а і модуль 14а виконаний у метою прискорення роботи автомата. Таким чином, на підставі вищевикладеного, можна зробити висновок, що задача, поставлена у винаході розробка нового автомата пошуку помилок, що дозволяє автоматично знаходити помилки в деяких типах апаратного і/чи програмного забезпечення - виконаний з досягненням технічного результату - прискорення і повноти пошуку помилок.
ДивитисяДодаткова інформація
Назва патенту англійськоюDevice for automatically detecting equipment faults proposed by bondarenko v.v.
Назва патенту російськоюУстройство для автоматического обнаружения неисправностей оборудования, предложенное бондаренко в.в.
МПК / Мітки
МПК: G05B 19/00, G05B 23/00
Мітки: автомат, бондаренка, пошуку, помилок
Код посилання
<a href="https://ua.patents.su/8-65026-avtomat-bondarenka-poshuku-pomilok.html" target="_blank" rel="follow" title="База патентів України">Автомат бондаренка пошуку помилок</a>
Попередній патент: Похідні резорцину, фармацевтична композиція на їх основі та спосіб відбілювання шкіри або зменшення пігментації шкіри у людини
Наступний патент: Термостійке покриття і спосіб його одержання
Випадковий патент: Спосіб протипожежного захисту резервуара для транспортування та(або) зберігання вогненебезпечної рідини