The CMSDK package
The CMSDK is available in two editions: the Cortex-M0 System Design Kit, which supports the ARM Cortex-M0 processor, and the Cortex-M System Design Kit, which supports the ARM Cortex-M0, Cortex-M3 and Cortex-M4 processors.
Both editions of CMSDK feature various essential AHB and APB infrastructure components including:
- Peripheral bridge with APB3 (AMBA 3) and APB4 (AMBA 4) support
- Time out monitors to prevent peripheral from locking up a system
- Bit band wrapper for Cortex-M0 to allow part of the memory map to become bit addressable, a feature previously only available to Cortex-M3 or Cortex-M4 processors.
The Cortex-M System Design Kit also includes the AHB Bus Matrix, a configurable component which allows complex AHB interconnect systems to be built.
The Example Systems
The example systems are designed to work like basic microcontrollers. For example, the block diagram for the Cortex-M0 example system is shown in figure 3.
It is straightforward to extend the system and plug in other peripheral designs. For designers new to AMBA design, the example AHB slave and example APB slaves are a good starting point.
As well as RTL design, the CMSDK also includes example software and simulation scripts to allow system level simulation to start straight away. The example software files include:
- CMSIS compliant device driver examples.
- Example demonstration/verification software and project files for various tool chains.
The example code demonstrates how to use various features in the Cortex-M processors like sleep modes, interrupts, as well as demonstrate how to use the peripheral set available in the system.
A number of verification components are also included in the design kit to assist verification of the design. These include various AHB and APB protocol checkers, which can identify bus protocol issues during simulations, and a File Reader Bus Master (FRBM) component. The FRBM is a bus functional model which takes a bus stimulus file and generates bus transfers during simulation. This includes many bus transfer sequences that cannot, or are very difficult to generate in a normal processor-based system which can be very useful for testing of peripherals. The FRBM is available in a 32-bit version and a 64-bit version.
Besides providing a starting point for designing new SoC designs, the CMSDK can also be useful in various other scenarios including peripheral design, software driver development and evaluation/benchmarking.
In summary, the CMSDK provides inexperienced ARM Cortex-M developers with everything they need to get developing next generation SoCs based on the industry’s leading MCU architecture.
All that and with two wishes left to spare. Tell us what you would use those wishes for, you never know they might come true!
In real life there are no wands or magic dust, just a bunch ARM engineers who are committed to innovation and development of effective solutions for the IT industry.
Joseph Yiu is a technical specialist within ARM. Over the ten years he has worked at ARM Joseph has worked on a number of processor design projects including the ARM Cortex-M3 and Cortex-M0 processors, as well as development of a wide range of products in the ARM IP (Intellectual Property) portfolio including the AMBA Design Kits, PrimeCellsTM and CoreSightTM components. Joseph is specialized in microcontroller system level design and has extensive knowledge in related areas including software development for the ARM Cortex-M microcontrollers, embedded applications, FPGA development and System-on-Chip design technologies.
0 Comments On This Entry
Please log in above to add a comment or register for an account
Peggie: University of Oxford, UK - Shell Eco-Marathon Finals in Rotterdam
on May 22 2013 02:31 PM
Cortex-M0+ a year after: smaller, thriftier and smarter!
on May 20 2013 02:59 PM
The Continuing Hazards of Dhrystone
on May 16 2013 10:24 AM
Make versus buy: it's about risk management!
on May 15 2013 02:29 PM
Accelerated Internet of Things (IoT) development with ARM mbed and Xively
on May 14 2013 12:21 PM