FC2カウンター FPGAの部屋 ZedBoard AXI4 Lite Slave 演習3(実機テスト)
FC2ブログ

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

FPGAの部屋

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

ZedBoard AXI4 Lite Slave 演習3(実機テスト)

ZedBoard AXI4 Lite Slave 演習3(インプリメント)”の続き。

前回、インプリメントが終了した。今回は、ハードウェアをSDKにエクスポートして、SDKを立ちあげソフトウェアを作製した。そして、ZedBoardにビットストリームをダウンロードし、ソフトウェアを実行して実行した。

LEDはインクリメントしても、なかなかReadが出来なかった。それは、下のリストで case 文の S_AXI_ARADDR[3:0] の [3:0] が抜けいていたことだった。比較する物のビット幅が合わずに適当にアサインされてしまったようだ。VHDLだったらエラーが出ていたんだが、1日くらい気づかなかった。。。残念。。。

    // S_AXI_RDATA
    always @(posedge ACLK) begin : proc_RDATA
       if(~ARESETN) begin
            rdata <= 32'd0;
       end else if (S_AXI_ARVALID) begin
            case (S_AXI_ARADDR[3:0])
                4'h0 : rdata <= Commannd_Register;
                4'h4 : rdata <= Counter_Load_Register;
                4'h8 : rdata <= {24'd0, LED_Display_Counter};
                4'hC : rdata <= LED_Interval_Resgister;
            endcase
       end
    end
    assign S_AXI_RDATA = rdata;



・XPSプロジェクトをProject Navigator のHierarchy ウインドウ上で選択して、Processes ウインドウから Export Hardware Design To SDK with Bitstream を選択して、ハードウェアをエクスポートしてSDKを立ち上げる。
AXI4_practice_20_131218.png

・SDKが立ち上がったら、ワークスペースを選択した。

・ソフトウェアを作ってコンパイルした。

・Xilinx Tools から Program FPGA を選択してビットストリームをZedBoardにダウンロードした。(その際に、指定するビットストリームは、PS_PL_Tutorial\system\implementation\system.bit が良いようだ。これは、ビットストリームを伴ってエクスポートする際に、エクスポートするフォルダがずれることがあるからだ)

・Run Configuration を作製して、Runする。

下に、SDKの様子を示す。
AXI4_practice_21_131218.png

Tera Termを起動して、ソフトウェアを実行している様子を下に示す。
AXI4_practice_22_131218.png

LED Interval Register に 50000000 をセットして、0.5秒に1回、LEDの2進数の値を+1している。

実際の動作風景を動画に取ったので、貼っておく。


今回は、Verilog HDL版を作ったので、次は、VHDL版を作る。
  1. 2013年12月18日 22:16 |
  2. AXI4バスの演習資料
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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