Do you have a question? Post it now! No Registration Necessary
Subject
- Posted on
- karthikbalaguru
October 24, 2007, 8:52 am

Hi,
I understand that boot block Flash Memory have "protected boot blocks"
so they can not be erased accidentally unless special functions are
used to do that.
Further, Top Boot Block Flash memory are intended for microprocessors
that begin
execution by reading from the top of their memory space. And vice
versa for Bottom
Boot Bloc Flash Memory. Here, the Boot Block is positioned at the
bottom of the
Flash's address space for many microprocessors that have their Reset
vector at 0000h.
So, my mapping the Flash to address 0000h of the processor's address
space, the
processor can boot from the Flash's Boot Block.
I find that some some major processor makers use Bottom Boot(ST10,
Motorola 68000 series, Power PC) and others use Top Boot(Intel i960,
80x86 ).
My Queries are :-
1) But, What is the advantage of Top Boot Flash Memory and
What is the advantage of Bottom Boot Flash memory ?
2) Apart from protection to the Boot Block, what are the other
differences between
these Boot Block based Flash memories and Normal Flash Memories
(Uniform
Block Flash Memory)?
3) Which is cost-effective (Boot Block based Flash or Normal Flash
( Uniform Block
Flash Memory) ) ?
4) Is the lifetime (Number of programmable / erase cycles) of the Boot
Block lesser
than or equivalent to that of the Normal Blocks (Application Code,
User
Parameters and User Data.) ?
5) Can that Boot Block area used for other purporses w.r.t security of
the application ?
6) I understand that for systems with small amounts of memory, XIP is
very good that
each instance of that program uses system RAM, only for their
stack, BSS, and
data segments while the shared text segment remains in Flash
Memory.
But, Is there any specific Block for text segment while
performing XIP ?
7) Is there any other specific configuration to look for while
selecting the Flash
Memory while going in for XIP ?
Thx in advans,
Karthik Balaguru
I understand that boot block Flash Memory have "protected boot blocks"
so they can not be erased accidentally unless special functions are
used to do that.
Further, Top Boot Block Flash memory are intended for microprocessors
that begin
execution by reading from the top of their memory space. And vice
versa for Bottom
Boot Bloc Flash Memory. Here, the Boot Block is positioned at the
bottom of the
Flash's address space for many microprocessors that have their Reset
vector at 0000h.
So, my mapping the Flash to address 0000h of the processor's address
space, the
processor can boot from the Flash's Boot Block.
I find that some some major processor makers use Bottom Boot(ST10,
Motorola 68000 series, Power PC) and others use Top Boot(Intel i960,
80x86 ).
My Queries are :-
1) But, What is the advantage of Top Boot Flash Memory and
What is the advantage of Bottom Boot Flash memory ?
2) Apart from protection to the Boot Block, what are the other
differences between
these Boot Block based Flash memories and Normal Flash Memories
(Uniform
Block Flash Memory)?
3) Which is cost-effective (Boot Block based Flash or Normal Flash
( Uniform Block
Flash Memory) ) ?
4) Is the lifetime (Number of programmable / erase cycles) of the Boot
Block lesser
than or equivalent to that of the Normal Blocks (Application Code,
User
Parameters and User Data.) ?
5) Can that Boot Block area used for other purporses w.r.t security of
the application ?
6) I understand that for systems with small amounts of memory, XIP is
very good that
each instance of that program uses system RAM, only for their
stack, BSS, and
data segments while the shared text segment remains in Flash
Memory.
But, Is there any specific Block for text segment while
performing XIP ?
7) Is there any other specific configuration to look for while
selecting the Flash
Memory while going in for XIP ?
Thx in advans,
Karthik Balaguru

Re: Boot Block and Uniform Block Flash Memory and Executin In Place(XIP)

Sometimes these special blocks are smaller than the others. This might be an
advantage, when you have to store some kind of variable information in it.
You waste less space in this case (the bootloader u-boot does so. Sometimes
you must waste 256kiB (one sector), but you only need 3kiB for the real
data).

AFAIK no other difference.

Prepare your hardware and software to handle both types. Then you can always
buy the cheaper one.

AFAIK no.
To store data the user can setup at runtime.

The sizes of the sectors are only important, when you are going to erase
them (or when you want to run a real filesystem on top of it, like JFFS2).
When you read this memory type (=run code from it), they are unimportant.
Hope it helps
Juergen
Site Timeline
- » Job offering for embedded Linux SW developers
- — Next thread in » Embedded Linux
-
- » mobile linux
- — Previous thread in » Embedded Linux
-
- » Crosscompiling for ARM: reloc type R_ARM_ABS32 is not supported for PIC - ...
- — Newest thread in » Embedded Linux
-
- » Capacitors at RF
- — The site's Newest Thread. Posted in » Electronics Design
-