verilog中的repeat的用法和例子 | 您所在的位置:网站首页 › 小米预约就能买到吗是真的吗安全吗 › verilog中的repeat的用法和例子 |
repeat 循环语句执行指定循环数,如果循环计数表达式的值不确定,即为 x 或z 时,那 么循环次数按 0 处理。repeat 循环语句的语法为 repeat(循环次数表达式) begin 语句块; end 其中, “循环次数表达式”用于指定循环次数,可以是一个整数、变量或者数值表达式。 如果是变量或者数值表达式,其数值只在第一次循环时得到计算,从而得以事先确定循环次 数; “语句块”为重复执行的循环体。 在可综合设计中, “循环次数表达式”必须在程序编译过程中保持不变。下面给出一个 module mult_8b_repeat( a, b, q , a_t1 ); parameter bsize = 8; input [bsize-1 : 0] a, b; output [2*bsize-1 : 0] q; output reg [2*bsize-1 : 0] a_t1; reg [2*bsize-1 : 0] q, a_t; reg [bsize-1 : 0] b_t; always @(a or b) begin q = 0; a_t = a; //a_t1 = {{bsize[0]},a}; b_t = b; repeat(bsize) begin if (b_t[0]) begin q = q + a_t; end else begin q = q; end a_t = a_t > 1; end end endmodule
波形: |
CopyRight 2018-2019 实验室设备网 版权所有 |