2

IEEE vhdl 言語リファレンス マニュアルでは、標準パッケージの限られたセットしか定義されていません。また、STD_LOGIC などの標準タイプの機能は定義されていません。そのため、標準の AND2、INV コンポーネント/演算子はありません。

Altera の MAX+Plus II は AND2、INV コンポーネントをサポートしていないようですが (ある場合はお気軽に訂正してください)、Xilinx Foundation はサポートしています。

IEEE vhdl 標準ライブラリが C++ の世界で STL のようなものにならないのはなぜですか?

ありがとう。

4

3 に答える 3

2

std_logicタイプのInvert、And、Or、...は IEEEライブラリでサポートされています。

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

合成ツールは、これらの式をターゲットテクノロジ(ザイリンクスFPGA、アルテラFPGA、ASICなど)に最適な実装に自動的に変換します。テクノロジー固有のコンポーネントを明示的にインスタンス化する必要はありません。テクノロジー固有のコンポーネントをインスタンス化すると、最適化が妨げられる場合もあります。

常にVHDLコードテクノロジに依存しないように作成する必要があります。これにより、コードを再利用できます。

于 2011-01-19T19:15:34.137 に答える
1

あなたが求めている「コンポーネント」は、VHDL の演算子です。

AND2 や INV コンポーネントなどを直接インスタンス化することもできますが、これらのライブラリを構築する (または提供されているライブラリを使用する) 必要があります。

于 2010-01-19T15:12:04.243 に答える
-1

fpga 設計ソフトウェアはターゲット チップとの関連性が高く、そのようなソフトウェアを開発できる企業は 2 つしかないためです。アルテラの Max+PlusII はアルテラから出荷されたチップのみをサポートできました。ソフトウェアからハードウェアへ。その後、独自のプラットフォームを対象とした特定の機能を開発する傾向があります。そのため、IEEE 標準ライブラリは、C++ の世界では STL のようなものではありませんでした。

AND2primitiveAltera Max+PlusII のものですが、Xilinx Webpack のものではありません。実際には、primitive独自のコンポーネントを設計できますAND2(ザイリンクスは unisim パッケージ内で提供することを選択しましたが、このパッケージをロードしないことを選択しました)。

INVprimitiveAltera Max+PlusII ではなく、Xilinx WebPack でもありません。

于 2010-01-19T16:30:52.797 に答える