0x0F.FFFC
0x0F.FFF8
0x0F.FFF4
0x0F.FFF0
0x08.3FFC
0x08.3FF8
0x08.3FF4
0x08.3FF0
0x08.401C
0x08.4018
0x08.4014
0x08.4010
0x08.001C
0x08.0018
0x08.0014
0x08.0010
8 KB Sector 0 Bank 3
8 KB Sector31-1 Bank 3
0x0F.FFEC
0x0F.FFE8
0x0F.FFE4
0x0F.FFE0
0x08.3FEC
0x08.3FE8
0x08.3FE4
0x08.3FE0
0x08.400C
0x08.4008
0x08.4004
0x08.4000
0x08.000C
0x08.0008
0x08.0004
0x08.0000
8 KB Sector 0 Bank 2
8 KB Sector31-1 Bank 2
0x07.FFFC
0x07.FFF8
0x07.FFF4
0x07.FFF0
0x00.3FFC
0x00.3FF8
0x00.3FF4
0x00.3FF0
0x00.401C
0x00.4018
0x00.4014
0x00.4010
0x00.001C
0x00.0018
0x00.0014
0x00.0010
8 KB Sector 0 Bank 1
8 KB Sector31-1 Bank 1
0x07.FFEC
0x07.FFE8
0x07.FFE4
0x07.FFE0
0x00.3FEC
0x00.3FE8
0x00.3FE4
0x00.3FE0
0x00.400C
0x00.4008
0x00.4004
0x00.4000
0x00.000C
0x00.0008
0x00.0004
0x00.0000
8 KB Sector 0 Bank 0
8 KB Sector31-1 Bank 0
256 KB Bank 1: 128-bit output
256 KB Bank 0: 128-bit output
256 KB Bank 2: 128-bit output
256 KB Bank 3: 128-bit output
16 KB
16 KB
512 KB
High Region
512 KB
Low Region
1 MB Flash
Functional Description
535
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Internal Memory
7.2.2.2
Peripheral Driver Library
A table at the beginning of the ROM points to the entry points for the APIs that are provided in the ROM.
Accessing the API through these tables provides scalability; while the API locations can change in future
versions of the ROM, the API tables do not. The tables are split into two levels; the main table contains
one pointer per peripheral which points to a secondary table that contains one pointer per API that is
associated with that peripheral. The main table is located at 0x0100.0010, after the Cortex-M4F vector
table in the ROM.
Additional APIs are available for graphics and USB functions but are not preloaded into ROM. The
graphics library provides a set of graphics primitives and a widget set for creating graphical user interfaces
on MSP432E4 microcontroller-based boards that have a graphical display. The USB library is a set of data
types and functions for creating USB Device, Host, or On-The-Go (OTG) applications on MSP432E4
microcontroller-based boards.
7.2.2.3
Advanced Encryption Standard (AES) Cryptography
AES is a strong encryption method with reasonable performance and size. AES is fast in both hardware
and software, is fairly easy to implement, and requires little memory. AES is ideal for applications that can
use prearranged keys, such as setup during manufacturing or configuration.
7.2.2.4
Cyclic Redundancy Check (CRC) Error Detection
The CRC technique can be used to validate correct receipt of messages (nothing lost or modified in
transit), to validate data after decompression, to validate that flash memory contents have not been
changed, and for other cases where the data needs to be validated. A CRC is preferred over a simple
checksum (for example, XOR all bits) because it catches changes more readily. When device initialization
is executing from ROM, a CRC-32 validates the data being transferred into registers and memory. The
CRC ensures no instructions were skipped in a sequence or no data was corrupted during transfer.
7.2.3 Flash Memory
The flash memory is configured in groups of four banks of 16K × 128 bits (4 × 256KB total) that are two-
way interleaved (see
).
Figure 7-3. Flash Memory Configuration