是否可以在SystemVerilog接口内定义包?
例:
interface my_ifc();
package a;
logic reset;
logic clk_usb;
endpackage
logic Rwn;
logic [7:0] Addr;
endinterface
不可以。包必须在任何其他嵌套范围之外声明(在编译单元级别)
Package是一种在SystemVerilog中的模块,接口和程序之间共享代码的方法。在您的情况下,您可以在界面外创建一个包,然后只需导入包中的任何内容,以使其可见。像这样:
import a::*;
但是在界面内部编写的包没有用处。