-
目的:
为了设计和验证代码的分离。
target module只可以是module,interface。
bind file可以是program,module,interface,checker。
(note:可以target module 是module, bind file 是interface)
下面的例子是把 fpu_props绑定到cpu 上,每个cpu的实例化都会被绑定一个fpu_props,fpu_props实例化的名字是fpu_rules_1。层级结构显示为 cpu0.fpu_rules_1, cpu1.fpu_rules_1...
下面的例子是把 fpu_props绑定到cpu 的实例化cpu1 上,层级结构显示为 cpu1.fpu_rules_1。
bind file 可以包含所有的systemverilog 语法,parameter 和port 都参考target file instance(bind 后bind file 就是target file文件的一个instance)。
2. 具体实例:
一个参数化的target module, bind file 也是参数化的。(*)通配符代表所有信号的链接。
层级结构上,rtl_chk 绑到dut上成为了dut 包含的一个子模块。
bind file 可以把target module中要用到的信号(input/output/中间变量)都定义为bind file中的同名input port然后通过通配符(*)后,进行信号检查。