Тест-кейсы

На этом слое нет входов и выходов для проверки.

Одна колонка — один сигнал. В строках 0, 1 или x — «не важно»; C во входной колонке — импульс такта (0, затем 1, затем 0). Строки, начинающиеся с #, — комментарии.

Написание тест-кейсов для схемы

Таблица истинности говорит, что схема делает. Тест-кейс говорит, того ли вы хотели. Вы описываете интересующие вас сочетания входов вместе с ожидаемыми выходами, запускаете и получаете вердикт по каждой строке вместо таблицы, которую ещё нужно прочитать.

Это становится важным, как только проект перерастает исчерпывающую проверку. Выше десяти входов полная таблица — это тысячи строк, а по-настоящему значимых случаев обычно единицы: границы диапазонов, распространение переноса, та самая кодировка, которая сломалась в прошлый раз. Записанные, они превращают разбор проекта в повторяемую процедуру: поменяли схему, перезапустили и сразу видите, не сломали ли то, что раньше проходило.

  • Имена колонок сопоставляются с подписями ваших элементов INPUT и OUTPUT.
  • Символ x в колонке выхода означает «не важно» — удобно, когда для данного набора входов определена лишь часть результата.
  • Провалившаяся ячейка показывает полученное значение рядом с ожидаемым, так что расхождение видно сразу, без ручной пересимуляции.
  • Символ C во входной колонке — импульс такта: сигнал идёт 0, затем 1, затем 0, а выходы проверяются, когда схема устоялась. Так проверяют триггеры, регистры и счётчики.
Формат
# полусумматор
A B | S C
0 0 | 0 0
0 1 | 1 0
1 0 | 1 0
1 1 | 0 1

Без C каждая строка симулируется отдельно, и таблица описывает комбинационную схему. С C строки становятся последовательностью: идут сверху вниз от включения питания (все регистры в 0), состояние переходит от строки к строке, а x во входной колонке оставляет прошлое значение. Таблица для 4-битного счётчика — это просто столбец C и значение, которое вы ждёте после каждого импульса.

Читать: таблицы истинности