Project

General

Profile

Development Milestones » History » Version 2

Alexander Kamkin, 04/02/2014 09:00 AM

1 1 Alexander Kamkin
h1. Development Milestones
2
3 2 Alexander Kamkin
h2. Version 2 (deadline: 31/08/2014)
4 1 Alexander Kamkin
5 2 Alexander Kamkin
MicroTESK v2 should fully support instruction set specifications and random/combinatorial template-based test program generation. This is the minimal functionality that makes the MicroTESK tool useful.
6 1 Alexander Kamkin
7 2 Alexander Kamkin
h3. Version 2.0 (deadline: 30/04/2014)
8 1 Alexander Kamkin
9 2 Alexander Kamkin
* _Test Situations_
10
** Manual description of test situations in Java and XML should be supported
11
** Test situations should be accessible from test templates (corresponding solvers should be invoked, and generated data should be substituted into the test program)
12
** Each instruction should have a top-level test situation (by default, the top-level situation is @Random@)
13
** There should be a configuration file assigning top-level test situations to instructions (@Random@, @Zero@, etc.)
14
* _Initialization Code_
15
** Manual specification of initialization code (for each access mode) should be supported
16
** Automated extraction of initialization code (for each access mode) should be implemented
17
* _Exceptions_
18
** Mechanism for specifying exceptions should be clarified (probably, a predefined function, like @RaiseException@, should be introduced)
19
** Means for describing exception handling logic should be added
20
* _Branch Instructions_
21
** Facilities for defining/using labels in test templates should be revisited
22
** Combinatorial test program generation based on test templates with branch instructions should be implemented
23
* _Documentation_
24
** All new facilities should be documented
25
26
h3. Version 2.1 (deadline: 31/05/2014)
27
28
* полная поддержка языка nML
29
** поддержка алиасов регистров
30
** поддержка вызовов операций из операций
31
* поддержка вызовов шаблонов из других шаблонов
32
* поддержка самопроверяющих тестовых программ
33
* поддержка архитектур с широким командным словом (VLIW)
34
35
h3. Version 2.2 (deadline: 30/06/2014)
36
37 1 Alexander Kamkin
# поддержка композиции тестовых ситуаций
38
## дизъюнктивная композиция (случайный выбор на основе весов)
39
## конъюнктивная композиция (с возможностью указания "жестких" и "мягких" ограничений)
40
# поддержка декомпозиции тестовых ситуаций (представление тестовой ситуации в форме дизъюнктивной композиции уточняющих ситуаций - импликантов)
41
## например, путем построения BDD: @rule(situation)@
42
## или с помощью других методов генерации тестов для реализаций логических функций
43
## набор правил декомпозиции должен быть расширяемым
44
# поддержка извлечения тестовых ситуаций из кода
45
## тестовая ситуация верхнего уровня (для отдельной инструкции) строится как дизъюнктивная композиция извлеченных ситуаций
46
## если в шаблоне для некоторой инструкции не указана тестовая ситуация, по умолчанию используется ситуация верхнего уровня
47
# поддержка итерации тестовых ситуаций
48
## систематический перебор тестовых ситуаций: @iterate(situation)@ или @iterate(rule(situation))@
49 2 Alexander Kamkin
50
h3. Version 2.3 (deadline: 31/07/2014)
51
52
# вынесение функций работы с тестовым знанием в проект TestBase
53
# создание среды разработки MicroTESK (модуль для Eclipse)
54
# разработка формата трассы выполнения тестовой программы
55
56
Promotion.
57
miniMIPS
58
opencores
59
60
h2. Version 3
61
62
h3. Version 3.0
63
64
# поддержка микроархитектурных спецификаций
65
## спецификация устройства управления памятью
66
## спецификация конвейера микропроцессора
67
# рефакторинг внутреннего представления
68
## унификация с проектом Retrascope
69
70
h3. Version 3.1
71
72
# поддержка многоядерных микропроцессоров
73
74
h3. Version 3.2
75
76
# интеграция с Promela-спецификациями протоколов когерентности