Tuesday, December 24, 2013

Gailser GRMON

grmon可以將elf的執行檔upload到LEON2/3 platform的target。
PC端可以是COM port,Target端是DSU。

啟動用法:
  • 一般啟動:grmon
  • 啟動linux(with MMU):grmon -nb
  • -nb意思是當發生資料錯誤時grmon不中斷程式,比方說linux所發生的tt=0x09
  • 當作GDB server,可供GDB連接:grmon -gdb
  • target被連上之後,target會被reset
  • target被連上之後,被設定的register有
    • mcfg1 0x80000000
    • mcfg2 0x80000004
    • mcfg3 0x80000008
    • timer 1 0x80000040, 0x80000044, 0x80000048, 
    • Prescaler 0x80000060, 0x80000064
    • UART 1 0x80000070, 0x80000074, 0x80000078, 0x8000007C,

GRMON命令:
  • mem ADDRESS:讀取address的資料
  • wmem ADDRESS VALUE:將VALUE寫入ADDRESS中
  • batch FILE:執行BATCH檔
  • load FILE:將elf格式的FILE,upload到LEON2/3 target中
  • run:根據load所上載的程式,從ELF中code區段開始執行
  • continue:根據PC所在連續執行
  • step:單步執行
  • hbreak ADDRESS:設置中斷點
  • break:list出所有中斷點
  • del NUM:取消編號NUM的中斷點
  • sys info:list出SOC的資料
  • mcfg1:讀寫MCG1值
  • mcfg2:讀寫MCG2值
  • mcfg3:讀寫MCG3值
  • reg:dump register資料

GRMON,GDB結合:
  • grmon server(架設IP 192.168.1.10)中下"grmon -gdb"命令
  • gdb client中下"gsb --debugger sparc-linux-gdb"
  • (GDB)file ELF
  • (GDB)target extended-remote 192.168.1.10:2222
  • (GDB)load
  • (GDB)run
  • (GDB)monitor GRMON_COMMAND:於GDB中執行GRMON的命令

No comments:

Post a Comment