Thanks for your comments regarding Microchip’s PIC® MCUs, and you are correct that newer parts are much lower power than prior parts.
For Sleep modes, Microchip offers up to three; Sleep, Low Voltage Sleep, and Deep Sleep. In every mode, PIC MCUs with eXtreme Low Power (XLP) Technology have multiple methods for waking from sleep, such as an RTC, a Watchdog Timer, Timers, and Interrupts.
Regarding work done per clock cycle, I would ask you to examine the number of instruction cycles listed in the MSP430 User Guide, SLAU056G, Page 3-71. Depending on the type of memory addressed, the instruction can be up to 6 cycles for a single instruction. By contrast, 90% of PIC24F instructions are 1 cycle, which is 2 clocks.
We tested this with the following C-code, which merely copies 32 bytes from one memory location to another:
LATBbits.LATB2 = 1;
LATBbits.LATB2 = 0;
At 4 MHz, this resulted in an execution time of 32 µs for PIC24F, and 80 µs for MSP430. The resultant energy saved by the PIC24F over the MSP430 is 2X!
We also ran side by side comparisons of PIC24F and MSP430 using industry-standard benchmarks and found that PIC24F executes code 1.5 to 5 times faster at a given frequency.
I would ask you to take a second look at Microchip’s PIC MCUs with XLP Technology and reevaluate our performance in a real-world example. I think you may find that Microchip looks a lot better than you first thought.
Disclaimer: I work for Microchip Technology Incorporated, which is committed to delivering outstanding value in low-power MCUs.
-Jason Tollefson, 16-bit Microcontroller Senior Product Marketing Manager, Microchip Technology Inc.
I don't know if this is still the case with newer parts, but it has been my experience in the past that Microchip parts looked good on paper, but sorely lacked when it came to actual real-world use. For instance, they would brag about ultra low power, but the only way to wake up the part would be to reset it. There were other things like that.
Also, uA/MHz is an irrelevant number when comparing PICs with MSP430s. PIC is the Pentium 4 of microcontrollers: it gets very little done per clock cycle. So it needs to run at much higher MHz to get the same amount of processing done as the extremely efficient MSP430 architecture. A comparison in uA/DMIPS, taking the difference in DMIPS/MHz into account when running real code, would be much more useful for real-world comparisons. I can guarantee the picture would not look pretty for Microchip.
Disclaimer: I do not work for either Microchip or TI, but I've compared the architectures in the past.
Blog Doing Math in FPGAs Tom Burke 23 comments For a recent project, I explored doing "real" (that is, non-integer) math on a Spartan 3 FPGA. FPGAs, by their nature, do integer math. That is, there's no floating-point ...