Формат файла тестовых векторов

Пример файла тестового вектора:

# мой тестовый вектор для add32
A[8]      B[8]      C[8]      Cin Cout
0000_0000 0000_0000 0000_0000 0   0
-2        0x05      3         0   0
0         0o3       3         0   0

Формат файла тестовых векторов чрезвычайно прост. Заголовки столбцов соответствуют именам входных и выходных контактов схемы, а расположенные ниже строки содержат наборы проверяемых значений.

Пустые строки при чтении файла игнорируются. Любой текст после символа решётки «#» считается комментарием.

Первая непустая строка без комментариев должна перечислять имена всех входных и выходных контактов схемы, разделённые пробелами. Если контакт является шиной (разрядность больше 1 бита), то после его имени необходимо в квадратных скобках указать его разрядность (например, A[8]). Начинающие пользователи часто забывают указать разрядность шин в заголовке, что приводит к ошибкам разбора файла.

ПРИМЕЧАНИЕ: Разрядность шины не обязательно должна совпадать с количеством символов в записываемом значении. Например, 4-битное десятичное значение 13 может быть представлено как двоичное 1101 (или 00001101), шестнадцатеричное 0x0d, восьмеричное 0o15 и т. д.

Каждая последующая строка файла задаёт один шаг тестирования и содержит значения сигналов для каждого столбца, разделённые пробелами.

Значения могут быть записаны в шестнадцатеричном, восьмеричном, двоичном или десятичном формате со знаком:

Для повышения читаемости вы можете использовать символы подчёркивания (_) в любых числовых значениях (они игнорируются при разборе). Примеры: 0x0000_1111, 0o1234_5670, 1111_0000, 1_234 или -5_000.

В шестнадцатеричных, восьмеричных и двоичных значениях символ «x» (строчная латинская «x») обозначает «безразличное» (don't care) состояние битов (соответственно четыре, три или один бит). Например, значение 101xx представляет собой 5-битное двоичное число с двумя младшими неопределёнными битами, а 0x1ax5 — шестнадцатеричное число с четырьмя неопределёнными битами в середине. Использование безразличных состояний в десятичных числах не допускается.

Назад: Окно тестовых векторов | Далее: Специальные значения.