Difference between revisions of "Silicon Labs EFR32xG23"

From SEGGER Wiki
Jump to: navigation, search
(Created page with "__TOC__ The '''EFR32xG23''' device family from Silicon Labs are Cortex-M33 based microcontrollers. ==On-Chip Memory Regions== The EFR32xG23 series devices have an internal f...")
 
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
  +
The Silicon Labs '''EFR32xG23''' device family are Cortex-M33 based microcontrollers.
  +
These MCUs are part of the [[Silicon Labs EFx32 Series 2 | EFx32 Series 2]] devices.
  +
 
__TOC__
 
__TOC__
   
  +
== EFx32 Series 2 specifics ==
The '''EFR32xG23''' device family from Silicon Labs are Cortex-M33 based microcontrollers.
 
  +
Please refer to the [[Silicon Labs EFx32 Series 2]] article.
   
  +
==Flash Banks==
==On-Chip Memory Regions==
 
  +
===Internal Flash===
The EFR32xG23 series devices have an internal flash of up to 512 KiB size and a user data page (UDP) of 1 KiB. J-Link supports flash programming for both the internal flash and UDP.
 
{| class="wikitable"
+
{| class="seggertable"
 
|-
 
|-
  +
! Flash Bank || Base address !! Size || J-Link Support
! Device Family !! Device name !! Internal flash size (KiB) !! Internal flash memory region !! User data page size (KiB) !! User data page memory region
 
 
|-
 
|-
  +
| Internal flash || 0x0800_0000 || Up to 512 KB || style="text-align:center;"| {{YES}}
| Flex Gecko || EFR32FG23AxxF256 || 256 || 0x08000000 - 0x0803FFFF || 1 || 0x0FE00000 - 0x0FE003FF
 
 
|-
 
|-
  +
| User Data || 0x0FE0_0000 || 1 KB || style="text-align:center;"| {{YES}}
| Flex Gecko || EFR32FG23AxxF512 || 512 || 0x08000000 - 0x0807FFFF || 1 || 0x0FE00000 - 0x0FE003FF
 
|-
 
| Flex Gecko || EFR32FG23BxxF128 || 128 || 0x08000000 - 0x0801FFFF || 1 || 0x0FE00000 - 0x0FE003FF
 
|-
 
| Flex Gecko || EFR32FG23BxxF512 || 512 || 0x08000000 - 0x0807FFFF || 1 || 0x0FE00000 - 0x0FE003FF
 
|-
 
| Zen Gecko || EFR32ZG23AxxF512 || 512 || 0x08000000 - 0x0807FFFF || 1 || 0x0FE00000 - 0x0FE003FF
 
|-
 
| Zen Gecko || EFR32ZG23BxxF512 || 512 || 0x08000000 - 0x0807FFFF || 1 || 0x0FE00000 - 0x0FE003FF
 
 
|}
 
|}
  +
  +
==Watchdog Handling==
  +
The device has a watchdog, which is fed during flash programming, if enabled.
  +
  +
== Device Specific Handling ==
  +
===Reset===
  +
*The devices uses normal Cortex-M reset, no special handling necessary, like described [[J-Link_Reset_Strategies#Type_0:_Normal | here]].
  +
  +
=== Security ===
  +
See: [[Silicon Labs EFx32 Series 2#Debug lock | Silicon Labs EFx32 Series 2]] article.
  +
  +
=== Secure boot ===
  +
See: [[Silicon Labs EFx32 Series 2#Secure boot specific | Silicon Labs EFx32 Series 2]] article.
   
 
==Evaluation Boards==
 
==Evaluation Boards==
*Silicon Labs BRD4210A: https://wiki.segger.com/Silicon_Labs_BRD4210A
+
*[[Silicon Labs BRD4210A]]
  +
 
==Example Application==
 
==Example Application==
*Silicon Labs BRD4210A: https://wiki.segger.com/Silicon_Labs_BRD4210A#Example_Project
+
*[[Silicon Labs BRD4210A#Example_Project|Silicon Labs BRD4210A]]
  +
  +
==Tracing on EFR32ZG23xxx series ==
  +
This section describes how to get started with trace on the SiLabs EFR32ZG23xxx MCUs.
  +
This section assumes that there is already a basic knowledge about trace in general (what is trace, what different implementations of trace are there, etc.).
  +
If this is not the case, we recommend to read [[UM08001_J-Link_/_J-Trace_User_Guide#Trace | Trace]] chapter in the J-Link User Manual (UM08001).
  +
  +
'''Note:'''
  +
* The sample projects come with a pre-configured project file for Ozone that runs out-of-the box.
  +
* The following sample project is designed to be used with J-Trace PRO for streaming trace, J-Link Plus for buffer tracing (TMC/ETB trace) and Ozone to demonstrate streaming trace.
  +
* In order to rebuild the sample project, [https://www.segger.com/embedded-studio.html SEGGER Embedded Studio] can be used.
  +
* The example is shipped with a compiled .JLinkScriptfile, should you need the original source, please get in touch with SEGGER directly via our support system: https://www.segger.com/ticket/.
  +
** To create your own .JLinkScriptfile you can use the following guide as reference: [[How_to_configure_JLinkScript_files_to_enable_tracing]]
  +
  +
  +
=== Tracing on SiLabs EFR32ZG23xxx ===
  +
==== Minimum requirements ====
  +
In order to use trace on the ST EFR32ZG23xxx MCU devices, the following minimum requirements have to be met:
  +
* J-Link software version V7.88h or later
  +
* Ozone V3.30 or later (if streaming trace and / or the sample project from below shall be used)
  +
* J-Trace PRO for Cortex-M HW version V1.0 or later for streaming trace
  +
  +
To rebuild the project our IDE Embedded Studio can be used. The recommended version to rebuild the projects is V6.30. But the examples are all prebuild and work out-of-the box with Ozone, so rebuilding is not necessary.
  +
  +
==== Streaming trace ====
  +
The project has been tested with the minimum requirements mentioned above and a ''SiLabs BRD4204C Rev 00 Board'' on a ''PCB4001 Rev 03 motherboard''.
  +
  +
'''Example project:''' [[Media:SiliconLabs_EFR32ZG23_TracePins.zip | SiliconLabs_EFR32ZG23_TracePins.zip]]
  +
  +
==== Reference trace signal quality ====
  +
The following pictures show oscilloscope measurements of trace signals output by the "Tested Hardware" using the example project.
  +
All measurements have been performed using a Agilent InfiniiVision DSO7034B 350 MHz 2GSa/s oscilloscope and 1156A 1.5 GHz Active Probes.
  +
If your trace signals look similar on your trace hardware, chances are good that tracing will work out-of-the-box using the example project.
  +
More information about correct trace timing can be found at the following [https://www.segger.com/products/debug-probes/j-trace/technology/setting-up-trace/ website].
  +
  +
===== Trace clock signal quality =====
  +
The trace clock signal quality shows multiple trace clock cycles on the tested hardware as reference.
  +
[[File:SiLabs_EFR32ZG23_Multiple_TCLK.png|none|thumb|Trace clock signal quality]]
  +
===== Rise time =====
  +
The rise time of a signal shows the time needed for a signal to rise from logical 0 to logical 1.
  +
For this the values at 10% and 90% of the expected voltage level get used as markers. The following picture shows such a measurement for the trace clock signal.
  +
[[File:SiLabs_EFR32ZG23_RiseTime_TCLK.png|none|thumb|TCLK rise time]]
  +
  +
===== Setup time =====
  +
The setup time shows the relative setup time between a trace data signal and trace clock.
  +
The measurement markers are set at 50% of the expected voltage level respectively.
  +
The following picture shows such a measurement for the trace data signal 0 relative to the trace clock signal.
  +
[[File:SiLabs_EFR32ZG23_SetupTime_TD0.png|none|thumb|TD0 setup time]]

Latest revision as of 15:31, 10 October 2023

The Silicon Labs EFR32xG23 device family are Cortex-M33 based microcontrollers. These MCUs are part of the EFx32 Series 2 devices.

EFx32 Series 2 specifics

Please refer to the Silicon Labs EFx32 Series 2 article.

Flash Banks

Internal Flash

Flash Bank Base address Size J-Link Support
Internal flash 0x0800_0000 Up to 512 KB YES.png
User Data 0x0FE0_0000 1 KB YES.png

Watchdog Handling

The device has a watchdog, which is fed during flash programming, if enabled.

Device Specific Handling

Reset

  • The devices uses normal Cortex-M reset, no special handling necessary, like described here.

Security

See: Silicon Labs EFx32 Series 2 article.

Secure boot

See: Silicon Labs EFx32 Series 2 article.

Evaluation Boards

Example Application

Tracing on EFR32ZG23xxx series

This section describes how to get started with trace on the SiLabs EFR32ZG23xxx MCUs. This section assumes that there is already a basic knowledge about trace in general (what is trace, what different implementations of trace are there, etc.). If this is not the case, we recommend to read Trace chapter in the J-Link User Manual (UM08001).

Note:

  • The sample projects come with a pre-configured project file for Ozone that runs out-of-the box.
  • The following sample project is designed to be used with J-Trace PRO for streaming trace, J-Link Plus for buffer tracing (TMC/ETB trace) and Ozone to demonstrate streaming trace.
  • In order to rebuild the sample project, SEGGER Embedded Studio can be used.
  • The example is shipped with a compiled .JLinkScriptfile, should you need the original source, please get in touch with SEGGER directly via our support system: https://www.segger.com/ticket/.


Tracing on SiLabs EFR32ZG23xxx

Minimum requirements

In order to use trace on the ST EFR32ZG23xxx MCU devices, the following minimum requirements have to be met:

  • J-Link software version V7.88h or later
  • Ozone V3.30 or later (if streaming trace and / or the sample project from below shall be used)
  • J-Trace PRO for Cortex-M HW version V1.0 or later for streaming trace

To rebuild the project our IDE Embedded Studio can be used. The recommended version to rebuild the projects is V6.30. But the examples are all prebuild and work out-of-the box with Ozone, so rebuilding is not necessary.

Streaming trace

The project has been tested with the minimum requirements mentioned above and a SiLabs BRD4204C Rev 00 Board on a PCB4001 Rev 03 motherboard.

Example project: SiliconLabs_EFR32ZG23_TracePins.zip

Reference trace signal quality

The following pictures show oscilloscope measurements of trace signals output by the "Tested Hardware" using the example project. All measurements have been performed using a Agilent InfiniiVision DSO7034B 350 MHz 2GSa/s oscilloscope and 1156A 1.5 GHz Active Probes. If your trace signals look similar on your trace hardware, chances are good that tracing will work out-of-the-box using the example project. More information about correct trace timing can be found at the following website.

Trace clock signal quality

The trace clock signal quality shows multiple trace clock cycles on the tested hardware as reference.

Trace clock signal quality
Rise time

The rise time of a signal shows the time needed for a signal to rise from logical 0 to logical 1. For this the values at 10% and 90% of the expected voltage level get used as markers. The following picture shows such a measurement for the trace clock signal.

TCLK rise time
Setup time

The setup time shows the relative setup time between a trace data signal and trace clock. The measurement markers are set at 50% of the expected voltage level respectively. The following picture shows such a measurement for the trace data signal 0 relative to the trace clock signal.

TD0 setup time