<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.element14.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications</link><pubDate>Fri, 05 May 2023 18:54:13 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>dychen</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Current Revision posted to Documents by dychen on 5/5/2023 6:54:13 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gt3nnm2c0" class="essTitle xbold" title="Secure MCUs for IoT Edge Applications"&gt;&lt;a name="top"&gt;&lt;/a&gt;&lt;a href="/learn/learning-center/essentials" data-icid="essentials-mcu4-doc"&gt;&lt;img style="padding-right:18px;vertical-align:middle;" alt="essentials logo" src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt; MCUs Series - Part 4 - Secure MCUs for IoT Edge&lt;a href="#intro"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz CortexRegistered-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;br /&gt; &lt;strong&gt;&lt;a href="#components"&gt;Related Components&lt;/a&gt;&lt;/strong&gt; | &lt;strong&gt; &lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" style="vertical-align:middle;" alt="test link" src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/strong&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h5 class="essSponsor" title="NXP"&gt;&lt;span class="xs-mr2"&gt;sponsored by&lt;/span&gt;&lt;a href="/products/manufacturers/nxp" data-icid="essentials-mcu4-doc"&gt;&lt;img loading="lazy" style="vertical-align:middle;" alt="sponsor" src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="100px" /&gt;&lt;/a&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/h5&gt;
&lt;h2 id="mcetoc_1gt3nnm2c1" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;2. Objectives&lt;/h2&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Upon completion of this module, you will be able to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Understand the edge and the purpose of edge computing&lt;/li&gt;
&lt;li&gt;Be familiar with the trends and challenges in edge computing&lt;/li&gt;
&lt;li&gt;Describe the microcontrollers suitable for IoT edge applications&lt;/li&gt;
&lt;li&gt;Explain the main security features of the LPC5500 MCU series&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="mcetoc_1gt3nnm2c2" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;3. What is the Edge?&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks.&lt;/p&gt;
&lt;p&gt;IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-FiRegistered, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 1" src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c3" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;4. Design And Development For The Iot Edge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Privacy and Security:&lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as BluetoothRegistered Low Energy, ZigBee, Wi-Fi, and so on.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing. Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly, be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c4" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;5. Edge Architecture&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 2" src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 2: IoT Edge Hierarchy&lt;/h5&gt;
&lt;/div&gt;
&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/center&gt;
&lt;h2 id="mcetoc_1gt3nnm2c5" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;6. Secure MCUs For IoT Edge Applications&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC5500 MCU series, the market&amp;#39;s first ArmRegistered CortexRegistered-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZoneRegistered technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU. It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 3" src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 3: Arm Cortex-M33 Block Diagram. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 4" src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 5" src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p class="xbold" style="clear:both;"&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;These LPC5500 MCU series processors can be used with the Arm KeilRegistered MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure boot for hardware-based immutable root-of-trust&lt;/li&gt;
&lt;li&gt;Certificate-based secure debug authentication&lt;/li&gt;
&lt;li&gt;Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure isolation&amp;mdash;isolate secure and non-secure worlds&lt;/li&gt;
&lt;li&gt;Secure boot&amp;mdash;execute only authorized firmware&lt;/li&gt;
&lt;li&gt;Secure primitives&amp;mdash;cryptography primitives, including hashing, encryption, decryption, authentication&lt;/li&gt;
&lt;li&gt;Secure storage&amp;mdash;secure keys, code, and data confidentiality&lt;/li&gt;
&lt;li&gt;Secure update&amp;mdash;OTA firmware update, revoke keys, and anti-rollback&lt;/li&gt;
&lt;li&gt;Secure debug&amp;mdash;only authenticated parties allowed to debug&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 6" src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface. &lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast, saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;center&gt;
&lt;h5&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/h5&gt;
&lt;/center&gt;
&lt;div style="border-bottom:1px solid #555555;padding-bottom:10px;"&gt;&lt;img loading="lazy" class="nolightbox essProfile" style="float:left;padding:0px 13px 13px 0px;vertical-align:top;" alt="Profile image" height="110" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;
&lt;div style="font-size:1.2em;padding:12px 0px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/div&gt;
&lt;span &gt;&lt;a class="e14-button e14-button--primary e14-button--large" href="https://referral.element14.com/OrderCodeView?url=%2Fiot%2520edge%2520nxp&amp;COM=e14c-referral-cmty-handleressentials-mcu4-doc&amp;CMP=e14c-referral-cmty-handler-essentials-mcu4-doc" title="Shop Now" title="Shop Now" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;
&lt;div style="clear:both;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="mcetoc_1gt3nnm2c6" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;Test Your Knowledge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;div style="float:left;padding-bottom:2px;padding-right:10px;width:150px;"&gt;            
&lt;style&gt;
   .e14-achievement-name{font-size:14px;font-weight:700;text-align:center;height:40px;margin:0;padding:5px}.e14-avatar{width:50% !important;margin:auto;border-radius:500px}.e14-avatar img{border-radius:543px}.e14-progress-bar{height:12px;border-radius:6px;background-clip:padding-box;background:#3575c2}.e14-achievement-thumb{height:200px}.e14-achievement-criteria{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria p{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria.complete{height:38px}.e14-achievement-criteria.complete p{height:38px}.e14-greyout{-webkit-filter:grayscale(90%);-moz-filter:grayscale(90%);-o-filter:grayscale(90%);-ms-filter:grayscale(90%);filter:grayscale(90%)}.e14-complete{float:right;margin-top:-20px;padding-right:5px;margin-bottom:12px;font-weight:700;color:dimgray}.e14-achievement-status{margin:5px}.shimmer{position:relative;overflow:hidden;background:#f6f7f8;background:linear-gradient(-45deg,#eee 40%,#fafafa 50%,#eee 60%);background-size:300%;background-position-x:100%;animation:shimmer 8s infinite linear}@keyframes shimmer{0%{background-position:-1000px 0}
100%{background-position:1000px 0}}
@media only screen and (max-width:480px){.e14-achievement-criteria{display:none}.e14-complete{font-size:9px}.e14-user-achievement{width:100px !important;height:150px !important}.e14-achievement-status{margin-top:15px}.e14-achievement-thumb{height:130px}.e14-achievement-name{font-size:10px}} 
&lt;/style&gt;

    &lt;div id="embed-d46b8321555f405290a509289c73fa45_thumbnails" data-columnclass="thumbnail-column"&gt;
        &lt;div class="content thumbnail e14-user-achievement" data-href="/achievements/3cfa47a9-456e-4380-85f0-7a9233e0f02b" style="border: 3px solid #8d8d8d;cursor: pointer;"&gt;
        	       &lt;h2 class="name e14-achievement-name"&gt;
    		            Secure MCUs for IoT Edge Applications&lt;br&gt;
    		       &lt;/h2&gt;
    			&lt;div class="e14-avatar e14-greyout"&gt;
    				&lt;img loading="lazy" src="https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==" style="width: 140px;max-height:140px;overflow:hidden;background:url(&amp;#39;https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==&amp;#39;) center center no-repeat;background-size:cover;aspect-ratio:140/140" alt="Secure MCUs for IoT Edge Applications" border="0" /&gt;
    		    &lt;/div&gt;
    		    &lt;div style="padding:5px;"&gt;
    		        &lt;div title="Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take the quiz, and leave your feedback to earn this badge." class="e14-achievement-criteria"&gt;Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take...&lt;/div&gt;
    		        
    		    &lt;/div&gt;
    		&lt;/div&gt;
    &lt;/div&gt;   
&lt;/script&gt;&lt;/div&gt;
&lt;p&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;p&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;center&gt;
&lt;h3 id="mcetoc_1gvmbt1j00"&gt;More MCUs educational modules click on the next button.&lt;/h3&gt;
&lt;/center&gt;
&lt;p&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/w/documents/1944/mcus-industrial-applications?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;a href="/w/documents/27574/the-basics-of-microcontrollers?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-next"&gt;Next&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, trustzone, security, arm cortex, privacy, internet of things, edge computing, wi-fi, microcontrollers, lora, gateway, microcontroller, mcu, wireless, secure mcus, nxp, mcus, zigbee, ess_module&lt;/div&gt;
</description></item><item><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/10</link><pubDate>Fri, 05 May 2023 16:40:41 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>pchan</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 10 posted to Documents by pchan on 5/5/2023 4:40:41 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gt3nnm2c0" class="essTitle xbold" title="Secure MCUs for IoT Edge Applications"&gt;&lt;a name="top"&gt;&lt;/a&gt;&lt;a href="/learn/learning-center/essentials" data-icid="essentials-mcu4-doc"&gt;&lt;img style="padding-right:18px;vertical-align:middle;" alt="essentials logo" src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt; MCUs Series - Part 4 - Secure MCUs for IoT Edge&lt;a href="#intro"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz CortexRegistered-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;br /&gt; &lt;strong&gt;&lt;a href="#components"&gt;Related Components&lt;/a&gt;&lt;/strong&gt; | &lt;strong&gt; &lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" style="vertical-align:middle;" alt="test link" src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/strong&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h5 class="essSponsor" title="NXP"&gt;&lt;span class="xs-mr2"&gt;sponsored by&lt;/span&gt;&lt;a href="/products/manufacturers/nxp" data-icid="essentials-mcu4-doc"&gt;&lt;img loading="lazy" style="vertical-align:middle;" alt="sponsor" src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="100px" /&gt;&lt;/a&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/h5&gt;
&lt;h2 id="mcetoc_1gt3nnm2c1" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;2. Objectives&lt;/h2&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Upon completion of this module, you will be able to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Understand the edge and the purpose of edge computing&lt;/li&gt;
&lt;li&gt;Be familiar with the trends and challenges in edge computing&lt;/li&gt;
&lt;li&gt;Describe the microcontrollers suitable for IoT edge applications&lt;/li&gt;
&lt;li&gt;Explain the main security features of the LPC5500 MCU series&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="mcetoc_1gt3nnm2c2" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;3. What is the Edge?&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks.&lt;/p&gt;
&lt;p&gt;IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-FiRegistered, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 1" src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c3" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;4. Design And Development For The Iot Edge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Privacy and Security:&lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as BluetoothRegistered Low Energy, ZigBee, Wi-Fi, and so on.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing. Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly, be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c4" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;5. Edge Architecture&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 2" src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 2: IoT Edge Hierarchy&lt;/h5&gt;
&lt;/div&gt;
&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/center&gt;
&lt;h2 id="mcetoc_1gt3nnm2c5" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;6. Secure MCUs For IoT Edge Applications&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC5500 MCU series, the market&amp;#39;s first ArmRegistered CortexRegistered-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZoneRegistered technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU. It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 3" src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 3: Arm Cortex-M33 Block Diagram. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 4" src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 5" src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p class="xbold" style="clear:both;"&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;These LPC5500 MCU series processors can be used with the Arm KeilRegistered MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure boot for hardware-based immutable root-of-trust&lt;/li&gt;
&lt;li&gt;Certificate-based secure debug authentication&lt;/li&gt;
&lt;li&gt;Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure isolation&amp;mdash;isolate secure and non-secure worlds&lt;/li&gt;
&lt;li&gt;Secure boot&amp;mdash;execute only authorized firmware&lt;/li&gt;
&lt;li&gt;Secure primitives&amp;mdash;cryptography primitives, including hashing, encryption, decryption, authentication&lt;/li&gt;
&lt;li&gt;Secure storage&amp;mdash;secure keys, code, and data confidentiality&lt;/li&gt;
&lt;li&gt;Secure update&amp;mdash;OTA firmware update, revoke keys, and anti-rollback&lt;/li&gt;
&lt;li&gt;Secure debug&amp;mdash;only authenticated parties allowed to debug&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 6" src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface. &lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast, saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;center&gt;
&lt;h5&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/h5&gt;
&lt;/center&gt;
&lt;div style="border-bottom:1px solid #555555;padding-bottom:10px;"&gt;&lt;img loading="lazy" class="nolightbox essProfile" style="float:left;padding:0px 13px 13px 0px;vertical-align:top;" alt="Profile image" height="110" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;
&lt;div style="font-size:1.2em;padding:12px 0px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/div&gt;
&lt;span &gt;&lt;a class="e14-button e14-button--primary e14-button--large" href="https://referral.element14.com/OrderCodeView?url=%2Fiot%2520edge%2520nxp&amp;COM=e14c-referral-cmty-handleressentials-mcu4-doc&amp;CMP=e14c-referral-cmty-handler-essentials-mcu4-doc" title="Shop Now" title="Shop Now" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;
&lt;div style="clear:both;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="mcetoc_1gt3nnm2c6" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;Test Your Knowledge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;div style="float:left;padding-bottom:2px;padding-right:10px;width:150px;"&gt;            
&lt;style&gt;
   .e14-achievement-name{font-size:14px;font-weight:700;text-align:center;height:40px;margin:0;padding:5px}.e14-avatar{width:50% !important;margin:auto;border-radius:500px}.e14-avatar img{border-radius:543px}.e14-progress-bar{height:12px;border-radius:6px;background-clip:padding-box;background:#3575c2}.e14-achievement-thumb{height:200px}.e14-achievement-criteria{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria p{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria.complete{height:38px}.e14-achievement-criteria.complete p{height:38px}.e14-greyout{-webkit-filter:grayscale(90%);-moz-filter:grayscale(90%);-o-filter:grayscale(90%);-ms-filter:grayscale(90%);filter:grayscale(90%)}.e14-complete{float:right;margin-top:-20px;padding-right:5px;margin-bottom:12px;font-weight:700;color:dimgray}.e14-achievement-status{margin:5px}.shimmer{position:relative;overflow:hidden;background:#f6f7f8;background:linear-gradient(-45deg,#eee 40%,#fafafa 50%,#eee 60%);background-size:300%;background-position-x:100%;animation:shimmer 8s infinite linear}@keyframes shimmer{0%{background-position:-1000px 0}
100%{background-position:1000px 0}}
@media only screen and (max-width:480px){.e14-achievement-criteria{display:none}.e14-complete{font-size:9px}.e14-user-achievement{width:100px !important;height:150px !important}.e14-achievement-status{margin-top:15px}.e14-achievement-thumb{height:130px}.e14-achievement-name{font-size:10px}} 
&lt;/style&gt;

    &lt;div id="embed-d46b8321555f405290a509289c73fa45_thumbnails" data-columnclass="thumbnail-column"&gt;
        &lt;div class="content thumbnail e14-user-achievement" data-href="/achievements/3cfa47a9-456e-4380-85f0-7a9233e0f02b" style="border: 3px solid #8d8d8d;cursor: pointer;"&gt;
        	       &lt;h2 class="name e14-achievement-name"&gt;
    		            Secure MCUs for IoT Edge Applications&lt;br&gt;
    		       &lt;/h2&gt;
    			&lt;div class="e14-avatar e14-greyout"&gt;
    				&lt;img loading="lazy" src="https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==" style="width: 140px;max-height:140px;overflow:hidden;background:url(&amp;#39;https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==&amp;#39;) center center no-repeat;background-size:cover;aspect-ratio:140/140" alt="Secure MCUs for IoT Edge Applications" border="0" /&gt;
    		    &lt;/div&gt;
    		    &lt;div style="padding:5px;"&gt;
    		        &lt;div title="Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take the quiz, and leave your feedback to earn this badge." class="e14-achievement-criteria"&gt;Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take...&lt;/div&gt;
    		        
    		    &lt;/div&gt;
    		&lt;/div&gt;
    &lt;/div&gt;   
&lt;/script&gt;&lt;/div&gt;
&lt;p&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;p&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;center&gt;
&lt;h3 id="mcetoc_1gvmbt1j00"&gt;More MCUs educational modules click on the next button.&lt;/h3&gt;
&lt;/center&gt;
&lt;p&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/w/documents/1944/mcus-industrial-applications?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;a href="/w/documents/27574/the-basics-of-microcontrollers?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-next"&gt;Next&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, internet of things, microcontrollers, microcontroller, mcu, secure mcus, nxp, mcus, ess_module&lt;/div&gt;
</description></item><item><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/9</link><pubDate>Fri, 05 May 2023 16:37:22 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>pchan</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 9 posted to Documents by pchan on 5/5/2023 4:37:22 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gt3nnm2c0" class="essTitle xbold" title="Secure MCUs for IoT Edge Applications"&gt;&lt;a name="top"&gt;&lt;/a&gt;&lt;a href="/learn/learning-center/essentials" data-icid="essentials-mcu4-doc"&gt;&lt;img style="padding-right:18px;vertical-align:middle;" alt="essentials logo" src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt; Secure MCUs for IoT Edge Applications&lt;a href="#intro"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz CortexRegistered-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;br /&gt; &lt;strong&gt;&lt;a href="#components"&gt;Related Components&lt;/a&gt;&lt;/strong&gt; | &lt;strong&gt; &lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" style="vertical-align:middle;" alt="test link" src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/strong&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h5 class="essSponsor" title="NXP"&gt;&lt;span class="xs-mr2"&gt;sponsored by&lt;/span&gt;&lt;a href="/products/manufacturers/nxp" data-icid="essentials-mcu4-doc"&gt;&lt;img loading="lazy" style="vertical-align:middle;" alt="sponsor" src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="100px" /&gt;&lt;/a&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/h5&gt;
&lt;h2 id="mcetoc_1gt3nnm2c1" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;2. Objectives&lt;/h2&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Upon completion of this module, you will be able to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Understand the edge and the purpose of edge computing&lt;/li&gt;
&lt;li&gt;Be familiar with the trends and challenges in edge computing&lt;/li&gt;
&lt;li&gt;Describe the microcontrollers suitable for IoT edge applications&lt;/li&gt;
&lt;li&gt;Explain the main security features of the LPC5500 MCU series&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="mcetoc_1gt3nnm2c2" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;3. What is the Edge?&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks.&lt;/p&gt;
&lt;p&gt;IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-FiRegistered, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 1" src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c3" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;4. Design And Development For The Iot Edge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Privacy and Security:&lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as BluetoothRegistered Low Energy, ZigBee, Wi-Fi, and so on.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing. Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly, be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c4" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;5. Edge Architecture&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 2" src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 2: IoT Edge Hierarchy&lt;/h5&gt;
&lt;/div&gt;
&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/center&gt;
&lt;h2 id="mcetoc_1gt3nnm2c5" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;6. Secure MCUs For IoT Edge Applications&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC5500 MCU series, the market&amp;#39;s first ArmRegistered CortexRegistered-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZoneRegistered technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU. It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 3" src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 3: Arm Cortex-M33 Block Diagram. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 4" src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 5" src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p class="xbold" style="clear:both;"&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;These LPC5500 MCU series processors can be used with the Arm KeilRegistered MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure boot for hardware-based immutable root-of-trust&lt;/li&gt;
&lt;li&gt;Certificate-based secure debug authentication&lt;/li&gt;
&lt;li&gt;Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure isolation&amp;mdash;isolate secure and non-secure worlds&lt;/li&gt;
&lt;li&gt;Secure boot&amp;mdash;execute only authorized firmware&lt;/li&gt;
&lt;li&gt;Secure primitives&amp;mdash;cryptography primitives, including hashing, encryption, decryption, authentication&lt;/li&gt;
&lt;li&gt;Secure storage&amp;mdash;secure keys, code, and data confidentiality&lt;/li&gt;
&lt;li&gt;Secure update&amp;mdash;OTA firmware update, revoke keys, and anti-rollback&lt;/li&gt;
&lt;li&gt;Secure debug&amp;mdash;only authenticated parties allowed to debug&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 6" src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface. &lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast, saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;center&gt;
&lt;h5&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/h5&gt;
&lt;/center&gt;
&lt;div style="border-bottom:1px solid #555555;padding-bottom:10px;"&gt;&lt;img loading="lazy" class="nolightbox essProfile" style="float:left;padding:0px 13px 13px 0px;vertical-align:top;" alt="Profile image" height="110" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;
&lt;div style="font-size:1.2em;padding:12px 0px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/div&gt;
&lt;span &gt;&lt;a class="e14-button e14-button--primary e14-button--large" href="https://referral.element14.com/OrderCodeView?url=%2Fiot%2520edge%2520nxp&amp;COM=e14c-referral-cmty-handleressentials-mcu4-doc&amp;CMP=e14c-referral-cmty-handler-essentials-mcu4-doc" title="Shop Now" title="Shop Now" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;
&lt;div style="clear:both;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="mcetoc_1gt3nnm2c6" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;Test Your Knowledge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;div style="float:left;padding-bottom:2px;padding-right:10px;width:150px;"&gt;            
&lt;style&gt;
   .e14-achievement-name{font-size:14px;font-weight:700;text-align:center;height:40px;margin:0;padding:5px}.e14-avatar{width:50% !important;margin:auto;border-radius:500px}.e14-avatar img{border-radius:543px}.e14-progress-bar{height:12px;border-radius:6px;background-clip:padding-box;background:#3575c2}.e14-achievement-thumb{height:200px}.e14-achievement-criteria{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria p{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria.complete{height:38px}.e14-achievement-criteria.complete p{height:38px}.e14-greyout{-webkit-filter:grayscale(90%);-moz-filter:grayscale(90%);-o-filter:grayscale(90%);-ms-filter:grayscale(90%);filter:grayscale(90%)}.e14-complete{float:right;margin-top:-20px;padding-right:5px;margin-bottom:12px;font-weight:700;color:dimgray}.e14-achievement-status{margin:5px}.shimmer{position:relative;overflow:hidden;background:#f6f7f8;background:linear-gradient(-45deg,#eee 40%,#fafafa 50%,#eee 60%);background-size:300%;background-position-x:100%;animation:shimmer 8s infinite linear}@keyframes shimmer{0%{background-position:-1000px 0}
100%{background-position:1000px 0}}
@media only screen and (max-width:480px){.e14-achievement-criteria{display:none}.e14-complete{font-size:9px}.e14-user-achievement{width:100px !important;height:150px !important}.e14-achievement-status{margin-top:15px}.e14-achievement-thumb{height:130px}.e14-achievement-name{font-size:10px}} 
&lt;/style&gt;

    &lt;div id="embed-d46b8321555f405290a509289c73fa45_thumbnails" data-columnclass="thumbnail-column"&gt;
        &lt;div class="content thumbnail e14-user-achievement" data-href="/achievements/3cfa47a9-456e-4380-85f0-7a9233e0f02b" style="border: 3px solid #8d8d8d;cursor: pointer;"&gt;
        	       &lt;h2 class="name e14-achievement-name"&gt;
    		            Secure MCUs for IoT Edge Applications&lt;br&gt;
    		       &lt;/h2&gt;
    			&lt;div class="e14-avatar e14-greyout"&gt;
    				&lt;img loading="lazy" src="https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==" style="width: 140px;max-height:140px;overflow:hidden;background:url(&amp;#39;https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==&amp;#39;) center center no-repeat;background-size:cover;aspect-ratio:140/140" alt="Secure MCUs for IoT Edge Applications" border="0" /&gt;
    		    &lt;/div&gt;
    		    &lt;div style="padding:5px;"&gt;
    		        &lt;div title="Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take the quiz, and leave your feedback to earn this badge." class="e14-achievement-criteria"&gt;Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take...&lt;/div&gt;
    		        
    		    &lt;/div&gt;
    		&lt;/div&gt;
    &lt;/div&gt;   
&lt;/script&gt;&lt;/div&gt;
&lt;p&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;p&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;center&gt;More MCUs educational modules click on the next button.&lt;/center&gt;
&lt;p&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/w/documents/1944/mcus-industrial-applications?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;a href="/w/documents/27574/the-basics-of-microcontrollers?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-next"&gt;Next&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, internet of things, microcontrollers, microcontroller, mcu, secure mcus, nxp, mcus, ess_module&lt;/div&gt;
</description></item><item><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/8</link><pubDate>Fri, 05 May 2023 16:35:23 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>pchan</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 8 posted to Documents by pchan on 5/5/2023 4:35:23 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gt3nnm2c0" class="essTitle xbold" title="Secure MCUs for IoT Edge Applications"&gt;&lt;a name="top"&gt;&lt;/a&gt;&lt;a href="/learn/learning-center/essentials" data-icid="essentials-mcu4-doc"&gt;&lt;img style="padding-right:18px;vertical-align:middle;" alt="essentials logo" src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt; Secure MCUs for IoT Edge Applications&lt;a href="#intro"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz CortexRegistered-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;br /&gt; &lt;strong&gt;&lt;a href="#components"&gt;Related Components&lt;/a&gt;&lt;/strong&gt; | &lt;strong&gt; &lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" style="vertical-align:middle;" alt="test link" src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/strong&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h5 class="essSponsor" title="NXP"&gt;&lt;span class="xs-mr2"&gt;sponsored by&lt;/span&gt;&lt;a href="/products/manufacturers/nxp" data-icid="essentials-mcu4-doc"&gt;&lt;img loading="lazy" style="vertical-align:middle;" alt="sponsor" src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="100px" /&gt;&lt;/a&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/h5&gt;
&lt;h2 id="mcetoc_1gt3nnm2c1" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;2. Objectives&lt;/h2&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Upon completion of this module, you will be able to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Understand the edge and the purpose of edge computing&lt;/li&gt;
&lt;li&gt;Be familiar with the trends and challenges in edge computing&lt;/li&gt;
&lt;li&gt;Describe the microcontrollers suitable for IoT edge applications&lt;/li&gt;
&lt;li&gt;Explain the main security features of the LPC5500 MCU series&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="mcetoc_1gt3nnm2c2" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;3. What is the Edge?&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks.&lt;/p&gt;
&lt;p&gt;IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-FiRegistered, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 1" src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c3" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;4. Design And Development For The Iot Edge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Privacy and Security:&lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as BluetoothRegistered Low Energy, ZigBee, Wi-Fi, and so on.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing. Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly, be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c4" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;5. Edge Architecture&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 2" src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 2: IoT Edge Hierarchy&lt;/h5&gt;
&lt;/div&gt;
&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/center&gt;
&lt;h2 id="mcetoc_1gt3nnm2c5" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;6. Secure MCUs For IoT Edge Applications&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC5500 MCU series, the market&amp;#39;s first ArmRegistered CortexRegistered-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZoneRegistered technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU. It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 3" src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 3: Arm Cortex-M33 Block Diagram. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 4" src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 5" src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p class="xbold" style="clear:both;"&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;These LPC5500 MCU series processors can be used with the Arm KeilRegistered MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure boot for hardware-based immutable root-of-trust&lt;/li&gt;
&lt;li&gt;Certificate-based secure debug authentication&lt;/li&gt;
&lt;li&gt;Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure isolation&amp;mdash;isolate secure and non-secure worlds&lt;/li&gt;
&lt;li&gt;Secure boot&amp;mdash;execute only authorized firmware&lt;/li&gt;
&lt;li&gt;Secure primitives&amp;mdash;cryptography primitives, including hashing, encryption, decryption, authentication&lt;/li&gt;
&lt;li&gt;Secure storage&amp;mdash;secure keys, code, and data confidentiality&lt;/li&gt;
&lt;li&gt;Secure update&amp;mdash;OTA firmware update, revoke keys, and anti-rollback&lt;/li&gt;
&lt;li&gt;Secure debug&amp;mdash;only authenticated parties allowed to debug&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 6" src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface. &lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast, saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;center&gt;
&lt;h5&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/h5&gt;
&lt;/center&gt;
&lt;div style="border-bottom:1px solid #555555;padding-bottom:10px;"&gt;&lt;img loading="lazy" class="nolightbox essProfile" style="float:left;padding:0px 13px 13px 0px;vertical-align:top;" alt="Profile image" height="110" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;
&lt;div style="font-size:1.2em;padding:12px 0px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/div&gt;
&lt;span &gt;&lt;a class="e14-button e14-button--primary e14-button--large" href="https://referral.element14.com/OrderCodeView?url=%2Fiot%2520edge%2520nxp&amp;COM=e14c-referral-cmty-handleressentials-mcu4-doc&amp;CMP=e14c-referral-cmty-handler-essentials-mcu4-doc" title="Shop Now" title="Shop Now" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;
&lt;div style="clear:both;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="mcetoc_1gt3nnm2c6" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;Test Your Knowledge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;div style="float:left;padding-bottom:2px;padding-right:10px;width:150px;"&gt;            
&lt;style&gt;
   .e14-achievement-name{font-size:14px;font-weight:700;text-align:center;height:40px;margin:0;padding:5px}.e14-avatar{width:50% !important;margin:auto;border-radius:500px}.e14-avatar img{border-radius:543px}.e14-progress-bar{height:12px;border-radius:6px;background-clip:padding-box;background:#3575c2}.e14-achievement-thumb{height:200px}.e14-achievement-criteria{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria p{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria.complete{height:38px}.e14-achievement-criteria.complete p{height:38px}.e14-greyout{-webkit-filter:grayscale(90%);-moz-filter:grayscale(90%);-o-filter:grayscale(90%);-ms-filter:grayscale(90%);filter:grayscale(90%)}.e14-complete{float:right;margin-top:-20px;padding-right:5px;margin-bottom:12px;font-weight:700;color:dimgray}.e14-achievement-status{margin:5px}.shimmer{position:relative;overflow:hidden;background:#f6f7f8;background:linear-gradient(-45deg,#eee 40%,#fafafa 50%,#eee 60%);background-size:300%;background-position-x:100%;animation:shimmer 8s infinite linear}@keyframes shimmer{0%{background-position:-1000px 0}
100%{background-position:1000px 0}}
@media only screen and (max-width:480px){.e14-achievement-criteria{display:none}.e14-complete{font-size:9px}.e14-user-achievement{width:100px !important;height:150px !important}.e14-achievement-status{margin-top:15px}.e14-achievement-thumb{height:130px}.e14-achievement-name{font-size:10px}} 
&lt;/style&gt;

    &lt;div id="embed-d46b8321555f405290a509289c73fa45_thumbnails" data-columnclass="thumbnail-column"&gt;
        &lt;div class="content thumbnail e14-user-achievement" data-href="/achievements/3cfa47a9-456e-4380-85f0-7a9233e0f02b" style="border: 3px solid #8d8d8d;cursor: pointer;"&gt;
        	       &lt;h2 class="name e14-achievement-name"&gt;
    		            Secure MCUs for IoT Edge Applications&lt;br&gt;
    		       &lt;/h2&gt;
    			&lt;div class="e14-avatar e14-greyout"&gt;
    				&lt;img loading="lazy" src="https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==" style="width: 140px;max-height:140px;overflow:hidden;background:url(&amp;#39;https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==&amp;#39;) center center no-repeat;background-size:cover;aspect-ratio:140/140" alt="Secure MCUs for IoT Edge Applications" border="0" /&gt;
    		    &lt;/div&gt;
    		    &lt;div style="padding:5px;"&gt;
    		        &lt;div title="Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take the quiz, and leave your feedback to earn this badge." class="e14-achievement-criteria"&gt;Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take...&lt;/div&gt;
    		        
    		    &lt;/div&gt;
    		&lt;/div&gt;
    &lt;/div&gt;   
&lt;/script&gt;&lt;/div&gt;
&lt;p&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;p&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gvmbt1j00"&gt;More MCUs educational modules click on the next button.&lt;/h3&gt;
&lt;p&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/w/documents/27574/the-basics-of-microcontrollers?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;a href="/w/documents/1944/mcus-industrial-applications?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-next"&gt;Next&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, internet of things, microcontrollers, microcontroller, mcu, secure mcus, nxp, mcus, ess_module&lt;/div&gt;
</description></item><item><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/7</link><pubDate>Fri, 05 May 2023 16:33:11 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>pchan</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 7 posted to Documents by pchan on 5/5/2023 4:33:11 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gt3nnm2c0" class="essTitle xbold" title="Secure MCUs for IoT Edge Applications"&gt;&lt;a name="top"&gt;&lt;/a&gt;&lt;a href="/learn/learning-center/essentials" data-icid="essentials-mcu4-doc"&gt;&lt;img style="padding-right:18px;vertical-align:middle;" alt="essentials logo" src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt; Secure MCUs for IoT Edge Applications&lt;a href="#intro"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz CortexRegistered-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;br /&gt; &lt;strong&gt;&lt;a href="#components"&gt;Related Components&lt;/a&gt;&lt;/strong&gt; | &lt;strong&gt; &lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" style="vertical-align:middle;" alt="test link" src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/strong&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h5 class="essSponsor" title="NXP"&gt;&lt;span class="xs-mr2"&gt;sponsored by&lt;/span&gt;&lt;a href="/products/manufacturers/nxp" data-icid="essentials-mcu4-doc"&gt;&lt;img loading="lazy" style="vertical-align:middle;" alt="sponsor" src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="120px" /&gt;&lt;/a&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/h5&gt;
&lt;h2 id="mcetoc_1gt3nnm2c1" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;2. Objectives&lt;/h2&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Upon completion of this module, you will be able to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Understand the edge and the purpose of edge computing&lt;/li&gt;
&lt;li&gt;Be familiar with the trends and challenges in edge computing&lt;/li&gt;
&lt;li&gt;Describe the microcontrollers suitable for IoT edge applications&lt;/li&gt;
&lt;li&gt;Explain the main security features of the LPC5500 MCU series&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="mcetoc_1gt3nnm2c2" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;3. What is the Edge?&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks.&lt;/p&gt;
&lt;p&gt;IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-FiRegistered, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 1" src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c3" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;4. Design And Development For The Iot Edge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Privacy and Security:&lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as BluetoothRegistered Low Energy, ZigBee, Wi-Fi, and so on.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing. Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly, be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gt3nnm2c4" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;5. Edge Architecture&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 2" src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 2: IoT Edge Hierarchy&lt;/h5&gt;
&lt;/div&gt;
&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/center&gt;
&lt;h2 id="mcetoc_1gt3nnm2c5" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;6. Secure MCUs For IoT Edge Applications&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;hr style="margin:0;" /&gt;
&lt;p&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC5500 MCU series, the market&amp;#39;s first ArmRegistered CortexRegistered-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZoneRegistered technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU. It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 3" src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 3: Arm Cortex-M33 Block Diagram. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p class="xbold"&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 4" src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 5" src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds. Image Source: ARM&lt;/h5&gt;
&lt;/div&gt;
&lt;p&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p class="xbold" style="clear:both;"&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;These LPC5500 MCU series processors can be used with the Arm KeilRegistered MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure boot for hardware-based immutable root-of-trust&lt;/li&gt;
&lt;li&gt;Certificate-based secure debug authentication&lt;/li&gt;
&lt;li&gt;Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Secure isolation&amp;mdash;isolate secure and non-secure worlds&lt;/li&gt;
&lt;li&gt;Secure boot&amp;mdash;execute only authorized firmware&lt;/li&gt;
&lt;li&gt;Secure primitives&amp;mdash;cryptography primitives, including hashing, encryption, decryption, authentication&lt;/li&gt;
&lt;li&gt;Secure storage&amp;mdash;secure keys, code, and data confidentiality&lt;/li&gt;
&lt;li&gt;Secure update&amp;mdash;OTA firmware update, revoke keys, and anti-rollback&lt;/li&gt;
&lt;li&gt;Secure debug&amp;mdash;only authenticated parties allowed to debug&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div&gt;&lt;img loading="lazy" class="nolightbox" alt="figure 6" src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;br /&gt;
&lt;h5&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/h5&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface. &lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="xbold"&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast, saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;center&gt;
&lt;h5&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/h5&gt;
&lt;/center&gt;
&lt;div style="border-bottom:1px solid #555555;padding-bottom:10px;"&gt;&lt;img loading="lazy" class="nolightbox essProfile" style="float:left;padding:0px 13px 13px 0px;vertical-align:top;" alt="Profile image" height="110" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;
&lt;div style="font-size:1.2em;padding:12px 0px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/div&gt;
&lt;span &gt;&lt;a class="e14-button e14-button--primary e14-button--large" href="https://referral.element14.com/OrderCodeView?url=%2Fiot%2520edge%2520nxp&amp;COM=e14c-referral-cmty-handleressentials-mcu4-doc&amp;CMP=e14c-referral-cmty-handler-essentials-mcu4-doc" title="Shop Now" title="Shop Now" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;
&lt;div style="clear:both;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="mcetoc_1gt3nnm2c6" class="xbold" style="color:#007fac;display:inline-block;vertical-align:middle;width:75%;"&gt;Test Your Knowledge&lt;/h2&gt;
&lt;div class="xbold" style="display:inline-block;font-size:11px;text-align:right;vertical-align:middle;width:24%;"&gt;&lt;a href="#top"&gt;Back to Top&lt;/a&gt;&lt;/div&gt;
&lt;div style="float:left;padding-bottom:2px;padding-right:10px;width:150px;"&gt;            
&lt;style&gt;
   .e14-achievement-name{font-size:14px;font-weight:700;text-align:center;height:40px;margin:0;padding:5px}.e14-avatar{width:50% !important;margin:auto;border-radius:500px}.e14-avatar img{border-radius:543px}.e14-progress-bar{height:12px;border-radius:6px;background-clip:padding-box;background:#3575c2}.e14-achievement-thumb{height:200px}.e14-achievement-criteria{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria p{font-size:10px !important;overflow:hidden;margin-bottom:10px;line-height:1.5;height:60px}.e14-achievement-criteria.complete{height:38px}.e14-achievement-criteria.complete p{height:38px}.e14-greyout{-webkit-filter:grayscale(90%);-moz-filter:grayscale(90%);-o-filter:grayscale(90%);-ms-filter:grayscale(90%);filter:grayscale(90%)}.e14-complete{float:right;margin-top:-20px;padding-right:5px;margin-bottom:12px;font-weight:700;color:dimgray}.e14-achievement-status{margin:5px}.shimmer{position:relative;overflow:hidden;background:#f6f7f8;background:linear-gradient(-45deg,#eee 40%,#fafafa 50%,#eee 60%);background-size:300%;background-position-x:100%;animation:shimmer 8s infinite linear}@keyframes shimmer{0%{background-position:-1000px 0}
100%{background-position:1000px 0}}
@media only screen and (max-width:480px){.e14-achievement-criteria{display:none}.e14-complete{font-size:9px}.e14-user-achievement{width:100px !important;height:150px !important}.e14-achievement-status{margin-top:15px}.e14-achievement-thumb{height:130px}.e14-achievement-name{font-size:10px}} 
&lt;/style&gt;

    &lt;div id="embed-d46b8321555f405290a509289c73fa45_thumbnails" data-columnclass="thumbnail-column"&gt;
        &lt;div class="content thumbnail e14-user-achievement" data-href="/achievements/3cfa47a9-456e-4380-85f0-7a9233e0f02b" style="border: 3px solid #8d8d8d;cursor: pointer;"&gt;
        	       &lt;h2 class="name e14-achievement-name"&gt;
    		            Secure MCUs for IoT Edge Applications&lt;br&gt;
    		       &lt;/h2&gt;
    			&lt;div class="e14-avatar e14-greyout"&gt;
    				&lt;img loading="lazy" src="https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==" style="width: 140px;max-height:140px;overflow:hidden;background:url(&amp;#39;https://community-storage.element14.com/communityserver-components-imagefileviewer/achievements/3cfa47a9456e438085f07a9233e0f02b/Secure%20MCUs%20for%20IoT%20Edge%20Applications.png-140x140x2.png?_=Dylip+VM+dqimI0flcJ29g==&amp;#39;) center center no-repeat;background-size:cover;aspect-ratio:140/140" alt="Secure MCUs for IoT Edge Applications" border="0" /&gt;
    		    &lt;/div&gt;
    		    &lt;div style="padding:5px;"&gt;
    		        &lt;div title="Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take the quiz, and leave your feedback to earn this badge." class="e14-achievement-criteria"&gt;Complete our Essentials: Secure MCUs for IoT Edge Applications course, rate the document, take...&lt;/div&gt;
    		        
    		    &lt;/div&gt;
    		&lt;/div&gt;
    &lt;/div&gt;   
&lt;/script&gt;&lt;/div&gt;
&lt;p&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;p&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gvmbt1j00"&gt;More MCUs educational modules click on the next button.&lt;/h3&gt;
&lt;p&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/w/documents/27574/the-basics-of-microcontrollers?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;a href="/w/documents/1944/mcus-industrial-applications?ICID=essentials-mcu4-doc"&gt;
                    &lt;button class="e14-nav-button-next"&gt;Next&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, internet of things, microcontrollers, microcontroller, mcu, secure mcus, nxp, mcus, ess_module&lt;/div&gt;
</description></item><item><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/6</link><pubDate>Tue, 12 Apr 2022 14:38:37 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>pchan</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 6 posted to Documents by pchan on 4/12/2022 2:38:37 PM&lt;br /&gt;
&lt;p&gt;&lt;span&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/w/documents/1944/mcus-industrial-applications?ICID=essentials-mcuiotedge-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;a href="/w/documents/27574/the-basics-of-microcontrollers?ICID=essentials-mcuiotedge-doc"&gt;
                    &lt;button class="e14-nav-button-next"&gt;Next&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="background-color:#f9f9f9;border:1px solid #c6c6c6;display:block;float:right;padding:6px 8px;width:212px;"&gt;&lt;a class="jivecontainerTT-hover-container jive-link-community-small" href="/learn/learning-center/?ICID=essentials-mcuiotedge-doc"&gt;element14 Learning Center&lt;/a&gt;&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="border:1px solid #c6c6c6;clear:both;padding:8px;"&gt;
&lt;div style="display:inline-block;padding-right:16px;vertical-align:top;"&gt;&lt;a href="/learn/learning-center/essentials/?ICID=essentials-mcuiotedge-doc"&gt;&lt;img alt="image"  src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="display:inline-block;"&gt;
&lt;p class="essTitle" style="font-size:18px;font-weight:bold;margin:0;" title="Secure MCUs for IoT Edge Apps"&gt;Secure MCUs for IoT Edge Applications&lt;/p&gt;
&lt;p style="margin:0;padding:8px;"&gt;&lt;span style="font-size:11px;padding-right:10px;"&gt;&lt;em&gt;Sponsored by&lt;/em&gt;&lt;/span&gt;&lt;a href="https://www.nxp.com/" rel="nofollow ugc noopener noreferrer" target="_blank"&gt;&lt;img loading="lazy" alt="image" class="essSponsor" style="vertical-align:top;" title="NXP"  src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="65px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;hr /&gt;
&lt;div style="clear:both;line-height:1.5;"&gt;&lt;span style="padding-right:6px;"&gt;&lt;a class="jive-link-anchor-small" href="#intro"&gt;1. Introduction&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#object"&gt;2. Objectives&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec3"&gt;3. What is the Edge?&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec4"&gt;4. Design And Development For The IoT Edge&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec5"&gt;5. Edge Architecture&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec6"&gt;6. Secure MCUs For IoT Edge Applications&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-wiki-small" href="/w/documents/4403/related-components-for-element14-essentials-secure-mcus-for-iot-edge-applications?ICID=essentials-mcuiotedge-doc"&gt;Related Components and Dev Boards&lt;/a&gt;&lt;/span&gt; | &lt;span style="font-weight:bold;padding:0px 6px;"&gt;&lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding:8px 0px;"&gt;&lt;a name="intro"&gt;&lt;/a&gt;&lt;strong&gt;1.&amp;nbsp; Introduction&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin:0;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;&lt;strong&gt;2.&amp;nbsp; Objectives&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;em&gt;Upon completion of this learning module, you will be able to:&lt;/em&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Understand the edge and the purpose of edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Be familiar with the trends and challenges in edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Describe the microcontrollers suitable for IoT edge applications&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Explain the main security features of the LPC5500 MCU series&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;3. What is the Edge?&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks. IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-Fi&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram1.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;4. Design And Development For The Iot Edge&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Privacy and Security: &lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as Bluetooth&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Low Energy, ZigBee, Wi-Fi, and so on.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing.&amp;nbsp; Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly,&amp;nbsp; be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;5. Edge Architecture&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram2.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 2: IoT Edge Hierarchy&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="clear:both;margin:0;"&gt;&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;6. Secure MCUs For IoT Edge Applications&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC5500 MCU series, the market&amp;#39;s first Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZone&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU.&amp;nbsp; It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram3.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 3: Arm Cortex-M33 Block Diagram.&amp;nbsp; &lt;/em&gt;Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram4.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram5.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These LPC5500 MCU series processors can be used with the Arm Keil&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot for hardware-based immutable root-of-trust&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Certificate-based secure debug authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure isolation -- isolate secure and non-secure worlds&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot -- execute only authorized firmware&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure primitives -- cryptography primitives, including hashing, encryption, decryption, authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure storage -- secure keys, code, and data confidentiality&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure update -- OTA firmware update, revoke keys, and anti-rollback&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure debug -- only authenticated parties allowed to debug&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 20px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram6.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface.&lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast,&amp;nbsp; saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-size:11px;margin:0;padding-top:12px;"&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/p&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;border:1px solid #a9aaaa;padding:12px 12px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/MCUIoTEdge_profile.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox essProfile" style="float:left;padding-right:10px;vertical-align:middle;"  height="115" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;&lt;/a&gt;
&lt;div&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding-bottom:10px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AU_CN_HK_IN_KR_MY_NZ_PH_SG_TH_TW_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://sg.element14.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AT_BE_BG_CZ_DK_EE_FI_FR_DE_HU_IE_IL_IT_LV_LT_NL_NO_PL_PT_RO_RU_SK_SI_ES_SE_CH_TR_UK_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://uk.farnell.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-US_BR_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://www.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-CA_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://canada.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-MX_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://mexico.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:20px;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:18px;margin:0;padding-bottom:8px;"&gt;&lt;span style="float:right;font-size:11px;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt;&lt;strong&gt;Test Your Knowledge&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a href="/e14/assets/legacy/2019/100x100_mcu_badge.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" style="float:left;padding:0px 10px 5px 0px;vertical-align:top;"  height="80" src="/e14/assets/legacy/2019/100x100_mcu_badge.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-bottom:8px;"&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section, and give the module a star rating.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;div class="e14-quiz-document-metadata e14-init-hidden"&gt;&lt;/div&gt;
&lt;div class="migration-injected-attachments"&gt;
&lt;div style="font-weight:bold;margin:15px 0 5px 0;"&gt;Attachments:&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;table style="border:0;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width="160"&gt;&lt;span id="attid_https://www.element14.com/community/api/core/v3/attachments/284571" class="_se_attachment"&gt;&lt;a href="https://community.element14.com/cfs-file/__key/communityserver-wikis-components-files/00-00-00-02-50/Secure-MCUs-for-IoT-Edge-Applications.pdf"&gt;community.element14.com/.../Secure-MCUs-for-IoT-Edge-Applications.pdf&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style="font-size:80%;"&gt;Secure MCUs for IoT Edge Applications.pdf&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;script&gt;window.top.e14.func.queueScripts.add(function() { window.top.e14.func.e14ConditionalContent();} );&lt;/script&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, iot_ess, element14, microcontrollers, essentials, secure mcus, nxp, mcus, element14 essentials: secure mcus for iot edge applicat, ess_module&lt;/div&gt;
</description></item><item><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/5</link><pubDate>Tue, 05 Apr 2022 20:43:14 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>pchan</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 5 posted to Documents by pchan on 4/5/2022 8:43:14 PM&lt;br /&gt;
&lt;p&gt;&lt;span&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/w/documents/1944/mcus-industrial-applications?ICID=essentials-mcuiotedge-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="background-color:#f9f9f9;border:1px solid #c6c6c6;display:block;float:right;padding:6px 8px;width:212px;"&gt;&lt;a class="jivecontainerTT-hover-container jive-link-community-small" href="/learn/learning-center/?ICID=essentials-mcuiotedge-doc"&gt;element14 Learning Center&lt;/a&gt;&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="border:1px solid #c6c6c6;clear:both;padding:8px;"&gt;
&lt;div style="display:inline-block;padding-right:16px;vertical-align:top;"&gt;&lt;a href="/learn/learning-center/essentials/?ICID=essentials-mcuiotedge-doc"&gt;&lt;img alt="image"  src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="display:inline-block;"&gt;
&lt;p class="essTitle" style="font-size:18px;font-weight:bold;margin:0;" title="Secure MCUs for IoT Edge Apps"&gt;Secure MCUs for IoT Edge Applications&lt;/p&gt;
&lt;p style="margin:0;padding:8px;"&gt;&lt;span style="font-size:11px;padding-right:10px;"&gt;&lt;em&gt;Sponsored by&lt;/em&gt;&lt;/span&gt;&lt;a href="https://www.nxp.com/" rel="nofollow ugc noopener noreferrer" target="_blank"&gt;&lt;img loading="lazy" alt="image" class="essSponsor" style="vertical-align:top;" title="NXP"  src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="65px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;hr /&gt;
&lt;div style="clear:both;line-height:1.5;"&gt;&lt;span style="padding-right:6px;"&gt;&lt;a class="jive-link-anchor-small" href="#intro"&gt;1. Introduction&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#object"&gt;2. Objectives&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec3"&gt;3. What is the Edge?&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec4"&gt;4. Design And Development For The IoT Edge&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec5"&gt;5. Edge Architecture&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec6"&gt;6. Secure MCUs For IoT Edge Applications&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-wiki-small" href="/w/documents/4403/related-components-for-element14-essentials-secure-mcus-for-iot-edge-applications?ICID=essentials-mcuiotedge-doc"&gt;Related Components and Dev Boards&lt;/a&gt;&lt;/span&gt; | &lt;span style="font-weight:bold;padding:0px 6px;"&gt;&lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding:8px 0px;"&gt;&lt;a name="intro"&gt;&lt;/a&gt;&lt;strong&gt;1.&amp;nbsp; Introduction&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin:0;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;&lt;strong&gt;2.&amp;nbsp; Objectives&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;em&gt;Upon completion of this learning module, you will be able to:&lt;/em&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Understand the edge and the purpose of edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Be familiar with the trends and challenges in edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Describe the microcontrollers suitable for IoT edge applications&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Explain the main security features of the LPC5500 MCU series&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;3. What is the Edge?&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks. IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-Fi&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram1.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;4. Design And Development For The Iot Edge&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Privacy and Security: &lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as Bluetooth&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Low Energy, ZigBee, Wi-Fi, and so on.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing.&amp;nbsp; Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly,&amp;nbsp; be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;5. Edge Architecture&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram2.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 2: IoT Edge Hierarchy&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="clear:both;margin:0;"&gt;&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;6. Secure MCUs For IoT Edge Applications&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC5500 MCU series, the market&amp;#39;s first Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZone&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU.&amp;nbsp; It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram3.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 3: Arm Cortex-M33 Block Diagram.&amp;nbsp; &lt;/em&gt;Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram4.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram5.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These LPC5500 MCU series processors can be used with the Arm Keil&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot for hardware-based immutable root-of-trust&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Certificate-based secure debug authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure isolation -- isolate secure and non-secure worlds&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot -- execute only authorized firmware&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure primitives -- cryptography primitives, including hashing, encryption, decryption, authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure storage -- secure keys, code, and data confidentiality&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure update -- OTA firmware update, revoke keys, and anti-rollback&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure debug -- only authenticated parties allowed to debug&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 20px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram6.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface.&lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast,&amp;nbsp; saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-size:11px;margin:0;padding-top:12px;"&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/p&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;border:1px solid #a9aaaa;padding:12px 12px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/MCUIoTEdge_profile.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox essProfile" style="float:left;padding-right:10px;vertical-align:middle;"  height="115" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;&lt;/a&gt;
&lt;div&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding-bottom:10px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AU_CN_HK_IN_KR_MY_NZ_PH_SG_TH_TW_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://sg.element14.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AT_BE_BG_CZ_DK_EE_FI_FR_DE_HU_IE_IL_IT_LV_LT_NL_NO_PL_PT_RO_RU_SK_SI_ES_SE_CH_TR_UK_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://uk.farnell.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-US_BR_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://www.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-CA_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://canada.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-MX_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://mexico.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:20px;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:18px;margin:0;padding-bottom:8px;"&gt;&lt;span style="float:right;font-size:11px;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt;&lt;strong&gt;Test Your Knowledge&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a href="/e14/assets/legacy/2019/100x100_mcu_badge.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" style="float:left;padding:0px 10px 5px 0px;vertical-align:top;"  height="80" src="/e14/assets/legacy/2019/100x100_mcu_badge.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-bottom:8px;"&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section, and give the module a star rating.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;div class="e14-quiz-document-metadata e14-init-hidden"&gt;&lt;/div&gt;
&lt;div class="migration-injected-attachments"&gt;
&lt;div style="font-weight:bold;margin:15px 0 5px 0;"&gt;Attachments:&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;table style="border:0;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width="160"&gt;&lt;span id="attid_https://www.element14.com/community/api/core/v3/attachments/284571" class="_se_attachment"&gt;&lt;a href="https://community.element14.com/cfs-file/__key/communityserver-wikis-components-files/00-00-00-02-50/Secure-MCUs-for-IoT-Edge-Applications.pdf"&gt;community.element14.com/.../Secure-MCUs-for-IoT-Edge-Applications.pdf&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style="font-size:80%;"&gt;Secure MCUs for IoT Edge Applications.pdf&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;script&gt;window.top.e14.func.queueScripts.add(function() { window.top.e14.func.e14ConditionalContent();} );&lt;/script&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, iot_ess, element14, microcontrollers, essentials, secure mcus, nxp, mcus, element14 essentials: secure mcus for iot edge applicat, ess_module&lt;/div&gt;
</description></item><item><title>Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/4</link><pubDate>Mon, 28 Feb 2022 20:59:56 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>pchan</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 4 posted to Documents by pchan on 2/28/2022 8:59:56 PM&lt;br /&gt;
&lt;p&gt;&lt;span&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/learn/learning-center/essentials?ICID=essentials-mcuiotedge-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="background-color:#f9f9f9;border:1px solid #c6c6c6;display:block;float:right;padding:6px 8px;width:212px;"&gt;&lt;a class="jivecontainerTT-hover-container jive-link-community-small" href="/learn/learning-center/?ICID=essentials-mcuiotedge-doc"&gt;element14 Learning Center&lt;/a&gt;&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="border:1px solid #c6c6c6;clear:both;padding:8px;"&gt;
&lt;div style="display:inline-block;padding-right:16px;vertical-align:top;"&gt;&lt;a href="/learn/learning-center/essentials/?ICID=essentials-mcuiotedge-doc"&gt;&lt;img alt="image"  src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="display:inline-block;"&gt;
&lt;p class="essTitle" style="font-size:18px;font-weight:bold;margin:0;" title="Secure MCUs for IoT Edge Apps"&gt;Secure MCUs for IoT Edge Applications&lt;/p&gt;
&lt;p style="margin:0;padding:8px;"&gt;&lt;span style="font-size:11px;padding-right:10px;"&gt;&lt;em&gt;Sponsored by&lt;/em&gt;&lt;/span&gt;&lt;a href="https://www.nxp.com/" rel="nofollow ugc noopener noreferrer" target="_blank"&gt;&lt;img loading="lazy" alt="image" class="essSponsor" style="vertical-align:top;" title="NXP"  src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="65px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;hr /&gt;
&lt;div style="clear:both;line-height:1.5;"&gt;&lt;span style="padding-right:6px;"&gt;&lt;a class="jive-link-anchor-small" href="#intro"&gt;1. Introduction&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#object"&gt;2. Objectives&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec3"&gt;3. What is the Edge?&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec4"&gt;4. Design And Development For The IoT Edge&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec5"&gt;5. Edge Architecture&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec6"&gt;6. Secure MCUs For IoT Edge Applications&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-wiki-small" href="/w/documents/4403/related-components-for-element14-essentials-secure-mcus-for-iot-edge-applications?ICID=essentials-mcuiotedge-doc"&gt;Related Components and Dev Boards&lt;/a&gt;&lt;/span&gt; | &lt;span style="font-weight:bold;padding:0px 6px;"&gt;&lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding:8px 0px;"&gt;&lt;a name="intro"&gt;&lt;/a&gt;&lt;strong&gt;1.&amp;nbsp; Introduction&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin:0;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;&lt;strong&gt;2.&amp;nbsp; Objectives&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;em&gt;Upon completion of this learning module, you will be able to:&lt;/em&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Understand the edge and the purpose of edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Be familiar with the trends and challenges in edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Describe the microcontrollers suitable for IoT edge applications&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Explain the main security features of the LPC5500 MCU series&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;3. What is the Edge?&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks. IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-Fi&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram1.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;4. Design And Development For The Iot Edge&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Privacy and Security: &lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as Bluetooth&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Low Energy, ZigBee, Wi-Fi, and so on.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing.&amp;nbsp; Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly,&amp;nbsp; be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;5. Edge Architecture&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram2.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 2: IoT Edge Hierarchy&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="clear:both;margin:0;"&gt;&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;6. Secure MCUs For IoT Edge Applications&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC5500 MCU series, the market&amp;#39;s first Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZone&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU.&amp;nbsp; It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram3.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 3: Arm Cortex-M33 Block Diagram.&amp;nbsp; &lt;/em&gt;Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram4.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram5.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These LPC5500 MCU series processors can be used with the Arm Keil&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot for hardware-based immutable root-of-trust&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Certificate-based secure debug authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure isolation -- isolate secure and non-secure worlds&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot -- execute only authorized firmware&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure primitives -- cryptography primitives, including hashing, encryption, decryption, authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure storage -- secure keys, code, and data confidentiality&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure update -- OTA firmware update, revoke keys, and anti-rollback&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure debug -- only authenticated parties allowed to debug&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 20px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram6.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface.&lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast,&amp;nbsp; saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-size:11px;margin:0;padding-top:12px;"&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/p&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;border:1px solid #a9aaaa;padding:12px 12px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/MCUIoTEdge_profile.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox essProfile" style="float:left;padding-right:10px;vertical-align:middle;"  height="115" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;&lt;/a&gt;
&lt;div&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding-bottom:10px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AU_CN_HK_IN_KR_MY_NZ_PH_SG_TH_TW_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://sg.element14.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AT_BE_BG_CZ_DK_EE_FI_FR_DE_HU_IE_IL_IT_LV_LT_NL_NO_PL_PT_RO_RU_SK_SI_ES_SE_CH_TR_UK_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://uk.farnell.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-US_BR_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://www.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-CA_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://canada.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-MX_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://mexico.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:20px;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:18px;margin:0;padding-bottom:8px;"&gt;&lt;span style="float:right;font-size:11px;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt;&lt;strong&gt;Test Your Knowledge&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a href="/e14/assets/legacy/2019/100x100_mcu_badge.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" style="float:left;padding:0px 10px 5px 0px;vertical-align:top;"  height="80" src="/e14/assets/legacy/2019/100x100_mcu_badge.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-bottom:8px;"&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section, and give the module a star rating.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;div class="e14-quiz-document-metadata e14-init-hidden"&gt;&lt;/div&gt;
&lt;div class="migration-injected-attachments"&gt;
&lt;div style="font-weight:bold;margin:15px 0 5px 0;"&gt;Attachments:&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;table style="border:0;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width="160"&gt;&lt;span id="attid_https://www.element14.com/community/api/core/v3/attachments/284571" class="_se_attachment"&gt;&lt;a href="https://community.element14.com/cfs-file/__key/communityserver-wikis-components-files/00-00-00-02-50/Secure-MCUs-for-IoT-Edge-Applications.pdf"&gt;community.element14.com/.../Secure-MCUs-for-IoT-Edge-Applications.pdf&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style="font-size:80%;"&gt;Secure MCUs for IoT Edge Applications.pdf&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;script&gt;window.top.e14.func.queueScripts.add(function() { window.top.e14.func.e14ConditionalContent();} );&lt;/script&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, iot_ess, element14, microcontrollers, essentials, secure mcus, nxp, mcus, element14 essentials: secure mcus for iot edge applicat, ess_module&lt;/div&gt;
</description></item><item><title>element14 Essentials: Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/3</link><pubDate>Mon, 28 Feb 2022 20:59:17 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>pchan</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 3 posted to Documents by pchan on 2/28/2022 8:59:17 PM&lt;br /&gt;
&lt;p&gt;&lt;span&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/learn/learning-center/essentials?ICID=essentials-mcuiotedge-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="background-color:#f9f9f9;border:1px solid #c6c6c6;display:block;float:right;padding:6px 8px;width:212px;"&gt;&lt;a class="jivecontainerTT-hover-container jive-link-community-small" href="/learn/learning-center/?ICID=essentials-mcuiotedge-doc"&gt;element14 Learning Center&lt;/a&gt;&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="border:1px solid #c6c6c6;clear:both;padding:8px;"&gt;
&lt;div style="display:inline-block;padding-right:16px;vertical-align:top;"&gt;&lt;a href="/learn/learning-center/essentials/?ICID=essentials-mcuiotedge-doc"&gt;&lt;img alt="image"  src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="display:inline-block;"&gt;
&lt;p class="essTitle" style="font-size:18px;font-weight:bold;margin:0;" title="Secure MCUs for IoT Edge Apps"&gt;Secure MCUs for IoT Edge Applications&lt;/p&gt;
&lt;p style="margin:0;padding:8px;"&gt;&lt;span style="font-size:11px;padding-right:10px;"&gt;&lt;em&gt;Sponsored by&lt;/em&gt;&lt;/span&gt;&lt;a href="https://www.nxp.com/" rel="nofollow ugc noopener noreferrer" target="_blank"&gt;&lt;img loading="lazy" alt="image" class="essSponsor" style="vertical-align:top;" title="NXP"  src="/e14/assets/main/mfg-group-assets/nxpsemiconductorsLogo.png" width="65px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;hr /&gt;
&lt;div style="clear:both;line-height:1.5;"&gt;&lt;span style="padding-right:6px;"&gt;&lt;a class="jive-link-anchor-small" href="#intro"&gt;1. Introduction&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#object"&gt;2. Objectives&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec3"&gt;3. What is the Edge?&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec4"&gt;4. Design And Development For The IoT Edge&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec5"&gt;5. Edge Architecture&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec6"&gt;6. Secure MCUs For IoT Edge Applications&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-wiki-small" href="/w/documents/4403/related-components-for-element14-essentials-secure-mcus-for-iot-edge-applications?ICID=essentials-mcuiotedge-doc"&gt;Related Components and Dev Boards&lt;/a&gt;&lt;/span&gt; | &lt;span style="font-weight:bold;padding:0px 6px;"&gt;&lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding:8px 0px;"&gt;&lt;a name="intro"&gt;&lt;/a&gt;&lt;strong&gt;1.&amp;nbsp; Introduction&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin:0;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;&lt;strong&gt;2.&amp;nbsp; Objectives&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;em&gt;Upon completion of this learning module, you will be able to:&lt;/em&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Understand the edge and the purpose of edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Be familiar with the trends and challenges in edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Describe the microcontrollers suitable for IoT edge applications&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Explain the main security features of the LPC5500 MCU series&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;3. What is the Edge?&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks. IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-Fi&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram1.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;4. Design And Development For The Iot Edge&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Privacy and Security: &lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as Bluetooth&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Low Energy, ZigBee, Wi-Fi, and so on.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing.&amp;nbsp; Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly,&amp;nbsp; be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;5. Edge Architecture&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram2.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 2: IoT Edge Hierarchy&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="clear:both;margin:0;"&gt;&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;6. Secure MCUs For IoT Edge Applications&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC5500 MCU series, the market&amp;#39;s first Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZone&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU.&amp;nbsp; It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram3.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 3: Arm Cortex-M33 Block Diagram.&amp;nbsp; &lt;/em&gt;Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram4.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram5.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These LPC5500 MCU series processors can be used with the Arm Keil&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot for hardware-based immutable root-of-trust&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Certificate-based secure debug authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure isolation -- isolate secure and non-secure worlds&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot -- execute only authorized firmware&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure primitives -- cryptography primitives, including hashing, encryption, decryption, authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure storage -- secure keys, code, and data confidentiality&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure update -- OTA firmware update, revoke keys, and anti-rollback&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure debug -- only authenticated parties allowed to debug&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 20px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram6.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface.&lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast,&amp;nbsp; saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-size:11px;margin:0;padding-top:12px;"&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/p&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;border:1px solid #a9aaaa;padding:12px 12px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/MCUIoTEdge_profile.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox essProfile" style="float:left;padding-right:10px;vertical-align:middle;"  height="115" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;&lt;/a&gt;
&lt;div&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding-bottom:10px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AU_CN_HK_IN_KR_MY_NZ_PH_SG_TH_TW_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://sg.element14.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AT_BE_BG_CZ_DK_EE_FI_FR_DE_HU_IE_IL_IT_LV_LT_NL_NO_PL_PT_RO_RU_SK_SI_ES_SE_CH_TR_UK_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://uk.farnell.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-US_BR_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://www.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-CA_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://canada.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-MX_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://mexico.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:20px;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:18px;margin:0;padding-bottom:8px;"&gt;&lt;span style="float:right;font-size:11px;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt;&lt;strong&gt;Test Your Knowledge&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a href="/e14/assets/legacy/2019/100x100_mcu_badge.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" style="float:left;padding:0px 10px 5px 0px;vertical-align:top;"  height="80" src="/e14/assets/legacy/2019/100x100_mcu_badge.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-bottom:8px;"&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section, and give the module a star rating.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;div class="e14-quiz-document-metadata e14-init-hidden"&gt;&lt;/div&gt;
&lt;div class="migration-injected-attachments"&gt;
&lt;div style="font-weight:bold;margin:15px 0 5px 0;"&gt;Attachments:&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;table style="border:0;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width="160"&gt;&lt;span id="attid_https://www.element14.com/community/api/core/v3/attachments/284571" class="_se_attachment"&gt;&lt;a href="https://community.element14.com/cfs-file/__key/communityserver-wikis-components-files/00-00-00-02-50/Secure-MCUs-for-IoT-Edge-Applications.pdf"&gt;community.element14.com/.../Secure-MCUs-for-IoT-Edge-Applications.pdf&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style="font-size:80%;"&gt;Secure MCUs for IoT Edge Applications.pdf&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;script&gt;window.top.e14.func.queueScripts.add(function() { window.top.e14.func.e14ConditionalContent();} );&lt;/script&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, iot_ess, element14, microcontrollers, essentials, secure mcus, nxp, mcus, element14 essentials: secure mcus for iot edge applicat, ess_module&lt;/div&gt;
</description></item><item><title>element14 Essentials: Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/2</link><pubDate>Wed, 03 Nov 2021 22:03:23 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>dychen</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 2 posted to Documents by dychen on 11/3/2021 10:03:23 PM&lt;br /&gt;
&lt;p&gt;&lt;span&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/community/learning-center/online-learning/essentials?ICID=essentials-mcuiotedge-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="background-color:#f9f9f9;border:1px solid #c6c6c6;display:block;float:right;padding:6px 8px;width:212px;"&gt;&lt;a class="jivecontainerTT-hover-container jive-link-community-small" href="/learn/learning-center/"&gt;element14 Learning Center&lt;/a&gt;&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="border:1px solid #c6c6c6;clear:both;padding:8px;"&gt;
&lt;div style="display:inline-block;padding-right:16px;vertical-align:top;"&gt;&lt;a href="/learn/learning-center/online-learning/essentials/"&gt;&lt;img alt="image"  src="/e14/assets/legacy/2017/learningess.png" width="175px" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="display:inline-block;"&gt;
&lt;p class="essTitle" style="font-size:18px;font-weight:bold;margin:0;" title="Secure MCUs for IoT Edge Apps"&gt;Secure MCUs for IoT Edge Applications&lt;/p&gt;
&lt;p style="margin:0;padding:8px;"&gt;&lt;span style="font-size:11px;padding-right:10px;"&gt;&lt;em&gt;Sponsored by&lt;/em&gt;&lt;/span&gt;&lt;a href="https://www.nxp.com/" rel="nofollow ugc noopener noreferrer" target="_blank"&gt;&lt;img loading="lazy" alt="image" class="essSponsor" style="vertical-align:top;" title="NXP"  src="/e14/assets/legacy/2018/NXP_WP3logo.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;hr /&gt;
&lt;div style="clear:both;line-height:1.5;"&gt;&lt;span style="padding-right:6px;"&gt;&lt;a class="jive-link-anchor-small" href="#intro"&gt;1. Introduction&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#object"&gt;2. Objectives&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec3"&gt;3. What is the Edge?&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec4"&gt;4. Design And Development For The IoT Edge&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec5"&gt;5. Edge Architecture&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec6"&gt;6. Secure MCUs For IoT Edge Applications&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-wiki-small" href="/learn/learning-center/online-learning/essentials/w/documents/4403/related-components-for-element14-essentials-secure-mcus-for-iot-edge-applications"&gt;Related Components and Dev Boards&lt;/a&gt;&lt;/span&gt; | &lt;span style="font-weight:bold;padding:0px 6px;"&gt;&lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/LinkArrow.gif" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding:8px 0px;"&gt;&lt;a name="intro"&gt;&lt;/a&gt;&lt;strong&gt;1.&amp;nbsp; Introduction&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin:0;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;&lt;strong&gt;2.&amp;nbsp; Objectives&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;em&gt;Upon completion of this learning module, you will be able to:&lt;/em&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Understand the edge and the purpose of edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Be familiar with the trends and challenges in edge computing&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Describe the microcontrollers suitable for IoT edge applications&lt;/p&gt;
&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Explain the main security features of the LPC5500 MCU series&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;3. What is the Edge?&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks. IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-Fi&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network&amp;mdash;allowing for data to flow seamlessly.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram1.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;4. Design And Development For The Iot Edge&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;
&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Privacy and Security: &lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as Bluetooth&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Low Energy, ZigBee, Wi-Fi, and so on.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing.&amp;nbsp; Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly,&amp;nbsp; be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;5. Edge Architecture&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram2.png"&gt;&lt;img loading="lazy" alt="image" style="padding:0px 10px 3px 0px;"  src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 2: IoT Edge Hierarchy&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="clear:both;margin:0;"&gt;&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;color:#007fac;font-size:15px;margin-top:16px;padding:4px 8px;vertical-align:middle;"&gt;
&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;6. Secure MCUs For IoT Edge Applications&lt;/strong&gt;&lt;/div&gt;
&lt;div style="display:inline-block;font-size:11px;text-align:right;vertical-align:top;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC5500 MCU series, the market&amp;#39;s first Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZone&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU.&amp;nbsp; It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram3.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 3: Arm Cortex-M33 Block Diagram.&amp;nbsp; &lt;/em&gt;Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram4.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="float:left;padding:12px 10px 5px 0px;width:270px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram5.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These LPC5500 MCU series processors can be used with the Arm Keil&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot for hardware-based immutable root-of-trust&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Certificate-based secure debug authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or &amp;ldquo;silicon fingerprint.&amp;rdquo; They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure isolation -- isolate secure and non-secure worlds&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure boot -- execute only authorized firmware&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure primitives -- cryptography primitives, including hashing, encryption, decryption, authentication&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure storage -- secure keys, code, and data confidentiality&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure update -- OTA firmware update, revoke keys, and anti-rollback&lt;/p&gt;
&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; Secure debug -- only authenticated parties allowed to debug&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;
&lt;center&gt;
&lt;div style="padding:12px 20px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram6.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox"  src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png" /&gt;&lt;/a&gt;
&lt;p style="font-size:11px;line-height:12px;margin:0;padding-top:3px;"&gt;&lt;em&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/center&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface.&lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/p&gt;
&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" style="vertical-align:middle;"  src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" /&gt;&lt;/a&gt; &lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;
&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast,&amp;nbsp; saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-size:11px;margin:0;padding-top:12px;"&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/p&gt;
&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="background-color:#e7f2f5;border:1px solid #a9aaaa;padding:12px 12px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/MCUIoTEdge_profile.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox essProfile" style="float:left;padding-right:10px;vertical-align:middle;"  height="115" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" /&gt;&lt;/a&gt;
&lt;div&gt;
&lt;p style="color:#007fac;font-size:15px;margin:0;padding-bottom:10px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AU_CN_HK_IN_KR_MY_NZ_PH_SG_TH_TW_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://sg.element14.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AT_BE_BG_CZ_DK_EE_FI_FR_DE_HU_IE_IL_IT_LV_LT_NL_NO_PL_PT_RO_RU_SK_SI_ES_SE_CH_TR_UK_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://uk.farnell.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-US_BR_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://www.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-CA_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://canada.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-MX_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" title="Shop Now" href="http://mexico.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" rel="noopener noreferrer" target="_blank"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p style="margin:0;padding-top:20px;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="color:#007fac;font-size:18px;margin:0;padding-bottom:8px;"&gt;&lt;span style="float:right;font-size:11px;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt;&lt;strong&gt;Test Your Knowledge&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;a href="/e14/assets/legacy/2019/100x100_mcu_badge.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" style="float:left;padding:0px 10px 5px 0px;vertical-align:top;"  height="80" src="/e14/assets/legacy/2019/100x100_mcu_badge.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="margin:0;padding-bottom:8px;"&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;
&lt;p style="margin:0;"&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section, and give the module a star rating.&lt;/p&gt;
&lt;p style="clear:both;margin:0;padding:0px;"&gt;&lt;div class="voltquiz" data-formid="91efb142-db69-4f5c-8a71-8be1b95b1fb0" data-formtype="quiz" data-success-message="" data-fail-message="" data-pass-mark="OTk=" &gt;&lt;/div&gt;&lt;/p&gt;
&lt;div class="e14-quiz-document-metadata e14-init-hidden"&gt;&lt;/div&gt;
&lt;div class="migration-injected-attachments"&gt;
&lt;div style="font-weight:bold;margin:15px 0 5px 0;"&gt;Attachments:&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;table style="border:0;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width="160"&gt;&lt;span id="attid_https://www.element14.com/community/api/core/v3/attachments/284571" class="_se_attachment"&gt;&lt;a href="https://community.element14.com/cfs-file/__key/communityserver-wikis-components-files/00-00-00-02-50/Secure-MCUs-for-IoT-Edge-Applications.pdf"&gt;community.element14.com/.../Secure-MCUs-for-IoT-Edge-Applications.pdf&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style="font-size:80%;"&gt;Secure MCUs for IoT Edge Applications.pdf&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;script&gt;window.top.e14.func.queueScripts.add(function() { window.top.e14.func.e14ConditionalContent();} );&lt;/script&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, iot_ess, element14, microcontrollers, essentials, secure mcus, nxp, mcus, element14 essentials: secure mcus for iot edge applicat, ess_module&lt;/div&gt;
</description></item><item><title>element14 Essentials: Secure MCUs for IoT Edge Applications</title><link>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications/revision/1</link><pubDate>Wed, 06 Oct 2021 22:04:01 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fb2166df-cec8-49b0-a584-8260c87bcffb</guid><dc:creator>kabhari</dc:creator><comments>https://community.element14.com/learn/learning-center/essentials/w/documents/4407/secure-mcus-for-iot-edge-applications#comments</comments><description>Revision 1 posted to Documents by kabhari on 10/6/2021 10:04:01 PM&lt;br /&gt;
&lt;span&gt;&lt;div class="e14-navigation-buttons"&gt;&lt;a href="/community/learning-center/online-learning/essentials?ICID=essentials-mcuiotedge-doc"&gt;
                    &lt;button class="e14-nav-button-prev"&gt;Previous&lt;/button&gt;
                &lt;/a&gt;&lt;/div&gt;&lt;script&gt;e14.func.queueScripts.add(function(){ e14.func.repositionNavButtons(); })&lt;/script&gt;&lt;/span&gt;&lt;div style="padding:6px 8px;border:1px solid #c6c6c6;background-color:#f9f9f9;display:block;width:212px;float:right;"&gt;&lt;a class="jivecontainerTT-hover-container jive-link-community-small" href="/learn/learning-center/"&gt;element14 Learning Center&lt;/a&gt;&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="padding:8px;clear:both;border:1px solid #c6c6c6;"&gt;&lt;div style="display:inline-block;vertical-align:top;padding-right:16px;"&gt;&lt;a href="/learn/learning-center/online-learning/essentials/"&gt;&lt;img alt="image" src="/e14/assets/legacy/2017/learningess.png" width="175px"  /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="display:inline-block;"&gt;&lt;p class="essTitle" style="margin:0;font-weight:bold;font-size:18px;" title="Secure MCUs for IoT Edge Apps"&gt;Secure MCUs for IoT Edge Applications&lt;/p&gt;&lt;p style="margin:0;padding:8px;"&gt;&lt;span style="font-size:11px;padding-right:10px;"&gt;&lt;em&gt;Sponsored by&lt;/em&gt;&lt;/span&gt;&lt;a href="https://www.nxp.com/" rel="nofollow ugc noopener" target="_blank"&gt;&lt;img loading="lazy" alt="image" class="essSponsor" src="/e14/assets/legacy/2018/NXP_WP3logo.png" style="vertical-align:top;" title="NXP"  /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;hr /&gt;&lt;div style="clear:both;line-height:1.5;"&gt;&lt;span style="padding-right:6px;"&gt;&lt;a class="jive-link-anchor-small" href="#intro"&gt;1. Introduction&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#object"&gt;2. Objectives&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec3"&gt;3. What is the Edge?&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec4"&gt;4. Design And Development For The IoT Edge&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec5"&gt;5. Edge Architecture&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-anchor-small" href="#sec6"&gt;6. Secure MCUs For IoT Edge Applications&lt;/a&gt;&lt;/span&gt; | &lt;span style="padding:0px 6px;"&gt;&lt;a class="jive-link-wiki-small" href="/learn/learning-center/online-learning/essentials/w/documents/4403/related-components-for-element14-essentials-secure-mcus-for-iot-edge-applications"&gt;Related Components and Dev Boards&lt;/a&gt;&lt;/span&gt; | &lt;span style="font-weight:bold;padding:0px 6px;"&gt;&lt;a href="#test"&gt;Test Your Knowledge &lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/LinkArrow.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin:0;color:#007fac;font-size:15px;padding:8px 0px;"&gt;&lt;a name="intro"&gt;&lt;/a&gt;&lt;strong&gt;1.&amp;nbsp; Introduction&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;"&gt;As IoT data processing moves from the cloud to the edge, edge computing now plays a prominent role in the next generation of the Internet of Things (IoT). This focus on edge computing and architecture has created an increased need for microcontrollers to have enhanced integrated security, greater processing power, and dramatic power consumption improvements. This learning module covers the purpose, function, and challenges of IoT edge applications and edge device security, and will introduce you to NXP&amp;#39;s LPC5500 single and dual-core 100MHz Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 microcontroller (MCUs) series, which are ideal for a wide range of IoT edge applications.&lt;/p&gt;&lt;p style="margin:0;"&gt;&lt;a name="object"&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="margin:0;color:#007fac;font-size:15px;padding:4px 8px;margin-top:16px;background-color:#e7f2f5;vertical-align:middle;"&gt;&lt;strong&gt;2.&amp;nbsp; Objectives&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;em&gt;Upon completion of this learning module, you will be able to:&lt;/em&gt;&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Understand the edge and the purpose of edge computing&lt;/p&gt;&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Be familiar with the trends and challenges in edge computing&lt;/p&gt;&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Describe the microcontrollers suitable for IoT edge applications&lt;/p&gt;&lt;p style="margin:0;padding:4px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Explain the main security features of the LPC5500 MCU series&lt;/p&gt;&lt;p style="margin:0;"&gt;&lt;a name="sec3"&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="color:#007fac;font-size:15px;padding:4px 8px;margin-top:16px;background-color:#e7f2f5;vertical-align:middle;"&gt;&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;3. What is the Edge?&lt;/strong&gt;&lt;/div&gt;&lt;div style="display:inline-block;vertical-align:top;text-align:right;font-size:11px;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin:0;padding-top:12px;"&gt;An edge device is a piece of hardware located at the boundary of a network that handles data flow control or connectivity between disparate networks. It performs some standard functions such as transmission, monitoring, routing, processing, storage, filtering, and translation of data passing between networks. IoT edge devices collect data from sensors, communicate with each other, and can connect to the cloud directly or through a gateway edge device by way of wireless connectivity protocols like Wi-Fi&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;, ZigBee, and LoRa. Figure 1 shows an edge network where different sensors are connected with microcontroller-based wireless modules and communicate with the cloud through a gateway. The gateway/router/firewall are types of networking devices that connect a group of edge devices to the Internet and wide area network—allowing for data to flow seamlessly.&lt;/p&gt;&lt;center&gt;&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram1.png"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/2019/mcuiotedge_diagram1.png" style="padding:0px 10px 3px 0px;"  /&gt;&lt;/a&gt;&lt;p style="margin:0;line-height:12px;font-size:11px;padding-top:3px;"&gt;&lt;em&gt;Figure 1: Generic edge device network with gateway in an IoT ecosystem&lt;/em&gt;&lt;/p&gt;&lt;/div&gt;&lt;/center&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.1 Cloud vs Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;In IoT applications, the data generated by end digital devices is growing exponentially as thousands of devices are being added in large IoT solutions. The traditional model of processing and storing data in the cloud has become too costly to meet the requirements of the end user. This has inspired a move towards edge computing, which processes device data closer to the source or end device. The edge has gradually grown to support advanced services, including wireless capabilities, Dynamic Host Configuration Protocol (DHCP) services, security functions, domain name system (DNS) services, and analytics.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;IoT solutions have been implemented in critical application areas such as surveillance, automotive, healthcare, energy management, and more. While some of these areas can manage with delayed analytics in the cloud, some applications need a real-time response with low latency, especially for machine learning, artificial intelligence, and neural networks. As such, the ideal models for edge processing would be with a scalable hybrid architecture built on the cloud using machine learning, while the inference task is performed at the edge.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;For applications such as audio or video recognition, where patterns and inferences need to be recognized instantaneously, it is not possible to stream all the data to the cloud where the artificial intelligence (AI) resides, because of the massive data and power restrictions. Edge-based AI is highly responsive in real time and has significant advantages, spanning greater security built into edge devices and less data flowing in and out of the network.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 3.2 Advantages of Edge Computing&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;Edge computing provides a number of advantages that will allow developers to go beyond the constraints of cloud computing. In this section, let&amp;#39;s discuss some of these advantages.&lt;/p&gt;&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Network Latency:&lt;/strong&gt; When an IoT application requires quick responses, it is not possible to send large amounts of data to the cloud for processing and wait for a response for taking actions. For example, consider a safety-critical control system operating an industrial machine that must be stopped immediately if an operator is in a danger zone; the system must take action as soon as the sensor detects danger. The processing of human recognition and the execution of the decision to stop a machine should be performed at the edge due to reduced network latency.&lt;/p&gt;&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Data Processing Cost:&lt;/strong&gt; The vast amount of data generated by sensors and actuators are not always relevant to a specific IoT application. For example, a temperature sensor generating a reading every second may not always provide information for an actionable response. Edge computing allows us to filter and process the data locally before sending it to the cloud, thus reducing the amount of data transmission, storage, and processing at the cloud, reducing the overall cost.&lt;/p&gt;&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Strategic Use of Network Connectivity:&lt;/strong&gt; Most IoT edge deployments are done in remote installations where uninterrupted Internet connectivity might be a challenge. IoT implementations in a cloud environment are severely hampered if the network is interrupted or the available bandwidth is very low. Edge computing offers the ability of local computation, storage, and action without a network, while the important data can be transferred to the cloud when the network becomes available for further analysis.&lt;/p&gt;&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Improved Data Privacy and Security:&lt;/strong&gt; Edge computing makes an IoT solution more secure because it decreases the number of devices connected to the Internet, reducing the exposure of data to the larger Internet. Data filtering on local edge devices reduces the amount of sensitive data being transmitted.&lt;/p&gt;&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Reduced Energy Consumption:&lt;/strong&gt; Edge computing reduces energy consumption by transferring most of the processing and filtering of data away from the cloud to a local server on the edge. Also, reduced transmission of data throughput from edge devices saves energy for communication.&lt;/p&gt;&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Reducing Impact of Cloud Disruptions:&lt;/strong&gt; By utilizing cloud computing in a distributed edge architecture, the impact of cloud network disruptions is limited.&lt;/p&gt;&lt;p style="margin:0;clear:both;padding-top:12px;"&gt;&lt;a name="sec4"&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="color:#007fac;font-size:15px;padding:4px 8px;margin-top:16px;background-color:#e7f2f5;vertical-align:middle;"&gt;&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;4. Design And Development For The Iot Edge&lt;/strong&gt;&lt;/div&gt;&lt;div style="display:inline-block;vertical-align:top;text-align:right;font-size:11px;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin:0;padding-top:12px;"&gt;The &amp;#39;edge&amp;#39; brings forward various challenges for developers designing IoT architectures. In this section, we highlight some of the critical challenges of edge computing.&lt;/p&gt;&lt;p style="margin:0;padding:12px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Privacy and Security: &lt;/strong&gt; A significant challenge in the deployment of the edge computing model is privacy and security. Edge device security is a big challenge, since the edge can be a convenient entry point to the network and core systems, making it vulnerable to cyberattacks. Beyond the threat of cyberattacks, physical security (tampering with a device) is also a threat that may not exist in the controlled environment of a data center. The technologies activated by the core of edge computation, such as peer-to-peer systems, wireless networks,and distributed systems must be secured while keeping in consideration that the interoperability and integration of devices must not be compromised. Moreover, specific data control access mechanisms should be implemented on edge frameworks to ensure data privacy.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Programmability:&lt;/strong&gt; One of the advantages of cloud computing is the infrastructure transparency to the user, because computing deployed only on the cloud and programs written in any language are compiled for a specific target platform. In edge computing, programs are written and deployed on edge devices, and there are a large number of embedded platforms from the many microcontroller manufacturers currently in the market. These devices need the development of customized application programs and have different runtime, which can cause difficulties for the programmer in writing an application for an edge computing model.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Standardization:&lt;/strong&gt; In edge computing, the number of edge devices is increasing exponentially. Each device on the edge needs a specific naming system for detecting the edge device, addressing, programming, and communication in the network system. At the present time the edge computing model has no efficient naming standard available. To communicate in a heterogeneous device network, edge designers need to learn various network protocols such as Bluetooth&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Low Energy, ZigBee, Wi-Fi, and so on.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Data Abstraction:&lt;/strong&gt; In a well-connected home, there could be 50 devices that can sense, communicate, compute, and potentially actuate. An area of 1,000 houses could have about 50,000 devices producing vast amounts of data. A large portion of this data may be irrelevant, and hence should be deleted at the primary stage of data processing.&amp;nbsp; Therefore, it is essential to abstract the data on the edge, and transfer only the necessary data to the gateway; this prospect is a significant challenge for edge computing. The microcontroller in edge devices needs to learn the specific algorithm to filter the data, and it should be able to predict the data to be sent to the gateway or cloud. Deciding the degree of abstraction is always a challenge, as some services or applications may be affected if too much raw data is filtered out. Edge devices should also have noise attenuation, event detection, and privacy protection features.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Services on the Edge:&lt;/strong&gt; In an IoT network such as a smart home, multiple services are deployed at the edge of the network, and each may have different priorities. For example, critical services (such as a fire alarm) should be processed earlier than regular services (such as data storage). In health-related services, heart failure detection should have a higher priority compared with another service such as entertainment. IoT is a dynamic system with new sensors and services being added regularly and existing services being improved for performance; microcontrollers used for edge devices should be able to detect and prioritize accordingly,&amp;nbsp; be compatible with the upgrade requirements, and update the edge application on the fly.&lt;/p&gt;&lt;p style="margin:0;"&gt;&lt;a name="sec5"&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="color:#007fac;font-size:15px;padding:4px 8px;margin-top:16px;background-color:#e7f2f5;vertical-align:middle;"&gt;&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;5. Edge Architecture&lt;/strong&gt;&lt;/div&gt;&lt;div style="display:inline-block;vertical-align:top;text-align:right;font-size:11px;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin:0;padding-top:12px;"&gt;Edge architectures can vary, but they generally use three types of components: edge sensors and actuators, edge devices, and edge gateways. Figure 2 shows the device hierarchy, with the cloud as the root, and edge gateways as a mediator above edge devices, and sensors and actuators located at the edge.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;Edge sensors and actuators are devices which do not have processors. They are connected either directly to edge devices, gateways or via low power radio technologies. Edge devices are the intelligence for computation on data received from sensors, and they send commands to actuators. Edge devices are connected to the cloud either directly or through an edge gateway. Edge Gateways run complete operating systems. They have more CPU power, memory, and storage. Gateways act as mediators between the cloud and the edge devices. Edge gateways and edge devices both forward selected subsets of pre-processed IoT data to services running in the cloud (e.g., machine learning, storage services, or analytics services), and receive commands from the cloud, like data queries, configurations, or machine learning models. An analytics module running in the cloud analyzes data coming from edge gateways and edge devices. A dashboard module can be deployed in the cloud to provide a global data view.&lt;/p&gt;&lt;center&gt;&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram2.png"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/2019/mcuiotedge_diagram2.png" style="padding:0px 10px 3px 0px;"  /&gt;&lt;/a&gt;&lt;p style="margin:0;line-height:12px;font-size:11px;padding-top:3px;"&gt;&lt;em&gt;Figure 2: IoT Edge Hierarchy&lt;/em&gt;&lt;/p&gt;&lt;/div&gt;&lt;/center&gt;&lt;p style="margin:0;clear:both;"&gt;&lt;a name="sec6"&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="color:#007fac;font-size:15px;padding:4px 8px;margin-top:16px;background-color:#e7f2f5;vertical-align:middle;"&gt;&lt;div style="display:inline-block;vertical-align:top;width:75%;"&gt;&lt;strong&gt;6. Secure MCUs For IoT Edge Applications&lt;/strong&gt;&lt;/div&gt;&lt;div style="display:inline-block;vertical-align:top;text-align:right;font-size:11px;width:24%;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin:0;padding-top:12px;"&gt;With the introduction of new technology such as edge computation, microcontrollers are getting greater attention and updated designs as chipset manufacturers meet the growing requirements for IoT edge intelligence. These new secure MCUs for IoT edge applications offer low power and multiple connectivity options, as well as a combination of intelligence, security, and wireless capabilities. In this section, we will discuss NXP&amp;#39;s LPC5500 MCU series, which offers secure edge computing at the software and hardware level, as well as essential technologies that enable low-latency, low-power, and high-throughput solutions for greater efficiency, privacy, and security.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.1 Overview&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;The LPC5500 MCU series, the market&amp;#39;s first Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33-based MCU, offers product architecture enhancements and greater integration over previous NXP MCU generations. It offers power consumption improvements and advanced security features, including SRAM PUF (physically unclonable function) based root-of-trust and provisioning, real-time execution from encrypted images, asset protection with Arm TrustZone&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; technology, and on-chip memory with up to 640KB flash and 320KB SRAM to enable the efficient execution of complex edge applications. The LPC5500 series also provides dual-core Cortex-M33 capability with tightly coupled accelerators for digital signal processing and cryptography.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.2 Arm Cortex-M33 technology&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;Cortex-M33 is the Arm processor which is applicable to IoT edge applications, with security being built into the CPU.&amp;nbsp; It is built for highly featured IoT and embedded products. Cortex-M33 offers a 20% performance improvement over Cortex-M3 and Cortex-M4 based MCUs. It uses Armv8-M architecture and a 32-bit instruction set with floating point and DSP capabilities for complex applications. In addition, the Cortex-M33 offers a dedicated co-processor interface for accelerating compute intensive operations. Cortex-M33 provides a range of new capabilities for designers, including machine learning inference on the edge. The following are some key advantages of Cortex-M33:&lt;/p&gt;&lt;center&gt;&lt;div style="padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram3.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" src="/e14/assets/legacy/2019/mcuiotedge_diagram3.png"  /&gt;&lt;/a&gt;&lt;p style="margin:0;line-height:12px;font-size:11px;padding-top:3px;"&gt;&lt;em&gt;Figure 3: Arm Cortex-M33 Block Diagram.&amp;nbsp; &lt;/em&gt;Image Source: ARM&lt;/p&gt;&lt;/div&gt;&lt;/center&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;TrustZone Security Isolation&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;Arm TrustZone technology is a System on Chip (SoC) and CPU system-wide approach to security. TrustZone for ARMv8-M security extension is optimized for ultra-low power embedded applications. It enables multiple software security domains that restrict access to secure memory and I/O to trusted software only.&lt;/p&gt;&lt;div style="float:left;width:270px;padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram4.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" src="/e14/assets/legacy/2019/mcuiotedge_diagram4.png"  /&gt;&lt;/a&gt;&lt;p style="margin:0;line-height:12px;font-size:11px;padding-top:3px;"&gt;&lt;em&gt;Figure 4: TrustZone enables the system and the software to be partitioned into Secure and Non-secure worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;&lt;/div&gt;&lt;p style="margin:0;padding-top:12px;"&gt;TrustZone for Armv8-M is the foundation of security for embedded applications. It provides the means to implement separation and access control to isolate trusted software and resources to reduce the attack surface of critical components. TrustZone enables on a single CPU the system and the software to be partitioned into Secure and Nonsecure worlds, providing the benefits of lower device cost, real-time performance, low latency interrupts, efficient isolation, functional safety, and more.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;In TrustZone, security is defined by the address. When a request comes from the CPU, the security attribution unit (SAU) decides at the system level whether the request should be considered a secure or non-secure address, and then sends the memory address to the secure or nonsecure memory protection unit (MPU) before sending it to the rest of the system (Figure 4).&lt;/p&gt;&lt;p style="margin:0;padding:0px;clear:both;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="float:left;width:270px;padding:12px 10px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram5.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" src="/e14/assets/legacy/2019/mcuiotedge_diagram5.png"  /&gt;&lt;/a&gt;&lt;p style="margin:0;line-height:12px;font-size:11px;padding-top:3px;"&gt;&lt;em&gt;Figure 5: One CPU with TrustZone for Armv8-M: processor partitioned into trusted and non-trusted worlds.&lt;/em&gt;&amp;nbsp; Image Source: ARM&lt;/p&gt;&lt;/div&gt;&lt;p style="margin:0;padding-top:12px;"&gt;Systems can be secured-by-design through placing only the most critical security routines, such as boot code, secure configuration, security keys, encryption libraries and firmware updates, in the secure TrustZone. The processor also supports the guidelines from the Platform Security Architecture (PSA), which is a framework to provide security for both hardware and software. PSA offers a consistent foundation for designers and developers working on IoT and embedded devices.&lt;/p&gt;&lt;p style="margin:0;clear:both;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Longer Battery Life&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;The Cortex-M33 processor provides built-in low power features which allow designers to optimize power usage in IoT edge devices where power consumption plays a critical role, especially in battery-powered devices. It provides three low-power modes for saving energy to match processing demands. It has active and sleep modes that can operate down to 1.71V with very low power consumption.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;Development Tools&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;These LPC5500 MCU series processors can be used with the Arm Keil&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; MDK tool suite and Arm Compiler development tools for programming. In addition, using the ULINKplus debug adapter with Keil MDK the application&amp;#39;s power consumption can be analyzed to improve the energy-efficiency of the device in terms of both hardware and software.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;clear:both;"&gt;&lt;strong&gt;&lt;em&gt;- 6.3 Security Enhancements&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;Reliable embedded security is achieved by layering the protection through adding more hardware and software to create more layers. The LPC5500 series uses a multi-layered, hardware-enabled protection scheme. This layered security approach protects embedded systems in the following ways:&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Secure boot for hardware-based immutable root-of-trust&lt;/p&gt;&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Certificate-based secure debug authentication&lt;/p&gt;&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Encrypted on-chip firmware storage with real-time, latency-free decryption&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;These features in conjunction with Arm Cortex-M33 enhancements of Arm TrustZone for Armv8-M and memory protection unit (MPU) ensures physical and runtime protection with hardware-based, memory-mapped isolation for privilege-based access to resources and data.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.4 Secure Boot&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;Device trustworthiness is attained within the LPC5500 series with a ROM-based secure boot process that utilizes device-unique keys to create an immutable hardware &amp;#39;root-of-trust.&amp;#39; The keys can be locally generated on-demand by an SRAM-based Physically Unclonable Function (PUF), which uses the behavior of standard SRAM memory available in any digital chip to extract a unique pattern or “silicon fingerprint.” They are virtually impossible to clone or predict. This makes them very suitable for applications such as secure key generation and storage, device authentication, flexible key provisioning and chip asset management. Thus, closed loop transactions between the end-user and the original equipment manufacturer (OEM) are permitted, allowing the elimination of third-party key handling in potentially insecure environments.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.5 Secure Execution Environment&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment (SEE) is a secure and isolated region within a processor. It insures that the code and data loaded in the SEE are confidentially protected with integrity. A secure execution environment needs to have the following components:&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Secure isolation -- isolate secure and non-secure worlds&lt;/p&gt;&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Secure boot -- execute only authorized firmware&lt;/p&gt;&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Secure primitives -- cryptography primitives, including hashing, encryption, decryption, authentication&lt;/p&gt;&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Secure storage -- secure keys, code, and data confidentiality&lt;/p&gt;&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Secure update -- OTA firmware update, revoke keys, and anti-rollback&lt;/p&gt;&lt;p style="margin:0;padding:0px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; Secure debug -- only authenticated parties allowed to debug&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;A secure execution environment improves the symmetric and asymmetric cryptography for edge-to-edge, and cloud-to-edge communication by generating device-unique secret keys through the SRAM PUF. The security for public key infrastructure or asymmetric encryption is enhanced through the Device Identity Composition Engine security standard.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.6 LPC55S6x Microcontroller Family&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;The LPC55S6x MCU family builds on the general-purpose Cortex-M33 based microcontroller introduced with the LPC5500 series. It leverages the Armv8-M architecture to introduce better performance and advanced security capabilities, including TrustZone-M and co-processor extensions. The LPC55S6x family enables these co-processors extensions and leverages them to bring significant signal processing efficiency gains from a proprietary DSP accelerator, offering a 10x clock cycle reduction. An optional second Cortex-M33 core offers flexibility to balance high performance and power efficiency.&lt;/p&gt;&lt;center&gt;&lt;div style="padding:12px 20px 5px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/mcuiotedge_diagram6.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" src="/e14/assets/legacy/2019/mcuiotedge_diagram6.png"  /&gt;&lt;/a&gt;&lt;p style="margin:0;line-height:12px;font-size:11px;padding-top:3px;"&gt;&lt;em&gt;Figure 6: 55S6x MCU Family Block Diagram&lt;/em&gt;&lt;/p&gt;&lt;/div&gt;&lt;/center&gt;&lt;p style="margin:0;padding-top:12px;"&gt;LPC55S6x MCU devices feature a unique integrated security ecosystem providing layers of protection for embedded systems while protecting end products from unknown or unexpected threats over its life cycle, including SRAM PUF based root of trust and provisioning, real-time execution from encrypted images and debug authentication.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;The following are some key security features implemented in the LPC55S6x MCU family:&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Advanced Encryption Standard (AES):&lt;/strong&gt; LPC55S6x devices provide an on-chip hardware AES encryption and decryption engine for data encryption or decryption, data integrity, and proof of origin. Data is encrypted or decrypted by the AES engine using a key from the PUF, or software supplied key. The AES engine supports 128 bit, 192 bit, or 256 bit key in Electronic Code Book (ECB) mode, Cipher Block Chaining (CBC) mode, or Counter (CTR) mode. The AES engine supports 128-bit key in ICB (Indexed Code Book) mode that offers protection against side-channel attacks.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Secure Hash Algorithm (SHA):&lt;/strong&gt; LPC55S6x devices provide on-chip hash support to perform SHA-1 and SHA-2 with 256-bit digest (SHA-256). Hashing is a way to reduce arbitrarily large messages or code images to a relatively small fixed size unique number called a digest. The SHA-1 Hash produces a 160-bit digest (five words), and the SHA-256 hash produces a 256-bit digest (eight words).&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;SRAM PUF (Physically Unclonable Function) for key generation and identity.&lt;/strong&gt; PUF enables the secure generation of a unique device fingerprint and device-unique cryptographic keys. The unique and unclonable keys provide significant security benefits over other means of key injection or storage.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;PRINCE:&lt;/strong&gt; LPC55S6x devices offer support for real-time encryption and decryption for on-chip flash using the PRINCE encryption algorithm. PRINCE is faster when compared to AES because it can decrypt and encrypt without adding extra latency. PRINCE operates as data is read or written, without the need to first store data in RAM, and then encrypts or decrypts to another space. This functionality is useful for asset protection, such as securing application code, securing stored keys, and enabling secure flash update.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;ROM-based secure boot, debug authentication, and support for secure storage.&lt;/strong&gt; The ROM supports boot loading to internal flash and supports factory programming through an In System Programming (ISP) mechanism over I/O serial interfaces.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;ARMv8-M TrustZone with secure and non-secure memory protection units and a Secure Attribution Unit (SAU).&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Implementation Defined Attribution Unit (IDAU), secure bus controller, DMA, and secure GPIO&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Crypto engine CASPER (Cryptographic Accelerator and Signaling Processing Engine with RAM) using the Cortex-M33 coprocessor interface.&lt;/strong&gt; The CASPER engine is a hardware accelerator capable of running asymmetric cryptographic such as Elliptic Curve Cryptography (ECC).&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;True Random Number Generator (TRNG).&lt;/strong&gt; The TRNG module is a hardware accelerator module that generates 256-bit entropy. The purpose of the module is to generate high quality, cryptographically secure, random data. Random number generators are used for data masking, cryptographic, modeling and simulation applications which employ keys that must be generated in a random fashion.&lt;/p&gt;&lt;p style="margin:0;padding:8px 0px 0px 45px;"&gt;&lt;a href="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif"&gt;&lt;img loading="lazy" alt="image" src="/e14/assets/legacy/gen/small_square_bullet_oj5x5.gif" style="vertical-align:middle;"  /&gt;&lt;/a&gt; &lt;strong&gt;Protected Flash Region (PFR), a Customer Field Programmable Area (CFPA), and the Customer Manufacturer Programmable Area (CMPA) with the boot configuration&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;&lt;strong&gt;&lt;em&gt;- 6.7 PowerQuad Hardware Accelerator&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is a hardware accelerator that consists of several internal computation engines: Transform engine, Transcendental function engine, Trigonometry function engine, Dual biquad IIR filter engine, Matrix accelerator engine, FIR filter engine, and CORDIC engine. With PowerQuad integrated within the LPC5500 MCU series, it can execute DSP tasks with better performance than the CMSIS-DSP library, which is implemented by pure software.&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;"&gt;PowerQuad is integrated with the Arm Cortex-M33 co-processor interface. It can be accessed through the co-processor instructions. The PowerQuad hardware module is designed to accelerate some general DSP computing tasks, including the math functions, matrix functions, filter functions and the transform functions (including FFT). As the computing is totally executed by specific hardware other than the Arm core, it runs fast,&amp;nbsp; saves CPU time and offloads the Cortex-M33 cores for other tasks. The PowerQuad can be considered as a simplified DSP hardware but with less power consumption and well integrated inside the Arm ecosystem.&lt;/p&gt;&lt;p style="margin:0;padding:0px;clear:both;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin:0;padding-top:12px;font-size:11px;"&gt;*Trademark.&amp;nbsp; &lt;strong&gt;NXP is a trademark of NXP Inc.&amp;nbsp; &lt;/strong&gt;Other logos, product and/or company names may be trademarks of their respective owners.&lt;/p&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="border:1px solid #a9aaaa;background-color:#e7f2f5;padding:12px 12px 0px;"&gt;&lt;a href="/e14/assets/legacy/2019/MCUIoTEdge_profile.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox essProfile" height="115" src="/e14/assets/legacy/2019/MCUIoTEdge_profile.png" style="float:left;padding-right:10px;vertical-align:middle;"  /&gt;&lt;/a&gt;&lt;div&gt;&lt;p style="margin:0;font-size:15px;color:#007fac;padding-bottom:10px;"&gt;&lt;strong&gt;Shop our wide range&lt;/strong&gt; of advanced security, Arm&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt; Cortex&lt;sup&gt;&lt;span class="emoticon" data-url="https://community.element14.com/cfs-file/__key/system/emoji/00ae.svg" title="Registered"&gt;&amp;#x00ae;&lt;/span&gt;&lt;/sup&gt;-M33 based, LPC 5500 Series microcontrollers, dev kits and accessories, and more.&lt;/p&gt;&lt;p style="margin:0;"&gt;&lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AU_CN_HK_IN_KR_MY_NZ_PH_SG_TH_TW_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" href="http://sg.element14.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" target="_blank" title="Shop Now"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-AT_BE_BG_CZ_DK_EE_FI_FR_DE_HU_IE_IL_IT_LV_LT_NL_NO_PL_PT_RO_RU_SK_SI_ES_SE_CH_TR_UK_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" href="http://uk.farnell.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" target="_blank" title="Shop Now"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-US_BR_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" href="http://www.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" target="_blank" title="Shop Now"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-CA_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" href="http://canada.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" target="_blank" title="Shop Now"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class="e14-conditional-content e14-init-hidden e14-conditional-country-MX_"&gt;&lt;span class="e14-button-large e14-button-primary"&gt;&lt;a class="jive-link-external-small" href="http://mexico.newark.com/b/nxp?searchref=searchlookahead?COM=essentials-mcuiotedge-banlink" target="_blank" title="Shop Now"&gt;Shop Now&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin:0;padding:0px;clear:both;"&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin:0;padding-top:20px;"&gt;&lt;a name="test"&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="margin:0;color:#007fac;font-size:18px;padding-bottom:8px;"&gt;&lt;span style="font-size:11px;float:right;"&gt;&lt;a class="jive-link-anchor-small" href="#top"&gt;&lt;strong&gt;Back to Top&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt;&lt;strong&gt;Test Your Knowledge&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;"&gt;&lt;a href="/e14/assets/legacy/2019/100x100_mcu_badge.png"&gt;&lt;img loading="lazy" alt="image" class="nolightbox" height="80" src="/e14/assets/legacy/2019/100x100_mcu_badge.png" style="vertical-align:top;float:left;padding:0px 10px 5px 0px;"  /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="margin:0;padding-bottom:8px;"&gt;Are you ready to demonstrate your Secure MCUs for IoT Edge Applications knowledge? &lt;strong&gt;Take this quick 15-question multiple choice quiz to see how much you&amp;#39;ve learned from this learning module.&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin:0;"&gt;&lt;strong&gt;To earn the Microcontroller for IoT Edge Applications badge&lt;/strong&gt;, read through the module, attain 100% in the quiz, leave us some feedback in the comments section, and give the module a star rating.&lt;/p&gt;&lt;p style="margin:0;padding:0px;clear:both;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-document-metadata e14-init-hidden"&gt; &lt;/div&gt;&lt;div class="e14-quiz-question"&gt;      [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;  [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;      [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;      [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;  [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;  [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;  [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;      [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;  [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;      [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;      [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;     [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;      [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;  [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;&lt;p style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="e14-quiz-question"&gt;  [QUIZ QUESTION PLACEHOLDER]&lt;/div&gt;
&lt;div class="migration-injected-attachments"&gt;&lt;div style="font-weight:bold;margin:15px 0 5px 0;"&gt;Attachments:&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;table style="border:0;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="160"&gt;&lt;span class="_se_attachment" id="attid_https://www.element14.com/community/api/core/v3/attachments/284571"&gt;&lt;a href="https://community.element14.com/cfs-file/__key/communityserver-wikis-components-files/00-00-00-02-50/Secure-MCUs-for-IoT-Edge-Applications.pdf"&gt;community.element14.com/.../Secure-MCUs-for-IoT-Edge-Applications.pdf&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style="font-size:80%;"&gt;Secure MCUs for IoT Edge Applications.pdf&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;script&gt;window.top.e14.func.queueScripts.add(function() { window.top.e14.func.e14ConditionalContent();} );&lt;/script&gt;

&lt;div style="font-size: 90%;"&gt;Tags: iot edge applications, secure mcus for iot edge applications, iot_ess, element14, microcontrollers, essentials, secure mcus, nxp, mcus, element14 essentials: secure mcus for iot edge applicat, ess_module&lt;/div&gt;
</description></item></channel></rss>