\n

FMC

Peripheral Memory Blocks

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 :

address_offset : 0x50 Bytes (0x0)
size : 0x8 byte (0x0)
mem_usage : registers
protection :

Registers

FMC_ISPCTL (ISPCTL)

FMC_ISPTRG (ISPTRG)

FMC_DFBA (DFBA)

FMC_ISPADDR (ISPADDR)

FMC_ISPSTS (ISPSTS)

FMC_CRCSEED (CRCSEED)

FMC_CRCCV (CRCCV)

FMC_ISPDAT (ISPDAT)

FMC_ISPCMD (ISPCMD)


FMC_ISPCTL (ISPCTL)

ISP Control Register
address_offset : 0x0 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0

FMC_ISPCTL FMC_ISPCTL read-write 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ISPEN BS SPUEN APUEN CFGUEN LDUEN ISPFF

ISPEN : ISP Enable Control (Write Protect) Set this bit to enable ISP function.
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 Select (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 in CONFIG0 after any reset is happened except CPU reset (CPURF is 1) or system reset (SYSRF) is happened.
bits : 1 - 1 (1 bit)
access : read-write

Enumeration:

#0 : 0

Boot from APROM

#1 : 1

Boot from LDROM

End of enumeration elements list.

SPUEN : SPROM Update Enable Control (Write Protect)
bits : 2 - 2 (1 bit)
access : read-write

Enumeration:

#0 : 0

SPROM cannot be updated

#1 : 1

SPROM can be updated when the MCU runs in APROM

End of enumeration elements list.

APUEN : APROM Update Enable Control (Write Protect)
bits : 3 - 3 (1 bit)
access : read-write

Enumeration:

#0 : 0

APROM cannot be updated when chip runs in APROM

#1 : 1

APROM can be updated when chip runs in APROM

End of enumeration elements list.

CFGUEN : CONFIG Update Enable Control (Write Protect) Writing this bit to 1 enables software to update CONFIG value by ISP register control procedure regardless of program code is running in APROM or LDROM.
bits : 4 - 4 (1 bit)
access : read-write

Enumeration:

#0 : 0

ISP update User Configuration Disabled

#1 : 1

ISP update User Configuration Enabled

End of enumeration elements list.

LDUEN : LDROM Update Enable Control (Write Protect)
bits : 5 - 5 (1 bit)
access : read-write

Enumeration:

#0 : 0

LDROM cannot be updated

#1 : 1

LDROM can be updated when the MCU runs in APROM

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: (1) APROM writes to itself if APUEN is set to 0. (2) LDROM writes to itself if LDUEN is set to 0. (3) SPROM writes to itself if SPUEN is set to 0. (4) CONFIG is erased/programmed if CFGUEN is set to 0. (5) Page Erase command at LOCK mode with ICE connection (6) Erase or Program command at brown-out detected (7) Destination address is illegal, such as over an available range. (8) Invalid ISP commands Note: Write 1 to clear this bit to 0.
bits : 6 - 6 (1 bit)
access : read-write


FMC_ISPTRG (ISPTRG)

ISP Trigger Register
address_offset : 0x10 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0

FMC_ISPTRG FMC_ISPTRG read-write 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ISPGO

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 operation is progressed

End of enumeration elements list.


FMC_DFBA (DFBA)

Data Flash Start Address
address_offset : 0x14 Bytes (0x0)
size : -1 bit
access : read-only
reset_value : 0x0
reset_Mask : 0x0

FMC_DFBA FMC_DFBA read-only 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DFBA

DFBA : Data Flash Base Address This register indicates Data Flash start address. It is a read only register. The Data Flash start address is defined by user. Since on chip flash erase unit is 512 bytes, it is mandatory to keep bit 8-0 as 0.
bits : 0 - 31 (32 bit)
access : read-only


FMC_ISPADDR (ISPADDR)

ISP Address Register
address_offset : 0x4 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0

FMC_ISPADDR FMC_ISPADDR read-write 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ISPADR

ISPADR : ISP Address The NM1240 series supports word program only. ISPADR[1:0] must be kept 00 for ISP operation.
bits : 0 - 31 (32 bit)
access : read-write


FMC_ISPSTS (ISPSTS)

ISP Status Register
address_offset : 0x40 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0

FMC_ISPSTS FMC_ISPSTS read-write 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ISPBUSY CBS ISPFF VECMAP SCODE

ISPBUSY : ISP Start Trigger (Read Only) Write 1 to start ISP operation and this bit will be cleared to 0 by hardware automatically when ISP operation is finished. Note: This bit is the same with FMC_ISPTRG bit 0.
bits : 0 - 0 (1 bit)
access : read-only

Enumeration:

#0 : 0

ISP operation is finished

#1 : 1

ISP operation is progressed

End of enumeration elements list.

CBS : Config Boot Selection (Read Only) This is a mirror of CBS in CONFIG0.
bits : 1 - 2 (2 bit)
access : read-only

ISPFF : ISP Fail Flag (Write Protect) This bit is set by hardware when a triggered ISP meets any of the following conditions: (1) APROM writes to itself if APUEN is set to 0. (2) LDROM writes to itself if LDUEN is set to 0. (3) SPROM writes to itself if SPUEN is set to 0. (4) CONFIG is erased/programmed if CFGUEN is set to 0. (5) Page Erase command at LOCK mode with ICE connection (6) Erase or Program command at brown-out detected (7) Destination address is illegal, such as over an available range. (8) Invalid ISP commands Note: Write 1 to clear this bit to 0.
bits : 6 - 6 (1 bit)
access : read-write

VECMAP : Vector Page Mapping Address (Read Only) The current flash address space 0x0000_0000~0x0000_01FF is mapping to address {VECMAP[11:0], 9'h000} ~ {VECMAP[11:0], 9'h1FF}.
bits : 9 - 20 (12 bit)
access : read-only

SCODE : Security Code Active Flag This bit field set by hardware when detecting SPROM secured code is active at flash initiation, or software writes 1 to this bit to make secured code active this bit is clear by SPROM page erase operation.
bits : 29 - 31 (3 bit)
access : read-write

Enumeration:

#000 : 0

SPROM0/1/2 secured code are inactive

#001 : 1

SPROM0 secured code is active

#010 : 2

SPROM1 secured code is active

#100 : 4

SPROM2 secured code is active

#111 : 7

SPROM0/1/2 Secured code are active

End of enumeration elements list.


FMC_CRCSEED (CRCSEED)

ISP CRC Seed Register
address_offset : 0x50 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0

FMC_CRCSEED FMC_CRCSEED read-write 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CRCSEED

CRCSEED : CRC Seed Data This register was provided to be the initial value for CRC operation. Write data to this register before ISP CRC operation. Read data from this register after ISP CRC read operation.
bits : 0 - 31 (32 bit)
access : read-write


FMC_CRCCV (CRCCV)

ISP CRC Current Value Register
address_offset : 0x54 Bytes (0x0)
size : -1 bit
access : read-only
reset_value : 0x0
reset_Mask : 0x0

FMC_CRCCV FMC_CRCCV read-only 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CRCCV

CRCCV : CRC Current Value This register provided current value of CRC during calculation.
bits : 0 - 31 (32 bit)
access : read-only


FMC_ISPDAT (ISPDAT)

ISP Data Register
address_offset : 0x8 Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0

FMC_ISPDAT FMC_ISPDAT read-write 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ISPDAT

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


FMC_ISPCMD (ISPCMD)

ISP Command Register
address_offset : 0xC Bytes (0x0)
size : -1 bit
access : read-write
reset_value : 0x0
reset_Mask : 0x0

FMC_ISPCMD FMC_ISPCMD read-write 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Resets to Resets to 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CMD

CMD : ISP Command ISP commands are shown below:
bits : 0 - 5 (6 bit)
access : read-write

Enumeration:

0x00 : 0

Read

0x04 : 4

Read Unique ID

0x0b : 11

Read Company ID (0xDA)

0x0d : 13

Read CRC32 Checksum Result After Calculating

0x21 : 33

Program

0x22 : 34

Page Erase

0x2d : 45

Run Memory CRC32 Checksum Calculation

0x2e : 46

Set Vector Page Re-Map

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 EmbeetleEmbeetle, an IDE designed from scratch for embedded software developers.