Перейти к содержанию
    

Verilog VPI

Для верификации проекта в ModelSim используется VPI.

Столкнулся с проблемой. Нужно по сигналу записи в буфер записывать в него данные извне (из другого симулятора). Как используя Verilog VPI отследить наличие сигнала записи и вызвать какую-то функцию?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Устанавливаете свой обработчик на изменение сигнала записи. И далее обрабатываете.

 

init(.....) {

.....

proc = mti_CreateProcess("p1", my_proc, ports);

mti_Sensitize(proc, ports->wr, MTI_EVENT);

....

}

 

static void my_proc (void *param)

{

тут делаем все, что нам нужно

}

 

 

В папке examples modelsim примеров очень много.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Fli, pli какая разница моделсиму все равно.

 

Идите в папку MODELSIM/examples/vpi

И смотрите в файле vpi_test.c как инициализировын вызов $traverse, который обрабатывает функция vpit_TraverseDesign(PLI_BYTE8 *user_data).

В том же файле смотрим на static void vpit_DumpModuleInfo( vpiHandle parent ) .

 

А в файле ./include/vpi_user.h видим ф-ии

XXTERN void vpi_get_value PROTO_PARAMS((vpiHandle expr,

p_vpi_value value_p));

XXTERN vpiHandle vpi_put_value PROTO_PARAMS((vpiHandle object,

p_vpi_value value_p,

p_vpi_time time_p,

PLI_INT32 flags));

 

Вызов вашей ф-ии из verilog производить по фронту сигнала записи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...