Nios® V プロセッサー・ソフトウェア開発者ハンドブック

ID 743810
日付 7/08/2024
Public
ドキュメント目次

7.8.1. シンプル・フラッシュ・アクセス

このインターフェイスは関数 alt_flash_open_dev()alt_write_flash()alt_read_flash()、および alt_flash_close_dev() で構成されています。

alt_flash_open_dev() を呼び出してフラッシュ デバイスを開きます。これにより、フラッシュデバイスへのファイルハンドルが返されます。 この関数は、system.h で定義されているフラッシュデバイスの名前を 1 つの引数として受け取ります。

ハンドルの取得後、alt_write_flash() 関数を使用してフラッシュデバイスにデータを書き込むことができます。プロトタイプは次のとおりです。

int alt_write_flash( alt_flash_fd* fd, int offset, const void* src_addr, int length )

この関数を呼び出すと、ハンドル fd によって識別されるフラッシュデバイスに書き込みます。ドライバーは、フラッシュデバイスのベースから offset バイトで始まるデータを書き込みます。書き込まれるデータは src_addr が指すアドレスから取得され、書き込まれるデータの量は length です。

フラッシュデバイスからデータを読み取るための alt_read_flash() 関数もあります。プロトタイプは次のとおりです。

int alt_read_flash( alt_flash_fd* fd, int offset, void* dest_addr, int length )

alt_read_flash() を呼び出すと、ハンドル fd を持つフラッシュデバイスより、フラッシュデバイスの先頭から offset バイトが読み取られます。この関数は、dest_addr が指す位置にデータを書き込み、読み取られるデータの量は length です。ほとんどのフラッシュデバイスでは、標準メモリーとして内容にアクセスできるため、alt_read_flash() を使用する必要はありません。

関数 alt_flash_close_dev() は、ファイルハンドルを受け取り、デバイスを閉じます。この関数のプロトタイプは次のとおりです。

void alt_flash_close_dev(alt_flash_fd* fd )