Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
EE Times-Asia > Controls/MCUs

Utilising ARM Cortex-M based SoCs (Part 2)

Posted: 28 Jul 2014 ?? ?Print Version ?Bookmark and Share

Keywords:system-on-chips? ARM? Cortex M? SoC? PSoC?

ARM Cortex-M processors are more efficient than conventional 8/16bit processors. Thumb-2 technology helps Cortex-M processors support 16bit thumb instructions. In many cases, a single thumb instruction is equivalent to multiple 8/16bit microcontroller instructions. This helps in achieving the same task at lower bus speed. The low latency, 3-stage pipeline based upon a Harvard architecture also speeds execution of instructions.

In some SoCs, hardware resources can be shared in case of complex applications that require more system resources than are available. This can be through continuous time sharing of resources or in event of interrupt arrival. This can increase system utilisation to more than 100%.

IP protection
A substantial amount of development effort and time is spent on research in any organisation. IP protection plays a pivotal role in securing these efforts from theft. In the embedded market, competing companies may try to reverse engineer products by their competitors to come up with their own product. This affects organisation involved in innovation and research in terms of revenue and market share.

Two key aspects of IP protection areHiding Firmware and Hiding Hardware.

Hiding Firmware: While designing an embedded system, it is sometimes important to restrict end users from reading or writing to specific sections of the Flash memory. This prevents both corruption of data and reverse engineering of the product.

Many SoC vendors provide methods for preventing access to the Flash. These methods include:
???Making the complete Flash inaccessible for R/W
???Making parts of the Flash inaccessible for R/W
???Having different protection settings for different regions of Flash
The ARM Cortex-M processor optionally contains a Memory Protection Unit (MPU) that can be used to protect Flash access. The MPU controls access rights to physical addresses and can support sub-regions as small as 32B. SoC vendors may provide additional support for protecting IPs. For example, Cypress' PSoC 4 provides three chip-level protection modes to the embedded engineers. These modes are Open, Protected, Kill.
???Open mode: In this state, the external debugger can access system resources (Flash, SRAM, supervisory Flash, and registers) for full functional debugging of the application via the Debug Access Port (DAP).
???Protected Mode: In this state, access to system resources (Flash, SRAM, Supervisory flash, and registers) is disabled. The device can be moved to Open Mode but erases the Flash to protect illegal accesses.
???Kill Mode: In this state, the device cannot be accessed through a programmer/debugger. The device should not be put in this mode if the firmware is not complete since it will lock the SoC from further debugging/programming. It is recommended that this mode should only be enabled for production programming of an end-application that has been completely tested.
Hiding Hardware: The ARM architecture helps block hackers from copying the application by reverse engineering the hardware design. This helps is protecting the IP created by somebody/organisation at hardware level.

Figure 11: Functional block diagram of gas sensing system.

As shown in figure 11, board-level designs with discrete external components expose the system architecture. It is possible to copy the design by analysing the product at this level.

Figure 12: Functional block diagram of gas sensing system with SoC.

As shown in figure 12, an SoC reduces the number of external components, taking them off the circuit board and integrating them in the SoC. As a result, the overall hardware architecture is hidden, making it difficult to reverse engineer and copy the design.

It is still possible to reverse engineer a SoC-based design that uses fixed peripheral pins. An SoC that supports flexible routing, where any peripheral can be routed to any pin, makes it almost impossible to understand the internal connections.

Lower power functionality
Systems requiring low power are needed because of growing demand for portable embedded devices like smart phones and tablets that are powered primarily by battery. These devices must run for a longer duration for the same battery size or provide the same on-time using a smaller battery. This is also important for systems that are socket powered as lower power consumption will save electricity and reduce power costs.

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

Article Comments - Utilising ARM Cortex-M based SoCs (P...
*? You can enter [0] more charecters.
*Verify code:


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

Back to Top