• 検索結果がありません。

5.1.2 2 層フィーチャモデルの利用

ドキュメント内 JAIST Repository https://dspace.jaist.ac.jp/ (ページ 49-53)

ハードウェ ア 選択モデル

ソ フト ウェ ア 選択モデル 制約された ソフトウェア

フ ィー チャモデル ソ フト ウェ ア

フ ィー チャモデル

ハードウェ ア フ ィー チャモデル

制約

依存

高性能 MCU

MCU 通信

低性能

MCU Blueto

USB oth 高性能

MCU MCU 通信

低性能

MCU Blueto

USB oth 高性能

MCU MCU 通信

低性能

MCU Blueto

USB oth 高性能MCU

MCU 通信

低性能

MCU Blueto

USB oth 高性能MCU

MCU 通信

低性能

MCU Blueto

USB oth 依存 依存

ソ フト ウェ ア プ ロダ クト

ハードウェ ア プ ロダ クト 製造

製造

5 6

5.2: 2

層フィーチャモデルを用いた製品導出のプロセス

5.2

4.2.1

で示した

2

層フィーチャモデルを用いた製品導出のプロセスを再 掲する.

導出されたハードウェア選択モデルから,制約されたソフトウェアフィーチャモ デルの導出方法について,具体的に説明する.

ハードウェ ア 選択モデル

制約された ソフトウェア フ ィー チャモデル ソ フト ウェ ア

フ ィー チャモデル

制約

依存

高性能 MCU

MCU 通信

低性能

MCU Blueto

USB oth 高性能

MCU MCU 通信

低性能

MCU Blueto

USB oth 高性能MCU

MCU 通信

低性能

MCU Blueto

USB oth 依存 依存

高性能

MCU Blueto

USB oth 高性能

MCU Blueto

USB oth 依存関係を逆に辿り , 選択なく さ れていない ハードウェ アフィー チャ へ依存関係を持つ

ソ フト ウェ アフィー チャ を除 外す る

依存関係を持つ

ハードウェ アフィー チャ を抽 出す る.

5.3:

制約されたソフトウェアフィーチャモデルの導出

5.3

にハードウェア選択モデルと依存関係から制約されたソフトウェアフィー チャモデルを導出するプロセスを示す.

まず,ハードウェアフィーチャモデルのすべてのハードウェアフィーチャのうち ソフトウェアフィーチャからの依存関係を持つハードウェアフィーチャを抽出す る.次にハードウェア選択モデルで選ばれていないハードウェアフィーチャの依 存関係を逆に辿り,依存関係を持つソフトウェアフィーチャを除外する.

この際,ソフトウェアフィーチャが子要素を持つ場合は,子要素もすべて除外 する.

5.2 ゲートウェイドライバ導出

5.2.1 ゲートウェイドライバの導出プロセス

ゲートウェ イ ド ライ バ

ハードウェ ア プ ロダ クト ソ フト ウェ ア プ ロダ クト ハードウェ ア構成管 理

ハードウェ ア 部品

モ デル ハード

ウェア モ デル ハードウェ ア部

品情報

ハードウェ ア構 成情報

ゲートウェ イドライ バ導 出 参照

HW製造 ハードウェ

ア 部品 モ デル ハードウェ

ア 部品 モ デル ハードウェ

ア 部品 モ デル

回路図 モ デル ブ ロッ ク図

モ デル ハードウェ ア

フ ィー チャモデル

ハードウェ ア 選択モデル

合成

ブ ロッ ク図 回路図 MCU データ シ ート デバイス データシー ト

ゲート ウェイ モ デル データ

シ ート DSL データ シ ート DSL

T T

ネット リ スト

ブ ロッ ク DSL

回路図 DSL T G

ハードウェ ア メ タモ デル

ゲートウェ イ メ タモ デル instanceOf instanceOf

5.4:

ゲートウェイドライバの導出プロセス

5.4

にゲートウェイドライバの導出プロセスの詳細図を示す.図内の小さな○

数字に沿って説明する.

1

2 :

本手法を適用するために必要なメタモデをあらかじめ定義してお く.ハードウェアメタモデルを定義するために,どのようなハードウェア情報が 必要か分析を行ったが,それについては

5.2.2

に説明する.定義したメタモデルに ついては

5.2.3

で説明する.

3 , 4 , 5 , 6 :

ゲートウェイドライバ導出に必要なハードウェアの情報 を

DSL

を使って入力する.データシート等の情報と,ハードウェアモデルでは表 現形式に乖離があるので,まずデータシート等での表現に近い形式を持った

DSL

を使って入力を行い,それを変換してハードウェアモデルを得る.

DSL

について の詳細は

5.2.4

で説明する.

7 : DSL

から変換された複数のモデルとハードウェア選択モデルを用いて,そ

のハードウェア選択モデルに対応したゲートウェイドライバの導出に必要なハー

ドウェア情報をすべて含んだハードウェアモデルを合成する.合成方法について は

5.2.5

で説明する.

8 :

合成されたハードウェアモデルを変換してゲートウェイモデルを得る.変 換方法については

5.2.6

で説明する.

9 :

変換されたゲートウェイモデルからコード生成を行い,ゲートウェイドラ イバを生成する.コード生成についても

5.2.6

で説明する.

5.2.2 ハードウェア情報の選択

本研究では,入力するハードウェア情報として,MCUとデバイスのデータシー ト,ブロック図,回路図を想定している.

4.3.2

で述べたように,ハードウェアは多 様であるため対象をある程度限定することによって形式化を行う.典型的なハー ドウェアを対象にそのデータシートの分析を行い,ハードウェアモデルのメタモ デルを決定する.

5.2.2.1 MCU

データシートの情報

以下に対象とするハードウェアの典型例として

Atmel

社の

MCU

である

Atmega328

のデータシートのアウトラインを示す.このデータシートは典型的な内容を含ん でいるのでこれを例に分析内容を説明する.

行頭に*がついた項目は,ハードウェア情報のうちソフトウェア開発に関係する 情報で,ハードウェアモデルとして扱う情報である.また

-

がついた項目はソフト ウェア開発に関係する情報であるが,ハードウェアモデルから除外した情報であ る.印のない項目は,ソフトウェア開発に関係しないため除外する.

0.Features

* 1.Pin Configuration 2.Overview

3.Resources

4.Data retention

5.About Code Examples

6.Capacitive Touch Sensing

7.AVR CPU Core

- 9.System Clock and Clock Options - 10.Power Managements and Sleep Modes - 11.System Control and Reset

- 12.Interrupts

- 13.External Interrupts

* 14.I/O Ports

- 15.8-Bit Timer/Counter0 with PWM - 16.16-bit Timer/Counter1 with PWM

- 17.Timer/Counter0 and Timer/Counter1 Prescalers

- 18.8-bit Tiemr/Counter2 with PWM and Asyncronous Operation

* 19.SPI - Serial Peripheral Interface

ドキュメント内 JAIST Repository https://dspace.jaist.ac.jp/ (ページ 49-53)