qq_33687272 2023-12-13 16:55 采纳率: 100%
浏览 57
已结题

verilog中,for循环的循环变量i的初始值一定是常量吗

verilog中,for循环的循环变量i的初始值一定是常量吗?可不可以是reg或者wire类型的变量
如:
reg [6:0] counter=1;
reg a = 0;
integer i;
always @ (posedge clk)
begin
for (i=counter;i<=100;i=i+counter) begin
a <= a + 1;
end
end

  • 写回答

2条回答 默认 最新

  • 日晨难再 优质创作者: 嵌入式与硬件开发技术领域 2023-12-13 17:11
    关注

    这种不是静态的循环结构,包括初始化条件非静态,终止条件非静态等的结构,仿真是没有问题的。因为仿真只是像C语言一样执行语句罢了。
    但是,这是一种不可综合的结构,意味着综合器无法通过Verilog代码推断出真实电路,所以最好只在仿真验证时使用。
    如还有疑问,可以追问,如解决问题,请采纳。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月22日
  • 已采纳回答 12月14日
  • 创建了问题 12月13日