gpt4 book ai didi

Verilog $signed(),这是什么?

转载 作者:行者123 更新时间:2023-12-02 21:09:37 26 4
gpt4 key购买 nike

我刚刚开始使用 verilog。我正在查看某人编写的 float 乘法的一些示例代码,我遇到了这个......

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 函数的列表吗?

最佳答案

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

在这个例子中,$signed 的使用对我来说毫无意义,因为比较的结果总是一个 1 但无符号的值,并且这个结果将与另一个 1 位表达式相加。所以 $signed 没有做任何事情。仅当需要将值扩展到更大的宽度或在关系操作中时,将值转换为有符号才有意义。

您可以在 IEEE Std 1800-2017 Language Reference Manual (LRM) 中找到函数列表.

关于Verilog $signed(),这是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34247753/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com