Цитата(AVR @ Jun 22 2018, 15:10)

В книге "Getting Started with UVM. A Beginner's Guide" есть такой фрагмент:
Мне непонятно - это ошибка? По моему представлению, в терминологии UVM port это вход, а export - выход. Тогда непонятно, почему в данном примере мы соединяем export у scoreboard-а и port у монитора. Как так получилось, что scoreboard, которое лишь собирает статистику (принимает некий поток пакетов/сообщений/транзакций), тут подключается export-ом. А монитор, который сидит на шине и собирает данные, наоборот, подключается port-ом?
Ошибка ли это? Ведь это именно монитор порождает данные для анализа, а scoreboard их лишь получает и анализирует.
Дальше в книге действительно пишут что port монитора коннектим к export у scoreboard-а или coverage. В то же время ранее в книге seq_item_export sequencer-а подключен к seq_item_port драйвера, т.е.
export->port.
Извините конечно, но у вас каша в голове. Лучше почитайте user guide на TLM.
По факту не знаю что это за книжка, и что за порты они соединяют, но предположу, что в мониторе как и везде стоит обычный uvm_analysis_port а в scoreboard у них uvm_subscriber'ы, которые содержат "analysis_export" который по факту является imp портом с единственным write методом. А т.к. scoreboard используется не для сбора статистики как вы пишите, а для проверки отправленных и принятых данных, то обычно делают в самом scoreboard именные imp порты и соединяют их с портом монитора. Но в данной книжке видимо решили усложнить себе жизнь и обернули еще и в subscriber