当且仅当在该周期调用接口方法/任务时,是否可以合成在周期上断言的启用信号?需要类似于以下内容:
interface RAM (logic clk);
logic enable;
// ...
always_ff @(posedge clk) enable = 0;
task Read(input address_t address);
enable = 1;
// ...
endtask
//...
modport server(input clk, input enable, ...);
modport client(input clk, export Read, ...);
endinterface
显然以上是非法的。我唯一的想法是保存以前的状态,在always_ff中比较当前和以前的分配是否相同,并在任务调用中取反。不过,这似乎并不实际——它非常具体,因此在 P&R 期间不太可能被优化掉。我真正需要的是一个具有语义的逻辑元素,当分配给它时,它会采用分配的值,否则它会变为默认值。