Отладка в окне Dataflow
Трассирование событий

        Другим прекрасным средством отладки является трассирование событий, которые имеют непредсказуемые выходные значения. Используя окна Dataflow встроенного просмоторщика Wave, вы можете трассировать обратно от перехода к процессу или сигналу, виновному в непредсказуемом выходном значении.

        1. Установите поведение по умолчанию для того, чтобы показать драйверы в окне Dataflow, когда кликнете дважды на сигнал в окне Wave.
        а. Кликните на вкладку Wave.
        б. Выберите Wave > Wave Preferences. Открывается диалог Wave Window Preferences.
        в. Выберите Show Drivers in Dataflow Window в меню Double-click will: затем кликните OK. (рис. 10-5).

        2. Добавление объекта в окно Dataflow.
        а. Проследите, чтобы элемент р был выбран в окне Structure (sim).
        б. Перенесите сигнал t_out из окна Objects в окно Dataflow.
        в. Кликните на иконку Show Wave для открытия просмоторщика Wave, если он ещё не открыт. Вам может потребоваться увеличение размера окна Dataflow, чтобы увидеть всё (рис. 10-6).

        3. Трассирование входов вентиля nand.
        а. Дважды кликните на процесс #NAND#50 (помечено line_71 в VHDL версии) в просмотощике Dataflow. Активный дисплей сменится видом исходного кода, а голубая стрелка выделяет декларирование вентиля NAND (рис. 10-7).

        б. Кликните на вкладку Dataflow, чтобы вернуться в окно Dataflow. Все входы и выходы сигналов процесса отображаются в просмоторщике Wave.
        в. В просмоторщике Wave прокрутите до последнего перехода сигнала t_out.
        г. Кликните справа от последнего перехода сигнала t_out. Курсор должен приклеиться ко времени 2785 нс (рис. 10-8).

        д. Дважды кликните справа от последнего перехода сигнала t_out. Активный экран должен смениться обратно на вид исходного кода. Однако сейчас, сигнал t_out выделен (рис 10-9).

        е. Кликните на вкладку Dataflow, чтобы вернуться в окно Dataflow.
        ж. Сигнал t_out в просмоторщике Dataflow должен быть выделен. Кликните на выделенный сигнал, чтобы сделать его активным, затем выберете Tools > Trace > Trace next event, чтобы трассировать до первого действующего события. ModelSim добавляет курсор в просмоторщик Wave, чтобы пометить последнее событие – переход строба в 0 на 2745 нс – которое является причиной выхода of St1 по t_out (рис. 10-10).

        з. Выберите Tools > Trace > Trace next event два и более раз, и следите за прыжками курсора на следующее событие.
        и. Выберите Tools > Trace > Trace event set.
        Диаграмма Dataflow создаст отводы до предыдущих процессов и покажет вход драйвера сигнала strb (рис. 10-11). Обратите внимание, что просмоторщик Wave тоже показывает входы и выходы сигналов новых выбранных процессов.

        Вы можете продолжить трассировку событий в этой манере через весь проект: выбирайте Trace next event, пока не дойдёте до интересующего перехода в просмоторщике Wave, а затем выбирайте Trace event set, чтобы обновить диаграмму процесса Dataflow.

        4. Когда вы закончите, выберите File > Close Window , чтобы закрыть окно Dataflow.

<< Назад     Оглавление     Далее >>
Хостинг от uCoz