Re: Atmega128 or MSP430 for low power, decent performance?



"David Brown" <david@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> skrev i meddelandet
news:45045139$0$19464$8404b019@xxxxxxxxxxxxxxxxxx
steve wrote:
Ulf Samuelsson wrote:

Most AVR instructions will take 1 clock cycle

with the unrealistic assumption all the dataspace you need can be
accomodated by the 32 registers, yes (and the same can be said of the
MSP430) but otherwise 2 clock cycles is much more realistic


Microcontroller manufacturers always seem to be very optimistic about
claims like "most instructions will take 1 clock cycle". Perhaps by
"most" they mean most in the instruction code space, or perhaps most
different opcode names - it certainly never seems to refer to most
instructions in real programs (either in terms of the code written, or in
terms of the instructions executed).

Yes, that is exactly what it measn.
You cannot judge how many cycles it uses in an application program
since no application prgrams are alike. Some try to measure instructions per
clock
using the Dhrystone benchmark, but this assumes the compiler has
not been tweaked for this specific benchmark.

And of course, it is virtually irrelevant how many clock cycles each
instruction takes - what *is* relevant is how many clock cycles common
operations take. If an operation such as moving a 16-bit integer from
memory to memory takes a single 4-clock instruction on the msp430, and 6
instructions taking 10 clocks (estimated out of my head) on the AVR, then
that's the numbers that are important for that sort of code, and it
doesn't matter that the msp430 takes more clocks per instruction. For
other types of code, the AVR may be faster.

Even that is a bot on the low level.
You need to check the complete application and also there could be features
in the peripherals which more than compensate for
any drawbacks in the core itself.


Will the part do the job within the power budget.
Can I meet the EMI goals.
Do I need extra performance/code space to allow for future upgrades?
Once this and a couple of
--
Best Regards,
Ulf Samuelsson
This is intended to be my personal opinion which may,
or may not be shared by my employer Atmel Nordic AB


.



Relevant Pages

  • Re: How to compare computing power of microcontrollers?
    ... And add up the number of clock cycles it would take each ... >instructions you are using aren't pipelined well your just burning up ... IIRC, the AVR has an 8 x 8 multipler, wheras the ARM core has a wider ... time you assemble all the partial products with the AVR, ...
    (comp.arch.embedded)
  • Re: Iyonix instruction timings and RAM speed results
    ... I get 166/127 for main RAM and 5.7/62 for PCI Video memory on my original ... unrolled LDM/STM instructions for these, ... "add floating point" instruction takes almost 200 clock cycles, ... MOV R0,R0,LSL #1 ...
    (comp.sys.acorn.misc)
  • Re: Clock cycles list - help
    ... N = Amount of instructions used, ... Intel got similar lists, but I also missed SSE-timing there. ... but it used latency values only. ... containing the clock cycles of each mnemonic, ...
    (alt.lang.asm)
  • Re: Clock cycles list - help
    ... N = Amount of instructions used, ... but it used latency values only. ... Those lists are a bit confusing.. ... containing the clock cycles of each mnemonic, ...
    (alt.lang.asm)
  • Re: Atmega128 or MSP430 for low power, decent performance?
    ... Perhaps by "most" they mean most in the instruction code space, or perhaps most different opcode names - it certainly never seems to refer to most instructions in real programs. ... it is virtually irrelevant how many clock cycles each instruction takes - what *is* relevant is how many clock cycles common operations take. ... If an operation such as moving a 16-bit integer from memory to memory takes a single 4-clock instruction on the msp430, and 6 instructions taking 10 clocks on the AVR, then that's the numbers that are important for that sort of code, and it doesn't matter that the msp430 takes more clocks per instruction. ...
    (comp.arch.embedded)