i.mxrt1180のデータシートには、Cortex-M7コアが最大800 MHz、Cortex-M33コアが最大300 MHzで動作すると記載されています。
実際に、これらの速度でコアを動作するように構成することは可能なのでしょうか?
サンプルコードでは、コアが792MHz(M7)と240MHz(M33)で動作していることが示されています。
これがM7コアの設定できる最速のようです。
M33コアを264 MHzで動作させるには、PLL_ARM入力クロックを3で割ることで設定できるようです。
ありがとうございます
ピーター・スタインバーグ
ご質問ありがとうございます。
i.MX RT1180のデータシートではCortex-M7が800 MHz、Cortex-M33が300 MHzと記載されていますが、これらは各コアの個別最大値であり、両方を同時に達成することはできません。
その理由はPLLアーキテクチャにあります。両方のコアが同じARM_PLLを共有しており、CM33クロックは整数分周器を介してそこから生成する必要があります。分数分周器はサポートされていません。
ARM_PLL自体の真のハードウェア最大値は798MHz(「800MHz」という数値は丸められた公称値)で、これはVDIV = 133に設定することで実現されます。
ShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.png
ARM_PLLが798 MHzの場合、CM33の最良の整数分割は3で割り算され、798 MHz ÷ 3 = 266 MHzとなります。つまり、CM7が真の最大798 MHzで動作しているとき、CM33は最大266 MHzに達し、300 MHzには達しません。
もしアプリケーションが300 MHzでCM33を必要とする場合、ARM_PLL 600 MHzに再構成する必要があります。これによりCM33は600 MHz ÷ 2 = 300 MHzで動作しますが、この場合CM7は600 MHzに制限されます。
ご不明な点がございましたら、お気軽にお問い合わせください。
よろしくお願いいたします。
シェリー
MCUXpresso IDEの統合設定ツールを使ってクロックをうまく設定できました。この問題は、おそらくConfig Toolsのバージョン不一致に関連していると思われます。以下の手順に従って、設定ツールを更新してください。
アップデート後は、MCUXpresso IDEを再起動してください。また、時計の設定が完了したら、 「コードの更新」をクリックして、更新された設定コードを生成してください。
アップデート後も同じ問題が発生する場合は、お知らせください。
よろしくお願いいたします。
シェリー