今回のフラッシュコントローラICは、PCI Express Gen3対応ボード上に実装して使う。PCI Expressを4レーン用い、フラッシュメモリチップを16系統接続できる「89HF16P04AG3」と、8レーン用い、32系統接続できる「89HF32P08AG3」の2品種がある(図3)。制御可能なフラッシュメモリの容量は、品種にかかわらず2Tバイト(SLC)または4Tバイト(MLC)。
ICの特長は3つある。PCI Express Gen3対応であること、NVMe対応であること、ファームウェアを一部書き換えられることだ。SSDボードを製造する顧客が製品の差別化を図る場合、特に3番目の特長が重要だという。
同ICを採用したボードを開発する場合、開発レイヤーは3層ある(図4)
図4の最上部にあるNVMeデバイスドライバ層は、IDTなどが開発し、Windows向けとLinux向けの標準リファレンスドライバのソースコードが公開されている。中間層はファームウェアだ。最下層はICのハードウェアそのものだ。データ転送を直接担う部分はハードウェアで実行している。一部のフラッシュメモリチップに書き換えが集中しないように制御するウェアレベリング機能は、ファームウェアにあらかじめ書き込んである。
中間層のファームウェアを一部書き換えられることにはどのようなメリットがあるのだろうか。「顧客や製品によって、SSDに求める性能要求が異なる。アクセス性能を最大化したい場合や信頼性を特に高めたい場合など、さまざまだ。例えば、あらかじめ内蔵させたウェアレベリングのアルゴリズムを要求に合うよう顧客側でカスタマイズ可能だ」(Eshghi氏)。
なお、今回のコントローラICはライトバッファを内蔵しており、外部に最大32GバイトのDDR3-1600 DRAMを接続可能だ。「フラッシュメモリ1Tバイト当たり、1Gバイトの外付けDRAMを推奨する」(同氏)。
Copyright © ITmedia, Inc. All Rights Reserved.