\n
address_offset : 0x0 Bytes (0x0)
size : 0x18 byte (0x0)
mem_usage : registers
protection :
address_offset : 0x40 Bytes (0x0)
size : 0x4 byte (0x0)
mem_usage : registers
protection :
ISP Control Register
address_offset : 0x0 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ISPEN : ISP Enable Bit (Write Protect)
Note: This bit is write-protected. Refer to the SYS_REGLCTL register.
bits : 0 - 0 (1 bit)
access : read-write
Enumeration:
#0 : 0
ISP function Disabled
#1 : 1
ISP function Enabled
End of enumeration elements list.
BS : Boot Selection (Write Protect)
Set/clear this bit to select next booting from LDROM/APROM, respectively. This bit also functions as chip booting status flag, which can be used to check where chip booted from. This bit is initiated with the inversed value of CBS[1] (CONFIG0[7]) after any reset is happened except CPU reset (RSTS_CPU is 1) or system reset (RSTS_SYS) is happened
Note: This bit is write-protected. Refer to the SYS_REGLCTL register.
bits : 1 - 1 (1 bit)
access : read-write
Enumeration:
#0 : 0
Booting from APROM
#1 : 1
Booting from LDROM
End of enumeration elements list.
APUEN : APROM Update Enable Bit (Write Protect)
Note: This bit is write-protected. Refer to the SYS_REGLCTL register.
bits : 3 - 3 (1 bit)
access : read-write
Enumeration:
#0 : 0
APROM cannot be updated when the chip runs in APROM
#1 : 1
APROM can be updated when the chip runs in APROM
End of enumeration elements list.
CFGUEN : CONFIG Update Enable Bit (Write Protect)
Note: This bit is write-protected. Refer to the SYS_REGLCTL register.
bits : 4 - 4 (1 bit)
access : read-write
Enumeration:
#0 : 0
CONFIG cannot be updated
#1 : 1
CONFIG can be updated
End of enumeration elements list.
LDUEN : LDROM Update Enable Bit (Write Protect)
LDROM update enable bit.
Note: This bit is write-protected. Refer to the SYS_REGLCTL register.
bits : 5 - 5 (1 bit)
access : read-write
Enumeration:
#0 : 0
LDROM cannot be updated
#1 : 1
LDROM can be updated
End of enumeration elements list.
ISPFF : ISP Fail Flag (Write Protect)
This bit is set by hardware when a triggered ISP meets any of the following conditions:
APROM writes to itself if APUEN is set to 0.
LDROM writes to itself if LDUEN is set to 0.
CONFIG is erased/programmed if CFGUEN is set to 0.
Page Erase command at LOCK mode with ICE connection.
Erase or Program command at brown-out detected.
Destination address is illegal, such as over an available range.
Invalid ISP commands.
This bit needs to be cleared by writing 1 to it.
Note: This bit is write-protected. Refer to the SYS_REGLCTL register.
bits : 6 - 6 (1 bit)
access : read-write
ISP Trigger Control Register
address_offset : 0x10 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ISPGO : ISP Start Trigger (Write Protect)
Write 1 to start ISP operation and this bit will be cleared to 0 by hardware automatically when ISP operation is finished.
bits : 0 - 0 (1 bit)
access : read-write
Enumeration:
#0 : 0
ISP operation is finished
#1 : 1
ISP is progressed.Note: This bit is write-protected. Refer to the SYS_REGLCTL register
End of enumeration elements list.
Data Flash Base Address
address_offset : 0x14 Bytes (0x0)
size : -1 bit
access : read-only
reset_value : 0x0
reset_Mask : 0x0
DFBA : Data Flash Base Address
This register indicates Data Flash start address. It is a read only register.
The Data Flash is shared with APROM. the content of this register is loaded from CONFIG1.
bits : 0 - 31 (32 bit)
access : read-only
ISP Address Register
address_offset : 0x4 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ISPADDR : ISP Address
The M0A21/M0A23 is equipped with embedded Flash. ISPADDR[1:0] must be kept 00 for ISP 32-bit operation. For CRC32 Checksum Calculation command, this field is the Flash starting address for checksum calculation, 512 bytes alignment is necessary for checksum calculation.
16/32 Kbytes Flash:
ISPADR[8:0] must be kept all 0 for Vector Page Remap Command.
bits : 0 - 31 (32 bit)
access : read-write
ISP Status Register
address_offset : 0x40 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ISPBUSY : ISP BUSY (Read Only)
bits : 0 - 0 (1 bit)
access : read-only
Enumeration:
#0 : 0
ISP operation is finished
#1 : 1
ISP operation is busy
End of enumeration elements list.
CBS : Boot Selection of CONFIG (Read Only)
This bit is initiated with the CBS (CONFIG0[7:6]) after any reset is happened except CPU reset (RSTS_CPU is 1) or system reset (RSTS_SYS) is happened.
bits : 1 - 2 (2 bit)
access : read-only
Enumeration:
#00 : 0
LDROM with IAP mode
#01 : 1
LDROM without IAP mode
#10 : 2
APROM with IAP mode
#11 : 3
APROM without IAP mode
End of enumeration elements list.
ISPFF : ISP Fail Flag (Write Protect)
This bit is the mirror of ISPFF (FMC_ISPCTL[6]), it needs to be cleared by writing 1 to FMC_ISPCTL[6] or FMC_ISPSTS[6]. This bit is set by hardware when a triggered ISP meets any of the following conditions:
APROM writes to itself if APUEN is set to 0.
LDROM writes to itself if LDUEN is set to 0.
CONFIG is erased/programmed if CFGUEN is set to 0.
Page Erase command at LOCK mode with ICE connection
Erase or Program command at brown-out detected
Destination address is illegal, such as over an available range.
Invalid ISP commands
bits : 6 - 6 (1 bit)
access : read-write
VECMAP : Vector Page Mapping Address (Read Only)
All access to 0x0000_0000~0x0000_01FF is remapped to the Flash memory or SRAM address {VECMAP[20:0], 9'h000} ~ {VECMAP[20:0], 9'h1FF}.
VECMAP [18:12] should be 0.
bits : 9 - 29 (21 bit)
access : read-only
ISP Data Register
address_offset : 0x8 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ISPDAT : ISP Data
Write data to this register before ISP program operation.
Read data from this register after ISP read operation.
bits : 0 - 31 (32 bit)
access : read-write
ISP Command Register
address_offset : 0xC Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CMD : ISP CMD
ISP command table is shown below:
The other commands are invalid.
bits : 0 - 6 (7 bit)
access : read-write
Enumeration:
0x00 : 0
Flash 32-bit Read
0x04 : 4
Read Unique ID
0x0b : 11
Read Company ID
0x0d : 13
Read CRC32 Checksum
0x21 : 33
Flash 32-bit Program
0x22 : 34
Flash Page Erase
0x2d : 45
Run CRC32 Checksum Calculation
0x2e : 46
Vector Remap
End of enumeration elements list.
Is something missing? Is something wrong? can you help correct it ? Please contact us at info@chipselect.org !
This website is sponsored by Embeetle, an IDE designed from scratch for embedded software developers.