【发布时间】:2012-11-18 17:51:47
【问题描述】:
有什么方法可以使用 STD_LOGIC_1164 或 STD_NUMERIC 中的预定义类型来表示从 0 到 2^32-1 的整数? (考虑到默认的整数类型范围从-2^31-1到2^31-1)
我需要实现 32 位计数器,并且正在寻找某种方法来使用整数类型而不是 std_logic_vector 来保存代码。有任何设计模式吗?
或者,最好问一下:声明支持操作 >/
提前解决
Edit1:我发现的一个选项是将信号声明为 std_logic_vector(31 downto 0),并在进行比较或 +- 操作时执行转换。例如:counter
【问题讨论】:
-
尽可能选择 numeric_std 而不是 std_logic_vector。要除以 4(或 2 的幂),要么查看 numeric_std 中的移位运算符,要么自己切片向量。输出
标签: vhdl