【FPGA】Tutorial 演習問題を解きながら理解しようと。。演習3マルチプレクサ【Verlog HDの基礎の基礎】

知らないこと勉強するのって。。面白い

こんな年で、こんなことするのって。。意外に面白いですね。。まぁ、大学生の学部レベルの話だからなんだろうけど(笑)

FPGA関連記事

演習3 マルチプレクサ

Multiplexerは、ググると沢山でてきます。これも表現方法いろいろあるんですね。

https://www.chipverify.com/verilog/verilog-4to1-mux

http://electrosofts.com/verilog/mux.html

https://github.com/Obijuan/open-fpga-verilog-tutorial/wiki/Chapter-11:-2-to-1-multiplexor

https://qiita.com/rikitoro@github/items/ab3a734b4e19df0ad19f

if elseで書けという指示。。

module mux4( sel, a, b ,y);

input[1:0] sel;
input[3:0] a;
input[3:0] b;
output y;

reg y;
wire[1:0] sel;
wire[3:0] a;
wire[3:0] b;

always @( sel or a )
 begin
 if( sel == 0)
  y = a;
 if( sel == 1)
  y = b;
end
endmodule

こんな感じ??

elseを使うと

module mux4( 
  input wire sel,
  input   wire  [3:0] a,
  input   wire  [3:0] b,
  output  reg   [3:0] y
  );

  always @ (*) begin
    if (sel) begin // selが非0の場合が成立, 0の場合が不成立
      y = a;      //   selが成立のとき、こちらが実行される
    end else begin
      y = b;      //   selが不成立のとき、こちらが実行される
    end
  end
endmodule

コピペを改変ですが。。

こんなのかな?

ちゃんとテストベッド見よう(笑)

Tutorialの演習3  Verilog-HDL_Trial_Lab_r1_download__2.zip

結果は、こちら

Selが1の時 a で 0の時 bになってますね。

次は、7セグエンコーダです。

投稿者 tom2rd

コメントを残していただけるとありがたいです

Loading Facebook Comments ...

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください