微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > verilog语言中一个always进程给一个寄存器数组赋值的问题

verilog语言中一个always进程给一个寄存器数组赋值的问题

时间:10-02 整理:3721RD 点击:
我打算给一个宽度12位,深度60位的寄存器数组赋值运算,如果都放在一个进程中是否会太多了,影响带宽呢,现在带宽200M,
如下:
reg [11:0]
memory [59:0];
always @ (posedge clk_i or posedge rst_i)
if (rst_i) begin
    memory[0]<=12'b0;
    memory[1]<=12'b0;
    memory[2]<=12'b0;
    memory[3]<=12'b0;
    memory[4]<=12'b0;
    memory[5]<=12'b0;
    memory[6]<=12'b0;
    memory[7]<=12'b0;
    memory[8]<=12'b0;
    memory[9]<=12'b0;
    memory[10]<=12'b0;
    memory[11]<=12'b0;
    memory[12]<=12'b0;
    memory[13]<=12'b0;
    memory[14]<=12'b0;
    memory[15]<=12'b0;
    memory[16]<=12'b0;
    memory[17]<=12'b0;
    memory[18]<=12'b0;
    memory[19]<=12'b0;
    memory[20]<=12'b0;
    memory[21]<=12'b0;
    memory[22]<=12'b0;
    memory[23]<=12'b0;
    memory[24]<=12'b0;
    memory[25]<=12'b0;
    memory[26]<=12'b0;
    memory[27<=12'b0;
    memory[28]<=12'b0;
    memory[29]<=12'b0;
    memory[30]<=12'b0;
    memory[31]<=12'b0;
    memory[32]<=12'b0;
    memory[33]<=12'b0;
    memory[34]<=12'b0;
    memory[35]<=12'b0;
    memory[36]<=12'b0;
    memory[37]<=12'b0;
    memory[38]<=12'b0;
    memory[39]<=12'b0;
    memory[40]<=12'b0;
    memory[41]<=12'b0;
    memory[42]<=12'b0;
    memory[43]<=12'b0;
    memory[44]<=12'b0;
    memory[45]<=12'b0;
    memory[46]<=12'b0;
    memory[47]<=12'b0;
    memory[48]<=12'b0;
    memory[49]<=12'b0;
    memory[50]<=12'b0;
    memory[51]<=12'b0;
    memory[52]<=12'b0;
    memory[53]<=12'b0;
    memory[54]<=12'b0;
    memory[55]<=12'b0;
    memory[56]<=12'b0;
    memory[57<=12'b0;
    memory[58]<=12'b0;
    memory[59]<=12'b0;
    memory[60]<=12'b0;
end
else if(start_process) begin
     ……………………
end
else begin
…………
end

带宽是数据通路的宽度,你这个不是数据通路。

跟你放在多个always里是完全一样的。

没有关系的,

谢谢大神们的帮助



   这个跟数据带宽无关,即使你放到其他always综合效果一样

我昨天开了一个reg [8:0] memery [16383:0],always里循环位移赋值,跑simulation人就傻掉了。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top