kirill70674 5 7 ноября, 2023 Опубликовано 7 ноября, 2023 · Жалоба Здравствуйте, коллеги В данный момент генерацию клоков осуществляю с помощью модуля с подобным объявлением: clk_gen #( .CLK_F_MHZ(<частота в МГц>), .RST_DUR_NS(<длительность ресета в нс>) ) i_clk_gen( .clk_o(), .rst_n_o() ); Нахожу данный подход гибким и легко переиспользуемым в других проектах. Слышал, что для UVM применяют неких специализированных агентов. Использовал ли их кто-нибудь? Т.е. что это за зверь? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
one_eight_seven 6 7 ноября, 2023 Опубликовано 7 ноября, 2023 · Жалоба Да обыкновенный UVM агент. сигналы в hdl часть идут через SystemVerilog interface, а управляется всё из классов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kirill70674 5 8 ноября, 2023 Опубликовано 8 ноября, 2023 · Жалоба Т.е. что-то вроде этого https://github.com/imokanj/clk_rst_agent/blob/master/src/agent/clk_driver.svh ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
one_eight_seven 6 9 ноября, 2023 Опубликовано 9 ноября, 2023 (изменено) · Жалоба в том плане, что есть интерфейс и после использование его в классах через virtuall interface - да Реализация же. наоборот - пример того, как никогда делать не надо, что sequence item, что секвенции с их рандомизацией, что управление частотой и т.п. Ваш модуль лучше многократно, чем предложенная реализация. Изменено 9 ноября, 2023 пользователем one_eight_seven Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться