Description
SAM L10 and SAM L11 have different Non-Volatile Memory (NVM) rows, which contain device configuration data that can be used by the system.
Four NVM Rows are accessible through the NVMCTRL Peripheral:
- NVM User Row (UROW)
- Reset configuration for Brown-Out-Detector (BOD) and Watchdog Timer (WDT)
- Security attribution (SAM L11 only)
- Boot Configuration Row (BOCOR)
- Contains Boot ROM configuration
- NVM Software Calibration Area
- Contains calibration data for ADC and DFLLULP
- Determined during factory test (Read only)
- NVM Temperature Log Row
- Contains calibration data for the internal temperature sensor
- Determined during factory test (Read only)
Refer to the product data sheet to have the UROW Bitfields Definition for SAM L10 and SAM L11.
NVM Rows Functional Description
The Boot ROM reads the different NVM rows during its execution. The relevant fuses must be set appropriately, by any configuration tools supporting the device, in order to operate correctly. The Device Programming tool within Atmel Studio 7 IDE offers a graphical user interface, easing the UROW modification.
Modifying the NVM Rows with Atmel Studio 7 Device Programming
Device Programming is accessible by clicking on Tools > Device Programming.
The connection with Atmel Studio can be established either by using an Atmel-ICE probe or by using the SAM L10 Xplained Pro or SAM L11 XPlained Pro embedded debugger.
By choosing the Fuses tab from within the Device Programming dialog window, you have access to the NVM Rows configuration.
For SAM L11 devices, memories and peripherals security attributions are done by reading the values of the different fuses from the NVM User (UROW) and Boot Configuration (BOCOR) rows. The Boot ROM is responsible for setting these attributions on the different concerned memory and peripheral controllers.
Note: When writing to the NVM Row, the new values are not loaded by the other peripherals on the device until a device reset occurs.
References: