companies that use Cortex-M3 or Cortex-M4 for SoC designs, others companies that
use only Cortex-M0 or Cortex-M0þ processors.
After a company licenses the Cortex-M processor design, ARM provides the
design source code of the processor in a language called Verilog-HDL (Hardware
Description Language). The design engineers in these companies then add their
own design blocks like peripherals and memories, and use various EDA tools to
convert the whole design from Verilog-HDL and various other forms into a transistor
level chip layout.
ARM also provides other Intellectual Property (IP) products, and some can be used
by these companies in their microcontroller products (see Figure 1.3). For example:
• Design of the cell libraries such as logic gates and memories (ARM Physical IP
products)
• Peripherals and AMBA
Ò
infrastructure components (Cortex-M System Design
Kit (CMSDK), ARM CoreLink
Ô
IP products)
• Additional debug components for linking debug systems in multi-processor
design (ARM CoreSight
Ô
IP products)
For example, ARM provides a product called the Cortex-M System Design Kit
(CMSDK), a design kit for Cortex-M processor with AMBA infrastructure compo-
nents, baseline peripherals, example systems, and example software. This allows
chip designers to start using the Cortex-M processors quickly and reduces the total
chip development effort with reusable IP.
But of course, there is still a lot of work for the microcontroller chip designers to
do. All of these microcontroller companies are working hard to develop better
peripherals, lower power memories, and adding their own secret recipes to try to
make their products better than others. In addition, they also need to develop
example software and support materials to make it easier for the embedded product
designers to use their chips.
On the software side, ARM has various software development platforms such as
the Keil
Ô
Microcontroller Development Kit (MDK-ARM) and ARM Development
Studio 5 (DS-5
Ô
). These software development suites contain compil ers, debuggers,
and instruction set simulators. Designers can also use other third-party software
development tools if they prefer. Since all of the Cortex-M microcontrollers have
the same processor cores, the embedded product designers can use the same devel-
opment suite for a massive range of microcontrollers from different vendors.
1.1.5 Selecting Cortex
Ò
-M3 and Cortex-M4 microcontrollers
On the market there are a wide range of Cortex
Ò
-M microcontroller products. These
range from low-cost, off-the-shelf microcontroller products to high-performance
multi-processor systems on a chip. There are many factors to be considered when
selecting a microcontroller device for a product. For example:
• Peripherals and interface features
• Memory size requirements of the application
6 CHAPTER 1 Introduction to ARM
Ò
Cortex
Ò
-M Processors