😅

SPIのNORフラッシュに苦しんだ話

2024/07/04に公開

何の記事?

この記事は、SPIで書き換え出来るNORフラッシュを試す際に苦しんだ話です。

主に型番の違いによって出来る事出来ない事が多く発生したので、型番には気を付けよう。

どのチップの話よ

ウィンボンド・エレクトロニクス社が販売しているシリアルNORフラッシュシリーズ
特に W25Qxxxx シリーズに限定した話です。

特に、Raspberry Pi Picoで使われているW25Q16W25Q128等のSPIフラッシュチップについてです。

https://start-electronics.com/electronics/product/kairo-matome/#Raspberry_Pi_Pico

https://www.winbond.com/hq/product/code-storage-flash-memory/serial-nor-flash/index.html?__locale=ja&partNo=W25Q16JV

電圧シリーズについて

まず、W25Q16には電圧によって型番が変わります。

W25Q16JW -> 1.8V(1.65V ~ 1.95V)

W25Q16JL -> 3V(2.7V~3.6V)

尚、この情報は個別のデーターシートにしか書いていないのでイラっとします。


パッケージについて

これは意外と分かりやすい。

とは言え、同じ8ピンSOICでも

8-Pin SOIC 150-mil

8-Pin SOIC 208-mil

この二種類は大きさ(横幅)が違うので注意が必要。
一般的なSOPは150milなので SNを購入するのが良い(容量によってはラインナップに無いかも)

動作温度シリーズについて

これは2種類だけなので簡単。特に1個から購入できる場ではIしかないので気にしなくても良い

スぺシャツオプションについて

ここまで何個も山を越えて来たんだが、なんだよスペシャルオプションって!!

通常、今までの経験上・・・オプションは普通無く、カスタムで注文した際に付け加えられるような雰囲気なんですが・・・

なんと、スペシャルオプションが付いている事が一般と言う事態が起きてます。

Q が付くものは、QSPIが工場出荷時にイネーブルになっており、更にQSPIのみに固定されている

M が付くものは、SPIモードとQSPIモードを自由にセレクト出来る

はい、ここ超重要です。一番ハマりました。

RaspberryPi Pico はQSPIで読み出しを行う為、Qが付いている物を使用しています。

その為、Picoで買ったフラッシュROMをSPIモードで扱おうと思ったら、どうにもQSPIのフラグが立ったままでクリアする事が出来ませんでした。

SPIで使う際は、Mが付いた型番を選ぶ必要がありました。

普通さ、スペシャルオプションって手に入らないもんだと思うじゃん。

こうやって、シレッとQ付のQSPI固定のがシレッと紛れてるからなぁ・・・

まとめ

資料をよく読もう! 型番をもっと理解しよう! オプションの影響がデカい時もある!

こんなに型番に振り回されるの珍しいなって事で記事にしました。

そんな開発日々です。

それでは、またどこかで
ArtifactNoise合同会社 北神雄太

Discussion