cancel
Showing results for 
Search instead for 
Did you mean: 

Measuring MIPS of a DSP function using systick

jjackbauer7
Associate III
Posted on May 20, 2013 at 15:39

Hi all,

I have a DSP function and I want to know how many MIPS does it consume.

I have used SYSTICK of STM32F2xx device (max frequency 120 MHz) to measure the number of cycles required and now I want  to convert to MIPS?

As an example, if I measure 15000 cycles and the device is running @ 120MHz. How many MIPS does it mean?

1 REPLY 1
Posted on May 20, 2013 at 16:11

A simpler solution might be to use DWT_CYCCNT to measure cycles that specific code sequences take.

1 cycle would indicate 120 MOPS (million operations per second)

120 cycles would indicate 1 MOPS throughput

15000 cycles would indicate 8000 OPS

ie mops = 120 / cycles

You'd need to look at the code to make a determination about how many instructions are executed. Things like loads, stores, division will take more than a single cycle.

If ''MIPS'' is a benchmark number and correlates to a different machine, or architecture, you'll need to analyze that benchmark code and understand the fudge factor for the ''unit'' of work.
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..