48 KByte Flash Module (S12FTMRG48K1V1)
MC9S12G Family Reference Manual Rev.1.27 
NXP Semiconductors 903
26.4.6.6 Program Once Command
The Program Once command restricts programming to a reserved 64 byte field (8 phrases) in the 
nonvolatile information register located in P-Flash. The Program Once reserved field can be read using the 
Read Once command as described in Section 26.4.6.4. The Program Once command must only be issued 
once since the nonvolatile information register in P-Flash cannot be erased. The Program Once command 
must not be executed from the Flash block containing the Program Once reserved field to avoid code 
runaway.
Upon clearing CCIF to launch the Program Once command, the Memory Controller first verifies that the 
selected phrase is erased. If erased, then the selected phrase will be programmed and then verified with 
read back. The CCIF flag will remain clear, setting only after the Program Once operation has completed.
The reserved nonvolatile information register accessed by the Program Once command cannot be erased 
and any attempt to program one of these phrases a second time will not be allowed. Valid phrase index 
values for the Program Once command range from 0x0000 to 0x0007. During execution of the Program 
Once command, any attempt to read addresses within P-Flash will return invalid data.
Table 26-41. Program P-Flash Command Error Handling
Register Error Bit Error Condition
FSTAT
ACCERR
Set if CCOBIX[2:0] != 101 at command launch
Set if command not available in current mode (see Table 26-27)
Set if an invalid global address [17:0] is supplied see Table 26-3)
Set if a misaligned phrase address is supplied (global address [2:0] != 000)
FPVIOL Set if the global address [17:0] points to a protected area
MGSTAT1 Set if any errors have been encountered during the verify operation
MGSTAT0
Set if any non-correctable errors have been encountered during the verify 
operation
Table 26-42. Program Once Command FCCOB Requirements
CCOBIX[2:0] FCCOB Parameters
000 0x07 Not Required
001 Program Once phrase index (0x0000 - 0x0007)
010 Program Once word 0 value
011 Program Once word 1 value
100 Program Once word 2 value
101 Program Once word 3 value