HardwareBee
https://www.nuvation.com/
  • Find ASIC Vendors
  • Design Services Directory
    • FPGA Design Services
    • Electronic Design Services
    • Embedded Software Companies
    • Add your company
  • Get Price Quotes From Vendors
    • Electronic Design Companies
    • FPGA Design Companies
    • Embedded Software Companies
    • Design & Manufacturing Companies
    • Get IC Device Prices
  • Emerging ICs Directory
    • UWB
      • Spark Microsystems
    • FPGA
      • Colonge Chip
      • Rapid Silicon
    • Radar
      • Acconeer
    • Add your IC
  • Get IC Prices
  • WikiBee
  • Resources
    • FPGA Academy
    • Embedded Academy
    • FPGA vs ASIC Calculator
    • Watt to dBm Converter
    • dBm to Watt Converter
  • Pricing
    • Get Your Company Listed
    • Book a Demo
    • Get a Monthly Lead List
HardwareBee
  • Design Services Directory
    • FPGA Design Services
    • Electronic Design Services
    • Embedded Software Companies
    • Add your company
  • Get Price Quotes From Vendors
    • Electronic Design Companies
    • FPGA Design Companies
    • Embedded Software Companies
    • Design & Manufacturing Companies
    • Get IC Device Prices
  • Emerging ICs Directory
    • UWB
      • Spark Microsystems
    • FPGA
      • Colonge Chip
      • Rapid Silicon
    • Radar
      • Acconeer
    • Add your IC
  • Get IC Prices
  • WikiBee
  • Resources
    • FPGA Academy
    • Embedded Academy
    • FPGA vs ASIC Calculator
    • Watt to dBm Converter
    • dBm to Watt Converter
  • Pricing
    • Get Your Company Listed
    • Book a Demo
    • Get a Monthly Lead List
7468 Views

ARM Microcontroller Overview

30/08/2021, hardwarebee

Get a Price Quote

Microcontrollers are everywhere around us, every TV, car, washing machine — all these devices are using a microcontroller. A microcontroller is a very small computer that has a processor and can be embedded into a larger system.

 

 

Microcontrollers are designed to be used in many applications and have different features and capabilities to allow them fit perfectly into various devices and products.

 

Microcontrollers are integrated into many products because they allow engineers to control the system using software. With such software, engineers can enable many features, add flexibility, and automate various functions.

 

Arm Microcontrollers Architecture and Building Blocks

 

In this section, we will explain the architecture of ARMv6-M that has been developed and used in ARM Cortex -M0 and Cortex-M0+ processors.

 

 

The ARM Cortex-M1 Processor was the first ARM Processor based on ARMv6-M architecture, and it is used mainly for FPGA applications.  In the beginning, ARM produced ARM Cortex-M1, and after that ARM produced ARM Cortex-M0+ microprocessors.

After the success of M1 product, many customers asked ARM to provide more processors based on ARMv6-M architecture. In the following diagram, you can find the evolution of the ARMv6-M architecture.

 

 

ARMv6-M Architecture

 

As you can see in the following figure, ARMv6-M architecture can be divided into:

 

  • Two operation modes (Handler mode, Thread mode)
  • Two states (Thumb state, Debug state)

 

Additionally, there are two access levels:

 

  • Privileged
  • Unprivileged

 

The first one allows access all recourses in the processors, on the other hand, the unprivileged access level doesn’t allow to access some memory regions, this access level is not in all Cortex-M processors as an example Cortex-M0.

 

The Thumb state is activated while running the program, and it can be in the handler mode or the threaded mode based on the processor configuration, in some models, there is no difference at all between the two modes. If it is configured to use thread mode, so it may execute the code in privileged access level or in unprivileged access level.

 

ARM Cortex-M0 uses privileged access level since it doesn’t have unprivileged access level option.

 

The Debug state is activated when the processor is not running or executing programs or instructions. And it is only active if the debugger is connected, and it allows us to change the register values, however, we can access the system memory in both states (thumb or debug).

 

The default state of the processor when it is powered on is the Thumb state and privileged access level Thread mode.

ARMv6-M Building Blocks

 

ARMv6-M Registers

 

ARM processor has many registers for processing the data from the memory.  There are some steps to load the data from the memory to the processor.

 

  • Load the data from the memory to the register bank
  • Put the data inside the processor core
  • Write back to the memory
  • Keep the register bank for the next process

 

This process is called the load-store architecture, it is beneficial especially when using c-code since it is very proper and easy for compilers

 

The Cortex-M0/M0+ has a 16/32-bit register bank, but R13 to R15 is used as a special register. In the following figure, you can find more details about the Register bank and Special Registers.

 

R0 to R1 are used as general-purpose Registers.

 

R13 is the Stack Pointer Register, it is used to refer and use the stack memory, it has two operations

  • PUSH
  • POP

 

R14 is the link Register and is mainly used for keeping and saving the return address of the subroutine.

 

R15 is the program counter and its purpose is to return the instruction address or branching. The PC is readable and writeable Register

 

ARMv6M Memory System

 

Most or even all the ARM Cortex-M processors have 4 gigabytes of memory address space. Any space is divided into some reigns and each one of them has its usage.  The following is the memory map of ARM Cortex-M processors.

 

 

It has a built-in block such as NVIC or the interrupt controller and also some debugging modules.

 

ARMv6M interface I/O Cycle

 

In the following figure, you can see the diagram of a single cycle interface of ARMv6M. It is used to connect a short number of peripherals, and it can be connected with the AHB-lite module.

 

 

Memory Protection Unit – MPU

 

In the ARM Cortex M0+ processor there is a great feature which is MPU or Memory Protection Unit, and it is a unit that can be programmed to be used with different states (privileged/unprivileged). It is very useful in multitasking systems to switch between tasks.

 

ARMv6M Debug System

 

There are many debugging features in ARM Cortex-M processors (M0/M0+) such as register access, Breakpoint Unit which is used for 4 hardware breakpoints support. In the following figure, you can see debugging process using JTAG and other protocols.

 

ARM Microcontroller Applications

 

ARM microcontrollers are dominating many industries such as the industrial, automotive, aerospace, semiconductors and more. Here are a few applications that are based on ARM microcontroller:

 

  • Washing machines
  • Motor control systems
  • Flight control systems
  • Medical MRI machines
  • Mobile Phone

ARM Cortex

 

This type of ARM core is used mainly in microcontrollers, such as ARM Cortex M4.  Technologies like ASSPs, SOC and ASICs also can have ARM Cortex sore inside them. But in most cases, you can find ARM Cortex microprocessor inside microcontrollers.

 

In the last decades, ARM has produced many types of microprocessors. ARM processors are mostly 32 bits, but ARM has been producing 64-bit architectures as well. As an example, the ARM7TDMI processor was very popular and widely used in the market, it has a lot of advantages such as low power consumption, this processor uses Thumb that supports a 16-bit instruction set. It has been deployed and used in many mobile phones and also microcontrollers. After that, ARM has produced ARM9, ARM9E, and ARM11 processor families, these products produce more and higher performance.

 

The following image shows an overview of the ARM microprocessor family since 2003:

 

 

 

Cortex-A Microprocessors

 

This ARM model is designed to produce sufficient performance to handle operating systems like Windows, Linux, iOS, etc. This type of processor has a very long processor pipeline and can execute high clock frequency, for example, more than 1 gigahertz.

 

Advantages

  • This type has MMU or memory management unit for virtual memory support
  • It has also a secure program execution environment or Trust Zone

 

Applications

  • Mobile phones, tablets, TVS and servers

 

Disadvantages

  • ARM Cortex-A processors don’t support real-time applications.

 

Cortex-R Microprocessors

 

This type is designed mainly for real-time applications since it provides high performance and support crunching data. It operates at 500 megahertz to 1 gigahertz.

 

Advantages

  • Efficient in responding to hardware events
  • It contains cash memories and very small, coupled memories are mainly used for ISRs
  • It has an error correction code or ECC which is mainly used for memory support

 

Applications

  • HDDs or hard drives, wireless applications (base band), automotive microcontrollers, and industrial controllers.

 

Disadvantages

  • Complex design architecture and very high-power consumption

 

Cortex-M Microprocessors

 

This type is used mainly for interrupt responses. And that’s why this processor has a coupled built in interrupt controller or Nested Vectored Interrupt Controller “NVIC”.  It has short pipeline processor and that makes it a proper choice as the mainstream microcontroller in the market especially for non-critical systems.

 

Advantages

  • Very easy to use
  • low power consumption

 

Applications

  • Sensors, Mixed Signal ICs
  • ASICS, Wireless Communications systems

 

Disadvantages

  • Not the best choice for very high-performance

 

ARM Microcontroller Availability

 

Arm microcontrollers are very available as standalone IP cores but are used by many 3-partry vendors that used ARM inside their microcontrollers. Since we cannot cover all ARM microcontrollers in the market, the following links are examples of ARM microcontrollers that are developed by different manufactures. You will find the specifications and block diagrams for each product.

 

Analog Devices (general purpose applications)

https://www.analog.com/en/products/processors-microcontrollers/microcontrollers/arm7-core-products.html

 

 

Microchip Technology Inc (general purpose)

https://www.microchip.com/en-us/products/microcontrollers-and-microprocessors/32-bit-mpus/sama5/sama5d2-series

 

 

NXP Semiconductors (Automotive applications)

https://www.nxp.com/products/automotive-products:MC_50802

 

 

Renesas Electronics (lower power wireless transmission)

https://www.renesas.com/us/en/products/microcontrollers-microprocessors/renesas-synergy-platform-mcus

 

 

STMicroelectronics (general purpose)

https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html

 

 

Toshiba America Electronic Components (general purpose)

https://toshiba.semicon-storage.com/ap-en/semiconductor/product/microcontrollers/detail.TMPM3H2FSDUG.html

 

linked in icon
Sign up for HardwareBee
* = required field

Recent Stories

CEO Talk: Maarten Kuper, QBayLogic
CEO Talk: Maarten Kuper, QBayLogic
Low ESR Capacitor: Ultimate Guide
Low ESR Capacitor: Ultimate Guide
The Ultimate Guide to PWM Controller
The Ultimate Guide to PWM Controller
What is a Piezo Driver IC and how to Choose one
What is a Piezo Driver IC and how to Choose one
Introduction to Hall Effect Sensor ICs
Introduction to Hall Effect Sensor ICs
The Ultimate Guide to: Oscillator ICs
The Ultimate Guide to: Oscillator ICs
Low Noise Amplifier: Ultimate Guide
Low Noise Amplifier: Ultimate Guide
ASIC Prototyping
Get 3 Quotes from Electronic Design Companies
Get 3 Quotes from FPGA Design Companies
Get 3 Quotes from Embedded SW Services
Get 3 Quotes from EMS Companies

Find Design Services

Get IC Prices

Get Price Offers From
  • Electronic Design Services
  • FPGA Design Services
  • Embedded Software Companies
  • PCB Layout Services
  • Printed Circuit Board Manufacturers
  • Design & Manufacturing Services
Welcome New Vendors
  • VVDN Technologies
  • Spark Product Innovation
  • QBayLogic
  • Fidus Systems
  • nao.design
Browse Vendor Directories
  • Electronic Design Companies
  • FPGA Design Companies
  • Embedded Software Services
  • Manufacturing Companies
Featured Vendor

PathPartner Technology

Recent Posts
  • CEO Talk: Maarten Kuper, QBayLogic
  • Low ESR Capacitor: Ultimate Guide
  • The Ultimate Guide to PWM Controller
  • What is a Piezo Driver IC and how to Choose one
  • Introduction to Hall Effect Sensor ICs
Most Popular Blog Posts
  • FPGA for AI (Artificial Intelligence): Ultimate Guide
  • PCB Stackup: Ultimate Guide and Examples
  • FPGA Video Processing: Ultimate Guide
  • The Ultimate Guide to Logic Chips
  • Cost of Electronic Manufacturing: A Guide

Never miss an update!

Follow us on LinkedIn

Do you need any price
information?

(Electronic design, FPGA design, Embedded SW services, PCB design, Turnkey)

Yes
No
This page is sponsored by
HardwareBee

Copyright 2017-2024, HardwareBee. All rights reserved.

  • About Us
  • Contact
  • Subscribe
  • News
  • Get Free Support
  • Get listed
  • Send a wiki/article
  • Advertise

Follow Us

Be sure to follow our LinkedIn company page where we share our latest updates LinkedIn
Partner with us Partner with us

Design and Manufacturing Services

  • Engineering Design Services
  • Electronic Design and Manufacturing
  • Electronic Product Development
  • Electronic Product Design
  • Electronic Consulting Services
  • Electronic Engineering Companies
  • Electronic Engineering Services
  • Electronic Product Design and Development
  • Electronics Design Services
  • Electronics Design Company
  • Electronic Design Consultants
  • Electronic Design Company
  • FPGA Design Company
  • FPGA Consultant
  • FPGA Design Services UK
  • Electronics Manufacturing services
  • Electronics Manufacturing Companies
  • Electronic Contract Manufacturing Companies
  • Electronic Manufacturing Services Companies
  • EMS Companies Directory
  • Electronic Design Services
  • FPGA Design Services
  • Embedded Software Companies
  • PCB Layout Services
  • Printed Circuit Board Manufacturers
  • Design and Manufacturing Services
X

Don’t miss anything, follow us on LinkedIn

https://www.linkedin.com/company/hardwarebee/

We are using cookies to give you the best experience on our website.

You can find out more about which cookies we are using or switch them off in .

Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

Strictly Necessary Cookies

Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.

If you disable this cookie, we will not be able to save your preferences. This means that every time you visit this website you will need to enable or disable cookies again.

3rd Party Cookies

This website uses Google Analytics to collect anonymous information such as the number of visitors to the site, and the most popular pages.

Keeping this cookie enabled helps us to improve our website.

Please enable Strictly Necessary Cookies first so that we can save your preferences!

Additional Cookies

This website uses the following additional cookies:

(List the cookies that you are using on the website here.)

Please enable Strictly Necessary Cookies first so that we can save your preferences!