Я написал испытательный стенд UVM, в котором есть 3 агента, и сейчас я пишу табло / средство проверки. Мне нужен модуль проверки для моих утверждений SystemVerilog, но этот модуль проверки должен знать конфигурацию регистра, которая выполняется из теста (и может быть случайной, определяемой во время run_phase теста).
Я не могу понять, как это будет работать? Если бы я должен был создать модуль проверки для своих утверждений и привязать его на верхнем уровне (tb_top) к dut, как этот модуль проверки узнает конфигурацию моего регистра?
Прочитав несколько статей, я решил, что могу написать свой модуль проверки в качестве интерфейса, установив его в tb_top. Но это даст доступ к переменным в моем интерфейсе к UVC. Как интерфейс обращается к переменным в UVC?
Любая помощь приветствуется. Я чувствую, что здесь не хватает чего-то ключевого, так как это, вероятно, делалось много раз раньше.
РЕДАКТИРОВАТЬ: Пожалуйста, не говорите мне, что мне нужно реализовать какой-то API для установки каждой отдельной настройки регистра из моих UVC? Я хочу просто получить дескриптор своего reg_block (или любой другой переменной конфигурации в моих агентах)
reg_block
, вы все равно не сможете использовать его в утверждениях (скорее всего), потому что вам не разрешено использовать объекты класса в утверждениях. - person Tudor Timi   schedule 15.10.2016