REJ10J1134-0200 H8/300L Super Low Power E6000 Emulator User’s Manual Renesas Microcomputer Development Environment System H8 Family / H8/300L Super Low Power Series HS38000EPI61HE-U2 Rev.2.00 Revision Date: Nov.
Keep safety first in your circuit designs! 1. Renesas Technology Corp. puts the maximum effort into making semiconductor products better and more reliable, but there is always the possibility that trouble may occur with them. Trouble with semiconductors may lead to personal injury, fire or property damage.
IMPORTANT INFORMATION READ FIRST • READ this user's manual before using this emulator product. • KEEP the user's manual handy for future reference. Do not attempt to use the emulator product until you fully understand its mechanism. Emulator Product: Throughout this document, the term "emulator product" shall be defined as the following products produced only by Renesas Technology Corp. excluding all subsidiary products.
LIMITED WARRANTY Renesas warrants its emulator products to be manufactured in accordance with published specifications and free from defects in material and/or workmanship. Renesas, at its option, will repair or replace any emulator products returned intact to the factory, transportation charges prepaid, which Renesas, upon inspection, determine to be defective in material and/or workmanship. The foregoing shall constitute the sole remedy for any breach of Renesas' warranty.
State Law: Some states do not allow the exclusion or limitation of implied warranties or liability for incidental or consequential damages, so the above limitation or exclusion may not apply to you. This warranty gives you specific legal rights, and you may have other rights which may vary from state to state.
SAFETY PAGE READ FIRST • READ this user's manual before using this emulator product. • KEEP the user's manual handy for future reference. Do not attempt to use the emulator product until you fully understand its mechanism. DEFINITION OF SIGNAL WORDS This is the safety alert symbol. It is used to alert you to potential personal injury hazards. Obey all safety messages that follow this symbol to avoid possible injury or death.
WARNING Observe the precautions listed below. Failure to do so will result in a FIRE HAZARD and will damage the user system and the emulator product or will result in PERSONAL INJURY. The USER PROGRAM will be LOST. 1. Do not repair or remodel the emulator product by yourself for electric shock prevention and quality assurance. 2. Always switch OFF the E6000 emulator and user system before connecting or disconnecting any CABLES or PARTS. 3.
CAUTION This equipment has been tested and found to comply with the limits for a Class A digital device, pursuant to part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference when the equipment is operated in a commercial environment. This equipment generates, uses, and can radiate radio frequency energy and, if not installed and used in accordance with the instruction manual, may cause harmful interference to radio communications.
Introduction The E6000 emulator is an advanced realtime in-circuit emulator, which allows programs to be developed and debugged for the H8 family microcomputers. The E6000 emulator can either be used without a user system, for developing and debugging software, or connected via a user system interface cable to a user system, for debugging user hardware.
About This Manual This manual contains the following information. Emulator Debugger Part: Preparation before use, E6000 emulator functions, debugging function, tutorial, and hardware and software specifications of the E6000 emulator.
Contents Emulator Debugger Part Section 1 Overview........................................................................................... 1 1.1 1.2 1.3 1.4 Features .............................................................................................................................1 Warnings ...........................................................................................................................2 Environmental Conditions ........................................................
3.5 Online Help.......................................................................................................................... 23 Section 4 Preparation before Use ......................................................................25 4.1 Method for Activating High-performance Embedded Workshop..................................... 25 4.1.1 Creating a New Workspace (Toolchain Not Used).............................................. 26 4.1.2 Creating a New Workspace (Toolchain Used)..............
5.8 5.9 5.7.14 Deleting All Event Points ....................................................................................73 5.7.15 Viewing the Source Line for an Event Point........................................................73 Viewing the Trace Information .........................................................................................74 5.8.1 Opening the [Trace] Window ..............................................................................74 5.8.2 Acquiring Trace Information ....
6.16.4 Function Calls ...................................................................................................... 164 6.17 Stack Trace Function ......................................................................................................... 165 6.18 Performance Measurement Function ................................................................................. 167 6.18.1 Time Of Specified Range Measurement .............................................................. 167 6.
8.4 8.5 8.3.4 Memory Mapping Function .................................................................................203 8.3.5 [Status] Window ..................................................................................................204 8.3.6 Extended Monitor Function .................................................................................205 8.3.7 Signals to Indicate Bus States and Areas .............................................................206 8.3.8 Monitoring Function ........
Emulator Debugger Part
Section 1 Overview 1.1 Features • The breakpoint, memory map, performance, and trace can be set through the dialog box. ⎯ Intuitive user interface ⎯ Online help ⎯ Common display and operability • Supported host interfaces The PCI interface, PC card (PCMCIA) interface, USB interface, or LAN interface can be used for connecting to the host computer. • Realtime emulation Realtime emulation of the user system is enabled at the maximum operating frequency of the CPU.
1.2 Warnings CAUTION READ the following warnings before using the emulator product. Incorrect operation will damage the user system and the emulator product. The USER PROGRAM will be LOST. 1. Check all components against the component list after unpacking the emulator. 2. Never place heavy objects on the casing. 3. Do not place the emulator in places where: • The temperature becomes high such as in direct sunlight or near a heater. For details, refer to section 1.3, Environmental Conditions.
1.3 Environmental Conditions CAUTION Observe the conditions listed in table 1.1 when using the emulator. Failure to do so will cause illegal operation in the user system, the emulator product, and the user program. Table 1.1 Environmental Conditions Item Specifications Temperature Operating: +10°C to +35°C Storage: –10°C to +50°C Humidity Operating: 35% RH to 80% RH, no condensation Storage: 35% RH to 80% RH, no condensation Vibration Operating: 2.45 m/s max. 2 Storage: 4.9 m/s max.
4
Section 2 Preparation before Use 2.1 Emulator Preparation Unpack the emulator and prepare it for use as follows: WARNING READ the reference sections shaded in figure 2.1 before using the emulator product. Incorrect operation will damage the user system and the emulator product. The USER PROGRAM will be LOST.
2.3 Connecting to the User System To connect the emulator to a user system, proceed as follows: • Connect the user system interface cable head to the user system. • Plug the cable body into the emulator. • Plug the cable body into the cable head. For details of these steps, refer to the User System Interface Cable User’s Manual. Figures 2.2 and 2.3 give details of the connectors provided on the emulator.
2.3.1 Example of Connecting the User System Interface Cable Head to the User System Screw (× 4) User system interface cable head IC socket Figure 2.4 Example of Connecting User System Interface Cable Head to User System • Ensure that all power is off to the emulator and the user system. • Insert the cable head into the socket on the user system.
2.3.2 Plugging the User System Interface Cable Body into the Emulator Plug the cable body into the emulator, taking care to insert it straight, and push it firmly into place. User system interface cable body EXT2 User system interface cable head POWER RUN EXT1 Emulator User system interface cable Figure 2.6 Plugging User System Interface Cable Body to Emulator 2.3.3 Plugging the User System Interface Cable Body into the Cable Head Plug the cable body into the cable head on the user system. 2.
2.4.3 Power Supply Monitor Circuit The emulator incorporates a power supply monitor circuit that lights the LED when a voltage higher than 4.75 V is supplied. The LED is illuminated in red (HS3800EPI60H, HS3880EPI60H, or HS388REPI60H) or green (HS38000EPI61H). If this LED is not illuminated, you should check the emulator voltage level. An input voltage less than 4.75 V could indicate that enough current cannot be supplied to the emulator. Note: Use the provided AC adapter for the emulator. 2.
2.5.4 External Probe 1 (EXT1)/Trigger Output An 8-pin connector, marked EXT1 (on the right under the user system interface cable connector), on the emulator case accommodates four external probe inputs and two trigger outputs. The pin assignment of this connector is shown in figure 2.8. EXT1 1 2 3 4 GND GND TUVCC T5V Probe Trigger output Figure 2.8 External Probe Connector 1 The interface circuit for the external probe 1 is shown in figure 2.9.
2.5.6 Voltage Follower Circuit CAUTION 1. Do not connect the user system interface cable to the emulator without user system connection. 2. Turn on the user system before starting up the emulator. A voltage follower circuit is implemented on the emulator which allows the user system voltage level from the user system to be monitored. This monitored voltage level is automatically supplied to the logic on the emulator and is derived from the emulator power supply unit.
2.6 System Check When the software is executed, use the procedure below to check that the emulator is connected correctly. Here, use the workspace for a tutorial provided on the product. Refer to section 2.8, Other Methods for Activating the Emulator, for the other activating method to create a new project or use a workspace for the High-performance Embedded Workshop of the old version. 1. Connect the emulator to the host computer. 2. Connect the user system interface cable to the connector of the emulator.
5. The [Welcome!] dialog box is displayed. Figure 2.13 [Welcome!] Dialog Box To use a workspace for the tutorial, select the [Browse to another project workspace] radio button and click the [OK] button. When the [Open Workspace] dialog box is opened, specify the following directory: OS installation drive \Workspace\Tutorial\E6000\xxxx Note: The directory mentioned above cannot be specified depending on the version of the software. In such cases, specify the following directory instead.
When no compiler package or that of a different version is installed, the following message box will be displayed. Figure 2.15 Message Box 6. The [E6000 Driver Details] dialog box is displayed. This dialog box is only displayed at the first initiation. When only one of interface drivers is selected, this dialog box is not displayed. Figure 2.16 [E6000 Driver Details] Dialog Box • In the [Driver] combo box, select the driver to connect the emulator.
7. Set up the emulator. During this process, the following dialog box is displayed. Figure 2.
8. When "Connected" is displayed in the [Output] window of the High-performance Embedded Workshop, the emulator initiation is completed. Figure 2.
2.7 Communication Problems The following message box will be displayed when the emulator power is turned off or the PC interface cable is not correctly connected. Figure 2.19 Error Message Note: No USB adapter (such as HS6000EIU02H) can be used with HS38000EPI61H. This error message appears if a USB adapter is connected to HS38000EPI61H. In such cases, disconnect the USB adapter. To use the USB interface with HS38000EPI61H, directly connect the USB cable to HS38000EPI61H.
18
Section 3 E6000 Emulator Functions 3.1 Debugging Features 3.1.1 Breakpoints The emulator provides a comprehensive range of alternative types of breakpoints, to give you the maximum flexibility in debugging applications and user system. Hardware Break Conditions: Up to 12 break conditions can be defined using the event and range channels in the complex event system (CES). For more information about the hardware break conditions, see section 3.2, Complex Event System (CES).
3.1.5 Bus Monitoring The emulator incorporates a bus monitoring function that monitors and displays the contents of the accessed area in High-performance Embedded Workshop windows without stopping the program execution. Up to eight blocks of 256 bytes can be monitored. In addition, the emulator can output trigger signals from external probe 2 (EXT2) when specified addresses (four points max.) are accessed. Note that, however, some products do not support the bus monitoring function. 3.
3.2.2 Range Channels The range channels can be set up to be triggered on a combination of one or more of the following: • Address or address range (inside the range) • Read or Write or either • Data, with an optional mask • MCU access type (e.g., DMAC and instruction prefetch) • MCU access area (e.g.
3.3 Hardware Features 3.3.1 Memory The emulator provides standard emulation memory as the substitute for internal ROM memory and internal RAM memory. When a device type or device mode without an internal ROM or internal RAM is selected, the standard emulation memory is disabled. When debugging with only the emulator and the user program and data are stored in an external address space, an optional SIMM memory module must be used. The optional SIMM memory modules can be separately purchased.
3.3.2 Clocks The clock can be specified as emulator internal clock or target clock. The frequencies that can be specified as the emulator internal clock depend on the MCU. For details, refer to section 8, Software Specifications Specific to This Product. 3.3.3 Probes External probes 1 and 2 (EXT1 and EXT2) can be connected to the emulator, to make use of signals on the user system for break or trace.
24
Section 4 Preparation before Use 4.1 Method for Activating High-performance Embedded Workshop To activate the High-performance Embedded Workshop, follow the procedure listed below. 1. Connect the emulator to the host computer. 2. Connect the user system interface cable to the connector of the emulator if you use the user system interface cable. This is not necessary when you do not use the user system interface cable. 3. Turn on the emulator.
4.1.1 Creating a New Workspace (Toolchain Not Used) 1. In the [Welcome!] dialog box that is displayed when the High-performance Embedded Workshop is activated, select [Create a new project workspace] radio button and click the [OK] button. Figure 4.
2. Creation of a new workspace is started. The following dialog box is displayed. Figure 4.3 [New Project Workspace] Dialog Box [Workspace Name] edit box: Enter the new workspace name. [Project Name] edit box: Enter the project name. When the project name is the same as the workspace name, it needs not be entered. [Directory] edit box: Enter the directory name in which the workspace will be created. Click the [Browse…] button to select a directory. [CPU family] combo box: Select the target CPU family.
3. Select the target platform of the session file. The following dialog box is displayed. Figure 4.4 [New Project – Step 7] Dialog Box The target platform for the session file used when the High-performance Embedded Workshop is activated must be selected here. Check the box against the target platform and then click the [Next] button. For details on the session file, refer to the High-performance Embedded Workshop user’s manual.
4. Set the configuration file name. Figure 4.5 [New Project – Step 8] Dialog Box If multiple target platforms were selected in the [New Project – Step 7] dialog box shown in figure 4.5, set the name of a configuration file for each of them, each time pressing the [Next] button to proceed to the next target. Setting of the configuration file name is the end of the emulator settings. Click the [Finish] button to display the [Summary] dialog box.
4.1.2 Creating a New Workspace (Toolchain Used) 1. In the [Welcome!] dialog box that is displayed when the High-performance Embedded Workshop is activated, select [Create a new project workspace] radio button and click the [OK] button. Figure 4.
2. Creation of a new workspace is started. The following dialog box is displayed. Figure 4.7 [New Project Workspace] Dialog Box [Workspace Name] edit box: Enter the new workspace name. Here, enter ‘test’. [Project Name] edit box: Enter the project name. When the project name is the same as the workspace name, it needs not be entered. [Directory] edit box: Enter the directory name in which the workspace will be created. Click the [Browse…] button to select a directory.
3. Make the required setting for the toolchain. When the setting has been completed, the following dialog box is displayed. Figure 4.8 [New Project – Step 7] Dialog Box The target platform for the session file used when the High-performance Embedded Workshop is activated must be selected here. Check the box against the target platform and then click the [Next] button. For details on the session file, refer to the High-performance Embedded Workshop user’s manual.
4. Set the configuration file name. Figure 4.9 [New Project – Step 8] Dialog Box If multiple target platforms were selected in the [New Project – Step 7] dialog box shown in figure 4.9, set the name of a configuration file for each of them, each time pressing the [Next] button to proceed to the next target. Setting of the configuration file name is the end of the emulator settings. Complete the creation of a new workspace according to the instructions on the screen.
4.1.3 Selecting an Existing Workspace 1. In the [Welcome!] dialog box that is displayed when the High-performance Embedded Workshop is activated, select [Browse to another project workspace] radio button and click the [OK] button. Figure 4.10 [Welcome!] Dialog Box 2. The [Open Workspace] dialog box is displayed. Select a directory in which you have created a workspace. After that, select the workspace file (.hws) and press the [Open] button. Figure 4.11 [Open Workspace] Dialog Box 3.
4.2 Connecting the Emulator Select either of the following two ways to connect the emulator: (a) Connecting the emulator after the setting at emulator activation Select [Debug -> Debug Settings…] to open the [Debug Settings] dialog box. It is possible to register the download module or the command chain that is automatically executed at activation. When the dialog box is closed after setting the [Debug Settings] dialog box, the emulator will automatically be connected.
4.3 Reconnecting the Emulator When the emulator is disconnected, use the following way for reconnection: Select [Debug -> Connect] or click the [Connect] toolbar button ( ). The emulator is connected. Note: Before reconnecting the emulator, a load module must be registered to the High-performance Embedded Workshop. 4.
Section 5 Debugging This section describes the debugging operations and their related windows and dialog boxes. Refer to the High-performance Embedded Workshop user's manual about High-performance Embedded Workshop common functions as below.
5.1 Setting the Environment for Emulation 5.1.1 Opening the [Configuration Properties] Dialog Box Selecting [Setup -> Emulator -> System…] or clicking the [Emulator System] toolbar button ( Configuration Properties] dialog box. ) opens the Figure 5.1 [Configuration Properties] Dialog Box ([General] Page) This dialog allows the user to set conditions for the target MCU before downloading a program to the emulator.
[General] page [Device] Selects the MCU to be emulated. To use an MCU not included in the list, select CUSTOM to specify the functions required for this MCU. See the hardware manual for details. [Mode] Selects the MCU's operating mode. [Clock] Selects the speed of the MCU’s clock and sub-clock. [Timer Resolution] Selects the resolution of the timer for use in execution time measurement. The value 20 ns, 125 ns, 250 ns, 500 ns, 1 us, 2 us, 4 us, 8 us, or 16 us can be selected.
5.1.2 Selecting an MCU Not Included in the List Selecting [Custom] in [Device] of the [Configuration Properties] dialog box adds the [Custom Device] page to the dialog box. Figure 5.2 [Configuration Properties] Dialog Box ([Custom Device] Page) Use this page to specify functions for an MCU not included in the list of MCUs. The items are adopted by the device last selected. [Custom Device] page [ROM] Specify the internal ROM area size. [RAM] Specify the internal RAM area size.
5.1.3 Selecting the Interface to be Connected Checking [Change driver in start up] on the [Configuration Properties] dialog box allows a selection of the driver next time the emulator is connected. Figure 5.3 [Driver Details] Dialog Box [Driver]: Selects the driver that connects the High-performance Embedded Workshop and the emulator. [Details]: Sets the details of the driver being connected. [Interface]: The name of the interface to be connected. This should not be changed in this emulator.
5.1.4 Opening the [Memory Mapping] Dialog Box Selecting [Setup -> Emulator -> Memory Resource…] or clicking the [Emulator Memory Resource] toolbar button ( ) opens the [Memory Mapping] dialog box. Figure 5.4 [Memory Mapping] Dialog Box This dialog box displays the current memory map. The E6000 H8S or H8/300 series supports four blocks of user memory. These can be 256 kbyte or 1 Mbyte each, depending on the SIMM fitted. Each block can be placed in the address space on a 256-kbyte or 1-Mbyte boundary.
5.1.5 Changing the Memory Map Setting Clicking the [Add…] button on the [Memory Mapping] dialog box or clicking the [Modify…] button after selecting the information on the memory map setting you want to change opens the [Edit Memory Mapping] dialog box. Figure 5.5 [Edit Memory Mapping] Dialog Box Use this dialog box to change the address range and attributes of a memory map. [From]: Enter the start address of the map range. [To]: Enter the end address of the map range.
5.2 Downloading a Program This section describes how to download a program and view it as source code or assembly-language mnemonics. Note: After a break occurs, the High-performance Embedded Workshop displays the location of the program counter (PC) on the editor. In most cases, for example if an Elf/Dwarf2 based project is moved from its original path (at the build), the source file may not be automatically found.
5.2.2 Viewing the Source Code To view a source file’s code, double-click on its icon in the file tree, or right-click on the source file and select the [Open] option on the pop-up menu. The [Editor] window is displayed. Figure 5.6 [Editor] Window In this window, the following items are shown on the left as information on lines.
Source Address column When a program is downloaded, an address for the current source file is displayed on the Source address column. These addresses are helpful when setting the PC value or a breakpoint.
To switch off a column in all source files 1. Right-click on the [Editor] window or select the [Edit] menu. 2. Click the [Define Column Format…] menu item. 3. The [Global Editor Column States] dialog box is displayed. 4. A check box indicates whether the column is enabled or not. If it is checked, the column is enabled. If the check box is gray, the column is enabled in some files and disabled in others. Deselect the check box of a column you want to switch off. 5.
5.2.3 Viewing the Assembly-Language Code If you have a source file open, right-click to open the pop-up menu and select the [View Disassembly] option to open a Disassembly view at the same address as the current Source view. It is also possible to view the disassembly using the new integrated [Disassembly view] in the source file.
5.2.4 Modifying the Assembly-Language Code You can modify the assembly-language code by double-clicking on the instruction that you want to change. The [Assembler] dialog box will be opened. Figure 5.9 [Assembler] Dialog Box The address, instruction code, and mnemonic are displayed. Enter the new instruction or edit the old instruction in the [Mnemonics] field. Pressing the [Enter] key will replace the memory content with the new instruction and move on to the next instruction.
5.3 Viewing the Current Status Choose [View -> CPU -> Status] or click the [View Status] toolbar button ( see the current status of the debugging platform. ) to open the [Status] window and Figure 5.11 [Status] Window The [Status] window has three sheets: • [Memory] sheet Contains information about the current memory status including the memory mapping resources and the areas used by the currently loaded object file.
5.4 Reading and Displaying the Emulator Information Regularly Use the [Extended Monitor] window to know the changing information on the emulator no matter the user program is running or halted. Note: 5.4.1 The Extended Monitor function does not affect the execution of the user program since it monitors the user system or the signal output from the MCU in the emulator by using the emulator’s hardware circuit.
5.4.2 Selecting Items to be Displayed Selecting [Properties…] from the popup menu displays the [Extended Monitor Configuration] dialog box. Figure 5.13 [Extended Monitor Configuration] Dialog Box This dialog box allows the user to set the items to be displayed in the [Extended Monitor] window. Note: The items that can be set in this dialog box vary according to the emulator in use. For details, refer to section 8, Software Specifications Specific to This Product, or the online help.
5.5 Displaying Memory Contents in Realtime Use the [Monitor] window to monitor the memory contents during user program execution. In the Monitor function, the realtime operation is retained since the bus monitoring circuit of the emulator sets the read/write signal of the MCU as a trigger and holds the address bus and data bus values to update the displayed contents of the memory. Up to eight points can be set by using the eight monitoring channels on the bus monitoring circuit.
[Name]: Decides the name of the monitor window. [Options]: Sets monitor conditions. [Address]: Sets the start address for monitoring. [Size]: Sets the range for monitoring. [Access]: Sets the access size to be displayed in the monitor window. [Auto-Refresh at rate (ms)]: Sets the interval for acquisition by monitoring (500 ms at minimum). [Reading the Initial Value]: Selects reading of the values in the monitored area when the monitor window is opened.
Figure 5.15 [Monitor] Window During user program execution, the display is updated according to the setting value of the auto-update interval. Note: Select [Refresh] from the popup menu when data is not displayed correctly after changing the address or content of memory. 5.5.2 Changing the Monitor Settings Selecting [Monitor Setting…] from the popup menu of the [Monitor] window displays the [Monitor Setting] dialog box, which allows the settings to be changed.
5.5.6 Hiding the [Monitor] Window When using the Monitor function to monitor the value of a variable from the [Watch] window, hide the [Monitor] window for the effective use of the screen. The current monitoring information is listed as the submenu when selecting [Display -> CPU -> Monitor]. The list consists of the [Monitor] window name and the address to start monitoring. When the left of the list is checked, the [Monitor] window is being displayed.
5.5.7 Managing the [Monitor] Window Selecting [Display -> CPU -> Monitor -> Windows Select…] displays the [Windows Select] dialog box. In this window, the current monitoring condition is checked and the new monitoring condition is added, edited, and deleted in succession. Selecting multiple monitoring conditions enables a temporary stop of update, hiding, and deletion. Figure 5.17 Selection in the [Monitor] Window [Add]: Adds a new monitoring condition.
5.6 Viewing the Variables This section describes how you can look at variables in the source program. 5.6.1 [Watch] Window You can view any value in the [Watch] window. Figure 5.18 [Watch] Window The [R] mark shows that the value of the variable can be updated during user program execution. For updating of the content of the variable that has been registered in the [Watch] window, there are the following three methods: 1.
2. Read the memory content directly from the High-performance Embedded Workshop to update the values without halting the user program since the bus mastership is owned by the emulator Note: While the emulator reserves the bus mastership, the realtime operation is disabled because the CPU stops operation. This method is only available for accessing the internal ROM, internal RAM, and emulation memory. The area used here or this method may not be available depending on the emulator in use.
5.7 Using the Event Points The emulator has the event point function that performs breaking, tracing, and execution time measurement by specifying higher-level conditions along with the software breakpoints standard for the High-performance Embedded Workshop. 5.7.1 Software Breakpoints When the instruction of the specified address is fetched, the user program is stopped. Up to 256 points can be set. Note that, however, only one software breakpoint can be set in the ROM area of the user system.
A maximum of eight points can be used as a combination in a sequence. The program is activated or halted by an occurrence of the previous event in each sequence. Range Channels (Ch9 to Ch12): The emulator has 4 range channels.
Table 5.2 Area Signals Acquired by the Emulator Area Trace Display (Status) On-chip ROM ROM Description ROM On-chip RAM RAM RAM On-chip I/O 16bit I/O-16 16-bit I/O On-chip I/O 8bit I/O-8 8-bit I/O External I/O 16bit EXT-16 16-bit EXT (external) External I/O 8bit EXT-8 8-bit EXT (external) DTC RAM RAM/DTC DTCRAM Note: The signals to indicate the bus states and areas vary according to the emulator in use.
Select [Add...] or the software breakpoint displayed in this window and then select [Edit...] from the popup menu to display the [Breakpoint/Event Properties] dialog box. Figure 5.20 [Breakpoint/Event Properties] Dialog Box (Setting a Software Break) In this dialog box, select the address condition to set software breakpoints. [Type]: Select the type of a breakpoint. Note that the [Breakpoint/Event Properties] dialog box is used for setting software breakpoints and event points.
5.7.7 Setting Event Points On the [Event] sheet, the settings for event points are displayed, modified, and added. Figure 5.21 [Event] Window ([Event] Sheet) Select [Add...] or the event point displayed in this window and then select [Edit...] from the popup menu to display the [Breakpoint/Event Properties] dialog box. The conditions for the event point are set on the [General], [Bus/Area], [Signals], and [Action] pages.
(1) [General] page The address and data conditions are set. Figure 5.22 [Breakpoint/Event Properties] Dialog Box ([General] Page) [Type]: Select the type of a breakpoint. Note that the [Breakpoint/Event Properties] dialog box is used for setting software breakpoints and event points. Selecting a particular type of breakpoint enables or disables other pages and parts of the dialog according to the options available to that type of breakpoint.
[Data Compare]: Sets the data condition. [Compare]: Checking this box compares data. [Use Mask]: Sets a mask condition (available when [Compare] has been selected). [Value]: Specifies the data bus value as numerics. The size of data for access can also be selected (available when [Compare] has been selected). [Byte]: Sets access in bytes as the condition (available when [Compare] has been selected). [Word]: Sets access in words as the condition (available when [Compare] has been selected).
(2) [Bus/Area] page Use this page to set the bus status and the memory area being accessed. Figure 5.23 [Breakpoint/Event Properties] Dialog Box ([Bus/Area] Page) [Bus State]: Sets the bus status as the condition. When the [Don't care] check box is checked, the event will be satisfied with any bus status. [Area]: Specifies the area for searching. When the [Don't care] check box is checked, the event will be satisfied in any area.
(3) [Signals] page Use this page to set external signals. Figure 5.
[Probe1]: Detects the status of the input probe signal 1 [High]: Detects the high level of the input probe signal [Low]: Detects the low level of the input probe signal [Don’t care]: The status of the input probe signal is not detected (4) [Action] page Use this page to decide what action the emulator takes when the defined event occurs. Figure 5.25 [Breakpoint/Event Properties] Dialog Box ([Action] Page) [Action]: Selects an action that occurs when the event is satisfied.
[Required number of event occurrences]: Allows a 16-bit pass count to be set. The event must occur the specified number of times before the action is taken. The range of values is D’0 to D’65,535. [Enable Sequencing]: Allows the event to take part in a sequence of events (setting this requires the event to use an event detector). [Configure Sequence…]: Displays the [Event Sequencing] dialog box to allow the event sequencing to be configured (only available when [Enable Sequencing] has been selected).
The state where the condition is satisfied is retained until the user program is stopped or the event point is reset. When the condition on the event point is satisfied, no action will be taken even if the condition is satisfied again. If you want the action to be taken again, reset the event point so that the state transits to that where no condition is satisfied. When the user program is stopped, the states of all the event points transit to that where no condition is satisfied.
5.7.8 Setting Trigger Points The trigger point is an event to output a trigger when the specified address has been accessed. Up to four trigger points can be set by using the trigger outputs (four channels) on the bus monitoring circuit of the emulator. The settings of the trigger point are displayed and modified on the [Trigger] sheet. Figure 5.27 [Event] Window ([Trigger] Sheet) Selecting [Add...] or the event point and [Edit...
Notes: 1. When the condition set for the trigger output (1 to 4) is satisfied, the high-level signal will be output from the corresponding pin (1 to 4) of the external probe 2 (EXT2) during reading or writing. 2. Some emulators may not support the trigger point. For details, refer to section 8, Software Specifications Specific to This Product, or the online help. 5.7.9 Editing Event Points Handlings for settings other than software breakpoints, event points, and trigger points are common.
5.8 Viewing the Trace Information The emulator acquires the results of each instruction execution into the trace buffer as trace information and displays it in the [Trace] window. The conditions for the trace information acquisition can be specified in the [Trace Acquisition] dialog box. Since trace information in bus-cycles is acquired by the hardware circuit and stored in the trace buffer, the realtime operation is retained.
[Status]: Bus status during this cycle; DTC operation, PROG (prefetch), Data (CPU data access cycle), Refresh (refresh cycle), or DMAC (DMAC cycle) (not available when a time stamp is acquired) [Clock]: Number of clock cycles in bus cycle as 1 to 8. To indicate more clock cycles, “OVR” is displayed (not available when a time stamp is acquired).
5.8.3 Specifying Trace Acquisition Conditions The capacity of the trace buffer is limited. When the buffer becomes full, the oldest trace information is overwritten. Setting the trace acquisition condition allows acquisition of useful trace information and effective use of the trace buffer. The condition is enabled by the event point to control starting, stopping, and ending the trace acquisition. For event points, refer to section 5.7, Using the Event Points.
[Suppress]: Acquires no trace information of the specified types of bus cycle. [Time Stamp]: Sets a condition for time stamping. [Clock]: [Free Trace]: Select either from Disabled, 125 ns, 250 ns, 500 ns, 1 us, 2 us, 4 us, 8 us, 16 us, or 100 us as the resolution for time stamping. A time stamp has a 32-bit counter. At 125 ns the maximum time that can be measured is about 9 minutes, and at 100 µs the maximum time is about 5 days.
(2) [Stop] page Sets trace stop conditions. It is possible to set trace stop conditions with and without delay, with both allowed simultaneously. Figure 5.31 [Trace Acquisition] Dialog Box ([Stop] Page) [Stop Without Delay]: 78 Defines a trace stop condition. [Enable]: Checking this box enables a trace stop. [Events]: Lists the event points where trace acquisition conditions have been set.
(3) [Delayed Stop] page Sets trace stop conditions. It is possible to set trace stop conditions with and without delay, with both allowed simultaneously. Figure 5.32 [Trace Acquisition] Dialog Box ([Delayed Stop] Page) [Stop With Delay]: Defines a trace stop condition. [Enable]: Checking this box enables a trace stop. [Delay Count]: Sets the delay count (in bus cycles, range 1 to 65535). This function allows you to acquire a number of trace records after any of the specified events occur.
(4) [1] to [4] pages Sets a range trace. This is only available when the free trace mode is disabled. Select either of the following four modes: [Disabled], [Point to Point], [Range], and [Event]. • Disabled Disables a range trace. Figure 5.
• Point to Point Acquires trace information in the specified range. Figure 5.34 Range Trace Setting (Point to Point) [Start Address]: Address where trace acquisition starts [Stop Address]: Address where trace acquisition stops [Cyclic]: When this box is checked, the event sequencing is configured so that the events reset themselves which causes tracing to be restarted when the start event occurs after the stop event.
• Range Only acquires the trace information that satisfies the specified condition. Figure 5.35 Range Trace Setting (Range) [Range Event]: Selects an event point for which a trace acquisition condition has been set. [Edit…]: Changes the setting for the selected event point. Only acquires trace information from all bus cycles that matches the condition set in the selected event. This mode uses one event channel or range channel.
• Event Acquires trace information, controlling the start and end of trace acquisition with the specified condition. Figure 5.36 Range Trace Setting (Event) [Start Event]: Selects the event point for which the condition to start trace acquisition has been set. [Stop Event]: Selects the event point for which the condition to stop trace acquisition has been set. [Edit…]: Changes the setting for the selected event point.
5.8.4 Searching for a Trace Record Use the [Trace Find] dialog box to search for a trace record. To open this dialog box, choose [Find...] from the popup menu. The [Trace Find] dialog box has the following options: Table 5.5 [Trace Find] Dialog Box Pages Page Description [General] Sets the range for searching. [Address] Sets an address condition. [Data] Sets a data condition. [R/W] Selects the type of access cycles.
(1) [General] page Set the range for searching. Figure 5.37 [Trace Find] Dialog Box ([General] Page) [Trace search range]: Sets the range for searching. [Not designation]: Searches for information that does not match the conditions set in other pages when this box is checked. [Upward search]: Searches upwards when this box is checked. [Start PTR]: Enters a PTR value to start a search. [End PTR]: Enters a PTR value to end a search.
(2) [Address] page Set an address condition. Figure 5.38 [Trace Find] Dialog Box ([Address] Page) [Don't care]: Detects no address when this box is checked. [Setting]: Detects the specified address. [Value]: 86 Enter the address value (not available when [Don’t care] has been checked).
(3) [Data] page Set a data condition. Figure 5.39 [Trace Find] Dialog Box ([Data] Page) [Don't care]: Detects no data when this box is checked. [Setting]: Detects the specified data. [Value]: Enter the data value (not available when [Don’t care] has been checked).
(4) [R/W] page Select the type of access cycles. Figure 5.40 [Trace Find] Dialog Box ([R/W] Page) [Don't care]: Detects no read/write condition when this box is checked. [Setting]: Detects the specified read/write condition. [String]: Select a read/write condition (not available when [Don’t care] has been checked).
(5) [Area] page Select the area being accessed. The selection is not available when a time stamp is acquired. Figure 5.41 [Trace Find] Dialog Box ([Area] Page) [Don't care]: Detects no area condition when this box is checked. [Setting]: Detects the specified area condition. [String]: Select an area condition (not available when [Don’t care] has been checked). Note: Available areas vary according to the emulator in use. For details, refer to section 5.7.4, Signals to Indicate Bus States and Areas.
(6) [Status] page Select the status of a bus. The selection is not available when a time stamp is acquired. Figure 5.42 [Trace Find] Dialog Box ([Status] Page) [Don't care]: Detects no bus condition when this box is checked. [Setting]: Detects the specified bus condition. [String]: Select a bus condition (not available when [Don’t care] has been checked). Note: Available bus conditions vary according to the emulator in use. For details, refer to section 5.7.
(7) [Probes] page Select the status of four probe signals. The selection is not available when a time stamp is acquired. Figure 5.43 [Trace Find] Dialog Box ([Probes] Page) [Don't care]: Detects no probe signal condition when this box is checked. [Setting]: Detects the specified probe signal condition. [Probe4] to [Probe1]: Select probe conditions (not available when [Don’t care] has been checked). Don't care: Detects no selected probe condition. High: The status of the probe signal is high.
(8) [IRQ7-0] page Select the status of IRQ signals. The selection is not available when a time stamp is acquired. Figure 5.44 [Trace Find] Dialog Box ([IRQ7-0] Page) [Don't care]: Detects no IRQ input condition when this box is checked. [Setting]: Detects the specified IRQ input condition. [IRQ7] to [IRQ0]: Select IRQ input conditions (not available when [Don’t care] has been checked). Don't care: Detects no selected IRQ input condition. High: The status of the IRQ input is high.
(9) [Timestamp] page Specify the time stamp value for bus cycles. The specification is not available when a time stamp is acquired. Figure 5.45 [Trace Find] Dialog Box ([Timestamp] Page) [Don't care]: Detects no time stamp value when this box is checked. [Setting]: Detects the specified time stamp value. (Every field must be filled in.) [Value]: Enter the time stamp value.
5.8.7 Viewing the [Editor] Window The [Editor] window corresponding to the selected trace record can be displayed in the following two ways: • Select a trace record and choose [View Source] from the popup menu. • Double-click a trace record The [Editor] or [Disassembly] window opens and the selected line is marked with a cursor. 5.8.8 Trimming the Source Choose [Trim Source] from the popup menu to remove the white space from the left side of the source.
5.8.12 Extracting Records from the Acquired Information Use the filtering function to extract the records you need from the acquired trace information. The filtering function allows the trace information acquired by hardware to be filtered by software.
(1) [General] page Set the range for filtering. Figure 5.46 [Trace Filter] Dialog Box ([General] Page) [Don't care other pages]: Only selects the cycle number when this box is checked. Other options become invalid. [Enable Filter]: Enables the filter when this box is checked. [No]: Filters information that does not match the conditions set in those pages when this box is checked. [Trace display range]: Sets the range for filtering. [Start PTR]: Enters a PTR value to start filtering.
(2) [Address] page Set address conditions. Figure 5.47 [Trace Filter] Dialog Box ([Address] Page) [Don't care]: Detects no address when this box is checked. [Setting]: Detects the specified address. [Point]: Specifies a single address (not available when [Don’t care] has been checked). [Range]: Specifies an address range (not available when [Don’t care] has been checked). [From]: Enter a single address or the start of the address range (not available when [Don’t care] has been checked).
(3) [Data] page Set a data condition. Figure 5.48 [Trace Filter] Dialog Box ([Data] Page) [Don't care]: Detects no data when this box is checked. [Setting]: Detects the specified data. [Point]: Specifies single data (not available when [Don’t care] has been checked). [Range]: Specifies a data range (not available when [Don’t care] has been checked). [From]: Enter single data or the minimum value of the data range (not available when [Don’t care] has been checked).
(4) [R/W] page Select the type of access cycles. Figure 5.49 [Trace Filter] Dialog Box ([R/W] Page) [Don't care]: Detects no read/write condition when this box is checked. [Setting]: Detects the specified read/write condition. RD: Detects read cycles when this box is checked (not available when [Don’t care] has been checked). WR: Detects write cycles when this box is checked (not available when [Don’t care] has been checked).
(5) [Area] page Select the area being accessed. The selection is not available when a time stamp is acquired. Figure 5.50 [Trace Filter] Dialog Box ([Area] Page) [Don't care]: Detects no area condition when this box is checked. [Setting]: Detects the specified area condition (not available when [Don’t care] has been checked). Note: Available area conditions vary according to the emulator in use. For details, refer to section 5.7.4, Signals to Indicate Bus States and Areas.
(6) [Status] page Select the status of a bus. The selection is not available when a time stamp is acquired. Figure 5.51 [Trace Filter] Dialog Box ([Status] Page) [Don't care]: Detects no bus condition when this box is checked. [Setting]: Detects the specified bus condition (not available when [Don’t care] has been checked). Note: Available bus conditions vary according to the emulator in use. For details, refer to section 5.7.4, Signals to Indicate Bus States and Areas.
(7) [Probes] page Select the status of four probe signals. The selection is not available when a time stamp is acquired. Figure 5.52 [Trace Filter] Dialog Box ([Probes] Page) [Don't care]: Detects no probe signal condition when this box is checked. [Setting]: Detects the specified probe signal condition. [Probe4] to [Probe1]: Select probe conditions (not available when [Don’t care] has been checked). Don't care: Detects no selected probe condition. High: The status of the probe signal is high.
(8) [IRQ7-0] page Select the status of IRQ signals. The selection is not available when a time stamp is acquired. Figure 5.53 [Trace Filter] Dialog Box ([IRQ7-0] Page) [Don't care]: Detects no IRQ input condition when this box is checked. [Setting]: Detects the specified IRQ input condition. [IRQ7] to [IRQ0]: Select IRQ input conditions (not available when [Don’t care] has been checked). Don't care: Detects no selected IRQ input condition. High: The status of the IRQ input is high.
(9) [Timestamp] page Specify the time stamp value for bus cycles. The specification is not available when a time stamp is acquired. Figure 5.54 [Trace Filter] Dialog Box ([Timestamp] Page) [Don't care]: Detects no time stamp value when this box is checked. [Setting]: Detects the specified time stamp value. [Point]: Specifies a single time stamp (not available when [Don’t care] has been checked). [Range]: Specifies a time stamp range (not available when [Don’t care] has been checked).
5.8.13 Calculating the Difference in Time Stamping Select [Timestamp Difference…] from the popup menu to calculate the time difference between the two points selected by the result of tracing in acquisition of time stamp information. Figure 5.55 [Timestamp Difference] Dialog Box [Select 2 line]: Select trace records to calculate the time stamp difference. [First PTR]: Specifies the first pointer to measure the difference. The pointer of the line selected on the Trace window is displayed by default.
5.8.14 Analyzing Statistical Information Choose [Statistic] from the popup menu to open the [Statistic] dialog box and analyze statistical information under the specified conditions. Figure 5.56 [Statistic] Dialog Box [Statistic Analysis]: 106 Setting required for analysis of statistical information. [Default]: Sets a single input value or character string. [Range]: Sets the input value or character string as a range. [Item]: Sets the item for analysis.
This dialog box allows the user to analyze statistical information concerning the trace information. Set the target of analysis in [Item] and the input value or character string by [Start] and [End]. Click the [Result] button after setting a condition by pressing the [New] or [Add] button to analyze the statistical information and display its result in the [Result] list. Note: In this emulator, only [PTR] can be set as a range. Each of other items must be specified as a character string.
5.9 Analyzing Performance Use the performance analysis function to measure the rate of execution time. The performance analysis function does not affect the realtime operation because it measures the rate of execution time in the specified range by using the circuit for measurement of hardware performance included in the emulator. Note: The performance analysis function is slightly different when you use HS3800EPI60H, HS3880EPI60H, or HS388REPI60H.
Table 5.
5.9.1 Opening the [Performance Analysis] Window Choose [View -> Performance -> Performance Analysis] or click the [PA] toolbar button ( [Select Performance Analysis Type] dialog box. ) to open the Figure 5.58 [Select Performance Analysis Type] Window Select [E6000 Performance Analysis] and then click the [OK] button to open the [Performance Analysis] window. Figure 5.
5.9.2 Setting Conditions for Measurement Conditions for measurement can be displayed and changed in the [Performance Analysis] window. Select a point where a condition is to be set, and then select [Set…] from the popup menu to display the [Performance Analysis Properties] dialog box. Select either from the following five modes as the condition by the [Measurement Method] option: Table 5.
(1) Time Of Specified Range Measurement Figure 5.61 Time Of Specified Range Settings [Range Name]: The name of the range to be measured [Range]: The range for the Time Of Specified Range Measurement [Start Address]: Address to start measurement [End Address]: Address to end measurement Measures the execution time and the execution count in the range between the start address and end address.
(2) Start Point To End Point Measurement Figure 5.62 Start Point To End Point Measurement Settings [Range Name]: The name of the range to be measured [Point]: The range for the Start Point To End Point Measurement [Start Address]: Address to start measurement [End Address]: Address to end measurement [Time Out]: The timeout value to finish measurement. When the minimum time for measurement is 160 ns, 40 ns, or 20 ns, enter the value as follows.
Notes: 1. When [Time Out] is selected in the Start Point To End Point Measurement mode, the execution time will not be measured correctly. 2. When [Time Out] and [Count] are selected, satisfaction of either of these options stops execution of the user program (performance break). 3. Only channel 1 can be used for [Time Out] and [Count]. Use other channels if you do not want to select [Time Out] or [Count] in the Start Point To End Point Measurement mode.
(3) Start Range To End Range Measurement Figure 5.
(4) Access Count Of Specified Range Measurement Figure 5.
(5) Called Count Of Specified Range Measurement Figure 5.65 Called Count Of Specified Range Measurement Settings [Range Name]: The name of the range to be measured [Range]: The range for the Called Count Of Specified Range Measurement [Start Address]: Start address [End Address]: End address [Call Range]: The range for the Called Count Of Specified Range Measurement. As the call range, specify the start and end addresses of the selected subroutine.
5.9.3 Selecting the Address Detection Mode and Resolution In measurement of hardware performance, there are two types of address detection modes: prefetch address detection mode and PC address detection mode. Select the appropriate address detection mode according to the measurement mode in use. The resolution can also be selected here. To select an address detection mode and resolution, click the [Settings…] button on the [Performance Analysis Properties] dialog box.
Section 6 Tutorial 6.1 Introduction The following describes the main functions of the emulator by using a tutorial program. The tutorial program is based on the C++ program that sorts ten random data items in ascending or descending order. The tutorial program performs the following actions: • The main function repeatedly calls the tutorial function to repeat sorting. • The tutorial function generates random data to be sorted and calls the sort and tutorial functions in order.
6.2 Running the High-performance Embedded Workshop Open a workspace by following the procedure listed in section 4.1.3, Selecting an Existing Workspace. Select the following directory: OS installation drive \Workspace\Tutorial\E6000\2646 Note: The file path differs depending on the product. Refer to section 8.2.4, Environment for Execution of the Tutorial Program. Then select the file indicated below. Figure 6.1 [Open Workspace] Dialog Box Opening this workspace automatically connects the emulator.
6.3 Downloading the Tutorial Program 6.3.1 Downloading the Tutorial Program Download the object program to be debugged. • Select [Download module] from the popupmenu opened by clicking the right-hand mouse button on [Tutorial.abs] of [Download modules]. Figure 6.
6.3.2 Displaying the Source Program The High-performance Embedded Workshop allows the user to debug a user program at the source level. • Double-click [Tutorial.cpp] under [C++ source file]. Figure 6.3 [Editor] Window (Displaying the Source Program) • Select a font and size that are legible if necessary. For details, refer to the High-performance Embedded Workshop user’s manual.
6.4 Setting a Software Breakpoint A software breakpoint is a simple debugging function. The [Editor] window provides a very simple way of setting a software breakpoint at any point in a program. For example, to set a software breakpoint at the sort function call: • Select by double-clicking the [S/W Breakpoints] column on the line containing the sort function call. Figure 6.4 [Editor] Window (Setting a Software Breakpoint) The symbol • will appear on the line containing the sort function.
6.5 Setting Registers Set a value of the program counter before executing the program. • Select [Registers] from the [CPU] submenu of the [View] menu. The [Register] window is displayed. Figure 6.5 [Register] Window • To change the value of the program counter (PC), double-click the value area in the [Register] window with the mouse. The following dialog box is then displayed, and the value can be changed. Set the program counter to H’00000400 in this tutorial program, and click the [OK] button. Figure 6.
6.6 Executing the Program Execute the program as described in the following: • To execute the program, select [Go] from the [Debug] menu, or click the [Go] button on the toolbar. Figure 6.7 [Go] Button While the program is executing, the current address bus value and the operating state of the MCU are displayed on the status bar.
Figure 6.
The user can see the cause of the break that occurred last time in the [Status] window. • Select [Status] from the [CPU] submenu of the [View] menu. After the [Status] window is displayed, open the [Platform] sheet, and check the Status of Cause of last break. Figure 6.9 [Status] Window Note: The items that can be displayed in this window differ depending on the product. For the items that can be displayed, refer to section 8, Software Specifications Specific to This Product, or the online help.
6.7 Reviewing Breakpoints The user can see all the breakpoints set in the program in the [Event] window. • Select [Eventpoints] from the [Code] submenu of the [View] menu. The [Event] window is displayed. Select the [Breakpoint] sheet. Figure 6.10 [Event] Window The popup menu, opened by clicking the [Event] window with the right-hand mouse button, allows the user to set or change breakpoints, define new breakpoints, and delete, enable, or disable breakpoints.
6.8 Referring to Symbols The [Label] window can be used to display the information on symbols in modules. Select [Label] from the [Symbol] submenu of the [View] menu. The [Label] window is displayed so that the user can refer to the addresses of symbols in modules. Figure 6.
6.9 Viewing Memory When the label name is specified, the user can view the memory contents that the label has been registered in the [Memory] window. For example, to view the memory contents corresponding to _main in byte size: • Select [Memory …] from the [CPU] submenu of the [View] menu or click the [View Memory] toolbar button ( ) to open the [Display Address] dialog box. Enter _main in the [Display Address] edit box. Figure 6.12 [Display Address] Dialog Box • Click the [OK] button.
6.10 Watching Variables As the user steps through a program, it is possible to watch that the values of variables used in the user program are changed. For example, set a watch on the long-type array a declared at the beginning of the program, by using the following procedure: • Click the left of displayed array a in the [Editor] window to position the cursor. • Select [Instant Watch...] with the right-hand mouse button. The following dialog box will be displayed. Figure 6.
The user can also add a variable to the [Watch] window by specifying its name. • Click the [Watch] window with the right-hand mouse button and select [Add Watch…] from the popup menu. The following dialog box will be displayed. Figure 6.16 [Add Watch] Dialog Box • Input variable i to [Variable or expression] edit box and click the [OK] button. The [Watch] window will now also show the int-type variable i. Figure 6.
The user can click mark ‘+’ at the left side of array a in the [Watch] window to watch all the elements. Figure 6.
6.11 Displaying Local Variables The user can display local variables in a function using the [Locals] window. For example, we will examine the local variables in the tutorial function, which declares four local variables: a, j, i, and p_sam. • Select [Locals] from the [Symbol] submenu of the [View] menu. The [Locals] window is displayed. The [Locals] window shows the local variables in the function currently pointed to by the program counter, along with their values.
6.12 Stepping Through a Program The High-performance Embedded Workshop provides a range of step menu commands that allow efficient program debugging. Table 6.1 Step Option Menu Command Description Step In Executes each statement, including statements within functions. Step Over Executes a function call in a single step. Step Out Steps out of a function, and stops at the statement following the statement in the program that called the function.
Figure 6.21 [Editor] Window (Step In) • The highlighted line moves to the first statement of the sort function in the [Editor] window.
6.12.2 Executing the [Step Out] Command The [Step Out] command steps out of the called function and stops at the next statement of the calling statement in the main function. • To step out of the sort function, select [Step Out] from the [Debug] menu, or click the [Step Out] button in the toolbar. Figure 6.22 [Step Out] Button Figure 6.23 [High-performance Embedded Workshop] Window (Step Out) The data of variable a displayed in the [Watch] window is sorted in ascending order.
6.12.3 Executing the [Step Over] Command The [Step Over] executes a function call as a single step and stops at the next statement of the main program. • To step through all statements in the change function at a single step, select [Step Over] from the [Debug] menu, or click the [Step Over] button in the toolbar. Figure 6.24 [Step Over] Button Figure 6.
6.13 Forced Breaking of Program Executions The High-performance Embedded Workshop can force a break in the execution of a program. • Cancel all the breaks. • To execute the remaining sections of the tutorial function, select [Go] from the [Debug] menu or the [Go] button on the toolbar. Figure 6.26 [Go] Button • The program goes into an endless loop. To force a break in execution, select [Halt] from the [Debug] menu or the [Stop] button on the toolbar. Figure 6.27 [Stop] Button 6.
6.15 Break Function The emulator’s break functions are of two types: software breaks and breaks at event points. software breakpoints and event points are set in the High-performance Embedded Workshop’s [Event] window. An overview and setting of the break function are described below. 6.15.1 Software Break Function The emulator can set up to 256 software breakpoints. • Select [Eventpoints] from the [Code] submenu of the [View] menu. The [Event] window is displayed. • Select the [Breakpoint] sheet.
Figure 6.31 [Breakpoint/Event Properties] Dialog Box • Check the [Software Break] radio button in the [Type] group box. • Use the [Editor] window to refer to the address on the line that has ‘p_sam->s0=a[0];’ within the tutorial function and enter this address in the [Address Lo] edit box of the [Address] group box. In this example, enter H’00001082. Note: This dialog box differs according to the product.
The software breakpoint that has been set is displayed in the [Event] window. Figure 6.32 [Event] Window (Software Breakpoint Setting) Note: The items that can be displayed in this window differ depending on the product. For the items that can be displayed, refer to section 8, Software Specifications Specific to This Product, or the online help.
• Close the [Event] window. • To stop the tutorial program at the breakpoint, select [Reset Go] from the [Debug] menu. The program runs until it stops at the breakpoint that has been set. Figure 6.
The [Status] window displays the following contents: Figure 6.34 Displayed Contents of the [Status] Window (Software Break) Note: The items that can be displayed in this window differ depending on the product. For the items that can be displayed, refer to section 8, Software Specifications Specific to This Product, or the online help.
6.15.2 Breaking Execution at Event Points Setting up of an event point on event channel 1 (Ch1) such that a break is triggered when the event point’s conditions have been satisfied five times is explained as an example of the use of event points. • Select [Eventpoints] from the [Code] submenu of the [View] menu. The [Event] window is displayed. • The breakpoint that has been previously set must be deleted.
Figure 6.36 [General] Page ([Breakpoint/Event Properties] Dialog Box) • Click the [OK] button. The [Event] window is displayed, as shown below. Figure 6.37 [Event] Window (Setting Completed) Note: The items that can be displayed in this window differ depending on the product. For the items that can be displayed, refer to section 8, Software Specifications Specific to This Product, or the online help.
Select [Reset Go] from the [Debug] menu to stop the tutorial program at breakpoints. The program runs then stops at the condition specified under Ch1. Figure 6.
The [Status] window displays the following contents. Figure 6.39 Displayed Contents of the [Status] Window Refer to the [Watch] window for the value of variable i. The value is 4, indicating that the break occurred after the condition had been satisfied five times. Note: The items that can be displayed in this window differ depending on the product. For the items that can be displayed, refer to section 8, Software Specifications Specific to This Product, or the online help. Remove the event point.
6.16 Trace Functions The trace functions of the emulator use the realtime trace buffer, which is able to store the information on up to 32,768 bus cycles. The content of this buffer, which is constantly updated during execution, is displayed in the [Trace] window. Select [Trace] from the [Code] submenu of the [View] menu to display the [Trace] window. Figure 6.
6.16.1 Displaying a Trace (when Time Stamping is not Available) The method used to specify an address as an event condition for the tracing of read/write cycles and display the trace is described below. (1) Clicking the right-hand mouse button on the [Trace] window displays a popup menu. Select [Acquisition…] from this menu to display the [Trace Acquisition] dialog box. Figure 6.
(2) Register an address as an event condition for trace acquisition. Click the [Add…] button in the [Trace Events] group box on the [General] page to display the [Breakpoint/Event Properties] dialog box. Figure 6.
(4) The event that has been set is now displayed in the [Event] combo box of the [Trace Events] group box on the [General] page of the [Trace Acquisition] dialog box. Figure 6.
(5) To enable the event condition that has been set, uncheck the [Free Trace] check box on the [General] page. This will add pages [1] to [4] to the [Trace Acquisition] dialog box. Figure 6.
(6) Select page [1] and click the [Range] radio button in the [Conditions] group box. This will display the [Range Event] combo box and the [Edit…] button. Figure 6.
(7) Select the event you have registered from the [Range Event] combo box. The event is now enabled. Click the [OK] button to complete the trace setting. Figure 6.47 [Trace Acquisition] Dialog Box (Setting Completed) (8) Make the setting such that the break occurs after the instruction at the address on the line that has ‘a[i]=j;’ within the tutorial function (H’0000105C in this example) has been executed five times (for details on this, refer to section 6.15.2, Breaking Execution at Event Points).
(10) Remove the event points that have been set and clear the trace information. Click the right-hand mouse button on the [Event] window to display a popup menu. Select [Delete All] from this menu to remove all of the event points that have been set. Click the right-hand mouse button on the [Trace] window to display a further popup menu. Select [Clear] from this menu to clear the trace information. 6.16.
(5) The event that has been set in the [Event] combo box of the [Trace Events] group box on the [General] page of the [Trace Acquisition] dialog box is displayed. Figure 6.50 [Trace Acquisition] Dialog Box (Adding an Event) (6) To enable time stamping, select 125ns from the [Clock] combo box of the [Time Stamp] group box. Figure 6.
(7) To enable the event condition that has been set, uncheck the [Free Trace] check box on the [General] page. This will add pages [1] to [4] (see figure 6.45, [Trace Acquisition] dialog box). (8) Select page [1] and click the [Range] radio button in the [Conditions] group box. This will display the [Range Event] combo box and the [Edit…] button (see figure 6.46, [Trace Acquisition] dialog box). (9) Click the [Range Event] combo box to select the event you have registered. The event is now enabled.
(11) Select [Reset Go] from the [Debug] menu. Processing stops when the break condition is satisfied, and the [Trace] window then displays the following content. Figure 6.53 [Trace] Window (Displaying the Result) If you have trouble viewing a column, drag the header (vertical) bars below the title bar to adjust the width of the column. (12) Remove the event points that have been set and clear the trace information. Clicking the right-hand mouse button on the [Breakpoints] window displays a popup menu.
6.16.3 Statistics The number of times the internal RAM has been written to can be included in the acquired trace information. (1) Make the setting such that a break occurs at the address on the line that has ‘p_sam->s0=a[0];’ within the tutorial function (H’00001082 in this example) (for details on this, refer to section 6.15.1, Software Break Function). (2) Select [Reset Go] from the [Debug] menu.
(4) Select R/W in the [Item] combo box and enter WR in the [Start] edit box. After that, click the [New] button. “R/W=WR” is now displayed in the [Condition] column of the [Result] list box. Figure 6.
(5) Then, select Area from the [Item] combo box and enter RAM in the [Start] edit box. After that, click the [Add] button; the new condition is now added to the “R/W=WR” display in the [Condition] column of the [Result] list box, so that it now shows “R/W=WR & Area=RAM”. This completes setting of the condition. Figure 6.
(6) To start statistical analysis of the specified condition, press the [Result] button. The number of write operations that satisfy the condition and the PTR values will be displayed. Figure 6.57 [Statistic] Dialog Box (Result of Analysis) (7) Click the [Close] button to close the [Statistic] dialog box. (8) Remove the event points that have been set and clear the trace information. Clicking the right-hand mouse button on the [Event] window displays a popup menu.
6.16.4 Function Calls This mechanism is used to only collect trace information on the function calls. (1) Make the setting such that a break occurs at the address on the line that has ‘p_sam->s0=a[0];’ within the tutorial function (H’00001082 in this example) (for details on this, refer to section 6.15.1, Software Break Function). (2) Select [Reset Go] from the [Debug] menu. Processing stops when the break condition is satisfied, and the [Trace] window then displays trace information.
6.17 Stack Trace Function The emulator uses the information on the stack to display the function call history. Notes: 1. This function can be used only when the load module that has the Dwarf2-type debugging information is loaded. Such load module is supported in H8S, H8/300 C/C++ compiler V4.0 or later. 2. For details on the stack trace function, refer to the online help. • Double-click the [Editor] column in the sort function and set a software breakpoint. Figure 6.
Figure 6.61 [Stack Trace] Window Figure 6.61 shows that the position of the program counter is currently at the selected line of the sort() function, and that the sort() function is called from the tutorial() function. To remove the software breakpoint, double-click the [Editor] column in the sort function again.
6.18 Performance Measurement Function Performance measurement by the emulator is in the following modes: • Time Of Specified Range Measurement • Start Point To End Point Measurement • Start Range To End Range Measurement • Access Count Of Specified Range Measurement • Called Count Of Specified Range Measurement In this tutorial, we describe the Time Of Specified Range Measurement. 6.18.
(3) Select the line of the [Performance Analysis] window that has 1 in its [No] column and click the right-hand mouse button to display a popup menu. Select [Set…] from this popup menu to display the [Performance Analysis Properties] dialog box. Figure 6.64 [Performance Analysis Properties] Dialog Box (4) Select Time Of Specified Range Measurement from the [Measurement Method PA1] combo box. (5) The parameter settings are as follows. • Enter “sort” in the [Range Name] edit box.
(6) Click the [Settings…] button in the [Common Settings of Performance(PA1-8)] group box to display the [Common Settings of Performance(PA1-8)] dialog box. Select [PC] from the [Address Control Mode] combo box and then click the [OK] button. PC is now displayed in the [Address Control Mode] text field of the [Common Setting of Performance(PA1-8)] dialog box. Figure 6.
6.19 Monitor Function The emulator allows monitoring of the content of specified addresses in memory during execution of the user program. In this example, we monitor the content of the address range where variable a of the tutorial function is stored. (1) Select the [CPU] submenu from the [View] menu. Then selecting [Monitor Setting…] from the [Monitor] submenu displays the [Monitor Setting] dialog box. Figure 6.
(2) Set the items in the [Monitor Setting] dialog box as follows: • • Enter monitor1 in the [Name] edit box. Set the parameters in the [Options] group box as follows: (a) Use the [Locals] window to refer to the address on the line where variable a, which is defined within the tutorial function, is allocated and enter this address in the [Address] edit box. In this example, enter H’00FFEF80. (b) Enter H’50 in the [Size] edit box. (c) Select BYTE (HEX) from the [Access] combo box.
(3) Click the [OK] button to open the [Monitor] window. Figure 6.71 [Monitor] Window (4) Select [Reset Go] from the [Debug] menu. When the content of the address range changes with execution, the updated values are red (i.e. the color that was selected in the [Foreground] and [Background] combo boxes). Values will be displayed in black if they have not been updated or a certain period of time has elapsed since the last update. Figure 6.
Section 7 Hardware Specifications Specific to This Product This section describes the hardware specifications on the H8/3800 E6000 and H8/388R E6000 emulators. There are HS3800EPI60H, HS388REPI60H, and HS3880EPI60H that operate independently as the emulator, and HS38000EPI61H, HS3800EBK61H, and HS388REBK61H that cannot work alone. In other words, only HS3800EPI60H, HS3880EPI60H or HS388REPI60H can be used as an emulator to operate independently.
7.1.2 Operating Voltage and Frequency Specifications Table 7.1 shows the MCU operating voltage and frequency specifications supported by the E6000 emulator. If the emulator is used in an environment that exceeds the operating voltage range and operating frequency range guaranteed for the MCU operation, normal emulator operation is not guaranteed. Note that the operation with low voltage or high frequency is not supported in some MCUs. Table 7.1 Operating Voltage and Frequency Specifications No.
7.2 User System Interface of H8/3800 E6000 Emulator All user system interface signals are directly connected to the MCU in the emulator with no buffering. 7.2.1 Signal Protection All user system interface signals are protected from over- or under-voltage by use of diode arrays except for the AVcc and analog port signals. Pull-up resistors are connected to the port signals except for the analog port signals.
AVcc and AVss: AVcc Evaluation chip 0.1 μ F 27 k Ω User system interface cable AVss Figure 7.4 User System Interface Circuit for AVcc and AVss CVcc and TEST: When CVcc is connected to GND, or TEST is connected to Vcc level, a warning message is displayed at initiation. Check the CVcc and TEST pins on the user system. Vcc Evaluation chip CVcc TEST CVcc CVcc TEST Pin monitor circuit TEST Figure 7.
7.3 Differences between MCU and H8/3800 E6000 Emulator When the H8/3800 E6000 emulator is turned on or initialized, or the system is reset, there are some differences in the initial values in some of the general registers between the MCU and the H8/3800 E6000 emulator as shown in table 7.2. Table 7.
7.4 Handling Evaluation Chip Board (HS3800EBK61H) WARNING 1. Always switch OFF the emulator and user system before connecting or disconnecting the evaluation chip board (HS3800EBK61H). Failure to do so will result in a FIRE HAZARD and will damage the user system and the emulator product or will result in PERSONAL INJURY. The USER PROGRAM will be LOST. 2. Do not leave any object (such as metalic pieces) within the case after removing the emulator cover.
E6000 P1 E6000 emulator P2 Evaluation chip board P1 P2 Figure 7.
7.5 Host PC Interface (only for HS38000EPI61H + HS3800EBK61H) The H8/3800 E6000 emulator, which has a USB interface circuit for the host PC interface, conforms to USB2.0 (high-speed/full-speed, also supporting USB1.1 full-speed) and can be connected to the host computer. Connecting the attached USB interface cable to the USB interface connector of the emulator realizes interface between the host computer and the emulator. Note that use of the USB adapter for E6000 (such as HS6000EIU02H) is not supported.
7.6 H8/388R E6000 Emulator Specifications The H8/388R E6000 emulator supports the system development using the following microcomputers: • • • • • • • • • • H8/3847R group H8/3847S group H8/3827R group H8/3827S group H8/3937R group H8/3887 group H8/3867 group H8/3847 group H8/3827 group H8/3937 group 7.6.1 Supported Items For emulation of the H8/3937R group, an expansion I/O board (HS3937REIO60H) is required. For emulation of the H8/3937 group, an expansion I/O board (HS3937EIO60H) is required.
7.6.2 Operating Voltage and Frequency Specifications Table 7.1 shows the MCU operating voltage and frequency specifications supported by the E6000 emulator. If the emulator is used in an environment that exceeds the operating voltage range and operating frequency range guaranteed for the MCU operation, normal emulator operation is not guaranteed. Note that the operation with low voltage or high frequency is not supported in some MCUs. Table 7.3 Operating Voltage and Frequency Specifications No.
7.7.2 User System Interface Circuits The interface circuit between the MCU in the emulator and the user system has a signal delay of about 8 ns due to the user system interface cable and it includes pull-up resistors. Therefore, high-impedance signals will be pulled up to the high level. When connecting the E6000 emulator to a user system, adjust the user system hardware to compensate for propagation delays. Default: Vcc 470 kΩ Evaluation chip User system interface cable 47 Ω Figure 7.
CVcc and TEST: When CVcc is connected to GND, or TEST is connected to Vcc level, a warning message is displayed at initiation. Check the CVcc and TEST pins on the user system. Vcc Evaluation chip CVcc CVcc CVcc TEST Pin monitor circuit TEST TEST Figure 7.13 User System Interface Circuit for CVcc and TEST V0, V1, V2, and V3: Evaluation chip User system interface cable Figure 7.
7.8.1 A/D Converter Due to the use of a user system interface cable there is a slight degradation in the A/D resolution and above that quoted in the hardware manual for the MCU being emulated. 7.8.2 Access to Unused Area The unused area from H'FF80 to H'FF8F is used by the emulator system. Therefore, if this area is allocated to the emulator by the MAP setting, the operation is not guaranteed. Do not use this area. Do not access the register that is not used by the MCU with the emulator. 7.8.
E6000 P1 E6000 emulator P2 Evaluation chip board P1 P2 Figure 7.
7.10 Host PC Interface (only for HS38000EPI61H + HS388REBK61H) The H8/388R E6000 emulator, which has a USB interface circuit for the host PC interface, conforms to USB2.0 (high-speed/full-speed, also supporting USB1.1 full-speed) and can be connected to the host computer. Connecting the attached USB interface cable to the USB interface connector of the emulator realizes interface between the host computer and the emulator. Note that use of the USB adapter for E6000 (such as HS6000EIU02H) is not supported.
188
Section 8 Software Specifications Specific to This Product This section describes the software specifications of the H8/3800 E6000 and H8/388R emulators. 8.1 Software Specifications of the H8/3800 E6000 Emulator Information specific to the H8/3800 E6000 emulator (either HS3800EPI60H or HS38000EPI61H + HS3800EBK61H) is given below.
[General] page [Device] Selects the MCU to be emulated. See the hardware manual for details. [Mode] Selects the CPU operating mode. Only mode 3 is available in this emulator. [Clock] Selects the speed of the MCU’s clock. [SubClock] Selects the speed of the MCU’s sub-clock. [Timer Resolution] Selects the resolution of the timer for use in execution time measurement. The value 20 ns, 125 ns, 250 ns, 500 ns, 1 us, 2 us, 4 us, 8 us, or 16 us can be selected.
[General] page (cont) [Break on access error] When this box is checked, a break (the user program stops) occurs if your program accesses an access-prohibited area or writes to a writeprotected area. [User VCC Threshold] Sets the voltage level for the user system. [Down] will be displayed in [User System Voltage] of the [Extended Monitor] window when the actual user VCC of the target system is lower than the specified value.
8.1.4 Memory Mapping Function This function allows reserved (access-prohibited) areas to be specified in one-byte units. Each memory block can be set in memory on the user system and the access can be specified as read-write, read-only, or accessprohibited in each case. It is not possible to change the attributes of memory incorporated in the MCU (internal ROM, internal RAM, or internal I/O). 8.1.
(2) [Platform] Sheet Selecting the [Platform] tab on the [Status] window displays this sheet. Table 8.4 [Platform] Sheet Items [Item] Column [Status] Column Connected To: Displays emulator name (driver used). CPU Displays the target MCU name. Mode Displays the selected mode. Clock source Displays the selected clock. Subclock source Displays the selected sub-clock. Run status Displays the execution status.
8.1.6 Extended Monitor Function Selecting [View -> CPU -> Extended Monitor] or clicking the [Extended Monitor] toolbar button displays the [Extended Monitor] window. This emulator displays the following items. Table 8.6 [Extended Monitor] Window Items [Item] Column [Value] Column User Reset Displays the status of the reset pin.
8.1.7 Signals to Indicate Bus States and Areas The following tables show examples of signals to indicate the bus states and areas that can be acquired by the emulator. Table 8.
8.1.10 Trace Information Selecting [View -> Code -> Trace] or clicking the [Trace] toolbar button displays the [Trace] window. Trace information that can be acquired by the emulator and trace information items to be displayed are as listed below. [PTR] Cycle number in the trace buffer. When the most recent record is record 0, earlier record numbers go backwards (-1, -2, ...). If a delay count has been set, the cycle number where the trace stop condition has been satisfied is record 0.
8.1.11 Searching for a Trace Record While using the emulator, the [Trace Find] dialog box has the following pages: Table 8.9 [Trace Find] Dialog Box Pages Page Description [General] Sets the range for searching. [Address] Sets an address condition. [Data] Sets a data condition. [R/W] Selects the type of access cycles. [Area] Selects the area being accessed (not available when a time stamp is acquired). [Status] Selects the status of a bus (not available when a time stamp is acquired).
8.2 Note on Usage of the H8/3800 E6000 Emulator There is the following note on usage of the emulator. 8.2.1 Environment for Execution of the Tutorial Program To execute the tutorial program, specify “Tutorial.hws” stored in the following directory: OS installation drive \Workspace\Tutorial\E6000\3800 The directory mentioned above cannot be specified depending on the version of the software. In such cases, specify the following directory instead.
8.3 Software Specifications of the H8/388R E6000 Emulator Information specific to the H8/388R E6000 emulator (HS3880EPI60H, HS388REPI60H, or HS38000EPI61H + HS388REBK61H) is given below. If a description in this section does not mention any product name (HS3880EPI60H, HS388REPI60H, or HS38000EPI61H + HS388REBK61H), it indicates that the description is common to those products. 8.3.1 Target Hardware This emulator software conforms to HS3880EPI60H, HS388REPI60H, or HS38000EPI61H + HS388REBK61H. 8.3.
8.3.3 [Configuration Properties] Dialog Box ([General] Page) Items that can be set in this dialog box are listed below. Figure 8.
[General] page [Device] Selects the MCU to be emulated. See the hardware manual for details. [Mode] Selects the CPU operating mode. Only mode 3 is available in this emulator. [Clock] Selects the speed of the MCU’s clock. [SubClock] Selects the speed of the MCU’s sub-clock. [Timer Resolution] Selects the resolution of the timer for use in execution time measurement. The value 20 ns, 125 ns, 250 ns, 500 ns, 1 us, 2 us, 4 us, 8 us, or 16 us can be selected.
[General] page (cont) [Break on access error] When this box is checked, a break (the user program stops) occurs if your program accesses an access-prohibited area or writes to a writeprotected area. [User VCC Threshold] Sets the voltage level for the user system. [Down] will be displayed in [User System Voltage] of the [Extended Monitor] window when the actual user VCC of the target system is lower than the specified value.
Table 8.14 Environment for the H8/3867 E6000 Emulator CPU 300L Debugging Platform Hardware [Device] Option [Clock] Option [SubClock] Option Expansion Hardware HS3880EPI60H H8/3862 H8/3863 H8/3864 H8/3865 H8/3866 H8/3867 H8/3822 H8/3823 H8/3824 H8/3825 H8/3826 H8/3827 0.5 MHz 1 MHz 2 MHz Target/2 38.4 kHz 307.2 kHz 32.768 kHz Target None HS388REPI60H 0.5 MHz 2 MHz Target/2 Note: Target/2 in [Clock] and Target in [SubClock] are only available when the target system is connected. Table 8.
8.3.5 [Status] Window Selecting [View -> CPU -> Status] or clicking the [Status Display] toolbar button displays the [Status] window. The [Status] window has three sheets. This emulator displays the following items. (1) [Memory] Sheet Selecting the [Memory] tab on the [Status] window displays this sheet. Table 8.17 [Memory] Sheet Items [Item] Column [Status] Column Target Device Configuration Displays memory mapping. System Memory Resources Displays the memory resource of the emulator hardware.
(3) [Events] Sheet Selecting the [Events] tab on the [Status] window displays this sheet. Table 8.19 [Events] Sheet Item [Item] Column [Status] Column Resources Displays the resource information and the information on events such as the breakpoint. 8.3.6 Extended Monitor Function Selecting [View -> CPU -> Extended Monitor] or clicking the [Extended Monitor] toolbar button displays the [Extended Monitor] window. This emulator displays the following items. Table 8.
8.3.7 Signals to Indicate Bus States and Areas The following tables show examples of signals to indicate the bus states and areas that can be acquired by the emulator. Table 8.
8.3.10 Trace Information Selecting [View -> Code -> Trace] or clicking the [Trace] toolbar button displays the [Trace] window. Trace information that can be acquired by the emulator and trace information items to be displayed are as listed below. [PTR] Cycle number in the trace buffer. When the most recent record is record 0, earlier record numbers go backwards (-1, -2, ...). If a delay count has been set, the cycle number where the trace stop condition has been satisfied is record 0.
8.3.11 Searching for a Trace Record While using the emulator, the [Trace Find] dialog box has the following pages: Table 8.23 [Trace Find] Dialog Box Pages Page Description [General] Sets the range for searching. [Address] Sets an address condition. [Data] Sets a data condition. [R/W] Selects the type of access cycles. [Area] Selects the area being accessed (not available when a time stamp is acquired). [Status] Selects the status of a bus (not available when a time stamp is acquired).
8.4 Note on Usage of the H8/388R E6000 Emulator There is the following note on usage of the emulator. 8.4.1 Environment for Execution of the Tutorial Program To execute the tutorial program, specify “Tutorial.hws” stored in the following directory: OS installation drive \Workspace\Tutorial\E6000\388R The directory mentioned above cannot be specified depending on the version of the software. In such cases, specify the following directory instead.
8.5 Performance Analysis Function The performance analysis function of HS3800EPI60H, HS3880EPI60H, and HS388REPI60H allows the amount of time spent in user-selected areas of memory during the last program run to be shown as percentages and as a histogram. HS3800EPI60H, HS3880EPI60H, and HS388REPI60H do not count every access to the specified performance analysis range. They analyze samples at a rate dependent on the operating speed of the host computer. 8.5.
8.5.2 Setting Conditions for Measurement Conditions for measurement can be displayed and changed in the [Performance Analysis] window. Select a point where a condition is to be set, and then select [Set…] from the popup menu to display the [Add PA Range] dialog box. The [Performance Analysis] window has a support function to enter the address range of a function automatically if the name of the function is entered to set an address range.
212
Appendix A I/O File Format High-performance Embedded Workshop formats the [IO] window based on information it finds in an I/O Register definition file. When you select a debugging platform, High-performance Embedded Workshop will look for a “.IO” file corresponding to the selected device and load it if it exists. This file is a formatted text file that describes the I/O modules and the address and size of their registers.
Comment Module definition Example: ; H8S/2655 Series I/O Register Definitions File [Modules] BaseAddress=0 Module1=Power_Down_Mode_Registers Module2=DMA_Channel_Common Module3=DMA_Channel_0 ... Module42=Bus_Controller Module43=System_Control Module44=Interrupt_Controller ... Register definition [DMA_Channel_Common] DMAWER=0xffff00 B A DMATCR=0xffff01 B A DMACR0A=0xffff02 B A DMACR0B=0xffff03 B A DMACR1A=0xffff04 B A DMACR1B=0xffff05 B A DMABCRH=0xffff06 B A DMABCRL=0Xffff07 B A ...
A.2 File format (Bit Field Supported) Each module name must be defined in the [Modules] definition section and the numbering of each module must be sequential. Each module corresponds to a register definition section and within the section each entry defines an I/O register. The user must define “FileVersion=2” at the start of the section. It means that this I/O register file is described with the version that supports the bit field.
Comment Module Example: ; H8S/2655 Series I/O Register Definitions File [Modules] FileVersion=2 BaseAddress=0 Module1=Power_Down_Mode_Registers Module2=DMA_Channel_Common Module3=DMA_Channel_0 ... Module42=Bus_Controller Module43=System_Control Module44=Interrupt_Controller ... Module definition [DMA_Channel_Common] reg0=regDMAWER reg1=regDMATCR reg2=regDMACR0A reg3=regDMACR0B reg4=regDMACR1A reg5=regDMACR1B reg6=regDMABCRH reg7=regDMABCRL dep= regMSTPCRH 7 0 Register name Bit Value ...
Appendix B Menus Table B.1 shows GUI menus. Table B.1 GUI Menus Menu Option Shortcut View Difference Toolbar Button Remarks Opens the [Difference] window. Command Line Ctrl + L Opens the [Command Line] window. TCL toolkit Shift + Ctrl + L Opens the [Console] window. Workspace Alt + K Opens the [Workspace] window. Output Alt + U Opens the [Output] window. Disassembly Ctrl + D Opens the [Disassembly] window. CPU Registers Ctrl + R Opens the [Registers] window.
Table G.1 GUI Menus (cont) Menu Option View (cont) Graphic Performance Debug Shortcut Remarks Image… Shift + Ctrl + G Opens the [Image] window. Waveform… Shift + Ctrl + V Opens the [Waveform] window. Performance Analysis Shift + Ctrl + P Opens the [Performance Analysis] window. Debug Sessions… Opens the [Debug Sessions] dialog box to list, add, or remove the debug session. Debug Settings… Opens the [Debug Settings] dialog box to set the debugging conditions or download modules.
Table G.1 GUI Menus (cont) Toolbar Button Menu Option Shortcut Debug (cont) Step In F11 Executes a block of user program before breaking. Step Over F10 Executes a block of user program before breaking. If a subroutine call is reached, then the subroutine will not be entered. Step Out Shift + F11 Executes the user program to reach the end of the current function. Step… Step Mode Remarks Launches the [Step Program] dialog box allowing the user to modify the settings for stepping.
Table G.1 GUI Menus (cont) Option Setup Customize… Customize the High-performance Embedded Workshop application. Options… Sets option of the Highperformance Embedded Workshop application. Format Views… Configure fonts, colors, keywords and so on, for the window. Radix Hexadecimal Uses a hexadecimal for displaying a radix in which the numerical values will be displayed and entered by default.
Appendix C Command Lines Table C.1 lists the High-performance Embedded Workshop commands. Table C.1 High-performance Embedded Workshop Commands No.
Table H.1 High-performance Embedded Workshop Commands (cont) No.
Table H.1 High-performance Embedded Workshop Commands (cont) No.
224
Appendix D Diagnostic Test Procedure This section describes the diagnostic test procedure using the E6000 test program. D.1 System Set-Up for Test Program Execution To execute the test program, use the following hardware; do not connect the user system interface cable, user system, or expansion I/O board.
D.2 Diagnostic Test Procedure Using Test Program The attached CD-R (HS38000EPI61SR) includes test programs for the emulators listed below. Select a test program suitable for the emulator being used. HS3800EPI60H HS388REPI60H HS3880EPI60H HS38000EPI61H + HS3800EBK61H HS38000EPI61H + HS388REBK61H Insert the CD-R (HS38000EPI61SR supplied with the emulator) into the CD-ROM drive of the host computer and move the current directory to either of those listed below with a command prompt.
The test program must be initiated after moving the current directory to the folder where the test program has been stored (such as :\Diag\HS3800EBK61H). Do not initiate it from a directory other than :\Diag\HS3800EBK61H, such as > :\Diag\HS3800EBK61H\TM3800_61 –PCI (RET). Otherwise, the test program will not operate correctly.
The following messages are displayed during test. This test consists of steps 1 to 20. This example assumes that HS38000EPI61H + HS3800EBK61H is in use. Time required for this test depends on performance of the host computer and PC interface in use (approximately 2 to 10 minutes). Message Description H8/3800 E6000 Emulator Tests Vx.x.xx Copyright (C) 2004 Renesas Technology Corp. Loading driver .......................OK Initializing driver ..................OK Searching for interface card .........
03) Test Firmware RAM : Shows the results of decoding test for the firmware RAM in the E6000 (normal completion). A) Decode Test page[H'700 - H'71f] ....................OK B) Marching test page[H'700 - H'71f] ....................OK Shows the results of marching test for the firmware RAM in the E6000 (normal completion). 04) Test Trace memory : Shows the results of decoding test for the trace RAM (first half) in the E6000 (normal completion). A) Decode Test page[H'000 - H'04f](Lower 32K) .........
08) Test Emulation RAM STEP Operation : A) Step Operation ........................................OK 09) Test Keybreak : A) Key Break .............................................OK 10) Test Emulation RAM Hardware Break : Shows the check results for the step execution controlling circuits in the E6000 (normal completion). Shows the check results for the forced break controlling circuits in the E6000 (normal completion). Shows the check results for the illegal access A) GRD Break ........................
15) Test Emulation Monitor : A) B) C) D) E) F) G) H) I) EMA15-EMA0 ..........................................OK RESERVED ASEST3-ASEST0 .......................................OK ASEBRKACK ...........................................OK CNN .................................................OK RESERVED WINDOW ..............................................OK IF ..................................................OK OTHER ...............................................
232
H8/300L Super Low Power E6000 Emulator User's Manual Publication Date: Rev.2.00, November 3, 2005 Published by: Sales Strategic Planning Div. Renesas Technology Corp. Edited by: Customer Support Department Global Strategic Communication Div. Renesas Solutions Corp. © 2005. Renesas Technology Corp., All rights reserved. Printed in Japan.
Sales Strategic Planning Div. Nippon Bldg., 2-6-2, Ohte-machi, Chiyoda-ku, Tokyo 100-0004, Japan RENESAS SALES OFFICES http://www.renesas.com Refer to "http://www.renesas.com/en/network" for the latest and detailed information. Renesas Technology America, Inc. 450 Holger Way, San Jose, CA 95134-1368, U.S.
H8/300L Super Low Power E6000 Emulator User's Manual