Keil Logo

can't access upper 64K of C8051F120 program space

Next Thread | Thread List | Previous Thread Start a Thread | Settings

Details Message
Read-Only
Author
Jeff Rosenberg
Posted
14-Sep-2007 20:51 GMT
Toolset
C51
New! can't access upper 64K of C8051F120 program space

I am using uV2 V2.40a with the Silicon Labs C8051F120 processor ... I can't make a program larger that 64K and the chip will take 128K ... the device description has 128K but the project options only seem to allow 64K

what do I need to do to get access to the full 128K?

Read-Only
Author
erik malund
Posted
14-Sep-2007 21:03 GMT
Toolset
C51
New! RE: can't access upper 64K of C8051F120 program space

read up in the manual on BANKING

Erik

Read-Only
Author
Drew Davis
Posted
14-Sep-2007 21:09 GMT
Toolset
C51
New! RE: can't access upper 64K of C8051F120 program space

The 8051 has a 64KB program store address space. You need to build a load that uses code banking to have program code in excess of 64KB.

See section 16 of the C8051F120 manual, where it discusses the SFLE and COBANK registers. This chip uses the scheme where the 64KB address space is divided into two 32KB banks, and the upper bannk is swapped to different physical locations.

Also, read the Keil documentation and app notes on banking, particularly

http://www.keil.com/support/man/docs/lx51/lx51_codebanking.htm
http://www.keil.com/support/docs/158.htm
http://www.keil.com/support/docs/1059.htm

Read-Only
Author
Andy Neil
Posted
14-Sep-2007 21:09 GMT
Toolset
C51
New! RE: can't access upper 64K of C8051F120 program space

The 8051 architecture has only 64K of CODE space.

The C8051F120 has 128K of Flash - not 128K of 8051 CODE space.

As Erik says, if you want to use all 128K of the Flash for 8051 CODE storage, you will have to adopt some sort of Code Banking scheme.

I wouldn't be at all surprised to find that SiLabs have some Application Notes on this.

As an alternative to Code Banking, you might be able to move constants from CODE into XDATA space mapped to the other 64K of Flash, thereby removing the need to Bank your code...

Next Thread | Thread List | Previous Thread Start a Thread | Settings

  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.