0
\$\begingroup\$

I am debugging an H8S MCU in Renesas High Performance Embedded Workshop 4 with the attached E10A emulator, and find it's very slow when stepping through code because it keeps reflashing the chip between some lines, but not all.

I could understand it reflashing if I change breakpoints, but not when there are no changes at all.

This is what the debug panel shows after a a bit of stepping, most of the flashing are after using F10 just to go the next line.

Each reflashing takes up to 10 seconds.

RUNNING
BREAK KEY
 Flash memory writing ... 
 Flash memory write end 
RUNNING
BREAK POINT
 Flash memory writing ... 
 Flash memory write end 
RUNNING
 Flash memory writing ... 
 Flash memory write end 
BREAK POINT
 Flash memory writing ... 
 Flash memory write end 
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
 Flash memory writing ... 
 Flash memory write end 
STOP ADDRESS
 Flash memory writing ... 
 Flash memory write end 
RUNNING

I'm sure at one point I got it to stop doing this and it just stepped instantly, but I seem to have lost the setting.

Before I spend hours trying to solve it, I wondered if anyone knows if this is just how it is?

\$\endgroup\$

1 Answer 1

1
\$\begingroup\$

There are some options which looked likely described on Page 127 of the manual, under menu: Setup > Emulator > System.

I changed Step over option to No programming and initially it didn't seem to help, but now it seems much faster.

It still flashes occasionally, e.g. when returning from some subroutine, but not on every line anymore - it's much better!

enter image description here

enter image description here

I now see in the debug pane:

RUNNING
BREAK POINT
 Flash memory writing ... 
 Flash memory write end 
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
SUBROUTINE END
SUBROUTINE END
STOP ADDRESS
SUBROUTINE END
STOP ADDRESS
STOP ADDRESS
STOP ADDRESS
SUBROUTINE END

etc.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.