Экспорт задач к 'C использование DPI

Это потому, что перенаправления имеют более высокий приоритет, чем другие команды. Здесь файл1 будет очищен перед выполнением каких-либо операций с ним

6
задан Greg 8 November 2016 в 20:40
поделиться

2 ответа

На самом деле я изобразил его что-то вроде этого.

//--From RTL ---
export "DPI" task reg_read;

task reg_read;
   input int nAddr;
   output int nVal;

 // -- read implementation --

endtask

// -- From C code
extern void reg_read (int nAddr, int *pVal);

void test_read (void)
{
   int nRegVal;

   // Dummy checking !!
   reg_read (0x100, &nRegVal);
}

// -- Again in RTL --
import "DPI" context task test_read ();

Это работает на меня использующий ncverilog.

3
ответ дан 17 December 2019 в 04:52
поделиться

Круто ... Я действительно написал статью на эту тему. ссылка

В документе фактически экспортируются операции чтения и записи регистров и прочее через DPI, а затем добавляется интерпретатор TCL, чтобы вы могли использовать TCL для управления симулятором. Это было то, что любили парни из лаборатории, так как все их инструменты уже находятся на Tcl.

Вы можете просто следовать инструкциям, чтобы интегрировать вызовы функций из C в SV через DPI, а затем остановиться, когда в игру вступят материалы TCL.

1139524]

2
ответ дан 17 December 2019 в 04:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: