東京エレクトロン デバイス(TED)は4月10日、Linuxカーネルに標準搭載されているNANDフラッシュメモリデバイスドライバおよびMemory Technology Device(MTD)と組み合わせて、SLC NANDフラッシュメモリを制御するために必要なECC機能をハードウェアで実現するIPマクロ製品「TE5571 ECC」を発表した。

この数年、組込分野でもAndroid OSを搭載した機器が急速に普及しているが、同IPマクロを機器開発者はLinuxカーネル標準搭載NANDフラッシュメモリデバイスドライバ/MTDを接続する「TE5571ドライバ」(TE5571 ECCとともに提供されるドライバ)と併せて組み込むだけで、SLC NANDフラッシュメモリ制御に必要な全機能を容易に実現することができるという。

ドライバ階層図。(1)ファイルシステム(Linuxカーネル標準搭載):ファイル管理。(2)NANDフラッシュメモリ・デバイスドライバ(Linuxカーネル標準搭載):不良ブロック管理およびウェアレべリングなど。(3)Memory Technology Device(MTD):NANDフラッシュメモリに対する読み出し/書き込み/消去などの指示。(4)「TE5571ドライバ」:(3)と(5)の接続。(5)IPマクロ「TE5571 ECC」:4/8ビットエラー訂正用BCH ECC

また、機器開発時に、Linuxのu-bootとLinuxカーネル圧縮イメージをNANDフラッシュメモリに格納しておけば、「TE5571 ECC」が内蔵するハードウェアシーケンサを使って、NANDフラッシュメモリからのシステムブートを行うこともできる。

「TE5571 ECC」の特徴は以下の通り。

  • 4/8ビット訂正を選択可能なBCH符号化/復号化機能ハードウェア内蔵
  • NANDフラッシュメモリからのシステムブート用機能ハードウェアシーケンサ内蔵システムブートプログラムをサンプルコードで提供
  • ブートプログラム用バッファ:1K/2K/4Kバイト選択可能
  • 外部入力クロック:Max.100MHz
  • ホストインタフェース:16ビット
  • NANDフラッシュメモリインタフェース:8ビット

「TE5571ドライバ」の特徴は以下の通り。

  • Linuxカーネル標準搭載NANDフラッシュメモリデバイスドライバ/MTDから「TE5571 ECC」のレジスタへのアクセスを仲介
  • Linuxのメモリデバイス汎用インタフェースMTD準拠
  • Linuxカーネルバージョン:2.6.35
  • ディストリビューション:ubuntu 10.04.4

なお、価格は1ライセンス450万円。ライセンス範囲は、特定単一LSIの開発から量産までとなっている。