'

Автоматическое построение тестов для аппаратного обеспечения с использованием разрешения ограничений

Понравилась презентация – покажи это...





Слайд 0

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


Слайд 1

2 Место задачи в разработке аппаратного обеспечения ... output sm_out; reg [1:0] c, next_state; always @ (posedge sm_cl) begin    if (reset == 1'b1) c <= 2'b00;    else c <= next_state; end ... требования design на Verilog готовый микропроцессор тестирование design’а


Слайд 2

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 отдельного модуля через входные и выходные сигналы


Слайд 3

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


Слайд 4

5 Подход model-based testing модель тестируемой системы элементы модели («ситуации») test case’ы тесты оценка достигнутого покрытия надежное полный набор тестов ? ?


Слайд 5

6 Генерация тестов на основе моделей модели шаблоны тестов тесты структурные: модели внутреннего состояния микропроцессора (кэши, таблицы страниц) функциональные: модели инструкций (варианты исполнения) 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, z @ divbyzero LOAD y, x, c @ l1hit


Слайд 6

7 Что это за test case’ы «тестовые шаблоны» DIV x, y, z @ divbyzero LOAD y, x, c @ l1hit элементы моделей структура теста


Слайд 7

8 Модели ? шаблоны комбинаторный метод: цепочка инструкций зависимости варианты исполнения инструкций DIV LOAD divbyzero … l1hit … модель ADD norm … DIV LOAD x, y, y, x, z c @ divbyzero @ l1hit тестовый шаблон


Слайд 8

9 Шаблоны ? тесты шаблон ? уравнения ? тест «ограничение» – «уравнение» «разрешение» ограничений – в смысле не «allow», а «satisfy» уравнения решает внешний инструмент


Слайд 9

10 Пример ADD x, y, z @ norm CMP x, y @ equal ADD norm (a,b,c) : a = b+c CMP equal (a,b) : a = b 0?x0,x1,y0,z0<232 x1 = y0 + z0 x1 = y0 y0 = 1 z0 = 0 MOV y, 1 MOV z, 0 ADD x, y, z CMP x, y 1. тестовый шаблон: 1. модель: 2. система уравнений: 3. ее решение: 4. тестовая программа инициализация


Слайд 10

11 Сложность задачи пространство тестов пространство тестов, соотв. шаблону чем длиннее тест, тем меньше эта область


Слайд 11

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


Слайд 12

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


Слайд 13

14 Эксперименты


×

HTML:





Ссылка: