标量和向量之间的按位运算
Bitwise operation between scalar and vector
我正在努力寻找一种在标量和向量之间应用按位运算符的方法,例如:
logic [7:0] vec ;
logic scal;
logic [7:0] ans;
assign ans= vec | scal; // scal extend by appending zeros.
这里只有ans[0]被修改,其余的a[7:1]有零。我需要在整个 vec
上应用按位运算符
谢谢
给兔子剥皮的方法有很多种。我将使用 复制运算符 :
打开
{ <N> { <some value> } }
复制 <some value>
N
次。所以你需要:
assign ans= vec | {8{scal}};
显示功能的意图比尝试根据布尔表达式编写要清楚得多。使用读作 if/else.
的条件运算符
assign ans = scal ? '1 : ver;
我正在努力寻找一种在标量和向量之间应用按位运算符的方法,例如:
logic [7:0] vec ;
logic scal;
logic [7:0] ans;
assign ans= vec | scal; // scal extend by appending zeros.
这里只有ans[0]被修改,其余的a[7:1]有零。我需要在整个 vec
谢谢
给兔子剥皮的方法有很多种。我将使用 复制运算符 :
打开{ <N> { <some value> } }
复制 <some value>
N
次。所以你需要:
assign ans= vec | {8{scal}};
显示功能的意图比尝试根据布尔表达式编写要清楚得多。使用读作 if/else.
的条件运算符assign ans = scal ? '1 : ver;