打印

基于verilog的sign函数问题

[复制链接]
2537|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
snowsea|  楼主 | 2010-1-13 13:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 snowsea 于 2010-1-13 13:47 编辑

现在要用到sign函数来做判决,就是输入大于0输出为1;输入等于0输出为0,输入小于0输出为-1。以下是篇写的代码,为何总是综合仿真通不过呢?以前不大和有符号数打交道,现在突然要用,才感觉里面别有**。请大家帮我分析看啊。
module sign(data,result);
//input                     clk;
input  signed    [2:0]          data;
output signed    [2:0]          result;
reg    signed    [2:0]          result;

always@(data)
begin
   
   
    if(data>0)       result=1;
    else if(data==0) result=0;
    else if(data<0)  result=-1;

end
endmodule

相关帖子

沙发
钻研的鱼| | 2010-1-16 09:58 | 只看该作者
signed类型我很少用过。一般的原则:根据最高位来判断,data[2] 为1则为负数,否则是0或者正数

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

5

帖子

0

粉丝