Determining OTP/SRAM memory usage? Multicore memory usage?

Technical questions regarding the XTC tools and programming with XMOS.
User avatar
Chendy
Active Member
Posts: 46
Joined: Tue Nov 02, 2010 4:53 pm

Determining OTP/SRAM memory usage? Multicore memory usage?

Post by Chendy »

Hi,

I have a slicekit, so I understand the chip is a XS1-L02A-QF124

From the datasheet:

Code: Select all

Memory
• 128KB internal single-cycle SRAM (max 64KB per tile) for code and data storage
• 16KB internal OTP (max 8KB per tile) for application boot code
OTP?

Using the GUI (or otherwise), how do I determine how much of the internal OTP (one time programmable) memory I have used?

Is the code typically stored on one core? If so, is there a way to utilise the unused 8KB on the other core e.g. for a 'Look Up Table'?

SRAM?

From reading a forum post dynamic memory allocation is possible (malloc), so this might complicate things...

Is there anyway to determine SRAM usage? I'm happy to not to do any dynamic allocation. Currently I create an array, assign values to it, and then read the values back whilst making sure the application functions correctly. I have noticed that the compiler only allows arrays upto a certain size. Does that mean that 'if it compiles it will work'?

Similarly, how does one assign SRAM (e.g. an array) to a specific tile. What documentation covers this?


Any guidance on how to utilise the limited memory on a dual core/tile device appreciated

Senthil
Last edited by Chendy on Mon Jul 22, 2013 7:29 pm, edited 2 times in total.


User avatar
sethu_jangala
XCore Expert
Posts: 589
Joined: Wed Feb 29, 2012 10:03 am

Post by sethu_jangala »

Hi Senthil,

OTP memory is one time programmable and information burned in this memory cannot be changed once it is done. Usually information like serial number MAC address encryption key is stored in the OTP. You can store the program in OTP and boot from OTP but the data is limited to 8KB per tile.

xburn --read (Prints the entire contents of the OTP)

To find the resource usage, right click on the binary file (.xe file) and select open option. This opens Binary window which gives the complete resource usage per tile.

Sethu.