
Freescale MQX Release Notes
Freescale Semiconductor
23
5 Known Issues
5.1 Performance of Code Running in MRAM
As described above, the “Ext. MRAM Debug” build-target provides the most convenient way how to
download and run code on the M52259EVB board. One limitation of this solution is that the code
runtime performance is approximately 8x degraded comparing to Flash-based execution. MRAM is
an external memory device connected to the ColdFire core by 8-bit data bus and having one wait-
state generated for each access. In order to fetch one 32-bit value (instruction) from the MRAM
memory, four accesses need to occur – each inserting one wait-state clock.
This behavior is normal by design.
5.2 Network Communication Performance and Delayed ACKs
Significant differences in performance of host to target TCP communication can be observed,
depending on which client operating system is used. These differences are a result of the
difference in implementation of the TCP delayed ACK algorithm.
Linux is more aggressive in acknowledging packets, and temporarily disables the delayed ACK
algorithm on connection startup. As a result, there is no performance issue observed with Linux-
based browsers (Mozilla Firefox tested).
Microsoft Windows based operating systems take a common approach to implementing the delayed
ACK algorithm. As a result, web server performance can be significantly worse when it is accessed
from Microsoft Windows-based browsers (Internet Explorer and Mozilla Firefox tested). This issue
and a workaround are described at http://support.microsoft.com/kb/328890
.
This issue is not directly related to the RTCS stack, however limited RAM resources on MCF52259
imply lower buffer and data window sizes, making it more difficult to work around the issue in RTCS
software.
5.3 “HVAC” Demo Applications
In the maximal configuration, the HVAC and WEB_HVAC demo applications are supposed to
demonstrate simultaneous operation of several key MQX features:
‐ MQX RTOS real-world multi-tasking application
‐ MQX BSP and I/O drivers (Ethernet, UART, GPIO)
‐ RTCS TCP/IP network stack with FTP, Telnet or HTTP server
‐ USB Host driver with Mass Storage Class Driver
‐ MFS File System used to access the USB stick directories and files
Total RAM requirements for all of the features are very close to 64k, which is the amount of memory
available on MCF52259 device. The application performance may be significantly affected if more
RAM needs to be allocated at run-time. Also memory fragmentation may occur after some time ,
which may cause problems in network or USB communication.
You can use the debugger and the TAD “memory blocks” screen to see the status of the memory
pool and amount of remaining free memory.
What may cause higher RAM allocation or memory fragmentation?
Comentarios a estos manuales