CVA BlueWhale CVM014x

From SEGGER Wiki
Jump to: navigation, search

The CVA BlueWhale CVM014x are Cortex-M4 based MCUs which are supported by the J-Link software beginning from V7.92g.

Internal Flash

Supported Regions

The internal flash is divided into program flash and data flash:

  • Program flash storage area starting at 0x00000000 with up to 1MB
  • Data flash storage area starting at 0x10010000 (0x10000000 for CVM0146) with 192KB (256KB for CVM0146)

All integrated flashes have ECC which is why reading erased flash areas is to avoid.
For more information refer to the ECC article.

For now, the J-Link supports the program flash storage and data flash storage.

Internal SRAM

Since CVM014x devices have SRAM with ECC, the J-Link software will initialize 0x6400 bytes of SRAM at address 0x20000000 on connect.
For more information refer to the ECC article.

MCU Security

Info Region

The CVM014x series devices provide three Info Regions which allow some "permanent" configuration as well as readout protection for the device. Such Info Regions are not accessible via the AXBS bus. Each Info Region consists of multiple configuration fields. After a reset, the values within these fields will be written into the corresponding registers. All complementary bytes are automatically set when writing the Info Region.

In case the device reports a secure state (FTFC_FSTAT[SECURE] != 0x2), the J-Link software will popup a request for an unlock via mass-erase on connect. A mass erase will set the device in an unlocked state.

Note:

A mass erase will enable the protection of all flash areas (FTFC_PFPRONT0 = 0xFFFFFFFF, FTFC_PFRONT1 = 0xFFFFFFFFFF, FTFC_DFPRONT = 0x0000FFFF, FTFC_EFPRONT = 0x000100FF).

The mass erase operation will clear all internal flashes including the Info Region. It is suggested to reprogram the Info Region to configure the device security and flash protection properly.

How to program the Info Region

The J-Link software does not support native programming of the Info Region. This can be done using J-Flash Init Steps.
Example J-Flash project to unprotect CVM014x devices: CVM014x_Unprotect.jflash. For utilization, make sure InfoRegion0 is in an erased state.

The provided J-Flash project disables all flash protection locks (FTFC_PFPRONT0 = 0, FTFC_PFRONT1 = 0, FTFC_DFPRONT = 0, FTFC_EFPRONT = 0) in the Info Region.
For programming of the Info Region, the Init Steps can be adapted.

Note:
The Info Region will also be protected after a mass erase (FTFC_EFPRONT[SECPROT] = 1). Therefore, unprotecting the Info Region will only succeed when the device has not been power-cycled after a mass erase.

Reset

CVM014x devices have an integrated bootloader which executes before target program execution. While bootloader execution, PFlash can not be accessed from 0x0 - 0xFFF. A special reset strategy is implemented to handle this.

Note:
In case there is no target application in program flash, the core will halt in the hardfault state.

Evaluation Boards