Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
?
EE Times-Asia > Processors/DSPs
?
?
Processors/DSPs??

Maximise the processing power of wireless modules

Posted: 25 Nov 2013 ?? ?Print Version ?Bookmark and Share

Keywords:embedded system? processing? wireless module? microcontroller? cellular connectivity?

To determine the number of MIPS available for the application, subtract MIPS necessary for cellular communications from the total available. For example, if a wireless module running at 104MHz has 87 total MIPS available, peak GPRS transfer will consume roughly 16 MIPS (18%). The total 87 MIPS minus 16 MIPS used for GPRS leaves 71 MIPS available for the application.

Look for features that help maximise core performance. For example, direct access to low-level APIs for a UART, including interrupt handler, makes it easier for the CPU to drive external chipsets for things like GPS, Bluetooth, or ZigBee.

Memory: The module's memory resources are also shared between cellular firmware and the main application. A memory management unit designed into the ARM9 core protects any partitioned memory and keeps them separate. Figure 2 shows the memory used by firmware in an example 3G module.

Figure 2: Memory usage in example module.

The example module has 128 MB of total NAND flash memory and 64 MB of total RAM memory. The cellular firmware needs 82 MB of NAND flash for non-volatile data and 43 MB of RAM for global variables, heap memory, and call stack. The remaining 46 MB of NAND flash and 21 MBytes of RAM are available for the main application. Since NAND flash can't execute code directly, code is copied into RAM for execution.

For very long lifespan applications some modules extend the life of flash memories by reducing the number of flash erasures. The system retains data for certain variables during a hardware or software reset. This increases the speed of restarts, especially after an unexpected event, because data can be retained in RAM.

Power: Most modules include power-saving features, especially when the system is idle. Standby power consumption typically ranges between 1.9 mA and 5.7 mA, good enough for a battery-powered system. It may not, however, be low enough for an application with extreme power consumption requirements, in which case using an external microcontroller may yield better results.

Look for modules that go into sleep mode when the cellular function is inactive, and for features like fast boot sequences or the ability to power individual blocks according to operating state, which can lower consumption. Some modules suspend other battery-intensive operations when wireless transmissions are taking place.

Software
RTOS: The best option for an embedded system is a multi-tasking, pre-emptive real-time operating system (RTOS) that is royalty-free and supports a familiar programming language to keep total cost of ownership low.

Several modules are available with an RTOS customised for machine-to-machine (M2M) applications. They include cellular protocol and TCP/IP stacks, and are optimised for airtime and power consumption. Consider audio features such as VDA class 2A for automotive, audio diagnostics and filters, and audio player/recorder/sniffer functions. Data protection features such as fail-safe file system, SSL, and encryption engines help increase application security.

The ARM9 will probably manage external asynchronous events and need accurate timing functions. Look for an RTOS that reduces latency for asynchronous events and can drive several ICs connected either through SPI or I2C. This makes it possible to extend the design with additional functions such as a CAN-controller, accelerometer, or vehicle sensors, Ethernet or Wi-Fi controllers, or supplemental USB or UART devices. An integrated hardware timer combined with low interrupt latency makes it possible to time-stamp external events with good accuracy, eliminating the need for external timers.

?First Page?Previous Page 1???2???3?Next Page?Last Page



Article Comments - Maximise the processing power of wir...
Comments:??
*? You can enter [0] more charecters.
*Verify code:
?
?
Webinars

Seminars

Visit Asia Webinars to learn about the latest in technology and get practical design tips.

?
?
Back to Top