Download presentation
Presentation is loading. Please wait.
Published byRhoda Bradford Modified over 9 years ago
1
Renesas Electronics America Inc. © 2010 Renesas Electronics America Inc. All rights reserved. ID 322L:Advanced Debugging on the RX600 Brandon Hussey Applications Engineer Version: 1.0 12 & 13 October 2010
2
2 © 2010 Renesas Electronics America Inc. All rights reserved. Brandon Hussey Applications Engineer E1 & E20 RX support – Flash API & FlashLoader RPDL & PDG PREVIOUS EXPERIENCE: Interned at Renesas for 3 years Joined on full-time after graduation I hold an MSCPE from North Carolina State University
3
3 © 2010 Renesas Electronics America Inc. All rights reserved. Renesas Technology and Solution Portfolio Microcontrollers & Microprocessors #1 Market share worldwide * Analog and Power Devices #1 Market share in low-voltage MOSFET** Solutions for Innovation 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).
4
4 © 2010 Renesas Electronics America Inc. All rights reserved. 4 Renesas Technology and Solution Portfolio Microcontrollers & Microprocessors #1 Market share worldwide * Analog and Power Devices #1 Market share in low-voltage MOSFET** 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). Solutions for Innovation
5
5 © 2010 Renesas Electronics America Inc. All rights reserved. 5 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 process 350 uA/MHz, 1uA standby Capacitive touch Up to 25 DMIPS, 150nm process 190 uA/MHz, 0.3uA standby Application-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 Power General Purpose
6
6 © 2010 Renesas Electronics America Inc. All rights reserved. 6 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 process 350 uA/MHz, 1uA standby Capacitive touch Up to 25 DMIPS, 150nm process 190 uA/MHz, 0.3uA standby Application-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 Power General Purpose RX Ethernet, CAN, USB, UART, SPI, IIC
7
7 © 2010 Renesas Electronics America Inc. All rights reserved. Innovation MCU FeatureFull ICEOn Chip Address Breakpoints Data Breakpoints Trace Time Measurement
8
8 © 2010 Renesas Electronics America Inc. All rights reserved. Position Renesas offers full range of debugging options MCU
9
9 © 2010 Renesas Electronics America Inc. All rights reserved. Agenda Debugging features of the RX600 Complex Breakpoints Branch & Data Trace Performance Counters RAM Monitor E1 & E20 RX Simulator E100 Lab
10
© 2010 Renesas Electronics America Inc. All rights reserved. 10 Debugging Features of the RX600
11
11 © 2010 Renesas Electronics America Inc. All rights reserved. Debugging Features – Complex Breakpoints Breakpoints can monitor either: Execution Address Data Access Execution Address is used for standard ‘Before PC’ breaks Data Access breakpoints can monitor reads and writes Flash AddressAssembly Code FFFF8B15MOV.L #00001144H,[R14]
12
12 © 2010 Renesas Electronics America Inc. All rights reserved. Other features that are used along with breakpoints Masking – Look for a range of values Combine Breakpoints – AND – OR – Sequential Data 0x1234Data 0x1200 Debugging Features –Breakpoint Extras Event #1 Event #2 Break Event #1 Event #2 BreakEvent #1Event #2Break >>= Mask 0xFF00
13
13 © 2010 Renesas Electronics America Inc. All rights reserved. Debugging Features – Trace Branch Trace Tracks branch sources and destinations Can fill in instructions in between destination and next branch Data Access Trace Where to store the data? Internal buffer Stream to PC Flash AddressInstruction FFFF0000BRANCH #FFFF0008 FFFF0004ADD R1, R2, R3 FFFF0008MOV R4, R5 FFFF000CSUB R3, R2, R1 FFFF0010BRANCH #FFFF0200 Trace Buffer
14
14 © 2010 Renesas Electronics America Inc. All rights reserved. Debugging Features – Performance Counters RX600 has two dedicated 32-bit counters Used to measure CPU cycles between triggers Can filter cycles – All cycles – Cycles spent in interrupt – Number of interrupts Can cascade counters for 64-bit operation + Instruction Stream Count Start Trigger Count Stop Trigger
15
15 © 2010 Renesas Electronics America Inc. All rights reserved. Debugging Features – RAM Monitor Has 4 x 1kB blocks to setup Uses Debug DMAC to remove burden from MCU Color coded to visualize accesses “Read” “Written” “Unchanged”
16
© 2010 Renesas Electronics America Inc. All rights reserved. 16 E1 & E20
17
17 © 2010 Renesas Electronics America Inc. All rights reserved. E1 & E20 Supports the RX family The features do not come from these! E1 has 14 pin JTAG connection E20 has 38 pin JTAG + Trace connection
18
18 © 2010 Renesas Electronics America Inc. All rights reserved. The E20 debugger allows any Renesas MCU to use Data Access breakpoints. 1.True 2.False ?
19
© 2010 Renesas Electronics America Inc. All rights reserved. 19 RX Simulator
20
20 © 2010 Renesas Electronics America Inc. All rights reserved. RX Simulator Comes free with the RX toolchain Cycle accurate simulation Has performance analysis built in Can trigger interrupts Great for testing software routines
21
© 2010 Renesas Electronics America Inc. All rights reserved. 21 E100
22
22 © 2010 Renesas Electronics America Inc. All rights reserved. How many of you know what code coverage is?? char foo(x) { x = y + z; return x; } void bar(y) { y = a + b; }
23
23 © 2010 Renesas Electronics America Inc. All rights reserved. How many of you know the difference between C0, C1, and C2 code coverage? ? if(x) { function1(); } { function2(); } if(y) { function3(); } else { function4(); } CombinationC0C1C2 function1 >> function3 function1 >> function4 function2 >> function3 function2 >> function4
24
24 © 2010 Renesas Electronics America Inc. All rights reserved. E100 Above and beyond E1 & E20 Full trace Code coverage and profiling Stack overflow detection
25
25 © 2010 Renesas Electronics America Inc. All rights reserved. Questions?
26
26 © 2010 Renesas Electronics America Inc. All rights reserved. Start the Lab Keep your dice turned to the section of the lab you are on. (Instructions are provided in the lab handout) Please refer to the Lab Handout and let’s get started!
27
27 © 2010 Renesas Electronics America Inc. All rights reserved. Checking Progress We are using the die to keep track of where everyone is in the lab. Make sure to update it as you change sections. When done with the lab, your die will have the 6 pointing up as shown here.
28
28 © 2010 Renesas Electronics America Inc. All rights reserved. Lab Question 1 Question: Why does the linker give an error while building the project when the compiler is configured to output preprocessed source files (*.p files)? Answer: Because object files are not generated and therefore the linker has no input files. ?
29
29 © 2010 Renesas Electronics America Inc. All rights reserved. Lab Question 2 Question: Which data block was being processed when the error occurred? Answer: 5 ?
30
30 © 2010 Renesas Electronics America Inc. All rights reserved. Lab Question 3 Question: If you wanted to break when a variable is set to a value between 0x80 and 0x87 or 0x90 and 0x97 (break on 0x80 <= x <= 0x87 or 0x90 <= x <= 0x97) what would your ‘Data’ and ‘Mask’ fields be in the Event Setting window (as shown in Figure 4‑4)? Answer: Data = 0x80, Mask = 0xE8 ?
31
31 © 2010 Renesas Electronics America Inc. All rights reserved. Lab Question 4 Question: Fill in the numbers for the Order column to have the Sequential breakpoint occur when the events have occurred in the following order: Answer: 1.First, main() function has been encountered 2.SequenceID has been written as 0x34 3.CurrentState has been written as 0x01 4.ValidateData() function has been executed 5.Last, SequenceID has been written as 0x45 ?
32
32 © 2010 Renesas Electronics America Inc. All rights reserved. Lab Questions 5 & 6 Question 5: How many cycles did it take to perform the CRC calculation using the RX610’s CRC peripheral? Answer: 1,144 Question 6: How much faster is the hardware calculation per byte? Answer: 3.37 times quicker ?
33
33 © 2010 Renesas Electronics America Inc. All rights reserved. Questions?
34
34 © 2010 Renesas Electronics America Inc. All rights reserved. Innovation MCU FeatureFull ICEOn Chip Address Breakpoints Data Breakpoints Trace Time Measurement
35
© 2010 Renesas Electronics America Inc. All rights reserved. 35 Thank You!
36
Renesas Electronics America Inc.
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.