Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Nordic nRF52833(「nRF52」、micro:bit v2)

この MCU には、その真下に 73 本の小さな金属製の ピン があります(いわゆる aQFN73 チップです)。 これらのピンは トレース に接続されています。トレースとは、基板上で部品同士をつなぐ配線として機能する、小さな「道路」のようなものです。 MCU は、ピンの電気的特性を動的に変化させることができます。 これは、回路内を電流がどのように流れるかを変えるという点で、照明のスイッチに似ています。 特定のピンに電流を流せるようにしたり流れないようにしたりすることで、そのピンに(トレースを介して)接続された LED をオン/オフできます。

メーカーごとに部品番号の付け方は異なりますが、多くの場合、部品番号を見るだけでその部品に関する情報をある程度読み取れます。 この MCU の部品番号を見ると、N52833 QIAAA0 2024AL とあります。おそらく肉眼では見えませんが、チップ上に記されています。 (MB2 のより新しいリビジョンを持っている場合、この番号は多少異なるかもしれません。これは問題ありません。ただし、N52833 の部分はあるはずです。) 先頭の N は、これが Nordic Semiconductor 製の部品であることを示唆しています。 その部品番号を同社のウェブサイトで調べると、すぐに product page が見つかります。 そこから、このチップの主な売り文句が「Bluetooth Low Energy and 2.4 GHz SoC」であることがわかります(SoC は「System on a Chip」の略です)。また、RF は radio frequency の略なので、これで製品名に RF が入っている理由も説明できます。 さらに、product page からたどれるこのチップのドキュメントを少し調べると、product specification が見つかります。この文書には、第 10 章「Ordering Information」があり、この奇妙なチップ名の説明に割かれています。ここから次のことがわかります。

  • N52 は MCU のシリーズであり、ほかにも nRF52 MCU があることを示しています
  • 833 は部品コードです
  • QI はパッケージコードで、aQFN73 の略です
  • AA はバリアントコードで、MCU がどれだけの RAM とフラッシュメモリを持つかを示します。今回の場合は 512 キロバイトのフラッシュと 128 キロバイトの RAM です
  • A0 はビルドコードで、ハードウェアバージョン(A)と製品構成(0)を示します
  • 2024AL はトラッキングコードなので、あなたのチップでは異なっているかもしれません

もちろん、product specification にはこのチップに関する有用な情報がほかにもたくさん含まれています。 たとえば、このチップが Arm® Cortex™-M4 32 ビット・プロセッサであることなどです。

Arm? Cortex-M4?

このチップが Nordic によって製造されているのだとしたら、Arm とは誰なのでしょうか。 そして、このチップが nRF52833 だとしたら、Cortex-M4 とは何なのでしょうか。

「Arm ベース」のチップがかなり普及している一方で、「Arm」という商標の元になっている企業(Arm Holdings)は、実際には購入できるチップを製造していないと聞くと、驚くかもしれません。 その代わり、彼らの主なビジネスモデルは、チップの一部を 設計 することです。 そして、その設計をメーカーにライセンスし、メーカー側がその設計を(独自の調整を加えることもありますが)実際に販売可能な物理ハードウェアとして実装します。 ここでの Arm の戦略は、自社のチップを設計し、さらに 製造も行う Intel のような企業とは異なります。

Arm はさまざまな設計をライセンスしています。 その中でも「Cortex-M」ファミリーの設計は、主にマイクロコントローラーのコアとして使われます。 たとえば、Cortex-M4(このチップのベースとなっているコア)は、低コストかつ低消費電力向けに設計されています。 Cortex-M7 はそれより高コストですが、その分、より多くの機能と高い性能を備えています。

幸い、この本を読むうえで、さまざまな種類のプロセッサや Cortex の設計について深く知る必要はありません。 ただ、これで自分のデバイスに関する用語について、少し理解が深まったはずです。 あなたが具体的に扱っているのは nRF52833 ですが、nRF52833 は Cortex-M の設計をベースにしているため、Cortex-M ベースのチップ向けのドキュメントを読んだりツールを使ったりすることがあるかもしれません。