我有一個verilog代碼,我希望使用遞歸。然而,每當我在always塊中嘗試這個時,它會給出一個錯誤,說不是一個任務。Verilog在Always塊中遞歸
有沒有什麼辦法可以在always塊中實現模塊?無論如何,我可以在always塊中使用遞歸嗎?
我有一個verilog代碼,我希望使用遞歸。然而,每當我在always塊中嘗試這個時,它會給出一個錯誤,說不是一個任務。Verilog在Always塊中遞歸
有沒有什麼辦法可以在always塊中實現模塊?無論如何,我可以在always塊中使用遞歸嗎?
您可以使用生成塊編寫遞歸模塊。欲瞭解更多信息,請參閱:
Recursive and Iterative designs in Verilog
Recursive Modules
如果你想了解的生成塊:
Verilog HDL Quick Reference Guide (part 9.0)
也許你也應該看看這些問題和答案:
Could we have generate inside an always block?
Verilog generate/genvar in an always block
的生成工作方式與always模塊的工作方式相同嗎? –
你能舉一個例子嗎?或者用遞歸解釋你正在實現的算法?你不能把一個模塊實例放在always塊中。 – dwikle
該模塊使用複雜算法乘以2個數字。 該算法的其中一個步驟是將2個輸入分解爲更小的數字並將其相乘。我需要使用相同的遞歸。 –