I have both Abatron BDI2000 and Ronetix PEEDI. Since I purchased the
PEEDI I don't use the BDI...
PEEDI is much faster, it has all the features that BDI has and many
other features.
Reply by Tom Walsh●July 31, 20062006-07-31
jsm09a wrote:
> I am in the market for a reliable JTAG unit,
preferrably with ethernet,
> capable of thorough debugging on LPC2103 and PXA270.
>
> Anyone have an opinion on the following possibilities:
> - Embest UNetICE
> - Ronetix PEEDI
> - ARIUM LC-500
> - Abatron BDI1000/BDI2000
> I can highly recommend the Abatron BDI2000, it is a great tool! I
bought mine almost a year ago and have no regrets. It is "pricey", but,
I feel that you do get what you pay for..
I've used it on a board with two ARM cores: LPC2106 and LPC2138. I
daisy chained the TDI + TDO lines, run the others in parallel and can
launch two instances of Insight to simultaneously debug both cores.
Recently, I had a need to describe a single LCP2136 core running:
1. a Bootloader + Application
2. Application code only (no Bootloader).
At first, I would have differing config files for each situation that I
wanted to debug / program the Flash for. Then, I realized that I could
describe these configurations as if they were multiple cores, but the
SCANPRED was 0 (now other cores in the chain). The result has been I
now have Bootloader as core #1 (port 2001), Application as core #0 (port
2000) and when I only have the Application in Flash as core #2 (port 2002).
Now, I can simply switch to the core region description I want with a
simple command, erase and program that area. I can also run seperate
instances of Insight and debug the program(s) from RESET, through the
Bootloader and into the Application.
This is what my BDI2000 config for that looks like:
[HOST]
IP 192.168.200.1
FORMAT ELF
LOAD MANUAL
DUMP bin/dump.bin
DEBUGPORT 2000
#0 PROMPT MM(0)-HIGH>
#1 PROMPT MM(1)-LOADER>
#2 PROMPT MM(2)-ONLY>
[TARGET]
CLOCK 4 ;JTAG clock 1MHz ( < 1/6 of CPU clock )
WAKEUP 100
#0 CPUTYPE ARM7TDMI
#0 RESET HARD 500 ;apply 500 ms RESET
#0 STARTUP RESET ;let monitor run for 500 ms
#0 ENDIAN LITTLE ;memory model (LITTLE | BIG)
#0 BREAKMODE HARD ;only two hardware breakpoints available.
#1 CPUTYPE ARM7TDMI
#1 RESET HARD 500 ;apply 500 ms RESET
#1 STARTUP RESET ;let monitor run for 500 ms
#1 ENDIAN LITTLE ;memory model (LITTLE | BIG)
#1 BREAKMODE HARD ;only two hardware breakpoints available.
#2 CPUTYPE ARM7TDMI
#2 RESET HARD 500 ;apply 500 ms RESET
#2 STARTUP RESET ;let monitor run for 500 ms
#2 ENDIAN LITTLE ;memory model (LITTLE | BIG)
#2 BREAKMODE HARD ;only two hardware breakpoints available.
#0 FILE bin/micromux.bin
#0 FORMAT BIN 0x18000
#0 ERASE 0x0007C00 BLANK ;erase sectors 10..14 of LPC2136
#1 FILE bin/micromux-resident.bin
#1 FORMAT BIN 0
#1 ERASE 0x00001FF BLANK ;erase sectors 0..9 of LPC2136
#2 FILE bin/micromux.bin
#2 FORMAT BIN 0
#2 ERASE 0x0007FFF BLANK ;erase sectors 0..14 of LPC2136
[REGS]
FILE reg2100.def
*=================== snip =========================BTW, I develop using:
bintools-2.16.1, gcc-4.0.2, insight-6.4 and
newlib-1.13, on a linux host.
TomW