作者tkhan (脑残)
看板Electronics
标题Re: [问题] verilog问题
时间Wed May 2 11:15:30 2007
※ 引述《renj (地下情人)》之铭言:
: ※ 引述《invalid (everlasting)》之铭言:
: 略
: 1.
: input signed [9:0] a, b;
: output signed [10:0] c;
: assign c = a + b;
: 结果: 9-bit signed 加法
三个都是宣告为signed,所以结果为signed的加法
: 2.
: input signed [9:0] a, b;
: output signed [10:0] c;
: assign c = a + b[1:0];
: //assign c[10:0] = a[9:0] + b[1:0];
: 结果: 好像是 9-bit + 2-bit 的 unsigned 加法... 有点忘了
: (有待确认... 电脑刚好重灌 @@)
b[1:0]并不是signed的宣告,所以在synthesis时,
会变成unsigned的加法
: 3.
: input signed [9:0] a;
: input signed [1:0] b;
: output signed [10:0] c;
: assign c = a + b;
: 结果: 还是 9-bit signed 加法
与1相同,故结果相同
当混合signed和unsigned做运算时,tool会视为做unsigned的运算
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.66.243.100