ARM CoreLink SDK-100 System Design Kit

Similar documents
ARM CoreLink DPE-400 Data Parity Extension for NIC-400

ARMv8-M processor power management

ARM TrustZone True Random Number Generator

Design Simulation Model ARM. User Guide. for SystemC. Copyright 2016 ARM. All rights reserved. ARM ARM DUI 1031B (ID111116)

Arm Design Simulation Model

ARM Cortex -M3 DesignStart Eval

SoC Designer. Fast Models System Creator Cycle Models Reference. Version 9.2. Copyright 2017 ARM Limited. All rights reserved.

ARM AMBA. Designer ADR-400. User Guide. Revision: r3p7

Fault Handling and Detection

Fault Handling and Detection

Arm CoreLink SSE-200 Subsystem for Embedded

ARM v8-m Processor Debug

Component Architecture Debug Interface

Cortex -A53 MPCore Processor Cryptography Extension ARM. Technical Reference Manual. Revision: r0p4

PrimeCell TrustZone Protection Controller (BP147) Cycle Model

ARM DS-5. Eclipse for DS-5 User Guide. Version 5. Copyright ARM. All rights reserved. ARM DUI0480Q

ARM DS-5. Eclipse for DS-5 User Guide. Version 5. Copyright ARM Limited or its affiliates. All rights reserved.

TrustZone technology for ARM v8-m Architecture

Compute Subsystem SCP ARM. Message Interface Protocols. Version: 1.2

ARM Cortex -A5 Floating-Point Unit

Compute Subsystem SCP ARM. Message Interface Protocols. Version: 1.0. Copyright 2015 ARM. All rights reserved. ARM DUI 0922B (ID050115)

PrimeCell AHB SRAM/NOR Memory Controller (PL241)

Arm CoreLink MMU-600 System Memory Management Unit

Designer ADR-400 AMBA. User Guide. Revision: r3p2. Copyright ARM. All rights reserved. ARM DUI 0333M (ID011213)

Single Master DMA Controller (PL081) PrimeCell. Technical Reference Manual. Revision: r1p2

ETM -A5. CoreSight. Technical Reference Manual. Revision: r0p2. Copyright 2009, 2010 ARM. All rights reserved. ARM DDI 0435C (ID072915)

ARM DynamIQ Shared Unit

IoT Subsystem for Cortex -M ARM. Technical Reference Manual. Revision: r0p0. Copyright All rights reserved. ARM DDI 0551A (ID120415)

Software Delegated Exception Interface (SDEI)

ARM. System Memory Management Unit Architecture Specification. 64KB Translation Granule Supplement

GPU Shader Library. Mali. User Guide. Version: 1.0. Copyright 2009 ARM. All rights reserved. ARM DUI 0510A (ID101409)

ETM -R4. CoreSight. Technical Reference Manual. Revision: r2p1. Copyright ARM. All rights reserved. ARM DDI 0367D (ID072915)

PrimeCell AHB SDR and SRAM/NOR Memory Controller (PL243)

AHB Trace Macrocell (HTM) AMBA. Technical Reference Manual. Revision: r0p4. Copyright ARM Limited. All rights reserved.

GPU Offline Shader Compiler. Mali. User Guide. Version: 2.2. Copyright 2009 ARM. All rights reserved. ARM DUI 0513A (ID101409)

CoreLink MMU-500 System Memory Management Unit ARM. Technical Reference Manual. Revision: r2p2

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC

Cortex -A53 MPCore Processor Advanced SIMD and Floating-point Extension ARM. Technical Reference Manual. Revision: r0p4

ARM CoreLink CCI-500 Cache Coherent Interconnect

Cortex -M System Design Kit. Arm. Technical Reference Manual. Revision: r1p1

ARM. CoreLink. NIC-400 Network Interconnect. Technical Reference Manual. Revision: r1p0

TrustZone Address Space Controller TZC-380. CoreLink. Technical Reference Manual. Revision: r0p1

OpenGL ES 2.0 SDK for Android. Mali. User Guide. Version: Copyright 2011 ARM. All rights reserved. ARM DUI 0587A (ID120411)

System Design Kit. Cortex-M. Technical Reference Manual. Revision: r0p0. Copyright 2011 ARM. All rights reserved. ARM DDI 0479B (ID070811)

STM32SnippetsL0. STM32L0xx Snippets firmware package. Features. Description

CoreLink MMU-400 System Memory Management Unit ARM. Technical Reference Manual. Revision: r0p1

MOVE. Coprocessor. Technical Reference Manual. Copyright 2001, 2002, ARM Limited. All rights reserved. ARM DDI 0235C

Arm Cortex -M33 Devices

Offline Shader Compiler. Mali. User Guide. Version: 3.0. Copyright ARM. All rights reserved. ARM DUI 0513B (ID032912)

NIC-400 Network Interconnect. CoreLink. Technical Reference Manual. Revision: r0p0. Copyright 2012 ARM. All rights reserved. ARM DDI 0475A (ID081712)

Cortex -R5. Technical Reference Manual. Revision: r1p2. Copyright ARM. All rights reserved. ARM DDI 0460D (ID092411)

Arm Compiler. armar User Guide. Version 6.9. Copyright Arm Limited (or its affiliates). All rights reserved.

Network Interconnect NIC-301. CoreLink. Technical Reference Manual. Revision: r2p3

Cortex -A9 MPCore. Technical Reference Manual. Revision: r2p2. Copyright ARM. All rights reserved. ARM DDI 0407F (ID050110)

Peripheral Test Block

DMA Controller (PL330) PrimeCell. Technical Reference Manual. Revision: r0p0. Copyright 2007 ARM Limited. All rights reserved.

Copyright 2016 Xilinx

Media Processing Engine. Cortex -A7 NEON. Technical Reference Manual. Revision: r0p5

ARM. Streamline. Performance Analyzer. Using ARM Streamline. Copyright 2010 ARM Limited. All rights reserved. ARM DUI 0482A (ID100210)

AMBA Keyboard/Mouse PS/2 Interface

AN Migrating to the LPC1700 series

Arm AMBA Distributed Translation Interface (DTI) Protocol Specification

RM3 - Cortex-M4 / Cortex-M4F implementation

ARM. Cortex -A15 MPCore. Processor. Technical Reference Manual. Revision: r4p0. Copyright ARM. All rights reserved. ARM DDI 0438I (ID062913)

CoreTile Express for Cortex-A5

AXI Protocol AMBA. Specification. v1.0. Copyright 2003, 2004 ARM Limited. All rights reserved. ARM IHI 0022B

PrimeCell Infrastructure AMBA 3 AXI File Reader Master (BP144)

StrongARM** SA-110/21285 Evaluation Board

Product Technical Brief S3C2412 Rev 2.2, Apr. 2006

Mobile & IoT Market Trends and Memory Requirements

The Next Steps in the Evolution of Embedded Processors

ARM RealView Versatile/PB926EJ-S Board Support Package for Microsoft Windows CE.NET

AMBA 3 AXI. Protocol Checker. User Guide. r0p1. Copyright 2005, 2006, 2009 ARM. All rights reserved. ARM DUI 0305C (ID071309)

ARM Compiler. armar User Guide. Version Copyright ARM. All rights reserved. ARM DUI0476L

ARM PrimeCell SDRAM Controller (PL170)

UM User Manual for LPC54018 IoT Module. Rev November Document information

Integrator /CP Board Support Package for Microsoft Windows CE.NET

Beyond TrustZone Security Enclaves Reed Hinkel Senior Manager Embedded Security Market Develop

CoreLink GIC-500 Generic Interrupt Controller ARM. Technical Reference Manual. Revision: r0p0

Product Technical Brief S3C2413 Rev 2.2, Apr. 2006

Interconnects, Memory, GPIO

Mobile & IoT Market Trends and Memory Requirements

ARM Reliability, Availability, and Serviceability (RAS) Specification ARMv8, for the ARMv8-A architecture profile Beta

Cortex -A15 MPCore. Technical Reference Manual. Revision: r3p0. Copyright ARM. All rights reserved. ARM DDI 0438E (ID040512)

AMBA Remap and Pause. Technical Reference Manual. Revision: r0p0. Copyright 1997 ARM Limited. All rights reserved. ARM DDI 0048AC

Kinetis KE1xF512 MCUs

Designing with ALTERA SoC Hardware

Mobile & IoT Market Trends and Memory Requirements

The Scalable Vector Extension (SVE), for ARMv8-A

L210 Cache Controller

STSW-BLUENRG1-DK. BlueNRG-1, BlueNRG-2 DK SW package

AND9407/D Low Power Techniques of LC Series for Audio Applications

ARM DS-5. Getting Started Guide. Version Copyright ARM Limited or its affiliates. All rights reserved.

ARM Architecture Reference Manual Supplement Statistical Profiling Extension, for ARMv8-A

SAM4 Reset Controller (RSTC)

Cortex -M7 Processor

M3H Group(2) Application Note Asynchronous Serial Communication Circuit (UART-C)

UM LPC54018 IoT module. Document information. LPC54018, OM40007, Amazon FreeRTOS, AWS, GT1216 LPC54018 IoT module user manual

Introduction to ARM LPC2148 Microcontroller

Terms of Use. Changes. General Use.

Transcription:

ARM CoreLink SDK-100 System Design Kit Revision: r0p0 Technical Overview Copyright 2017 ARM Limited or its affiliates. All rights reserved. ARM 101062_0000_00_en

ARM CoreLink SDK-100 System Design Kit ARM CoreLink SDK-100 System Design Kit Technical Overview Copyright 2017 ARM Limited or its affiliates. All rights reserved. Release Information Document History Issue Date Confidentiality Change 0000-00 16 June 2017 First release for r0p0 Proprietary Notice This document is protected by copyright and other related rights and the practice or implementation of the information contained in this document may be protected by one or more patents or pending patent applications. No part of this document may be reproduced in any form by any means without the express prior written permission of ARM. No license, express or implied, by estoppel or otherwise to any intellectual property rights is granted by this document unless specifically stated. Your access to the information in this document is conditional upon your acceptance that you will not use or permit others to use the information for the purposes of determining whether implementations infringe any third party patents. THIS DOCUMENT IS PROVIDED AS IS. ARM PROVIDES NO REPRESENTATIONS AND NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY, SATISFACTORY QUALITY, NON-INFRINGEMENT OR FITNESS FOR A PARTICULAR PURPOSE WITH RESPECT TO THE DOCUMENT. For the avoidance of doubt, ARM makes no representation with respect to, and has undertaken no analysis to identify or understand the scope and content of, third party patents, copyrights, trade secrets, or other rights. This document may include technical inaccuracies or typographical errors. TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL ARM BE LIABLE FOR ANY DAMAGES, INCLUDING WITHOUT LIMITATION ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, PUNITIVE, OR CONSEQUENTIAL DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF ANY USE OF THIS DOCUMENT, EVEN IF ARM HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. This document consists solely of commercial items. You shall be responsible for ensuring that any use, duplication or disclosure of this document complies fully with any relevant export laws and regulations to assure that this document or any portion thereof is not exported, directly or indirectly, in violation of such export laws. Use of the word partner in reference to ARM s customers is not intended to create or refer to any partnership relationship with any other company. ARM may make changes to this document at any time and without notice. If any of the provisions contained in these terms conflict with any of the provisions of any signed written agreement covering this document with ARM, then the signed written agreement prevails over and supersedes the conflicting provisions of these terms. This document may be translated into other languages for convenience, and you agree that if there is any conflict between the English version of this document and any translation, the terms of the English version of the Agreement shall prevail. Words and logos marked with or are registered trademarks or trademarks of ARM Limited or its affiliates in the EU and/or elsewhere. All rights reserved. Other brands and names mentioned in this document may be the trademarks of their respective owners. Please follow ARM s trademark usage guidelines at http://www.arm.com/about/trademark-usage-guidelines.php Copyright 2017, ARM Limited or its affiliates. All rights reserved. ARM Limited. Company 02557590 registered in England. 110 Fulbourn Road, Cambridge, England CB1 9NJ. LES-PRE-20349 Confidentiality Status This document is. The right to use, copy and disclose this document may be subject to license restrictions in accordance with the terms of the agreement entered into by ARM and the party that ARM delivered this document to. Unrestricted Access is an ARM internal classification. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2

ARM CoreLink SDK-100 System Design Kit Product Status The information in this document is Final, that is for a developed product. Web Address http://www.arm.com ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 3

Contents ARM CoreLink SDK-100 System Design Kit Technical Overview Preface About this book...... 6 Feedback... 9 Chapter 1 Chapter 2 Appendix A SDK-100 overview 1.1 About the SDK-100... 1-11 1.2 Product deliverables... 1-12 1.3 Compliance... 1-13 1.4 Documentation... 1-14 1.5 Product revisions...... 1-15 Functional overview 2.1 Supported processors...... 2-17 2.2 CoreLink SSE-050 Subsystem... 2-18 2.3 Cortex-M System Design Kit...... 2-20 2.4 Cortex-M0 and M0+ System Design Kit... 2-22 2.5 CoreLink CG092 AHB Flash Cache... 2-24 2.6 Real Time Clock... 2-25 2.7 True Random Number Generator... 2-26 Revisions A.1 Revisions...... Appx-A-28 ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 4

Preface This preface introduces the ARM CoreLink SDK-100 System Design Kit Technical Overview. It contains the following: About this book on page 6. Feedback on page 9. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 5

Preface About this book About this book Product revision status Intended audience Using this book This book is for the ARM CoreLink SDK-100 System Design Kit (SDK-100). It describes the hardware and software for the system. The rmpn identifier indicates the revision status of the product described in this book, for example, r1p2, where: rm Identifies the major revision of the product, for example, r1. pn Identifies the minor revision or modification status of the product, for example, p2. This book is written for hardware or software engineers who want an overview of the functionality in the CoreLink SDK-100 System Design Kit. This book is organized into the following chapters: Chapter 1 SDK-100 overview This chapter introduces the ARM CoreLink SDK-100 System Design Kit (SDK-100). Chapter 2 Functional overview This chapter describes the IP products included in the SDK-100 licence. Appendix A Revisions This appendix describes the technical changes between released issues of this book. Glossary The ARM Glossary is a list of terms used in ARM documentation, together with definitions for those terms. The ARM Glossary does not contain terms that are industry standard unless the ARM meaning differs from the generally accepted meaning. See the ARM Glossary for more information. Typographic conventions italic Introduces special terminology, denotes cross-references, and citations. bold Highlights interface elements, such as menu names. Denotes signal names. Also used for terms in descriptive lists, where appropriate. monospace Denotes text that you can enter at the keyboard, such as commands, file and program names, and source code. monospace Denotes a permitted abbreviation for a command or option. You can enter the underlined text instead of the full command or option name. monospace italic Denotes arguments to monospace text where the argument is to be replaced by a specific value. monospace bold Denotes language keywords when used outside example code. <and> Encloses replaceable terms for assembler syntax where they appear in code or code fragments. For example: MRC p15, 0, <Rd>, <CRn>, <CRm>, <Opcode_2> ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 6

Additional reading SMALL CAPITALS Used in body text for a few terms that have specific technical meanings, that are defined in the ARM Glossary. For example, IMPLEMENTATION DEFINED, IMPLEMENTATION SPECIFIC, UNKNOWN, and UNPREDICTABLE. Timing diagrams The following figure explains the components used in timing diagrams. Variations, when they occur, have clear labels. You must not assume any timing information that is not explicit in the diagrams. Shaded bus and signal areas are undefined, so the bus or signal can assume any value within the shaded area at that time. The actual level is unimportant and does not affect normal operation. Signals The signal conventions are: Clock HIGH to LOW Transient HIGH/LOW to HIGH Bus stable Bus to high impedance Bus change High impedance to stable bus Figure 1 Key to timing diagram conventions Signal level The level of an asserted signal depends on whether the signal is active-high or active-low. Asserted means: HIGH for active-high signals. LOW for active-low signals. Lowercase n At the start or end of a signal name denotes an active-low signal. This section lists publications by ARM and by third parties. See Infocenter, for access to ARM documentation. Preface About this book ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 7

ARM publications This book contains information that is specific to this product. See the following documents for other relevant information: ARM Cortex -M3 Processor Technical Reference Manual (ARM 100165). ARM Cortex -M System Design Kit Technical Reference Manual (ARM DDI 0479). ARM CoreLink CG092 AHB Flash Cache Technical Reference Manual (ARM DDI 0569). ARM PrimeCell Real Time Clock (PL031) Technical Reference Manual (ARM DDI 0224). ARM TrustZone True Random Number Generator Technical Reference Manual (ARM 100976). ARM CoreLink SDK-100 Release Note (ARM EPM 132828). ARM AMBA APB Protocol Specification (ARM IHI 0024). The following confidential books are only available to licensees or require registration with ARM: ARM CoreLink SSE-050 Subsystem Configuration and Integration Manual (ARM 100919). ARM Cortex -M0 and M0+ System Design Kit Example System Guide (ARM DUI 0559). ARM Cortex -M System Design Kit Example System Guide (ARM DUI 0594). Note Preface About this book See www.arm.com/cmsis for embedded software development resources including the Cortex Microcontroller Software Interface Standard (CMSIS). See ARM mbed platform, https://mbed.org/ for information on the mbed tools including mbed OS and online tools. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 8

Preface Feedback Feedback Feedback on this product Feedback on content If you have any comments or suggestions about this product, contact your supplier and give: The product name. The product revision or version. An explanation with as much information as you can provide. Include symptoms and diagnostic procedures if appropriate. If you have comments on content then send an e-mail to errata@arm.com. Give: The title ARM CoreLink SDK-100 System Design Kit Technical Overview. The number ARM 101062_0000_00_en. If applicable, the page number(s) to which your comments refer. A concise explanation of your comments. ARM also welcomes general suggestions for additions and improvements. Note ARM tests the PDF only in Adobe Acrobat and Acrobat Reader, and cannot guarantee the quality of the represented document when used with any other PDF reader. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 9

Chapter 1 SDK-100 overview This chapter introduces the ARM CoreLink SDK-100 System Design Kit (SDK-100). It contains the following sections: 1.1 About the SDK-100 on page 1-11. 1.2 Product deliverables on page 1-12. 1.3 Compliance on page 1-13. 1.4 Documentation on page 1-14. 1.5 Product revisions on page 1-15. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 1-10

1 SDK-100 overview 1.1 About the SDK-100 1.1 About the SDK-100 The SDK-100 provides a subsystem architecture, a reference platform, and a collection of IP products that can be used to create an IoT endpoint system. To provide this functionality, the SDK-100 product grants licensees to the following subsystem and component IP products: CoreLink SSE-050 Subsystem The SSE-050 provides a starting point for a product in the Internet of Things (IoT) and embedded market segments. The SSE-050 provides a process and technology agnostic reference pre-integrated, validated, hardware and software subsystem for ARM Cortex-M3 processors that can be extended to provide an IoT endpoint system. Cortex-M System Design Kit The Cortex-M System Design Kit provides an example system for the ARM Cortex-M processors and reusable AMBA AHB-Lite and APB components for low-power designs. Cortex-M0 and M0+ System Design Kit The Cortex-M0 and Cortex-M0+ System Design Kit provides an example system-level design for the ARM Cortex-M0 and Cortex-M0+ processors and reusable AMBA components for system-level development. CoreLink CG092 AHB Flash Cache The CG092 is an instruction cache designed to be instantiated between the bus interconnect and the embedded Flash (eflash) controller. PrimeCell Real Time Clock The Real Time Clock (RTC) is an AMBA slave module that connects to the Advanced Peripheral Bus (APB). The RTC can be used to provide a basic alarm function or long time base counter. This is achieved by generating an interrupt signal after counting for a programmed number of cycles of a real-time clock input. Counting in one second intervals is achieved by use of a 1Hz clock input to the RTC. TrustZone True Random Number Generator The True Random Number Generator (TRNG) provides an assured level of entropy (as analyzed by Entropy Estimation logic). The output from the TRNG can be used to seed deterministic random bit generators. 1.1.1 Using the SDK IP products The SDK-100 licensed IP can be used in the following ways: Use the CoreLink SSE-050 Subsystem as a verified foundation for your own IoT solution based around the Cortex-M3. Use the Cortex-M System Design Kit (CMSDK) and the example system as a starting point for your own IoT solution based around the Cortex-M0, Cortex-M0+, Cortex-M3, or Cortex-M4 processors. Use the Cortex-M0 and Cortex-M0+ System Design Kit and the example system as a foundation for your own IoT solution based around the Cortex-M0 or Cortex-M0+ processors. Use the system IP provided with the SSE-050, CMSDK, CG092, and your own IP to create a custom solution. You can use the example systems and software libraries as a reference for your system solution. Note The SSE-050 and CMSDK build scripts include interconnections to a processor, but a processor must be separately licensed and installed. See the ARM CoreLink SDK-100 Release Notes for details on how to download and install the SDK-100 components you require. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 1-11

1 SDK-100 overview 1.2 Product deliverables 1.2 Product deliverables The CoreLink SDK-100 product bundle does not have hardware or software deliverables. Its subsystems and IP component products include these deliverables. The hardware deliverables must be downloaded separately for the following IP products that are included in the SDK-100 licence: CoreLink SSE-050 Subsystem (CG063). Cortex-M System Design Kit (BP210). Cortex-M0 and M0+ System Design Kit (BP200). CoreLink CG092 AHB Flash Cache (CG092). PrimeCell Real Time Clock (PL031). TrustZone True Random Number Generator (CC003). See the ARM CoreLink SDK-100 Release Note for the component versions. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 1-12

1 SDK-100 overview 1.3 Compliance 1.3 Compliance See the Technical Reference Manuals for more details of the product s compliance to the following specifications: ARM architecture. CoreSight Debug. Interrupt controller architecture. Advanced Microcontroller Bus Architecture. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 1-13

1 SDK-100 overview 1.4 Documentation 1.4 Documentation The following documents are supplied with the CoreLink SDK-100 product bundle: Technical Overview The Technical Overview (TO) describes the functionality of the SDK-100 System Design Kit. Release Note The Release Note describes download and installation instructions for the IP products included in the SDK-100. Note The separately downloaded product bundles also contain documentation such as Technical Reference Manuals or Configuration and Integration Manuals. See the individual product bundles for details of what documentation is provided for that IP bundle. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 1-14

1 SDK-100 overview 1.5 Product revisions 1.5 Product revisions This section describes the differences in functionality between product revisions. r0p0 First release. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 1-15

Chapter 2 Functional overview This chapter describes the IP products included in the SDK-100 licence. It contains the following sections: 2.1 Supported processors on page 2-17. 2.2 CoreLink SSE-050 Subsystem on page 2-18. 2.3 Cortex-M System Design Kit on page 2-20. 2.4 Cortex-M0 and M0+ System Design Kit on page 2-22. 2.5 CoreLink CG092 AHB Flash Cache on page 2-24. 2.6 Real Time Clock on page 2-25. 2.7 True Random Number Generator on page 2-26. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-16

2 Functional overview 2.1 Supported processors 2.1 Supported processors The following table lists the processors supported by the products in the CoreLink SDK-100 bundle. Table 2-1 Supported processors CoreLink SDK-100 products Processor CM0SDK CMSDK AHB Flash Cache SSE-050 Subsystem RTC TRNG Cortex-M0 Yes - Yes - Yes Yes Cortex-M0+ Yes - Yes - Yes Yes Cortex-M23 - Yes Yes - Yes Yes Cortex-M3 - Yes Yes Yes Yes Yes Cortex-M4 - Yes Yes - Yes Yes ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-17

2 Functional overview 2.2 CoreLink SSE-050 Subsystem 2.2 CoreLink SSE-050 Subsystem The SSE-050 Subsystem provides a starting point for a product in the Internet of Things (IoT) and embedded market segments. The SSE-050 Subsystem delivers a process and technology agnostic reference pre-integrated, validated, hardware and software subsystem that can be extended to provide an IoT endpoint system. The solution consists of hardware, software, and software tools to enable the rapid development of IoT System on Chip (SoC) solutions. The SSE-050 Subsystem contains the following components: A Cortex-M3 processor: Bit-banding enables using standard instructions to read or modify of individual bits. The default implementation does not include bit banding. Eight MPU regions (optional). NVIC providing deterministic, high-performance interrupt handling with a configurable number of interrupts. Wakeup Interrupt Controller (WIC) with configurable number of WIC lines (optional). This is a latch-based WIC implementation, and not the standard Cortex-M3 WIC. See the ARM CoreLink SSE-050 Subsystem Configuration and Integration Manual for more information. Little-endian memory addressing only (for compatibility with the eflash cache). For more information, see the ARM Cortex -M3 Processor Technical Reference Manual. The Cortex-M3 processor has a Processor Integration Layer (PIL) to simplify integration of the SSE-050 Subsystem into a multiprocessor system with a SoC-level CoreSight subsystem. Configurable Debug and Trace as either: Standalone system with a Trace Port Interface Unit (TPIU) and an SWJ-DP. Full CoreSight integration over a DAP and the ATB buses. Multilayer AMBA AHB-Lite interconnect: Low-latency interconnect bus matrix. Two AHB-Lite initiator expansion ports for external AHB masters. Two AHB-Lite target expansion ports for external AHB slaves. 11 APB4 target expansion ports (each with 4KB address space) to connect APB peripherals. Memory system, consisting of: Placeholder for eflash controller and optional cache. Static memory (configurable as one to four 32KB banks) is provided in the example integration layer. Two APB timers: Interrupt generation when the counter reaches 0. Each timer has an TIMERnEXTIN signal that can be used as an enable or external clock. Configurable privileged access mode. The following figure shows the SSE-050 Subsystem, with other IP, in an example design. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-18

2 Functional overview 2.2 CoreLink SSE-050 Subsystem Configurable clock generator PLL 32kHz crystal 16MHz crystal Start up Reset logic DC/DC converter and regulators Debug Cortex-M3 processor SSE-050 Power control APB peripherals APB bridge DMA HW acceleration Radio SRAM interface Multi-layer AHB interconnect SRAM interface SRAM interface SRAM interface Crypto Peripherals ADC I 2 C SPI Flash cache Flash controller Flash SRAM SRAM SRAM SRAM Cordio radio TRNG RTC A/D D/A GPIO SSE-050 ARM IP Other ARM IP Non-ARM IP Figure 2-1 SSE-050 Subsystem example design 2.2.1 SSE-050 software Application processor firmware, which is available separately, consists of the code required to boot the subsystem up to the point where the OS execution starts. Contact your ARM representative for details on the software and its location. The firmware contains: Cortex Microcontroller Software Interface Standard (CMSIS) compliant drivers. Flash programming support code, which is separate from mbed OS. Separately ported mbed OS that includes uvisor ported onto the SSE-050 system. mbed OS driver support and code for example IO peripherals. Code required to load mbed from boot media and set up the initial security environment. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-19

2 Functional overview 2.3 Cortex-M System Design Kit 2.3 Cortex-M System Design Kit 2.3.1 Example system The Cortex-M System Design Kit helps you design products using ARM Cortex-M processors. The design kit contains the following: A selection of AHB-Lite and APB components, including several peripherals such as GPIO, timers, watchdog, and UART. These components are used in the CMSDK example system, but you can also use the components to create your own custom system. An example system for supported processor products. Example synthesis scripts for the example system. Example compilation and simulation scripts for the Verilog environment that supports ModelSim, VCS, and NC Verilog. Example code for software drivers. Example test code to demonstrate various operations of the systems. Example compilation scripts and example software project files that support: ARM Development Studio 5 (DS-5). ARM RealView Development Suite. Keil Microcontroller Development Kit (MDK). GNU tools for ARM embedded processors (ARM GCC). Documentation including: ARM Cortex -M System Design Kit Technical Reference Manual. ARM Cortex -M0 and M0+ System Design Kit Example System Guide. ARM Cortex -M System Design Kit Example System Guide. For details of the CMSDK components, see the ARM Cortex -M System Design Kit Technical Reference Manual. This section contains the following subsections: 2.3.1 Example system on page 2-20. 2.3.2 Components on page 2-21. 2.3.3 Cortex-M Software Design Kit software on page 2-21. The following figure shows the block diagram of the CMSDK example system: ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-20

2 Functional overview 2.3 Cortex-M System Design Kit SWO JTAG or serial wire Trace Cortex-M3 or Cortex-M4 Integration Interrupts Sleep I-Code D-Code System PL230 udma Clock generator AHB bus matrix Common APB sub-system Clock control DMA option AHB address decoder Parameterizable 10 to 1 AHB slave multiplexer AHB address decoder Parameterizable 10 to 1 AHB slave multiplexer 16 to 1 multiplexer AHB to APB bridge Watch dog Simple Timer x 2 Dual Timer System Control ROM Boot ROM Default slave Default slave RAM Low latency GPIO Simple UART x 2 Simple UART External Text output Figure 2-2 CMSDK example system 2.3.2 Components The CMSDK example system consists of the following components and models: Basic AHB-Lite components. APB components. Advanced AHB-Lite components. Behavioral memory models. Verification components. 2.3.3 Cortex-M Software Design Kit software The Cortex-M System Design Kit includes the following software: CMSIS-compliant drivers. Device-specific header files, startup code, and example drivers including retargetting code for the printf() and puts() functions. Platform hardware adaptation layer code that is required in addition to the open-source code and generic Cortex-M processor header files. mbed OS driver support. Additional Cortex-M code is available on the mbed website. Shell scripts to sync, build, and run the software. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-21

2 Functional overview 2.4 Cortex-M0 and M0+ System Design Kit 2.4 Cortex-M0 and M0+ System Design Kit The Cortex-M0 and Cortex-M0+ System Design Kit provides: An example system-level design for the ARM Cortex-M0 and Cortex-M0+ processors. Reusable AMBA components for system-level development from the CMSDK. For information on the AMBA components that the design kit uses, see the ARM Cortex -M System Design Kit Technical Reference Manual. This section contains the following subsections: 2.4.1 About the example system on page 2-22. 2.4.2 Cortex-M0 and Cortex-M0+ software on page 2-23. 2.4.1 About the example system The ARM Cortex-M0 and M0+ System Design Kit Example System Guide describes an example system for the Cortex-M0 and Cortex-M0+ processors. The following figure shows the block diagram for the example system. cmsdk_debug_tester Tristate buffers cmsdk_uart_capture cortex_m0_pmu or cm0p_ik_pmu cmsdk_mcu_clkctrl CORTEXM0INTEGRATION or CM0PMTBINTEGRATION Processor and debug interface Debug commands and status Crystal oscillator cmsdk_ clkreset XTAL2 XTAL1 NRST cmsdk_ahb_rom optional boot loader AHB Infrastructure including several AHB components Optional PL230_udma Micro DMA controller System controller cmsdk_apb_ subsystem cmsdk_ahb_ gpio Port 0 Port 1 UART 2 TXD cmsdk_ahb_rom program memory cmsdk_ahb_ram data memory SysTick reference clock System ROM table cmsdk_iop_ gpio* cms0p_ik_sram cmsdk_mcu_system cmsdk_mcu microcontroller *For use with Cortex-M0+ only cmsdk_mcu_pin_mux I/O pin multiplexor and tristate buffers The example system is a simple microcontroller design that contains the following: A single Cortex-M0 or Cortex-M0+ processor. Internal program memory. Figure 2-3 CMSDK example system ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-22

2 Functional overview 2.4 Cortex-M0 and M0+ System Design Kit SRAM data memory. Boot loader. The following peripherals: Several timers. General Purpose Input Output (GPIO). Universal Asynchronous Receiver Transmitter (UART). Watchdog timer. Debug connection. 2.4.2 Cortex-M0 and Cortex-M0+ software The Cortex-M0 and M0+ System Design Kit products include the following software: CMSIS-compliant drivers. Device-specific header files, startup code, and example drivers including retargetting code for the printf() and puts() functions. Platform hardware adaptation layer code that is required in addition to the open-source code and generic Cortex-M processor header files. mbed OS driver support. Additional Cortex-M0 and Cortex-M0+ code is available on the mbed website. Shell scripts to sync, build, and run the software. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-23

2 Functional overview 2.5 CoreLink CG092 AHB Flash Cache 2.5 CoreLink CG092 AHB Flash Cache The CG092 AHB Flash Cache is an instruction cache that is instantiated between the bus interconnect and the eflash controller. The CG092 is a simple cache for on-chip embedded Flash (eflash). The CG092 design is optimized for fetching Cortex-M3 or Cortex-M4 instructions directly from an eflash. The main benefit of the CG092 is improved power efficiency, but there are also improvements in code fetching performance. Note The AHB Flash Cache can also be used with external eflash if the Flash controller is modified accordingly. The following figure shows the connections in a typical Flash subsystem. Example Flash block Bus interconnect 32-bit APB4 slave 32-bit AHB-Lite slave To system logic RAMPWRUACK RAMPWRUPREQ HRESETn HCLK PCLKG CACHEMISS CACHEHIT IRQ Power control Reset and clocks Statistics Interrupt CG092 CLD IF TAG IF CLD IF TAG IF Cache SRAM Tag SRAM Cache SRAM Tag SRAM Way 0 Way 1 (optional) 128-bit AHB-Lite master Flash controller eflash Figure 2-4 Example eflash implementation ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-24

2 Functional overview 2.6 Real Time Clock 2.6 Real Time Clock The Real Time Clock (RTC) is an AMBA slave module that connects to the Advanced Peripheral Bus (APB). The following figure shows the RTC block diagram. Write PCLK CLK1HZ PCLK Read Register block Control block AMBA APB AMBA APB interface Control and status Read data Update data Match value npor Update block Sync block Count value Counter block RTCINTR nrtcrst Figure 2-5 RTC block diagram The RTC can be used to provide a basic alarm function or long time base counter. This is achieved by generating an interrupt signal after counting for a programmed number of cycles of a real-time clock input. Counting in one second intervals requires a 1Hz clock input to the RTC. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-25

2 Functional overview 2.7 True Random Number Generator 2.7 True Random Number Generator The True Random Number Generator (TRNG) provides an assured level of entropy (as analyzed by Entropy Estimation logic). The output from the TRNG can be used to seed deterministic random bit generators. The following figure shows the TRNG. Host System bus APB Clock APB slave TRNG Reset Interrupt Scan mode RNG hardware module Random source Figure 2-6 TRNG hardware overview ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. 2-26

Appendix A Revisions This appendix describes the technical changes between released issues of this book. It contains the following section: A.1 Revisions on page Appx-A-28. ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. Appx-A-27

A Revisions A.1 Revisions A.1 Revisions This appendix describes technical changes between released issues of this book. Table A-1 Issue 0000-00 Change Location Affects First release - - ARM 101062_0000_00_en Copyright 2017 ARM Limited or its affiliates. All rights reserved. Appx-A-28