Which is the best CPU for CE and real-time ?
I know, that I really can't ask the question like that, since
it really depends on my application's needs (that's why
I'm looking for a comparison matrix in another post)
Nevertheless, maybe someone with intricate knowledge
about CE and certain CPUs can tell me that, e.g., CPU x
is inherently bad for real-time applications using CE, because
of the way interrupts work on CPU x, CE imposes more
overhead than it would on other CPUs.
For example, I noticed that on MIPS, x86 and SHx, you
have HookInterrupt() available to install your own ISR
for different interrupt sources (number of sources varies,
of course). On the other hand, on ARM720/920, SA-1100,
PPC403/821 there is no HookInterrupt(). Instead, there
is a OEMInterruptHandler() which gets called by the kernel.
Of course this reflects how interrupts work on a particular
CPU. Some CPUs only have one IRQ and therefore only one
vector. Other CPUs recognize multiple sources but still
have only one vector, etc. etc.
In other words, on some CPUs you are forced to have a
single shared ISR which has to figure out first, what the source
was. This takes time.....
(BTW: just because the default OAL on systems that have
HookInterrupt() available (e.g. CEPC/ODO) is written with just
a single ISR that does time-consuming query of the
interrupt controller, doesn't mean that's the only way to
Has anybody looked into these kind of things before?
Christian M. Netter
Assistant Research Engineer
United Technologies Research Center
411 Silver Lane, M/S 129-55
East Hartford, CT. 06108