arm用統合開発環境 - iar systems...c-runとは? 統合開発環境iar embedded workbench for...

26
2015/4 IAR Systems K.K. ARM用統合開発環境 IAR Embedded Workbench for ARM 動的解析アドオン機能 C-RUNのご紹介

Upload: others

Post on 12-Jun-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

2015/4

IAR Systems K.K.

ARM用統合開発環境

IAR Embedded Workbench for ARM

動的解析アドオン機能 C-RUNのご紹介

Page 2: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

C-RUNとは?

統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオン機能です。単体テスト時の動的解析が簡単&安価に可能です。

難しい&高い

従来の解析ツール

簡単&安い

開発プロセスを変えずに デバッグ 効率アップ

・開発プロセスの変更が必要。 ・開発効率は 期待ほどupしない・・

C-RUN

Page 3: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

C-RUNでできること

C-RUNでは統合開発環境EWARMから以下の項目をチェック可能です。 1.ヒープチェック 2.バウンダリングチェック 3.整数演算のオーバーフロー 4.整数変換時のデータ精度落ち 5.整数シフトでのオーバーフロー 6.ゼロでの除算 7. Switch文で何もしないケースの検出。

自動でエラーチェックした結果を表示。

Page 4: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

EWARMとC-RUN

IDEツール ビルドツール IAR C-SPYデバッガ

エディタ

プロジェクトマネージャ

ライブラリビルダ

ライブラリアン

IAR C/C++コンパイラ

アセンブラ

リンカ

シミュレータ

ハードウェアドライバ

Powerデバッグ

RTOSプラグイン

EW

AR

M

C-RUN

チェック 項目の指定

チェックコードの

自動挿入

チェックコードによる違反検出

と 違反原因の表示

追加

追加

追加

C-RUNはEWARMにアドオンするユーザのテストを支援する 動的解析ツールになります

MISRA-C

Page 5: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

Why C-RUN?

以下のようなユーザーに最適です。 ・簡単かつ20万円以下の費用で、デバッグ効率を上げたい ・コードを変えずに解析を行いたい。 ・解析のためにわざわざテストケースを作成する余裕がない ・解析ツールには興味があるがコストが高すぎる ・解析ツールを所有しているが、設定が難しく使いこなせていない ・製品リリース後や保守フェーズに発生するバグリスクを減らしたい

統合開発環境EWARMのGUI上で、チェックを入れるだけ! テストケース、 コード変更は不要。

Page 6: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

C-RUNのメリット

• C言語で見過ごされやすい不具合要因を確認できます

• GUI上から簡単にON/OFF出来るので気軽に実施可能

• コンパイラ/デバッガに完全に統合されており通常の開発フローとして利用可能

• 開発の最初の工程から利用でき、利用するための工数はほとんどゼロです。

Page 7: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

C-RUNに必要なもの

C-RUNに必要なもの 1. EWARM製品版ライセンス ver7.20.1以降 *サイズ制限版、機能限定版(コンパイラのみ)は除く 2. C-RUN製品版ライセンス (C-RUNスタンドアロンでの利用は不可となります)

評価版でもC-RUNは、お試し可能です。 http://supp.iar.com/Download/SW/?item=EWARM-EVAL&lang=ja よりEWARM評価版をダウンロード下さい。 サイズ制限(12k)がかかっておりますが、評価用に制限が足りないなどあればまずはご相談下さい。

Page 8: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

これまでのEWARMロードマップ

2011 10

6.30 6.40 6.50 6.60 6.70 7.10

2012 6

2012 11

2013 6

2013 10

2014 2

• スタック使用量解析 • 速度最適化

• 新エディタ • ソースブラウザ • I-jet • M0+ サポート • 更なる速度最適化!

• JTAGjet-trace • 新ライセンスシステム • 外部ツール連携 • M0+ MTBトレース

• I-scope • 外部静的解析ツール連携

• サンプルオンデマンド • 新 pragma

• マルチコアデバッグ • Neonサポート

7.20

2014 5

• C-RUN

6.50.4 • Functional Safety

IARはコーディングに集中できる環境を提供します。

Page 9: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

C-RUN詳細

Page 10: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

C-RUNを使うには?

• オプション画面からチェックする項目に✔を入れ、

• 再コンパイルします。

Page 11: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:型変換

発生した違反

発生したソース位置

発生したPC位置

発生したコア (マルチコア対応)

データ値の表示 値0x000001f4を0xf4にした

コールスタックで、mainから、convを呼んだ中で発生したことを示しています。

Page 12: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:型変換

オーバーフロー原因の データ値を表示

Page 13: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:シフトオーバーフロー

シフトして値がオーバーフローすることを表示

Page 14: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:ゼロ除算

説明そのまま...

Page 15: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:未処理ケース

説明そのまま...

Page 16: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:領域外アクセス

アクセスと本来の領域がBoundsで示されています。

Page 17: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:間違ったメモリ管理

0x20000710は間違ったfreeアドレス。

Page 18: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:領域外アクセス

アクセスと本来の領域がBoundsで示されています。

Page 19: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

メッセージの見かた:同じエラーが発生

複数回発生した場合は、数字がインクリメントされます。

データ値や呼び出しが違うと 違う物としてまとめます。

Page 20: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

柔軟なC-RUN適用スコープ(単位)設定

プロジェクト単位でのみ設定

プロジェクト単位でもファイル単位でも

ON/OFF可能

Page 21: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

個別にC-RUNオプションを指定するには?

①ファイル(もしくはグループ)を選択し、

②継承した設定をオーバーライドにチェック

③個別にチェックを入れる

① ②

ここは選択不可能

Page 22: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

1983年 スウェーデンにて創業 1986年 世界で初めて組込みマイコン向け

C言語コンパイラを開発

日本国内でも代理店経由での販売開始

2001年 日本法人設立

2011年 IAR SYSTEMS GROUP ABが スウェーデン市場上場

■ 沿 革

【代表者】 上村 清史

【所在地】 東京都千代田区神田須田町1-21-5 C-5ビル5階

【設 立】 2001年1月15日

【従業員】 13名(技術/営業/業務)

■ 日本法人

■ スウェーデン本社

【代表者】 Stefan Skarin

【所在地】 スェーデン/ウプサラ市

【従業員】 約160名(2013年・グループ全体)

【売上高】 約30億円(2013年・グループ全体)

世界初の組込C言語コンパイラメーカー

世界40ヵ国以上で販売。のべ10万ライセンスの販売実績

日本法人には技術/営業/マーケティングチームが常駐。 国内ユーザーをフルサポート。

現地法人

IARシステムズ会社概要

Page 23: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

お問い合わせ

お見積りやご相談などお気軽にお問い合わせ下さい。 ユーザー様の状況に合わせた最適な提案をさせて頂きます。 【お問合せフォーム】 www.iar.com/customer_jp 【e-mail】 [email protected] 【TEL】 03-5298-4800

IARシステムズ株式会社 東京都千代田区神田須田町

1-21-5 C-5ビル 5階

23

Page 24: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

本資料について

Page 25: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

本資料取り扱い上の注意

25

本資料は2015年4月1日時点の情報を基に作成されており、将来変更の可能性 のあるものです。あわせてご紹介する設定や機能に関連して、動作保証をお約束するものではございませんので、ご了承ください 本資料で提供している情報は、ご利用されている方のご判断・責任においてご使用ください。提供した情報に関連して、ご利用される方が不利益等を被る事態が生じたとしても、弊社及び執筆者は一切の責任を負いかねますので、ご了承ください。 本資料の内容に関する弊社または各社へのお問合せはご遠慮ください。 本資料及びデータの再配布・無断転用・転載等はご遠慮ください。

Page 26: ARM用統合開発環境 - IAR Systems...C-RUNとは? 統合開発環境IAR Embedded Workbench for ARM (EWARM) のデバッグ機能が強化されました。 C-RUNはデバッグ効率アップを目的とした動的解析アドオ

商標について

26

• IAR Systems, IAR Embedded Workbench, C-SPY, C-RUN, C-STAT, visualSTATE, Focus on Your Code, IAR KickStart Kit, I-jet, I-scope, IAR, および IAR Systems のロゴタイプはIAR Systems ABが所有する商標または登録商標です。

• ARMおよびCortexは、ARM Limited(またはその子会社)のEUまたはその他の国における登録商標です。CoreSightは、ARM Limited(またはその子会社)のEUまたはその他の国における商標です。 All rights reserved.

• その他、本資料中の製品名やサービス名は全てそれぞれの所有者に属する商標または登録商標です。