Memory for non-volatile data – Echelon FTXL User Manual
Page 197
FTXL User’s Guide
185
required for each type of L
ON
W
ORKS
resource. The number of bytes required for
each type of resource is an estimate; you should round these numbers upward
when you use them in flash memory usage calculations.
Table 50. Flash Usage per LonWorks Resource
Resource Type
Bytes Required
Static network variable
24 +
SD_length
+
NV_name_length
Dynamic network variable
Dyn_NV_count
Alias
Alias_count
Address table entry
Address_count
Notes:
•
SD_length
is the length of the self-documentation string for the network
variable
•
NV_name_length
is the length of the network variable’s name, as defined
in the device’s model file
•
Dyn_NV_count
is the number of dynamic network variables that are
defined for the application
•
Alias_count
is the number of aliases that are defined for the application
•
Address_count
is the number of address table entries that are defined for
the application
In addition to storing constant data, flash memory stores non-volatile data for the
application, as described in
.
Memory for Non-Volatile Data
An FTXL application typically has some non-volatile data that it must maintain
across device reset (see
Providing Persistent Storage for Non-Volatile Data
on
page 77). The FTXL LonTalk protocol stack stores only non-volatile data that is
in use. For example, it does not store address table and alias table entries that
are not used. Therefore, the actual amount of non-volatile memory used can be
smaller than the maximum amount required. However, you should define
enough free non-volatile storage to support the maximum use configuration. The
example direct flash implementation of the non-volatile data functions calculates
the maximum use configuration, and reserves flash memory space so that if one
segment grows, it does not interfere with other segments.
This section describes the amount of non-volatile data space required for the
following application elements:
• The network image (LonNvdSegNetworkImage)
• The node definition (LonNvdSegNodeDefinition)
• The application data (LonNvdSegApplicationData)