2017-07-02 3 views
-1

FPGAで画像処理を行う必要があるプロジェクトに取り組んでいます。その目的のために、Linaro(Ubuntuバージョン)でZedBoardを使用しています。 すでに行ってきたことは、ZedboardのProcessing System上のPythonスクリプトを使用して、イメージをDDRでピクセル単位でバイナリ形式で保存したことです。Vivado IPブロックを使用してDDRに画像ブロックを読み書きする

ここでは、DDRメモリの内容を読み込み、処理して処理した出力を再びDDRメモリに戻します。 FPGAパーツにはvivado xilinxツールを使用しています。 AXI-DMAをAXI-Interconnectで使用して、DDRからのデータの読み書きを試みました。 私の質問は、プログラマブルロジック側でDDRメモリを読み書きするには、SDKと何らかのCコードを使用する必要がありますか?モジュールが制御信号でDDRからデータを読み込み、画像データの実際の処理を開始するようにしたいと考えています。特定のデータブロックを読んだら、そのデータブロックを処理し、その結果をその場でDDRメモリに保存し直します。 vivadoのブロック設計では、どのIPブロックが必要かわからない。またDDRに日付を送る前にブロックRAMメモリが最後に必要ですか?

すでにこの種のプロジェクトを行っている人や知識がある人はいますか?あなたの側からの助けに感謝します!

おかげ

+0

あなたのストーリーは欠けています**重要なインプリメンテーション情報がたくさんあるので、あなたの質問に答えることは難しいです。ただし、SDK/CなしでAXI-DMAを使用することは可能です。 CまたはC++は、ロジックにソフトコアCPUを使用することを示しますが、これは必須ではありません。代わりに、ステートマシンをHDLで作成することができます。少なくとも、それはあなたが望むもの/あなたの必要条件に依存します。 AXI-DMAコアの使用方法については、AXI-DMAコアのユーザーガイドをお読みください。そして、ちょうどgoogle ["tutorial axi dma"](https://www.google.nl/search?q=tutorial+axi+dma) – JHBonarius

+0

実際に私たちがする必要があるのは、起動する必要のあるZedボードそれにlinaroを持つSDカード。 DDRメモリからデータを読み込み、DDRメモリに書き戻す必要があります。 AXIの相互接続を持つAXI DMAはハードウェア設計の仕事をしますが、私はZedボードのARMプロセッサを使用してDMAコントローラを使用する必要があります。 – ikramulhaq

+0

あなたは矛盾したことを言っています。最初に、LinaroをARMコアで実行していると言います。これは、メモリ制御を組み込んだOSです。次に、AXI DMAを使用したいくつかのベアメタルアプリケーションに、同じARMコアを使用したいとします。非常に不明。 – JHBonarius

答えて

0

のZynqのFPGAは、その目的のためのAMBA AXIインターコネクトを提供します。

Zynq FPGA overview

これは、右の上の相互接続です。

関連する問題