20.4 システム情報(system)
ここでは,RI600PXシステム全般に関する情報を定義します。

なお,システム情報として定義可能な数は,1個に限られます。また,システム情報の定義は省略できません。

形式

< >内は,ユーザが記述する部分を示します。

 system {
     stack_size  = <1. システム・スタック・サイズ(stack_size)>;
     priority    = <2. タスク優先度の最大値(priority)>;
     system_IPL  = <3. カーネル割り込みマスクレベル(system_IPL)>;
     message_pri = <4. メッセージ優先度の最大値(message_pri)>;
     tic_deno    = <5. 基本クロック割り込み周期の分母(tic_deno)>;
     tic_nume    = <6. 基本クロック割り込み周期の分子(tic_nume)>;
     context     = <7. タスク・コンテキスト・レジスタ(context)>;
 };


1 ) システム・スタック・サイズ(stack_size

- 説明
サービス・コール処理および割り込み処理で使用するスタックサイズの合計を定義します。


- 定義形式
数値


- 定義範囲
8以上の4の倍数


- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は0x800)を適用


2 ) タスク優先度の最大値(priority

- 説明
タスク優先度の最大値を定義します。


- 定義形式
数値


- 定義範囲
1〜255


- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は32)を適用


- TMAX_TPRI
cfg600pxは,本設定値を定義したマクロTMAX_TPRIを,システム情報ヘッダ・ファイルkernel_id.hに出力します。

3 ) カーネル割り込みマスクレベル(system_IPL

- 説明
カーネルのクリティカルセクション実行時の割り込みマスクレベル(PSWレジスタのIPL値)を定義します。これよりも高いレベルの割り込みは,カーネル管理外割り込みの扱いとなります。カーネル管理外割り込みとカーネル管理割り込みについては,「12.1 割り込みの種類」を参照してください。


- 定義形式
数値


- 定義範囲
1〜15


- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は7)を適用


- VTKNL_LVL
cfg600pxは,本設定値を定義したマクロVTKNL_LVLを,システム情報ヘッダ・ファイルkernel_id.hに出力します。

4 ) メッセージ優先度の最大値(message_pri

- 説明
メールボックス機能で使用するメッセージの優先度の最大値を定義します。なお,メールボックス機能を使用しない場合は,本項目は意味を持ちません。


- 定義形式
数値


- 定義範囲
1〜255


- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は255)を適用


- TMAX_MPRI
cfg600pxは,本設定値を定義したマクロTMAX_MPRIを,システム情報ヘッダ・ファイルkernel_id.hに出力します。

5 ) 基本クロック割り込み周期の分母(tic_deno

- 説明
基本クロック割り込み周期時間は,次の式で算出されます。なお,tic_denotic_numeの少なくともひとつは1でなければなりません。


基本クロック割り込み周期時間(単位:ミリ秒) = tic_nume / tic_deno

- 定義形式
数値


- 定義範囲
1〜100


- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は1)を適用


- 備考
tic_nume, tic_denoの設定に関わらず,サービス・コールで扱う時間の単位は常にミリ秒になります。tic_nume, tic_denoによって,RI600PXが管理する時間の精度を規定することになります。


- TIC_DENO
cfg600pxは,本設定値を定義したマクロTIC_DENOを,システム情報ヘッダ・ファイルkernel_id.hに出力します。

6 ) 基本クロック割り込み周期の分子(tic_nume

- 説明
前項を参照してください。


- 定義形式
数値


- 定義範囲
1〜65535


- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は1)を適用


- TIC_NUME
cfg600pxは,本設定値を定義したマクロTIC_NUMEを,システム情報ヘッダ・ファイルkernel_id.hに出力します。

7 ) タスク・コンテキスト・レジスタ(context

- 説明
タスクが使用するレジスタ・セットを定義します。ここでの設定は,全タスクに適用されます。


- 定義形式
シンボル


- 定義範囲
以下から選択してください。


表20−2  system.context

設定値

CPU

FPU

DSP

PSW, PC, R0〜R7, R14, R15

R8〜R13

FPSW

アキュムレータ1

“NO”

保証する

保証する

保証しない

保証しない

“FPSW”

保証する

保証する

保証する

保証しない

“ACC”

保証する

保証する

保証しない

保証する

“FPSW,ACC”

保証する

保証する

保証する

保証する

“MIN”

保証する

保証しない

保証しない

保証しない

“MIN,FPSW”

保証する

保証しない

保証する

保証しない

“MIN,ACC”

保証する

保証しない

保証しない

保証する

“MIN,FPSW,ACC”

保証する

保証しない

保証する

保証する

1
コンパイラオプションメ-isa=rxv2モ指定時はACC0レジスタとACC1レジスタ,その他の場合はACC0レジスタ(RXv2アーキテクチャの場合)またはACCレジスタ(RXv1アーキテクチャの場合)です。





備考 コンパイラ・オプション“-isa”は,コンパイラ CC-RX V2.01以降でサポートされています。

- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時はNO)を適用


- 備考
必ず「20.5 system.contextの注意事項」も参照してください。