我有一個「而」循環爲OVM測試,看起來像這樣的部分:如何檢查特定超時條件後退出在OVM/Verilog的一個「而」循環
while (signal_val == 0) begin
signal_val = sla_vpi_get_value_by_name ("blah");
end
我想限制此循環120微秒,然後退出。如果(signal_val == 0)在120μs結束時仍不滿足,我想退出測試。我如何實現這一目標?
我想我必須調用'global_stop_request()'退出測試,但試圖檢查while循環中的固定超時值(120μs)的現有條件似乎很棘手。此外,'休息'似乎並沒有工作。有任何想法嗎?
使用「休息」這樣一來,但「破」試圖給出一個語法錯誤:如您所期望
while (signal_val == 0) begin
signal_val = sla_vpi_get_value_by_name ("blah");
#120us;
break;
end
'break'不能正常工作?你是如何應用它的? – Serge
但我在這裏意識到了兩件事:1.'break'給出了語法錯誤。 2.正在添加120微秒的延遲,但條件未被檢查120微秒。 – chmod
你收到了什麼樣的錯誤信息? – Serge