
Programming FRAM Memory Devices
5.4
Programming FRAM Memory Devices
There are three options for programming an MSP430 FRAM device. All options support in-system
programming.
•
Program by JTAG or the Spy-Bi-Wire interface
•
Program by the BSL
•
Program by a custom solution
5.4.1 Programming FRAM Memory by JTAG or Spy-Bi-Wire
Devices can be programmed by the JTAG port or the Spy-Bi-Wire port. The JTAG interface requires
access to TDI, TDO, TMS, TCK, TEST, ground, and optionally VCC and RST/NMI. Spy-Bi-Wire interface
requires access to TEST, RST/NMI, ground and, optionally, VCC.
5.4.2 Programming FRAM Memory by Bootstrap Loader (BSL)
Each device contains a BSL stored in ROM. The BSL enables users to read or program the FRAM
memory or RAM using a UART serial interface. Access to the FRAM memory by the BSL is protected by a
256-bit user-defined password. For more details, see the
MSP430 Programming Via the Bootstrap Loader
User's Guide
).
5.4.3 Programming FRAM Memory by Custom Solution
The ability of the CPU to write to its own FRAM memory allows for in-system and external custom
programming solutions. The user can choose to provide data to the device through any means available
(for example, UART or SPI). User-developed software can receive the data and program the FRAM
memory. Because this type of solution is developed by the user, it can be completely customized to fit the
application needs for programming or updating the FRAM memory.
5.5
Wait State Control
The system clock for the CPU or DMA may exceed the FRAM access and cycle time requirements. For
these scenarios, a wait state generator mechanism is implemented. There are two modes to control the
wait state generation, automatic and manual. When required, the system clock, CPU, or DMA is held until
the FRAM access and cycle time constraints are met.
5.5.1 Manual Wait State Control
The complete FRAM cycle time is defined by two timings, access time and precharge time, which can be
defined separately. The cycle time is assumed to be the sum of the access and precharge times. If
automatic wait state control is disabled (NAUTO = 0) and if the clock is set higher than the maximum
FRAM access frequency, NACCESS[2:0] and NPRECHG[2:0] must be set properly to permit correct
FRAM accesses.
The NACCESS bits can be used to define an integer number of CPU cycles required to meet the
maximum access time described in the data sheet. The PRECHG bits can be used to define an integer
number of CPU cycles required to meet the maximum precharge time described in the data sheet. When
NACCESS[2:0] = 0h and NPRECHG[2:0] = 0h, no wait states are added and the cycle time is equivalent
to one MCLK cycle. The number of wait states can be computed by adding NACCESS and NPRECHG
settings. For some devices, the values for NACCESS[2:0] and NPRECHG[2:0] are limited to a upper
boundary.
By having independent access and precharge wait state control, the performance of the overall system
can be optimized. The sum of NACCESS and NPRECHG should be set to equal or greater than the
overall FRAM cycle time requirement. .
lists the NACCESS and NPRECHG settings based on
some common frequencies of MCLK.
245
SLAU272C – May 2011 – Revised November 2013
FRAM Controller (FRCTL)
Copyright © 2011–2013, Texas Instruments Incorporated