[sdiy] a provoking question about time

brianw brianw at audiobanshee.com
Sun Jun 26 22:11:01 CEST 2022

On Jun 24, 2022, at 5:38 AM, Roman Sowa <modular at go2.pl> wrote:
> Brian W said some valid points about proper programmer and robust eMMC.
> Why would you assume that I'm not using ICD3 (and ICD2 before that)?

Last time I brought up the topic of ICD3 in a random online forum, some people were violently opposed to spending $300 on a programmer. I must have been hanging out in the wrong online fora. ;-)  I just thought it was important to stress the use of proper programming tools in case folks were only familiar with the cheap debugger/programmers. Nothing personal !

> And I'd love to sacrifice part of memory for error correction, but PICs do not provide anything to do that.

Exactly, Your question makes me wonder whether designing with PIC is appropriate for a product that is intended to last a long time. Compared to the range of features available in other processors, the PIC seems rather limited. Of course, that affects the price, so longevity may be another tradeoff between cost and quality.

Just for completeness, it's worth considering that error correction has a down side - at least when it's handled by the memory device itself. Modern eMMC chips that have internal firmware, error correction, wear leveling, periodic re-writes of aging data, and Secure Boot are potentially susceptible to malware or security flaws in the memory chip itself. A simple Flash device without its own firmware is "more secure" in the sense that it's not running code. A modern eMMC can solve a lot of problems, where compatible, but that comes with a cost of being vulnerable to an additional attack vector. ... if that's something you're concerned about.

> Booting from external memory of any kind is something I considered too, but I don't think I will migrate to higher end ARM chips ever.

I am not a fan of the higher end ARM Cortex-A processors - at least not for the kinds of products that I enjoy designing - but I have worked with them enough to notice that they have very robust boot and upgrade features. These high-end chips are probably overkill for a lot of products that they might be used in. But it's good to be familiar with what they're capable of.

I tend to prefer the ARM Cortex-M processors because they feel appropriately sized for the designs I work on. However, even the Cortex-M is limited with regard to support for external memory (at least the models I've used).

> Although I've used booting from external memory in the past, that was the only way to go with DSP.

Yes. I've designed with the TMS320 that has a ROM bootloader supporting several different types of external memory interfacing. Obviously, DSP is not the correct choice for every design, but the boot model is a good one to reference.


More information about the Synth-diy mailing list