在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
123
返回列表 发新帖
楼主: 2441697316

[求助] Verilog补码乘法

[复制链接]
 楼主| 发表于 2024-10-11 14:50:08 | 显示全部楼层


liuguangxi 发表于 2024-10-9 13:21
这样写也行,只是更罗嗦


nlint检查剩下最后一个问题:
sum[31:0] <= $signed(sum[31:0]) + $(mult_byte_sum[17:0]);

位宽不一致
应该怎么把18位有符号数扩展到32位
 楼主| 发表于 2024-10-11 14:54:13 | 显示全部楼层


liuguangxi 发表于 2024-10-9 13:21
这样写也行,只是更罗嗦


我知道了,不写位宽
发表于 2024-10-11 15:03:47 | 显示全部楼层


2441697316 发表于 2024-10-11 14:50
nlint检查剩下最后一个问题:
sum[31:0]


不能用移位拼接符  这样写嘛:{14{DATA[18]},DATA}
 楼主| 发表于 2024-10-11 15:06:12 | 显示全部楼层


数学必考150 发表于 2024-10-11 15:03
不能用移位拼接符  这样写嘛:{14{DATA[18]},DATA}


可以,但是我想用“有符号数”的方式实现,刚刚删掉了位宽,但是还是报错,看来只能这样了
 楼主| 发表于 2024-10-11 15:17:56 | 显示全部楼层


liuguangxi 发表于 2024-10-9 13:21
这样写也行,只是更罗嗦


现在改成了sum[31:0] <= $signed(sum[31:0]) + $signed({14{mult_byte_sum[17]},mult_byte_sum[17:0]});
 楼主| 发表于 2024-10-21 16:17:21 | 显示全部楼层


liuguangxi 发表于 2024-9-27 14:46
当然可以综合,主流EDA工具都支持


哥,8位有符号数乘以8位有符号数得到的结果是16位还是15位
发表于 2024-10-21 17:02:11 | 显示全部楼层


2441697316 发表于 2024-10-21 16:17
哥,8位有符号数乘以8位有符号数得到的结果是16位还是15位


理论上是16位
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-15 06:53 , Processed in 0.023324 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表