Tongxin THA6 Gen 2: Difference between revisions

From SEGGER Knowledge Base
Jump to navigation Jump to search
No edit summary
 
(7 intermediate revisions by 2 users not shown)
Line 8: Line 8:
{{:Template:FlashBankTableRow | BankName=PFLASH0<ref name="FootNote1" >Enabled by default</ref> | BaseAddress=0x08000000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashBankTableRow | BankName=PFLASH0<ref name="FootNote1" >Enabled by default</ref> | BaseAddress=0x08000000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH0 NVR<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x09800000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=16 KB }}
}}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH1<ref name="FootNote1" >Enabled by default</ref> | BaseAddress=0x08300000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashBankTableRow | BankName=PFLASH1<ref name="FootNote1" >Enabled by default</ref> | BaseAddress=0x08300000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH1 NVR<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x09804000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=16 KB }}
}}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH0 (MBUS memory)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x40400000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashBankTableRow | BankName=PFLASH0 (MBUS memory)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x40400000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH0 NVR (MBUS memory)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x41C00000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=16 KB }}
}}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH1 (MBUS memory)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x40700000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashBankTableRow | BankName=PFLASH1 (MBUS memory)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x40700000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH1 NVR (MBUS memory)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x41C04000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=16 KB }}
}}
}}
{{:Template:FlashBankTableRow | BankName=DFLASH0 (MBUS memory)<ref name="FootNote1" >Enabled by default</ref> | BaseAddress=0x44000000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashBankTableRow | BankName=DFLASH0 (MBUS memory)<ref name="FootNote1" >Enabled by default</ref> | BaseAddress=0x44000000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=512 KB }}
{{:Template:FlashLoader | Name=Default | Size=512 KB }}
}}
{{:Template:FlashBankTableRow | BankName=DFLASH0 NVR (MBUS memory)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x44400000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=32 KB }}
}}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH0 (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x90400000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashBankTableRow | BankName=PFLASH0 (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x90400000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH0 NVR (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x91C00000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=16 KB }}
}}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH1 (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x90700000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashBankTableRow | BankName=PFLASH1 (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x90700000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
{{:Template:FlashLoader | Name=Default | Size=3 MB }}
}}
{{:Template:FlashBankTableRow | BankName=PFLASH1 NVR (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x91C04000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=16 KB }}
}}
}}
{{:Template:FlashBankTableRow | BankName=DFLASH0 (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x94000000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashBankTableRow | BankName=DFLASH0 (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x94000000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=512 KB }}
{{:Template:FlashLoader | Name=Default | Size=512 KB }}
}}
{{:Template:FlashBankTableRow | BankName=DFLASH0 NVR (MBUS device)<ref name="FootNote2" >Disabled by default</ref> | BaseAddress=0x94400000 | JLinkSupport=yes | NumOfLoaders=1 | Loader=
{{:Template:FlashLoader | Name=Default | Size=32 KB }}
}}
}}
}}
}}
<references />
<references />


==Watchdog Handling==
==Watchdog Handling==
Line 38: Line 61:
*The watchdog is fed during flash programming.
*The watchdog is fed during flash programming.


==Device Specific Handling==
==Multi-Core Support==
===Reset===
Before proceeding with this article, please check out the generic article regarding Multi-Core debugging [[Multi-Core_Debugging | here]].<br>
The THA6 family comes with a Cortex-R52 primary core and up to three Cortex-R52 secondary cores.<br>
{| class="seggertable"
|-
! Core || J-Link Support
|-
| Cortex-R52 CPU0 || style="text-align:center;"| {{YES}}
|-
| Cortex-R52 CPU1 || style="text-align:center;"| {{YES}}
|-
| Cortex-R52 CPU2 || style="text-align:center;"| {{YES}}
|-
| Cortex-R52 CPU3 || style="text-align:center;"| {{YES}}
|}
 
In below, the debug related multi-core behavior of the J-Link is described for each core:
===Main core===
====Init/Setup====
*Secure Debug:
**Authentication levels EL1 and EL2 are supported.
**Only the default password (all bytes set to 0xFF) is supported. If you need to unlock the device using a custom password, please contact us through our support ticket system.
* Halt timer configuration:
** Corsight CTI is configured to halt the following timers simultaneously with the R52 cores: STM, IWDT, SAFEWDT, CPUWDTn and BASETIMERn.
====Reset====
*The device uses custom reset:
**Sets reset catch so that CPU is halted immediately after reset
**Performs reset via EDPRCR register
**Ensures that debug power domain and system power domain are powered up
**Powers core if necessary
**Enables debug mode if necessary
**Clears reset catch
====Attach====
*Attach is supported
 
===Secondary core(s)===
====Init/Setup====
*Secure Debug:
**Authentication levels EL1 and EL2 are supported.
**Only the default password (all bytes set to 0xFF) is supported. If you need to unlock the device using a custom password, please contact us through our support ticket system.
* Halt timer configuration:
** Corsight CTI is configured to halt the following timers simultaneously with the R52 cores: STM, IWDT, SAFEWDT, CPUWDTn and BASETIMERn.
====Reset====
*The device uses custom reset:
*The device uses custom reset:
**Sets reset catch so that CPU is halted immediately after reset
**Sets reset catch so that CPU is halted immediately after reset
Line 47: Line 111:
**Enables debug mode if necessary
**Enables debug mode if necessary
**Clears reset catch
**Clears reset catch
=== Halt Timer Configuration ===
====Attach====
* The device supports halt timer configuration.
*Attach is supported
* The follwoing timers are halted simultaneously with the R52 cores (STM, IWDT, SAFEWDT, CPUWDTn, BASETIMERn).


==Evaluation Boards==
==Evaluation Boards==

Latest revision as of 09:38, 9 July 2025

The Tongxin THA6 Gen 2 device family are Cortex-R52 based microcontrollers.

Flash Banks

Flash Bank Base address J-Link Support Loader
Name Size
PFLASH0[1] 0x08000000 YES.png Default 3 MB
PFLASH0 NVR[2] 0x09800000 YES.png Default 16 KB
PFLASH1[1] 0x08300000 YES.png Default 3 MB
PFLASH1 NVR[2] 0x09804000 YES.png Default 16 KB
PFLASH0 (MBUS memory)[2] 0x40400000 YES.png Default 3 MB
PFLASH0 NVR (MBUS memory)[2] 0x41C00000 YES.png Default 16 KB
PFLASH1 (MBUS memory)[2] 0x40700000 YES.png Default 3 MB
PFLASH1 NVR (MBUS memory)[2] 0x41C04000 YES.png Default 16 KB
DFLASH0 (MBUS memory)[1] 0x44000000 YES.png Default 512 KB
DFLASH0 NVR (MBUS memory)[2] 0x44400000 YES.png Default 32 KB
PFLASH0 (MBUS device)[2] 0x90400000 YES.png Default 3 MB
PFLASH0 NVR (MBUS device)[2] 0x91C00000 YES.png Default 16 KB
PFLASH1 (MBUS device)[2] 0x90700000 YES.png Default 3 MB
PFLASH1 NVR (MBUS device)[2] 0x91C04000 YES.png Default 16 KB
DFLASH0 (MBUS device)[2] 0x94000000 YES.png Default 512 KB
DFLASH0 NVR (MBUS device)[2] 0x94400000 YES.png Default 32 KB
  1. 1.0 1.1 1.2 Enabled by default
  2. 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 Disabled by default

Watchdog Handling

  • The device has a watchdog IWDT.
  • The watchdog is fed during flash programming.

Multi-Core Support

Before proceeding with this article, please check out the generic article regarding Multi-Core debugging here.
The THA6 family comes with a Cortex-R52 primary core and up to three Cortex-R52 secondary cores.

Core J-Link Support
Cortex-R52 CPU0 YES.png
Cortex-R52 CPU1 YES.png
Cortex-R52 CPU2 YES.png
Cortex-R52 CPU3 YES.png

In below, the debug related multi-core behavior of the J-Link is described for each core:

Main core

Init/Setup

  • Secure Debug:
    • Authentication levels EL1 and EL2 are supported.
    • Only the default password (all bytes set to 0xFF) is supported. If you need to unlock the device using a custom password, please contact us through our support ticket system.
  • Halt timer configuration:
    • Corsight CTI is configured to halt the following timers simultaneously with the R52 cores: STM, IWDT, SAFEWDT, CPUWDTn and BASETIMERn.

Reset

  • The device uses custom reset:
    • Sets reset catch so that CPU is halted immediately after reset
    • Performs reset via EDPRCR register
    • Ensures that debug power domain and system power domain are powered up
    • Powers core if necessary
    • Enables debug mode if necessary
    • Clears reset catch

Attach

  • Attach is supported

Secondary core(s)

Init/Setup

  • Secure Debug:
    • Authentication levels EL1 and EL2 are supported.
    • Only the default password (all bytes set to 0xFF) is supported. If you need to unlock the device using a custom password, please contact us through our support ticket system.
  • Halt timer configuration:
    • Corsight CTI is configured to halt the following timers simultaneously with the R52 cores: STM, IWDT, SAFEWDT, CPUWDTn and BASETIMERn.

Reset

  • The device uses custom reset:
    • Sets reset catch so that CPU is halted immediately after reset
    • Performs reset via EDPRCR register
    • Ensures that debug power domain and system power domain are powered up
    • Powers core if necessary
    • Enables debug mode if necessary
    • Clears reset catch

Attach

  • Attach is supported

Evaluation Boards

Example Application