Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

Studio Bluetooth Forum Discussions

JiZh_4619191
Level 4
Level 4
25 replies posted 25 sign-ins 10 replies posted

Hi,

"CYW20719 datasheet" says there is a 448KB-RAM in the chip.

I used a large array:

...

static uint8_t data[640*480];

...

The program was built and downloaded into CYW20719 normally (WICED-Studio-6.4).

But CYW920719Q40EVB-01 didn't run.

WICED-Studio-6.4 outputs:

--------------------------------------------------------------------------------

Patch code starts at              0x00270400 (RAM address)

Patch code ends at                0x0027A518 (RAM address)

Patch RW/ZI size                  2572 bytes

Application starts at             0x002155FC (RAM address)

Application ends at               0x00261414 (RAM address)

Patch code size                        41240 bytes

Application RAM footprint             310808 bytes

                                      ------

Total RAM footprint                   313380 bytes (306.0kiB)

--------------------------------------------------------------------------------

If I canceled “static uint8_t data[640*480]”, CYW920719Q40EVB-01 started correctlly.

WICED-Studio-6.4 outputs:

--------------------------------------------------------------------------------

Patch code starts at              0x00270400 (RAM address)

Patch code ends at                0x0027A518 (RAM address)

Patch RW/ZI size                  2572 bytes

Application starts at             0x002155FC (RAM address)

Application ends at               0x0021639C (RAM address)

Patch code size                        41240 bytes

Application RAM footprint               3488 bytes

                                      ------

Total RAM footprint                     6060 bytes (5.9kiB)

--------------------------------------------------------------------------------

Best regards.

0 Likes
1 Solution

Per our test on other devices, you can't use all the RAM memory in your application.

Please refer to the following screen shoot for the document.

pastedImage_0.png

View solution in original post

0 Likes
4 Replies
Owen_Zhang123
Moderator
Moderator
Moderator
500 solutions authored 250 sign-ins 1000 replies posted

The stack and initial code will also load to the RAM during the startup. You may refer to the following blog for the RAM memory map: BCM20732 Memory Map Architecture

It is for the BCM20732, CYW20719 shares the similar structure.

We don't have a specific value for the avaliable RAM size for the application. You can use the API UINT32 mpaf_cfa_mm_MemFreeBytes(void); to check the free bytes of the memory.

0 Likes

Hi,

Re: CYW20719: Large build size  said "Nearly 370k can be used for application code." Is this correct?

And “If in case your code size is more and you want to run the application code from flash, you can use XIP (Refer WICED-XIP-Application-Support-Guide.pdf from doc folder of WICED Studio )”.

Unfortunately, I didn't find this pdf. Would you please give me a link?

Furthermore, I didn't find "API UINT32 mpaf_cfa_mm_MemFreeBytes(void)" in "Cypress WICED Studio API Reference Guide v6.2.0.pdf".

Best regards.

0 Likes

Per our test on other devices, you can't use all the RAM memory in your application.

Please refer to the following screen shoot for the document.

pastedImage_0.png

0 Likes

Hi,

Thank you so much for you patience!

"Execute-in-Place (XIP) Application Support Guide.pdf" says "By placing the application and the profile library code in flash, the application can save SRAM space."

"__attribute__((section(“.text”)))" can really place application code in flash.

And how to place the profile library code in flash?

Best regards.

0 Likes