小编Ish*_*a S的帖子

systemverilog中逻辑语句的非常量索引

我正在尝试创建一个for循环,在循环迭代的情况下为逻辑数组分配不同的值.

所以,例如,假设我试图实例化两个不同的砖,宽度为10,高度为5.我们也说这些值都是10位.对于两块砖,我有代码:

logic[19:0] Brick_Width;
logic[19:0] Brick_Height;
Run Code Online (Sandbox Code Playgroud)

第一块砖的宽度和高度将被分配到最重要的10位,第二块的最低有效位为10位.

这是我目前拥有的代码:

int i = 19;
initial
begin
 for(i=19; i>=0; i=i-10)
 begin
  assign Brick_Width[i:i-9] = 10;
  assign Brick_Height[i:i-9] = 5;
 end
end
Run Code Online (Sandbox Code Playgroud)

但是,我得到一个错误,说"我"不是一个常数.关于如何做到这一点的任何想法?

verilog system-verilog

1
推荐指数
1
解决办法
2858
查看次数

标签 统计

system-verilog ×1

verilog ×1