Home
68020/030/EC020/EC030 Emulators/Analyzer Graphical User
Contents
1. STATUS ES eS _ oo 124 Examples Chapter 4 Using the Emulator Accessing Processor Memory Resources To display absolute addresses Choose Settings Source Symbol Modes Absolute Using the command line enter the set source off symbols off command No symbols or source lines are included in mnemonic memory or trace displays To turn OFF symbols and source lines in displays and display memory in mnemonic format set source off symbols off lt RETURN gt display memory main mnemonic lt RI ETURN gt Action keys lt Demo gt Disp Srce Trace i Step Source a lt Your Key gt Make Disp Sre Prev Run Xfer til Jl Break Step Asm i Memory sp mnemonic file usr hp64 88 demo debug_env hp64747 main c addrez data 4E560000 LINK W AB 0000 DORBeCFE 2FQA MOVE L A2 A7 aaeecrs 247C000781 MOVEA L 000781A8 AZ BOOAZCFE 14BCAAA1 MOVE B 01 A2 pop zD 2 4EB9e00032 JSR 000032D0C age2nes 4EB9000039 JSR 00003994 aea2DeE 4E71 NOP 49082018 157C 8G168 MOVE B
2. 64700E01 589 Chapter 18 Installation and Service Installing Hardware 5 First completely loosen the four egress thumb screws To remove emulator cards insert a flat blade screwdriver in the access hole and eject the emulator cards by rotating the screwdriver EMULATOR CARD FOUR EGRESS THUMB SCREWS PROBE CABLES k Ys WITH FLAT BLADE SCREWDRIVER WA EJECT EMULATOR CARD EGRESS 64700E02 AND PROBE CABLE AS AN ASSEMBLY 590 Chapter 18 Installation and Service Installing Hardware 6 Insert a screw driver into the third slot of the right side of the front bezel push to release catch and pull the right side of the bezel about one half inch away from the front of the HP 64700 Then do the same thing on the left side of the bezel When both sides are released pull the bezel toward you approximately 2 inches Be careful because the plastic ears are easily broken on the front bezel FRONT PANEL WITHOUT BEZEL SHOWING CATCH INSERT SCREW DRIVER INTO THIRD SLOT OF FRONT BEZEL PUSH TO RELEASE CATCH AND PULL BEZEL TOWARD YOU 591 Chapter 18 Installation and Service Instal
3. 7 597 Chapter 18 Installation and Service Installing Hardware 16 Install the top cover in reverse order of its removal but make sure that the side panels of the top cover are attached to the side clips on the frame 64700E09 SIDE CLIP 598 Chapter 18 Installation and Service Installing Hardware Step 4 Install emulation memory modules on emulator probe Observe antistatic precautions listed on the fifth page of this chapter 1 Remove plastic rivets that secure the plastic cover on the top of the emulator probe and remove the cover The bottom cover is only removed when you need to replace a defective active probe on the exchange program TO INSTALL RIVET PUSH DOWN ON RIVET HEAD TQ REMOVE RIVET PUSH UP ON CENTER SHAFT MEMORY SLOT 0 MEMORY SLOT 1 ADD PLASTIC WASHERS TO THESE TWO POSITIONS ONLY 599 Chapter 18 Installation and Service Installing Hardware 2 Determine the placement of the emulation memory modules Three types of modules may be installed 256 Kbyte HP 64171A 64172A 1 Mbyte HP 64171B 64172B and 4 Mbyte HP 64173A Any of these types of modules may be installed in either memory slot on the probe except 64748A which cannot accept HP 64173A Memory in memory slot 0 is divided into four equal blocks th
4. Num Characteristic MC68020 HP 64748 Unit 33MHz Min Max Min Max 6 Clock High to FC Size RMC Address Valid 0 21 0 21 ns 6A Clock High to ECS OCS Asserted 0 10 0 10 ns 7 Clock FC Size RMC Address Data High Impedance 0 30 0 30 ns 8 Clock High to FC Size RMC Address Invalid 0 0 _ ns 9 Clock Low to AS DS Asserted 3 15 3 20 ns 9A AS to DS Assertion Skew Read 10 10 12 12 ns 9B AS Asserted to DS Asserted Write 22 20 ns 555 Chapter 16 Specifications and Characteristics HP 64748 Electrical Specifications HP 64748 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5 GND 0 Vdc Ta 0 to 70 C Num Characteristic MC68020 HP 64748 Unit 33MHz Min Max Min Max 10 ECS Width Asserted 10 10 ns 10A OCS Width Asserted to ee I ae ll aie 10B ECS OCS Width Negated Be Aces Bice eee aa 11 FC Size RMC Address Valid to AS Asserted and DS 5 5 Se bps Asserted Read 12 Clock Low to AS DS Negated 0 15 0 20 ns 12A Clock Low to ECS OCS Negated 0 15 0 15 ns 13 AS DS Negated to FC Size RMC Adaress Invalid 5 eea 1 as 14 AS and DS Read Width Asserted Asynchronous Cycle so Il ARS ns 14A DS Width Asserted Write 25 23 ns 15 AS DS Width Negated 25 23 ns 15A DS Negated to
5. To display the name of the emulation module Using the command line enter the name_of_module command While operating your emulator you can verify the name of the emulation module This is also the logical name of the emulator in the emulator device file To display the name of your emulation module name_of_module lt RETURN gt The name of the emulation module is displayed on the status line 96 Using the Emulator How to control the processor and examine system resources 97 Chapter 4 Using the Emulator The Emulator And Its Applications The Emulator And Its Applications The HP 64748 HP 64747 emulator helps you to test and debug applications in real time The emulator is a functional replacement for MC68020 or MC68030 EC030 microprocessors It provides access to processor registers and memory as well as complete execution run control The emulator provides debugging capability for e embedded system hardware startup and test e hardware software integration The emulator may also be used out of circuit as a code execution environment However software development and testing will probably be handled best in a host execution environment The emulation system is connected to a host computer by a LAN connection or by a serial RS 232C data communication link The emulation interface can display data and symbolic assembly code in windows or can additionally show the C language source code int
6. Physical HP 64747 and HP 64748 z Emulator Dimensions 173 mm height x 325 mm width x 389 mm depth 6 8 in x 12 8 in x 15 3 in Cable Length Emulator to target system approximately 914 mm 36 inches Probe dimensions Pin 1 _ 219mm 8 6 5mm 3 8 1 7 e 166 mm 6 6 29 mm 1 12 7 o Cables 560 Chapter 16 Specifications and Characteristics Environmental HP 64747 and HP 64748 Environmental HP 64747 and HP 64748 Temperature Operating 0 to 40 C 432 to 104 F Nonoperating 40 C to 60 C 40 F to 140 F For the HP 64747 MC68030 EC030 100 Ifm of airflow over the probe is recommended to ensure optimum performance Altitude Operating 4600 m 15 000 ft nonoperating 15 300 m 50 000 ft Relative Humidity 15 to 95 BNC labeled TRIGGER IN OUT HP 64747 and HP 64748 Output Drive Logic high level with 50 ohm load gt 2 0 V Logic low level with 50 ohm load lt 0 4 V Input 74HCT132 with 135 ohms to ground in parallel Maximum input 5 V above Vcc 5 V below ground 561 Chapter 16 Specifications and Characteristics Communications HP 64747 and HP 64748 Communications HP 64747 and HP 64748 Host Port 25 pin female type D subminiature connector RS 232 C DCE or DTE to 38 4 kbaud RS 422 DCE only to 460 8 kbaud CMB Port 9 pin female type D subminiature connecto
7. 131 Chapter 4 Using the Emulator Accessing Processor Memory Resources To redisplay memory locations Choose Display gt Memory Using the command line redisplay memory with the same address range and format as the previous memory display by selecting display memory The last range and format options are maintained in the interface When you display memory without specifying the location or format for the display the previous options are used To display memory repetitively Choose Display gt Memory Repetitively Using the command line continuously display memory with display memory repetitively This command continuously updates the memory display Use this only to monitor memory while running your target code it requires a lot of CPU time To allow the current memory display to be updated whenever the emulator detects a modification to memory content such as loading a file setting a breakpoint etc use the set update command or Settings Display Modes 132 Chapter 4 Using the Emulator Accessing Processor Memory Resources To modify memory Choose Modify Memory or enter the desired memory location and new value in the entry buffer and click on Modify Memory at The equivalent command will be shown on the command line Complete the command by entering appropriate information on the command line Using the command line enter commands as follows e To modify a single memory location t
8. Illegal base for sequencer display Error 1132 Cause When specifying the trace format you tried to specify a number base for the column containing sequencer information Action Respecify the trace format without using a base for the sequencer column Illegal status combination Cause You tried to specify combinations of status qualifiers in expressions incorrectly when entering commands Action Refer to Chapter 11 Emulator Commands for information about syntax of commands Illegal symbol name Cause You tried to specify incorrect symbol names when entering commands Action Specify correct symbol names To see global symbol names use the display global_symbols command To see local symbol names use the display local_symbols_in lt SYMB gt command 481 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Incompatible with 64700 firmware version Error 10352 Cause The installed interface firmware combination is incorrect or incompatible Action Upgrade the interface software of product firmware Initialization failed Cause The emulator could not be initialized Action Make sure your data communication switch settings are correct and that all emulator analyzer interface software has been loaded properly Cycle power on the emulator then try starting up the emulation session again Initialization load failed Cause The emulator could not be initialized Action Make sure your d
9. Transparent addresses denoted as physical in analysis trace Error 164 Cause You used the load demmuer command to load the deMMUer and one or more address ranges to be reverse translated are transparently translated via TTO TT1 registers The deMMUer will reverse translate your transparently translated addresses 1 1 however these addresses will be tagged as physical instead of logical Unfortunately symbolic lookup is not performed on addresses tagged as physical so you will not be able to obtain symbolic support for these addresses either in your commands or in your trace displays If you have specified a read or write qualification for TTO or TT1 the deMMUer will not provide the correct translation for addresses that do not meet the read write qualification Because the deMMUer cannot distinguish between read and write cycles the deMMUer always interprets the TTO TT1 registers as if the read write mask bit has been set to ignore the read write line RWM 1 507 Chapter 12 Emulator Messages Alphabetized Error And Status Messages trig break Error 618 Cause This status message is displayed if you used the break_on_trigger syntax of the trace command and the analyzer has found the trigger condition while tracing a program run The emulator is broken to the monitor Trig1 signal cannot be driven and received Error 1302 Cause This error occurs when you attempt to specify the internal trig1 signal as the trace arm condi
10. reset trace run from transfer_address display trace offset_by main 198 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To reset the trace display defaults Choose Settings Display Modes Then in the dialog box click on Default All Settings and click the OK button This leaves the trace display in the source intermixed and symbols on mode Using the command line enter the set default command This turns off all symbolics and source references in the interface To move through the trace list Use the scroll bar at the right of the display to scroll up and down Use the arrows at the bottom of the display if any to scroll left and right Using the command line enter commands as follows e To roll the trace display to the left press lt Ctrl gt f simultaneously e To roll the trace display to the right press lt Ctrl gt g simultaneously e To roll the display down one line press the down arrow key e To roll the display up one line press the up arrow key e To move to the previous page in the trace list press the Pg Up or Prev key e To move to the next page in the trace list press the Pg Dn or Next key Though the trace display is set to 256 or more states only 15 lines may be displayed in the interface window depending on your terminal type You can move through the trace list display using various key combinations You can roll the display left and right only if the tr
11. us 10 us 0 1 us 100 us 00 1 us 500 us 500 1 us 1 ms 001 ms 5 ms 5 001 ms 10 ms 0 1 ms 20 ms 20 1 ms 40 ms 40 1 ms 80 ms 80 1 ms 160 ms 60 1 ms 320 ms 320 1 ms 640 ms 640 1 ms 1 2 s e To initialize with global symbols enter performance_measurement_initialize or performance_measurement_initialize global_symbols Global symbols in the symbols database becomes the address ranges for which activity is measured If the symbols database is not loaded a default set of ranges that cover the entire processor address range will be used The global symbols database contains procedure symbols which are associated with the address range from the beginning of the procedure to the end and static symbols which are associated with the address of the static variable 265 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool e To initialize with local symbols enter performance_measurement_initialize local_symbols_in lt source file name gt The symbols associated with the source file become the address ranges for which activity is measured If the symbols database is not loaded an error message will occur telling you that the source filename symbol was not found You can also use the local_symbols_in option with procedure symbols This allows you to measure activity related to the symbols defined in a single function or procedure These are example commands showing per
12. 2 Choose to make either activity measurements or duration measurements e To make activity measurements which measures activity as a percentage of all activity the current trace command should be the default enter trace counting time The default trace command triggers on any state and all captured states are stored Also since states are stored after the trigger state the maximum number of captured states appears in each trace list You can use trace commands other than the default You can qualify trace commands any way you like to obtain specific information However when you qualify the states that get stored in the trace memory your SPMT results will be biased by your qualifications the percentages shown will be of only those states stored in the trace list 262 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool e To make duration measurements set up the trace command to store only the entry and exit points of the module of interest For example trace after lt symbol_entry gt or lt symbol_exit gt only symbol_entry or symbol_exit counting time or trace after lt module_name gt start or module_name end only module_name start or module_name end counting time Since the trigger state is always stored you should trigger on the entry or exit points lt symbol_entry gt and lt symbol_exit gt are symbols from the user program lt module_name gt is
13. 21 Chapter 1 Getting Started Step 10 Trace the program j Step 10 Trace the program When the analyzer traces program execution it looks at the data on the emulation processor s bus and control signals at each clock cycle The information seen at a particular clock cycle is called a state When one of these states matches the trigger state you specify the analyzer stores states in trace memory When trace memory is filled the trace is said to be complete Click on the Recall button to the right of the entry buffer A selection dialog box appears You can select from entry buffer values that have been entered previously or that have been predefined Click on main in the selection dialog box and click the OK pushbutton Notice that the value main has been returned to the entry buffer To trigger on the address main and store states that occur after the trigger choose Trace After Or using the command line enter trace after main lt RETURN gt Notice the message Emulation trace started appears on the status line This shows that the analyzer has begun to look for the trigger state which is the address main on the processor s address bus Run the emulator demo program from its transfer address by choosing Execution Run from Transfer Address Or using the command line enter run from transfer_address lt RETURN gt 22 Chapter 1 Getting Started Step 10 Trace the
14. After you have experimented with the interface you can exit the session or continue on to other chapters and try some of the commands given Chapters following the Getting Started chapter give you instructions for performing various tasks with the interface you do not have to work through them from front to back Skip around to topics that interest you If instead you want to exit the interface now do the following Position the mouse pointer over the pulldown menu named File on the menu bar at the top of the interface screen Press and hold the command select mouse button until the File menu appears While continuing to hold the mouse button down move the mouse pointer down the menu to the Exit menu item 625 Chapter 18 Installation and Service Verifying the Installation 4 j Display the Exit cascade menu by moving the mouse pointer to the right edge of the Exit menu choice There is an arrow on the right edge of the menu item Choose Released from the cascade menu The interface will terminate and release the emulator for use by others Step 5 Verify the performance of the emulator If you have a special configuration or session in progress save it now This procedure will cause your session to be lost Turn off power to the HP 64700 Card Cage Plug the emulator probe into the Demo Board if it is not already there Connect Demo Board power cable from the Demo Board to the HP 64700 Card Cage fron
15. Status unknown run emul700 1 lt LOGICAL NAME gt Cause The host system cannot determine the status of the emulator Action To verify communication between the emulator and the host system and display the emulator status enter the emul700 1 lt logical name gt command The emulator logical name is located in the usr hp64000 etc 64700tab net or 64700tab file Step count must be 1 through 999 Cause You tried to use a step count greater than 999 Action Use a step count less than 1000 Step display failed Error 688 Cause System failure or target condition Action Check memory mapping and configuration questions Stepping aborted Error 685 This message is displayed if a break was received during a step command with a stepcount of zero 0 The break could have been due to any of the break conditions such as a lt CTRL gt c break Stepping aborted number steps completed lt STEPS TAKEN gt Cause Stepping aborted because lt ctrl gt c or a breakpoint was hit guarded memory was accessed or some other kind of error occurred Action See the error log display for any abnormal errors Correct those errors and then step again 504 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Stepping aborted number steps completed lt steps completed gt Error 686 Cause This message is displayed if a break was received during a step command with a stepcount greater than zero The bre
16. To lt RETURN gt on DISPLAY diagram 381 Chapter 11 Emulator Commands DISPLAY MMU lt ADDRESS gt EXPR FCODE lt HEX gt level This command is only available to the MC68030 emulator and only when its MMU is enabled The display mmu_translations command is used to display all of the present translations for all logical addresses or for only a limited range of logical addresses Further you can display the details of how a single logical address is mapped through the tables to its corresponding physical address Finally you can display the details of a single translation table used by a selected logical address You can use the display mmu_translations command to view the present set of valid translations even when the TC register and the root pointer registers are invalid Parameters in the display mmu_translations command let you specify values to use when none exist in these MMU registers The address or address range specifies a logical address reference for the MMU information to be displayed This takes the form of EXPR see the EXPR syntax diagram An expression is a combination of numeric values symbols operators and parentheses specifying a value such as an address See the EXPR syntax diagram The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available and for an expla
17. Action Use the display error_log command to view any errors You may need to modify the configuration and map memory before you load the file again If the problem persists make sure the host system and emulator are operating properly and that you are trying to load an acceptable file Logical emulator name unknown not found in 64700tab file Error 10315 Cause This message may occur while trying to start up the emulator It indicates that the emulator name specified could not be found in the 64700tab net or etc hosts files Action Specify the name in one of these files 487 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Measurement system not found Cause You tried to end the current emulation session and select another measurement system module which could not be located by the host system Action Either try the end select measurement_system command again or end and release the emulation session Memory allocation failed ending released Cause This is a fatal system error because the emulation session was unable to allocate memory Action You may need to reconfigure your UNIX kernel to increase the per process maximum memory limit and available swap space Reboot your UNIX system and try starting a new session again Memory modify aborted next address lt address gt Error 754 Cause One of these messages is displayed if a break occurs during processing of the copy memory or modify
18. Example Command files requiring parameters must have those parameters supplied by the calling command file as part of the call Failure to supply the parameters causes an error and a halt of the calling command file The first command file named cmdfile1 calls the second named cmdfile2 and then executes a single instruction after control returns cmdfilel cmdfile2 display memory cmdfile2 load configuration democfg load demo To pause command file execution To pause execution of a command file until the SIGINT lt CTRL gt c signal is received use the wait command To pause execution of a command file for a specific amount of time use the wait lt time gt command where lt time gt is in seconds To pause execution of a command file until a trace trigger has been found and the trace buffer is filled use the wait measurement_complete command You may want to add a delay to a command file under certain conditions For example you may want to execute a command file up to a certain point have it display a screen and then pause while you examine the output on the screen Place wait measurement_complete in your command file following a trace command to ensure that the trace completes before command file execution continues This ensures that subsequent trace display or trace copy commands use the new trace states not states from a previous trace 80 Chapter 3 Using the emulator analyzer int
19. Examples Get help on the Terminal Interface ef command display pod_command pod_command help cf Get help on all Terminal Interface command groups display pod_command pod_command help 93 Chapter 3 Using the emulator analyzer interface Accessing the Operating System Example Accessing the Operating System Through the command line you can access the operating system to use services available there You can set environment variables and enter UNIX commands This section shows you how to e Set environment variables e Enter UNIX commands e Display the name of the emulation module To set environment variables Type set lt ENVIRONMENT VARIABLE gt lt VALUE gt You can set UNIX environment variables with the set command The lt ENVIRONMENT VARIABLES can be any UNIX environment identifier name The lt VALUES gt can be any string value If the value has embedded spaces use double quotes around the string To set the PRINTER environment variable to Ip s enter set PRINTER lp s To enter UNIX commands e Type lt UNIX_COMMAND gt e Type lt UNIX_COMMAND gt lt options gt 94 Chapter 3 Using the emulator analyzer interface Accessing the Operating System You can execute any UNIX command by preceding it on the command line with an exclamation mark The system creates a shell process and executes the command line string following the exclamation m
20. F set symbols on pod_cmd set perfinit perfrun perfend ETC 176 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements To display the trace status e Choose Display Status e Using the command line display the trace status with the display status command When you complete a trace measurement you ll want to see the results The commands above show the current emulator and analyzer status The analyzer status shows whether the trace has completed trace memory is full analyzer arm condition whether the trigger has been found number of states captured current sequencer state and occurrence count Example In the following example trace status display the screen shows that the emulation trace has halted an analyzer arm activating condition was not received or defined the analyzer trigger was not found no trace states were captured because the trigger was not recognized and no analyzer sequence terms or occurrences of states were needed to satisfy the analyzer trigger Status SS E Emulator Status M68EC836 Running in monitor Trace Status Emulation trace halted Arm not received Trigger not in memory Arm to trigger States 8 Sequence term Occurrence left STATUS M68EC836 Running in monitor eR eesti display status 177 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements To change the trace dep
21. This allows you to define symbolic information for an address range of addresses or a file See the SYMB syntax pages and the SRU User s Guide for more information on symbols This displays the last location where the symbol information may be located For example if a particular symbol is associated with a range of addresses end will represent the last address in that range This displays the first memory location where the symbol you specify may be located For example if a particular symbol is associated with a range of addresses start will represent the first address in that range This defines either the algebraic negation minus sign or the logical negation NOT sign Parentheses may be used in expressions to enclose numbers For every opening parenthesis a closing parenthesis must exist When C appears on the right side of the status line a valid expression exists The NORMAL key can be accessed at any time but is only valid when C is on the command line 393 Chapter 11 Emulator Commands EXPR Examples See Also O5fxh DISP_BUF 5 SYMB_TBL OFFSET 2 START cprog C line 15 end help expressions SYMB 394 Chapter 11 Emulator Commands FCODE FCODE fcode none sp sd Up ttt ud The function code is used to define the address space being referenced Select the appropriate function code from those l
22. This command begins a performance measurement It causes the emulation system to reduce trace data contained in the emulation bus analyzer The resulting data is used for analysis by the performance measurement software 1 lt RETURN gt The default is to process data presently contained in the analyzer This represents the number of consecutive traces you specify The emulation system will execute the trace command process the resulting data and combine it with existing data This sequence will be repeated the number of times specified by the COUNT option The trace command must be set up correctly for the requested measurement For an activity measurement you can use the default trace command trace counting time lt RETURN gt For a duration measurement you must set up the trace specification to store only the points of interest To do this for example you could enter trace only lt symbol_entry gt or lt symbol_exit gt performance_measurement_run 10 lt RETURN gt performance_measurement_run lt RETURN gt help performance_measurement_initialize help performance measurement_run performance_measurement_end performance_measurement_initialize 412 keyboard lt POD_CMD gt suspend Chapter 11 Emulator Commands pod_command pod_command oer a keyboard lt pod_command gt lt RETURN gt The HP 64700 Series e
23. To run programs until a selected address occurs When displaying memory in mnemonic format position the mouse pointer over the line that you want to run until then press and hold the select mouse button and choose Run Until from the popup menu Place the address you want to run until in the entry buffer then choose Execution gt Run until Using the command line enter run until lt address gt When you run until an address a breakpoint is set at the address and the program is run from the current program counter until the breakpoint is hit This command is useful for bypassing large areas of code For example you may want to run your program through the program startup code until the main function begins so that you can begin testing your code at main When using the command line you can combine the various types of run from commands with the run until command for example you can run from the transfer address until the start of a routine you wish to test You may need to enable breakpoints before run until will work See To enable or disable the breakpoint feature later in this chapter 138 Chapter 4 Using the Emulator Using Processor Run Controls To break to the monitor Choose Execution Break Using the command line cause the emulation processor to break from execution of your target program and start execution in the monitor by entering break The emulation monitor is a program that prov
24. e If using the MC68030 EC030 emulator type ed usr hp64000 demo debug_env hp64747 lt RETURN gt Refer to the README file for more information on the demo program more README lt RETURN gt Check that usr hp64000 bin and are in your PATH environment variable To see the value of PATH S echo SPATH lt RETURN gt If the Graphical User Interface software is installed on the same computer or same type of computer that you are using to run this Getting Started procedure skip this step and go directly to step 4 of this Start the demo procedure If the Graphical User Interface software is installed on a different type of computer than the computer you are using edit the platformScheme resource setting in the Xdefaults emul file For example if the Graphical User Interface will be run on an HP 9000 computer and be displayed on a Sun SPARCsystem computer change the platform scheme to SunOS This can t be done in the demo directory specified above because the Xdefaults emul file is write protected You will need to move it to a new directory and then change its permissions The best way to do this is to enter the command Startemul lt logical_emul_name gt lt RETURN gt Chapter 1 Getting Started Step 1 Start the demo Where lt logical_emul_name gt is the logical name of your emulator given in the HP 64700 emulator device table file usr hp64000 etc 64700tab net After y
25. 0 5 0 8 V Input Leakage Current BR BGACK IPLx IN 2 5 2 5 uA GND lt VinsVcc Input High Current BERR AVEC DSACKx IH EA 25 uA CLK RESET HALT ae 50 Input Low Current RESET HALT In 5 1 4 mA CLK BERR AVEC DSACKx E 0 25 Output High Voltage A0 A31 AS BG D0 D31 DBEN DS Gace oan ed v Iou 400HA ECS R W IPEND OCS RMC SIZO SIZ1 FCO FC2 Output Low Voltage VoL V IoL 2 5 mA A0 A31 FC0 FC2 SIZ0 SIZ1 0 5 IoL 3 2 mA BG D0 D31 0 5 IoL 4 5 mA R W RMC 0 5 IoL 5 3 mA AS DS DBEN IPEND a 05 IoL 2 0 mA ECS OCS a 0 5 IoL 9 3 mA RESET HALT 05 Power Dissipation Ta 0 C Pp 200 mW Ta 70 C 200 Capacitance Cin REEF 20 pF Vin 0V Ta 25 C f 1MHz Load Capacitance A0 A31 FCO FC2 SIZ0 SIZ1 R W CL 100 pF All Other 50 554 Chapter 16 Specifications and Characteristics HP 64748 Electrical Specifications Notes 1 The power dissipation is an indication of how much power is drawn from the target system by the emulator probe not the true power dissipation of the emulator probe HP 64748 AC ELECTRICAL SPECIFICATIONS CLOCK INPUT Num Characteristic MC68020 HP 64748 Unit 33 MHz Min Max Min Max Frequency of Operation 12 5 33 12 5 33 MHz 1 Cycle Time 30 80 30 80 ns 2 3 Clock Pulse Width 14 66 14 66 ns 4 5 Rise and Fall Times EE 3 y 3 ns HP 64748 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5 GND 0 Vdc Ta 0 to 70 C
26. 163 675 Index problems analyzer won t trigger 303 can t break to monitor after MMU enabled 312 deMMuUer out of resources 309 310 demo program won t work 307 desired interface won t start 30 discussion for the MMU 342 347 DMA problem 308 emulation reset problem 308 emulator won t work in target system 304 multiple guarded memory accesses 307 physical memory addresses in trace list 310 311 problem types and their solutions 299 solving quick start problems 29 32 trouble mapping memory 306 unexplained states in the trace list 302 you suspect the emulator is broken 305 processor accessing memory resources 120 134 reset 143 run controls 135 143 stepping 140 type 40 progflash 635 637 example 636 program activity measurements SPMT 257 270 program counter mnemonic memory display 15 programs building 99 displaying data structures 120 loading 102 running 135 storing 102 105 pulldown menu item using the keyboard 56 using the mouse 54 55 pulldown menus how they map to the command line 351 pushbutton select mouse button 9 pws command 117 676 Index QUALIFIER parameter 415 417 qualifier glossary definition of 650 quick start solving problems 29 32 READY CMB signal 237 real number form 131 recall buffer 7 columns 527 initial content 527 528 lines 527 recalling entries 61 recursion in SPMT measurements 260 redisplay memory locations 132 registers 366
27. 182 store command 105 options 435 436 store qualifier glossary definition of 652 store trace command 229 store trace_spec command 228 230 storing and loading 102 108 strange addresses in trace from deMMUer 333 summary of commands 360 SunOS minimum version 579 switching directory context in configuration window 284 Symbol Selection dialog box operation 64 symbols 208 database loading 110 displaying in memory and traces 124 displaying in trace list 193 displaying the parent symbol 114 entering 116 handling 109 introduction 109 119 symbols SYMB 437 444 symbols that don t agree with code correct by offsetting addresses 129 synchronous measurements 243 disabling 244 starting 244 syntax command conventions in manual 358 conventions 358 syntax error in display registers MMU command 145 681 Index system requirements HP 64700 minimum version 578 579 HP 9000 overview 578 HP UX minimum version 578 OSF Motif HP 9000 700 requirements 578 SPARCsystem overview 579 SunOS minimum version 579 systems virtual memory explained 317 table details for a single logical address 169 328 TAKEN NOT TAKEN and TAKEN in trace list 190 target system probe probe installation 161 probing sockets 163 temperature specifications 561 temporary software breakpoints setting 152 terminal interface commands to avoid 89 commands used in high level interface 224 copying screen to a file 90
28. 64700 Operating Environment The Graphical User Interface requires version A 04 10 of the 64700 Operating Environment The Graphical User Interface version is A 04 00 Motif OSF For Series 9000 700 workstations you must also have the Motif 1 1 dynamic link libraries installed They are installed by default so you do not have to install them specifically for this product but you should consult your HP UX documentation for confirmation and more information Hardware and Memory Any workstation used with the Graphical User Interface should have a minimum of 16 megabytes of memory 32 megabytes or more is recommended Series 300 workstations should have a minimum performance equivalent to that of a HP 9000 350 A color display is also highly recommended 578 Chapter 18 Installation and Service Installation From here you should proceed to the section titled Installation for HP 9000 Hosted Systems for instructions on how to install verify and start the Graphical User Interface on HP 9000 systems Minimum Sun SPARCsystem Hardware and System Requirements The following is a set of minimum hardware and system recommendations for operation of the Graphical User Interface on Sun SPARCsystem workstations SunOS The Graphical User Interface software is designed to run on a Sun SPARCsystem with SunOS version 4 1 or 4 1 1 or greater Solaris 1 X At the time this manual was printed the Graphical User Interface software would not run on
29. 64747A 68EC030 Complete support Complete support 64747B 68030 EC030 Only 68EC030 support Complete support The emulators plug in to the HP 64700 instrumentation card cage and offer 80 channels of processor bus analysis with the HP 64794 or 64704A emulation bus analyzer Flexible memory configurations are offered from zero through two megabytes of emulation memory High performance download is achieved through the LAN or RS 422 interface An RS 232 port and a firmware resident interface allows debugging of a target system at a remote location For software development the HP AxCASE environment is available on SUN SPARCsystems and HP workstations This environment includes an ANSI standard C compiler assembler linker a debugger that uses either a software simulator or the emulator for instruction execution the HP Software Performance Analyzer that allows you to optimize your product software and the HP Branch Validator for test suite verification If your software development platform is a personal computer support is available from several third party vendors This is provided through the HP 64700 s ability to consume several industry standard output file formats Ada language support is provided on HP 9000 workstations by third party vendors such as Alsys and Verdix An Ada application developer can use the HP emulator and any compiler that generates HP MRI IEEE 695 to do exhaustive real time debu
30. During monitor commands the monitor uses its own exception vector table and attempts to block all interrupts However a non maskable level 7 interrupt causes the monitor to abort the command and restore the original vector table and interrupt priority mask THE TARGET SYSTEM LEVEL 7 INTERRUPT HANDLER IS NOT EXECUTED 500 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Request failed no MC68881 882 floating point coprocessor Error 170 Cause You entered a command to display or modify an FPU register but you don t have one in your system Request failed unexpected exception lt vector gt Error 170 Cause The monitor detected an exception that was generated during execution of a monitor command Restricted to real time runs Error 40 Cause While the emulator is restricted to real time execution you have attempted to use a command that requires a temporary break in execution to the monitor The emulator does not permit the command and issues this error message Action You must break the emulator s execution into the monitor before you can enter the command Retry limit exceeded transfer failed Error 412 Cause The limit for repeated attempts to send a record during a transfer operation was exceeded therefore the transfer was aborted Action Retry the transfer Make sure you are using the correct command options for both the host and the HP 64700 The data communications parameters
31. GND 0 Vdc Ta 0 to 70 C Num Characteristic HP 64747 HP 64747 Unit 25MHz 40MHz Min Max Min Max 9 Clock Low to AS DS CBREQ Asserted 3 18 2 1 5 ns 9A AS to DS Assertion Skew Read 10 10 8 8 ns 9B AS Asserted to DS Asserted Write 27 gayt ns 10 ECS Width Asserted 10 5 ns 10A OCS Width Asserted 10 5 ns 10B ECS OCS Width Negated AG cea Be nde es 11 FC Size RMC CIOUT Address Valid to AS Asserted 7 CN 5 hs and DS Asserted Read 12 Clock Low to AS DS CBREQ Negated 6 18 0o 15 ns 12A Clock Low to ECS OCS Negated 0 18 0 12 ns 13 AS DS Negated to FC Size RMC C1OUT Address Invalid 6 2 ne 14 AS and DS Read Width Asserted Asynchronous Cycle 70 30 ns 14A DS Width Asserted Write 30 18 ns 14B AS and DS Read Width Asserted Synchronous Cycle 30 18 ns 15 AS DS Width Negated 30 18 ns 15A DS Negated to AS Asserted 25 16 ns 16 Clock High to AS DS R W DBEN CBREQ High Impedance l4 es 295 17 AS DS Negated to R W Invalid 6 2 ns 18 Clock High to R W High 0 120 0 14 ns 20 Clock High to R W Low o 20 0 15 ns 549 Chapter 16 Specifications and Characteristics HP 64747 Electrical Specifications HP64747 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5 GND 0 Vdc
32. Other than this status message the display mmu_translations command completely ignores transparent translations when looking up logical to physical address translations This status is only used to warn you that the MMU is currently set up to transparently translate one or more addresses 1 1 instead of using the displayed address translations Ambiguous address lt address gt Error 312 Cause You mapped memory using function codes but didn t enter a function code in an address specification for a run or trace measurement The emulator is unable to determine which of two or more address ranges you are referring to based on the information you entered Action Reenter the command and fully specify the address including function code information Analyzer Break 613 Status message No action necessary 462 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Analyzer limitation all expression resources in use Error 10360 Analyzer limitation all pattern resources in use Error 10360 Analyzer limitation all range resources in use Error 10360 Cause Your trace specification would use more than the maximum number of resources available to the analyzer Action Simplify the trace specification Analyzer SIMMs are not all the same size using smallest size Status 1002 Cause Plug in SIMMs are used to expand the trace depth to 64k or 256k states in the deep analyzer Four SIMMs all of the same
33. Probe exchange To replace the Probe on the exchange program you must remove certain parts and return only that part considered an exchange part When returning the Probe you must remove the cable assembly top and bottom plastic covers SRAM modules demo board Emulation Control Card exchange To replace the Emulation Control Card on the exchange program you must remove certain parts and return only that part considered an exchange part When returning the Emulation Control Card you must remove the e ribbon cable that connects the Emulation Control Card to the analyzer card e cable assembly e egress panel 631 632 19 Installing Updating Emulator Firmware 633 Chapter 19 Installing Updating Emulator Firmware Installing Updating Emulator Firmware If you ordered the HP 64747 MC68030 or HP 64748 MC68020 emulator probe and the HP 64748C emulation control card together the control card contains the correct firmware for the emulator However if you ordered the emulator probe and the HP 64748C separately or if you are using an HP 64748C that has been used previously with a different emulator probe you must download the correct firmware into the emulation control card The 68020 and 68030 EC030 emulator firmware is included with the emulator analyzer interface software and the program that downloads emulator firmware is included with the HP B1471 64700 Operating Environment product
34. The XAPPLRESDIR environment variable defines a directory containing system wide custom application defaults 3 The server s RESOURCE_MANAGER property The xrdb command loads user defined resource specifications into the RESOURCE_MANAGER property If no RESOURCE_MANAGER property exists user defined resource settings are read from the SHOME Xdefaults file 518 Chapter 13 Setting X Resources 4 The file named by the XENVIRONMENT environment variable If the XENVIRONMENT variable is not set the HOME Xdefaults host file is read typically contains resource specifications for a specific remote host 5 Resource specifications included in the command line with the xrm option 6 System scheme files in directory usr hp64000 lib X 1 1 HP64_schemes 7 System wide custom scheme files located in directory X APPLRESDIR HP64_ schemes 8 User defined scheme files located in directory HOME HP64_schemes note the dot in the directory name Scheme files group resource specifications for different displays computing environments and languages This chapter shows you how to e Modify the Graphical User Interface resources e Use customized scheme files e Set up custom action keys e Set initial recall buffer values e Set up demos or tutorials Refer to Chapter 17 X Resources and the Graphical Interface for more detailed information 519 Chapter 13 Setting X Resources To modify the Graphical User Inte
35. User abort occurred due to emulator being monopolized by another command Action Don t issue an abort 515 516 13 Setting X Resources 517 Chapter 13 Setting X Resources Setting X Resources The Graphical User Interface is an X Window System application which means it is a client in the X Window System client server model The X server is a program that controls all access to input devices typically a mouse and a keyboard and all output devices typically a display screen It is an interface between application programs you run on your system and the system input and output devices An X resource controls an element of appearance or behavior in an X application For example in the graphical interface one resource controls the text in action key pushbuttons as well as the action performed when the pushbutton is clicked By modifying resource settings you can change the appearance or behavior of certain elements in the graphical interface When the graphical interface starts up it reads resource specifications from a set of configuration files Resources specifications in later files override those in earlier files Files are read in the following order 1 The application defaults file For example usr lib X1 1 app defaults HP64_Softkey when the operating system is HP UX or usr openwin lib X 1 1 app defaults HP64_Softkey when the operating system is SunOS 2 The XAPPLRESDIR HP64_Softkey file
36. Using Processor Run Controls When you don t use an emulator run control can be difficult Usually you re limited to starting the processor from reset and then entering data values that vector program execution to the routines you want to test Reaching those routines may be difficult or impossible if the data values are boundary conditions or if the program logic is faulty By using the emulator you can run the processor from the current program counter or any desired address If you want to examine the system after each program instruction you can use the step command to step through the program You can break to the monitor program to examine on chip resources such as RAM and registers and you can reset the processor from the emulator To run a program Choose Execution Run and select the desired starting point from the submenu or select untilQ to specify the ending point Enter the starting or ending address in the entry buffer before you choose a command that contains from or until Using the command line enter commands as follows e Torun a program from the current program counter PC value enter run e To run a program from a specific address enter run from lt EXPR gt where lt EXPR gt is a valid address expression that may include symbols e Torun a program from the reset vector enter run from reset e Toruna program from its transfer address enter run from transfer_address When you
37. ae FILE lt FILENAME gt C lt FILENAME gt SCOPE lt SYMB gt SCOPE gt lt FILENAME gt SCOPE a SCOPE lt IDENTIFIER gt a lt TYPE gt Lot 437 Chapter 11 Emulator Commands SYMB entry_exit_range This parameter is a symbolic reference to an address address range file or other value Symbols may be e Combinations of paths filenames and identifiers defining a scope or referencing a particular identifier or location including procedure entry and exit points e Combinations of paths filenames and line numbers referencing a particular source line e Combinations of paths filenames and segment identifiers identifying a particular PROG DATA or COMN segment or a user defined segment The Symbolic Retrieval Utilities SRU handle symbol scoping and referencing These utilities build trees to identify unique symbol scopes If you use the SRU utilities to build a symbol database before entering the emulation environment the measurements involving a particular symbol request will occur immediately If you then change a module and re enter the emulation environment without rebuilding the symbol database the emulation software rebuilds the changed portions of the database in increments as necessary Further information regarding the SRU and symbol handling is available in the SRU User s Guide Also refer to that manual for information on the HP6
38. and the maximum number of entries are set via X resources refer to Chapter 13 Setting X Resources 64 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface Examples To use the File Selection dialog box The file filter selects spcono hiss Emulator Analyzer File Selectio Alior File Filter filter matching files from the current 3 fusers quest demo68340 Xx directory E i A list of files 4 Files previously accessed sers quest demo66340 anly x during the emulation sers questidemo66340 cmd_rdr x session B sers quest demo66340 simio x sers quest demo66340 spmt x file name from either lt Previous Files gt penne A fusers questidemo68340 cmd rdr x list highlights the file sers questidemo68340 anly x name and copies itto f ysers questidemo68340 spmt x the text area A z double click chooses the file and closes the dialog box A single click on a Label informs you what kind of file B selection you are Load executable program and symbols rforming E icine 4 users quest demo68340 cmd_rdr x Text entry area Text j is either copied here from the recall list or entered directly Clicking this button Entering a new file Clicking this button chooses the file name filter and clicking this cancels the file selection displayed in the text button causes a list of operation and closes the entry area and closes files m
39. answer yes to the Modify simulated I O configuration question To access the questions in the Interactive Measurement Specification under Analyzer Configuration Sections answer yes to the Modify interactive measurement specification question 280 Chapter 8 Configuring the Emulator Using the Configuration Interface Examples Most configuration sections provide dialog boxes similar to the following File Display Help Emulator Configuration Sections Monitor Setup Memory Map General Items The dialog for Trace Options this section has I Simulated 10 been opened Applies configuration changes to the ee emulator Monitor Type Background z Monitor FHenaime FmB4747 Monitor Address 1006H interrupt Priority maso Configuration options in this Target Completes Monitor Bus Cycles Yes No section Enable Keep Alive Function Q Yes No Keep Alive Address Keep Allve Function Code Supervisor Program Closes the Cancels all changes since Presents emulator dialog box last OK Apply to configuration help Emulator or store to file topic browser 281 Chapter 8 Configuring the Emulator Using the Configuration Interface As soon as you change a configuration option the change is recorded but not loaded as seen by the Changes Not Loaded message in the top level dialog To apply configuration changes to the emulator Cli
40. fusrihp64000 lib K1 1 HP64_schemes HP UX Configuration File jusrihpe4ooollibyti 1 HPe4 schemesiHP UXiconfig 284 Chapter 8 Configuring the Emulator Using the Configuration Interface To access help topics Choose Help General Topic from the pulldown menu in the top level configuration interface window click on a topic in the selection dialog box and click the OK button To access help for a configuration item in a dialog box Place the mouse pointer on the line of interest and press the f1 key Choose Help On Item in the top level configuration interface window or the memory map window The mouse pointer changes from an arrow to a question mark Place the question mark over a selection button or in the entry field on the line of interest and click the pushbutton select mouse button Depending on the platform you are using you may find that the f1 key is the best way to obtain help on a field or that the Help On Item selection is a better way to obtain help on a field If you are using the Help gt On Item pulldown and its associated question mark you may find that in some dialog boxes the question mark may not obtain a help screen when you place it on a command name but the help screen may be obtained when you place the question mark over an input field or button associated with the command name The configuration interface provides individual help for each item in the top level dialog
41. measurement with a newly loaded trace specification Using trace without the again parameter will start a trace with the default specification rather than the loaded specification This causes the analyzer to capture any type of information This option allows you to specify the external trigger as a trace qualifier for coordinating measurements between multiple HP 64700 Series emulators or an HP 64700 Series emulator and another instrument Before arm_trig2 can appear as an option you must modify the emulation configuration interactive measurement specification When doing this you must specify that either BNC or CMBT drive trig2 and that the analyzer receive trig2 Refer to Chapter 6 Coordinated Measurements for more information This stops target system program execution when the trigger is found The emulator begins execution in the emulation monitor When using this option the on_halt option cannot be included in the command This specifies whether time or state occurrences or nothing will be counted during the trace See the COUNT syntax diagram for details This option specifies whether the analyzer will count time or occurrences of states during a trace or whether the option is to be turned off This recalls the last trace command that was executed When using this option the analyzer will continue to capture states until the emulation processor halts or until a stop_trace command is executed When this option
42. memory Se eee EXPR Se ers aoe et 2 64783511 m 363 Chapter 11 Emulator Commands copy lt CLASS gt lt ICMDI gt data display error_log event_log EXPR The copy command copies selected information to your system printer or listing file or directs it to an UNIX process Depending on the information you choose to copy default values may be options selected for the previous execution of the display command For example if you display memory locations 10h through 20h then issue a copy memory to myfile command myfile will list only memory locations 10h through 20h A comma used immediately after memory in the command line appends the current copy memory command to the preceding display memory command The data specified in both commands is copied to the destination specified in the current command Data is formatted as specified in the current command The comma is also used as a delimiter between values when specifying multiple memory addresses Specifies a particular class of the emulator registers See the registers parameter in this section for more information about processor registers This represents an UNIX filter or pipe where you want to route the output of the copy command UNIX commands must be preceded by an exclamation point An exclamation point following the UNIX command continues Softkey Interface command line execution after the UNIX command executes Emulation is
43. plastic cover are not part of the probe assembly The emulation memory modules must be ordered separately and the plastic covers should be removed from the probe assembly before replacing the probe assembly 628 Chapter 18 Installation and Service Parts List Parts List Main Assembly Component Part New Exchange HP 64747A Probe and Demo Board FG Monitor Floppy MC68030 Probe assembly HP 64747A B Demo Board HP 64747B Probe and Demo Board FG Monitor Floppy MC68030 Probe assembly HP 64747A B Demo Board Top Plastic Cover Bottom Plastic Cover HP 64748A D Probe and Demo Board FG Monitor Floppy MC68020 Probe assembly HP 64748 Demo Board Top Plastic Cover Bottom Plastic Cover Probe and Demo Board Generic Parts Washer Plastic Rivet External Power Cable Plastic Rivets Kit rivets and washers 64747 18003 64747 62107 64747 66506 64747 18004 64747 66509 64747 66506 64747 04101 64747 04102 64748 18002 64748 62101 64748 66510 64748 04101 64748 04102 3050 0300 0361 1215 5181 0201 64748 68700 64747 69507 64747 69509 64748 69101 629 Chapter 18 Installation and Service Parts List Main Assembly Component Part New Exchange HP 64748B Emulation Control Card Subassembly Plastic Rivet 0361 1215 Egress Panel 64748 00201 Bracket used with Egress Panel 64748 01201 Strain Relief Strap 64748 01204 Cable 100 36 Cable 100 37
44. position away from TEST Check to ensure that you changed to the demo directory e usr hp64000 demo debug_env hp64748 for the MC68020 e usr hp64000 demo debug_env hp64747 for the MC68030 EC030 31 Chapter 2 Solving Quick Start Problems If you can t display the program If you can t display the program Verify that the program loaded correctly Check to see that the status of the emulator is reset or is running in monitor See the STATUS line on the display If the emulator is halted it can t use the monitor to display program memory In this case reset the emulator and try to display the program memory again Check the event log by choosing Display Event Log or by using the display event_log command on the command line If the event log shows that the program loaded try reloading the program again If you are displaying memory with symbols on ensure that the symbol data base has been loaded with the program If this is the cause of the problem you will be able to obtain the memory display by referring to the address using its hexadecimal value instead of its symbolic value For example to obtain a display of the program in memory at symbolic address demo main Move the mouse pointer to the entry buffer and type in 2CF2H and then select Display gt Memory Mnhemonic or use the command line to enter display memory 2CF2H mnemonic 32 Part 2
45. version 638 floating point number form 131 foreground monitor mapping it for use with MC68040 MMU 296 298 forwarding commands to other interfaces 87 function codes code list 102 mapped in deMMUer resources 341 used in translation tables 320 global symbols 14 208 373 displaying 111 initializing the SPMT measurement with 265 glossary 641 655 graphical user interface 6 command conventions 8 command descriptions 350 entering commands 47 how to use it 35 to use its special command features 54 guarded memory access when using MMU 343 halt of system when using MMU 344 hand pointer 7 57 hardware HP 9000 memory needs 578 HP 9000 minimum performance 578 HP 9000 minimums overview 578 SPARCsystem memory needs 579 SPARCsystem minimum performance 579 SPARCsystem minimums overview 579 668 Index hardware breakpoints see execution breakpoints 148 149 151 157 hardware enable for the MMU 320 help for configuration items 285 terminal interface commands 93 help command 52 93 options 397 hexadecimal numbers 208 high level interface using pod commands within 224 HP 64700 internal lines 245 251 Operating Environment minimum version 578 579 HP 9000 700 series Motif libraries 578 HP UX minimum version 578 installing software 608 614 minimum system requirements overview 578 HP UX CMD 364 HP UX minimum version 578 HP64KPATH 75 HP64KPATH and command files 85 humidity specificat
46. were loaded the interface defaults to e Source only for mnemonic memory displays e Source mixed for trace listing displays To set the display modes e Choose Settings Display Modes to open the display modes dialog box Press and hold the select mouse button and drag the mouse to select Source Only Source Mixed or Off Clicking toggles whether symbolic information is displayed Move the mouse pointer to the text entry area and type in the desired field widths Label Field sets the width of the Label Address field Mnemonic Field sets the width of the Opcode or Status field Symbols in Mnemonic Field sets the widths of symbols shown in the Opcode or Status field Source Lines field sets the width of lines that show source file lines Source 60 to 255 All Others 1 to 80 Clicking toggles auto update settings Clicking this checkbox changes all display mode settings to their defaults Clicking OK saves changes and closes dialog box Apply saves changes and leaves dialog box open urce Symbols View Sourcen Source in Trace Tab Expansion 2 to 15 Spaces l ia Symbolic Addresses Field Widths Label Field Mnemonic Field Symbols in Mnemonic Field Source Lines _ Auto Update 1 i Memory Displays Except Mnemonic Trace Display E Default All Settings emory Source Only m ource Mixed m 140 ueo Apply Cancel closes dialo
47. 1 Mbyte HP64748 Motorola 68020 Emulator HP64740 Emulator Analyzer If you have an emulation failure you can replace the assembly that failed through your local Hewlett Packard representative and through the Support Materials Organization SMO Refer to the list of replacable parts at the end of this chapter What is pv doing to the Emulator The performance verification procedures provide a thorough check of the functionality of all of the products installed in the HP 64700 Card Cage The Test Suite for the HP 64747 48 Emulator consists of the following modules Test Function Test Name Host Tests Reset Release Tests Transition Tests Dual Port Access Tests Emulation Memory Banks Test Analysis Interface Demo Board DOP WNERO Troubleshooting The test results for all of these modules are indicated by a simple PASS FAIL message The PASS message gives a high level of confidence that all major functions and signals are operating because it includes a loopback test that includes read and write tests to the demo board The demo board also stimulates inputs to the emulator including interrupt lines BR BERR etc A FAIL message on the other hand indicates that one or more of the tested functions is NOT working In this event an HP field representative can either swap assemblies to isolate the failure to an individual board or replace all the major assemblies shown in the replaceable parts list The emulation memory modules and
48. 1A2 get_targets 88803482 G4883551 prog BBEA graph_data papg3sAE 3980 prog 0518 init tem _ cee rs _ fier HE init_val_arr Global Symbols Display 0g 0074 initsimio Display Local Symbols polc interrupt_sim og 0074 kill Display Parent Symbols hv 2E6 Laa Cut Full Symbol Name Bee main og malloc Edit File Defining Symbol ibe memchr ibc STATUS M68030 Running in monitor Emulation trace complete display global_symbols Command Cursor Backup Forward Clear to end Clear Help If local symbols exist within the scope of the symbol you chose then the display changes to show those symbols Otherwise the interface issues an error 113 Chapter 4 Using the Emulator Using Symbols Examples View the parent symbol associated with the highlighted symbol by choosing this menu item To display the parent symbol of a symbol When displaying symbols position the mouse pointer over the symbol press and hold the select mouse button and choose Display Parent Symbols from the popup menu If a parent symbol does not exist for the highlighted symbol this menu item will be grayed out and unresponsive to mouse clicks File Display Modify Execution Breakpoints Trace Settings Address range __ Segment aaas20c prog aaa3342 i Display Local Symbols Display Parent Symbols Cut Full Symbol Name Edit File Defin
49. 4 Step high level source lines Step 4 Step high level source lines You can step through the program by high level source lines The emulator executes as many instructions as are associated with the high level program source lines To step a source line from the current program counter click on the Step Source action key Or using the command line enter step source lt RETURN gt Notice that the highlighted bar the current program counter moves to the next high level source line Step into the init_system function by continuing to step source lines either by clicking on the Step Source action key by clicking on the Again action key which repeats the previous command by choosing Execution Step Source fromPC or by entering the step source command on the command line Memory sp imnemonic file init_system module init_system c data void init_val_arr void init_system 38 gt ET FUNCTION init_system 32 Initialize the target values for temperature and humidity 33 target_temp 73 34 target_humid 45 35 36 Intialize the variables indicating the current environment 3 conditions 38 current_temp 68 39 current_humid 41 40 41 Set starting directions for temp and humid 42 temp_dir up 16 Chapter 1 Getting Started Step 5 Display the previous mnemonic display Step 5 Display the previous mnemonic display Click on the Disp S
50. Cable 100 38 Emulation Control Card without external cable or egress panel Wrist strap HP 64748C Emulation Control Card Subassembly Egress Panel Bracket used with Egress Panel Spacer Hex M3X6 Screw Machine M3X8 Cable 100 36 Cable 100 37 Cable 100 38 Cable Clamp Rubber Strip Emulation Control Card without external cable or egress panel Wrist strap HP 64171A 256 Kbyte SRAM Module HP 64172A 256 Kbyte SRAM Module HP 64171B 1 Mbyte SRAM Module HP 64172B 1 Mbyte SRAM Module HP 64173A 4 Mbyte SRAM Module do not use on 64748A or deep analyzer 64748 61601 64748 61602 64748 61603 64748 66507 9300 1405 64748 00205 64748 01201 0515 1146 0515 0372 64748 61601 64748 61602 64748 61603 64744 01201 64744 81001 64748 66515 9300 1405 64171 66503 64172A 64171 66502 64172B 64173A 64748 69507 64748 69515 64171 69503 64172 69501 64171 69502 64172 69502 64173 69501 630 Chapter 18 Installation and Service Parts List Main Assembly Component Part New Exchange HP 64794A Emulation Bus Analyzer Card with deep memory 64794 66502 64740 69502 34 pin ribbon cable 64708 61601 HP 64740 Emulation Bus Analyzer Card with 1K memory 64740 66526 64740 69526 34 pin ribbon cable 64708 61601 What is an Exchange Part Exchange parts are shown on the parts list A defective part can be returned to HP for repair in exchange for a rebuilt part
51. Contents 7 Making Software Performance Measurements Using the Software Performance Measurement Tool 256 Use the Software Performance Analyzer SPA for more capability 256 Understanding activity measurements 257 Understanding duration measurements 260 To use the Software Performance Measurement Tool 261 Step 1 Setup the tracecommand 262 Step 2 Initialize the performance measurement 263 Step 3 Run the performance measurement 267 Step 4 End the performance measurement 268 Step 5 Generate the performance measurement report 269 8 Configuring the Emulator Configuring the Emulator 276 Using the Configuration Interface 277 To start the configuration interface 278 To modify a configuration section 280 To apply configuration changes to the emulator 282 To store configuration changes to a file 283 To change the configuration directory context 284 To display the configuration context 284 To access help topics 285 To access help for a configuration item in a dialog box 285 To exit the configuration interface 286 To load an existing configuration file 286 Emulation Configuration Displays 287 Mapping Memory 293 xvii Contents Providing MMU Address Translation for the MC68030 Foreground Monitor 296 Locating the Foreground Monitor using the MMU Address Translation Tables 298 Solving Problems If the emulator appears to be malfunctioning 301 If the analyzer triggers on a program address when it should not 3
52. Displays may contain several blocks of source lines with each block followed by program code or emulation bus activity Each block of source lines can begin with the next source line following the preceding block If a particular block contains a lot of comment lines the block can become very big This option lets you specify a number to limit the size of the blocks of source lines The default value is 5 lt NUMSRC gt This prompts you for the number of source lines to be displayed Enter a value from 1 through 50 source memory_only_ trace_on off on only This provides a way to default the memory and trace displays to a setting that HP believes is the nicest possible formats for memory and trace displays Parameters such as source on only number of source lines to show display width and turning symbols on are all governed by this one selection With this selection memory displays will show the maximum available source lines preceding each block of code and trace lists will show five source lines preceding trace data This option prevents inclusion of source lines in the trace and memory mnemonic display lists This option displays source program lines preceding the processor instructions to which they correlate This enables you to correlate processor instructions with source program code The option is available in both the trace list and memory mnemonic displays This option displays only source lines Processor
53. Emulation memory requires one wait state at speeds greater than 25 MHz Dual port emulation memory will run at full rated clock speed without wait states 546 Chapter 16 Specifications and Characteristics HP 64747 Electrical Specifications HP 64747 Electrical Specifications HP 64747 DC ELECTRICAL SPECIFICATIONS vcc 5 0 Vde 5 GND 0 Vdc Ta 0 to 70 C Characteristic Symbol Min Max Unit Input High Voltage Vin 20 Vee V Input Low Voltage VL 0 5 0 8 Vv Input Leakage Current BR BGACK IPLx CDIS IN 2 5 2 5 pA GNDSVinSVec Input High Current CBACK CIIN STERM BERR AVEC IH 0 uA DSACKx HALT MMUDIS E 25 CLK RESET P 50 Input Low Current RESET CBACK CIIN STERM IL 7 1 4 mA CLK BERR AVEC DSACKx HALT MMUDIS 1 025 Output High Voltage A0 A31 AS BG D0 D31 DBEN DS Vor 241 v IoH 400HA ECS R W STATUS REFILL IPEND OCS RMC SIZ0 SIZ1 FCO FC2 CBREQ CIOUT Output Low Voltage VoL Vv IoL 2 5 mA A0 A31 FCO FC2 SIZ0 SIZ1 3 0 5 IoL 3 2 mA BG D0 D31 9 0 5 IoL 4 5 mA R W RMC 0 5 IoL 5 3 mA AS DS DBEN IPEND 7 0 5 IoL 2 0 mA STATUS REFILL CBREQ C1IOUT ECS OCS 7 0 5 IoL 9 3 mA RESET p 0 5 Power Dissipation Ta 0 C Pp 34 1 W Capacitance Cin 20 pF Vin OV Ta 25 C f 1 MHz Load Capacitance AO A31 FCO FC2 SIZ0 SIZ1 R W CBREQ CL _ 100 pF C1OUT All Other 2 50 547 Chapter 16 Specifications and Cha
54. Emulator Analyzer Interface 4 Using the Emulator 5 Using the Emulation Bus Analyzer 6 Making Coordinated Measurements 7 Making Software Performance Measurements 8 Configuring the Emulator to be performed before you run a program in emulation 9 Solving Problems Part 3 Reference Guide provides detailed information on emulator functions commands and environments 10 Using MC68030 Memory Management 11 Emulator Commands 12 Emulator Messages 13 Setting X Resources 14 The SPARCsystem Interface 15 Microtec Language Tools used with the Emulator 16 Specifications and Characteristics Part 4 Concepts Guide discusses X Resources and the Graphical User Interface Part 5 Installation and Service Guide shows you how to install and maintain the emulator 18 Installation and Service 19 Installing Updating Emulator Firmware viii Part 1 Contents Quick Start Guide Getting Started The Emulator Analyzer Interface Ata Glance 4 The Softkey Interface 4 Softkey Interface Conventions 5 The Graphical User Interface 6 Graphical User Interface Conventions 8 The Getting Started Tutorial 11 Step 1 Start the demo 12 Step 2 Display the program in memory 14 Step 3 Run from the transfer address 15 Step 4 Step high level source lines 16 Step 5 Display the previous mnemonic display 17 Step 6 Run until an address 18 Step 7 Display data values 19 Step 8 Display registers
55. LIP PUSH FRONT BEZEL INTO PLACE 13 This step applies only if your emulator is installed in an HP 64700A card cage If you wish to install the flash card used for updating firmware as described in Chapter 19 refer to the diagram two pages earlier in this chapter for locations of cards in the card cage Install the flash card in any available slot between the 80 channel analyzer card and the HP 64748C control card in the card cage Insert the flash card in the plastic guides Make sure the connectors are properly aligned Then press the card into the mother board sockets Make sure the card is seated all the way into the sockets 596 Chapter 18 Installation and Service Installing Hardware 14 Install the card supports 64700E01 NUMBER HERE INDICATES SLOT CARD SUPPORTS 15 To install the side cover insert the side cover into the tab slots and fasten the two latches TAB SLOTS EMULATOR SIDE COVER L LATCHES ON BOTTOM PANEL e y
56. Local Symbols Symbol name Segment Offset _bA_array S Display Parent Symbols E data lala _bA_metsys_tini 57 const 9888 ut Full Symbol Name Filename symbolg 3 Edit File Defining Symbol Filename fusr hp64 8 demo debug_env hp64747 init_system c STATUS cws init_system module display local_symbols_in init_system module Command Cursor 8ackup Forward Clear to end Clear 115 Chapter 4 Using the Emulator Using Symbols Examples Toe nter a symbol Enter symbols according to the syntax shown in the S YMB syntax pages in Chapter 11 Emulator Commands These are examples of some valid symbol entries TInt 2 demo demo handl handl syste md Main procedure EndLoop e_msg Fill_Dest e_msg Cmd_A m c linel0 116 Chapter 4 Using the Emulator Using Symbols To display the current directory and current working symbol Choose Display Context A dialog box will open and show the name of the current directory and current working symbol Using the command line display the name of the current directory by typing pwd and the name of the current working symbol by typing pws If you re entering symbol names from several different modules you may b
57. Mnemonic Auto PC toggles whether the mnemonic memory display is automatically updated to follow the PC or remain unchanged Trace Displays toggles whether trace displays are automatically updated when trace measurements complete or whether you must enter trace display commands to update the display You may wish to turn off trace display updates in one emulator analyzer window in order to compare the display with a new trace display in another emulator analyzer window 160 Chapter 4 Using the Emulator Using the Emulator In Circuit Using the Emulator In Circuit As your target system design progresses you ll want to test features of your program that will interact with your target system hardware instead of emulation memory hardware You must connect the emulator probe to your target system to do in circuit emulation Then you can make analyzer measurements and have the memory display and other capabilities of the emulator to debug target system problems Caution When you use the emulator in circuit you need to carefully consider the configuration of the emulator and its relationship to your target system design Refer to Chapter 8 Configuring the Emulator for details of the emulation configuration To install the emulation probe CAUTION Possible damage to the emulator probe The emulation probe contains devices that are susceptible to damage by static discharge Take precautions before handling the probe to
58. Motif Window Manager HP VUE provides a login shell and is your default interface to the HP 9000 workstation HP VUE differs slightly from other window managers in that it does not read your Xdefaults file to find resources you may want to customize Instead it uses resources from the X resource database In order to customize resources for the Graphical User Interface under HP VUE therefore you must either merge a file of customized resources with the X resource database or set an environment variable that causes the X resource manager to read a file of customized resources For ease of use choose the Xdefaults file as your merge file e To merge the file Xdefaults with the X resource database enter 612 j Chapter 18 Installation and Service Installing HP 9000 Software xrdb merge Xdefaults at the HP UX prompt Customized resources will be merged with the X resource database and will be available for retrieval by the Graphical User Interface To enable the Graphical User Interface to find the Xdefaults file directly enter the following commands XENVIRONMENT HOME Xdefaults export XENVIRONMENT The Graphical User Interface will be able to find and read the file in order to retrieve customized resources Step 4 Set the necessary environment variables The DISPLAY environment variable must be set before the Graphical User Interface will start Also you should modify the PATH environment variable to include
59. Rights for non DOD U S Government Departments and Agencies are as set forth in FAR 52 227 19 c 1 2 Printing History New editions are complete revisions of the manual The date on the title page changes only when a new edition is published A software code may be printed before the date this indicates the version level of the software product at the time the manual was issued Many product updates and fixes do not require manual changes and manual corrections may be done without accompanying product changes Therefore do not expect a one to one correspondence between product updates and manual revisions Edition 1 64748 97001 April 1991 Edition 2 64748 97005 July 1991 Edition 3 64748 97007 March 1992 Edition 4 64748 97010 August 1992 Edition 5 64748 97013 December 1993 Edition 6 64748 97016 March 1994 Safety and Certification and Warranty Safety and certification and warranty information can be found at the end of this manual on the pages before the back cover iii N The HP 64747 and HP 64748 Emulators HP 64700 Card Cage HP 64748 7 68020 030 EC020 EC030 Emulator N Demo Target System 0 Address Data Opcode or Status time count symbols hex mnemonic w symbols relative E Pridemo 0000000C 050019FE BTST TD in Ee 001 Progidemo Loop 103919FE MOVE B Didemo Cmd_Input DO 160 nS 002 Didemo Cmd_Input 00000000 00 supr data byte wr 120 ns 003 Pridemo 0
60. Solaris 2 X ask your Hewlett Packard Sales Office if the present version of Graphical User Interface software will run on Solaris 2 X The tape uses the QIC 24 data format 64700 Operating Environment The Graphical User Interface requires version A 04 10 or greater of the 64700 Operating Environment The minimum Graphical User Interface version required is A 04 00 Hardware and Memory Any workstation used with the Graphical User Interface should have a minimum of 16 megabytes of memory 32 megabytes or more is recommended A color display is also highly recommended From here you should proceed to the section titled Installation for Sun SPARCsystems for instructions on how to install verify and start the Graphical User Interface on SPARCsystem workstations 579 Chapter 18 Installation and Service Installing Hardware Installing Hardware This section describes how to install emulation and analysis hardware and how to connect the emulator probe to the demo target system Equipment supplied The minimum system contains e HP 64748 68020 or HP 64747 A B 68030 EC030 PGA Emulator Probe which includes the demo target system e HP 64748C Emulation Control card e HP 64794 Emulation Bus Analyzer deep analyzer card or HP 64704A Emulation Bus Analyzer 1K analyzer card e Ribbon cable e HP 64700 Card Cage Optional parts are e HP 64171A 64172A 256 Kbyte Memory Modules for additional memory depth e HP 64
61. Special Features of the Graphical User Interface To use the action keys 1 If the action key uses the contents of the entry buffer place the required information in the entry buffer 2 Position the mouse pointer over the action key and click the action key Action keys are user definable pushbuttons that perform interface or system functions Action keys can use information from the entry buffer this makes it possible to create action keys that are more general and flexible Several action keys are predefined when you first start the Graphical User Interface Some of these perform tasks and others show you how to define and use action keys You ll really appreciate action keys when you define and use your own Action keys are defined by setting an X resource Refer to Chapter 13 Setting X Resources for more information about creating action keys To use dialog boxes j Click on an item in the dialog box list to copy the item to the text entry area of the dialog box 2 Edit the item in the text entry area if desired 3 Finally e Click on the OK pushbutton to make the selection and close the dialog box e Click on the Apply pushbutton to make the selection and leave the dialog box open e Click on the Cancel pushbutton to cancel the selection and close the dialog box 63 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface The Graphical User I
62. System Error box in the Graphical User Interface If you are using a LAN there is another way to run performance verification without the loss of communication between the interface and the emulator hardware It uses the telnet capability and the Terminal Interface 1 From your host computer enter the command telnet lt emulator_name gt 2 Now enter the command pv 1 3 When your performance verification test is complete use the keyboard lt CTRL d keys to end the emulation session Examples Start the performance verification test routines from the Softkey User Interface with the commands display pod_command pod_command pv lt N gt where lt N gt is an integer that specifies the number of times to run the set of performance verification tests It is sometimes necessary to enter the pod command tcf e before running performance verification A message similar to the following should appear Testing HP 64748 Motorola 68020 Emulator PASSED Number of tests 1 Number of failures 0 Testing HP 64740 Emulation Analyzer PASSED Number of tests 1 Number of failures 0 Copyright c Hewlett Packard Co 1987 All Rights Reserved Reproduction adaptation or translation without prior written permission is prohibited except as allowed under copyright laws HP64700B Series Emulation System 627 Chapter 18 Installation and Service Verifying the Installation Version B 01 00 20Dec93 Location Flash System RAM
63. That is they are defined as children of that symbol See To enter a symbol for more information on the lt symbol_name gt If no local symbols are associated with your selection the interface displays the parent symbol To display the address ranges associated with the high level program s source file line numbers you must display the local symbols in the file Display the local symbols for the update_sys module in the demo program display local_symbols_in update_sys module Suppose that you had an IEEE 695 absolute file with a module named system and a procedure within that module also named system You could display the local symbols for the procedure named system by entering display local_symbols_in system system To display the source reference address ranges display local_symbols_in system c 112 Chapter 4 Using the Emulator Using Symbols To display local symbols using the symbols display popup menu File Display Modify Execution Breakpoints Trace Settings View the local Raton keys symbols associated Disp Src Prev Run Xfer til with the highlighted symbol by choosing Gl amp bal symbols in usr hp6488G demo debug_env hp64747 ecs x this menu item Procedure symbols ProceNure name Address range __ Segment exec_cnd B686267E Bbbb271F env 8244 ff lush 00006398 G 4 G6309 libe poga free 84A78 GAGG4ABD libe B2E4 fwrite 88886588 G AGG6670 libe poga gen_ascii_dats G2ES8E BAGG2FE1 prog
64. The firmware and the program that downloads it into the control card are also included with the 68020 or 68030 EC030 emulator probe on MS DOS format floppies The floppies are for users that do not have hosted interface software Before you can update emulator firmware you must have already installed the emulator into the HP 64700 connected the HP 64700 to a host computer or LAN and installed the emulator analyzer interface and HP B1471 software as described in Chapter 18 Installation and Service This chapter shows you how to e Update firmware with the progflash command e Display current firmware version information 634 Chapter 19 Installing Updating Emulator Firmware To update emulator firmware with progflash To update emulator firmware with progflash Enter the progflash v lt emul_name gt lt products gt command The progflash command downloads code from files on the host computer into Flash EPROM memory in the HP 64700 The v option verbose causes progress status messages to be displayed during operation The lt emul_name gt option is the logical emulator name as specified in the ust hp64000 etc 64700tab net file such as m68030 The lt products gt option names the products whose firmware is to be updated such as 64747 If you enter the progflash command without options the downloading process becomes interactive If you don t include the lt emul_name gt option your computer d
65. Then retry the operation Monitor failure bus grant Error 170 Cause During a monitor command an external target system device monopolized the bus the monitor is no longer responding Action Wait until the processor has regained bus control and then retry the operation or don t let external devices monopolize the bus for extended periods of time Monitor failure CPU in wait state Error 170 Cause Request to access memory failed because the target system did not provide cycle termination for this address and the processor is stuck in a continuous wait state A continuous wait state may indicate target system problems Action If this occurred during an access to emulation memory then the dsi memory attribute must have been used If the target is not supposed to provide cycle terminations for this range delete and reenter the map term without dsi Monitor failure halted Error 105 Cause The monitor is unable to run because the processor is halted due to an external halt line or a halt instruction Action Release the external halt and retry the operation If the processor halted due to a halt instruction try the reset command Then retry the operation 490 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Monitor failure halted Error 170 Monitor failure no bus cycles Error 170 Cause During a monitor command one or more target exceptions caused the processor to stop running bus
66. User s Guide Part 2 User s Guide In This Part This part describes how to use the emulator analyzer and other tools provided with the HP 64747 and HP 64748 products 34 Using the emulator analyzer interface How to enter commands in the Graphical User Interface and the Softkey Interface 35 Chapter 3 Using the emulator analyzer interface Using the interface The strength of the emulator analyzer interface is that it lets you perform the real time analysis measurements that are helpful when integrating hardware and software The C debugger interface which is a separate product lets you view the stack backtrace and high level data structures and it lets you use C language expressions and macros These features are most useful when debugging software The Software Performance Analyzer SPA interface which is also a separate product lets you make measurements that can help you improve the performance of your software These interfaces can operate at the same time with the same emulator When you perform an action in one of the interfaces it is reflected in the other interfaces This chapter shows you how to perform the basic tasks associated with each type of emulator analyzer interface The information is grouped into the following sections e Starting the emulator analyzer interface e Opening other HP 64700 interface windows e Entering commands e Using special features of the Gra
67. Verifying the Installation This section shows you how to e Determine the logical name of your emulator e Start the emulator analyzer interface for the first time e Step through the demo by using the action keys e Exit the emulator analyzer interface e Run performance verification Step 1 Determine the logical name of your emulator The logical name of an emulator is a label associated with a set of communications parameters in the HP64000 etc 64700tab net file The 64700tab net file is placed in the directory as part of the installation process j Display the 64700tab net file by entering more usr hp64700 etc 64700tab net at the HP UX prompt 2 Page through the file until you find the emulator you are going to use This step will require some matching of information to an emulator but it should not be difficult to determine which emulator you want to address Examples A typical entry for a 68020 emulator connected to the LAN would appear as follows Channel Logical Processor Remainder of Information for the Channel Type Name Type IP address for LAN connections lan em68020 m68020 21 17 9 143 621 Chapter 18 Installation and Service Verifying the Installation A typical entry for a 68030 emulator connected to an RS 422 port would appear as follows P BEIE AEE INRE EIN EAEE ANERE AEN ANE AE E IN EN AE E E ee a es as Na ee Ole a a a ie gee IEA IEEE I ie i a ae acne Xpar Par
68. a fatal system error occurs Action Find the window that caused the error and see the error message that it displayed All the additional windows will simply state session aborted Cycle power on the emulator and enter emul700 U lt logical name gt to make sure the emulator is unlocked Session cannot be continued ending released Cause The emulation session is ending automatically because it could not be continued from the previous session When the session has ended the emulator will be released meaning that others can access and use it Action When you restart the emulation session later the new session will use all default settings Severe error detected file transfer failed Error 411 Cause An unrecoverable error occurred during a transfer operation Action Retry the transfer If it fails again make sure the data communications parameters are set correctly on the host and on the HP 64700 Also make sure you are using the correct command options both on the HP 64700 and on the host 502 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Slave clock requires at least one edge Cause The analyzer has an invalid clock specification Action Modify your configuration and try your command again Software breakpoint lt address gt Error 615 Cause This status message is displayed when a breakpoint is encountered during a program run The emulator breaks to the monitor The string lt addre
69. a Memory Management Unit because memory management is not supported in the MC68020 emulator If your target system may be damaged by not running target system code continuously answer Yes to the Restrict to Real Time question The operation of the emulator breakpoints function is not affected by your choice to restrict the emulator to real time operation Even if you answer Yes to Break on Write to ROM RAM memory that has been mapped as ROM in the emulation or target system will be changed by processor write transactions Enter 32 bit hexadecimal addresses for the Initial Stack Pointer Value and Initial Program Counter Value These values usually correspond to the values loaded at offsets 0 and 4 of your vector table The default values in the General Items configuration screen are invalid requiring you to enter valid values 290 Chapter 8 Configuring the Emulator Emulation Configuration Displays Emulator Configuration Trace Options l f Trace Options Trace Mode Type of Cycles Foreground Analyzer Speed If you are using the deep analyzer with the MC68030 emulator the Analyzer Speed question does not appear The deep analyzer can do state and time counting regardless of Analyzer Speed The Analyzer Speed question is also not asked in the MC68020 Trace Options window because emulation bus analyzers can make measurements without tradeoffs in the MC68020 emulator Simulated lO Enable Polling for Simulate
70. all of the other directories listed in HP64KPATH 86 Chapter 3 Using the emulator analyzer interface Forwarding Commands to Other HP 64700 Interfaces Forwarding Commands to Other HP 64700 Interfaces To allow the emulator analyzer interface to run concurrently with other HP 64700 interfaces like the high level debugger and software performance analyzer a background daemon process is necessary to coordinate actions in the interfaces This background process also allows commands to be forwarded from one interface to another All interfaces having software versions above 5 00 may forward commands only Graphical User Interfaces can receive forwarded commands Commands are forwarded using the forward command available in the command line The general syntax is forward lt interface_name gt lt command_string gt lt RETURN gt This section shows you how to e Forward commands to the high level debugger e Forward commands to the software performance analyzer To forward commands to the high level debugger e Enter the forward debug lt command_string gt command using the command line Examples To send the Program Run command to the debugger forward debug Program Run lt RETURN gt Or since only the capitalized key is required forward debug P R lt RETURN gt 87 Chapter 3 Using the emulator analyzer interface Forwarding Commands to Other HP 64700 Interfaces To forwar
71. allows an unlimited number of breakpoints to be set in RAM 148 Chapter 4 Using the Emulator Using Execution Breakpoints Using temporary and permanent breakpoints When you set a temporary execution breakpoint the emulator creates the breakpoint as described in the preceding paragraphs When the breakpoint instruction is executed the emulator breaks to the monitor and removes the breakpoint Now you can execute that portion of program code as often as you like and the breakpoint will not occur again unless you enable it again When you set a permanent breakpoint the emulator will process it the same as a temporary breakpoint but when the breakpoint instruction is executed the original instruction will only replace the breakpoint instruction during its next execution This allows you to step through the original instruction one time After your first step the BKPT instruction will replace the original instruction again so that the breakpoint will occur the next time the breakpoint address is hit Permanent breakpoints remain in effect until you explicitly disable or remove them Permanent breakpoints are available when using version A 04 00 or greater of the emulation system firmware 149 Chapter 4 Using the Emulator Using Execution Breakpoints To enable execution breakpoints Choose Breakpoints Enable Inside the breakpoints list display press and hold the select mouse button and then choose Enable Disabl
72. and most likely no physical memory was located at that address Action Make sure you initialized the vector correctly in your vector table You need to remap memory so the vector table will be located in a valid memory area See To step the processor in Chapter 4 Using the Emulator for more information 512 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Undefined software breakpoint lt address gt Error 605 Cause The emulator has encountered a BKPT instruction in your program that was not inserted with the modify breakpoints command Action You can choose one of BKPT 1 through BKPT 7 for the breakpoint instruction using the supplied configuration item Otherwise remove the breakpoints inserted in your code before assembly and link Then reinsert them using the modify software_breakpoints set command If this message occurred immediately after you enabled the MMU in the MC68030 emulation processor refer to the Solving Problems section at the end of Chapter 10 Using MC68030 Memory Management Unexpected message from emul700dmn Cause The host system could not start the emulation session because of an unexpected message from the HP 64700 emulator process command Action You must press end_release_system to exit this emulation session completely then start a new session Make sure the host system is operating properly that all emulator analyzer interface software has been loaded corre
73. and add the proper address translation for this page in your supervisor address translation tables The page or pages that contains the foreground monitor must always be resident translated 1 1 logical address physical address and never write protected The most direct way to do this is to modify the address translation tables in your source code rebuild your executable file and download the executable into RAM or reprogram the executable into ROM For systems that use an operating system to manage dynamic translation tables in RAM the page or series of pages allocated to the monitor must not be allowed to be swapped out by the operating system This may require that the page or pages selected for the monitor reside in unused space within the operating system assuming the operating system is translated 1 1 The easiest way to create unused space is to globally define an 8 Kbyte array of data that is never referenced by your software After rebuilding your operating system software refer to the linker symbol map file to determine the address range of this array Use the lowest address that resides on a 4 Kbyte boundary within this range as the starting address for the monitor As a last resort if your target system software cannot be rebuilt you can use the emulator to modify your translation tables directly The emulator provides a command to display individual address translations in detail including address value and mnemon
74. and for an explanation of those codes Use this option to specify the address from which program stepping begins This defines the number of instructions that will be executed by the step command The number of instructions to be executed can be entered in binary B octal O or Q decimal D or hexadecimal H notation This option updates the register step mnemonic only after stepping is complete This will speed up instruction stepping The default is to update the register step mnemonic after each assembly instruction or source line executes if stepping is performed in the same window as the register display This represents the starting address of the program you loaded into emulation or target memory The transfer_address is defined in the linker map This option performs stepping on source lines step lt RETURN gt step from 810H lt RETURN gt step 20 from OAOH lt RETURN gt step 5 source lt RETURN gt step 20 silently lt RETURN gt step 4 from main 432 See Also help step display registers display memory mnemonic set symbols Chapter 11 Emulator Commands step 433 Chapter 11 Emulator Commands stop_trace stop_trace stop trace lt RETURN gt This command terminates the current trace and stops execution of the current measurement The analyzer stops searching for trigger and trace states If trace memory is empty no states acquired
75. and hold the select mouse button until the Command Line popup menu appears and then choose Clear Entire Line from the menu To clear the command line from the cursor position to the end of the line place the mouse pointer where you want the clear to end function to start Press and hold the select mouse button until the Command Line popup menu appears and then choose Clear to End of Line from the menu To insert characters position the mouse pointer where you wish to locate the text cursor or over a non text area to use the current text cursor location Press and hold the select mouse button to display the Command Line popup menu and then choose Position Cursor Insert Mode from the menu Type the characters to be inserted To replace characters position the mouse pointer where you wish to locate the text cursor or over a non text area to use the current text cursor location Press and hold the select mouse button to display the Command Line popup menu and then choose Position Cursor Replace Mode from the menu Type the characters to be inserted When the cursor arrives at the beginning of a command word or token the softkey labels change to display the possible choices at that point in the command 49 Chapter 3 Using the emulator analyzer interface Entering Commands j To edit the command line using the keyboard In the Graphical User Interface place the mouse pointer either in the display area on the status lin
76. and j within the delay procedure SRU has no way of knowing where these variables will be at run time and therefore cannot build a corresponding symbol tree entry with run time address ENTRY procspeciaol These are examples of referencing different symbols in the programs listed 442 Chapter 11 Emulator Commands SYMB control c main control c port_one porthand c utils c delay The last example above only works with IEEE 695 object module format the HP object module format does not support referencing of include files that generate program code porthand c process_port i porthand c process_port BLOCK_1 1 Notice how you can reference different variables with matching identifiers by specifying the complete scope You also can save typing by specifying a scope with cws For example if you are making many measurements involving symbols in the file porthand c you could specify cws porthand c process_port Then i BLOCK_1 i are prefixed with porthand c process_port before the database lookup If a symbol search with the current working symbol prefix is unsuccessful the last scope on the current working symbol is stripped The symbol you specified is then retested with the modified current working symbol Note that this does not change the actual current working symbol 443 Chapter 11 Emulator Commands SYMB See Also For example if you set the current working symbol as cws porthand
77. avoid damaging the internal components of the probe with static electricity CAUTION Possible damage to the emulator Make sure both your target system and emulator power are OFF before installing the emulator probe into the target system The emulator may be damaged if the power is on when installing the probe CAUTION The emulator probe will be damaged if incorrectly installed Make sure to align pin A1 of the probe connector with pin A1 of the socket 161 Chapter 4 Using the Emulator Using the Emulator In Circuit MEMORY SLOT 0 MEMORY SLOT 1 EMULATOR PROBE PIN A1 TARGET SYSTEM PGA SOCKET 1 Remove the processor from your target system socket Note the location of pin Al on the processor and on the target system socket Store the processor in a protected environment such as antistatic foam 2 Insert the emulator probe into your target system socket Make sure to align pin Al of the emulator probe and the target system socket 162 Chapter 4 Using the Emulator Using the Emulator In Circuit To power on the emulator and your target system CAUTION You must turn on power to the emulator before you turn on power to your target system Otherwise the emulator may be damaged Turn off power to the target system before turning off power to the emulator j Turn on power to the emulator 2 Turn on power to your target system Before you turn off power to the emu
78. be characters dropped in the information returned from the emulator Action Ignore this message unless it becomes frequent If it becomes frequent you may have a fatal error call your HP 64700 representative Cannot lock emulator failure in obtaining the accessid Error 10327 Cannot lock emulator failure in lt ERRNO MSG gt Error 10327 Cause The lockfile is missing in usr hp64000 lock or the semaphore is missing Action Exit the emulator and start a new session using the command emul700 U lt logical_address gt Cannot start Ending previous session try again Cause The host system could not start a new emulation session and is ending the previous session Action After the previous session has ended try starting a new emulation session If that fails try emul700 u lt logical name gt to unlock the emulator and cycle power if needed Cannot start Pod initialization failed Cause The host system could not start a new emulation session because it could not initialize the emulator Action Cycle power on the emulator verify that there are no red lights on the front of the emulator You may need to run pv to verify that the emulator is functioning properly before starting a new session refer to Chapter 18 Installation and service for information on how to run pv performance verification Cannot unlock emulator emulator in use by user lt USER NAME gt Error 10328 Cause The emulator is already i
79. box and throughout the configuration section dialog boxes 285 Chapter 8 Configuring the Emulator Using the Configuration Interface To exit the configuration interface Choose File gt Exit from the pulldown menu in the top level configuration interface window or type lt CTRL gt x If configuration changes have not been stored to a file a confirmation dialog box appears giving you the options of storing exiting without storing or canceling the exit To load an existing configuration file In the emulator analyzer interface choose File gt Load Emulator Config from the pulldown menu and use the file selection dialog box to specify the configuration file to be loaded Using the command line enter the load configuration lt FILE gt command This command loads previously created and stored configuration files You cannot load a configuration while the configuration interface is running 286 Chapter 8 Configuring the Emulator Emulation Configuration Displays Emulation Configuration Displays The displays of the emulation configuration are shown in this section They give you access to all of the options that must be defined to configure the emulator Help for making selections in these displays can be obtained as discussed earlier in this chapter The emulation configuration displays are as follows Monitor Setup Memory Map General Items Trace Options Simulated IO Interactive Measu
80. button and click on Disassemble From in the trace list popup menu Using the command line enter commands as follows e To disassemble instruction data in the trace list enter the display trace mnemonic command e To control where trace list disassembly starts enter the display trace disassemble_from_line_number lt LINE gt command lt LINE gt is a line number corresponding to a state in the trace list Disassembly of instruction data means that you will see instructions as they would appear in an assembly language program listing That is instruction mnemonics and operands are shown instead of hexadecimal instruction data The analyzer interface normally disassembles instruction data in the trace list However if you specify absolute data display that mode remains in effect until you select the mnemonic option When you identify a particular trace list line where disassembly is to begin be sure to specify a line number that corresponds to an analyzer state with an opcode fetch the analyzer interface disassembles and displays the trace starting with the state you specify 186 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Examples To disassemble instruction data in the trace list starting at line 40 Place the cursor on line 40 press the select mouse button and click on Disassemble From in the popup menu Or using the command line enter display trace disassemble_from_line_numb
81. c process_port BLOCK_1 and made a reference to symbol i2 the retrieval utilities attempt to find a symbol called porthand c process_port BLOCK_1 i2 which would not be found The symbol utilities would then strip BLOCK_1 from the current working symbol yielding porthand c process_port i2 which is a valid symbol You also can specify the symbol type if conflicts arise Although not shown in the tree assume that a procedure called port_one is also defined in control c This would conflict with the identifier port_one which declares an integer pointer SRU can resolve the difference You must specify control c port_one static to reference the variable and control c port_one procedure to reference the procedure address copy local_symbols_in CWS display local_symbols_in help symbols pws Also refer to the Symbolic Retrieval Utilities User s Guide for additional information on symbols and information on building a symbol data base 444 Chapter 11 Emulator Commands trace trace trace Ka WINDOW J peamee AA again lt RETURN gt repetitively modify command MN recer _1 i QUALIFIER cont Core anything break on_ trigger repetitively _ QUALIFIER The options shown can be executed once for each trace command Refer to the COUNT QUALIFIER SEQUEN
82. cannot execute from a command file These are commands that require a response from you For example you cannot place modify configuration commands in a command file because the command file cannot respond to configuration questions Another restriction has to do with calling a command file from an executing command file when the called command file requires parameters You must supply the parameters with the call to the command file or the calling command file will abort That is because the calling command file cannot respond to the called file s parameter prompts Status Line Updates The emulator status line is not always immediately updated with new status information when the interface executes commands from a command file You may have to explicitly display the emulator status after a command file has executed by issuing a display status command Nesting Command Files You can call other command files from an executing command file Called files can in turn call other command files This nesting of calls can continue to a maximum of eight levels Command files called from an executing command file are executed like subroutines of the calling file Control returns to the calling file after the called file has executed Pausing Command Files You can use the wait command in command files This allows you to pause execution of the command file between commands A variation of the wait command the wait measurement_complete
83. command does not alter current measurement data in the emulation system Example performance_measurement_end lt RETURN gt See Also help performance_measurement_initialize help performance_measurement_run performance_measurement_initialize performance_measurement_run 409 Chapter 11 Emulator Commands performance_measurement_initialize activity duration lt FILE gt global_symbols performance_measurement_initialize performance _measurement_ initialize 5 lt RETURN gt restore Ne lt FILE gt iN global symbols S A local symbols __in A SYMB activity zA This command sets up performance measurements The emulation system will verify whether a symbolic database has been loaded If a symbolic database has been loaded the performance measurement is set up with the addresses of all global procedures and static symbols If a valid database has not been loaded the system will default to a predetermined set of addresses which covers the entire emulation processor address range The measurement will default to activity mode Default values will vary depending on the type of operation selected and whether symbols have been loaded This option causes the performance measurement process to operate as though an option is not specified This option sets the measurement mode to duration
84. command is executed Action keys that use the entry buffer should always include the entry buffer symbol in the action key label as a visual cue to remind you to place information in the entry buffer before clicking the action key Shell commands can be executed by using an exclamation point prefix A second exclamation point ends the command string and allows additional options on the command line Also command files can be executed by placing the name of the file in the command definition nn Finally an empty action means to repeat the previous operation whether it came from a pulldown a dialog a popup or another action key To set up custom action keys when the graphical interface is used with the 68020 emulator modify the m68020 actionKeysSub keyDefs resource m68020 actionKeysSub keyDefs Make Ww Load Pgm Run Pgm Trace after Step Source Again cd users project2 68020 make in_browser load configuration config EA load program2 run from reset eu trace after display trace set source on display memory mnemonic step source ww Refer to the previous To modify Graphical User Interface resources section for more detailed information on modifying resources 526 Chapter 13 Setting X Resources To set initial recall buffer values To set initial recall buffer values e Modify the entries resource for the particular recall buffer There ar
85. command line Maximum Number of Windows Ten is the maximum number of windows you can use to view HP 64700 emulator analyzer operation Only one C debugger interface window and one SPA window are allowed but you can start multiple emulator analyzer interface windows Activities that Occur in the Windows When using an HP 64700 Series emulator in a window environment or with multiple terminals the following activities occur in the windows where the emulator is currently operating Commands Complete in Sequence When you execute commands that access the emulator in multiple windows the first command you specify will complete before the second command begins executing Status Line is Updated When you perform an emulation task in one window that updates the status line status lines are updated in all other windows where the emulator is operating The event log is also updated in each window 37 Chapter 3 Using the emulator analyzer interface Ending the Emulation Session When you are using the emulator in multiple windows you can choose to either end the emulation session in a single window or in all the windows The end command by itself just ends the window where the command is executed Using Multiple Terminals If you do not have a window environment installed on your host computer you can still obtain the benefits of multiple windows by logging onto the same UNIX system from several terminals and starting the
86. configuration display for more information refer to Chapter 8 Configuring the emulator Use the display trace count command to determine how the count is displayed in the trace list See To display count information in the trace for more information 218 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Examples To count occurrences of a particular bus state in the trace this requires the 1K analyzer speed to be set to Slow in configuration trace counting address 10h Count all states in the trace trace counting anystate Count time in the trace trace counting time Disable counting in the trace trace counting off To define a storage qualifier e Enter the storage qualifier such as status read in the entry buffer Then chooseTrace Only e Using the command line store only certain states in the trace list by entering the trace only lt bus_state gt command lt bus_state gt represents a combination of address data and status expressions that must be matched to satisfy the storage qualifier Storage qualifiers can help filter unwanted information from program execution and improve your trace measurement The analyzer stores only the information specified in the storage qualifier Note that if you have a sequencer or trigger specification any states given there are shown in the trace list even if they don t meet the storage qualifier 219 Chapt
87. deMMUer Continue execution of your target program by choosing Execution Run from PC or Execution Run from Reset or using the command line to enter run or restart the program with the command run from reset To pick the place to load the deMMUer you might set an execution breakpoint in your code at a point where you are sure your MMU will be set up to translate the address space you want to analyze When the breakpoint has executed emulator running in foreground monitor you can load the deMMUer Whether you continue your program or restart it the d MMUer will have the ability to reverse translate the physical addresses according to the MMU setup at the time you issued the load demmuer command The deMMUer will remain loaded even if you reset the emulation processor If you restart your program you can use the analyzer to see how the MMU tables are created and how the program operates Address ranges will be reverse translated correctly if they are translated by the setup of the MMU that existed when you issued the load demmuer command If context switches cause the MMU to access logical memory that was not represented in the MMU tables when you loaded the deMMUer incorrect logical addresses will be provided by the deMMUer 204 Chapter 5 Using the Emulation Bus Analyzer Analyzing Program Execution When the MC68030 MMU is Enabled To store a deMMUer setup file Choose File Store gt DeMMUer From MMU Tables an
88. deep analyzer card there is a cutout at one end of the memory modules so they can only be installed the correct way To install a memory module Align the groove in the memory module with the alignment rib in the connector Align the cutout in the memory module with the projection in the connector Place the memory module into the connector groove at an angle Firmly press the memory module into the connector and make sure it is completely seated Rotate the memory module forward so that the pegs on the connector fit into the holes on the memory module Make sure the release tabs at each end of the connector snap around the memory module to hold it in place Groove in Memory Module and Alignment Rib in Connector Cutout in Memory Module Release Tabs 64794E03 583 Chapter 18 Installation and Service Installing Hardware Step 2 Connect the Emulator Probe Cables Three ribbon cables connect the HP 64748C emulation control card to the HP 64747 or HP 64748 MC68030 or MC68020 emulator probe The shortest cable connects from J1 of the emulation control card to J3 of the emulator probe The medium length cable connects from J2 of the emulation control card to J2 of the emulator probe The longest cable connects from J3 of the emulation control card to J1 of the emulator probe Make sure the cable connectors are seated There are stainless steel clips on the cable connectors t
89. duration measurements Duration measurements provide a best case worst case characterization of code execution time These measurements record execution times that fall within a set of specified time ranges The trace command is set up to store only the entry and exit states of the module to be measured for example a C function or Pascal procedure The SPMT provides two types of duration measurements module duration and module usage Module duration measurements record how much time it takes to execute a particular code segment for example a function in the source file Module usage shows how much of the execution time is spent outside of the module from exit to entry This measurement gives an indication of how often the module is being used Before you perform duration measurements you should be aware of the prefetch and recursion considerations associated with these measurements When using the SPMT to perform duration measurements there should be only two addresses stored in the trace memory the entry address and the exit address Prefetches or recursion can place several entry addresses before the first exit address and or several exit addresses before the first entry address Duration measurements are made between the last entry address in a series of entry addresses and the last exit address in a series of exit addresses as shown in the prefetch correction listing All of the entry and exit addresses which precede these las
90. during the download process possibly resulting in an HP 64700 that will not boot up Repeat the firmware update process If the HP 64700 is connected to the LAN in this situation and you are unable to connect to the HP 64700 after the power glitch try repeating the firmware update with the HP 64700 connected to an RS 232 or RS 422 interface 639 640 Glossary Absolute Count in the trace list count column an absolute count indicates the total count accumulated between the displayed state and the trigger state For example an absolute time count shown beside trace memory line number 100 indicates the elapsed time between capture of the trigger state and capture of state 100 Absolute File a file consisting of machine readable instructions in which absolute addresses are used to store instructions data or both These are the files that are generated by the compiler assembler linker and are loaded into HP 64700 Series emulators Access Breakpoint a break from execution of your target program to execution of the emulation monitor when the emulator detects an access violation such as an attempt to write to ROM or guarded memory space The same effect can be obtained for an emulation break due to trigger recognition within the emulation bus analyzer or due to a signal from an external device supplied over the CMBT or the rear panel BNC Access breakpoints do not obtain immediate transfer to the monitor program Sever
91. edit it if desired and click OK Using the command line enter commands as follows e To trace only the states occurring after a particular bus cycle enter trace enable lt bus_state gt e To trace only the states occurring between two particular bus cycles enter trace enable lt bus_state gt disable lt bus_state gt lt bus_state gt represents a combination of address data and status expressions that must be matched to satisfy the windowing qualifier The trace window specification makes it easy to trace only the occurrences of a particular routine This is especially useful in high level languages where storing only the accesses to a particular address range may miss several function calls within the routine Trace states occurring after the start of the example program trace enable main Trace states occurring between the start of the example program and the call to the message interpreter trace enable main disable proc_spec 216 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements To specify both sequencing and windowing e Create your first specification form on the command line That will enter the proper format in the Trace Specification Selection dialog box Obtain that dialog box by choosing Trace Trace Spec You can click on your specification in the dialog box edit it if desired and click OK e Using the command line enter commands as follows e Specify a trace seque
92. edit the trace command as you desire 222 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements To repeat the previous trace command Choose Trace A gain To continually repeat the last trace choose Trace gt Repetitively Using the command line repeat the previous trace command including its complete trace specification by entering trace again The trace again command is most useful when you want to repeat a measurement with the same trace specification It saves you the trouble of reentering the complete trace command specification The repetitively choice continually repeats the last trace command Successive traces begin as soon as the results from the just completed trace are displayed Also this command is useful when you load a trace specification from a file See To load a trace specification in this chapter 223 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements m To capture a continuous stream of program execution no matter how large your program The following example can be performed in emulation systems using the deep analyzer it cannot be done with the 1K analyzer It shows you how to capture all of the execution of your target program You may wish to capture target program execution for storage for future reference and or for comparison with execution after making program modifications The execution of a typical target program
93. emulation processor registers to the selected destination The copy register command is not available if the emulator is configured for real time only operation With no options specified the basic register class is copied Basic registers include PC STATUS USP ISP MSP CACR CAAR DO through D7 AO through A7 VBR DFC and SFC Other registers you can copy include The FPU registers if your target system is equipped with a floating point coprocessor FPCR FPSR FPIAR and FPO through FP7 366 Chapter 11 Emulator Commands copy The ACU registers if you are using a 68030 EC030 with the MMU disabled ACO AC1 and ACUSR The MMU registers if you are using a 68030 with the MMU enabled TTO TT1 MMUSR TC SRP and CRP lt REGISTER gt Specifies the name of an individual register software _ This option lets you copy a list of the current execution breakpoints to a selected breakpoints destination status This allows you to copy emulation and analysis status information SYMB This option represents the symbol whose children are to be listed See the SYMB syntax diagram and the SRU User s Guide for information on symbol hierarchy thru_line_number Specifies the last line number of the trace list to include in the copied range to This allows you to specify a destination for the copied information trace This lets you copy the current trace listing to the selected destination Initial values are the
94. emulator loads the deMMUer to reverse those translations After the deMMUer is loaded any change to the MMU its registers or its translation tables will make the deMMUer out of date The only way to update for changes in the translation setup is to load the deMMUer again The target program is interrupted while the deMMUer is being loaded The emulator uses the foreground monitor to load reverse translations into the deMMUer Depending on the complexity of your tables this process can take a long time If there are portions of your target program that must not be interrupted for long periods of time make sure your code is executing in safe regions before you load the deMMUer You might set a breakpoint in a region of your target program that is outside the time critical regions and perform the load of the deMMUer after the breakpoint is executed The analyzer must be off Your analyzer must not be making a trace when you load the deMMUer Otherwise part of the trace will be based on physical addresses and the other part will be based on logical addresses Expect strange addresses if you analyze physical memory with multiple logical mappings The deMMUer can only translate a physical address into one logical address If two programs both use the same physical space such as when two programs use a single data location they might refer to that space by two different logical address values and two different logical address symbols The
95. exist in displayed information Error tolerance for a level of confidence is calculated using the mean of the standard deviations and the mean of the means Error tolerance gives an indication of the stability of the information For example if the error is 5 for a confidence level of 95 then you can be 95 confident that the information has an error of 5 or less The Student s T distribution is used in these calculations because it improves the accuracy for small samples As the size of the sample increases the Student s T distribution approaches the normal distribution The following equation is used to calculate error tolerance error pct Where Om Pm Mean of the standard deviations Table entry in Student s T table for a given confidence level Number of traces in the measurement Mean of the means the mean sample 272 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool Duration measurements provide a best case worst case characterization of code execution time These measurements record execution times that fall within a set of specified time ranges e To interpret reports of duration measurements understand the information described here You will see this information in duration measurement reports Number of intervals Number of from address and to address pairs after prefetch correction Maximum time The greatest amount of t
96. file is the source ASCII format copy of the file The interface will create a temporary file with the extension EB which is the binary or loadable copy of the file CAUTION Do not modify configurations by editing the EA files Use the configuration interface to modify and save configurations For more information on how to use dialog boxes refer to the Entering Commands and Using Special Features of the Graphical User Interface sections Chapter 3 Using the emulator analyzer interface 283 Chapter 8 Configuring the Emulator Using the Configuration Interface To change the configuration directory context Choose File Directory from the pulldown menu in the top level configuration interface window and use the directory selection dialog box to specify the new directory The directory context specifies the directory to which configuration files are stored and from which they are loaded For more information on how to use dialog boxes refer to the Entering Commands and Using Special Features of the Graphical User Interface sections in Chapter 3 Using the emulator analyzer interface To display the configuration context Choose Display Context from the pulldown menu in the top level configuration interface window The current directory context and the current configuration files are displayed in a window Click the Done pushbutton when you wish to close the window Directory
97. gt nosymbols File Load Symbols Only load symbols File gt Load Trace Data load trace File Load Trace Spec load trace_spec File gt Load DeMMUer load demmuer lt file gt File Store Trace Data store trace File Store Trace Spec store trace_spec File Store BBA Data bbaunload File Store gt DeMMUer From MMU Tables store demmuer lt file gt File Copy Display copy display to File Copy Memory copy memory to File Copy Data Values copy data to File gt Copy MMU Translations copy mmu_translations to File gt Copy Trace copy trace to File gt Copy Registers copy registers to File gt Copy Breakpoints copy software_breakpoints to File gt Copy Status copy status to File gt Copy Global Symbols copy global_symbols to File Copy Local Symbols copy local_symbols_in SYMB to File gt Copy Pod Commands copy pod_command to File gt Copy Error Log copy error_log to File gt Copy Event Log copy event_log to File gt Log Playback lt command file gt File Log Record log_commands to File gt Log Stop log_commands off File gt Emul700 Emulator A nalyzer N A File gt Emul700 lt other products gt N A File Edit File vi lt file gt no_prompt_before_exit File Edit At Location vi lt line gt lt file gt no_prompt_before_exit File Edit At PC Location vi lt line gt lt file gt no_prompt_before_exit File gt Term 351 Chapter 11 Emulator Commands Pulldown Command
98. if you have 64700 Series emulators and do not use meas sys 609 Chapter 18 Installation and Service Installing HP 9000 Software 9 10 11 12 Except for the emulator specific partition and the 64700 Operating Environment mow partition mark all other partitions with y to confirm that you want these partitions loaded Do not mark 64801 with y if you marked it with n in the last step The emulator specific partition will be named something like lt processor gt Emulation Tools where lt processor gt is the processor supported by the emulator If you plan to install and use the Graphical User Interface do the following e Mark the emulator specific partition and the 64700 Operating Environment Wo partition with y to confirm the installation of these partitions e Skip to sub step 12 of these instructions If you do not want to install the Graphical User Interface do the following e View the filesets for the 64700 Operating Environment e Mark the fileset 64700XUI with n to exclude it from installation e Mark all other filesets in the partition with y to confirm installation e Return to the partition screen e View the filesets in the emulator specific partition named something like lt processor type gt Emulation Tools e Mark the fileset 647xxXUI with n to exclude it from installation e Mark all other filesets in the partition with y to confirm installation e Return
99. in MMU registers when loading the DeMMUer Chapter 10 Using MC68030 Memory Management Using the DeMMUer Settings gt DeMMUer Load from File This opens a dialog box in which you can specify the name of a file of reverse translations This file will be loaded directly into the DeMMUer instead of reading the present translation tables and MMU register values to create the reverse translations Note that this file must have been previously created using the File gt Store gt DeMMUer From MMU Tables command from the pulldown menu This file will have a ED filename extension Settings DeMMUer Verbose This sets verbose mode for the deMMUer load function In the pulldown menus this is simply a switch When Verbose is selected for loading the DeMMUer a list is displayed of the physical address ranges that will be reverse translated by the deMMUer Addresses will be shown as lt address gt lt address gt s This means lt address gt through lt address gt at supervisor address space 332 Chapter 10 Using MC68030 Memory Management Using the DeMMUer Restrictions when using the deMMUer Keep the deMMuUer up to date When you load the deMMUer the emulator reads the present value of the TC SRP and CRP registers in the MMU and the present translation tables and calculates the address translations that can be performed all possible physical to logical translations are determined during this process Then the
100. inadequate maintenance by Buyer Buyer supplied software or interfacing unauthorized modification or misuse operation outside of the environment specifications for the product or improper site preparation or maintenance No other warranty is expressed or implied HP specifically disclaims the implied warranties of merchantability and fitness for a particular purpose Exclusive Remedies The remedies provided herein are buyer s sole and exclusive remedies HP shall not be liable for any direct indirect special incidental or consequential damages whether based on contract tort or any other legal theory Product maintenance agreements and other customer assistance agreements are available for Hewlett Packard products For any assistance contact your nearest Hewlett Packard Sales and Service Office Safety Summary of Safe Procedures The following general safety precautions must be observed during all phases of operation service and repair of this instrument Failure to comply with these precautions or with specific warnings elsewhere in this manual violates safety standards of design manufacture and intended use of the instrument Hewlett Packard Company assumes no liability for the customer s failure to comply with these requirements Ground The Instrument To minimize shock hazard the instrument chassis and cabinet must be connected to an electrical ground The instrument is equipped with a three conductor ac
101. initializing the performance measurement with 266 locked interface to unlock the interface 43 log_commands command options 401 logging commands to a command file 75 77 670 Index logical address defined 317 table details 328 translation details to view 167 logical to physical mappings to view 165 LONG defined in address mapping display 328 long word format 128 L U and LIMIT in address mapping display 327 mappings logical to physical to view 165 maximum trace depth 218 memory 365 404 display in byte format 126 display in long word format 128 display repetitively 132 displaying in floating point number format 131 displaying in mnemonic format 129 displaying in real number format 131 displaying in word format 127 displaying options 377 modifying 133 redisplay locations 132 memory activity measurements SPMT 257 270 Memory contents listed as asterisk 365 memory displays selecting source symbol displays in 158 memory management systems supported 317 memory map how it is used by deMMUer 336 memory modules installing on the deep analyzer 582 installing on the emulation probe 599 memory recommendations HP 9000 578 SPARCsystem 579 menus hand pointer means popup 7 57 mixing pod commands with high level commands 224 671 Index MMU discussion of special problems 342 347 displaying options 381 384 enabling in MC68040 164 how is it enabled 320 how it affects command
102. instructions are only displayed in memory mnemonic if no source lines correspond to the instructions Processor instructions are never displayed in the trace list 426 symbols tabs_are trace update lt VALUE gt width off on high low all Chapter 11 Emulator Commands Prevents symbol display set Displays symbols This option works for the trace list memory breakpoints and register step mnemonics Displays only high level symbols such as those available from a compiler See the Symbolic Retrieval Utilities User s Guide for a detailed discussion of symbols Displays only low level symbols such as those generated internally by a compiler or an assembler Displays all symbols This option allows you to define the number of spaces inserted for tab characters in the source listing lt TABS gt Prompts you for the number of spaces to use in replacing the tab character Enter values in the range of 2 through 15 Specifies the type of display to be updated or not updated When using multiple windows or terminals and specifying this option the display buffer in that window or terminal will be updated when a new measurement completes This is the default Note that for displays that show memory contents the values will be updated when a command executes that changes memory contents such as modify memory load and so on Specifies the logical value to which a particular UNIX
103. interface using the default configuration Use the emul700 d lt emul_name gt command In the emul700 d lt emul_name gt command the d option says to use the default configuration The d option is ignored if the interface is already running in another window or on another terminal 40 Chapter 3 Using the emulator analyzer interface Starting the Emulator Analyzer Interface To execute a command file at interface startup e Use the emul700 c lt cmd_file gt lt emul_name gt command Starting a command file c lt emd_file gt at emulator startup allows you to automate some of the setup and configuration of the emulator For example you may have a command file that loads a particular configuration file a program file and then sets up trace display formats and specifications If the HP64KPATH variable is set the interface will use the search paths specified in this variable to locate a command file passed to it with the emul700 command Refer to the Creating and Using Command Files section later in this chapter for information on creating command files Examples To start the emulator analyzer interface and run the startup command file emul700 c startup em68020 lt RETURN gt where m68020 is the logical name for the HP64748 MC68020 emulator To see emulator analyzer status before interface startup e Use the emul700 1l or emul700 lv command The l option of the emul700 command lis
104. is joining a session already in progress and the event log is displayed You can enter commands in any window in which the interface is running When you enter commands in different windows the command entered in the first window must complete before the command entered in the second window can start The status lines and the event log displays are updated in all windows 44 Chapter 3 Using the emulator analyzer interface Opening Other HP 64700 Interface Windows The File gt Emul700 menu may display other choices if the interface finds other HP 64700 products on the computer To open the high level debugger interface window Choose File gt Emul700 High Level Debugger under Graphic Windows For information on how to use the high level debugger interface refer to the debugger emulator User s Guide To open the software performance analyzer SPA interface window Choose File gt Emu1700 Performance Analyzer under Graphic Windows For information on how to use the software performance analyzer refer to the Software Performance Analyzer User s Guide 45 Chapter 3 Using the emulator analyzer interface Entering Commands Entering Commands The Graphical User Interface and Softkey Interface provide simple effective mechanisms for entering commands to be processed by the emulator and analyzer Basic descriptions of both interfaces are given in Chapter 1 Getting Started This section shows
105. is four meters long You can build your own compatible CMB cables using standard 9 pin D type subminiature connectors and 26 AWG wire Note that Hewlett Packard does not guarantee proper CMB operation if you are using a self built cable 239 Chapter 6 Making Coordinated Measurements Setting Up for Coordinated Measurements 1 Connect the cables to the HP 64700 CMB ports TWO vi I EMULATORS MALE ENY ANE FE NC MALE THREE EMULATORS E C FEMALE NC 64700E14 240 Chapter 6 Making Coordinated Measurements Setting Up for Coordinated Measurements Number of HP 64700 Series Maximum Total Length of Restrictions on the CMB Emulators Cable Connection 2 to8 100 meters None 9 to 16 50 meters None 9 to 16 100 meters Only 8 emulators may have rear panel pullups connected 17 to 32 50 meters Only 16 emulators may have rear panel pullups connected A modification must be performed by your HP Customer Engineer Emulators using the CMB must use background emulation monitors At least 3 4 of the HP 64700 Series emulators connected to the CMB must be powered up before proper operation of the entire CMB configuration can be assured To connect to the rear panel BNC CAUTION The BNC line on the HP 64700 accepts input and output of TTL levels only TTL levels sho
106. is used the break_on_trigger repetitively and TRIGGER options cannot be included in the command This option allows you to qualify the states that are stored as defined by QUALIFIER 446 Chapter 11 Emulator Commands trace prestore This option instructs the analyzer to save specific states that occur prior to states that are stored as specified with the only option QUALIFIER This determines which of the traced states will be stored or prestored in the trace memory for display upon completion of the trace Events can be selectively saved by using trace only to enter the specific events to be saved When this is used only the indicated states are stored in the trace memory See the QUALIFIER syntax repetitively This initiates a new trace after the results of the previous trace are displayed The trace will continue until a stop_trace or a new trace command is issued When using this option you cannot use the on_halt option SEQUENCING Allows you to specify up to seven sequence terms including the trigger The analyzer must find each of these terms in the given order before searching for the trigger You are limited to four sequence terms if windowing is enabled See the SEQUENCING syntax pages for more details TRIGGER This represents the event on the emulation bus to be used as the starting ending or centering event for the trace See the TRIGGER syntax diagram When using this option you cannot include the on_halt o
107. it indicates the trace memory is not completely filled and no more states are being captured Store the entire trace memory content in a file with a command like wait measurement_complete copy trace to lt directory filename gt The wait command is inserted ahead of the copy command to ensure that the unload of trace data is complete before you try to store it Without wait you will get an ERROR message warning that the unload is still in process The lt filename gt is an ASCII filename for a binary file that can be viewed using the load trace command Start a new trace with the command trace again Resume the program run from the point where it was interrupted when the emulator broke to the monitor with the command run Wait until the notation trigl break and or Emulation trace complete appears on the status line Then store the new trace memory content in a new file with commands like stop_trace wait measurement_complete copy trace to lt directory filename 1 gt Note that filename 1 in the above command suggests use of consecutive filenames to store your execution files such as FILENAME1 FILENAME2 etc Repeat steps 8 through 10 above until all program execution has been captured Your destination directory will have a set of files that taken together contain all of your program execution Note that if you did not prevent capture of foreground 226 Chapter 5 Using the Emulation Bus Analyzer Making
108. language statements in the trace list enter the set source only command e To display only assembly language in the trace list enter the set source off command If you are using the MC68030 emulator with the MMU enabled you will need to enable and load the deMMUer before you can display source code preceding related trace data in your trace lists Refer to Analyzing Program Execution when the MC68030 MMU is Enabled later in this chapter to see how to load and use the deMMUer If you developed your target programs in a high level language such as C you can display the source code in the trace list with the corresponding assembly language statements Or you can choose to display only the source listing without the assembly language information The analyzer uses the line number information in the SRU symbol database for the absolute file to reference between source lines and assembly language information Refer to Chapter 4 Using the Emulator for more information on SRU and symbol handling 194 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To change the column width e Choose Settings Display Modes and select desired widths for information in the trace list by using the dialog box Refer to the Examples page under To display symbols in the trace list earlier in this chapter for details of how to use the dialog box e To set the column width for the address column in the trac
109. low word within the long word by use of display trace disassemble_from_line_number lt trace list line number gt low_word If the trace list seems correct for a few states after disassembly starts and then it seems incorrect restart disassembly of the trace at the low word where disassembly first becomes incorrect display trace disassemble_from_line_number lt trace list line number gt low_word If an instruction seems to have incorrect data associated with it you can read down the trace list to see if you can find correct data for the instruction on another line You can cause the disassembler to realign the instruction with the correct data by entering a command like display trace disassemble_fro m_line_number lt trace list line number gt align_data_from_line lt trace list line containing data gt If the emulator won t work in a target system Ensure that the probe is inserted into the target system in the correct manner the pins should be lined up correctly If you are using spacers to connect the emulator probe to the target system make sure that the spacers are correctly connected The emulator uses the clock from the target system Unsupported or improperly configured clock speeds will affect emulator performance Use the modify configuration command to access this configuration question The emulator must recognize the target system s clock signal to function correctly Power up the emulator and then apply power t
110. lt Absolute Click to select the way that absolute status information is shown in the trace list Click to select count reference Relative to preceding state or Absolute to trigger Click to select trace list dequeuing if available for your emulator Enter the desired depth of the trace memory to be unloaded for display or storage in a file Enter a value to be subtracted from addresses and symbol source line references shown in the trace list Enter the desired trace list line number to be placed on screen Click OK Click Apply Click these Click this to specify to specify pushbuttons pushbutton the trace the trace to select to cancel options and options and predefined the entries close the leave the or and close dialog box dialog box previously the dialog open specified box entries 184 Examples Click to begin trace disassembly from the selected line moving that line to the top of the display Chapter 5 Using the Emulation Bus Analyzer To use the trace list popup menu Displaying the Trace List I Hewlett Packard Emulator Analyzer emulator00 m68030 a File Display Modify Execution Breakpoints e Address Opeode or Status w Sours Lines mnemonic w symbols symbols main 0080004 4E7 14E56 sstactBA887F98 88802316 sintBG888882 G0002F0B Sar af247C mon mon mon mon rsvd sp long wr retry rsvd sp long
111. lt bus_state gt trigger lt bus_state gt trace command lt bus_state gt represents a combination of address data and status expressions that must be matched to satisfy the trigger or sequence qualifier lt times gt is the number of times the selected bus state must occur to satisfy the qualifier The restart qualifier allows you to restart the trace sequence whenever a certain instruction or data access occurs For example you might have a complicated trace sequence that searches for an intermittent failure condition You could set the restart term to restart the sequence whenever a bus cycle occurred that ensures that the code segment would perform correctly Thus the trace will be satisfied only when that restart term never occurs and the code segment fails Example Use the analyzer sequencer to trace a series of events and then restart the sequencer if the restart term is found while searching for the events trace find_sequence update_sys get_targets then update_sys write_hdwr restart update_sys set_outputs trigger after current_humid 215 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Examples To specify trace windowing Create your first specification form on the command line That will enter the proper format in the Trace Specification Selection dialog box Obtain the dialog box by choosing Trace Trace Spec You can click on your specification in the dialog box
112. mean and standard deviation appear in the activity report e To interpret reports of activity measurements understand the information described here You will see this information in activity measurement reports Memory activity Program activity Relative Absolute Mean All activity found within the address range All activity caused by instruction execution in the address range Program activity includes opcode fetches and the cycles that result from the execution of those instructions like reads and writes to memory and stack pushes A count or time value associated with activity in address ranges in the performance measurement A count or time value associated with all trace state activity not just activity in the address ranges defined for the performance measurement Average number of analyzer trace states in the range specified The following equation is used to calculate the mean sta j mean tes in range total states Standard deviation std dev Deviation from the mean of state count The following equation is used to calculate standard deviation 1 N 2 N I x x S sumq N mean i 1 270 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool Where N Number of traces in the measurement mean Average number of states in the range per trace Ssumq Sum of squares of states in the range per trace Symbols within range Names of other
113. memory Several memory configurations can be obtained from 256 Kbyte to 8 Mbyte by installing optional memory modules on the emulation probe 4 Kbytes of dual port memory available if you use the background monitor this 4Kbytes allows emulator accesses at full speed without wait states except during synchronous and burst modes in the MC68030 EC030 Mapping resolution is 256 bytes HP 64748 MC68020 No wait states out of dual ported memory up to 33 MHz No wait states out of target memory No wait states out of emulation memory up to 25 MHz 1 wait state out of emulation memory above 25 MHz HP 64747A MC68EC030 and HP 64747B MC68030 EC030 No wait states for target system accesses up to 25 MHz Three cycle asynchronous or synchronous target accesses and two cycle burst accesses above 25 MHz Dual port monitor memory matches target system access speeds Three cycle asynchronous or synchronous emulation memory accesses and two cycle burst accesses at all speeds Vii In This Book This manual covers the HP 64748 and HP 64747 emulators All information in the manual applies to both emulators unless it is marked with the processor name MC68020 MC68EC020 MC68030 or MC68EC030 Part 1 Quick Start Guide tells you how to start using the emulator 1 Getting Started 2 Solving Quick Start Problems Part 2 User s Guide describes how to use the Softkey Interface to perform a variety of tasks 3 Using the
114. mmu_translations tables lt address gt commands to see how the MMU maps each one to physical memory 344 Chapter 10 Using MC68030 Memory Management Solving Problems A can t break into monitor example The following example assumes you mapped your foreground monitor beginning at address 4000H You connected your emulator into your target system and ran your target program which set up the MC68030 MMU You tried to break into the emulation monitor and got the message Can t break into monitor The emulator can t break into the monitor because it can t find the monitor The MMU mapped the foreground monitor to physical address space that is not a 1 1 translation from logical address space A variety of failure modes can happen at this point Your emulation system may execute unknown code or it may simply halt To analyze this problem reset into the monitor by choosing Execution Reset and then Execution Break or using command line commands reset and then break The reset does not change the content of the MMU mapping tables or registers It only disables the enable bit in the TC register of the MMU Now you can look at the translations that are performed by the MMU to find the translation that was applied to your foreground monitor Choose Display MMU Translations or enter the command display mmu_translations The display will show a list of the logical to physical address translations that will be perf
115. modify configuration command to access this configuration question Reenable the cache to improve performance when you re finished using the analyzer The analyzer can be configured to trace background monitor execution foreground monitor and target program execution or both background and foreground operations If you trace only background monitor execution the analyzer will not see any foreground cycles and will not trigger the trace Use the modify configuration command to access this configuration question The MC68030 EC030 emulator only fetches instructions on long word boundaries least significant hex digit of address is 0 4 8 or C However program labels can be aligned or word boundaries between long word boundaries If you try to trace on a label located on a non long word boundary the bus analyzer will never trigger because the address never appears on the address bus To mask an address so that it is on a long word boundary use the long_aligned keyword with trace specifications 303 Chapter 9 Solving Problems If trace disassembly appears to be partially incorrect If trace disassembly appears to be partially incorrect Check to see if the analyzer began disassembly of the trace on a long word boundary but the instruction started on the low word within the long word This will make disassembly incorrect You can start disassembly on the
116. mouse place the cursor on the line in the trace list where you want to see the associated content of program memory Then press the select mouse button and click on Display Memory At in the trace list popup menu You will see a display of memory at the location of the program that emitted the selected trace list line This is the same as placing the program address of the selected trace list line in the entry buffer and choosing Display gt Memory At in the pulldown menus To open an edit window into the source file associated with a trace list line Using the mouse place the cursor on the line in the trace list whose source file you wish to edit Then press the select mouse button and click on Edit Source in the trace list popup menu A new window will open It will show the source file that emitted the line you selected in the trace list An edit session will be in progress on the source file in the new window When you complete the desired edit save the file and close the window 202 m Chapter 5 Using the Emulation Bus Analyzer Analyzing Program Execution When the MC68030 MMU is Enabled Analyzing Program Execution When the MC68030 MMU is Enabled Most emulation and analysis commands that require an address as part of the command use logical addresses When the MC68030 MMU is enabled physical addresses are placed on the emulation bus The physical addresses may not be the same as the logical addresses The deMMUe
117. name strings will have m68020 embedded in them After you have verified the software installation you must start the X server and an X window manager if you are not currently running an X server If you plan to run the Motif Window Manager mwm or similar window manager continue with Step 3a of these instructions If you plan to run HP VUE skip to Step 3b of these instructions 611 Chapter 18 Installation and Service Installing HP 9000 Software Step 3a Start the X server and the Motif Window Manager mwm If you are not already running the X server and a window manager do so now The X server is required to use the Graphical User Interface because it is an X Windows application A window manager is not required to execute the interface but as a practical matter you must use some sort of window manager with the X server Start the X server by entering x11start at the HP UX prompt Consult the X Window documentation supplied with the HP UX operating system documentation if you do not know about using X Windows and the X server Chapter 13 Using X Resources also discusses X Windows and the X server After starting the X server and Motif Window Manager continue with step 4 of these instructions Step 3b Start HP VUE If you are running the X server under HP VUE and have not started HP VUE do so now HP VUE is a window manager for the X Window system The X server is executing underneath HP VUE Unlike the
118. names may be preceded by directory paths If the command file name does not have a directory path prefixed to it the interface will search for it as follows e Ifthe environment variable HP64KPATH is set the interface will first search in all directories listed in the HP64KPATH variable If the interface does not find the command file in those directories it then searches the current working directory for the command file e Ifthe environment variable HP64KPATH is not set the interface searches only in the current working directory for the command file If the command file name has a path name prefixed to it the interface will only look in the specified path for the command file See To specify the order of searching several command file directories HP64KPATH for more information about the HP64KPATH variable To interrupt execution of a command file press the lt CTRL gt c key combination The mouse pointer must be within the interface window If you press lt CTRL gt c to stop execution of a command file while the wait command is being executed from the command file lt CTRL gt c will terminate the wait command but will not terminate command file execution in this case you must press lt CTRL gt c again 78 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files Examples Suppose you have a command file named STARTEMUL it is located in your current working directory and i
119. only one currently executing If it is then this command ends the interface but leaves the emulator in a continue state The interface if restarted will reload the last configuration used If the interface instance is one of several into the same emulation session then the end command ends the interface instance where the end is issued Other interface instances into the same emulation session are not affected This option allows you to stop all active instances of an emulator Softkey Interface session in one or more windows and or terminals When the emulation session ends control returns to the UNIX shell but the emulator is still locked to your user id and is not available to others This option stops all instances of the Softkey Interface in one or more windows or terminals The emulation system is released for other users If you do not release the emulation system others cannot access it 390 Examples See Also end lt RETURN gt end locked lt R ETURN gt end release_system lt RETURN gt emul700 lt emulator_name gt help end Chapter 11 Emulator Commands end 391 Chapter 11 Emulator Commands EXPR DON T CARE NUMBER NORMAL lt NUMBER gt EXPR PE lt DON T CARE NUMBER gt lt NUMBER gt Aoo end lt OP gt The function of an expression EXPR is to let you define the add
120. only store message writes store write transactions only during the time when the Write_Msg routine is active and not store other program activity display trace trace enable Write_Msg start disable Write_Msg end only status write See Also help trace SEQUENCING trace QUALIFIER 455 456 12 Emulator Messages The information displayed on the Status line to let you know something is wrong or advise you when the emulator is performing a task 457 Chapter 12 Emulator Messages Messages In This Chapter The emulator analyzer interface provides feedback to the user through messages that are displayed on the STATUS line Organization of the Messages The messages in this chapter are organized as follows e Messages are listed in alphabetical order except for the first few messages e The first few messages shown in this chapter are not in alphabetical order because the first word of the messages will begin with the name you assigned to a configuration file your emulator analyzer or your stack e Some messages have error numbers assigned to them These error numbers are shown in parenthesis within the message text in this chapter Messages Recorded in Error Log The error log records error messages received during the emulation session You may want to display the error log to view the error messages In those instances where several messages are generated for a single error conditio
121. options lt filename gt is any valid UNIX file name The file name may include path information If the file does not exist the interface creates it File creation errors can sometimes be caused by UNIX permission violations on files or subdirectories Make sure you have write permission on the file and on the directory where you intend to create the file To enter Terminal Interface commands To execute just one or two Terminal Interface commands enter the Terminal Interface command enclosed in double quotes as an argument to pod_command on the command line or If you expect to enter several Terminal Interface commands enable Terminal Interface command pass through and disable high level interface command processing by selecting Settings Pod Command Keyboard or on the command line enter pod_command keyboard Enter the desired Terminal Interface commands End Terminal Interface command pass through and re enable high level interface command processing by pressing the suspend softkey Before you enter a Terminal Interface command you should use the display pod_command command to display the Terminal Interface screen If you do not display the Terminal Interface screen you cannot see the output from the Terminal Interface commands you enter If you are entering a single Terminal Interface command the pod_command lt command gt variation is useful However entering a series of pod commands is 91 Chap
122. or are going to use For details refer to the syntax page for the pod_command in this chapter This optional part of the display status command causes the emulator status screen to be updated continuously This allows you to display the contents of emulation processor registers If a step command was just executed the mnemonic representation of the last instruction is also displayed if the current display is the register display This process does not occur in real time The emulation system must be configured for nonreal time operation to display registers while the processor is running Symbols 373 Chapter 11 Emulator Commands display lt CLASS gt lt REGISTER gt simulated_io software __ breakpoints also may be displayed in the register step mnemonic string refer to set symbols in this chapter With no options specified the basic register class is displayed Basic registers include PC STATUS USP ISP MSP CACR CAAR DO through D7 AO through A7 VBR DFC and SFC Other registers you can display include The FPU registers if your target system is equipped with a floating point coprocessor FPCR FPSR FPIAR and FPO through FP7 The ACU registers if you are using an MC68030 EC030 with the MMU disabled ACO AC1 and ACUSR The MMU registers if you are using an MC68030 with the MMU enabled TTO TT1 MMUSR TC SRP and CRP This allows you to display a particular class of processor registe
123. or move it to another directory File transfer aborted Error 410 Cause A transfer operation was aborted due to a break received most likely a lt CTRL gt c from the keyboard If you typed lt CTRL gt c you probably did so because you thought the transfer was about to fail Action Retry the transfer making sure to use the correct command options If you are unsuccessful make sure that the data communications parameters are set correctly on the host and on the HP 64700 then retry the operation Guarded mem break lt address gt Error 628 Cause Your program attempted to read or write a memory location mapped as guarded The lt address gt parameter indicates the address and function code at which the bus cycle occurred The emulator breaks into the monitor Action Investigate the cause of the guarded memory access by your target program 479 Chapter 12 Emulator Messages Alphabetized Error And Status Messages HP64700 I O channel in use by emulator lt LOGICAL NAME gt Error 10331 Cause You tried to start an emulator interface but your attempt failed because the emulator is already in use by someone else Action Current user must release the emulator HP64700 I O channel semaphore failure lt string gt Cause Semaphore ipc facility not installed Action Reconfigure the kernel to add ipc facility HP 64700 I O error communications timeout Cause This is a communication failure Action Check po
124. proper format in the Trace Specification Selection dialog box Obtain that dialog box by choosing Trace Trace Spec You can click on your specification in the dialog box edit it if desired and click OK Using the command line enter commands as follows e To count occurrences of a particular bus state in the trace enter the trace counting lt bus_state gt command lt bus_state gt represents a combination of address data and status expressions that must be matched to satisfy the trigger qualifier e To count all states in the trace enter the trace counting anystate command e To count time in the trace enter the trace counting time command e To disable counting in the trace enter the trace counting off command You can use the analyzer s state time counter to count time or bus states If using the deep analyzer counting imposes no restrictions on memory depth If using the 1K analyzer use of the counter restricts the trace memory to a maximum depth of 512 states If you disable the counter in the 1K analyzer using the trace counting off command the maximum trace depth is 1024 states When using the 1K analyzer the MC68020 emulator defaults to counting time and the MC68030 EC030 emulator because of its higher bus cycle rates defaults to counting off To count states or time in the MC68030 EC030 emulator you must configure the analyzer clocks correctly See the help screen for the Analyzer Speed item in the Trace Options
125. repetitively command 132 display modes details of dialog box 159 setting 158 display pod_command command 90 93 display software_breakpoints command 156 display status command 42 177 display trace absolute command 191 display trace absolute status binary command 191 display trace absolute status hex command 191 display trace absolute status mnemonic command 191 display trace command 175 183 202 231 display trace count absolute command 196 display trace count command 196 display trace count relative command 196 display trace depth command 201 664 Index display trace dequeue off command 189 display trace dequeue on command 189 display trace disassemble_from_line_number command 186 align_data_from_line option 189 options 187 display trace mnemonic command 186 display trace offset_by command 198 don t care digits 208 duration measurements SPMT 260 average time 273 confidence level 274 error tolerance 274 interpreting reports 273 maximum time 273 minimum time 273 number of intervals 273 prefetch and recursion considerations 260 selecting 265 standard deviation 273 trace command setup 263 dynamic virtual memory systems 317 EARLY defined in address mapping display 328 editing file 521 file at address 521 files in the interfaces 106 emul700 command to start the emulator analyzer interface 39 emulation configuration 403 emulation bus analyzer trace signals 209 emulation con
126. request SIZ0 SIZ1 async 16 asynchronous word transfer async32 asynchronous long word transfer async8 asynchronous byte transfer buserror bus error cycle byte byte transfer request SIZO SIZ1 cpu function code cpu space data function code data space logical logical memory address long longword transfer request SIZO SIZ1 physical physical memory address prog function code program space read read cycle retry retrying a previous bus cycle super function code supervisor space supdata function code supervisor data space supprog function code supervisor program space sync synchronous long word transfer tblwalk searching through translation tables user function code user space userdata function code user data space userprog function code user program space word word transfer request SIZ0 SIZ1 write write cycle 211 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Example To use address data and status values in trace expressions Enter the value s desired in the entry buffer such as address 1000h Then Choose Trace After Trace Before or Trace gt A bout as desired Using the command line enter commands as follows e To specify an address expression enter lt expression gt or address lt expression gt e To specify a data expression enter data lt expression gt e To specify a status expression enter status lt expression gt Many trace commands r
127. returns to the user program If you restrict the emulator to real time runs the display registers command isn t allowed while you re running your target program Refer to Chapter 8 Configuring the Emulator Examples Display the processor s AO register display registers A0 There was an error in the first software release for the MC68030 Graphical User Interface When you composed the Display Registers command the associated submenu would offer BASIC FPU and ACU as register sets even when the MMU was enabled If you clicked on ACU you would see syntax error The next release of software for the Graphical User Interface Revision 5 01 corrected this error It offers MMU instead of ACU when the MMU is enabled If you have the software release that has this error click on the MMU softkey below the command line to correct your command 145 Chapter 4 Using the Emulator Viewing and Modifying Registers To modify registers Choose Modify Register and in the dialog box type in the register name and new value Using the command line modify a register to a new value by typing modify register lt regname gt to lt value gt Where lt regname gt is the name of a processor register and lt value gt is an expression matching the data type of the register byte or word To modify an MMU register in the MC68030 emulation processor the MMU must be enabled To modify an ACU register in the MC68030 emulati
128. same as specified by the last display trace command Examples copy local_symbols_in prog68k S to printer lt RETURN gt copy local_symbols_in cmd_rdr s to myfile lt RETURN gt copy memory START to printer lt RETURN gt copy memory 0 thru 100H START thru 5 500H TARGET2 to memlist lt RETURN gt copy memory 2000h thru 204fh to memlist lt RETURN gt copy registers BASIC to printer lt RETURN gt copy registers to reglist lt RETURN gt copy trace to tlist lt RETURN gt 367 Chapter 11 Emulator Commands copy copy trace from_line_number 0 thru_line_number 5 to longtrac lt RETURN gt copy trace to mail myfriend col hp See Also display local_symbols_in lt SYMB gt display memory display registers display trace modify memory modify registers store memory store trace help copy help registers help trace 368 anystate off QUALIFIER state Chapter 11 Emulator Commands COUNT From COUNT on state QUALIFIER To output of COUNT TRACE diagram on TRACE diagram anystate The analyzer trace depth is 1024 states A state is a unique combination of address data and status values occurring on the emulation bus simultaneously When counting is off the analyzer can store 1024 states in the trace buffer When counting is on the analyzer can only store 512 states in the trace b
129. several design strategies where memory management can help in developing a system or product Three of these are described in the following paragraphs One shows memory management used in a static memory system The other two show memory management used in different dynamic memory systems The MC68030 emulator is designed to work in any of these system types however the deMMUer which provides reverse translations to the analyzer is primarily intended for use in static systems Static system example A static system design may use the MMU simply to protect supervisor code and I O space against accesses from a user program Once a static system is initialized it never changes Your HP emulator and analyzer can give you complete support for a static memory management system After the MMU has been set up to manage memory in a static system the deMMUer can be loaded with information to reverse the MMU translations over the entire range managed by the MMU Non paged dynamic system example Assume three programmers are developing separate programs to run in a real time operating system environment The programmers each write their programs to begin at address Oh The operating system accepts the responsibility to know where 317 Chapter 10 Using MC68030 Memory Management Understanding Emulation and Analysis Of The MC68030 Memory Management Unit in physical memory space each of these programs will be located The programmers don t have to
130. shown in the trace list to make it easier to find the information of interest For example you can display symbol information where available or source lines from the high level languages used to write the target system program You can also change the column widths and set options for disassembly of the trace list This section covers many of the options available for controlling the trace display Display control is available through the Trace Display Options dialog box the trace list popup menu and the command line You can combine most options within a single command on the command line to obtain a desired trace display See the display trace and set command descriptions in Chapter 11 Emulator Commands for more information If you are using the MC68030 emulator with the MMU enabled you will need to enable and load the deMMUer before you can use source file symbols in your commands display source file symbols in your trace lists or see blocks of source code preceding related trace data Refer to Analyzing Program Execution when the MC68030 MMU is Enabled later in this chapter to see how to load and use the deMMUer 183 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Examples To use the Trace Options dialog box Click to select the desired format of trace disassembly ES Emulator Analyzer Trace Options _ l Trace Display Options gratus Format Count Format Relative
131. starts the emulator analyzer interface with a customized set of action keys loads a configuration file for the demo program and then loads the demo program 13 Chapter 1 Getting Started Step 2 Display the program in memory Step 2 Display the program in memory 1 If the symbol main is not already in the entry buffer move the mouse pointer to the entry buffer notice the flashing I beam cursor and type in main 2 Choose Display Memory Mnemonic Or using the command line enter display memory main mnemonic lt RETURN gt File Display Modify Execution Breakpoints Trace Settings Help Action keys lt Demo gt Run Xfer til Disp Sre amp Asmi Patch Make amp Load Disp Var Disp REG Disp Sre Prev Il Trace Run Il Again data 31 extern void update_system update system variables 92 extern void interrupt_sim simulate an interrupt 93 extern void do_sort sets up ascii array and calls 94 1 35 maint 36 97 init_system 98 proc_spec_init 939 188 while true 181 182 update_system 183 num_checks 184 interrupt_sim amp num_checks 105 if graph 106 graph_data 107 proc_specific STATUS cws main main c The command line can be brought on screen by placing the cursor in the display area of the Graphical User Interface and typing the command The default display mode settings cause source li
132. symbols that identify addresses or ranges of addresses within the range of this symbol Additional symbols Names of other symbols that also identify this address for address Some compilers emit more than one symbol for certain addresses For example a compiler may emit math_library and _math_library for the first address in a routine named math_library The analyzer will show the first symbol it finds to represent a range of addresses or a single address point and it will show the other symbols under either Symbols within range or Additional symbols for address as applicable In the math_library example it may show either math_library or _math_library to represent the range depending on which symbol it finds first The other symbol will be shown below Symbols within range in the report These conditions appear particularly in default measurements that include all global and local symbols Relative and absolute Relative count is the total number of states associated with counts the address ranges in the performance measurement Relative time is the total amount of time associated with the address ranges in the performance measurement The absolute counts are the number of states or amount of time associated with all the states in all the traces 271 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool Error tolerance and confidence level An approximate error may
133. that the listed mnemonics are correct If set source only is on you will see only the high level language statements and corresponding line numbers This option lets you specify an offset that is subtracted from each of the absolute addresses before the addresses and corresponding memory contents are listed You might select the offset value so that each module appears to start at address OOOOH The memory contents listing will then appear similar to the assembler or compiler listing This option is also useful for displaying symbols and source lines in dynamically relocated programs Displays memory as 96 bit Motorola format packed real numbers This allows you to specify that the addresses to be displayed are addresses in physical memory Places the previous display window on screen This token lets you switch the display back and forth between the previous window and the new window This is useful when you are stepping a program in memory and it suddenly jumps to a different location in memory changing your display window Formats memory values in the listing as real numbers NaN in the display list means Not a Number Updates the memory listing display continuously You should only use this to monitor memory while running user code since it is very CPU intensive To allow updates to the current memory display whenever memory is modified a file is loaded a breakpoint is set etc use the set update command Forma
134. the usr hp64000 bin directory and if you have installed software in a directory other than you need to set the HP64000 environment variable The following instructions show you how to set these variables at the UNIX prompt Modify your profile or login file if you wish these environment variables to be set when you log in The following instructions also assume that you re using sh or ksh if you re using csh environment variables are set using the setenv lt VARIABLE gt lt value gt command Set the DISPLAY environment variable by entering DISPLA Y lt hostname gt lt server_number gt lt screen_number gt export DISPLAY For example DISPLAY myhost 0 0 export DISPLAY 613 Chapter 18 Installation and Service Installing HP 9000 Software Consult the X Window documentation supplied with the UNIX system documentation for an explanation of the DISPLAY environment variable Set the HP64000 environment variable For example if you installed the HP 64000 software relative to the root directory you would enter HP64000 usr hp64000 export HP64000 If you installed the software relative to a directory other than the root directory it is strongly recommended that you use a symbolic link to make the software appear to be under usr hp64000 For example if you installed the software relative to directory users team you would enter In s users team usr hp64000 usr hp64000 If you do not wi
135. the mappings the MMU used to perform the translation Begin by looking at the registers display Display Registers BASIC or display registers to see the value of the logical address in the program counter Then choose Display MMU Translations and use the dialog box or use the display mmu_translations tables lt address gt command to see the path through the tables that the MMU took when it translated that logical address to a guarded address in physical memory Note that the value of the program counter may have changed after the guarded access occurred In this case the present address in the program counter may map to proper physical memory 343 Chapter 10 Using MC68030 Memory Management Solving Problems If the present program counter address does not translate to an address in guarded physical memory the access to guarded memory may have been caused when your program read or wrote to data memory before the present program counter address appeared Set up the analyzer to make a trace with the deWMMUer turned on and trigger at the logical program counter address by placing the PC address in the entry buffer and choosing Trace About or using the command trace about address lt pe address gt Selecting a center trigger lets you see activity preceding and following the trigger point In order to capture every transaction on the emulation bus qualify all states for capture don t use the trace only option If th
136. the reset state run releases the reset condition If you specify run from EXPR or run from transfer_address the processor is directed to the particular address If the processor is running in the emulation monitor or background memory a run command causes the processor to exit into your program The program can either run from a specified address EXPR from the address stored in the emulation processor program counter or from a label specified in the program For an explanation of how the emulator runs from a reset condition using the run from reset command refer to the paragraph titled To run a program in Chapter 4 Using the Emulator If you omit the address option EXPR the emulator begins program execution at the current address specified by the emulation processor program counter If an absolute file containing a transfer address has just been loaded execution starts at that address EXPR An expression is a combination of numeric values symbols operators and parentheses specifying a memory address See the EXPR syntax diagram FCODE The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available and for an explanation of those codes from This specifies the address where program execution is to begin reset This option starts the processor executing from the reset vector address 419 Chapt
137. the MMU is disabled When MMUDIS is negated the MMU is enabled to translate addresses The emulator controls the MMUDIS line according to the way you set the Enable Memory Management Unit configuration item If you enter no the MMUDIS line is held asserted If you enter yes the MMUDIS line is directly controlled by the target system In this condition your target system can hold the line high or low to enable or disable the MMU 320 Caution Chapter 10 Using MC68030 Memory Management Understanding Emulation and Analysis Of The MC68030 Memory Management Unit Software enable The software enable is performed when the operating system loads a value into the translation control register TC If the enable bit of the TC register value is e 1 and the value in the TC register is valid the MMU will be enabled If the enable bit in the TC register is e 0 or if the value loaded into the TC register is invalid the MMU will be disabled Restrictions when using the MC68030 emulator with the MMU turned on There are only three restrictions you must use a foreground monitor it must not be write protected and you must map it to address space that the MMU translates 1 1 logical physical You must use a foreground monitor The background monitor does not have the capabilities to support the MMU functions The foreground monitor can operate with the MMU turned on You must map the monitor code to address space that the
138. the emulator to be different from the internal record of the state of the emulator that is kept by the high level interface Changing communications parameters can prevent the high level interface from communicating further with the emulator and cause abnormal termination of the interface Be careful when using Terminal Interface commands to avoid creating problems for the high level interface The following table lists some Terminal Interface commands to avoid and why Commands Reasons to Avoid stty po xp Do not use Will change the channel operation and hang emulator echo mac Usage may confuse the channel protocol wait Do not use will block access to emulator init pv Will reset emulator and force end release_system t Do not use Will confuse trace status polling and unload Performance verification pv is an internal self test of the emulator hardware If you suspect any problems with your emulation system hardware use the Terminal Interface command pv to run the internal self test pv is on this list of pod commands to avoid because running it will reset the emulator and end the emulation session That does not mean you should not run pv if you suspect 89 Chapter 3 Using the emulator analyzer interface Accessing the Terminal Interface hardware trouble Just be aware that it will terminate the emulation session if you do run it See the MC68020 MC68EC020 and MC68030 MC68EC030 Emulators Terminal I
139. the following control key combinations to redraw reposition and update the display of the Softkey Interface Input Result lt Ctrl gt l To redraw the current display lt Ctrl gt f To roll the display left lt Ctrl gt g To roll the display right lt Ctrl gt s To stop screen updates lt Ctrl gt q To resume screen updates You can roll the display left and right only if there is more information than will fit into 80 columns 67 Chapter 3 Using the emulator analyzer interface Copying information to a file or printer Copying information to a file or printer Choose File gt Copy Select the type of information from the cascade menu see copy options below and use the dialog box to select the file or printer Using the command line enter a command such as copy lt copy option gt to lt destination gt Where lt copy option gt has a name similar to those listed below available through softkey selection and lt destination gt is a printer or the name of a file ASCII characters are copied to the file or printer If you copy information to an existing file it will be appended to the file Details of the copy options are discussed in the following paragraphs Display Copies information currently in the display area This option is useful for restricting the number of lines that are copied Also this option is useful for copying the contents of register classes other than BASIC Memory Copies the co
140. the name of a C function or Pascal procedure and is listed as a procedure symbol in the global symbol display Step 2 Initialize the performance measurement After you set up the trace command you must tell the SPMT the address ranges on which you wish to make activity measurements or the time ranges to be used in the duration measurement This is done by initializing the performance measurement which can be accomplished in various ways e To use the default configuration enter the following command with no options performance_measurement_initialize This specifies an activity measurement If a valid symbolic database has been loaded the addresses of all global procedures and static symbols will be used Otherwise a default set of ranges that cover the entire processor address range will be used 263 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool e To initialize with user defined files activity or duration measurement specify the SPMT address or time ranges to use by placing the information in a file and entering the file name in the performance_measurement_initialize command The formats for the address range file activity measurements and time range file duration measurements are described in this chapter e To include program symbols procedure name or static user defined address ranges and comments in address range files refer to this example file A
141. then test2 restart test3 trigger about not range test3 thru test3 end trace QUALIFIER WINDOW help trace 422 Chapter 11 Emulator Commands set source lt ENV_VAR gt C lt VALUE gt lt RETURN gt default langinfo c t memory _only_ race_on ADA C_IEE695 inverse_video tabs_are Dis number_of_source_lines Dia lt NUMSRC gt lt lt MC synbols gt update lt NaC width iobel X lt widTH 3 mnemonic AC lt WIDTH gt Gs symbolis J lt WIDTH gt m source lt WIDTH gt K a off 64783818 423 Chapter 11 Emulator Commands set default demmuer lt ENV_VAR gt With the set command you can adjust the display format results for various measurements making them easier to read and interpret Formatting of source lines symbol display selection and width and update after measurement can be modified to your needs The display command uses the set command specifications to format measurement results for the display window Another option to the set command lt ENV_VAR gt lt VALUES allows you to set and export system variables The default display format parameters are the same as those set by the commands set update set source off symbols
142. to a common directory of command files that might be used by several people You could also use this variable so that you would not have to store command files in the same working directory as say source files for a project The directories listed in the HP64KPATH variable are not searched if the command file has an explicit path name prefixed to it Use set to specify or change this variable if you are using the command line Use export to set this variable from your HP UX profile file 85 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files Examples Set this variable from within the interface to cause the interface to search first the asers common cmdfiles directory then the users myid cmdfiles directory and then the current working directory by issuing either of the two following set commands set HP64KPATH users cmdfiles users myid cmdfiles or set HP64KPATH users cmdfiles users myid cmdfiles Force the current working directory to be the first directory searched instead of the last directory searched by including the dot symbol as the first directory in the HP64KPATH as in set HP64KPATH users cmdfiles users myid cmdfiles By making the current directory the first in the path you speed up command file access for command files in the current working directory because the interface would otherwise search the current working directory only after searching
143. to see the demo The demo program supplied with the MC68020 and MC68030 EC030 acts as a hypothetical environmental control system for a computer room You can use this program to learn more about the emulator Refer to the information on the demo program in the reference part of this manual The examples in this manual use the demo program To make the examples work correctly you must load the demo emulator configuration file and demo program as described above 104 Chapter 4 Using the Emulator Loading and Storing Programs To store a program e Using the command line transfer a range of memory locations from the emulator to an HP 9000 file by entering the store memory fcode lt fcode gt lt expression gt thru lt expression gt to lt filename gt command lt fcode gt is an optional function code as follows lt fcode gt Meaning none emulator ignores function code bits s supervisor space program and data u user space program and data p program space supervisor and user d data space supervisor and user sp supervisor program space sd supervisor data space up user program space ud user data space cpu CPU space lt expression gt specifies the starting and ending in thru lt expression gt addresses of the memory range to be stored lt filename gt is the name including paths if needed of a file to store the data If you patched a program or data structure by modifying memory you may want
144. trace after START run from 2000h Comments can follow on the same line wait measurement_complete The preceding wait command variation ensures that new trace states will be available in the trace buffer before the display trace command is executed display trace log_commands off To create a command file by using a text editor e Use a text editor to create the command file A command file is a text file containing commands in the form that appear on the command line You can create command files with an ASCII text editor such as vi Make sure that the commands you create in your command file are syntactically correct Syntactically incorrect command lines will halt command file execution 77 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files To execute or playback a command file To execute a command file at interface startup use the c lt command file name gt option with your emul700 command To execute a command file from within the Graphical User Interface select File Log Playback and use the dialog box to select the name of the command file you wish to execute To execute a command file using the command line enter the name of the command file and press lt RETURN gt Any name entered on the command line that is not recognized as a member of the emulator analyzer command set will be treated as the name of a command file Command file
145. trigger position in the trace list is within 3 states of the position specified 181 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements Example Example When you enter a trace about command the trigger state line 0 is normally labeled about However if there are three or fewer states before the trigger the trigger state is labeled after and if there are three or fewer states after the trigger the trigger state is labeled before To trace on states before the demo program accesses the current humidity enter trace before address current_humid status write set symbols on display trace To define a simple storage qualifier Place your storage qualifier in the entry buffer such as status read and then choose Trace gt Only Using the command line use the only option in the trace command All captured states are stored by default However you can qualify which states get stored with the only option to the trace command When you are running the demo program to store only accesses to the address target_temp place target_temp in the entry buffer and then choose Trace Only or on the command line enter trace only target_temp 182 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Displaying the Trace List The trace list is your view of the analyzer s record of processor bus activity You can specify what is
146. trouble mapping memory If you have trouble mapping memory The emulator uses a best fit algorithm to assign memory blocks to map requests Because the memory block sizes available depend on the emulation memory module installations and the use of the dual port memory it s possible that a 256 byte map request may use 512 Kbytes The map term will be only 256 bytes Most systems won t have such differences between memory block size requirements and available memory However certain emulation memory module installations will aggravate the problem Also use of the dual port memory is controlled first by monitor selection and next by explicit selection of a dual port term in the map If you choose a foreground monitor the dual port memory block is reserved for that purpose If you choose a background monitor and don t explicitly map a term with the dp attribute the dual port memory may be used to satisfy any map request For example if you request a 256 byte map term and this memory block is available it will be used to satisfy the request since it is closest to the needed size Or if you request a term that is slightly larger than another available block the dual port memory will be used with another map term to satisfy the request For example a 260 Kbyte request may use one 256 Kbyte block and the 4 Kbyte dual port memory If dual port memory is used with the emulation memory module to satisf
147. under emulator control and cannot be reached via your target program 642 Glossary Background Monitor Background Monitor a monitor program that operates entirely in the background address space The background monitor can execute when target program execution is temporarily suspended The background monitor does not occupy any of the address space that is available to your target program BNC Connector a connector that provides a means for the emulator to drive receive a trigger signal to from an external device such as a logic analyzer oscilloscope or HP 64000 UX system Breakpoint a point at which emulator execution breaks from the target program and begins executing in the monitor See also Execution Breakpoint and Access Breakpoint Class names names that may apply to many instances of a widget Command File a file containing a sequence of commands to be executed Compatible Mode configures the deep analyzer to provide the same memory depth as the 1K analyzer 1024 states deep when the analyzer is not configured to make a count of states or time during a measurement and 512 states deep when the analyzer is configured to make a count of states or time during a measurement If the emulator interface you are using along with the deep analyzer requires that you use the compatible mode the deep analyzer will still be able to provide one of its benefits for your measurement you will be able to make your cou
148. values 212 range 213 status values 212 trace find_sequence command 214 215 trace list disassembly 186 display around specific line number 200 display source lines 194 displaying 175 183 202 move through 199 offset addresses 198 Index 683 Index trace modify_command command 222 trace on_halt command 221 trace only command 219 trace prestore anything command 220 trace prestore command 220 trace signals of the emulation bus analyzer 209 trace windowing 216 translation details of single logical address 167 of single address through MMU 326 table details for a logical address 169 trigger BNC signal 238 CMB signal 237 definition of 207 how to specify for a trace 181 in out specifications 561 one analyzer with another 253 parameter 449 450 qualifier how to define 180 setting position 181 troubleshooting 628 tutorials setting up 529 531 U in LU field of address mapping display 327 ud defined 325 AND 451 UNIX commands entering 94 with command files 73 up defined 325 using the softkey interface 36 values 207 verifying emulator performance 626 version firmware 638 wait command options 452 453 with command files 74 80 warnings power must be OFF during installation 587 684 Index widget resource See X resource WINDOW parameter 454 455 windowing and sequencing specification 217 windows maximum number of 37 opening additional emulator analyzer 44 runn
149. when you enabled the MMU Only a foreground monitor can be used when the MMU is enabled 492 Chapter 12 Emulator Messages Alphabetized Error And Status Messages M68020 probe not connected or configured incorrectly Error 179 M68030 EC030 probe not connected or configured incorrectly Error 179 Cause The emulator is reading an invalid identifier for the emulation probe Action Make sure the probe cables are connected correctly Also make sure that the probe is the MC68020 MC68EC020 or the MC68030 EC030 probe as applicable Make sure correct firmware is flashed on the control card 020 firmware for the 020 probe or 030 firmware for the 030 probe No address label defined Cause The address trace label was somehow removed in the terminal interface using the tlb command Action End session and start again No map terms available maximum number already defined Error 721 Cause You tried to add more mapper terms than are available for this emulator For example with the MC68020 and MC68030 EC030 emulator there are only seven terms If you had already defined memory types for these terms then tried to map another term you would see the above error message Action Either combine map ranges to conserve the number of terms or delete mapper terms that aren t needed No module specified for local symbol Error 882 Cause This error occurs because you tried to specify a local symbol name without specifying the modu
150. will require more memory space than is available in the trace memory of an analyzer This example shows you how to capture all of your target program execution while excluding unwanted execution of the emulation monitor Choose Trace Display Options and in the dialog box enter 0 or the total depth of your deep analyzer trace memory in the entry field beside Unload Depth Then click OK or Apply This sets unload depth to maximum For this measurement the analyzer will drive trig and the emulator will receive trig from the trigger bus inside the card cage The trig1 signal is used to cause the emulator to break to its monitor program shortly before the trace memory is filled This use of trig is not supported in workstation interface commands Therefore terminal interface commands accessible through the pod command feature must be used Enter the following commands Settings Pod Command Keyboard tgout trig1 c lt states before end of memory gt trigger output trig before trace complete be e trig1 break conditions enabled on trig1 Click the suspend softkey Note that tgout trig1 c lt states gt means generate trig as an output when the state that is lt states gt before the end of the trace memory is captured in the trace memory be e trig means enable the emulator to break to its monitor program when it receives trig Select a value for lt states before end of memory gt that allows enough time and or
151. will not be able to restore old perf out measurement files Step 3 Run the performance measurement The performance_measurement_run command processes analyzer trace data When you end the performance measurement this processed data is dumped to the binary perf out file in the current directory The perf32 report generator utility is used to read the binary information in the perf out file To process the current trace data enter performance_meas urement_run To execute the current trace command consecutively a certain number of times enter performance_measurement_run lt COUNT gt The data that results from each trace command is processed and combined with the existing processed data The STATUS line will say Processing trace lt NO gt during the run so you will know how your measurement is progressing The only way to stop this series of traces is by using CTRL c sig INT The more traces you include in your sample the more accurate your results will be At least four consecutive traces are required to obtain statistical interpretation of activity measurement results 267 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool Step 4 End the performance measurement To end the performance measurement enter performance_measurement_end The performance_measurement_end command takes the data generated by the performance_measurement_run command and plac
152. wr retry rsvd sp long wr retry rsvd sp B long retry aun retry Click to open an edit window into the source file that contains the address of the selected line Click to open a display window into memory containing the address of the selected line Note that the format of the memory display will be mnemonic for addresses in the code segment and absolute otherwise Choose Action for Highlighted Line retry retry retry retry retry retry long wr retry long wr retry long wr retry long wr retry y long wr retry spre sysetac 00007F98 Disassemble From Edit Source Display Memory At 0843384 mon rsvd sp 01010101 mon rsvd sp 4ES68088 mon rsvd sp 0802018 mon rsvd sp 13FC 481 mon rsvd sp init init_system sysstac 00007F88 init_sy a990004 a29000 STATUS H68ECO30 Running user program Emulation trace started from transfer_address run roce step _ disptoy C Cursor Backup Forward Clear to end Clear Help L 185 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To disassemble the trace list Choose Trace Display Options and in the dialog box select Data Format Mnemonic Then click the OK or Apply pushbutton Use the mouse to place the cursor on a line in the trace list where you want disassembly to begin Then press the select mouse
153. 00 to OFFFFH lt RETURN gt modify memory 0675H real to 1 303 lt RETURN gt modify memory TEMP real long to 0 5532E 8 lt RETURN gt modify memory buffer string to This is a test n 0 display memory blocked bytes modify memory Msg_Dest thru 50 to 41h 42h 43h modify memory Msg_Dest string to HP 64000 Softkey Interface modify memory Msg_Dest thru 50 to 0 modify register DO to 9H lt RETURN gt modify register BASIC PC to 2000H lt RETURN gt modify software_breakpoints enable lt RETURN gt modify software_breakpoints clear 99H 1234H lt RETURN gt 407 Chapter 11 Emulator Commands modify See Also modify software_breakpoints set LOOP1 E LOOP2END OEH lt RETURN gt E modify software breakpoints set lt RETURN gt copy memory copy registers copy software breakpoints display memory display registers display software _ breakpoints help modify help registers help software breakpoints modify registers store memory ND 408 Chapter 11 Emulator Commands performance_measurement_end performance_measurement_end Y lt RETURN gt performance _measurement_end This command stores data previously generated by the performance_measurement_run command in a file named perf out in the current working directory The file named perf out is overwritten each time this command is executed This
154. 000 D0 MOVEC DO TTO Without these transparent translations for the monitor the MMU will probably generate an access fault when you attempt to break into the monitor The access fault would occur because addresses in the 02000000 range would have no valid translations they would be on a non resident page If you cannot modify your boot code you may be able to use an execution breakpoint to break into the monitor before the MMU is enabled and use the monitor to configure the TTR Do this only as a last resort because the MC68030 processor automatically disables both TTRs whenever an emulation or target reset occurs and the TTRs must be reinitialized each time e The second way to provide proper address translation for the foreground monitor is to locate the monitor within a page that is controlled by the MMU address translation tables one that is always resident writeable supervisor accessible and translated 1 1 The monitor occupies one 4 Kbyte page or series of consecutive smaller pages totaling 4 Kbytes of emulation memory It will be stored in the 4 Kbyte range of the dual port memory 297 Chapter 8 Configuring the Emulator Providing MMU Address Translation for the MC68030 Foreground Monitor Locating the Foreground Monitor using the MMU Address Translation Tables Locate the foreground monitor at a specific page address or series of consecutive pages totaling 4 Kbytes and beginning on a 4 Kbyte address boundary
155. 0000010 00000000 0000 supr prgm long rd 120 ng 004 Pridemo 00000012 05000000 0500 supr prgm word rd 240 nS 005 Pridemo 00000014 66000000 BNE W Pridemo Call_Int 120 ng 006 Pridemo 00000016 00060000 0006 supr prgm word rd 120 nS 007 Didemo Cmd_Input 00060000 00 supr data byte rd 120 ng 008 Pridemo 00000018 60000000 BRA W Proldemo EndLoop 120 nS 009 Pridemo 0000001A 000E0000 000E supr prgm word rd 200 nS 010 Pridemo Call_Int 61000000 BSR W Prog Int_Cmd 120 nS 011 Pridemo 0000001E 00000000 000C supr prgm word rd 160 nS 012 Praldemo EndLoop 60E40000 BRA B Progldemo Loop 120 ng 013 ProglInt_Cmd OC000000 CMPI B 41 D0 160 nS 014 handle_ 00000002 00410000 0041 supr prgm long rd 120 ng STATUS M68020 Running user program Emulation trace complete_____ R E set symbols on pod_cmd set perfinit perfrun perfend ETC A e HP 9000 Series 300 Host System Description The HP 64747A emulator supports the Motorola 68EC030 up to 40 MHz The HP 64747B emulator when used with the HP 64748C Emulation Control Card supports the Motorola 68030 The HP 64748A 64748D emulator supports the Motorola 68020 and 68EC020 microprocessors up to 33 MHz The only difference between the HP 64748A and HP 64748D is that the HP 64748D can accept installation of 4 Mbyte SIMMs in its probe sockets and the HP 64748A cannot Emulator Control Card 64748B Control Card 64748C 64748 68020 EC020 Complete support Complete support
156. 0001040 U 0007 0 1 0 SHORT C 0004 00001050 00004009 00004000 O 0 1 0 PAGE Physical Address hex 00004000 Note that in the example shown here the MMU page size was 4 Kbytes Therefore the monitor was contained on one page If the page size had been smaller the 4 Kbytes of the foreground monitor would have occupied two or more pages You would have to modify the logical base address of each page that contained monitor code The above modifications will provide the proper mapping for your system until you rerun the portion of your target program that sets up the MMU Then the same problem will occur again To fix the problem permanently you need to modify your target program so it provides a 1 1 mapping for the address space where the foreground monitor is located 347 348 11 Emulator Commands The command syntax reference for the emulator softkey interface 349 Chapter 11 Emulator Commands Emulator Analyzer Interface Commands This chapter describes the emulator analyzer interface commands in alphabetical order First the syntax conventions are described and the commands are summarized 350 Chapter 11 Emulator Commands How Pulldown Menus Map to the Command Line Pulldown Command Line File gt Context Directory cd File Context Symbols cws File gt Load Emulator Config load configuration File gt Load Executable load lt abs_file gt File Load Program Only load lt abs_file
157. 000c009 0000c000 O 0 1 0 PAGE Physical Address hex 0000c000 In the example display the foreground monitor whose logical address is 4000h was placed in physical address C000h Table C points to the page containing the foreground monitor The base address of Table C is 00001040h and the content used by logical address 4000h is at index 0004 whose physical address is 00001050h The content of this address is 0000C000h the address of the page containing the monitor To solve the problem in this example you can obtain the needed 1 1 mapping by modifying the content of the MMU table directly with the following command line command modify memory physical 00001050h to 00004009h 346 Chapter 10 Using MC68030 Memory Management Solving Problems After this modification you can get a new display of the mapping tables for logical address 4000h to see if your modified MMU tables now map your foreground monitor correctly Choose Display MMU Translations and in the dialog box click on MMU Tables and type in Address 4000H or enter the command display mmu_translations tables 4000h Logical Address hex 0 0 0 0 4 0 0 0 Logical Address bin 0000 0000 0000 0000 0100 0000 0000 0000 Table Level AAAA AAAA BBBB BBBB CCCC PPPP PPPP PPPP LEVEL INDEX LOCATION CONTENTS TBL PAGE L U LIMIT S CI M U WP DT CRP 00000003 00001020 00001020 uU 0000 LONG A 0000 00001020 0000000b 00001030 00001030 U 0000 0 1 0 LONG B 0000 00001030 0007000a 00001040 0
158. 01 0001 A2 aae2016 4EB9880033 JSR 0000339E age20ic 5289000787 ADDQ L 1 0007875C a aae2022 4879000767 PEA 0007875C g aad2028 4EB9880020 JSR agaa2068 aaa 202E 5886F ADDQ L 4 A pogaz2D30 4A39000787 TST B 00078768 8082036 670E BEQ B 00002046 98882038 1570880188 MOVE B 01 0002 A2 aae203E 4EB9000038 JSR 000038A8 STATUS N68ECO30 Running in monitor 125 Chapter 4 Using the Emulator Accessing Processor Memory Resources Example To display memory in byte format Choose Display gt Memory Hex bytes If you want to include a line range or starting point for your memory display in your command enter it into the entry buffer before you execute this command Using the command line display a range of memory in byte format by entering display memory lt lower gt thru lt upper gt bytes To format the memory listing as a single column add the keyword absolute before the data type in the display memory command To format the memory listing as multiple columns add the keyword blocked before the data type in the display memory command Display the demo program s average temperature array display memory aver_temp thru aver_temp end bytes 126 Chapter 4 Using the Emulator Accessing Process
159. 01 If there are unexplained states in the trace list 302 If you see negative time or negative states in the trace list 302 If the analyzer won t trigger 303 If trace disassembly appears to be partially incorrect 304 If the emulator won t work ina target system 304 If you suspect that the emulator is broken 305 If you have trouble mapping memory 306 If you see multiple guarded memory accesses 307 If the demo program won t work 307 If you re having problems with DMA 308 If you re having problems with emulation reset 308 If the deMMUer runs out of resources during the loading process 309 If verbose mode shows less than eight mappings but the deMMUer is out of resources 310 If you only see physical memory addresses in the analyzer measurement results 310 If the deMMUer is loaded but you still get physical addresses for some of your address space 311 If you can t break into the monitor after you enable the MC68030 MMU 312 xviii Contents Part 3 Reference 10 Using MC68030 Memory Management Understanding Emulation and Analysis Of The MC68030 Memory Management Unit 316 Terms And Conditions You Need To Understand 316 Logical vs Physical 316 What are logical addresses 317 What are physical addresses 317 Static and dynamic system architectures 317 Static system example 317 Non paged dynamic system example 317 Paged dynamic system example 318 Where Is The MMU 319 Using Function Codes 320 How t
160. 0h the emulator would do a guarded memory break 295 Chapter 8 Configuring the Emulator Providing MMU Address Translation for the MC68030 Foreground Monitor Providing MMU Address Translation for the MC68030 Foreground Monitor When using the memory management unit MMU of the MC68030 the target system must provide the proper address translation for the foreground monitor To be able to do this you will need to understand your target system s physical memory map and MMU address translation structure You may need to modify your mapping scheme or some of its mapping protections In order for the monitor to operate after the MMU is turned on the target system must provide 1 1 address translation logical address physical address for the block of memory occupied by the monitor The foreground monitor will reside in a 4 Kbyte block of emulation memory corresponding to a single page or series of consecutive pages in the MMU This memory can be mapped to begin on any 4 Kbyte address boundary Simply specify an address ending in 000h when you answer the monitor address question when you set up the emulation configuration For example if the monitor is located at logical address Offff1000h then the MMU must translate that address to physical address Offff1000h logical address Offff1004h to physical address Offff1004h etc Do not write protect the address range occupied by the foreground monitor There are two ways to provid
161. 112 To display the parent symbol of a symbol 114 To copy and paste a full symbol name to the entry buffer 115 To enter a symbol 116 To display the current directory and current working symbol 117 To change the directory context 118 To change the current working symbol context 118 xii Contents Accessing Processor Memory Resources 120 To display program data structures 120 To display only source lines 122 To display intermixed source lines 123 To display symbols without source lines 124 To display absolute addresses 125 To display memory in byte format 126 To display memory in word format 127 To display memory in long word format 128 To display memory in mnemonic format 129 To return to the previous mnemonic display 130 To display memory in real number form 131 To redisplay memory locations 132 To display memory repetitively 132 To modify memory 133 Using Processor Run Controls 135 To run a program 135 To run programs from the transfer address 137 To run programs from reset 137 To run programs until a selected address occurs 138 To break to the monitor 139 To step the processor 140 To reset the processor 143 Viewing and Modifying Registers 144 To display registers 144 To modify registers 146 Using Execution Breakpoints 148 Setting execution breakpoints in RAM 148 Using temporary and permanent breakpoints 149 To enable execution breakpoints 150 To disable an execution breakpoint 150 To set a p
162. 1181 Logical Name Processor 1 em68k m68000 2 em80960 180960 3 m68030 m68030 Number of Emulator to Update intr usually cntl C or DEL to abort To update firmware in the HP 64700 that contains the 68030 emulator enter 3 Product 64700 64703 64704 64706 64740 64744 64760 64747 UBN Number of Product to Update intr usually cntl C or DEL to abort To update the HP 64747 68030 emulator firmware enter 5 Enable progress messages y n y Woo To enable status messages enter y 636 Chapter 19 Installing Updating Emulator Firmware To update emulator firmware with progflash Checking System firmware revision Mainframe is a 64700B Reading configuration from usr hp64000 inst update 64747 cfg ROM identifier address 2FFFFOH Required hardware identifier 1FFFH 1FFBH 1FFDH FFFH FFBH FFDH Control ROM Control ROM Control ROM Programming Programming Programming start a size width voltage voltage voltage ddress 280000H 40000H 16 control address 2FFFFEH control value FFFFH control mask OH Rebooting HP64700 Checking Hardware id code Erasing Flash ROM Downloading ROM code usr hp64000 inst update 64747 X Code start 280000H should equal control ROM start Code size 24D44H must be less than control ROM size Finishing up Rebooting HP64700 Flash programming SUCCEEDED You could perform the same update as in the previous example with
163. 134 da sarti ald data asnii old_data limit NUM_OF_OLD 135 Choose Action for Highlighted Line BOAAZEHA z RE FFFF AS BAAAZEAG Set Clear Software Breakpoint RE FFFF A5 48882EGA Edit Source RE FFFF A5 a2EGE RE FFFF AS 136 Run Until 137 fe TI PTECCLOrCrcrrerererererer cece sf 138 Trace After oe Trace Before T 141 Trace About 142 Trace Until PES E EE E E SESS EEEE EEEE EEEE E EEEE E EEE E S 143 in perecre 144 char dest STATUS M68030 Running in monitor Emulation trace complete display memory main mnemonic SEE run trace step display __modify f break f end ETc 108 Chapter 4 Using the Emulator Using Symbols Using Symbols When you load a program for the first time the emulator uses the Symbolic Retrieval Utilities SRU to build a symbol database for each module This database associates symbol names and symbol type information not data types with logical addresses You will see a message on screen showing the module for which the database is being built Once a symbol database is created for a particular module it does not need to be rebuilt unless the module is changed You can rebuild modules using the srubuild utility refer to the Symbol Retrieval Utilities SRU User s Guide If you reenter emulation without building symbols the e
164. 171B 64172B 1 Mbyte Memory Modules for additional memory depth e HP 64173A 4 Mbyte Memory Modules for additional memory depth e HP 64708A Software Performance Analyzer Equipment and tools needed In order to install and use the MC68020 or MC68030 EC030 emulation system you need e Flat blade screwdriver with shaft at least 5 inches long 13 mm aprox Installation overview The steps in the installation process are 1 Install optional memory modules on the deep analyzer card if desired 2 Connect the HP 64747 or HP 64748 emulator probe to the HP 64748C emulator control card Install cards into the HP 64700 card cage Install emulation memory modules on the emulator probe Connect the emulator probe to the demo target system Apply power to the HP 64700 Card Cage Dns W 580 Caution Note Chapter 18 Installation and Service Installing Hardware Antistatic precautions Integrated circuit boards contain electrical components that are easily damaged by small amounts of static electricity To avoid damage to the emulator cards follow these guidelines e If possible work at a static free workstation e Handle the boards only by the edges do not touch components or traces e Use a grounding wrist strap that is connected to the HP 64700 s chassis See Step 3 in this chapter for the location of the ground strap plug If you already have a modular HP 64700 Series Card Cage and want to remove the ex
165. 20 Step 9 Step assembly level instructions 21 Step 10 Trace the program 22 Step 11 Display memory at an address in a register 24 Step 12 Patch assembly language code 25 Step 13 Exit the emulator analyzer interface 28 Solving Quick Start Problems If the desired emulator interface won t start 30 If the text based Softkey Interface won t start under X Windows 30 If you can t load the demo program 30 If you can t display the program 32 Contents Part 2 User s Guide 3 Using the emulator analyzer interface Maximum Number of Windows 37 Activities that Occur in the Windows 37 Using Multiple Terminals 38 Starting the Emulator Analyzer Interface 39 To start the emulator analyzer interface 39 To start the interface using the default configuration 40 To execute a command file at interface startup 41 To see emulator analyzer status before interface startup 41 To see emulator analyzer status after the interface has started 42 To unlock an interface that was left locked by another user 43 Opening Other HP 64700 Interface Windows 44 To open additional emulator analyzer windows 44 To open the high level debugger interface window 45 To open the software performance analyzer SPA interface window 45 Entering Commands 46 To turn the command line on or off in the Graphical User Interface 46 To enter commands on the command line 47 To edit the command line using the command line pushbuttons on the Graphical Use
166. 20 emulator does not support cache inhibit within selected address ranges Emulator Configuration Memory Map Eel somes SS Map terms remaining Emulation memory remaining range function code attribute H 1FFFH EMUL RAM 24 GH 2FFFH EMUL RAM SOFFA EMUL RAN Modify Entry Add New Entry Delete Entry STATUS Mapping emulation memory default blocks target ram f Add New Map Entry Start Address End Address i Address Increment Function Code Cache Inhibit gt Yes No Target Completes Bus Cycles gt Yes No Dual Port Memory gt Yes No 294 Chapter 8 Configuring the Emulator Mapping Memory Examples Mapping Example 1 Suppose you are using the emulator in circuit and there is a 12 byte I O port at 1c000 hex in your target system You have ROM in your target system from 0 through ffff hex Also you want to use the dual port emulation memory at 20000 hex You could use the Memory Map dialog box to create the following three map entries Start Address 1c000h End Address 1c0ffh Memory Type Target RAM Start Address 0h End Address Offffh Memory Type Target ROM Start Address 20000h End Address 20fffh Memory Type Emul RAM Dual Port Memory Yes The background monitor is used that is the only way to make the dual port emulation memory available for your target program When a foreground monitor is in use it occupies the dual port emulation memory by default Mapping Exam
167. 20h 3000h The first command displays memory in the format specified by the last memory display command The second command displays memory at address 1000h in blocked word format The third command displays memory at two specific memory locations and also from a range of locations all in a single blocked word display 84 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files The following command file consisting of one line called dm can be used to implement all three commands display memory amp ArG_lEfT The following three command file invocations replicate the three separate commands dm dm 1000h dm 1000h 2000h thru 20h 3000h To specify the order of searching several command file directories HP64KPATH Set the environment variable HP64KPATH to one or more alternative directory paths Separate each path from the others with a colon You can set the environment variable HP64KPATH to specify alternative directories for command files If this variable is set the interface searches each path listed in the variable successively until the command file it is searching for is found or no more paths exist If the command file has not been found after this search then the interface looks in the current working directory for the command file If this variable is not set the interface only searches the current working directory This variable is typically set to point
168. 373 405 displaying 20 modify 146 to view and modify 144 147 relative glossary definition of 650 release_system end command option 28 283 repeat the previous trace command 223 reset command 143 options 418 reset trace display defaults 199 resource See X resource RESOURCE_MANAGER property 570 571 restart terms 215 root pointers both used in deMMUer resources 340 run command 135 options 419 420 run from reset command 135 run from transfer_address command 135 scheme files for X resources 519 572 574 color scheme 520 524 573 custom 524 525 574 input scheme 520 573 label scheme 520 524 573 platform scheme 520 572 size scheme 520 573 scripts with command files 73 scroll bar 7 677 Index sd defined 325 select mouse button 9 sequence definition 207 sequencing and windowing specification 217 SEQUENCING parameter 421 422 server X 518 570 set command 94 183 202 options 423 428 set default command 199 set source off command 194 set source on command 194 set source only command 194 set symbols all command 193 set symbols high command 193 set symbols low command 193 set symbols off command 193 set symbols on 129 set symbols on command 109 119 193 set update command 132 set width label command 195 set width mnemonic command 195 set width source command 195 Settings Display Modes dialog box operation 64 shell scripts with command files 73 shell variables with co
169. 464 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Breakpoint disable aborted Error 671 Cause Occurs when lt CTRL gt c is entered when disabling breakpoints Breakpoint enable aborted Error 670 Cause Occurs when lt CTRL gt c is entered when setting breakpoints Breakpoint list full not added lt address gt Error 664 Cause The breakpoint table is full The breakpoint you just requested with address lt address gt was not inserted Action Remove breakpoints that are no longer in use Then insert the new breakpoint Breakpoint not added lt address gt Error 668 Cause You tried to insert a breakpoint in a memory location which was not mapped or was mapped as guarded memory Action Insert breakpoints only within memory ranges mapped to emulation or target RAM or ROM Breakpoint remove aborted Error 669 Cause Occurs when lt CTRL gt c is entered when clearing a breakpoint Cannot create module file Cause Insufficient disk space for the module file Action Check disk space under usr hp64000 Cannot default emulator already in use Error 10332 Cause You tried to start an emulator interface but your attempt failed because the emulator is already in use by someone else Action Current user must release the emulator 465 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Cannot interpret emulator output Error 10350 Cause There may
170. 4KSYMBPATH environment variable The last symbol specified in a display local_symbols_in SYMB command or with the cws command is the default symbol scope The default is none if no current working symbol was set in the current emulation session You also can specify the current working symbol by typing the cws command on the command line and following it with a symbol name The pws command displays the current working symbol on the status line The display memory mnemonic command also can modify the current working symbol If no default file was defined by executing the command display local_symbols_in SYMB or with the ews command a source file name lt FILE gt must be specified with each local symbol in a command line The range of addresses beginning with the entry point and ending with the return instruction The entry point is the address used by other files when they call this procedure 438 Chapter 11 Emulator Commands SYMB lt FILENAME gt This is an UNIX path specifying a source file If no file is specified and the identifier referenced is not a global symbol in the executable file that was loaded then the default file is assumed the last absolute file specified by a display local_symbols_in command A default file is only assumed when other parameters such as line in the SYMB specification expect a file line This specifies that the following numeric value references a line numb
171. 61 rear panel do not stand HP 64700 on 587 turn OFF power before installing emulator probe 161 verify pin 1 when installing emulator probe 161 changing column width 195 directory context in configuration window 284 characteristics of the emulators 545 class name X applications 568 client X 518 clocks specifications 546 CMB coordinated measurement bus 236 cables needed 239 comparison to BNC trigger 238 EXECUTE line 238 EXECUTE signal 362 HP 64700 connection 239 READY line 237 signals 237 specifications 562 TRIGGER line 237 cmb_execute command 244 362 code patching example in getting started chapter 25 27 color scheme 520 524 573 columns in main display area 521 659 Index command buttons 7 summary 360 command conventions graphical user interface 8 softkey interface 5 command files alternative directories 75 85 ArG_IEfT passing 73 amp ArG_lEfT 84 command line continuation 75 comments in 75 81 creating by logging commands 75 creating by using a text editor 77 directory path 85 executing 78 general information 72 86 HP64KPATH 75 85 nesting 74 79 parameter passing 72 82 84 PARMS keyword 82 path variable 85 pausing 74 80 restricted Softkey commands 74 scripts 73 shell scripts 73 shell variables 73 specifying search of directories 75 status line update 74 UNIX commands 73 wait command 74 80 command line 7 Command Recall dialog box 8 copy and pa
172. AS Asserted 18 16 ns 16 Clock High to AS DS R W DBEN High Impedance 30 30 ns 17 AS DS Negated to R W Invalid 5 a FeN Gr Re aa lies 18 Clock High to R W High o 115 o 115 ns 20 Clock High to R W Low 0 1s 01 15 ns 21 R W High to AS Asserted 5 a 5 ns 22 R W Low to DS Asserted Write 35 35 ns 23 Clock High to Data Out Valid V 93 ns 25 AS DS Negated to Data Out Invalid 5 ae 2 ns 556 Chapter 16 Specifications and Characteristics HP 64748 Electrical Specifications HP 64748 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5 GND 0 Vdc T 0 to 70 C Num Characteristic MC68020 HP 64748 Unit 33MHz Min Max Min Max 25A DS Negated to DBEN Negated Write 5 a 0 a ans 26 Data Out Valid to DS Asserted Write 5 5 ns 27 Data In Valid to Clock Low Synchronous Setup 5 10 os 27A Late BERR HALT Asserted to Clock Low Setup 5 10 ns 28 AS DS Negated to DSACKx BERR HALT A VEC Negated o 401 0 130 ns Asynchronous Hold 29 DS Negated to Data In Invalid Asynchronous Hold 0 0 ns 29A DS Negated to Data In High Impedance 30 30 ns 30 Clock Low to Data In Invalid Synchronous Hold 6 _ 6 3 Jake 31 DSACKx Asserted to Data In Valid Asynchronous Data Setup __ 17 __ 43 n
173. About this Manual We ve added this manual to the Agilent website in an effort to help you support your product This manual is the best copy we could find it may be incomplete or contain dated information If we find a more recent copy in the future we will add it to the Agilent website Support for Your Product Agilent no longer sells or supports this product Our service centers may be able to perform calibration if no repair parts are needed but no other support from Agilent is available You will find any other available product information on the Agilent Test amp Measurement website www tm agilent com HP References in this Manual This manual may contain references to HP or Hewlett Packard Please note that Hewlett Packard s former test and measurement semiconductor products and chemical analysis businesses are now part of Agilent Technologies We have made no changes to this manual copy In other documentation to reduce potential confusion the only change to product numbers and names has been in the company name prefix where a product number name was HP XXXX the current name number is now Agilent XXXX For example model number HP8648A is now model number Agilent 8648A LA eackann User s Guide for the Graphical User Interface MC68020 030 EC020 EC030 Emulators Analyzer HP 64748 and HP 64747 Notice Hewlett Packard makes no warranty of any kind with regard to this material including but not limited to th
174. Breakpoints display software_breakpoints Display Status display status Display Simulated IO display simulated_io Display Global Symbols display global_symbols Display Local Symbols display local_symbols_in S YMB Display Pod Commands display pod_command Display Error Log display error_log Display Event Log display event_log Modify Emulator Config modify configuration Modify Memory modify memory Modify Memory at modify memory EXPR Modify Register modify register 352 Chapter 11 Emulator Commands Pulldown Command Line Execution Run from PC run Execution Run from run from EXPR Execution Run from Transfer Address run from transfer_address Execution Run from Reset run from reset Execution Run until run until EXPR Execution Step Source from PC step source Execution Step Source from step source from EXPR Execution Step Source from Transfer step source from transfer_address Address Execution Step Instruction from PC step Execution Step Instruction from step from EXPR Execution Step Instruction from Transfer step from transfer_address Address Execution Break break Execution Reset reset Breakpoints Display display software_breakpoints Breakpoints Enable modify software_breakpoints enable disable BreakpointsTemporary modify software_breakpoints set EXPR temporary Breakpoints Permanent modif
175. C68030 is mapped to memory address space that has a 1 1 translation You can define a 1 1 translation for the monitor address space by modifying the content of the translation tables in the emulation processor MMU Refer to Providing MMU Address Translation for the MC68030 Foreground Monitor at the end of this chapter for instructions on how to modify the transparent translation registers or the translation tables in the MC68030 MMU 288 Chapter 8 Configuring the Emulator Emulation Configuration Displays Emulator Configuration Memory Map File Map Settings Map terms remaining amp Emulation memory remaining PBR bytes range function code attribute STATUS Mapping emulation memory default blocks target ram Refer to Mapping Memory later in this chapter for details of how to use the Memory Map configuration screen 289 Chapter 8 Configuring the Emulator Emulation Configuration Displays Processor Settings Enable Target System Interrupts Yes No Enable Instruction Data Caches Yes No Enable Memory Management Unit Q Yes No Emulator Settings Clock Speed gt 25MHz Yes gt No Restrict to RealTime Q Yes No Break on Write to ROM Yes No Memory Access Size Software Breakpoint Vector Initial Stack Pointer Value Initial Program Counter Value The MC68020 General Items configuration screen does not offer control over a Data Cache It also does not offer the ability to enable
176. CING TRIGGER and WINDOW diagrams for details on setting up a trace You can perform analysis tasks either by starting a program run and then specifying the trace parameters or by specifying the trace parameters first and then initiating the program run Once a trace begins the analyzer monitors the system busses of the emulation processor to detect the states specified in the trace command The analyzer will trace any state counting time by default When the trace specification is satisfied and trace memory is filled a message will appear on the status line indicating the trace is complete You can then use display trace to display the contents of the trace memory If a previous trace list is on 445 Chapter 11 Emulator Commands trace again anything arm_trig2 break_on_trigger COUNT counting modify_command on_halt only screen the current trace automatically updates the display If the trace memory contents exceed the page size of the display the NEXT PAGE PREV PAGE up arrow or down arrow keys may be used to display all the trace memory contents You also can press CTRL f and CTRL g to move the display left and right You can set up trigger and storage qualifications using the specify trace command When a cmb_execute command is given which puts an EXECUTE signal on the Coordinated Measurement Bus analyzers will begin tracing This option repeats the previous trace measurement It also begins a trace
177. Chapter 12 Emulator Messages Alphabetized Error And Status Messages Unable to run after CMB break Error 606 Cause System failure or target condition Action Run performance verification pv command and check target system Unable to run HP64747 tests without target power Error 178 Unable to run HP64748 tests without target power Error 178 Cause The demo board does not have proper power connected to it Action Check the connection of the emulation probe and the external power cable to the demo board Unable to run performance verification tests Error 178 Cause You entered the py command but the emulator was unable to start performance verification Action Make sure the correct emulator probe is connected and all cables are secured Make sure the demo board is connected to the emulator probe and the switches on the demo board are set to the test position Also verify that the demo board power cable is connected to the HP 64700 Card Cage Unable to set trace vector to lt address gt vector table in TROM Error 156 Cause You used the step command The emulator can t modify the trace vector to the correct value for stepping because the vector table region is mapped to target ROM Action Make sure you initialized the vector correctly in your vector table You need to remap memory so that the vector table will be located in a valid memory area See To step the processor in Chapter 4 Using the Emulator fo
178. Characteristics HP 64747 Electrical Specifications HP64747 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5 GND 0 Vdc Ta 0 to 70 C Num Characteristic HP 64747 HP 64747 Unit 25MHz 40MHz Min Max Min Max 33 Clock Low to BG Asserted 0 20 0 14 ns 34 Clock Low to BG Negated 0 20 0 14 ns 35 BR Asserted to BG Asserted RMC Not Asserted 15 3 5 15 3 5 Clks 37 BGACK Asserted to BG Negated 15 35 115 35 Clks 37A BGACK Asserted to BR Negated o 15 0 15 Cks 39 BG Width Negated 6 301 el ns 39A BG Width Asserted 60 30 ns 40 Clock Low to DBEN Negated Read 0 20 0 21 ns 41 Clock Low to DBEN Negated Read 0 20 0 21 ns 42 Clock Low to DBEN Asserted Write 0 20 0 21 ns 43 Clock High to DBEN Negated Write 0 20 0 218 ns 44 R W Low to DBEN Asserted Write gi eM eke ills weal ae 45 DBEN Width Asserted Asynchronous Read 40 22 ns DBEN Width Asserted Asynchronous Write 80 45 45A DBEN Width Asserted Synchronous Read 5 5 ns DBEN Width Asserted Synchronous Write 40 22 ns 46 R W Width Asserted Asynchronous Write or Read 100 50 ns 46A R W Width Asserted Synchronous Write or Read 60 30 lt Hs 47A Asynchronous Input Setup Time HALT BERR DSACKx pe SN ae pe Asynchronous Inp
179. Complex Trace Measurements monitor cycles in step 3 above the last few trace lines in each file may contain monitor cycles 227 Chapter 5 Using the Emulation Bus Analyzer Saving and Restoring Trace Data and Specifications Saving and Restoring Trace Data and Specifications The emulator analyzer can save your trace data and trace specifications in a file for later use This can help you record measurement results that you can use for comparison with other tests and it is useful to automate measurements Suppose you re using the emulator in a manufacturing test application The target system is your product board You might build a command file that recalls a trace specification makes the trace on the target board and then recalls a previous measurement result from a working product and compares it to the new measurement using the UNIX diff command To store a trace specification Choose File gt Store Trace Spec In the dialog box select an existing filename or specify a new filename to contain the present trace specification Then click OK Using the command line store the current trace specification by entering the store trace_spec lt filename gt command lt filename gt is any UNIX file name including paths The extension TS is automatically added to the file name The trace specification file is a binary file The store trace_spec command allows you to save a trace specification effectively the cu
180. E position Out of Circuit Emulation away from TEST Did you change to the demo directory ust hp64000 demo debug_env hp64748 for the MC68020 ast hp64000 demo debug_env hp64747 for the MC68030 EC030 Did you start the demo program with the proper command Startemul lt logical name gt Startall lt logical name gt 307 Chapter 9 Solving Problems If you re having problems with DMA If you re having problems with DMA Check to make sure that your DMA process doesn t access memory ranges mapped to emulation ram or emulation rom DMA to emulation memory is not supported If you re having problems with emulation reset Check to make sure that your system uses an open collector driver to drive the processor RESET line this also applies to HALT on the MC68020 processor This line is bidirectional the processor must be able to pull the line low Check to make sure that all critical components in your system are reset by the RESET signal to the processor System startup problems can arise when this rule is violated Suppose that your target system reset circuit drives several critical system components directly but drives the processor through an open collector buffer Suppose also that the critical components are memory mapping circuits that locate ROM containing the vector table at address zero for startup then move it to a high address range after system initializati
181. KEYMAP variable If you use OpenWindows type setenv KEYMAP sun 2 9 If you use xterm windows the xterm window program is located in the directory ust openwin demo type setenv KEYMAP xterm 2 9 Reminder If you are using OpenWindows add usr openwin bin to the end of the PATH definition and add the following line to your profile setenv OPENWINHOME usr openwin 619 Chapter 18 Installation and Service Installing Sun SPARCsystem Software j After you have mapped your function keys you must start the X server and an X window manager if you are not currently running an X server Step 6 Restart the window system Exit the window system you are using e Ifyou are using SunView windows use the Exit SunView menu item e Ifyou are using Open Windows use the Exit item in the Workspace menu Start your window system again e To restart SunView windows type sunview e To restart Open Windows windows type openwin The new function key settings are now active Step 7 Run the interface in a window Here are two ways to start the interface o In an OpenWindows or SunView shelltool window type emul700 lt logical_name gt e Ifyou are running OpenWindows you can use the installed script to open an xterm window usr hp64000 bin hp 4term Then in the new window type emul700 lt logical_name gt 620 Chapter 18 Installation and Service Verifying the Installation
182. Line File gt Exit Window save session File gt Exit Locked all windows save session File gt Exit Released all windows release emulator end end locked end release_system Display Context Display gt Memory Display gt Memory Mnhemonic DisplayMemory Mnhemonic at PC Display Memory Mnhemonic Previous Display Memory Hex bytes DisplayMemory Hex gt words Display gt Memory Hex long DisplayMemory Real short DisplayMemory Real long Display Memory Real extended DisplayMemory Real packed Display gt Memory At Display gt Memory Repetitively Display Data Values Display Data Values gt New gt lt type gt Display Data Values Add gt lt type gt Display gt MMU Translations pwd pws display memory display memory EXPR mnemonic display memory mnemonic at_pc display memory mnemonic previous_display display memory EXPR blocked bytes display memory EXPR blocked words display memory EXPR blocked long display memory EXPR real short display memory EXPR real long display memory EXPR real extended display memory EXPR real packed display memory EXPR display memory repetitively display data display data EXPR lt type gt display data EXPR lt type gt display mmu_translations Display Trace display trace Display Registers lt type gt display registers lt type gt Display
183. MMU Translations e The TBL PAGE column shows the base addresses of Table C s indicated by each location in Table B In other mapping schemes the contents might have pointed to four base addresses of pages in physical memory e The first indexed location in Table B shows its associated Table C has been accessed U bit equals 1 MMU Tables Logical Address hex supr prog 0 0 0 0 4 0 F 8 Logical Address bin 110 0000 0000 0000 0000 0100 0000 1111 1000 Table Level FCODE IIII IIII IIII IABB CDDD PPPP PPPP PPPP LEVEL INDEX LOCATION CONTENTS TBL PAGE L U LIMIT S CI M U WP DT B 0000 000010b0 000010da 000010d0 1 0 SHORT B 0001 000010b4 000010e3 000010e0 0 0 LONG B 0002 000010b8 000010 f2 000010 0 0 0 SHORT B 0003 000010bc 00001102 00001100 0 0 SHORT 329 Chapter 10 Using MC68030 Memory Management Using the DeMMUer Using the DeMMUer The deMMUer circuitry reverses the translations made by the MMU translates the physical addresses it finds on the processor buses back to their corresponding logical addresses before sending the addresses to the analyzer What part of the emulator needs a deMMUer Actually the emulator doesn t need the deMMUer the analyzer does It can t provide its full symbolic features unless it has help from the deMMUer The analyzer normally receives its address information directly from the processor address bus It uses the symbols data base created for the program loaded in memory to cr
184. MMU translates 1 1 The emulator executes monitor code to implement many of its emulation features The emulator must be able to find the monitor code whether the MMU is turned on or off By mapping the monitor into address space that has a 1 1 translation the monitor stays within known address space at all times and the emulator can always find it when it needs to use it This mapping is described at the end of Chapter 8 Configuring the Emulator Be sure that no write protection exists in the MMU mapping for the monitor Make sure your translation tables are valid Turning on the MMU can cause your program or emulator to fail if the MMU tables are not set up correctly The address space where the program is executing can change when the MMU is turned on or turned off Stack space or other data spaces can move Breakpoints that have been set can be lost 321 Chapter 10 Using MC68030 Memory Management Understanding Emulation and Analysis Of The MC68030 Memory Management Unit How the MMU affects the way you compose your emulation commands When you display registers the address registers stack pointers and program counter always contain logical addresses even when the MMU is turned on If you place an address in the entry buffer and choose Execution Run from or enter arun from lt address gt command the address you enter must be a logical address The program counter will accept it and supply it to the MMU for transla
185. MUer is loaded but you still get physical addresses for some of your address space If the deMMUer is loaded but you still get physical addresses for some of your address space Some physical accesses are normal especially accesses to the MMU tables and cpu space Check to see which physical memory spaces are being reverse translated by the deMMUer Enter the load demmuer verbose command to see a list of the physical address spaces that will be dA MMUed Check the setup of the MMU mapping tables Make sure that unused address spaces are marked with invalid descriptors in the mapping tables Check the emulation memory map Make sure you have allocated only the memory spaces needed to accommodate code you are developing in your map Make sure you have mapped the smallest spaces that you can for the code you are developing Check that the MMU had the setup you wanted to analyze when you loaded the deMMUer If it was managing memory for some other MMU setup break to the monitor and issue the load demmuer command again Check to see if there was a context change in the MMU during execution of your program If there was the content of the root pointer may have changed for execution of the new context The deMMUer tables were set up to reverse translate the MMU tables under the root pointer values that existed when you entered the load demuer command If those root pointer values ch
186. Pm Om Xt NXP x 100 Mean of the standard deviations in each time range Table entry in Student s T table for a given confidence level Number of intervals Mean of the means for example mean of the average times in each time range 274 Configuring the Emulator 275 Chapter 8 Configuring the Emulator Configuring the Emulator Configuring the Emulator This chapter describes how to configure the emulator By default the emulator assumes all memory addresses are in RAM space in your target system If you wish to load some of your target program in emulation memory hardware or identify some of your memory addresses as ROM hardware or Guarded address space enter those specifications in the emulation memory map When you plug the emulator into a target system you must configure the emulator so that it operates correctly in the target system The configuration tasks are grouped into the following sections e Using the configuration interface e Emulation configuration displays e Mapping memory e Providing MMU address translation for the MC68030 Foreground Monitor The simulated I O feature and configuration questions are further described in the Simulated I O User s Guide The interactive measurement configuration options are further described in Chapter 6 Making Coordinated Measurements 276 Chapter 8 Configuring the Emulator Using the Configuration Interface Using the C
187. Processor Register Values Tevaue eo Recall CAP Value 64 bi Recall SRP Value eab SC Recalt Cancel Using the command line enter display mmu_translations tables 1250h level A 170 Using the Emulation Bus Analyzer How to record program execution in real time 171 Chapter 5 Using the Emulation Bus Analyzer Power of the Emulation Bus Analyzer Power of the Emulation Bus Analyzer The emulation bus analyzer is a powerful tool that allows you to view the execution of your program in real time Extensive triggering and sequencing capability ensures that the analyzer captures only the information you need so you don t spend time searching through long trace lists to find the information that is of interest The Graphical User Interface has menus that let you specify some simple analyzer measurements like tracing after about or before an address You can also specify qualifications for which states get stored and which states can be prestored the analyzer can prestore up to two states before each qualified store state The analyzer has much more capability than is available in the menus You can access this capability by using the command line to make your trace specifications Use of the command line is also covered in this chapter Once a trace specification command is entered either with the menus or the command line it can be recalled ed
188. RCsystem Graphical User Interface and Softkey Interface Using the emulator analyzer interface on the SPARCsystem 533 Chapter 14 The SPARCsystem Graphical User Interface and Softkey Interface Using your SPARCsystem keyboard The SPARCsystem Emulator Analyzer Interface This chapter contains a description of how the emulator analyzer uses the keys on your SPARCsystem keyboard Using your SPARCsystem keyboard The following table describes the use of the keys on your SPARCstation keyboard The roll functions are for an hp64term window in OpenWindows only To get function Press this key delete char Del insert char Ins For SunView and xterm windows only Does not work in OpenWindows windows next page PgDn prev page PgUp roll up Shift T for xterm only roll down Shift L for xterm only roll left Shift for xterm only roll right Shift gt for xterm only up arrow T down arrow L left arrow os 534 Chapter 14 The SPARCsystem Graphical User Interface and Softkey Interface Using your SPARCsystem keyboard To get function Press this key right arrow gt home Home anti home End carriage return Enter tab Tab backtab Undo cleartoeol Control E roll left Control p roll right Control G clearline Control U FW_recall Control g BK_recall Control oR eof Control D refresh Control L other Control x sigint Control C sigquit Control end release 535 Chapter 14 The SPARCsyste
189. Resources Accessing Processor Memory Resources While you are debugging your system you may want to examine memory resources For example you may need to verify that the correct data is loaded or check the results of a data write Also you may need to modify memory locations to test different data sets for a program The emulator has flexible memory commands that allow you to view and modify memory as needed To display program data structures Place an absolute or symbolic address or file name containing the desired data structures in the entry buffer Then choose Display Data Values New and select the data type from the cascade menu This clears the data values display and adds a new item Place the absolute or symbolic address of the desired data in the entry buffer Then choose Display Data Values Add and select the data type from the cascade menu This adds data items to the data values display Choose Display Data Values if you have a display of data values on screen and you want to update that display Using the command line display a program data structure by entering display data lt lower gt thru lt upper gt lt type gt lt lower gt thru lt upper gt lt type gt lt lower gt and lt upper gt are address expressions representing the lower and upper boundaries of the memory range to be displayed 120 Chapter 4 Using the Emulator Accessing Processor Memory Resources lt type g
190. Softkey application defaults file to a temporary file The HP64_Softkey file contains the default definitions for the graphical interface application s X resources For example on an HP 9000 computer you can use the following command to copy the complete HP64_Softkey file to HP64_Softkey tmp note that the HP64_Softkey file is several hundred lines long cp usr lib X11 app defaults HP64_Softkey HP64_Softkey tmp NOTE The HP64_Softkey application defaults file is re created each time Graphical User Interface software is installed or updated You can use the UNIX diff command to check for differences between the new HP64_Softkey application defaults file and the old application defaults file that is saved as usr hp64000 ib X 1 1 HP64_schemes old HP64_Softkey Modify the temporary file Modify the resource that defines the behavior or appearance that you wish to change For example to change the number of lines in the main display area to 36 vi HP64_Softkey tmp Search for the string HP64_Softkey lines You should see lines similar to the following The lines and columns set the vertical and horizontal dimensions of the main display area in characters respectively Minimum values are 18 lines and 80 columns These minimums are silently enforced The application cannot be resized by using the window manager HP64_Softkey lines 24 HP64_Softkey columns 85 522 Chapter 13 Setting X Resources To modify the Graph
191. Ta 0 to 70 C Num Characteristic HP 64747 HP 64747 Unit 25MHz 40MHz Min Max Min Max 21 R W High to AS Asserted a ea eee e ns 22 R W Low to DS Asserted Write AT oa A a e 23 Clock High to Data Out Valid 20 19 ns 24 Data Out Valid to Negating Edge of AS 5 1 ns 25 AS DS Negated to Data Out Invalid qe ee i Qe ais 25A DS Negated to DBEN Negated Write 7 1 ns 96 Data Out Valid to DS Asserted Write 7 ah fre ns 27 Data In Valid to Clock Low Synchronous Setup ra We ce 27A Late BERR HALT Asserted to Clock Low Setup gx _ ge ns 28 AS DS Negated to DSACKx BERR HALT AVEC Negated 0 40 0 20 ns Asynchronous Hold 28A Clock Low to DSACKx BERR HALT AVEC Negated s 7016 40 ns Synchronous Hold 29 DS Negated to Data In Invalid Asynchronous Hold o0 o0 ns 29a DS Negated to Data In High Impedance 40 25 ns 30 Clock Low to Data In Invalid Synchronous Hold 8 Ta 6 E 30A Clock Low to Data In High Impedance 60 30 ns Read followed by Write 31 DSACKx Asserted to Data In Valid tell Re i pees e eas Asynchronous Data Setup 31A DSACKx Asserted to DSACKx Valid Skew a 7 oe ops 32 RESET Input Transition Time 15 15 Clks 550 Chapter 16 Specifications and
192. The continuation character is the backslash character Placing a backslash at the end of the line just before the line feed causes the following line to be concatenated with the current line Multiple lines can be concatenated by ending all but the last line with a backslash The concatenated lines will be treated as a single command line Note that if you end the last line of a command file with a backslash the command will appear in the interface command line but will not be executed Specifying a Search of Several Command File Directories HP64KPATH is a special shell variable you can set to specify alternative search paths for command files HP64KPATH works much like the UNIX PATH in that you can specify several directories separated by colons to be searched The remainder of this section lists the tasks associated with creating and using command files 75 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files To create a command file by logging commands 1 Select File gt Log Record and use the dialog box to select a command file name If using the command line enter the command log_commands to lt filename gt Enter and execute commands to complete the desired task Stop logging commands by selecting File gt Log Stop If using the command line enter the command log_commands off The above commands provide a mechanism that logs commands entered and executed at
193. Time ranges will default to a predetermined set unless a user defined file of time ranges is specified This represents a file you specify to supply user defined address or time ranges to the emulator This option specifies that the performance measurement will be set up with the addresses of all global symbols and procedures in the source program 410 local_symbols_in restore SYMB Examples See Also Chapter 11 Emulator Commands performance_measurement_initialize This uses local symbols as the default ranges for the measurement This restores old measurement data so that the current measurement can be continued when using the trace command used previously This represents the source file that contains the local symbols to be listed This also can be a program symbol name in which case all symbols that are local to a function or procedure are used See the SYMB syntax diagram performance_measurement_initialize lt RETURN gt performance_measurement_initialize duration lt RETURN gt performance_measurement_initialize local_symbols_in prog68k S lt RETURN gt help performance_measurement_initialize help performance_measurement_run performance_measurement_run performance_measurement_end 411 Chapter 11 Emulator Commands performance_measurement_run lt COUNT gt Examples See Also performance_measurement_run performance_meosurement_run I T lt COUNT gt
194. Tutorial False Specifies whether True Help Tutorial appears in the pulldown menu tutorialPopupSub indexFile Xtutorial Index topics Specifies the file containing the list of topic and file pairs tutorialPopup textColumns 30 Specifies the width in characters of the tutorial topic list popup tutorialPopup listVisibleItemCount 10 Specifies the length in lines of the tutorial topic list popup tutorialTopic About tutorials Specifies the default topic in the tutorial popup selection buffer The mechanism for providing demos and tutorials in the graphical interface is identical The following steps show you how to set up demos or tutorials in the Graphical User Interface Create the demo or tutorial topic files and the associated command files Topic files are simply ASCII text files You can use I to produce inverse video in the text U to produce underlining in the text and N to restore normal text Command files are executed when the Press to perform demo or tutorial button in the topic popup dialog is pushed A command file must have the same name as the topic file with cmd appended Also a command file must be in the same directory as the associated topic file 530 Chapter 13 Setting X Resources To set up demos or tutorials 2 Create the demo or tutorial index file Each line in the index file contains first a quoted string that is the name of the topic which appears in the ind
195. Values can be Color BW or a custom scheme file name HP64_Softkey sizeScheme Names the size scheme file which defines the fonts and the spacing used Values can be Large Small or a custom scheme file name HP64_Softkey inputScheme Names the input scheme file which specifies mouse and keyboard operation Values can be Input or a custom scheme file name The actual scheme file names take the form Softkey lt value gt 572 Chapter 17 X Resources and the Graphical User Interface Scheme Files Scheme File Names There are six scheme files provided with the Graphical User Interface Their names and brief descriptions of the resources they contain follow Softkey Label Defines the labels for the fixed text in the interface Such things as menu item labels and similar text are in this file If the LANG environment variable is set the scheme file Softkey SLANG is loaded if it exists otherwise the file Softkey Label is loaded Softkey BW Defines the color scheme for black and white displays This file is chosen if the display cannot produce at least 16 colors Softkey Color Defines the color scheme for color displays This file is chosen if the display can produce 16 or more colors Softkey Large Defines the size scheme that is the window dimensions and fonts for high resolution displays 1000 pixels or more vertically Softkey Small Defines the size scheme that is the window dimensions and fonts for l
196. W TEST OCE 1 Ge OP 2 CL OP 3 CL DP 4 CL OP 5 CL OP 6 CL OP 7 CL OP 8 CL OP 603 Chapter 18 Installation and Service Installing Hardware 2 Connect the power supply wires from the emulator to the demo target system The 3 wire cable has one power wire and two ground wires When attaching the 3 wire cable to the demo target system make sure the connector is aligned properly so that all three pins are connected POWER CONNECTION FOR DEMO BOARD FROM HP 64700A ALIGN AND CONNECT 604 Chapter 18 Installation and Service Installing Hardware Step 6 Apply power to the HP 64700 The HP 64700B automatically selects the 115 Vac or 220 Vac range In the 115 Vac range the HP 64700B will draw a maximum of 345 W and 520 VA In the 220 Vac range the HP 64700B will draw a maximum of 335 W and 600 VA If you have the emulator installed in an HP 64700A card cage select the line voltage using a thumb wheel switch inside the power control module on the rear panel of the card cage The input frequency must be in the range of 48 to 66 Hz At 115 VAC the emulator will draw a maximum of 3 0 A At 220 VAC it will draw a maximum of 1 5 A The HP 64700 is shipped from the factory with a power cord appropriate for your country You should verify that you have the correct power cable for installation If the cable you received is not appropriate for your electrical po
197. a command file and execute the commands found there as if the commands were entered one by one on the command line Command files can in turn call other command files The interface will execute the called file like a subroutine of the calling file You can create command files from within the interface by logging commands to a command file as you execute commands You can also create a command file outside the interface with an ASCII text editor Logging commands from the command line has the advantage of making sure the commands are syntactically correct when they reach the command file Syntactically incorrect commands found by the interface will cause it to halt execution of a command file With a single command file you can automate a complete test procedure For example you could start the interface and then execute a command file that would perform the following steps Load a configuration file Load an absolute file Modify registers or memory locations Set up a trace specification Start the program running Capture a trace Save the trace listing to a file NYDN BWN eR Command files are also useful for saving very complex trace specifications so that they can be used again during another emulation session or by other people Passing Parameters to Command Files Command files can accept parameters Parameters are like variables in the command file and are usually used in place of explicit arguments to interface comman
198. a file Refer to the HP Branch Validator BBA User s Guide for complete details on the BBA product and how it works To store BBA data to a file Choose File gt Store BBA Data and use the selection dialog box to specify the file name The default file name bbadump data can be selected from the dialog box 233 234 Making Coordinated Measurements Using the Coordinated Measurement Bus to start and stop multiple emulators and analyzers 235 Chapter 6 Making Coordinated Measurements The Elements of Coordinated Measurements The Elements of Coordinated Measurements The Coordinated Measurement Bus CMB connects multiple emulators and allows you to make synchronous measurements between those emulators For example you might have a target system that contains a 68020 or 68030 EC030 processor and another processor You use HP 64700 Series emulators to replace both target system processors and connect the emulators using the CMB You can run a program simultaneously on both emulators Or you can start a trace on one emulation bus analyzer when the other emulator reaches a certain program address These measurements are possible with the CMB When HP 64700 Card Cages are connected together via the Coordinated Measurement Bus CMB you can start and stop up to 32 emulators at the same time You can use the analyzer in one HP 64700 to arm that is activate the analyzers in other HP 64700 Card Cages or t
199. a trace specification Choose File gt Load Trace Spec In the dialog box click on the name of the trace specification you want to load placing it in the Load Trace Specification box Then click OK Using the command line load an existing trace specification from a file by entering the load trace_spec lt filename gt command lt filename gt is any UNIX file name including paths The extension TS is assumed Once you save a trace specification in a file using the File gt Store Trace Spec or store trace_spec command you can load it using the appropriate command above To start a trace with the trace specification that you loaded use the Trace A gain or trace again command Load a trace specification from a file and start the trace load trace_spec tspec trace again 230 Chapter 5 Using the Emulation Bus Analyzer Saving and Restoring Trace Data and Specifications To load trace data e Choose File gt Load Trace Data In the dialog box click on the name of the trace data file file of trace memory content you want to load placing it in the Load Trace Data box Then click OK e Using the command line load trace data from a file by entering the load trace lt filename gt command lt filename gt is any UNIX file name including paths The extension TR is assumed Loads a previously saved trace from a binary trace data file with a TR suffix Once you save trace data in a file using the File
200. aB88881 ISP Ba887F98 08 0 8 08828 BABbe24 BBG798C8 Beabes2e AAAHHH Beaaeeee BabeBeee BeaBaaea AG A G eG781CG FFFFFFFF 781A8 0798C 00078886 BBG801A8 Baas7F94 Beas 3a CAAR 86eeeeee CACR Baeeeeee VBR BeebeRee SFC A OFC A 20 Chapter 1 Getting Started Step 9 Step assembly level instructions Step 9 Step assembly level instructions You can step through the program one instruction at a time To step one instruction from the current program counter click on the Step Asm action key or choose Execution Step Instruction from PC Or using the command line enter step lt RETURN gt Registers Next PC 882CFCE sp PC 62CFC STAT 08 0 gaeees28 Baeeeses Ba079078 Baaees22 app papaAAHA AAAAAAHA HAHAHAHHA AB AY 60781A FFFFFFFF 00078778 00079070 88878838 B G801A8 Baas 7F 34 Baas7F 34 CAAR Beaaeeea CA Step_PC 882CFCE sp Next PC 003772 sp PC 88883772 STAT 08 07 gggagaza BAGABA2a 00079078 HAHAZ3I22 HAHAAAAA HAAAAAOA HABOABOA HAAHAAAA A A Ga 7G1A6 FFFFFFFF 00078778 00079070 000768636 HOHGAIAG Baas7F94 Baas7F 3B CAAR agaaga CA US 2744 lt s z gt USP 8 88 MSP Gaeaaael ISP Baas7F 34 CR aaga888 VBR aaaaaeea SFC OFC JSR p proc_spec_init US 2784 lt s z gt USP 86888888 MSP Gaba8881 ISP Baa57F98 CR a888806 VBR Baaee8e8 SFC OFC A Notice when registers are displayed stepping causes the assembly language instruction just exec uted to be displayed
201. abels were in use in the trace specification Action Enter the previous trace specification and try again Emulation memory access failed Error 702 Cause This message is displayed if the emulator was unable to perform the requested operation on memory mapped to the target system Action In most cases the problem results from the emulator s inability to break to the monitor to perform the operation Usually there are other error messages Refer to the error log to read them to fully understand the cause of the error See message Unable to break Error 608 Emulator is in the reset state Error 61 Cause You have entered a command that requires the emulator to be running in the monitor for example displaying registers Action Enter the break command to cause the emulator to run in the monitor and then enter the command that caused the error again Emulator locked by another user Error 10326 Cause This message occurs when you try to start an emulation interface but your attempt failed because the emulator is being used by someone else Action The current user must release the emulator Emulator locked by another user interface Error 10330 Cause You tried to start an emulator interface but your attempt failed because the emulator is already in use by someone else Action Current user must release the emulator Emulator locked by user lt USER NAME gt Error 10329 Cause You tried to start an emul
202. ace You can enter a new unload depth specification after a trace is complete to increase the amount of trace memory that is unloaded if desired 178 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements To modify the last trace command entered Choose Trace Trace Spec and use the dialog box to select and edit a trace command Using the command line enter the trace modify_command command The Trace Specification Selection dialog box contains a list of trace specifications executed during the emulation session as well as any predefined trace specifications present at interface startup You can predefine trace specifications and set the maximum number of entries for the dialog box by setting X resources refer to Chapter 13 Setting X Resources The trace modify_command command recalls the last trace command The advantage of this command over command recall is that you do not have to move forward and backward over other commands to find the last trace command also the last trace command is always available no matter how many commands have since been entered 179 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements Example To define a simple trigger qualifier Enter your trigger qualifier such as address 1000h in the entry buffer Then in the menu bar click on Trace After Trace Before or Trace gt About When displaying memory in mnemonic
203. ace introduction 534 540 using Microtec commands 542 using Microtec Language Tools 541 544 using the keyboard 534 536 679 Index SPARCsystem softkey interface 533 SPARCsystems installing software 615 620 minimum system requirements overview 579 SunOS minimum version 579 specifications altitude 561 clock 546 CMB 562 data communications 562 humidity 561 probe dimensions 560 temperature 561 trigger in out 561 specifications of the emulators 545 specify command options 429 430 specify run command 243 specify run disable command 244 specify trace command 243 specify trace dequeueing options 189 specify trace disassembly options 187 SPMT Software Performance Measurement Tool See performance measurements SPMT measurements using recursion 260 with prefetch correction 260 SRU Symbolic Retrieval Utilities 109 srubuild 109 srubuild command 99 start simultaneous program run 252 states change the number available for display 201 static discharge protecting the emulator probe against 161 static memory system loadig deMMUer 203 static virtual memory system 317 status seeing status before interface startup 41 status line 7 display 44 update with command files 74 680 Index status range command 213 status values 212 step command 16 135 143 options 431 433 step from command 140 step silently command 140 stop_trace command 175 options 434 storage qualifier 219 defining
204. ace list is wider than 80 columns This may occur if you increased the width of the columns 199 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Examples To display the trace list around a specific line number Choose Trace Display Options and in the dialog box enter the desired trace list line number in the field beside Move to Line Then click the OK or Apply pushbutton Center the trace display about a particular state given by lt LINE gt by entering the display trace lt LINE gt command If you need to move to a particular state quickly you can use this command The command places the specified state in the center of the current trace display Display the trace about line number 20 Choose Trace Display Options and in the dialog box enter 20 in the field beside Move to Line Then click the OK or Apply pushbutton Enbter the following command on the command line to display the trace about line number 256 display trace 256 200 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To change the number of states available for display e Choose Trace Display Options and in the dialog box enter the desired number of states to be made available for display in the field beside Unload Depth Then click the OK or Apply pushbutton e Using the command line set the depth of the trace list with display trace depth lt DEPTH
205. ak could have been due to any of the break conditions or a lt CTRL gt c break The number of steps completed is displayed Stepping failed Error 680 Cause Stepping has failed for some reason For example this message will appear if the emulator can t modify the trace vector which is used to implement the step function Action Usually this error message will occur with other error messages Refer to the descriptions of the accompanying error messages to find out more about why stepping failed See descriptions of the lt STACK gt error messages at the beginning of this chapter Stepping complete Cause Stepping was completed successfully Symbol cannot contain text after the wildcard Error 879 Cause You tried to include text after the wildcard specified in the symbol name for example sym text Action Enter the symbol again but don t include text after the wildcard Symbol cannot contain wildcard in this context Error 878 Cause You tried to enter a global local or user symbol name using the wildcard incorrectly Action When you enter the symbol name again include the wildcard at the end of the symbol Symbol not found lt symbol gt Error 877 Cause This occurs when you try to enter a symbol name that doesn t exist Action Enter a valid symbol name 505 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Symbols not accessible symbol database not load
206. al instruction cycles may be executed after the access violation occurs before execution begins in the monitor Refer to Chapter 4 Using the Emulator for details of how to use breakpoints and effects of their use on execution of your target program Also refer to Execution Breakpoints in this glossary 641 Glossary Analyzer Analyzer an instrument that captures activity of signals synchronously with a clock signal An emulation bus analyzer captures emulator bus cycle information An external analyzer captures activity on signals external to the emulator No external analyzer is supported by the MC68020 or MC68030 emulators because all analysis bits are used by the emulation bus analyzer Analyzer Clock Speed the bus cycle rate of the emulation processor If the emulation processor is running at 21 MHz and the fastest bus cycle requires 3 clocks then the analyzer clock speed bus cycle rate is 21 3 7 MHz Applications are composed of a hierarchy of widgets Arm Condition a condition that reflects the state of a signal external to the analyzer The arm condition can be used in branch or storage qualifiers External signals can be from another analyzer or an instrument connected to the CMB or BNC Assembler a program that translates symbolic instructions into object code Background a memory that parallels and overlaps the emulation processor s normal address range Entry to background can only take place
207. alog box is shown below The menu bar Emulator Configuration Sections L Monitor Setup Clicking on one of Memory Map these lines selects a particular General Items configuration Trace Options Simulated IO section Analyzer Configuration Sections LJ Interactive Measurement Specification Clicking this button i Apply to Emulator loads any configuration changes into the emulator This portion of the dialog box displays configuration status information 279 Chapter 8 Configuring the Emulator Using the Configuration Interface To modify a configuration section e If you are using the Graphical User Interface Start the emulator configuration interface 2 Click ona section name in the configuration interface top level dialog box 3 Use the section dialog box to make changes to the configuration e If you are using the Softkey Interface The configuration questions in the Monitor Setup section are the first to be asked To access the memory map and define modify or delete map entries in the Memory Map section answer yes to the Modify memory configuration question To access the questions in the General Items section answer yes to the Modify emulator pod configuration question To access the questions in the Trace Options section answer yes to the Modify debug trace options question To access the questions in the Simulated IO section
208. and line from the cursor position to the end of the line click the Clear to end pushbutton To move to the right one command word or token click the Forward pushbutton To move to the left one command word or token click the Backup pushbutton To insert characters at the cursor position press the insert key on your keyboard to change to insertion mode and then type the characters to be inserted To replace characters at the cursor position press the insert key on your keyboard to change to replacement mode and then type the replacement characters To delete characters to the left of the cursor position press the lt BACKSPACE gt key on your keyboard When the cursor arrives at the beginning of a command word or token the softkey labels change to display the possible choices at that point in the command When moving by words to the left or right the Forward pushbutton becomes gray and provides no function when the cursor reaches the end of the command string The Backup pushbutton becomes gray and provides no function when the cursor reaches the beginning of the command 48 Chapter 3 Using the emulator analyzer interface Entering Commands To edit the command line using the command line popup menu To position the cursor at a specific character place the mouse pointer on the character and click the select mouse button To clear the command line position the mouse pointer within the Command Line entry area press
209. and methods and requirements for starting the demo program read the READMEDEMO and README files in the directory named usr hp64000 demo debug_env hp64747 To load and run the complete demo program your emulation system must have at least 256K of emulation memory obtained by installing at least one SRAM on the emulation probe Refer to Chapter 18 Installation and Service for instructions on how to install SRAM memory modules To build programs Create source files in C or MC68020 MC68030 EC030 assembly language using a text editor Translate the C source files to relocatable object code using a compatible C cross compiler Translate the assembly source files to relocatable object files using a compatible MC68020 or MC68030 EC030 cross assembler 99 Chapter 4 Using the Emulator The Emulator And Its Applications 4 Link all relocatable object files with the linker loader to produce an absolute object file in the IEEE 695 format The loaders for the HP language tools produce a file with the extension x for IEEE 695 format If you want to produce an absolute file in the HP64000 format specify the appropriate loader options The IEEE 695 format is better for emulation tasks Optional Build an SRU symbol database before entering emulation by entering the srubuild lt absfilename gt command If you re planning to load programs into emulation or target system memory you need to have your files in a forma
210. and will start the Graphical User Interface Otherwise emul700 starts the Softkey Interface You should include an ampersand amp with the command to start the Graphical User Interface as a background process Doing this frees the terminal window where you started the interface so that the window may still be used 5 Optionally start additional Graphical User Interface windows into the same emulation session by repeating the previous step You can also choose to use the Softkey Interface under X Windows but you must include a command line argument to emul700 to override the default Graphical User Interface Start the Softkey Interface by entering emul700 u skemul lt logical name gt Example Suppose you have discovered that the logical name for a 68030 emulator connected to the LAN is m68030 To start the Graphical User Interface and begin communicating with that emulator enter assuming your PATH includes HP64000 bin emul700 m68030 After a few seconds the Graphical User Interface Emulator Analyzer window should appear on your screen The window will be similar to the following 623 Chapter 18 Installation and Service Verifying the Installation File Display Modify Execution Breakpoints Trace Settings HPB1479 19312 C 5 1 23Jul92 Unreleased 66836 66EC83 GRAPHICAL USER INTERFACE A Hewlett Packard Software Product Copyright Hewlett Packard Co 1991 All Rights Reserved Reproduction adaptatio
211. ange pointing to other translation tables there is no way to automatically update the deMMUer It will continue to provide reverse translations for the setup that existed at the time you issued the load demmuer command Issue the load demmuer command again Read Using the deMMUer in Chapter 10 Using 68030 Memory Management to understand how the deMMUer selects the physical addresses it will translate Chapter 9 Solving Problems If you can t break into the monitor after you enable the MC68030 MMU If you can t break into the monitor after you enable the MC68030 MMU Enter the commands reset and then break If your MC68030 is now running in the monitor look at your MMU Tables or the transparent translation register that maintains 1 1 mapping for your foreground monitor The mapping has failed Modify your MMU tables or the transparent translation register to obtain the 1 1 mapping for the address space occupied by the foreground monitor If you are mapping a page size that is smaller than 4 Kbytes make sure that you have provided 1 1 address mappings for all of the pages that contain monitor code Refer to the end of Chapter 10 Using 68030 Memory Management for a detailed example that discusses how to solve a can t break into monitor problem 312 Part 3 Reference 313 Part 3 Reference In This Part This part provides detailed information on aspects
212. anslated by two entries under any one of the four function codes for example three de MMUer table entries needed for user program space you will see the out of resources message The deMMUer will not provide any reverse translations for MMU tables under any of the undefined function codes The emulator does not rigidly enforce the splitting of the resources into equal sizes for each function code If the emulation memory map contains entries referring to specific function codes they will take precedence and may cause the de MMUer to contain only entries of that type 341 Chapter 10 Using MC68030 Memory Management Solving Problems Solving Problems Your program and emulator may be running fine until you turn on the MMU Then program execution may fail You may not be able to use features of your emulator How can this happen It can happen if the MMU mapping tables are incorrect When the MMU turns on and starts managing memory by performing tablewalks in tables that are invalid pages of logical memory may overwrite your stack space your emulation monitor or any other address space making your entire system unusable If this happens note where the program is executing The stack may be inaccessible The monitor with its emulation feature set may be inaccessible The vector table may be placed in guarded memory Program data space may become inaccessible Using the display mmu_translations command to overcome plu
213. apter 11 Emulator Commands for specifics on expression syntax Expressions in Trace Commands When modifying the analysis specification you can enter expressions that consist of values symbols and operators Values Values are numbers in hexadecimal decimal octal or binary These number bases are specified by the following characters Bb Binary example 10010110b QqOo Octal example 3770 or 377q D d default Decimal example 2048d or 2048 207 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Hh Hexadecimal example 0a7fh You must precede any hexadecimal number that begins with an A B C D E or F with a zero Don t care digits may be included in binary octal or hexadecimal numbers and they are represented by the letters X or x A zero must precede any numerical value that begins with an X Symbols A symbol database is built when the absolute file is loaded into the emulator Both global and local symbols can be used when entering expressions Global symbols are entered as they appear in the global symbols display When specifying a local symbol you must include the name of the module anly c as shown below anly c cmp_function Operators Analysis specification expressions may contain operators All operations are carried out on 32 bit two s complement integers Values which are not 32 bits will be sign extended when expression evaluation occurs The
214. are inactivated When you clear breakpoints the entire breakpoint list is deleted and memory is restored to its original values disable This option turns off the breakpoint capability enable This option allows you to modify the breakpoint specification Modify memory values to the ASCII character string given by lt STRING gt A quoted ASCII string which may include the following special characters null 0 newline n horizontal tab t backspace b carriage return r form feed f backslash single quote V bit pattern OOO where OOO is an octal number This option allows you to set a breakpoint that is in effect only the first time it is hit during execution Itis automatically replaced by the target program instruction when it is hit Temporary breakpoints the default breakpoints differ from permanent breakpoints which can only be set if your version of HP 64700 system firmware is A 04 00 or greater This option lets you specify a range of memory locations to be modified This lets you specify values to which the selected memory locations or register will be changed This lets you modify memory in word format 406 Chapter 11 Emulator Commands modify Examples modify configuration lt RETURN gt modify keyboard_to_simio lt RETURN gt modify memory OOAOH words to 1234H lt RETURN gt modify memory DATA1 bytes to OE3H 01H 08H lt RETURN gt modify memory DATA1l thru DATA1
215. ark If you enter only the exclamation mark a command process is created and the command shell is started Exiting the command shell by typing exit returns you to the emulator analyzer interface You can precede and follow your UNIX command with exclamation marks This allows you to include options with your command such as in_browser executes your UNIX command and provides results in a scrollable window instead of a terminal window default display wait_for_exit waits for your UNIX command to finish its execution before allowing the next command to begin This is useful for commands that require extra time to complete such as make no_prompt_ used to speed operation when you don t need the results before_exit display For example this will complete a command without prompting for the press of the RETURN key in commands that would normally prompt for the RETURN key Examples Show the values of the current environment variables set more lt RETURN gt Edit a command file previously created with the command log_commands to lt FILENAME gt Ivi lt FILENAME gt lt RETURN gt See a directory listing in a browser window ls in browser Make files in a directory and hold off loading the executable file until the make has finished make wait_for_exit load lt file gt 95 Chapter 3 Using the emulator analyzer interface Accessing the Operating System Examples
216. as or higher than the line number specified for the beginning of the trace disassembly 387 Chapter 11 Emulator Commands DISPLAY TRACE low_word mnemonic offset_by status Causes inverse assembly to begin with the opcode stored in the low word of the long word at the specified trace memory line number Lists trace information with opcodes in mnemonic format This option allows you to offset the listed address value from the address of the instruction By subtracting the offset value from the physical address of the instruction the system makes the listed address match that given in the assembler or compiler listing This option is also useful for displaying symbols and source lines in dynamically relocated programs Note that when using the set source only command the analyzer may operate more slowly than when using the set source on command This is an operating characteristic of the analyzer When you use the command set source on and are executing only assembly language code not high level language code no source lines are displayed The trace list will fill immediately with the captured assembly language instructions When using set source only no inverse assembled code is displayed Therefore the emulation software will try to fill the display with high level source code This requires the emulation software to search for any captured analysis data generated by a high level language statement In conc
217. at can be allocated by the memory mapper Memory in memory slot 1 is divided into two equal blocks If you have only one emulation memory module place it in memory slot 0 If you have two memory modules of different sizes place the memory module with the greatest capacity in memory slot 0 to take advantage of the way memory slot 0 and memory slot 1 are divided by the emulator For example if you install a 1 Mbyte module in memory slot 0 and a 256 Kbyte module in memory slot 1 then the emulator will provide four 256 Kbyte blocks of memory in memory slot 0 and two 128 Kbyte blocks of memory in memory slot 1 600 Chapter 18 Installation and Service Installing Hardware Observe antistatic precautions listed on the fifth page of this chapter 3 Install emulation memory modules on the emulator probe There is a cutout at one end of the memory modules so they can only be installed the correct way To install a memory module 1 Align the groove in the memory module with the alignment rib in the connector 2 Align the cutout in the memory module with the projection in the connector 3 Place the memory module into the connector groove at an angle 4 Firmly press the memory module into the connector and make sure it is completely seated 5 Rotate the memory module forward so that the pegs on the connector fit into the holes on the memory module 6 Make sure the release tabs at each end of the connector snap around t
218. ata communication switch settings are correct and that all emulator analyzer interface software has been loaded properly Cycle power on the emulator then try starting up the emulation session again Initializing emulator with default configuration Cause This is a status message The host system started the emulation session and initialized the emulator using the default configuration The emulator is probably operating correctly Initializing user interface with default config file Cause This is a status message The host system started the emulation session and emulator analyzer interface using the default configuration file The emulator is probably operating correctly Insufficient emulation memory Error 21 Cause You tried to map more emulation memory than is available Action Check your map specification Do not try to map more emulation memory than is available in your system 482 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Insufficient emulation memory memory map may be incomplete Cause You can map only the amount of emulation memory available in your emulator Trying to map additional unavailable memory may cause information to be missing from your memory map Action Modify your configuration and update the memory map to correctly reflect the amount of emulation memory available Invalid address lt address gt Error 310 Cause You specified an invalid address value as an argu
219. atching the new dialog box the dialog box filter to be read from the directory 65 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface To use the Directory Selection dialog box Label informs you of Emulator Analyzer Directory Selection the type of list 3 displayed F Previous Working Directories A list of predefined or m68340 dirSelectSub in the file previously accessed t fusrfib X11 fapp defaults HP64_Softkey directories 4 j and add your own custom definition to your Xdefaults f Use the File gt Edit gt File pulldown to edit these files A single click on a directory name from the list highlights the name and copies itto KKHP64000 demo emul hp64751 the text entry area A double click chooses the directory and closes the dialog box Text entry area Directory name is either copied here from the recall list or entered directly Clicking this button Clicking this button Clicking this button chooses the directory chooses the directory cancels the directory displayed in the text displayed in the text selection operation and entry area and closes entry area but keeps the closes the dialog box the dialog box dialog box on the screen instead of closing it 66 Chapter 3 Using the emulator analyzer interface Using display control features of the Softkey Interface Using display control features of the Softkey Interface Use
220. ation question 2 Answer drive to the Should CMBT drive or receive Trig2 question 3 Answer receive to the Should Analyzer drive or receive Trig2 question 4 Use the arm_trig2 option to the trace command To arm the emulation bus analyzer on signal from BNC Using the command line enter modify configuration 1 Answer yes to the Modify interactive measurement specification question 2 Answer drive to the Should BNC drive or receive Trig2 question 3 Answer receive to the Should Analyzer drive or receive Trig2 question 4 Use the arm_trig2 option to the trace command 251 Chapter 6 Making Coordinated Measurements Making Example Measurements j Making Example Measurements The following tasks show you how to e Start a simultaneous program run on two emulators e Trigger one emulation bus analyzer with another e Break to the monitor on an analyzer trigger signal To start a simultaneous program run on two emulators Before performing these steps both emulators must be connected to the CMB To connect the CMB see To connect the coordinated measurement bus CMB at the beginning of this chapter Enable the CMB on each emulator Reset each emulator Set the run address for the first emulator Set the run address for the second emulator Start program execution on both emulators The procedure for starting a simultaneous trace on tw
221. ator interface but your attempt failed because the emulator is already in use by someone else Action Current user must release the emulator 475 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Emul700dmn continuation failed Cause Communication between the emulator and the host system to continue the emulation session failed Action Check the data communication switch settings on the rear panel of the HP 64700 series emulator If necessary refer to the HP 64700 Installation Service Guide Emul700dmn executable not found Cause The emulation session could not begin because the host system could not locate the HP 64700 emulator daemon process executable Action Make sure that software installation is correct Then try starting the emulator again Emul700dmn failed to start Cause The emulation session could not begin because the host system could not start the HP 64700 emulator daemon process Action Make sure there is sufficient disk space under usr hp64000 Make sure the host system is operating properly that all emulator analyzer interface software has been loaded correctly and the data communication switch settings on the emulator rear panel match the settings in the usr hp64000 etc 64700tab net or 64700tab file Emul700dmn message too large Emul700dmn message too small Emul700dmn queue and or semaphores missing Emul700dmn queue failure Emul700dmn error in file operation Emul700d
222. atus This displays the emulator and trace status screen thru EXPR Allows you to specify a range of addresses for which you want data display Typically you use this to display the contents of an array You can display both single dimensional and multi dimensional arrays Arrays are displayed in the order specified by the language definition typically row major order for most Algol like languages Including the operator allows you to specify an address range as an offset from the base address specified in EXPR trace This displays the current trace list lt TYPE gt Meaning byte Hex display of one 8 bit location word Hex display of one 16 bit location long Hex display of one 32 bit location int8 Display of one 8 bit location as a signed integer using two s complement notation intl6 Display of two bytes as a signed integer using two s complement notation int32 Display of four bytes as a signed integer using two s complement notation u_int8 Display of one byte as an unsigned positive integer u_intl6 Display of two bytes as an unsigned positive integer u_int32 Display of four bytes as an unsigned positive integer char Displays one byte as an ASCII character in the range 0 127 Control characters and values in the range 128 255 are displayed as a period 375 Chapter 11 Emulator Commands display lt TYPE gt Examples See Also Specifies the format in which to di
223. available operators are listed below in the order of evaluation precedence Parentheses are also allowed in expressions to change the order of evaluation Unary two s complement unary one s complement The unary two s complement operator is not allowed on constants containing don t care bits 1 Integer multiply divide and modulo These operators are not allowed on constants containing don t care bits Addition subtraction These operators are not allowed on constants containing don t care bits amp Bitwise AND Bitwise inclusive OR 208 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Values symbols and operators may be used together in analysis specification expressions For example if the local symbol exists the following is a valid expression module c symb 0b67dh amp 0fff00h However you cannot add two symbols unless one of them is an EQU type symbol Emulation Bus Analyzer Trace Signals The emulation bus analyzer has 80 channels available for capturing information 64 of those channels are used for the instruction bus and data bus and the remaining 16 channels monitor other processor signals or synthesized signals and are collectively called the status lines You can use status values as trigger or storage qualifiers For example you may want to capture processor reads to a certain address but not processor writes You can use a status value to quali
224. b keys allow you to move the cursor on the command line forward or backward The Clear line key or CTRL e clears from the cursor position to the end of the line The CTRL u key clears the whole command line Softkey Interface Conventions Example Softkey Interface commands throughout the manual use the following conventions bold Commands options and parts of command syntax bold italic Commands options and parts of command syntax which may be entered by pressing softkeys normal User specified parts of a command Represents the UNIX prompt Commands which follow the are entered at the UNIX prompt lt RETURN gt The carriage return key Chapter 1 Getting Started Menu bar Action keys Entry buffer The Graphical User Interface File Display Modify Execution Breakpoints Trace Settings void update_system update system variables Entry buffer recall extern void interrupt_sim simulate an interrupt button extern void do_sort sets up ascii array and calls maint Sras init_system Display area proc_spec_init while true Scroll bar S update_system Status line Command line Command line entry area Softkey pushbuttons num_checks interrupt_sim amp num_checks if graph graph_data proc_specific N68ECO30 Running in monitor display memory main mnemonic run trace step display modify i brea
225. between any one logical address and its corresponding physical address may change many times Your HP emulator will let you run a paged dynamic system but the analyzer will not be able to provide support for such features as symbolic addresses or display of corresponding source files The deMMUer cannot detect changes in the MMU mappings The longer the system runs the further out of date the deMMUer will become Of course the analyzer will still be able to show activity captured at physical addresses By experimenting with several starting points for the inverse assembler you can obtain a trace list with activity inverse assembled into an equivalent assembly language listing display trace disassemble_from_line_number lt NO gt low_word Where Is The MMU The MMU is located between the CPU core and the external address bus The program counter always contains logical address values When the MMU is turned off the program counter value is placed directly on the address bus to access an address in physical memory When the MMU is turned on the MMU accepts the logical address value and translates it by using its translation tables to a physical address The physical address from the MMU is placed on the processor address bus 319 Chapter 10 Using MC68030 Memory Management Understanding Emulation and Analysis Of The MC68030 Memory Management Unit Using Function Codes The MMU lets you use function codes as the first le
226. ble and for an explanation of those codes This option lets you display a list of all global symbols in memory Global symbols are symbols declared as global in the source file They include procedure names variables constants and file names When the display global_symbols command is used the listing will include the symbol name and its logical address This option lets you display all the children of a given symbol Local symbols of SYMB are the ones that are children of the file and or scope specified by SYMB That is they are defined in that file or scope Displaying the local symbols sets the current working symbol to the one specified This option represents the symbol whose children are to be listed See the SYMB syntax diagram and the SRU User s Guide for more information on symbol hierarchy and representation This option allows you to display the contents of memory This option allows you to offset the listed breakpoint address value from the actual address of the breakpoint By subtracting the offset value from the breakpoint address the system can cause the listed address to match that given in the assembler or compiler listing This allows you to specify that the addresses to be displayed are addresses in physical memory This option lets you display the Terminal Interface screen You must display the Terminal Interface screen to view the output of any Terminal Interface pod commands you have used
227. bols display local_symbols_in display memory display pod_command display local_symbols_in display memory display mmu translations display registers display simulated_io display software_breakpoints display status display trace end help load lt absolute_file gt load configuration load demmuer load emul_mem load trace load trace_spec load user_memory log_commands l This option is not available in real time mode This is only available when simulated I O is defined These commands are not displayed on softkeys This option is not available in real time mode if addresses are in target memory or in emulation memory that is not dual port modify configuration modify keyboard_to_simio modify memory modify register modify software_breakpoints name_of_module performance_measurement_end performance_measurement_init performance_measurement_run pod_command pwd print working directory pws print working symbol reset run set specify step stop_trace store_demmuer store memory store trace store trace_spec trace wait gt These commands are available only to the MC68030 emulator and only when its MMU is enabled 360 Example See Also Chapter 11 Emulator Commands break break break y lt RETURN gt This command causes the emulator to leave user program execution and begin executing in the monitor The behavior of break depend
228. c documentation if you need specific information about mec68k To get db68k to work with mcec68k output you need to add the following to your profile HP64_DEBUG_PATH lt path to source files gt export HP64_DEBUG_PATH If this is not done the debugger cannot find the high level C source files 544 16 Specifications and Characteristics Electrical specifications and characteristics for the MC68020 and MC68030 EC030 emulators 545 Chapter 16 Specifications and Characteristics Processor Compatibility Processor Compatibility HP 64747 Compatible with the Motorola MC68030 HP64747A requires MMU be disabled HP 64747B supports MMU enabled and MC68EC030 processors and with any processors that meet all specifications of the MC68030 or MC68EC030 processors HP 64748 Compatible with the Motorola MC68020 and MC68EC020 processors and with any processors that meet all specifications of the MC68020 or MC68EC020 processors Electrical Maximum clock speed HP 64747 the maximum external clock speed is 40 MHz No wait states are required for any memory accesses in asynchronous bus mode In synchronous and burst modes emulation memory requires one wait state for all clock speeds Target system memory requires one wait state in synchronous and burst modes for clock frequencies above 25 MHz HP 64748 the maximum external clock speed is 33 MHz No wait states are required for target system memory
229. cated near the bottom right hand corner of the Command Line area Get specific help about a command to be entered on the command line type help lt command_name gt The lt command_name gt parameter can be entered from the softkeys after you type help You can type a question mark in place of the keyword help When you use the help command information about the command you selected including syntax and sample usage scrolls onto the screen The Help Index lists topics covering operation of the interface as well other information about the interface When you choose a topic from the Help Index the interface displays a window containing the help information You may leave the window on the screen while you continue using the interface 52 Chapter 3 Using the emulator analyzer interface Entering Commands To display the error log Choose DisplayError Log Position the mouse pointer on the status line press and hold the select mouse button and then choose Display Error Log from the popup menu Using the command line enter display error_log The last 100 error messages that have occurred during the emulation session are displayed To display the event log Choose DisplayEvent Log Position the mouse pointer on the status line press and hold the select mouse button and then choose Display Event Log from the popup menu Using the command line enter display event_log The last 100 events that have
230. ce on symbols on command High level source lines are intermixed with assembly language instructions in mnemonic memory and trace displays Examples To turn ON source lines in displays and display memory in mnemonic format set source on symbols on lt RETURN gt display memory main mnemonic lt RETURN gt File Display Modify Execution Breakpoints Trace Settings A xtern void interrup nt i mulate an interrupt xt id do_sort F up ascii array and calls maint j 2 pr main main 4E560000 LINK W AG 0000 aeaeecr6 2F A MOVE L A2 A aaaeecrs 2470808781 MOVEA L 000781A8 AZ 97 init_system aeae2cre 14BC8841 MOVE B 1 A2 pogazDaz2 4EB9000A32 JSR init init_system 98 pr initt l papazeDag 4EB9000039 JSR p proc_spec_init aaae208E 4E71 NOP STATUS M68ECO30 Running in monitor a j _ BE BERR BRRR 123 Chapter 4 Using the Emulator Accessing Processor Memory Resources To display symbols without source lines e Choose Settings Source Symbol Modes Symbols e Using the command line enter the set source off symbols on command Symbols are i
231. ce will issue an error message if it cannot find a source file for the address The interface will choose the vi editor as its default editor unless you specify another editor by setting an X resource Refer to Chapter 13 Setting X Resources for more information about setting this resource You must load symbols before most edit commands are available because symbol information is needed to be able to locate the files 106 Chapter 4 Using the Emulator Loading and Storing Programs Examples Choosing this menu item brings up a terminal window with an edit session open on the file where the highlighted symbol is defined To edit a file that defines a symbol eS ee OE File Display Modify Execution Breakpoints Trace Settings Action keys l lt Demo gt Disp Sre Trace Run it Your Key gt Make Disp Sre Prev Run Xfer til Ni Break o Global symbols in Zusr hp64000 demo debug_env hp64747 ecs x Step Source Step Asm Procedure symbols Procedure name Address range _ Segment Offset initsimio 00002456 BAA24863 env BAIC nterrupt_sim 84862064 AOOZEO I prog 0074 kN1 00002720 BAAA275D env B2EG lse gagd2e7A4 BAAO2825 env 436A ain ANNATE ez HA02059 prog alalla malloc Global Symbols Display gaga4A77 libe paga memchr QG084BF libc aaa memcpy Dis
232. ceding exclamation point to identify them as shell commands Using Shell Variables with Command Files Command files may contain shell variables Command files only support shell variables beginning with followed by an identifier An identifier is composed of an underscore or a letter followed by zero or more letters digits or underscores Identifiers may follow the symbol directly or follow the enclosed in braces An identifier must be enclosed in braces if any letter digit or underscore that is not part of the identifier immediately follows the identifier Otherwise the following text will be interpreted as part of the identifier You can examine any shell variables defined for your environment by using the UNIX env command Positional shell variables such as 1 2 and so on are not supported Neither are special shell variables such as and so on To illustrate how shell variables work consider the shell variable S defined to be the string soft Suppose you wanted to use the shell variable to reference the directory users softkey The reference users S key would produce the desired directory name However the reference users Skey would cause the shell variable Skey to be searched for 73 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files Restrictions on Commands There are certain commands that you
233. change listed addresses so that they match addresses in compiler or assembler listings Whether source lines assembly language instructions or symbols are included in the display depends on what you choose with the Settings Source Symbols Modes or Settings Display Modes pulldown menu items Use the set symbols on command to display symbol information for addresses in the memory mnemonic display If symbols are loaded into the interface the default is to display source only 129 Chapter 4 Using the Emulator Accessing Processor Memory Resources Examples To display program memory for the main part of the demo program enter main in the entry buffer and choose Display gt Memory Mmemonic or enter on the command line display memory main mnemonic Display the write_hdwr routine for the update_sys program in mnemonic format with symbols in the address column set symbols on display memory update_sys write_hdwr thru write_hdwr end mnemonic To return to the previous mnemonic display Choose DisplayMemory Mmemonic previous This command is useful for quickly returning to the previous mnemonic memory display For example suppose you are stepping source lines and you step into a function that you would like to step over You can return to the previous mnemonic memory display set a breakpoint the line following the function call and run the program from the current program counter 130 Chapter 4 U
234. chosen Dialog boxes support the use of the keyboard as well To direct keyboard input to a dialog box you must position the mouse pointer somewhere inside the boundaries of the dialog box That is because the interface keyboard focus policy is set to 56 m Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface pointer That just means that the window containing the mouse pointer receives the keyboard input In addition to keyboard mnemonics you can also specify keyboard accelerators which are keyboard shortcuts for selected menu items Refer to Chapter 13 Setting X Resources and the Softkey Input scheme file for more information about setting the X resources that control defining keyboard accelerators To choose popup menu items Move the mouse pointer to the area whose popup menu you wish to access If a popup menu is available the mouse pointer changes from an arrow to a hand Press and hold the select mouse button After the popup menu appears while continuing to hold down the mouse button move the mouse pointer to the desired menu item Release the mouse button to select the menu choice If you decide not to select a menu item simply continue to hold the mouse button down move the mouse pointer off of the menu and release the mouse button The following popup menus are available in the Graphical User Interface e Mnemonic Memory Display e Breakpo
235. ck Low 10 lt 2 40 ns 48t DSACKx Asserted to BERR HALT Asserted 15 11 ns 53 Data Out Hold from Clock High 0 oe 0 Ss ns 55 R W Asserted to Data Bus Impedance Change 20 10 ns 56 RESET Pulse Width Reset Instruction 512 512 Clks 57 BERR Negated to HALT Negated Rerun 0 in 2 ns 58 BGACK Negated to Bus Driven 1 Clks 59 BG Negated to Bus Driven 1 ua 1 Clks 558 Chapter 16 Specifications and Characteristics HP 64748 Electrical Specifications Notes 1 This number can be reduced to 5 nanoseconds if strobes have equal loads 2 If the asynchronous setup time 47 requirements are satisfied the DSACKx low to data setup time 31 and DSACKx low to BERR low setup time 48 can be ignored The data must only satisfy the data in to clock low setup time 27 for the following clock cycle BERR must only satisfy the late BERR low to clock low setup time 27 for the following clock cycle 3 This parameter specifies the maximum allowable skew from DSACKO to DSACK1 asserted or DSACK1 to DSACKO asserted specification 47 must be met by DSACKO or DSACK1 4 This specification applies to the first DSACKx signal asserted In the absence of DSACKx BERR is an asynchronous input using the asynchronous input setup time 47 5 DBEN may stay asserted on consecutive write cycles 6 The minimum values must be met to guarantee proper operation If this maximum valu
236. ck the Apply to Emulator button in the top level dialog box This loads the configuration changes into the emulator Status text to the right shows whether the load was successful You can apply configuration changes to the emulator at any time even while section dialog boxes are open This lets you verify changes without closing section dialog boxes The Apply to Emulator button does not store configuration changes to a file When you exit the configuration interface and there are configuration changes that have not been stored to a file you are asked whether you want to store the changes exit without storing or cancel the exit 282 Chapter 8 Configuring the Emulator Using the Configuration Interface To store configuration changes to a file e Choose File Store from the pulldown menu in the top level configuration interface window and use the file selection dialog box to name the configuration file e If you are using the Softkey Interface the last configuration question Configuration file name lets you name the file to which configuration information is stored If you don t enter a name configuration information is saved to a temporary file which is deleted when you exit the interface and release the emulation system When modifying a configuration using the Graphical User Interface you can store your answers at any time Configuration information is saved in a file with the extension EA This
237. command should be used after starting a trace Use this command so that a copy or display command following a trace command will not execute until states from the new trace are available for copy or display If you press lt CTRL gt c to stop execution of a command file while the wait command is being executed from the command file the lt CTRL gt c will terminate the wait command but will not terminate command file execution To do this press lt CTRL gt c again 74 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files Placing Comments in Command Files As with any source file comments in command files can help to explain the operation of the command file and record creation and modification information You can place comments in a command file either by using a text editor or by entering the comment as a command in the interface command line while logging commands A special character the pound sign causes the interface to ignore comments in command files and also allows you to log comments to a command file from the command line A comment may appear on a line by itself or it may follow a command on a line Commands cannot appear on a line after the comment character because they will be interpreted as part of the comment Continuing Command File Lines You can continue command file lines across several physical text file lines This is done by using a continuation character
238. command and it loads that logical address into the program counter If you attempt to modify a memory location that is write protected by the MMU the access will fail To avoid this modify the MMU tables to remove write protection from the memory you want to modify 322 Chapter 10 Using MC68030 Memory Management Seeing details of the MMU Translations Seeing details of the MMU Translations The following paragraphs discuss emulator displays that help you understand translations made by your MMU There are three displays each giving a different level of detail of the MMU translations e The present address mappings in your MMU tables e The translation table entries for a single logical address e The contents of a single level of the translation tables pointed to by a selected logical address How the emulator helps you see the details of the MMU mappings To see all of the logical to physical translations presently mapped choose Display MMU Translations from the pulldown menu or enter the command display mmu_translations The emulator will read the present state of the translation tables and show all of the valid mappings in those tables The display will be similar to the following MMU Mappings FUNCTION LOGICAL ADDRESS PHYSICAL ADDRESS CODE Lower Upper Lower Upper user data 0 7FFF 00000000 00007FFF 8000 1FFFF 00028000 0003FFFF 7FFF8000 TEFFEFFE 00008000 OOOOFFFF FFFE8000 FFFFFFFF 00010000 00027FFF user
239. composition 322 mapping 1 1 for use with MC68040 296 298 restrictions when using 321 where is it located 319 MMU enabled how it affects the analyzer 203 206 using the emulator with 164 170 MMU mappings details of a single address 326 how the emulator obtains them 324 listing the present mappings 323 modifying for monitor 345 obtaining a shorter list of 324 mnemonic format 129 mnemonic memory display 14 how to return to the previous display 130 modify configuration 403 memory 404 register 405 software_breakpoints 405 modify command options 402 408 modify configuration command 101 245 247 251 modify interactive measurement specification 247 251 modify memory command 133 Modify Register dialog box operation 64 modify registers 146 modify software_breakpoints clear command 154 modify software_breakpoints disable command 150 modify software_breakpoints enable command 150 modify software_breakpoints set command 150 152 module duration measurements SPMT 260 module usage measurements SPMT 260 672 Index monitor break on analyzer trigger signal 254 break to 139 to map 1 1 for use with MC68040 MMU 296 298 Motif HP 9000 700 requirements 578 mouse button bindings 9 multi window copy and paste from entry buffer 62 copy and paste to entry buffer 59 nesting command files 74 79 NORMAL key 359 392 NOT TAKEN in trace list 190 notes CMB EXECUTE and TRIGGER signals 238 CMB interaction
240. connected to the CMB This signal can be used to trigger an analyzer It can be used as a break source for the emulator READY The CMB READY line is high true It is an open collector circuit and performs an ANDing of the ready state of enabled emulators on the CMB Each emulator on the CMB releases this line when it is ready to run This line goes true when all enabled emulators are ready to run providing for a synchronized start When CMB is enabled each emulator is required to break to background when CMB READY goes false and will wait for CMB READY to go true before returning to the run state When an enabled emulator breaks it will drive the CMB READY false and will hold it false until it is ready to resume running When an emulator is reset it also drives CMB READY false 237 Chapter 6 Making Coordinated Measurements The Elements of Coordinated Measurements EXECUTE The CMB EXECUTE line is low true Any HP 64700 on the CMB can drive this line It serves as a global interrupt and is processed by both the emulator and the analyzer This signal causes an emulator to run from a specified address when CMB READY returns true Comparison Between CMB and BNC Triggers The BNC trigger signal is a positive rising edge TTL level signal The BNC trigger line can be used to either drive or receive an analyzer trigger or receive a break request for the emulator The CMB trigger and BNC trigger lines have the same logical purpose to
241. copy and paste from the entry buffer to the command line entry area for information about pasting the contents of the entry buffer into the command line entry area 59 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface Example To paste the symbol plus offset mmutest O0000000C into the entry buffer from the interface display area position the mouse pointer over the symbol and then click the paste mouse button ewlett Packard Emulator Analyzer hplsdyu m68030 File Display Modify Execution Breakpoints Trace Settings Help Action keys Run Demo Make Load Abs Display Sre Run Xfer Until Step Source Opcode or Status w Source Lines symbols mnemonic w symbols SE mmutest _main A1 D mmutest 00AAAAAZ 4 D4 mmutest 0AAAAA4 Al AS mmutest 88880086 DA A3 agaaaeaa log supr data byte rd ds32 mmutest H4080008 A2 08 gt mmutest BG88080A oS A mouse click agagaeaa A295540C log supr data long rd ds32 causes the interface agagaaaa A295540C log supr data long rd ds32 cp4Bcc17 W ABAZAEA to expand the aBBan000 A295557E log supr data long wr ds32 1 1 O include og supr data byte r s highlight t lud agagagaa 1 data b d ds32 mmutest 0000018 MOVE L O02 06 A5S 07 W 2 the symbol ao02800E F897 cp4 condition cir word wr ds32 mmutest 0000000C aaa2saaa FEFF cp4 response cir word rd ds32 and paste the sy
242. ction key Or using the command line enter the name of the command file mematreg lt RETURN gt A command file dialog box appears or a prompt appears in the command line Move the mouse pointer to the dialog box text entry area type A7 and click on the OK button Or if the prompt is in the command line A7 lt RETURN gt Memory sp bytes blocked update A Qa887F 78 77 Ba 67 96 C8 66 86 23 22 Sosa ees A 8G087F 78 7F Ba 66 66 66 41 AB G887F 88 87 Ba 96 CH 86 8 88 Don Woar Se wot E 98087F88 8F 66 68 7F 94 66 86 2D 1c ee ee ee a 087F 98 97 Ba 67 8 C8 66 48 7F FB eats 887F 98 9F Ba Ba 23 16 66 66 848 48 R 887FAG A 66 66 46 66 66 46 48 087F AB AF 66 88 88 46 BE BA A ie a cate 887F Ba B oa 66 46 36 86 A z 8 64687F B8 BF 646 66 48 15 66 66 BB Al aae7FCa C 646 A 15 66 646 48 rare 9a087FC8 CF Ba 66 46 40 86 6 87 CE Sg 9 a87F 08 07 Ba 86 86 86 86 86 B CA oh ten tartar ae fe 98687F08 0F Ba 8 36 C8 B 23 22 TA E Sia 88087FEG E Ba 8 81 AGB Ba BF J CA Revers E E 9 087FE8 EF Ba 8 88 88 86 Ba 76 54 we Bee Ao OVD QG87FFO F Ba 8 F Fe 66 z 3C ay aaa S lt 24 Chapter 1 Getting Started Step 12 Patch assembly language code Step 12 Patch assembly language code The Patch action key lets you patch code in your program 1 With main still in the entry buffer click on the Run Xfer til action key 2 To display memory w
243. ction keys Step 1 Install the software from the media The tape that contains the Graphical User Interface software may contain several products Usually you will want to install all of the products on the tape However to save disk space or for other reasons you can choose to install selected filesets If you plan to use the Softkey Interface instead of the Graphical User Interface you can save about 3 5 megabytes of disk space by not installing the filesets suffixed XUI Also if you choose not to install the Graphical User Interface you will not have to use a special command line option to start the Softkey Interface Refer to the Software Installation Notice for software installation instructions After you are done installing the software return here 615 Chapter 18 Installation and Service Installing Sun SPARCsystem Software j Step 2 Start the X server and OpenWindows If you are not already running the X server do so now The X server is required to run the Graphical User Interface because it is an X application Start the X server by entering usr openwin bin openwin at the UNIX prompt Consult the OpenWindows documentation if you do not know about using OpenWindows and the X server Step 3 Set the necessary environment variables The DISPLAY environment variable must be set before the Graphical User Interface will start Also you should modify the PATH environment variable to include the u
244. ctly and the data communication switch settings on the emulator rear panel match the settings in the usr hp64000 etc 64700tab net or 64700tab file Unexpected software breakpoint Error 620 Unexpected step break Error 621 Cause System failure Action Run performance verification pv command Unknown expression type Cause While entering your command you included an unknown expression type Action See the EXPR command syntax for more information about expressions Then try entering your command again with a known expression type 513 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Unload trace data failed Cause An unexpected error occurred while waiting for a trace to be completed Action End and release the session and then try again Unmatched quote encountered Error 820 Cause In entering a string such as with the echo command you didn t properly match the string delimiters either or For example you might have entered echo set S1 to off Action Reenter the command and string making sure to properly match opening and closing delimiters Note that both delimiters must be the same character For example echo set S1 to off Update HP64700 firmware to version A 03 01 or newer Error 176 Cause The emulator has found that at least one module of your system firmware is too old to be compatible with the emulation firmware Action Update your system
245. cycles Action Use the emulation bus analyzer to determine what exceptions caused the problem and try to work around them Monitor failure no clock input Error 102 Cause The monitor is unable to run because no emulation processor clock is available Action If you are not using a target system plug the emulator probe into the demo board and connect the power cable of the demo board to the HP 64700 Card Cage If you are using a target system make sure the target system has power and the clock in the target is functioning correctly Monitor failure no processor cycles Error 103 Cause The monitor is unable to run because the processor is not running The monitor is unable to determine the cause of the failure Action If running in circuit troubleshoot the target system If running out of circuit reinitialize the emulator and try the procedure again Monitor failure no target power Error 170 Cause You do not have proper power applied to your target system or demo board Action Check the connection from your emulation probe to the target system or demo board If using the demo board be sure you have connected the external power cable Monitor failure slow clock Error 170 Cause The target system is providing target power but no clock signal Action Make sure the clock oscillator is installed correctly 491 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Monitor failure target re
246. d data in fourth results of software performance measurements in the fifth if a software performance analyzer is installed as part of your system etc 39 Chapter 3 Using the emulator analyzer interface Starting the Emulator Analyzer Interface Examples SE Se SHE SHE SHE HE HE HE serial To start the emulator analyzer interface for the 68020 emulator emul700 em68020 lt RETURN gt The em68020 in the command above is the logical emulator name given in the HP 64700 emulator device table file usr hp64000 etc 64700tab net and the rest of each line after a character are ignored The information in each line must be in the specified order with one line HP series 64700 emulator Use blanks or tabs to separate fields 4 4 Logical Processor Remainder of Information for the Channel Type IP address for LAN connections 4 4 em68020 m68020 21 17 9 143 em68020 m68020 myhost dev emcom23 OFF 9600 NONE XON 2 8 If you re currently running the X Window System the Graphical User Interface starts otherwise the Softkey Interface starts The status message shows that the default configuration file has been loaded If the command is not successful you will be given an error message and returned to the UNIX prompt Error messages are described in Chapter 12 Emulator Messages To start the
247. d O Q Yes No Simio Control Address 1 _systemio_buf Simio Control Address 2 SIMIO_CA_ONE Simio Control Address 3 SIMIO_CA_TWO Simio Control Address q SIMIO_CA_THREE Simio Control Address s SIMIO_CA_FOUR Simio Control Address e SIMIO_CA_FIVE File for Standard Input dev simio keyboard File for Standard Output dev simio display File for Standard Error dev simi o display Enable Simio Status Messages Q Yes No 291 Chapter 8 Configuring the Emulator Emulation Configuration Displays Interactive Measurement Specification BNC on Trig CMBT on Trig Neither BNC on Trig2 Neither CMBT on Trig2 Emulator Break Receive Trig Yes No Analyzer on Trig2 Refer to the Simulated I O User s Guide for details on configuring and using simulated I O To give proper answers to these questions refer to Chapter 6 Making coordinated measurements 292 Chapter 8 Configuring the Emulator Mapping Memory Mapping Memory This section of the chapter discusses the details of how to map memory for the emulator its emulation monitor and the target system The Memory Map shown on this page is for an emulator using the background monitor If you decide to use a foreground monitor the first entry you will see in the Memory Map will be the 4 Kbyte address range reserved for the monitor By default the emulator assumes all memory addresses are in RAM space i
248. d Measurements Using Trigger Signals To drive the emulation bus analyzer trigger signal to the BNC connector Choose Modify Emulator Config 1 Inthe top level emulator configuration dialog box click on Interactive Measurement Specification under Analyzer Configuration Sections 2 Answer receive beside the BNC on Trig1 item Using the command line enter modify configuration 1 Answer yes to the Modify interactive measurement specification question 2 Answer receive to the Should BNC drive or receive Trig question You could also drive the emulation bus analyzer trigger to the BNC over the trig2 internal line by specifying that the BNC should receive trig2 and that the emulation bus analyzer should drive trig2 248 Chapter 6 Making Coordinated Measurements Using Trigger Signals To break emulator execution on signal from CMB Choose Modify Emulator Config 1 In the top level emulator configuration dialog box click on Interactive Measurement Specification under Analyzer Configuration Sections 2 Select drive for the CMBT on Trig item Using the command line enter modify configuration 1 Answer yes to the Modify interactive measurement specification question 2 Answer drive to the Should CMBT drive or receive Trig1 question The trig signal is always supplied to the emulator By entering the command trace break_on_trigger e
249. d Status Messages 462 Setting X Resources Setting X Resources 518 To modify the Graphical User Interface resources 520 To use customized scheme files 524 To set up custom action keys 526 To set initial recall buffer values 527 To set up demos or tutorials 529 The SPARCsystem Graphical User Interface and Softkey Interface Using your SPARCsystem keyboard 534 Keyboard template 537 Microtec Language Tools Used With MC68020 and MC68030 EC030 Emulators Using Microtec Language Tools 541 To use the Microtec commands 542 Assembler defaults 543 Linker defaults 543 Librarian defaults 544 The Microtec MCC68K compiler 544 xxii Contents 16 Specifications and Characteristics Processor Compatibility 546 Electrical 546 HP 64747 Electrical Specifications 547 HP 64748 Electrical Specifications 554 Physical HP 64747 and HP 64748 560 Environmental HP 64747 and HP 64748 561 BNC labeled TRIGGER IN OUT HP 64747 and HP 64748 561 Communications HP 64747 and HP 64748 562 xxiii Contents Part 4 Concept Guide 17 X Resources and the Graphical User Interface X Resources and the Graphical User Interface 566 X Resource Specifications 567 Resource Names Follow Widget Hierarchy 567 Class Names or Instance Names Can Be Used 568 Wildcards Can Be Used 568 Specific Names Override General Names 569 How X Resource Specifications are Loaded 570 Application Default Resource Specifications 570 User Defined Res
250. d commands to the software performance analyzer Enter the forward perf lt command_string gt command using the command line ae Examples To send the profile command to the software performance analyzer forward perf profile lt RETURN gt 88 Chapter 3 Using the emulator analyzer interface Accessing the Terminal Interface Accessing the Terminal Interface The Terminal Interface is the name given to a primitive command set that resides in the emulator firmware The Terminal Interface is described in the MC68020 MC6SEC020 and MC68030 MC68EC030 Emulators Terminal Interface User s Guide You may sometimes need to use Terminal Interface commands during an emulation session For example you must use a Terminal Interface command to run the emulator s internal performance verification pv test You can access the Terminal Interface of the emulator directly through pod commands in your high level interface Graphical User Interface or Softkey Interface The high level interface provides a screen to display Terminal Interface output and two ways to use the keyboard to input Terminal Interface commands Terminal Interface commands bypass the high level interface and are executed directly by the emulator firmware For that reason the high level interface can become out of sync with the emulator if you use certain Terminal Interface commands Changing configuration items for example will cause the actual state of
251. d enter the name to be used for the deMMUer file in the File Selection dialog box Using the command line enter store demmuer lt file gt The deMMUer setup file is created by the emulator as it reads the present content of the MMU tables and creates a file of reverse translations appropriate for the deMMUer To load the deMMUer from a deMMuUer setup file Choose Settings gt DeMMUer Load from File and enter the name of the deMMUer file in the File Selection dialog box Choose File gt Load DeMMUer and enter the name of the deMMUer file in the File Selection dialog box Using the command line enter load demmuer lt file gt Files that store setup information for the deMMUer have filenames that end in LL ED i 205 Chapter 5 Using the Emulation Bus Analyzer Analyzing Program Execution When the MC68030 MMU is Enabled To trace program execution in physical address space Choose Settings Demmuer Enable to disable the deMMUer Using the command line disable the deMMUer with the command set demmuer off The Settings Demmuer Enable command in the Graphical User Interface is a switch that enables and disables the de MMUer Now the analyzer will get its address information directly from the emulation address bus This information is useful when you want to see behavior of your operating system 206 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Making Comp
252. d for an explanation of those codes This is used with the specify run from command and represents the address from which the program will begin running This option specifies that the emulator will run from either an expression or from the transfer address when a CMB EXECUTE signal is received This option specifies that a trace measurement will be taken when a CMB EXECUTE signal is received Specifies an address where program execution is to stop The emulator will stop execution of your program when it reaches this address and enter the monitor specify run from START lt RETURN gt specify trace after address 1234H lt RETURN gt cmb_execute help specify 430 EXPR Chapter 11 Emulator Commands step step step lt RETURN gt lt NUMBER gt source EXPR transfer_address aa FCODE y The step command allows sequential analysis of program instructions by causing the emulation processor to execute a specified number of assembly instructions or source lines You can display the contents of the processor registers trace memory and emulation or target memory after each step command Source line stepping is implemented by single stepping through assembly instructions until the next PC is beyond the address range of the current source line When attempting source line stepping on assembly code with no associated sourc
253. d use the deMMUer When you enable symbol display addresses and operands are replaced by the symbols that correspond to those values The symbol information is derived from the SRU symbol database for that command file See Chapter 4 Using the Emulator for more information on SRU and symbol handling High level symbols are those that are available only from high level languages such as a compiler Low level symbols are those that are available from assembly language modules which may include symbols generated internally by a compiler The Settings Source Symbol Modes Settings Display Modes or set symbols command remains in effect until you enter a new Settings Source Symbol Mode Settings Display Modes or set symbols command with different options Refer to Chapter 4 Using the Emulator for details of how to set up and use the Display Modes dialog box 193 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To display source lines in the trace list Choose Settings Source Symbol Modes Source Mixed or Settings Source Symbol Modes Source Only Choose Settings Display Modes and in the dialog box click on Source in Trace and select either Source Mixed or Source Only from the submenu Using the command line enter commands as follows e To display mixed source and assembly language in the trace list enter the set source on command e To display only source
254. de This restriction would apply to all addresses of this function code even though S 1 only appeared at the upper level of the table The L U and LIMIT status entries work together For example if Table A had eight bits assigned to it shown in the Table Level line then there could be as many as 256 entries in Table A pointing to as many as 256 separate Table B s You might have specified a limit of ten Table A entries even though many more could have been specified This limit would be shown under LIMIT in the display In the L U column L would be shown to indicate that ten is the lower limit of valid spaces in Table A A message saying Limit violation accessing Table A would appear if you tried to offset into Table A at some location other than the ten locations that were allowed by the limit 327 Chapter 10 Using MC68030 Memory Management Seeing details of the MMU Translations The DT descriptor type column may show e SHORT indicates this is a short format table descriptor e LONG indicates this is a long format table descriptor e PAGE indicates this is the base address of a page in physical memory e INVALID indicates an invalid path through the tables e EARLY indicates this is the base address of a page in physical memory before the table levels in use have been exhausted Note that the address shown in the example display was mapped to supervisor program space by the function code table This is the default mappin
255. deMMUer translation RAM will be loaded with the highest logical address This means that you might 333 Chapter 10 Using MC68030 Memory Management Using the DeMMUer be analyzing execution of your program and find it accesses a data space at an address you don t recognize even though the data may be what you expect to see The unexpected address will be the logical address known to the other program that also uses this location The way the deMMUer selects a logical address for a physical address when two or more logical addresses are available is as follows e The deMMUer selects the logical address with the lowest address value e If one of the addresses is controlled by the MMU tables and one by a transparent translation register the deMMUer sends the address defined in the MMU tables e If one of the logical addresses is within a range defined in the emulation configuration memory map and another is not the logical address defined in the memory map is sent 334 Chapter 10 Using MC68030 Memory Management Using the DeMMUer Resource limitations If you load the DeMMUer by using one of the Settings gt DeMMUer Load From Memory Memory or load demmuer commands and your emulator performs its task and returns a prompt to the command line you won t need to know about the deMMUer resource limitations When the deMMUer is loaded without any problems the prompt simply shows on screen and you can proceed with you
256. ded into hardware memory so that it can be executed by the microprocessor it is loaded into physical address space When you are not using an MMU the program is loaded into physical memory hardware at the logical addresses assigned in the linker load map Under these conditions there is no need to differentiate between logical addresses and physical addresses because they are the same simply addresses When you use the MMU it becomes necessary to understand the difference between logical addresses and physical addresses Most emulation and analysis commands that require an address as part of the command use logical addresses Some emulation and analysis commands will accept either logical or physical addresses 316 Chapter 10 Using MC68030 Memory Management Understanding Emulation and Analysis Of The MC68030 Memory Management Unit What are logical addresses Logical addresses are the addresses that are assigned to your program code when you develop your program They are the addresses represented by symbols in your symbols data base the symbol Main represents a logical address What are physical addresses Physical addresses are the addresses assigned by the MMU to contain your program Physical addresses identify locations where you actually have memory hardware in your target system Physical addresses appear on the processor address bus instead of logical addresses Static and dynamic system architectures There are
257. defined 89 93 displaying screen 90 entering commands 91 getting help 93 terms and their definitions 641 655 time range file format SPMT measurements 264 trace 367 at EXECUTE 243 continuous stream of execution 224 count states 218 count time 218 display options 385 389 display status 177 displaying count information 196 displaying without disassembly 191 introduction 173 182 loading data 231 loading specifications 230 modify specifications 222 on program halt 221 repeat the previous command 223 reset display defaults 199 682 trace continued restoring data 228 231 restoring specifications 228 231 saving data 228 231 saving specifications 228 231 specify sequence 214 starting 174 stopping 175 storing data 229 trace about command 181 trace after command 181 trace again command 223 230 trace arm_trig2 command 251 trace before command 181 trace break_on_trigger command 246 trace command 174 180 182 243 options 445 448 setting up for SPMT measurements 262 to edit and execute the last trace command 179 trace counting anystate command 218 trace counting command 218 trace counting off command 196 218 trace counting time command 218 trace depth how to change 178 trace dequeueing specifying options 189 trace disassembly specifying options 187 trace display depth SPMT measurements 262 trace enable command 216 trace expressions address values 212 data
258. does not affect cross triggering 243 step command doesn t work when CMB enabled 243 number bases 207 numerical values 207 octal numbers 207 offset addresses in trace list 198 offset_by used in mnemonic displays 129 operating system accessing 94 96 HP 64700 Series minimum version 578 579 HP UX minimum version 578 SunOS minimum version 579 operators 208 bitwise AND 208 bitwise OR 208 integer 208 unary one s complement 208 unary two s complement 208 out of resources deMMUer things to check 309 how to avoid this message 337 overflow glossary definition of 648 overlapping ranges how they affect deMMUer 333 673 Index PAGE defined in address mapping display 328 page mode of deMMUer defined 336 parameters to command files 72 82 84 parent symbols how to display 114 parts list 629 631 paste mouse button 9 patching code example in getting started chapter 25 27 PATH UNIX environment variable 39 perf out file 409 perf out SPMT output file 266 269 perf32 SPMT report generator utility 256 267 268 interpreting reports 270 273 options 269 using the 269 performance measurements 255 274 absolute information 270 activity measurements 257 259 adding traces 266 duration 260 ending 268 409 how they are made 256 initialize options 410 411 initializing 263 initializing default 263 initializing duration measurements 265 initializing user defined ranges 264 initializing wit
259. ds A command file that accepts parameters can be made more general than a command file containing explicit argument values and can apply to a wider range of uses Parameters can be passed in either of two ways You can pass the parameters on the command line when you execute the command file or you can execute the command file without the parameters and let the interface prompt you for the parameters 72 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files Parameters must be declared at the beginning of a command file using the PARMS keyword Parameters are preceded by an ampersand amp and consist of a combination of one or more letters or underscores Letters may be upper case or lower case Using amp ArG_IEfT in Command Files A command file may contain a special argument named amp ArG_IEfT This special argument does not have to be declared using the PARMS keyword It can be used in command files containing other parameters or in command files that do not contain any parameters This special argument can accept the union of zero or more command line arguments as a single argument See To increase flexibility of command files by using amp ArG_lEfT for more information Using UNIX Commands and Scripts with Command Files Command files may include UNIX commands and may call shell scripts Some commands are recognized directly by the interface pwd for example while others require a pre
260. e a Softkey Interface o Memory mnemonic file main module main c address data 000FD2 4E560000 LINK AG 00000 OOOFD6 4EB9000015 JSR 000152E Display area OOOFDC 4EB900001A JSR 000196 4E71 NOP 4EB9000015 JSR 00015D8 52B9000076 ADDQ L 1 00076F4 4879000076 PEA L 00076F4 OOOFF6 4EB9000010 JSR 0001026 OOOFFC 588F ADDQ L 4 A7 OOOFFE 4A39000077 TST B 0007700 001004 6708 BEQ B 000100E 001006 4EB9000019 JSR 00019D8 00100C 4E71 NOP 00100E 4EB900001A JSR OOO1LABA 001014 4E71 NOP 001016 60cc BRA B OOOOFE4 S li TATUS cws main main c tatus line display memory main mnemonic Command line trace step display modify break end ETC Display area Can show memory data values analyzer traces registers breakpoints status simulated I O global symbols local symbols pod commands the emulator s underlying Terminal Interface error log or display log You can use the UP ARROW DOWN ARROW PAGE UP and PAGE DOWN cursor keys to scroll or page up or down the information in the active window Chapter 1 Getting Started Status line Displays the emulator and analyzer status Also when error and status messages occur they are displayed on the status line in addition to being saved in the error log Command line Commands are entered on the command line by pressing softkeys or by typing them in and executed by pressing the Return key The Tab and Shift Ta
261. e Breakpoint Choose Action for All Breakpoints Enable Disable Software Breakpoints Set All Breakpoints Clear delete All Breakpoints STATUS M68 20 Running in monitor ag82086 main c line 122 temporary 408344E update_sys c line 47 permanent To clear an existing breakpoint at get_targets modify software_breakpoints clear update_sys get_targets To clear all existing breakpoints modify software_breakpoints clear 155 Chapter 4 Using the Emulator Using Execution Breakpoints To clear all execution breakpoints When displaying breakpoints position the mouse pointer within the breakpoints display screen press and hold the select mouse button and choose Clear delete All Breakpoints from the popup menu Choose Breakpoints Clear All Using the command line enter modify software_breakpoints clear To display the status of all execution breakpoints Choose Breakpoints Display or Display Breakpoints Using the command line display the status of all breakpoints by selecting display software_breakpoints The breakpoints table shows you whether the breakpoints feature is currently enabled or disabled Also the status is shown for each breakpoint in memory If Pending the BKPT instruction is in memory at that location and the breakpoint is set If Inactive the memory location contains the original instruction and the breakpoint will not be execu
262. e line stepping will complete when a source line is found Therefore stepping only assembly code may step indefinitely To abort stepping type lt CTRL gt c When displaying memory mnemonic and stepping the next instruction that will step is highlighted The memory mnemonic display autopages to the new address if the next PC goes outside of the currently displayed address range This feature works even if stepping is performed in a different emulation window than one displaying memory mnemonic see the discussion on opening and using other interface windows in Chapter 3 Using the Emulator Analyzer Interface If no value is entered for lt NUMBER gt times only one step instruction is executed each time you press lt RETURN gt Multiple instructions can be executed by holding down the lt RETURN3 gt key Also the default step is for assembly code lines not source code lines If the from address option defined by EXPR or transfer_address is omitted stepping begins at the next program counter address An expression is a combination of numeric values symbols operators and parentheses specifying a memory address See the EXPR syntax diagram 431 Chapter 11 Emulator Commands step FCODE from lt NUMBER gt silently transfer_address source Examples The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available
263. e or in the command line area Then you can use the lt Left arrow gt lt Right arrow gt lt Tab gt lt Shift gt lt Tab gt lt Insert char gt lt Back space gt lt Delete char gt lt Clear line gt and lt CTRL gt u keys to select points in the command line Move to the next word on the command line by pressing the lt Tab gt key Move to the previous word on the command line by pressing the lt Shift gt lt Tab gt key combination Enter more than one command on a command line by separating the commands with semicolons Recall previous commands by pressing lt Ctrl gt r to cycle backward or lt Ctrl gt b to cycle forward through the command line buffer Delete the current command line by pressing lt Ctrl gt u Clear the command line from the cursor position to the end of the line by pressing lt Ctri gt e To recall commands In the Graphical User Interface click the pushbutton labeled Recall in the Command Line area to display the dialog box Choose a command from the dialog box You can also enter a command directly into the Selection area of the dialog box Because all command entry methods in the interface pulldown menus action keys and command line entries are echoed to the command line entry area the contents 50 Chapter 3 Using the emulator analyzer interface Entering Commands of the Command Recall dialog box is not restricted to just commands entered directly into the command line
264. e unsure which symbol is the current working symbol The Display Context or pws commands allow you to check this The pws and pwd commands aren t available on the softkeys You must type them at the keyboard The directory context included in the dialog box seen in the Graphical User Interface is the directory accessed by all system references for files primary load store and copy commands if no explicit directory is mentioned Unless you have changed directories since beginning the emulation session the current directory context is that of the directory from which you started the interface The current working symbol context is supported by the emulator analyzer and the Symbol Retrieval Utilities SRU working together The current working symbol represents an enclosing scope for local symbols If symbols have not been loaded into the interface you cannot display or change the symbol context 117 Chapter 4 Using the Emulator Using Symbols To change the directory context Choose File gt Context Directory and use the dialog box to select a new directory Using the command line enter the ed lt directory gt command The Directory Selection dialog box contains a list of directories accessed during the emulation session as well as any predefined directories present at interface startup You can predefine directories and set the maximum number of entries for the Directory Selection dialog box by setting X resourc
265. e Software Breakpoints from the popup menu Using the command line enable breakpoints with modify software_breakpoints enable You must enable breakpoints before you can set inactivate or clear any breakpoints Once you have enabled breakpoints you can enter new ones into the breakpoint table Note that if you enable breakpoints add several and then disable them they all become inactive If you reenable the breakpoints feature you must choose Breakpoints Set All or on the command line enter modify software_breakpoints set if you want to set all the existing breakpoint entries To disable an execution breakpoint Choose Breakpoints Enable again The Breakpoints Enable selection is a switch Inside the breakpoints list display press and hold the select mouse button and then choose Enable Disable Software Breakpoints from the popup menu Using the command line disable breakpoints with modify software_breakpoints disable 150 Chapter 4 Using the Emulator Using Execution Breakpoints Sometimes you will want to temporarily disable the execution breakpoints feature without removing the existing breakpoints Use one of the above commands to do this When you disable breakpoints the emulator replaces the BKPT instructions at all breakpoint locations with the original instructions It marks the breakpoint table entries as inactive The processor won t break to monitor when the instructions at inactive locat
266. e access occurs again just before the program counter address you used as your trigger specification you should be able to read back in the trace list and find one or more addresses that could be causing the problem Then you can try those suspected addresses in commands choose Display MMU Translations click on MMU Tables in the dialog box and enter the suspect addresses or on the command line display mmu_translations tables lt suspect_address gt to see how each of them is mapped through the MMU tables This should identify the error in the MMU mapping tables If you find a particular address that is mapped to guarded memory and if the problem seems to be in Table B for example you can look at the details of Table B for that address by clicking on Table Level B in the Display MMU Translation dialog box or using a command such as display mmu_translations tables lt address gt level B Failure due to system halt If the emulator and or target system simply stops operating set up the analyzer to trace with a trigger never specification Trace gt Until Stop or trace on_halt so that the trace will run continuously until the system stops again After the system halt occurs again read the trace list to find the addresses preceding the system halt Check suspected addresses by choosing Display MMU Translations clicking on MMU Tables in the dialog box and entering the suspect addresses or on the command line entering display
267. e are some limitations when single stepping A step may fail when single stepping an instruction that changes the address of the vector table modifies the VBR register With the background monitor instructions that can be interrupted 141 Chapter 4 Using the Emulator Using Processor Run Controls Examples ie floating point operations may not complete because the emulator generates an interrupt after a finite amount of time after the single step is initiated To step the processor one instruction from its present location choose Execution Step Instruction from PC or on the command line enter step To step the processor three instructions from the current program counter step 3 To step the processor five source level instructions from the init_system symbol in the demo program step 5 source from init_system To step once from the program entry point choose Execution Step Instruction from Transfer Address or on the command line enter step from transfer_address 142 Chapter 4 Using the Emulator Using Processor Run Controls To reset the processor Choose Execution Reset Using the command line enter commands as follows e To reset the emulation processor from the emulator enter reset e To reset the emulator from the target system assert the RESET signal in your target system When you apply power to the emulator the initialization process leaves the emulator in the r
268. e cascade menu until you find the desired menu item 3 Release the mouse button to select the menu choice 54 j Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface If you decide not to select a menu item simply continue to hold the mouse button down move the mouse pointer off of the menu and release the mouse button Some menu items have an ellipsis as part of the menu label An ellipsis indicates that the menu item will display a dialog or message box when the menu item is chosen To choose a pulldown menu item using the mouse method 2 Position the mouse pointer over the menu name on the menu bar Click the command select mouse button to display the menu Move the mouse pointer to the desired menu item If the menu item has a cascade menu identified by an arrow on the right edge of the menu button then repeat the previous step and then this step until you find the desired item Click the mouse button to select the item If you decide not to select a menu item simply move the mouse pointer off of the menu and click the mouse button Some menu items have an ellipsis as part of the menu label An ellipsis indicates that the menu item will display a dialog or other box when the menu item is chosen 55 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface To choose a pulldown menu it
269. e extent allowed by the Bureau s calibration facility and to the calibration facilities of other International Standards Organization members Warranty This Hewlett Packard system product is warranted against defects in materials and workmanship for a period of 90 days from date of installation During the warranty period HP will at its option either repair or replace products which prove to be defective Warranty service of this product will be performed at Buyer s facility at no charge within HP service travel areas Outside HP service travel areas warranty service will be performed at Buyer s facility only upon HP s prior agreement and Buyer shall pay HP s round trip travel expenses In all other cases products must be returned to a service facility designated by HP For products returned to HP for warranty service Buyer shall prepay shipping charges to HP and HP shall pay shipping charges to return the product to Buyer However Buyer shall pay all shipping charges duties and taxes for products returned to HP from another country HP warrants that its software and firmware designated by HP for use with an instrument will execute its programming instructions when properly installed on that instrument HP does not warrant that the operation of the instrument or software or firmware will be uninterrupted or error free Limitation of Warranty The foregoing warranty shall not apply to defects resulting from improper or
270. e implied warranties of merchantability and fitness for a particular purpose Hewlett Packard shall not be liable for errors contained herein or for incidental or consequential damages in connection with the furnishing performance or use of this material Hewlett Packard assumes no responsibility for the use or reliability of its software on equipment that is not furnished by Hewlett Packard Copyright 1991 1992 1993 1994 Hewlett Packard Company This document contains proprietary information which is protected by copyright All rights are reserved No part of this document may be photocopied reproduced or translated to another language without the prior written consent of Hewlett Packard Company The information contained in this document is subject to change without notice HP is a trademark of Hewlett Packard Company OSF Motif and Motif are trademarks of the Open Software Foundation in the U S and other countries UNIX R is a registered trademark of UNIX System Laboratories Inc in the U S A and other countries Hewlett Packard Company P O Box 2197 1900 Garden of the Gods Road Colorado Springs CO 80901 2197 U S A RESTRICTED RIGHTS LEGEND Use duplication or disclosure by the U S Government is subject to restrictions set forth in subparagraph c 1 ii of the Rights in Technical Data and Computer Software Clause at DFARS 252 227 7013 Hewlett Packard Company 3000 Hanover Street Palo Alto CA 94304 U S A
271. e is located in the usr hp64000 etc 64700tab net or 64700tab file lt STACKs stack is located in emulation ROM Error 151 Cause You tried to run from some address or perform a monitor operation that required the stack named lt STACK gt But the stack pointer points to emulation ROM which is invalid Action Use the modify register command to set the stack pointer to an even value that points at a memory region that can be used for stack operations For the ISP interrupt stack pointer you can use a configuration item to preset the initial value when the emulator enters the monitor from reset The ISP must point to a memory region that may be used as an interrupt stack Or check your program to make sure that it doesn t modify the ISP to an odd value If the M bit in the status register is set the processor uses the master stack instead of the interrupt stack The master stack must also be an even value 459 Chapter 12 Emulator Messages Unalphabetized Error and Status Messages lt STACKS stack is located in guarded memory Error 151 Cause You tried to run from some address or perform a monitor operation that required the stack named lt STACK gt But the stack pointer points to guarded memory which is invalid Action Use the modify register command to set the stack pointer to an even value that points at a memory region that can be used for stack operations For the ISP interrupt stack pointer you use config
272. e is exceeded BG may be reasserted lt _ 7 This specification indicates the minimum high time for ECS and OCS in the event of an internal cache hit followed immediately by a cache miss or operand cycle 8 This specification guarantees operation with the MC68881 which specifies a minimum time for DS negated to AS asserted specification 13A in the MC68881 User s Manual Without this specification incorrect interpretation of specifications 9A and 15 would indicate that the MC68020 does not meet the MC68881 requirements 9 This specification allows a system designed to guarantee data hold times on the output side of data buffers that have output enable signals generated with DBEN The timing on DBEN precludes its use for synchronous read cycles with no wait states 10 These specifications allow system designers to guarantee that an alternate bus master has stopped driving the bus when the MC68020 regains control of the bus after an arbitration sequence O 11 This specification allows system designers to qualify the CS of an MC6888 1 MC68882 with AS allowing 7 ns for a gate delay and still meet the CS to DS setup time requirement spec 8B of the MC6888 1 MC68882 12 The asterisk means there is some difference between the specification for the emulator and the specification for the MC68020 for that entry 559 Chapter 16 Specifications and Characteristics Physical HP 64747 and HP 64748
273. e list enter the set width label lt WIDTH gt command e To set the column width for the mnemonic column in the trace list enter the set width mnemonic lt WIDTH gt command e To set the column width for source lines in the trace list enter the set width source lt WIDTH gt command e To set the column width for the symbols column in the trace list enter the set width symbols lt WIDTH gt command lt WIDTH gt is an integer specifying the width of the column in characters lt WIDTHS is restricted to certain values which are shown if you press the lt WIDTH gt softkey You can display more information by widening a column or ignore the information by narrowing the column For example you might want to widen the label column so that you can see the complete names of the symbols in that column You can combine multiple options on the command line to set the width for several columns at once Example Set the width of the address label column to 30 characters and the width of the mnemonic column to 50 characters set width label 30 mnemonic 50 195 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To select the type of count information in the trace list Choose Trace Display Options and in the dialog box select Count Format Relative or Absolute as desired Then click the OK or Apply pushbutton To display count information in the trace list relative to the trigger state enter t
274. e logical names are specified You can only use this command if there is no current session in progress Examples To unlock the emulator whose logical name is em68020 emul700 U em68020 lt RETURN gt 43 Chapter 3 Using the emulator analyzer interface Opening Other HP 64700 Interface Windows Opening Other HP 64700 Interface Windows The File gt Emul700 menu lets you open additional emulator analyzer interface windows or other HP 64700 interface windows if products for those windows have been installed for example the software performance analyzer SPA interface and the high level debugger interface This section shows you how to e Open additional emulator analyzer interface windows e Open the high level debugger interface window e Open the software performance analyzer SPA interface window To open additional emulator analyzer windows To open additional Graphical User Interface windows choose File gt Emul700 Emulator Analyzer under Graphic Windows To open additional Softkey Interface windows choose File gt Emul700 Emulator Analyzer under Terminal Windows Enter the emul700 lt emul_name gt command in another terminal emulation window You have a choice of opening up to nine additional windows whether they be Graphical User Interface windows or terminal emulation windows containing the Softkey Interface When you open an additional window the status line will show that this session
275. e name identifies the element whose appearance or behavior is to be defined and the value specifies how the element should look or behave 1K Analyzer in this manual 1K analyzer refers to the HP 64703 HP 64704 and HP 64706 Emulation Bus analyzers with 1K trace memories 655 656 Index absolute file 398 absolute glossary definition of 641 action keys 6 custom 526 operation and use 63 with command files 526 with entry buffer 61 63 activities occurring in windows 37 38 activity measurements SPMT 257 259 additional symbols for address 271 confidence level 272 error tolerance 272 interpreting reports 270 mean 270 relative and absolute counts 271 standard deviation 270 symbols within range 271 trace command setup 262 ACU error in display registers command 145 addresses overlapping effect on deMMUer 333 physical in trace list check list 310 how affected when the MMU is on 322 logical vs physical explained 316 address mapping details of a single address 326 in the MMU supervisor user 325 when MMU uses function codes 325 address not range command 213 address range command 213 address range file format SPMT measurements 264 address translation details of single address 167 address values 212 alternative paths to command files 85 altitude specifications 561 657 Index analyzer arm emulation on signal from BNC 251 arm emulation on signal from CMB 251 drive emulat
276. e number from which copying will begin global_symbols This lets you copy a list of global symbols to the selected destination help The help command is not shown on the softkeys It allows you to obtain a copy of a help file on your printer For details of the help command refer to the help syntax diagram in this chapter lt LINE gt Use this with from_line_number and thru_line_number to specify the starting and ending trace list lines to be copied local_symbols_in This lets you copy all the children of a given symbol to the selected destination See the SYMB syntax page and the SRU User s Guide for information on symbol hierarchy Local symbols are symbols that are children of the particular file or symbol defined by SYMB that is they are defined in that file or scope memory This allows you to copy a list of the contents of memory to the selected destination The memory contents are copied in the same format as specified in the last display memory command Contents of memory can be displayed if program runs are not restricted to real time Memory contents are listed as an asterisk under the following conditions 1 The address refers to guarded memory 2 Runs are restricted to real time the emulator is running a user program and the address is located in target memory or in emulation memory that is not dual port Values in emulation memory can always be displayed Initial values are the same as those speci
277. e program run then display the trace run from transfer_address display trace count relative Count absolute entries into the get_targets routine of the demo program trace only address range update_sys thru update_sys end counting state get_targets run from transfer_address display trace count absolute 197 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Example To offset addresses in the trace list Choose Trace Display Options and in the dialog box enter the desired offset value in the field beside Address Offset Then click the OK or Apply pushbutton Use the offset_by option to the display trace command The Address Offset or offset_by trace display options allow you to cause the address information in the trace display to be offset by the amount specified The offset value is subtracted from the instruction s physical address to yield the address that is displayed If code gets relocated and therefore makes symbolic information obsolete you can use the Address Offset or offset_by option to change the address information so that it again agrees with the symbolic information You can also specify an offset to cause the listed addresses to match the addresses in compiler or assembler listings Trace execution from entry of the demo program the main label then offset by the value of main so that the addresses appear the same as the location counter in the assembler listing
278. e proper address translation for the memory space occupied by the foreground monitor e Locate the foreground monitor in a block of memory that is transparently translated via TTO or TT1 the transparent translation registers TTRs When the MMU processes translations it first compares the logical address with the parameters of the TTRs If it finds a match the MMU uses the logical address as the physical address for the access obtaining the needed 1 1 translation The minimum block size that can be transparently translated by a TTR is 16 Mbytes If your target system already sets one or both TTRs for supervisor or both supervisor and user access and no write protection you may be able to find an unused 4 Kbyte block within this 16 Mbyte range where the monitor can reside If your target system does not use the TTRs you may want to modify your MMU boot code to configure a TTR specifically for the monitor 296 Chapter 8 Configuring the Emulator Providing MMU Address Translation for the MC68030 Foreground Monitor Example This example shows how to modify boot code to use a TTR Assume your target system does not access any physical addresses in the 16 Mbyte range 02000000 02ffffffh and TTO is unused By locating the monitor at address 02000000 and adding the following code fragment to your boot code you should be able to break into the monitor while the MMU is turned on configure TTO for emulation monitor MOVE L 0200C
279. e six popup recall buffers present in the Graphical User Interface The resources for these popup recall buffers are listed in the following table The window manager resource transientDecoration controls the borders around dialog box windows The most natural setting for this resource is title Popup Recall Buffer Resources Recall Popup Resources Description File Context Directory dirSelect textColumns The default number of text dirSelect listVisibleItemCount columns in the popup is 50 dirSelectSub entries The default number of visible File Context Symbols symSelect textColumns lines in the popup is 12 symSelect listVisibleItemCount symSelectSub entries The entices wecounsene defined as a list of strings see Trace Trace Spec modtrace textColumns the following example modtrace listVisibleItemCount modtraceSub entries Up to 40 unique values are Entry Buffer recall textColumns saved in each of the recall recall listVisibleItemCount buffers as specified by the recallSub entries resource settings XcRecall maxDepth 40 and Command Line command recallCmd textColumns XcRecall onlyUnique True recall recallCmd list VisibleltemCount recallCmdSub entries Command Line pod simio recallKbd textColumns recall recallKbd listVisibleItemCount recallKbdSub entries 527 Chapter 13 Setting X Resources To set
280. ecify specify run lt RETURN gt disable EXPR transfer_address as until EXPR L hal FCODE J Sea TRACE This command prepares a run or trace command for execution and is used with the cmb_execute command When you precede a run or trace command with specify the system does not execute your command immediately Instead it waits until you enter a cmb_execute command If the processor is reset and no address is specified a cmb_execute command will run the processor from the reset condition The run specification is active until you enter specify run disable The trace specification is active until you enter another trace command without the specify prefix The emulator will run from the current program counter address unless otherwise directed disable This option turns off the specify condition of the run process 429 Chapter 11 Emulator Commands specify from run TRACE until Examples See Also EXPR FCODE transfer _address This is used with the specify run from command An expression is a combination of numeric values symbols operators and parentheses specifying a memory address See the EXPR syntax diagram The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available an
281. ed Cause You specified a trace list with values expressed using symbols defined in the source code modules such as source on and the database file has not been loaded into emulation Example display trace symbols on Target memory access failed Error 700 Cause This message is displayed if the emulator was unable to perform the requested operation on memory mapped to the target system Action In most cases the problem results from the emulator s inability to break to the monitor to perform the operation Usually there are other error messages Refer to the error log to read them to fully understand the cause of the error See message Unable to break Error 608 Timeout in emul700dmn communication Cause The host system could not start the emulation session because the HP 64700 emulator process ran out of time before the emulator could start Action You must press end_release_system to exit this emulation session completely then start a new session Make sure the host system is operating properly that all emulator analyzer interface software has been loaded correctly and the data communication switch settings on the emulator rear panel match the settings in the usr hp64000 etc 64700tab net or 64700tab file Too many sequence terms Error 1226 Cause This error occurs when you attempt to insert more than four sequence terms Action Do not attempt to insert more than four sequence terms Trace error during CMB exec
282. eenter the map term without the dp attribute or select a background monitor and reenter the map term with the dp attribute Dual ported memory limited to 4K bytes Error 141 Cause There are only 4 Kbytes of dual port emulation memory on the emulator probe You tried to map an emulation memory term whose address range spanned more than 4 Kbytes by using the dp attribute Action You can e Reenter the map term using the dp attribute but restrict the address range to 4 Kbytes 0 fff e Reenter the map term but use regular emulation memory instead of dual port memory That is omit the dp attribute Dual ported memory not mapped to lt range gt for downloaded monitor Error 144 Cause You tried to load a custom foreground monitor but the load failed because the addresses in the absolute file didn t match the address range reserved for the monitor The emulator aborts the load and reverts to the built in foreground monitor The lt range gt parameter shows the range of addresses covered by the custom monitor definition Action To use a custom foreground monitor you must e Select the foreground monitor e Set the foreground monitor base address e Load an absolute file that fits in the 4 Kbyte range that starts with lt ADDRESS gt 474 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Emulation analyzer defaulted to delete label Cause Analyzer trace labels were changed or modified while l
283. em using the keyboard To initially display a pulldown menu press and hold the menu select key for example the Extend char key on an HP 9000 keyboard and then type the underlined character in the menu label on the menu bar For example f for File Type the character in lower case only To move right to another pulldown menu after having initially displayed a menu press the right arrow key To move left to another pulldown menu after having initially displayed a menu press the left arrow key To move down one menu item within a menu press the down arrow key To move up one menu item within a menu press the up arrow key To choose a menu item type the character in the menu item label that is underlined Or move to the menu item using the arrow keys and then press the lt RETURN gt key on the keyboard To cancel a displayed menu press the Escape key The interface supports keyboard mnemonics and the use of the arrow keys to move within or between menus For each menu or menu item the underlined character in the menu or menu item label is the keyboard mnemonic character Notice the keyboard mnemonic is not always the first character of the label If a menu item has a cascade menu attached to it then typing the keyboard mnemonic displays the cascade menu Some menu items have an ellipsis as part of the menu label An ellipsis indicates that the menu item will display a dialog or other box when the menu item is
284. emory map 338 demo program introduction 99 loading 104 starting 12 13 demo target system connecting the emulator probe 603 demos setting up 529 531 depth of memory how to obtain different depths 582 dequeuer how it works 189 device table file 13 39 40 dialog box 63 Command Recall operation 64 Directory Selection operation 64 Entry Buffer Recall operation 61 64 File Selection operation 64 Modify Register operation 64 Settings Display Modes operation 64 Symbol Selection operation 64 directory alternatives for command files 75 directory context changing in configuration window 284 displaying from configuration window 284 Directory Selection dialog box operation 64 663 Index disable synchronous measurements 244 display global_symbols 373 local_symbols_in 373 MMU options to display diagram 381 384 present MMU mappings 323 registers 144 373 simulated_io 374 single address mapped by MMU 326 software_breakpoints 374 table details at a logical address 328 terminal interface screen 90 to return to the previous mnemonic display 130 trace option to display diagram 385 389 display area 7 columns 521 lines 521 522 display command memory mnemonic 14 options 371 376 display data command 120 display global_symbols command 111 display local_symbols_in command 112 display memory command 126 129 132 display memory options to display command 377 380 display memory
285. emulation processor during the trace Unused prefetches are eliminated from this display and data transactions are aligned with the instructions that caused them to occur disassemble_from__ This causes the inverse assembly software to begin disassembling the trace code line_number from the specified line number This feature is required for processors where the inverse assembler cannot uniquely identify the first state of an instruction on the processor bus The command is not available on emulators where the corresponding inverse assembler can identify instructions on the processor bus EXPR An expression is a combination of numeric values symbols operators and parentheses specifying an offset value to be subtracted from the addresses traced by the emulation analyzer See the EXPR syntax diagram high_word Causes inverse assembly to begin with the opcode in the high word of the long word located in the specified trace memory line number instructions_only Causes the trace list to contain only those lines that show an instruction opcode lt LINE gt When used alone this is the trace list line number to be centered in the display When used with disassemble_from_line_number this is the line number from which the inverse assembler attempts to disassemble data in the trace list When used with align_data_from_line this is the line number from which to begin aligning data The line number specified for data alignment must be the same
286. emulator on each terminal just as described here for several windows The rest of this section describes how to start and stop interface instances and sessions in multiple windows 38 Chapter 3 Using the emulator analyzer interface Starting the Emulator Analyzer Interface Starting the Emulator Analyzer Interface Before starting the emulator analyzer interface the emulator and interface software must have already been installed as described in Chapter 18 Installation and Service This section describes how to e Start the interface e Start the interface using the default configuration e Execute a command file on interface startup e Display the status of emulators defined in the 64700tab net file e Unlock an interface that was left locked by another user To start the emulator analyzer interface Use the emul700 lt emul_name gt command If usr hp64000 bin is specified in your PATH environment variable you can start the interface with the emul700 lt emul_name gt command The emul_name is the logical emulator name given in the HP 64700 emulator device table usr hp64000 etc 64700tab net If you are running a window system on your host computer for example the X Window System you can run the interface in up to 10 windows This capability provides you with several views into the emulation system For example you can display memory in one window registers in another an analyzer trace in a thir
287. ent content of the SRP supervisor root pointer when reading the tables and showing the address mappings use_TC_value Lets you specify a value to be used in place of the present content of the TC translation control register when reading the tables and showing the address mappings Examples Show all of the valid logical to physical mappings in the MMU display mmu_translations Show all of the logical to physical mappings for logical addresses in the range of 7FFO through 800F display mmu_translations 7ff0H thru 800fH Show the table details used to translate logical address 400 display mmu_translations tables 400H Show the details of Table A used to translate logical address 40FC display mmu_translations tables 40fcH level A 383 Chapter 11 Emulator Commands DISPLAY MMU Show the present MMU mappings based on a TC register value of 8 1FF2000 instead of the present TC register value display mmu_translations use_TC_value 81ff2000h See Also load demmuer Preparing the deMMUer to reverse MMU translations set demmuer on off Obtaining logical or physical addresses in the trace list 384 Chapter 11 Emulator Commands DISPLAY TRACE DISPLAY TRACE From display on DISPLAY diagram E trace dequeue mnemonic absolute depth lt DEPTH gt lt LINE gt disassemble_from_line_number lt LINE gt Pi hi
288. ent of program code to test the results To display registers Choose Display Registers gt BASIC or FPU or ACU if using the MC68030 EC030 to display the desired register class Using the command line enter commands as follows e To display an individual register enter display registers lt register_name gt where lt register_name gt is one of the names shown in the table on the next page e To display the basic processor register set enter display registers or display registers BASIC e To display the registers in a floating point coprocessor enter display registers FPU If your target system does not have a floating point coprocessor the above command will cause an Error message to appear The available registers and register classes are in the table on the following page 144 Chapter 4 Using the Emulator Viewing and Modifying Registers Register Class Register Names BASIC PC ST USP ISP MSP CACR CAAR D0 D7 A0 A7 VBR DFC SFC FPU FPCR FPSR FPIAR FP0 FP7 MMU MC68030 TTO TT1 MMUSR TC CRP SRP or ACU MC68030 EC030 ACO AC1 ACUSR The processor must be running to allow register displays If it s running in the monitor the emulator does the display directly If the emulator is reset it will try to break to the monitor If it s running the target system program the emulator forces a break to the monitor gets the register data and then
289. entry area The Command Recall dialog box contains a list of interface commands executed during the session as well as any predefined commands present at interface startup If you exit the emulation analysis session with the interface locked commands in the recall buffer are saved and will be present when you restart the interface You can predefine entries for the Command Recall dialog box and define the maximum number of entries by setting X resources refer to Chapter 13 Setting X Resources See To use dialog boxes in this chapter for information about using dialog boxes To execute a completed command e In the Graphical User Interface click the pushbutton labeled Return near the bottom of the command line area e In the Graphical User Interface position the mouse pointer in the command line entry area press and hold the select mouse button until the Command Line popup menu appears and then choose the Execute Command menu item e Press the lt RETURN gt key on the keyboard 51 Chapter 3 Using the emulator analyzer interface Entering Commands To get online help on commands To get a dialog box that lists an index of helpful information in the Graphical User Interface select Help General Topic or Help Command Line Then choose a topic of interest from the Help Index To get specific help about the operation of the command line on the Graphical User Interface click the Help pushbutton lo
290. ents of the performance of your software you can order the Software Performance Analyzer SPA SPA helps designers understand the execution of software modules in an absolute file SPA provides answers to questions such as e Why does it take so long to execute a program e Which modules are taking extra long time to execute While SPA performs a measurement it shows the current measurement results There is no need for you to transfer files all you do is indicate the type of display desired histogram or table listing If you are interested in purchasing SPA contact your HP Sales Representative 256 Chapter 7 Making Software Performance Measurements Understanding activity measurements Understanding activity measurements Activity measurements are measurements of the number of accesses reads or writes within an address range The SPMT shows you the percentage of analyzer trace states that are in the specified address range as well as the percentage of time taken by those states Two types of activity are measured memory activity and program activity Memory activity is all activity that occurs within the address range Program activity is the activity caused by instruction execution in the address range Program activity includes opcode fetches and the cycles that result from the execution of those instructions like reads and writes to memory and stack pushes For example suppose an address range being measured f
291. eplaces The emulator gives information about the bus cycle operation of the processor and control over target system execution Using the emulator you may view contents of processor registers target system memory and I O resources Emulator Probe the assembly that connects the emulator to the target system microprocessor socket Execution Breakpoint a BKPT instruction placed in your software in RAM replacing the normal instruction at the RAM address Breakpoints for code in ROM are stored in emulation hardware and jammed on the emulation bus during the fetch cycle When the BKPT is executed emulation immediately transfers from execution of your target program to execution of the emulation monitor Refer to Chapter 4 Using the Emulator for details of how to use execution breakpoints and effects of their use on execution of your target program Also refer to Access Breakpoints in this glossary Foreground the directly addressable memory range of the emulation processor 646 Glossary Foreground Monitor Foreground Monitor a monitor program that executes in the foreground address space When the monitor exists in foreground it is directly accessible by and can interact with your target program Guarded Memory an address range that is to be inaccessible to the emulation processor The emulator will generate a break and display an error message if an access to guarded memory occurs Handshaking a process tha
292. epping from the associated submenu If you will enter a command that requires a starting address enter that address in the entry buffer before entering the command Using the command line enter commands as follows e To step the processor one instruction from the current program counter value enter step e To step one line of high level source enter step source e To step the processor lt count gt number of times from the current program counter value enter step lt count gt e To step the processor one instruction from an address given by lt address gt type step from lt address gt e To step the processor lt count gt number of times from an address given by lt address gt type step lt count gt from lt address gt e To suppress display of registers for intermediate steps of a multi step execution add the silently parameter after the step lt count gt command lt count gt must be greater than one This is only effective when stepping is done in the same interface displaying registers The step command lets you single step the processor through program code Step Source executes one line in your high level source program Step Instruction executes one line of your assembly language program When displaying memory mnemonic a highlighted bar shows the current program counter address After each step the highlighted bar moves to the new PC address When displaying registers the registers are updated after every
293. eptable responses to questions in the configuration file file EA The emulator ignored the incorrect response Incorrect responses may appear in configuration files when you have saved the configuration to a file edited it later and tried reloading it into the emulator This may also occur if you have loaded a configuration file that you created while using another emulator and the response differs from the response required for this emulator Action Examine your configuration file to check for inappropriate responses to configuration file questions Invalid attribute for memory type lt attribute gt Error 104 Cause The memory type attributes dp and dsi are valid only for emulation ROM and emulation RAM memory types You tried to assign one of these attributes to target memory Action Refer to Chapter 8 Configuring the Emulator for information on the memory type attributes Invalid count lt option gt Error 315 Cause This error occurs when the emulation system expects a certain number of arguments for example but you specify a different number Action Enter the number the system expects to receive Invalid expression lt expression gt Error 307 Cause You have entered an expression with incorrect syntax therefore it cannot be evaluated lt expression gt is the bad expression Action Use online help by typing help EXPR Reenter the expression following the syntax rules for that type of expressio
294. equire that you enter address data and status expressions to specify the bus state You can combine multiple expressions on the same command line to build a complete bus state qualifier You can also use logical operators to build more complex states Refer to Chapter 11 Emulator Commands for details The default expression type is address therefore you don t need to specify the address keyword when you enter an address expression Start a trace and store only writes of 0 hex to the graph address in the demo program trace only graph data 0 status write 212 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements To enter a range in a trace expression Use the command line rules described below to create your expression in the entry buffer Then Choose Trace gt After Trace Before or Trace gt About as desired Using the command line enter commands as follows e To specify an address range enter address range lt expression gt thru lt expression gt e To specify a data range enter data range lt expression gt thru lt expression gt e To specify a status range enter status range lt expression gt thru lt expression gt e To take the logical not of a range use the not keyword before the range keyword Ranges allow you to qualify analyzer actions on a contiguous set of values Mostly you ll use address ranges to trigger or store on access to a data block such as a look
295. er verbose command will adversely affect the analysis data path it can only be used when an analysis trace is not in process Action Let the current analysis trace complete or use the stop_trace command to halt the analysis trace Then retry the operation 508 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Unable to break Error 608 Cause This message is displayed if the emulator is unable to break to the monitor because the emulation processor is reset halted or is otherwise disabled Action First look at the emulation prompt and other status messages displayed to determine why the processor is stopped If reset by the emulation controller use the break command to break to the monitor If reset by the emulation system release that reset If halted try reset and the break to get to the monitor If there is a bus grant wait for the requesting device to release the bus before retrying the command If there is no clock input perhaps your target system is faulty It s also possible that you have configured the emulator to restrict to real time runs which will prohibit temporary breaks to the monitor If this message has occurred immediately after you enabled the MMU in the MC68030 emulation processor refer to the Solving Problems section at the end of Chapter 10 Using MC68030 Memory Management Unable to delete label used by emulation analyzer lt label gt Error 1105 Cause This error occ
296. er 11 Emulator Commands run transfer_address until Examples See Also This represents the starting address of the program loaded into emulation or target memory The transfer address is defined in the linker map Specifies an address where execution is to stop The emulator will execute your target program up to the point where the until address is found Execution will stop at the until address and the emulator will begin executing the emulation monitor run lt RETURN gt run from 810H lt RETURN gt run from COLD _START lt RETURN gt run from TEST_START until TEST_POINT_1 lt RETURN gt help run help step step 420 find_sequence QUALIFIER occurs lt TIMES gt then Chapter 11 Emulator Commands SEQUENCING SEQUENCING From trace syntax diagram tind_sequence QUALIFIER ie occurs H4 lt TIMES gt then restart m QUALIFIER i Sequencing provides you with parameters for the trace command that let you define branching conditions for the analyzer trigger You are limited to a total of seven sequence terms including the trigger if no windowing specification is given If windowing is selected you are limited to a total of four sequence terms The analyzer default is no sequencing terms If you select the sequencer using the find_sequence parameter you must specify at least one qual
297. er 40 To specify trace disassembly options e Selection of disassembly options is not supported in pulldowns of the Graphical User Interface By default the Graphical User Interface selects high_word and all_cycles Use the command line if you need to specify trace disassembly using other options e Using the command line enter commands as follows e To show only instruction cycles in the trace list enter the display trace disassemble_from_line_number lt LINE gt instructions_only command e To show all bus cycles in the trace list enter the display trace disassemble_from_line_number lt LINE gt all_cycles command e To start instruction disassembly from the upper word of the bus enter the display trace disassemble_from_line_number lt LINE gt high_word command e To start instruction disassembly from the lower word of the bus enter the display trace disassemble_from_line_number lt LINE gt low_word command Normally the MC68020 and MC68030 EC030 presents the trace list data as it was stored by the analyzer That is all bus cycles are shown and disassembly starts with the most significant word of the data If you don t want to see operand cycles in the trace list specify the instructions_only option 187 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Examples Each analyzer bus state may have two data words An opcode can appear in either word You can force disassembl
298. er 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Examples Trace only address 10h trace only address 10h Trace only data value Offh trace only data Offh Trace only write operations trace only status write To define a prestore qualifier Place your prestore qualification into the entry buffer Then choose Trace Only Prestore Using the command line enter commands as follows e Specify a prestore qualifier by entering the trace prestore lt bus_state gt command lt bus_state gt represents a combination of address data and status expressions that must be matched to satisfy the prestore qualifier e Disable prestore qualification by entering the trace prestore anything command You use the prestore qualifier to save states that are related to other routines that yow re tracing For example you might be tracing a subprogram and want to see which program called it You can specify calls be prestored and that entries to the subprogram be stored The easiest way to do this is to prestore program reads that are outside the address range of the subprogram being called You may have several program modules that write to a variable and sometime during execution of your program that variable gets bad data writen to it Using a prestore measurement you can find out which module is writing the bad data 220 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measure
299. er in the specified source file lt LINE gt Prompts you for the line number of the source file lt IDENTIFIER gt This is the name of an identifier as declared in the source file SCOPE Scope is the name of the portion of the program where the specified identifier is defined or active such as a procedure block segment This indicates that the following string specifies a standard segment such as PROG DATA or COMN or a user defined segment in the source file lt SEG_NAME gt Prompts you for entry of the segment name text_range The range of addresses beginning with the lowest address occupied by any code in the procedure and ending with the highest address occupied by any code in the procedure Normally the text_range will be the same as the entry_exit_range some compilers may rearrange code so that the return instruction for example is not at the highest address in the range occupied by code of the procedure lt TYPE gt When two identifier names are identical and have the same scope you can distinguish between them by entering the type in parentheses Do not type a space between the identifier name and the type specification The type will be one of the following filename Specifies that the identifier is a source file fsegment This provides an alternate way to reference a file segment in a command example myfile c PROG fsegment It is better to use the keyword segment example myfile c segment PROG The seg
300. erface Creating and Executing Command Files A wait command without parameters will cause execution to pause until the lt CTRL gt c key combination is entered If you have a command file that is hanging on a wait command check to make sure that the wait has a lt time gt or a measurement_complete argument Examples Pause a command file for 5 seconds by placing the following command in the command file wait 5 Pause a command file until a trace trigger has been satified and the trace buffer has filled by placing the following command after a trace command in a command file wait measurement_complete To add a comment to a command file e Use a pound sign to precede the comment string You can use this technique either while logging commands to a file during an emulation session or when you are creating a command file with a text editor Any text that follows the comment character up to the next new line is ignored by the interface Comments may appear on lines by themselves or comments may follow commands on the same line Example Two variations of comments are shown in the following command file fragment The next command is the default trace command trace wait measurement_complete make sure the trace buffer has new states display trace 81 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files To pass parameters to a command file 1 Define formal
301. erface is the default interface If you load the Graphical Interface but do not use it you will have to manually override it each time you begin an emulation session The following sub steps assume that you may want to exclude partitions or filesets Perform the following sub steps to load the software on your system Become the root user on the system you want to update Make sure the tape s write protect screw points to SAFE Put the product media into the tape drive that will be the source device for the update process Confirm that the tape drive BUSY and PROTECT lights are on If the PROTECT light is not on remove the tape and confirm the position of the write protect screw If the BUSY light is not on check that the tape is installed correctly in the drive and that the drive is operating correctly When the BUSY light goes off and stays off start the update program by entering etc update at the HP UX prompt When the HP UX update utility main screen appears confirm that the source and destination devices are correct for your system Refer to your HP UX System Administrator documentation if you need to modify these values Select the choice on the update menu that allows you to view the product partitions If you see the partition named 64801 and described as 64000 UX Operating Environment then you have the HP 64801 product In this case mark the 64801 partition with n to prevent loading this partition Do this only
302. ermanent breakpoint 151 To set a temporary breakpoint 152 To clear an execution breakpoint 154 To clear all execution breakpoints 156 To display the status of all execution breakpoints 156 xiii Contents Changing the Interface Settings 158 To set the source symbol modes 158 To set the display modes 159 Source Symbols View 160 Field Widths 160 Auto Update 160 Using the Emulator In Circuit 161 To install the emulation probe 161 To power on the emulator and your target system 163 To probe other types of target system sockets 163 Using The MC68030 Emulator With MMU Enabled 164 To enable the processor memory management unit MC68030 only 164 To view the present logical to physical mappings 165 To see translation details for a single logical address 167 To see details of a translation table used to map a selected logical address 169 Using the Emulation Bus Analyzer Power of the Emulation Bus Analyzer 172 Making Simple Trace Measurements 173 To start a trace measurement 174 To stop a trace measurement 175 To display the trace list 175 To display the trace status 177 To change the trace depth 178 To modify the last trace command entered 179 To define a simple trigger qualifier 180 To specify a trigger and set the trigger position 181 To define a simple storage qualifier 182 Displaying the Trace List 183 To disassemble the trace list 186 To specify trace disassembly options 187 To specify trace dequeue
303. ermixed with the assembly code You can start and stop execution of application code using the run and step commands Breakpoints can be placed at strategic locations to stop application execution when a specific address is reached An application can communicate directly with the emulation interface by using the simulated I O library This provides standard input and output messaging and access to the UNIX file system During initial stages of development an application can print status and debugging messages to the emulation display using simulated I O Files can be created opened read from and written to on the host system These routines can be converted as target system hardware becomes available 98 j Chapter 4 Using the Emulator The Emulator And Its Applications The demo Application A demo program and an associated configuration file are provided with the emulator The demo application allows you to learn about the emulator without the bother of writing and loading your own program The demo program was written in MC68000 assembly language When the emulator loads the program it also defines a symbol table containing symbols from the program You can use these symbols when you re making measurements using the program The demo program emulates a hypothetical environmental control system for a computer room The name of the demo program is ecs x For detailed information about the files used in the demo program
304. es The HP assembler places local symbols in the output object file by default asm68k does not Use the command line flag fd with asm68k to generate local symbols The HP assembler places global symbols put in the debug part by default There is no way to do this with Microtec s asm68k This information is needed by emul700 SRU to correctly scope symbols Thus you will find that some symbols may be incorrectly scoped when using the emulator with the Microtec assembler Linker defaults You should be aware of these differences between Ink68k and 1d68k Output file format 1d68k produces HP MRI IEEE 695 by default Ink68k produces Motorola S Records by default To generate an HP MRI IEEE 695 x format absolute file use the H command line option or fi flag 543 Chapter 15 Microtec Language Tools Used With MC68020 and MC68030 EC030 Emulators Using Microtec Language Tools Local symbols 1d68k provides local symbols in absolute file by default but Ink68k does not The command line flag fi and option H also set the d flag which will cause Ink68k to generate local symbols Support files 1d68k and Ink68k have different default locations and environment variables used to locate linker command files and libraries Librarian defaults ar68k uses a as the default library suffix lib68k uses lib as the default library suffix The Microtec MCC68K compiler mcc68k is very different from cc68k Study the Microte
305. es Refer to Chapter 13 Setting X Resources To change the current working symbol context Choose File gt Context Symbols and use the dialog box to select a new working symbol context Using the command line enter the cws lt symbol_context gt command Because cws is a hidden command and doesn t appear on a softkey label you have to type it in You can predefine symbol contexts and set the maximum number of entries for the Symbol Scope Selection dialog box by setting X resources Refer to Chapter 13 Setting X Resources Displaying local symbols or displaying memory in mnemonic format causes the working symbol context to change as well The new context will be that of the local symbols or memory locations displayed 118 Chapter 4 Using the Emulator Using Symbols Example The update_sys module of the demo program defines several symbols including get_targets graph_data and write_hdwr You refer to these in a group of memory display commands as follows display memory update_sys get_targets blocked bytes display memory update_sys graph_data blocked bytes display memory update_sys write_hdwr blocked bytes To save repeated typing of update_sys enter cws update_sys Then enter the memory display commands as display memory get_targets blocked bytes display memory graph_data blocked bytes display memory write_hdwr blocked bytes 119 Chapter 4 Using the Emulator Accessing Processor Memory
306. es in the range covered by the trace could be filled from cache memory If so these cycles won t appear in the trace list which will confuse the disassembler Either disable the cache memory entirely or disable caching for those address ranges by adding the ci cache inhibit attribute to those ranges in the memory map Refer to Chapter 8 Configuring the Emulator If you see negative time or negative states in the trace list If counter overflow occurs during a deep analyzer trace measurement you may see a count of negative time or negative states in the trace list This is a normal condition It indicates that the counter value stored with the reference state was greater than the counter value stored with the present state In absolute time counts negative times will continue to be seen until a state is captured whose counter value is greater than the trigger state counter value In relative time counts negative time should only be seen beside the first state captured after the counter overflows 302 Chapter 9 Solving Problems If the analyzer won t trigger If the analyzer won t trigger Instruction fetches from cache memory aren t visible to the analyzer You can disable the cache while using the analyzer by answering no to the configuration question Enable the 68020 instruction cache MC68020 or Enable the 68030 instruction and data cache MC68030 EC030 Use the
307. es it in a file named perf out in the current directory If a file named perf out already exists in the current directory it will be overwritten Therefore if you wish to save a performance measurement you must rename the perf out file before performing another measurement The performance_measurement_end command does not affect the current performance measurement data which exists within the emulation system In other words you can add more traces later to the existing performance measurement by entering another performance_measurement_run command Once you have entered the performance_measurement_end command you can use the perf32 report generator to look at the data saved in the perf out file The perf out file is a binary file Do not try to read it with the UNIX more or cat commands The perf32 report generator utility described in the following section must be used to read the contents of the perf out file 268 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool Step 5 Generate the performance measurement report The perf32 report generator utility must be used to read the information in the perf out file and other files dumped by the SPMT in other words renamed perf out files The perf32 utility is run from the UNIX shell You can fork a shell while in the Softkey Interface and run perf32 or you can exit the Softkey Interface and run perf32 To save the c
308. es trace data leading to and following the trigger qualifier The trigger is centered in the trace listing Trace data is acquired after the trigger qualifier is found Trace data is acquired prior to the trigger qualifier This specifies a number of qualifier occurrences of a range or state on which the analyzer is to trigger This determines which of the traced states will be stored in trace memory This prompts you to enter a number of qualifier occurrences 449 Chapter 11 Emulator Commands TRIGGER Examples See Also trace after MAIN lt RETURN gt trace after 1000H then data 5 lt RETURN gt Also see the trace command examples help trace trace Also refer to Chapter 6 Making coordinated measurements 450 Chapter 11 Emulator Commands lt UNIX_COMMAND gt lt UNIX_COMMAND gt I lt UNIX_COMMAND gt lt RETURN gt 7 1 lt UNIX_COMMAND gt A A Se eae 1 in_browser walt_for_exit This structure allows you to execute UNIX commands on the emulator analyzer command line The UNIX commands and command line options are interpreted as no ops in the emulator analyzer interface in_browser Places the resulting display in a scrollable box instead of an XTERM window wait_for_exit Use this command to ensure completion of the associated UNIX command before starting the next command no_prompt_before_ When the associa
309. ese messages is displayed if a break occurs during processing of the copy memory or modify memory commands The break could result from any of the break conditions or could have resulted from a lt CTRL gt c break Action Retry the operation If breaks are occurring continuously you may wish to disable some of the break conditions 470 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Copy target image not supported Error 161 Cause The cim copy image memory command doesn t exist in the MC68020 and MC68030 EC030 emulators In other emulators this command is used to copy a target system memory range to emulation memory so you can set breakpoints or patch code Action To do this without the cim command copy the target system memory range to an absolute file using the copy command Then remap the target memory range to emulation memory and load the absolute file into emulation memory using the load command Refer to Chapter 4 Using the Emulator for information on saving and loading absolute files Could not create default configuration Cause The host system could not create a default configuration for the emulation session Action Check disk space under usr hp64000 and verify proper software installation Could not create lt CONFIGURATION BINARY FILENAME gt Cause The system could not create a binary emulation configuration file file EB Action Check the file EB write permission and veri
310. eset state Changing some configuration items also resets the processor Refer to Chapter 8 Configuring the Emulator for more information Sometimes you may want to reset the emulation processor prior to a program run The reset command allows you to do this Or you can reset the emulation processor from the target system Both the MC68020 and MC68030 EC030 emulators will respond to a target system reset A target system reset does not reset the entire emulator It resets only the emulation processor If the emulators are running a user program when the target system reset occurs they behave as if a run from reset command were issued If the MC68020 emulator is in the background monitor when the target reset occurs it will reenter the monitor when the reset is released The MC68030 EC030 emulator behaves this way for both the foreground and background monitors The reset command holds the processor in the reset state until a break run or step command A CMB command can cause the emulator to run from reset Also a request to access memory or registers may cause a break into the monitor 143 Chapter 4 Using the Emulator Viewing and Modifying Registers Viewing and Modifying Registers The emulator allows you to display registers to determine the results of program execution You can display a single register or you can display groups of related registers Sometimes you may want to modify a register and then run a segm
311. esources that deal with color fonts and sizes mouse and keyboard operation and labels and titles You can create and use customized scheme files by following these steps Create the HOME HP64_schemes lt platform gt directory For example mkdir HOME HP64_schemes mkdir HOME HP64_schemes HP UX Copy the scheme file to be modified to the HOME HP64_schemes lt platform gt directory Label scheme files are not platform specific therefore they should be placed in the HOME HP64_schemes directory All other scheme files should be placed in the HOME HP64_schemes lt platform gt directory For example cp usr hp64000 lib X11 HP64_schemes HP UX Softkey Color HOME HP64_schemes HP UX Softkey MyColor Note that if your custom scheme file has the same name as the default scheme file the load order requires resources in the custom file to explicitly override resources in the default file Modify the HOME HP64_schemes lt platform gt Softkey lt scheme gt file For example you could modify the HOME HP64_schemes HP UX Softkey MyColor file to change the defined foreground and background colors Also since the scheme file name is different from the default you could comment out various resource settings to cause general foreground and background color definitions to apply to the Graphical User Interface At least one resource must be defined in your color scheme file for it to be recognized 524 Chapter 13 S
312. etting X Resources To use customized scheme files 4 Ifthe name of your custom scheme file is different from the name of the default scheme file you must modify the scheme resource definitions The Graphical User Interface application defaults file contains resources that specify which scheme files are used If your custom scheme files have different names than the default scheme files you must modify these resource settings so that your customized scheme files are used instead of the default scheme files For example to use the SHOME HP64_schemes HP UX Softkey MyColor color scheme file you would set the HP64_Softkey colorScheme resource to MyColor HP64_Softkey colorScheme MyColor Refer to the previous To customize Graphical User Interface resources section for more detailed information on modifying resources 525 Chapter 13 Setting X Resources To set up custom action keys Examples To set up custom action keys Modify the actionKeysSub keyDefs resource The actionKeysSub keyDefs resource defines a list of paired strings The first string defines the text that should appear on the action key pushbutton The second string defines the command that should be sent to the command line area and executed when the action key is pushed A pair of parentheses with no spaces that is can be used in the command definition to indicate that text from the entry buffer should replace the parentheses when the
313. ex popup and second the name of the file that is raised when the topic is selected For example About demos users guest gui_demos general Loading programs users guest gui_demos loadprog Running programs users guest gui_demos runprog You can use absolute paths for example users guest topic1 paths relative to the directory in which the interface was started for example mydir topic2 or paths relative to the product directory for example Xdemo general where the product directory is something like usr hp64000 inst emul 6475 1A 3 Set the enableDemo or enableTutorial resource to True 4 Define the demo index file by setting the demoPopupSub indexFile or tutorialPopupSub indexFile resource For example demoPopupSub indexFile users guest gui_demos index You can use absolute paths for example users guest Index paths relative to the directory in which the interface was started for example mydir indexfile or paths relative to the product directory for example Xdemo Index topics where the product directory is something like usr hp64000 inst emul 64748B 5 If you wish to define a default topic to be selected set the demoTopic or tutorialTopic resource to the topic string For example demoTopic About demos Refer to the previous To customize Graphical User Interface resources section for more detailed information on modifying resources 531 532 14 The SPA
314. fied by the command display memory 0 blocked bytes offset_by 0 365 Chapter 11 Emulator Commands copy mmu_translations noappend noheader physical pod_command printer registers Defaults are to values specified in the previous display memory command This allows you to copy a list of all present translations of all logical addresses to the selected destination This causes any copied information to overwrite an existing file with the same name specified by lt FILE gt If this option is not selected the default operation is to append the copied information to the end of an existing file with the same name that you specify This copies the information into a file without headings This allows you to specify that the addresses to be copied are addresses in physical memory This allows you to copy the most recent commands sent to the HP 64700 Series emulator analyzer For details refer to the syntax page for the pod_command in this chapter This option specifies your system printer as the destination device for the copy command Before you can specify the printer as the destination device you must define PRINTER as a shell variable For example enter the text shown below after the symbol PRINTER lp export PRINTER If you don t want the print message to overwrite the command line execute set PRINTER lp s This allows you to copy a list of the contents of the
315. figuration help for items in dialog boxes 285 emulation memory map used by deMMUer 336 emulation memory modules installing 599 emulator break execution on signal from BNC 250 break execution on signal from CMB 249 configuration 101 configuring the 276 device table file 13 39 40 how it loads the ddMMUer 339 665 Index emulator continued in circuit use 161 163 installing updating firmware 634 introduction 98 101 messages 458 multiple start stop 243 244 performance verification 626 emulator configuration exiting the configuration interface 286 loading from file 286 modifying a configuration section 280 starting the configuration interface 278 storing 283 emulator probe connecting the cables 584 connecting to demo target system 603 precautions 161 emulator specifications and characteristics 545 emulator analyzer displaying the status 42 emulator analyzer interface executing command file at startup 41 exiting 28 exiting a single window 70 exiting all windows ending the session 71 opening additional windows 44 running in multiple windows 39 seeing status before startup 41 starting 39 43 starting with default option 40 unlocking interface that was left locked 43 enabling synchronous measurements 243 the MMU 164 170 320 end command 28 options 390 391 entering graphical softkey interface commands 47 entry buffer 7 address copy and paste to 59 clearing 58 copy and paste a full
316. firmware to the lastest release Update HP64740 firmware to version A 02 02 or newer Error 176 Cause The emulator has found that your analysis firmware is too old to be compatible with the emulation firmware Action Update the analysis firmware to the lastest release Wait time failure could not determine system time Cause The system call failed Action Verify that date executes correctly from the UNIX prompt 514 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Warning at least one integer truncated to 32 bits Warning at least one integer truncated to 16 bits Warning at least one integer truncated to 8 bits Cause The number entered was too large for the currently specified display or access size Action Try entering the command again using the correct size of number Width not in range 1 lt valid width lt 80 Cause You tried to specify the width of the field outside the range from to 80 Action Try entering the command again using a valid number for the width Write to ROM break lt address gt Error 628 Cause A memory access to a location mapped as guarded memory has occurred during execution of the target program Action Investigate the cause of the write to ROM by your target program The lt address gt parameter indicates the address and function code where the write occurred The emulator breaks into the monitor 64700 command aborted Error 10371 Cause
317. for the modification you specify 133 Chapter 4 Using the Emulator Accessing Processor Memory Resources Examples Modify the byte at elf hex to 43 hex Choose Modify Memory and on the command line type 0elfh to 43h modify memory Oelfh to 43h The above example assumes that byte mode was in effect If not add the mode parameter modify memory Oelfh bytes to 43h Modify the command input buffer of the demo program to 43 hex modify memory demo Cmd_Input bytes to 43h Modify the range of locations from e00 through e38 to zero modify memory 0c00h thru 0e38h to 0 Modify the range of locations from 0e00 through 0e38 to ABC modify memory 0e00h thru 0e38h bytes to 41h 42h 43h Modify the memory at e00 hex to the string This is a string modify memory 0e00h string to This is a string n 0 Remember that the memory modification is affected by the display mode Suppose that locations f00 and f01 each contain 01 If you enter the command modify memory O0f01ih bytes to 3h Then location f00 contains 01 and location f01 contains 03 But if you entered modify memory 0f00h words to 3h Then location f00 will contain 00 and location f01 will contain 03 Notice that you refer to a word by an even address which is the address of its most significant byte this is defined by the MC68020 and MC68030 EC030 processor architecture 134 Chapter 4 Using the Emulator Using Processor Run Controls
318. fore the data type in the display memory command Display the processor s interrupt vector table display memory 0 thru 3ffh absolute long 128 Chapter 4 Using the Emulator Accessing Processor Memory Resources To display memory in mnemonic format Choose Display gt Memory Mmemonic or Mnemonic at PC If you want to include a line range or starting point in your command enter it into the entry buffer before you choose the Mnemonic command Using the command line display memory in mnemonic format by entering display memory lt lower gt thru lt upper gt mnemonic A highlighted bar shows the location of the current program counter address This allows you to view the program counter while stepping through user program execution When you display memory mnemonic the emulator disassembles the memory locations beginning with the first address you specify If this address is not the starting address of an instruction the display will be incorrect To offset the addresses in the memory mnemonic display add the parameter offset_by lt expression gt to the end of the display memory command line lt expression gt is an address expression that is subtracted from each address in the memory display If code gets relocated and therefore makes symbolic information obsolete you can use the offset_by option to change the address information so thatit again agrees with the symbolic information You can also use offset_by to
319. formance measurement initialization with local symbols performance_measurement_initialize local_symbols_in Sp mt_demo C performance_measurement_initialize local_symbols_in spmt_demo C math_library performance_measurement_initialize local_symbols_in ma th_library e To restore the current measurement enter performance_measurement_initialize restore This allows you to restore old performance measurement data from the perf out file in the current directory If you have not exited and reentered emulation you can add traces to a measurement simply by entering another performance_measurement_run command However if you exit and reenter the emulation system you must enter the performance_measurement_initialize restore command before you can add traces to a measurement When you restore a performance measurement make sure your current trace command is identical to the command used with the restored measurement 266 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool When restoring old performance measurement data the restore option determines if the current emulator software version matches the version used when the performance measurement data was stored in the perf out files If the versions match the restore will be performed If you ran tests using a former software version and saved perf out files then updated your software to a new version number you
320. format position the mouse pointer over the program line that you wish to use as a trigger press and hold the select mouse button and choose Trace After Trace Before or Trace About from the popup menu Using the command line use the trace command to specify a trigger The default option for the analyzer is to begin to fill trace memory immediately after the start of the trace The trace completes when trace memory is full and the trigger has been captured The trigger is a reference event in a trace list You select trigger position to see activity leading up to the trigger event or following the trigger event or both To trigger a trace measurement after the demo program executes the Init_system procedure place init_system in the entry buffer and choose Trace After or on the command line enter trace after long_aligned init_system The long_aligned option ensures that if the address of the trigger event is not on a long word boundary the analyzer will still be able to recognize it To capture a trace leading up to the address of gen_ascii_data and then break to the monitor when that trigger event occurs place gen_ascii_data in the entry buffer and choose Trace gt UntilQ or on the command line enter trace before long_aligned gen_ascii_data break_on_trigger 180 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements To capture a trace of activity both preceding and following the wr
321. from having to remember the parameters If from another command file you call a command file that requires parameters you must supply all the parameters with the call The calling command file cannot respond to parameter prompts an error will occur and the calling command file will halt 82 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files Examples The following command file called loadany is a general command file for loading a configuration file and then an executable file PARMS amp cfgname amp binfile load configuration amp cfgname load amp binfile The following command entered on the command line calls the command file loadany and passes the actual parameters needed by the command file loadany democfg demo You could start the command file loadany without parameters and allow the interface to prompt you for the actual parameters Issue the command loadany and then respond to the parameter prompts A prompt for the cfgname parameter for this command file will look like the following STATUS M68020 Running in Monitor ERE Define command file parameter amp cfgname You might also start the command file supply just the first parameter and have the interface prompt you for the second parameter Issue the command loadany democfg to cause the interface to prompt you for the second parameter amp binfile 83 Chapter 3 Using
322. fy only processor read cycles to the memory location A number of status values have already been defined for you They are collectively known as the status equates and cover most common processor operations Status equates appear on softkeys at the appropriate time so you can include the status you want in your command line 209 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements The following two tables list the predefined status equates The descriptions identify the emulator status represented by the equates 68020 Equates Name Description 3byte three byte memory request buserror bus error cycle byte byte memory request cpu function code cpu space data function code data space fgd foreground memory cycle long longword memory request memread memory read cycle memwrite memory write cycle mon emulation monitor cycle prog function code program space rerun retrying a previous bus cycle super function code supervisor space supdata function code supervisor data space supprog function code supervisor program space tbyte byte memory return tlong long memory return tword word memory return user function code user space userdata function code user data space userprog function code user program space word word memory request 210 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements 68030 EC030 Equates Name Description 3_byte three byte transfer
323. fy that the specified directory exists and is writeable Could not exec configuration process Cause The host system could not fork the configuration process or could not execute the configuration process Action Make sure that the host system is operating properly and that all emulator analyzer interface files were loaded properly during the installation process Try starting the emulation session again 471 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Could not load default configuration Cause The host system could not load the default configuration into the emulator Action Cycle power on the emulator and run pv performance verification on the emulator to verify that it is functioning properly refer to Chapter 18 Installation and Service for information on running pv Also verify proper software installation If loading default configuration still fails then call your HP 64000 representative Count out of bounds lt number gt Error 318 Cause You specified an occurrence count less than or greater than 65535 for a trace trigger or trace find_sequence command Action Reenter the command specifying an occurrence count from 1 to 65535 Count qualifier not available with current clock speed Error 1240 Cause This error occurs when you attempt to specify the time count qualifier when the current maximum qualified clock speed is fast F or very fast VF This error also
324. g and the emulator always receives trig This provides for the break_on_trigger syntax of the trace command You can disable connections made by the internal trig and trig2 lines by answering neither or no to the appropriate interactive measurement configuration question These are some ways that you can use the internal trigger signals You can use the trig or trig2 line to make a connection between the analyzer and the CMB connector or BNC connector so that when the analyzer finds its trigger condition a trigger signal is driven on the HP 64700 s Coordinated Measurement Bus CMB or BNC connector You can use the trig or trig2 line to make a connection between the emulator break input and the CMB connector BNC connector or analyzer so that program execution can break when a trigger signal is received from the CMB BNC or analyzer You can use the trig2 line to make a connection between the analyzer and the CMB connector or BNC connector so that the analyzer can be armed that is enabled when a trigger signal is received from the CMB or BNC connector You can use the trig and trig2 lines to make several types of connections at the same time For example when the analyzer finds its trigger condition a signal is driven on the trig1 line This signal may be used to stop user program execution but the trigger signal may also be driven on the CMB and BNC connectors It is possible for signals to be driven and rece
325. g Simple Trace Measurements data using the display command See the set update command in Emulator Commands for details Whether source lines disassembled trace states or symbols are included in the display depends on the modes you choose with the Settings Source Symbols Modes or Settings Display Modes pulldown menu items Example A simple trace list resembles Tr st i Label Address Data Opcode or Status time count Base symbols hex mnemonic w symbols relative Pridemo 0000000C 050019FE BTST D2 D0 oo 2a 001 Progldemo Loop 103919FE MOVE B Didemo Cmd_Input DO 60 nS 002 Didemo Cmd_Input 00000000 00 supr data byte wr 120 ns 003 Pridemo 00000010 00000000 0000 supr prem long rd 20 ns 004 Pri demo 00000012 05000000 0500 supr prem word rd 240 ns 005 Pridemo 00000014 66000000 BNE W Pridemo Call_Int 120 ns 006 Pridemo 00000016 00060000 0006 supr prem word rd 120 ns 007 Didemo Cmd_Input 00060000 00 supr data byte rd 20 ns 008 Pridemo 00000018 60000000 BRA Proldemo EndLoop 120 ns 009 Pridemo 0000001A 000E0000 000E supr prem word rd 200 ns 010 Pridemo Call_Int 61000000 BSR W Prog Int_Cmd 20 ns 011 Pridemo 0000001E O00C0000 000C supr prgm word rd 160 ns 012 Proldemo EndLoop 60E40000 BRA B Prog demo Loop 120 ns 013 ProglInt_Cmd OC000000 CMPI B 441 00 60 ns 014 handle_ 00000002 00410000 0041 supr prgm long rd 120 ns STATUS M68020 Running user program Emulation trace complete______ TETE
326. g box or enter the following command display trace absolute status hex Display the trace list without instruction disassembly and with status information in mnemonic format make appropriate entries in the Trace Display Options dialog box or enter the following command display trace absolute status mnemonic 192 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To display symbols in the trace list Choose Settings Source Symbol Modes Symbols or choose Settings Display Modes and in the dialog box click on Symbolic Addresses In the Field Widths area of the dialog box you can select the widths of the Label Field and Symbols in Mnemonic Field to control the display space allocated to the symbols To select symbol types use the command line described below Using the command line enter commands as follows e To display symbols in the trace list enter the set symbols on command e To display only high level symbols enter the set symbols high command e To display only low level symbols enter the set symbols low command e To display all symbols both high and low level enter the set symbols all command If you are using the MC68030 emulator with the MMU enabled you will need to enable and load the deMMUer before you can display source file symbols in your trace lists Refer to Analyzing Program Execution when the MC68030 MMU is Enabled later in this chapter to see how to load an
327. g box and ignores changes 159 Chapter 4 Using the Emulator Changing the Interface Settings Source Symbols View Source in Memory specifies whether source lines are included mixed with assembly code or excluded from mnemonic memory displays Source in Trace specifies whether source lines are included mixed with stored states or excluded from trace displays Symbolic Addresses specifies whether symbols are included in displays Tab Expansion sets the number of spaces displayed for tabs in source lines Field Widths Label Field sets the width in characters of the address field in the trace list or label symbols field in any of the other displays Mnemonic Field sets the width in characters of the mnemonic field in memory mnemonic trace list and register step mnemonic displays It also changes the width of the status field in the trace list Symbols in Mnemonic Field sets the maximum width of symbols in the mnemonic field of the trace list memory mnemonic and register step mnemonic displays Source Lines sets the width in characters of the source lines in the memory mnemonic display Auto Update Memory Displays Except Mnemonic toggles whether memory displays are automatically updated after commands that change memory contents or whether you must enter memory display commands to update the display You may wish to turn off memory display updates for example when displaying memory mapped T O Memory
328. g in problems Plug in problems involving the MMU are often caused by incorrect mappings in your translation tables If your logical address is translated to an incorrect physical address the Display MMU Translations or display mmu_translations command can show the details of how your logical addresses are mapped to the wrong physical addresses You can also enter the Display gt MMU Translations or display mmu_translations command to test your mappings before you enable the MMU This command by itself reads all present translations in your MMU tables No invalid or illegal paths are shown in the listing You can read through the display on screen to see if all of your address ranges are represented and if they are mapped to appropriate space in physical memory When you enter the Display MMU Translations or display mmu_translations command the emulator reads the MMU registers TC CRP and SRP and MMU tables even if the enable bit in the TC register is in the disable state If you do not have correct values in the TC CRP and SRP registers the emulator will let you specify correct values to be used when composing the display of translations You can use the dialog box that is called by the Display gt MMU Translations selection and click on Override Processor Register Values and enter the desired 342 Chapter 10 Using MC68030 Memory Management Solving Problems values for the TC CRP and or SRP registers or RECALL desired va
329. g the command line enter display mmu_translations 0 thru Offffh To see the logical to physical mappings for the pages that contain logical address 40f0h enter the command display mmu_translations 40f0h To see only the mappings in supervisor space in the address range from 0 through Offffh enter the command display mmu_translations fcode s 0 thru Offffh To see only the mappings in user space in the address range from 0 through Offffh enter the command display mmu_translations fcode up 0 thru Offffh 166 Chapter 4 Using the Emulator Using The MC68030 Emulator With MMU Enabled To show all of the valid mappings in the mapping tables for selected values of the TC CRP and SRP registers ignoring the present values of those registers enter a command such as display mmu_translations use_TC_value 81ff2000h use_CRP_value 20800604bf9fffe7 use_SRP_value 8000000200001020 Note that the numerical base must be specified for the TC register but hexadecimal values are assumed for the CRP and SRP registers To see translation details for a single logical address e Choose Display gt MMU Translations Then in the dialog box click on MMU Tables and enter the Logical Address whose table details you want to see in the Address box and click ok e Using the command line enter the command display mmu_translations tables lt address gt Examples To see how logical address 40f0h is mapped through the translat
330. g when function codes are used in the mapping scheme If you wanted to see the mapping through the tables under the user function code for address 30f8h you would choose Display MMU Translations and in the dialog box click on MMU Tables and Function Code u and enter Address 30f8h or enter the command display mmu_translations tables fcode u 30f8h You can add the desired function code table index to your command to see how any address is mapped through the tables under the selected function code Table details for a selected logical address The lowest level of detail you might like to see is the content of one of the tables used to map a particular logical address You might choose Display gt MMU Translations and in the dialog box click on MMU Tables enter Address 40f8h and click on Table Level to obtain B or enter a command like display mmu_translations tables 40F8h level B The emulator would show the details of Table B where it is used to map logical address 40F8 There might be a great many Table B s but this command will only show the Table B that is used to map the logical address you specified in your command In the example display of table details e Table B has only four entries only two bits in the logical address are used to index into Table B e The LOCATION column shows the physical address of each indexed location in Table B 328 Chapter 10 Using MC68030 Memory Management Seeing details of the
331. gets to your peripherals address space Use the verbose option to the deMMUer load command to make sure all of the memory space you need to reverse translate is loaded into the deMMUer table 338 Chapter 10 Using MC68030 Memory Management Using the DeMMUer What the emulator does when it loads the deMMUer When the emulator loads the deMMUer from memory it does the following e Reads the MMU tables and provides spaces in the deMMUer table to reverse translate all of the valid addresses in the MMU tables e If there are more valid physical memory addresses than can be accommodated in the deMMUer table the emulator reads the emulation memory map for help in selecting appropriate address ranges to reverse translate e Provides deMMUer table entries to reverse translate small address spaces defined in the emulation memory map before providing table entries to reverse translate larger address spaces e Allocates remaining resources to reverse translate addresses beginning with the lowest remaining address e If there are valid physical memory addresses remaining after all available spaces have been used in the deMMUer table the emulator displays the out of resources message 339 Chapter 10 Using MC68030 Memory Management Using the DeMMUer Dividing the deMMUer table between user and supervisor memory space Using two root pointers If you enable use of the supervisor root pointer SRP you will have two sets
332. gging in circuit or out of circuit Features HP 64748A 64748D e 33 MHz active probe emulator e Support for MC68020 and MC68EC020 probe adapter required for MC68EC020 HP 64747A e 40 MHz active probe emulator e Supports MC68EC030 e Supports burst and synchronous bus modes HP 64747B e 40 MHz active probe emulator e Supports MC68EC030 and MC68030 e Supports burst and synchronous bus modes Both Emulators e Symbolic support e Execution breakpoints 36 inch cable and 219 mm 8 8 x 102 mm 4 probe terminating in PGA package Optional adapter for PQFP Background and foreground monitors Simulated I O with workstation interfaces Consumes IEEE 695 HP OMF Motorola S Records and Extended Tek Hex File formats directly Symbols are available with IEEE 695 and HP OMF formats e Multiprocessor emulation synchronous start of 32 emulation sessions cross triggerable from another emulator logic analyzer or oscilloscope e Coprocessor support allows display and modification of FPU registers e Demo board and self test module included vi Emulation bus analyzer 80 channel emulation bus analyzer Post processed dequeued trace with symbols and source lines the PC interface trace listing contains source line numbers Eight events each consisting of address status and data comparators Events may be sequenced eight levels deep and can be used for complex trigger qualification and selective store Emulation
333. gh_word ea all_cycles instructions_only Giign data_tron_tine lt LINE gt N mnemonic relative ZF Corfset_by 1 EXPR off O lt RETURN gt on DISPLAY diagram 385 Chapter 11 Emulator Commands DISPLAY TRACE absolute align_data_ from_line all_cycles Captured information can be presented as absolute hexadecimal values or in mnemonic form The processor status values captured by the analyzer can be listed mnemonically or in hexadecimal or binary form Addresses captured by the analyzer are physical addresses The offset_by option subtracts the specified offset from the addresses of the executed instructions before listing the trace With an appropriate entry for offset_by code that has been relocated making symbolic information invalid will have its addresses set so that symbolic information is again valid If desired offset_by can be used to instructions in the listed trace at the same addresses where they appear in the assembled or compiled program listing The count parameter lists the current trace of time or state either relative to the previous event in the trace list or as an absolute count measured from the trigger event If time counts are currently selected the count parameter causes an absolute or relative time count to be listed If the current trace contains state counts a rela
334. ginal values A A comma is used as a delimiter between values when modifying multiple values configuration The configuration questions are presented in sequence with either the default response or the previously entered response You can select the currently displayed response by pressing lt RETURN gt Otherwise you can modify the response as you desire then press lt RETURN gt For each emulator default responses defined on powerup are displayed For more information refer to Chapter 8 Configuring the Emulator EXPR An expression is a combination of numeric values symbols operators and parentheses specifying a value See the EXPR syntax diagram extended This option allows you to modify memory as 96 bit IEEE real numbers FCODE The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available and for an explanation of those codes long Modify memory as long word values When used with the real parameter long specifies that memory be modified as a 64 bit IEEE 754 real number value 403 Chapter 11 Emulator Commands modify memory packed permanent physical You can modify the contents of individual memory locations to individual values or you can modify a range of memory to a single value or a sequence of values Modify a series of memory locations by specifying the address of the first location in the se
335. gt lt DEPTH gt is the number of states to be available in the trace list for displaying copying or storing to afile If you are using the deep analyzer the depth of the trace list buffer depends on whether or not you installed memory modules on the analyzer card and the capacity of the memory modules installed Refer to Chapter 18 Installation and Service for details If you are using the 1K analyzer the trace list buffer is 512 or 1024 states deep depending on whether or not you turn on the state time count See To count states or time in this chapter When you display the trace list the interface requests the number of states specified by the trace depth from the emulator If you want faster trace display you can decrease the trace depth To display more states you can increase the trace depth Notice that the trace depth setting only regulates the number of states sent from the emulation bus analyzer to the interface You still need to use the Pg Up and Pg Dn keys to page through the trace list Examples Set the depth of the trace memory to 256 states Choose Trace Display Options and in the dialog box enter 256 in the field beside Unload Depth Then click the OK or Apply pushbutton Set the depth of the trace to 1024 states display trace depth 1024 201 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To display program memory associated with a trace list line Using the
336. gt See Also help trace trace 370 Chapter 11 Emulator Commands display display lt RETURN gt ae status repetitively N pod_command NC event _log error_log simulated_io SYMB a data a EXPR gt thru physica lt sa EXPR lt TYPE gt FCODE 4 registers lt CLASS gt 5 lt REGISTER gt N software_breakpoints Ae set_by gt EXPR N DISPLAY MEMORY Ne DISPLAY MMU DISPLAY TRACE 64783512 371 Chapter 11 Emulator Commands display data error_log event_log EXPR You can use the up arrow down arrow PREV PAGE and NEXT PAGE keys to view the displayed information For software_breakpoints data memory and trace displays you can use the CTRL g and CTRL f keys to scroll left and right if the information goes past the edge of the screen Depending on the information you select defaults may be the options selected for the previous execution of the display command A leading comma allows you to append additional expressions to the previous display data command Commas between expression data type specifications allow you to specify multiple variables and types for display with the current command You can display the values of simple data types
337. gt Store Trace Data or store trace command you can reload it To view the data you loaded use the Display Trace Trace Display or display trace command Remember that a new trace measurement will overwrite this trace data but not the file from which it was loaded The interface will try to display the trace listing in the display format active when the trace data was stored If the interface needs symbols to replace absolute addresses or to find high level source lines and symbols are not loaded an error occurs For example suppose source mixed was the display mode when the trace was captured and the executable file test1 was the file being executed in the emulator target system To reload and display a trace listing saved from that emulation session requires reloading the symbols for test1 Example Load a trace from a file load trace tracel 231 Chapter 5 Using the Emulation Bus Analyzer Saving and Restoring DeMMUer Setup Files Saving and Restoring DeMMUer Setup Files To store a DeMMUer setup file Choose File gt Store gt DeMMUer From MMU Tables In the dialog box click on the name of the file you want to store your d MMUer setup placing it in the Store Demmuer File box Then click OK Using the command line store a deMMUer setup file by entering store demmuer lt filename gt lt filename gt is any UNIX file name including paths The extension ED is assumed Stores a deMMUer
338. h global symbols 265 initializing with local symbols 266 memory activity 257 270 module duration 260 module usage 260 prefetch and recursion considerations 260 program activity 257 270 relative information 270 restoring the current measurement 266 run options 412 running 267 SPA for more capability 256 trace command setup 262 trace counting time 262 trace display depth 262 674 Index performance verification procedure 626 permanent software breakpoints how to set 151 physical addresses defined 317 in trace list check 310 tracing execution in 206 physical logical mappings how to view 165 platform HP 9000 memory needs 578 HP 9000 minimum performance 578 SPARCsystem memory needs 579 SPARCsystem minimum performance 579 platform scheme 520 572 pod commands used in high level interface 224 pod_command command 91 93 397 options 413 414 pod_command keyboard command 91 popup menus hand pointer indicates presence 7 57 how they map to the command line 356 how to choose an item 57 power applied to the card cage 605 power cables connecting 605 power failure during firmware update 639 power on emulator 163 target system 163 prefetch correction in SPMT 260 prestore qualifier 220 prestore qualifier glossary definition of 650 printing copying files to a printer 68 69 probe connecting the cables 584 connecting to demo target system 603 dimensions 560 other target system sockets
339. he display trace count absolute command To display count information in the trace list relative to the previous trace list state enter the display trace count relative command The count information in the trace list is always displayed if it is turned on To turn on the trace counting function enter a command beginning with trace counting on the command line Refer to To count states or time later in this manual for details When using the 1K analyzer the trace memory is 512 states deep if counting states or time is turned on 1024 states deep if counting is turned off To disable counting in the 1K analyzer use the command trace counting off When using the deep analyzer full memory depth is always available the depth of the deep analyzer is not affected by the counting selected See To count states or time 196 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Examples Count time and store only each iteration of the update_sys symbol in the demo program if using the 1K analyzer make sure the clock speed is set to slow in the configuration Specify the trace for the MC68020 emulator trace only update_sys counting time Specify the trace for the MC68030 EC030 emulator trace only long_aligned update_sys counting time The long_aligned parameter is needed because the MC68030 EC030 fetches opcodes as 32 bit values and update_sys may not be the first part of that value Now start th
340. he MMU is enabled 320 Hardware enable 320 Software enable 321 Restrictions when using the MC68030 emulator with the MMU turnedon 321 How the MMU affects the way you compose your emulation commands 322 Seeing details of the MMU Translations 323 How the emulator helps you see the details of the MMU mappings 323 Supervisor user address mappings 325 Translation details for a single logical address 326 Address mapping details 326 Status information 327 Table details for a selected logical address 328 Using the DeMMUer 330 What part of the emulator needs adeMMUer 330 What would happen if the analyzer didn t get help from the deMMUer 330 How does the deMMUer serve the analyzer 330 Reverse translations are made in real time 331 DeMMUer options 331 Restrictions when using the deMMUer 333 Keep the deMMUer up to date 333 The target program is interrupted while the deMMUer is being loaded 333 xix Contents 11 The analyzer must be off 333 Expect strange addresses if you analyze physical memory with multiple logical mappings 333 Resource limitations 335 Small page large page modes 336 Example to show resource limitations 336 How to avoid the out of resources message 337 Other ways to conserve space in the deMMUer table 337 Minimize address ranges in the memory map 337 Careful use of the emulator memory map 338 What the emulator does when it loads the deMMUer 339 Dividing the deMMUer table between user and su
341. he default is to qualify on all states address This specifies that the expression following is an address value This is the default and is therefore not required on the command line when specifying an address expression and This lets you specify a combination of status and expression values when status is specified in the state specification 415 Chapter 11 Emulator Commands QUALIFIER data EXPR long_aligned not or range status lt STATUS gt thru This specifies that the expression that follows is a data value on the emulation processor data bus An expression is a combination of numeric values symbols operators and parentheses specifying an address data or status value See the EXPR syntax diagram Causes a mask to be applied to the address to force it to a long word boundary least significant hex digit is 0 4 8 or C This is necessary because the emulation bus analyzer may not otherwise see the address on the address bus due to the way the processor fetches instructions This specifies that the analyzer search for the logical not of the specified range or state that is addresses not in the specified range or an address not in the specified state This option allows you to specify multiple states to be captured during a trace measurement This indicates a range of addresses to be specified EXPR thru EXPR This specifies that the expression following or
342. he emulator will issue an error message and not perform the single step There are two ways to deal with this situation Either alter the ROM based code so the trace vector contains the correct value or copy relocate the vector table into emulation memory or target RAM The correct value of the trace exception vector differs depending on whether you are using a background or foreground monitor The foreground monitor requires that the trace exception vector point to the TRACE_ENTRY address in the monitor located at offset 0x680 from the start of the monitor If the trace exception vector already contains the correct value the emulator performs the single step without modifying the vector table Otherwise the emulator attempts to change the trace a line and f line exception vectors to the TRACE_ENTRY address in the foreground monitor The background monitor only requires that the trace exception vector be an even value and point to readable memory This allows the processor to complete trace exception processing including initial prefetches from the trace exception handler during transition into the background monitor After reading the trace exception vector the emulator attempts to read from the address it points to If the read succeeds the emulator single steps without modifying the vector table Otherwise the emulator attempts to write the current value of VBR into the trace exception vector because the vector table is readable Ther
343. he memory module to hold it in place Groove in Memory Module and Alignment Cutout in Rib in Connector Memory Module Release Tabs 64794503 601 Chapter 18 Installation and Service Installing Hardware 4 Replace the plastic cover and insert new plastic rivets supplied with the emulator to secure the cover TO INSTALL RIVET PUSH DOWN ON RIVET HEAD TQ REMOVE RIVET PUSH UP ON CENTER SHAFT MEMORY SLOT 1 MEMORY SLOT 0 ADD PLASTIC WASHERS TO THESE TWO POSITIONS ONLY 602 Chapter 18 Installation and Service Installing Hardware Step 5 Connect the emulator probe to the demo target system 1 With HP 64700 power OFF connect the emulator probe to the demo target system When you install the probe into the demo board be careful not to bend any of the pins The socket of the M68020 is keyed to prevent inserting the probe into the demo board socket incorrectly There is no keying on the MC68030 EC030 so be very careful After connecting the probe to the demo board set the TEST OCE switches Press each switch rocker down in the desired direction Use the closed CL position for all switches when running performance verification tests TEST and use the open OP position for out of circuit emulation OCE EMULATOR PROBE PIN A1 DEMO BOARD PGA SOCKET S
344. he opposite direction to the other cards To install a card insert it into the plastic guides Make sure the connectors are properly aligned then press the card into the mother board socket Ensure that each card is seated all the way into its socket If the cards can be removed with your fingers the cards are NOT seated all the way into the mother board sockets Attach the ribbon cable from the emulation control card to the analyzer card and to the software performance analyzer if installed Tighten the thumbscrews that hold the emulation control card to the cardcage frame 80 CHANNEL ANALYZER CARD 647480 EMULATION CONTROL CONTROL CARD LAN CARD CARDCAGE NIE 3 64780E09 594 Installing Hardware Chapter 18 Installation and Service 11 Connect the 5 V power cable to the connector in the HP 64700 front panel R CONNECTION FOR DEMO BOARD POWE 595 Chapter 18 Installation and Service Installing Hardware 12 To reinstall the front bezel be sure that the bottom rear groove of the front bezel is aligned with the lip as shown below BE SURE BACK GROOVE OF BEZEL IS ALIGNED WITH
345. he status of the emulator analyzer view the event log Refer to Chapter 3 Using the emulator analyzer interface for details of how to display the event log Look at the present status of the emulator analyzer to see if it will suggest the cause of your problems Refer to Chapter 3 Using the emulator analyzer interface for details of how to display emulator analyzer status 300 Chapter 9 Solving Problems If the emulator appears to be malfunctioning If the emulator appears to be malfunctioning Check to make sure that the cables connecting the Emulation Control Board to the Emulation Probe are connected correctly Refer to Chapter 18 Installation and Service for details Run the performance verification procedure as described in Chapter 18 Installation and Service If the emulator fails this test contact your Hewlett Packard representative If the emulator passes the performance verification procedure look for other reasons for the problem Performance Verification is a thorough test but it cannot find every hardware failure in the emulator It is a good indication that the emulator is functioning correctly but if you are still convinced that the emulator is malfunctioning contact your local Hewlett Packard representative If the analyzer triggers on a program address when it should not Check to see if the analyzer is triggering on an instruct
346. hese must be properly latched inside the sockets Otherwise the cables will work loose and you will see erratic operation See illustration next page step 2 1 Connect the emulator probe cables to the emulation control card EMULATION CONTROL CARD EGRESS PANEL PROBE CABLES CABLE CLAMP 584 Chapter 18 Installation and Service Installing Hardware 2 When inserting cable connectors into the sockets press inward on the connector clips so that they hook into the sockets as shown The order of connecting cables was given in step 1 PUSH IN ON CLIPS SOQ THEY HOOK INTO SOCKET 585 Chapter 18 Installation and Service Installing Hardware 3 Connect the other ends of the cables to the emulator probe Again make sure the stainless steel clips on the cable connectors are properly latched within the sockets as shown in step 2 PROBE CABLES TOP PLASTIC COVER BOTTOM PLASTIC COVER DEMO BOARD 586 Chapter 18 Installation and Service Installing Hardware Step 3 Install Boards into the HP 64700 Card Cage WARNING Before removing or installing parts in the HP 64700 Card Cage make sure that the card cage power is off and that the power cord is disconnected CAUTION Do NOT stand the HP 64700 Card Cage on the rear panel You could damage the rear
347. hlight text the interface copies all highlighted text to the entry buffer when you release the mouse button Because the interface displays absolute addresses as hex values any copied and pasted string that can be interpreted as a hexadecimal value that is the string 58 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface contains only numbers 0 through 9 and characters a through f automatically has an h appended Note If you have multiple Graphical User Interface windows open a copy and paste action in any window causes the text to appear in all entry buffers in all windows That is because although there are several displays of the entry buffer there is only one entry buffer it is common to all windows That means you can copy and paste a symbol or an address seen in one window and then use it in another window On a memory display or trace display a symbol may not be completely displayed because there are too many characters to fit into the width limit for a particular column of the display To make a symbol usable for copy and paste you can scroll the screen left or right to display all or at least more of the characters from the symbol The interface displays absolute addresses as hex values Text pasted into the entry buffer replaces that which is currently there You cannot use paste to append text to existing text already in the entry buffer See To
348. ic information about each descriptor from the translation tables You may be able to provide the proper address translation for the monitor by simply modifying a single descriptor long word to convert an invalid page into a resident page If the translation tables are located in ROM you will need to copy them into emulation memory before you attempt to modify them This is done by storing all or part of your ROM to a file and then mapping emulation memory over the ROM address range and reloading the file 298 Solving Problems What to do when the emulator doesn t behave as expected 299 Chapter 9 Solving Problems Sometime during your use of the emulator you ll encounter a problem that isn t adequately explained by an error message or obvious target system symptoms This chapter explains how to solve some of these more complex problems Consider the following sources of information in addition to the specific problems discussed in this chapter Look at the error log Sometimes a problem will cause several error messages to be generated Only the last error message will be shown on the status line You can see the last 100 error messages by viewing the error log Refer to Chapter 3 Using the emulator analyzer interface for details of how to display the error log Look at the event log Changes in status of the emulator analyzer may cause unexpected results To see a list of the last 100 events that affected t
349. ical User Interface resources Edit the line containing HP64_Softkey lines so that it is uncommented and is set to the new value The lines and columns set the vertical and horizontal dimensions of the main display area in characters respectively Minimum values are 18 lines and 80 columns These minimums are silently enforced Note The application cannot be resized by using the window manager HP64_Softkey lines 36 HP64_ Softkey columns 85 Save your changes and exit the editor 3 If the RESOURCE_MANAGER property exists as is the case with HP VUE if you re not sure you can check by entering the xrdb query command use the xrdb command to add the resources to the RESOURCE_MANAGER property For example xrdb merge nocpp HP64_Softkey tmp Otherwise if the RESOURCE_MANAGER property does not exist append the temporary file to your SHOME Xdefaults file For example cat HP64_Softkey tmp gt gt HOME Xdefaults 4 Remove the temporary file 5 Start or restart the Graphical User Interface After you have completed the above steps you must either start or restart by exiting and starting again the Graphical User Interface Starting and exiting the Graphical User Interface is described in Chapter 3 Using the Emulator Analyzer Interface 523 Chapter 13 Setting X Resources To use customized scheme files j To use customized scheme files Scheme files are used to set platform specific r
350. ications for a specific remote host 5 Resource specifications included in the command line with the xrm option When specifications with identical resource names appear in different places the latter specification overrides the former 571 Chapter 17 X Resources and the Graphical User Interface Scheme Files Scheme Files Several of the Graphical User Interface s X resources identify scheme files that contain additional X resource specifications Scheme files group resource specifications for different displays computing environments and languages Resources for Graphical User Interface Schemes There are five X resources that identify scheme files HP64_Softkey labelScheme Names the scheme file to use for labels and button text Values can be Label LANG or a custom scheme file name The default uses the LANG environment variable if it is set and if a scheme file named Softkey LANG exists in one of the directories searched for scheme files otherwise the default is Label HP64_Softkey platformScheme Names the subdirectory for the platform specific color size and input scheme files This resource should be set to the platform on which the X server is running and displaying the Graphical User Interface if it is different from the platform where the application is running Values can be HP UX SunOS pc xview or a custom platform scheme directory name HP64_Softkey colorScheme Names the color scheme file
351. ich may have different conventions for mouse buttons and key names the Graphical User Interface supports different bindings and the customization of bindings This manual refers to the mouse buttons using general or generic terms The following table describes the generic mouse button names and shows the default mouse button bindings Mouse Button Bindings and Description Bindings Generic Button Sun Name HP 9000 SPARCsystem Description paste left left Paste from the display area to the entry buffer command paste middle middle Paste from the entry buffer to the command line text entry area select right right Click selects first item in popup menus Press and hold displays menus command select left right Displays pulldown menus pushbutton left left Actuates pushbuttons select outside of the display area Middle button on three button mouse Both buttons on two button mouse Chapter 1 Getting Started The following table shows the default keyboard bindings Keyboard Key Bindings Generic Key Name HP 9000 Sun SPARCsystem menu select extend char extend char insert insert char insert char delete delete char delete char left arrow left arrow left arrow right arrow right arrow right arrow up arrow up arrow up arrow down arrow down arrow down arrow escape escape escape TAB TAB TAB Chapter 1 Getting Started The Getting Started Tutorial This tutorial gives you step by step
352. ides various emulation functions including register access and target system memory manipulation During a run that is restricted to real time execution you must break execution to the monitor before executing any emulation commands that access registers emulation memory that is not dual port or target system memory You also can use the break command to pause user program execution Inserting breakpoints in software and using run until lt address gt commands can be used to break to the monitor at selected points in your target program The status line changes to Running in monitor If you enter a break command while the processor is in a wait state hung bus cycle the emulator may terminate hung target bus cycles in an attempt to transition into the monitor A bus cycle is considered hung when the target system has not provided the required termination within 300 ms The emulator never attempts to terminate hung bus cycles in program space The emulator will generate a status message for each address where it forcefully terminates a bus cycle You can determine emulator status Display Status to get information about a hung bus cycle before initiating a break and accept the termination side effect or use the reset command 139 Chapter 4 Using the Emulator Using Processor Run Controls To step the processor Choose Execution Step Source or Execution Step Instruction Select the starting point for processor st
353. ifying sequence term Specifies that you want to use the analysis sequencer You must enter at least one qualifier Specifies the address data or status value or value range that will satisfy this sequence term if looking for a sequence find_sequence or will restart at the beginning of the sequence restart See the QUALIFIER syntax pages for further information Selects the number of times a particular qualifier must be found before the analyzer proceeds to the next sequence term or the trigger term This option is not available when trace windowing is in use See the WINDOW syntax pages Prompts you for the number of times a qualifier must be found Allows you to add multiple sequence terms each with its own qualifier and occurrence count 421 Chapter 11 Emulator Commands SEQUENCING restart Examples See Also Selects global restart If the analyzer finds the restart qualifier while searching for a sequence term the sequencer is reset and searching begins for the first sequence term The following example uses symbols from an imaginary program that performs a series of tests in sequence Occasionally test2 completes but does not start test3 instead it jumps directly to test 9 The following trace command would be used to capture a trace only when the program fails to step from test2 to test 3 so you could look at activity associated with this program failure display trace trace find_sequence test1
354. ill reload the last valid configuration and absolute file 70 Chapter 3 Using the emulator analyzer interface Exiting the Emulator Analyzer Interface To end the emulation session in all windows To exit all windows save your configuration to a temporary file and lock the emulator so it cannot be accessed by others select File gt Exit Locked If using the command line enter end locked To exit all windows and release the emulator for use by others select File gt Exit Released If using the command line enter end release_system If you exit locked the interface saves the current configuration to a temporary file and locks the emulator to prevent other users from accessing it When you again start the interface with the emul700 command the temporary file is reloaded and you return to the configuration you were using when you quit Also when you end locked the contents of the entry buffer and command recall buffer are saved These recall buffer values will be present when you restart the interface In contrast if you end released all changes you made to your configuration are lost You may want to save your current configuration to a configuration file before you end released 71 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files Creating and Executing Command Files A command file is an ASCII file containing command line commands The interface can read
355. ime between the from address to the to address Minimum time The shortest amount of time between the from address to the to address Average time Average time between the from address and the to address The following equation is used to calculate the average time amount of time for all intervals mean D number of intervals Standard deviation Deviation from the mean of time The following equation is used to calculate standard deviation std dev N mean ie Where N Number of intervals mean Average time Ssumq Sum of squares of time in the intervals 273 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool Error tolerance and confidence level An approximate error may exist in displayed information Error tolerance for a level of confidence is calculated using the mean of the standard deviations and the mean of the means Error tolerance gives an indication of the stability of the information For example if the error is 5 for a confidence level of 95 then you can be 95 confident that the information has an error of 5 or less The Student s T distribution is used in these calculations because it improves the accuracy for small samples As the size of the sample increases the Student s T distribution approaches the normal distribution The following equation is used to calculate error tolerance error pct Where Om
356. in Record checksum failure Error 400 Cause During a transfer operation the checksum specified in a file did not agree with that calculated by the HP 64700 Action Retry the transfer operation If the failure is repeated make sure that both your host and the HP 64700 data communications parameters are configured correctly Records expected lt number gt records received lt number gt Error 401 Cause The HP 64700 received a different number of records than it expected to receive during a transfer operation Action Retry the transfer If the failure is repeated make sure that the data communications parameters are set correctly on the host and on the HP 64700 See the HP 64700 Series Card Cage Installation Service Guide for details Register access aborted Error 630 Cause Occurs when a lt CTRL gt c is entered during register display Register class cannot be modified lt register_class gt Error 637 Cause You tried to modify a register class instead of an individual register Action You can only modify individual registers See the display registers syntax pages in Chapter 11 Emulator Commands for a list of register names 499 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Register not writable lt register gt Error 636 Cause This error occurs when you attempt to modify a read only register Action If this error occurs you cannot modify the contents of the register
357. in your program This command saves you time without it you would need to search through memory displays for the location and value of a particular variable The address identifier and data value of each symbol may be displayed You must issue the command set symbols on to see the symbol names displayed For the first display data command after you begin an emulation session you must supply at least one expression specifying the data item s to display Thereafter the display data command defaults to the expressions specified in the last display data command unless new expressions are supplied or appended with a leading comma Symbols are normally set off until you give the command set symbols on Otherwise only the address data type and value of the data item will be displayed This option displays the recorded list of error messages that occurred during the emulation session This option displays the recorded list of events An expression is a combination of numeric values symbols operators and parentheses specifying an offset value for the breakpoint address See the EXPR syntax diagram 372 FCODE global_symbols local_symbols_in SYMB memory offset_by physical pod_command repetitively registers Chapter 11 Emulator Commands display The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes availa
358. ines to make connections between the emulator analyzer CMB connector or BNC connector Measurements that depend on these connections are called interactive measurements or coordinated measurements To configure the internal trig1 and trig2 lines you must access the emulation configuration either by choosing Modify Emulator Config in the graphical user interface and then selecting Interactive Measurement Specification or by entering the modify configuration command in the softkey interface and then answer yes to the Modify interactive measurement specification question In the softkey interface the following display appears Interactive Measurement Specification BNC lt lt gt gt BNC lt lt gt gt CMBT lt lt 23 gt CMBT lt lt gt gt Emulator lt lt Emulator Analyzer Analyzer lt lt gt gt NOTES 1 The connections marked are set up here in configuration 2 drive gt gt receive lt lt The display won t change however STATUS Interactive Measurement Specification Should BNC drive or receive Trigl neither _drive__ receive_ neither_ __both__ RECALL This display illustrates the possible connections between the internal lines trig1 and trig2 and the emulator analyzer and external devices 245 Chapter 6 Making Coordinated Measurements Using Trigger Signals Notice that the analyzer always drives tri
359. information in mnemonic format enter the display trace absolute status mnemonic command For some measurements it may be more convenient for you to view the trace data without instruction disassembly The Data format Absolute selection in the Trace Display Options dialog box or the display trace absolute command allows you to do this Notice that once you enter this format selection subsequent trace lists will be displayed in this format until you select the mnemonic format with the dialog box or display trace mnemonic command again You can select the display format for the status information when you choose Data Format Absolute in the dialog box or when you use the display trace absolute command The status information can be displayed in binary hex or as mnemonics that indicate the nature of the current bus cycle such as a read or write 191 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Examples Display the trace list without instruction disassembly and with status information in binary format Choose Trace Display Options and in the dialog box select Data Format Absolute Select Status Format Binary Then click the OK or Apply pushbutton Or using the command line enter display trace absolute status binary Display the trace list without instruction disassembly and with status information in hexadecimal format make appropriate entries in the Trace Display Options dialo
360. ing Symbol STATUS cws init_system init_system display local_symbols_in init_system procedure l run trace step display l modify break end ETc Command Cursor Backup Forward Clear to end Clear Help 114 Chapter 4 Using the Emulator Using Symbols To copy and paste a full symbol name to the entry buffer e When displaying symbols position the mouse pointer over the symbol press and hold the select mouse button and choose Cut Full Symbol Name from the popup menu Once the full symbol name is in the entry buffer you can use it with pulldown menu items or paste it to the command line area By cutting the full symbol name you can be sure that you specified the complete scope of the symbol including all names of symbols that were truncated File Display Modify Execution Breakpoints Trace Settings Help Examples Copy the full name i lt Your Key gt Make Disp Sre Prev Run Xfer til jl Break Step Asm of the highlighted Orena meere OoOO freen symbol to the entry Symbols in init_system module buffer by choosing Rrocedure symbols Address range __ Segment Offset 80320C 44483343 prog this menu item Static symb Display
361. ing options 189 To display the trace without disassembly 191 To display symbols in the trace list 193 xiv Contents To display source lines in the trace list 194 To change the column width 195 To select the type of count information in the trace list 196 To offset addresses in the trace list 198 To reset the trace display defaults 199 To move through the trace list 199 To display the trace list around a specific line number 200 To change the number of states available for display 201 To display program memory associated with a trace list line 202 To open an edit window into the source file associated with a trace list line 202 Analyzing Program Execution When the MC68030 MMU is Enabled 203 To program the deMMUer in a static memory system 203 To store adeMMUer setup file 205 To load the deMMUer from adeMMUer setup file 205 To trace program execution in physical address space 206 Making Complex Trace Measurements 207 To use address data and status values in trace expressions 212 To enter a range in a trace expression 213 To use the sequencer 214 To specify a restart term 215 To specify trace windowing 216 To specify both sequencing and windowing 217 To count states or time 218 To define a storage qualifier 219 To define a prestore qualifier 220 To trace activity leading up toa programhalt 221 To modify the trace specification 222 To repeat the previous trace command 223 To capture a continuous stream of pr
362. ing the emulator analyzer interface in multiple 39 word format 127 workstation HP 9000 memory needs 578 HP 9000 minimum performance 578 SPARCsystem memory needs 579 SPARCsystem minimum performance 579 X client 518 X resource 518 XAPPLRESDIR directory 571 XEN VIRONMENT variable 571 Xdefaults file 570 usr hp64000 lib X 1 1 HP64_schemes 573 app defaults file 570 class name for applications 568 class name for widgets 568 command line options 571 commonly modified graphical interface resources 520 defined 567 569 general form 567 instance name for applications 568 instance name for widgets 567 loading order 571 modifying resources generally 520 523 RESOURCE_MANAGER property 571 scheme file system directory 573 scheme files Graphical User Interface 572 574 scheme files named 573 schemes forcing interface to use certain 572 Softkey BW 573 Softkey Color 573 Softkey Input 573 Softkey Label 573 685 Index X resource continued Softkey Large 573 Softkey Small 573 wildcard character 568 xrdb 571 xrm command line option 571 X server 518 570 X Window System 39 686 Certification and Warranty Certification Hewlett Packard Company certifies that this product met its published specifications at the time of shipment from the factory Hewlett Packard further certifies that its calibration measurements are traceable to the United States National Bureau of Standards to th
363. initial recall buffer values Examples To set the initial values for the directory selection dialog box when the Graphical User Interface is used with 68020 emulators modify the m68020 dirSelectSub entries resource m68020 dirSelectSub entries HOME woo users projecti users project2 68020 Refer to the previous To modify the Graphical User Interface resources section for more detailed information on modifying resources 528 Chapter 13 Setting X Resources To set up demos or tutorials To set up demos or tutorials You can add demos or tutorials to the Graphical User Interface by modifying the resources described in the following tables Demo Related Component Resources Resource Value Description enableDemo False Specifies whether Help gt Demo True appears in the pulldown menu demoPopupSub indexFile Xdemo Index topics Specifies the file containing the list of topic and file pairs demoPopup textColumns 30 Specifies the width in characters of the demo topic list popup demoPopup listVisibleItemCount 10 Specifies the length in lines of the demo topic list popup demoTopic About demos Specifies the default topic in the demo popup selection buffer 529 Chapter 13 Setting X Resources To set up demos or tutorials Tutorial Related Component Resources Resource Value Description enable
364. instructions on how to perform a few basic tasks using the emulator analyzer interface The screen displays shown in this chapter were obtained by running the MC68030 EC030 emulator analyzer Some displays may differ slightly when running the MC68020 emulator analyzer The tutorial examples presented in this chapter make the following assumptions e The HP 64747 or HP 64748 emulator and HP 64704 analyzer are installed into the HP 64700 Card Cage e The HP 64700 is connected to the host computer e The emulator analyzer interface software has been installed as outlined in Chapter 18 Installation and Service and or updated as outlined in Chapter 19 Installing Updating Emulator Firmware e The emulator is operating out of circuit that is connected to the demo board not your target system and switches on the demo board are set to OCE OP e The emulator contains at least 60 Kbytes of emulation memory The Demonstration Program The demonstration program used in this chapter is a simple environmental control system The program controls the temperature and humidity of a room requiring accurate environmental control 11 Chapter 1 Getting Started Step 1 Start the demo j Step 1 Start the demo A demo program and its associated files are provided with the Graphical User Interface Change to the demo directory e If using the MC68020 emulator type ed usr hp64000 demo debug_env hp64748 lt RETURN gt
365. ints Display e Global Symbols Display e Local Symbols Display e Status Line e Command Line 57 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface j To place values into the entry buffer using the keyboard Position the mouse pointer within the text entry area An I beam cursor will appear Enter the text using the keyboard To clear the entry buffer text area from beginning until end press the lt CTRL gt u key combination To copy and paste to the entry buffer To copy and paste a discrete text string as determined by the interface position the mouse pointer over the text to copy and click the paste mouse button To specify the exact text to copy to the entry buffer press and hold the paste mouse button drag the mouse pointer to highlight the text to copy and paste release the paste mouse button You can copy and paste from the display area the status line and from the command line entry area When you position the pointer and click the mouse button the interface expands the highlight to include the most complete text string it considers to be discrete Discrete here means that the interface will stop expanding the highlight in a given direction when it discovers a delimiting character not determined to be part of the string A common delimiter would of course be a space When you press and hold the mouse button and drag the pointer to hig
366. inuing Command File Lines 75 Specifying a Search of Several Command File Directories 75 To create a command file by logging commands 76 To create a command file by using a text editor 77 To execute or playback a command file 78 To nest command files 79 To pause command file execution 80 To add a comment to a command file 81 To pass parameters to a command file 82 To increase flexibility of command files by using amp ArG_IEfT 84 To specify the order of searching several command file directories HP64KPATH 85 xi Contents Forwarding Commands to Other HP 64700 Interfaces 87 To forward commands to the high level debugger 87 To forward commands to the software performance analyzer 88 Accessing the Terminal Interface 89 To display the Terminal Interface screen 90 To copy the Terminal Interface screen contents toa file 90 To enter Terminal Interface commands 91 To get help on Terminal Interface commands 93 Accessing the Operating System 94 To set environment variables 94 To enter UNIX commands 94 To display the name of the emulation module 96 Using the Emulator The Emulator And Its Applications 98 The demo Application 99 To build programs 99 To configure the emulator 101 Loading and Storing Programs 102 To load a program 102 To load the demo program 104 To store a program 105 To edit files 106 Using Symbols 109 To load a symbol database 110 To display global symbols 111 To display local symbols
367. ion The current trace specification will be modified but a new trace will not be started To start a trace with the newly loaded trace specification enter trace again or specify trace again not trace If you specify trace a new trace will begin with the default trace specification not the one you loaded Lets you specify a value to be used in place of the present content of the TC CRP SRP TTO and TT1 registers when reading the tables to determine the reverse translations 399 Chapter 11 Emulator Commands load user_mem verbose Examples See Also Load the file into user target system memory hardware In some emulators you can also load a background monitor file This options sets the verbose mode for the deMMUer load function The verbose mode shows a list of the physical address that can be translated by the deMMUer after loading the deMMUer If these address translations include function codes the function codes are shown beside the addresses example 000000000 003ffffff sp load sortl lt RETURN gt load configuration config3 lt RETURN gt load trace trace3 lt RETURN gt load demmuer verbose lt RETURN gt display trace display mmu_translations help load 400 Chapter 11 Emulator Commands log_commands log commands mH lt FILE gt lt RETURN gt A command file is an ASCII file containing Softkey Interface command
368. ion prefetch The analyzer cannot distinguish between prefetch and execution because the processor does not provide that information Usually your actual trigger address is within 16 words of the address where trigger is occurring Try to pad the program code with NOP instructions to move the trigger address away from the other code so that it won t be prefetched until it is time to trigger You may be able to insert a write instruction to a meaningless variable in your code immediately before the trigger address Then you can trigger on a write to the address of the meaningless variable Write transactions never appear in instruction prefetches 301 Chapter 9 Solving Problems If there are unexplained states in the trace list If there are unexplained states in the trace list Check that the sequence storage and trigger specifications are set up to exclude the states you don t need Try using the disassemble_from_line_number lt LINE gt align_data_from_line lt STATE gt option to the display trace command to inform the dequeuer which operand state belongs with the first instruction state Try using display trace dequeueing on Try using the disassemble_from_line_number lt LINE gt low_word option to the display trace command to begin disassembly from the low word of the starting state instead of the high word Check to see if instruction or operand access
369. ion tables to its corresponding physical address choose Display gt MMU Translations Then in the dialog box click on MMU Tables enter 40f0h in the Address box and click ok 167 Chapter 4 Using the Emulator Using The MC68030 Emulator With MMU Enabled Emulator Analyzer Display MMU Translations Type of Query MMU Mappings MMU Tables Logical Address End Address Recall Function Code Table Level MMU Register Values in hex 2 Override Processor Register Values Tevaue gog Recall CRP Value 84 bR Recall SRP Value eab Recall Using the command line enter display mmu_translations tables 40f0h To see how logical address 1000h in user space is mapped through the translation tables to its corresponding physical address choose Display MMU Translations Then in the dialog box click on MMU Tables enter 1000h in the Address box click on the pushbutton beside Function Code and select up from the submenu and click ok Using the command line enter display mmu_translations tables fcode up 1000h 168 Chapter 4 Using the Emulator Using The MC68030 Emulator With MMU Enabled To see details of a translation table used to map a selected logical address e Choose Display gt MMU Translations Then in the dialog box click on MMU Tables and enter the Logical Address whose translation table you want to see in the Address bo
370. ion trigger signal to BNC 248 drive emulation trigger signal to CMB 247 glossary definition of analyzer clock speed 642 introduction 172 trace at EXECUTE 243 trigger one with another 253 app defaults directory HP 9000 computers 570 Sun SPARCsystem computers 570 application resource See X resource architectures of virtual memory 317 ArG_IEfT with command files 73 amp ArG_iEfT 73 available adapters table 163 1K analyzer glossary definition of 655 B bases number 207 BBA basis branch analysis storing BBA data to a file 233 binary numbers 207 bindings mouse button and keyboard 9 BKPT breakpoint vector 148 BNC comparison to CMB trigger 238 connect to the rear panel 241 connector 236 trigger signal 238 break on analyzer trigger signal 254 break command 139 154 361 breakpoints 15 disabling execution breakpoints 150 enabling 150 generally 148 setting temporary breakpoints 152 bus cycle hung bus cycle defined 139 byte format 126 658 Index cables connecting to the emulator probe 584 power 605 can t break into monitor example 345 capture continuous stream of execution 224 card cage applying power 605 connecting to computer or LAN 607 cautions antistatic precautions 581 apply power to emulator before target system 163 BNC accepts only TTL voltage levels 241 CMB 9 pin port is NOT for RS 232C 239 make sure translation tables are valid 321 protect against static discharge 1
371. ions 561 hung bus cycle 139 in circuit emulator use 161 163 input scheme 520 573 installation 578 579 emulator firmware 634 hardware 580 606 how to verify it is correct 621 628 HP 9000 software 608 614 of optional memory modules 582 placing boards in the card cage 587 SPARCsystem software 615 620 instance name X applications 567 568 interactive measurements 245 interface forwarding commands to other interfaces 87 graphical user 6 how to use the graphical or softkey interface 35 if it won t start 30 669 Index interface continued softkey 4 the SPARCsystem softkey interface 533 interface emulator configuration exiting 286 modifying a section 280 starting 278 INVALID in address mapping display 328 inverse video graphical user interface demo tutorial files 530 keyboard accelerators 57 bindings 9 focus policy 56 label scheme 520 524 573 LAN connecting the card cage 607 LANG environment variable 573 large page mode of deMMUer defined 336 LD_LIBRARY_PATH environment variable 618 libraries Motif for HP 9000 700 578 lines in main display area 521 522 list of replaceable parts 629 631 listing the present MMU mappings 323 load command 102 options 398 400 load configuration democfg command 104 load demo command 104 load symbols command 110 load trace command 231 load trace_spec command 228 230 loading and storing 102 108 local symbols 208 365 373 displaying 112
372. ions are executed If you later enable breakpoints the ones in the table are still inactive To use them you must set them by choosing Breakpoints Set All or on the command line entering the modify software_breakpoints set command To set a permanent breakpoint When displaying memory in mnemonic format position the mouse pointer over the program line where you wish to set the breakpoint and click the select mouse button Or press and hold the select mouse button and choose Set Clear Software Breakpoint from the popup menu Place an absolute or symbolic address in the entry buffer then choose Breakpoints Permanent Using the command line enter the command modify software_breakpoints set lt address gt permanent The breakpoints feature must be enabled before individual breakpoints can be set When displaying memory in mnemonic format asterisks appear next to breakpoint addresses An asterisk shows the breakpoint is active Also if assembly level code is being displayed the disassembled instruction mnemonic at the breakpoint address will show the breakpoint instruction 151 Chapter 4 Using the Emulator Using Execution Breakpoints To set a temporary breakpoint Type in the absolute or symbolic address of the breakpoint you want to set in the entry buffer Then choose Breakpoints gt Temporary or choose Breakpoints Set if your version of HP 64700 system firmware is less than A 04 00 Cho
373. is grayed out and unresponsive Local Symbols Copies the local symbols from the symbol scope named by an enclosing symbol in the entry buffer If symbols have not been loaded this menu item is grayed out and unresponsive Pod Commands Copies the last 100 lines from the pod commands display Error Log Copies the last 100 lines from the error log display Event Log Copies the last 100 lines from the event log display See the copy command syntax in Chapter 11 Emulator Commands for more information 69 Chapter 3 Using the emulator analyzer interface Exiting the Emulator Analyzer Interface Exiting the Emulator Analyzer Interface The following paragraphs show you how to end single instances of the interface in selected windows and how to exit from the interface and end your session This section shows you how to e End a single window in the interface e End the emulation session in all windows To end a single window in the interface In the interface window you wish to close select File gt Exit Window If using the command line in the interface window you wish to close enter end This ends the interface instance in the window where the command is executed None of the other windows are affected If the window is the only window into the emulation session the above command ends the emulation session and leaves the emulator in a locked state Emulators restarted from a locked state w
374. isplayed 109 Chapter 4 Using the Emulator Using Symbols Example To load a symbol database Choose File gt Load Symbols Only In the dialog box click on the name of the desired symbols file and then click OK Using the command line load a new symbol database by entering the load symbols lt filename gt command lt filename gt is the name of the absolute file in HP64000 or IEEE 695 format for which you want to load symbols The load symbols command is useful when your system uses several different absolute files or when the target program resides in target ROM and is not loaded through the emulator The symbol database for the most recently loaded absolute file is the current symbol database If you want to use a symbol database from a different absolute file without reloading the file use the load symbols command to load only the symbol database for that file Suppose you have a system that uses two absolute files one called system x and another called task x You load these as follows load system x load task x The symbol database for task x will be available because it was loaded last To reference symbols from system x use the command load symbols system x Now the symbol database for task x will not be available 110 Chapter 4 Using the Emulator Using Symbols To display global symbols e Choose Display Global Symbols e Using the command line display global symbols by en
375. isplays the logical names in the usr hp64000 etc 64700tab net file and asks you to choose one If you don t include the lt products gt option your computer displays the products that have firmware update files on the system and asks you to choose one In the interactive mode only one product at a time can be updated You can abort the interactive progflash command by pressing lt CTRL gt c progflash will print Flash programming SUCCEEDED and return 0 if it is successful otherwise it will print Flash programming FAILED and return a nonzero error You can verify the update by displaying the firmware version information 635 Chapter 19 Installing Updating Emulator Firmware To update emulator firmware with progflash Examples To update emulator firmware in the HP 64700 that contains the em68030 emulator progflash lt RETURN gt HPB1471 19309 A 05 00 O03Jan94 64700 SERIES EMULATION COMMON FILES A Hewlett Packard Software Product Copyright Hewlett Packard Co 1988 All Rights Reserved Reproduction adaptation or translation without prior written permission is prohibited except as allowed under copyright laws RESTRICTED RIGHTS LEGEND Use duplication or disclosure by the Government is subject to restrictions as set forth in subparagraph c 1 II of the Rights in Technical Data and Computer Software clause at DFARS 52 227 7013 HEWLETT PACKARD Company 3000 Hanover St Palo Alto CA 94304
376. isted below cpu CPU space d Data space none Causes the emulator to ignore the function code bits p Program space S Supervisor space sd Supervisor data space sp Supervisor program space u User space ud User data space up User program space 395 Chapter 11 Emulator Commands FCODE Examples To copy a portion of user data memory to a file copy memory fcode ud 1000H thru 1fffH to mymem lt RETURN gt To modify a location in program memory modify memory fcode p 5000h long to 12345678h lt RETURN gt 396 lt HELP_FILE gt Examples Chapter 11 Emulator Commands HELP HELP lt HELP_FILE gt F Typing help or displays softkey labels that list the options on which you may lt RETURN gt receive help When you select an option the system will list the information to the screen The help command is not displayed on the softkeys You must enter it at the keyboard You may use a question mark in place of help to access the help information This represents the name of one of the available help files on the softkey labels You can either press the softkey that represents the desired help file or type in the help file name If you are typing in the help file name make sure you use the complete syntax Not all of the softkey labels reflect the complete file name help system_commands run lt RETURN gt To display information ab
377. isting emulator and insert an HP 64747 or HP 64748 emulator in its place the HP 64700 Series generic firmware and analyzer firmware may NOT be compatible and the software will indicate incompatibility In this event you must purchase a Flash EPROM board to update the firmware Instructions for installing this board and programming it from a PC or HP 9000 are provided in the HP 64700 Card Cage Installation Service manual Instructions for installing and updating emulator firmware using the Flash EPROM board are covered in Chapter 19 Installing Updating Emulator Firmware If you already have a modular HP 64700 Series Card Cage and want to remove the 1K analyzer and install the deep analyzer in its place the analyzer firmware will be updated by your installation The analyzer firmware is on the analyzer card Checking Hardware Installation After hardware installation run a performance test to verify that the emulator is working properly The performance verification procedure is described under Verifying the Installation later in this chapter Service Information Use this chapter when removing and installing hardware running performance verification and ordering parts See the HP 64700 Series Installation Service Guide for information on system configurations installing product software software updates and ordering parts for the card cage Turn off power to the card cage before removing or installing hardware Chapter 18 Insta
378. ite_hdwr symbol in the update_sys module place update_sys write_hdwr in the entry buffer and choose Trace About or on the commad line enter trace about long_aligned update_sys write_hdwr To specify a trigger and set the trigger position Place the trigger specification desired such as address 1000h in the entry buffer and then choose Trace After Trace gt Before or Trace gt About When displaying memory in mnemonic format position the mouse pointer over the program line that you wish to use as the trigger press and hold the select mouse button and choose Trace After Trace Before or Trace About from the popup menu Using the command line select trace after trace before or trace about to set the trigger position Normally the analyzer begins to save processor activity whenever the trace is started By selecting trigger position you can specify which portion of processor activity you will view in the trace list The trace after command causes the analyzer to fill its trace memory with processor activity that occurred after the trigger event The trace before command causes the analyzer to fill its trace memory with processor activity that occurred before the trigger event The trace about command causes the analyzer to fill its trace memory with processor activity that occurred before and after the trigger event With this command the trigger event is positioned at the center of the trace The actual
379. ited if desired and executed again Also trace specifications and trace data can be stored to files and loaded from files 172 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements Making Simple Trace Measurements You can make simple records of the processor s bus activity using just a few analyzer commands When you set up the analyzer to record processor bus activity you are preparing to make a trace measurement During the trace measurement the analyzer saves a record of the bus activity in trace memory The display of the trace memory content is called the trace list The information captured at the occurrence of each clock is called a state When a captured state matches your specification for the trigger state the analyzer identifies it as the trigger state and stores it in trace memory The default specification for the trigger state is any state When you start a trace measurement using the default trace specification the analyzer will identify the first state it captures as the trigger state and fill the remaining space in the trace memory with the states that follow it A trace is said to be complete when the trace memory is filled with captured states and the trigger state resides at its specified point in the trace memory the first state captured in memory by default When a trace measurement is started you can view the progress of the measurement by displaying the trace status In s
380. ith assembly level instructions intermixed with the high level source lines click on the Disp Sre amp Asm action key Memory sp imnemonic file main module main c address label data 32 extern void interrupt_sim simulate an interrupt 93 extern void do_sort sets up ascii array and calls 34 95 maint pr main main 4E560000 LINK W AG a088 2F GA MOVE L A2 A 247C000781 MOVEA L 000781A8 A2 init_system 14BC8841 MOVE B 1 A2 4EB9000032 JSR init init_system proc_spec_init 4EB9000039 JSR p proc_spec_init while true 4E71 NOP 3 Click on the Patch action key A window appears and the vi editor is started Under ORG main add the line LINK A6 1234h Exit out of the editor saving your changes using wq won The file you just edited is assembled and the patch main menu appears Type a lt RETURN gt to apply the patch 25 Chapter 1 Getting Started Step 12 Patch assembly language code Memory sp mnemonic file main module main c cS al ge extern void interrupt_sim simulate an interrupt 93 extern void do_sort sets up ascii array and calls 34 95 maint pr main main 4E561234 LINK W AB 91234 2F A MOVE L A2 A 2470800781 MOVEA L 808781A8 A2 init_system 14BC8881 MOVE B 1 A2 4EB9000032 JSR init init_system proc_spec_init 4EB9000039 JSR p proc_spec_init while
381. itor You can display registers or memory to understand the state of the system before the crash occurs Then you can step through the program instructions and examine changes in the system registers that lead up to the system crash Execution breakpoints are implemented using the BKPT instruction of the MC68020 MC68030 You can enable disable set or clear execution breakpoints Set execution breakpoints at the first word of program instructions Otherwise your BKPT may be interpreted as data and no breakpoint cycle will occur When the BKPT instruction is executed target program execution stops immediately unlike using the analyzer to cause a break into the monitor which may allow several additional bus cycles to execute before the break finally occurs Setting execution breakpoints in RAM When you set an execution breakpoint in RAM the emulator will place a breakpoint instruction BKPT at the address you specified and then read that address to ensure that the BKPT instruction is there The program instruction that was replaced by BKPT is saved by the emulator When the breakpoint instruction is executed the BKPT acknowledge cycle is detected by the emulator and the emulator causes a break to the monitor At this point the emulator replaces the BKPT instruction with the original instruction it saved It also replaces the BKPT instruction with the original instruction whenever you disable or remove the breakpoint The emulator
382. its offset into Table B etc The lowest order 12 bits contain the offset into the physical page indicated by Table D e The SRP supervisor root pointer is used by this address mapping Its contents point to the function code table whose base address is 1050 e The index used in the function code table is 6 supervisor program space which points to physical address 1080 The content of this address is 10a0 indicating a long A level table located at base address 10a0 The status also indicates that this table has been used U e The function code table points to Table A whose base address is 10a0 The index into Table A is 0 The content of Table A at the indexed location is 10b0 This indicates the base address of Table B There are also a number of status flags indicated e The physical address of the page indicated by Table D is finally calculated by adding the physical page offset f8 to the base address of the physical page c000 f8 cOf8 Status information Status can be assigned to an address at any point in its mapping To interpret status you must OR the status information at each level of the mapping For example the M bit shows that the content of the page indicated by Table D has been modified by a write or read modify write This applies only to addresses in this page A 1 might have been shown under the S status bit in the FC line It would indicate that only supervisor accesses are allowed for this function co
383. ity Flow Stop Char Channel Logical Processor Host Physical Mode Bits Size Type Name Type Name Device XON_ OFF NONE RTS 2 8 EE NENE TENE a a a ak a a a a ss EE os Bn RE a EOE SENE EENE E ee a Ga Sa oe E a eS hanes aa ae nus eee eo ae aS E serial em68030 m68030 myhost dev emcom23 OFF NONE RTS 2 8 Step 2 Start the interface with the emul700 command The emul700 software is part of the HP 64700 Operating Environment software you installed during the update process j Apply power to the emulator you wish to access after making sure the emulator is connected to the LAN or to your host system On the HP 64700 Series Emulator the power switch is located on the front panel near the bottom edge Push the switch in to turn power on to the emulator 2 Wait a few seconds to allow the emulator to complete its startup initialization 3 Choose a terminal window from which to start the Graphical User Interface 622 Chapter 18 Installation and Service Verifying the Installation 4 Start the Graphical User Interface by entering the emul700 command and giving the logical name of the emulator as an argument to the command as in HP64000 bin emul700 lt logical_name gt amp or emul700 lt logical name gt amp if HP64000 bin is in your path If you are running the X server if the Graphical User Interface is installed and if your DISPLAY environment variable is set the emul700 comm
384. ived on the CMB or BNC connectors So for example while the analyzer s trigger signal can be driven on the CMB and BNC connectors signals can also be received from the CMB and BNC connectors and used to stop user program execution In this case the emulator will break into the monitor on either the analyzer trigger or on the reception of a trigger signal from the CMB or BNC The following tasks show you how to set up the emulator and analyzer to Drive the emulation trigger to the CMB and BNC Break emulator execution on CMB and BNC signals Arm the emulation bus analyzer on CMB BNC and analyzer signals 246 Chapter 6 Making Coordinated Measurements Using Trigger Signals To drive the emulation bus analyzer trigger signal to the CMB Choose Modify Emulator Config 1 Inthe top level emulator configuration dialog box click on Interactive Measurement Specification under Analyzer Configuration Sections 2 Choose receive beside the CMBT on Trig1 item Using the command line enter modify configuration 1 Answer yes to the Modify interactive measurement specification question 2 Answer receive to the Should CMBT drive or receive Trig1 question You could also drive the emulation bus analyzer trigger to the CMB over the trig2 internal line by specifying that the CMBT should receive trig2 and that the emulation bus analyzer should drive trig2 247 Chapter 6 Making Coordinate
385. k end ETC Command Cursor Sackup Forward Clear to end Clear ER b Command buttons Includes command Cursor buttons for command line area recall button control Menu Bar Provides pulldown menus from which you select commands When menu items are not applicable they appear half bright and do not respond to mouse clicks Action Keys User defined pushbuttons You can label these pushbuttons and define the action to be performed Chapter 1 Getting Started Entry Buffer Wherever you see in a pulldown menu the contents of the entry buffer are used in that command You can type values into the entry buffer or you can cut and paste values into the entry buffer from the display area or from the command line entry area You can also set up action keys to use the contents of the entry buffer Entry Buffer Recall Button Allows you to recall entry buffer values that have been predefined or used in previous commands When you click on the entry buffer Recall button a dialog box appears that allows you to select values Display Area Can show memory data values analyzer traces registers breakpoints status simulated I O global symbols local symbols pod commands the emulator s underlying Terminal Interface error log or display log Whenever the mouse pointer changes from an arrow to a hand you can press and hold the select mouse button to access popup menus Scroll Bar A stick
386. k cycle BERR must only satisfy the late BERR low to clock low setup time 27A for the following clock cycle 3 This parameter specifies the maximum allowable skew between DSACKO to DSACK 1 asserted or DSACK1 to DSACKO asserted specification 47 must be met by DSACKO or DSACK1 552 10 11 12 13 14 15 Chapter 16 Specifications and Characteristics HP 64747 Electrical Specifications This specification applies to the first DSACKx signal asserted In the absence of DSACKx BERR is an asynchronous input using the asynchronous input setup time 47 DBEN may stay asserted on consecutive write cycles The minimum values must be met to guarantee proper operation If this maximum value is exceeded BG may be reasserted lt This specification indicates the minimum high time for ESC and OCS in the event of an internal cache hit followed immediately by a cache miss or operand cycle This specification guarantees operation with the MC68881 or MC68882 which specifies a minimum time for DS negated to AS asserted specification 13A in the MC6888 1 MC68882 User s Manual Without this specification incorrect interpretation of specifications 9A and 15 would indicate that the MC68030 does not meet the MC68881 requirements This specification allows a system designed to guarantee data hold times on the output side of data buffers that have output enable signals gererated with DBEN The timing on DBEN
387. l address Action Try any other function code space No valid trace data Cause You tried to store trace data before a trace was completed Action Wait until valid trace data is available before attempting to store a trace Not a valid trace file load aborted Cause You tried to load a file TR that was not created by the emulation session Action Only load trace data files that were created by the emulator Not compatible trace file load aborted Cause You tried to load a file TR that was created by another type of emulator Action Only load trace data files that were created by the same type of emulator 494 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Number of lines not in range 1 lt valid lines lt 50 Cause You tried to enter a number of lines that was outside the range from to 50 Action Try entering the command again using a valid number of lines Number of spaces not in range 2 lt valid spaces lt 15 Cause You tried to enter a number of spaces outside the range from 2 to 15 Action Try entering the command again using a valid number of spaces opcode extends beyond specified address range Cause Memory disassembly is attempted on an address range that is too small Action Display memory mnemonic using a large address range or no address range at all Out of DeMMUer resources Error 163 Cause You used the load demmuer command to load the deMMUer but there
388. lator be sure to turn off power to your target system To probe other types of target system sockets Adapters for special target system probing needs are available as shown in the following table Probe type HP part number 68020 PGA to PGA extender 64748 61604 68020 PGA to PQFP extender E2426 61601 68020 PGA to 68EC020 PGA adapter 64748 87602 68030 EC030 PGA to PGA extender 64747 61601 68030 EC030 PGA to PQFP surface mount adapter E2406 61602 low profile 68030 EC030 PGA 90 CCW rotator 64700 87620 68030 EC030 PGA 90 CW rotator 64700 87619 163 Chapter 4 Using the Emulator Using The MC68030 Emulator With MMU Enabled Using The MC68030 Emulator With MMU Enabled When you enable memory management in the MC68030 emulator many capabilities and features become available that are not otherwise offered Also some of the features of the emulator behave differently The remaining pages in this chapter will help you when you are using the MC68030 emulator with the MMU enabled Chapter 10 Using MC68030 Memory Management provides detailed information to help you use the MC68030 MMU most efficiently Disable the MMU unless you are using it for address translation You will still be able to use the transparent translation registers for such tasks as defining cache modes To enable the processor memory management unit MC68030 only In order to use the MC68030 MMU to provide logical to physical address transla
389. le Early terminations which result in contiguous translation of multiple pages will also be shown on a single display line The display of MMU mappings will only show pages for which the system has valid mappings No information is given in the default mmu_translations display for paths designated invalid or for paths containing illegal entries If your system uses a small page size and has a large physical memory the Display MMU Translations command may cause your display to scroll through a long list of mappings To avoid a list of mappings that scrolls for a long time include an address or address range in your command By choosing Display MMU Translations and entering a limited address range in the dialog box or using the command display mmu_translations 0 thru Offffh for example the emulator will show the valid mappings for only the logical addresses in the range you specify instead of all possible mappings Another way to limit the number of address ranges shown in an MMU mappings display is to include a function code in your command if function code mapping is in use By choosing Display MMU Translations entering Start Address 0 and End Address Offffh and clicking on the desired function code in the dialog box or using the command display mmu_translations fcode u 0 thru Offffh the display will show all only the mappings for addresses 0 through Offff in user address space Note For convenience display mmu_translatio
390. le name where the symbol is located Action Enter the module name where the local symbol is located followed by a colon then the local symbol name No more processes may be attached to this session Cause You can operate an emulator in four windows Each time you start the emulator in another window a new process is attached to the current session Action Do not try to use more than four windows Once you have started the emulator in four windows you have reached the maximum number of processes allowed for that emulator 493 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Not an absolute file No absolute file lt file gt No absolute file No database lt file gt Cause You tried to load a file into the emulator that is not an executable or absolute file so the host system stopped the load process Action Try your command again and make sure you specify a valid absolute file name to be loaded No symbols loaded Cause You tried to step through lines in the source file before symbols are loaded Action Load symbols and try again or use step with the source option i e step assembly language program No translation for CPU space addresses Error 162 Cause You tried to use the display mmu_translations fcode cpu lt address gt command to display MMU translations By definition there are no translations performed by the MMU on CPU space addresses a CPU logical address is the physica
391. lex Trace Measurements You can have the analyzer record bus activity by simply using the trace command without any options But this doesn t use the analyzer effectively for two reasons e the trace memory may fill before the program reaches the states of interest e you may have to search through a long trace list to find a few states pertinent to your measurement problem The HP 64700 analyzer has trigger and sequence capabilities that help solve these problems These tools act as a filter for processor bus activity that allows the analyzer to capture only the states you want to see in the measurement A trigger tells the analyzer to identify a certain bus state as a point of reference in the trace of states A sequence is a more complex specification that specifies a series of bus states that must be found to satisfy the trigger This section tells you how to get the most out of the HP 64700 analyzer by using trigger and sequence specifications It also describes additional measurement tools to help you get more information from the trace Many of the options in this section can be combined one or more times See the trace syntax in Chapter 11 Emulator Commands for more information Expressions are an important part of trace specifications because they specify the numeric or logical values that the analyzer matches for trigger and storage Expressions are represented by the lt expression gt symbol in this chapter Refer to Ch
392. line enter run from main To run programs from the current program counter value Choose Execution Run from PC or on the command line enter run 136 Chapter 4 Using the Emulator Using Processor Run Controls To run programs from the transfer address Choose Execution Run gt from Transfer Address Using the command line enter run from transfer_address Most software development tools allow you to specify a starting or entry address for program execution That address is included with the absolute file s symbolic information and is known by the interface as the transfer address Before you can run from the transfer address it must exist in the absolute file and you must load symbols along with the program code from the absolute file If the interface does not detect a transfer address this menu item is grayed out and unresponsive to mouse clicks To run programs from reset Choose Execution Run gt from Reset Using the command line enter run from reset This command resets the emulation processor and begins executing your target program at either the start address for the processor or at the address fetched from the reset vector for the processor It may be necessary to supply a reset signal from your target system as well See your processor specific documentation for information about the exact mechanism involved 137 Chapter 4 Using the Emulator Using Processor Run Controls
393. line number of the data operand that is associated with the instruction at lt LINE gt A dequeued trace list is available through the disassembly options In the dequeued trace list unused instruction prefetch cycles are discarded and operand cycles are placed immediately following the corresponding instruction fetch If you choose a non dequeued trace list instruction and operand fetches are shown exactly as captured by the analyzer Once the dequeuer has been started on the correct opcode it will continue to disassemble correctly unless an unusual condition causes it to misinterpret the data By specifying the first instruction state for disassembly and the number of the first operand cycle for that instruction you can resynchronize the disassembly You may also need to use the low_word option You may see TAKEN NOT TAKEN or TAKEN beside a branch in your dequeued trace list TAKEN is shown beside the branch if the dequeuer determines that the branch was taken NOT TAKEN is shown if the dequeuer determines that the branch was not taken TAKEN means the dequeuer was not able to determine whether or not the branch was taken If you read down the trace list and see that the branch was taken use the disassemble_from_line_number command to restart disassembly at the trace list line number of the branch destination You will need to include the low word option if the destination opcode is in the low word at the destination address You ma
394. ling Hardware 7 Lift the bezel panel to remove Be careful not to put stress on the power switch extender LIFT BEZEL PANEL AND TIP TOWARD YOU TO REMOVE BE CAREFUL NOT TO PUT STRESS ON POWER SWITCH EXTENDER 8 If you re removing an existing analyzer card that provides external analysis remove the right angle adapter board by turning the thumb screws counterclockwise 592 Chapter 18 Installation and Service Installing Hardware 9 To remove the analyzer card insert a flat blade screwdriver in the access hole and eject the analyzer card by rotating the screwdriver EJECT ANALYZER CARD Do not remove the system control board This board is used in all HP 64700 emulation and analysis systems 593 Chapter 18 Installation and Service Installing Hardware 10 Install the analyzer and emulation control cards The analyzer is installed in the slot next to the system control card The emulation control card is installed in the second slot from the bottom of the card cage The software performance analyzer card may occupy any slot between the emulation bus analyzer and the emulation control card These cards are identified with labels that show their model numbers and serial numbers Note that components on the analyzer card face t
395. llation and Service Installing Hardware Step 1 Install optional memory modules on Deep Analyzer card if desired Observe antistatic precautions listed on the fifth page of this chapter With no optional memory modules installed on the deep analyzer card the trace memory depth is 8K If you are going to use the deep analyzer with this default trace memory depth skip this step and proceed to Step 2 of this installation procedure 1 Determine placement of the optional memory modules Two types of modules may be installed 256 Kbyte HP 64172A and 1 Mbyte HP 64172B Either module type may be installed in the banks on the analyzer card Do not use HP 64171A B or HP 64173A memory modules they are too slow If you install no memory modules the deep analyzer will have 8K maximum memory depth If you install four 256 Kbyte memory modules the analyzer will have 64K maximum memory depth If you install four 1 Mbyte memory modules the analyzer will have 256K maximum memory depth If you install a combination of 256 Kbyte memory modules and 1 Mbyte memory modules the analyzer will have 64K maximum memory depth All four connectors must have memory modules installed before the analyzer depth will be increased BANK 4 BANK 3 BANK 2 BANK 1 582 Chapter 18 Installation and Service Installing Hardware 2 To ensure correct installation of optional memory modules on the
396. lows you to view program execution one instruction at a time Softkey Interface the host computer interface program used in the UNIX environment The Softkey Interface is a friendly interface used to control HP 64700 emulators Software Breakpoint refer to execution breakpoint and access breakpoint in this glossary Software Performance Analyzer an analyzer that measures execution of software modules interaction between software modules and usage of data points and I O ports 651 Glossary Standalone Configuration Standalone Configuration the configuration in which a data terminal is used to control the HP 64700 Series emulator and the emulator is not connected to a host computer stderr an abbreviation for standard error output Standard error can be directed to various output devices connected to the HP 64700 ports stdin an abbreviation for standard input Standard input is typically defined as your computer keyboard stdout an abbreviation for standard output Standard output can be directed to various output devices connected to the HP 64700 ports Step see Single step Store Qualifier a specification that must be met by a state before it can be saved in the analyzer trace memory Synchronous Execution the execution of multiple HP 64700 Series emulators analyzers at the same time i e multiple emulator start stop Syntax the order in which expressions are structured in comma
397. ls_in 365 memory 365 noheader 366 registers 366 terminal interface screen to file 90 trace 367 copy command 363 368 copy and paste addresses 59 from entry buffer to command line 62 full symbol to entry buffer 115 multi window 59 62 symbol width 59 to entry buffer 58 copying to a file or printer 68 69 COUNT option to trace command 369 370 count states 218 count time 218 counter overflow glossary definition of 644 current working directory displaying 117 to change the context 118 current working symbol displaying 117 to change the context 118 cursor buttons 8 data communications specifications 562 data range command 213 data values 212 displaying 19 debugger forwarding commands to 87 opening an interface window 45 decimal numbers 207 deep analyzer glossary definition of 645 definitions of terms 641 655 662 Index deMMUer command options 331 detailed discussion 330 341 how it is loaded by the emulator 339 how to enable 331 how to load reverse translations 331 its reverse translation table 335 keeping it up to date 333 out of resources things to check 309 places strange addresses in trace list 333 programming in static memory system 203 resource limitations 335 resources used for function codes 341 resources used for two root pointers 340 restrictions when using 333 seeing present reverse translations 331 table how to conserve space 337 terms allocated from m
398. lt FILE gt memory thru to trace trace_spec Examples See Also This represents a file name you specify for the absolute file identifier or trace file where data is to be stored If you want to name a file beginning with a number you must precede the file name with a backslash so the system will recognize it as a file name This causes selected memory locations to be stored in the specified file with a X extension This allows you to specify that ranges of memory be stored Use this in the store memory command to separate memory locations from the file identifier This option causes the current trace data to be stored in the specified file with a TR extension This option stores the current trace specification in the specified file with a TS extension A comma separates memory expressions in the command line store memory 800H thru 20FFH to TEMP2 lt RETURN gt store memory EXEC thru DONE to 12 10 lt RETURN gt store trace TRACE lt RETURN gt store trace_spec TRACE lt RETURN gt display memory display trace help store load 436 Chapter 11 Emulator Commands SYMB SYMB lt SYMB gt 7 2 procedure A entry_exit_range J z segment lt SEG_NAME gt m Sa FILE 4 line gt H lt LINE gt
399. lues from earlier usages If you are using the command line you can use the use_TC_value use_CRP_value and or use_SRP_value options to the display mmu_translations command to specify desired values for the registers in order to obtain the display of MMU translations Use the analyzer with the deMMUer to find MMU mapping problems If your system operates properly until you turn on the MMU and then it fails the problem is most likely in the mappings used by the MMU to translate logical addresses to physical addresses You could go down the list of logical to physical translations to see the mapping scheme used to translate each logical address to its corresponding physical address but normally that would take too much time The analyzer can help you identify the one or few logical addresses that are being mapped incorrectly by the MMU Then you can choose Display MMU Translations click on MMU Tables in the dialog box and enter the suspect addresses to see the mapping tables used to translate those addresses On the command line you can use the display mmu_translations tables lt address gt command to look at the mapping tables used to translate the suspected addresses Failure caused by access to guarded memory If the problem is an access to guarded memory remember that guarded memory is guarded physical memory You need to find the logical address that the MMU improperly translated to guarded physical memory and then investigate
400. lusion you should not set the trace list to set source only when tracing assembly code This will result in optimum analyzer performance binary Lists absolute status information in binary form hex Lists absolute status information in hexadecimal form mnemonic Lists absolute status information in mnemonic form 388 Chapter 11 Emulator Commands DISPLAY TRACE Examples display trace count absolute display trace absolute status binary set source on display trace mnemonic set source only See Also copy trace help display help trace store trace set 389 Chapter 11 Emulator Commands end end locked release_system end lt RETURN gt end locked release_system You can end the emulation session and leave the emulator in one of three states e You can exit the interface and leave the emulator in a continue state which allows you to re enter the emulation session e You can exit the interface and leave the emulator in a locked state so that it cannot be accessed by other users e You can exit the interface and release the emulator for use by others Pressing CNTL d performs the same operation as pressing end lt RETURN gt Pressing CNTL or CNTL performs the same as end release_system lt RETURN gt If the command is specified without any options two different things can occur What occurs depends on whether the interface instance being ended is the
401. m Graphical User Interface and Softkey Interface Using your SPARCsystem keyboard To get function Press this key kill Control Z Do not use Disabled in xterm window created by hp64term softkey 1 Fl softkey 2 F2 softkey 3 F3 softkey 4 F4 softkey 5 F5 softkey 6 F6 softkey 7 F7 softkey 8 F8 536 Chapter 14 The SPARCsystem Graphical User Interface and Softkey Interface Keyboard template Keyboard template Cut out the template on this page and place it on your keyboard for quick reference ok8 Place the Sk1 label over the F1 key Interface If you exported KEYMAP sun 2 9 or KEYMAP xterm 2 9 then place the Sk1 label over the F2 key insert del char Sk7 prev next page lt shift 4 e a roll keys cmd completion The roll keys only work in xterm windows refresh AR means to hold down the control key while pressing R Ins Oel PgUp On Sk6 o ping P G m nN r wo oO x ok5 ok4 BK FW recall home home down arrow keys back tab clearline Sk3 Home End Sk2 Ski CA Packar 537 538 15 Microtec Language Tools Used With MC68020 and MC68030 EC030 Emulators Using the emulator analyzer with Microtec language tools 539 Chapter 15 Microtec Language Tools Used With MC68020 and MC68030 EC030 Emulators Microtec Language Tools used with the Emulator Analyzer This chapter contains the following impo
402. m administrator for more details regarding keyboard definitions A wait command in a command file will cause execution of the command file to pause until a lt CTRL gt c signal is received if lt CTRL gt c is defined as the interrupt signal Subsequent commands in the command file will not execute while the command file is paused You can verify whether the interrupt signal is defined as lt CTRL gt c by typing set at the system prompt 452 Chapter 11 Emulator Commands wait measurement_ This causes the system to pause until a pending measurement completes for complete example when a trace data upload process completes or until a lt CTRL gt c signal is received If a measurement is not in progress the wait command will complete immediately or This causes the system to wait fora lt CTRL gt c signal or for a pending measurement to complete The wait will end when the first one of these two conditions occurs seconds This causes the system to pause for a specific number of seconds lt TIME gt This prompts you for the number of seconds to insert for the delay Examples wait lt RETURN gt wait 5 wait measurement_complete lt RETURN gt See Also help system_commands help wait 453 Chapter 11 Emulator Commands WINDOW disable enable QUALIFIER WINDOW From trace syntax diagram d enable QUALIFIER ei gt aC disable QUALIFIER WINDOW allows you to selectively toggle anal
403. mand The symbols and source defaults are set source off symbols off Formats the memory listing in a single column Displays the memory at the address pointed to by the current program counter value If you are running a program when you enter this command the memory will be displayed at the address pointed to by the program counter at the moment you enter the command Formats the memory listing in multiple columns Displays the absolute or blocked memory listing as byte values An expression is a combination of numeric values symbols operators and parentheses specifying a memory address or memory offset value See the EXPR syntax diagram 378 extended FCODE long mnemonic offset_by packed physical previous_display real repetitively short Chapter 11 Emulator Commands DISPLAY MEMORY Displays memory as 96 bit IEEE 754 real numbers The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available and for an explanation of those codes Displays the memory listing as long word values When used with the real parameter long displays memory in a 64 bit real number format This causes the memory listing to be formatted in assembly language instruction mnemonics with associated operands When specifying mnemonic format you should include a starting address that corresponds to the first byte of an operand to ensure
404. mbol 48828618 808188C cp4 inst addr cir long wr ds32 into the entry buffer Command E Cursor SS to Se 60 j Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface To recall entry buffer values Position the mouse pointer over the Recall button just to the right of the entry buffer text area click the mouse button to bring up the Entry Buffer Recall dialog box and then choose a string from that dialog box The Entry Buffer Recall dialog box contains a list of entries gained during the emulation session as well as any predefined entries present at interface startup If you exit the emulation analysis session with the interface locked recall buffer values are saved and will be present when you restart the interface You can predefine entries for the Entry Buffer Recall dialog box and define the maximum number of entries by setting X resources refer to Chapter 13 Setting X Resources See the following To use dialog boxes section for information about using dialog boxes To use the entry buffer Place information into the entry buffer see the previous To place values into the entry buffer using the keyboard To copy and paste to the entry buffer or To recall entry buffer values task descriptions Choose the menu item or click the action key that uses the contents of the entry buffer that is the menu item or action key that c
405. me as any other unused prefetch and no time duration measurement will be made Its time will be included in the measure of time spent outside the procedure or function e Jfa module is exited from the normal point and then reentered from some other point the exit will also be assumed to be an unused prefetch of the exit state If you are making duration measurements on a function that is recursive or one that has multiple entry and or exit points the result may be invalid information To use the Software Performance Measurement Tool Activity and duration measurements are made with the SPMT in a five step process summarized as follows 1 Set up the trace command 2 Initialize the performance measurement 3 Run the performance measurement 261 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool 4 End the performance measurement 5 Generate the performance measurement report Step 1 Set up the trace command Before you initialize and run performance measurements the current trace command the last trace command entered must be properly set up 1 Increase the trace depth to the maximum number by entering display trace depth 512 In general you want to give the SPMT as many trace states as possible to post process to increase statistical accuracy Also it is important that time be counted by the analyzer otherwise the SPMT measurements will not be correct
406. memory commands The break could result from any of the break conditions or could have resulted from a lt CTRL gt c break Action Retry the operation If breaks are occurring continuously you may wish to disable some of the break conditions Memory range overflow Cause A modify memory command is attempted that would cross physical 0 Action Limit the modify memory command to not overflow physical 0 or break the command into two separate modify commands 488 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Missing option or operand Error 313 Cause You have omitted a required option to the command Action Reenter the command with the correct syntax Use online help by entering help lt command gt Refer to Chapter 11 Emulator Commands for further information on required syntax MMU configuration error invalid lt register gt value Error 162 Cause You tried to use the display mmu_translations or load demmuer verbose command to display MMU translations or to load the deMMUer but one of MMU registers TC CRP or SRP was invalid You will also see this message if you specify an invalid alternate register value on the command line in a display mmu_translations command Action To solve this problem use the modify register MMU lt register gt to lt value gt command to initialize the MMU registers to valid values or use the display mmu_translations use_TC_value lt value gt use_CRP_value l
407. memory space for the emulator to break to its monitor program before the trace memory is filled Otherwise some of your program execution will not be captured in the trace Many states may be executed before the emulation break occurs depending on the state of the processor when the trig signal arrives Also if your program executes critical routines in which interrupts are masked the occurrence of 224 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements trig may be ignored until the critical routine is completed when using a foreground monitor If you are using a foreground monitor enter the following additional pod commands to prevent the trace memory from capturing monitor execution The following example commands will obtain this result in some emulators Settings Pod Command Keyboard trng addr lt address range occupied by your monitor gt trigger on range address lt address range gt where lt address range gt is expressed as lt first addr gt lt last addr gt tsto r trace store not range Click the suspend softkey Note that trng addr lt addr gt lt addr gt means define an address range for the analyzer tsto r means store all trace activity except activity occurring in the defined address range Start the analyzer trace with the command Trace A gain Start your program running using Execution Run from O from Transfer Address or from Reset as appropriate The T
408. ment keyword is preferred because it will do scanning for PROG Prog prog and other expressions of the program segment in the example line The fsegment keyword will only scan for the one expression PROG module These refer to module symbols For most C compilers these names derive from the source file name For Ada they are 439 Chapter 11 Emulator Commands SYMB procedure prospecial static task packages Other language systems may allow user defined module names Any procedure or function symbol For languages that allow a change of scope without explicit naming SRU assigns an identifier and tags it with type procedure Prospecial symbols are symbols that were created by the HP SRU such as entry exit and return They are derived symbols not intended for the product user Typical prospecial symbols would be entry 1 entry2 and entry3 in a procedure that has three possible entry points Static symbols which include global variables The logical address of these symbols will not change Task symbols which are specifically defined by the processor and language system in use A colon is used to delimit the UNIX file path from the line segment or symbol specifier When following the file name with a line or segment selection there must be a space after the colon For a symbol there must not be a space after the colon 440 Chapter 11 Emulator Commands SYMB Examples The follo
409. ment to a command other than an analyzer command For example you may have specified digits that don t correspond to the base specified or you forgot to precede a hexadecimal letter digit with a number even zero 0 Action Reenter the command and the address specification Use online help by typing help EXPR and help SYMB See the lt ADDRESS gt and the lt EXPRESSION gt syntax pages in this manual for information on address specifications Invalid address range lt address_range gt Error 311 Cause You specified an invalid address range as an argument to a command other than an analyzer command For example you may have specified digits that don t correspond to the base specified or you forgot to precede a hexadecimal letter digit with a number or the upper boundary of the range you specified is less than the lower boundary Action Reenter the command and the address specification Use online help by entering help EXPR or help SYMB See the lt ADDRESS gt syntax pages and lt EXPRESSION gt syntax pages in this manual for information on address specifications Also make sure that the upper boundary specification is greater than the lower boundary specification the lower boundary must always precede the upper boundary on the command line 483 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Invalid answer in lt CONFIGURATION FILENAMES ignored Cause You must provide acc
410. ments Store qualify writes to the variable and use prestore to capture the instructions that caused those writes to occur perhaps by prestoring program reads Examples Specify a prestore qualifier trace prestore address not range gen_ascii_data thru gen_ascii_data end status prog and read only long_aligned gen_ascii_data Disable prestore qualification trace prestore anything To trace activity leading up to a program halt e Choose Trace Until Stop e Using the command line trace on a program halt by entering trace on_halt The above commands cause the analyzer to continuously fill the trace buffer until you issue a Trace Stop or stop_trace command Sometimes you may have a program failure that can t be attributed to a specific trigger condition For example the emulator may access guarded memory and break to the monitor You want to trace the events leading up to the guarded memory access but you don t know what to specify for a trigger Use the above command The analyzer will capture and record states until the break occurs The trace list will display the last processor states leading up to the break condition Note that the trace until stop command may not capture the desired information when you are using a foreground monitor unless the code that causes the break also causes the processor to halt because the analyzer will continue to capture foreground monitor states after the break When using a foreg
411. microprocessor m68030 lt resource gt lt value gt for the 68030 m68020 lt resource gt lt value gt for the 68020 4 Apply to a specific HP64_Softkey application connected to a specific processor perf m68030 lt resource gt lt value gt for the 68030 perf analyzer emul m68020 lt resource gt lt value gt for the 68020 emulator If all four examples above are used for a particular resource 3 will override 2 for all applications connected to a 68030 emulator and 4 will override 2 but only for the specifically mentioned type of microprocessor When modifying resources your resource paths must either match or be more specific than those found in the application defaults file 569 Chapter 17 X Resources and the Graphical User Interface How X Resource Specifications are Loaded How X Resource Specifications are Loaded When the Graphical User Interface starts up it loads resource specifications from a set of configuration files located in system directories as well as user specific locations Application Default Resource Specifications Default resource specifications for an application are placed in a system directory HP UX usr lib X 1 1 app defaults SunOS ust openwin lib X 1 1 app defaults The name of the Graphical User Interface application defaults file is HP64_Softkey same as the application class name This file is well commented and contains information about each of the X resource
412. mmand files 73 SHORT defined in address mapping display 328 should analyzer drive or receive trig2 251 should BNC drive or receive Trig1 248 250 should BNC drive or receive trig2 251 should CMBT drive or receive trig1 247 249 should CMBT drive or receive trig2 251 sig INT 267 signals CMB 237 simulated I O 276 374 simultaneous program run to start 252 single step 140 size scheme 520 573 small page mode of deMMUer defined 336 678 Index softkey interface 4 command conventions 5 command descriptions 350 entering commands 47 getting online help on commands 52 how to use it 35 introduction to using 36 manipulating the display with control keys 67 SPARCsystem 534 softkey pushbuttons 7 software breakpoints 374 405 installation for HP 9000 608 614 installation for SPARCsystems 615 620 software breakpoints clearing 154 clearing all breakpoints 156 displaying and seeing their status 156 see execution breakpoints 148 149 151 157 software enable for the MMU 321 software performance analyzer comparison to SPMT 256 forwarding commands to 88 opening a measurement window 45 software performance measurements See performance measurements source lines display in trace list 194 memory display 122 123 trace display 122 123 source symbols in displays 158 sp defined 325 SPARCsystem assembler defaults 543 keyboard template 537 librarian defaults 544 linker defaults 543 softkey interf
413. mmand line specify a trace sequence by entering the trace find_sequence lt bus_state gt occurs lt times gt then lt bus_state gt occurs lt times gt trigger lt bus_state gt command lt bus_state gt represents a combination of address data and status expressions that must be matched to satisfy the trigger or sequence qualifier lt times gt is the number of times that bus state must occur to satisfy the qualifier The trace sequencer allows you to specify up to seven sequence terms including the trigger that must be satisfied to trigger the analyzer If you use the windowing specification the sequence specification is limited to four sequence terms Use the analyzer sequencer to trigger after finding a series of events trace find_sequence main then update_sys get_targets trigger after proc_spec 214 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements To specify a restart term e Create your first specification form on the command line That will enter the proper format in the Trace Specification Selection dialog box Obtain the dialog box by choosing Trace Trace Spec You can click on your specification in the dialog box edit it if desired and click OK e Using the command line restart the search for the trace sequence terms by including the restart parameter in the trace find_sequence lt bus_state gt occurs lt times gt then lt bus_state gt occurs lt times gt restart
414. mn queue full Cause The HP 64700 emulator daemon process command was too large for the host system to process Action You must press end_release_system to exit this emulation session completely then start a new session Make sure the host system is operating properly that all emulator analyzer interface software has been loaded correctly and the data communication switch settings on the emulator rear panel match the settings in the usr hp64000 etc 64700tab net or 64700tab file You may have to cycle power and use emul700 U lt logical name gt to unlock the system 476 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Emul700dmn sem op failed perhaps kernel limits too low Cause The host system could not start the emulation session there may be too many processes running on the host system Action Make sure the host system is operating properly and is not overloaded with currently executing processes Stop or remove some processes on the system Also verify that the semaphore capabilities have been installed in the UNIX kernel Then try starting the emulation session again Emul700dmn version incompatible with this product Cause The emulation session could not begin because the version of the HP 64700 emulator daemon executable on host system is not compatible with the version of the emulator analyzer interface you are using Action Make sure the software has been properly installed Then try sta
415. modify software_breakpoints set update_sys get_targets Reenable all existing breakpoints modify software_breakpoints set 153 Chapter 4 Using the Emulator Using Execution Breakpoints To clear an execution breakpoint Type in the name of the breakpoint you want to clear in the entry buffer Then choose Breakpoints Clear Choose Breakpoints Clear All to clear all existing breakpoints in the breakpoint table Inside the breakpoints list display press and hold the select mouse button and then choose Clear delete Breakpoint from the popup menu to clear the selected breakpoint Using the command line enter comands as follows e To remove an existing breakpoint at a location given by lt address gt enter modify software_breakpoints clear lt address gt e To remove all existing breakpoints enter modify software_breakpoints clear When you re finished using a particular breakpoint you should clear the breakpoint table entry The original instruction is restored to memory and the breakpoint table entry is removed 154 Examples Bring up the menu and choose this item to clear the highlighted breakpoint Chapter 4 Using the Emulator Using Execution Breakpoints To clear a breakpoint using the breakpoints display popup menu Hewlett Packard Emulator Analyzer emulator02 m68020 Status Lina 00080770 7 n for Highligh Set Inactivate Breakpoint Clear delet
416. mory mode Byte is the default Memory modifications of real values use the currently set display memory mode Short is the default This option allows you to modify memory as 96 bit Motorola format packed real numbers This option allows you to set a breakpoint that remains at the breakpoint address and causes a break each time it is hit during execution It is not automatically replaced by the target program instruction when it is hit Permanent breakpoints can only be set if your version of HP 64700 system firmware is A 04 00 or greater This allows you to specify that the addresses to be modified are addresses in physical memory 404 Chapter 11 Emulator Commands modify real Modify memory as real number values lt REAL gt This prompts you to enter a real number as the value register The entry you specify for lt REGISTER gt determines which register is modified Register modification cannot be performed during real time operation of the emulation processor A break command or a condition that causes the emulator to break to the monitor must occur before you can modify registers Basic registers include PC STATUS USP ISP MSP CACR CAAR DO through D7 AO through A7 VBR DFC and SFC Other registers you can modify include The FPU registers if your target system is equipped with a floating point coprocessor FPCR FPSR FPIAR and FPO through FP7 The ACU registers if you are using an MC68030 EC030 with
417. mulation will break to the monitor when the CMB signal occurs You could also break emulator execution on a trigger signal from the CMB over the trig2 internal line by specifying that the CMB should drive trig2 and that the emulator break should receive trig2 249 Chapter 6 Making Coordinated Measurements Using Trigger Signals To break emulator execution on signal from BNC Choose Modify Emulator Config 1 In the top level emulator configuration dialog box click on Interactive Measurement Specification under Analyzer Configuration Sections 2 Select drive for the BNC on Trig item Using the command line enter modify configuration 1 Answer yes to the Modify interactive measurement specification question 2 Answer drive to the Should BNC drive or receive Trig question The trig signal is always supplied to the emulator By entering the command trace break_on_trigger emulation will break to the monitor when the BNC signal occurs You could also break emulator execution on a trigger signal from the BNC over the trig2 internal line by specifying that the BNC should drive trig2 and that the emulator break should receive trig2 250 Chapter 6 Making Coordinated Measurements Using Trigger Signals To arm the emulation bus analyzer on signal from CMB Using the command line enter modify configuration 1 Answer yes to the Modify interactive measurement specific
418. mulator software automatically rebuilds portions of the symbol database as you reference symbols in modified modules Usually you should use srubuild after you rebuild your absolute files to save time during emulation Global symbol information is immediately available for the file that you loaded To obtain local symbol information you need to reference the module that contains the symbols You can use the symbol names instead of addresses when entering expressions as part of an emulation command Therefore you don t have to remember address information to make a measurement Also the emulator can display symbols within the results of a measurement using the set symbols on command This helps you relate the measurement to your original program Long symbol names can be truncated in the symbols display however you can increase the width of the symbols display by starting the interface with more columns refer to Chapter 13 Setting X Resources The MC68020 and MC68030 emulator interface can read absolute files in HP OMF or IEEE 695 format For more information on SRU refer to the Symbol Retrieval Utilities SRU User s Guide Also refer to the information on symbol entry syntax in the SYMB section of Chapter 11 Emulator Commands When you load an absolute file into memory unless you specify a load without symbols symbol information is also loaded Both global symbols and symbols that are local to a source file can be d
419. mulators contain a low level Terminal Interface which allows you to control the emulator s functions directly You can issue Terminal Interface commands through the Softkey Interface by using pod_command With pod_command you can issue a single command or enter the keyboard mode which allows you to enter a series of commands The MC68020 and MC68030 EC030 Emulator Terminal Interface User s Guide is an excellent source of information about using the Terminal Interface to control the emulator There are certain commands you should avoid while using the Terminal Interface through pod_command however because these commands can affect the operation of the Softkey Interface See the User s Guide and the Terminal Interface screen for more information about Terminal Interface commands that should not be used Although you can issue Terminal Interface commands via this command you cannot see the results of those commands unless you display the Terminal Interface screen with display pod_command Enters an interactive mode where you can simply type Terminal Interface commands unquoted on the command line Use display pod_command to see the results returned from the emulator Prompts you for a Terminal Interface command as a quoted string Enter the command in quotes and press lt RETURN gt This command is displayed once you have entered keyboard mode Select it to stop interactive access to the Terminal Interface and return to the Sof
420. n gt memory lt VA are lt lt EXPR gt CETD to lt STRING gt lt RETURN gt lt REGISTER gt eC Dae EXPR register iF oe lt CLASS gt software_breakpoinis a set Q FCODE lt EXPR gt permanent temporary clear ae FCODE lt EXPR gt No enable disable 64748S02 402 Chapter 11 Emulator Commands modify The modify command is used to e View or edit the current emulation configuration e Modify the contents of memory as integers strings or real numbers e Modify the contents of the processor registers e Write specified values to I O port addresses e Modify the breakpoints table bytes Modify using byte values lt CLASS gt This represents the name of a processor register class Register classes are displayed on the softkey labels See the register option for more information clear This option erases the specified breakpoint address and restores the original content of the memory location The location must not have changed by loading a file or modifying memory after the breakpoint was set If no breakpoints are specified in the command all currently specified breakpoints are cleared and the memory locations are restored to their ori
421. n min 18 display area HP64_Softkey columns 100 Specifies the number of columns in min 80 characters in the main display area HP64_Softkey enableCmdline True Specifies whether the command line area is False displayed when you initially enter the Graphical User Interface editFile example vi Specifies the command used to edit files Ps editFileLine example vi Specifies the command used to edit a file at d Ps a certain line number lt proc gt actionKeysSub keyDefs paired list Specifies the text that should appear on the of strings action key push buttons and the commands that should be executed in the command line area when the action key is pushed Refer to the To set up custom action keys section for more information lt proc gt dirSelectSub entries list of Specifies the initial values that are placed in strings the File gt Context Directory popup recall buffer Refer to the To set initial recall buffer values section for more information lt proc gt recallSub entries list of Specifies the initial values that are placed in strings the entry buffer labeled Refer to the To set initial recall buffer values section for more information 521 Chapter 13 Setting X Resources To modify the Graphical User Interface resources j The following steps show you how to modify the Graphical User Interface s X resources Copy part or all of the HP64_
422. n Refer to Chapter 11 Emulator Commands to determine the correct syntax for the expression type 484 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Invalid memory map attribute lt attribute gt Error 731 Cause You tried to type in an invalid memory map attribute Action Use memory map attributes offerred on the softkeys The only valid memory map attributes for the MC68020 emulator are dp dual port memory and dsi interlock DSACKs The MC68030 EC030 emulator supports these attributes and the ci cache inhibit attribute For example the following command will cause an error 0h thru 100h emulation RAM ds2 Invalid number of arguments Error 308 Cause You either entered too many options to a command or an insufficient number of options Action Reenter the command with correct syntax Refer to Chapter 11 Emulator Commands for information Invalid number of bytes for longword access Error 152 Cause The access mode was set to long word but the number of bytes you supplied for a memory modify was not a multiple of four Action Either change the access mode to byte or word or supply a number of bytes that is a multiple of four Note this message will not appear for memory mapped with the dp attribute Invalid number of bytes for word access Error 152 Cause The access mode was set to word but you supplied an odd number of bytes for amemory modify Action Either change
423. n or translation without prior written permission is prohibited except as allowed under copyright laws RESTRICTED RIGHTS LEGEND Use duplication or disclosure by the Government is subject to restrictions as set forth in subparagraph c 1 II of the Rights in Technical Data and Computer Software clause at DFARS 52 227 7813 HEWLETT PACKARD Company 3000 Hanover St Palo Alto CA 94344 1181 STATUS N68ECO30 Running in monitor 624 j Chapter 18 Installation and Service Verifying the Installation Step 3 Step through the demo with the Action Keys Action keys are unique to the Graphical User Interface When you first install and start the interface a set of default Action Keys will be present These Action Keys will let you load and start the emulator and run the demo program supplied with the interface Doing so will help you familiarize yourself with the Graphical User Interface Click on the lt Demo gt Action Key A window of instructions will appear telling you how to set up and run the demo program Step through the demo program by clicking the Action Keys from left to right and top to bottom After you have seen some of the capabilities by stepping through the demo try the various menus work with the command line and read some on line help topics What you do is not important it is important to begin getting comfortable with the interface Step 4 Exit the Graphical User Interface
424. n you will have to view the error log to see the complete list of messages Only the last error message in the sequence will remain in the status line display area The error log can hold up to 100 messages To prevent overrun the error log purges the oldest messages to make room for the new ones 458 Chapter 12 Emulator Messages Unalphabetized Error and Status Messages Unalphabetized Error and Status Messages These error and status messages begin with names you assigned to configuration files your emulator analyzer and stack space lt CONFIGURATION FILENAME does not exist Cause The configuration file you are trying to load does not exist Action Try the load configuration command again using a valid configuration file name lt LOGICAL NAME gt End continuing Cause This is a status message The emulation session is being exited with the end command When you restart the emulation session later it will continue using the same settings as in the session you just ended The emulator logical name is located in the usr hp64000 etc 64700tab net or 64700tab file lt LOGICAL NAME gt End released Cause This is a status message The emulation session is being exited with the end release_system command When the session has ended the emulator is released meaning that others can access and use it When you restart the emulation session later the new session will use all default settings The emulator logical nam
425. n Until if graph Trace After graph_daq proc_specif i Trace Before STATUS H68ECO30 Stepping co Trace About Trace Until Or using the command line enter run until main main c line 97 lt RETURN gt After the command has executed notice the highlighted bar indicates the program counter has moved to the specified source line 18 Chapter 1 Getting Started Step 7 Display data values Step 7 Display data values 1 Position the mouse pointer over num_checks in the source line that reads num_checks and click the paste mouse button notice num_checks is cut and pasted into the entry buffer 2 Click on the Disp Var action key or choose Display Data Values gt Add int32 Or using the command line enter display data num_checks int32 lt RETURN gt Data update address label type 00807875C _num_checks int32 The num_checks variable is added to the data values display and its value is displayed as a 32 bit integer 19 Chapter 1 Getting Started Step 8 Display registers Step 8 Display registers You can display the contents of the processor registers e Choose Display Registers BASIC Or using the command line enter display registers lt RETURN gt Registers Next PC G 8882088 sp PC 88862088 STATUS 2784 lt s z gt USP 8888888 MSP B
426. n be set up to store qualify a certain kind of state but only when the arm signal from the BNC is true Real Time Execution refers to the emulator configuration in which commands that temporarily interrupt target program execution for example display modify target memory or processor registers are not allowed Relative Count in the trace list count column a relative count shows the count between the present displayed state and the state displayed immediately before it Relative time count for example shows the elapsed time between the previous displayed state and the present state Note that the count is between displayed states If your trace list is inverse assembled and or dequeued several states may have been captured in memory between the present displayed state and the displayed state immediately before it 650 Glossary Remote Configuration Remote Configuration the configuration in which an HP 64700 Series emulator is directly connected to a host computer via a single port Commands are entered typically from an interface program running on the host computer and absolute code is downloaded into the emulator through that single port RS 232C a standard serial interface used to connect computers and peripherals Sequencer a state machine in the analyzer that searches for execution of states in a particular order Single step the execution of one microprocessor instruction Single stepping the emulator al
427. n command Only high level source lines are displayed in mnemonic memory and trace displays Examples To turn ON source lines in displays and display memory in mnemonic format set source only symbols on lt RETURN gt display memory main mnemonic lt RETURN gt File Display Modify Execution Breakpoints Trace Settings Memory sp imnemonic file usr hp6408 demo debug_env hp64747 main c data A 91 extern void update_system update system variables 92 extern void interrupt_sim simulate an interrupt 93 extern void do_sort sets up ascii array and calls 34 35 maint 36 g7 init_system 98 proc_spec_init 33 188 while true 181 142 update_system 103 num_checks 184 interrupt_sim amp num_checks 105 if graph 106 graph_data 107 proc_specific en N68030 Running in monitor Emulation trace complete ee 122 Chapter 4 Using the Emulator Accessing Processor Memory Resources To display intermixed source lines e Choose Settings Source Symbol Modes Source Mixed e Using the command line enter the set sour
428. n symbols on set source only inverse_video off symbols on set load demmuer load demmuer lt file gt N A toggles the verbose mode of the DeMMUer load function set demmuer on off display pod_command pod_command keyboard display simulated_io modify keyboard_to_simio N A toggles the command line 354 Chapter 11 Emulator Commands Emulator Configuration Memory Map Pulldown Command Line File gt Print Map print File gt Exit end Map Add New Entry N A calls the associated dialog box Map Modify Entry lt entry gt N A calls the associated dialog box Map Delete Entry lt entry gt delete lt entry gt Map Delete All delete all Map Default Memory Type gt Target RAM gt default target ram Cache Inhibit OFF Map Default Memory Type gt Target RAM default target ram ci Cache Inhibit ON Map Default Memory Type Target ROM default target rom Cache Inhibit OFF Map Default Memory Type Target ROM default target rom ci Cache Inhibit ON Map Default Memory Type Guarded default guarded Settings Command Line N A toggles the command line 355 Chapter 11 Emulator Commands How Popup Menus Map to the Command Line Mnemonic Memory Display Popup Command Line Set Clear Software Breakpoint Edit Source Run Until Trace After Trace Before Trace About Trace Until modify software_breakpoints set clear EXPR permanent
429. n trace measurement has started as a result of a CMB execute signal as specified by the specify trace command 467 Chapter 12 Emulator Messages Alphabetized Error And Status Messages CMB execute run started Error 693 Cause This status message is displayed when you are making coordinated measurements The CMB EXECUTE pulse has been received the emulation processor started running at the address specified by the specify run command Action None required This is information only CMB trigger break Error 617 Cause This status message will be displayed if you have configured the emulator to break on a CMB trigger and the CMB trigger line is activated during a program run The emulator is broken to the monitor Command line too complex Error 816 Cause Too many expression operators are used Action Split up the command line or use fewer expressions Command line too complex Error 818 Cause A maximum nesting level has been exceeded for nested command execution Action Reduce the number of nesting levels Configuration aborted Error 624 Cause Occurs when a lt CTRL gt c is entered while emulator configuration items are being set Configuration failed setting unknown lt item gt lt value gt Error 626 Cause Target condition or system failure while trying to change configuration item Action Try to reset Then reenter your command Check target system and run performance verifica
430. n use by the named user Action Current user must release the emulator 466 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Cannot unlock emulator emulator not locked Error 10328 Cause You have issued a command to unlock an emulator that is not locked Action The emulator is available now You can start the interface Cannot unlock emulator lock file missing Error 10328 Cannot unlock emulator semaphore missing Error 10328 Cause Lock semaphore missing Action Verify existence and permissions of usr hp64000 directory Cycle emulator power and use emul700 u lt logical name gt Clock speed not available with current count qualifier Error 1239 Cause This error occurs when you attempt to specify a fast F or very fast VF maximum qualified clock speed when counting time This error also occurs when you attempt to specify a very fast VF maximum qualified clock speed when counting states Action Change the count qualifier then reenter the command Refer to Chapter 5 Using the emulation bus analyzer for more information CMB execute break Error 623 Cause This message occurs when coordinated measurements are enabled and an EXECUTE pulse causes the emulator to run The emulator must break before running Action This is a status message no action is required CMB execute emulation trace started Error 1305 Cause This is a status message that informs you that an emulatio
431. n you use trig and or trig2 for measurement coordination For example you may specify that the emulator break to its monitor program when it receives trig from the analyzer Several states may be executed in the emulator between the time the analyzer recognizes its trigger condition generates trig1 delivers trig to the emulator and the emulator responds to trig by breaking to its monitor program Uploading the transfer of emulation or target system memory contents to a host computer Unlocked Exit one of two methods used to leave the high level graphical or softkey interface and return to the host computer operating system An unlocked exit command allows you to exit the high level interface and re enter later with the default configuration See also Locked Exit This is not available in the Terminal Interface User Program Another name for your target program the program you are developing for your product 654 Glossary Viewport Viewport see Window Wait States extra microprocessor clock cycles that increase the total time of a bus cycle Wait states are typically used when slower memory is implemented Widget an OSF Motif graphic device from which X applications are built For example pushbuttons and menu bars are Motif widgets Window a specified rectangular area of virtual space shown on the display in which data can be observed X Resource Specification a resource name and value The resourc
432. n your target system If you wish to load some of your target program in emulation memory or identify some of your memory addresses as ROM or Guarded enter those specifications in the memory map The resolution of mapped ranges is 256 bytes memory ranges begin at addresses ending in 00h memory ranges end on addresses ending in FFh The Memory Map display on this page chooses Map Default Memory Type Target RAM gt Cache Inhibit OFF The emulator will treat all address space that is not specified within the Memory Map as memory hardware of the Default Memory Type you specify here If memory characterized as Guarded is accessed the emulator will break to its monitor To create a new map entry or modify an existing entry choose Map Add New Entry or Map gt Modify Entry lt NO gt The appropriate Memory Map dialog box will open Emulator Configuration Memory Map Add New Entry Emulation memory remaining sss Modify Entry type function code attribute Delete Entry Delete All l eral pe Te ini mE tT Target ROM P Cache Inhibit ON Guarded STATUS Mapping emulation memory default blocks target ram 293 Chapter 8 Configuring the Emulator Mapping Memory To create a new map entry or modify an existing entry from the Memory Map popup menu press and hold the select mouse button and choose Add New Entry or Modify Entry The appropriate Memory Map dialog box will open The memory map of the MC680
433. n your system during the software installation process Due to the complexity of installing on NFS mounted file systems a script that verifies and customizes these products was also installed This stand alone script may be run at any time to verify that all files required by the products are in place in the file system If required files are not found this script will attempt to symbolically link them from the HP64000 install directory to their proper locations Run the script HP64000 bin envinstall 618 j Chapter 18 Installation and Service Installing Sun SPARCsystem Software Step 5 Map your function keys If you are using the Softkey Interface map your function keys by following the steps below Copy the function key definitions by typing cp HP64000 ete ttyswre ttyswre This creates key mappings in the ttyswrc file in your HOME directory Remove or comment out the following line from your xinitrc file xmodmap e keysym F1 Help If any of the other keys F1 F8 are remapped using xmodmap comment out those lines also Add the following to your profile or login file stty erase H setenv KEYMAP sun TERMINFO usr hp64000 lib terminfo export TERMINFO The erase character needs to be set to backspace so that the Delete key can be used for delete character If you want to continue using the Fl key for HELP you can use use F2 F9 for the Softkey Interface All you have to do is set the
434. nation of those codes A hexadecimal number is required for this entry This number will be used in place of the present value within the referenced MMU register CRP or SRP This number does not overwrite the present content of the register all Shows the details of each table for the single address you specify with this comand This is the same as ignoring the level option FC Shows the content of the function code table for the logical address you included in your command A Shows the content of Table A for the logical address you included in your command B Shows the content of Table B for the logical address you included in your command 382 Chapter 11 Emulator Commands DISPLAY MMU C Shows the content of Table C for the logical address you included in your command D Shows the content of Table D for the logical address you included in your command mmu_translations Shows a list of the valid MMU mappings One entry in the list is allocated for each page or group of adjacent pages in the system tables Shows the details of the translation through the tables for the logical address you included in your command thru Allows you to enter the upper address in a range of addresses use_CRP_value Lets you specify a value to be used in place of the present content of the CRP CPU root pointer when reading the tables and showing the address mappings use_SRP_value Lets you specify a value to be used in place of the pres
435. nce that starts with a window and ends with a trigger by entering trace enable lt bus_state gt disable lt bus_state gt find_sequence lt bus_state gt occurs lt times gt then lt bus_state gt occurs lt times gt trigger lt bus_state gt lt bus_state gt represents a combination of address data and status expressions that must be matched to satisfy the trigger or sequence qualifier lt times gt is the number of times that bus state must occur to satisfy the qualifier You can use the sequencing and windowing specifications together to make specification of complex qualifiers easier If you use the windowing specification the sequence specification is limited to four sequence terms Also note that when you use a windowing specification you cannot use a restart term with your sequence specirfication Example Use the analyzer sequencer to trace states occurring between the start of the example program and the call to the message interpreter then trigger after access to the variable that stores the value of current humidity but only if it is accessed after a specific series of events trace enable main disable proc_spec find_sequence update_sys get_targets then long_aligned update_sys write_hdwr trigger after current_humid 217 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements To count states or time Create your first specification form on the command line That will enter the
436. ncluded in memory mnemonic trace breakpoints and register step displays Examples To turn ON symbols in displays and display memory in mnemonic format set source off symbols on lt RI display memory main mnemonic lt RI EK TURN gt ETURN gt File Display Modify Execution Breakpoints Trace Settings Action keys lt Demo gt Disp Sre Trace Step Source a Memory BOBB2CFE gaegecrs BBBB2CFE pogazDaz pogazD0g 8 86208E aaae2n 1c aagazn22 gage2028 gage202E 0002030 98882018 89862016 88862036 88882038 g488203E N68ECO30 Running in monitor lt Your Key gt Make Disp Sre Prev Run xfer til Jl Break Step Asm sp imnemonic file usr hp6488Q demo debug_env hp64747 main c pr main main 4E560000 LINK W AG 0000 2F A MOVE L A2 A 2470008781 MOVEA L 000781A8 AZ 14BC8841 MOVE B 01 A2 4EB9808832 JSR init init_system 4EB9808039 JSR p proc_spec_init 4E71 NOP 157C000100 MOVE B 1 0001 A2 4EB9808033 JSR up update_system 52589000787 ADDQ L 1 data _ num_checks 4879000787 PEA data num_checks 4EB9aG8G20 JSR ma interrupt_sim 5866F ADDQ L 4 A7 4A39000787 TST B data _graph 670E BEQ B prog main 0054 157C0001 0 MOVE B 01 0002 AZ 4EB9000038 JSR updat graph_data
437. nction code from the following list 102 Chapter 4 Using the Emulator Loading and Storing Programs lt fcode gt Meaning none emulator ignores function code bits s supervisor space program and data u user space program and data p program space supervisor and user d data space supervisor and user sp supervisor program space sd supervisor data space up user program space ud user data space cpu CPU space The emulator can load HP64000 or IEEE 695 format absolute files into emulation or target system memory So you can develop programs on your UNIX workstation then build the programs and load them into the emulator for debugging Use the memory type parameter if you want to load only the parts of the program that have addresses corresponding to those types of memory in the map The function code is an optional parameter that allows you to direct an absolute module to memory that has the proper function code type Example To load the executable part of your absolute file into memory and any symbolic information found in the absolute file choose File gt Load Executable To load the executable part of your absolute file into memory but not load symbolic information found in the absolute file choose File gt Load gt Program Only To load only the symbolic information found in the absolute file without loading the executable part of your absolute file choose File gt Load gt Symbols O
438. nd languages Syntax rules determine which forms of command language syntax are grammatically acceptable 652 Glossary Target Program Target Program The program you are developing for your product It is also called user program Target System the circuitry where the emulator probe is connected typically a microprocessor based system under development Target System Memory storage that is present in the target system Terminal Interface the command interface present inside the HP 64700 Series emulators that is used when the emulator is connected to a simple data terminal This interface provides on line help command recall macros and other features which provide for easy command entry from a terminal Trace a collection of states captured synchronously by the analyzer 653 Glossary Trigger Trigger the condition that identifies a reference state within an analyzer trace measurement Trigger also refers to the analyzer signal that becomes active when the trigger condition is found The trigger signals are called trig and trig2 They are bidirectional signal lines that can be used to coordinate measurement activity between emulators and analyzers installed in the instrumentation card cage and between instruments connected to the BNC on the rear panel of the card cage For details of how to configure and use trig1 and trig2 refer to Chapter 6 Making coordinated measurements Note that there is delay whe
439. need to be set correctly for both devices Also if you are in a remote location from the host line noise may cause the failure Run failed during CMB execute Error 694 Cause System failure or target condition Action Run performance verification pv command and check target system Sequence term not contiguous lt term gt Error 1225 Cause This error occurs when you attempt to insert a sequence term which is not between existing terms or after the last term Action Be sure that the sequence term you enter is either between existing sequence terms or after the last sequence term 501 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Sequence term not defined lt term gt Error 1227 Cause This error occurs when you attempt to delete or specify a primary branch expression for a sequence term number that is possible but is not currently defined Action Insert the sequence term and respecify the primary branch expression for that term Sequence term number out of range lt term gt Error 1224 Cause This error occurs when a sequencer qualification command specifies a non existent sequence term The easy configuration sequencer may have a maximum of four sequence terms Eight sequence terms exist in the complex configuration sequencer Action Reenter the command using an existing sequence term Session aborted Cause This will only happen when running multiple emulation windows and
440. nes and symbols to appear in displays where appropriate Notice you can use symbols when specifying expressions The global symbol main is used in the command above to specify the starting address of the memory to be displayed 14 Chapter 1 Getting Started Step 3 Run from the transfer address Step 3 Run from the transfer address The transfer address is the entry address defined by the software development tools and included with the program s symbol information Click on the Run Xfer til action key Or using the command line enter run from transfer_address until main lt RETURN gt Memory sp imnemonic file main module main c we er oe Le 91 extern void update_system update system variables 92 extern void interrupt_sim simulate an interrupt 93 extern void do_sort sets up ascii array and calls 94 d 95 maint a 9 init_system 98 proc_spec_init 99 144 while true 141 102 update_system 143 num_checks 184 interrupt_sim amp num_checks 185 if graph 106 graph_data 107 proc_specific Notice the message Software break lt address gt is displayed on the status line and that the emulator is Running in monitor When you run until an address a breakpoint is set at the address before the program is run Notice the highlighted bar on the screen it shows the content of the current program counter 15 Chapter 1 Getting Started Step
441. ng MC68030 Memory Management Using the DeMMUer specifications expressed in source file symbols show symbols in its trace lists and show the regions of the source files that were executing when the bus activity occurred Reverse translations are made in real time The deMMUer performs its reverse translations without slowing down the measurement For this reason the analyzer that obtains its information from the deMMUer is able to provide its full feature set DeMMUer options e Settings gt DeMMUer Enable or set demmuer off Your analyzer receives physical addresses if the MMU is enabled The analyzer can only show hexadecimal values for those physical addresses They may not correspond to the logical addresses of your program code Note that until the MMU is enabled in hardware and software addresses will be logical Only after the MMU is enabled is there a distinction between physical and logical e Settings DeMMUer gt Enable or set demmuer on Your analyzer receives logical addresses translated by the deMMUer according to the tables in place when you last loaded the deMMUer Settings DeMMUer gt Load From Memory or load demmuer The emulator reads the MMU registers and interprets the translation tables to load the deMMUer The deMMUer is also enabled after it is loaded Settings gt DeMMUer Load from Memory This opens a dialog box in which you can specify values to override the present values
442. nitor operation that required the stack named lt STACK gt But the stack was set to an odd value which is invalid Action Use the modify register command to set the stack pointer to an even value that points at a memory region that can be used for stack operations For the ISP interrupt stack pointer use a configuration item to preset the initial value when the emulator enters the monitor from reset The ISP must point to a memory region that may be used as an interrupt stack Or check your program to make sure that it doesn t modify the ISP to an odd value If the M bit in the status register is set the processor uses the master stack instead of the interrupt stack The master stack must also be an even value 461 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Alphabetized Error And Status Messages The remaining error and status messages are in alphabetical order Messages that have associated error numbers show those error numbers in parenthesis at the end of the message text Address range too small for request request truncated Cause Too small of an address range is specified in a modify memory command Action Specify a larger memory range Address es transparently translated via TT0 TT1 Error 161 Cause You used the display mmu_translations command to display MMU address translations and one or more addresses are transparently translated by the processor TTO and or TT 1 registers
443. nly Suppose you have two map terms one of which is user program space from 1000 thru 1fff hex The other is supervisor program space from 1000 thru 1fff hex You have absolute files called userprog x and supprog x To load these programs using the command line enter load userprog fcode up load supprog fcode sp The programs are loaded into the correct function code spaces 103 Chapter 4 Using the Emulator Loading and Storing Programs To load the demo program 1 With your emulator interface not on screen enter the following commands in a terminal window cd usr hp64000 demo debug_env hp64748 for the MC68020 cd usr hp64000 demo debug_env hp64747 for the MC68030 EC030 Startemul lt logical name gt Where lt logical name gt is the name assigned to your emulator The default logical name for the MC68020 emulator is m68020 and for the MC68030 EC030 emulator is m68030 For a detailed discussion of how to find a logical name refer to Chapter 1 Getting Started The terminal window will ask you if you wish to copy the demo files to a different directory It is best to answer y to this question and then supply the full path name of your own demo directory The demo files will be copied and modified as required into the directory you specify and then the emulator interface will appear on screen It will be ready for you to run the demo procedure Press the Action keys from left to right and top to bottom
444. nly one of the function code memory spaces Read Using the deMMUer in Chapter 10 Using 68030 Memory Management for ways to make more efficient use of deMMUer resources 309 Chapter 9 Solving Problems If verbose mode shows less than eight mappings but the deMMUer is out of resources If verbose mode shows less than eight mappings but the deMMUer is out of resources Check if you are using both root pointers in your memory mapping scheme The deMMUer may have run out of resources for only one of the root pointers Check if you are using function code mapping The deMMUer may have run out of resources for only one of the function code memory spaces Read Using the deMMUer in Chapter 10 Using 68030 Memory Management to understand how deMMUer resources are allocated when using different root pointers or when using function code mappings If you only see physical memory addresses in the analyzer measurement results Check to see if you enabled the deMMUer with the command set demmuer on Check to see if you loaded the de MMUer with the information needed to reverse translations made by the MMU with the command load demmuer verbose Read Using the deMMUer in Chapter 10 Using 68030 Memory Management to understand how the deMMUer selects physical address ranges to reverse translate for the analyzer 310 Chapter 9 Solving Problems If the deM
445. noiseless clean ground earth terminal Used for a signal common as well as providing protection against electrical shock in case of a fault A terminal marked with this symbol must be connected to ground in the manner described in the installation operating manual before operating the equipment rame or chassis terminal A connection to the frame chassis of the equipment thich normally includes all exposed metal structures Alternating current power line Direct current power line Alternating or direct current power line Caution The Caution sign denotes a hazard It calls your attention to an operating procedure practice condition or similar situation which if not correctly performed or adhered to could result in damage to or destruction of part or all of the product Warning The Warning sign denotes a hazard It calls your attention to a procedure practice condition or the like which if not correctly performed could result in injury or death to personnel
446. nores the CMB EXECUTE signal To enable synchronous measurements from the transfer address specify run from transfer_address To trace from an address when synchronous execution begins specify trace after address 10h To start synchronous measurements Enter the cmb_execute command on the command line The emb_execute command will cause the emulator to emit a pulse on the EXECUTE line thereby initiating a synchronous measurement You do not have to enable CMB interaction to use the cmb_execute command because by enabling CMB interaction you are only specifying how the emulator will react to the CMB EXECUTE signal All emulators whose CMB interaction is enabled will break into the monitor when any one of the emulators participating in the synchronous measurement breaks to its monitor To disable synchronous measurements Enter the specify run disable command on the command line You can disable the emulator s interaction with the CMB by using the specify run disable command When interaction is disabled the emulator ignores the CMB EXECUTE and READY lines 244 Chapter 6 Making Coordinated Measurements Using Trigger Signals Using Trigger Signals The HP 64700 contains two internal lines trig1 and trig2 that can carry trigger signals from the emulator or analyzer to other HP 64700s on the Coordinated Measurement Bus CMB or other instruments connected to the BNC connector You can configure the internal l
447. not affected when using an UNIX command that is a shell intrinsic This allows you to copy a list of memory contents formatted in various data types see display data This allows you to copy the display to a selected destination This allows you to copy the most recent errors that occurred This allows you to copy the most recent events that occurred An exclamation point specifies the delimiter for UNIX commands An exclamation point must precede all UNIX commands A trailing exclamation point should be used if you want to return to the command line and specify noheader Otherwise the trailing exclamation point is optional If an exclamation point is part of the UNIX command a backslash must precede the exclamation point An expression is a combination of numeric values symbols operators and parentheses specifying a memory address or offset value See the EXPR syntax diagram 364 Chapter 11 Emulator Commands copy FCODE The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available and for an explanation of those codes lt FILE gt This prompts you for the name of a file where you want the specified information to be copied If you want to specify a file name that begins with a number you must precede the file name with a backslash For example copy display to 12 10 lt RETURN gt from_line_number This specifies the trace list lin
448. nothing will be displayed Example stop_trace lt RETURN gt See Also help stop_trace trace 434 Chapter 11 Emulator Commands store store lt FILE gt pe lt RETURN gt trace_spec demmuer memory wee EXPR C 647845819 This command lets you save the contents of specific memory locations in an absolute file You also can save trace memory contents in a trace file A new file is created with the name you specify if there is not already an absolute file with the same name If a file represented by lt FILE gt already exists you must decide whether to keep or delete the old file If you respond with yes to the prompt the new file replaces the old one If you respond with no the store command is canceled and no data is stored The transfer address of the absolute file is set to zero demmuer This causes the emulator to read the content of the MMU tables and store the appropriate demmuer setup in a file you name with a ED extension EXPR This is a combination of numeric values symbols operators and parentheses specifying a memory address See the EXPR syntax diagram FCODE The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available and for an explanation of those codes 435 Chapter 11 Emulator Commands store
449. ns and click on MMU Tables in the dialog box or enter a command such as display mmu_translations tables lt address gt The tables option tells the emulator to show the translation details for the specified address The display will show the way the logical address is mapped through the tables to reach its corresponding physical address MMU Tables Logical Address hex supr prog 0 0 0 0 4 0 F 8 Logical Address bin 110 0000 0000 0000 0000 0100 0000 1111 1000 Table Level FCODE IIII TITE ITIL IABB CDDD PPPP PPPP PPPP LEVEL INDEX LOCATION CONTENTS TBL PAGE L U LIMIT S CI M U WP DT SRP 80000003 00001050 00001050 LONG FC 0006 00001080 8000000b 000010a0 000010a0 L 0000 0 1 0 LONG A 0000 000010a0 8000000a 000010b0 000010b0 L 0000 0 1 0 SHORT B 0000 000010b0 000010da 000010d0 1 0 SHORT Cc 0000 000010d0 0000114a 00001140 1 0 SHORT D 0004 00001150 0000c001 0000c000 O 1 0 0 PAGE Physical Address hex 0000c0f8 Address mapping details The example display shows e The translation mapping for logical address 40f8H in supervisor program space Both the hexadecimal and binary values of the logical address are shown e The Table Level line shows how each address bit is mapped by the translation control register In the example display the 13 high order bits are ignored by 326 Chapter 10 Using MC68030 Memory Management Seeing details of the MMU Translations the initial shift The next bit is used as an offset into Table A The next two b
450. ns will use the logical address range from the most recent display mmu_translations lt ADDRESS gt thru lt ADDRESS gt command if possible To change the default logical address range back to the full address space use the command display mmu_translations 0 324 Chapter 10 Using MC68030 Memory Management Seeing details of the MMU Translations thru Offffffffh or obtain the Display MMU Translations dialog box and enter the desired address The display does not take into account overrides caused by the transparent translation registers A status message will indicate that a transparent translation overlapped a mapping Choose Display Registers or use the display registers command to determine the transparent translation Supervisor user address mappings If you are using separate supervisor and user mappings the emulator will support this choice and show appropriate information The MMU has two ways of doing this 1 Using SRP and CRP root pointers When using the SRP and CPU root pointers to provide separate user and supervisor translation mappings no distinction is made between program and data space e To see only the mappings under the SRP choose Display gt MMU Translations and in the dialog box obtain function code s and enter the desired address range or use the command display mmu_translations fcode s lt address gt thru lt address gt This tells the emulator to show the supervisor mapping for the as
451. nt Rel 0 00 Abs 0 00 Mean 0 00 Sdv 0 00 Time Percent Rel 0 00 Abs 0 00 Graph of Memory Activity relative state percents gt 1 prog Dhar dee KKKKKKKK KKK KK KK KKK KKK KKKKKKKK data 30 51 KKKKKKKKKKKKKKKK stack LTT RRA Memory and Program Activity 258 prog data stack prog prog Chapter 7 Making Software Performance Measurements Understanding activity measurements Graph of Memory Activity relative time percents gt 1 Graph of Program Activity relative state percents gt 1 99 82 KEK KKK KKK KK KK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK 60 97 kkkkxkxkxk xkxkxkxkxkxkxkxkxkxkxkxkxkkxkkkkkkkkxkxxk 28 09 KKKKKKKKKKK KKK 10 94 ee RRR Graph of Program Activity relative time percents gt 1 99 84 KKEKKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK Summary Information for 10 traces Memory Activity State count Time Relative count 5120 Mean sample 170 67 Mean Standard Dv 29 30 95 Confidence 12 28 Error tolerance count Relative Time Us 2221 20 Program Activity State count Time Relative count 5120 Mean sample 170 67 Mean Standard Dv 0 58 95 Confidence 0 24 Error tolerance count Relative Time Us 2221 20 Absolute Totals Absolute count state 5120 Absolute count time Us 2221 20 Memory and Program Activity Cont d 259 Chapter 7 Making Software Performance Measurements Understanding duration measurements Understanding
452. ntents of a range of memory The format is the same as specified in the last display memory command For example if you copy memory after displaying a range of memory in mnemonic format the file would contain the mnemonic memory information If there is no previous display memory command the format used is a blocked hex byte format beginning at address zero Data Values Copies the contents of the defined data values last displayed An error occurs if you try to copy data values to a file if you have not yet displayed data values Trace The most recently captured trace is copied to the file The copied trace listing is formatted according to the current display mode You can set the display mode with the Settings Source Symbols Modes or Settings Display Modes pulldown menu items See the Changing the Interface Settings section Registers Copies the current values of the BASIC register class to a file To copy the contents of the other register classes first display the registers in that class and then use the File gt Copy Display command 68 Chapter 3 Using the emulator analyzer interface Copying information to a file or printer Breakpoints Copies the breakpoints list If no breakpoints are present in the list only the enable disable status is copied Status Copies the emulator analyzer status display Global Symbols Copies the global symbols If symbols have not been loaded this menu item
453. nterface User s Guide for more information about the Terminal Interface The remainder of this section explains how to display the Terminal Interface screen copy the Terminal Interface screen to a file and enter Terminal Interface commands To display the Terminal Interface screen Select Display Pod Commands If you are using the command line enter display pod_command The interface will accept Terminal Interface commands but will not show the results output of those commands unless the Terminal Interface pod command screen is displayed Generally you display this screen before entering one or more pod commands To copy the Terminal Interface screen contents to a file To append the contents of the Terminal Interface screen to the contents of a file select File gt Copy Pod Commands or if using the command line enter copy pod_cmd to lt filename gt To replace the contents of a file with the contents of the Terminal Interface screen on the command line enter copy pod_cmd to lt filename gt noappend 90 j Chapter 3 Using the emulator analyzer interface Accessing the Terminal Interface You can save the current contents of the Terminal Interface screen to a file by using the copy command Additionally you can copy the Terminal Interface screen to a printer or to a UNIX command by using other copy command options Refer to Chapter 11 Emulator Commands for more information about copy command
454. nterface used to operate an HP 64700 Series emulator Performance Verification a program that tests the emulator to determine whether the emulation and analysis hardware is functioning properly Physical Address Space the address space in hardware memory and hardware I O that is accessed by the microprocessor during normal program execution Refer to Chapter 9 Solving Problems for a detailed explanation Prefetch the ability of a microprocessor to fetch additional opcodes and operands before the current instruction is finished executing Prestore the storage of states captured by the analyzer that precede states which are normally stored If the normal storage qualifier specifies the entry address of a function or routine prestore can be used to identify the callers of that function or routine 649 Glossary Prestore Qualifier Prestore Qualifier a specification that must be met by a state before it can be saved in the analyzer prestore memory Qualifier a specification that must be met before an action can be taken by the analyzer For example a store qualifier is a specification that must be met by an incoming state before it can be stored in the trace memory The arm condition can be used as an additional qualifier For example an external analyzer may be set up to supply a true signal to the rear panel BNC connector on the card cage when it detects a true condition in the target system Then the analyzer ca
455. nterface uses a number of dialog boxes for selection and recall Directory Selection Selects the working directory You can change to a previously accessed directory a predefined directory or specify a new directory File Selection From the working directory you can select an existing file name or specify a new file name Entry Buffer Recall You can recall a previously used entry buffer text string a predefined entry buffer text string or a newly entered entry buffer string to the entry buffer text area Command Recall You can recall a previously executed command a predefined command or a newly entered command to the command line Settings Display You can set the display mode and customize the display Modes presentation for memory and trace list displays Modify Register You can view and modify values of any selected register as well as recalling previous values of the registers Symbol Selection Selects the current working symbol cws You can change to a previously accessed cws a predefined cws or specify a new cws The dialog boxes share some common properties e Most dialog boxes can be left on the screen between uses e Dialog boxes can be moved around the screen and do not have to be positioned over the Graphical User Interface window e Ifyou iconify the interface window all dialog boxes are iconified along with the main window Except for the File Selection dialog box predefined entries for each dialog box
456. nts of states or time at full emulator clock speed 643 Glossary Compiler Compiler a program that translates high level language source code into object code or produces an assembly language program with subsequent translation into object code by an assembler Compilers typically generate a program listing which may list errors displayed during the translation process Configuration File a file in which configuration information is stored Typically configuration files can be modified and re loaded to configure instruments such as an emulator or programs such as the PC Interface Coordinated Measurement a synchronized measurement made between the emulator and analyzer between emulation bus analyzer and external analyzer or between multiple emulators or analyzers For example a coordinated measurement is made when two or more HP 64700 emulators analyzers start executing together or break into background monitors at the same time Coordinated Measurement Bus CMB the bus that is used for communication between multiple HP 64700 Series emulators analyzers or between HP 64700 emulators analyzers and an HP 64306 IMB CMB Interface to allow coordinated measurements Counter Overflow when the trace tag counter of the deep analyzer reaches maximum count and begins a new count from zero The counter in the deep analyzer simply counts continuously once a trace begins it increments its count every 20 ns and reaches ma
457. ny line which starts with a is a comment All user s labels must be preceded by a Jusers_label 10H 1000H program_symbol A program symbol can be a procedure name or a static In the case of a pro cedure name the range of that procedure will be used Jusers_label2 program_symboll gt program_symbol2 gt means thru The above will define a range which starts with symboll and goes thru symbol2 If both symbols are procedures then the range will be defined as the start of symboll thru the end of symbol2 dirl dir2 source_file s local_symbol The above defines a range based on the address of local_symbol e To include comments and units for time ranges in time range files refer to this example file Any line which starts with a is a comment 1 us 20 us 10 1 ms 100 6 ms 2 35 8 6 70 8 us microseconds ms milliseconds s seconds The above are the only abbreviations allowed The space between the number and the units abbreviation is required Se HE SE ROE HE Time units can be in microseconds us milliseconds ms or seconds s 264 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool e To select duration measurements enter performance_measurement_initialize duration or performance_measurement_initialize lt FILE gt duration When no user defined time range file is specified the following set of default time ranges are used
458. o 256 Mbytes of physical addresses can be reverse translated Example to show resource limitations Consider the following program arrangement 4M RAM Unused 2M Peripherals Unused 4M ROM Unused 4M 12M 14M 100M 104M Assume a system contains memory and peripherals at three different ranges one from 0 to 4 Mbytes one from 12 to 14 Mbytes and one from 100 to 104 Mbytes The rest of the physical address space is unused If your MMU mapping tables are set up to only access memory in these ranges your deMMUer will load properly and you can proceed with your measurements If you have failed to restrict your mappings to these physical ranges the deMMUer may not load completely When the emulator tries to load the d MMUer and finds there is more physical memory identified in the MMU mapping tables than it can translate in its deMMUer table it will try to get help by reading the emulation memory map If the emulation memory map is arranged as follows the deMMUer will load in a way that ensures the physical ranges of interest will be in the deMMUer 0 to 3FFFH EMUL RAM 12000 to 13FFFH TARGET RAM 100000 to 103FFFH TARGET ROM default guarded When the emulator reads the memory map for help in loading the deMMUer it sorts the entries by size first and address range second If using the small page mode the smallest address range 12M to 14M will occupy term in the deMMUer translation table Addres
459. o a single value select modify memory lt address gt to lt value gt e To modify a range of memory locations to a single value select modify memory lt lower gt thru lt upper gt to lt value gt e To modify a range of memory locations with a list of values select modify memory lt lower gt thru lt upper gt to lt value1 gt lt value2 gt e To change whether memory is modified by bytes words or long words add the lt mode gt parameter before the to keyword e To modify memory as real numbers select modify memory lt lower gt thru lt upper gt real shortllong to lt real1 gt lt real2 gt e To modify a sequence of bytes to an ASCII string literal select modify memory lt lower gt thru lt upper gt string to lt string gt lt string gt is a character string The lt address gt parameter is an expression representing a single address location The lt lower gt and lt upper gt values are address expressions representing the lower and upper boundaries of the memory area to be modified lt value gt represents the data value to which the contents of memory are to be modified The lt mode gt parameter can be either bytes words or long Otherwise the mode specified by the last display memory command determines how data is displayed If you selected Any when you selected Memory Access Size as part of the emulation configuration the size you specify here will be used to access memory
460. o cause emulator execution in other HP 64700 Card Cages to break into the monitor You can use the HP 64700 s BNC connector labeled TRIGGER IN OUT on the lower left corner of the HP 64700 rear panel to trigger an external instrument for example a logic analyzer or oscilloscope when the analyzer finds its trigger condition Also you can allow an external instrument to arm the analyzer or break emulator execution into the monitor Tasks that you perform to make coordinated measurements include e Setting up for coordinated measurements e Starting and stopping multiple emulators e Driving trigger signals to the CMB or BNC e Stopping program execution on trigger signals e Arming analyzers on trigger signals 236 Chapter 6 Making Coordinated Measurements The Elements of Coordinated Measurements The location of the CMB and BNC connectors on the HP 64700 rear panel is shown in the following figure me only OIG m pees CMB Connector LAN AUI UUU BNC Connector ae apie WARNING d 10 Line 15V 230V Auloranging 60O VA Mox 47 63 Hz G 2 64700820 There are three bidirectional signal lines on the CMB connector on the rear panel of the emulator These CMB signals are TRIGGER The CMB TRIGGER line is low true This signal can be driven or received by any HP 64700
461. o emulators is similar For each emulator you should set up the trigger specification before enabling the CMB Then start the analysis trace to enable trace on execute for each emulator When the EXECUTE signal is received both emulators will begin running and will start a trace according to the given trigger specification 252 j Chapter 6 Making Coordinated Measurements Making Example Measurements To trigger one emulation bus analyzer with another Before performing these steps both emulators must be connected to the CMB To connect the CMB see To connect the coordinated measurement bus CMB at the beginning of this chapter Enable the CMB on each emulator Reset each emulator Set up the first emulator to drive the CMB trigger Set up the second emulator to receive the CMB trigger Start a trace on each emulator Start a run on each emulator In the above steps you set one emulation bus analyzer to drive the CMB trigger and set another to trigger on receipt of a CMB trigger You can use the same concepts to trigger external instruments using the BNC connector on the rear panel of the HP 64700 Series Card Cage 253 Chapter 6 Making Coordinated Measurements Making Example Measurements j To break to the monitor on an analyzer trigger signal Enter the emulation configuration Set the emulator to receive trig1 Set the emulation bus analyzer to drive trig1 Specify the trigger conditions fo
462. o the target system 304 j Chapter 9 Solving Problems If you suspect that the emulator is broken Check to see that the signal timing specifications of your target system match the specifications inChapter 16 Specifications and Characteristics If you suspect that the emulator is broken Shut off power to the target system then the Card Cage Disconnect the emulator from your target system Connect the emulator to the demo board Also connect the power cable from the emulator to the demo board Refer to Chapter 18 Installation and Service Set all the demo board configuration switches to the TEST position all switches closed trefer to Chapter 18 Installation and Service Apply power to the Card Cage Run performance verification by entering the commands display pod_command pod_command pv 1 Note that the emulator analyzer interface will report an I O error since the pv command initializes the emulator You will need to enter the end release_system command to exit the emulator analyzer interface If either the emulator or analyzer fail the performance verification check the installation of those modules Refer to Chapter 18 Installation and Service for information on installation and an explanation of the performance verification software If the installation is correct contact your local HP Sales and Service office for assistance 305 Chapter 9 Solving Problems If you have
463. occurred during the emulation session are displayed The status of the emulator and analyzer are recorded in the event log as well as the conditions that cause the status to change for example breakpoints and trace commands 53 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface j Using Special Features of the Graphical User Interface The following paragraphs show you how to use pulldown and popup menus the entry buffer action keys and dialog boxes to compose commands and control emulator and analyzer operation These features are only available in the Graphical User Interface This section shows you how to e Choose a pulldown menu item e Choose a popup menu item e Place values into the entry buffer e Copy and paste from the entry buffer to the command line e Use action keys e Use dialog boxes To choose a pulldown menu item using the mouse method 1 Position the mouse pointer over the name of the menu on the menu bar Press and hold the command select mouse button to display the menu While continuing to hold down the mouse button move the mouse pointer to the desired menu item If the menu item has a cascade menu identified by an arrow on the right edge of the menu button then continue to hold the mouse button down and move the mouse pointer toward the arrow on the right edge of the menu The cascade menu will display Repeat this step for th
464. occurs when you attempt to specify a state count qualifier when the maximum qualified clock speed is fast F Action Change the clock speed then change the count qualifier Refer to Chapter 5 Using the Emulation Bus Analyzer for more information Coverage not supported Error 160 Cause The memory coverage command doesn t exist in the MC68020 and MC68030 EC030 emulators because there is no supporting hardware DeMMtUer has not been loaded Error 164 Cause You used the set demmuer on command to enable the deMMUer before it had been loaded Action Use the load demmuer verbose command to load the deMMUer before you try to enable the deMMUer with the set demmuer on command 472 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Disable breakpoint failed lt address gt Error 604 Cause System failure or target condition Action The emulator was unable to write previously saved opcode to target memory Check the target memory system Disable breakpoint failed lt address gt Error 666 Cause System failure or target condition Action Check memory mapping and configuration questions Display register failed lt register gt Error 634 Cause The emulator was unable to display the register you requested Action To resolve this you must look at the other messages displayed in the error log It s likely that the emulator was unable to break to the monitor to perform the regi
465. ocessor an address range is specified that would cross different segments Action Break the memory command into multiple commands so that the address ranges start and end in the same segment Range resource in use Error 1221 Cause This error occurs when you attempt to redefine the complex configuration range resource while it is currently being used as a qualifier in the trace specification Action In the complex configuration display the sequencer specification to see where the range resource is being used and remove it then you can redefine the range resource Range term used more than once Error 1248 Cause This error occurs when you attempt to use the range resource more than once in a sequencer branch expression Action Do not use the range resource more than once in a sequencer branch expression 498 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Read memory failed at lt PHYSICAL ADDRESS gt store aborted Cause While storing memory from the emulator to a file a read memory error occurred Action Use the display error_log command to view any errors You may need to modify the configuration and map memory before storing the file again Read PC failed during break Error 603 Cause The monitor is not responding Action Check your target system configuration the emulator configuration and memory map or reinitialize the emulator Then try the command sequence aga
466. of MMU translation tables one under each root pointer The emulator divides the deMMUer table into two equal address spaces The first four spaces provide reverse translations for user physical address ranges and the last four spaces provide reverse translations for supervisor physical address ranges address address u address address u address address u address address u address address s address address s address address s address address s If you have more physical supervisor address space than can be reverse translated by four table entries you will receive the out of range message 340 Chapter 10 Using MC68030 Memory Management Using function codes Using the DeMMUer If you enable use of function code addressing FCL 1 in the TC register the emulator assumes you have four sets of MMU translation tables one under each of the following user data user program supervisor data and supervisor program In this case the emulator divides the deMMUer table into four blocks with two entries for each of the supported function codes address address ud address address ud address address up address address up address address sd address address sd address address sp address address sp If you have more physical address space than can be reverse tr
467. of using the Graphical User Interface and the Softkey Interface for the HP 64747 and 64748 products 314 10 Using MC68030 Memory Management Understanding logical and physical emulation and analysis 315 Chapter 10 Using MC68030 Memory Management Understanding Emulation and Analysis Of The MC68030 Memory Management Unit Understanding Emulation and Analysis Of The MC68030 Memory Management Unit You only need to read this chapter if you are using the on chip MMU Memory Management Unit of the MC68030 microprocessor If you are using an MC68020 or MC68EC030 or if you are using an MC68030 with its MMU disabled you won t need the information in this chapter This chapter begins with a discussion of terms and conditions you need to understand when you are using the MC68030 emulator analyzer with the MMU enabled Under these conditions many capabilities and features become available that are not otherwise offered Also some of the features you have been using behave differently These are discussed in this chapter Terms And Conditions You Need To Understand The following paragraphs explain the differences between logical and physical memory and between static and dynamic virtual memory systems Logical vs Physical When you develop a program compile it or assemble it and link it addresses are assigned to contain each of the bytes of the program These addresses are logical addresses When the program is loa
468. off You can return the display format to this state by simply using the command set default This option restores all the set options to their default settings on This option turns on the deMMUer Addresses on the emulation bus will be reverse translated physical to logical before being supplied to the analyzer Reverse translations will be made according to the setup that was present in the MMU at the time you entered your last load demmuer command off This option turns off the deMMUer Addresses on the emulation bus will be supplied directly to the analyzer without translation Specifies the name of an environment variable to be set within the HP 64000 UX environment or the system environment The equals sign is used to equate the lt ENV_VAR gt parameter to a particular value represented by lt VALUE gt 424 Chapter 11 Emulator Commands set inverse video off This displays source lines in normal video on This highlights the source lines on the screen dark characters on light background to differentiate the source lines from other data on the screen langinfo In certain languages you may have symbols with the same names but different types For example in IEEE695 you may have a file named main c and a procedure named main SRU would identify these as main module and main procedure The command display local_symbols_in main would cause an error message to appear Ambiguous symbol main procedure module U
469. ogram execution no matter how large your program 224 Saving and Restoring Trace Data and Specifications 228 To store a trace specification 228 To store trace data 229 To load a trace specification 230 To load trace data 231 XV Contents Saving and Restoring DeMMUer Setup Files 232 To store a DeMMUer setup file 232 To load a DeMMUer setup file 232 Using Basis Branch Analysis 233 To store BBA data to a file 233 Making Coordinated Measurements The Elements of Coordinated Measurements 236 Comparison Between CMB and BNC Triggers 238 Setting Up for Coordinated Measurements 239 To connect the Coordinated Measurement Bus CMB 239 To connect to the rear panel BNC 241 Starting Stopping Multiple Emulators 243 To enable synchronous measurements 243 To start synchronous measurements 244 To disable synchronous measurements 244 Using Trigger Signals 245 To drive the emulation bus analyzer trigger signal to the CMB 247 To drive the emulation bus analyzer trigger signal to the BNC connector 248 To break emulator execution on signal from CMB 249 To break emulator execution on signal from BNC 250 To arm the emulation bus analyzer on signal from CMB 251 To arm the emulation bus analyzer on signal from BNC 251 Making Example Measurements 252 To start a simultaneous program run on two emulators 252 To trigger one emulation bus analyzer with another 253 To break to the monitor on an analyzer trigger signal 254 xvi
470. oint in the breakpoints list as well as enable or disable the breakpoints feature using the popup menu 157 Chapter 4 Using the Emulator Changing the Interface Settings Changing the Interface Settings This section shows you how to e Set the source symbol modes e Set the display modes To set the source symbol modes To display assembly language mnemonics with absolute addresses choose Settings Source Symbol Modes Absolute To display assembly language mnemonics with absolute addresses replaced by global and local syumbols where possible choose Settings Source Symbol Modes Symbols To display assembly language mnemonics intermixed with high level source lines choose Settings Source Symbol Modes Source Mixed To display only high level source lines choose Settings Source Symbol Modes Source Only Using the command line enter commands as follows e To display mixed source and assembly language enter the set source on command e To display only source language statements enter the set source only command e To display only assembly language enter the set source off command The source symbol modes affect mnemonic memory displays and trace displays 158 Chapter 4 Using the Emulator Changing the Interface Settings Each display mode cascade menu choice is a toggle Choosing one of these items causes it to be the only one active and toggles all others off Provided that symbols
471. ome situations for example when the trigger state is never found or when the analyzer hasn t filled its trace memory the trace measurement does not complete In these situations you can halt the trace measurement Once a trace is displayed you can use the cursor keys and other keyboard keys to position the trace list on screen To speed up the display of traces you can reduce the depth of the trace list Also when entering trace commands you can recall and modify preceding trace commands to speed command entry 173 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements Example To start a trace measurement Choose Trace Everything Using the command line enter trace When you use the trace command without any options the analyzer begins recording processor bus cycles immediately and continues until the trace buffer is filled In the default trace configuration the analyzer stores all bus cycles If you are using the deep analyzer the depth of the trace list buffer depends on whether or not you installed memory modules on the analyzer card and the capacity of the memory modules installed Refer to Chapter 18 Installation and Service for details If you are using the 1K analyzer the trace list buffer is 512 or 1024 states deep depending on whether or not you turn on the state time count See To count states or time in this chapter Start the demo program and trace from the
472. on An emulator reset system can t drive this separate target reset line Therefore a run after emulation reset will fail because the vector table is not located in the correct place Use the target reset to reinitialize memory or use a run command instead of a run from reset command 308 Chapter 9 Solving Problems If the deMMUer runs out of resources during the loading process If the deMMUer runs out of resources during the loading process Check the physical address ranges that will be reverse translated by the present setup of the deMMUer Enter load demmuer verbose to see a list of those physical address ranges If all of the physical spaces where you have code under development are listed ignore the out of resources message Check to ensure that you have placed sufficient restrictions in the MMU mapping paths to prevent reverse translating physical address space where you have no memory Check your emulation memory map to make sure you have entries to support each of the address spaces where you have code under development Make sure those spaces are no larger than they need to be to accommodate your program code Check if you are using both root pointers in your memory mapping scheme The deMMUer may have run out of resources for only one of the root pointers Check if you are using function code mapping The deMMUer may have run out of resources for o
473. on file will b loaded into the emulator You can follow this option with a file name Otherwise the previously loaded configuration will be reloaded This option causes the emulator to read the MMU registers and MMU tables and load the deMMUer with appropriate information to reverse translate the physical e addresses it receives from the emulation bus so it can deliver corresponding logical addresses to the analyzer Load the file into emulation memory hardware In some emulators you can also load a background monitor file The function code used to define the address space being referenced See the syntax diagram for FCODE to see a list of the function codes available and for an explanation of those codes This represents the absolute file to be loaded into either target system memory emulation memory X files are assumed or the trace memory TR files are assumed This option allows you to load a file even if part of the file is located at memory mapped as guarded or target ROM trom This option causes the file specified to be loaded without symbols This option allows you to offset the listed address values from the actual addresses The offset value you specify will be subtracted from the actual addresses This option causes the file specified to be loaded with symbols This option allows you to load a previously generated trace file This option allows you to load a previously generated trace specificat
474. on processor the MMU must be disabled Refer to the emulation configuration questions discussed in Chapter 8 Configuring the Emulator To modify registers in the FPU class your target system must have a floating point coprocessor You can enter values into the three FPU control registers using numbers in the following bases hexadecimal decimal octal and binary You can t use symbols for the floating point registers You can enter values into the eight floating point registers using either floating point or hexadecimal notation Special values such as denormals infinity and NaN Not a Number can be entered by using hexadecimal notation The following are examples of acceptable entries for the floating point registers 12 34e 56 1 E23 le 23 1 2 7 7654321 0000 000001 T FfOOOOFFEFFEFFTEFFF AH Modifying a register s contents can help you test the effects of different program values without the trouble of rebuilding your program code For example you might stop the processor at a certain point set a breakpoint and then modify a register and run from that point to test the result The register is displayed after modification to confirm the change 146 Chapter 4 Using the Emulator Viewing and Modifying Registers The processor must be running to allow modifying registers See To display registers above for more information Examples To modify a register choose Modify Register and fill in
475. one background red Note that instance names are more specific than class names That is class names may apply to many instances of the widget The class and instance names for the widgets in the Graphical User Interface can be displayed by choosing Help X Resource Names and clicking on the All names button Wildcards Can Be Used A wildcard may be used to match a resource specification to many different widgets at once For example to set the background color of all pushbuttons you can use Application XmPushButton background red Note that resource names with wildcards are more general than those without wildcards 568 Chapter 17 X Resources and the Graphical User Interface X Resource Specifications Specific Names Override General Names A more specific resource specification will override a more general one when both apply to a particular widget or application The names for the application and the main window widget in HP64_Softkey applications have been chosen so that you may specify custom resource values that apply in particular situations 1 Apply to ALL HP64_Softkey applications HP64_Softkey lt resource gt lt value gt 2 Apply to specific types of HP64_Softkey applications emul lt resource gt lt value gt for the emulator perf lt resource gt lt value gt for the performance analyzer 3 Apply to all HP64_Softkey applications but only when they are connected to a particular type of
476. onfiguration Interface This section shows you how to modify store and load configurations using the emulator configuration interface This section shows you how to e Start the configuration interface e Modify a configuration section e Apply configuration changes to the emulator e Store configuration changes to a file e Change the configuration directory context e Display the configuration context e Access help topics e Access help for a configuration item in a dialog box e Exit the configuration interface e Load an existing configuration file 277 Chapter 8 Configuring the Emulator Using the Configuration Interface To start the configuration interface e Choose Modify Emulator Config from the emulator analyzer interface pulldown menu e Using the command line enter the modify configuration command The configuration interface top level dialog box see the following example is displayed The configuration interface may be left running while you are using the emulator analyzer interface If you are using the Softkey Interface from a terminal or terminal emulation window you don t get a dialog box from which to choose configuration sections however you have access to the same configuration options through a series of configuration questions 278 Chapter 8 Configuring the Emulator Using the Configuration Interface Examples The emulator configuration interface top level di
477. ontains 61 Chapter 3 Using the emulator analyzer interface Using Special Features of the Graphical User Interface j To copy and paste from the entry buffer to the command line entry area Place text to be pasted into the command line in the entry buffer text area You may do that by e Copying the text from the display area using the copy and paste feature e Enter the text directly by typing it into the entry buffer text area e Choose the text from the entry buffer recall dialog box Position the mouse pointer within the command line text entry area If necessary reposition the cursor to the location where you want to paste the text If necessary choose the insert or replace mode for the command entry area by pressing the lt insert gt key on the keyboard Click the command paste mouse button to paste the text in the command line entry area at the current cursor position The entire contents of the entry buffer are pasted into the command line at the current cursor position Although a paste from the display area to the entry buffer affects all displayed entry buffers in all open windows a paste from the entry buffer to the command line only affects the command line of the window in which you are currently working See To copy and paste to the entry buffer for information about pasting information from the display into the entry buffer 62 Chapter 3 Using the emulator analyzer interface Using
478. or HP 64000 UX system environment variable is to be set source label This allows you to specify the width in columns of the source lines in the memory mnemonic display To adjust the width of the source lines in the trace display increase the widths of the label and or mnemonic fields This lets you specify the address width in columns of the address field in the trace list or label symbols field in any of the other displays 427 Chapter 11 Emulator Commands set Examples See Also mnemonic symbols lt WIDTH gt This lets you specify the width in columns of the mnemonic field in memory mnemonics trace list and register step mnemonics displays It also changes the width of the status field in the trace list This lets you specify the maximum width of symbols in the mnemonic field of the trace list memory mnemonic and register step mnemonic displays This prompts you for the column width of the source label mnemonic or symbols field lt CTRL gt f and lt CTRL gt g may be used to shift the display left or right to display information which is off the screen set noupdate set source on inverse_video on tabs_are 2 set symbols on width label 30 mnemonic 20 set PRINTER lp s set HP64KSYMBPATH filel procl file2 proc2 code_block_1 display data display memory display software_breakpoints display trace 428 Chapter 11 Emulator Commands sp
479. or Memory Resources To display memory in word format e Choose Display gt Memory Hex gt words If you want to include a line range or starting point for your memory display in your command enter it into the entry buffer before you execute this command e Using the command line display a range of memory in word format by entering display memory lt lower gt thru lt upper gt words To format the memory listing as a single column add the keyword absolute before the data type in the display memory command To format the memory listing as multiple columns add the keyword blocked before the data type in the display memory command Example Display the demo program s average temperature array display memory aver_temp thru aver_temp end blocked words 127 Chapter 4 Using the Emulator Accessing Processor Memory Resources Example To display memory in long word format Choose Display gt Memory Hex long If you want to include a line range or starting point for your memory display in your command enter it into the entry buffer before you execute this command Using the command line display a range of memory in long word format by entering display memory lt lower gt thru lt upper gt long To format the memory listing as a single column add the keyword absolute before the data type in the display memory command To format the memory listing as multiple columns add the keyword blocked be
480. or activity contains an opcode that causes a stack push which results in multiple write operations to the stack area outside the range The memory activity measurement will count only the stack push opcode cycle However the program activity measurement will count the stack push opcode cycle and the write operations to the stack By comparing the program activity and the memory activity in an address range you can get an idea of how much activity in other areas is caused by the code being measured An activity measurement report of the code prog data and stack sections of a program is shown in the next figure 257 Chapter 7 Making Software Performance Measurements Understanding activity measurements Label prog Address Range ADEH thru 1261H Memory Activity State Percent Rel 57 77 Abs 57 77 Mean 295 80 Sdv 26 77 Time Percent Rel 60 97 Abs 60 97 Program Activity State Percent Rel 99 82 Abs 99 82 Mean 511 10 Sdv 0 88 Time Percent Rel 99 84 Abs 99 84 data Address Range 6007AH thru 603A5H Memory Activity State Percent Rel 30 51 Abs 30 51 Mean 156 20 Sdv 31 87 Time Percent Rel 28 09 Abs 28 09 Program Activity State Percent Rel 0 18 Abs 0 18 Mean 0 90 Sdv 0 88 Time Percent Rel 0 16 Abs 0 16 stack Address Range 40000H thru 43FFFH Memory Activity State Percent Rel 11 72 Abs 11 72 Mean 60 00 Sdv 29 24 Time Percent Rel 10 94 Abs 10 94 Program Activity State Perce
481. oreground monitor when the MMU is enabled BNC trigger break Error 616 Cause This status message will be displayed if you have configured the emulator to break on a BNC trigger signal and the BNC trigger line is activated during a program run The emulator is broken to the monitor Break caused by CMB not ready Error 611 Cause This status message is printed during coordinated measurements if the CMB READY line goes false The emulator breaks to the monitor When CMB READY is false it indicates that one or more of the instruments participating in the measurement is running in the monitor Action No action is necessary status only Break condition configuration aborted Error 653 Cause Occurs when lt CTRL gt c is entered during the configuration of break conditions Break due to cause other than step Error 689 Cause An activity other than a step command caused the emulator to break This could include any of the break conditions or a lt CTRL gt c break Breakpoint code already exists lt address gt Error 667 Cause You attempted to insert a breakpoint however there was already a breakpoint instruction at that location which was not already in the breakpoint table Action Your program code is apparently using the same breakpoint instruction as used by the breakpoints feature Remove the breakpoint instructions from your program code and use the modify software_breakpoints set command to insert them
482. ormed when the MMU is enabled Find the logical address range that contains your foreground monitor and see the physical address where it is mapped The physical address range needs to be the same as the logical address range for the emulator to be able to find the monitor The display you get by choosing Display MMU Translations or entering the command display mmu_translations might show the logical address range of your foreground monitor mapped to physical addresses beginning at COOOH as follows LOGICAL ADDRESS PHYSICAL ADDRESS Lower Upper Lower Upper 4000 4PFF 0000C000 OOOOCFFF 345 Chapter 10 Using MC68030 Memory Management Solving Problems The next step in this analysis is to display the MMU mapping table for the logical base address of the foreground monitor You might choose Display gt MMU Translations and in the dialog box click on MMU Tables and type in Address 4000H or you could enter the command display mmu_translations tables 4000h In this example you would see the following display of mappings Mmmu t 4000 Logical Address hex 0 0 0 0 4 0 0 0 Logical Address bin 0000 0000 0000 0000 0100 0000 0000 0000 Table Level AAAA AAAA BBBB BBBB CCCC PPPP PPPP PPPP LEVEL INDEX LOCATION CONTENTS TBL PAGE L U LIMIT S CI M U WP DT CRP 00000003 00001020 00001020 uU 0000 LONG A 0000 00001020 0000000b 00001030 00001030 U 0000 0 1 0 LONG B 0000 00001030 0007000a 00001040 00001040 U 0007 0 1 0 SHORT C 0004 00001050 0
483. ose Breakpoints Set All to set all existing breakpoints in the breakpoint table Inside the breakpoints list display press and hold the select mouse button and then choose Set All Breakpoints from the popup menu Using the command line enter comands as follows e To set a breakpoint at a location given by lt address gt enter modify software_breakpoints set lt address gt e To set all existing breakpoints in the breakpoint table enter modify software_breakpoints set To add a new breakpoint you can choose Breakpoints Temporary with the name of the new breakpoint in the entry buffer or use the modify software_breakpoints set command and specify the address for the breakpoint You can also use this method to reenable an existing breakpoint at that address If you choose Breakpoints Set All or use the modify software_breakpoints set command without an address parameter all existing breakpoints in the breakpoints table will be enabled The breakpoints feature must be enabled before individual breakpoints can be set When displaying memory in mnemonic format asterisks appear next to breakpoint addresses An asterisk shows the breakpoint is active Also if assembly level code is being displayed the disassembled instruction mnemonic at the breakpoint address will show the breakpoint instruction 152 Chapter 4 Using the Emulator Using Execution Breakpoints Examples Set a new breakpoint at get_targets
484. oss reference the addresses it receives to the symbols and corresponding code in your source files When the MMU is used logical addresses are translated to physical addresses before they are placed on the processor address bus Therefore they no longer match the symbols data base What would happen if the analyzer didn t get help from the deMMUer The analyzer would get its address information directly from the address bus of the emulation processor It would have no way to know what translation had occurred in the MMU Therefore it could not trigger or qualify its trace on any symbol defined in the symbols data base Further its trace list could only show you the physical address value it found on the address bus it would not be able to show any symbols associated with that physical address or any corresponding source file lines You would have to figure out for yourself what portion of your program address space was executing when that physical address appeared on the bus How does the deMMuUer serve the analyzer The analyer does not get its information directly from the processor address bus when the deMMUer is turned on Instead the de MMUer accepts the physical address from the processor address bus reverse translates it to its logical address value and supplies it to the analyzer By having the logical address corresponding to the transactions on the processor address bus the analyzer can accept trace 330 Chapter 10 Usi
485. ot available Cause The file does not exist Action Reload your interface and or real time operating system software Inverse assembly not available Cause The inverse assembler for your emulator is missing Action Verify proper software installation Joining session already in progress continue file loaded Cause This is a status message When operating the emulator in multiple windows a new emulation session is joined to a current session In this case the new session was able to continue because the continue file loaded properly 486 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Joining session already in progress user interface defaulted Cause When operating the emulator in multiple windows a new emulation session is joined to a current session In this case the new session used the user interface default selections Load aborted Cause While loading a file into the emulator an event occurred that caused the host system to stop the load process Action Use the display error_log command to view any errors If the problem persists make sure the host system and emulator are operating properly and that you are trying to load an acceptable file Refer to Chapter 11 Emulator Commands for information about the load command Load completed with errors Cause While loading a file into the emulator one or more events occurred that caused errors during the load process
486. ou give the Startemul command you will be asked if you would like to have the demo files copied to a different directory Answer yes and then specify your own demo directory The files will be copied to your own directory where you can change the permissions on the Xdefaults emul file so that you can edit it S chmod 664 Xdefaults emul Now edit the Xdefaults emul file For this example you would edit as follows vi Xdefaults emul platformScheme pce xview platformScheme HP UX platformScheme SunOS platformScheme HPxterm Finally save the Xdefaults emul file with its modifications and then start the emulation session again from the demo directory where you have your custom Xdefaults emul file Start the emulator analyzer demo Startemul lt logical_emul_name gt lt RETURN gt The lt logical_emul_name gt in the command above is the logical emulator name given in the HP 64700 emulator device table file usr nhp64000 etc 64700tab net For the MC68020 emulator it is usually m68020 for the MC68030 emulator m68030 If you did not perform Step 3 of this Start the demo procedure you will be asked if you would like to have the demo files copied to a directory of your own choosing It is a good idea to have these files copied to your own demo directory if you have space available in your system because it protects the original demo files from changes you might make during this demo procedure This script
487. ou would enter In s users team usr hp64000 usr hp64000 If you do not wish to establish a symbolic link you can set the HP64000 variable to the full path that contains the HP 64000 software also set the LD_LIBRARY_PATH variable to the directory containing run time libraries used by the HP 64000 products Again if you installed relative to users team you would enter setenv HP64000 users team usr hp64000 setenv LD_LIBRARY_PATH LD_LIBRARY_PATH HP64000 lib Set the PATH environment variable to include the usr hp64000 bin directory by entering setenv PATH PATH HP64000 bin Including usr hp64000 bin in your PATH relieves you from prefixing HP 64700 executables with the directory path 617 Chapter 18 Installation and Service Installing Sun SPARCsystem Software 4 Set the MANPATH environment variable to include the usr hp64000 man and usr hp64000 contrib man directories by entering setenv MANPATH MANPATH HP64000 man setenv MANPATH MANPATH HP64000 contrib man Including these directories in your MANPATH variable lets you access the on line man page information included with the software If the Graphical User Interface is to run on a SPARCsystem computer that is not running OpenWindows include the usr openwin lib directory in LD_LIBRARY_PATH setenv LD_LIBRARY_PATH LD_LIBRARY_PATH usr openwin lib Step 4 Verify the software installation A number of product filesets were installed o
488. ource Specifications 570 Load Order 571 Scheme Files 572 Resources for Graphical User Interface Schemes 572 Scheme File Names 573 Load Order for Scheme Files 573 Custom Scheme Files 574 XXIV Contents Part 5 Installation and Service Guide 18 Installation and Service Installation 578 Installing Hardware 580 Step 1 Install optional memory modules on Deep Analyzer card if desired 582 Step 2 Connect the Emulator Probe Cables 584 Step 3 Install Boards into the HP 64700 Card Cage 587 Step 4 Install emulation memory modules on emulator probe 599 Step 5 Connect the emulator probe to the demo target system 603 Step 6 Apply power to the HP 64700 605 Connecting the HP 64700 to a Computer or LAN 607 Installing HP 9000 Software 608 Step 1 Install the software from the media 608 Step 2 Verify the software installation 611 Step 3a Start the X server and the Motif Window Manager mwm 612 Step 3b Start HP VUE 612 Step 4 Set the necessary environment variables 613 Installing Sun SPARCsystem Software 615 Step 1 Install the software from the media 615 Step 2 Start the X server and OpenWindows 616 Step 3 Set the necessary environment variables 616 Step 4 Verify the software installation 618 Step 5 Map your function keys 619 Step 6 Restart the window system 620 Step 7 Run the interface ina window 620 Verifying the Installation 621 Step 1 Determine the logical name of your emulator 621 Step 2 S
489. out the command named pod_command enter help pod_command lt RI lt RETURN gt ETURN gt 397 Chapter 11 Emulator Commands load load load Y lt RETURN gt lt FILE gt iF configuration demmuer noabort offset_by lt EXPR gt lt FILE gt 1 r lt FILE gt 7 ll I verbose 1 lt EXPR gt use_value 64748503 The absolute file contains information about where the file is stored The memory map specifies that the locations of the file are in user target system memory or emulation memory This command also allows you to access and display previously stored trace data load a previously created configuration file and load absolute files with symbols Any file specified by lt FILE gt cannot be named configuration emul_mem user_mem symbols trace or trace_spec because these are reserved words and are not recognized by the emulation system as ordinary file names 398 configuration demmuer emul_mem FCODE lt FILE gt noabort nosymbols offset_by symbols trace trace_spec use_value Chapter 11 Emulator Commands load The absolute file is loaded into emulation memory by default This option specifies that a previously created emulation configurati
490. ow resolution displays less than 1000 pixels vertically Softkey Input Defines the input scheme that is the button and key bindings for the mouse and keyboard Load Order for Scheme Files Scheme files are searched for in the following directories and in the following order 1 System scheme files in directory usr hp64000 lib X 1 1 HP64_schemes 2 System wide custom scheme files located in directory X APPLRESDIR HP64_schemes 3 User defined scheme files located in directory HOME HP64_schemes note the dot in the directory name 573 Chapter 17 X Resources and the Graphical User Interface Scheme Files Custom Scheme Files You can modify scheme files by copying them to the directory for user defined schemes and changing the resource specifications in the file For example if you wish to modify the color scheme and your platform is HP UX you can copy the ust hp64000 lib X 1 1 HP64_schemes HP UX Softkey Color file to HOME HP64_schemes HP UX Softkey Color and modify its resource specifications You can create custom scheme files by modifying the X resource for the particular scheme and by placing the custom scheme file in the directory for user defined schemes For example if the following resource specifications are made HP64_Softkey platformScheme HP UX HP64_Softkey colorScheme MyColor The custom scheme file would be SHOME HP64_schemes HP UX Softkey MyColor 574 Part 5 Installation and Se
491. panel ports and connectors 1 Use a ground strap when removing or installing boards or memory modules into the HP 64700 Card Cage to reduce the risk of damage from static discharge A jack on the rear panel of the HP 64700 Card Cage is provided for this purpose GROUND STRAP PLUG J inet wae ue Y 64700E07 s 587 Chapter 18 Installation and Service Installing Hardware 2 Turn the thumb screw and remove the top cover by sliding the cover toward the rear and up LOOSEN THUMB SCREW AND SLIDE COVER TO REMOVE p B h Q 64700E08 Pa 588 Chapter 18 Installation and Service Installing Hardware 3 Remove the side cover by unsnapping the two latches and lifting off EMULATOR SIDE COVER a mi A TAB SLOTS N il il il i yi SN 4 Remove the card supports NUMBER HERE INDICATES SLOT
492. parameters on the first line of the command file following the PARMS keyword Pass actual parameters to the command file when it is executed A formal parameter is composed of an ampersand amp followed by one or more letters or underscores Formal parameters are like variables in the command file Formal parameters are replaced by actual parameters when the command file is executed An actual parameter is an ASCII string that represents a symbol or value Actual parameters containing blanks must be enclosed in single or double quotes Actual parameters are supplied to the command file in two ways e As arguments to the command file entered on the command line along with the command file name Values are positional Enter a value for the first parameter that follows the PARMS keyword in the command file immediately following the command file name on the command line Enter a value for the second parameter second after the command file name And so on e In response to prompts from the interface If a formal parameter exists in the command file and no actual parameter was passed to it on the command line the interface will prompt you for a value for the formal parameter If you enter a command file name without supplying any actual parameters the interface will prompt you for values for all the formal parameters You may use either method to supply parameters or a combination of the two Being prompted for the parameters relieves you
493. pervisor memory space 340 Using two root pointers 340 Using function codes 341 Solving Problems 342 Using the display mmu_translations command to overcome plug in problems 342 Use the analyzer with the deMMUer to find MMU mapping problems 343 Failure caused by access to guarded memory 343 Failure due to system halt 344 A can t break into monitor example 345 Emulator Commands How Pulldown Menus Map to the Command Line 351 Emulator Configuration Memory Map 355 How Popup Menus Map to the Command Line 356 Syntax Conventions 358 Oval shaped Symbols 358 Rectangular shaped Symbols 358 Circles 359 The NORMAL Key 359 XX Contents Summary of Commands 360 break 361 cmb_execute 362 copy 363 COUNT 369 display 371 DISPLAY MEMORY 377 DISPLAY MMU 381 DISPLAY TRACE 385 end 390 EXPR 392 FCODE 395 HELP 397 load 398 log commands 401 modify 402 performance_measurement_end 409 performance_measurement_ initialize 410 performance_measurement_run 412 pod_command 413 QUALIFIER 415 reset 418 mn 419 SEQUENCING 421 set 423 specify 429 step 431 stop_trace 434 store 435 SYMB 437 trace 445 TRIGGER 449 lt UNIX_COMMAND gt 451 wait 452 WINDOW 454 xxi Contents 12 13 14 15 Emulator Messages Messages In This Chapter 458 Organization of the Messages 458 Messages Recorded in Error Log 458 Unalphabetized Error and Status Messages 459 Alphabetized Error An
494. phical User Interface e Using display control features of the Softkey Interface e Copying information to a file or printer e Exiting the emulator analyzer interface e Creating and executing command files e Forwarding commands to other HP 64700 interfaces e Accessing the terminal interface e Accessing the operating system When an X Window System that supports OSF Motif interfaces is running on the host computer the emulator analyzer interface is the Graphical User Interface 36 Chapter 3 Using the emulator analyzer interface which provides pulldown and popup menus point and click setting of breakpoints cut and paste on line help customizable action keys and popup recall buffers The emulator analyzer interface also provides the Softkey Interface for several types of terminals terminal emulators and bitmapped displays When using the Softkey Interface commands are entered from the keyboard When using the Graphical User Interface the command line portion of the interface gives you the option of entering commands in the same manner as they are entered in the Softkey Interface If you are using the Softkey Interface you can only enter commands from the keyboard using the command line The menu commands in the Graphical User Interface are a subset of the commands available when using the command line While you have a great deal of capability in the menu commands there are some commands that must be entered in the
495. play Local Symbols pagg4cis libo pana memmove Display Parent Symbols BOBB4C53 libe paaa memset 084C73 libe aaa open Cut Full Symbol Name ggag2403 env aa4A open_file it Fi i 23A0 env alatat pos_cursor Fait File Defining Smeal 00002670 env 4288 printf G GQG667E BGGG66C7 libe aaa proc_spec_init 448639394 88883901 prog 4aa 6 y proc_specific BOASCS GG039F9 prog 003A STATUS M68030 Running in monitor Emulation trace complete set Command_line EERE EERE EEE LUE ees run trace step display __modify f break f end ETc 107 Chapter 4 Using the Emulator Loading and Storing Programs Choosing this menu item brings up a terminal window with an edit session open on the file where the highlighted source line exists To edit a file at the location of a source line eS ee E File Display Modify Execution Breakpoints Trace Settings Action keys l lt Demo gt Disp Sre Trace Run lt Your Key gt Make Disp Sre Prev Run Xfer til Ni Break Step Asm Memory sp imnemonic file usr hp648 demo debug_env hp6474 main c address label data Step Source A 132 133 if counter 4
496. ple 2 This example shows the relationship between memory ranges and memory block sizes Suppose you have installed 256 Kbyte SRAM memory modules in Memory slots 0 and 1 called BANK 0 and BANK 1 on the emulation probe This makes four 64 Kbyte blocks and two 128 Kbyte blocks available to the memory mapper Then you enter the following map commands Start Address 0h End Address 7fffh Memory Type Emul RAM Start Address 20000h End Address 3f000h Memory Type Emul RAM Start Address 40000h End Address 4ffffh Memory Type Emul RAM Start Address 50000h End Address 500ffh Memory Type Emul RAM Map Default Memory Type Target RAM Cache Inhibit ON If you have not used the dual port emulation RAM the first map term that is small enough to fit is assigned to that memory In this example that is the last term you defined the range from 50000 500ff The entire 4 Kbyte block is reserved though you specified only a 256 byte range Two 64 Kbyte blocks and one 128 Kbyte block are used from the SRAM emulation memory on the probe leaving two 64 Kbyte blocks and one 128 Kbyte block One of the 64 Kbyte blocks is used for the first map term but 32 Kbytes of that block are unused and unavailable The third term uses the other 64 Kbyte block The second term uses part of the 128 Kbyte block leaving the rest unavailable Mapper resolution is independent of block allocation In the above example if you had default guarded and your program accessed 800
497. power cable The power cable must either be plugged into an approved three contact electrical outlet The power jack and mating plug of the power cable meet International Electrotechnical Commission IEC safety standards Do Not Operate In An Explosive Atmosphere Do not operate the instrument in the presence of flammable gases or fumes Operation of any electrical instrument in such an environment constitutes a definite safety hazard Warning Keep Away From Live Circuits Operating personnel must not remove instrument covers Component replacement and internal adjustments must be made by qualified maintenance personnel Do not replace components with the power cable connected Under certain conditions dangerous voltages may exist even with the power cable removed To avoid injuries always disconnect power and discharge circuits before touching them Designed to Meet Requirements of IEC Publication 348 This apparatus has been designed and tested in accordance with IEC Publication 348 safety requirements for electronic measuring apparatus and has been supplied in a safe condition The present instruction manual contains some information and warnings which have to be followed by the user to ensure safe operation and to retain the apparatus in safe condition Do Not Service Or Adjust Alone Do not attempt internal service or adjustment unless another person capable of rendering first aid and resuscitation is present Do Not S
498. precludes its use for synchronous read cycles with no wait states These specifications allow system designers to guarantee that an alternate bus master has stopped driving the bus when the MC68030 EC030 regains control of the bus after an arbitration sequence DS will not be asserted for synchronous write cycles with no wait states These hold times are specified with respect to strobes asynchronous and with respect to the clock synchronous The designer is free to use either hold time Synchronous inputs must meet specifications 60 and 61 with stable logic levels for all rising edges of the clock These values are specified relative to the high level of the rising clock edge This specification allows system designers to qualify the CS of an MC6888 1 MC68882 with AS allowing 7 ns for a gate delay and still meet the CS to DS setup time requirement spec 8B of the MC6888 1 MC68882 The asterisk means there is some difference between the specification for the emulator and the specification for the MC68030 EC030 for this entry 553 Chapter 16 Specifications and Characteristics HP 64748 Electrical Specifications HP 64748 Electrical Specifications HP 64748 DC ELECTRICAL SPECIFICATIONS Vcc 5 0 Vde 5 GND 0 Vdc Ta 0 to 70 C Characteristic Symbol Min Max Unit Input High Voltage Vin 2 0 Vcc V Input Low Voltage VIL
499. prog 0 TEFE 00000000 00007FFF 8000 1FFFF 00028000 0003FFFF 7FFF8000 TEFFEFFE 00008000 OOOOFFFF FFFE8000 FFFFFFFF 00010000 00027FFF supr data 0 7EFF 00000000 00007FFF 8000 1FFFF 00028000 0003FFFF 7FFF8000 TEFFEFFE 00008000 OOOOFFFF FFFE8000 FFFFFFFF 00010000 00027FFF supr prog 0 7EFF 00000000 00007FFF 8000 1FFFF 00028000 0003FFFF 7FFF8000 TEFFEFFE 00008000 OOOOFFFF FFFE8000 FFFFFFFF 00010000 00027FFF 323 Chapter 10 Using MC68030 Memory Management Seeing details of the MMU Translations The above listing shows function codes were included in the mapping scheme If function codes had not been included the function code headings would not be present and only a single list of logical to physical address mappings would be shown Note that the emulator enters the monitor to obtain the information it shows in the MMU displays Execution of your target program is suspended while the emulator gathers information for an MMU display If there are portions of your target program that should not be interrupted during execution insert an execution breakpoint in some safe area of your program code and run until the breakpoint is executed Then you can safely view the MMU mappings The display you get with the Display MMU Translations or display mmu_translations command can show as little as one line per page or group of adjacent pages of mapped logical address space Contiguous entries are shown on one line to make the display more readab
500. program Notice that now the message on the status line is Emulation trace complete This shows the trigger state has been found and the analyzer trace memory has been filled 5 To view the captured states choose Display Trace Or using the command line enter display trace lt RETURN gt Label Address Opcode or Status w Source Lines A Base symbols mnemonic w symbols pr main 9990084 NOP HHHHHHHHHHmain c line 1 thru SG HHHHHHHHHHHHHHH HR an interrupt ii array and calls comb prog main main LINK W AB aaa 001 sysstac 00O7F98 48082516 supr data long wr ds32 HEHEHE Hmain c line 97 HHRHHHHRHRHHHHRHHHHRHHRH RHR 002 pr main BG4G4884 JSR init init_system 003 pr maint G 8G8886 8808321E supr pram long rd ds32 004 sysstactHAGG7F94 48007FFa supr data long wr ds32 005 init_sy a 9988084 NOP HHHHHHHHHHinit_system c line 1 thru 31 HHHHHHHHHHHHHHH RHR The default display mode settings cause source lines and symbols to appear in the trace list Captured states are numbered in the left hand column of the trace list Line 0 always contains the state that caused the analyzer to trigger Other columns contain address information data values opcode or status information and time count information 23 Chapter 1 Getting Started Step 11 Display memory at an address in a register Step 11 Display memory at an address ina register Click on the Disp REG a
501. program See To load the demo program in this chapter for more information 101 Chapter 4 Using the Emulator Loading and Storing Programs Loading and Storing Programs The emulator provides commands that allow you to move files into emulation or target memory from a host computer through the LAN or serial ports of the HP 64700 Card Cage You can also save a range of memory in an absolute file for later reuse You might do this if you patch a section of code and need to do further testing Many different absolute file formats are supported The primary ones used with the emulator interface are the IEEE 695 and HP64000 absolute formats The load command has other options that allow you to control the load process Refer to the load command syntax in Chapter 11 Emulator Commands To load a program Choose File gt Load Executable In the dialog box click on the name of the executable file to load and then click OK Using the command line load a program absolute file into emulation or target memory by entering load lt memory_type gt lt filename gt fcode lt fcode gt lt memory_type gt is optional emul_mem is emulation memory and user_mem is target system memory The default is to load all memory lt filename gt is the name including paths if needed of an HP64000 or IEEE 695 format absolute file You do not need to specify the extension if it is x or X lt fcode gt is an optional fu
502. program start Startemul reset trace run from transfer_address 174 Chapter 5 Using the Emulation Bus Analyzer Making Simple Trace Measurements To stop a trace measurement Choose Trace Stop Using the command line enter stop_trace You must use this command to stop a trace started with a Trace gt Until Stop command refer to To trace activity leading up to a program halt later in this chapter Several other conditions may occur that will make you want to stop a trace The analyzer may not record any trace states because your trigger specification isn t correct or because you have a target system problem At other times a valid trace may be capturing data slowly You can use the stop_trace command to prevent the analyzer from storing additional data You do not have to stop a trace in order to begin viewing a partial trace because the interface supports incremental trace uploading After the trigger condition occurs the interface begins uploading and displaying trace states as they are captured To display the trace list Choose Trace Display Choose Display Trace Using the command line enter display trace When you complete a trace measurement you will want to see the results The display trace command shows you the current trace list The trace display is updated each time you enter a new trace command until you display some other 175 Chapter 5 Using the Emulation Bus Analyzer Makin
503. provide a means for connecting the internal trigger signals trig1 and trig2 to external instruments The CMB and BNC trigger lines are bidirectional Either signal may be used directly as a break condition The CMB trigger is level sensitive while the BNC trigger is edge sensitive The CMB trigger line puts out a true pulse following receipt of EXECUTE despite the commands used to configure it This pulse is ignored internally Note that if you use the EXECUTE function the CMB TRIGGER should not be used to trigger external instruments because a false trigger will be generated when EXECUTE is activated 238 Chapter 6 Making Coordinated Measurements Setting Up for Coordinated Measurements Setting Up for Coordinated Measurements This section describes how e To connect the Coordinated Measurement Bus e To connect the rear panel BNC For more information refer to the HP 64700 Series Installation Service Guide To connect the Coordinated Measurement Bus CMB CAUTION Be careful not to confuse the 9 pin connector used for the CMB with those used by some computer systems for RS 232C communications Applying RS 232C signals to the CMB connector is likely to result in damage to the HP 64700 Card Cage To use the CMB you will need one CMB cable for the first two emulators and one additional cable for every emulator after the first two The CMB cable is orderable from HP under product number HP 64023A The cable
504. ption WINDOW Selectively enables and disables analyzer operation based upon independent enable and disable terms This can be used as a simple storage qualifier You may also use it to further qualify complex trigger specifications See the WINDOW syntax pages for details Examples trace after 1000H lt RETURN gt trace only address range 1000H thru 1004H lt RETURN gt trace counting state address 1004H lt RETURN gt trace after address 1000H occurs 2 only address range 1000H thru 1004H counting time break_on_trigger lt RETURN gt 447 Chapter 11 Emulator Commands trace See Also copy trace display trace help trace load trace load trace_spec specify trace store trace store trace_spec 448 about after before occurs QUALIFIER lt TIMES gt Chapter 11 Emulator Commands TRIGGER TRIGGER From TRACE after before diagram QUALIFIER 7 gt To output of TRIGGER occurs oH lt TIMES gt on TRACE diagram This parameter lets you define where the analyzer will begin tracing program information during a trace measurement A trigger is a QUALIFIER When you include the occurs option you can specify the trigger to be a specific number of occurrences of a QUALIFIER see the QUALIFIER syntax diagram The default is to trace after any state occurs once This option captur
505. r 562 Part 4 Concept Guide 563 Part 4 Concepts Guide In this part Part 4 of this book provides conceptual information on the X resources and the Graphical User Interface 564 17 X Resources and the Graphical User Interface 565 Chapter 17 X Resources and the Graphical User Interface X Resources and the Graphical User Interface X Resources and the Graphical User Interface This chapter contains more detailed information about X resources and scheme files that control the appearance and operation of the Graphical User Interface This chapter e Describes the X Window concepts surrounding resource specification e Describes the Graphical User Interface s implementation of scheme files 566 Chapter 17 X Resources and the Graphical User Interface X Resource Specifications X Resource Specifications An X resource specification is a resource name and a value The resource name identifies the element whose appearance or behavior is to be defined and the value specifies how the element should look or behave For example consider the following resource specification Application form row done background red The resource name is Application form row done background and the value is red Resource Names Follow Widget Hierarchy A widget is an OSF Motif graphic device from which X applications are built For example pushbuttons and menu bars are Motif
506. r Interface 48 To edit the command line using the command line popup menu 49 To edit the command line using the keyboard 50 To recall commands 50 To execute a completed command 51 To get online help on commands 52 To display the error log 53 To display the event log 53 Using Special Features of the Graphical User Interface 54 To choose a pulldown menu item using the mouse method 1 54 To choose a pulldown menu item using the mouse method 2 55 To choose a pulldown menu item using the keyboard 56 To choose popup menu items 57 To place values into the entry buffer using the keyboard 58 Contents To copy and paste to the entry buffer 58 To recall entry buffer values 61 To use the entry buffer 61 To copy and paste from the entry buffer to the command line entry area 62 To use the action keys 63 To use dialog boxes 63 Using display control features of the Softkey Interface 67 Copying information to a file or printer 68 Exiting the Emulator Analyzer Interface 70 To end a single window in the interface 70 To end the emulation session in all windows 71 Creating and Executing Command Files 72 Passing Parameters to Command Files 72 Using amp ArG_IEfT in Command Files 73 Using UNIX Commands and Scripts with Command Files 73 Using Shell Variables with Command Files 73 Restrictions on Commands 74 Status Line Updates 74 Nesting Command Files 74 Pausing Command Files 74 Placing Comments in Command Files 75 Cont
507. r measurement The following information will help you deal with problems when you try to load the deMMUer and receive a message such as deMMUer out of resources Note that when you see one error message there may have been other messages generated at the same time Display the error log to see all of the error messages that were generated This will give you additional information about the error that caused the message to appear The deMMUer has a table where it records ranges of physical addresses that it can reverse translate to logical addresses This table has eight entries and each entry contains a single physical address range Normally entries in this table are allocated automatically without intervention address address address address address address address address address address address address address address address address 335 Chapter 10 Using MC68030 Memory Management Using the DeMMUer Small page large page modes The size of each address range in the table depends on the page size you selected in the TC register of the MMU If you are using the small page mode smaller than 4 Kbytes per page each address range in the deMMUer table will be 2 Mbytes up to 16 Mbytes of physical addresses can be reverse translated If you are using the large page mode 4 Kbytes or more per page each address range in the deMMUer table will be 32 Mbytes up t
508. r more information Chapter 12 Emulator Messages Alphabetized Error And Status Messages Unable to set trace vector to lt address gt vector table write failed Error 156 Cause You used the step command The emulator tried to set the trace vector to the correct value for stepping but failed The most likely cause is that the vector table is mapped to target RAM but the physical memory is target ROM or there is no memory at that address Action Make sure you initialized the vector correctly in your vector table You need to remap memory so that the vector table will be located in a valid memory area See To step the processor in Chapter 4 Using the Emulator for more information Unable to verify trace vector vector table in guarded memory Error 156 Cause You used the step command The emulator tried to set the trace vector to the correct value for stepping and failed due to a guarded memory access Action Check the VBR register to make sure the vector table is where you expect it to be You need to remap memory so that the vector table will be located in a valid memory area See To step the processor in Chapter 4 Using the Emulator for more information Unable to verify trace vector vector table read failed Error 156 Cause You used the step command The emulator tried to set the trace vector to the correct value for stepping It failed because the vector table region was mapped to target RAM or ROM
509. r reverse translates the physical addresses back to logical addresses and supplies these to the analyzer so that the analyzer can e accept commands expressed in source file symbols e display trace lists with addresses expressed in source file symbols e display appropriate portions of source code preceding lists of trace data Refer to Chapter 10 Using MC68030 Memory Management for detailed information to help you use the deMMUer more efficiently To program the deMMUer in a static memory system Run your program to the point where you are sure the MMU is set up Break to the monitor program by choosing Execution Break Using the command line enter break Choose Settings DeMMUer Load from Memory If you want the emulator to override one or more of the MMU register values with values you specify during the load process choose Settings DeMMUer Load from Memory and specify the desired values in the dialog box 203 Chapter 5 Using the Emulation Bus Analyzer Analyzing Program Execution When the MC68030 MMU is Enabled To see a listing of the addresses that will be reverse translated by the DeMMUer during the loading process choose Settings gt DeMMUer Verbose before you enter your DeMMUer Load command Note that DeMMUer Load commands automatically enable the de MMUer Using the command line enter the following command load demmuer verbose Note that the load command automatically enables the
510. r the trace Start the trace Start the program run The trigger signals and the analyzer trigger capabilities allow you to specify breakpoints You can use the trigger specification to specify complex sequences of address data and status then break the program to the monitor when the sequence is found This is useful when you want to examine memory locations and registers after the trigger condition but before further program execution You can use a similar process to break to monitor when a BNC trigger or CMB trigger is received 254 Making Software Performance Measurements How to make software performance measurements on your programs 255 Chapter 7 Making Software Performance Measurements Using the Software Performance Measurement Tool Using the Software Performance Measurement Tool The Software Performance Measurement Tool SPMT is a feature included in the emulator analyzer that allows you to make software performance measurements on your programs Two types of software performance measurements can be made with the SPMT activity measurements and duration measurements The SPMT post processes information from the analyzer trace list When you end a performance measurement the SPMT dumps the post processed information to a binary file which is then read using the perf32 report generator utility Use the Software Performance Analyzer SPA for more capability For more capability in making measurem
511. race A gain or trace again command starts the analyzer trace with the most recent trace specifications including the pod_command specifications you entered The trace command cannot be used by itself because it defaults the be e trig trng addr and tsto r specifications returning them to their default values before the trace begins You can see the progress of your trace with the command Display Status A line in the Trace Status listing will show how many states have been captured The notation trigl break usually followed by Emulation trace complete will appear on the status line If trig break remains on the status line without Emulation trace complete manually stop the trace with the command Trace Stop 225 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements 10 You must wait for the notation trig break and or Emulation trace complete to appear on the status line this ensures the trace memory is filled during the trace except for the unfilled space you specified in Step 2 above Note that when you set a delay specification using tgout c or tgout t trigger output delay before trace complete after trigger the trace will indicate complete as soon as the analyzer has captured the state specified even though the entire trace memory has not been filled If the notation trig break remains on the status line without being replaced by Emulation trace complete
512. racteristics HP 64747 Electrical Specifications Notes 1 The power dissipation is an indication of how much power is drawn from the target system by the emulator probe not the true power dissipation of the emulator probe HP 64747 AC ELECTRICAL SPECIFICATIONS CLOCK INPUT Num Characteristic HP 64747 HP 64747 Unit 25MHz 40MHz Min Max Min Max Frequency of Operation 12 5 25 25 40 MHz i Cycle Time 40 80 25 40 ns 23 Clock Pulse Width 19 61 11 5 29 ns 45 Rise and Fall Times 4 3 2 ns HP64747 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5 GND 0 Vdc Ta 0 to 70 C Num Characteristic HP 64747 HP 64747 Unit 25MHz 40MHz Min Max Min Max 6 Clock High to FC Size RMC C1OUT Address Valid 0 20 0 14 ns Clock High to IPEND Valid 0 24 0 24 ns 6A Clock High to ECS OCS Asserted 0 15 0 10 ns 6B FC Size RMC C1OUT Address Valid to Negating ECS 3 z 3 ns IPEND Valid to Negating ECS 1 7 gE y ns 7 Clock High to FC Size RMC C10UT Address 0 40 0 25 ns Data High Impedance 8 Clock High to FC Size RMC IPEND C1OUT ka o a ag Address Invalid 548 Chapter 16 Specifications and Characteristics HP 64747 Electrical Specifications HP64747 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5
513. rc Prev action key or choose Display gt Memory Mnemonic Previous Or using the command line enter display memory mnemonic previous_display lt RETURN gt This command is useful for example when you have stepped into a function that you do not wish to look at you can return the previous mnemonic display to the screen and run your program until the source line that follows the function call is reached The next step will run through the function init_system and stop when proc_spec_init is reached 17 Chapter 1 Getting Started Step 6 Run until an address Step 6 Run until an address When displaying memory in mnemonic format a selection in the popup menu lets you run from the current program counter address until a specific source line e Position the mouse pointer over the line proc_spec_init press and hold the select mouse button and choose Run Until from the popup menu Memory sp mnemonic file main module main c address label data A 31 extern void update_system update system variables 92 extern void interrupt_sim simulate an interrupt 93 extern void do_sort sets up ascii array and calls 34 maint init_system proc_spec_init Choose Action for Highlighted Line ay le true Set Clear Software Breakpoint update_systq Edit Source num_checkst interrupt_si Ru
514. re ready to start a program run either to test target system operation or make an analyzer measurement you use the run command lt EXPR gt is a 32 bit address expression You can include function codes to specify the memory space to which the address applies 135 Chapter 4 Using the Emulator Using Processor Run Controls Examples The run from reset command pulses the processor reset line The processor fetches the values at offsets 0 and 4 from the vector table loads these values into the interrupt stack pointer and program counter registers and then begins running from the program counter address value Arun command causes the emulator processor to begin running from the current program counter provided that the emulator is not in the reset state If the emulator is in the reset state the run command with no parameters is equivalent to a run from reset command unless the run command is preceded by a break command If you reset the emulator break to the monitor and then run the emulator the stack pointer and program counter values are taken from the values supplied to configuration items instead of from the reset vector locations Refer to Chapter 8 Configuring the Emulator for more information about setting the initial stack pointer and program counter values To run from the demo program s starting location Enter main in the entry buffer and choose Execution Run from Or on the command
515. rement Specification The displays in this section were obtained from an MC68030 emulator The displays of an MC68020 emulator are the same except as noted below each illustration Use the online help screens as discussed earlier in this chapter to obtain information for making selections in the configuration displays Additional information not available in the help screens is given below some of the emulator configuration displays in this chapter The memory mapping displays are discussed separately in the next section of this chapter 287 Chapter 8 Configuring the Emulator Emulation Configuration Displays Monitor Setup Monitor Type Background gy Monilor FHenaime fmB4747 x Monitor Address imerrupt Priority mask e Target Completes Monitor Bus Cycles Yes No Enable Keep Alive Function gt Yes No Keep Alive Address Keep Allve Function Code Supervisor Program 2 In the Monitor Setup for the MC68020 you will not see support for a Keep Alive Function because the background monitor bus cycles are visible to the MC68020 target system making the Keep Alive function unnecessary When using the background monitor interrupts are disabled including level 7 interrupts Some target systems will not to operate properly under this condition With these target systems you will need to use a foreground monitor When using the MC68030 memory manager make sure the foreground monitor of the M
516. ress data or status expression that fits your needs You can combine multiple values to define the expression Some emulation commands will allow the option of lt tEXPR gt after pressing a thru softkey This allows you to enter a range without retyping the original base address or symbol For example you could specify the address range disp_buf thru disp_buf 25 as disp_buf thru 25 You can include don t care numbers in expressions These are indicated by a number containing an x These numbers may be defined as binary octal decimal or hexadecimal For example 1fxxh 17x70 and 011xxx10b are valid Don t care numbers are not valid for all commands This appears as a softkey label to enable you to return to the EXPR key The NORMAL label can be accessed whenever defining an expression but is only valid when C appears on the status line which indicates a valid expression has been defined This can be an integer in any base binary octal decimal or hexadecimal or can be a string of characters enclosed with quotation marks 392 lt OP gt SYMB end start lt UNARY gt Chapter 11 Emulator Commands EXPR This represents an algebraic or logical operand and may be any of the following in order of precedence Operator Description mod modulo x multiplication division amp logical AND addition subtraction logical OR
517. rface resources To modify the Graphical User Interface resources You can customize the appearance of an X Windows application by modifying its X resources The following tables describe some of the commonly modified application resources Application Resources for Schemes Resource Values Description HP64_Softkey platformScheme HP UX Names the subdirectory for platform SunOS specific schemes This resource should be custom set to the platform on which the X server is running and displaying the Graphical User Interface if it is different from the platform where the application is running HP64_Softkey colorScheme BW Names the color scheme file Color custom HP64_Softkey sizeScheme Small Names the size scheme file which defines Large the fonts and the spacing used custom HP64_Softkey labelScheme Label Names to use for labels and button text LANG The default uses the LANG environment custom variable if it is set and if a scheme file named Softkey SLANG exists in one of the directories searched for scheme files otherwise the default is Label HP64_Softkey inputScheme Input Specifies mouse and keyboard operation custom 520 Chapter 13 Setting X Resources To modify the Graphical User Interface resources Commonly Modified Application Resources Resource Values Description HP64_Softkey lines 24 Specifies the number of lines in the mai
518. rform the register read See message Unable to break Error 608 Unable to redefine label used by emulation analyzer lt label gt Error 1108 Cause This error occurs when you attempt to redefine an emulation trace label which is currently used as a qualifier in the emulation trace specification Action You must stop the trace or change the trace command before you can redefine the label Unable to reload old memory map hardware state unknown Error 726 Cause Error occurred while trying to modify the emulation memory map Action Usually there are other error messages present Refer to the error log and read the other messages to more fully understand the cause and action to take for this error Unable to reset Error 640 Cause Target condition or system failure Action Check target system and run performance verification pv command Unable to run Error 610 Cause The run has failed for some reason For example this message will appear if the emulator cannot write to the stack which is required to run Usually this error message will occur with other error messages Action Read the error log to see the other error messages that were generated Refer to the descriptions of the accompanying error messages to find our more information about why the run failed Look at the emulator status line to see if the emulator is halted etc Take a trace with the analyzer to see where the emulator is executing 510
519. ries to be modified and the values to which the contents of that location and successive locations are to be changed The first value listed will replace the contents of the first memory location The second value replaces the contents of the next memory location in the series and so on until the list is exhausted When more than one value is listed the value representations must be separated by commas See the examples for more information A range of memory can be modified such that the content of each location in the range is changed to the single specified value or to a single or repeated sequence This type of memory modification is done by entering the limits of the memory range to be modified EXPR thru EXPR and the value or list of values EXPR EXPR to which the contents of all locations in the range are to be changed If the specified address range is not large enough to contain the new data only the specified addresses are modified If the address range contains an odd number of bytes and a word operation is being executed the last word of the address range will be modified Thus the memory modification will stop one byte after the end of the specified address range If an error occurs in writing to memory to guarded memory or target memory with no monitor the modification is aborted at the address where the error occurred Memory modifications of integer values use the currently set display me
520. round monitor you can use the command line to enter a trace command that stores only states outside the range of the foreground monitor program for example trace on_halt only not range lt mon_start_addr gt thru lt mon_end_addr gt on_halt 221 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Example To modify the trace specification Choose Trace Trace Spec You can recall modify and enter your trace specification in the dialog box Using the command line enter the trace modify_command Then use the command line editing features to change the trace command specifications If you made an error in a trace command or want to change the measurement results slightly it s often easier to recall the previous trace command and edit it than it is to enter a new trace command The Trace Specification Selection dialog box lets you recall edit and enter trace commands that have been executed during the emulation session or trace commands that have been predefined Predefine entries for the Trace Specification Selection dialog box and define the maximum number of entries by setting X resources refer to Chapter 13 Setting X Resources See the To use dialog boxes description in Chapter 3 Using the emulator analyzer interface for information about using selection dialog boxes Recall the last trace command with Trace Trace Spec or by entering trace modify_command Then
521. rrent trace command with all trigger storage and sequence options in a file for later use For example you might have several trace commands that you want to make every time your target system program is modified You can store each trace command in a separate file and recall it later using the load trace_spec command 228 Chapter 5 Using the Emulation Bus Analyzer Saving and Restoring Trace Data and Specifications Example Store a trace specification to a file store trace_spec tspec TS To store trace data e Choose File gt Store Trace Data In the dialog box select an existing filename or specify a new filename to contain the present trace memory content Then click OK e Using the command line store the current trace data by entering the store trace lt filename gt command lt filename gt is any UNIX file name including paths The trace data file is a binary file The extension TR is automatically added to the file name A trace data file can be reloaded into the interface and displayed like any other trace listing You can store the trace data resulting from a measurement This can be useful if you want to compare the results of later measurements with a reference result obtained in an earlier measurement Example Store a trace to a file store trace tracel TR 229 Chapter 5 Using the Emulation Bus Analyzer Saving and Restoring Trace Data and Specifications Example To load
522. rror exists in your file of ranges to be measured Action See Help Command Line performance_measurement_initialize or refer to Chapter 7 Making Software Performance Measurements for information about formatting address range files and time range files Perfinit File could not be opened Cause You specified a file as an option to performance_measurement_initialize and the file you specified could not be found or opened by SPMT software Action Make sure you entered the correct file name Perfinit No events in file Cause You specified a file along with your performance_measurement initialize command that contained no events Any measurement displayed from this file will have NULL results Action Either edit the file to add events or use the default setup to start a new measurement 496 Chapter 12 Emulator Messages Alphabetized Error And Status Messages perf out file could not be opened created Cause The performance analyzer failed to open or create a file named perf out in response to your performance_measurement_end command Action Free up some file space or correct the write permissions in your current working directory Performance tool must be initialized Cause You tried to make a performance measurement when the Software Performance Measurement Tool SPMT was not initialized Action The Software Performance Measurement Tool SPMT must be initialized before making performance meas
523. rs This displays an individual register This lets you display data written to the simulated I O display buffer after you have enabled polling for simulated I O in the emulation configuration After you have enabled polling for simulated I O during the emulation configuration process six simulated I O addresses can be defined You then define files used for standard input standard output and standard error For details on setting up simulated I O refer to the question Modify simulated I O configuration in Chapter 8 Configuring the Emulator This option lets you display the current list of execution breakpoints If the emulation session is continued from a previous session the listing will include any previously defined breakpoints The column marked status shows whether the breakpoint is pending inactivated or unknown An unknown breakpoint status will occur if you set the breakpoint then remap the breakpoint address as guarded A pending breakpoint causes the processor to enter the emulation monitor or background memory upon execution of that breakpoint Executed breakpoints are listed as inactivated 374 Chapter 11 Emulator Commands display Entries that show an inactive status can be reactivated by executing the following command modify software_breakpoints set lt RETURN gt A label column also may be displayed for addresses that correspond to a symbol See the set command for details st
524. rtant information about use of Microtec language tools with the 68020 and 68030 EC030 emulator analyzer A comparison of the names of Microtec and HP executables Microtec commands Assembler defaults Linker defaults Librarian defaults 540 Chapter 15 Microtec Language Tools Used With MC68020 and MC68030 EC030 Emulators Using Microtec Language Tools Using Microtec Language Tools You can use the Microtec Research Inc language tools with emul700 and db68k The language tools available from Microtec are the mec68k C compiler and the asm68k assembler The following table compares the names of the Microtec and HP executables Microtec HP AxLS name HP product Program name number Executables for the MC68020 assembler asm68k as68k B1464 linker Ink68k 1d68k B1464 librarian lib68k ar68k B1464 compiler mecc68k cc68020 B1461 Executables for the MC68030 EC68030 assembler asm68k as68030 B1465 linker Ink68k 1d68030 B1465 librarian lib68k ar68030 B1465 compiler mecc68k cc68030 B1478 The emulator and Softkey Interface are designed to work with the HP Advanced Cross Language System Microtec s language tools are quite similar to the HP language tools The input syntax and code generated by the HP and Microtec assemblers linkers and librarians are identical with few exceptions Microtec uses a license manager to enable execution of their products Be sure to read about this in the Microtec manual
525. rting the emulator again Enable breakpoint failed lt address gt Error 665 Cause System failure or target condition Action Check memory mapping and configuration questions Ending released Cause This is a status message The emulation session is being exited with the end release_system The emulator will be released for others to access and use it Error display size is lt LINES gt lines by lt COLUMNS gt columns It must be at least 24 by 80 Cause You tried to specify an incorrect window size Action Set the window size accordingly then start the emulation session The size of the window must be a minimum of 24 lines rows by 80 columns to operate an emulation session 477 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Error in configuration process Error starting configuration process Cause Unexpected configuration error Action Verify proper software installation and call your HP 64000 representative Exceeded maximum 64700 command line length Error 10351 Cause Your command is longer than 240 characters Action Shorten the command Failed to disable step mode Error 684 Cause System failure Action Run performance verification pv command Fatal error from function lt ADDRESS OF FUNCTION gt Cause This is an unexpected fatal system error Action Cycle power on the emulator and start again If this is a persistent problem call your HP 64000 representati
526. rvice Guide 575 Part 5 Installation and Service Guide In this part Part 5 of this book describes how to install the emulator in the card cage how to install the demo board power cable SRAM modules rivets and covers and the emulator probe cable It also shows you how to connect the probe to the demo board verify performance of the hardware and use the progflash program to ensure software compatibility 576 18 Installation and Service 577 Chapter 18 Installation and Service Installation Installation This chapter shows you how to install emulation and analysis hardware and interface software It also shows you how to verify installation by starting the emulator analyzer interface for the first time These installation tasks are described in the following sections e Installing hardware e Connecting the HP 64700 to a computer or LAN e Installing HP 9000 software e Installing Sun SPARCsystem software e Verifying the installation Minimum HP 9000 Hardware and System Requirements The following is a set of minimum hardware and system recommendations for operation of the Graphical User Interface on HP 9000 Series 300 400 and Series 700 workstations HP UX For Series 9000 300 and Series 9000 400 workstations the minimum supported version of the operating system is 7 03 or later For Series 9000 700 workstations the minimum supported version of the operating system is version 8 01
527. ry Monitor Program a program executed by the emulation processor that allows the emulation system controller to access system resources For example when you enter a command that requires access to your system resources the system controller writes a command code to a storage area and breaks the execution of the emulation processor from your target program into the monitor The monitor program then reads the command from the storage area and executes the processor instructions that access the target system After the system resources have been accessed execution returns to your target program Operating System software which controls the execution of computer programs and the flow of data to and from peripheral devices Overflow see counter overflow 648 Glossary Parity Setting Parity Setting the configuration of the parity switches Depending on the configuration of the parity output switch and the parity switch a parity check bit is added to the end of data to make the sum of the total bits either even or odd A parity check is performed after data has been transferred and is accomplished by testing a unit of the data for either odd or even parity to determine whether an error has occurred in reading writing or transmitting the data Path also referred to as a directory for example users projects PC Interface a program that runs on the HP Vectra and IMB PC AT compatible computers This is a friendly i
528. s 541 Chapter 15 Microtec Language Tools Used With MC68020 and MC68030 EC030 Emulators Using Microtec Language Tools To use the Microtec commands To assemble a file to generate an HP OMF X absolute file use the following commands asm68k h o filename o f d case filename s lnk68k H filename L o filename X c filename k filename o To compile a C program to generate an HP OMF object file use the following commands mcc68k hgc Wa f d o filename o filename c lnk68k m fd H filename L c filename k filename o gt filename MAP To assemble a file to generate an HP MRI IEEE 695 x absolute file use the following commands asm68k o filename o f d case filename s lnk68k fi o filename x c filename k filename o To compile a C program to generate an HP MRI IEEE 695 x absolute file use the following commands mcc68k Wl m fd g I usr hp64000 include 68xxx efilename k o filename X filename c 542 Chapter 15 Microtec Language Tools Used With MC68020 and MC68030 EC030 Emulators Using Microtec Language Tools Assembler defaults You should be aware of these differences between asm68k and as68k Command line syntax The differences are minor See the on line man pages for a description of the command line options Case sensitivity as68k is case sensitive by default asm68k is not Use the command line flag fcase to make asm68k case sensitive Symbols in HP MRI IEEE 695 fil
529. s 31A DSACKx Asserted to DSACKx Valid Skew 10 7 ns 32 RESET Input Transition Time 15 15 Clks 33 Clock Low to BG Asserted 0 20 0 30 ns 34 Clock Low to BG Negated 0 20 0 30 ns 35 BR Asserted to BG Asserted RMC Not Asserted 15 35 15 3 5 Clks 37 BGACK Asserted to BG Negated 15 35 15 3 5 Clks 37A BGACK Asserted to BR Negated 0 1 5 0 1 5 Clks 39 BG Width Negated ee eee 39A BG Width Asserted 50 50 ns 40 Clock Low to DBEN Negated Read 0 15 0 15 ns 557 Chapter 16 Specifications and Characteristics HP 64748 Electrical Specifications HP 64748 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5 GND 0 Vdc Ta 0 to 70 C Num Characteristic MC68020 HP 64748 Unit 33MHz Min Max Min Max 41 Clock Low to DBEN Negated Read 0 15 0 15 ns 42 Clock Low to DBEN Asserted Write 0 15 0 15 ns 43 Clock High to DBEN Negated Write o a o 15 ns 44 R W Low to DBEN Asserted Write 5 o 5 ns 45 DBEN Width Asserted Asynchronous Read 30 30 ns DBEN Width Asserted Asynchronous Write 60 60 46 R W Width Asserted Asynchronous Write or Read 75 75 ns 47A Asynchronous Input Setup Time HALT BERR DSACKx 5 a WO see sae Asynchronous Input Setup Time IPLx 5 10 47B Asynchronous Input Hold Time from Clo
530. s 7FEOH Edit the patch template file as shown below PCHS700 Assembly Patch File PCHmain 4 s Date Tue Jul 31 14 06 06 MDT 1992 Dir users guest demo debug_env hp64747 Owner guest INCLUDE PCHSINC s ORG maint 4 BRA patchl You may want to change this name ORG 7FEOh You MUST set this address patchl NOP 7 tlrrttt You may need to modify labels and operands of the Dea ea 1 1 following code to match your assembler syntax CEURELLI II I I Patching Range main 4 thru main 15 I IIII Insert new code here t JSR _proc_spec_init JSR _init_system BRA main 16 You MUST set this address also Notice that symbols can be used in the patch file Exit out of the editor saving your changes wq The file you just edited is assembled and the patch main menu appears Type a lt RETURN gt to apply the patch You can step through the program Step Source to view execution of the patch 27 Chapter 1 Getting Started Step 13 Exit the emulator analyzer interface Step 13 Exit the emulator analyzer interface e To exit the emulator analyzer interface and release the emulator choose File gt Exit Released Or using the command line enter end release_system lt RETURN gt 28 Solving Quick Start Problems Solutions to problems you might face during the Getting Started procedures 29 Chapter 2 Solving Quick Start Problems If the desired emulator interface
531. s The interface can read a command file and execute its commands as if they were typed into the command line Simply type the filename on the command line This interface command lets you create command files by logging When the interface is in logging mode all commands entered and executed on the command line are also copied to the named file Once started logging continues until either logging is turned off or the emulation session is ended The log_commands command is not on the softkeys You must type it into the command line to access the remainder of the log commands softkeys See the User s Guide for information about entering Softkey Interface commands lt FILE gt This represents the file where you want to store interface commands If the file does not exist a new file is created If the file already exists the new commands are appended to the present content in the file unless the noappend option is specified off This option stops command logging noappend If the named file is an existing file this option causes the new commands to overwrite any information present in the file If this option is not specified new commands are appended to the existing contents of the file Examples log_commands to logfile log_commands off See Also help system_commands 401 Chapter 11 Emulator Commands modify modify configuration physical L FCODE os Y EXPR
532. s on the state of the emulator running reset running in monitor break lt RETURN gt help break run step Break diverts the processor from execution of your program to the emulation monitor Break releases the processor from reset and diverts execution to the monitor The break command does not perform any operation while the emulator is executing in the monitor 361 Chapter 11 Emulator Commands cmb_execute Example See Also cmb_ execute cmb execute lt RETURN gt The cmb_execute command causes the emulator to emit an EXECUTE pulse on its rear panel CMB connector All emulators connected to the CMB including the one sending the CMB EXECUTE pulse and configured to respond to this signal will take part in the measurement cmb execute lt RETURN gt help cmb help cmb_execute help specify specify run specify trace 362 Chapter 11 Emulator Commands copy copy data Cio Jn ermer el lt FILE gt E a lt ICMDI gt lt RETURN gt HELP Sey cofiwara breakpoints p global_symbols I SYMB registers lt CLASS gt lt REGISTER gt trace p S from_line_number lt LINE gt C thru_tine_number J lt LINE gt L
533. s range 0 to 4M will occupy terms 2 and 3 336 Chapter 10 Using MC68030 Memory Management Using the DeMMUer and address range 100M to 104M will occupy terms 4 and 5 Terms 6 7 and 8 will be assigned to any other physical ranges encountered in the tables You may see an out of resources message because the deMMUer table might run out of space but the program spaces you care about will all be reverse translated You can use the verbose option of the deMMUer load command to make sure the program spaces you care about will be reverse translated If you had been using the large page mode your entire program would have fit within two table entries How to avoid the out of resources message With the above example you could have avoided the out of resources message If you had placed invalid descriptors in your MMU tables in the paths that lead to unused physical address ranges or if you had used limit fields in your table descriptors the deMMUer would have had more than enough spaces in its eight entry table to reverse translate the valid address ranges Other ways to conserve space in the deMMUer table Minimize address ranges in the memory map You can compose a memory map that allocates blocks of physical memory only large enough to accommodate the address space occupied by code you are trying to develop The deMMUer algorithm will allocate spaces in its eight entry table to reverse translate those physical addres
534. s ranges 337 Chapter 10 Using MC68030 Memory Management Using the DeMMUer Careful use of the emulator memory map What if you try to accommodate the example program repeated here for your convenience with the following memory map Unused 2M Peripherals Unused 4M ROM Unused 4M RAM 0 4M 12M 14M 100M 104M 0 to 3FFFH EMUL RAM 100000 to 103FFFH TARGET ROM default target ram Your memory map will work fine for the emulator The 2M of peripheral address space will be in the space mapped to target ram and the emulator will handle it correctly The map will not give much help to the d MMUer The emulator will read the memory map and assign deMMUer terms to reverse translate as follows e Terms and 2 to reverse translate address range 0 to 4M e Terms 3 and 4 to reverse translate address range 100M to 104M e Terms 5 6 7 and 8 may be used to reverse translate address ranges 4M to 6M 6M to 8M 8M to 10M and 10M to 12M e The out of resources message will be displayed and the peripherals address space will not be reverse translated You can get the reverse translations you need in the above example by adding one term to your emulation memory map 12M to 14M TARGET ROM This small map entry will cause the emulator to reserve a term in the deMMUer table to reverse translate your peripherals address space Without this entry the deMMUer will run out of room for table entries before it
535. s to get a hint about the kind of lt REGISTERS gt information needed EXPR Softkey Changer Press to get another set of softkeys os a Some softkey changers have their own syntax diagrams in this chapter QUALIFIER Reference to a diagram showing details in this chapter 358 Chapter 11 Emulator Commands Circles Circles contain operators and delimiters used in expressions and on the command line An example of a circle symbol is as follows 6 The NORMAL Key The softkey labeled NORMAL is a special softkey changer use it to return to the former set of softkeys For example you can press the EXPR softkey to call up a set of prompt softkeys to help you complete an expression After you complete the expression you can return to the set of softkeys containing the EXPR softkey by pressing the NORMAL softkey 359 Chapter 11 Emulator Commands Summary of Commands Softkey Interface commands are summarized in the following table Emulator Commands UNIX_COMMAND break cd change directory cmb_execute lt command file gt copy data copy display copy error_log copy event_log copy global_symbols copy help copy local_symbols_in copy memory copy mmu translations copy pod_command copy registers copy software_breakpoints copy status copy trace cws change working symbol display data display error_log 3 display event_log display global_sym
536. s you can modify You can easily view this file by choosing Help Topic and selecting the X Resources App Default File topic Do not modify the application defaults file any changes to this file will affect the appearance and behavior of the application for all users User Defined Resource Specifications User defined resources for any X application are located in the X server s RESOURCE_MANAGER property or in the user s HOME Xdefaults file 570 Chapter 17 X Resources and the Graphical User Interface How X Resource Specifications are Loaded Load Order Resource specifications are loaded from the following places in the following order 1 The application defaults file For example usr lib X1 1 app defaults HP64_Softkey when the operating system is HP UX or usr openwin lib X 1 1 app defaults HP64_Softkey when the operating system is SunOS 2 The XAPPLRESDIR HP64_Softkey file The XAPPLRESDIR environment variable defines a directory containing system wide custom application defaults 3 The server s RESOURCE_MANAGER property The xrdb command loads user defined resource specifications into the RESOURCE_MANAGER property If no RESOURCE_MANAGER property exists user defined resource settings are read from the SHOME Xdefaults file 4 The file named by the XENVIRONMENT environment variable If the XENVIRONMENT variable is not set the HOME Xdefaults host file is read typically contains resource specif
537. sers of C tend to think the procedure is important and users of ADA tend to think the module is important By entering Ianginfo and C SRU will interpret the above command to be main procedure With langinfo ADA SRU will interpret the above command to be main module C Identifies ANSI C as the language so SRU can use the C hierarchy to disambiguate symbols ADA Identifies ADA as the language so SRU can use the ADA hierarchy to disambiguate symbols C_IEE695 Identifies C_IEEE 695 as the language so SRU can use the C_IEFE 695 hierarchy to disambiguate symbols Note An alternate method for making the langinfo specification is to use the environment variable HP64SYMORDER By making the following entry in your profile the langinfo setting will always be C for example HP64SYMORDER C I want to use the C disambiguating hierarchy export HP64SYMORDER let children processes know about it memory Specifies the type of display to be updated or not updated noupdate This option stops the display buffer in a window or terminal from updating when a new measurement completes Without this option displays that show memory contents are updated when a command executes that changes the values in memory modify memory load etc 425 Chapter 11 Emulator Commands set number_of_ This allows you to specify the number of source lines to be displayed above the source_lines program instructions or trace data to which they correlate
538. set Error 170 Cause During a monitor command the target system ascerted and continues to ascert the reset signal the monitor is no longer responding Action Prevent your target system from ascerting the reset signal when you are using monitor commands Monitor failure wait state Error 106 Cause The monitor is unable to run because the processor is in a continuous wait state Action A continuous wait state may indicate target system problems Check the DSACK lines If you were running out of circuit you may have to reload the emulation configuration file to re initialize the emulator You will also have to reload your program code If that does not help try cycling power on the emulator Monitor handled target exception lt exception gt Error 170 Cause The vector base register points to the exception vector table in the foreground monitor and the target program generated an exception that was detected by the monitor Monitor must be mapped on a 4K byte boundary Error 146 Cause You tried to change the base address of the monitor to one that doesn t start on a 4 Kbyte boundary one that ends in 000 Action Reenter the command and specify an address that ends in 000 Monitor type changed to foreground monitor Error 157 Cause You enabled the MMU via a terminal interface configuration command while the background monitor was selected The emulator automatically changed to use the default foreground monitor
539. setup file with a ED suffix by reading the present content of the MMU registers and the MMU tables To load a DeMMuUer setup file Choose File gt Load DeMMUer In the dialog box click the name of the file you want to load placing it in the Load Demmuer File box Then click OK Using the command line load a deMMUer setup file by entering load demmuer lt filename gt lt filename gt is any UNIX file name including paths that was created by an appropriate store demmuer command The extension ED is assumed The deMMUer setup file is loaded into the dAMMUer The present content of the MMU registers and the MMU tables are ignored 232 Chapter 5 Using the Emulation Bus Analyzer Using Basis Branch Analysis Using Basis Branch Analysis Basis branch analysis BBA is provided by the HP Branch Validator product This product is used to analyze the testing of your programs create more complete test suites and quantify your level of testing The HP Branch Validator records branches executed in a program and generates reports that provide information about program execution during testing It uses a special C preprocessor to add statememts that write to a data array when program branches are taken After running the program in the emulator using test input you can store the BBA information to a file Then you can generate reports based on the stored information This section shows you how to e Store BBA data to
540. sh to establish a symbolic link you can set the HP64000 variable to the full path that contains the HP 64000 software Again if you installed relative to users team you would enter HP64000 users team usr hp64000 export HP64000 Set the PATH environment variable to include the usr hp64000 bin directory by entering PATH PA TH HP64000 bin export PATH Including usr hp64000 bin in your PATH relieves you from prefixing HP 64700 executables with the directory path Set the MANPATH environment variable to include the usr hp64000 man and usr hp64000 contrib man directories by entering MANPATH MA NPATH HP64000 man HP64000 contrib man export MANPATH Including these directories in your MANPATH variable lets you access the on line man page information included with the software 614 Chapter 18 Installation and Service Installing Sun SPARCsystem Software Installing Sun SPARCsystem Software This section shows you how to install the Graphical User Interface on Sun SPARCsystem workstations Installation involves installing the interface and the 64700 Operating Environment These instructions also tell you how to prevent installation of the Graphical User Interface if you want to use only the Softkey Interface This section shows you how to 1 Install the software from the media Start the X server and OpenWindows Set the necessary environment variables Verify the software installation an A WO N Map your fun
541. sing the Emulator Accessing Processor Memory Resources To display memory in real number form e Choose Display gt Memory Real lt real type gt If you want to include a line range or starting point in your command enter it into the entry buffer before you execute this command lt real type gt may be short long extended or packed e Using the command line enter commands as follows 1 Display memory values as 32 bit IEEE 754 single precision real numbers by selecting display memory lt lower gt thru lt upper gt real short 2 Display memory values as 64 bit IEEE 754 double precision real numbers by selecting display memory lt lower gt thru lt upper gt real long 3 Display memory values as 96 bit IEEE 754 double extended precision real numbers by selecting display memory lt lower gt thru lt upper gt real extended 4 Display memory values as 96 bit Motorola Packed real numbers by selecting display memory lt lower gt thru lt upper gt real packed Real numbers use the formats defined by the IEEE Standard for Binary Floating Point Arithmetic They can be short 32 bits long 64 bits or extended 96 bits Example To display a set of data values in real numbers beginning with the floating humidity in the demo program place the global symbol float_humid in the entry buffer and choose Display Memory Real long If using the command line enter display memory float_humid real long
542. size must be used If they are not all the same size the smallest SIMM size in the set of four will be used for trace depth Action No action necessary Arm term used more than once Error 1250 Cause This error occurs when you attempt to use the arm qualifier more than once in a sequencer branch expression Action Reenter the trace command and specify the arm qualifier only once Ascii symbol download failed Error 881 Cause This error occurs because the system is out of memory Action You must either reduce the number of symbols to be loaded or free up additional system space and try the download again Attempt to change foreground monitor map term Error 20 Cause When configuring the emulator to use a foreground monitor a memory range is automatically mapped for the monitor s use You attempted to alter that term when mapping memory Action Try using another memory range for the new map term If you need to have the range used by the foreground monitor then switch to a background monitor delete the old foreground monitor map term and add the new term Now you can return to using a foreground monitor remember you will need to reload the monitor code 463 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Background monitor unavailable while MMU is enabled Error 156 Cause You attempted to switch to the background monitor while the MMU was enabled Action Use only a f
543. sociated logical address or address range e To see only the mappings under the CRP choose Display MMU Translations and in the dialog box obtain function code u and enter the desired address range or use the command display mmu_translations fcode u lt address gt thru lt address gt e If you specify no function code then mappings will be shown for both root pointers 2 Use function code lookup table level The emulator supports four separate sets of translation tables each under a different function code value as follows user data user program supervisor data and supervisor program e To see only the mappings under a selected function code choose Display MMU Translations and in the dialog box click on the Function Code button to obtain the desired function code or use a command like display mmu_translations fcode ud lt address gt thru lt address gt 325 Chapter 10 Using MC68030 Memory Management Seeing details of the MMU Translations where ud displays mappings under user data up displays mappings under user program sd displays mappings under supervisor data sp displays mappings under supervisor program e The default suffix is sp supervisor program when an address is specified in Display MMU Translations or your display mmu_translations command Translation details for a single logical address To see translation details for a logical address choose Display gt MMU Translatio
544. splay the information as shown in the following table Data type information is not available from the symbol database so you must specify it display event_log lt RETURN gt display local_symbols_in cmd_rdr s lt RETURN gt display global_symbols lt RETURN gt display local_symbols_in temp1l S lt RETURN gt display local_symbols_in prog68k S main lt RETURN gt display simulated_io lt RETURN gt display software breakpoints lt RETURN gt display software_breakpoints offset_by 1000H lt RETURN gt display registers lt RETURN gt display registers BASIC lt RETURN gt display data Msg_A thru 17 char Stack long set symbols on set width label 30 display data Msg_B thru 17 char Msg_Dest thru 17 char copy help copy help display help registers help software_breakpoints modify registers modify software_breakpoints set step CWS pws The following pages describe various display memory display MMU and display trace syntax diagrams 376 Chapter 11 Emulator Commands DISPLAY MEMORY DISPLAY MEMORY From display on memory u DISPLAY diagram physical FCODE EXPR EXPR Q gt lt Ei repetitively NX a To lt RETURN gt on offset_by EXPR DISPLAY diagram mnemonic i pre
545. sr hp64000 bin directory and if you have installed software in a directory other than you need to set the HP64000 environment variable The following instructions show you how to set these variables at the UNIX prompt Modify your profile or login file if you wish these environment variables to be set when you log in The following instructions also assume that yov re using csh if you re using sh environment variables are set in the lt V ARIABLE gt lt value gt export lt VARIABLE gt form The DISPLAY environment variable is usually set by the openwin startup script Check to see that DISPLAY is set by entering echo DISPLAY If DISPLAY is not set you can set it by entering setenv DISPLA Y lt hostname gt lt server_number gt lt screen_number gt 616 Chapter 18 Installation and Service Installing Sun SPARCsystem Software For example setenv DISPLA Y myhost 0 0 Consult the OpenWindows documentation for an explanation of the DISPLAY environment variable Set the HP64000 environment variable For example if you installed the HP 64000 software relative to the root directory you would enter setenv HP64000 usr hp64000 If you installed the software relative to a directory other than the root directory it is strongly recommended that you use a symbolic link to make the software appear to be under usr hp64000 For example if you installed the software relative to directory users team y
546. ss gt shows the address where the breakpoint was encountered Software breakpoint break condition is disabled Error 661 Cause You have attempted to set or clear a breakpoint when breakpoints are disabled Action You must enable breakpoints before you can set them Specified breakpoint not in list lt address gt Error 663 Cause You tried to clear a breakpoint that was not previously set The string lt address gt prints the address of the breakpoint you attempted to enable Action You must first set a breakpoint before it can be cleared Stack pointer is odd Error 80 Cause You tried to modify the stack pointer to an odd value for a processor that expects the stack to be aligned on a word boundary Action Modify the stack pointer to an even value Starting address greater than ending address Cause You specified a starting address that is greater than the ending address Action Specify a starting address that is less than or equal to the ending address Starting new session continue file loaded Cause This is a status message The emulator was started using a new emulation session and the continue file loaded properly 503 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Starting new session user interface defaulted Cause The emulator was started using a new emulation session and the user interface was set to default selections Action Call your HP Service Representative
547. status word is a status value for the processor This prompts you to enter a status value in the command line Status values can be entered from softkeys or typed into the keyboard Numeric values may be include symbols operators and parentheses See the EXPR syntax diagram Refer to Chapter 5 Using the Emulation Bus Analyzer for a list of predefined status equates that cover common processor operations This indicates that the following address expression is the upper address in a range 416 Chapter 11 Emulator Commands QUALIFIER Examples trace only address prog68k S READ_INPUT lt RETURN gt trace only address range prog68k S READ_INPUT thru OUTPUT lt RETURN gt trace only address range prog68k S CLEAR thru READ_INPUT lt RETURN gt Also see the trace command examples See Also help trace trace 417 Chapter 11 Emulator Commands reset reset This command suspends target system operation and asserts the reset signal on the emulation processor The reset signal is latched when the reset command is executed and is released by either the run or break command Example reset lt RETURN gt See Also help reset 418 Chapter 11 Emulator Commands run lt RETURN gt fram of EXPR SE Eoo reset until EXPR FCODE This command causes the emulator to execute a program If the processor is in
548. ste from entry buffer 62 editing commands using the keyboard 50 editing through the popup menu 49 editing with graphical user interface buttons 48 entering commands 47 entry area 7 turning it on or off 46 turning on or off 521 660 Index command line command paste mouse button 9 Command Recall dialog box operation 64 command select mouse button 9 commands forwarding to other interfaces 87 forwarding to software performance analyzer 88 getting online help for 52 methods to recall for edit and reuse 50 of the emulator analyzer interface 350 syntax conventions in manual 358 terminal interface commands to avoid 89 to execute when command is complete 51 comments in command files 75 81 compatible mode glossary definition of 643 complex trace measurements 207 227 configuration emulator displaying context from configuration window 284 exiting the interface 286 help for configuration items in dialog boxes 285 loading from file 286 modifying a section 280 starting the interface 278 storing 283 configure emulator 101 connecting card cage to computer or LAN 607 connecting probe to demo target system 603 context changing directory in configuration window 284 displaying directory from configuration window 284 continuing command file lines 75 control c 267 coordinated measurements 245 break_on_trigger syntax of the trace command 246 definition 236 setup 23 661 Index copy local_symbo
549. step You can open multiple windows to show memory mnemonic and registers at the same time Both are updated with each step If you omit the lt address gt the current program counter value is used You can use transfer_address to step from the entry point of the program 140 Chapter 4 Using the Emulator Using Processor Run Controls When stepping through instructions associated with source lines execution may take a long time and the message Stepping source line 1 Next PC lt address gt is displayed on the status line In this situation you can abort the step command by pressing lt CTRL gt c The emulator uses the built in tracing capability of the MC68020 MC68030 processor to single step assembly instructions The emulator needs the trace exception vector located at offset 0x24 in the vector table to be set properly in order to single step instructions When a step command is given to the emulator the emulator reads the trace exception vector and attempts to change one or more vector table entries if the trace exception vector is not set correctly As long as the vector table is located in emulation memory or target RAM stepping should always succeed Upon completion of single stepping the emulator restores modified vector table entries and issues a status message the first time the vector table is modified If the trace exception vector does not contain the correct value and the vector table is located in target ROM t
550. ster display See message Unable to break Error 608 Don t care number unexpected Cause While defining an expression in your command you included a don t care number a binary octal decimal or hexadecimal number containing x which was not expected Don t care numbers are not valid for all commands See the EXPR command syntax for more information about expressions Downloaded monitor spans multiple 4K byte block boundaries Error 145 Cause You tried to load a custom foreground monitor but the absolute file has address records that are outside the range of a single 4 Kbyte block Action Modify your custom monitor so that its code and data fit into a single 4 Kbyte block Then assemble link and repeat the load operation Dual ported memory already in use Error 142 Cause There is only one 4 Kbyte block of dual port emulation memory available for mapping You mapped this term and tried to map another using the dp attribute Action Decide which block of memory you want to have in the dual port emulation memory and define only that block using the dp attribute 473 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Dual ported memory in use by foreground monitor Error 143 Cause There is only one 4 Kbyte block of dual port emulation memory available for your use If you select the foreground monitor this block is used by the monitor and isn t available for mapping Action R
551. symbol name into 115 666 Index entry buffer continued copy and paste to 58 copy and paste value to the command line 62 Entry Buffer Recall dialog box 7 61 multi window copy and paste from 62 multi window copy and paste to 59 operation and use of 61 recall button 7 recalling entries 61 symbol width and copy and paste to 59 text entry 58 to recall values 61 with action keys 61 63 with pulldown menus 61 Entry Buffer Recall dialog box operation 64 environment variables setting 94 environment variables UNIX PATH 39 equates 210 for MC68020 210 for MC68030 211 error log how to display it 53 error messages 458 event_log 44 how to display it 53 example can t break into monitor 345 exchange part defined 631 EXECUTE CMB signal 238 tracing at 243 executing command files 78 execution breakpoints 148 149 151 157 disabling 150 enabling 150 setting temporary breakpoints 152 exit emulator analyzer interface 28 exiting a single window in the interface 70 exiting the emulator analyzer interface 70 expressions 207 options 392 394 667 Index FCODE command options 395 396 file copying or printing 68 69 EA configuration files 283 emulator configuration 283 emulator configuration load 286 file formats address ranges for SPMT measurements 264 time ranges for SPMT measurements 264 File Selection dialog box operation 64 firmware installing updating on the emulator 634
552. t is a data type for display formatting as follows Type Description Designator byte Hex display of one 8 bit location word Hex display of one 16 bit location long Hex display of one 32 bit location int8 Display one 8 bit location as a signed integer two s complement intl6 Display one 16 bit location as a signed integer two s complement int32 Display one 32 bit location as a signed integer two s complement u_int8 Display one 8 bit location as an unsigned positive integer u_intl6 Display one 16 bit location as an unsigned positive integer u_int32 Display one 32 bit location as an unsigned positive integer char ASCII characters You can use the display data command to display simple data types in your program This can make the display of simple variables easier to read because you don t have to visually sort a display such as a memory display to find the locations of interest You can use symbols in the address expression Example To clear the data values display and add the target_temp static symbol from the demo program display data target_temp byte To add display of the aver_temp array from the demo program display data aver_temp thru aver_temp end word 121 Chapter 4 Using the Emulator Accessing Processor Memory Resources To display only source lines e Choose Settings Source Symbol Modes Source Only e Using the command line enter the set source only symbols o
553. t Mode Execute Command Clear to End of Line Clear Entire Line Command Line Off lt INSERT CHAR gt key when in insert mode lt INSERT CHAR gt key lt RETURN3 gt key lt CTRL gt e lt CTRL gt u toggles command line Emulation Configuration Memory Map Display Popup Command Line Modify Entry Add New Entry Delete Entry delete lt entry gt lt add lt entry gt gt lt add lt entry gt gt delete lt entry gt 357 Chapter 11 Emulator Commands Syntax Conventions Conventions used in the command syntax diagrams are defined below Oval shaped Symbols Oval shaped symbols contain command tokens Command tokens together with symbols and numeric values make up complete Softkey Interface commands Most command tokens appear on softkey labels Those that do not appear as softkeys must be typed into the command line for example log commands and wait An example of an oval shaped symbol is as follows global_symbols Rectangular shaped Symbols Rectangular shaped symbols contain prompt softkeys softkey changers and references to other syntax diagrams Prompt softkeys are enclosed in angle brackets lt and gt Softkey changers are enclosed in dashes References to other diagrams are shown in all capital letters without any enclosing symbols Examples of all three kinds of rectangular symbols follow Prompt Softkey Pres
554. t acceptable to the MC68020 or MC68030 EC030 emulator Usually this means that you Il want your files in IEEE 695 absolute format The HP language tools for the HP 9000 produce this format Processor C Compiler Assembler MC68020 EC020 HP 64903 HP 64870 MC68030 EC030 HP 64907 HP 64874 You may use other language tools if they produce either IEEE 695 or HP64000 absolute file formats Other file formats such as Motorola S records and Tektronix hex format can be converted to HP64000 format by using the HP 64888 utility software 100 Chapter 4 Using the Emulator The Emulator And Its Applications To configure the emulator Configure the emulator to meet the resource needs of your target system and application program by following the instructions in Chapter 8 Configuring the Emulator To configure the emulator choose Modify Emulator Config Then answer the questions that appear in the Emulator Configuration dialog box Using the command line enter modify configuration This starts a series of questions whose answers define the emulator configuration You must configure the emulator to allocate system resources such as memory and to set handling of interrupts etc You must do this before you load and execute programs and make emulator measurements Refer to Chapter 8 Configuring the Emulator If you want to use the examples in this manual you must load a special configuration file and load the demo
555. t addresses are assumed to be unused prefetches and are ignored during time measurements START unused prefetch START unused prefetch START unused prefetch START START actually taken END unused prefetch END unused prefetch M Measure duration END unused prefetch END END actually taken START unused prefetch START unused prefetch Measure duration START unused prefetch START START actually taken END unused prefetch END unused prefetch 260 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool The SPMT makes its duration measurements from the last start address in the series of start addresses to the last end address in the series of end addresses The other start and end addresses are unused prefetches and are ignored by the software of the SPMT Recursive procedures will still affect the accuracy of your measurements The prefetch correction has the following consequences e Prefetches are ignored They do not affect the accuracy of the measurement in process e When measuring a recursive function module duration will be measured between the last recursive call and the true end of the recursive execution This will affect the accuracy of the measurement e If a module is entered at the normal point and then exited by a point other than the defined exit point the entry point will be ignored It will be judged the sa
556. t allows you to select a command e Cursor buttons for command line area control Allow you to move the cursor in the command line entry area forward or backward clear to the end of the command line or clear the whole command line entry area You can choose not to display the command line area by turning it off For the most common emulator analyzer operations the pulldown menus popup menus and action keys provide all the control you need Choosing menu items that require use of the command line will automatically turn the command line back on Graphical User Interface Conventions Choosing Menu Commands This chapter uses a shorthand notation for indicating that you should choose a particular menu item For example the following instruction Choose File gt Load Configuration means to first display the File pulldown menu then display the Load cascade menu then select the Configuration item from the Load cascade menu Based on this explanation the general rule for interpreting this notation can be stated as follows e The leftmost item in bold is the pulldown menu label e If there are more than two items then cascade menus are involved and all items between the first and last item have cascade menus attached e The last item on the right is the actual menu choice to be made Chapter 1 Getting Started Mouse Button and Keyboard Bindings Because the Graphical User Interface runs on different kinds of computers wh
557. t contains the following commands log_commands to STARTEMUL load configuration bigproject config load bigproject program trace after START run from 2000h wait measurement_complete The preceding wait command variation ensures that new trace states will be available in the trace buffer before the display trace command is executed display trace log_commands off If you start the emulation session and enter STARTEMUL the command file name in the command line all commands from load configuration to display trace will be sequentially executed on the command line To nest command files e Call a command file from an executing command file by including the command file name in the executing command file The emulation analyzer interface executes commands found in a command file just as if they were entered into the command line That means if the interface encounters a command that is not part of its own command set it will attempt to execute it as a command file See To execute a command file in this section for an explanation of command file execution Command files called from other command files may be nested to a maximum of eight levels Control returns to the calling command file after the called command file is executed A called command file is like a subroutine of the calling command file 79 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files
558. t involves receiving and sending control characters which indicate a device is ready to receive data that data has been sent and that data has been accepted Host Computer a computer to which an HP 64700 Series emulator can be connected A host computer may run interface programs which control the emulator Host computers may also be used to develop programs to be downloaded into the emulator Instance Name the name of a single unique widget Inverse Assembler a program that translates absolute code into assembly language mnemonics Linker a program that combines relocatable object modules into an absolute file which can be loaded into the emulator and executed 647 Glossary Logical Address Space Logical Address Space the addresses assigned to code during the process of compiling assembling and linking to generate absolute files Refer to Chapter 10 Using MC68030 Memory Management for a detailed explanation Macros custom made commands that represent a sequence of other commands Entire sequences of commands defined in macros will be automatically executed when you enter the macro name Macro nesting is permitted this allows a macro definition to contain other macros Memory Mapper Term a number assigned to a specific address range in the memory map Term numbers are consecutive Memory Mapping defining ranges of the processor address space as emulation RAM or ROM target RAM or ROM or guarded memo
559. t panel See the section on installing hardware in this chapter Set all switches on the Demo Board to the TEST CL closed position Turn on power to the HP 64700 Card Cage Establish communication with the emulator from your host and use the Softkey User Interface or Graphical User Interface On the command line enter display pod_command lt return gt On the command line enter pod_command pv 1 lt return gt Don t be alarmed if you notice an error message such as I O error power down detected If using the Graphical User Interface the message Fatal System Error End Release System will also appear These are normal conditions The performance verification tests will be complete and you can read the results of the tests on screen 626 Chapter 18 Installation and Service Verifying the Installation Here s what caused the fatal error To check the emulator status your interface constantly polls the emulator in the card cage The last step in the performance verification procedure reinitializes the card cage with the power down option During initialization the card cage is unable to communicate with your interface When the polling signals of the interface are unanswered the interface assumes communication has been lost between it and the card cage Then the interface reports the fatal error but no harm has been done You must end_release_system in the Softkey User Interface or click on OK in the Fatal
560. t the same time These are called synchronous measurements This section describes how to e Enable synchronous measurements e Start synchronous measurements e Disable synchronous measurements To enable synchronous measurements Enter the specify run command on the command line You can enable the emulator s interaction with the CMB by using the specify run command When the EXECUTE signal is received the emulator will run at the current program counter address or the address specified in the specify run command Note that when the CMB is being actively controlled by another emulator the step command does not work correctly The emulator may end up running in user code NOT stepping Disable CMB interaction while stepping the processor See To disable synchronous measurements following Note that enabling CMB interaction does not affect the operation of analyzer cross triggering You can use the specify trace command to specify that an analyzer measurement begin upon reception of the CMB EXECUTE signal The trace measurement defined by the specify trace command will be started when the EXECUTE signal becomes active When the trace measurement begins you will see the message CMB execute emulation trace started 243 Chapter 6 Making Coordinated Measurements Starting Stopping Multiple Emulators Examples When you enter a normal trace command trace at execute is disabled and the analyzer ig
561. t value gt use_SRP_ value lt value gt command to display MMU translations using alternate register values MMU not enabled via configuration Error 160 Cause You tried to use the display mmu_translations or load demmuer verbose command to display MMU translations or to load the deMMUer but the MMU was not enabled in the emulation configuration Action Enable the MMU before trying to use these commands Refer to Chapter 8 Configuring the Emulator for more information MMU not enabled via TC register Error 160 Cause You used the display mmu_translations or load demmuer verbose command to display MMU translations or to load the deMMUer but the MMU was not enabled in software by setting the enable bit in the translation control register The MMU does not have to be enabled in software in order to use these commands and this status message is only used to advise you that the MMU is not actually enabled 489 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Monitor failure bus error Error 107 Cause The monitor is unable to run because the processor has encountered a bus fault such as the BERR line Action Release the BERR line and determine why it was activated Monitor failure bus grant Error 104 Cause The monitor is unable to run The emulation processor is not running because it has granted the bus to another device Action Wait until the processor has regained bus control
562. tart the interface with the emul700 command 622 Step 3 Step through the demo with the Action Keys 625 Step 4 Exit the Graphical User Interface 625 Step 5 Verify the performance of the emulator 626 What is pv doing to the Emulator 628 XXV Contents 19 Troubleshooting 628 Parts List 629 What is an Exchange Part 631 Installing Updating Emulator Firmware Installing Updating Emulator Firmware 634 To update emulator firmware with progflash 635 To display current firmware version information 638 If there is a power failure during a firmware update 639 Glossary Index xxvi Part 1 Quick Start Guide Part 1 Quick Start Guide In This Part This part describes how to quickly become productive with the emulation system Getting Started Chapter 1 Getting Started The Emulator Analyzer Interface At a Glance When an X Window System that supports OSF Motif interfaces is running on the host computer the emulator analyzer interface is the Graphical User Interface which provides pull down and pop up menus point and click setting of breakpoints cut and paste on line help customizable action keys and pop up recall buffers The emulator analyzer interface can also be the Softkey Interface which is provided for several types of terminals terminal emulators and bitmapped displays When using the Softkey Interface commands are entered from the keyboard The Softkey Interfac
563. ted Active breakpoints are indicated in the memory mnemonic display by asterisks beside the lines with breakpoints set The status of a breakpoint can be temporary Which means the temporary breakpoint has been set but not encountered during program execution These breakpoints are removed when the breakpoint is encountered 156 Chapter 4 Using the Emulator Using Execution Breakpoints permanent Which means the permanent breakpoint is active Permanent breakpoints remain active after they are encountered during execution inactivated Which means the breakpoint has been inactivated Pending breakpoints are inactivated when they are encountered during program execution Both temporary and permanent breakpoints can be inactivated and restored using the breakpoints display popup menu pending Which means the temporary breakpoint has been set but not encountered during program execution When encountered these breakpoints are inactivated but retained in the breakpoints list Pending breakpoints can only be set using the softkey command line with commands like modify software_breakpoints set 1000 and not selecting the additional options lt temporary gt or lt permanent gt The pending breakpoints status is retained for compatibility with older product software versions In the breakpoints display a popup menu is available obtained by pressing the select mouse button You can inactivate or restore the status of any breakp
564. ted UNIX command completes the results display is shown and exit then removed without need to press the RETURN key Use this option to speed execution of your command when the results display is not important to you Examples To see your present working directory pwd To see a directory listing in a browser instead of terminal window ls in browser To make and load an executable make lt file gt wait_for_exit load lt executable_file gt 451 Chapter 11 Emulator Commands wait wait lt RETURN gt measurement_complete y or gt H lt TME gt seconds A lt TIME gt ar D measurement_complete Y This command allows you to pause the system The wait command can be included in a command file or used during normal operation at the main emulation level Delays allow the emulation system and target processor to reach a certain condition or state before executing the next emulation command The wait command does not appear on the softkey labels You must type the wait command into the keyboard After you type wait the command parameters will be accessible through the softkeys If you issue a wait lt RETURN gt command without any other options the system will pause until it receives a lt CTRL gt c signal If set intr lt CTRL gt c was not executed on your system lt CTRL gt c normally defaults to the backspace key See your UNIX syste
565. tem could not continue the previous emulation session because it could not load the continue file Action Try again If the failure continues call your HP Service Representative 469 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Continuing previous session continue file loaded Cause This is a status message An emulation session which was ended earlier with the end command has been restarted The host system reported that the session was continued using settings from the previous session and that the continue file loaded properly Continuing previous session user interface defaulted Cause The previous emulation session was continued and the emulator analyzer interface was set to the default state Continuing with default foreground monitor Error 144 Cause You tried to load a custom foreground monitor but the load failed because the addresses in the absolute file didn t match the address range reserved for the monitor The emulator aborts the load and reverts to the built in foreground monitor The lt range gt parameter shows the range of addresses covered by the custom monitor definition Action To use a custom foreground monitor you must e Select the foreground monitor e Set the foreground monitor base address e Load an absolute file that fits in the 4 Kbyte range that starts with lt ADDRESS gt Copy memory aborted next destination lt address gt Error 752 Cause One of th
566. ter 3 Using the emulator analyzer interface Accessing the Terminal Interface Examples easier if done from the keyboard While keyboard entry is in effect the interface passes all keyboard input through to the Terminal Interface The Terminal Interface validates and executes all commands directly and displays the results on the Terminal Interface screen Access the Terminal Interface and display memory locations 0 through 20 in long word format display pod_command pod_command m dl 0 20 Access the Terminal Interface from the command line check the emulator status then the trace configuration and finally return keyboard control to the command line display pod_command pod_command keyboard es tcf suspend 92 Chapter 3 Using the emulator analyzer interface Accessing the Terminal Interface To get help on Terminal Interface commands 1 Select Display Pod Commands If you are using the command line enter display pod_command 2 On the command line enter pod_command help lt cmd_name gt lt cmd_name gt is the Terminal Interface command on which you want to receive help You can access the emulator s low level Terminal Interface using the pod_command keyword If you need help on any Terminal Interface command you can use its help command See the MC68020 EC020 and MC68030 EC030 Emulator Terminal Interface User s Guide for more information regarding the Terminal Interface
567. tering the display global_symbols command The display global_symbols command displays a list of global externally defined symbols in the program modules you have loaded into emulation or target memory The symbols list includes the address range associated with a symbol the name of the associated segment and the offset of the symbol within the segment You can use the UP and DOWN cursor keys and the NEXT and PREV keys to scroll or page through the global symbols listing Example Display the global symbols for the demo program display global_symbols 111 Chapter 4 Using the Emulator Using Symbols Example To display local symbols If you are using the Graphical User Interface e First place the name of the symbol whose local symbols should be displayed into the entry buffer and then in the menu bar choose Display Local Symbols e When displaying symbols position the mouse pointer over a symbol on the symbol display screen and click the select mouse button e When displaying symbols position the mouse pointer over the symbol press and hold the select mouse button and choose Display Local Symbols from the popup menu Using the command line display the symbols defined within a given symbol by entering the display local_symbols_in lt symbol_name gt command This command displays address information associated with each symbol The symbols defined within a given symbol are local to that symbol
568. th Choose Trace Display Options and in the dialog box enter the desired trace unload depth in the field beside Unload Depth Then click the OK or Apply pushbutton Using the command line enter display trace depth lt depth gt Using one of the above command forms you specify the number of states that will be unloaded for display copy or file storage By reducing the trace unload depth you shorten the time it takes for the interface to unload the trace information You can increase the trace unload depth to view more states of the current trace Regardless of how much or how little unload depth you specify the entire trace memory will be filled with captured states during a trace In the deep analyzer the maximum number of trace states depends on whether or not you installed memory modules in the analyzer card and the capacity of the memory modules Refer to Chapter 18 Installation and Service for details In the 1K analyzer the maximum number of trace states is 1024 when counting is turned off and 512 otherwise In either analyzer the minimum trace depth is 9 Trace data must be unloaded before it can be displayed copied or stored in a file If you wish to reduce the number of states that are unloaded for display you must enter the unload depth specification in one of the two ways shown above before you enter the trace command The above commands cannot be used to reduce the number of states displayed in the current tr
569. the MMU disabled ACO AC1 and ACUSR The MMU registers if you are using an MC68030 with the MMU enabled TTO TT1 MMUSR TC SRP and CRP lt REGISTER gt This represents the name of a register that you specify set This option allows you to activate breakpoints in your program If no breakpoint addresses are specified in the command all breakpoints that have been inactivated executed are reactivated short Modify memory values as 32 bit IEEE 754 real numbers software Breakpoints allow you to break program execution when the breakpoint address is _ breakpoints encountered Any valid address number label or expression may be specified as a breakpoint Valid addresses identify the first byte of valid instructions Operation of the program can be resumed after the breakpoint is encountered by specifying either a run or step command If you modify breakpoints while the memory mnemonic display is active the new breakpoints are indicated by a in the leftmost column of the instruction containing the breakpoint Do not modify breakpoints while your target program is running If you do program execution may be unpredictable You must enable breakpoints before you can perform an action on them 405 Chapter 11 Emulator Commands modify string lt STRING gt temporary thru words When you set breakpoints the emulator will search through the existing breakpoint list and reactivate all entries that
570. the access mode to byte or supply an even number of bytes Note this message will not appear for memory mapped with the dp attribute Invalid number of words for longword access Error 152 Cause The access mode was set to long word but the number of bytes you supplied for a memory modify was not a multiple of four Action Either change the access mode to byte or word or supply a number of bytes that is a multiple of four Note this message will not appear for memory mapped with the dp attribute 485 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Invalid option or operand Error 300 Invalid option or operand lt option gt Error 305 Cause You have specified an incorrect option to a command lt option gt if printed indicates the incorrect option Action Use online help by typing help lt command gt or lt command gt Reenter the command with the correct syntax Refer to Chapter 11 Emulator Commands for more information Invalid pod number lt pod gt Error 1253 Cause This error message occurs when you attempt to specify a slave clock for a non existent analyzer pod Action Use the trace activity command to display the valid pod numbers and use only these numbers when entering commands Inverse assembly file lt INVERSE ASSEMBLER FILENAME gt could not be loaded Inverse assembly file lt INVERSE ASSEMBLER FILENAMES not found lt filename gt Inverse assembly n
571. the command line to a file Later the command file can be executed by the interface The log_commands command does not appear on the softkeys Type it on the command line or type the first few letters of the command and then press lt TAB gt All commands entered on the command line after you type log_commands to lt filename gt are logged to the lt filename gt until either the log_commands off command is used or the interface is exited lt filename gt is any valid UNIX file name File names may include path information If lt filename gt already exists commands are appended to the current contents of the file unless the noappend option is used If lt filename gt does not exist a new file is created File creation errors can sometimes be caused by write permission violations of either files or directories If you are having trouble creating a command file make sure you have the correct permissions 76 Chapter 3 Using the emulator analyzer interface Creating and Executing Command Files Example To save a set of commands in the file STARTEMUL by logging commands while executing them during an emulation session enter the following commands in the command line log_commands to STARTEMUL You can add a comment to a file while logging if you precede the comment with a pound sign The Softkey Interface will ignore the rest of the line up to the line feed load configuration bigproject config load bigproject program
572. the dialog box Place the mouse pointer in lator Analyser Modify Realsta 7 the text entry area and type Modify Register in the name of the register Click Recall to select register names and values from predefined Name and the new value vi or previously specified alue Click this pushbutton to a e Cores read the present value of vee Er ee Click this pushbutton 3 Read Current Register Value the selected register and select the desired type from the submenu Click OK to modify Click Apply to modify Click this pushbutton to the register to the new the register tothe value cancel the modification and value and close the specified and leave the close the dialog box dialog box dialog box open To use the command line to modify the PC register to an address modify register PC to init_system To use the command line to modify the D3 register to 0 modify register D3 to 0 147 Chapter 4 Using the Emulator Using Execution Breakpoints Using Execution Breakpoints Breakpoints allow you to stop target program execution at a particular address and transfer control to the emulation monitor Suppose your system crashes when it executes in a certain area of your program You can set a breakpoint in your program at a location just before the crash occurs When the processor executes the breakpoint the emulator will force a break to the mon
573. the emulator analyzer interface Creating and Executing Command Files m Example To increase flexibility of command files by using amp ArG_IEfT Use the special parameter amp ArG_IEfT anywhere in the command file Pass zero or more arguments to the command file on the command line You can create highly flexible command files using the special parameter amp ArG_IEfT It must be entered with the preceding ampersand amp and exactly in the combination of upper and lower case letters shown here It is not a parameter in the sense of command file formal and actual parameters See To pass parameters to a command file for more information Instead it is a special parameter that may be included in either a command file with formal parameters or in a command file without formal parameters When the interface finds amp ArG_IEfT in a command file it replaces it with the union of all arguments remaining in the string of arguments passed to the command file Arguments for this special parameter must be passed on the command line and can be zero or more in number The interface will not prompt for a value for amp ArG_IEfT If you do not pass any values the interface removes the special parameter and executes the command associated with the special parameter without any arguments The following three commands are all variations of the display memory command display memory display memory 1000h display memory 1000h 2000h thru
574. the following command progflash v m68030 64747 lt RI ETURN gt 637 Chapter 19 Installing Updating Emulator Firmware To display current firmware version information To display current firmware version information e Use the Terminal Interface ver command to view the version information for firmware currently in the HP 64700 When using the Graphical User Interface or Softkey Interface you can enter Terminal Interface commands with the pod_command command For example display pod_command lt RETURN gt pod_command ver lt RETURN gt Examples The Terminal Interface ver command displays information similar to Copyright c Hewlett Packard Co 1987 All Rights Reserved Reproduction adaptation or translation without prior written permission is prohibited except as allowed under copyright laws HP64700B Series Emulation System Version B 01 00 20Dec93 Location Flash System RAM 1 Mbyte HP64747B Motorola 68030 EC030 Emulator Version A 01 00 28Apr92 Control HP64748C Emulation Control Board Speed 40 MHz Memory 1028 Kbytes Bank 0 HP64171B 1 Mbyte 35ns Memory Module HP64740 Emulation Analyzer Version A 02 02 13Mar91 638 Chapter 19 Installing Updating Emulator Firmware If there is a power failure during a firmware update If there is a power failure during a firmware update If there is a power glitch during a firmware update some bits may be lost
575. tinues to the bottom of the emulator analyzer window The status line is not part of the command line it will be displayed whether the command line is on or off Choosing certain pulldown menu items while the command line is off causes the command line to be turned on That is because the menu item chosen requires some command line input that cannot be supplied any other way To enter commands on the command line e Inthe Graphical User Interface successively position the mouse pointer on pushbuttons and click the pushbutton select mouse button until a complete command is formed e Successively press keyboard function keys corresponding to softkey buttons until a complete command is formed e Type in the command you want to use You must type in the full command name as shown in Chapter 11 Emulator Commands This may be different from the label on the corresponding softkey e Type in the first few characters of acommand name and press lt Tab gt The interface will complete the command name automatically Repeat this process until a complete command is formed 47 Chapter 3 Using the emulator analyzer interface Entering Commands To edit the command line using the command line pushbuttons on the Graphical User Interface To position the cursor at a specific character place the mouse pointer on the character and click the select mouse button To clear the command line click the Clear pushbutton To clear the comm
576. tion 3 Start the X server and the Motif Window Manager mwm or start HP VUE 4 Set the necessary environment variables Step 1 Install the software from the media During the installation process you may make some choices about how much of the product software to load from the product media As a general rule you should load everything from the media because that ensures that you will not miss filesets and therefore have problems with the operation of the software However you may not need or want to install certain partitions or filesets from the product media when installing the Graphical User Interface There are at least two reasons why that is so e Ifyou were shipped the HP 64801 64000 UX Operating Environment instead of the HP B1471 64700 Operating Environment you were shipped files that are not necessary to the operation of HP 64700 Series interface products As of this writing excluding these files will save you about 4 5 megabytes of disk space e You may not have the system performance necessary or you may choose for some other reason not to use the Graphical User Interface and instead use the Softkey Interface If that is the case you should exclude the filesets that contain the Graphical User Interface because As of this writing you will save about 3 5 megabytes of disk space 608 Chapter 18 Installation and Service Installing HP 9000 Software If you are using X Windows the Graphical User Int
577. tion pv command 468 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Configuration not valid restoring previous configuration Configuration not valid restoring default configuration Cause The modifications you tried to make to the emulator configuration are not valid so the host system restored the previous configuration Action Refer to Chapter 8 Configuring the Emulator for more information about the emulator configuration items and their settings Configuration process QUIT Cause The configuration process ended because lt ctrl gt SIGQUIT signal was encountered This is an easy way to exit configuration without saving any changes Action Try starting the emulation session again If the problem persists you may need to cycle power on the emulator Conflict between expected and received symbol information Error 880 Cause The information you supplied in a symbol definition is not what the HP 64700 expected to receive Action Make sure that all symbols in the symbol file are defined correctly Verify that there are no spaces in the address definitions for the symbols in the symbol file being downloaded Connecting to lt LOGICAL NAME gt Cause This is a status message The host system is making a communication connection to the emulator whose logical name is defined in ustr hp64000 etc 64700tab net or usr hp64000 etc 64700tab Continue load failed Cause The host sys
578. tion the MMU must be enabled within the emulator configuration and the target system must deassert the MMUDIS signal MMU Disable If the MMU is not enabled within the emulator configuration the emulator asserts the MMUDIS signal and ignores the MMUDIS signal from the target system thus preventing the target system from using the MMU If you are using the background monitor you will need to select a foreground monitor before the MMU can be enabled within the emulator configuration Refer to Chapter 8 Configuring the Emulator for details of setting up the emulator configuration Once the MMUDIS signal is driven properly the target system software is responsible for setting up address translation tables in memory and initializing the processor s MMU registers at run time This task is typically managed by the target system s boot code or operating system Refer to your Motorola 68030 User s Manual for information on how to use the MMU If the emulator is being used in an MC68EC030 target system or if the MMU is not needed for translating page addresses from address translation tables in memory then you should disable the MMU within the emulator configuration This causes the emulator to assert the MMUDIS signal However the assertion of 164 Chapter 4 Using the Emulator Using The MC68030 Emulator With MMU Enabled this signal does not affect the operation of the transparent translation or access control registers To vie
579. tion before it places the address on the processor bus Breakpoint addresses are always logical addresses When you set a breakpoint at an address that address is translated by the MMU and the BKPT 7 replaces the instruction at the appropriate physical address When the breakpoint is executed the emulator restores the original instruction to the physical address by first translating the logical address through the MMU Consider what happens if you set a breakpoint at a particular address and before the breakpoint is hit you update the translation tables in the MMU changing the mapping to the location where the breakpoint is set This is discussed in detail under Solving Problems at the end of this chapter If you enter a command to display memory or modify memory your command is directed to logical address space If you want to display memory at a physical address you have to change your command For example the command to display memory at address 100H Display gt Memory Hex or display memory 100h will show you the memory content at logical address 100H which might be some other physical address If you want to see the content at physical memory address 100H you will have to enter the command display memory physical 100h Addresses expressed using symbols are always logical addresses In the case of symbols the emulator looks in the symbol data base and finds the logical address that corresponds to the symbol you used in your
580. tion while the same analyzer s trigger output is currently driving the trig signal This error also occurs if you attempt to specify that the trigger output drive the internal trig signal while that signal is currently specified as the arm condition for the same analyzer Action You can either change the arm or the trigger output specification in either case make sure that they do not use the same internal signal trig2 break Error 619 Cause This status message is displayed if you have used the internal trig2 line to connect the analyzer trigger output to the emulator break input and the analyzer has found the trigger condition The emulator is broken to the monitor Trig2 signal cannot be driven and received Error 1303 Cause This error occurs when you attempt to specify the internal trig2 signal as the trace arm condition while the same analyzer s trigger output is currently driving the trig2 signal This error also occurs if you attempt to specify that the trigger output drive the internal trig2 signal while that signal is currently specified as the arm condition for the same analyzer Action You can either change the arm or the trigger output specification in either case make sure that they do not use the same internal signal Unable to access the deMMUer while analysis trace is in process Error 164 Cause You used the load demmuer verbose command while an analysis trace is currently running Because the load demmu
581. tive or absolute state count results The source parameter allows display of source program lines in the trace listing enabling you to quickly correlate the trace list with your source program Initial values are the same as specified by the command display trace mnemonic count relative offset_by 0 lt RETURN gt Lists trace information in hexadecimal format rather than mnemonic opcodes Use this to correct data alignment problems if you see any in a dequeued trace list If you see that the dequeuer has aligned data with the wrong instructions use this token to select the correct data alignment by specifying the line that should begin a data realignment align_data_from_line 36 Used to specify that all cycles should be included in the inverse assembled information shown in the trace list 386 Chapter 11 Emulator Commands DISPLAY TRACE count absolute This lists the state or time count for each event of the trace as the total count measured from the trigger event relative This lists the state or time count for each event of the trace as the count measured relative to the previous event depth lt DEPTH gt This defines the number of states to be uploaded by the Softkey Interface After you have changed the trace depth execute the command wait measurement_complete before displaying the trace Otherwise the new trace states will not be available dequeue This obtains a trace list showing the activity of the
582. tkey Interface 413 Chapter 11 Emulator Commands pod_command Examples This example shows a simple interactive session with the Terminal Interface display pod_command pod_command keyboard ct tsq tcq Enter suspend to return to the Softkey Interface See Also display pod_command help pod_command Also see the MC68020 and MC68030 EC030 Emulator Terminal Interface User s Guide 414 Chapter 11 Emulator Commands QUALIFIER QUALIFIER 7 7 EXPR er ae address A range one me thru EXPR long_ aligned lt STATUS gt T EXPR The QUALIFIER parameter is used with trace only trace prestore TRIGGER and trace counting to specify states captured during the trace measurement You may specify a range of states or specific states to be captured You can specify a unique combination of address data status values as conditions for the trace measurement You can continue to or states until the analyzer resources are depleted You can use only one range statement in the entire trace command 66 You can include don t care numbers These contain an x preceded and or followed by a number Some examples include Ifxxh 17x70 and 011xxx10b Don t care numbers may be entered in binary octal or hexadecimal base Expression types are address when none is chosen T
583. to save the memory image for comparison with other changes or for future testing The store command allows you to do this The store command creates absolute files in HP64000 format The X extension is added automatically Example To save the memory locations of the init_system routine in an absolute file named new use the command line to enter store memory init_system thru init_system end to new 105 Chapter 4 Using the Emulator Loading and Storing Programs To edit files Choose File gt Edit File and use the dialog box to specify the file name To edit a file based on an address in the entry buffer place the address reference either absolute or symbolic in the entry buffer and then choose File gt Edit gt At O Location To edit a file based on the current program counter choose File gt Edit At PC Location To edit a file associated with a symbol when you are displaying symbols position the mouse pointer over the symbol press and hold the select mouse button and choose Edit File At Symbol from the popup menu To edit a file when displaying memory in mnemonic format position the mouse pointer over the line of source where you want to begin the edit press and hold the select mouse button and choose Edit Source from the popup menu When editing files at addresses the interface determines which source file contains the code generated for the address and opens an edit session on the file The interfa
584. to the partition screen From the partition screen choose the update utility softkey that starts the installation process 610 j Chapter 18 Installation and Service Installing HP 9000 Software Step 2 Verify the software installation A number of new filesets were installed on your system during the software installation process This and following steps assume that you chose to load the Graphical User Interface filesets You can use this step to further verify that the filesets necessary to successfully start the Graphical User Interface have been loaded and that customize scripts have run correctly Of course the update process gives you mechanisms for verifying installation but these checks can help to double check the installation process Verify the existence of the HP64_Softkey file in the usr lib X11 app defaults subdirectory by entering ls usr lib X11 app defaults HP64_Softkey at the HP UX prompt Finding this file verifies that you loaded the correct fileset and also verifies that the customize scripts executed because this file is created from other files during the customize process Examine usr lib X11 app defaults HP64_Softkey near the end of the file to confirm that there are resources specific to your emulator Near the end of the file there will be resource strings that contain references to specific emulators For example if you installed the Graphical User Interface for the 68020 emulator resource
585. true 4E71 NOP Notice in the emulator analyzer interface that the instruction at address main has changed Click on the Patch action key again A window running the vi editor again appears allowing you to modify the patch code that was just created Modify the line you added previously to LINK A6 0 Exit out of the editor saving your changes wom The file you just edited is assembled and the patch main menu appears Type a lt RETURN gt to apply the patch Notice in the emulator analyzer interface that the instruction at address main has been changed back to what it was originally When patching a single address make sure the new instruction takes up the same number of bytes as the old instruction otherwise you may inadvertently modify code that follows 26 Chapter 1 Getting Started Step 12 Patch assembly language code 5 Type main 4 thru main 15 in the entry buffer By entering an address range in the entry buffer that is lt address gt thru lt address gt before clicking on the Patch action key you can modify a patch template file which allows you to insert as much or as little code as you wish 6 Click on the Patch action key again A window running the vi editor again appears Suppose you want to patch the demo program so that the proc_spec_init function is called before the init_system function Suppose also that there is memory available at addres
586. ts the memory list as 32 bit real numbers 379 Chapter 11 Emulator Commands DISPLAY MEMORY thru words Examples See Also This option lets you specify a range of memory locations to be displayed Use the up arrow down arrow NEXT PAGE and PREV PAGE keys to view additional memory locations Displays the memory listing as word values A comma after memory in the command line appends the current display memory command to the preceding display memory command The data specified in both commands is displayed The data will be formatted as specified in the current command The comma is also a delimiter between values when specifying multiple addresses display memory 2000h thru 204fh blocked words display memory 2000h thru 202fh 2100h real long display memory 400h mnemonic set symbols on set source on display memory main mnemonic copy memory CWS help display modify memory pws set store memory 380 Chapter 11 Emulator Commands DISPLAY MMU DISPLAY MMU From display on mmu_translations DISPLAY diagram N tables lt ADDRESS gt i FCODE yy i FE i Wk Me Idk oe lt ADDRESS gt M FCODE J Le thru H use_TC_value EXPR lt ADDRESS gt J N use_CRP_value lt HEX gt use_SRP_value lt HEX gt
587. ts the status of all emulators defined in the 64700tab and 64700tab net files If a logical emulator name is included in the command just the status of that emulator is listed You can also use the v option with the l option for a verbose listing of the status information 41 Chapter 3 Using the emulator analyzer interface Starting the Emulator Analyzer Interface Examples To list verbosely the status of the emulator whose logical name is em68020 emul700 lv em68020 lt RETURN gt The information may be similar to em68020 m68020 running user guest description M68020 emulation w internal analysis 260Kb emul mem user interfaces xemul skemul device channel dev emcom23 Or the information may be similar to em68020 m68020 running user guest myhost description M68020 emulation w internal analysis 260Kb emul mem user interfaces xemul skemul internet address 21 17 9 143 To see emulator analyzer status after the interface has started e Choose Display Status or e Use the command display status The present status of the emulator is displayed on the screen as well as detailed trace status 42 Chapter 3 Using the emulator analyzer interface Starting the Emulator Analyzer Interface To unlock an interface that was left locked by another user e Use the emul700 U lt emul_name gt command The U option to the emul700 command may be used to unlock the emulators whos
588. ubstitute Parts Or Modify Instrument Because of the danger of introducing additional hazards do not install substitute parts or perform any unauthorized modification of the instrument Return the instrument to a Hewlett Packard Sales and Service Office for service and repair to ensure that safety features are maintained Dangerous Procedure Warnings Warnings such as the example below precede potentially dangerous procedures throughout this manual Instructions contained in the warnings must be followed Dangerous voltages capable of causing death are present in this instrument Use extreme caution when handling testing and adjusting A A 1 o O a rh R ml INIZI Safety Symbols Used In Manuals The following is a list of general definitions of safety symbols used on equipment or in manuals Instruction manual symbol the product is marked with this symbol when it is necessary for the user to refer to the instruction manual in order to protect against damage to the instrument Hot Surface This symbol means the part or surface is hot and should not be touched Indicates dangerous voltage terminals fed from the interior by voltage exceeding 1000 volts must be marked with this symbol Protective conductor terminal For protection against electrical shock in case of a fault Used with field wiring terminals to indicate the terminal which must be connected to ground before operating the equipment Low noise or
589. uffer That is because the analyzer must now use two states in the trace buffer for each state captured on the analyzer bus One of the two states stores the state information itself The other state stores the count information associated with the state information By default the interface displays a maximum of 256 of states This is true whether counting is off or on You can increase the depth of the trace display buffer to display up to the maximum amount of states that are available for display 512 when counting is on or 1024 when counting is off The following command increases the trace display depth to 512 states display trace depth 512 lt RETURN gt By default the analyzer counting function is turned off This option allows you to set up the counting parameter for the analyzer to count on any state This option turns off trace counting capability As previously explained turning off counting provides a larger trace depth This is defined by you and used with the state option to define the states to be captured by the analyzer This causes the emulation bus analyzer to count occurrences of the specified state during a trace measurement 369 Chapter 11 Emulator Commands COUNT time This option causes the emulation bus analyzer to count the time between states captured during the trace measurement Examples trace after START counting state LOOP2 lt RETURN gt trace counting time lt RETURN
590. uld not be less than 0 volts or greater than 5 volts Failure to observe these specifications may result in damage to the HP 64700 Card Cage 241 Chapter 6 Making Coordinated Measurements Setting Up for Coordinated Measurements 1 Connect one end of a 50 ohm coaxial cable with male BNC connectors to the HP 64700 BNC receptacle and the other end to the appropriate BNC receptacle on the other measuring instrument t jou r n rgf ALIGN SLOTS ON SIDES OF PLUG WITH TABS ON SIDES OF JACK _ lO ri PUSH TOGETHER AND TURN UNTIL CONNECTORS LOCK 64700E15 The BNC connector is capable of driving TTL level signals into a 50 ohm load A positive rising edge is the trigger signal It requires a driver that can supply at least 4 mA at 2 volts when used as a receiver The BNC connector is configured as an open emitter structure which allows for multiple drivers to be connected It can be used for cross triggering between multiple HP 64700Bs when no other cross measurements are needed The output of the BNC connector is short circuit protected and is protected from TTL level signals when the emulator is powered down 242 Chapter 6 Making Coordinated Measurements Starting Stopping Multiple Emulators Starting Stopping Multiple Emulators When HP 64700 Card Cages are connected together via the Coordinated Measurement Bus CMB you can start and stop up to 32 emulators a
591. up table But you can also use data ranges to qualify a trigger or storage on a range of data values There is only one range term available in the trace specification Once it has been used it cannot be reused That is if you specify a range in a trigger specification you can t duplicate it in the storage specification The Terminal Interface does allow this type of measurement though there is still only one range term See the MC68020 and MC68030 EC030 Terminal Interface User s Guide Since address is the default range type you can omit the address keyword You can t omit the data or status keywords if those are the bus parts you want to qualify You can use the logical or operator to combine the range term with several state qualifiers See the examples 213 Chapter 5 Using the Emulation Bus Analyzer Making Complex Trace Measurements Examples Example Store only the accesses to the demo program s current_humid location trace only range current_humid thru 1h Store only bus cycles where data is in the range 6h 26h or is 29h trace only data range 6h thru 26h or data 29h To use the sequencer Create your first specification form on the command line That will enter the proper format in the Trace Specification Selection dialog box Obtain the dialog box by choosing Trace Trace Spec You can click on your specification in the dialog box edit it if desired and click OK Using the co
592. uration item to preset the initial value when the emulator enters the monitor from reset The ISP must point to a memory region that may be used as an interrupt stack Or check your program to make sure that it doesn t modify the ISP to an odd value If the M bit in the status register is set the processor uses the master stack instead of the interrupt stack The master stack must also be an even value lt STACKs stack is located in target ROM Error 151 Cause You tried to run from some address or perform a monitor operation that required the stack named lt STACK gt But the stack pointer points to target ROM which is invalid Action Use the modify register command to set the stack pointer to an even value that points at a memory region that can be used for stack operations For the ISP interrupt stack pointer you use a configuration item to preset the initial value when the emulator enters the monitor from reset The ISP must point to a memory region that may be used as an interrupt stack Or check your program to make sure that it doesn t modify the ISP to an odd value If the M bit in the status register is set the processor uses the master stack instead of the interrupt stack The master stack must also be an even value 460 Chapter 12 Emulator Messages Unalphabetized Error and Status Messages lt STACKs stack pointer is odd or uninitialized Error 151 Cause You tried to run from some address or perform a mo
593. urements on your software Use the performance_measurement_initialize command to initialize the SPMT Performance tool not initialized Cause The Software Performance Measurement Tool SPMT has not been initialized Action To make accurate activity or duration measurements on current data use the performance_measurement_initialize command to initialize the SPMT before running a performance measurement Program counter is located in guarded memory Error 150 Cause You tried to run the processor from the current PC but the PC pointed to guarded memory Action Modify the PC to an even value that points to a valid program memory area Program counter is odd Error 84 Cause You tried to modify the program counter to an odd value using the modify register PC command The processor expects even alignment of opcodes Action Modify the program counter only to even numbered values 497 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Program counter is odd or uninitialized Error 84 Cause You tried to run the processor from the current PC but the PC was odd or pointed to an unmapped memory area Action Modify the PC to an even value Question file missing or invalid Cause Some of the emulator analyzer interface files are missing or are corrupted Action Reinstall the host software and try starting the emulation session again Range crosses segment boundary Cause On a segment offset pr
594. urrent performance measurement information in a file called perfl out and produce a histogram showing only the program activity occupied by the functions and variables mv perf out perfl out perf32 hpf perfl out A default report containing all performance measurement information is generated when the perf32 command is used without any options The options available with perf32 allow you to limit the information in the generated report These options are h Produce outputs limited to histograms S Produce a summary limited to the statistical data p Produce a summary limited to the program activity m Produce a summary limited to the memory activity f lt file gt Produce a report based on the information contained in lt file gt instead of the information contained in perf out c Print only program and memory activity information consuming time Options h s p and m affect the contents of reports generated for activity measurements These options have no effect on the contents of reports generated for duration time interval measurements 269 Chapter 7 Making Software Performance Measurements To use the Software Performance Measurement Tool The reports generated for activity measurements show you the percentage of analyzer trace states that are in the specified address range as well as the percentage of time taken by those states The performance measurement must include four traces before statistics
595. urs when you attempt to delete an emulation trace label which is currently being used as a qualifier in the emulation trace specification or is currently specified in the emulation trace format Action Display the emulation trace sequencer specification in the configuration display the emulation trace patterns in the complex configuration or display the trace format to see where the label is used Also you should check teq and tpq for uses of that label You must change the pattern or format specification to remove the label before you can delete it Unable to load new memory map old map reloaded Error 725 Cause There is not enough emulation memory left for this request Action Reduce the amount of emulation memory requested Unable to modify register lt register gt lt value gt Error 632 Cause The emulator was unable to modify the register you requested Action To resolve this you must look at the other status messages displayed It s likely that the emulator was unable to break to the monitor to perform the register modification See message Unable to break Error 608 509 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Unable to read registers in class lt name gt Error 631 Cause The emulator was unable to read the registers you requested Action To resolve this you must look at the other status messages displayed Most likely the emulator was unable to break to the monitor to pe
596. ut Setup Time IPLx 12 12 551 Chapter 16 Specifications and Characteristics HP 64747 Electrical Specifications HP64747 AC ELECTRICAL SPECIFICATIONS READ AND WRITE CYCLES Vcc 5 0 Vde 5 GND 0 Vdc Ta 0 to 70 C Num Characteristic HP 64747 HP 64747 Unit 25MHz 40MHz Min Max Min Max 47B Asynchronous Input Hold Time from Clock Low 8 gt E pee as 4g DSACK x Asserted to BERR HALT Asserted 25 14 ns 53 Data Out Hold from Clock High 3 2 ns 55 R W Asserted to Data Bus Impedance Change 20 11 Ins 56 RESET Pulse Width Reset Instruction 512 512 Clks 57 BERR Negated to HALT Negated Rerun 0 0 fs Hg 58 BGACK Negated to Bus Driven 1 1 Clks 59 BG Negated to Bus Driven 1 _ 1 Clks 60 3 Synchronous Input Valid to Clock High Setup Time 4x a ns 61 Clock High to Synchronous Input Invalid Hold Time g l 6 os 62 Clock Low to STATUS REFILL Asserted 0 20 0 15 ns 63 Clock Low to STATUS REFILL Negated 0 20 0 15 ns Notes 1 This number can be reduced to 5 nanoseconds if strobes have equal loads 2 Ifthe asynchronous setup time 47 requirements are satisfied the DSACKx low to data setup time 31 and DSACKx low to BERR low setup time 48 can be ignored The data must only satisfy the data in to clock low setup time 27 for the following cloc
597. ute Error 692 Cause System failure Action Run performance verification pv command Trace file not found Cause You tried to load trace data file that does not exist Action Find the correct name and path of the trace data file and try again 506 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Trace format command failed using old format Error 1133 Cause This error occurs when the trace format command fails for some reason Action This error message always occurs with another error message Refer to the description for the other error message displayed Trace vector modified to lt address gt for single stepping Error 155 Cause You used the step command The emulator modified the trace vector to lt address gt so that the single step function would operate correctly Action See To step the processor in Chapter 4 Using the Emulator for more information Trace vector points to unreadable memory Error 156 Cause You used the step command The emulator found that the trace vector was even and in a mapped memory range however the processor entered an indefinite wait state when trying to read the location pointed to by the vector This may be caused by a memory system failure either in the target system or the emulator Action Make sure the VBR register table is where you expect it to be See To step the processor in Chapter 4 Using the Emulator for more information
598. ve FATAL SYSTEM SOFTWARE ERROR Error 204 FATAL SYSTEM SOFTWARE ERROR Error 205 FATAL SYSTEM SOFTWARE ERROR Error 208 Cause The system has encountered an error from which it cannot recover Action Write down the sequence of commands that caused the error Cycle power on the emulator and reenter the commands If the error repeats call your local HP Sales and Service office for assistance 478 Chapter 12 Emulator Messages Alphabetized Error And Status Messages File could not be opened Cause You tried to store or load trace data to a file with incorrect permission Or the analyzer could not find the file you specified or else there were already too many files open when you entered your command Action Check the directory and file for correct read and write permission Specify a file that is accessible to the analyzer Close the other files that are presently open File perf out does not exist Cause You tried to execute the restore command to continue a previous software performance measurement and the SPMT software found that no performance_measurement_end command was previously executed to create a file from which restore could be performed Action Execute anew SPMT measurement File perf out not generated by measurement software Cause The faile named perf out exists in the current directory but it was not created by the performance_measurement_end command Action Rename the old perf out file
599. vel within the translation tables that map memory It also allows separate tables to be set up for supervisor and user access For example you can create one set of tables to translate addresses in supervisor space and another set of mapping tables to translate addresses in user space The supervisor space can use the SRP supervisor root pointer or the CRP CPU root pointer as you choose The user space must use the CRP The supervisor memory can begin at supervisor address 0 and the user memory can begin at user address 0 The MMU must ensure that these addresses are placed in different physical spaces You can use the MMU to protect your program space from unauthorized accesses If you map a portion of your program through the MMU and identify it as supervisor space the MMU will not allow any access to that program space unless the function code is supervisor at the time the access is attempted Take care to ensure that function codes are specified with addresses if the MMU will be making the distinction example lt address gt supervisor emulation rom How the MMU is enabled The MMU depends on a hardware enable and a software enable Both of these enables must agree to enable the MMU before it can translate logical addresses to physical addresses If either one or both of these enables fail to enable the MMU it will remain disabled Hardware enable The hardware enable is performed by the MMUDIS signal When MMUDIS is asserted
600. vi lt line gt lt file gt no_prompt_before_exit run until fcode sp EXPR trace after STATE trace before STATE trace about STATE trace before STATE break_on_trigger Breakpoints Display Popup Command Line Set Inactivate Breakpoint Clear delete Breakpoint Enable Disable Software Breakpoints Set All Breakpoints Clear delete All Breakpoints modify software_breakpoints set deactivate EXPR modify software_breakpoints clear EXPR modify software_breakpoints enable disable modify software_breakpoints set modify software_breakpoints clear Symbols Display Popup Command Line Display Local Symbols display local_symbols_in S YMB Display Parent Symbols display local_symbols_in SYMB display global_symbols Cut Full Symbol Name N A Edit File Defining Symbol vi lt line gt lt file gt no_prompt_before_exit 356 Chapter 11 Emulator Commands Trace Display Popup Command Line Disassemble From display trace disassemble_from_line_number lt line gt Edit Source vi lt line gt lt file gt no_prompt_before_exit Display Memory At display memory lt address gt mnemonic Status Line Popup Command Line Remove Temporary Message N A Command Line On Off toggles command line Display Error Log display error_log Display Event Log display event_log Command Line Popup Command Line Position Cursor Replace Mode Position Cursor Inser
601. vide the memory space into one of several page sizes You can choose to divide the memory into pages as small as 256 bytes or as large as 32 Kbytes Assume you set up the MMU to divide the memory into 1 Kbyte pages Your program will occupy 10 000 pages of code and 2 000 of these pages can be contained within your physical memory space at any given time As your program executes the operating system moves pages of your program code into address space in physical memory When execution goes beyond the addresses contained on the presently active page the MMU checks to see if the next logical address is on a page that has already been placed in physical memory If it is the MMU performs the appropriate translation for the next logical address placing the appropriate physical address on the bus and execution continues If itis not the operating system moves the page that has the next address to be executed up from an external storage device to physical memory space overwriting one of the pages that had occupied physical space before The operating system updates the translation tables to identify the new logical address space that now occupies that 1 Kbyte of physical memory and program execution continues 318 Chapter 10 Using MC68030 Memory Management Understanding Emulation and Analysis Of The MC68030 Memory Management Unit AS pages are swapped back and forth between an external storage device and the physical memory the relationship
602. vious_disp N expr A offset_by 64783513 377 Chapter 11 Emulator Commands DISPLAY MEMORY absolute at_pc blocked bytes EXPR The memory contents can be displayed in mnemonic hexadecimal or real number format In addition the memory addresses can be listed offset by a value which allows the information to be easily compared to the program listing When displaying memory mnemonic and stepping the next instruction that will step is highlighted The memory mnemonic display autopages to the new address if the next PC goes outside the currently displayed address range This feature works even if stepping is performed in a different emulation window from the one displaying memory mnemonic see the discussion on windowing capabilities in Chapter 3 Using the Emulator Analyzer Interface Pending breakpoints are shown in the memory mnemonic display by an asterisk in the leftmost column of the assembly instruction or source line that has a pending breakpoint A label column symbols may be displayed for all memory displays except blocked mode Memory mnemonic may be displayed with source and assembly code intermixed or with source code only Symbols also can be displayed in the memory mnemonic string See the set command Initial values are the same as specified by the command display memory 0 blocked bytes offset_by 0 Defaults are values specified in a previous display memory com
603. w the present logical to physical mappings e Choose Display gt MMU Translations If you want to specify a logical address range for your mappings display choose DisplayMMU Translations Then in the dialog box click on MMU Mappings and enter the desired logical address range e Using the command line enter the command display mmu_translations The display will show the logical to physical address translations defined by the current MMU registers and translation tables Examples To see the logical to physical mappings using the default range of logical addresses initially 0 through Offffffffh choose Display MMU Translations or on the command line enter display mmu_translations To see all of the logical to physical mappings for logical addresses from 0 through Offffh when function codes are not enabled and only the CRP root pointer is enabled choose Display MMU Translations Then in the dialog box click on MMU Mappings and enter Start Address 0 and End Address Offffh and click ok 165 Chapter 4 Using the Emulator Using The MC68030 Emulator With MMU Enabled Emulator Analyzer Display MMU Translations Type of Query MMU Mappings lt MMU Tables Logical Address End Address GFFFFh Recan Function Code Tabie Level gii ma MMU Register Yalues in hex 2 Override Processor Register Values revata Peot CRP Value 84 bi Pecar SRP Value eab Recall Cancel Usin
604. was not enough resouces to reverse translate all address translations defined by your translation tables Depending upon the MMU page size selected the de MMUer can reverse translate 16M or 256M physical addresses into logical addresses Action Refer to Chapter 10 Using MC68030 Memory Management for more information on how to make the most efficient use of the deMMUer resources Out of system memory Error 201 Cause Macros and equates that you have defined have used all of the available system memory Perfinit Absolute file database must be loaded line lt LINE NUMBER gt Cause No symbolic data base has been opened or exists for the target file when you executed the performance_measurement_initialize command Action Make sure a data base has been loaded for the target file 495 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Perfinit error in input file line lt LINE NUMBER gt invalid symbol You included a label file name with your performance_measurement_initialize command and that file contains an invalid symbol Action Edit the file and correct the invalid symbol Perfinit error in input file line lt NUMBER gt Cause You included an input file name with your performance_measurement_initialize command and that file contains a syntax error Action Edit the file and correct the syntax error Perfinit lt EXPR ERROR gt line lt LINE NUMBER gt Cause An e
605. wer outlet type contact your Hewlett Packard sales and service office 605 Chapter 18 Installation and Service Installing Hardware 1 Connect the power cord and turn on the HP 64700 The line switch is a pushbutton located at the lower left hand corner of the front panel To turn ON power to the HP 64700 push the line switch button in to the ON 1 position The power light at the lower right hand corner of the front panel will be illuminated 64700E03 606 Chapter 18 Installation and Service Connecting the HP 64700 to a Computer or LAN Connecting the HP 64700 to a Computer or LAN Refer to the HP 64700 Series Installation Service Guide for instructions on connecting the HP 64700 to a host computer via RS 422 or RS 232 or LAN and setting the HP 64700 s configuration switches RS 422 and RS 232 are only supported on HP 9000 Series 300 400 machines 607 Chapter 18 Installation and Service Installing HP 9000 Software Installing HP 9000 Software This section shows you how to install the Graphical User Interface on HP 9000 workstations Installation involves installing the interface and the 64700 Operating Environment These instructions also tell you how to prevent installation of the Graphical User Interface if you want to use only the Softkey Interface This section shows you how to 1 Install the software from the media 2 Verify the software installa
606. wer to the emulator and check that all cables are connected properly If you are using LAN and heavy LAN traffic is present try setting the environment variable to HP64700TIMEOUT 30 or larger if needed The value is the number of seconds before timeout occurs Then try running again HP64700 I O error connection timed out Cause A user abort occurred while attempting to connect via LAN Action Possibly connecting to an emulator many miles away be patient HP 64700 I O error power down detected Cause The emulator power was cycled Action Do not do this during a user interface session this may force the user interface to end immediately HP64700 I O channel busy communications timed out Cause The communications channel is in use for an unusually long period of time by another command Action try again later 480 Chapter 12 Emulator Messages Alphabetized Error And Status Messages Illegal base for count display Error 1130 Cause When specifying the trace format counts may only be displayed relative or absolute When counting states the count is always a decimal number Action Respecify the trace format without using a base for the count column Illegal base for mnemonic disassembly display Error 1131 Cause When specifying the trace format you tried to specify a number base for the column containing mnemonic information Action Respecify the trace format without using a base for the mnemonic column
607. widgets Applications are built using a hierarchy of widgets and the application s X resource names follow this hierarchy For example Application form row done background red In the resource name above the top level widget is named after the application One of the top level widget s children is a form widget one of the form widget s children is arow column manager widget and one of the row column manager widget s children is a pushbutton widget Resource names show a path in the widget hierarchy Each widget in the hierarchy is a member of a widget class and the particular instance of the widget is named by the application programmer 567 Chapter 17 X Resources and the Graphical User Interface X Resource Specifications Class Names or Instance Names Can Be Used When specifying resource names you can use either instance names or class names For example a Done pushbutton may have an instance name of done and a class name of XmPushButton To set the background color for a hypothetical Done pushbutton you can use Application form row done background red Or you can use Application form row XmPushButton background red Applications also have class and instance names For example an application may have an instance name of applic and a class name of Application To set the background color for a hypothetical Done pushbutton only in the applic1 application you can use applicl form row d
608. wing C code example is provided to help illustrate how symbols are maintained by SRU and referenced in your emulation commands File users dave control c contains int port_one main int port_value port_one 255 port_value 10 7 TE port_one port_value end main File users project1 porthand c contains v include utils c process_port int port_num int port_data static int i static int i2 for i 0 i lt 64 i Ve Ha By port_num port_data i2 delay static int i i 3 port_data port_data i end of process_port File users project1 utils c contains delay int i j int waste_time for i 0 i lt 256000 i for j 0 j lt 256000 j waste_time 0 end delay 441 Chapter 11 Emulator Commands SYMB The symbol tree as built by SRU might appear as shown in the following diagram depending on the object module format OMF and compiler used users dave control c filename ENTRY TEXTRANGE procspecial procspecial EXIT procspeciul system project1 utils c filename delay TEXTRANGE procspecial EXIT procspecial system project1 porthand c filename process port procedure BLOCK _1 procedure i Note that SRU does not build tree nodes for variables that are dynamically allocated on the stack at run time such as i
609. with the modify register command Request access to guarded memory lt address gt Error 707 Cause The address or address range specified in the command included addresses within a range mapped as guarded memory When the emulator attempts to access these during command processing the above message is printed along with the specific address or addresses accessed Action Reenter the command and specify only addresses or address ranges within emulation or target RAM or ROM Or you can remap memory so that the desired addresses are no longer mapped as guarded Request failed bus error Error 170 Cause The monitor detected a bus error exception while attempting to display or modify memory This can occur if the target system terminates a memory access with a bus error Action See if this is bus error occurred in emulation memory if it did the dsi memory attribute must have been used If the target is not supposed to provide cycle terminations for this emulation memory range delete and reenter this map term without the dsi attribute The MC68030 MMU can also terminate an access with a bus error if there is no valid address transalation Use the display mmu_translations command to verify that the address translation tables are set up correctly Request failed level 7 interrupt Error 170 Cause The monitor detected a non maskable level 7 interrupt autovector generated by the target system while executing a monitor command
610. won t start Solving Quick Start Problems This chapter helps you identify and resolve problems that may arise while using the Getting Started chapter For more information refer to Chapter 9 Solving Problems If the desired emulator interface won t start Check for correct installation of the interface software Refer to Chapter 18 Installation and service and to the HP 64700 Series Emulators Installation Service Guide Verify that the PATH environment variable includes the directory containing the interface software usr hp64000 bin The interface files are loaded in the usr hp64000 bin directory by the installation procedure If the text based Softkey Interface won t start under X Windows If the Graphical User Interface is starting when you are trying to start the Softkey Interface include the u skemul option to the emul700 command to override the Graphical User Interface and force the start of the Softkey Interface If you can t load the demo program Check to ensure that the emulator probe is plugged into the demo board with power connected to the demo board from the emulator The demo program may not work with target systems other than the demo board 30 Chapter 2 Solving Quick Start Problems If you can t load the demo program Check to ensure the switches on the demo board are set to the OCE Out of Circuit Emulation
611. worry that some additional code they write in their programs might overwrite some of the code that was written by another programmer The operating system will place all of the code in available memory space and place appropriate translation mappings in the MMU to ensure that when the logical address for one of the programs tasks is present in the program counter the appropriate physical address will appear on the bus to access the desired physical memory location Your HP emulator analyzer can give you partial support for a non paged dynamic system When the MMU has been set up to manage memory during execution of one of the above tasks you can update the deMMUer to translate addresses for that task When that task is executing the analyzer will be able to make trace measurements and provide correct results When any of the other tasks are executing trace measurement results will be invalid because the other tasks will depend on different translation tables in the MMU and there is no way to automatically update the deMMUer when execution switches from one task to another Paged dynamic system example Assume you have developed a program that occupies 10 megabytes of logical address space Perhaps you have only 2 megabytes of physical address space in your system Still you want to be able to run the entire program You set up a specification in the MMU translation control register to divide the address space into pages the 68030 lets you di
612. x Finally beside Table Level click on the pushbutton to identify the table you want to see and then click ok e Using the command line enter the command display mmu_translations tables lt address gt level lt table_level gt Where lt table_level gt is the table level you want to see either A B C D or FC if function codes are used and lt address gt is the logical address that uses the table at the point to be shown Note that table level all is also offered If you select all you will see the translation details for your logical address through the tables This is the same as if you had not selected the level lt table_level gt option Table A may be accessed at several different base addresses depending on which logical address is to be translated This command ensures you see Table A where you want to see it Examples To see the details of Table A used to map logical address 1250h choose Display MMU Translations Then in the dialog box click on MMU Tables and enter 1250h in the Address box Finally beside Table Level click on the pushbutton to select A and then click ok 169 Chapter 4 Using the Emulator Using The MC68030 Emulator With MMU Enabled Emulator Analyzer Display MMU Translations Type of Query MMU Mappings MMU Tables Logical Address Address 1258h Recan End Address Function Code Table Level MMU Register Yalues in hex Recali 2 Override
613. ximum count in about 22 9 minutes 22 minutes and 54 seconds The deep analyzer sets a flag in memory and stores it along with the first state that is captured after the counter overflow occurs first state captured after the counter begins again at zero 644 Glossary Cross Trigger Cross Trigger the situation in which the trigger condition of one analyzer is used to trigger another analyzer Two signals internal to the HP 64700 can be connected through the BNC on the instrumentation card cage to allow cross triggering between the emulation bus analyzer and other analyzers DCE Data Communications Equipment a specific RS 232C hardware interface configuration Typically DCE is amodem Deep Analyzer in this manual deep analyzer refers to the HP 64794 Emulation Bus Analyzer with deep trace memory Downloading the process of transferring absolute files from a host computer into the emulator DTE Data Terminal Equipment a specific RS 232C hardware interface configuration Typically DTE is a terminal or printer Emulation bus Analyzer a system component built into the HP 64700 that captures the emulation processor s address data and status information Emulation Memory high speed memory RAM in the emulator that can be used in place of target system memory 645 Glossary Emulator Emulator a tool that replaces the processor in your target system The goal of the emulator is to operate just like the processor it r
614. y a map request you may see unusual behavior in the trace list The processor executes correctly but you will notice a status change from 32 bit accesses ds32 to 16 bit accesses ds16 as the execution crosses the boundary from the emulation memory module to the dual port memory You won t have this problem with the MC68030 EC030 emulator because the dual port memory is 32 bits wide but you may see a speed difference when accessing the dual port memory To fix this map the dual port memory explicitly to another unused range use the dp attribute Then the request for a 260 Kbyte block will use memory from the emulation memory modules only See the section Memory Mapping in Chapter 8 Configuring the Emulator for more information on memory allocation 306 Chapter 9 Solving Problems If you see multiple guarded memory accesses If you see multiple guarded memory accesses Check the stack pointer value If it points to guarded memory you will see multiple guarded memory accesses each time that you press the lt Enter gt key to get a new prompt Reset the emulator and set the stack pointer to a correct value If the demo program won t work Do you have the emulator plugged into the demo board with power connected to the demo board from the emulator The demo program will not work with other target systems Are the switches on the demo board set to the OC
615. y need to resynchronize alignment of 189 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List Examples operand cycles with the instruction at the branch address using the align_data_from_line option Dequeue the trace list Choose Trace Display Options and in the dialog box select Dequeue Enable Then click the OK or Apply pushbutton Or using the command line enter display trace dequeue on Display the trace list without dequeueing display trace dequeue off Tell the analyzer which data operand should be aligned with the first opcode display trace disassemble_from_line_number 40 align_data_from_line 42 190 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To display the trace without disassembly Choose Trace Display Options and in the dialog box select Data Format Absolute You can select Hex Binary or Mnemonic format for display of status information Then click the OK or Apply pushbutton Using the command line enter commands as follows e To display the trace list without instruction disassembly and with status information in binary format enter the display trace absolute status binary command e To display the trace list without instruction disassembly and with status information in hexadecimal format enter the display trace absolute status hex command e To display the trace list without instruction disassembly and with status
616. y slider that allows navigation in the display area Click on the upper and lower arrows to scroll to the top home and bottom end of the window Click on the inner arrows to scroll one line Drag the slider handle up or down to cause continuous scrolling Click between the inner arrows and the slider handle to page up or page down Status Line Displays the emulator and analyzer status Also when error and status messages occur they are displayed on the status line in addition to being saved in the error log You can press and hold the select mouse button to access the Status Line popup menu Command Line The command line area is similar to the command line in the Softkey Interface however the graphical interface lets you use the mouse to enter and edit commands e Command line entry area Allows you to enter commands from the command line e Softkey pushbuttons Clicking on these pushbuttons or pressing softkeys places the command in the command line entry area You can press and hold the select mouse button to access the Command Line popup menu e Command buttons includes command recall button The command Return button is the same as pressing the carriage return key it sends the command in the command line entry area to the emulator analyzer Chapter 1 Getting Started The command Recall button allows you to recall previous or predefined commands When you click on the command Recall button a dialog box appears tha
617. y software_breakpoints set EXPR permanent Breakpoints Set modify software_breakpoints set EXPR Breakpoints Set All modify software_breakpoints set Breakpoints Clear modify software_breakpoints clear EXPR Breakpoints Clear All modify software_breakpoints clear 353 Chapter 11 Emulator Commands Pulldown Command Line Trace Display display trace Trace Display Options display trace Trace Trace Spec N A browses recall buffer for trace commands Trace A fter trace after STATE Trace Before trace before STATE Trace About trace about STATE Trace Only trace only STATE Trace Only Prestore trace only STATE prestore anything Trace gt Again trace again Trace Repetitively lt previous trace spec gt repetitively Trace gt Everything trace Trace Until trace before STATE break_on_trigger Trace Until Stop trace on_halt Trace Stop stop_trace Settings Source Symbol Modes Absolute Settings Source Symbol Modes Symbols Settings Source Symbol Modes Source Mixed Settings Source Symbol Modes Source Only Settings Display Modes Settings DeMMUer Load from Memory Settings DeMMUer Load from File Settings DeMMUer Load Verbose Settings DeMMUer Enable Settings Pod Command Keyboard Settings Simulated IO Keyboard Settings Command Line set source off symbols off set source off symbols on set source on inverse_video o
618. y to begin with the lower word of the first trace state by using the low_word option If the disassembled trace list isn t what you expected try using this option The disassembly options remain in effect until you specify a new disassembly option Show only instruction cycles in the trace list starting at line 40 display trace disassemble_from_line_number 40 instructions_only Show all bus cycles in the trace list display trace disassemble_from_line_number 40 all_cycles Start instruction disassembly from the upper word of the bus display trace disassemble_from_line_number 100 high_word Start instruction disassembly from the lower word of the bus display trace disassemble_from_line_number 100 low_word 188 Chapter 5 Using the Emulation Bus Analyzer Displaying the Trace List To specify trace dequeueing options Choose Trace Display Options and in the dialog box select Dequeue Enable Then click the OK or Apply pushbutton Using the command line enter commands as follows e To dequeue the trace list enter the display trace dequeue on command e To display the trace list without dequeueing enter display trace dequeue off e To tell the analyzer which data operand is aligned with the first opcode enter the display trace disassemble_from_line_number lt LINE gt align_data_from_line lt STATE gt command lt LINE gt is a line number corresponding to a state in the trace list lt STATE gt is the
619. you how to e Turn the command line on and off e Enter commands on the command line e Edit commands e Recall commands that were used before e Execute a completed command e Get online help on commands e Display the error log and the event log To turn the command line on or off in the Graphical User Interface To turn the command line on or off using the pulldown menu choose Settings Command Line To turn the command line on or off using the status line popup menu position the mouse pointer within the status line area press and hold the select mouse button and choose Command Line On Off from the menu To turn the command line off using the command line entry area popup menu position the mouse pointer within the entry area press and hold the select mouse button and choose Command Line Off from the menu 46 Chapter 3 Using the emulator analyzer interface Entering Commands e To turn the command line on position the mouse pointer in the main display area and start typing The above selections turn display of the command line area on or off When it is on the command line is displayed you can use the softkey pushbuttons the command return and recall pushbuttons and the cursor pushbuttons for command line editing When it is off the command line is not displayed you use only the pulldown menus and the action keys to control the interface The command line area begins just below the status line and con
620. yzer operation When enabled the analyzer will recognize sequence terms and trigger terms and will store states When disabled the analyzer is effectively off and only looks for a particular enable term You specify windowing by selecting an enable qualifier term the analyzer will trigger or store all states after this term is satisfied If the disable term occurs after the analyzer is enabled the analyzer will then stop storing states and will not recognize trigger or sequence terms You may specify only one enable term and one disable term The analyzer defaults to recognizing all states If you specify enable you must supply a qualifier term If you then specify disable you must specify a qualifier term Allows you to specify the term which will stop the analyzer from recognizing states once the enable term has been found Allows you to specify the term which will enable the analyzer to begin monitoring states Specifies the actual address data status value or range of values that cause the analyzer to enable or disable recognition of states Note that the enable qualifier can be different from the disable qualifier Refer to the QUALIFIER syntax pages for further details on analyzer qualifier specification 454 Chapter 11 Emulator Commands WINDOW Examples The following example uses an imaginary program that writes messages The window specification ensures that the trace memory will
Download Pdf Manuals
Related Search
Related Contents
Herbicide VENTURE L DRM320DB・420DB・620DB・620TB 320DC・420DC 3A0472N - Probler P2, Instructions-Parts, French Guía del usuario Maquetación 1 - Cristian Lay Samsung MC32J7055HT Hướng dẫn sử dụng HEMOCHRON® Jr. Signature+ Whole Blood Microcoagulation Claims Processing System User Manual May 2010 Mode d`emploi en français (sur la 2ème page) Copyright © All rights reserved.
Failed to retrieve file