About this book

This book is for the ARM® TrustZone® TRNG True Random Number Generator.

Product revision status

The rmpn identifier indicates the revision status of the product described in this book, for example, r1p2, where:

rmIdentifies the major revision of the product, for example, r1.
pnIdentifies the minor revision or modification status of the product, for example, p2.

Intended audience

This book is written for system designers, system integrators, and programmers who are designing or programming a System-on-Chip (SoC) that uses the TRNG.

Using this book

This book is organized into the following chapters:

Chapter 1 Introduction

This chapter provides an introduction to the ARM® TrustZone® TRNG True Random Number Generator.

Chapter 2 Functional description

This chapter describes the functions of the ARM® TrustZone® TRNG True Random Number Generator.

Chapter 3 Programmers model

This chapter describes the TRNG register addresses and functionality for integration.

Chapter 4 Signal descriptions

This appendix describes the top-level signals of the TrustZone® TRNG True Random Number Generator.

Appendix A Revisions

Read this for a description of the technical changes between released issues of this book.


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
Introduces special terminology, denotes cross-references, and citations.
Highlights interface elements, such as menu names. Denotes signal names. Also used for terms in descriptive lists, where appropriate.
Denotes text that you can enter at the keyboard, such as commands, file and program names, and source code.
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.
Encloses replaceable terms for assembler syntax where they appear in code or code fragments. For example:
MRC p15, 0, <Rd>, <CRn>, <CRm>, <Opcode_2>
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.

Figure 1 Key to timing diagram conventions
To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


The signal conventions are:

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.

Additional reading

This section lists publications by ARM and by third parties.

See Infocenter, for access to ARM documentation.

ARM publications

This book contains information that is specific to this product. See the following documents for other relevant information:

  • ARM® AMBA® Specification (Rev 2.0) (ARM IHI 0011).

The following confidential books are only available to licensees:

  • ARM® TrustZone® TRNG True Random Number Generator Configuration and Integration Manual (ARM 100977).
Other publications

The following relevant documents are published by third parties:

  • Bundesamt für Sicherheit in der Informationstechnik (BSI), Functionality Classes and Evaluation Methodology for True Random Number Generators, AIS-31, Version 3.1, September 2001.
  • Federal Information Processing Standard, Security Requirements for Cryptographic Modules, FIPS 140-2, May 2001. See National Institute of Standards and Technology website.
  • NIST, Recommendation for the Entropy Sources Used for Random Bit Generation, SP 800-90B, January 2016.
Non-ConfidentialPDF file icon PDF versionARM 100976_0000_00_en
Copyright © 2017 ARM Limited or its affiliates. All rights reserved.