What is non-banked memory?

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

What is non-banked memory?

ソリューションへジャンプ
2,371件の閲覧回数
o4543
Contributor II

Hello,

I am curious that what are the banked memory and non-banked memory?

As a result of my research, the banked memory is logical unit that can be accessed independently by a dividing the storage device.  

However, i didn't find any non-banked memory. I just found it to be a defined interrupt memory area.

So I am more curious about the non-banked memory and banked memory. 

0 件の賞賛
1 解決策
1,998件の閲覧回数
ZhangJennie
NXP TechSupport
NXP TechSupport

Hi

NON banked memory can be accessed by 16bits address. For example below is nonbanked address:

RAM            0x2000 TO   0x3FFF;

EEPROM       0x0C00 TO   0x0FFF;

ROM_4000    0x4000 TO   0x7FFF;

ROM_C000    0xC000 TO   0xFEFF;

Some parts of an application must always be in non–banked memory, in particular:

  •      The prestart code (segment .init)
  •      The startup code (segment NON_BANKED) and the startup descriptor(s) (segment . startData)
  •      All runtime support routines (segment NON_BANKED)
  •      All interrupt handlers, because trap vectors are only 16 bits wide.
  •       RAM variables initialization values (segment .copy). There is a way to get copy down information stored in banked memory.

Have a great day,
Jun Zhang

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

元の投稿で解決策を見る

0 件の賞賛
7 返答(返信)
1,999件の閲覧回数
ZhangJennie
NXP TechSupport
NXP TechSupport

Hi

NON banked memory can be accessed by 16bits address. For example below is nonbanked address:

RAM            0x2000 TO   0x3FFF;

EEPROM       0x0C00 TO   0x0FFF;

ROM_4000    0x4000 TO   0x7FFF;

ROM_C000    0xC000 TO   0xFEFF;

Some parts of an application must always be in non–banked memory, in particular:

  •      The prestart code (segment .init)
  •      The startup code (segment NON_BANKED) and the startup descriptor(s) (segment . startData)
  •      All runtime support routines (segment NON_BANKED)
  •      All interrupt handlers, because trap vectors are only 16 bits wide.
  •       RAM variables initialization values (segment .copy). There is a way to get copy down information stored in banked memory.

Have a great day,
Jun Zhang

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 件の賞賛
1,998件の閲覧回数
o4543
Contributor II

Thanks you for reply my question.

I understood the example by explaining it. Thanks.

Have a happy day,

Ji Hyun.

0 件の賞賛
1,998件の閲覧回数
ZhangJennie
NXP TechSupport
NXP TechSupport

You are welcome!

0 件の賞賛
1,998件の閲覧回数
kef2
Senior Contributor IV

8 and 16-bit CPUs like S08 or other than S12Z S12's have 16-bits address pointer registers. This limits normal address space to 2^16 = 64k. What easily fits this 64k space could be nonbanked or nonpaged. To access more than 64k memory is organized into banks or pages. Some fraction of 64k space is page window, you switch page number to map different piece of memory to selected page window. This is banked or paged memory. And coming back to nonbanked/nonpaged def., more strictly it is part of memory which has no memory page windows and thus can be uniquely addressed by 16-bit (CPU) address.

0 件の賞賛
1,998件の閲覧回数
o4543
Contributor II

Thanks comment my question.

I don't know if I understood well. So I have questions. 

Is it non-banked or non-paged to access memory space(64k)? And when accessing more than the space of memory, is it a banked or a paged memory?

Have a nice day,

Ji Hyun

0 件の賞賛
1,998件の閲覧回数
kef2
Senior Contributor IV
  • Is it non-banked or non-paged to access memory space(64k)? And when accessing more than the space of memory, is it a banked or a paged memory?

Yes

0 件の賞賛
1,998件の閲覧回数
o4543
Contributor II

Thanks you,

I understood about non-banked and banked.

Have a great day :smileyhappy:

Ji Hyun

0 件の賞賛