FC2カウンター FPGAの部屋 ある parameter の値で、他の parameter の値を切り替える(Verilog編)
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

ある parameter の値で、他の parameter の値を切り替える(Verilog編)

画像を表示するIPをXPSプロジェクトにインスタンス化する時に、paramterにVGA、SVGA、XGA を選んで、画像の解像度を切り替えることができると、とっても便利です。そこで、あるparameter値で、その他のparameter値を切り替えることができるかどうかやってみました。(出来ました)

Verilog HDLのソースコードです。

// parameter_test.v

module parameter_test # (
    parameter RESOLUTION = "VGA"
)(
    output wire [10:0] param_out
);

parameter integer H_ACTIVE_VIDEO = (RESOLUTION=="VGA") ? 640 :
                    (RESOLUTION=="SVGA") ?    800 :
                    (RESOLUTION=="XGA") ?    1024 :
                    (RESOLUTION=="SXGA") ?    1280 : 
                    (RESOLUTION=="HD") ?    1920 : 1920;

    assign param_out = H_ACTIVE_VIDEO;
endmodule


RESOLUTIONパラメータの文字列で、H_ACTIVE_VIDEOのパラメータ値を切り替えています。
ISE14.7でプロジェクトを作ってみました。
param_test_1_140304.png

ISimでシミュレーションしてみたところ、想定していた動作になりました。
param_test_2_140304.png

parameter RESOLUTION = "XGA"

にしてみました。
param_test_3_140304.png

問題なさそうです。これを使おうと思います。
  1. 2014年03月04日 08:59 |
  2. 入門Verilog
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/2756-14d6da02
この記事にトラックバックする(FC2ブログユーザー)