我一直在閱讀UVM: illegal combination of driver and procedural assignment warning和附在答案中的紙張。 如何在復位時初始化時鐘塊信號
但是,驅動程序被用來驅動接口信號而不是時鐘信號的復位值,所以時鐘不能保證在復位時運行。
那麼如果接口信號被聲明爲導線,我該如何解決這種情況。
例如, 考慮鏈接問題中的代碼。一般的情況是
@(vif.cb);
vif.cb.opcode <= value;
這是正確的,即使操作碼聲明接口事業時鐘攔網會照顧分配正確的。但我不能說
@(vif.rst);
vif.cb.opcode <= init_value;
因爲我不能保證復位時鐘。爲了適應這一點,我必須改變時鐘發生策略。
無論是我可以說
vif.opcode <= init_value;
導致其非法使用與網式信號
程序分配另一種方法是門控宣佈爲網帶復位信號,但我認爲,我將有在界面中聲明臨時信號。任何人都可以詳細說明如何在重置時實現驅動網絡?
恐怕你必須在這裏更具體。顯示導致您問題的代碼。 –
我希望現在的問題能夠正確闡述,請告知我是否應該添加更多詳細信息,謝謝 – wisemonkey