Lesson 18 Memory Protection Unit (MPU)

Size: px
Start display at page:

Download "Lesson 18 Memory Protection Unit (MPU)"

Transcription

1 Lesson 18 Memory Protection Unit (MPU) 1. Overview In this lesson, the Memory Protection Unit (MPU) of the LPC1768 microcontroller is introduced. For detailed description of the features and all controlling options for the UART, read section of the LPC17xx User Manual and chapter 11 of the Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors. 2. Background The Cortex-M3 processor supports an added level of protection for the system memory through the implementation of the MPU. Undesired accesses to the system memory can occur unintentionally (a programmer/user mistake) or intentionally (malicious purpose). For example, an unbalanced combination of push/pop operations in a function may cause a stack overflow which may overwrite useful data in memory. An exploit to the system (attack) can also be carried out through different level of memory access. An example of such attack is the stuxnet computer worm (60 mintues report). Before we examine how access to the system memory can cause problem for any applications, let s first review the memory layout of our microcontroller (LPC1768). From Fig. 3 in the LPC17xx User manual, NXP Semiconductors,

2 The flash memory section of the microcontroller contains instructions (code) for the application. Access to this part of the memory system is generally limited to read-only (RO). The data memory portion (SRAM) of the microcontroller allows read and write access from user application. The potential problem is that malicious software code can be embedded into data memory and once activated can take control of the application. For example, let s consider a simple program shown below. Whenever function f1 is called, the first thing it will do is to push the returning address (PUSH LR) to the memory stack because it calls function f2. Once returned from f2, the address from the stack is then popped into the PC to return the main function. Assume that the functions are allocated in memory as shown below. Address Code memory Address Data memory 0x x x A 0x E 0x x x A F2 -- BX LR F1 PUSH {LR} -- BL F2 POP {PC} MAIN BL F1 B main 0x x x x x C Loop B Loop SP 2

3 Let s say that someone with malicious intent was able to place a program code in the data memory at location 0x (just a loop operation for illustration). If this person can also modify the return address from the stack to point to his program (ie. replace 0x B with 0x at location 0x of the stack,) then he will have control of the application. An illustration of this example is shown below. Normal operation: Data memory holds executable code: This program will never return to the original functions (main, f1, or f2). 3

4 The MPU can be employed to block executable code (memory fault) to prevent the problem discussed above. 3. LP1768 MPU Control of the MPU is done via the four main registers: MPU Control Register (CTRL) Bit 0: 0 = MPU disabled, 1 = MPU enabled. MPU Region Number Register (RNR) From Table 680 in the LPC17xx User manual, NXP Semiconductors, From Table 683 in the LPC17xx User manual, NXP Semiconductors, The MPU supports 8 different user-defined regions and each can be configured differently. Generally, a program will write the region number to the RNR register before configuring the region via the RBAR and RASR registers. MPU Region Base Address Register (RBAR) From Table 684 in the LPC17xx User manual, NXP Semiconductors, Note: NN = llllll 2 (rrrrrrrrrrrr ssssssss iiii bbbbbbbbbb) 4

5 MPU Region Attribute and Size Register (RASR) Region size: From Table 685 in the LPC17xx User manual, NXP Semiconductors, From Table 686 in the LPC17xx User manual, NXP Semiconductors, Region attributes: 5

6 From Table 687 in the LPC17xx User manual, NXP Semiconductors, From Table 689 in the LPC17xx User manual, NXP Semiconductors, Typical configuration for the MPU of a LPC1768 microcontroller: Regions No Memory Size Base Address Type Access Permission 0 Flash 512 KB 0x Normal Full RO 1 SRAM 32 KB 0x Normal Full RW 2 AHB SRAM 32 KB 0x2007C000 Normal Full RW 3 GPIO 16 KB 0x2009C000 Device Full RW 4 APB 512 KB 0x Device Full RW Peripherals 5 AHB Peripherals 2MB 0x Device Full RW Based on Setting Up the Cortex-M3/M4 (ARMv7-M) Memory Protection Unit (MPU), Feabhas,

7 Exercise: Configure region1 from the table above (SRAM: 0x x10007FFF) with the following attributes: No executable code allowed(instruction fetches disabled) Normal memory type, nonsharable (can only be accessed by one bus), and noncacheable (or bufferable) Full access permissions No sub-regions Setup steps: Step 1: disable MPU first CNTRL register = 0x0 Step 2: Select region 1 RNR register = 0x1 Step 3: Set base address for region 1 RBAR register = 0x Step 4: Set region attributes and size XN = 0b1 (instruction fetches disabled) AP = 0b011 (full access) TEX = 0b001, S = 0b0, C = 0b0, B = 0b0 (Normal memory type, nonshareable, noncacheable) SRD = 0b (no sub-region) Size = 0b01110 (32 KB) Enable= 0b1 So, RASR register = 0b = 0x D XN AP TEX,S,C,B SRD SIZE ENABLE Step 5: Enable MPU CNTRL register = 0x1 4. References [1]. Joseph Yiu, The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors, Elsevier, 3 rd ed, [2]. [3]. Jonathan Valvano, Introduction to ARM Cortex-M Microcontroller, 4 nd ed, ARMv7-M Architecture Reference Manual, ARM Limited, [4]. LPC17xx User manual, NXP Semiconductors, [5]. Cortex-M3 Technical Reference Manual, ARM Limited, [6]. Patrick Vincent and Agur Adams, EC310 Notes, USNA, [7]. Setting Up the Cortex-M3/M4 (ARMv7-M) Memory Protection Unit (MPU), Feabhas,

Migrating Application Code from ARM Cortex-M4 to Cortex-M7 Processors

Migrating Application Code from ARM Cortex-M4 to Cortex-M7 Processors Migrating Application Code from ARM Cortex-M4 to Cortex-M7 Processors Joseph Yiu and Robert Boys January 2015 Version 1.1 The latest version of this document is here: /appnotes/docs/apnt_270.asp 1 Cortex

More information

Lesson 16 Analog-to-Digital Converter (ADC)

Lesson 16 Analog-to-Digital Converter (ADC) Lesson 16 Analog-to-Digital Converter (ADC) 1. Overview In this lesson, the Analog-to-Digital Converter (ADC) of the Cortex-M3 is introduced. For detailed description of the features and controlling options

More information

AN10850. LPC1700 timer triggered memory to GPIO data transfer. Document information. LPC1700, GPIO, DMA, Timer0, Sleep Mode

AN10850. LPC1700 timer triggered memory to GPIO data transfer. Document information. LPC1700, GPIO, DMA, Timer0, Sleep Mode LPC1700 timer triggered memory to GPIO data transfer Rev. 01 16 July 2009 Application note Document information Info Keywords Abstract Content LPC1700, GPIO, DMA, Timer0, Sleep Mode This application note

More information

Overview of the Cortex-M3

Overview of the Cortex-M3 CHAPTER Overview of the Cortex-M3 2 In This Chapter Fundamentals 11 Registers 12 Operation Modes 14 The Built-In Nested Vectored Interrupt Controller 15 The Memory Map 16 The Bus Interface 17 The MPU 18

More information

Application Note 195. ARM11 performance monitor unit. Document number: ARM DAI 195B Issued: 15th February, 2008 Copyright ARM Limited 2007

Application Note 195. ARM11 performance monitor unit. Document number: ARM DAI 195B Issued: 15th February, 2008 Copyright ARM Limited 2007 Application Note 195 ARM11 performance monitor unit Document number: ARM DAI 195B Issued: 15th February, 2008 Copyright ARM Limited 2007 Copyright 2007 ARM Limited. All rights reserved. Application Note

More information

Cortex -M0 Devices. Generic User Guide. Copyright 2009 ARM Limited. All rights reserved. ARM DUI 0497A (ID112109)

Cortex -M0 Devices. Generic User Guide. Copyright 2009 ARM Limited. All rights reserved. ARM DUI 0497A (ID112109) Cortex -M0 Devices Generic User Guide Copyright 2009 ARM Limited. All rights reserved. ARM DUI 0497A () Cortex-M0 Devices Generic User Guide Copyright 2009 ARM Limited. All rights reserved. Release Information

More information

The ARM Architecture. With a focus on v7a and Cortex-A8

The ARM Architecture. With a focus on v7a and Cortex-A8 The ARM Architecture With a focus on v7a and Cortex-A8 1 Agenda Introduction to ARM Ltd ARM Processors Overview ARM v7a Architecture/Programmers Model Cortex-A8 Memory Management Cortex-A8 Pipeline 2 ARM

More information

AN10866 LPC1700 secondary USB bootloader

AN10866 LPC1700 secondary USB bootloader Rev. 2 21 September 2010 Application note Document information Info Content Keywords LPC1700, Secondary USB Bootloader, ISP, IAP Abstract This application note describes how to add a custom secondary USB

More information

An introduction to nxpusblib. March 2012

An introduction to nxpusblib. March 2012 An introduction to nxpusblib March 2012 Agenda NXP USB portfolio Demo using LPC1800- Out of the Box What is nxpusblib? How to use nxpusblib? Why to use nxpusblib? Summary 2 NXP USB Portfolio NXP MCU the

More information

Adding WiFi to Your Embedded System. WPG Americas & Gainspan Titus Wandinger (WPG) & Su Li (Gainspan) April 23, 2013

Adding WiFi to Your Embedded System. WPG Americas & Gainspan Titus Wandinger (WPG) & Su Li (Gainspan) April 23, 2013 Adding WiFi to Your Embedded System WPG Americas & Gainspan Titus Wandinger (WPG) & Su Li (Gainspan) April 23, 2013 Your partners for Embedded Wi-Fi Multi Market Leader 32 bit ARM MCU Leader Ultra low

More information

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory 1 1. Memory Organisation 2 Random access model A memory-, a data byte, or a word, or a double

More information

Lab Experiment 1: The LPC 2148 Education Board

Lab Experiment 1: The LPC 2148 Education Board Lab Experiment 1: The LPC 2148 Education Board 1 Introduction The aim of this course ECE 425L is to help you understand and utilize the functionalities of ARM7TDMI LPC2148 microcontroller. To do that,

More information

AN10935 Using SDR/DDR SDRAM memories with LPC32xx

AN10935 Using SDR/DDR SDRAM memories with LPC32xx Rev. 2 11 October 2010 Application note Document information Info Keywords Abstract Content LPC32x0, LPC32xx, LPC3220, LPC3230, LPC3240, LPC3250, SDR, SDRAM, DDR This application note covers hardware related

More information

Application Note: AN00141 xcore-xa - Application Development

Application Note: AN00141 xcore-xa - Application Development Application Note: AN00141 xcore-xa - Application Development This application note shows how to create a simple example which targets the XMOS xcore-xa device and demonstrates how to build and run this

More information

ES_LPC4357/53/37/33. Errata sheet LPC4357/53/37/33. Document information

ES_LPC4357/53/37/33. Errata sheet LPC4357/53/37/33. Document information Rev. 1.1 8 August 2012 Errata sheet Document information Info Keywords Abstract Content LPC4357FET256; LPC4357FET180; LPC4357FBD208; LPC4353FET256; LPC4353FET180; LPC4353FBD208; LPC4337FET256; LPC4337FET180;

More information

ARM Cortex-M3 Introduction. ARM University Relations

ARM Cortex-M3 Introduction. ARM University Relations ARM Cortex-M3 Introduction ARM University Relations 1 Agenda Cortex-M3 Overview v7-m Architecture/Programmers Model Data Path and Pipelines Tools and mbed Platform 2 What s Happening in Microcontrollers?

More information

Open1788 User Manual. Features

Open1788 User Manual. Features Open1788 User Manual Features The Open1788 is an LPC development board designed for the LPC1788FBD208 microcontroller, consists of the mother board and the MCU core board Core1788. The Open1788 supports

More information

Architectures, Processors, and Devices

Architectures, Processors, and Devices Architectures, Processors, and Devices Development Article Copyright 2009 ARM Limited. All rights reserved. ARM DHT 0001A Development Article Copyright 2009 ARM Limited. All rights reserved. Release Information

More information

Designing a System-on-Chip (SoC) with an ARM Cortex -M Processor

Designing a System-on-Chip (SoC) with an ARM Cortex -M Processor Designing a System-on-Chip (SoC) with an ARM Cortex -M Processor A Starter Guide Joseph Yiu November 2014 version 1.02 27 Nov 2014 1 - Background Since the ARM Cortex -M0 Processor was released a few years

More information

Hello and welcome to this presentation of the STM32L4 Firewall. It covers the main features of this system IP used to secure sensitive code and data.

Hello and welcome to this presentation of the STM32L4 Firewall. It covers the main features of this system IP used to secure sensitive code and data. Hello and welcome to this presentation of the STM32L4 Firewall. It covers the main features of this system IP used to secure sensitive code and data. 1 Here is an overview of the Firewall s implementation

More information

Using the CoreSight ITM for debug and testing in RTX applications

Using the CoreSight ITM for debug and testing in RTX applications Using the CoreSight ITM for debug and testing in RTX applications Outline This document outlines a basic scheme for detecting runtime errors during development of an RTX application and an approach to

More information

Bootloader with AES Encryption

Bootloader with AES Encryption ...the world's most energy friendly microcontrollers Bootloader with AES Encryption AN0060 - Application Note Introduction This application note describes the implementation of a bootloader capable of

More information

AN10860_1. Contact information. NXP Semiconductors. LPC313x NAND flash data and bad block management

AN10860_1. Contact information. NXP Semiconductors. LPC313x NAND flash data and bad block management Rev. 01 11 August 2009 Application note Document information Info Keywords Abstract Content LPC3130 LPC3131 LPC313x LPC313X LPC3153 LPC3154 LPC3141 LPC3142 LPC31XX LPC31xx Linux kernel Apex boot loader

More information

Pen Drive to Pen Drive and Mobile Data Transfer Using ARM

Pen Drive to Pen Drive and Mobile Data Transfer Using ARM IOSR Journal of Electronics and Communication Engineering (IOSR-JECE) ISSN: 2278-2834, ISBN: 2278-8735, PP: 43-47 www.iosrjournals.org Pen Drive to Pen Drive and Mobile Data Transfer Using ARM 1 Mr.V.S.Gawali,

More information

Lecture N -1- PHYS 3330. Microcontrollers

Lecture N -1- PHYS 3330. Microcontrollers Lecture N -1- PHYS 3330 Microcontrollers If you need more than a handful of logic gates to accomplish the task at hand, you likely should use a microcontroller instead of discrete logic gates 1. Microcontrollers

More information

How To Add A Usb Secondary Ipo Bootloader To An Lpc23Xx Flash Device To A Flash Device

How To Add A Usb Secondary Ipo Bootloader To An Lpc23Xx Flash Device To A Flash Device Rev. 01 16 October 2008 Application note Document information Info Keywords Abstract Content LPC23xx, Secondary ISP Bootloader, Bootloader, USB This application note describes how to add custom USB secondary

More information

USER GUIDE EDBG. Description

USER GUIDE EDBG. Description USER GUIDE EDBG Description The Atmel Embedded Debugger (EDBG) is an onboard debugger for integration into development kits with Atmel MCUs. In addition to programming and debugging support through Atmel

More information

AN11241. AES encryption and decryption software on LPC microcontrollers. Document information

AN11241. AES encryption and decryption software on LPC microcontrollers. Document information AES encryption and decryption software on LPC microcontrollers Rev. 1 25 July 2012 Application note Document information Info Content Keywords AES, encryption, decryption, FIPS-197, Cortex-M0, Cortex-M3

More information

AN10950. LPC24XX external memory bus example. Document information

AN10950. LPC24XX external memory bus example. Document information Rev. 1.1 9 November 2012 Application note Document information Info Content Keywords LPC24XX, EMC, memory, SDRAM, SRAM, flash Abstract This application note will detail an example design illustrating how

More information

Keep your tentacles off my bus: Introducing Die Datenkrake. REcon 2013, Montréal Dmitry Nedospasov, Thorsten Schröder

Keep your tentacles off my bus: Introducing Die Datenkrake. REcon 2013, Montréal Dmitry Nedospasov, Thorsten Schröder Keep your tentacles off my bus: Introducing Die Datenkrake. REcon 2013, Montréal Dmitry Nedospasov, Thorsten Schröder About us Dmitry Nedospasov PhD Student TU Berlin Thorsten Schröder Founder, modzero

More information

How to design and implement firmware for embedded systems

How to design and implement firmware for embedded systems How to design and implement firmware for embedded systems Last changes: 17.06.2010 Author: Rico Möckel The very beginning: What should I avoid when implementing firmware for embedded systems? Writing code

More information

LPC4330-Xplorer. Quick Start Guide: LPC4330-Xplorer. User Manuals for Xplorer:

LPC4330-Xplorer. Quick Start Guide: LPC4330-Xplorer. User Manuals for Xplorer: LPC4330-Xplorer User Manuals for Xplorer: For KEIL MDK-ARM with ULINK2/ME: Click here For LPC-Xpresso with NXP-LPCLink: Click here Sample projects for Xplorer: For KEIL MDK-ARM: Click here For LPC-Xpresso:

More information

World-wide University Program

World-wide University Program 1 World-wide University Program Preparing Today s Students for Tomorrow s Technology Joe Bungo Manager Americas/Europe R&D Division 2 CONFIDENTIAL ARM Ltd ARM founded in November 1990 Advanced RISC Machines

More information

Printed Exception strings - what do all

Printed Exception strings - what do all Printed Exception strings - what do all those flags mean? Data Abort: Thread=9352cc9c Proc=90876ea0 'shell32.exe' AKY=00000005 PC=03f74680(coredll.dll+0x00014680) RA=03257104(aygshell.dll+0x00037104) BVA=060000e0

More information

The new 32-bit MSP432 MCU platform from Texas

The new 32-bit MSP432 MCU platform from Texas Technology Trend MSP432 TM microcontrollers: Bringing high performance to low-power applications The new 32-bit MSP432 MCU platform from Texas Instruments leverages its more than 20 years of lowpower leadership

More information

The Quest for Speed - Memory. Cache Memory. A Solution: Memory Hierarchy. Memory Hierarchy

The Quest for Speed - Memory. Cache Memory. A Solution: Memory Hierarchy. Memory Hierarchy The Quest for Speed - Memory Cache Memory CSE 4, Spring 25 Computer Systems http://www.cs.washington.edu/4 If all memory accesses (IF/lw/sw) accessed main memory, programs would run 20 times slower And

More information

Embedded Software development Process and Tools:

Embedded Software development Process and Tools: Embedded Software development Process and Tools: Lesson-2 Integrated Development Environment (IDE) 1 1. IDE 2 Consists of Simulators editors, compilers, assemblers, etc., IDE 3 emulators logic analyzers

More information

ARM Processors and the Internet of Things. Joseph Yiu Senior Embedded Technology Specialist, ARM

ARM Processors and the Internet of Things. Joseph Yiu Senior Embedded Technology Specialist, ARM ARM Processors and the Internet of Things Joseph Yiu Senior Embedded Technology Specialist, ARM 1 Internet of Things is a very Diverse Market Human interface Location aware MEMS sensors Smart homes Security,

More information

On Demand Loading of Code in MMUless Embedded System

On Demand Loading of Code in MMUless Embedded System On Demand Loading of Code in MMUless Embedded System Sunil R Gandhi *. Chetan D Pachange, Jr.** Mandar R Vaidya***, Swapnilkumar S Khorate**** *Pune Institute of Computer Technology, Pune INDIA (Mob- 8600867094;

More information

Motor Control using NXP s LPC2900

Motor Control using NXP s LPC2900 Motor Control using NXP s LPC2900 Agenda LPC2900 Overview and Development tools Control of BLDC Motors using the LPC2900 CPU Load of BLDCM and PMSM Enhancing performance LPC2900 Demo BLDC motor 2 LPC2900

More information

Assistant Professor, Dept of E.C.E, Aurora s Technological & Research Institute,

Assistant Professor, Dept of E.C.E, Aurora s Technological & Research Institute, Design and Implementation of Online Patient Monitoring System Using Cortex-M3 Core D.VIJAYA KUMAR 1, K.SRINIVAS 2, B.SRINIVAS 3 1 M.TECH (E.S.), Dept of E.C.E, Aurora s Technological & Research Institute,vijay615@gmail.com,

More information

Network connectivity controllers

Network connectivity controllers Network connectivity controllers High performance connectivity solutions Factory Automation The hostile environment of many factories can have a significant impact on the life expectancy of PCs, and industrially

More information

Pre-tested System-on-Chip Design. Accelerates PLD Development

Pre-tested System-on-Chip Design. Accelerates PLD Development Pre-tested System-on-Chip Design Accelerates PLD Development March 2010 Lattice Semiconductor 5555 Northeast Moore Ct. Hillsboro, Oregon 97124 USA Telephone: (503) 268-8000 www.latticesemi.com 1 Pre-tested

More information

Software based Finite State Machine (FSM) with general purpose processors

Software based Finite State Machine (FSM) with general purpose processors Software based Finite State Machine (FSM) with general purpose processors White paper Joseph Yiu January 2013 Overview Finite state machines (FSM) are commonly used in electronic designs. FSM can be used

More information

CHAPTER 7: The CPU and Memory

CHAPTER 7: The CPU and Memory CHAPTER 7: The CPU and Memory The Architecture of Computer Hardware, Systems Software & Networking: An Information Technology Approach 4th Edition, Irv Englander John Wiley and Sons 2010 PowerPoint slides

More information

SoC IP Interfaces and Infrastructure A Hybrid Approach

SoC IP Interfaces and Infrastructure A Hybrid Approach SoC IP Interfaces and Infrastructure A Hybrid Approach Cary Robins, Shannon Hill ChipWrights, Inc. ABSTRACT System-On-Chip (SoC) designs incorporate more and more Intellectual Property (IP) with each year.

More information

UM10114. LPC2210/2220 User manual. Document information

UM10114. LPC2210/2220 User manual. Document information LPC2210/2220 User manual Rev. 02 27 April 2007 User manual Document information Info Content Keywords LPC2210, LPC2220, LPC2210/01, ARM, ARM7, 32-bit, Microcontroller Abstract LPC2210/2220 User manual

More information

DESIGN AND IMPLEMENTATION OF ONLINE PATIENT MONITORING SYSTEM

DESIGN AND IMPLEMENTATION OF ONLINE PATIENT MONITORING SYSTEM DESIGN AND IMPLEMENTATION OF ONLINE PATIENT MONITORING SYSTEM Harsha G S Department of Electronics & Communication Channabasaveshwara Institute of Technology, Gubbi, 572216, India ABSTRACT Patient s condition

More information

Smartphone Quick-Jack Solution FASTER TO PRODUCT FASTER TO MARKET

Smartphone Quick-Jack Solution FASTER TO PRODUCT FASTER TO MARKET Smartphone Quick-Jack Solution FASTER TO PRODUCT FASTER TO MARKET Are You Are You A Smartphone App Developer looking for an easy a way to Or An End-Product Designer looking for a simple way to Incorporate

More information

How To Design A Single Chip System Bus (Amba) For A Single Threaded Microprocessor (Mma) (I386) (Mmb) (Microprocessor) (Ai) (Bower) (Dmi) (Dual

How To Design A Single Chip System Bus (Amba) For A Single Threaded Microprocessor (Mma) (I386) (Mmb) (Microprocessor) (Ai) (Bower) (Dmi) (Dual Architetture di bus per System-On On-Chip Massimo Bocchi Corso di Architettura dei Sistemi Integrati A.A. 2002/2003 System-on on-chip motivations 400 300 200 100 0 19971999 2001 2003 2005 2007 2009 Transistors

More information

Design of Self-service Car Washing Machine Control System Based on ARM Zhengmin Cui a, Peng Sun b

Design of Self-service Car Washing Machine Control System Based on ARM Zhengmin Cui a, Peng Sun b 4th National Conference on Electrical, Electronics and Computer Engineering (NCEECE 2015) Design of Self-service Car Washing Machine Control System Based on ARM Zhengmin Cui a, Peng Sun b Shandong labor

More information

UM10120. LPC2131/2/4/6/8 User manual. Document information

UM10120. LPC2131/2/4/6/8 User manual. Document information LPC2131/2/4/6/8 User manual Rev. 4 23 April 2012 User manual Document information Info Keywords Abstract Content LPC2131, LPC2132, LPC2134, LPC2136, LPC2138, LPC2131/01, LPC2132/01, LPC2134/01, LPC2136/01,

More information

A Method for Image Processing and Distance Measuring Based on Laser Distance Triangulation

A Method for Image Processing and Distance Measuring Based on Laser Distance Triangulation A Method for Image Processing and Distance Measuring Based on Laser Distance Triangulation Saulo Vinicius Ferreira Barreto University of Pernambuco UPE saulo.barreto@gmail.com Remy Eskinazi Sant Anna University

More information

Cortex -M3 Devices. Generic User Guide. Copyright 2010 ARM. All rights reserved. ARM DUI 0552A (ID121610)

Cortex -M3 Devices. Generic User Guide. Copyright 2010 ARM. All rights reserved. ARM DUI 0552A (ID121610) Cortex -M3 Devices Generic User Guide Copyright 2010 ARM. All rights reserved. ARM DUI 0552A () Cortex-M3 Devices Generic User Guide Copyright 2010 ARM. All rights reserved. Release Information The following

More information

ARM Cortex-R Architecture

ARM Cortex-R Architecture ARM Cortex-R Architecture For Integrated Control and Safety Applications Simon Craske, Senior Principal Engineer October, 2013 Foreword The ARM architecture continuously evolves to support deployment of

More information

CVE-2012-1535 Adobe Flash Player Integer Overflow Vulnerability Analysis

CVE-2012-1535 Adobe Flash Player Integer Overflow Vulnerability Analysis Your texte here. CVE-2012-1535 Adobe Flash Player Integer Overflow Vulnerability Analysis October 11 th, 2012 Brian MARIANI & Frédéric BOURLA A FEW WORDS ABOUT FLASH PLAYER Your Adobe texte Flash here

More information

Application Note 179. Cortex -M3 Embedded Software Development. Released on: March 2007. Copyright 2007. All rights reserved.

Application Note 179. Cortex -M3 Embedded Software Development. Released on: March 2007. Copyright 2007. All rights reserved. Cortex -M3 Embedded Software Development Released on: March 2007 Copyright 2007. All rights reserved. ARM DAI0179B Application Note 179 Cortex-M3 Embedded Software Development Copyright 2007. All rights

More information

MICROPROCESSOR BCA IV Sem MULTIPLE CHOICE QUESTIONS

MICROPROCESSOR BCA IV Sem MULTIPLE CHOICE QUESTIONS MICROPROCESSOR BCA IV Sem MULTIPLE CHOICE QUESTIONS 1) Which is the microprocessor comprises: a. Register section b. One or more ALU c. Control unit 2) What is the store by register? a. data b. operands

More information

NXP & Security Innovation Encryption for ARM MCUs

NXP & Security Innovation Encryption for ARM MCUs NXP & Security Innovation Encryption for ARM MCUs Presenters Gene Carter- International Product Manager, NXP Semiconductors Gene is responsible for marketing of the ARM7 and Cortex-M3 microcontrollers.

More information

SmartFusion csoc: Basic Bootloader and Field Upgrade envm Through IAP Interface

SmartFusion csoc: Basic Bootloader and Field Upgrade envm Through IAP Interface Application Note AC372 SmartFusion csoc: Basic Bootloader and Field Upgrade envm Through IAP Interface Table of Contents Introduction................................................ 1 Introduction to Field

More information

Am186ER/Am188ER AMD Continues 16-bit Innovation

Am186ER/Am188ER AMD Continues 16-bit Innovation Am186ER/Am188ER AMD Continues 16-bit Innovation 386-Class Performance, Enhanced System Integration, and Built-in SRAM Problem with External RAM All embedded systems require RAM Low density SRAM moving

More information

Where s the FEEB? The Effectiveness of Instruction Set Randomization

Where s the FEEB? The Effectiveness of Instruction Set Randomization Where s the FEEB? The Effectiveness of Instruction Set Randomization Ana Nora Sovarel David Evans Nathanael Paul University of Virginia, Department of Computer Science http://www.cs.virginia.edu/feeb Abstract

More information

ARM Cortex STM series

ARM Cortex STM series ARM Cortex board 1 ARM Cortex STM series 2 STM32 Series 3 Abbreviation FS full speed HS high speed MC motor controller MSI multi speed internal oscillator RNG random number generator SDIO secure digital

More information

Return-oriented programming without returns

Return-oriented programming without returns Faculty of Computer Science Institute for System Architecture, Operating Systems Group Return-oriented programming without urns S. Checkoway, L. Davi, A. Dmitrienko, A. Sadeghi, H. Shacham, M. Winandy

More information

M85 OpenCPU Solution Presentation

M85 OpenCPU Solution Presentation M85 OpenCPU Solution Presentation 2013/09/22 Wireless Solutions Co., Ltd. All rights reserved OUTLINE OpenCPU Summary Advantages Software Architecture What s New? Open Resources Development Requirements

More information

Reconfigurable System-on-Chip Design

Reconfigurable System-on-Chip Design Reconfigurable System-on-Chip Design MITCHELL MYJAK Senior Research Engineer Pacific Northwest National Laboratory PNNL-SA-93202 31 January 2013 1 About Me Biography BSEE, University of Portland, 2002

More information

Microcontrollers Deserve Protection Too

Microcontrollers Deserve Protection Too Microcontrollers Deserve Protection Too Amit Levy with: Michael Andersen, Tom Bauer, Sergio Benitez, Bradford Campbell, David Culler, Prabal Dutta, Philip Levis, Pat Pannuto, Laurynas Riliskis Microcontrollers

More information

M A S S A C H U S E T T S I N S T I T U T E O F T E C H N O L O G Y DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE

M A S S A C H U S E T T S I N S T I T U T E O F T E C H N O L O G Y DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE M A S S A C H U S E T T S I N S T I T U T E O F T E C H N O L O G Y DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE 1. Introduction 6.004 Computation Structures β Documentation This handout is

More information

MICROPROCESSOR. Exclusive for IACE Students www.iace.co.in iacehyd.blogspot.in Ph: 9700077455/422 Page 1

MICROPROCESSOR. Exclusive for IACE Students www.iace.co.in iacehyd.blogspot.in Ph: 9700077455/422 Page 1 MICROPROCESSOR A microprocessor incorporates the functions of a computer s central processing unit (CPU) on a single Integrated (IC), or at most a few integrated circuit. It is a multipurpose, programmable

More information

Complete Integrated Development Platform. 2013 Copyright Atmel Corporation

Complete Integrated Development Platform. 2013 Copyright Atmel Corporation Complete Integrated Development Platform 2013 Copyright Atmel Corporation MCU Developer s Challenge 80% increase in SW in next MCU project Top Engineering Concern: Hitting Schedules More complex end user

More information

Application Report AN01286 May 2012

Application Report AN01286 May 2012 Application Report Diagnosing Software Faults in Stellaris Microcontrollers Joe Kroesche, Stellaris Software ABSTRACT During typical development efforts, system operation can sometimes end up in a fault

More information

An Introduction to the ARM 7 Architecture

An Introduction to the ARM 7 Architecture An Introduction to the ARM 7 Architecture Trevor Martin CEng, MIEE Technical Director This article gives an overview of the ARM 7 architecture and a description of its major features for a developer new

More information

Using the Kinetis Security and Flash Protection Features

Using the Kinetis Security and Flash Protection Features Freescale Semiconductor Document Number:AN4507 Application Note Rev. 1, 6/2012 Using the Kinetis Security and Flash Protection Features by: Melissa Hunter Automotive and Industrial Solutions Group 1 Introduction

More information

STM32 F-2 series High-performance Cortex-M3 MCUs

STM32 F-2 series High-performance Cortex-M3 MCUs STM32 F-2 series High-performance Cortex-M3 MCUs STMicroelectronics 32-bit microcontrollers, 120 MHz/150 DMIPS with ART Accelerator TM and advanced peripherals www.st.com/mcu STM32 F-2 series The STM32

More information

Lesson-16: Real time clock DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK

Lesson-16: Real time clock DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK Lesson-16: Real time clock 1 Real Time Clock (RTC) A clock, which is based on the interrupts at preset intervals. An interrupt service routine executes

More information

Performance Investigations. Hannes Tschofenig, Manuel Pégourié-Gonnard 25 th March 2015

Performance Investigations. Hannes Tschofenig, Manuel Pégourié-Gonnard 25 th March 2015 Performance Investigations Hannes Tschofenig, Manuel Pégourié-Gonnard 25 th March 2015 1 Motivation In we tried to provide guidance for the use of DTLS (TLS) when used in

More information

150127-Microprocessor & Assembly Language

150127-Microprocessor & Assembly Language Chapter 3 Z80 Microprocessor Architecture The Z 80 is one of the most talented 8 bit microprocessors, and many microprocessor-based systems are designed around the Z80. The Z80 microprocessor needs an

More information

Implementation Details

Implementation Details LEON3-FT Processor System Scan-I/F FT FT Add-on Add-on 2 2 kbyte kbyte I- I- Cache Cache Scan Scan Test Test UART UART 0 0 UART UART 1 1 Serial 0 Serial 1 EJTAG LEON_3FT LEON_3FT Core Core 8 Reg. Windows

More information

USB 3.0 Connectivity using the Cypress EZ-USB FX3 Controller

USB 3.0 Connectivity using the Cypress EZ-USB FX3 Controller USB 3.0 Connectivity using the Cypress EZ-USB FX3 Controller PLC2 FPGA Days June 20, 2012 Stuttgart Martin Heimlicher FPGA Solution Center Content Enclustra Company Profile USB 3.0 Overview What is new?

More information

BEAGLEBONE BLACK ARCHITECTURE MADELEINE DAIGNEAU MICHELLE ADVENA

BEAGLEBONE BLACK ARCHITECTURE MADELEINE DAIGNEAU MICHELLE ADVENA BEAGLEBONE BLACK ARCHITECTURE MADELEINE DAIGNEAU MICHELLE ADVENA AGENDA INTRO TO BEAGLEBONE BLACK HARDWARE & SPECS CORTEX-A8 ARMV7 PROCESSOR PROS & CONS VS RASPBERRY PI WHEN TO USE BEAGLEBONE BLACK Single

More information

AN11239. Boot mode jumper settings for LPC1800 and LPC4300. Document information

AN11239. Boot mode jumper settings for LPC1800 and LPC4300. Document information Rev. 1 1 July 2012 Application note Document information Info Keywords Abstract Content Hitex Rev A4, NGX Xplorer, Keil, element14, LPC1830, LPC1850, LPC4330, LPC4350, MCB1800, MCB4300 This application

More information

Software development and debugging for NXP ARM7 MCUs

Software development and debugging for NXP ARM7 MCUs THE MINISTRY of EDUCATION and SCIENCE of RUSSIAN FEDERATION SAMARA STATE AEROSPACE UNIVERSITY Software development and debugging for NXP ARM7 MCUs Learner s guide SAMARA 2011 2 Compilers: Kudryavtsev Ilya

More information

Applications Development on the ARM Cortex -M0+ Free On-line Development Tools Presented by William Antunes

Applications Development on the ARM Cortex -M0+ Free On-line Development Tools Presented by William Antunes Applications Development on the ARM Cortex -M0+ Free On-line Development Tools Presented by William Antunes Agenda Cortex M0+ architecture Introduction to Kinetis L Freedom board Arrow Cloud Connect Internet

More information

Slide Set 8. for ENCM 369 Winter 2015 Lecture Section 01. Steve Norman, PhD, PEng

Slide Set 8. for ENCM 369 Winter 2015 Lecture Section 01. Steve Norman, PhD, PEng Slide Set 8 for ENCM 369 Winter 2015 Lecture Section 01 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Winter Term, 2015 ENCM 369 W15 Section

More information

LPC2300/LPC2400 TCP/IP Overview. TCP/IP and LPC2300/LPC2400 Family October 2007

LPC2300/LPC2400 TCP/IP Overview. TCP/IP and LPC2300/LPC2400 Family October 2007 LPC2300/LPC2400 TCP/IP Overview TCP/IP and LPC2300/LPC2400 Family October 2007 Introduction to the LPC2300/LPC2400 Family Family is an important word in the title All blocks across the LPC2000 family are

More information

Full Power Domain SLCR (FPD_SLCR)

Full Power Domain SLCR (FPD_SLCR) Full Power Domain SLCR (FPD_SLCR) Module Name Base Address Description Vendor Info Register Summary Full Power Domain SLCR (FPD_SLCR) 0xFD610000 FPD_SLCR Global system level control registers for the full

More information

Programmazione Microcontrollori

Programmazione Microcontrollori Programmazione Microcontrollori 2013/2014 1 Programmazione Microcontrollori Cosa Serve PC withwindows (XP/ Vista / 7 / 8 / ) Developmentboard(STM32-XX Discovery) MINI USB cable Keil uvision IDE for ARM

More information

Off-by-One exploitation tutorial

Off-by-One exploitation tutorial Off-by-One exploitation tutorial By Saif El-Sherei www.elsherei.com Introduction: I decided to get a bit more into Linux exploitation, so I thought it would be nice if I document this as a good friend

More information

SECURITY SYSTEM IN INDUSTRIES USING ZIGBEE TECHNOLOGY

SECURITY SYSTEM IN INDUSTRIES USING ZIGBEE TECHNOLOGY SECURITY SYSTEM IN INDUSTRIES USING ZIGBEE TECHNOLOGY 1 S. Ashmad, 2 M.Mohan Babu, 3 P. Sudheer Asst. Professor, Department of E.I.E, SITAMS, Affiliated to JNTUA University, Chittoor, A.P Email : ashmad.syed@gmail.com,

More information

An Overview of Stack Architecture and the PSC 1000 Microprocessor

An Overview of Stack Architecture and the PSC 1000 Microprocessor An Overview of Stack Architecture and the PSC 1000 Microprocessor Introduction A stack is an important data handling structure used in computing. Specifically, a stack is a dynamic set of elements in which

More information

Bus Data Acquisition and Remote Monitoring System Using Gsm & Can

Bus Data Acquisition and Remote Monitoring System Using Gsm & Can IOSR Journal of Electrical and Electronics Engineering (IOSR-JEEE) e-issn: 2278-1676,p-ISSN: 2320-3331, Volume 8, Issue 3 (Nov. - Dec. 2013), PP 88-92 Bus Data Acquisition and Remote Monitoring System

More information

M2M For industrial and automotive

M2M For industrial and automotive M2M For industrial and automotive Content ST at a glance... 4 Where to find us... 5 The value chain... 5 Secure MCU... 6 Focus on ST33 secure microcontrollers... 6 M2M fields of application... 7 What is

More information

Serial Communications

Serial Communications Serial Communications 1 Serial Communication Introduction Serial communication buses Asynchronous and synchronous communication UART block diagram UART clock requirements Programming the UARTs Operation

More information

DALI Control Gear Software Stack

DALI Control Gear Software Stack XC800 Family DALI Control Gear Software Stack Application Note V1.3, 2012-10 Microcontrollers Edition 2012-10 Published by Infineon Technologies AG 81726 Munich, Germany 2012 Infineon Technologies AG All

More information

SEC2410/SEC4410 HS Endpoint Processor with USB 2.0, Smart Card, & FMC for Secure Token & Storage

SEC2410/SEC4410 HS Endpoint Processor with USB 2.0, Smart Card, & FMC for Secure Token & Storage SEC2410/SEC4410 HS Endpoint Processor with USB 2.0, Smart Card, & FMC for Secure Token & Storage PRODUCT FEATURES Data Brief General Description The SMSC SEC2410/SEC4410 are USB 2.0 compliant, hi-speed

More information

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV UNIT I THE 8086 MICROPROCESSOR 1. What is the purpose of segment registers

More information

Figure 1. STM32F429 Discovery board: STM32F429I-DISCO

Figure 1. STM32F429 Discovery board: STM32F429I-DISCO User manual Getting started with the STM32F429 Discovery kit Introduction This document describes the software, firmware and hardware environments and development recommendations required to build an application

More information

HY345 Operating Systems

HY345 Operating Systems HY345 Operating Systems Recitation 2 - Memory Management Solutions Panagiotis Papadopoulos panpap@csd.uoc.gr Problem 7 Consider the following C program: int X[N]; int step = M; //M is some predefined constant

More information

Raghavendra Reddy D 1, G Kumara Swamy 2

Raghavendra Reddy D 1, G Kumara Swamy 2 Car Accident Detection, Communication And Tracking Using ARM7 Controller Raghavendra Reddy D 1, G Kumara Swamy 2 1 PG Scholar, Dept of ECE, Malla Reddy Engineering College (Autonomous), Hyderabad, India.

More information