Автоматическое построение тестов для аппаратного обеспечения с использованием разрешения ограничений проф. А.Петренко, Е.Корныхин.

Презентация:



Advertisements
Похожие презентации
Автоматическое построение тестов для аппаратного обеспечения с использованием разрешения ограничений проф. А.Петренко, Е.Корныхин.
Advertisements

Автоматическое построение тестов для аппаратного обеспечения с использованием разрешения ограничений проф. А.Петренко, Е.Корныхин.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин науч.рук-ль: проф. А.К.Петренко.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин научный руководитель: д.ф.-м.н. А.К.Петренко.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин научный руководитель: д.ф.-м.н. А.К.Петренко.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин науч.рук-ль: проф. А.К.Петренко.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин научный руководитель: д.ф.-м.н. А.К.Петренко.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин научный руководитель: д.ф.-м.н. А.К.Петренко.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин научный руководитель: д.ф.-м.н. А.К.Петренко.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин ИСП РАН / кафедра СП ВМК МГУ научный руководитель:
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин кафедра СП ВМК МГУ научный руководитель: д.ф.-м.н.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин кафедра СП научный руководитель: д.ф.-м.н. А. К.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Корныхин Евгений Валерьевич научный руководитель: д.ф.-м.н. Петренко.
Построение тестовых программ для проверки подсистем управления памяти микропроцессоров Евгений Корныхин ИСП РАН / кафедра СП ВМК МГУ научный руководитель:
Исследование методов генерации программ для тестирования модулей управления памяти микропроцессоров Корныхин Евгений.
Инструменты генерации тестовых данных для функционального тестирования микропроцессоров и интерфейсов программных систем д.ф.-м.н., проф.каф.СП Александр.
Инструменты генерации тестовых данных для функционального тестирования микропроцессоров и интерфейсов программных систем д.ф.-м.н., проф.каф.СП Александр.
Проблемы обеспечения корректности программ и аппаратуры Институт системного программирования Российской академии наук Камкин Александр.
Транксрипт:

Автоматическое построение тестов для аппаратного обеспечения с использованием разрешения ограничений проф. А.Петренко, Е.Корныхин

2 Место задачи в разработке аппаратного обеспечения... output sm_out; reg [1:0] c, next_state; (posedge sm_cl) begin if (reset == 1'b1) c

3 Тестирование designа lui s1, 0x2779 ori s1, s1, 0xc8b9 lui s3, 0x4ee ori s3, s3, 0xf798 add v0, a0, a2 sub t1, t3, t5 add t7, s1, s3 Системное тестированиеМодульное тестирование Тестируется design всего микропроцессора с помощью тестовых программ Тестируется design отдельного модуля через входные и выходные сигналы

4 Системное тестирование Генерация тестов эталонная реализация микропроцессора ( на Си ) Сравнение трасс Возникла ошибка Успешный прогон Симуляция тестовые программы проводится «сравнением с эталоном» ситуации

5 Генерация тестов на основе моделей моделишаблоны тестовтесты структурные: модели внутреннего состояния микропроцессора (кэши, таблицы страниц) функциональные: модели инструкций (варианты исполнения) lui s1, 0x2779 ori s1, s1, 0xc8b9 lui s3, 0x4ee ori s3, s3, 0xf798 add v0, a0, a2 sub t1, t3, t5 add t7, s1, s3 DIV x, y, divbyzero LOAD y, x, l1hit

6 Этап 1: модели шаблоны 1)цепочка инструкций 2)зависимости 3)варианты исполнения инструкций DIV LOAD divbyzero … l1-miss … модель ADD norm … DIV LOAD x,y, x, z l 1-miss тестовый шаблон

7 Этап 2: шаблоны тесты шаблон уравнения тест «ограничение» – «уравнение» «разрешение» ограничений – в смысле не «allow», а «satisfy» уравнения решает внешний инструмент ( Z3 )

8 Пример ADD x, y, norm CMP x, equal ADD norm (a,b,c) : a = b+c CMP equal (a,b) : a = b 0x 0,x 1,y 0,z 0

9 Успешные применения MIPS-совместимый микропроцессор целочисленная арифметика механизмы памяти

10 Успешные применения увеличили допустимый размер тестов (было 2-3, стало 8-10)

11 Успешные применения увеличили допустимый размер тестов (было 2-3, стало 8-10)

12 Успешные применения целочисленная арифметика механизмы памяти MIPS-совместимый микропроцессор увеличили допустимый размер тестов (было 2-3, стало 8-10) новое качество (ситуации в буферах и конвейерах размера 8-10)

13 Эксперименты (таблица) количество инструкций, размеры моделей (в кБ текста), количество тестов, количество шаблонов, количество ошибок непонятно, откуда взять данные для таблицы....

14 Эксперименты кол-во инструкций размеры моделей кол-во тестов кол-во шаблонов кол-во обнаружен ных ошибок