1.1.4 Flash and RAM Usage

The following figures provide Flash and RAM usage information for the supported devices.

PIC32MZEF Memory Usage in bytes (based on net 3.5.0, XC32 v2.30)

PIC32MZDAS Memory Usage in bytes (based on net 3.5.0, XC32 v2.30)

SAME70 Memory Usage in bytes (based on net 3.5.0, XC32 v2.30)

SAMV71 Memory Usage in bytes (based on net 3.5.0, XC32 v2.30)

SAME54 Memory Usage in bytes (based on net 3.5.0, XC32 v2.30)

SAMA5D2 Memory Usage in bytes (based on net 3.5.0, IAR Embedded Workbench for ARM 8.32.2)

Heap Usage Estimate

The overall heap estimate is available with the 'TCPIP CORE' module configurations as shown below

Heap Estimate in TCPIP CORE (MCC)

The estimated heap size for TCP/IP is displayed in kilobytes. The TCP/IP heap size is derived by adding the heap estimation for each of the TCP/IP modules.

The module-wise heap estimation can be viewed with each TCP/IP modules by enabling ‘Module-wise Heap Estimate’ as shown below.

Enabling Heap Estimate for individual Modules

NOTE:

  • Heap estimate provides only an estimation close to "worst case" scenario.
  • Calculation does not consider all the run-time dynamic memory allocations/de-allocations.
  • Calculation does not consider the dynamic changes of the TCP and/or UDP socket buffer sizes.
  • The heap run-time tool gives a more accurate picture of heap usage. The run time tool is preferred, as the static estimation of heap usage is approximate only.
  • The heap run-time tool can be used by enabling TCPIP_STACK_DRAM_DEBUG_ENABLE and TCPIP_STACK_DRAM_TRACE_ENABLE symbols. Then "heapinfo" command will give run-time heap usage.
  • It should be noted that even if an "out of memory" condition occurs at run time, the stack will behave graciously, and it will report the error, so that the operation can be re-tried.