今年8月9日、英国ラズパイ財団が新しいRaspberry Pi Pico 2(以下Pico 2)を発表しました。Pico 2は、MCU開発者向けMPUです。従来MPU/SBCが採用していたCortex-Aなどの定番MPUコアから、セキュリティTrustZone対応Cortex-M33コアに変わったからです。そこで、MCU開発者向けPico 2開発の連載を始めます。
この連載で筆者を含めたMCU開発者は、最新MPU(Pico 2)のMCU的開発とVisual Studio Code(VSC)習得ができます。狙いは、開発の幅をMCUからMPUへも広げること、Eclipse IDE代替可能性もあるVSC習得の2つです。
※MCU的開発とは、例えばPico 2(RP2350、Cortex-M33 or RISC-V/150MHz、Flash/4MB、RAM/520KB)とMCUでお馴染みの表記をするなど「MCU開発者の視点でMPUを開発」ということです。
Summary:MCU開発者のPico 2開発#1
最新MPU Cortex-M33コアRaspberry Pi Pico 2を使い、MCU開発者案件のMPUへの拡幅、Eclipse IDE代替VSC習得を狙った投稿の1回目を示しました。
投稿#1内容が以下で、投稿背景とPico 2開発ハードウェアを示しています。
・MCU側からみたMPU開発の差
・MCU開発者が最新Raspberry Pi Pico 2 MPUを使うメリット
・Pico 2 MPU開発ハードウェア入手先情報
・TrustZone Cortex-M33 MCU/MPU二刀流開発の勧め
次回は、Pico 2開発ソフトウェアのVSC構築を投稿予定です。本投稿は、今後不定期に続けます。
※MCU(Micro Controller Unit)とMPU/SBC(Micro Processor Unit/Single Board Computer)の差を極簡単に言うと、MCUは価格追及型、一方、MPU/SBCは機能拡張型です(詳細は関連投稿参照)。
MPUとMCU開発差
MCU開発者なら当たり前の事でも、MPU側から見ると違う事柄が、コチラの記事前半で良く判ります。記事からピックアップした具体例が下記です。
・MPUは、ネイティブコード以外の開発もある
・サンプルコードは、全MPUペリフェラルをカバーしていない
・オンチップデバッグ無しのMPUボードもありJTAG/SWDの馴染みが薄い
一方、新しいPico 2が、MCU開発者に向いている理由が下記です。
・MCU開発者に馴染みがあるTrustZone対応Cortex-M33コアMPU
・MCU標準開発環境Eclipse IDE代替可能性のあるVSCが開発環境
・Windows/Macで開発できPico 2ボードとDebug Probe価格も低い
・Cortex-M33とRISC-Vのコア切替えもでき発展性に優れる
・Pico 2でオープンソースソフト/ハード開発を体験できる
つまり、MCU開発者の知識や経験を活かし、新しいPico 2 MPU開発ができます。その結果、低い障壁でMPU開発が始められます。
また、業務とは別の自分のキャリアアップにも役立つと思います(二刀流開発の勧め章参)。
Pico 2 MPU開発ハードウェア入手先
最初の図のPico 2とDebugProbeの2つが、購入するハードウェアです。
新しいPico 2は、従来比、1.5~2倍の高性能と省電力性が特徴です。DebugProbeは、専用ケースに入っており接続ケーブルも付属で使い易いです。
秋月電子通商やスイッチサイエンスなどから購入できます。秋月の方が低価格ですが、取扱数量が少ないとサイト記述があります。
・Raspberry Pi Pico 2:秋月電子、スイッチサイエンス
・Raspberry Pi DebugProbe:秋月電子、スイッチサイエンス
Pico 2開発環境Visual Studio Code
前述の記事後半に、Pico 2開発環境のVSC構築方法と、従来MPUで自作したデバッガー(Picoprobe)を使ったLチカプログラミングが記述されています。
但し、本連載は市販DebugProbeを使います。また、VSC構築は、次回投稿します。先行してPico 2開発環境を構築したい方は、記事を参考にしてください。
Cortex-M33 MCU/MPU二刀流開発の勧め
今から10年後、2034年の日本とエンジニアの記事は興味深いです。
日本の人口減少と共にエンジニアに求められるスキルも変わり、「高度なスキルに加え、より早く開発業務をこなす能力も求められる」という趣旨です。
本稿のPico 2 MPU開発もこの記事の趣旨がベースになっています。つまり、MCU比、MPU開発は、オープンソースソフト/ハードへの対応が良く、早い業務開発に向いています。
IoTに必須のセキュリティ機能を持つTrustZone Cortex-M33を、高度スキルを活かしたMCU、オープンソースソフト/ハードを活かしたMPU、どちらでも開発できれば、顧客要求を満たすエンジニアになれます。
顧客にとって実現手段はMCUでもMPUでも構わない、開発期間とトータルコストが問題です。この問題を解ける開発者、TrustZone対応Cortex-M33のMCUとMPU二刀流開発者が目標です(ワールドチャンピオンドジャースの大谷翔平氏のように)。
Afterword:Pico 2オープンソースハード/ソフト例
MPU/SBC(小さいコンピュータ)の拡張性を支えるオープンソースハード/ソフトは、市場に数多くあります。これらを上手く使えば、MCU比、早く大規模な開発に役立ちます。ここでは、3例を挙げます。
・AI強化:Raspberry Pi AI Kit、13TOPS NPU追加。
・表示デバイス追加:Tiny2350、カラー液晶追加。
・SSD追加:Raspberry Pi SSD Kit、256GB/512GB追加。
極簡単に言うと、機能を拡張したい時は、これらRaspberry対応のオープンソースハード/ソフトを探し、それをPico 2へ組込めばOKです。正にコンピュータへボード追加のイメージです。多くの機能ボードとボードを動かすソフトが、低コストで入手できますので、MCU比、短期間で簡単に機能拡張できるのが、MPUのPico 2です。