私はzynqデバイスを使用して、スタンドアローンプログラム(OSなし)でDRAMから周辺機器にデータを転送しようとしています。このコード例では、トランザクションの送信元アドレスと宛先アドレスを記述するためのコードが見つかりました。組み込みアームプロセッサの特定の物理メモリからメモリを割り当てるにはどうすればよいですか?
volatile static u8 SrcBuffer[BUFFER_BYTESIZE] __attribute__ ((aligned (64)));
volatile static u8 DestBuffer[BUFFER_BYTESIZE] __attribute__ ((aligned (64)));
OSはないので、アドレスの値は何ですか?どうすれば変更できますか?
RAMの特定の領域を特別な目的で使用する場合は、予約するようにリンカースクリプトを設定することをお勧めしますそのエリアは他には使われていません。次に、メモリの先頭へのポインタを使用します。 –
DMAを使用した例がありますか? – Lundin
はい、DMAを使用します。 srcBufferとDestBufferはDMAトランザクション用です –