Multi Source Translation Content

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi Source Translation Content

Discussions

Sort by:
GD3160 SPI 配置 根据数据手册,如果我要配置 GD3160,需要先将 MODE_2 中的 CONFIG_EN 位设置为 1。既然如此,MODE_2 的第一位(Rb/W)应该是 0 还是 1? Re: GD3160 SPI 配置 了解后请看下面: 正确的解释确实是: 0 = 读取 1 = 写入   Re: GD3160 SPI 配置 是的,另外除了下图中说的 CONFIG1 to 7 registers, the MODE1 and 2 registers, the RMSK1 and RMSK2 registers, and the MSK1 and 2 registers ,这些寄存器的写受MODE_2的CONFIG_EN控制,其余寄存器只要bit23为1的情况就会进行配置吗? Re: GD3160 SPI 配置 你说的是bit23吗?
View full article
P1013 CPU/CCB/DDR Underclocking for Thermal and Communication Stability I have old P1013NSE2MHB components on dev boards.  I want to work to under clock them to reduce the thermal load on the component and use the communication clock for PCIe and SPI standard from the P1013NSE2LFB component, It is what I am most familiar with. Essentially, I want to have the P1013NSE2MHB use the P1013NXE2LFB PLL clocking setup, i.e, CPU/CCB/DDR final clock rates of the P1013NSE2MHB to be 1067/533/533 MHz.  Based on the AN4343 Section 6 both components should be able to support the 1067/533/533 clock speeds.  The only concern that I have is that the CCB limit of the P1013NSE2MHB is supposedly 480MHz. I can find no reasoning for this besides that only CCB clocks 400 and 480 MHz can use the built in PLL settings to get to the maximum of 1200MHz. (See AN4343 Section 6.2.1 Table 16) I just want the CPU to have a core clock of 1067MHz.  Both the P1013NSE2MHB use the P1013NXE2LFB are from the exact same line and should share the same architecture, the improvement in the CPU maximum clock to 1200MHz should not prevent the previously implemented CCB architecture from being used to reach a lower CPU clock speed. Unless the CCB bus was redesigned, which would be a massive waste of resources, to support the new CPU even though it isn't radically different.  Thanks for any insights. QorIQ P1 Devices Re: P1013 CPU/CCB/DDR Underclocking for Thermal and Communication Stability It seems the architecture may be different according to the data below, the CPU/CCB/DDR may not share the same trend CPU/CCB/DDR frequency (MHz) LF=1067/533/667    MH=1200/480/800 But this is old device so may need to check with NXP internal team for the explaination Re: P1013 CPU/CCB/DDR Underclocking for Thermal and Communication Stability The T2080/T2081 are not the processors I am asking about. I am looking at the P1013/P1022 processors. Re: P1013 CPU/CCB/DDR Underclocking for Thermal and Communication Stability Hello, Yes — the documentation supports your observation that CPU/core, platform/CCB, and DDR do not have to follow the same scaling trend on T2080/T2081, because they are generated by different PLL domains and the memory bus is explicitly dictated by its own PLL . Core and platform clocks are generated by different PLLs , and the T2080/T2081 clocking map exposes separate status/control points for core-cluster PLLs, the platform PLL, and the DDR PLL ( Clocking_PLLCnGSR , Clocking_PLLPGSR , Clocking_PLLDGSR ) The hardware specs also state directly that the memory bus clock speed is dictated by its own PLL. So the architectural explanation is: CPU/core frequency comes from the core cluster PLL(s) and may run at PLL/1, /2, or /4 depending on configuration. Platform/CCB frequency is a separate platform clock domain with its own allowed SYSCLK ratios. DDR frequency is separate again, and the memory bus clock is half the DDR data rate and is controlled by its own PLL That is why a non-monotonic-looking pair such as: LF = 1067 / 533 / 667 MH = 1200 / 480 / 800 is architecturally plausible in principle: the three domains are not required to rise and fall together. However, I could not find those exact two T2080 frequency triplets documented in the available T2080/T2081 material.   Regards
View full article
PN7462AU FreeRTOS: Unable to switch from heap_3 to heap_4, system stuck + heap usage visibility Hi Team, I am using the PN7462AU platform with FreeRTOS, and the SDK example is configured to use heap_3.c. I am facing memory overflow issues and would like to better understand the heap configuration. Since heap_3 uses the standard library's malloc()/free(), functions such as xPortGetFreeHeapSize() and heap statistics are not available. To gain visibility into heap usage and potentially increase the available heap, I tried switching from heap_3.c to heap_4.c by disabling heap_3.c and enabling heap_4.c. However, the application gets stuck during startup after making this change. I have the following questions: Is it safe and recommended to switch from heap_3 to heap_4 on PN7462AU? How can I determine the amount of memory currently available to heap_3? Since heap_3 does not support xPortGetFreeHeapSize(), what are the recommended methods to monitor heap usage and detect memory exhaustion? What additional configuration changes are required when migrating from heap_3 to heap_4 (e.g., configTOTAL_HEAP_SIZE, linker script changes, memory regions, etc.)? Any guidance or examples specific to PN7462AU and FreeRTOS would be appreciated. Thank you Core and Memory Re: PN7462AU FreeRTOS: Unable to switch from heap_3 to heap_4, system stuck + heap usage visibility Hello @uday_gowda, The NFC reader library offers examples that shows the implementation of FreeRTOS with the PN7462 that could be helpful. Also, I can recommend see the AN11784, it provides guidance on integrating an RTOS with the PN7462, that you can take by reference. MCUXpresso IDE also includes several debugging features for FreeRTOS based applications. In particular, the "Heap Usage view" can help you in this case. Additional details are available in the chapter 3.6 of MCUXpresso IDE 25.06 FreeRTOS Debug Guide. Finally, please take in mind that the PN7462 only have 12k of the SRAM. BR Habib
View full article
S32K328でのマルチコア有効化後のHSE_Bサービス応答なし問題 NXPテクニカルサポートチーム様 S32K328プラットフォームでマルチコア操作を有効にした後、HSE_Bサービスがハングアップ(応答なし)する問題について、技術的なサポートをお願いしたくご連絡いたしました。 1. 環境とセットアップ - MCU: S32K328 (デュアル Cortex-M7 + HSE_B) - 設定ツール:EB tresos(MCAL設定用) - コアロール: M7_0 と M7_1 は Autosar-OS と同時に実行されます。 M7_0は、メッセージ記述子用の共有SRAMを使用してHSE_Bと通信します。 2. XRDCおよびペリフェラルの設定(テスト用) 権限の問題を切り分けるために、非常に寛容な構成を適用しましたが、M7_0とHSE_Bを単一のドメインにグループ化するか、別々のドメインに分離するかに関わらず、症状は同じままです。 - メモリ構成: すべてのSRAM領域へのフルアクセスが許可され、特定のPFLASH/DFLASH領域がHSEに割り当てられます。 - 周辺機器設定 (PDAC): CONFIGURATION_GPR、PFC/PFC_ALT、FMU/FMU_ALT、および MU_0 / MU_1 にフルアクセス権限が割り当てられています。 3. ブートシーケンス アプリケーションは以下の起動シーケンスに従います。 3.1 M7_0 ブート → クロック初期化。 3.2 HSE STATUS が INIT_OK であることを確認します。 3.3 リソースマネージャの初期化(XRDC セットアップ用の RM_Init)。 3.4 ペリフェラルの初期化 3.5 M7_1 (コア 1) を開始します。 3.6 OSを起動する。 4.問題の説明と症状 M7_0とM7_1はどちらもOS環境内で正常に起動し、動作します。しかし、その後HSEサービスリクエストが呼び出されると、HSEは応答せず、ハングアップ状態になる。ハング発生時のレジスタの状態は以下のとおりです。 - XRDC登録状況: XRDC_DERRLOC[3]が0x00020000に変更されます。 ただし、DERR_W3_0/1/2 レジスタまたは DERR_W3_16/17/18 レジスタにはエラー値は記録されません。 - メッセージングユニット(MU_0)ステータス: MU_0_TSRレジスタでは、フラグTE1とTE2は「空でない」状態のままで、クリアされません。 MU_0_FSRレジスタでは、F3フラグは変更されません。 5. 質問 5.1 XRDC_DERRLOC[3]がシフトしているにもかかわらず、DERR_W3_xレジスタに特定のエラーの詳細が表示されない場合、この動作を引き起こしている原因は何でしょうか?これは、HSE内部のDMAまたはバスマトリックス構成による暗黙的なアクセス違反に関連している可能性がありますか? 5.2共有SRAMはMPUによって明示的にキャッシュ不可として構成されているにもかかわらず、HSEがディスクリプタを読み取ることを妨げるような、既知のマルチコア制約やOS環境下での隠れたキャッシュ動作はありますか? 5.3 HSE_STATUS_INIT_OK チェックまたはコア 1 の起動に関連して、RM_Init (XRDC 初期化) の実行タイミングに関する既知の制約または前提条件はありますか? 5.4 MU送信ステータスレジスタ(TE1/TE2)がスタックし、HSEが記述子を処理しない理由を特定するために、どのような手順または追加のレジスタを確認する必要がありますか? このボトルネックを解消するためのご意見やご指導をいただければ大変ありがたく存じます。 よろしくお願いいたします。 Re: HSE_B Service No-Response Issue after Multi-Core Activation on S32K328 こんにちは、 @NewbieNerd さん HSEは常に回答を返すことになっている。応答がない場合、HSEはシャットダウンモードに移行した可能性が高いです。これは致命的なエラーが発生した場合に起こります。例えば、アクセス権限の不足、ダブルビットECCエラー、無効なアドレスなどが原因でHSEがデータを読み書きできない場合。 これは、MU_0のGSRレジスタを読み取ることで確認できます。ビット「0」が設定されている場合、HSEはシャットダウンモードです。 XRDCでエラーの詳細を確認するには、「19.7.3.2」の項に従う必要があります。S32K3リファレンスマニュアルの「ドメインアクセス違反エラーの処理」を参照してください。 ステップ2では、DERRレジスターの詳細を確認することが重要です。 デバッグを迅速に行うには、MDA_W0_0_DFMT0にDID=3を書き込むことで、Cortex-M7_0 / Cortex-M7_0_debugをドメイン3に移動できます(S32K328ではHSEは常にドメイン3にあります)。 すると、DERR に詳細が表示されます (これは、HSE によって何らかのエラーが発生したときにデバッガーで確認した例です)。DID = 0 の場合は、これは表示されませんでした。 これは何が問題だったのかの手がかりになるはずだ。 もう一つ重要な点は、HSE_STATUS_INIT_OKが設定された後にXRDCを有効にする必要があるということです。これはHSE FWリファレンスマニュアルに明記されています。 よろしくお願いいたします。 ルーカス Re: HSE_B Service No-Response Issue after Multi-Core Activation on S32K328 迅速なご返信ありがとうございます。ご要望いただいた開発環境の具体的なバージョン情報は以下のとおりです。 1. ソフトウェアおよびファームウェアのバージョン - HSEファームウェア: S32K358_0_2_40_0 注:このバージョンを使用しているのは、ドキュメントにS32K328派生版をサポートしていると明記されているためです。    -  RTD (リアルタイム・ドライバ):  AUTOSAR リリースバージョン: 4.7.0、ソフトウェアバージョン:3.0.0 2. 開発ツールチェーン IDE: このプロジェクトではS32DSを使用していません。 設定ツール:EB tresos Studioは、すべてのMCAL設定に使用されています。 EB tresos バージョン: 27.1.0 3. 追加情報 私は現在、ホスト側(Cortex-M7)の開発を主導しています。私たちは既に、この行動について社内のHSE FW開発チームと徹底的に協議し、合意形成を図っています。しかしながら、HSE FWの観点からは根本原因や異常は見つからなかったため、これはマルチコア/OSの初期化中に発生したホスト側のランタイム構成または同期の問題である可能性が高いと推測されます。 あなたのご指導のもと、正確なボトルネックを特定できることを心から願っております。EB tresosプロジェクトから、さらに設定ダンプやレジスタキャプチャが必要な場合はお知らせください。 よろしくお願いいたします。 Re: HSE_B Service No-Response Issue after Multi-Core Activation on S32K328 使用されているHSEファームウェアのバージョン、RTDおよびS32DSのリビジョンを具体的にご指定いただけますでしょうか?ありがとう Re: HSE_B Service No-Response Issue after Multi-Core Activation on S32K328 貴重なデバッグガイドと洞察をありがとうございました。 ご提案いただいた件について、さらに調査を行い、弊社側で以下の結果を確認いたしました。これらの調査結果を共有し、ツール構成の制約を回避する方法についてご助言をいただきたく存じます。 1. RTDバージョンの明確化 前回のやり取りでお伝えしたとおり、現在弊社では以下のものを使用しています。 - RTDソフトウェアバージョン:3.0.0 - AUTOSAR リリースバージョン: 4.7.0 2. EB tresos構成制約(ドメイン割り当て) S32K328では、HSEはドメイン3に恒久的に割り当てられているとおっしゃっていましたね。 しかし、EB tresos (v27.1.0) ではRTD 3.0.0 環境プラグインの場合、リソースマネージャ(RM)の構成構造では、ドメイン2(ドメインID 0、1、2)までしか割り当てることができません。 設定ツールではドメインの最大数が2に制限されているため、EB tresosを介してドメイン3にマスター/スレーブを適切に設定または割り当てることはできません。 質問:S32K328派生機種のEB tresosでドメイン3の設定を公式に有効化するRTDバージョンまたはパッチを具体的に教えていただけますか?それとも、実行時コードを使ってXRDCレジスタを手動でオーバーライドする必要があるのでしょうか? 3. XRDCエラーレジスタの状態(DERRLOCとDERR_Ww_iの比較) リファレンス・マニュアルの手順に従って、エラー状態中に以下の動作を確認しました。 XRDC_DERRLOC[3]はダンプによって0x00020000としてキャプチャされますが、周辺機器ビューではキャプチャされません(DERRLOC[3]は存在しません)。 しかし、エラー処理の手順に従ったにもかかわらず、すべてのDERR_Ww_iレジスタは0のままです。 ご指摘のとおり、DERRに詳細情報が不足しているのは、ホストコア(Cortex-M7_0)が別のドメイン(例えば、DID=0または1)で動作しているため、ドメイン3(HSE)によって生成されたエラーログを読み取ることができないことが原因のようです。 4. 実行タイミングの検証 ブートシーケンスを再確認した結果、HSE_STATUS_INIT_OKが設定された後にXRDCが明示的に有効になっていることを確認しました。これはHSE FWリファレンスマニュアルの要件に準拠しています。 5.指導依頼 上記のツール制約により、Cortex-M7_0またはそのデバッグマスターをEB tresos内のドメイン3に容易に移動できないため、以下の点についてアドバイスをいただけますでしょうか。 MCALの初期化を壊さずに、デバッグのためにMDA_W0_0_DFMT0を強制的にDID=3にオーバーライドする適切な方法はありますか? RTD 3.0.0において、ドメイン0/1からドメイン3のエラーレジスタを検査するための既知の回避策はありますか? 引き続きサポートいただき、誠にありがとうございます。 Re: HSE_B Service No-Response Issue after Multi-Core Activation on S32K328 ドメイン3が欠落していることは、RTD 3.0.0における既知の問題です。バージョン4.0.0以降で修正されています。推奨される解決策は、RTDを最新バージョンにアップグレードすることです。そうでなければ、XRDC レジスタの書き換え、構成ファイルの書き換え、新しい RTD で構成ファイルの生成、そしてそれをプロジェクトで使用するなど、何らかの回避策を手動で実装する必要が生じます。しかし、これは一時的な応急処置に過ぎず、推奨されるクリーンな解決策は、新しい RTD を使用することです。 「19.7.3.2」の項によるとドメインアクセス違反エラーの処理」では、エラーハンドラのためにドメインを再設定するのが一時的であるべきです。この段階では、デバッガーを使ってDIDを修正し、エラーの詳細を読み取れるようにしてみるのが良いでしょう。 MU_0のGSRレジスタのビット0が設定されていることを確認しましたか? よろしくお願いいたします。 ルーカス
View full article
iMX8 MiniのSEC_CONFIGヒューズ こんにちは、 iMX8 Miniをベースにしたカスタムハードウェアプラットフォームでセキュアブートを有効にしようとしています。 入手可能なドキュメントに従って、正しい署名を持つブートイメージを作成することができました。hab_statusコマンドでhabイベントが表示されず、イメージ検証ツールでもエラーが表示されなかったことから、その点は確信しています。 デバイスを閉じるために、SRK_HASHヒューズとSEC_CONFIGヒューズをプログラムしましたが、この手順の後、ボードが起動しなくなり、シリアルコンソールにも何も表示されなくなりました。 SRK_HASHは正しくプログラムされていると確信していますが、SEC_CONFIGについては疑問があります。セキュアブートを有効にするには、以下のコマンドを使用する必要があったはずです。 ヒューズプログラム 1 3 0x02000000 これはビット25を設定します。 しかし、変更を行う前にSEC_CONFIGの内容を読み取ったところ、以下の値が表示されていました。 ヒューズ読み取り1 3 0x8000000 そこで、ビット27が1に設定されているのを見て、以下のコマンドを使うという素晴らしいアイデアを思いつきました。 ヒューズプログラム 1 3 0x0A000000 ビット27を保持し、ビット25を設定する。 質問: 上記のコマンドによってSEC_CONFIGが無効な値に設定され、ROMブートローダーがSPLを起動すらしないという事態は起こり得るでしょうか? もしそうであれば、基板を復元する方法はありますか? よろしくお願いいたします。 Re: SEC_CONFIG fuse on iMX8 Mini 予約ビットの書き込み後にチップが故障した場合、ヒューズ操作は一度限りの不可逆的なプロセスであるため、チップを復元することは不可能です。 Re: SEC_CONFIG fuse on iMX8 Mini こんにちは、 ご回答ありがとうございます。これは現在の挙動と一致しています。 最後に一つだけ質問があります。 ロックビットをプログラムしていないのですが、ハードウェアデバッガを使えば基板を復元できると思いますか? よろしくお願いいたします。 Re: SEC_CONFIG fuse on iMX8 Mini ビット27は予約ビットであり、お客様がプログラムすることはできません。このコマンド(fuse prog 1 3 0x0A000000)がsec_configを無効にするかどうかよりも、チップ全体の動作が予測不能になる可能性の方が高い。 Re: SEC_CONFIG fuse on iMX8 Mini こんにちは、 残念ながら、ヒューズをクリアしても変更することはできません。eFuseは一度だけプログラム可能です。一度吹き飛ばされたsec_config、それを「アンブロー」することはできません
View full article
FRDM-MCXA156に関するLINの例のリクエスト NXPコミュニティの皆様、こんにちは。 現在、FRDM-MCXA156開発ボードを使用しており、LIN(ローカルインターコネクトネットワーク)通信を実装したいと考えています。 利用可能なSDKのサンプルを確認しましたが、FRDM-MCXA156専用の完全なLINマスター/スレーブのサンプルは見つかりませんでした。 どなたか共有していただけませんか? FRDM-MCXA156向けのLINマスターまたはLINスレーブのサンプルプロジェクト。 LPUART周辺機器をLINモード用に設定する方法に関するガイダンス。 MCXA156に適用可能なSDKのサンプル、アプリケーションノート、またはリファレンスプロジェクトがあれば教えてください。 最新のMCUXpresso SDKにおけるLINサポートに関する情報。 コードスニペット、設定に関するヒント、またはドキュメントの参照情報などがあれば、大変ありがたいです。 ダウンロードしたSDKからLIN用のドライバを添付します。 再開まで今しばらくお待ちください。 よろしくお願いします、 アクシャイ FRDMトレーニング MCXA Re: Request for LIN Example on FRDM-MCXA156 こんにちは、アクシャイさん。 ご迷惑をおかけして申し訳ありませんが、 MCXA156のコネクティビティ機能には LIN の完全なサポートに関する記述はありません。LPUART ペリフェラルを介した基本的な LIN サポートのみで、ブレーク検出などが含まれます [MCXA-156 リファレンス・マニュアル] 第 39.2.2 章。完全な LIN プロトコル・スタックは提供されておらず、MCXA156 SDKs には LIN のサンプルがありません。 このANでは、i.MX RTシリーズMCUのFlexIOを使用したLINマスター/スレーブのエミュレーションについて説明しています。FlexIOを使用してLINをエミュレートする方法については、MCXA156を参照してください[リファレンスマニュアル第36章]。 重要:このFlexIOの使用方法はMCXA156での動作確認やテストが行われていないため、使用例はありません。 敬具、ルイス
View full article
CMSISパックにはS32K388用のフラッシュアルゴリズムは含まれていません 私はいくつかのデザインでS32K388を使用しようとしていますが、CMSISパック( https://www.keil.arm.com/packs/s32k3xx_dfp-keil/devices/ )にはS32K388用のフラッシュアルゴリズムがないことがわかりました。 これを追加する予定はありますか?このファイルの最新版はどれくらい早く入手できますか? Re: No Flash Algorithms for S32K388 in CMSIS Pack こんにちは@kscz これは弊社のサポート範囲外です。KEILのサポートに問い合わせるべきです。 現在の情報によると、KEILのDFPパッケージは更新されておらず、すべてのS32K3モデルをサポートしているわけではありません。 S32K388用のプログラミングアルゴリズムを独自に実装する必要があります。 (S32K3 DFPの今後のアップデート計画について問い合わせるため、KEILの質問スレッドを作成しました。) Re: No Flash Algorithms for S32K388 in CMSIS Pack 残念だ。自分で点滅アルゴリズムを記述する方法を考え出す必要がないことを願っていたのに…。 メモリーファイルなどから他のフィールドは翻訳できますが、フラッシュアルゴリズムは今のところ少し理解できません。 KeilのThreadへのリンクはありますか?現在のDFPが非推奨になった理由について、何かご存知でしょうか? Re: No Flash Algorithms for S32K388 in CMSIS Pack こんにちは@kscz 参考のために内容をコピーしてください。 」 パックS32K3xx.DFPは「非推奨」と明記されています。以下をご覧ください。 https://www.keil.arm.com/packs/s32k3xx_dfp-keil/devices/ これにより、当社からの今後の更新はありません。NXP向けのDFPの維持はかなり前にやめており、NXPは他のデバイス向けに多くのDFPを作成しましたが、このシリーズ用には明らかに違います。したがって、S32K3シリーズ向けの新しいDFPを作成するのはNXPの役目です。 」 その間に、NXPがDFPパッケージのサポートを継続するかどうか、開発チームと確認しようとしています。しかし、私はまだ何も情報を受け取っていません。 Re: No Flash Algorithms for S32K388 in CMSIS Pack 何か進展はありましたか?NXPはKeilツールチェーンのこれらのツールの更新をサポートしますか? Re: No Flash Algorithms for S32K388 in CMSIS Pack こんにちは@kscz 申し訳ありません、受け取ったメッセージをあなたに転送するのを忘れていました。 内部の反応は非常に明確だった。 「現時点でNXPはKEILのS32K3xxのDFPを更新する予定はありません。」
View full article
LS2088ARDB:QSPIフラッシュが破損した場合の復旧方法 ハイ LS2088ARDBをQSPIブートモードで起動することができました。QSPI-FLashには、いくつかのブートイメージ( bl2_qspi.pbl、RCW、fip.bin)が事前に書き込まれています。 誤ってQSPIフラッシュ内のブートイメージを消去してしまいました。現在、ボードはQSPIブートモードで起動しません。 私はLauterbach JTAG - Trace32を使用し、パスC:\T32\demo\arm\hardware\ls208x\ls2088a\ls2088a-rdb\ls2088a_sieve_sram_failsave.cmmにあるスクリプトを使用しました。 このスクリプトは以下の処理を実行します。 1)オーバーライドRCW_src=ハードコード、 2)JTAGはスクリプトに含まれる基本RCWを使用して起動します 3) 基本アプリを内部RAMにロードします 質問: 1) U-bootをRAMにロードできるように、クロックとDDRを設定するスクリプトを提供していただけますか? 2) また、手順を教えていただくか、私の復旧手順が適切でない場合は訂正してください。 3) また、パス C:\T32\demo\arm\flash には ls2088ardb のフラッシュスクリプトが見当たりません。もしお持ちでしたら、ご提供いただけますでしょうか。 よろしくお願いいたします。 Re: LS2088ARDB: How to recover when QSPI Flash is corrupted NXPは顧客にCodeWarriorのみを提供する。 セクション「9.4」を参照してください。添付のCodeWarriorドキュメントにある「IFCメモリ内のRCWが欠落または破損した場合のボード復旧」を参照してください。 LS2088ARDB用のCodeWarrior初期化ファイルについては、添付資料をご参照ください。
View full article
S32K324へのFreeRTOS SMPの展開 NXPのエンジニアの皆様、こんにちは。 S32K324チップ(マルチコア)上でFreeRTOS SMPを実行する必要があります。S32K358_SMPサンプルプログラムを参照したところ、図に示すようにSMP構成が実行されていないことがわかりました。 私はRTD 5.0.0とFreeRTOSを使用しています。バージョン5.0.0における私の問題点は以下のとおりです。 1. S32K324(マルチコア)チップはFreeRTOS SMPの展開をサポートしていますか? 2. 御社には他に参考事例はありますか?あるいは、更新版に関連参考文献を掲載しましたか? お返事をお待ちしております。 Re: S32K324 部署FreeRTOS SMP こんにちは、@ Wanyj FreeRTOSに対する技術サポートは限定的ですが、FreeRTOSのSMP機能に関してはサポート対象となります。 この例を参考にしてください。これは私が見つけた中で最も完全なSMP使用例です。 https://community.nxp.com/t5/S32K-Knowledge-Base/S32K3xx-FreeRTOS-SMP/ta-p/2292229
View full article
S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 程序运行时没有进入中断,没调用pit_notifaction 软件环境 S32DS 3.6.0  RTD 6.0.0 Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 有在函数内部增加断点进行测试,函数没有被调用,可能的原因有哪些呢?计数器在正常计数,没有进中断。 不同软件版本会有影响吗? Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 你好@Finnc  目前,我无法访问 S32K311 主板。不过,我在 FRDM-A-S32K312 上测试了相同的配置和代码,并确认 PitNotification 函数被调用,且计数器如预期般递增。 您能否在通知函数内部设置一个断点,以验证该函数是否被调用? BR、VaneB Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 全速运行时没有进入pit_notifaction,PitCount值一直为0,暂停时寄存器的参数如图所示。 是否和时钟配置有关,配置如下: Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 你好@Finnc  我已经使用 S32K311EVB 在本地测试了您的代码,一切运行正常。 为了排除与您的自定义硬件相关的任何问题,请尝试将时钟源切换为 FIRC,并观察行为是否有所变化。 Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 你好@Finnc  如您代码中所示,计数器仅在调用 PitNotification 时才会递增。这表明 PIT 中断已正确触发。 为了获得更简单、更可见的测试,可以使用 printf 在 PITNotification 函数中输出计数器值。如果您能看到打印出的数值,这将进一步证实中断正在按预期执行。 例如,我是这样实现的: 此外,如果您在配置 printf 时需要帮助,请参考主题“如何在 S32DS 3.5 中使用 printf 函数?”。 Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 你好@Finnc  看来问题可能与软件无关;相反,它可能与您的定制板有关。您是否有其他搭载 S32K311 设备的板可以用来进行相同的测试以作比较? Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 使用内部时钟时也无法进入pit_notifaction,此外通讯中断及其他中断也没办法正常运行,我用S32K312测试相同的程序及配置,是可以正常运行的 Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 暂时没有其他搭载 S32K311 设备的板,同一块板试了几块都是相同的问题。其他只有S32K312芯片测试相同的程序及配置,是可以正常运行。未找到K311异常原因 Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 你好@Finnc  由于代码在我这边使用 FRDM-A-S32K312 和 S32K31XEVB-Q100 都能按预期运行,而且在你那边使用 S32K312 也能正常运行,因此问题可能与软件无关。 根据你描述的情况,这可能与硬件有关。然而,如果没有进一步分析,很难确定确切的根本原因。参考 S32K31XEVB-Q100 原理图和 S32K3xx 微控制器硬件设计指南文件(包含在 S32K3 通用硬件设计包中)可能会有所帮助,以便将您的定制板与推荐的设计实践进行比较。 如果您认为问题可能与 MCU 本身有关,请联系您的 NXP 代表或您购买零件的代理商以获得进一步帮助。 Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 在测试的时候,在Pit_notifaction函数中增加LED反转,发现程序下载完成后,需给板子重新上电,LED灯会闪烁,说明进入了中断,但是每次下载完成后都需要重新上电才能正常运行,没办法进入debug调试 Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 你好@Finnc  你试过使用其他调试器吗?另外,您还在使用最初分享的那段代码吗? Re: S32K311 芯片 pit无法进入中断 软件环境 S32DS 3.6.0  RTD 6.0.0 是用最初的程序,在中断中加入了led闪烁。目前问题已经解决,是因为j-link下载器的复位引脚接到了NTRST,换成SRST后程序正常运行,这两个引脚有什么不同,必须要接到SRST吗,是所有芯片都要接这个引脚吗
View full article
S32 Design Studio のライセンス更新 こんにちは、私のS32 Design Studioももうすぐ期限切れになります。延長を手伝ってください。 詳細は以下の通りです。 Arm向けS32 Design Studio アクティベーションID: 5D87-991A-4C45-DD49 評価期間:11日間 機能バージョン: 2.2 機能ステータス:評価中(11日間) よろしくお願いします。 Re: S32 Design Studio License Renewal こんにちは、 お客様のS32DSライセンスが延長されました。
View full article
EIS测试评估板功能咨询 关于由EVBMA6x02BMU,EVBMA8420DT,EVBMA7x18DT1三块板构成的EIS测试方案,有以下几个问题: 1. 支持的EIS测试频率范围是多少? 2. 除了传统扫频测试方法,激励电流可否进行自定义设置,例如采用多频复合激励? 3. 用户手册里提到单块板可测电芯数为8-18块,电芯数小于8块时,能否完成测试? 4. 实际使用时,评估板与电芯的连接方式是否有要求或者一个标准规范? 5. 针对大容量电芯内阻较小时,需要使用到较大的激励电流,是否可控? Re: EIS测试评估板功能咨询 1:0.1 - 1 kHz 2:可以自己做激励信号 3:BMA7418最少支持8个cell 4:没有涉及到太多你可以参考UG10341 page10 5:比方说BMA8420 + TAA3033 的 EIS 激励方案里也就是UG10341 Figure8,激励电流的“大小/幅度”不是由 BMA8420 单独直接设定,而是由 TAA3033 来调节;其中感测电阻(sense resistor)定义激励电流的幅度。
View full article
关于 AT_NONCACHEABLE_SECTION_INIT() 宏的问题 你好 关于 AT_NONCACHEABLE_SECTION_INIT 及其在 fsl_dcp.c 中的用法,我有几个问题 这会导致一个变量被放入“NonCacheable.init”中章节。本节的名称暗示这是一个未被缓存但已初始化的区域。推测该变量需要由核心以外的主节点进行访问。 我们以 evkmimxrt1020_dcp 为例(适用于 RT1020-EVK) 本示例中的链接器脚本将“NonCacheable.init”放置在 .data 段中(因此在 DTC 中),该区域已初始化,但并非指定的非缓存区域。 这看起来可能是个问题! 我们再来看看 AT_NONCACHEABLE_SECTION_INIT() 在 DCP 驱动程序中的用法: 变量 `s_dcpContextSwitchingBuffer` 尚未初始化! 因此有两种情况: 这是故意未初始化的。但在这种情况下,应使用宏 `AT_NONCACHEABLE_SECTION()` 而不是 `AT_NONCACHEABLE_SECTION_INIT()`。 它实际上需要进行初始化。在这种情况下,问题在于它尚未被初始化。 顺祝商祺! 最大值 Re: questions about AT_NONCACHEABLE_SECTION_INIT() macro 你好@mastupristi, 感谢您的详细分析。我们已经审阅了您提出的这两点。 1. 将 NonCacheable.init 放置在 DTCM 中——这不是缓存一致性问题 您观察得很对,链接器脚本确实放置了 `NonCacheable.init`写入位于 `SRAM_DTC`(DTCM)中的 `.data` 区域。 不过,这在 RT1020 上不会引发缓存一致性问题。DTCM 是 Cortex-M7 上的紧密耦合内存,其访问路径完全通过硬件设计绕过了 L1 数据缓存。尽管它并未被放置在单独命名的 `NCACHE_REGION` 中,但 DTCM 中的数据本质上不可缓存,且对于 DCP 等支持 DMA 的外设而言,访问这些数据是安全的。 请帮忙检查一下这个AN:https://www.nxp.com/docs/en/application-note/AN12042.pdf 而且,如果您修改链接器脚本以将此部分放在 OCRAM 或 同步动态随机存取存储器(SDRAM) 中,则必须确保相应的 MPU 区域配置为不可缓存,或者驱动程序/应用程序执行适当的缓存维护(清理/失效)。 2. 宏的使用——观察正确,不影响功能 你说的没错,`s_dcpContextSwitchingBuffer` 在调用 `AT_NONCACHEABLE_SECTION_INIT()` 时并未指定显式的初始化函数。根据 SDK 规范,`AT_NONCACHEABLE_SECTION_INIT()` 适用于初始值不为零的变量(`= {xx}`),而 `AT_NONCACHEABLE_SECTION()` 适用于初始化为零的变量。 由于该变量的存储范围为静态,因此 C 语言无论如何都会保证其被初始化为零——这并不存在功能性错误。该缓冲区不依赖于任何特定的初始值;DCP 硬件会在运行时管理其内容。 也就是说,使用 `AT_NONCACHEABLE_SECTION () `在语义上更合适,并且可以节省208字节的闪存。我们认为这是一个提升代码质量的机会。 致以最诚挚的问候, Gavin
View full article
S32K328 微型控制器的 CPU / 热负荷 我们需要帮助在项目中实现 S32K328 微控制器的 CPU/热负载。请告诉我测试 CPU/热负荷的 API。请说明在多核中运行的所有步骤。 Re: CPU /Thermal load for S32K328 micro controller 你好, 对于 S32K3,没有用于 “CPU/热负载测试” 的专用单个 RTD API。通常这是通过以下方式实现的: - 利用应用程序忙循环或 RTOS 任务在每个内核上产生 CPU 负载 - 通过 ADC API,通过内部 TempSense 路径监测芯片温度 有关温度监测,请查看 ADC TempSense API: Adc_Sar_Ip_TempSenseEnable() Adc_Sar_Ip_GetConvData() Adc_Sar_Ip_TempSenseCalculateTemp() 更多信息,如https://community.nxp.com/t5/S32K/Internal-Temperature-sensor/m-p/1688673 用于在 S32K328 上多核执行: - 创建/使用 S32K3 多核 RTD 项目 - 使用 NXP 多核启动流程启动次核心 - 在每个核心上运行 CPU 压力任务 - 定期读取 TempSense 并记录温度与负载的关系 多核项目生成指南见以下链接 https://community.nxp.com/t5/S32K/Multicore-applications-on-the-S32K3-series-processors/m-p/2050051 BR, Petr Re: CPU /Thermal load for S32K328 micro controller 根据 S32K UM,内部有温度传感器(TempSense)。S32 DESIGN STUDIO sdk 中可能有一些例程
View full article
Edgelock RW612 Zephyr Hello, I would like to store cetificates and private key in the edge lock secure enclave of the RW612. My application is developed using zephyr and I need to be able to provision those certificates and read them at run time. Is this supported ? Could you provide documents / guides on how to do that. I am currently using upstream Zephyr 4.2.0 Thanks. Re: Edgelock RW612 Zephyr Hello @benjaminaxiles, hope you are doing well. Would you please provide more details on your expected application functionality to provision the certificates/private key? Are you expecting the provisioning to be done with an specific transport? In the meantime, I suggest referring to the examples "zephyr/samples/tfm_integration/psa_crypto" and "modules/lib/nxp_iot_agent/zephyr/samples/el2go_agent", as these implement different approaches to key storage and provisioning, in particular, the "el2go_agent" example is meant to demonstrate how to use the Edgelock 2GO service to provision keys and certificates. As a side note, I would suggest migrating to latest Zephyr downstream/upstream versions, as the support for RW612's security features has been modified since version 4.2.0. Please let me know if this information is helpful.
View full article
mcxn947 smartdma のコード領域はどれくらいありますか? SmartDMAでアセンブリコードを実行する場合、最大コードサイズはどれくらいですか? Re: how much code space does mcxn947 smartdma has こんにちは、 @justdomyself さん。 投稿ありがとうございます! SmartDMAには、明確なコードサイズ仕様がありません。SmartDMAの各機能モジュールを正しく動作させるには、それぞれを固定のメモリアドレスに配置する必要があります。 SmartDMAファームウェアのインストールは、基本的にSmartDMA機能モジュールのコード配列を指定されたRAMアドレスにコピーすることから成ります。 RAMX(最大96KB)はCortex-M33コードバスに接続されており、SmartDMA機能モジュールを含むコード格納に最適なRAM領域です。 この情報がお役に立てば幸いです。
View full article
S32G3的MCAL多核配置 SOC型号:S32G399A,RTD版本4.0.2   目前我们的EB工程已经实现了在同一个M核上驱动相关外设,现在因为功能分核的需要,MCAL需要拆分到不同的M核上,比如spi_0在M7_0上使用,spi_1在M7_1上使用;     有没有MCAL的多核配置工程或者文档可供参考? Re: S32G3的MCAL多核配置 Hi,RoseRice 很抱歉我们没有直接的例程和文档符合您的应用需求。 你可以尝试参考AN13750(AN13750: Enabling Multicore Application on S32G2 using S32G2 Platform Software Integration – Application note), 该文档内容中提供了多核启动和应用的方法,是官方推荐 multicore应用方式。 希望对您有所帮助,有任何问题随时联系。 BR Joey
View full article
关于 RTD 3.0.0 至 RTD 7.0.0 的说明S32K344 的迁移和 FreeRTOS 集成 嗨,团队、 我们目前在裸机应用中使用带有 RTD 3.0.0 的 S32K344 平台,并希望评估使用 S32DS 3.6.8 迁移到 RTD 7.0.0 的情况。 请您澄清以下问题: 是否可以将现有的 S32K344 项目从 RTD 3.0.0 迁移到 RTD 7.0.0,同时保留现有的应用程序功能? 是否 RTD 7.0.0支持使用 RTD 3.0.0 开发的现有源代码和驱动程序实现、还是需要进行重大修改? 是否有可能将 FreeRTOS 与 RTD 7.0.0 集成,同时重复使用使用 RTD 3.0.0 开发的现有裸机应用程序? 在过渡期间,我们是否需要考虑任何迁移指南、兼容性问题或已知限制? 如能就 S32K344 平台的建议迁移方法提供指导,将不胜感激。 谢谢! Re: Clarification on RTD 3.0.0 to RTD 7.0.0 Migration and FreeRTOS Integration for S32K344 您好, 从 RTD 3.0.0 迁移到 RTD 7.0.0应视为手动移植活动,因为没有自动迁移工具可用。 请考虑以下要点: 不支持项目直接迁移。全新 RTD 7.0.0项目,并逐步移植应用程序代码。 RTD 7.0.0没有提供演示示例。从 RTD 7.0.1 开始添加示例项目、因此,如果您依赖参考项目,建议使用 RTD 7.0.1 或更高版本。 虽然可以选择导入 .mex配置文件,因此应谨慎使用: 它可以帮助重复使用系统/外围设备配置。 但是,不同 RTD 版本之间的差异往往会导致配置不匹配或错误,必须手动解决。 关于兼容性: 应用程序级逻辑通常可以重复使用,但驱动程序 API、配置结构、初始化流程和生成的代码可能需要更新。 工作量取决于使用了哪些驱动程序和功能,以及应用程序与 RTD 3.0.0 结合的紧密程度生成的代码。 FreeRTOS: RTD 支持 FreeRTOS 集成,因此可以迁移到 RTD 7.x 并引入 FreeRTOS。 推荐的方法是首先验证干净的 RTD 7.x + FreeRTOS 设置,然后将现有的应用程序逻辑集成到任务/ISR 中。 建议的迁移流程: 创建一个新的 RTD 7.x 项目(最好是 7.0.1 或更新版本)。 使用 S32 配置工具重新配置外设(导入 *.mex仅作为起点)。 逐步移植应用程序代码 迁移后验证每个驱动程序/外设。 总体而言,迁移是可行的,但由于 RTD 版本之间的架构和配置变化,预计需要进行必要的调整。 致以最诚挚的问候, Petr
View full article
T1042 DDR4 DQ MAP Register Settings We are about to receive a new design using the T1042 processor with DDR4.  We had to swap bits within the byte lanes to optimize the DDR4 routing.  I am aware that there is a set of DQ MAP registers which need to be utilized to account for the bit swapping.  However the instructions in the reference manual for setting the bits in these registers is unclear. We had another instance of the DQ MAP settings at our site which was working successfully, however the settings they were told to use via NXP on this forum do not match what I would expect based on what the reference manual says.  My colleague's post is this one:  Re: T1042 DDR4 failed to initialize - What to look at - NXP Community There are cases within the older working design DQ MAP settings where the value is 1 off from what my interpretation of the reference manual would dictate.  Would someone at NXP be able to help review the settings I came up with for my design and ensure they are correct so we have the best chance of success at bringing up the DDR4?  My expected settings and schematic snippets of the mapping are attached. QorIQ T1 Devices Re: T1042 DDR4 DQ MAP Register Settings Thank you for the reply and verification. I forgot to include the ECC screenshot however we did not do any swapping within the ECC byte. I greatly appreciate your support. Re: T1042 DDR4 DQ MAP Register Settings Could not find ECC lines, but others are correct. Thanks.
View full article
i.MX8MP uSDHC 中的无记录位 我需要为 INTEGRITY 操作系统优化我们的 uSDHC 驱动程序。在这项工作中,我观察到,在繁忙状态下发送命令时," Transfer complete " (TC) 中断不会被触发。处理器参考手册(Rev.3)对于 TC 中断说: "对于带 busy 的命令,当 busy 取消时,该字段将被置位。" 我看到 Linux 驱动程序使用 VEND_SPEC2 寄存器中一个未注明的位来激活此类命令的 TC 中断。 它位于"sdhci-esdhc-imx.c。"锉刀 #define ESDHC_VEND_SPEC2_EN_BUSY_IRQ (1)<< 😎 当我使用我们的驱动程序在 VEND_SPEC2 寄存器中设置第 8 位时,TC 中断也会被触发。 是否建议使用这个未注明的位呢? i.MX 8 系列 | i.MX 8QuadMax (8QM) | 8QuadPlus
View full article