8

VHDL の と の違いは何ですか? どこで使用すればよいです typeか?subtype

私の理解では、それsubtypeは次のようなプライマリタイプの1つのバージョンを絞り込んだだけです。プライマリタイプでinteger可能subtype small_integer is integer range -128 to 127;なすべての操作は、subtypes(もちろん、特定の制限付きで)でも可能です。また、subtypesエラーを防ぐために使用することをお勧めします。

では、の目的は何typeですか?

donwtotofor はどう違いintegersますか?(ポイントを理解するために、ここに例があります)
subtype bit_index is integer range 31 downto 0;
subtype bit_index is integer range 0 to 31;

ありがとう !

4

3 に答える 3

10
  • あなたが正しく言うように、タイプはサブタイプのベースです。タイプがなければサブタイプはありません。ただし、サブタイプはシミュレーションでのみ安全です。実際のハードウェアでは、境界チェックなどはありません...

  • VHDL の標準ライブラリでは、 、(制約なし、パッケージ std_logic_1164 で定義) 、(パッケージ standard で定義) などstd_logic、構築するための多数の基本型が定義されています。サブタイプを間接的に作成するなどの独自の定義(または、サブタイプを明示的に定義して名前を付ける場合は直接)std_ulogicstd_logic_vectorintegercharacterstd_logic_vector(7 downto 0)

  • ステート マシンの状態を記述する場合など、独自の列挙型を参照する場合は、型が必要です。

    type tState is (IDLE, DO_SOMETHING, DONE);

  • 整数のdowntoandtoについてはわかりませんが、役に立たないようですが、VHDL にはrangeを定義する別のメカニズムがなく、このメカニズムによりtodowntoの両方が許可されます

于 2012-09-24T07:41:16.107 に答える
0

TO と DOWNTO はインド性が異なります (最上位ビットとビット 0 の MSB)

于 2014-11-18T07:10:43.403 に答える