アルテラのQuartusパッケージを使用したFPGAプログラミングの学習を始めます。Quartusプロジェクトのieeeとfloatfixlib vhdlライブラリの関係の説明
私は、次のものが含まれ、いくつかのレガシーコードを持っている:
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
use ieee.math_real.all;
library floatfixlib;
use floatfixlib.fixed_pkg.all; --this is the VHDL93 implementation of the VHDL08 fixed point code from http://www.eda-stds.org/fphdl/
use work.ioarrays.all;
は、残念ながら、コメント内のリンクは今死んでいます。
は当初、私は、次のエラーが発生しました:
Error (10481): VHDL Use Clause error at myvhdlfile.vhd(8): design library "floatfixlib" does not contain primary unit "fixed_pkg"
は約読んだ後、私はieee_proposedライブラリに(fixed_float_types_c.vhdl
、fixed_pkg_c.vhdl
、float_pkg_c.vhdl
)関連するIEEEライブラリファイルを帰するthis answerを使用し、これにコードを変更:
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
use ieee.math_real.all;
library ieee_proposed;
use ieee_proposed.fixed_pkg.all;
use work.ioarrays.all;
これはコンパイルされているようです。
しかし、私はこれが正しいアプローチであるとは確信しておらず、これらの図書館の発展の背後にある高水準の物語に対する私の理解は欠けています。従って、
したがって、 ieeeとfloatfixlib vhdlライブラリの関係を記述してください。彼らの発達の理由、短いタイムラインとその現在の状態の簡潔な説明が理想的でしょう。
自分自身でfloatfixlibについて聞いたことがありません。私はそれがieee_proposedの代わりに誰かの非公式の名前だったと思う。その理由を尋ねる必要があります。 –
パッケージfixed_pkgは、ライブラリieeeで-2008で利用できます。 fixed_pkg_c.vhdlにある2008年以前のfixed_pkgは、fixed_float_types_c.vhdlにあるパッケージfixed_float_typesで定義されている丸めタイプに応じて、パッケージジェネリックを定数に置き換えても、ほぼ同じです。コードが新しいライブラリでコンパイルされ、節を使用すると、正しいことがほぼ確実に実行されます。彼らはビヘイビアシミュレーションを介して含まれているデザインを検証する価値があるでしょう。 – user1155120
_c.vhdlは、以前のリビジョンのVHDL実装(特に、2006年に合成ベンダーによって広くサポートされている-1993)の-2008との互換性を提供するvhdl2008cの配布に由来します。固定およびフロートパッケージは、-2008リビジョンに採用されました。IEEE Std 1076-2008 16.10固定小数点パッケージおよび16.11浮動小数点パッケージを参照してください。それらはライブラリieeeに含まれています。 -2008互換のツールがあればそれらを使うことができます。付録G G.4固定小数点パッケージの使用も参照してください。 – user1155120