什么时候应该使用std_logic_vector,什么时候应该使用其他数据类型?
|
我是VHDL的新手,无法确定哪种数据类型适合在哪里使用。如果我理解正确,那么对于综合来说,应该将所有顶级实体端口声明为std_logic_vector或std_logic,并且绝不要声明任何其他类型。
但是std_logic_vector不支持算术运算,那么我应该如何处理呢?
我的直觉告诉我,我应该只在顶层使用std_logic_vector,然后在将其传递给其他实体时在整数数据类型之间进行转换。它是否正确?
在哪里使用什么整数数据类型(整数,无符号,有符号)?我了解有符号和无符号之间的区别,但是什么时候应该使用整数?
没有找到相关结果
已邀请:
2 个回复
净爽
粟痢凰副
一侧的整数,自然,正号与另一侧的无符号和有符号之间的差异是表示形式。 有符号和无符号是std_logic_vector的子类型,更像是std_logic线束(或更精确的数组)。 整数类型是数字的数学表示。它们通常与泛型一起使用,生成循环和数组索引。但是有时候综合也可以用算术单位处理它们。