C和SystemVerilog联合仿真

想要联合仿真一个c程序和verilog表示的硬件,可以用如下方法(DPI):

  1. 先写一个.c文件funcs.c
#include 
#include "svdpi.h"

extern int sayHello();

void something() {
    printf("something\n");
    sayHello();
}
  1. 再写一个SystemVerilog文件
module haha;
    export "DPI-C" function sayHello;
    import "DPI-C" function void something();
    initial something();
    function int sayHello ();
        $display("hello world");
        sayHello = 1;
    endfunction
endmodule
  1. 运行
xmverilog hello.sv funcs.c

即可

参考:
https://stackoverflow.com/questions/26861400/systemverilog-how-to-connect-c-function-using-dpi-call-in-vcs-simulator

你可能感兴趣的:(c语言,开发语言,硬件工程,测试工具)