作者NalrA (没人要的废人)
站内Electronics
标题Re: [问题] verilog问题
时间Wed May 9 22:12:33 2007
※ 引述《renj (地下情人)》之铭言:
: ※ 引述《invalid (everlasting)》之铭言:
: : 用signed宣告吧
: : synopsys的coding style有特别提到
: : 我觉得最要注意的是
: : assign a[7:0]=b[7:0]+c[1:0];
: : 跟
: : assign a=b+c;
: : 会有不同的行为
: : 前者"不"会以2's complement的方式展开c (c=10-> 00000010)
: : 後者就会 (c=10 -> 11111110)
: : 反正就是在做datapath的话
: : 要很小心sign的问题
: 这问题,之前也让我觉得颇困扰的,到现在还没一探究竟为何会这样.
: 不知道有没有哪位高手知道答案呢?
: 之前,我只知道不同的语法会有 signed 跟 unsigned 不同的运算结果.
: 但我还颇好奇这不同的语法,究竟合成得到的电路会有什麽差异呢?
: 所以,我有做了一些简单的试验,究竟不同的语法会合出怎样的东西来..
: 如果看到这觉得太乏味的就先行 ← 吧 ^^"
我觉得用signed宣告是合不出电路,毕竟这种2补数加法或是乘法,都是
存在於你我的脑中运算的方式,通常我都是另外写一个乘法或是加法的module..
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.132.144.169
1F:→ acelp:signed跟unsigned都可以合成 就连unsigned宣告也可以有 05/09 23:23
2F:→ acelp:signed bit...相信我 因为我都做过了 @_@ 05/09 23:24