Yahoo Groups archive

Lpc2000

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

Thread

How fast can it go?

How fast can it go?

2005-06-28 by markevans_1

Hi guys, 
I am finding it a little tricky to calculate how fast this chip can
actually go for my app. (Instruction cycles and MAM) 

I was wondering if anyone can tell me how fast it would execute this
code at 60MHz:

Read in 16 bits from port1
store in RAM
increment pointer
loop for N times

I basically want to buffer data as fast as possible in bursts. Ideally
at 20MHz.

How much faster would it execute in RAM. 
Could I make it faster by using an infinite loop and using a timer to
'break out' of the loop.

Mark.

Re: [lpc2000] How fast can it go?

2005-06-28 by Leon Heller

----- Original Message ----- 
Show quoted textHide quoted text
From: "markevans_1" <markevans@...>
To: <lpc2000@yahoogroups.com>
Sent: Tuesday, June 28, 2005 2:01 AM
Subject: [lpc2000] How fast can it go?


> Hi guys,
> I am finding it a little tricky to calculate how fast this chip can
> actually go for my app. (Instruction cycles and MAM)
>
> I was wondering if anyone can tell me how fast it would execute this
> code at 60MHz:
>
> Read in 16 bits from port1
> store in RAM
> increment pointer
> loop for N times
>
> I basically want to buffer data as fast as possible in bursts. Ideally
> at 20MHz.
>
> How much faster would it execute in RAM.
> Could I make it faster by using an infinite loop and using a timer to
> 'break out' of the loop.

The limiting factor is reading in the data from the port, it's very slow. 
You won't get anything like 20 MHz, 3 MHz max. at a guess.

Leon 



-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.323 / Virus Database: 267.8.2/29 - Release Date: 27/06/2005

---
[This E-mail has been scanned for viruses but it is your responsibility 
to maintain up to date anti virus software on the device that you are
currently using to read this email. ]

Re: [lpc2000] How fast can it go?

2005-06-28 by Robert Adsett

At 01:01 AM 6/28/05 +0000, markevans_1 wrote:
>Hi guys,
>I am finding it a little tricky to calculate how fast this chip can
>actually go for my app. (Instruction cycles and MAM)
>
>I was wondering if anyone can tell me how fast it would execute this
>code at 60MHz:
>
>Read in 16 bits from port1

That's the slow part.  Pin toggle rate is about 3.8MHz.  Narrowest part of 
that has a time of 118nS.  If you need to run any sort of handshaking slow 
that down by at least 2to 3x.

See a very early thread in this forum titled "Simple test program - is now 
instruction pipeline/VPB question" about Nov/Dec 2003.


>store in RAM
>increment pointer
>loop for N times
>
>I basically want to buffer data as fast as possible in bursts. Ideally
>at 20MHz.

Not going to happen without external support.

>How much faster would it execute in RAM.

Probably not enough faster to notice. The port access time is going to be 
noticeable,

>Could I make it faster by using an infinite loop and using a timer to
>'break out' of the loop.
>
>Mark.
>
>
>
>
>
>
>
>
>
>Yahoo! Groups Links
>
>
>
>

" 'Freedom' has no meaning of itself.  There are always restrictions,   be 
they legal, genetic, or physical.  If you don't believe me, try to chew a 
radio signal. "  -- Kelvin Throop, III
http://www.aeolusdevelopment.com/

Re: How fast can it go? The LPC2148 much faster :-)

2005-06-28 by philips_apps

Hi all,

today the LPC2148 was announced to the press. The preliminary DS has 
been posted on this group by our marketing recently. One very 
important improvement is the port access time. This is the first 
device that has the ports mapped to the local bus. This enables 4 
times faster toggle times. The max is now Processor clock divided by 
4. This will not get you to 20 Mhz but 15 is as close at it will ever 
get (without increasing the max. clock rate). 

May be 15 MHz is fast enough ?

We plan to have evaluation boards through IAR and Keil available 
second half of July.

Hope this helps, Robert

--- In lpc2000@yahoogroups.com, Robert Adsett <subscriptions@a...> 
wrote:
> At 01:01 AM 6/28/05 +0000, markevans_1 wrote:
> >Hi guys,
> >I am finding it a little tricky to calculate how fast this chip can
> >actually go for my app. (Instruction cycles and MAM)
> >
> >I was wondering if anyone can tell me how fast it would execute 
this
> >code at 60MHz:
> >
> >Read in 16 bits from port1
> 
> That's the slow part.  Pin toggle rate is about 3.8MHz.  Narrowest 
part of 
> that has a time of 118nS.  If you need to run any sort of 
handshaking slow 
> that down by at least 2to 3x.
> 
> See a very early thread in this forum titled "Simple test program - 
is now 
> instruction pipeline/VPB question" about Nov/Dec 2003.
> 
> 
> >store in RAM
> >increment pointer
> >loop for N times
> >
> >I basically want to buffer data as fast as possible in bursts. 
Ideally
> >at 20MHz.
> 
> Not going to happen without external support.
> 
> >How much faster would it execute in RAM.
> 
> Probably not enough faster to notice. The port access time is going 
to be 
> noticeable,
> 
> >Could I make it faster by using an infinite loop and using a timer 
to
> >'break out' of the loop.
> >
> >Mark.
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >Yahoo! Groups Links
> >
> >
> >
> >
> 
> " 'Freedom' has no meaning of itself.  There are always 
restrictions,   be 
> they legal, genetic, or physical.  If you don't believe me, try to 
chew a 
> radio signal. "  -- Kelvin Throop, III
> http://www.aeolusdevelopment.com/

Re: How fast can it go?

2005-06-28 by Karl Olsen

--- In lpc2000@yahoogroups.com, "markevans_1" <markevans@i...> wrote:
> I am finding it a little tricky to calculate how fast this chip can
> actually go for my app. (Instruction cycles and MAM) 
> 
> I was wondering if anyone can tell me how fast it would execute this
> code at 60MHz:
> 
> Read in 16 bits from port1
> store in RAM
> increment pointer
> loop for N times

I'd guess around 13/15 clocks (4.6 MHz / 4.0 MHz) when executing out 
of RAM/flash.

Generally for LPC2000 chips, MAM enabled, MAMTIM=3:

Simple ALU instruction: 1 clock
Load from RAM: 3 clocks
Store to RAM: 2 clocks
Load constant from flash: 3 or 5 clocks, depending on MAM hit/miss
Load from VPB peripheral (GPIO, timer etc.): 8 clocks
Store to VPB peripheral: 7 clocks
Jump (executing from RAM): 3 clocks
Jump (executing from flash): Normally 5 clocks, sometimes 3 clocks 
with short backward jumps
Skipped conditional instruction: 1 clock

The speed of loads/stores to the VIC is somewhere between RAM and VPB 
timings, I don't remember my exact measurements.


> I basically want to buffer data as fast as possible in bursts.
> Ideally at 20MHz.

I don't think this is possible, even with the coming LPC214x.  If a 
GPIO load takes 3 clocks in the new chips (philips_apps: do they?) 
and a RAM store takes 2, you will end up with at least 5 clocks, or 
12 MHz.  This is when you completely unroll your loop so there is no 
loop overhead.

For very short bursts, you can:

  ; r0 = IOPIN0
  ldr r1, [r0]
  ldr r2, [r0]
  ldr r3, [r0]
  :   :   :
  ldr r14, [r0]

and then store the registers afterwards.


> How much faster would it execute in RAM. 
> Could I make it faster by using an infinite loop and using a timer 
> to 'break out' of the loop.

Not much, you could save one clock for decrementing the loop 
counter.  You will gain more by unrolling the loop.  If you require 
completely uniform sampling times, you have to unroll the loop 
completely:

  ; r0 = IOPIN0
  ; r1 = RAM pointer
  ldr r2, [r0]
  strh r2, [r1, #0]
  ldr r2, [r0]
  strh r2, [r1, #2]
  ldr r2, [r0]
  strh r2, [r1, #4]
  ldr r2, [r0]
  strh r2, [r1, #6]
  ; etc etc

Karl Olsen

Re: How fast can it go? The LPC2148 much faster :-)

2005-06-28 by Karl Olsen

--- In lpc2000@yahoogroups.com, "philips_apps" <philips_apps@y...> 
wrote:

> today the LPC2148 was announced to the press. The preliminary DS
> has been posted on this group by our marketing recently. One very 
> important improvement is the port access time. This is the first 
> device that has the ports mapped to the local bus. This enables 4 
> times faster toggle times. The max is now Processor clock divided
> by 4. This will not get you to 20 Mhz but 15 is as close at it will
> ever get (without increasing the max. clock rate). 
> 
> May be 15 MHz is fast enough ?
> 
> We plan to have evaluation boards through IAR and Keil available 
> second half of July.

Can you do ISP through the USB device port, or do you still need a 
serial port for that?

Karl Olsen

Re: How fast can it go? The LPC2148 much faster :-)

2005-06-28 by dave_baker_100

Excellent! A semiconductor manufacturer listening to the users and 
then responding in a relatively quick time (taking into account tape 
out times & validation). This will help Philips to stay ahead of the 
competition. The only other thing I'd add is that the datasheet people 
should also listen to the users in this group or even look at other 
manufacturers datasheets to see how its done ! (checkout Silicon Labs 
as an example of excellent, albeit non-ARM, datasheets)

Dave


--- In lpc2000@yahoogroups.com, "philips_apps" <philips_apps@y...> 
wrote:
> Hi all,
> 
> today the LPC2148 was announced to the press. The preliminary DS has 
> been posted on this group by our marketing recently. One very 
> important improvement is the port access time. This is the first 
> device that has the ports mapped to the local bus. This enables 4 
> times faster toggle times. The max is now Processor clock divided by 
> 4. This will not get you to 20 Mhz but 15 is as close at it will 
ever 
> get (without increasing the max. clock rate). 
> 
> May be 15 MHz is fast enough ?
> 
> We plan to have evaluation boards through IAR and Keil available 
> second half of July.
> 
> Hope this helps, Robert
> 
> --- In lpc2000@yahoogroups.com, Robert Adsett <subscriptions@a...> 
> wrote:
> > At 01:01 AM 6/28/05 +0000, markevans_1 wrote:
> > >Hi guys,
> > >I am finding it a little tricky to calculate how fast this chip 
can
> > >actually go for my app. (Instruction cycles and MAM)
> > >
> > >I was wondering if anyone can tell me how fast it would execute 
> this
> > >code at 60MHz:
> > >
> > >Read in 16 bits from port1
> > 
> > That's the slow part.  Pin toggle rate is about 3.8MHz.  Narrowest 
> part of 
> > that has a time of 118nS.  If you need to run any sort of 
> handshaking slow 
> > that down by at least 2to 3x.
> > 
> > See a very early thread in this forum titled "Simple test program 
- 
> is now 
> > instruction pipeline/VPB question" about Nov/Dec 2003.
> > 
> > 
> > >store in RAM
> > >increment pointer
> > >loop for N times
> > >
> > >I basically want to buffer data as fast as possible in bursts. 
> Ideally
> > >at 20MHz.
> > 
> > Not going to happen without external support.
> > 
> > >How much faster would it execute in RAM.
> > 
> > Probably not enough faster to notice. The port access time is 
going 
> to be 
> > noticeable,
> > 
> > >Could I make it faster by using an infinite loop and using a 
timer 
Show quoted textHide quoted text
> to
> > >'break out' of the loop.
> > >
> > >Mark.
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >Yahoo! Groups Links
> > >
> > >
> > >
> > >
> > 
> > " 'Freedom' has no meaning of itself.  There are always 
> restrictions,   be 
> > they legal, genetic, or physical.  If you don't believe me, try to 
> chew a 
> > radio signal. "  -- Kelvin Throop, III
> > http://www.aeolusdevelopment.com/

Re: How fast can it go? The LPC2148 much faster :-)

2005-06-28 by philips_apps

Dave,

same people listening to all of you here, replying to the forum, 
specifying new features, writing documentation....

Will do our best to catch up and improve documentation!

Robert


--- In lpc2000@yahoogroups.com, "dave_baker_100" 
<dave_baker_100@y...> wrote:
> Excellent! A semiconductor manufacturer listening to the users and 
> then responding in a relatively quick time (taking into account 
tape 
> out times & validation). This will help Philips to stay ahead of 
the 
> competition. The only other thing I'd add is that the datasheet 
people 
> should also listen to the users in this group or even look at other 
> manufacturers datasheets to see how its done ! (checkout Silicon 
Labs 
> as an example of excellent, albeit non-ARM, datasheets)
> 
> Dave
> 
> 
> --- In lpc2000@yahoogroups.com, "philips_apps" <philips_apps@y...> 
> wrote:
> > Hi all,
> > 
> > today the LPC2148 was announced to the press. The preliminary DS 
has 
> > been posted on this group by our marketing recently. One very 
> > important improvement is the port access time. This is the first 
> > device that has the ports mapped to the local bus. This enables 4 
> > times faster toggle times. The max is now Processor clock divided 
by 
> > 4. This will not get you to 20 Mhz but 15 is as close at it will 
> ever 
> > get (without increasing the max. clock rate). 
> > 
> > May be 15 MHz is fast enough ?
> > 
> > We plan to have evaluation boards through IAR and Keil available 
> > second half of July.
> > 
> > Hope this helps, Robert
> > 
> > --- In lpc2000@yahoogroups.com, Robert Adsett 
<subscriptions@a...> 
> > wrote:
> > > At 01:01 AM 6/28/05 +0000, markevans_1 wrote:
> > > >Hi guys,
> > > >I am finding it a little tricky to calculate how fast this 
chip 
> can
> > > >actually go for my app. (Instruction cycles and MAM)
> > > >
> > > >I was wondering if anyone can tell me how fast it would 
execute 
> > this
> > > >code at 60MHz:
> > > >
> > > >Read in 16 bits from port1
> > > 
> > > That's the slow part.  Pin toggle rate is about 3.8MHz.  
Narrowest 
> > part of 
> > > that has a time of 118nS.  If you need to run any sort of 
> > handshaking slow 
> > > that down by at least 2to 3x.
> > > 
> > > See a very early thread in this forum titled "Simple test 
program 
> - 
> > is now 
> > > instruction pipeline/VPB question" about Nov/Dec 2003.
> > > 
> > > 
> > > >store in RAM
> > > >increment pointer
> > > >loop for N times
> > > >
> > > >I basically want to buffer data as fast as possible in bursts. 
> > Ideally
> > > >at 20MHz.
> > > 
> > > Not going to happen without external support.
> > > 
> > > >How much faster would it execute in RAM.
> > > 
> > > Probably not enough faster to notice. The port access time is 
> going 
> > to be 
> > > noticeable,
> > > 
> > > >Could I make it faster by using an infinite loop and using a 
> timer 
> > to
> > > >'break out' of the loop.
> > > >
> > > >Mark.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >Yahoo! Groups Links
> > > >
> > > >
> > > >
> > > >
> > > 
> > > " 'Freedom' has no meaning of itself.  There are always 
> > restrictions,   be 
> > > they legal, genetic, or physical.  If you don't believe me, try 
to 
Show quoted textHide quoted text
> > chew a 
> > > radio signal. "  -- Kelvin Throop, III
> > > http://www.aeolusdevelopment.com/

Re: How fast can it go? The LPC2148 much faster :-) // No ISP through USB yet

2005-06-28 by philips_apps

Karl,

we did not plan to offer ISP through USB because it would 
significantly increase the code size for ISP on the chip. However,  
you are at least the second person interested in this feature within 
one weeks time. Based on the overall feedback we will get, it is an 
option for future implementations but very difficult to get the ISP 
through USB into the existing device, the memory holding the ISP code 
would not be sufficient. 

Robert

--- In lpc2000@yahoogroups.com, "Karl Olsen" <kro@p...> wrote:
> --- In lpc2000@yahoogroups.com, "philips_apps" <philips_apps@y...> 
> wrote:
> 
> > today the LPC2148 was announced to the press. The preliminary DS
> > has been posted on this group by our marketing recently. One very 
> > important improvement is the port access time. This is the first 
> > device that has the ports mapped to the local bus. This enables 4 
> > times faster toggle times. The max is now Processor clock divided
> > by 4. This will not get you to 20 Mhz but 15 is as close at it 
will
Show quoted textHide quoted text
> > ever get (without increasing the max. clock rate). 
> > 
> > May be 15 MHz is fast enough ?
> > 
> > We plan to have evaluation boards through IAR and Keil available 
> > second half of July.
> 
> Can you do ISP through the USB device port, or do you still need a 
> serial port for that?
> 
> Karl Olsen

Re: [lpc2000] Re: How fast can it go? The LPC2148 much faster :-)

2005-06-29 by Robert Adsett

At 10:27 PM 6/28/05 +0000, philips_apps wrote:
>same people listening to all of you here, replying to the forum,
>specifying new features, writing documentation....
>
>Will do our best to catch up and improve documentation!
>
>Robert

Sounds good Robert, just please don't combine the data sheet and user 
manual into a single document.  That would be a giant step backwards.

Robert

" 'Freedom' has no meaning of itself.  There are always restrictions,   be 
they legal, genetic, or physical.  If you don't believe me, try to chew a 
radio signal. "  -- Kelvin Throop, III
http://www.aeolusdevelopment.com/

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.