====== VHDL CheatSheet ====== ===== 数値型とビット列型の関係 ===== (std_logic_arith は IEEE で定義されたものではないため非推奨。よって以下には記述しない。) {{:cheetsheet:vhdl_integer_conversion.png|}} ===== std_logic_1164 ===== ==== データ型 ==== std_logic(_vector)は解決関数が定義済みである型。一方"u"付きはそれらの元となる解決関数が未定義の(=Unresolvedな)型である。UnsignedのUではない。 {{:cheetsheet:vhdl_std_logic_1164_types.png|}} ==== 演算子の定義 ==== | ^引数の組み合わせ((L=std_ulogic, V=std_ulogic_vector, I=integer))^備考^ ^not|(L)|単項演算子| ^and, nand,\\ or, nor,\\ xor, xnor|(L,L)| | ^:::|(L,V), (V,L)|Vの各ビットとLの演算結果をVで返す| ^:::|(V,V)|Vのビット数は一致していること| ^:::|(V)|リダクション演算子((同様のand_reduce等がstd_logic_misc内にあるが、std_logic_miscはIEEEで定義されたものではないので非推奨))| ^sll, srl,\\ rol, ror|(V,I)|sllやsrlでもビット数は増えない。Iは負の値でも良い| ===== numeric_std =====