Как мне остановить все запущенные последовательности в UVM?

Есть ли способ остановить все запущенные последовательности во время симуляции (скажем, когда вы получаете сброс)? Есть ли способ вывести список всех запущенных последовательностей в определенное время во время симуляции?

2 ответа

Да. sequencer_h.stop_sequence () См. https://verificationacademy.com/cookbook/Sequences/Stopping чтобы узнать, что вам нужно делать и к чему нужно быть осторожным с активным драйвером.

В UVM нет ничего встроенного для выгрузки всех запущенных последовательностей, но если вы используете Questa, есть команда отладки "uvm findsequence", которая выведет их для вас.

Есть немного received_item_done в каждой последовательности. Вы можете подождать posedge этого бита перед остановкой любой конкретной последовательности. Вы можете использовать current_grabber функция из базового класса секвенсора, чтобы получить дескриптор последовательности, которая в настоящий момент имеет блокировку или захват последовательности.

stop_sequences остановит последовательность, загруженную в данный момент на секвенсоре.

Другие вопросы по тегам