ADuCM310 Hardware Reference Manual
UG-549
Rev. C | Page 91 of 192
Command Register
Address: 0x40018008, Reset: 0x00000000, Name: FEECMD
Table 107. Bit Descriptions for FEECMD
Bits
Bit Name
Description
Reset
Access
[31:5]
RESERVED
Returns 0x0. Always returns 0 when read.
0x0
RW
[4:0]
CMD
00000: IDLE. No command executed.
0x0
RW
00001: PAGEERASE. Write the address of the page to be erased to the
FEEADR0 register, then write this code to the FEECMD, and the flash erases
the page. When the erase is complete, the flash reads every location in the
page to verify all words in the page are erased. If there is a read verify error,
it is indicated in the status register. To erase multiple pages, wait until a
previous page erase has completed, check the status, and then issue a
command to start the next page erase. Before entering this command,
0xF123F456 must be written to the FEEKEY register.
00010: SIGN. Use this command to generate a signature for a block of data.
The signature is generated on a page by page basis. To generate a signature,
enter the address of the first page of the block in the FEEADR0 register,
write the address of the last page to the FEEADR1 register, then write this
code to the FEECMD register. When the command is complete, the signature
is available for reading in the sign register. The last 4 bytes of the last page
in a block is reserved for storing the signature. Before entering this command,
0xF123F456 must be written to the FEEKEY register.
00100: WRITE. Use this command to write to flash locations. This command
requires a user key for writing into write protection location and USERFAAKEY
location. No key is required for other flash locations. This command takes
the address and data from the FEEADR and FEEFLDATA key-hole registers.
00101: MASSERASE0. Erase all of Flash 0 user space. To enable this operation,
0xF123F456 must be written to the FEEKEY register (this is to prevent
accidental erases). When the mass erase is complete, the controller reads every
location to verify that all locations are 0xFFFFFFFFFFFFFFFF. If there is a
read verify error, it is indicated in the status register.
00110: MASSERASE1. Erase all of Flash 1 user space. To enable this
operation, 0xF123F456 must be written to the FEEKEY register (this is to
prevent accidental erases). When the mass erase is complete, the controller
reads every location to verify that all locations are 0xFFFFFFFFFFFFFFFF.
If there is a read verify error, it is indicated in the status register.
01000: ABORT. If this command is issued, any command currently in
progress is stopped. The status indicates command completed with an
error status (FEESTA[5:4] = 0x3). Note that this is the only command that
can be issued while another command is already in progress. This command
can also stop a write that may be in progress. If a write or erase is aborted,
the flash timing is violated and it is not possible to determine if the write
or erase completed successfully. To enable this operation, 0xF123F456 must be
written to the FEEKEY register (this is to prevent accidental aborts).
All other combinations are reserved.