Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Re: AW: [lpc2100] performance problems

2004-02-12 by Bogdan Marinescu

Thumb mode is perfect for speed optimization for chips with a 16-bit internal and/or external memory bus. In this mode ARM instructions would require two memory accesses and thus ARM mode would be quite slow. However, this is not the case with the LPC, so I really can't see how Thumb mode can help you speed un things in this case. Please someone correct me if I'm missing something.

S\ufffdren_Rennecke <rennecke@...> wrote:Yes it was my aim.  I read it here:
http://www.nohau.com/appnotes/arm-thumb.pdf

Correct me if I misunderstood, but it seems that you're compiling in
thumb mode in order to obtain a speed gain. This is wrong. Thumb mode
will decrease the size of your application but will reduce its
performance. Run everything in ARM mode with full optimizations; if this
fails, write the ISR in assembler. If this still fails you'll have to
use a higher clock speed.

S\ufffdren_Rennecke <rennecke@...> wrote:
Hi,

What possibilities, are there to increase the performance. 
I need to process many instructions at my UART
interrupt-service-routine. So I get problems at higher Baud rates. 
I use the 14,745 MHz quartz, and don\ufffdt want to use the PLL (to save
current); pclk = cclk. 
I compiled the called functions in thumb mode, and optimized the output
with level 3. 
I reached a better performance, but are there other ways to get higher? 

Thanks S\ufffdren






---------------------------------
Yahoo! Groups Links

   To visit your group on the web, go to:
http://groups.yahoo.com/group/lpc2100/
  
   To unsubscribe from this group, send an email to:
lpc2100-unsubscribe@yahoogroups.com
  
   Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service. 




---------------------------------
Do you Yahoo!?
Yahoo! Finance: Get your refund fast by filing online

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.