こんにちは、NXPテクニカルチームの皆様
S32k328ドメインIDの正確な検証方法についてお問い合わせいたします。
現在、S32k328ボードとHSEファームウェアを使用しています。
- 環境設定:
私はHSEファームウェアイメージs32k358_hse_fw_1.14.0_2.40.0_pb230807.binを使用しています。
現在、マルチコア環境でRMモジュールを使用しています(XRDCのみ使用)。
- 質問:
HSE FW RMでは、添付ファイルに示すように、S32k328ドメインIDは2に設定されています。

しかし、S32k3xx RM 内の S32k328 ブロック図では、HSE は MDAC3 に設定されており、MDAC3 の DID (ドメイン ID) は 3 として出力されます。

(1)登録確認コード:
uint32_t mda [ 8 ];
mda [ 0 ] = IP_XRDC -> MDA_W0_0_DFMT0 ;
mda [ 1 ] = IP_XRDC -> MDA_W0_1_DFMT1 ;
mda [ 2 ] = IP_XRDC -> MDA_W0_2_DFMT1 ;
mda [ 3 ] = IP_XRDC -> MDA_W0_3_DFMT0 ;
mda [ 4 ] = IP_XRDC -> MDA_W0_4_DFMT0 ;
mda [ 5 ] = IP_XRDC -> MDA_W0_5_DFMT1 ;
mda [ 6 ] = IP_XRDC -> MDA_W0_6_DFMT0 ;
mda [ 7 ] = IP_XRDC -> MDA_W0_7_DFMT1 ;
UART_Print ( "--- MDA ロック --- \n " );
for ( uint32_t i = 0 ; i < 8 ; i ++)
ヤージュ
uint32_t vld = ( mda [ i ] >> 31 ) & 1U ;
uint32_t lk1 = ( mda [ i ] >> 30 ) & 1U ;
uint32_t did = mda [ i ] & 0x3U ;
UART_Print ( "MDA %lu=0x% lx VLD= %lu DID= %lu LK1= %lu %s \n " ,( unsigned long ) i , ( unsigned long ) mda [ i ],( unsigned long ) vld , ( unsigned long ) did , ( unsigned long ) lk1 , lk1 ? "(LOCKED)" : "" );
}
(2)レジスタ値:
MDA0=0x80000000 VLD=1 DID=0 LK1=0
MDA1=0x20000000 VLD=0 DID=0 LK1=0
MDA2=0x20000000 VLD=0 DID=0 LK1=0
MDA3=0xc0000003 VLD=1 DID=3 LK1=1 (ロック済み)
MDA4=0x80000001 VLD=1 DID=1 LK1=0
MDA5=0x20000000 VLD=0 DID=0 LK1=0
S32k328の正しいドメインIDは何ですか?
こんにちは、 @dpsdprtmvl
S32K328には0~3の4つのドメインがあり、HSEは常に利用可能な最高位のドメイン(この場合はドメイン3)に割り当てられます。

これは固定設定であり、変更できません。
表136は、主要な導関数のみを示しており、すべての副導関数を示していないため、少し分かりにくい。つまり、次のようになるということです。
2行目のS32K32xは、S32K322とS32K324を表します。
3行目のS32K35xは、S32K358、S32K356、S32K348、S32K338、S32K328、およびS32K37xとS32K39xの派生型を表します。
よろしくお願いいたします。
ルーカス