1 / 56

ID 310C: Run-Time Visualization on Renesas MCUs

ID 310C: Run-Time Visualization on Renesas MCUs. Micriµm. Matt Gordon. Sr. Applications Engineer. 12 October 2010. Version: 1.2. Matt Gordon. Previous Experience Software engineer at Micriµm Developed device drivers and kernel ports

jeff
Download Presentation

ID 310C: Run-Time Visualization on Renesas MCUs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Matt Gordon • Previous Experience • Software engineer at Micriµm • Developed device drivers and kernel ports • Bachelor’s degree in computer engineering from Georgia Tech • Sr. Applications Engineer • Responsible for demos and example projects • Multiple articles and white papers • Head of Micriµm’s training program 2

  3. Renesas Technology and Solution Portfolio Microcontrollers& Microprocessors#1 Market shareworldwide * SolutionsforInnovation Analog andPower Devices#1 Market sharein low-voltageMOSFET** ASIC, ASSP& MemoryAdvanced 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).

  4. Renesas Technology and Solution Portfolio Microcontrollers& Microprocessors#1 Market shareworldwide * SolutionsforInnovation Analog andPower Devices#1 Market sharein low-voltageMOSFET** ASIC, ASSP& MemoryAdvanced 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). 4

  5. Microcontroller and Microprocessor Line-up • Up to 1200 DMIPS, 45, 65 & 90nm process • Video and audio processing on Linux • Server, Industrial & Automotive Superscalar, MMU, Multimedia • Up to 500 DMIPS, 150 & 90nm process • 600uA/MHz, 1.5 uA standby • Medical, Automotive & Industrial High Performance CPU, Low Power • Up to 165 DMIPS, 90nm process • 500uA/MHz, 2.5 uA standby • Ethernet, CAN, USB, Motor Control, TFT Display High Performance CPU, FPU, DSC • Legacy Cores • Next-generation migration to RX R32C H8S H8SX M16C General Purpose Ultra Low Power Embedded Security • Up to 25 DMIPS, 150nm process • 190 uA/MHz, 0.3uA standby • Application-specific integration • Up to 10 DMIPS, 130nm process • 350 uA/MHz, 1uA standby • Capacitive touch • Up to 25 DMIPS, 180, 90nm process • 1mA/MHz, 100uA standby • Crypto engine, Hardware security 5

  6. Microcontroller and Microprocessor Line-up • Up to 1200 DMIPS, 45, 65 & 90nm process • Video and audio processing on Linux • Server, Industrial & Automotive Superscalar, MMU, Multimedia All Of Them! • Up to 500 DMIPS, 150 & 90nm process • 600uA/MHz, 1.5 uA standby • Medical, Automotive & Industrial High Performance CPU, Low Power • Up to 165 DMIPS, 90nm process • 500uA/MHz, 2.5 uA standby • Ethernet, CAN, USB, Motor Control, TFT Display High Performance CPU, FPU, DSC • Legacy Cores • Next-generation migration to RX R32C H8S H8SX M16C General Purpose Ultra Low Power Embedded Security • Up to 25 DMIPS, 150nm process • 190 uA/MHz, 0.3uA standby • Application-specific integration • Up to 10 DMIPS, 130nm process • 350 uA/MHz, 1uA standby • Capacitive touch • Up to 25 DMIPS, 180, 90nm process • 1mA/MHz, 100uA standby • Crypto engine, Hardware security 6

  7. Innovation 7

  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

  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

  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

  11. Introduction 11

  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

  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

  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

  15. Seeing Inside Embedded Systems

  16. LEDs Simple visual indication of an application’s progress Feedback is binary Application code must be instrumented Simple drivers required 16

  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

  18. Graphical Displays Feedback can take the form of words or pictures Application code must be instrumented Support code is not trivial 18

  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

  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

  21. µC/Probe Features

  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

  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

  24. Writing Variables Variables can be written as the target runs Text-based and graphical means of manipulating variables are available 24

  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

  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

  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

  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

  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

  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

  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

  32. µC/Probe from the User’s Perspective

  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

  34. Design View Start Button Toolbars Program Options Data screen Workspace Explorer Symbol Browser 34

  35. Graphical Components 35

  36. Configuring Components Each graphical component is configurable What characteristics can be configured varies from component to component 36

  37. µC/Probe Options The Options dialog allows the communication protocol to be specified Each protocol has its own configurable parameters 37

  38. How µC/Probe Works

  39. Implementation Overview RS-232, TCP/IP, or USB PC Embedded Target • µ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

  40. Communicating with the Target App_FileSel RS-232, TCP/IP, or USB PC Embedded Target µC/Probe users associate variables with graphical components in the Design View 40

  41. Communicating with the Target (Cont.) Example.out … 0x80004000 App_FileSel … RS-232, TCP/IP, or USB PC Embedded Target The ELF file supplied to µC/Probe as input lists the address of each variable 41

  42. Communicating with the Target (Cont.) Read 0x80004000 RS-232, TCP/IP, or USB PC Embedded Target µC/Probe uses these addresses to formulate read and write requests 42

  43. Communicating with the Target (Cont.) Read 0x80004000 RS-232, TCP/IP, or USB PC Embedded Target The requests are sent to the target in packets 43

  44. Communicating with the Target (Cont.) Value at 0x80004000: 0x00000003 RS-232, TCP/IP, or USB PC Embedded Target µC/Probe updates graphical components based on the target’s responses to the requests 44

  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

  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

  47. When to Use µC/Probe

  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

  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

  50. Demonstrations (Cont.) 50

More Related