(toppers-users 4412) OSのカウンタオブジェクトに使用するハードウェアタイマの変更について。
hisae @ jp.tdk.com
hisae @ jp.tdk.com
2015年 8月 17日 (月) 11:39:25 JST
各位
お世話になっております。
TDK株式会社の久江と申します。
現在、TOPPERS/ATK2のHSBRH850F1L(北斗電子)簡易パッケージの
ソースコードを解析させて頂いております。
https://www.toppers.jp/download.cgi/atk2-sc1_hsbrh850f1l_ccrh-20150526.tar.gz
下記ファイル
・arch\v850_gcc\tauj_hw_counter.c
のヘッダコメント部分を読みますと、OSのカウンタオブジェクトの一つは、
二つのハードウェアタイマを使用して構成されているようです。
一つが現在値タイマで、もう一つが差分タイマです。
* 使用するタイマ:
* 差分タイマ:目的の時間を設定する時の現在時間(現在値タイマ)
* と次の満了時間との相対時間をカウントすることで
* 目的の絶対時間に満了したこととする
* count mode:count down once
*
* 現在値タイマ:カウンタ周期分のベースタイマを実現
* (絶対時間をカウント)
* count mode:continuous count down
*
* また上記のタイマは32bitのダウンカウンタタイマである
*
* 制御方針:
*
* 現在値タイマはユーザ定義カウンタ最大値2倍+1までカウントし,
* 周期タイマとして連続カウントダウンして,常に現在時刻を
* 取得する.割込み発生する必要がないため,割込みなしモード
*
* 差分タイマは,満了処理を行うため,割込みありモードで動く
* アラームなどの満了点とタイマー1で示した現在時刻の差を
* 現在値タイマに設定する
*
* ポイント:
* 満了処理は,現在時刻を影響しないため,現在値タイマを設けている
これらのハードウェアタイマには、現状TAUJ0のチャネル0及び1が割り当て
られています。
ところが我々のチーム内の要望で、TAUJ0は他の用途で使用したいという
事情がありまして、これをTAUD0に変更することを検討しております。
TAUJ0からTAUD0に変更した場合、マイコンのスタンバイモードでタイマを
動作させることができなくなるため、もし今後スタンバイモードでもOSを
動作させたいという要望が出てきた場合、対応できなくなりますが、
スタンバイモードでOSを動作させる必要が無いなら、TAUD0に入れ替えを
行っても支障は無さそう、という感触を私は持っています。
OSのカウンタオブジェクトに使用するハードウェアタイマをTAUJ0から
TAUD0に変更した場合、スタンバイモードでOSを動作させられなくなる
以外、他にどのような支障が出ることが考えられますでしょうか?
AUTOSARコンフォーマンステストに合致するかも心配です。
この辺りについてもご教示頂けると幸いです。
以上、よろしくお願いいたします。