首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Verilog $signed(),这是什么?

Verilog $signed(),这是什么?
EN

Stack Overflow用户
提问于 2015-12-13 11:42:23
回答 1查看 23.6K关注 0票数 2

我刚刚开始使用verilog。我正在看一些有人写的浮点乘法的示例代码,我遇到了这个……

代码语言:javascript
运行
复制
if ($signed(b_e == -1023) && (b_m == 0)) begin
            z[63] <= 1;
            z[62:52] <= 2047;
            z[51] <= 1;
            z[50:0] <= 0;
            state <= put_z;
          end

我只是想知道$signed是什么。我试着用谷歌搜索它,但我只得到了一堆关于符号数学的结果(不是关于这个函数)。我以为以$开头的函数只适用于测试平台代码。这个函数是做什么的?另外,有没有可以获取verilog函数列表的地方?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-13 14:26:33

有许多Verilog系统函数可用于综合以及测试台。大多数可综合函数执行某种算术或逻辑转换。SystemVerilog已经用强制转换或内置方法替换了大部分$functions。

在这个例子中,使用$signed对我来说没有任何意义,因为比较的结果总是一个1但无符号的值,并且这个结果将与另一个1位表达式进行and‘运算。所以$signed什么也不做。只有当需要将值扩展到更大的宽度时,或者在关系操作中,将值转换为signed才有意义。

您可以在Language Reference Manual (LRM)中找到函数列表。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34247753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档