gpt4 book ai didi

vhdl - 何时使用VHDL库std_logic_unsigned和numeric_std?

转载 作者:行者123 更新时间:2023-12-04 16:28:36 31 4
gpt4 key购买 nike

我在ISE中使用VHDL-200X。我总是使用std_logic_vectorstd_logicintegerbooleanreal之类的数据类型。
我的队友要求我使用std_logic_vector的这三个部分。

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

但是有人说不要使用 integer而不是 library IEEE,因为 IEEE.STD_LOGIC_UNSIGNED.ALL中包含了所需的一切,而且 IEEE.NUMERIC_STD.ALL不是标准库。 Here

我对此感到困惑,有人可以提供帮助吗?

最佳答案

切勿使用std_logic_arithstd_logic_**signed。需要有符号或无符号值时,请始终使用numeric_std。以前的软件包声称是IEEE,但事实并非如此。它们是Synopsys或Mentor Graphics的特定于供应商的扩展。

两者都基于导入的包在std_logic_vector上定义了算术运算。例如意味着您不能在同一体系结构中使用带符号和无符号值。

integer进行所有数学运算有一些缺点:

  • 没有未初始化的值
  • 没有“X”传播
  • 限制为32位
    (如何编写64位计数器?)
  • 关于vhdl - 何时使用VHDL库std_logic_unsigned和numeric_std?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45704135/

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