https://lists.berlios.de/pipermail/openocd-development/2010-October/016725.html
Øyvind Harboe wrote on Tue Oct 19 2010,
> As a start for debugging delay issues, type "help jtag_flush_queue_sleep".
>
> Plot the performance of 0, 10 and 100ms of an operation. It should allow
> you to guestimate how much of the performance hit is due to long latencies."

Here are the results. Does this mean that "jtag interface latency does play a
big part in performance"? 1ms latency does not play a big part here. But
from 2ms onwards, the performance dropped significantly.

Delay            Flash write speed
0ms               17.544 KiB/s
1ms               17.370 KiB/s
2ms               10.304 KiB/s
5ms                6.457 KiB/s
10ms              3.916  KiB/s
100ms            0.487KiB/s (seems to take forever)

Tested under Ubuntu 11.04, EK-LM3S1968 demo board, JtagKey2
(FT2232H based high speed USB interface).

mcuee@Ubuntu:~/Desktop/build/openocd/lm3s1968$ openocd -f luminary_jtagkey2.cfg
Open On-Chip Debugger 0.5.0-dev-00956-ge7269e3-dirty (2011-07-17-07:47)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.berlios.de/doc/doxygen/bugs.html
Info : only one transport option; autoselect 'jtag'
500 kHz
Info : max TCK change to: 30000 kHz
Info : clock speed 500 kHz
Info : JTAG tap: lm3s1968.cpu tap/device found: 0x3ba00477 (mfg:
0x23b, part: 0xba00, ver: 0x3)
Info : lm3s1968.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : accepting 'telnet' connection from 4444
500 kHz
cortex_m3 reset_config sysresetreq
Info : JTAG tap: lm3s1968.cpu tap/device found: 0x3ba00477 (mfg:
0x23b, part: 0xba00, ver: 0x3)
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x0001e340 msp: 0x20000200
3000 kHz
flash 'stellaris' found at 0x00000000
...

Open On-Chip Debugger
> init
> reset halt
500 kHz
cortex_m3 reset_config sysresetreq
JTAG tap: lm3s1968.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part:
0xba00, ver: 0x3)
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x0001e340 msp: 0x20000200
> jtag_khz 3000
3000 kHz
> flash probe 0
flash 'stellaris' found at 0x00000000
> help jtag_flush_queue_sleep
jtag_flush_queue_sleep [sleep in ms]
      For debug purposes(simulate long delays of interface) to test
      performance or change in behavior. Default 0ms. (command valid any
      time)
> flash write_image erase demobig.bin
auto erase enabled
wrote 262144 bytes from file demobig.bin in 14.591845s (17.544 KiB/s)
> jtag_flush_queue_sleep
jtag_flush_queue_sleep [sleep in ms]
in procedure 'jtag_flush_queue_sleep'
> jtag_flush_queue_sleep 10
> flash probe 0
flash 'stellaris' found at 0x00000000
> flash write_image erase demobig.bin
auto erase enabled
wrote 262144 bytes from file demobig.bin in 65.373260s (3.916 KiB/s)
> jtag_flush_queue_sleep 100
> flash write_image erase demobig.bin
auto erase enabled
wrote 262144 bytes from file demobig.bin in 525.208435s (0.487 KiB/s)
> jtag_flush_queue_sleep 1
> flash write_image erase demobig.bin
auto erase enabled
wrote 262144 bytes from file demobig.bin in 14.737774s (17.370 KiB/s)
> jtag_flush_queue_sleep 2
> flash write_image erase demobig.bin
auto erase enabled
wrote 262144 bytes from file demobig.bin in 24.845686s (10.304 KiB/s)
> jtag_flush_queue_sleep 5
> flash write_image erase demobig.bin
auto erase enabled
wrote 262144 bytes from file demobig.bin in 39.648533s (6.457 KiB/s)





-- 
Xiaofan
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to