Benefits of NXP ARM Microcontrollers for Embedded Developers Dave Edwards CEO/CTO SOMNIUM® Technologies 11/09/2016

Total Page:16

File Type:pdf, Size:1020Kb

Benefits of NXP ARM Microcontrollers for Embedded Developers Dave Edwards CEO/CTO SOMNIUM® Technologies 11/09/2016 Smaller, faster, lower-cost! Benefits of NXP ARM microcontrollers for embedded developers Dave Edwards CEO/CTO SOMNIUM® Technologies 11/09/2016 Presented at ENOVA Paris 2016 Thu 15th Sept in the NXP IoT Truck Room EUF-DES-T2250 SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 1 Abstract Time to market and development cost are driving factors in embedded system design Yet many developers aren't aware of the benefits in using ARM technology, even in low-end resource constrained designs such as IoT edge nodes. SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 2 Contents Problems faced by embedded developers An overview of ARM microcontroller hardware How can using an ARM based device help? ARM microcontroller and system architecture overview NXP ARM microcontroller overview Performance and energy overview An overview of ARM software An overview of NXP software ecosystem Software tools and choices available Demonstrations of the features available with NXP microcontrollers. SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 3 Problems faced by embedded developers SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 4 Time to market is important Only 38% of projects are on time 62% of projects are late! Every year its getting worse ... SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 5 Choose your microcontroller wisely Many chips are similar Ecosystem is important Not all ecosystems are equal ;-) SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 6 Engineering challenges Debugging is time consuming Better debug tools are needed Vendor supplied information is vital SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 7 How can using an ARM based device help? Customer benefits from choice, features, availability and quality ARM's business model amortizes cost of complex design across many customers Semiconductor vendor leverages to build hardware and software ecosystem Tools providers leverage compatibility to support a huge range of devices SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 8 ARM microcontroller overview SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 9 ARM Cortex-M : architecture advantages Modern instruction set architecture and microarchitecture First V7-M architecture device was Cortex-M3 announced in 2004 25 years younger than the 8051 architecture! Designed to run high level C/C++ No need for assembly language = lower cost of software development ARM Thumb®-2 technology has dense instruction encoding Low gate count KL03 fits in the dimple of a golf ball! ● 1.9x1.6mm Lower silicon cost ● 48MHz Cortex M4 Small form factor packaged parts ● 32KBytes ROM, 2K RAM ● 75 cents in quantities of 100,000 Powerful Significantly higher performance than 8-bit/16-bit microcontrollers Energy Efficient Fast and efficient interrupt handling SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 10 ARM Cortex-M : huge range of choices available Processor performance versus features versus cost 20MHz .. 200MHz+ Simple microcontroller (M0/M0+) thru DSP capable microcontroller (M3/M4) and beyond Single core to multi-core Memory size versus requirements versus price versus energy required As little as required: 8KBytes ROM/1KBytes RAM As much (?) as required: 2MByte ROM/256KByte RAM and beyond Wide range of peripherals and interfaces Sensors, USB, Ethernet, BLE Highly integrated with great software enablement Broadly compatibility instructions and source code Can scale up (or down) your design as required But ... beware of low-level system software differences SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 11 Range of processor cores available SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 13 Instruction set : clean superset from M0 upwards SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 14 Cortex M0 system architecture Common across all Cortex-M Program trace ● M0 supports up to Doesn't require high end 32 interrupt sources debug adaptors ● 16 (M0), 15 (M0+) cycle interrupt latency ● Number of priorities can vary between devices Typically: All devices have this at least 2..4 breakpoints Supports simple/low cost 0..2 watchpoints debug adaptors (can trigger things within PC range) SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 16 Cortex M4 system architecture Same as Cortex M0 NVIC with: ● Up to 240 interrupt sources OPTIONAL ● 12 cycle interrupt latency Sophisticated trace ● Number of priorities and triggers can vary between devices BUT .. requires area, pins and high end debug adaptor All devices have this Supports simple/low cost debug adaptors SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 17 NXP ARM-based microcontroller overview SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 18 Kinetis family - sensors and analog integration High performance Low cost, small memory, Large memory small physical size Sensors and interfaces KV10 is possibly the highest performance Cortex M0+ device available SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 19 LPC family - optimized for power and cost All are Cortex M4 based LPC8xx : ● Many single core devices ● low power ● Some LPC43xx & LPC5xxx ● space efficient devices are dual core Cortex ● low-pin count M4 and a Cortex M0+ ● great for 8/16 -bit migration SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 20 Measuring energy consumption SOMNIUM are members of the EEMBC® Automotive Subcommittee and use their industry standard benchmarks. We measure energy, measured to the uJ using the high accuracy EEMBC EnergyMonitor™ EEMBC CoreMark™ is used to demonstrate the usable performance of a processor system running typical algorithms including list processing (to stress test data accesses), matrix manipulation (to stress test and mathematical operations, and state machines (to stress test complex control flows). SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 21 Wide range of performance and energy options Extreme performance Higher energy Higher performance More expensive Baseline device Lower energy ● Good performance More expensive ● Low energy consumption ● Low cost SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 23 ARM software ecosystem overview SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 25 CMSIS Cortex Microcontroller Software Interface Standard Some components are supported by silicon vendors Other components are not supported by silicon vendors Available from ARM , and from some software tools vendors Be aware ... Some implementations of some features are NULL Implementations vary (features, bugs etc.) Are you using the “official” silicon vendor version? There is no standards compliance procedure SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 26 What's in CMSIS? Not widely used? Generally supplied Used in evaluation board pre-compiled OpenOCD debug probes. No publicly available Segger & PEMicro are test suite significantly faster and more robust Some parts are “essential” Some parts are obsoleted by vendor-specific APIs SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 27 CMSIS files Originated by ARM For a given Cortex <X> device (<X> = 0, 3, 4, 7) core_cm<X>.h global declarations and definitions, function protoypes core_cm<X>.c global definitions (functions and data) Originated by silicon vendor For a given <device> e.g. MK64F12 system_<device>.h device specific definitions (memory mapped registers etc.) system_<device>.c device specific function definitions (sometimes vector table is supplied as .s file) <device>.h device specific definitions (registers etc.) SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 28 NXP microcontroller software ecosystem overview SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 29 NXP Kinetis: Kinetis SDK v2: CMSIS “and more” Not like CMSIS: Pre-integrated with industry No concept of separate HAL standard RTOS and driver layers Minimal implementation (use Kinetis-specific Peripheral drivers instead) SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 31 Kinetis Expert: web based SDK creator ● Select components and export source code ● New tool to configure pins etc. ● Check everything is correctly setup SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 32 Kinetis Design Studio (KDS) - free of charge Eclipse IDE + GNU tools SOMNIUM Technologies worked with Freescale to produce KDS Windows, Linux & MacOSX hosts Vanilla code generation and debug SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 33 NXP LPC: LPCOpen: CMSIS “and more” Flexible configurations and High quality free of charge middleware mostly “compliant” CMSIS-CORE Different APIs to Kinetis equivalents SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 34 LPCXpresso - Eclipse IDE + GNU tools Free of charge (256KByte codesize limit) Windows, Linux & MacOSX hosts Vanilla code generation Advanced trace SOMN-MS-0051 Copyright © 2016 SOMNIUM® Technologies Limited 35 NXP software enablement summary Separate software enablement for Kinetis and LPC devices Both Kinetis and LPC have their own history A few compatibility “bumps” along the way Kinetis Design Studio and LPCXpresso are similar but different Both have vanilla GNU tools, Eclipse IDE platform Both are free (for initial versions) Different user interface and project formats LPCXpresso has more debug features 3rd party tools are available : SOMNIUM DRT Tight integration
Recommended publications
  • NXP Powerpoint Template Confidential 16:9 Widescreen
    NXP MCU PRODUCT UPDATE & ROADMAP Q4 2016 NXP’S MCU POWERHOUSE PORTFOLIO 1 PUBLIC USE NXP Microcontrollers Business Line Why Customers Choose Us Applications • Comprehensive portfolio supporting the diverse IoT landscape Wearable / Healthcare • Fitness & Wireless Healthcare • Extensive software and development environment • Diabetes & Cardiac Care • Diagnostics & therapy • Industry leading customer support, quality, and longevity Home & Building Automation • Broad ecosystem of partners enabling system solutions • Smart meters & grid • Integrated wireless connectivity solutions • Ease of use solutions tailored for mass market • Home energy control Smart Accessories • Game controllers and consoles Example Customers • Wearable computing • eReaders, tablets, portable navigation Vehicle Networking & Information • Infotainment, software define radio • Navigation systems, E-call Home Appliances • Energy efficient refrigerators, dishwashers • Human-machine interface • Connected appliances Industrial Controls & Factory Automation • Machine-to-machine • Motor control Products • Industrial networking Kinetis & LPC 32-bit i.MX ARM® Applications 2 ARMPUBLIC® Microcontrollers USE Processors NXP MCUs - Powerhouse Portfolio ARM Expertise Broadest licensee of ARM cores in industry Most scalable portfolio with Expansive Portfolio optimized performance and capabilities Development Tools Best-in-class hardware platforms and software solutions Ecosystem Leadership Industry leading partnerships for innovation and differentiation Experienced global support team
    [Show full text]
  • Fill Your Boots: Enhanced Embedded Bootloader Exploits Via Fault Injection and Binary Analysis
    IACR Transactions on Cryptographic Hardware and Embedded Systems ISSN 2569-2925, Vol. 2021, No. 1, pp. 56–81. DOI:10.46586/tches.v2021.i1.56-81 Fill your Boots: Enhanced Embedded Bootloader Exploits via Fault Injection and Binary Analysis Jan Van den Herrewegen1, David Oswald1, Flavio D. Garcia1 and Qais Temeiza2 1 School of Computer Science, University of Birmingham, UK, {jxv572,d.f.oswald,f.garcia}@cs.bham.ac.uk 2 Independent Researcher, [email protected] Abstract. The bootloader of an embedded microcontroller is responsible for guarding the device’s internal (flash) memory, enforcing read/write protection mechanisms. Fault injection techniques such as voltage or clock glitching have been proven successful in bypassing such protection for specific microcontrollers, but this often requires expensive equipment and/or exhaustive search of the fault parameters. When multiple glitches are required (e.g., when countermeasures are in place) this search becomes of exponential complexity and thus infeasible. Another challenge which makes embedded bootloaders notoriously hard to analyse is their lack of debugging capabilities. This paper proposes a grey-box approach that leverages binary analysis and advanced software exploitation techniques combined with voltage glitching to develop a powerful attack methodology against embedded bootloaders. We showcase our techniques with three real-world microcontrollers as case studies: 1) we combine static and on-chip dynamic analysis to enable a Return-Oriented Programming exploit on the bootloader of the NXP LPC microcontrollers; 2) we leverage on-chip dynamic analysis on the bootloader of the popular STM8 microcontrollers to constrain the glitch parameter search, achieving the first fully-documented multi-glitch attack on a real-world target; 3) we apply symbolic execution to precisely aim voltage glitches at target instructions based on the execution path in the bootloader of the Renesas 78K0 automotive microcontroller.
    [Show full text]
  • STM32-P103 User's Manual
    STM-P103 development board User's manual Document revision C, August 2016 Copyright(c) 2014, OLIMEX Ltd, All rights reserved INTRODUCTION STM32-P103 board is development board which allows you to explore thee features of the ARM Cortex M3 STM32F103RBT6 microcontroller produced by ST Microelectronics Inc. The board has SD/MMC card connector and allows USB Mass storage device demo to be evaluated. The RS232 driver and connector allows USB to Virtual COM port demo to be evaluated. The CAN port and driver allows CAN applications to be developed. The UEXT connector allows access to all other UEXT modules produced by OLIMEX (like MOD-MP3, MOD-NRF24LR, MOD-NOKIA6610, etc) to be connected easily. In the prototype area the customer can solder his own custom circuits and interface them to USB, CAN, RS232 etc. STM32-P103 is almost identical in hardware design to STM32-P405. The major difference is the microcontroller used (STM32F103 vs STM32F405). Another board with STM32F103 and a display is STM32-103STK. A smaller (and cheaper board) with STM32F103 is the STM32-H103. Both boards mentioned also have a version with the newer microcontroller STM32F405 used. The names are respectively STM32-405STK and STM32-H405. BOARD FEATURES STM32-P103 board features: - CPU: STM32F103RBT6 ARM 32 bit CORTEX M3™ - JTAG connector with ARM 2×10 pin layout for programming/debugging with ARM-JTAG, ARM-USB- OCD, ARM-USB-TINY - USB connector - CAN driver and connector - RS232 driver and connector - UEXT connector which allow different modules to be connected (as MOD-MP3,
    [Show full text]
  • Schedule 14A Employee Slides Supertex Sunnyvale
    UNITED STATES SECURITIES AND EXCHANGE COMMISSION Washington, D.C. 20549 SCHEDULE 14A Proxy Statement Pursuant to Section 14(a) of the Securities Exchange Act of 1934 Filed by the Registrant Filed by a Party other than the Registrant Check the appropriate box: Preliminary Proxy Statement Confidential, for Use of the Commission Only (as permitted by Rule 14a-6(e)(2)) Definitive Proxy Statement Definitive Additional Materials Soliciting Material Pursuant to §240.14a-12 Supertex, Inc. (Name of Registrant as Specified In Its Charter) Microchip Technology Incorporated (Name of Person(s) Filing Proxy Statement, if other than the Registrant) Payment of Filing Fee (Check the appropriate box): No fee required. Fee computed on table below per Exchange Act Rules 14a-6(i)(1) and 0-11. (1) Title of each class of securities to which transaction applies: (2) Aggregate number of securities to which transaction applies: (3) Per unit price or other underlying value of transaction computed pursuant to Exchange Act Rule 0-11 (set forth the amount on which the filing fee is calculated and state how it was determined): (4) Proposed maximum aggregate value of transaction: (5) Total fee paid: Fee paid previously with preliminary materials. Check box if any part of the fee is offset as provided by Exchange Act Rule 0-11(a)(2) and identify the filing for which the offsetting fee was paid previously. Identify the previous filing by registration statement number, or the Form or Schedule and the date of its filing. (1) Amount Previously Paid: (2) Form, Schedule or Registration Statement No.: (3) Filing Party: (4) Date Filed: Filed by Microchip Technology Incorporated Pursuant to Rule 14a-12 of the Securities Exchange Act of 1934 Subject Company: Supertex, Inc.
    [Show full text]
  • Reconfigurable Embedded Control Systems: Problems and Solutions
    RECONFIGURABLE EMBEDDED CONTROL SYSTEMS: PROBLEMS AND SOLUTIONS By Dr.rer.nat.Habil. Mohamed Khalgui ⃝c Copyright by Dr.rer.nat.Habil. Mohamed Khalgui, 2012 v Martin Luther University, Germany Research Manuscript for Habilitation Diploma in Computer Science 1. Reviewer: Prof.Dr. Hans-Michael Hanisch, Martin Luther University, Germany, 2. Reviewer: Prof.Dr. Georg Frey, Saarland University, Germany, 3. Reviewer: Prof.Dr. Wolf Zimmermann, Martin Luther University, Germany, Day of the defense: Monday January 23rd 2012, Table of Contents Table of Contents vi English Abstract x German Abstract xi English Keywords xii German Keywords xiii Acknowledgements xiv Dedicate xv 1 General Introduction 1 2 Embedded Architectures: Overview on Hardware and Operating Systems 3 2.1 Embedded Hardware Components . 3 2.1.1 Microcontrollers . 3 2.1.2 Digital Signal Processors (DSP): . 4 2.1.3 System on Chip (SoC): . 5 2.1.4 Programmable Logic Controllers (PLC): . 6 2.2 Real-Time Embedded Operating Systems (RTOS) . 8 2.2.1 QNX . 9 2.2.2 RTLinux . 9 2.2.3 VxWorks . 9 2.2.4 Windows CE . 10 2.3 Known Embedded Software Solutions . 11 2.3.1 Simple Control Loop . 12 2.3.2 Interrupt Controlled System . 12 2.3.3 Cooperative Multitasking . 12 2.3.4 Preemptive Multitasking or Multi-Threading . 12 2.3.5 Microkernels . 13 2.3.6 Monolithic Kernels . 13 2.3.7 Additional Software Components: . 13 2.4 Conclusion . 14 3 Embedded Systems: Overview on Software Components 15 3.1 Basic Concepts of Components . 15 3.2 Architecture Description Languages . 17 3.2.1 Acme Language .
    [Show full text]
  • Insider's Guide STM32
    The Insider’s Guide To The STM32 ARM®Based Microcontroller An Engineer’s Introduction To The STM32 Series www.hitex.com Published by Hitex (UK) Ltd. ISBN: 0-9549988 8 First Published February 2008 Hitex (UK) Ltd. Sir William Lyons Road University Of Warwick Science Park Coventry, CV4 7EZ United Kingdom Credits Author: Trevor Martin Illustrator: Sarah Latchford Editors: Michael Beach, Alison Wenlock Cover: Wolfgang Fuller Acknowledgements The author would like to thank M a t t Saunders and David Lamb of ST Microelectronics for their assistance in preparing this book. © Hitex (UK) Ltd., 21/04/2008 All rights reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical or photocopying, recording or otherwise without the prior written permission of the Publisher. Contents Contents 1. Introduction 4 1.1 So What Is Cortex?..................................................................................... 4 1.2 A Look At The STM32 ................................................................................ 5 1.2.1 Sophistication ............................................................................................. 5 1.2.2 Safety ......................................................................................................... 6 1.2.3 Security ....................................................................................................... 6 1.2.4 Software Development ..............................................................................
    [Show full text]
  • SOMNIUM® DRT Benchmarks Whitepaper DRT 4.0 Release : March 2017
    SOMNIUM® DRT Benchmarks Whitepaper DRT 4.0 release : March 2017 www.somniumtech.com SOMNIUM® DRT is a complete C/C++ embedded software Microchip SAM examples Atmel START was used to create an "empty" C program including Atmel Software Framework development environment which supports ARM® Cortex® M (ASF) routines to configure the on-chip PLL to highest devices from leading semiconductor vendors. possible frequency on a SAMD21 device (32KByte ROM, Vendor Family Cortex 4KByte RAM). IAR Embedded Workbench uses less memory than vanilla GNU tools from Atmel Studio, DRT Microchip SAM M0+, M3, M4 does even better and uses the smallest amount of ROM. Kinetis M0+, M4 NXP ROM RAM LPC M0, M0+, M3, M4 DRT is smaller DRT is smaller KBytes KBytes (% and bytes) (% and bytes) STMicroelectronics STM32 M0, M0+, M3, M4 DRT 1.5 n/a n/a 8.7 n/a n/a Other software vendors use adjectives. SOMNIUM use Atmel STUDIO 1.8 24.1% 360 8.7 0.0% 0 facts. This whitepaper compares benchmarking results for IAR 1.5 2.4% 36 8.6 -0.4% -32 SOMNIUM DRT against other toolchain products to demonstrate that DRT builds the smallest, fastest most energy efficient code with no source code changes required. NXP Kinetis examples We used NXP's Kinetis SDK v2 (now No defeat devices! Unlike many well known software renamed as MCUXpresso SDK) tools to create an "empty" C vendors, SOMNIUM play fair and do not put “benchmark program (including use of Kinetis SDK v2 routines to enable special” features in our products to change their behavior in the on-chip PLL) for a KL25Z device.
    [Show full text]
  • Μc/OS-II™ Real-Time Operating System
    μC/OS-II™ Real-Time Operating System DESCRIPTION APPLICATIONS μC/OS-II is a portable, ROMable, scalable, preemptive, real-time ■ Avionics deterministic multitasking kernel for microprocessors, ■ Medical equipment/devices microcontrollers and DSPs. Offering unprecedented ease-of-use, ■ Data communications equipment μC/OS-II is delivered with complete 100% ANSI C source code and in-depth documentation. μC/OS-II runs on the largest number of ■ White goods (appliances) processor architectures, with ports available for download from the ■ Mobile Phones, PDAs, MIDs Micrium Web site. ■ Industrial controls μC/OS-II manages up to 250 application tasks. μC/OS-II includes: ■ Consumer electronics semaphores; event flags; mutual-exclusion semaphores that eliminate ■ Automotive unbounded priority inversions; message mailboxes and queues; task, time and timer management; and fixed sized memory block ■ A wide-range of embedded applications management. FEATURES μC/OS-II’s footprint can be scaled (between 5 Kbytes to 24 Kbytes) to only contain the features required for a specific application. The ■ Unprecedented ease-of-use combined with an extremely short execution time for most services provided by μC/OS-II is both learning curve enables rapid time-to-market advantage. constant and deterministic; execution times do not depend on the number of tasks running in the application. ■ Runs on the largest number of processor architectures with ports easily downloaded. A validation suite provides all documentation necessary to support the use of μC/OS-II in safety-critical systems. Specifically, μC/OS-II is ■ Scalability – Between 5 Kbytes to 24 Kbytes currently implemented in a wide array of high level of safety-critical ■ Max interrupt disable time: 200 clock cycles (typical devices, including: configuration, ARM9, no wait states).
    [Show full text]
  • Lpc43s6x Product Data Sheet
    LPC43S6x 32-bit ARM Cortex-M4/M0 MCU; up to 1 MB flash and 154 kB SRAM; Ethernet, two High-speed USB, LCD, EMC, AES engine Rev. 1.3 — 13 January 2020 Product data sheet 1. General description The LPC43S6x are ARM Cortex-M4 based microcontrollers for embedded applications which include an ARM Cortex-M0 coprocessor and an ARM Cortex-M0 subsystem for managing peripherals, up to 1 MB of flash and 154 kB of on-chip SRAM, 16 kB of EEPROM memory, a quad SPI Flash Interface (SPIFI), advanced configurable peripherals such as the SCTimer/PWM and the Serial General Purpose I/O (SGPIO) interface, security features with AES engine, two High-speed USB controllers, Ethernet, LCD, an external memory controller, and multiple digital and analog peripherals. The LPC43S6x operate at CPU frequencies of up to 204 MHz. The ARM Cortex-M4 is a 32-bit core that offers system enhancements such as low power consumption, enhanced debug features, and a high level of support block integration. The ARM Cortex-M4 CPU incorporates a 3-stage pipeline, uses a Harvard architecture with separate local instruction and data buses as well as a third bus for peripherals, and includes an internal prefetch unit that supports speculative branching. The ARM Cortex-M4 supports single-cycle digital signal processing and SIMD instructions. A hardware floating-point processor is integrated into the core. The LPC43S6x include an application ARM Cortex-M0 coprocessor and a second ARM Cortex-M0 subsystem for managing the SGPIO and SPI peripherals.The ARM Cortex-M0 coprocessor is an energy-efficient and easy-to-use 32-bit core which is upward code- and tool-compatible with the Cortex-M4 core.
    [Show full text]
  • Retrofitting Leakage Resilient Authenticated Encryption To
    Retrofitting Leakage Resilient Authenticated Encryption to Microcontrollers Florian Unterstein1∗, Marc Schink1∗, Thomas Schamberger2∗, Lars Tebelmann2∗, Manuel Ilg1 and Johann Heyszl1 1 Fraunhofer Institute for Applied and Integrated Security (AISEC), Germany [email protected], [email protected] 2 Technical University of Munich, Germany, Department of Electrical and Computer Engineering, Chair of Security in Information Technology {t.schamberger,lars.tebelmann}@tum.de Abstract. The security of Internet of Things (IoT) devices relies on fundamental concepts such as cryptographically protected firmware updates. In this context attackers usually have physical access to a device and therefore side-channel attacks have to be considered. This makes the protection of required cryptographic keys and implementations challenging, especially for commercial off-the-shelf (COTS) microcontrollers that typically have no hardware countermeasures. In this work, we demonstrate how unprotected hardware AES engines of COTS microcontrollers can be efficiently protected against side-channel attacks by constructing a leakage resilient pseudo random function (LR-PRF). Using this side-channel protected building block, we implement a leakage resilient authenticated encryption with associated data (AEAD) scheme that enables secured firmware updates. We use concepts from leakage resilience to retrofit side-channel protection on unprotected hardware AES engines by means of software-only modifications. The LR-PRF construction leverages frequent key changes and low data complexity together with key dependent noise from parallel hardware to protect against side-channel attacks. Contrary to most other protection mechanisms such as time-based hiding, no additional true randomness is required. Our concept relies on parallel S-boxes in the AES hardware implementation, a feature that is fortunately present in many microcontrollers as a measure to increase performance.
    [Show full text]
  • 1. Software Development Tools for ARM Cortex-M Processor Based Devices
    1. Software Development Tools for ARM Cortex-M Processor Based Devices Qty : 01 License : Node-Locked Specifications : Sr. Specifications Compliance No. 1 Integrated Development Environment (IDE) with C/C++ Compiler, Linker, Debugger, Run-time libraries, Utilities, CMSIS Tools for ARM Cortex M Series Microcontrollers. 2 Debugger with Simulator : Source level debugger with Single Step, Break Point, JTAG/SWD and ETM Target system support 3 IDE EDITOR with Project Management Support and Dynamic Syntax Checking and Highlighting Syntax. 4 Target File Format : Tool must be capable of generating the Target File Format of executable in BIN or HEX Format. 5 Integrated Analysis Tools must be capable of Analysis of Code and Execution Time, Code and Data Trace. Complete Code Coverage information for program execution with Execution Profiler and Performance Analyzer for analyzing and optimizing your code. 6 Capable of creating the Run -Time Environment for the selected target device. 7 Device Support and Database : Should have Integrated Database to support various devices available in the market. Especially support for ARM Cortex M0/M0+/M1, ARM CORTEX M3/M4/M7, ARM Cortex M23/M33 from various vendors like NXP LPC series, STM32 Series, TI etc. 8 There must be Provision of Incorporating New Cortex -M Series Devises . IDE must be capable to pre-configure the development tools for the selected target device. 9 Software Packs with ready -to -use CMSIS : The tools should provide extensive support for Cortex Microcontroller Software Interface Standard 1/5 (CMSIS) with features of collecting libraries, source modules, configuration and header files and documentation. Generic software pack to support a wide range of devices and applications.
    [Show full text]
  • SEGGER's Advanced Debug Technology Made Available For
    SEGGER Microcontroller – The Embedded Experts SEGGER’s Advanced Debug Technology Made Available for STM32 Nucleo & Discovery MCU Boards Hilden, Germany – April 26th, 2016 SEGGER has now introduced J-Link firmware for the embedded ST-LINK on STM32 Nucleo, STM32 Discovery and other microcontroller unit (MCU) evaluation boards from STMicroelectronics. This brings the proven reliability and industry-leading performance of SEGGER’s highly popular J-Link debug technology to these items of hardware, thereby leading to more efficient development processes. The upgrade turns a board’s ST-LINK interface into a fully functional J-Link, which can then be employed to debug the board's application processor. By upgrading to the J-Link firmware, developers will subsequently be able to set an unlimited number of breakpoints in Flash memory and debug their applications considerably faster - resulting in better use of engineering resources and shortened time to market. The J-Link firmware offers compatibility with all major tool chains, including those using GDB (GNU Debugger), on all major host platforms (Windows, Mac, Linux), while also attaining elevated operational benchmarks, including the fastest download speed into RAM and Flash memory. The tool needed to upgrade the firmware of the on-board ST-LINKs can be downloaded free of charge from SEGGER’s website. If it ever becomes necessary to do so, the exchange process is completely reversible, restoring the original ST-LINK functionality. “With J-Link firmware installed, users of STM32 Nucleo and STM32 Discovery evaluation boards, amongst others, will benefit from access to essential tools like SEGGER RTT and SystemView for real-time analysis purposes.
    [Show full text]