Class: OrigenDebuggers::PEmicro

Inherits:
Base
  • Object
show all
Includes:
Common_API, Custom, JTAG_API
Defined in:
lib/origen_debuggers/p_and_e.rb

Overview

Driver for the P&E Microsystems debugger: www.pemicro.com

For reference here is a command list for this debugger. Note, many commands can be altered using additional opperands, see help for details. Note that while not recommended any of these can be called directly from an application by using the dw (direct write) method, e.g.

$tester.dw "****"
$tester.dw "****"

Available commands are:

write_ir write “raw” jtag to the instruction register write_dr write “raw” jtag to the data register

ADDSPR Sets user-defined SPR name to equal user-defined SPR number. ASCIIF3 (ASCIIF6) Toggle the F3(F6) memory window between showing hexadecimal bytes and ASCII characters. Nonprintable characters are shown as an ASCII period ('.'). ASM Assemble instructions. BELL Sound Bell BF Block fill memory. BGND_TIME Starts processor execution at the current Program Counter and logs time since the last BGND instruction each time a BGND instruction is encountered. BR Set instruction breakpoint. CAPTURE Open a capture file named 'filename'. CAPTUREOFF Turn off capturing and close the current capture file. CLEARMAP Remove all symbolic mapfile names. CLEARSYMBOL Remove all temporary symbols. CLEARVAR Clears variables list from Variables window. CODE Show disassembled code in the code window starting at address add. If you specify an address in the middle of an intended instruction, improper results may occur. COLORS Change Debugger Colors COUNT Counts the number of times breakpoints in internal counter table are executed. Allows optional stop and start parameters to be set. COUNTER Add or subtract a location from the internal counter table. Using this command with no address shows the current counters. CR Set Condition Register. CTR Set Counter Register DASM Disassemble Instructions DUMP_TRACE Dump current trace buffer. DUMP Dumps memory to screen. EVAL Evaluate expression. EXECUTE_OPCODE Treats numeric parameter as an opcode and executes it. EXIT Exit debugger. FPSCR Set Floating Point Status And Control Register FR(x) Set Floating Point Register. G or GO Begin program execution. GOALL Begin program execution for multi-core devices.. GOEXIT Begin program execution without breakpoints and terminate debugger software. GOTIL Execute until address. GOTILROM Execute fast single steps without updating the screen, until the address is reached. This is the fastest way to breakpoint in ROM. HELP Bring up the help window. HGO Begin Program Execution HGOALL Begin Program Execution For Multi-Core Devices HLOAD Load ELF/DWARF/S19/MAP Object And Debug Information HLOADMAP Load DWARF/MAP Debug Info Only HSTEP High-Level Language Source Step HSTEPALL High-Level Language Source Step For Multi-Core Devices HSTEPFOR High-Level Language Step Forever LOADDESK Loads the visual layout for the debugger from the last instance it was saved, such as with the SAVEDESK command. LOAD_BIN Load a binary file of byte. The default filename extension is .BIN. LOADV_BIN Perform LOAD_BIN command, verify using the same file. LOGFILE Open/Close Log File LR Set Link Register MACRO Execute a Batch File MACROEND Stop Saving Commands to File MACROSTART Save Debug Commands to File MACS Bring up a window with a list of macros. These are files with the extension .ICD (such as the STARTUP.ICD macro). Use the arrow keys and the <ENTER> key or cancel with the <ESC> key. MD Set Memory Window 1 to a specific address. MD2 Set Memory Window 2 to a specific address. MM Memory modify. MSR Set Machine Status Register NOBR Clear all break points. PC Set Program Counter. QUIET Turn off (on) refresh of memory based windows. QUIT Exit debugger. R Display and edit registers (requires REG software). R(x) Set General Purpose Register R(x). REM Place comment in macro file. RESET Force reset of device into background mode. RTVAR Displays a specified address and its contents in the Variables window for viewing during code execution and while the part is running (real time). SAVEDESK Saves the current visual layout of the debugger. SERIAL Set up parameters for dumb terminal. SERIALOFF Disable the status window as a dumb terminal. SERIALON Enable the status window as a dumb terminal. SHOWCODE Display Code at Address SHOWMMU Displays MMU Information SHOWPC Display Code at PC SHOWSPR Displays SPR Information SHOWTRACE Allows the user to view this trace buffer after having executed the TRACE command. SNAPSHOT Send snapshot of screen to capture file. SOURCEPATH Search for source code. SPR Display/modify the value of the special purpose register at address add. SS Execute source step(s).. ST Execute single step in assembly. STATUS Show registers. STEP Same as ST. STEPALL Execute single step in assembly for multi-core devices. STEPFOR Step forever on assembly level. STEPTIL Step until address on the assembly level. SYMBOL Add user symbol. TIME Displays real time elapsed during execution of code _TR Add register field description to the VAR Window TRACE Monitors execution of the CPU and logs instructions. UPLOAD_SREC Uloads S records to screen. VAR Display variable. VERIFY Compare the contents of program memory with an S-record file. VERSION Display the version number of the ICD software. WATCHDOG Disable the watchdog if active. WHEREIS Display symbol value. XER Set Integer Exception Register.


Defined Under Namespace

Modules: Common_API, Custom, JTAG_API

Instance Method Summary collapse

Methods included from Custom

#enter_jtag, #exit_jtag, #go, #halt, #set_pc

Methods included from JTAG_API

#read_dr, #read_ir, #write_dr, #write_ir

Methods included from Common_API

#delay, #extract_address, #extract_data, #extract_size, #read, #read16, #read32, #read8, #write, #write16, #write32, #write8

Methods inherited from Base

#cycle, #initialize, #jtag?

Constructor Details

This class inherits a constructor from OrigenDebuggers::Base

Instance Method Details

if at the end of the file, and still in a jtag mode, close the jtag mode.



306
307
308
309
310
311
312
# File 'lib/origen_debuggers/p_and_e.rb', line 306

def footer_template # if at the end of the file, and still in a jtag mode, close the jtag mode.
  if @in_jtag
    "#{Origen.root!}/lib/origen_debuggers/p_e/jtag_end.txt"
  else
    "#{Origen.root!}/lib/origen_debuggers/p_e/none.txt"
  end
end

#on_createObject



111
112
113
114
115
116
# File 'lib/origen_debuggers/p_and_e.rb', line 111

def on_create
  set_timeset('default', 1_000_000)
  @pat_extension = 'mac'
  @comment_char = ';'
  @in_jtag = false
end