ARM Corporate Presentation

Similar documents
mbed-nucleo-f401re-offline-works

Slide 1

IntroductionForGR-PEACH.pptx

PowerPoint Presentation

PowerPoint Presentation

PowerPoint プレゼンテーション

TRQerS - Introduction

MINI2440マニュアル

Quickstart Guide 3rd Edition

Microsoft Word - tool01.doc

著作権および商標 この文書には が所有権を持つ機密事項が含まれます この資料のいかなる部分も許 可無く複製 使用 公開することを固く禁じます 本書は の従業員および許可された 取引先だけに使用が認められています 本書で提供されたデータは正確で信頼性の高いものですが このデータの使用について株式会社

AN1526 RX開発環境の使用方法(CS+、Renesas Flash Programmer)

Microsoft Word - ALT0982_program_epcs_by_niosii_v10.doc

1. 概念 STM32F4 Discovery 基板は Mini USB を接続して デバッグやプログラムの書き込みができるようになっています 通常は CPU の 0x 番地からプログラムを実行します では なぜわざわざこのプロジェクトの雛形を使用して CPU の 0x

<4D F736F F F696E74202D20834A815B836C838B835C815B835882CC95E082AB95FB F4B2E B8CDD8AB B83685D>

「RAD Studio XE5によるマルチ言語/マルチデバイス開発の進め方」

eZ430-F2013 開発ツール

自己診断プログラム_基本設定

MINI2440マニュアル

Windows10 における Ac6 System Workbench for STM32 のダウンロードとインストール V /06/01 Windows10 の PC で Ac6 System Workbench for STM32 のダウンロードとインストールの方法について説明しま

ターゲット項目の設定について

Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for

US-122MK2/144MK2_RN-J_RevF

WinDriver PCI Quick Start Guide

Studuino ライブラリ環境設定Windows編

Welcome-Kit ~STM32L4-Nucleo~

P r o l o g e 広がる付属 FM マイコン基板ワールド 表 FM マイコン基板の主要スペック 搭載 CPU CPU アーキテクチャ 動作クロック フラッシュ ROM SRAM USB Ethernet MAC DMAC マルチファンクション シリアルベース タイマ FM マイコン MB9

ARM Cortex-M3 LPC1343

J-Link:ARM/RX向けデバッグプローブ

インテル(R) Visual Fortran コンパイラ 10.0

付録 G ESMPRO/AC 製品バージョン別対応 OS 一覧表 (Windows 版 ) 更新 各製品とも最新アップデートの適用を推奨します Windows Server 2016 (Hyper-V 含む ) *1 Windows Server 2012 R2 (Hyper-

1. USB の VCP( 仮想 COM ポート ) について USB の VCP( 仮想 COM ポート ) は USB を非同期シリアル通信として使用するための USB のドライバです PC には VCP ドライバをインストールする必要があります USB の VCP( 仮想 COM ポート )

IAR Embedded Workbench for ARM

Nios II 簡易チュートリアル

定番!ARMキット&PIC用Cプログラムでいきなりマイコン制御[DVD-ROM付き]

3.Preferred Audio Device に PCM-DSD USB Audio Interface が選択されていることを確認します また Active Audio Device の Native DSD Capability が DSD over PCM standard 1.0 に設定

Visual DSP++ install and tutorial

TOPPERS活用アイデア・アプリケーション開発

CrossCore Embedded Studio install and tutorial

概要 Windows Embedded Standard 7 は Windows Embedded Standard ポートフォリオにおける次世代プラットフォームで Windows 7 オペレーティングシステムのパワー 使いやすさ 信頼性を備えており カスタマイズ可能なコンポーネント化された形で提供

プロセッサ・アーキテクチャ

改訂履歴 改訂日付 改訂内容 2014/11/01 初版発行 2017/01/16 Studuino web サイトリニューアルに伴う改訂 2017/04/14 Studuino web サイトリニューアルに伴うアクセス方法の説明変更 2018/01/22 Mac 版インストール手順変更に伴う改訂

1. 新規プロジェクト作成の準備新規プロジェクトのためのフォルダを用意して そこにプロジェクトを作成します [ 新しいフォルダー ] をクリックして希望のフォルダに新しいフォルダを作成します この例では TrST_F401N_BlinkLD2 というフォルダを作成しました TrST_F401N_Bl

Visual DSP++ install and tutorial

Page 2 ワークスペースはプロジェクト管理の最上位であり IAR Embedded Workbench を起動すると自動的にオープンします ワークスペースには複数のプロジェクトを登録することができるので ここではメインのアプリケーションとブートローダのプロジェクトを登録します このワークスペース

Red Hat Enterprise Linux 6 Portable SUSE Linux Enterprise Server 9 Portable SUSE Linux Enterprise Server 10 Portable SUSE Linux Enterprise Server 11 P

MINI2440マニュアル

OS と Starter Pack の対応 (Express5800/R110j-1 向け ) OS と Starter Pack について Express5800/R110j-1 ( 以下サーバ本体製品 ) では Starter Pack のバージョンによってサポート可能な OS が決まります シ

SOULNOTE D-1/D-2 ドライバー / ファームウェア設定方法 2018 年 11 月 21 日 D-1/D-1N/D-2 ドライバー / ファームウェア設定方法 SOULNOTE D-1/D-1N/D-2 のドライバー / ファームウェアの設定方法です ドライバー : D-1/D-1N/

Notes and Points for TMPR454 Flash memory

DWR-S01D Updater 取扱説明書 発行日 :2011/2/28

ドライバインストールガイド

< 付録A: ソフトウェアアップデート >

統合開発環境 High-performance Embedded Workshop V へのリビジョンアップのお知らせ

Merging と AES67 ディバイスの設定

PowerPoint プレゼンテーション

PGRelief C/C++ 強化ポイント説明書

AP-RZA-1A RTX Ethernetサンプルプログラム解説

Studuinoライブラリ環境設定Mac編

プログラムのデバッグ

Introduction USB Boot とは何ですか? USB メディア フラッシュメモリ媒体からの Windows XP Embedded の起動 USB Boot による機器開発のシナリオ Introduction USB Boot とは? Windows XP Embedded を UFD

AN1815 Renesas Synergy™ CANサンプルプログラム解説 (AP-S5D9-0A)

クイックスタート [USB メモリのセキュリティ無料版用 ] 2 / 18 パソコンへのインストール セットアップファイルの名前は次のファイル名です 環境によっては ".exe" の部分は表示されていない場合もあります このファイルを実行 ( ダブルクリック ) して インストールを開始します エデ

GNU_Tools_dwl_Plagin

開発環境構築ガイド

Silicon Labs 社 MGM1xx クイックスタートガイド 2018 年 7 月

マルチプレーヤー CDJ-350 TRAKTOR PRO/PRO 2 接続ガイド

今週の進捗

MINI2440マニュアル

Microsoft Word - EFI_Framework_Debug_JP.doc

システム要件 Trend Micro Safe Lock 2.0 SP1 Trend Micro Safe Lock 2.0 SP1 エージェントのシステム要件 OS Client OS Server OS Windows 2000 (SP4) [Professional] (32bit) Wind

TR3通信コマンド仕様

Eclipse&gcc install and tutorial

Setting up HeapAgent if you’re using

目次 初めに必ずお読みください ソフトウェアのインストール ソフトウェアの選択 ソフトウェアのインストール レシーバー用ドライバのインストール WindowsXP のインストール方法 Win

Windows Embedded 8 Standard

開発ツールのコラボレーション機能を検証する

開発方法

サーバセキュリティサービスアップグレード手順書 Deep Security 9.6SP1 (Windows) NEC 第 1 版 2017/08/23

背景 1 / Reprinted with permission from paper c 2013 SAE International.

Microsoft Word - DWR-S01D_Updater_取扱説明書_120514A.doc

STM32 ファミリ : Arm® Cortex®-Mコア 32bitマイクロコントローラ

開発環境構築ガイド

PCL6115-EV 取扱説明書

Windows Embedded Community Day 第 5 回 - IoT がもたらす新しい社会と変化 - ドライバ開発から Azure 接続まで - Windows Embedded Community Day 株式会社デバイスドライバーズ日高亜友

ここをクリックしてダウンロードする ダウンロードした zip ファイルを解凍する とインストーラが現れます インストーラを 起動してインストールを開始しましょう イ ンストーラの [ Next > ] ボタンを押してい けばインストールできます ライセンスの画面では I accept the ter

Transcription:

オフラインコンパイラと CMSIS-DAP デバッグ環境の紹介 アーム株式会社 ARM サービス部門アプリケーションエンジニア 渡會豊政 1 1

自己紹介 渡會豊政 ( わたらいとよまさ ) ソフトウェア開発ツール ( 主にコンパイラ ) の技術サポート LPC1114 mbedのポーティングとかやりました Twitter : @toyowata https://mbed.org/users/macrum/notebook アーム株式会社の公式ツイッター @arm_link もよろしくお願いします 2

Agenda オフラインコンパイラについて KEIL MDK-ARM CMSIS-DAP を使ったデバッグ環境 デモ 3

オフラインコンパイラって? mbed のプロジェクトファイルをエクスポートして オフライン ( ローカル ) 環境でビルドする 様々な利点 ターゲットのソースコードレベルデバッグ 最新バージョンの最適化コンパイラの使用 mbed でサポートされているオフライン環境 Keil uvision4 DS-5 Code_red Red Suite 4 GCC (Code Sourcery) GCC (ARM Embedded) IAR Systems ZIP Archive 4

Keil MDK-ARM について Keil と書いて かいる と読む ドイツの開発ツールベンダー (2005 年に ARM によって買収 ) 8051, C166 等の 8/16-bit MCU 用のツールも提供中 MDK-ARM は IDE コンパイラ RTOS ミドルウェア含めた統合開発ツールの製品名 uvision 4 は IDE の名称 C/C++ コンパイラは ARM 純正コンパイラ (RealView ) ホスト OS は Windows XP SP2, Vista, 7 (32/64) 5

MDK-ARM エディションの違い µvision IDE( 統合開発環境 ) デバッガ シミュレータ ARM コンパイラ MDK-Pro MDK-Standard MDK- Cortex-M MDK-Lite 32KB 32KB C/C++ コンパイラツール 32KB RTOS, ミドルウエア RTX RTOS ( ソースコード ) TCP Networking Suite Flash File system USB Driver CAN (Source Code) ライセンス 購入の必要性 無料 Cortex-M エディションは Cortex-R4, ARM7, ARM9, SecureCore には未対応 6

ARM Compiler 5 の新機能 Thumb-2 インラインアセンブラ対応 C/C++ ソースから アセンブラコードの記述が可能 新しいコンパイラフロントエンド Cortex-M0+ 対応 オンラインコンパイラは ARMv6-M アーキテクチャ対応 コード最適化の向上 (--loop_optimization_level=n) インライン展開 ループ展開 http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0491i/babdecfa.html 7

ベンチマーク ( 参考値 ) など mbed Clock Control / Benchmarks http://mbed.org/users/no2chem/notebook/mbed-clockcontrol--benchmarks/ CoreMark の mbed への移植版 最適化用のコンパイルオプション CoreMark @ 96MHz Code size (bytes) オンライン版 armcc v4.1 オフライン版 armcc 5.03 -O2 Otime 155.86 31,428 -O2 Otime 161.70 31,384 オフライン版 armcc 5.03 -O3 Otime -loop_optimization_level=2 232.88 34,272 8

CMSIS って? Cortex Microcontroller Software Interface Standard しーえむしす または しーえむえすあいえす と読んで下さい Cortex-M プロセッサシリーズ向けのベンダに依存しないハードウェア抽象化レイヤ CMSIS Core の例 特殊レジスタアクセス関数 get_xpsr(), set_primask(), set_msp() 等 NVIC アクセス関数 NVIC_EnableIRQ(), NVIC_GetPriority() 等 SysTick アクセス関数 デバッグ関数 ITM_SendChar() 関数を使った printf ライクなデバッグ出力 9

MCU CMSIS USER CMSIS v3 最新バージョン Application Code CMSIS-DSP DSP-Library CMSIS-RTOS API Debugger (3 rd Party) CMSIS-CORE Real Time Kernel (3 rd Party) Device Peripheral Functions (Silicon Vendor) Core Peripheral Functions CMSIS CMSIS SIMD Cortex-M4 Peripheral Register & Interrupt Vector Definitions SVD DAP Cortex CPU SysTick RTOS Kernel Timer NVIC Nested Vectored Interrupt Controller Debug + Trace Other Peripherals CoreSight 10

CMSIS-DAP って? Firmware for the CoreSight Debug Access Port USB HID 接続を通じて CoreSight-DAP へのアクセスを標準化 異なるベンダーツールを使用したデバッグを提供 例 :Keil uvision4 と NXP LPC-Link2 の接続 11

mbed をデバッグする ( 準備 ) ファームウェアを最新版にアップデートする http://mbed.org/handbook/cmsis-dap-mdk http://mbed.org/handbook/firmware Keil MDK-ARM 無償評価版をインストールする https://www.keil.com/arm/demo/eval/arm.htm シリアルドライバのインストール ( 必須!) http://mbed.org/media/downloads/drivers/mbedwinserial_16 466.exe 12

mbed をデバッグする オンラインコンパイラで作成したプロジェクトをエクスポートする Keil uvision4 を選択 zip ファイルを展開し <project>.uvproj をダブルクリック Project -> Options -> Debug CMSIS-Debugger を選択 Debug -> Start/Stop Debug Session 13

mbed で使用可能なデバッグ機能 C/C++ ソースレベルデバッグ 逆アセンブラ 実行 停止 シングルステップ フラッシュメモリへの書き込み (ROM 上のコードをデバッグ ) USB ストレージにはダウンロードしない ( する事も可能 ) ハードウェアブレークポイント (4 または 8 箇所 ) Flash のコード領域は ハードウェアブレークポイントを使用 ウォッチポイント (2 または 4 カ所 ) Read/Write データアクセスブレーク CPU レジスタ ペリフェラルレジスタへのアクセス 14

デバッガの便利な機能を使う パフォーマンスアナライザとコードカバレジ MTB でインストラクショントレース ロジックアナライザ機能でバーチャル L チカ 15

デバッガの便利な機能を使う パフォーマンスアナライザ ボトルネックの検出 コードカバレジ デッドコードの検出 16

デバッガの便利な機能を使う MTB(Micro Trace Buffer) でインストラクショントレースを取得する (LPC800-Mini を使う場合 ) C: Keil ARM Boards Embedded Artists LPCXpresso LPC800 Blinky_MTB Dbg_MTB.ini をローカルプロジェクトにコピー [Debug] [Initialization file:] に追加 Buffer Size : 256B Buffer Position : 0x10000200(.bss とスタックに重ならないように ) 17

デバッガの便利な機能を使う ロジックアナライザ機能でバーチャル L チカ (LPC1768 で LED1:P1_18 を使う場合 ) ターゲットは シミュレータ [Logic Analyzer] - [Setup] から [New] を選択し ((unsigned long *)0x2009C034)[0] を追加 [Display Type] -> Bit [Add Mask] > 0x00040000 [Shift Right] -> 18 LA (((unsigned long *)0x2009C034)[0] & 0x40000) >> 18 18

まとめ オフラインコンパイラも mbed 開発の選択肢のひとつ CMSIS-DAP 対応ファームウェアと MDK-ARM 無償評価版で お手軽デバッグ 本格的なデバッグが出来る MTB でトレースも取れる 19