分辨率函数,未解析和已解析的类型
解析类型的使用应保留用于真正模拟由多个硬件电路驱动的硬件线(或线组)的情况。需要它的典型情况是存储器的双向数据总线:当存储器被写入时,驱动总线的是写入设备,而当读取存储器时,它是驱动总线的存储器。
在其他情况下使用已解决的类型,虽然经常遇到的做法,但这是一个坏主意,因为它会在意外创建不需要的多个驱动器情况时抑制非常有用的编译错误。
ieee.numeric_std
包声明了 signed
和 unsigned
向量类型,并重载了它们上的算术运算符。当需要对相同数据进行算术运算和逐位运算时,经常使用这些类型。signed
和 unsigned
类型已解决。在 VHDL2008 之前,使用 ieee.numeric_std
及其类型意味着意外的多驱动情况不会引起编译错误。VHDL2008 为 ieee.numeric_std
:unresolved_signed
和 unresolved_unsigned
(别名 u_signed
和 u_unsigned
)添加了新类型的声明。在不需要多种驱动情况的所有情况下,应首选这些新类型。