Eee PC/SSDの高速化への挑戦!No2.

0
    SSD プチフリを追跡する 構造から見たプチフリ現象1
    [クリックで拡大]

     今回は座学だ。眠いと思ったらスルーして欲しい。
    SSDが内部で何をしているのかを説明する。
    上の画像は、JMF602コントローラの内部構成図だ。検索したらでてきたが、、、コンフィデンシャル(機密)と透かしがある(´・ω・`)。。。変な世の中だ。
    ■PR・・・この記事は完成して、製品化されました。
    Windows 高速化 プチフリバスター
    --->
    Eee PC高速化・SDHCのHDD化 プチフリバスター製品紹介ページ
    ※f2dはプチフリバスターに統合されました。


    SSD プチフリを追跡する 構造から見たプチフリ現象2
    [クリックで拡大]

     残念ながら、JMF602コントローラチップの内部構成図には吸い上げるべき、有意義な情報は見当たらない。。。一般的な概念図だ。。。画像にURLを入れて置いたのでオリジナルを見たい人は確認して欲しい。オリジナルのPDFには一行だけ重要な情報があった。

     「2〜4Kバイトのページングを行うフラッシュメモリに対応する」という意味の文言があった。

     これが重要なのである。フラッシュメモリはページと呼ぶ単位がある。メモリ素子を読み書きする最小単位のことだ。つまり、この文言はJMF602は、2〜4Kバイト単位で読み書きするフラッシュメモリを制御すると宣言している。

    --> フラッシュメモリへのアクセス単位は2〜4Kバイトであることがこれから判る。あるいは、2〜4Kバイトのn倍で扱っているという事だ。

     上の図は、それが実際にSSDまたネットブックでどのような配置を取るかを示す物だ。

    SSD プチフリを追跡する 構造から見たプチフリ現象 ウェアレベリングとは何か?
    [クリックで拡大]

     フラッシュメモリに単純に読み書きするのであればプチフリは起きないと思う。同じフラッシュを採用したSDHCカードなどで遅いという言う理由もあるがプチフリが起きるとは聞いたことがない。筆者の調査不足かもしれないが。。。

     なぜ、プチフリ現象が起きるか、それはフラッシュメモリの寿命に起因してると断言して良いだろう。EeePCの701、S101が搭載しているSSDは廉価なMLC型というフラッシュメモリを採用している。

     このMLC型はメモリ素子の寿命が1万回だそうだ。
    つまり、一つのページを1万回書き込みすると擦り切れる。ちなみにリードは寿命を削る事はないそうである。
    SLC型は10万回だそうである。
    ※この寿命は検索すると記事の作成年代ごと記載が異なることを述べておく。また、大容量化に伴い寿命は短縮化しているという記事も見受けられた。

     Eee PCのようにOSを入れたSSDを考えてみよう。例えば4G−Xで、4Gバイトだ。正味3.6Gバイトとしてこのうち、3GバイトがWindowsやアプリで使用しているとしよう。残り600Mバイトを順繰りに常に読み書き消去したとしよう。空いているメモリだけが優先的に(?)磨り減っていく。

     これを防ぐために各フラッシュメモリが満遍なく磨り減るようにする事をウェアレベリング(平滑化処理)と呼ぶそうだ。

     上の図はこれの一番簡単な説明図だ。各メモリ素子に寿命を示すカウンタを設け、ここに書き込み回数を書き込んで行く物とする。

     ウェアレベリングとは、書き込みをする時に、過去あまり使っていないメモリ素子を探して書き込む事だと思えば良い。

     例えば4GバイトのSSDがあって1ページ4Kバイトとしよう。寿命カウンタは4Kバイトごとにあるとして4000,000,000が4Gバイトだから、1000,000コつまり1メガ個あることになる。

     アクセスがある毎に1メガ個の表を検索していたらカメ化すること請け合いだ。結果、これを回避するために複雑な処理が必要になる。

    SSD プチフリを追跡する 構造から見たプチフリ現象 ウェアレベリングの一つの実装例
    [クリックで拡大]

     ウェアレベリングを素人的に考えたのがこの図だ。2進木とかバイナリーツリーとかBツリーと呼ぶ古典的な手法である。
     ウェアレベリングが結構大変だということを判ってもらいたくてこの図を書いた。

     2進木による管理でウェアレベリングをした場合、まず索引(インデックス)を作る。この索引は書き込み回数で管理する。仮に、0〜10000回までを1000個刻みで索引化するとしよう。

     最初の表は999回以下の書き込みがあった物を管理している。この表は第二索引を示しており、ここではさらに100刻みで表にしている。第三索引は、実際にフラッシュメモリのページの数だけ表を持っている。第三索引の表の内容は対応するフラッシュのページを直接参照している。

            ***
              ***

     フラッシュメモリのページ、HDDで言えばセクタとかクラスタという物だが、寿命に応じて順序を入れ変える必要がある。物理的に並んでいる物を並べ替える事はできないから、このような工夫が必要である。

     第三索引の各項目がHDDの実際の書き込み単位であるセクタ・クラスタだと思って欲しい。例えば、ゼロセクター(あるいはクラスタ)に書き込みがあったとすれば、図に従えば実際にはゼロ開始のNo5のページが実体となる。

            ***
              ***

     ウェアレベリングと一口に片付けているけども、このような複雑な処理が必要になる。。。第一〜三の索引の管理・保守メンテナンスだけでも結構大変だということは判っていただけたと思う。何かのタイミングで、この管理機構をメンテナンスが必要となったら、SSDの読み書きは一時停止する。

     結論から言うとプチフリーズ現象とはまさにこれの事だと言えるだろう。。。

     まさか、実際のSSDが2進木とは思わないが、、、もしそうだとした場合、定期的に各索引をフラッシュメモリに保存しないといけない(´・ω・`)結構な時間がかかるし、、、索引を保存するフラッシュは猛烈な勢いで老化していく。。。(´・ω・`)

     まかり間違うと「本末転倒」なメカニズムであることが判るだろう。

          ***
            ***

     さて、次回は現象学的にどういう時にプチフリが起きるかを説明する。

    PS.
     PFBは最終的に商品化する予定だ。。。しかし、α、β版は広くテスターを募集する予定だ。。。まずは姉妹品「f2d」の正規ユーザには現行版を無償配布を開始した。
     「f2d」正規ユーザ用の支援ソフト「f2dユーティリティ」に(09.04.11)現在編入している。

    PFB プチフリ解決ソフト Eee PC SSDの速度を2倍早速くする
    「f2dユーティリティ」のトップページ --> http://www.dnki.co.jp/content/view/83/79/

    Eee PC SDHC HDD 化
    「f2d」のトップページ --> http://f2d.dnki.co.jp/


    「PeopleLock」の紹介サイト -->
    http://peoplelock.dnki.co.jp/

    コメント
    SSDの寿命が心配で調べていて通りかかりました。
    専門的なことは分かりませんが、興味深くとても勉強になりましたー。
    どう動いているか分かってこそ、なにに気を付けたらいいのかが分かりますネ。
    • 通りすがり
    • 2009/09/11 8:31 AM
    コメントする








       
    この記事のトラックバックURL
    トラックバック

    SSDの高速化ツール Eee PC SDHC HDD 化 フリーウェア プチフリ 退治 解決 根絶に、現象測定ツール USB/SDHCカードブートにより簡単バックアップ フリーウェア USBメモリ、CFなどの不良検出ソフト FeliCa で ログオン フリーウェア USBウィルス対策ソフト フリーウェア 無限乱数式暗号フリーウェア USB ブート 簡単メモリチェック

    TEST1

    USB ブート 簡単メモリチェック

    selected entries

    categories

    archives

    recent comment

    • PBTM v0.1・起動USBによるEee PC・ネットブックのお手軽バックアップシステムを作る
      USBブート拡散部
    • WindowsXPの自動デフラグ機能について
       
    • ASUS Eee PC 701 SD-X日本語版の分解・オーバービューその2
      小林
    • 工人舎PM PM1WX16SA レビュー カスタマイズ 高速化
      meme
    • ★暗号化 Eee Storage/YoStoreの120%活用法
    • ★暗号化 Eee Storage/YoStoreの120%活用法
      ひろちゃん
    • f2dによるEee PC 901・4G-XのCドライブにSDHCを連結して容量を増大させる拡張 Part3.
      nick
    • f2dによるEee PC 901・4G-XのCドライブにSDHCを連結して容量を増大させる拡張 Part3.
      NAO
    • PBTM v0.1・起動USBによるEee PC・ネットブックのお手軽バックアップシステムを作る
      KyonKyon
    • PBTM v0.1・起動USBによるEee PC・ネットブックのお手軽バックアップシステムを作る
      kouichi

    recent trackback

    links

    profile

    search this site.

    others

    mobile

    qrcode

    powered

    無料ブログ作成サービス JUGEM