cancel
Showing results for 
Search instead for 
Did you mean: 

Community Translations

Kenshow
Esteemed Contributor

Hi,               

 

I would like to translate KBA232509 (BOOT AND SYSTEM CALL) into Japanese.

Please confirm to my work.

 

Thanks,
Kenshow

0 Likes
4 Replies
JennaJo
Moderator
Moderator

Hi, Kenshow-san

Confirm to work this KBA.

Thanks, 

Jenna Jo
0 Likes
Kenshow
Esteemed Contributor

Hi Jenna-san,

                                

Japanese translation was over.
Please check below.

 

Original KBA:

Traveo II Automotive Body Controller - FAQ – BOOT AND SYSTEM CALL - KBA232509

 

Thanks,
Kenshow

==============================

 

タイトル: TraveoII自動車ボディコントローラー – FAQ – ブートおよびシステムコール-KBA232509

 

14.ブートおよびシステムコール

 

14.1. SROM APIまたはシステムコールが機能していない場合、IRQ0 / IRQ1が正しく設定されているかどうかを確認するにはどうすればよいですか?

SROM APIは IRQ0とIRQ1を用いて、割り込みコンテキストでArm® Cortex®-M0+コアによって実行されます 。したがって、適切な割り込みハンドラアドレスと優先度をIRQ0とIRQ1に設定する必要があります。必要な割り込みハンドラアドレスはROMメモリにあり、それぞれ0x40と0x44の場所にあります。

詳細については、セクション3.1 TraveoIIファミリのAN220242フラッシュ書き換え手順でのシステムコールのIRQの設定を参照してください。

必要な設定は次のとおりです。

  • IRQ0およびIRQ1に適切な割り込みハンドラアドレスを割り当てます。
  • Cortex-M0+コアのIRQ0とIRQ1はCM0P_SCS_ISERを有効にする必要があります(0xe000e100のBit0とBit1は1に設定する必要があります)。
  • CM0 +コアのIRQ0優先度を1に設定します(CM0P_SCS_IPR0:0xe000e400の値を0x00000040に設定する必要があります)。両方の割り込みに適切な優先順位を割り当てます。IRQ0の優先度は、IRQ1の優先度よりも低くする必要があります。優先順位の数値が小さいほど、優先順位は高くなります。たとえば、0が最高の優先度を持ち、7が最低の優先度になります。
  • CM0+のIRQ0およびIRQ1に他の割り込みをマップしないでください。
  • CM0+コアに存在する他のすべての割り込みには、2つの割り込みライン(IRQ0およびIRQ1)の優先度よりも低い優先度を割り当てます。
  • CPUSS_CM0_PC1_HANDLERアドレスがIRQ0ベクトルアドレスと一致することを確認してください。
  • SRAMの最初の2KBは、システムコールの保護SRAMとして使用されます。DeepSleepはSRAMのこの部分を保持する必要があります。

次の手順に従って、構成が正しいかどうかを確認します。

  1. CM0+ レジスタセットのVTORレジスタのアドレスの値を確認してください。 
    1.jpg
  2. VTOR + 0x40とVTOR + 0x44が指すメモリと、0x40と0x44のアドレスをチェックし、値が一致していることを確認します。 
    2.jpg

     3.jpg

     

  3. CM0+コアのIRQ0とIRQ1(CM0P_SCS_ISER:ビット0とビット1)が有効になっているかどうかを確認します(CM0P_SCS_ISER:ビット0とビット1は1です)。    
    4.jpg

     

  4. CM0P_SCS_IPR0レジスタの値は0x00000040です。CM0+の場合、設定可能な優先度レベルは0〜3です。レジスタ値に基づいて、IRQ0の優先度番号は1、IRQ1番号の優先度は0です。したがって、IRQ0の優先度がIRQ1の優先度よりも低いかどうかを確認してください。  
    5.jpg

     

  5. PRIMASKレジスタ値に基づいて、CM0+コアでCPU割り込みが有効になっていることを確認します。PRIMASK値は「0」である必要があります。  
    6.jpg

     

 

14.2. eFuseメモリをプログラムするにはどうすればよいですか?

「BlowFuseBit」システムコールを使用して、eFuseメモリをプログラムできます。Traveo™II自動車用ボディコントローラーエントリーファミリーアーキテクチャテクニカルリファレンスマニュアル(TRM(002-19314 Rev. * E)のセクション33.6「eFuseメモリ」を参照してください。これは、カスタマービット(AddressOffset 0x68〜0x7F)でのみ使用する必要があります。このシステムコールには、次の3つのパラメータを渡す必要があります。

  • マクロアドレス= AddressOffset%EFUSE_NR
  • バイトアドレス= AddressOffset / EFUSE_NR
  • ビットアドレス=バイト内のビット位置

CYTxデバイスのEFUSE_NRは「4」です。

14.3. 開始後にフラッシュ操作をキャンセルできますか?

消去サスペンドは、非ブロッキングモードでのみサスペンドに使用できます。ブロッキングモードでは、システムコールは消去の完了後にのみ終了します。そのため、一時停止することはできません。中断されたセクター以外のセクターでEraseSectorが呼び出された場合、新しいセクターは消去され、中断されたセクターは不明な状態になります。中断されたセクターでEraseSectorを呼び出して、ブランク状態に戻すことができます。

プログラム行システムには、消去操作のようなサスペンドメカニズムはありません。ブロッキングモードでは、システムコールはプログラミングの完了後にのみ終了します。非ブロッキングモードでは、プログラミングはバックグラウンドで実行され、中断することはできません。

14.4. SRAMのどの部分を内部ブートローダーに使用できますか?

ブートロード可能なアプリケーションの開始アドレスは、有効なRAMメモリ長([RAM_START + 3 KB、RAM_END –6KB])内にある必要があります。ブートロード可能なアプリケーションの長さは、ブートロード可能なアプリケーションイメージがRAMアドレス範囲[RAM_START + 3 KB、RAM_END –6KB]に収まる値である必要があります。

14.5. CySAFNORMAL保護段階で使用して認証を実行できますか?

はい、CySAFを使用し、TOC2_FLAGS.APP_AUTH_CTLを2として設定して、NORMAL保護状態のアプリケーションを認証することができます。認証は無効になっていますが、有効な公開鍵をSFlashにプログラムする必要があります。

14.6. リセット後の起動時に、アプリケーションの開始アドレスをどのように再配置できますか?
  • ブートアドレスの場合、単一のアプリケーションの変更は、SFLASH_TOC2_FIRST_USER_APP_ADDRを変更することで実現できます。
  • FBLは0x10000000に配置され、Flash Bootはデフォルトで常にこのアドレスにジャンプしようとします。これは、アプリケーションの開始アドレスがTOC2で指定されているためです。このジャンプを2つの場所間で切り替える必要がある場合は、TOC2で2つのアプリケーションアドレスを設定し、フラッシュブート認証を実装する必要があります。1つのアプリケーションが破損している場合、フラッシュブートは他のアプリケーションにジャンプします。このためには、セキュアブートおよびCySAFベースのアプリケーションを利用する必要があります。
14.7. Cy_FB_VerifyApplicationのシステムコールをスタンドアロンとして(つまり、SLLDなしで)使用できますか?この場合、公開鍵はフラッシュブートで使用される鍵と同じですか?

Cy_FB_VerifyApplicationはフラッシュブート共有関数の一部であるため、SLLDなしで使用できます。セクション34.2.1TraveoIIアーキテクチャTRMのフラッシュブート共有機能を参照してください。

また、公開鍵はフラッシュブートで使用される鍵と同じです。

 

==============================

26-Feb-2021
Kenshow

0 Likes
Kenshow
Esteemed Contributor

Hi Jenna-san,

                                

Japanese translation was over.
Please check below.

 

Original KBA:

Traveo II Automotive Body Controller - FAQ – BOOT AND SYSTEM CALL - KBA232509

 

Thanks,
Kenshow

==============================

0 Likes
Kenshow
Esteemed Contributor

タイトル: TraveoII自動車ボディコントローラー – FAQ – ブートおよびシステムコール-KBA232509

 

14.ブートおよびシステムコール

 

14.1. SROM APIまたはシステムコールが機能していない場合、IRQ0 / IRQ1が正しく設定されているかどうかを確認するにはどうすればよいですか?

SROM APIは IRQ0とIRQ1を用いて、割り込みコンテキストでArm® Cortex®-M0+コアによって実行されます 。したがって、適切な割り込みハンドラアドレスと優先度をIRQ0とIRQ1に設定する必要があります。必要な割り込みハンドラアドレスはROMメモリにあり、それぞれ0x40と0x44の場所にあります。

詳細については、セクション3.1 TraveoIIファミリのAN220242フラッシュ書き換え手順でのシステムコールのIRQの設定を参照してください。

必要な設定は次のとおりです。

  • IRQ0およびIRQ1に適切な割り込みハンドラアドレスを割り当てます。
  • Cortex-M0+コアのIRQ0とIRQ1はCM0P_SCS_ISERを有効にする必要があります(0xe000e100のBit0とBit1は1に設定する必要があります)。
  • CM0 +コアのIRQ0優先度を1に設定します(CM0P_SCS_IPR0:0xe000e400の値を0x00000040に設定する必要があります)。両方の割り込みに適切な優先順位を割り当てます。IRQ0の優先度は、IRQ1の優先度よりも低くする必要があります。優先順位の数値が小さいほど、優先順位は高くなります。たとえば、0が最高の優先度を持ち、7が最低の優先度になります。
  • CM0+のIRQ0およびIRQ1に他の割り込みをマップしないでください。
  • CM0+コアに存在する他のすべての割り込みには、2つの割り込みライン(IRQ0およびIRQ1)の優先度よりも低い優先度を割り当てます。
  • CPUSS_CM0_PC1_HANDLERアドレスがIRQ0ベクトルアドレスと一致することを確認してください。
  • SRAMの最初の2KBは、システムコールの保護SRAMとして使用されます。DeepSleepはSRAMのこの部分を保持する必要があります。

次の手順に従って、構成が正しいかどうかを確認します。

  1. CM0+ レジスタセットのVTORレジスタのアドレスの値を確認してください。 
    Kenshow_0-1614331965196.jpeg

     

  2. VTOR + 0x40とVTOR + 0x44が指すメモリと、0x40と0x44のアドレスをチェックし、値が一致していることを確認します。 
    Kenshow_1-1614331965311.jpeg

     

     

    Kenshow_2-1614331965339.jpeg

     

     

  3. CM0+コアのIRQ0とIRQ1(CM0P_SCS_ISER:ビット0とビット1)が有効になっているかどうかを確認します(CM0P_SCS_ISER:ビット0とビット1は1です)。    
    Kenshow_3-1614331965235.jpeg

     

     

  4. CM0P_SCS_IPR0レジスタの値は0x00000040です。CM0+の場合、設定可能な優先度レベルは0〜3です。レジスタ値に基づいて、IRQ0の優先度番号は1、IRQ1番号の優先度は0です。したがって、IRQ0の優先度がIRQ1の優先度よりも低いかどうかを確認してください。  
    Kenshow_4-1614331965247.jpeg

     

     

  5. PRIMASKレジスタ値に基づいて、CM0+コアでCPU割り込みが有効になっていることを確認します。PRIMASK値は「0」である必要があります。  
    Kenshow_5-1614331965162.jpeg

     

     

 

14.2. eFuseメモリをプログラムするにはどうすればよいですか?

「BlowFuseBit」システムコールを使用して、eFuseメモリをプログラムできます。Traveo™II自動車用ボディコントローラーエントリーファミリーアーキテクチャテクニカルリファレンスマニュアル(TRM(002-19314 Rev. * E)のセクション33.6「eFuseメモリ」を参照してください。これは、カスタマービット(AddressOffset 0x68〜0x7F)でのみ使用する必要があります。このシステムコールには、次の3つのパラメータを渡す必要があります。

  • マクロアドレス= AddressOffset%EFUSE_NR
  • バイトアドレス= AddressOffset / EFUSE_NR
  • ビットアドレス=バイト内のビット位置

CYTxデバイスのEFUSE_NRは「4」です。

14.3. 開始後にフラッシュ操作をキャンセルできますか?

消去サスペンドは、非ブロッキングモードでのみサスペンドに使用できます。ブロッキングモードでは、システムコールは消去の完了後にのみ終了します。そのため、一時停止することはできません。中断されたセクター以外のセクターでEraseSectorが呼び出された場合、新しいセクターは消去され、中断されたセクターは不明な状態になります。中断されたセクターでEraseSectorを呼び出して、ブランク状態に戻すことができます。

プログラム行システムには、消去操作のようなサスペンドメカニズムはありません。ブロッキングモードでは、システムコールはプログラミングの完了後にのみ終了します。非ブロッキングモードでは、プログラミングはバックグラウンドで実行され、中断することはできません。

14.4. SRAMのどの部分を内部ブートローダーに使用できますか?

ブートロード可能なアプリケーションの開始アドレスは、有効なRAMメモリ長([RAM_START + 3 KB、RAM_END –6KB])内にある必要があります。ブートロード可能なアプリケーションの長さは、ブートロード可能なアプリケーションイメージがRAMアドレス範囲[RAM_START + 3 KB、RAM_END –6KB]に収まる値である必要があります。

14.5. CySAFNORMAL保護段階で使用して認証を実行できますか?

はい、CySAFを使用し、TOC2_FLAGS.APP_AUTH_CTLを2として設定して、NORMAL保護状態のアプリケーションを認証することができます。認証は無効になっていますが、有効な公開鍵をSFlashにプログラムする必要があります。

14.6. リセット後の起動時に、アプリケーションの開始アドレスをどのように再配置できますか?
  • ブートアドレスの場合、単一のアプリケーションの変更は、SFLASH_TOC2_FIRST_USER_APP_ADDRを変更することで実現できます。
  • FBLは0x10000000に配置され、Flash Bootはデフォルトで常にこのアドレスにジャンプしようとします。これは、アプリケーションの開始アドレスがTOC2で指定されているためです。このジャンプを2つの場所間で切り替える必要がある場合は、TOC2で2つのアプリケーションアドレスを設定し、フラッシュブート認証を実装する必要があります。1つのアプリケーションが破損している場合、フラッシュブートは他のアプリケーションにジャンプします。このためには、セキュアブートおよびCySAFベースのアプリケーションを利用する必要があります。
14.7. Cy_FB_VerifyApplicationのシステムコールをスタンドアロンとして(つまり、SLLDなしで)使用できますか?この場合、公開鍵はフラッシュブートで使用される鍵と同じですか?

Cy_FB_VerifyApplicationはフラッシュブート共有関数の一部であるため、SLLDなしで使用できます。セクション34.2.1TraveoIIアーキテクチャTRMのフラッシュブート共有機能を参照してください。

また、公開鍵はフラッシュブートで使用される鍵と同じです。

 

==============================

26-Feb-2021
Kenshow

0 Likes