Posts Issued on June 5, 2018

Lチカの実装 (5)

posted by sakurai on June 5, 2018 #44

Vivadoの操作

実際の操作方法を記述して行きます。

  1. Zynqブロック作成
    左端のFlow NavigatorよりIP INTEGRATORのCreate Block Designをクリック。以下のメニューでそのままOK。
    図44.1
    以下の画面で+をクリックしてIPを追加します。これによりZynq UltraScale+のPS領域を追加します。基本的にはハードのみで動作させ、ソフトは使用しないのでPSは不要ですが、今回はクロックとリセットのみを使用します。
    図44.2
    IPの選択画面が出るため、Search窓にzyと入力し、Zynq UltraScale+ MPSoCというIPをダブルクリック。
    図44.3
    下図のように、ブロック図にZynq UltraScale+のPS領域がインスタンスされます。
    図44.4
    空き端子があると正常に動作しないため、pl_clk0出力をmaxihpm0_lpd_ack入力に接続します。
    図44.5
  2. blinkモジュール作成
    下図のように、Flow NavigatorのPROJECT MANAGERメニューからAdd Sourcesをクリックし、Add or create design sourcesラジオボタンを選択し、Nextをクリック。
    図44.6
    blinkのフォルダの下にあらかじめverilog moduleとxdcを置いておきます。Add filesを選択し、次にverilogファイルを選択し、OKをクリック。
    図44.7
    下図のような画面となるため、Finishをクリック。
    図44.8
  3. blinkモジュールをモジュールとして追加
    blinkモジュールが読み込めたので、blinkモジュールをブロック図にモジュールとして追加します。 何もないところで右クリックし、Add Moduleをクリック。
    図44.9
    下図のように、モジュール選択画面が出るので、ここでblinkを選択し、OKをクリック。
    図44.10
    下図のように、blinkモジュールがblink_0としてインスタンスされます。
    図44.11
    blinkモジュールのCLK入力をZynqのpl_clk0出力に接続します。またXRST入力をpl_resetn0出力に接続します。
    図44.12
    LED出力ピンを右クリックし、メニューを表示します。ここでCreate Portとしてこの端子をポートに接続します。
    図44.13
    さらに何もないところで右クリックし、Regenerate Layoutをクリック。
    図44.14
    下図のようにblinkが正しく接続されました。
    図44.15

左矢前のブログ 次のブログ右矢