56
ID 310C: Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

Embed Size (px)

Citation preview

Page 1: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

ID 310C: Run-Time Visualization on Renesas MCUs

Matt Gordon

Sr. Applications Engineer

Version: 1.2

Micriµm

12 October 2010

Page 2: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

2

Matt Gordon

Sr. Applications Engineer Responsible for demos and example projects Multiple articles and white papers Head of Micriµm’s training program

2

Previous Experience Software engineer at Micriµm

– Developed device drivers and kernel ports Bachelor’s degree in computer engineering from Georgia Tech

Page 3: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

3

Renesas Technology and Solution Portfolio

Microcontrollers& Microprocessors

#1 Market shareworldwide *

Analog andPower Devices#1 Market share

in low-voltageMOSFET**

Solutionsfor

Innovation

Solutionsfor

InnovationASIC, ASSP& Memory

Advanced and proven technologies

* MCU: 31% revenue basis from Gartner "Semiconductor Applications Worldwide Annual Market Share: Database" 25 March 2010

** Power MOSFET: 17.1% on unit basis from Marketing Eye 2009 (17.1% on unit basis).

Page 4: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

44

Renesas Technology and Solution Portfolio

Microcontrollers& Microprocessors

#1 Market shareworldwide *

Analog andPower Devices#1 Market share

in low-voltageMOSFET**

ASIC, ASSP& Memory

Advanced and proven technologies

* MCU: 31% revenue basis from Gartner "Semiconductor Applications Worldwide Annual Market Share: Database" 25 March 2010

** Power MOSFET: 17.1% on unit basis from Marketing Eye 2009 (17.1% on unit basis).

Solutionsfor

Innovation

Solutionsfor

Innovation

Page 5: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

55

Microcontroller and Microprocessor Line-up

Superscalar, MMU, Multimedia Up to 1200 DMIPS, 45, 65 & 90nm process Video and audio processing on Linux Server, Industrial & Automotive

Up to 500 DMIPS, 150 & 90nm process 600uA/MHz, 1.5 uA standby Medical, Automotive & Industrial

Legacy Cores Next-generation migration to RX

High Performance CPU, FPU, DSC

Embedded Security

Up to 10 DMIPS, 130nm process350 uA/MHz, 1uA standbyCapacitive touch

Up to 25 DMIPS, 150nm process190 uA/MHz, 0.3uA standbyApplication-specific integration

Up to 25 DMIPS, 180, 90nm process 1mA/MHz, 100uA standby Crypto engine, Hardware security

Up to 165 DMIPS, 90nm process 500uA/MHz, 2.5 uA standby Ethernet, CAN, USB, Motor Control, TFT Display

High Performance CPU, Low Power

Ultra Low PowerGeneral Purpose

Page 6: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

66

Microcontroller and Microprocessor Line-up

Superscalar, MMU, Multimedia Up to 1200 DMIPS, 45, 65 & 90nm process Video and audio processing on Linux Server, Industrial & Automotive

Up to 500 DMIPS, 150 & 90nm process 600uA/MHz, 1.5 uA standby Medical, Automotive & Industrial

Legacy Cores Next-generation migration to RX

High Performance CPU, FPU, DSC

Embedded Security

Up to 10 DMIPS, 130nm process350 uA/MHz, 1uA standbyCapacitive touch

Up to 25 DMIPS, 150nm process190 uA/MHz, 0.3uA standbyApplication-specific integration

Up to 25 DMIPS, 180, 90nm process 1mA/MHz, 100uA standby Crypto engine, Hardware security

Up to 165 DMIPS, 90nm process 500uA/MHz, 2.5 uA standby Ethernet, CAN, USB, Motor Control, TFT Display

High Performance CPU, Low Power

Ultra Low PowerGeneral Purpose

Page 7: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

7

Innovation

7

Page 8: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

8

A New Interface to Embedded Systems

Gathering data from a running embedded system can be highly difficult. By making this task easier, Micriµm’s µC/Probe can substantially enhance your development efforts.

8

Page 9: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

9

Agenda

Introduction

Seeing Inside Embedded Systems

µC/Probe Features

µC/Probe from the User’s Perspective

How µC/Probe Works

When to Use µC/Probe

µC/Probe Demo

9

Page 10: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

10

Key Takeaways

By the end of this session you will…

Be familiar with the capabilities of Micriµm’s µC/Probe

Have a basic understanding of how µC/Probe works

Be prepared to use µC/Probe in your own projects

10

Page 11: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

11

Introduction

11

Page 12: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

12

Micriµm at a Glance

Founded in 1999 by Jean Labrosse, developer of µC/OS, µC/OS-II, and µC/OS-III

Headquarters in Weston, FL (USA), with a second office in Montréal, QC (Canada)

Mission is to provide high-quality, well-documented software to the embedded community

Micriµm is truly “for the way engineers work” With Micriµm’s products, embedded software developers have a clear time-to-market advantage

12

Page 13: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

13

Micriµm’s Software Components

µC/OS-II and µC/OS-III Real-Time Kernels

µC/OS-MMU and µC/OS-MPU

Kernel add-ons

µC/FS File system module

µC/GUI Graphical software for embedded

systems

µC/TCP-IP Highly dependable TCP/IP stack

13

Page 14: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

14

Micriµm’s Software Components (Cont.)

µC/USB Device and µC/USB Host

Versatile USB stacks

µC/CAN Robust CAN stack

µC/Modbus High-quality implementation of the

Modbus protocol

µC/FL Easy-to-use bootloader

µC/BuildingBlocks µC/Shell µC/CRC µC/Clk µC/LCD

14

Page 15: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

15

Seeing Inside Embedded Systems

Page 16: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

16

LEDs

Simple visual indication of an application’s progress

Feedback is binary

Application code must be instrumented

Simple drivers required

16

Page 17: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

17

printf()

Detailed information can be displayed

Feedback is in text form

Application code must be instrumented

Performance and memory footprint may be negatively impacted (Heisenberg effect)

17

Page 18: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

18

Graphical Displays

Feedback can take the form of words or pictures

Application code must be instrumented

Support code is not trivial

18

Page 19: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

19

Debuggers

Typically provide access to variables through a watch window

Variables are displayed as text

Updates occur only at breakpoints

Heisenberg effect is often significant

19

Page 20: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

20

µC/Probe

Continuous feedback is provided through a rich graphical interface

Application code does not need to be instrumented

No special hardware needed

Little or no impact on the performance of the target system

20

Page 21: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

21

µC/Probe Features

Page 22: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

22

Reading Variables

Access to any variable (with the exception of local or automatic variables)

Variables can easily be selected for monitoring via a list

Values can be displayed graphically or as text

22

Page 23: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

23

Recording Data

Any variable that can be monitored can also be logged

Data is logged into a simple text file

Speed at which data is logged depends on µC/Probe’s connection to the target

23

Page 24: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

24

Writing Variables

Variables can be written as the target runs

Text-based and graphical means of manipulating variables are available

24

Page 25: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

25

Graphical Interface

µC/Probe can be used to create a custom graphical interface for an embedded system

No programming is necessary

Developers can simply drag and drop components onto data screens

25

Page 26: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

26

Non-Intrusive Debugging

µC/Probe gathers data from running embedded systems

Effects on the behavior of application code are minimal

Changes to a user interface created in µC/Probe do not necessitate changes to application code

26

Page 27: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

27

Support for Almost Any MCU

µC/Probe was designed to be a universal tool

Micriµm’s customers have used µC/Probe with a wide variety of hardware platforms

CPU architecture is not an issue

27

Page 28: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

28

Popular Communication Protocols

µC/Probe can connect to a target via RS-232, USB, or TCP/IP

Device drivers are required on the embedded side

No special debug hardware is needed

28

Page 29: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

29

Compatibility with Other Tools

µC/Probe accepts an executable file as input

Any compiler that produces executable files of the ELF format can be used with µC/Probe

In many cases, µC/Probe can be used simultaneously with other tools

29

Page 30: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

30

Kernel Awareness

µC/Probe is a perfect match for Micriµm’s newest kernel µC/OS-III

µC/OS-III data screens are provided with µC/Probe

Since it is a universal tool, µC/Probe is not dependent on any kernel

30

Page 31: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

31

Free Evaluation

Two evaluation versions of µC/Probe are available from http://micrium.com/page/downloads/windows_probe_trial

Full-featured, 30-day evaluation version 5-symbol evaluation version (no time limit)

The 5-symbol version allows the use of kernel awareness

Free µC/Probe licenses are available to FAEs

31

Page 32: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

32

µC/Probe from the User’s Perspective

Page 33: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

33

µC/Probe Views

µC/Probe users can switch between two different views

Design View facilitates the development of a user interface Graphical components can be dragged and dropped onto data screens

In Run-Time View, the interface becomes active µC/Probe updates components with values gathered from a running embedded system

33

Page 34: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

34

Design View

34

Data screen

Symbol Browser

Workspace Explorer

Program Options

Start Button

Toolbars

Page 35: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

35

Graphical Components

35

Page 36: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

36

Configuring Components

Each graphical component is configurable

What characteristics can be configured varies from component to component

36

Page 37: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

37

µC/Probe Options

The Options dialog allows the communication protocol to be specified

Each protocol has its own configurable parameters

37

Page 38: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

38

How µC/Probe Works

Page 39: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

39

Implementation Overview

µC/Probe is made up of two components A Windows program that serves as a customizable interface to running embedded systems Embedded code that responds to requests from the Windows program

39

PC Embedded Target

RS-232, TCP/IP, or USB

Page 40: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

40

Communicating with the Target

µC/Probe users associate variables with graphical components in the Design View

40

PC Embedded Target

RS-232, TCP/IP, or USB

App_FileSel

Page 41: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

41

…0x80004000 App_FileSel

Communicating with the Target (Cont.)

The ELF file supplied to µC/Probe as input lists the address of each variable

41

PC Embedded Target

RS-232, TCP/IP, or USB

Example.out

Page 42: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

42

µC/Probe uses these addresses to formulate read and write requests

Communicating with the Target (Cont.)

42

PC Embedded Target

RS-232, TCP/IP, or USB

Read 0x80004000

Page 43: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

43

The requests are sent to the target in packets

Communicating with the Target (Cont.)

43

PC Embedded Target

RS-232, TCP/IP, or USB

Read 0x80004000

Page 44: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

44

Communicating with the Target (Cont.)

µC/Probe updates graphical components based on the target’s responses to the requests

44

PC Embedded Target

RS-232, TCP/IP, or USB

Value at 0x80004000:0x00000003

Page 45: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

45

Target-Resident Code

The target-resident code can be divided into two groups Hardware-independent code Device drivers and protocol stacks

The hardware-independent portion of the target-resident code has a tiny footprint

A few kBytes at the most

The amount of additional code required depends on the communication protocol being used

45

Page 46: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

46

Update Rates

The speed at which requests are sent from the PC to the target varies according to communication protocol

Via µC/Probe’s Options dialog, the delay between requests can be adjusted

46

Communication Method

Transmission Speed

RS-232 1,000 symbols/second

TCP/IP 11,000 symbols/second

USB 4,000 symbols/second

Page 47: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

47

When to Use µC/Probe

Page 48: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

48

Debugging

µC/Probe can be used to supplement a conventional debugger

Especially helpful for detecting stack overflows

Kernel awareness aids in debugging µC/OS-III-based applications

48

Page 49: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

49

Demonstrations

µC/Probe facilitates the development of eye-catching presentations

No on-board display hardware is needed for a µC/Probe-based presentation

Presentations are highly portable

49

Page 50: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

50

Demonstrations (Cont.)

50

Page 51: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

51

In the Field

µC/Probe is not solely a development tool

Technicians can use µC/Probe to gather status information from a product

Product performance is usually not affected by target-resident code

51

Page 52: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

52

µC/Probe Demo

Page 53: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

53

Questions?

53

Page 54: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

54

Innovation

54

Page 55: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010

5555

Thank You!

Page 56: ID 310C:Run-Time Visualization on Renesas MCUs Matt Gordon Sr. Applications Engineer Version: 1.2 Micriµm 12 October 2010