ОПИСАНИЕ СТЕНДА ПРОВЕРКИ КУРСОВОЙ РАБОТЫ

Данный стенд выполнен в проекте begin. qpf и предназначен для автоматической проверки правильности выполнения синтеза автоматов МИЛИ и МУРА.

Автоматы для исследования могут быть представлены в двух видах:

    В виде схемотехнического файла (.bdf) В виде файла VHDL файла (.vhd)

Стенд представляет собой довольно сложную систему, состоящую из трех основных частей:

    Блока генерации входной последовательности и эталонов для конкретного варианта Блока тестирования Блока, содержащего спроектированные студентами автоматы

Стенд специально разработан под действующие варианты заданий. При проверке учтены переходы в неопределенные состояния. Если при проектировании автоматов была использована рекомендованная кодировка, то студентам не требуется проводить изменения в настоящем стенде

Рассмотрим структуру выходного векторного файла Waveform1.vwf, с помощью которого можно судить о результатах тестирования:

Развернутая структура сигналов, позволяющая наиболее полно рассмотреть функционирование автоматов, рассмотрена ниже:

Рассмотрим пример векторного отчета, отражающего правильное функционирование автоматов МИЛИ и МУРА:

Зеленым цветом обведены выходные сигналы стенда rez, rez_y и rez_myra. Как нетрудно заметить, они постоянно находятся в положении логической 1. Это свидетельствует о правильном функционировании обоих автоматов.

Значком отмечены сигналы t, y_sch и m, являющиеся выходами спроектированных студентом автоматов, что означает правильность выдаваемых ими последовательностей.

НЕ нашли? Не то? Что вы ищете?

Случаи неправильного функционирования автоматов в примерах

Автомат МИЛИ неправильно функционирует из-за ошибки в проектировании функций, отвечающих за состояния автомата МИЛИ

Сигнал rez обведен красным цветом из-за наличия ошибки в переключении состояний.

Синим цветом обведены позиции, на которые необходимо обратить внимание для выявления ошибки.

ОШИБКА 1 связана с тем, что автомат МИЛИ при поступлении на вход комбинации x1=0, x2=1 из состояния S0 переключился в состояние S3 вместо состояния S1, что и сказалось на значении выходного сигнала rez.

ОШИБКА 2 связана с тем, что автомат, находясь в состоянии S1 при поступлении входной комбинации x1=1, x2=0, не переключился в состояние S3, оставшись в состоянии S1.

ОБРАТИТЕ ВНИМАНИЕ! В случае ОШИБКИ 2 красные стрелки указывают на сигналы s_true[1] и t1, являющиеся составляющими результирующих сигналов s_true и t, так как именно из-за функции, отвечающей за сигнал t1, возникает ошибка, влияющая на правильную работу всей схемы. В этом случае студенту следует обратить внимание на нее и исправить недочет.

Автомат МИЛИ неправильно функционирует из-за ошибки в проектировании функций, отвечающих за выход автомата МИЛИ

ВНИМАНИЕ!! Из-за особенности автомата МИЛИ сразу менять выходной сигнал с изменением состояния следует учитывать, что значение выхода автомата МИЛИ смещено на 1 такт раньше, чем идеальное значение, выдаваемое стендом (помечено синими линиями на схеме).

В данном примере ошибка связана с несоответствием сигналов y1 и y2 с идеальными сигналами стенда y_true[2] и y_true[1] соответственно. Так, как состояния тестируемого автомата переключаются верно, ошибки следует искать в данном случае в функциях, отвечающих за сигналы y1 и y2.



Автомат МУРА неправильно функционирует

.

К сожалению, если возникает ошибка в работе автомата МУРА локализовать ее сложнее, чем в автомате МИЛИ, так как заранее невозможно предусмотреть состояния, которые будут выбраны студентом при синтезе автомата МУРА.

В данном примере показано, что ошибка возникает из-за того, что сигналы m1 и m2 не соответствуют идеальным значениям соответствующих им сигналов y_true[2] и y_true[1]. Так как значения состояния автомата МУРА также выводятся на схему (сигнал tt) студенту следует начать отладку с перепроверки составленной им таблицы соответствия состояния и выходного сигнала. Затем следует перепроверить все функции, отвечающие за соответствующие выходные сигналы.