Main Content

このページは前リリースの情報です。該当の英語のページはこのリリースで削除されています。

readmemory

AXI4 メモリ マップド従属からデータを読み取る

    説明

    data = readmemory(mem,addr,size) は、 sizeで指定されたアドレスから開始して、ワードごとにアドレスをインクリメントして、データのaddrの位置を読み取ります。この関数は、データをuint32またはuint64データ型にタイプキャストします (AXI マネージャー IP のデータ サイズに応じて)。アドレスaddr は、FPGA ボード上の AXI マネージャー IP によって制御される AXI 従属メモリの場所を参照する必要があります。aximanagerオブジェクトmemは、 MATLAB®と AXI マネージャー IP 間の接続を管理します。

    data = readmemory(mem,addr,size,Name,Value) は、1 つ以上の名前と値の引数を使用してオプションを指定します。

    入力引数

    すべて折りたたむ

    FPGA ボード上の AXI マネージャー IP への接続。オブジェクトとして指定されます。

    読み取り操作の開始アドレス。4 の非負の整数または 4 の倍数の 16 進数値として指定します。この関数は、32、40、および 64 ビットのアドレス幅をサポートします。この関数は、AXI マネージャーの IP アドレス幅に応じて、アドレスをuint32またはuint64データ型にキャストします。アドレスは、FPGA ボード上の AXI マネージャー IP によって制御される AXI 下位メモリの場所を参照する必要があります。

    メモリマッピングのガイドライン

    • AXI マネージャー IP データ幅が 32 ビットの場合、メモリは 4 バイトにアラインされ、アドレスは 4 バイトずつ増加します (0x00x40x8)。この場合、 0x1 は不正なアドレスであるため、エラーが発生します。

    • AXI マネージャー IP データ幅が 64 ビットの場合、メモリは 8 バイトにアラインされ、アドレスは 8 バイトずつ増加します (0x00x80x10)。この場合、 0x10x4は不正であり、エラーが発生します。

    • AXI マネージャー IP データ幅が 32 ビットで、引数を'Increment'に設定した場合、アドレスは 4 バイトずつ増加します。

    • AXI マネージャー IP データ幅が 64 ビットで、引数を'Increment'に設定した場合、アドレスは 8 バイトずつ増加します。

    • AXI マネージャー IP データ幅が 32 ビットで、引数を'half'に設定した場合、関数は下位 2 バイトを読み取り、上位 2 バイトを無視します。

    • AXI マネージャー IP データ幅が 64 ビットで、引数を'half'に設定した場合、関数は下位 2 バイトを読み取り、上位 6 バイトを無視します。

    • 32 ビット レジスタへのアクセスに 64 ビット AXI マネージャーを使用しないでください。

    例: 0xa4 は、 0xa4の開始アドレスを指定します。

    データ型: uint32 | uint64

    読み取るメモリ位置の数。非負の整数として指定します。デフォルトでは、この関数は連続したアドレス ブロックからデータを読み取り、操作ごとにアドレスをインクリメントします。アドレスのインクリメントを無効にして、同じ場所から繰り返し読み取るには、引数を'Fixed'に設定します。

    DDR メモリのブロックの読み取りなど、大きな操作サイズを指定すると、この関数は、サポートされる最大バースト サイズである 256 ワードを使用して、操作を自動的に複数のバーストに分割します。

    例: 5 は、 5 つの連続したメモリ位置を指定します。

    名前と値の引数

    引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数より後に配置する必要がありますが、ペアの順序は重要ではありません。

    R2021a より前は、各名前と値をカンマで区切って、 Name 引用符で囲みます。

    例: 'BurstType','Fixed' は、同じアドレスからすべてのデータを読み取るように AXI マネージャーに指示します。

    AXI4 バースト タイプ。次のオプションのいずれかとして指定します。

    • 'Increment' — AXI マネージャーは、指定されたアドレスから開始して、連続したメモリ位置からデータのベクトルを読み取ります。

    • 'Fixed' — AXI マネージャーは同じアドレスからすべてのデータを読み取ります。

    メモ

    'Fixed'バースト タイプは、PCI Express®インターフェイスではサポートされていません。代わりに'Increment'バースト タイプを使用してください。

    読み取りデータに割り当てられるデータ型。次のオプションのいずれかとして指定します。

    • 'int8'

    • 'uint8'

    • 'uint16'

    • 'int16'

    • 'half'

    • 'uint32'

    • 'int32'

    • 'single'

    • 'uint64'

    • 'int64'

    • 'double'

    • numerictype オブジェクト

    この関数は、FPGA から読み取られたデータを指定されたデータ型にタイプキャストします。 double は、 64 ビット UDP 接続でのみサポートされます。

    出力引数

    すべて折りたたむ

    読み取りデータ。 sizeに指定した値に応じて、スカラーまたはベクトルとして返されます。この関数は、入力で指定されたデータ型にデータを型キャストします。

    バージョン履歴

    R2017a で導入

    すべて展開する