SDカードの製造元等を調べてみた

 手元にあるSDカードの製造元等をいくつか調べてみた。なお、本投稿で"SDカード"と表記しているものは特に断りが無い限り"SDメモリカード"の事を指している。

対象

f:id:kachine:20160126024836j:plain
以下、左上からZ字を書く順で結果を張っていく。

結果

 何れも私の手元の個体の場合であり、容量、製造ロット、製品シリーズ等が違えば当然異なる可能性がある。

  • HI DISC

HIDISC microSDXC 64GB class10 UHS1

HIDISC microSDXC 64GB class10 UHS1

f:id:kachine:20160126035846p:plain
Phison Electronics製ですって。HI DISCって製造メーカーじゃないもんね。

※今はFFPでは16GBのみ販売しているっぽいが、調査結果は64GB版。

Lexar SDHCカード Class10 UHS-1 16GB [フラストレーションフリーパッケージ (FFP)] LSD16GBJ200

Lexar SDHCカード Class10 UHS-1 16GB [フラストレーションフリーパッケージ (FFP)] LSD16GBJ200

f:id:kachine:20160126035902p:plain
Barun Electronics製ですって。Lexarが製造しているわけではないのか。

  • ノーブランド (秋葉原東芝チップを強く匂わせるPOP表記)

f:id:kachine:20160126040156p:plain
Phison Electronics製ですって。POPに釣られて2枚同時購入したのだけど、1枚は普通なのだけど、もう1枚がEOS Mでデータが損壊が2度起きて以来使用を避けている。

  • ノーブランド (秋葉原で白プリン表記)

f:id:kachine:20160126040431p:plain
ManufacturerID:0x12が何処製か不明。

Samsung SDHCカード 32GB SAMSUNG EVO Class10 UHS-I対応 MB-SP32D/FFP

Samsung SDHCカード 32GB SAMSUNG EVO Class10 UHS-I対応 MB-SP32D/FFP

f:id:kachine:20160126040640p:plain
Samsung製。

NTTドコモ Eye-Fiカード 01 AWE59006

NTTドコモ Eye-Fiカード 01 AWE59006

f:id:kachine:20160126040711p:plain
ManufacturerID:0x6dが何処製か不明ながらも製品名はきちんとEYEFIなので、どこかが受託製造したのだろう。

f:id:kachine:20160126040934p:plain
ADATA製ですって。手厚いサポートが不要ならADATAでいいんじゃ。

  • ノーブランド(秋葉原で白プリン表記)

f:id:kachine:20160126041131p:plain
Barun Electronics製ですって。これ、安かったのに連写が比較的安定して良いなと思ってたらLexarと同じ製造元か。


原理

 上記ツールの開発者ではないが、SDカードのCIDレジスタ、CSDレジスタ、SCRの情報を取得・表示していると推測される。WindowsからこれらのレジスタにアクセスできるAPIは知る限り無いのだけど、Linux系OSでは容易にアクセスできる模様。それ故、この類のWindowsツールは皆無に近いが、AndroidアプリはSD Insight以外にもいくつか存在する。

 Card IDentificationレジスタの略。以下の情報を保持し、シリアル番号を含むことから察せられる通り、全てのSDメモリカードの個体ごとに異なる。

Name Width[bit] 注記
Manufacture ID 8 カードの製造者を識別するID。SD-3C LLCによって管理及び定義され、製造者に割り当てされる。(*)一覧は部外者には公開されていない模様
OEM/Application ID 16 OEMを識別するIDやコンテンツの配布メディアとして利用される場合のID。SD-3C LLCによって管理及び定義され、製造者に割り当てされる。(*)一覧は部外者には公開されていない模様
Product name 40 製品名
Product revision 8 製品リビジョン
Product serial number 32 製品シリアル番号
reserved 4 予約済
Manufacturing date 12 製造月
CRC7 checksum 7 CIDのチェックサム
not used, always 1 1 未使用

 Card-Specific Dataレジスタの略。データフォーマット、エラー訂正方式、最長データアクセス時間、DSRレジスタの使用可否などカード内容にアクセスするためのデータが含まれる。データフォーマットが含まれることから察せられる通り、このレジスタの一部は書き変え可能。

  • SCR(64bit)

 SD CARD Configuration Registerの略(末尾のRがレジスタだから二重表記を避け本当港ではSCRレジスタとは表記しない)。SDメモリカードのスペックバージョンやCPRM対応有無などの情報を保持するレジスタで、製造元によって設定される。

 他にもレジスタはあるのだけど、SDカードのメタデータとでも呼べそうな主要な情報は、上記3つのレジスタから得られる。
 完全に余談であるが、レジスタとか言ってる時点でSDカードにCPUでも入ってるのかと感づいた方はなかなか鋭いかもしれない。SDメモリカードの中身はフラッシュメモリだけではない。外部から見える金属端子が直接フラッシュメモリに繋がっているのではなく、コントローラに繋がっている。このコントローラの先にフラッシュメモリが繋がっている構造をしており、コントローラのプロセッサにレジスタを有する。詳細に興味ある方は下記を読破することを推奨。
https://www.sdcard.org/jp/downloads/pls/simplified_specs/part1_410.pdf
 平たく表現すると、SDカードスロット搭載機器側のホストコントローラが、SDカード上のコントローラとお話ししてデータ読み書きしてるイメージ。


 話をややこしくすると、上に掲載したSDカードの製造者がカード内のフラッシュメモリの製造者であるかは定かではない。前述の通りSCRレジスタの設定値を書き込むのは製造元とされていることから、コントローラの製造者とManufacturerIDの示すSDカードの製造者は一致すると考えられるが、フラッシュメモリの製造者とは異なる可能性がある。なので、東芝チップに釣られて買ったのにPhison製じゃねーかと言っても、実はフラッシュメモリ自体は本当に東芝製だったりするのかもしれない。


 また、上記の結果を見ると[OEM/Application ID]が仕事してないように見える。前述の通りそのIDはSD-3C LLCが管理してることになっているので、新しい顧客を獲得する都度ID申請なんてやってられないとか、同一スペックなのに顧客ごとに別SKUで管理せざるを得なくなる、すなわち他の顧客には販売できずに不良在庫リスクとか、そういうのが嫌なんでしょうかね。




以上。