ラズベリーロゴ

Raspberry Pi SC1631 ラズベリーマイクロコントローラ

Raspberry-Pi-SC1631-ラズベリーマイクロコントローラ製品イメージ

製品仕様

  • モデル: RP2350
  • パッケージ: QFN-60
  • 内部フラッシュストレージ: なし
  • 巻tage レギュレータ: オンチップスイッチングレギュレータ
  • レギュレータピン: 5 (3.3V 入力、1.1V 出力、VREG_AVDD、VREG_LX、VREG_PGND)

製品使用説明書

  • 第1章 はじめに
  • RP2350 シリーズは、RP2040 シリーズとは異なるパッケージ オプションを提供します。RP2350A と RP2354A は、それぞれ内部フラッシュ ストレージなしと内部フラッシュ ストレージありの QFN-60 パッケージで提供され、RP2354B と RP2350B は、フラッシュ ストレージありとフラッシュ ストレージなしの QFN-80 パッケージで提供されます。
  • 第2章 権力
    RP2350シリーズは、新しいオンチップスイッチングボリュームを搭載しています。tag2040 ピンのレギュレータです。このレギュレータは動作に外部コンポーネントを必要としますが、RPXNUMX シリーズのリニア レギュレータと比較して、高負荷電流での電力効率が高くなります。アナログ回路に電力を供給する VREG_AVDD ピンのノイズ感度に注意してください。

よくある質問(FAQ)

  • Q: RP2350A と RP2350B の主な違いは何ですか?
    A: 主な違いは、内部フラッシュ ストレージの有無です。RP2350A には内部フラッシュ ストレージがありませんが、RP2350B にはあります。
  • Q: ボリュームにはピンがいくつありますか?tagRP2350 シリーズのレギュレータには何がありますか?
    A:巻tagRP2350 シリーズのレギュレータには XNUMX つのピンがあります。

RP2350 を使用したハードウェア設計 RP2350 マイクロコントローラを使用してボードや製品を構築する

奥付

  • © 2023-2024 ラズベリーパイ株式会社
  • このドキュメントは、Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND) ライセンスの下で提供されています。ビルド日: 2024-08-08 ビルドバージョン: c0acc5b-clean
  • 法的免責事項
  • RASPBERRY PI 製品 (データシートを含む) の技術データおよび信頼性データ (「リソース」) は、随時変更され、RASPBERRY PI LTD (「RPL」) によって「現状のまま」提供され、明示または黙示を問わず、商品性および特定目的への適合性に関する黙示の保証を含むがこれに限定されない、一切の保証を放棄します。適用法によって許可される最大限の範囲において、いかなる場合も RPL は、契約、厳格責任、または不法行為 (過失またはその他を含む) にかかわらず、リソースの使用によって何らかの形で生じた直接的、間接的、偶発的、特別、懲罰的、または結果的な損害 (代替の商品またはサービスの調達、使用、データ、または利益の喪失、または事業の中断を含むがこれらに限定されない) に対して、たとえそのような損害の可能性について通知されていたとしても、いかなる責任理論においても、責任を負わないものとします。
  • RPL は、リソースまたはリソースに記載されている製品に対して、いつでも予告なしに機能強化、改善、修正、その他の変更を行う権利を留保します。
    リソースは、適切なレベルの設計知識を持つ熟練したユーザーを対象としています。リソースの選択と使用、およびリソースに記載されている製品の適用については、ユーザーが単独で責任を負います。ユーザーは、リソースの使用から生じるすべての責任、費用、損害、またはその他の損失に対して RPL を補償し、免責することに同意します。
  • RPL は、ユーザーにリソースを Raspberry Pi 製品と組み合わせてのみ使用する許可を与えます。リソースのその他の使用は禁止されています。その他の RPL または他の第三者の知的財産権に対するライセンスは付与されません。
  • 高リスク活動。Raspberry Pi 製品は、核施設、航空機のナビゲーションまたは通信システム、航空管制、兵器システム、または安全性が極めて重要なアプリケーション (生命維持システムおよびその他の医療機器を含む) の運用など、製品の故障が直接死亡、人身傷害、または重大な物理的損害または環境的損害につながる可能性がある、フェイルセーフ性能を必要とする危険な環境での使用 (「高リスク活動」) を目的として設計、製造されていません。RPL は、高リスク活動への適合性に関する明示的または黙示的な保証を明確に否認し、Raspberry Pi 製品を高リスク活動に使用または組み込むことに対する責任を負いません。
  • Raspberry Pi 製品は、RPL の標準規約に従って提供されます。RPL のリソースの提供は、RPL の標準規約(そこに記載されている免責事項や保証を含みますが、これらに限定されません)を拡張または変更するものではありません。

第1章 はじめに

図1. RP3AのKiCad 2350Dレンダリング 最小設計例ampleRaspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (1)

Raspberry Pi RP2040を初めて発表したとき、私たちは「ミニマル」なデザインも発表しました。ample と付属のガイド「RP2040 を使用したハードウェア設計」では、RP2040 をシンプルな回路基板でどのように使用できるか、またさまざまなコンポーネントが選択された理由について説明されています。RP235x シリーズの登場により、オリジナルの RP2040 Minimal 設計を再検討し、新しい機能と、QFN-2350 パッケージの RP60A と QFN-2350 の RP80B の各パッケージ バリアントを考慮して更新する時期が来ました。繰り返しになりますが、これらの設計は Kicad (7.0) 形式で、ダウンロードできます (https://datasheets.raspberrypi.com/rp2350/Minimal-KiCAD.zip).

 ミニマルボード
オリジナルの Minimal ボードは、RP2040 を実行するために必要な最小限の外部コンポーネントを使用し、すべての IO を公開してアクセスできるようにする、シンプルなリファレンス デザインを提供する試みでした。これは基本的に、電源 (5V ~ 3.3V リニア レギュレータ)、水晶発振器、フラッシュ メモリ、および IO 接続 (マイクロ USB ソケットと GPIO ヘッダー) で構成されていました。新しい RP235x シリーズの Minimal ボードは、ほぼ同じですが、新しいハードウェアのためにいくつかの変更が必要になっています。これに加えて、デザインのミニマルな性質に多少反するにもかかわらず、ブートセルと実行用のボタンをいくつか追加し、別の SWD ヘッダーを追加しました。これにより、今回はデバッグのストレスが大幅に軽減されるはずです。厳密に言えば、デザインにはこれらのボタンは必要ありません。信号はヘッダーで引き続き利用できます。特にコストやスペースを意識する場合やマゾヒスティックな傾向がある場合は、ボタンを省略できます。

 RP2040 と RP235x シリーズ
最も明らかな変更はパッケージです。RP2040 は 7x7mm QFN-56 ですが、RP235x シリーズには現在 60 つの異なるメンバーがあります。同じ QFN-2350 パッケージを共有するデバイスが 2354 つあります。内部フラッシュ ストレージを含まない RP80A と、フラッシュ ストレージを含む RP2354A です。同様に、QFN-2350 にも 60 つの種類があります。フラッシュを含む RP2040B と、フラッシュを含まない RPXNUMXB です。QFN-XNUMX デバイスとオリジナルの RPXNUMX は、共通のヘリコプタを共有しています。tage.

それぞれに 30 個の GPIO があり、そのうち 7 個は ADC にも接続されており、サイズは 7 x 2350 mm です。ただし、RP2040A は RP80 の代替品にはなりません。それぞれのピン数が異なるためです。対照的に、QFN-48 チップには現在 60 個の GPIO があり、そのうち 80 個は ADC 対応です。このため、現在 2350 つの Minimal ボードがあります。2354 つは 80 ピン デバイス用、もう XNUMX つは XNUMX ピン デバイス用です。これらの Minimal ボードは主に内部フラッシュのないパーツ (RPXNUMX) 用に設計されていますが、オンボード フラッシュ メモリを省略するだけで、またはそれをセカンダリ フラッシュ デバイスとして使用することで (これについては後で詳しく説明します)、内部フラッシュ デバイス (RPXNUMX) でも簡単に設計を使用できます。QFN-XNUMX バージョンでは追加の GPIO に対応するためにヘッダーの列が長く、ボードが大きいことを除けば、XNUMX つのボードにほとんど違いはありません。

パッケージ以外では、RP235x シリーズと RP2040 のボードレベルでの最大の違いは電源です。RP235x シリーズには新しい電源ピンがいくつかあり、内部レギュレータも異なります。RP100 の 2040mA リニア レギュレータは 200mA スイッチング レギュレータに置き換えられており、そのため非常に特殊な回路が必要となり、レイアウトには細心の注意が必要です。レイアウトとコンポーネントの選択に厳密に従うことを強くお勧めします。私たちはすでに設計を何度も繰り返して苦労してきましたので、皆さんもそうしなくて済むことを願っています。

図2. RP3BのKiCad 2350Dレンダリング 最小設計例ample Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (2)

 デザイン
ミニマルデザインの意図amp目的は、RP235x シリーズを使用して、不必要に特殊な PCB 技術を使用せずに、安価で簡単に製造できる 2 つのシンプルなボードを作成することです。したがって、最小限のボードは 0.4 層設計で、一般的に入手可能なコンポーネントを使用し、すべてボードの上面にマウントします。大きくて簡単に手作業でハンダ付けできるコンポーネントを使用できればよいのですが、QFN チップのピッチが狭い (0402 mm) ため、すべての GPIO を使用する場合は、1005 (0402 メトリック) 受動コンポーネントの使用が避けられません。XNUMX コンポーネントを手作業でハンダ付けするのは、適切なハンダごてがあればそれほど難しくありませんが、専門の機器なしで QFN をハンダ付けするのはほぼ不可能です。

次のいくつかのセクションでは、追加回路の目的と、なぜこのような選択に至ったのかを説明したいと思います。実際には、パッケージ サイズごとに 1 つずつ、1 つの別々の設計についてお話しするので、できるだけ簡単に説明するようにしました。可能な限り、80 つのボードのすべてのコンポーネント参照は同一であるため、U80、RXNUMX などを参照する場合は、両方のボードに同様に関連します。明らかな例外は、コンポーネントがボードの XNUMX つにのみ存在する場合 (すべての場合で、これはより大きな XNUMX ピンのバリアントになります)、問題のコンポーネントは QFN-XNUMX 設計にのみ存在することです。例:ample、R13 はこのボードにのみ表示されます。

第2章 権力

RP235x シリーズと RP2040 の電源は今回若干異なりますが、最もシンプルな構成でも 3.3V と 1.1V の 235 つの電源が必要です。RP2040x シリーズは、パフォーマンスが高いため消費電力が多く、同時に以前のモデルよりも省電力 (低電力状態の場合) であるため、RP200 のリニア レギュレータはスイッチング レギュレータにアップグレードされました。これにより、高電流 (以前の 100mA と比較して最大 XNUMXmA) での電力効率が向上します。

 新しいオンチップボリュームtageレギュレーター

図3. 内部レギュレータ回路を示す概略図Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (1)

RP2040のリニアレギュレータには、チップ上のDVDDに供給するための3.3V入力と1.1V出力の235つのピンがありました。今回は、RPXNUMXxシリーズのレギュレータにはXNUMXつのピンがあり、動作させるには外部コンポーネントが必要です。これは使いやすさの点で少し後退しているように見えますが、スイッチングレギュレータには利点があります。tagより高い負荷電流でより電力効率が良くなります。

名前が示すように、レギュレータは3.3V入力電圧に接続する内部トランジスタを急速にオン/オフします。tage (VREG_VIN)をVREG_LXピンに接続し、インダクタ(L1)と出力コンデンサ(C7)の助けを借りて、DC出力電圧を生成することができます。tag入力から降圧された電圧です。VREG_FBピンは出力電圧を監視します。tage、スイッチングサイクルのオン/オフ比を調整して、必要な電圧が確実に得られるようにします。tage が維持されます。VREG_VIN から VREG_LX に大電流が切り替えられるため、6V 電源をあまり乱さないように、入力の近くに大きなコンデンサ (C3.3) が必要です。これらの大きなスイッチング電流について言えば、レギュレータには独自のグランド リターン接続である VREG_PGND も付属しています。VREG_VIN と VREG_LX の場合と同様に、この接続のレイアウトは重要であり、VREG_PGND はメイン GND に接続する必要がありますが、すべての大きなスイッチング電流が PGND ピンに直接戻り、GND の残りの部分をあまり乱さないようにする必要があります。

最後のピンは VREG_AVDD で、レギュレータ内のアナログ回路に電力を供給しますが、これはノイズに非常に敏感です。

図4. レギュレータのPCBレイアウトを示す概略図 Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (3)

  • 最小限のボード上のレギュレータのレイアウトは、Raspberry Pi Pico 2のレイアウトと非常によく似ています。この回路の設計には多大な労力が費やされており、可能な限り最高のものにするためにPCBを何度も繰り返して設計する必要がありました。これらのコンポーネントをさまざまな方法で配置しても、レギュレータを「動作」させることができます(つまり、出力電圧を生成する)。tag(コードを実行するのに十分な程度に)適切なレベルでレギュレータを正常に動作させるには、レギュレータを適切な方法で処理する必要があることがわかりました。つまり、適切な出力電圧を生成することです。tagさまざまな負荷電流条件下でのe。
  • これについて実験を行っている間、物理学の不便な世界は必ずしも無視できないということを思い出し、少しがっかりしました。エンジニアである私たちは、主にまさにこれを実行しようとしています。つまり、コンポーネントを単純化し、(多くの場合)重要でない物理的特性を無視し、代わりに興味のある特性に焦点を当てます。たとえば、ampたとえば、単純な抵抗器には抵抗だけでなく、インダクタンスなどもあります。私たちの場合、インダクタには磁場が関連していること、そして重要なことに、コイルの巻き方と電流の方向に応じて磁場が放射されることを (再) 発見しました。また、「完全に」シールドされたインダクタは、皆さんが想像するようなものではないことも思い知らされました。磁場は大幅に減衰しますが、それでもいくらかは逃げてしまいます。インダクタが「正しい向き」であれば、レギュレータのパフォーマンスが大幅に向上することがわかりました。
  • 結局、逆向きのインダクタから放出される磁場がレギュレータ出力コンデンサ (C7) に干渉し、RP2350 内の制御回路を混乱させることが判明しました。インダクタを正しい向きに配置し、ここで使用されている正確なレイアウトとコンポーネントの選択により、この問題は解消されます。インダクタをどの向きに配置しても機能する他のレイアウトやコンポーネントなどが存在することは間違いありませんが、そうするためには PCB スペースがかなり必要になる可能性が高いです。このコンパクトで動作のよいソリューションの開発と改良に費やした多くのエンジニアリング時間を節約するために、この推奨レイアウトを提供しました。
  • さらに言えば、私たちのexを使わないことを選択した場合、ample の場合は、自己責任で行ってください。RP2040 と水晶回路で既に行っているように、特定の部品を使用することを強く推奨します (このドキュメントの水晶のセクションで再度説明します)。
  • これらの小型インダクタの方向性は、コイル巻きの方向を推測することが不可能なため、ほぼ普遍的に無視されており、部品のリールに沿ってランダムに分散されています。より大きなサイズのインダクタケースには極性マークが付いていることがよくありますが、私たちが選択した 0806 (2016 メートル法) ケースサイズには適切なものはありませんでした。このため、Abracon と協力して、極性を示すドットが付いた 3.3μH の部品を製造しました。重要なことに、それらはすべて同じ方向に揃ったリールに入っています。TBD は、販売業者から一般向けに (またはまもなく) 入手可能になります。前述のように、VREG_AVDD 電源はノイズに非常に敏感であるため、フィルタリングする必要があります。VREG_AVDD の消費電流は約 200μA しかないため、33Ω および 4.7μF の RC フィルタで十分であることがわかりました。
  • まとめると、使用するコンポーネントは次のようになります。
    • C6、C7、C9 – 4.7μF (0402、1005 メトリック)
    • L1 – アブラコン 未定 (0806、2016 メトリック)
    •  R3 – 33Ω (0402、1005 メトリック)
  • RP2350 データシートには、レギュレータ レイアウトの推奨事項に関する詳細な説明が記載されています。外部コンポーネントと PCB レイアウトの要件を参照してください。

入力電源

Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (2)

この設計の入力電源接続は、マイクロUSBコネクタの5V VBUSピン(図1のJ5)を介して行われます。これは電子機器に電力を供給する一般的な方法であり、RP2350にはUSB機能があり、このコネクタのデータピンに配線するため、ここでは理にかなっています。この設計では3.3Vのみ必要なので(1.1V電源は内部から供給されます)、この場合は別の外部電圧を使用して、入力5V USB電源を下げる必要があります。tagリニアレギュレータ(低ドロップアウトレギュレータ、LDOとも呼ばれる)のレギュレータです。効率的なスイッチングレギュレータを使用する利点を以前に称賛したので、ここでもそれを使用するのが賢明な選択かもしれませんが、私はシンプルさを選びました。まず、LDOを使用する方がほとんどの場合簡単です。どのサイズのインダクタを使用するか、出力コンデンサのサイズはどれくらいかを計算する必要はありません。また、レイアウトも通常はるかに簡単です。次に、最後の一滴まで電力を節約することがここでの目的ではありません。もしそれが目的なら、スイッチングレギュレータの使用を真剣に検討します。ampRaspberry Pi Pico 2 でこれを行うのは簡単です。そして 2040 番目に、以前 Minimal ボードの RP1117 バージョンで使用した回路を単に「借用」できます。ここで選択した NCP2 (U3.3) は 1V の固定出力を持ち、広く入手可能で、最大 1117A の電流を供給できます。これはほとんどの設計に十分です。NCP10 のデータシートを見ると、このデバイスには入力に 1μF のコンデンサが必要であり、出力にも別のコンデンサが必要であることがわかります (C5 と CXNUMX)。

デカップリングコンデンサ

図6. RP2350電源入力を示す回路図、voltageレギュレータとデカップリングコンデンサRaspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (3)

電源設計のもう2350つの側面は、RP2350に必要なデカップリングコンデンサです。これらはXNUMXつの基本的な機能を提供します。まず、電源ノイズをフィルタリングし、次にRPXNUMX内の回路がすぐに使用できるローカルな電荷供給を提供します。これにより、電圧が上昇するのを防ぎます。tag電流需要が突然増加したときに、すぐ近くのレベルが下がりすぎないようにする必要があります。このため、デカップリングを電源ピンの近くに配置することが重要です。通常、電源ピンごとに 100nF のコンデンサを使用することをお勧めしますが、いくつかの例ではこのルールから外れます。

図7. RP2350の配線とデカップリングを示すレイアウトのセクション Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (4)

  • まず、すべてのチップ ピンをデバイスから離して配線できる十分なスペースを確保するには、使用できるデカップリング コンデンサの量を妥協する必要があります。この設計では、RP53A のピン 54 と 2350 (RP68B のピン 69 と 2350) が 12 つのコンデンサ (図 7 と図 6 の CXNUMX) を共有しています。デバイスのその側には十分なスペースがなく、レギュレータのコンポーネントとレイアウトが優先されるためです。
  • このスペース不足は、より小型の部品や、上下両面に部品を配置した4層PCBなどのより複雑で高価な技術を使用すれば、ある程度は克服できるでしょう。これは設計上のトレードオフです。複雑さとコストを削減する代わりに、デカップリング容量を減らし、コンデンサをチップから最適な位置よりも少し離しました(これによりインダクタンスが増加します)。これにより、設計が動作できる最大速度が制限される可能性があります。tag供給ノイズが大きくなり、許容される最小電圧を下回る可能性がある。tage; ただし、ほとんどのアプリケーションでは、このトレードオフは許容できるはずです。
  • 100nFルールからのもう一つの逸脱は、ボリュームをさらに改善できるようにすることです。tagレギュレータのパフォーマンスを向上させるには、レギュレータとは反対側のチップに配置される C4.7 に 10μF を使用することをお勧めします。

第3章 フラッシュメモリ

 プライマリフラッシュ

図8. プライマリフラッシュメモリとUSB_BOOT回路を示す回路図

Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (4)

  • RP2350 が起動して実行できるプログラム コードを保存できるようにするには、フラッシュ メモリ、具体的にはクアッド SPI フラッシュ メモリを使用する必要があります。ここで選択したデバイスは W25Q128JVS デバイス (図 3 の U8) で、128M ビット チップ (16MB) です。これは、RP2350 がサポートできる最大のメモリ サイズです。特定のアプリケーションでそれほど多くのストレージが必要ない場合は、代わりにより小さく安価なメモリを使用できます。
  • このデータバスは非常に高周波数で、頻繁に使用されるため、RP2350のQSPIピンは、信号の整合性を維持し、周囲の回路のクロストークを減らすために、短い接続を使用してフラッシュに直接配線する必要があります。クロストークとは、XNUMXつの回路ネット上の信号が不要な電圧を誘発する可能性がある場所です。tag隣接する回線に影響を及ぼし、エラーが発生する可能性があります。
  • QSPI_SS信号は特別なケースです。フラッシュに直接接続されていますが、1つの抵抗(正確には3.3つですが、後で説明します)も接続されています。最初の抵抗(RXNUMX)はXNUMXV電源へのプルアップです。フラッシュメモリでは、チップセレクト入力が同じ電圧である必要があります。tagデバイスの電源投入時に、このピンを独自の 3.3V 電源ピンとして使用する必要があります。そうしないと、正しく機能しません。RP2350 の電源が投入されると、QSPI_SS ピンは自動的にデフォルトでプルアップされますが、電源投入時に QSPI_SS ピンの状態が保証されない短い期間があります。プルアップ抵抗を追加することで、この要件が常に満たされることが保証されます。R1 は回路図で DNF (Do Not Fit) とマークされていますが、これは、この特定のフラッシュ デバイスでは外部プルアップが不要であることがわかったためです。ただし、別のフラッシュを使用する場合は、ここに 10kΩ の抵抗を挿入できることが重要になる可能性があるため、念のため含まれています。
  • 6 番目の抵抗 (R1) は 1kΩ の抵抗で、「USB_BOOT」というラベルの付いたプッシュ ボタン (SW2350) に接続されています。これは、QSPI_SS ピンが「ブート ストラップ」として使用されるためです。RP0 はブート シーケンス中にこの I/O の値をチェックし、論理 2350 であることがわかった場合、RP2350 は BOOTSEL モードに戻ります。このモードでは、RP2350 は USB マス ストレージ デバイスとして表示され、コードを直接コピーできます。ボタンを押すだけで QSPI_SS ピンがグランドに引き下げられ、その後デバイスがリセットされると (たとえば、RUN ピンを切り替えるなど)、RP2 はフラッシュの内容を実行しようとする代わりに BOOTSEL モードで再起動します。これらの抵抗 R6 と R9 (R10 と RXNUMX も) はフラッシュ チップの近くに配置する必要があります。これにより、信号に影響を与える可能性のある銅線トラックが長くなるのを回避できます。
  • 上記のすべては、内部フラッシュを持たない RP2350 に特に適用されます。もちろん、RP2354 デバイスには内部 2MB フラッシュ メモリがあるため、外部 U3 メモリは不要であり、U3 は回路図から安全に削除するか、単に未実装のままにすることができます。どちらの場合でも、USB_BOOT スイッチを QSPI_SS に接続したままにして、USB ブート モードに入ることができるようにする必要があります。

 セカンダリフラッシュまたはPSRAM

  • RP235x シリーズは、同じ QSPI ピンを使用して 2354 番目のメモリ デバイスをサポートし、GPIO が追加のチップ セレクトを提供します。したがって、RP3 (内部フラッシュを搭載) を使用している場合は、U3 をセカンダリ フラッシュとして使用したり、PSRAM デバイスに置き換えたりすることもできます。これを行うには、QSPI_SS を U1 から切断し、代わりに適切な GPIO に接続する必要があります。チップ セレクト (XIP_CS0n) として使用できる最も近い GPIO は GPIO0 であるため、R10 から 9Ω を削除して R3 に取り付けると、オンチップ フラッシュに加えて UXNUMX にアクセスできるようになります。tagこの機能により、フラッシュレス RP2350 パーツが恩恵を受けられるように 2350 つの外部メモリ デバイスが用意され、RP4B 用の XNUMX つの Minimal ボードのうち大きい方には、追加のメモリ チップ用のオプションのフットプリント (UXNUMX) が含まれています。

図9. オプションの二次記憶装置を示す概略図

Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (5)

このデバイスを使用するには、当然、R11 (0Ω) と R13 (10KΩ) も実装する必要があります。R11 を追加すると、GPIO0 (XIP_CS1n 信号) が 0 番目のメモリのチップ セレクトに接続されます。GPIO22 のデフォルト状態は電源投入時に低くプルダウンされるため、今回はチップ セレクト ピンのプルアップが絶対に必要です。そうしないと、フラッシュ デバイスが故障します。U4 のローカル電源デカップリングを提供するには、CXNUMX も必要です。

サポートされているフラッシュチップ
初期フラッシュプローブシーケンスは、ボトムが2番目のsを抽出するために使用します。tagフラッシュからのeは、03hシリアル読み取りコマンド、24ビットアドレス指定、および約1MHzのシリアルクロックを使用します。クロック極性とクロック位相のXNUMXつの組み合わせを繰り返し循環し、有効な秒を探します。tage CRC32 チェックサム。
2番目のsとしてtageは、同じ03hシリアル読み取りコマンドを使用して、インプレース実行を自由に構成できます。RP2350は、03ビットアドレス指定で24hシリアル読み取りをサポートするチップ(ほとんどの25シリーズフラッシュデバイスを含む)で、キャッシュされたフラッシュインプレース実行を実行できます。SDKは、exを提供します。ampルセカンドtagCPOL=0 CPHA=0の場合、 https://github.com/raspberrypi/pico-sdk/blob/master/src/rp2350/boot_stage2/boot2_generic_03h.S下部のルーチンを使用してフラッシュプログラミングをサポートするには、デバイスは次のコマンドにも応答する必要があります。

  • 02h 256バイトページプログラム
  • 05h ステータスレジスタ読み取り
  • 06h 書き込み有効ラッチを設定
  • 20時間 4kBセクター消去

RP2350は、さまざまなデュアルSPIおよびQSPIアクセスモードもサポートしています。たとえば、ampル、 https://github.com/raspberrypi/pico-sdk/blob/master/src/rp2350/boot_stage2/boot2_w25q080.S Winbond W25Q シリーズ デバイスをクアッド IO 連続読み取りモード用に構成します。このモードでは、RP2350 がクアッド IO アドレス (コマンド プレフィックスなし) を送信し、フラッシュがクアッド IO データで応答します。

フラッシュ XIP モードでは、フラッシュ デバイスが標準のシリアル コマンドに応答しなくなるため、前述の Winbond 連続読み取りモードのように注意が必要です。RP2350 がリセットされてもフラッシュ デバイスの電源がオフ/オンされない場合、フラッシュがブート ROM のフラッシュ プローブ シーケンスに応答しなくなるため、問題が発生する可能性があります。03h シリアル読み取りを発行する前に、ブート ROM は常に次の固定シーケンスを発行します。これは、さまざまなフラッシュ デバイスで XIP を中止するためのベスト エフォート シーケンスです。

  • CSn=1、IO[3:0]=4'b0000(競合を避けるためプルダウン経由)、×32クロックを発行
  • CSn=0、IO[3:0]=4'b1111(競合を避けるためプルアップ経由)、×32クロックを発行
  • CSn=1
  • CSn=0、MOSI=1'b1(低インピーダンス駆動、他のすべてのI/Oは高インピーダンス駆動)、×16クロックを発行

選択したデバイスが連続読み取りモードのときにこのシーケンスに応答しない場合は、各転送の前にシリアル コマンドが付加された状態に維持する必要があります。そうしないと、RP2350 は内部リセット後に回復できなくなります。
QSPI の詳細については、RP2350 データシートの QSPI メモリ インターフェイス (QMI) を参照してください。

第4章 水晶発振器

図10. 水晶発振器と負荷コンデンサを示す概略図Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (6)

  • 厳密に言えば、RP2350は内部に発振器を持っているため、外部クロックソースを必要としません。しかし、この内部発振器の周波数は明確に定義または制御されておらず、チップごとに異なり、電源電圧も異なるため、tag環境や温度に応じて、安定した外部周波数源を使用することをお勧めします。正確な周波数に依存するアプリケーションは、外部周波数源なしでは不可能です。USBは主要な外部周波数源です。ampル。
  • 外部周波数源の提供は、2つの方法のいずれかで行うことができます。CMOS出力(IOVDD電圧の矩形波)のクロックソースを提供するか、tage) XINピンに、または12MHzの水晶を接続
  • XIN と XOUT。水晶は比較的安価で非常に正確なので、ここでは水晶の使用が推奨されます。
  • この設計に選択した水晶は、ABM8-272-T3 (図 1 の Y10) です。これは、Raspberry Pi Pico および Raspberry Pi Pico 12 で使用されているのと同じ 2MHz 水晶です。水晶自体を損傷することなく、あらゆる状況でクロックが迅速に開始されるように、この水晶を付属の回路とともに使用することを強くお勧めします。水晶の周波数許容範囲は 30ppm で、ほとんどのアプリケーションで十分なはずです。+/-30ppm の周波数許容範囲に加えて、最大 ESR は 50Ω、負荷容量は 10pF で、どちらも付属コンポーネントの選択に影響を及ぼしました。
  • 水晶が所望の周波数で振動するためには、製造業者はそれに必要な負荷容量を指定しており、この場合、それは10pFです。この負荷容量は、水晶の両側に3つずつ、同じ値の4つのコンデンサ(CXNUMXとCXNUMX)を配置することで実現されます。水晶の viewこれらのコンデンサは3つの端子の間に直列に接続されています。基本的な回路理論によれば、これらを組み合わせると(C4*C3)/(C4+C3)の容量が得られ、C4=C3なので単純にC2/XNUMXとなります。この例ではampたとえば、15pF のコンデンサを使用したので、直列の組み合わせは 7.5pF になります。この意図的な負荷容量に加えて、PCB トラックと RP2350 の XIN ピンおよび XOUT ピンから発生する意図しない追加容量、つまり寄生容量の値も追加する必要があります。この値は 3pF と仮定します。この容量は C3 および C4 と並列なので、これを追加して合計負荷容量を 10.5pF にします。これは、目標の 10pF に十分近い値です。ご覧のとおり、PCB トレースの寄生容量は要因であるため、水晶を乱して意図したとおりに発振しないように、寄生容量を小さくする必要があります。レイアウトはできるだけ短くしてください。
  • 50 つ目の考慮事項は、水晶の最大 ESR (等価直列抵抗) です。最大 1Ω のデバイスを選択しました。これは、2kΩ の直列抵抗 (R3.3) と合わせて、IOVDD レベルが 3.3V のときに水晶が過剰駆動されて損傷するのを防ぐのに適切な値であることがわかったためです。ただし、IOVDD が XNUMXV 未満の場合、XIN/XOUT ピンの駆動電流が減少し、 amp水晶の発振器の容量が低い場合、またはまったく発振しない場合もあります。この場合、直列抵抗器の値を小さくする必要があります。ここに示した水晶回路から逸脱した場合、または IOVDD レベルが 3.3V 以外の場合は、あらゆる条件下で水晶が発振し、アプリケーションに問題が発生しないほど十分に速く起動することを確認するために、広範囲にわたるテストが必要になります。

 推奨クリスタル

  • RP2350を使用したオリジナルデザインには、Abracon ABM8-272-T3の使用をお勧めします。ample、ミニマルなデザインexに加えてamp詳しくは、Raspberry Pi Pico 2データシートの付録BにあるPico 2ボードの回路図とPico 2の設計を参照してください。 files.
  • 通常の動作温度範囲で最高のパフォーマンスと安定性を得るには、Abracon ABM8-272-T3 を使用してください。ABM8-272-T3 は、Abracon から直接、または正規販売代理店から入手できます。Pico 2 は、次の仕様を持つ ABM8-272-T3 用に特別に調整されています。
  • 同様の仕様の水晶を使用する場合でも、安定性を確認するためにさまざまな温度範囲で回路をテストする必要があります。
  • 水晶発振器はIOVDD電圧から電力を供給される。tage. その結果、アブラコン結晶とその特定のdamp抵抗は3.3V動作用に調整されています。異なるIO電圧を使用する場合はtage、再調整が必要になります。
  • 水晶パラメータを変更すると、水晶回路に接続されているすべてのコンポーネントが不安定になるリスクがあります。
  • 推奨クリスタルをAbraconまたは再販業者から直接入手できない場合は、 application@raspberrypi.com.

第5章 IO

 USB
図11. RP2350のUSBピンと直列終端を示す回路図

Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (7)

  • RP2350 には、使用するソフトウェアに応じて、ホストまたはデバイスとしてフルスピード (FS) または低速 (LS) USB に使用する 2350 つのピンがあります。すでに説明したように、RP1 は USB マス ストレージ デバイスとしても起動できるため、これらのピンを USB コネクタ (図 5 の J2350) に配線することは理にかなっています。RP27 の USB_DP ピンと USB_DM ピンには、I/O に組み込まれているため、追加のプルアップまたはプルダウン (速度、FS または LS、またはホストかデバイスかを示すために必要) は必要ありません。ただし、これらの I/O には、USB インピーダンス仕様を満たすために、チップの近くに配置した 7Ω の直列終端抵抗 (図 8 の R11 と RXNUMX) が必要です。
  • RP2350はフルスピードデータレート(12Mbps)に制限されていますが、伝送ライン(チップとコネクタを接続する銅線)の特性インピーダンスが、
  • USB仕様は90Ω(差動測定)です。このような1mm厚のボードでは、USB_DPとUSB_DMに0.8mm幅のトラックを使用し、その間に0.15mmのギャップを設けると、差動特性インピーダンスは約90Ωになります。これは、信号がこれらの伝送ラインに沿って可能な限りきれいに伝送され、ノイズを最小限に抑えるためです。tag電子反射により信号の整合性が低下することがあります。これらの伝送ラインが適切に機能するためには、これらのラインの真下にグランドがあることを確認する必要があります。グランドとは、トラックの全長に渡って伸びる、途切れることのないソリッドなグランド銅の領域です。この設計では、最下層の銅層のほぼ全体がグランドに充てられており、USB トラックがグランド以外の上を通過するように特に注意が払われています。ビルドに 1 mm を超える厚さの PCB を選択した場合は、XNUMX つのオプションがあります。トラックと下のグランド間の距離が長いことを補正するために USB 伝送ラインを再設計するか (物理的に不可能な場合もあります)、それを無視して最善の結果を期待するかです。USB FS は非常に寛容ですが、結果はさまざまです。多くのアプリケーションで機能する可能性がありますが、USB 標準に準拠していない可能性があります。

 I/Oヘッダー

図12. QFN2.54バージョンの60mm I/Oヘッダーを示す回路図

Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (8)

  • すでに述べた USB コネクタに加えて、ボードの両側に 2.54 つずつ、2 列 3 mm ヘッダー (図 12 の J30 と J2350) があり、残りの I/O が接続されています。RP48A には 2350 個の GPIO があり、RP13B には XNUMX 個の GPIO があるため、このバージョンの Minimal ボードのヘッダーは、追加のピンに対応するために大きくなっています (図 XNUMX を参照)。
  • これは特定の用途を想定していない汎用設計であるため、I/Oはユーザーが望むように接続できるように用意されています。各ヘッダーの内側の列のピンはI/Oで、外側の列はすべてグランドに接続されています。I/Oコネクタに多くのグランドを含めることをお勧めします。これにより、低インピーダンスのグランドを維持し、また、I/Oコネクタとの間で移動する電流に十分な潜在的なリターンパスを提供するのに役立ちます。
  • I/O 接続。これは、回路を完了するために長いループ経路を取る高速スイッチング信号の戻り電流によって発生する可能性のある電磁干渉を最小限に抑えるために重要です。
  • 両方のヘッダーは同じ 2.54 mm グリッド上にあるため、このボードをブレッドボードなどの他のものに接続しやすくなります。ブレッドボードに取り付けやすくするために、XNUMX 列ヘッダーではなく XNUMX 列ヘッダーのみを取り付けて、外側の列の接地接続を省くことを検討してください。

図13. QFN2.54バージョンの80mm I/Oヘッダーを示す回路図

Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (9)

デバッグコネクタ

図14. SWDデバッグ用のオプションのJSTコネクタを示す回路図

Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (10)
オンチップ デバッグの場合は、RP2350 の SWD インターフェイスに接続することをお勧めします。2.54 つのピン (SWD と SWCLK) は 3mm ヘッダー J2.54 で使用できるため、任意のデバッグ プローブを簡単に接続できます。これに加えて、オプションの JST ヘッダーも用意しました。これにより、Raspberry Pi デバッグ プローブに簡単に接続できます。ソフトウェアをデバッグする場合は、これを使用する必要はありません。XNUMXmm ヘッダーで十分ですが、私はその方が便利だと思います。私は、ボードの端になくても見た目が気に入っているという理由から、水平コネクタを選択しましたが、フットプリントが若干異なりますが、垂直コネクタも使用できます。

ボタン
Minimal デザインには、RP240 バージョンにはなかったボタンが 2350 つではなく XNUMX つあります。XNUMX つは、前に説明したように USB ブート選択用ですが、もう XNUMX つは RUN ピンに接続された「リセット」ボタンです。どちらも厳密には必要ではありません (ただし、USB ブート モードが必要な場合は、BOOTSEL ボタンをヘッダーなどに置き換える必要があります)。スペースやコストが問題になる場合は削除できますが、RPXNUMX の使用がはるかに快適になることは間違いありません。

付録 A: 完全な回路図 - RP2350A バージョン

図15. RP2350Aの最小設計の完全な回路図Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (11) Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (12)

付録 B: 完全な回路図 - RP2350B バージョン

図16. RP2350Bの最小設計の完全な回路図

Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (13) Raspberry-Pi-SC1631-ラズベリー-マイクロコントローラ- (14)

付録 H: ドキュメントのリリース履歴

8年2024月XNUMX日
初回リリース。

ラズベリーパイ
Raspberry PiはRaspberry Pi Ltdの商標です。
ラズベリーパイ株式会社

ドキュメント / リソース

Raspberry Pi SC1631 ラズベリーマイクロコントローラ [pdf] 取扱説明書
SC1631 ラズベリー マイクロコントローラ、SC1631、ラズベリー マイクロコントローラ、マイクロコントローラ

参考文献

コメントを残す

あなたのメールアドレスは公開されません。 必須項目はマークされています *