C28x Core
C28x-Bank
C28x System Clock
C28-FMC
Pump
M3-Bank
PUMP SEMAPHORE
Cortex-M3
M3 System Clock
M3-FMC
Flash Controller Memory Module
537
SPRUHE8E – October 2012 – Revised November 2019
Copyright © 2012–2019, Texas Instruments Incorporated
Internal Memory
Table 5-90. Programmable OTP Locations in M3 OTP (continued)
M3 OTP location
Field name
Field description
Size (bytes)
0x68101C
MAIN_OSC_CLK_FREQ
Input MAINOSC frequency connected to the
device. M-Boot ROM reads this location to
know the MAINOSC frequency to configure
the management clock divider for 2.5 MHz
for EMAC boot mode.
4
5.3.5 Flash Module Controller (FMC)
There is a dedicated flash module controller in both the master subsystem (M3-FMC) and the control
subsystem (C28x-FMC). The Cortex M3 core in the master subsystem interfaces with the M3 flash module
controller (M3-FMC), which in turn, interfaces with the M3 flash bank and shared pump to perform
erase/program operations as well as to read data/execute code from the M3 flash bank.
Figure 5-81. FMC Interface with Core, Bank and Pump
The C28x core in the control subsystem interfaces with the C28x flash module controller (C28x-FMC)
which in turn, interfaces with the C28x flash bank and shared pump to perform erase/program operations
as well as to read data/execute code from the C28x flash bank. Control signals to the flash pump will be
controlled by either C28x-FMC or M3-FMC, depending on who gains the flash pump semaphore.
There is a state machine in both M3-FMC and C28x-FMC which generates the erase/program sequences
in hardware. This simplifies the Flash API software (refer to the
C2000 F021 Application Programming
Interface (API) Reference Guide
,
, for details on Flash API) which configures control registers in
FMC to perform flash erase and program operations.
The following sections (
,
,
, and
) will
describe FMC in detail.
5.3.6 Flash and OTP Automatic Power-Down Modes
The flash bank and pump consume a significant amount of power when active. The flash module provides
a mechanism to automatically power-down flash banks after they have not been accessed for some user-
programmable time. Special timers automatically sequence the power-up and power-down of the M3 flash
bank and C28x flash bank independently of each other. The shared charge pump module has its own
independent power up/down timers as well.