MDD のキーワード - 2022.1 日本語

Vitis 統合ソフトウェア プラットフォームの資料: エンベデッド ソフトウェア開発 (UG1400)

Document ID
UG1400
Release Date
2022-04-26
Version
2022.1 日本語

MDD ファイルに使用されるキーワードは、次のとおりです。

BEGIN

BEGIN キーワードの後には、library、drive、block、category、interface のいずれかが付きます。

END

END キーワードは常にフレームの最後にあります。

PSF_VERSION

ライブラリの PSF バージョンを指定します。

DRC

DRC 関数名を指定します。これは、Vitis IDE コンフィギュレーション ツールまたはコマンド ライン ツールで呼び出されるグローバル DRC 関数です。この DRC 関数は、すべてのパラメーターを入力すると呼び出され、MLD または MDD ライター有効なライブラリまたはドライバーを指定のパラメーターで生成できるかどうかを検証します。

option

キーワード option の後にオプションを指定します。サポートされるのは、

COPYFILES、DEPENDS、SUPPORTED_PERIPHERALS、DRIVER_STATE の

5 つのオプションです。

SUPPORTED_OS_TYPES

サポートされる OS タイプのリストを指定します。指定しない場合は、ドライバーがスタンドアロン ドライバーとして認識されます。

COPYFILES

ドライバー用にコピーされるファイルのリストを指定します。値を ALL に指定すると、すべてのドライバー ファイルがコピーされます。

DEPENDS

ドライバーがコンパイル時に依存するのディレクトリのリストを指定します。

SUPPORTED_PERIPHERALS

ドライバーでサポートされるペリフェラルのリストを指定します。このオプションの値は、リストまたは正規表現として指定できます。次の例は、ドライバーが opb_jtag_uart の全バージョンおよび opb_uartlte_v1_00_b バージョンをサポートすることを示しています。

option supported_peripherals = (xps_uartlite_v1_0, xps_uart16550)

ペリフェラルおよびバージョンを指定するには、正規表現を使用できます。正規表現は、次のように記述されます。

一文字の正規表現

  • 特殊文字ではない文字は、すべてその文字自体になります。
  • バックスラッシュを前に付けた特殊文字は、その特殊文字自体になります。つまり、バックスラッシュは特殊文字をエスケープするために使用します。
  • 特殊文字は、+ * ? .[ ] ^ $ です。
  • ピリオドは、改行文字以外の文字を意味します。たとえば、「.umpty」と記述した場合、Humpty および Dumpty のどちらでも示すことになります。
  • 文字セットを角かっこ [ ] で囲むと、そのセットの文字に含まれる文字のいずれかの 1 文字を意味します。たとえば、[akm] は a、k、m のいずれかで、文字の範囲はダッシュで指定できます。たとえば、[a-z] は小文字のアルファベットのいずれかになります。
ただし、そのセットの最初の文字がキャレット (^) の場合は、そのセット内の文字以外の文字を意味します。空の文字列にはなりません。たとえば、[^akm] は a、k、m 以外の文字を意味します。キャレットがセットの最初の文字でない場合、特別な意味はありません。

複数文字の正規表現

  • 一文字の正規表現の後にアスタリスク (*) を付けると、0 またはそれ以上の数の文字になります。このため、[a-z]* の場合は 0 またはそれ以上の数の小文字のアルファベットを意味します。
  • 一文字の正規表現の後にプラス (+) を付けると、1 またはそれ以上の数の文字になります。このため、[a-z]+ は 1 つ以上の小文字のアルファベットを意味します。
  • クエスチョン マーク (?) はオプションです。? を文字の後に付けると、その文字が 0 回または 1 回使用されることを意味します。たとえば、xy?z は xyz または xz になります。
  • 正規表現どうしを連結すると、該当する文字列を連結したものになります。たとえば、[A-Z][a-z]* は任意の大文字で始まる単語になります。

次の例は、xps_uartlite、xps_uart16550、および mdm のどのバージョンとも一致します。

option supported_peripherals = (xps_uartlite_v[0-9]+_[1-9][0-9]_[a-z]
xps_uart16550 mdm);

DRIVER_STATE

ドライバーのステートを指定します。次は、DRIVER_STATE に割り当てられる値のリストです。

ACTIVE
これはアクティブ ドライバーです。DRIVER_STATE のデフォルト値は、ACTIVE です。
DEPRECATED
このドライバーは廃止予定のもので、削除されることになっています。
OBSOLETE
このドライバーは廃止されており、どのツールでも認識されません。廃止されたドライバーの場合はエラー メッセージが表示されるので、新しいドライバーを使用する必要があります。

REQUIRES_INTERFACE

システム内のその他のライブラリまたはドライバーから供給される必要のあるインターフェイスを指定します。

HELP

ライブラリまたはドライバーについて説明するヘルプ ファイルを指定します。

DEP

エンティティを処理する前に満たす必要のある条件を指定します。たとえば、BLOCK に入力するためには、DEP 条件を満たす必要があります。サポートされる条件の形式は ( operand1 OP operand2) です。

BLOCK

DEP 条件が満たされたときに入力されるブロックを指定します。ネストされたブロックはサポートされません。

INTERFACE

このライブラリまたはドライバーによりインプリメントされたインターフェイスを指定し、そのライブラリまたはドライバーで使用されるインターフェイス関数およびヘッダー ファイルについて記述します。

BEGIN INTERFACE <interface name>
option DEP=<list of dependencies>;
PROPERTY HEADER=<name of header file where the function is declared>
;
FUNCTION NAME=<name of interface function>, VALUE=<function name
of library/driver implementation> ;
END INTERFACE

HEADER

インターフェイス関数を定義するヘッダー ファイルを指定します。

FUNCTION

インターフェイスでインプリメントされる関数を指定します。これは、name-value で指定し、name はインターフェイス関数名、value はライブラリまたはドライバーでインプリメントされる関数名になります。

PARAM

通常、MLD/MDD ファイルの形式は name = value になります。name と value のペアごとに、その前に PARAM キーワードが必要です。パラメーターに値を割り当てる形式は、param name = <name>, default= value になります。PARAM キーワードは、MSS ファイルでパラメーターが上書きできることを指定します。

DTGPARAM

DTGPARAM キーワードは設定可能なデバイス ツリー特有のパラメーターに対して使用します。Tool DTG の生成する DTS ファイルでパラメーターをダンプする必要がある場合、ドライバーがこれらの DTGPARAM を定義します。

PROPERTY

BEGIN ステートメントで定義されるエンティティのさまざまなプロパティを指定します。

NAME

定義されたエンティティの名前を指定します (例: PARAM、PROPERTY)。オプションで指定する場合はドライバーの名前も指定します。

VERSION

ドライバーのバージョンを指定します。

DESC

定義されたエンティティ (例: PARAM、PROPERTY) について説明します。

TYPE

定義されたエンティティ (例: PARAM) のタイプを指定します。サポートされるタイプは、次のとおりです。

  • bool: ブール値 (true または false)

    int: 整数

    string: " " 内の文字列の値。

    enum: このパラメーターに指定可能な値のリスト。

    library: ライブラリまたはドライバーをビルドするために必要なその他のライブラリを指定します。

    peripheral_instance: ライブラリまたはドライバーをビルドするために必要なその他のハードウェア ライブラリを指定します。ペリフェラル インスタンスの指定には、正規表現を使用します。正規表現に関する詳細は、MLD キーワード の「SUPPORTED_PERIPHERALS」を参照してください。

DEFAULT

定義するエンティティのデフォルト値を指定します。

GUI_PERMIT

値を変更する権限を指定します。次の権限を指定できます。

NONE
値は変更できません。
ADVANCED_USER
すべてのユーザーが値を変更できます。Vitis IDE では、この値はデフォルトでは表示されません。Vitis IDE のアドバンス オプションとしてのみ表示されます。
ALL_USERS
すべてのユーザーが値を変更できます。Vitis IDE では、この値がデフォルトで表示されます。これがすべての値のデフォルト値です。GUI_PERMIT = NONE の場合、カテゴリは常にアクティブです。