ホーム > 製品・サービス情報 > マイコン変更支援サービス

マイコン変更支援サービス

マイコン(MPU)品種、メーカー変更に対するソフトウエア変更 動作一致検証を支援
クロスコンパイラ開発で培った知見をベースに MPU変更時の影響度をレポート
単体テストにより 関数単体レベルでの動作一致性を検証・レポート

ガイオは、長年のオリジナルクロスコンパイラの開発で培った知見をベースに、異なるメーカー、異なる品種へのマイコン変更に伴うソフトウエア資産の移行、移行後の品質確認を行うサービスを提供しています。

異なるマイコン構造、周辺回路へ対応や、異なるクロスコンパイラに対応するためのソースコード変更、ソースコード移植後の動作一致性確認テストの支援を致します。

サービス内容

代替MPUへのソフトウェア変更作業量の見積り(無料)

クロスコンパイラ開発、コード解析ツール開発など、マイコンに関する知見を基に、代替えMPUへソフトウエアを移植する際の作業見積もりを提供致します。以下のサービス内容を無料でお見積致します。

代替MPUへのソフトウェア変更作業

人手によるソフトウエア変更作業を始め、機械化可能な部分についてのコンバージョンツールの開発提供も可能です。作業に必要な人的なリソースを短時間で確保可能です。お見積は無料です。

代替MPUへのソフトウェア変更後の影響確認テストを実施

クロスコンパイラ開発、コード解析ツール開発などの知見を基に、「MPU特性抽出テストソース」を使用して、代替製品へのソフトウェア変更の影響確認テスト、影響度レポートを行います。

【MPU変更時の影響例】

1)処理系依存の記述
コードの実現方法がコンパイラに依存する記述、例えば、「c = a() + b()」の場合の関数a()、b()の実行順序は、処理系にゆだねられています。
2)浮動小数点
一般的なクロスコンパイラにおいて、浮動小数点の指数/仮数などの実装は、IEEE754に準拠していますが、クロスコンパイラによっては、独自のビット実装仕様を行っている物があります。
3)ビットフィールド
コンパイラに依存して、LSB詰めmMSB詰め、アラインメントの影響を受けるものがあります。
4)エンディアン
同じ領域を異なる型で参照する共用体や、異なる型のポインタで参照する場合には、エンディアンによる影響があります。
5)アラインメント
構造体メンバー間に取られる境界調整の空きエリアは、マイコンにより仕様が異なります。
6)型による変数のサイズ
int型はマイコン(CPU)のビット数によってサイズが異なります。また、その他の型(doubleなど)もマイコン、コンパイラに依存して変わることがあります。
7)ポインタサイズ
ポインタのサイズもint型と同様に、マイコン(CPU)のビット数によってサイズが異なります。
8)シフト演算
シフト演算時に、ビット長を越えるシフトを行った場合、マイナス値を指定したシフト演算の動作は、マイコン仕様により異なります。
9)NULLアクセス
マイコンによっては、0番地アクセスが可能なマイコンがあります。
10)メモリキャッシュ
キャッシュが搭載されているマイコンでは、キャッシュの内容を実際のメモリに書き戻す時間差があるため、必要なときに意図したメモリが書き換わっていないことが問題となる場合があります。


関数単体レベルでの動作一致性確認テストを実施

また、関数の品質が保たれていることを確認するために、関数単体レベルでの、変更前のMPUと代替えMPUとの動作一致性確認テストの実施も可能です。ガイオの単体テストツール「カバレッジマスターwinAMS」を使用して、最小限の工数で、カバレッジ網羅比較、期待値比較テストを実施します。



本サービスの詳細に関するお問い合わせは・・

弊社営業部までお問い合わせ下さい。

ガイオ・テクノロジー株式会社 営業部


参考資料 (GAIO CLUBより)