Multi-Port Embedded Debugger Agent for Heterogeneous Multi-Core Asip Debug
Xiong Bing,Wang Yanlin,Li Dong
DOI: https://doi.org/10.1109/icemi.2015.7494306
2015-01-01
Abstract:In the past several years, we are all the witness of complex multi-core processors' growing. In the meanwhile, more and more engineers and researchers dedicate to multi-core processor program development. Debug isan essential part in most of program development and efficient debugging can fix the bugs in development more quickly.It is hard for a GDB session to debug multiply cores at the same time like the traditional debugging way, especially, debugging heterogeneous multi-core processor. This paper puts forward a multi-port embedded debugger agent for heterogeneous multi-core ASIP (Application Specific Instruction-set Processor) debugging. The multi-port debugger agent will bind numbers of IP ports and each port corresponds to a core in ASIP, therefore each debugger host can debug corresponding core independently and remotely via TCPat the same time. The construction of debugger agent includes 3 sections: RSP processing part, monitorand JTAG (Joint Test Action Group)[1]driver.RSP processing and monitor are made up with multiply threads. Monitor is a single thread, and the RSP processing part's thread number should be the same as the core number which you want to debug. The communication between debugger agent and debugger host is based on RSP, which is mean debugger agent is compatible with GDB, the most popular C and C++ debugger.Each core in ASIP is independent, that means it has its own program memory, data memory and register memory. Meanwhile, every core can access others' memories for data sharing.Every debugger host can load binary program, setting breakpoints, single stepping, reading data from register and memory and monitoring status of the core etc. for the core it supported.User can debug heterogeneous multi-core ASIP like debugging other general purpose processor. Multi-port debuggeragent is simple, reliable and efficient method for debugging heterogeneous multi-core ASIP.