返回信息流使用quartus 11.0 进行signaltap进行数据抓取,发现好多信号的抓取结果都是红色,使用verilog进行编程 由于用到了有符号数的乘法,所以reg型的都使用了 reg signed型(查了verilog2001支持新标准,但是不知道quartus是否支持,使用modelsim仿真还有用quartus9.0自带仿真没问题),而且quartus的有些定义为reg signed型的书可以抓到。
请问抓取数据飘红 一般是哪的问题,谢谢解答,顺便问一下 reg signed 这个类型是否可以综合啊?
这是一条镜像帖。来源:北邮人论坛 / circuit / #22719同步于 2013/6/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Circuit机器人发帖
Quartus Signaltap抓数结果 红色为零
guanghai
2013/6/10镜像同步27 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
【 在 guanghai 的大作中提到: 】
: 是啊?有什么问题吗?但是直接写的那个数据是可以抓到的 而且是对的
写成A*B,不太确定是综合成什么,之前有人做过试验,综合器不一样结果还是有区别的。
最好用Quartus提供的乘法单元吧,如果资源还有的话。。。
一般来说A*B是可综合的,我看到的资料中只是明确说了除法与取余操作只支持操作数是常数的综合,
Xilinx 的synthesis and simulation guide 和 xst user guide 都说了它是支持乘法运算符的,但具体综合
出来的效果取决于所选的FPGA型号与综合选项
当然,一般来说,没谁个A*B来对乘法器建模,不可控因素太多
【 在 cordialz 的大作中提到: 】
: 乘法直接综合不出来的亲........
长姿势了.....从来没试过直接让综合器综合乘法 下次试一试
【 在 leonzyz 的大作中提到: 】
: 一般来说A*B是可综合的,我看到的资料中只是明确说了除法与取余操作只支持操作数是常数的综合,
: Xilinx 的synthesis and simulation guide 和 xst user guide 都说了它是支持乘法运算符的,但具体综合
: 出来的效果取决于所选的FPGA型号与综合选项
: ...................
恩,用了quartus11.0 可以综合处来 但是没有看综合成什么了,发现我有符号数(32位)做运算(结果为32位,工程要求)直接使用无符号乘法的话,得到的解说也是对的,用xp自带的二进制计算器进行计算发现,不管是负数与负数成,还是负数与正数乘,得到的结果都是正确的的,应为恰好符号位在[63:32]之间,例如(4位的运算)-1*-2即1111*1110=1101 0010 只取低四位,恰好是2 ,这是巧合 还是可以直接用乘号进行计算?是不是这么写不保险啊?
【 在 ghy 的大作中提到: 】
: 写成A*B,不太确定是综合成什么,之前有人做过试验,综合器不一样结果还是有区别的。
: 最好用Quartus提供的乘法单元吧,如果资源还有的话。。。
综合出来了,算的数,从目前看是正确的,但是改成 reg signed 型的话 signaltap就抓不到数了 改成reg型 可以抓到数,但是计算有的就不正确了 正在找问题 我猜是我后面乘法器有问题 前面乘法倒是运算正确
【 在 cordialz 的大作中提到: 】
: 乘法直接综合不出来的亲........