I am a newbie when it comes to Cypress cortex M0 and ARM chips in general. The chip I am using supports SWD. I only know the basic of SWD like IO pins required for it.

Does ARM support Interchangeability of SWD programmers? For e.g. can I use this programmer for programming any ARM chip like CY8C4245AXI. If yes, which programming software needs to be used?

Any kind of help would be highly appreciated.

  • \$\begingroup\$ You should absolutely get a miniProg3 from cypress when working with cypress chips. It will auto-select some parameters like SWD drive strength (1V8/3V3/5V) depending on the chip connected to it, and will give you warnings if you try to use it outside of spec. You will rarely get that from different manufacturers. My STM programmer does not like to talk to most of my cypress chips, it doesnt recognize the recent models. \$\endgroup\$ – markus-nm Feb 25 at 13:46

The SWD protocol is device agnostic, and in fact there are only a small number of variants of the SWD to internal memory-mapped bridge components. The protocol provides an abstracted mechanism to perform accesses to on-chip components, and also a discovery mechanism to identify which components are present.

This means that all SWD debug hardware should be able to interface to all modern Arm chips, providing they operate at the correct voltage.

The external device also determines the clock speed, so there is no restriction about using a low performance adaptor with a high clock speed device.

Where you can observe issues is the software driving your debug probe. Even assuming the software has support for the probe, your software will need to recognise the target processor and sufficient of it's memory map to function. For example, the debug port access transfers to a Cortex-M and a Cortex-A are not identical (even though they follow standard templates). The ID register values for a Cortex-M33 won't be recognised by 3 year old software, etc.

You can also find debug harwdare or software which is locked to specific device types or manufacturers, but they still use the standard protocol.

  • \$\begingroup\$ Even if it is true any SWD probe will speak the same protocol, not all probes support all vendor-specific init sequences (and Cypress is one of the manufacturers with custom "acquire" sequence). Moreover, software needs to support SoC-specific things like init and flash algorithms. \$\endgroup\$ – Nipo Mar 1 at 20:48
  • \$\begingroup\$ This is pretty clearly true for low level adapters like a CMSIS-DAP or FTDI MPSSE, but less clear for high level ones. So for example if someone has experience using an ST-Link (which has at least mid-level automation) with something other than the well known cases of ST, Gigadevices or Nordic that would be worth specific statement. \$\endgroup\$ – Chris Stratton Mar 8 at 2:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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