为什么IEEE vhdl标准库不是STL?

为什么IEEE vhdl标准库不是STL?,vhdl,xilinx,ieee,intel-fpga,Vhdl,Xilinx,Ieee,Intel Fpga,IEEE vhdl语言参考手册仅定义了一组有限的标准包。它没有定义标准类型上的功能,例如STD_逻辑。因此没有标准And 2,INV组件/运算符 似乎Altera的Max + Plus II不支持AND2,inv组件(如果有的话,请随时纠正我),但是Xilinx基金会。< /P> 为什么IEEE VHDL标准库不能成为C++世界中类似STL的东西? 谢谢。您要求的“组件”是VHDL中的运算符 您还可以直接实例化AND2和INV组件,但需要构建这些库(或使用为您提供的库).因为fpga设计软件与目

IEEE vhdl语言参考手册仅定义了一组有限的标准包。它没有定义标准类型上的功能,例如STD_逻辑。因此没有标准And 2,INV组件/运算符

似乎Altera的Max + Plus II不支持AND2,inv组件(如果有的话,请随时纠正我),但是Xilinx基金会。< /P> 为什么IEEE VHDL标准库不能成为C++世界中类似STL的东西? 谢谢。

您要求的“组件”是VHDL中的运算符


您还可以直接实例化AND2和INV组件,但需要构建这些库(或使用为您提供的库).

因为fpga设计软件与目标芯片高度相关,并且只有两家企业能够开发此类软件。Altera的Max+PlusII只能支持Altera提供的芯片,Xilinx也只能支持。这些供应商控制fpga设计的整个进度,从软件到硬件,它们往往在自己的平台上开发特定的特征,因此IEEE标准库不能像C++世界中的STL一样。
和2
是Altera Max+PlusII的
原语,但它不是Xilinx网页包的
原语。实际上,我们可以设计自己的组件
和2
(Xilinx选择在unisim包中提供它,但我们选择不加载该包)


INV
不是Altera Max+PlusII的
原语,也不是Xilinx网页。

反转,和,或,。。。对于标准逻辑类型,IEEE库支持

a <= b and c
d <= not e
f <= g or h

a不完全正确。FPGA有Actel和Lattice。以及一堆ASIC库,例如Synopsys Design Compiler下的ASIC库。