This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Timing differences before / after starting scheduler


On Sun, 22 Aug 2010, Tim Jaacks wrote:
Polling status/data from the FIFO generates quite a bit of traffic
on the chip's bus - I don't know how exactly the APB and AHB/APB
bridge work. I mean the speed you are demanding is maybe
too much for the worst case that can happen on the bus
(arbitrations etc). Add to that that you probably need
an interrupt to tell you there is first data, interrupt latency
and driver reaction time - maybe this is too much for a real
application.

I think for this case the DMA is surely a better idea.

See also http://permalink.gmane.org/gmane.comp.hardware.arm.lpc2100/49688 -
someone had problems even using the DMA ...

Why this runs more 3 times slower if there is nothing but
this thread running with disabled interrupts, I have no idea...


Thanks very much for the link, that was very interesting to read!
Seems as if using DMA is the only practical way to get the interface running at that high speed.


Anyway, I still find it confusing that the actions take more time when the scheduler is started. If anyone has an idea, why this might be the case, please reply on this thread. I will be very thankful.

Hi


Silent guess. May be that is idle's thread "job" on lpc targets. By default
cdl_option CYGHWR_HAL_ARM_LPC24XX_IDLE_PWRSAVE is *ON* and that stops the
processor clock in the idle loop, try to turn the option OFF and rebuild
eCos, though I'm not sure that can help with the issue.

Sergei

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]