所以,我最近继承了一些VHDL代码,我的第一反应是,“VHDL有结构,他们为什么到处使用位向量?”然后我意识到这是因为似乎没有任何方法可以写出这样的东西:
entity Queue is
generic (
EL : type
);
port (
data_in : EL;
data_out : EL;
...
);
end entity Queue;
我真的希望这是可能的。还有什么东西可以远程近似吗?即使我必须重新键入实体或组件声明,只是为了避免重新键入每个(模数为通用宽度)类型的体系结构定义?
答案 0 :(得分:3)
是的,实施队列是做这件事的经典理由之一!
自VHDL-2008以来,这已经在VHDL中。截至2012年中期,工具支持可变。谈论一个发展缓慢的行业!
答案 1 :(得分:1)
是,不......
通用类型是即将推出的VHDL-2008标准的新功能:http://www.doulos.com/knowhow/vhdl_designers_guide/vhdl_2008/vhdl_200x_major/#GenericTypes
然而,EDA工具对VHDL-2008的支持仍然非常有限。即使您的工具支持它,使用此功能也会使您的代码无法移植。
坚持使用VHDL-2002,解决方案是在包中声明您的接口类型mytypes
并在use work.mytypes.all
所需的任何地方使用它。