关于一段verilog代码的求助
时间:10-02
整理:3721RD
点击:
目前在学习SDM的过程中,遇到了两句如下的代码,实在不知道怎么理解,望懂的大侠指导一二
input[9:0] data_in;
reg[14:0] acc_in0;
always@(data_in or pos_neg_flag)
begin
if (pos_neg_flag)
acc_in0={{4{1'b0}},data_in[9:0],1'b0};
else
acc_in0={{4{1'b1}},data_in[9:0],1'b0};
end
注:pos_neg_flag为SDM的输出
input[9:0] data_in;
reg[14:0] acc_in0;
always@(data_in or pos_neg_flag)
begin
if (pos_neg_flag)
acc_in0={{4{1'b0}},data_in[9:0],1'b0};
else
acc_in0={{4{1'b1}},data_in[9:0],1'b0};
end
注:pos_neg_flag为SDM的输出
代码本身应该简单的,没学过sdm,所以不知道要实现什么功能
搞不明白最前面的4位0,1和最末位的0是用来干嘛的, 惆怅阿
符号位扩展吧