MAM with 2 Flash banks vs. MAM with 1 Flash bank

Started by arrek_x July 3, 2006
In LPC21xx devices below series LPC213x Flash memory is split into two
Flash banks and code is being fetched alternately form those banks.
OK, fine - it looks simple :). But what about the way of MAM working
in LPC213x, where only one Flash bank is used? I suspect, that code
must be fetched from Flash in similar manner, because it's core rule
of accerelating program execution. But how is it exactly performed,
when only one bank is present? I was trying to find something but
found nothing relevant to that subject, and manual is rather laconic
and cloudy in MAM section.

Regards,
A.

An Engineer's Guide to the LPC2100 Series

--- In l..., "arrek_x" wrote:
>
> In LPC21xx devices below series LPC213x Flash memory is split into two
> Flash banks and code is being fetched alternately form those banks.
> OK, fine - it looks simple :). But what about the way of MAM working
> in LPC213x, where only one Flash bank is used? I suspect, that code
> must be fetched from Flash in similar manner, because it's core rule
> of accerelating program execution. But how is it exactly performed,
> when only one bank is present? I was trying to find something but
> found nothing relevant to that subject, and manual is rather laconic
> and cloudy in MAM section.
>
> Regards,
> A.

The MAM on LPC is not much more than a traditional pre-fetch queue
with limited look-ahead capability. Dual 128- or single 255-byte
banking does not seem to matter much other than reducing peak currents.

The problem I find with MAM that it is speculative and does not work
when your application behaves differently.

Jaya

Oops, I meant 128- or 256-BIT wide banks, not byte wide!

--- In l..., "jayasooriah" wrote:
>
> --- In l..., "arrek_x" wrote:
> >
> > In LPC21xx devices below series LPC213x Flash memory is split into
two
> > Flash banks and code is being fetched alternately form those banks.
> > OK, fine - it looks simple :). But what about the way of MAM working
> > in LPC213x, where only one Flash bank is used? I suspect, that code
> > must be fetched from Flash in similar manner, because it's core rule
> > of accerelating program execution. But how is it exactly performed,
> > when only one bank is present? I was trying to find something but
> > found nothing relevant to that subject, and manual is rather laconic
> > and cloudy in MAM section.
> >
> > Regards,
> > A.
>
> The MAM on LPC is not much more than a traditional pre-fetch queue
> with limited look-ahead capability. Dual 128- or single 255-byte
> banking does not seem to matter much other than reducing peak currents.
>
> The problem I find with MAM that it is speculative and does not work
> when your application behaves differently.
>
> Jaya
>

--- In l..., "jayasooriah" wrote:

> The problem I find with MAM that it is speculative and does not work
> when your application behaves differently.
>

Can you explain the circumstances in which the MAM doesn't work?

Brendan.