MACアドレス内蔵のフラッシュメモリは開発に真に有用なデバイス
フラッシュメモリはほぼすべての新製品の設計に組み込まれており、その用途は電池駆動のウェアラブル製品からより大規模なライン電源による電子システムなどあらゆる製品に及びます。製品がコードを実行するなら、その本体内にはおそらくNORフラッシュメモリがあるでしょう。と言うのもその決め手は、NOR技術の高速なランダムアクセス、高信頼性、そして低消費電力にあります。
NORと並行して、半導体業界はメモリ密度、電力、アクセス帯域幅、そして性能の限界をさらに広げる新しいフラッシュ技術を世に出し続けています。開発者は今では、XIP(execute-in-place)NORフラッシュデバイスを使用してフラッシュから直接コードを実行できるようになり、ランダムアクセスメモリ(RAM)の必要性が低下し、不揮発性メモリからRAMにコードをコピーする必要がなくなりつつあります。
性能特性の改善に加えて、フラッシュデバイスのスマートさは進化し続けています。新たに登場したフラッシュベースの技術はストレージの域を超えて、データ解析、クラウドインタラクションなど各種サービスの重いプロセッシング負荷に対応するように設計された機能を統合しつつあります。このようなトレンドは、機械学習アルゴリズムに求められる大量のデータを供給する上でフラッシュが中心的な役割を果たす、計算ストレージへの取り組みなどにも直結します。
しかしフラッシュ技術の向上は、技術の最先端をさらに広げて製品の開発者に寄与するのが一番の目的とは限りません。フラッシュ技術には優れたアイデアを取り入れるという側面もあります。
たとえば、Microchip TechnologyのSST26VF0xxBEUというフラッシュデバイスを見てみましょう。これはMicrochip TechnologyのシリアルクワッドI/O(SQI)シリアルNORデバイスであるSST26 SQIファミリの最新製品です。SST26ファミリは、Microchipの子会社、Silicon Storage Technologyが開発したSuperFlash®技術をベースにしており、性能と信頼性を主眼に開発されています。また使い勝手も容易です。開発者はこれらのデバイスをクワッドSPIマスター、たとえば浮動小数点ユニット付きArm®Cortex®-M4FコアをベースとしたMicrochipのSAM D51マイクロコントローラファミリなどに、簡単に接続することができます(図1)。
図1:Microchip TechnologyのシリアルNORフラッシュデバイスであるSST26ファミリは、4つのパラレルシリアルI/Oチャンネルを備えており、クワッドSPI(QSPI)マスターとの高速トランザクションを可能にします。(画像提供:Microchip Technology)
新しいSST26VF0xxBEUシリーズは同じ特性を備えますが、さらにグローバルに一意のMAC(メディアアクセス制御)アドレスを各デバイスに埋め込んでいます。
MACアドレスの難儀な側面とは?
では、なぜ比較的単純な機能強化が開発者にとって特段役に立つのでしょうか?それを理解するには、MACアドレスとそのプロビジョニング方法を実際に見る必要があります。
もちろん、MACアドレスはあらゆるネットワークインターフェースコントローラ(NIC)に付与される一意識別子で、Ethernet、Wi-Fi、その他IEEE802.xテクノロジなどの一般的なコネクティビティオプションに使用されます。正規に構成されたMACアドレスは、24ビットのOUI(Organizationally Unique Identifier)プレフィックスとOUI保有者が決めた24ビットまたは40ビット値の組み合わせにより、48ビットの拡張一意識別子(EUI-48)、またはグローバルに一意の64ビットEUI-64値になります。
MACアドレスは、必ず一意になるようにIEEE Standards Association Registration Authority(RA)によって割り当てられます。IEEE RAは個々のMACアドレスを提供する代わりに、3つの異なるブロックでMACアドレスを提供し、実際に提供される一意のEUIプレフィックスには次の3つの異なる長さがあります。
- OUIに対応する24ビットのプレフィックス。保有者は残りの24ビットを割り当てて、224(1600万超)の一意のMACアドレスを作成可能
- 28ビットプレフィックス。220(100万超)の一意のMACアドレスを作成可能
- 36ビットプレフィックス、212(4,096)の一意のMACアドレスを作成可能
開発者にとって特に重要なもう1つの事実は、ネットワークインターフェース設計に使用するすべての半導体デバイスに、グローバルに一意のEUI-48またはEUI-64が付随するわけではないということです。半導体メーカーは、大量納入先が独自のOUIによるMACアドレスのプロビジョニングを望んでいることを心得ています。生産部品に一意のMACアドレスを含めるように指定されているデバイスファミリであっても、エンジニアリングサンプルとして用いられる部品にはそれらを含まない場合もあります。
こういったことすべてが事態を難しくする原因になりかねないのが、複雑な設計の製品を試作する場合です。製品の例として挙げられるのは、ユーザー機能の大半がネットワーク接続に依存するIoTデバイスやウェアラブルなどです。試作の場合、試作専用に保有している一意のアドレスを再利用するか、開発用ネットワークに対して一意なことが自明のアドホックMACアドレスを使用します。もちろん、難しいのはより広範な統合テストや最終的な顧客検査のために試作を開発現場以外に持ち込む場合で、デモに失敗したり説明があやふやになったりもします。
これまではエンジニアにとって、その唯一の対策はIEEEに対価を支払うことでした。しかしすでに述べたように、IEEEのアドレス割り当てはブロック単位のみです。現状では、IEEE RAがMACアドレススモール(MA-S)ブロックと呼ぶ最小のブロックでも数百ドルの費用が必要です。もちろん一意のプレフィックスの適用や待機など間接的なコストもかかります。匿名モードで自分の個人識別をIEEEパブリックリストに載せない場合は、MA-Sブロックの場合1,000ドル以上を毎年支払い、ブロックが大きくなるごとに1,000ドルずつ加算されます。経済的なコスト以外にも、重要なオフサイトデモの前にはアドレス取得の遅れを考慮したスケジュールを余裕を持って立てないと、後から慌てるかもしれません。
フラッシュ内のMACはグッドアイデア
では、Microchip TechnologyのSST26VF0xxBEUフラッシュメモリデバイスがその独自性でなぜそれほど革新的なのでしょうか。これらのデバイスは単一の容量ごとに提供されるので、開発者は登録プロセスをすべて行わなくとも、グローバルに一意のMACアドレスを取得できます。Microchipはデバイスごとに、デバイスの業界標準SFDP(Serial Flash Discoverable Parameter)テーブルで、一意のEUI-48、EUI-64を261Hおよび268Hの位置にそれぞれにプロビジョニングします。SFDP読み取りを実行すれば、シングルSPIチャンネルでEUI-48アドレスの6オクテットまたはEUI-64アドレスの8オクテットを連続して読み取ることができます。
おそらく読者の方々の設計にはそれなりの容量のフラッシュが必要なのではないでしょうか。Microchipでは、64MBのSST26VF064BEU、32MBのSST26VF032BEU、および16MBのSST26VF016BEUなど各種サイズのデバイスを用意しています。Microchipは以前、同社の2KビットEEPROMデバイスの一部で組み込みMACアドレスを提供していましたが、高密度フラッシュデバイスの登場により部品点数と設計フットプリントを削減できるようになりました。
まとめ
グローバルに一意のMACアドレスは大半のIEEE 802.xネットワーク技術にとって基本要件ですが、ネットワークコネクティビティに使われるすべてのデバイスにこのようなアドレスが付与されているとは限りません。読者の皆さんが試作や少量の製品に取り組むエンジニアまたはメーカーであれば、Microchip TechnologyのSST26VFフラッシュデバイスはMACアドレスが組み込み済みなので、MACアドレスを必要以上に購入せずに済む効率的な選択肢となります。あなたならどうしますか?使ってみますか?
Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.
Visit TechForum


