Вопросы по теме 'uvm'

UVM: недопустимая комбинация драйвера и предупреждения о процедурном назначении
У меня есть испытательный стенд UVM для небольшого блока в моем чипе. В нем есть агент с драйвером, который управляет данными в виртуальном интерфейсе, который выглядит примерно так: interface my_if (input bit clk); logic [3:0] opcode; //...
8032 просмотров
schedule 23.03.2022

Запрос фазы UVM
У меня есть пара вопросов в связи с фазами UVM build() и run() . Они могут быть применимы и к другим методологиям проверки. a> Почему этап build() выполняется в порядке сверху вниз. Означает ли это, что нам нужно обновить все компоненты на...
2923 просмотров
schedule 27.06.2023

Как я могу использовать foreach и fork вместе, чтобы делать что-то параллельно?
Этот вопрос не относится к UVM, но пример, над которым я работаю, связан с UVM. У меня есть множество агентов в моей среде UVM, и я хотел бы запустить последовательность для всех из них параллельно. Если я сделаю следующее: foreach...
11541 просмотров
schedule 23.02.2023

вызов $dumpvars() из задачи
Есть ли способ вызвать $dumpvars, $dumpon $dumpoff из body() последовательности? Можно из задачи модуля. Мне нужно контролировать $dumpon $dumpoff, чтобы дамп не был слишком большим. Альтернативным способом было бы включить бит top.dump_on в...
8111 просмотров
schedule 21.09.2022

Может ли UVM пометить неверный аргумент командной строки?
Я использую аргументы командной строки UVM для установки свойств конфигурации в иерархии UVM. Когда я передаю неправильный параметр конфигурации, я хотел бы видеть UVM_ERROR или другое указание на ошибку. Какой самый простой способ сделать это?...
1000 просмотров

system verilog - uvm - последовательно ждать pkt
Я запускаю system-verilog в uvm. Я хочу отправить запрос в своей последовательности и дождаться ответа pkt. как мне это сделать? Спасибо за любую помощь.
1856 просмотров
schedule 29.06.2023

Поддерживает ли UVM вложенные / внутренние классы?
Рекомендации по коду для нашей среды проверки - по одному классу на файл. Иногда uvm_object требуется только 1 другому uvm_component , поэтому, следуя объектно-ориентированной теории, мы должны использовать вложенные / внутренние классы....
1530 просмотров

Что означает предупреждение о попытке прогнозирования при доступе к регистру?
У меня среда проверки UVM. В моей тестовой последовательности я читаю (зеркально) из REGA через FRONTDOOR (последовательная транзакция) при получении прерывания. В моем табло я использовал методы .predict для обновления ожидаемых значений...
3328 просмотров
schedule 20.06.2022

Как выполнить uvm_do_on без рандомизации?
У меня есть виртуальный секвенсор, из которого я параллельно выполняю три транзакции, каждая на соответствующем секвенсоре. Итак, у меня есть что-то вроде этого: class top_vseqr extends uvm_seqr extends uvm_sequencer; type_a_seqr seqr_a;...
6182 просмотров
uvm
schedule 10.04.2022

Как контролировать выходы DUT из теста / последовательности?
Я новичок в UVM. Пока мне удалось создать следующую среду для моего DUT. Агенты с мониторами, драйверами и последовательностями для всех интерфейсов ввода-вывода из моего DUT. UVM env верхнего уровня. Последовательности для отправки...
2616 просмотров
schedule 17.01.2023

Как контролировать порядок абонентов порта анализа UVM?
У меня есть порт анализа, подключенный к 3 табло. Когда запись выполняется в порт анализа, подписчики (табло) вызываются в определенном порядке. Но я хочу, чтобы они вызывались в другом порядке. Пример практического использования явного...
1842 просмотров
schedule 14.03.2022

UVM: управляющие часы через интерфейс
Я хотел бы иметь возможность управлять парой часы / данные в интерфейсе UVC. Управление данными относительно простое. Где меня заворачивают вокруг акселя, так это часы. Как я могу управлять часами в интерфейсе, чтобы их можно было включить или...
1460 просмотров
schedule 17.04.2023

Руби и SystemVerilog DPI
Функциональность DPI в System Verilog всегда упоминает, что вы можете взаимодействовать с любым языком, наиболее распространенным из которых является C/C++. Я хочу связать мой системный код Verilog с Ruby. Есть ли какая-либо документация или...
1090 просмотров

как избавиться от tr_db.log в uvm-1.2?
По умолчанию UVM-1.2 генерирует файл "tr_db.log". Довольно неудобно запускать длительные симуляции при генерации этого файла. Как я могу отключить его?
585 просмотров
schedule 09.03.2023

uvm set_inst_override для последовательности
Я пытаюсь переопределить последовательность по экземпляру. Пример кода лучше всего это описывает: class my_vir_seq extends base_vir_seq; my_seq_c seq1, seq2; `uvm_object_utils_begin(my_vir_seq) `uvm_field_object(seq1, UVM_ALL_ON)...
4589 просмотров
schedule 03.10.2022

Specman UVM: В чем разница между прямым доступом к регистру и использованием read_reg_val()?
Я работаю с пакетом vr_ad для e. Я определил регистр my_reg в vr_ad_reg_file my_reg_file : reg_def MY_REG MY_REG_FILE 20'h00018 { reg_fld my_reg_field : uint (bits : 32) : RW : 0x0; }; Я хотел бы получить доступ к значению...
183 просмотров
schedule 14.10.2023

Виртуальный секвенсор UVM: выберите правильный дочерний секвенсор
У меня вопрос по виртуальному секвенсору в UVM. Давайте представим, что у меня есть N равных интерфейсов, управляемых N равными драйверами, каждый из которых подключен к собственному секвенсору. Я хочу сделать такую ​​транзакцию, как: class...
4584 просмотров
schedule 18.10.2022

Условия гонки назначения блокировки UVM
У меня есть сомнения по поводу условий гонки в SystemVerilog, особенно в UVM. В стандартном случае у нас есть несколько драйверов, которые управляют нашим дутом на одном и том же фронте часов, генерируя некоторые вызовы функций на табло. Эти вызовы...
1127 просмотров
schedule 24.05.2023

В чем смысл объекта класса внутри его определения class-endclass?
В чем смысл следующего кода (2-я строка), в котором внутри определения класса uvm_resource_pool создается экземпляр (объект) rp? class uvm_resource_pool; static local uvm_resource_pool rp = get(); // Function: get // // Returns the...
119 просмотров
schedule 27.07.2023

Реализация UVM-агента в подчиненном режиме
У меня есть подчиненная модель, реализованная в uvm_agent . Под «ведомым» я имел в виду, что он не может сам инициировать транзакцию. Транзакция всегда инициируется другой стороной (главным DUT). Таким образом, это своего рода пассивный агент...
3569 просмотров
schedule 26.03.2024