Author Topic: Programming/Debugging ARM Processors  (Read 8073 times)

0 Members and 1 Guest are viewing this topic.

Offline olsennTopic starter

  • Frequent Contributor
  • **
  • Posts: 993
Programming/Debugging ARM Processors
« on: March 15, 2012, 06:58:22 pm »
I'm just curious to know if ARM processors; or more precisely, a TI OMAP 4430 with a built in ARM core, requires a specialized programmer/debugger (such as a PicKit for Microchip, or AVR Dragon for Atmel), and if so, what is it called? Is it standardized for all ARM processors, or does each implementation of the architechture require a specialized device for programming?

The documents I've seen just say that it uses JTAG, but is JTAG really standard? I have an AVR Dragon as well as an AVR ONE! which both do JTAG for Atmel microcontrollers, but could I actually use these to program the TI OMAP processor as well?
 

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1670
  • Country: us
Re: Programming/Debugging ARM Processors
« Reply #1 on: March 15, 2012, 09:21:41 pm »
J-TAG is the standard for debugging ARM processors, including the ARM 9 used in the OMAP.

Many companies make J-TAG units, and, for the most part, are compatible with all ARM processors and many ARM development environments. You should check with the manufacturer to be sure it supports a particular part, though.

The AVR ONE! doesn't currently support ARM (Atmel has the SAM-ICE for this, which is a re-branded Segger J-LINK). I've heard rumors that since Atmel is moving towards Amtel Studio 6, which supports both AVR and ARM development, they are working on ARM support for the AVR ONE!
Complexity is the number-one enemy of high-quality code.
 

Offline dgpalmer

  • Newbie
  • Posts: 2
  • Country: jp
Re: Programming/Debugging ARM Processors
« Reply #2 on: March 20, 2012, 07:24:28 am »
I'm just curious to know if ARM processors; or more precisely, a TI OMAP 4430 with a built in ARM core, requires a specialized programmer/debugger (such as a PicKit for Microchip,

With the bigger SoC chips (i.e. those that can run linux) they usually have a bootloader burnt into internal ROM that can load from various types of flash, SD and sometimes have the ability to download code via USB into memory (Atmel's SAM-BA for example).

Quote
The documents I've seen just say that it uses JTAG, but is JTAG really standard? I have an AVR Dragon as well as an AVR ONE! which both do JTAG for Atmel microcontrollers, but could I actually use these to program the TI OMAP processor as well?

JTAG for ARM is a standard. The pinouts (I think there are only two different ones at this point) etc are common across boards. You can build a JTAG dongle yourself and run OpenOCD and debug most ARM based chips. Unlike Renesas etc ARM publishes all the details that are needed to write debuggers etc so there are decent free tools like OpenOCD. You can go totally open source with ARM development :)
 

Offline graynomad

  • Regular Contributor
  • *
  • Posts: 54
  • Country: au
Re: Programming/Debugging ARM Processors
« Reply #3 on: March 28, 2012, 10:19:31 am »
Quote
I've heard rumors that since Atmel is moving towards Amtel Studio 6, which supports both AVR and ARM development, they are working on ARM support for the AVR ONE!
I downloaded AVS6 the other day, it now supports their ARMs, I didn't check but I assume that the SAM-ICE is supported by it as well.

I also read (on AVR Freaks I think) that the AVR ONE! will support ARMs before long.

_______
Rob
Graynomad, AKA Rob Gray www.robgray.com
 

Offline Gall

  • Frequent Contributor
  • **
  • Posts: 310
  • Country: ru
Re: Programming/Debugging ARM Processors
« Reply #4 on: March 28, 2012, 12:23:37 pm »
OpenOCD + gdb works well for most of the ARM chips. I used this combination to debug Xenomai kernel on S3C2440.
The difficult we do today; the impossible takes a little longer.
 

Offline Bored@Work

  • Super Contributor
  • ***
  • Posts: 3932
  • Country: 00
Re: Programming/Debugging ARM Processors
« Reply #5 on: March 28, 2012, 12:24:57 pm »
I also read (on AVR Freaks I think) that the AVR ONE! will support ARMs before long.

You have to be careful with promises from Atmel. They have a nasty habit of breaking them.
I delete PMs unread. If you have something to say, say it in public.
For all else: Profile->[Modify Profile]Buddies/Ignore List->Edit Ignore List
 

Offline rsjsouza

  • Super Contributor
  • ***
  • Posts: 5986
  • Country: us
  • Eternally curious
    • Vbe - vídeo blog eletrônico
Re: Programming/Debugging ARM Processors
« Reply #6 on: March 28, 2012, 03:40:03 pm »
Olsen,
I'm just curious to know if ARM processors; or more precisely, a TI OMAP 4430 with a built in ARM core, requires a specialized programmer/debugger (such as a PicKit for Microchip, or AVR Dragon for Atmel), and if so, what is it called?
Depending on what core you want to access, you can use an ARM debugger - the trick is to find the organization of the cores properly (more on this below)
The JTAG debuggers from TI are called XDS (XDS100, XDS510, XDS560...)

Is it standardized for all ARM processors, or does each implementation of the architechture require a specialized device for programming?
As mentioned before, ARM publishes the protocol to communicate with its cores, but what varies among manufacturers is the internal routing of the several cores (think of it as an ethernet comprised of switches and IP addresses). OMAP4 has dual A9's, some M3's and a DSP, and I am pretty sure the internet has information on how to use an ARM debugger with OMAP4.

The documents I've seen just say that it uses JTAG, but is JTAG really standard? I have an AVR Dragon as well as an AVR ONE! which both do JTAG for Atmel microcontrollers, but could I actually use these to program the TI OMAP processor as well?
"Plain JTAG" is more an electrical/signaling standard, but the protocol that runs on top of it varies greatly from supplier/core. That and the routing mentioned before prevent (or make it difficult) to use a JTAG debugger for one manufacturer in another device. 

--Rafael

Vbe - vídeo blog eletrônico http://videos.vbeletronico.com

Oh, the "whys" of the datasheets... The information is there not to be an axiomatic truth, but instead each speck of data must be slowly inhaled while carefully performing a deep search inside oneself to find the true metaphysical sense...
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf