> Say i am designing a embedded wireless system. i have my specs of the
> protocol which works at a particular rate. say it is a low data rate
> network protocol.
>
> Say i implement the code for the stack. Now i need to decide on a
> microcontroller for the project. How do i look into the timing
> constaints. Say i mean how do i decide if i need a general CISC
> microcontroller, or should i need a RISC or a AVR RISC controller.
Here's what I would do:
As far as timing goes, do a rough estimate of the instruction rate
required for the project. Use an average instructions/second value for
possible configurations to see if each is obviously adequate, possibly
adequate, or obviously inadequate. Discard the obviously inadequate
choices.
Among the remaining candidates, you probably want to look at other
parameters, such as built-in peripherals, built-in memory, cost, ease of
development, etc. Rank the candidates. If any of the possibly adequate
solutions are in serious contention, do a further evaluation of them,
probably by coding a critical timing section to get a better estimate.
Good design practice would be to allow a margin for unanticipated code
or future additions. I would like to see at least 20% margin, but
normally 50% or more. Bear in mind that the closer you get to a
resource limit (timing, RAM space, code space, etc.), the more overhead
is spent coping with that limit. I could tell stories...
You may need to evaluate memory space in the same manner.
In general, if your application is not critically cost sensitive, it is
better to choose obviously adequate solutions for ease and speed of
development. Remember that if this is a commercial project and it
becomes successful, you may be maintaining and enhancing it for a long
time. Plan accordingly.
Thad
Reply by pachu●September 1, 20042004-09-01
hi all gurus,
I have a doubt about how one chooses a microcontroller
for a particular project.
Say i am designing a embedded wireless system. i have my specs of the
protocol which works at a particular rate. say it is a low data rate
network protocol.
Say i implement the code for the stack. Now i need to decide on a
microcontroller for the project. How do i look into the timing
constaints. Say i mean how do i decide if i need a general CISC
microcontroller, or should i need a RISC or a AVR RISC controller. On
what basis do i decide the above.
thanks to all in advance
pachu