Systemverilog DPI 中的实际参数和形式参数有什么区别?
What is the Difference Between Actual and Formal Arguments in Systemverilog DPI?
我遇到错误:
“DPI 开放数组不支持实际类型”。
我想知道在 DPI 中哪个参数是实际的,哪个是正式的。
根据软件编程术语,任何例程的正式 参数是在定义例程时声明的参数。 actual 参数是您在调用例程时传递给例程的表达式。例如
import "DPI" function void master_write(int address,
int data[]);
address
和 data
是 正式的 参数。
int addr;
int buffer[$];
always @(posedge clk) master_write(addr/2, buffer);
addr/2
和 buffer
是传递给 master_write()
.
的 实际 参数
另一个术语:“不支持”通常是指你写的是LRM定义的,但是你使用的工具还没有实现。
我遇到错误: “DPI 开放数组不支持实际类型”。 我想知道在 DPI 中哪个参数是实际的,哪个是正式的。
根据软件编程术语,任何例程的正式 参数是在定义例程时声明的参数。 actual 参数是您在调用例程时传递给例程的表达式。例如
import "DPI" function void master_write(int address,
int data[]);
address
和 data
是 正式的 参数。
int addr;
int buffer[$];
always @(posedge clk) master_write(addr/2, buffer);
addr/2
和 buffer
是传递给 master_write()
.
另一个术语:“不支持”通常是指你写的是LRM定义的,但是你使用的工具还没有实现。