つながるワイヤレス通信機器の開発手法(13) ――ファームウェアを設計する
● 仕様記述は図形表現の言語を用いる
通信系ファームウェアの動作を図で規定する場合がある.よく使われる図が図4の状態遷移図と図5の通信フロー図である.これ以外に,SDL(specification and description language)というものもある.SDLは,以下のような特徴を持ち,イベント駆動型システムの仕様記述に適している.
- 図形表現の言語なので直感的に理解しやすい
- 形式的言語なのであいまいさがない
- オブジェクト指向である
携帯電話の仕様はSDLで記述されており,例えば図4の状態ごとに対応した図が用意されている.図6は,F5(通信チャネル同期中)に対応したSDLである.
F5の状態でSB1を受信すると,タイマTR102を停止する.そして,SB2送信を開始してから,タイマTR103のカウントを開始する.タイマTR102は,F5の前状態(通常はF4)でF5に遷移する直前にカウントを開始したタイマである.また,タイマTR103とTR107はそれぞれF6とF11における時間監視用タイマである.
F5の状態でSB1を受信する前にタイマTR102がタイムアウトした場合,F5の起動前にどのチャネルを使用していたかによって処理が異なる.起動前のチャネルが制御チャネルの場合,状態異常通知(起動不良)を上位レイヤへ通知してF2に遷移する.起動前のチャネルが通信チャネルであれば,周波数を切り替えてからタイマTR107のカウントを開始し,F11に遷移する.
このようにSDLを使用すると,非常に簡潔かつ明確に各状態の動作を記述することができる.