gpt4 book ai didi

operators - 复制操作符为 0

转载 作者:行者123 更新时间:2023-12-04 16:10:10 24 4
gpt4 key购买 nike

我有 RTL 代码,其中复制器运算符中的复制索引为 0。

inst (. in ( { {0{1'b0}}, 1'b1 })

我无法预测这里的行为。我没有在 LRM 中为 0 或复制运算符中的负复制索引指定任何内容

最佳答案

这通常发生在您具有参数化位宽且 1 位宽是允许值的情况下。

parameter WIDTH = 1;
inst ( .in ( { {WIDTH-1{1'b0}}, 1'b1 }) );

这会导致如下警告:

Warning: : Non-positive replication multiplier inside concat. Replication will be ignored.

为避免您可以使用生成的警告:

parameter WIDTH = 1;
wire [WIDTH-1:0] connection;

generate
if (WIDTH > 1) begin
assign connection = { {WIDTH-1{1'b0}}, 1'b1 };
end
else begin
assign connection = 1'b1 ;
end
endgenerate


inst ( .in( connection ) );

或过大,1 位。

parameter WIDTH = 1;
wire [WIDTH:0] connection = { {WIDTH{1'b0}}, 1'b1 } ;
inst ( .in ( connection[WIDTH-1:0] ) );

关于operators - 复制操作符为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27837882/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com