主要内容

使用SystemVerilog中生成的DPI函数

要在SystemVerilog环境中使用生成的DPI组件,首先要在SystemVerilog模块中导入带有“DPI”声明的生成函数。然后,调用和调度生成的函数。在编译包含导入生成函数的SystemVerilog代码时,请使用支持dpi的SystemVerilog编译器并指定组件文件名。

下面的示例演示为DPI_blk块向SystemVerilog模块添加生成的DPI组件。

  1. 导入生成的函数:

    导入“DPI”函数void DPI_blk1_initialize();导入“DPI”函数void dpi_blk1_outtut(输出真实的blk1_Y_Out1);import "DPI"函数void DPI_blk1_update(输入真实的blk1_U_On1);
  2. 调用初始化函数。

    DPI_blk1_initialize ();
  3. 安排输出而且更新函数调用:

    DPI_blk1_output (blk1_Y_Out1);DPI_blk1_update (blk1_U_In1);

例子

导入“DPI”函数void DPI_blk1_initialize();导入“DPI”函数void dpi_blk1_outtut(输出真实的blk1_Y_Out1);import "DPI"函数void DPI_blk1_update(输入真实的blk1_U_On1);模块test_twoblock_tb;初始化开始DPI_blk1_initialization();DPI_blk1_output(blk1_Y_Out1);DPI_blk1_update (blk1_U_In1);end always@(posedge clk) begin blk1_U_In1 = blk1_U_In1 + 1.0;结束
Baidu
map