[解決済み] 代入文の「others=>'0'」はどういう意味ですか?
2022-02-18 15:41:55
質問
cmd_register: process (rst_n, clk)
begin
if (rst_n='0') then
cmd_r<= (others=>'0');
elsif (clk'event and clk='1') then
cmd_r<=...;
end if;
end process cmd_register;
が代入を指定することは知っていますが、その代入のための
others
? また
=>
はどうするのですか?
どのように解決するのですか?
cmd_r は std_logic_vector または 符号なし または 署名入り このシグナルがどのように定義されているかを見てみましょう。
type std_logic_vector is array (natural range <>) of std_logic;
type unsigned is array (natural range <>) of std_logic;
type signed is array (natural range <>) of std_logic;
この3つの型は、std_logicの項目の配列と同じ定義であることに注意してください。
その他 => '0'" という文は、VHDLの機能で、配列の中の複数の項目を同じ値で定義したい場合に使用します。
この例では、配列のすべての項目 std_logic が '0' に設定されています。
この文のもう一つの応用例として、ある項目には特定の値を設定し、他の項目はすべてデフォルト値を設定することができます。
cmd_r <= (0 => '1',
4 => '1',
others => '0');
この場合、ビット0と4が'1'に、それ以外のビットが'0'に設定されます。
最後にもうひとつ、それは ありえない というような書き方をする.
cmd_r <= (0 => '1',
4 downto 2 => "111", -- this line is wrong !!!
others => '0');
関連
-
[解決済み] 中括弧のないif文を使用するのは悪い習慣ですか?[クローズド]
-
[解決済み] プロセスとスレッドの違いは何ですか?
-
[解決済み] Pythonのif文における&&(論理和)に相当する機能
-
[解決済み] 何が私のプロセスを殺したのか、なぜなのか?
-
[解決済み] AngularJS テンプレートにおける if else ステートメント
-
[解決済み] なぜpythonはforやwhileループの後に'else'を使うのですか?
-
[解決済み】node.jsアプリをバックグラウンドサービスとして実行するにはどうすればいいですか?
-
[解決済み】「スレッド」とは(本当は)何ですか?)
-
[解決済み】Swiftでif文に範囲演算子を使うことはできますか?
-
[解決済み] Swiftでif文の中で複数のlet-asを使用する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Makefileの中で条件がある場合、ターゲット内部で
-
[解決済み] 代入文の「others=>'0'」はどういう意味ですか?
-
[解決済み] 中括弧のないif文を使用するのは悪い習慣ですか?[クローズド]
-
[解決済み] SwiftのIF LETはどのように評価されるのですか?
-
[解決済み] cmake if else with option
-
[解決済み] GoにはPythonのような "if x in "の構成がありますか?
-
[解決済み】「if」文が多すぎる?
-
[解決済み] 条件Aを満たした場合、条件Bを満たさないと行動Cができない。
-
[解決済み] ワンライナーでif else文を書くには?重複
-
[解決済み] IF」は高いのか?