How can I calculate processing speed of microcontroller

I need a microcontroller that can process minimum 2mb data per second. How do I determine what processors will be able to do this?

Also how can I calculate the processing speed in per second of any microcontroller?

I am very much scared with my college project and I need help.

• When you say "process", do you mean the speed at which it can make calculations on data that's in-memory, or the speed at which it can read from and write to its inputs and outputs?
– Ian
Apr 8 '13 at 15:29
• I mean the reading and writing part to its input and output Apr 8 '13 at 15:44
• @Frank, it would make a huge difference if that is 2 mega-bytes (2MB) or 2 mega-bits (2Mb). Please edit your answer. Apr 8 '13 at 16:13
• Frank, beside b standing for bit and B for byte, observe that m is used for milli (or, 1/1000) and M for mega (1000000). Apr 8 '13 at 17:40
• @jwpat7: For correctness, I should point out that when talking about binary values (i.e., bytes), the M denotes $2^{20} = 1,048,576$ bytes. (More info: Megabyte and Kilobyte).
– Ian
Apr 9 '13 at 12:48

You need to consult the specifications. There is absolutely no other way unless you buy the micro, code it and run tests.

So first, you need to define what exactly processing means. Best way to do it is to write the program that does the processing, in assembly. Let's take a hypothetical program in a hypothetical assembly:

store portB, R1

First thing you need to know is how many cycles it takes the microcontroller to execute this code. Again, you need to consult the data sheet of the micro. Hypothetical numbers:

• Store takes 2 cycles