---------- Forwarded message ---------- From: Franck Jullien <[email protected]> Date: 2012/11/3 Subject: Re: [OpenRISC] [Openrisc] Problems with debbuging on de0_nano board To: Marek Czerski <[email protected]> Cc : Matthew Hicks <[email protected]>, [email protected], [email protected]
2012/11/3 Franck Jullien <[email protected]>: > 2012/11/2 Marek Czerski <[email protected]>: >>> This is a known problem, a (dirty) workaround is to just disable the >>> CRC checking: >> >> ok, it helped. >> >>> >> What I can see when using the simulation with GDB over VPI (and the >>> >> claasic dbg_if) is that the instruction replaced by the TRAP (for sw >>> >> breakpoint) never gets executed (see waveform). >> >> >> I can confirm this behavior both in simulation (dbg_if + VPI) and on >> hardware with adv_dbg_if + adv_jtag_bridge. >> >>> >>> >> I did the same test on my hardware platform with openOCD + adv_dbg_if >>> >> and r6 gets updated.... >> >> >> With adv_dbg_if + OpneOCD it works as Franck said. >> >> It seems that the issue is related with the software since adv_jtag_bridge >> can properly sigle-step through jump instructions and OpenOCD can properly >> handle software breakpoints. >> >> -- >> mgr inż. Marek Czerski >> +48 696 842 686 >> > > One of the problem is showed on waveforms I posted. The instruction > trapped doesn't get executed after the breakpoint is removed. > > I have a fix almost ready. I checked for a debug unstall condition > plus a trap condition in or1200_du (dbg_stall && |except_stop). Then, > when this event occur, I flush the entire pipeline (in or1200_ctrl) > and set the pc to npc in or1200_genpc (which is equal to the trapped > instruction address). > > Franck. I have a fix ready. I works on VPI simulation. I don't know if it's a good or the right way to fix this but at least it seems to work.... If someone could give it a try on an hardware platform that would be great (because I'm not home this week end). Franck. I think we should apply this patch as it is only concerning the debug part of or1200 and it solves the problem. Marek and I have been using it for some times and didn't find any side effect. (should I fill a bug in bugzilla or it is too late now ?) Franck.
stepi_after_bkpt.patch
Description: Binary data
_______________________________________________ OpenRISC mailing list [email protected] http://lists.openrisc.net/listinfo/openrisc
