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。裸眼ではおそらく見えませんが、 チップ上に記されています)を見ると、先頭の n から これが Nordic Semiconductor 製の部品であることがわかります。 この部品番号を同社の Web サイトで調べると、すぐに product page が見つかります。 そこから、このチップの主な訴求点が 「Bluetooth Low Energy and 2.4 GHz SoC」(SoC は「System on a Chip」の略)であることがわかります。 これで、製品名に RF が入っている理由も説明できます。RF は radio frequency の略です。 さらに、product page からリンクされているこのチップのドキュメントを 少し調べると、product specification が見つかります。そこには、この一見奇妙なチップ名の付け方を説明する 第 10 章「Ordering Information」があります。 ここから次のことがわかります。

  • N52 は MCU のシリーズであり、ほかにも nRF52 MCU があることを示しています
  • 833 は部品コードです
  • QI はパッケージコードで、aQFN73 の略です
  • AA はバリアントコードで、MCU が搭載する RAM とフラッシュメモリの容量を示します。 この場合はフラッシュ 512 キロバイト、RAM 128 キロバイトです
  • 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 ベースのチップ向けの ドキュメントを読んだりツールを使ったりすることがあるでしょう。