SlideShare a Scribd company logo
1 of 12
NVM Casual Talks
~今更聞けないSSDの基本~
2018/10/10
アジェンダ
自己紹介
ごあいさつ
古今東西不揮発メモリ
Why NAND flash memory
SSDの典型的な構造
FTLって何ですか?
2
自己紹介
3
所属
株式会社フィックスターズ
(いろんなハードウェアを使い倒すソフトウェアを作る会社)
過去のお仕事
CPUのマイクロアーキテクチャ設計エンジニア
画像処理ソフトウェア開発チームマネージャ
SSD開発チームのマネージャ
など
現在のお仕事
いろいろやっています
こんばんは!
NANDフラッシュメモリとSSDの
中身をおさらいします
– 詳しい人が多そうなのでさらっと
SSD(Solid State Drive)と言えば?
– NANDフラッシュメモリが使われているらしいよ
– HDDに比べて
• 値段が高い?
– QLC(Quad Level Cell)が出てきた今、お安いSSDも出てきて
いる(Intel SSD 660p 2TB $399 ⇔ Seagate HDD 2TB $100)
• 速い?
– ランダムアクセス性能はQLCでもHDDの2桁速い
• メカ的な衝撃に強いよ
– でもQLC(Quad Level Cell)の寿命は短い…
– そんなQLCヤバい話は後半戦で
4
古今東西不揮発メモリ
 ストレージを作るには?
– データの蓄積と参照ができる
– 書き込んだデータが永続的に参照できる
不揮発デバイスが必要
 不揮発性メモリ
– 電源供給を行わない状態でも書き込まれたデータが消えない半導
体メモリの総称
– 例えば
• FeRAM(強誘電体型)
• MRAM(磁気抵抗型)
• PCM(相変化型)
• ReRAM(抵抗変化型)
• フラッシュメモリ
– EEPROM
(Electrically Erasable Programmable Read-Only Memory)
– NOR Flash Memory
– NAND Flash Memory
– 何が一番いいの?
• ストレージの容量対コストの観点で、NANDフラッシュめちゃ強い
5
詳しくは
福田昭のセミコン業界最前線
https://pc.watch.impress.co.jp/docs/column/semicon/
Why NAND flash memory
 様々なメモリ素子があるが、所詮は集積されたトランジスタ
ご存知の通り微細化には限界が見えてきている
 集積回路のトランジスタ数は18か月毎に倍になるという例のアレ
 ダイ面積≒コスト
 bits/面積でメモリの容量密度が決まる
6
“Microprocessors no longer scale at the level of performance they used to
— the end of what you would call Moore’s Law,
Jensen Huang(nVIDIA CEO)@COMPUTEX TAIPEI2017も
こう言っています
微細化界のグル、2018年9月 An Steegen氏、imecを去る
https://www.semiconportal.com/archive/blog/insiders/hattori/181005-minitualization.html
Why NAND flash memory
ダイ当たりの容量にステータス全振りした
不揮発性メモリ
どうやって容量を稼ぐのか?
– メモリセルあたりの面積
• Cell area factor:4F2で不揮発メモリで最小
– メモリを構成するセルアレイの面積を大きくして、
セルアレイ以外の回路資源(配線)を減らす
– メモリセルあたりの容量を増やす
• 1bit SLC
• 2bit MLC
• 3bit TLC
• 4bit QLC
– 面積が足りない?縦に積めばいいじゃない
• 3D NAND
7
Why NAND flash memory
(配線資源をけちる)
データの読み書きのためには、データを保
持するメモリセルの他に、読出し、書き込
みに必要な配線とロジックを配置する必要
がある
8
Not NAND flash memory NAND flash memory
(注)概念図です
メモリセルごとのアクセスが可能
配線がメモリセル面積を圧迫
複数のメモリセルにまとめてアクセス
減らした配線分の面積をメモリセルに充当
Why NAND flash memory
(配線資源をけちった代償)
 読み/書き/消去単位が大きい
– Program:ページごと(同一ページの上書き不可)
– Read:ページごと
– Erase:ブロックごと
 例
– ページ 16KB
– ブロック 1152ページ(約18MB)
9
Cell array
Plane 0
Cell array
Plane n
Page Buffer Page Buffer
Peripheral
Rowdecoder
Rowdecoder
Rowdecoder
Rowdecoder
ISSCC2018
東芝-WDの3D NANDフラッシュ
「福田昭のセミコン業界最前線」
https://pc.watch.impress.co.jp/docs/column/semicon/1108255.html
Why NAND flash memory(多値化、積層)
 メモリセルあたりの多値化
 積層構造による更なる高集積化
10
東芝メモリHPより
SLC MLC TLC QLC
Bits/cell 1 2 3 4
P/E cycles 100,000 3,000 1,000 100?
Read time 25us 50us 75us >100us?
Program time 200-300us 600-900us 900us-1350us >1500us?
Erase time 1.5-2ms 3ms 5ms >6ms?
出展:https://flashdba.com/2014/07/03/understanding-flash-slc-mlc-and-tlc/
NAND controller
SSDの典型的な構造
 OSからはブロックレイヤドライバからLBA(Logical
Block Address)空間に対してIOコマンドが発行される
 NANDコントローラがホストインタフェース経由でコマ
ンドを解釈
 FTL(Flash Translation Layer)が論理アドレスと物理アド
レスの対応関係を管理
– 不良ブロック管理
• 初期不良ブロック
(歩留まりと製造コストとのトレードオフ)
• 後発不良ブロック
(経年劣化)
– Wear leveling
– 必要に応じて誤り訂正
– Read disturb対策
– Data retention対策
– NANDフラッシュメモリへのインターリーブアクセス
11
OS
File system
Low-level driver
Host interface
Flash Translation Layer(FTL)
不良ブロック管理 Wear leveling
Interleave
Error collection
Garbage collection
Logical to physical
Address mapping
NAND interface
NAND flash memory
FTL(Flash Translation Layer)って何ですか?
 ホストから見たリニアな論理アドレス空間を、NANDフラシュメモ
リの物理アドレスと関連付ける
 FTLの実装によってNANDフラッシュメモリがはじめてストレージ
になる
– 性能や寿命も支配する超重要な役割
– NANDフラッシュメモリちゃんはとってもわがまま
• 世代が変わると性格も変わっちゃう
– 「QLC怖い」に人類はどう立ち向かうのか!!!
12
Host view
LBA space
#0 addr0 write
#1 addr1 write #2 addr1 read
#3 addr1 overwrite
#4 addr1 read
NAND flash
PBA space
#0 addr0 write
#1 addr1 write
#3 addr1 overwrite
#0 LBA0:PBA0
#1 LBA1:PBA1
#3 LBA1:PBA2
NAND flash
LBA-PBA table

More Related Content

What's hot

Hopper アーキテクチャで、変わること、変わらないこと
Hopper アーキテクチャで、変わること、変わらないことHopper アーキテクチャで、変わること、変わらないこと
Hopper アーキテクチャで、変わること、変わらないことNVIDIA Japan
 
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!NGINX, Inc.
 
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門Fixstars Corporation
 
2012/11/14 softlab_study 発表資料「SSDの基礎」
2012/11/14 softlab_study 発表資料「SSDの基礎」2012/11/14 softlab_study 発表資料「SSDの基礎」
2012/11/14 softlab_study 発表資料「SSDの基礎」Ryo Okubo
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)Kuniyasu Suzaki
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームKouhei Sutou
 
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)Takeshi HASEGAWA
 
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編Yuki Morishita
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門大樹 小倉
 
できる!並列・並行プログラミング
できる!並列・並行プログラミングできる!並列・並行プログラミング
できる!並列・並行プログラミングPreferred Networks
 
UEFIベアメタルプログラミング
UEFIベアメタルプログラミングUEFIベアメタルプログラミング
UEFIベアメタルプログラミングYuma Ohgami
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Kohei Tokunaga
 
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門Fixstars Corporation
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
トランザクションの設計と進化
トランザクションの設計と進化トランザクションの設計と進化
トランザクションの設計と進化Kumazaki Hiroki
 
RISC-Vのセキュリティ技術(TEE, Root of Trust, Remote Attestation)
RISC-Vのセキュリティ技術(TEE, Root of Trust, Remote Attestation)RISC-Vのセキュリティ技術(TEE, Root of Trust, Remote Attestation)
RISC-Vのセキュリティ技術(TEE, Root of Trust, Remote Attestation)Kuniyasu Suzaki
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
SQLアンチパターン - 開発者を待ち受ける25の落とし穴SQLアンチパターン - 開発者を待ち受ける25の落とし穴
SQLアンチパターン - 開発者を待ち受ける25の落とし穴Takuto Wada
 
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみたOPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみたYoshio Hanawa
 

What's hot (20)

Hopper アーキテクチャで、変わること、変わらないこと
Hopper アーキテクチャで、変わること、変わらないことHopper アーキテクチャで、変わること、変わらないこと
Hopper アーキテクチャで、変わること、変わらないこと
 
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
NGINXセミナー(基本編)~いまさら聞けないNGINXコンフィグなど基本がわかる!
 
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門
 
2012/11/14 softlab_study 発表資料「SSDの基礎」
2012/11/14 softlab_study 発表資料「SSDの基礎」2012/11/14 softlab_study 発表資料「SSDの基礎」
2012/11/14 softlab_study 発表資料「SSDの基礎」
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
 
PostgreSQLバックアップの基本
PostgreSQLバックアップの基本PostgreSQLバックアップの基本
PostgreSQLバックアップの基本
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
 
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)
 
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門
 
できる!並列・並行プログラミング
できる!並列・並行プログラミングできる!並列・並行プログラミング
できる!並列・並行プログラミング
 
UEFIベアメタルプログラミング
UEFIベアメタルプログラミングUEFIベアメタルプログラミング
UEFIベアメタルプログラミング
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
トランザクションの設計と進化
トランザクションの設計と進化トランザクションの設計と進化
トランザクションの設計と進化
 
RISC-Vのセキュリティ技術(TEE, Root of Trust, Remote Attestation)
RISC-Vのセキュリティ技術(TEE, Root of Trust, Remote Attestation)RISC-Vのセキュリティ技術(TEE, Root of Trust, Remote Attestation)
RISC-Vのセキュリティ技術(TEE, Root of Trust, Remote Attestation)
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
SQLアンチパターン - 開発者を待ち受ける25の落とし穴SQLアンチパターン - 開発者を待ち受ける25の落とし穴
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
 
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみたOPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
 

Similar to NVMCT #1 ~今さら聞けないSSDの基本~

[D17]DBエンジニアのための最新HW講座 by Masaya Ishikawa
[D17]DBエンジニアのための最新HW講座 by Masaya Ishikawa[D17]DBエンジニアのための最新HW講座 by Masaya Ishikawa
[D17]DBエンジニアのための最新HW講座 by Masaya IshikawaInsight Technology, Inc.
 
qpstudy 2014.04 ハードウェア設計の勘所
qpstudy 2014.04 ハードウェア設計の勘所qpstudy 2014.04 ハードウェア設計の勘所
qpstudy 2014.04 ハードウェア設計の勘所Takeshi HASEGAWA
 
Exchange hdd with_ssd
Exchange hdd with_ssdExchange hdd with_ssd
Exchange hdd with_ssdOgataAyaka
 
B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Is...
B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Is...B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Is...
B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Is...Insight Technology, Inc.
 
CrystalDiskMark & CrystalDiskInfo 開発裏話
CrystalDiskMark & CrystalDiskInfo 開発裏話CrystalDiskMark & CrystalDiskInfo 開発裏話
CrystalDiskMark & CrystalDiskInfo 開発裏話hiyohiyo
 
osoljp201105_ZFSjiman_nslope
osoljp201105_ZFSjiman_nslopeosoljp201105_ZFSjiman_nslope
osoljp201105_ZFSjiman_nslopeNoriyasu Sakaue
 
不揮発性メモリ(NVM)とはなにか
不揮発性メモリ(NVM)とはなにか不揮発性メモリ(NVM)とはなにか
不揮発性メモリ(NVM)とはなにかHiro Yoshioka
 
20170211_pronama_CrystalDiskMark_UWP
20170211_pronama_CrystalDiskMark_UWP20170211_pronama_CrystalDiskMark_UWP
20170211_pronama_CrystalDiskMark_UWPhiyohiyo
 
佐野裕章 Virident 社製半導体ストレージ flash max の検証
佐野裕章 Virident 社製半導体ストレージ flash max の検証佐野裕章 Virident 社製半導体ストレージ flash max の検証
佐野裕章 Virident 社製半導体ストレージ flash max の検証Hiroaki Sano
 
20110805 hddssd research
20110805 hddssd research20110805 hddssd research
20110805 hddssd researchYusei Yamanaka
 
10分で分かるデータストレージ
10分で分かるデータストレージ10分で分かるデータストレージ
10分で分かるデータストレージTakashi Hoshino
 
SSHDノートPC高速化 / Let's note CF-S9
SSHDノートPC高速化 / Let's note CF-S9SSHDノートPC高速化 / Let's note CF-S9
SSHDノートPC高速化 / Let's note CF-S9Yukio Saito
 
NUCで始めるVMware Tanzu
NUCで始めるVMware TanzuNUCで始めるVMware Tanzu
NUCで始めるVMware TanzuHirotaka Sato
 
Meetup 2104 my_homenutanixce_mizuta
Meetup 2104 my_homenutanixce_mizutaMeetup 2104 my_homenutanixce_mizuta
Meetup 2104 my_homenutanixce_mizutaYusuke Mizuta
 
[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...
[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...
[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...Insight Technology, Inc.
 
Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)
Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)
Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)Masahiro Tsuji
 
04 これが(多分)最後! ベンチマークs
04 これが(多分)最後! ベンチマークs04 これが(多分)最後! ベンチマークs
04 これが(多分)最後! ベンチマークsMonta Yashi
 
NASのHDDが死にかけた話
NASのHDDが死にかけた話NASのHDDが死にかけた話
NASのHDDが死にかけた話akimichi Yamada
 

Similar to NVMCT #1 ~今さら聞けないSSDの基本~ (20)

[D17]DBエンジニアのための最新HW講座 by Masaya Ishikawa
[D17]DBエンジニアのための最新HW講座 by Masaya Ishikawa[D17]DBエンジニアのための最新HW講座 by Masaya Ishikawa
[D17]DBエンジニアのための最新HW講座 by Masaya Ishikawa
 
qpstudy 2014.04 ハードウェア設計の勘所
qpstudy 2014.04 ハードウェア設計の勘所qpstudy 2014.04 ハードウェア設計の勘所
qpstudy 2014.04 ハードウェア設計の勘所
 
20111028ssmjp
20111028ssmjp20111028ssmjp
20111028ssmjp
 
Exchange hdd with_ssd
Exchange hdd with_ssdExchange hdd with_ssd
Exchange hdd with_ssd
 
B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Is...
B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Is...B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Is...
B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Is...
 
CrystalDiskMark & CrystalDiskInfo 開発裏話
CrystalDiskMark & CrystalDiskInfo 開発裏話CrystalDiskMark & CrystalDiskInfo 開発裏話
CrystalDiskMark & CrystalDiskInfo 開発裏話
 
osoljp201105_ZFSjiman_nslope
osoljp201105_ZFSjiman_nslopeosoljp201105_ZFSjiman_nslope
osoljp201105_ZFSjiman_nslope
 
不揮発性メモリ(NVM)とはなにか
不揮発性メモリ(NVM)とはなにか不揮発性メモリ(NVM)とはなにか
不揮発性メモリ(NVM)とはなにか
 
20170211_pronama_CrystalDiskMark_UWP
20170211_pronama_CrystalDiskMark_UWP20170211_pronama_CrystalDiskMark_UWP
20170211_pronama_CrystalDiskMark_UWP
 
佐野裕章 Virident 社製半導体ストレージ flash max の検証
佐野裕章 Virident 社製半導体ストレージ flash max の検証佐野裕章 Virident 社製半導体ストレージ flash max の検証
佐野裕章 Virident 社製半導体ストレージ flash max の検証
 
20110805 hddssd research
20110805 hddssd research20110805 hddssd research
20110805 hddssd research
 
10分で分かるデータストレージ
10分で分かるデータストレージ10分で分かるデータストレージ
10分で分かるデータストレージ
 
Toshiba SSD catalog
Toshiba SSD catalogToshiba SSD catalog
Toshiba SSD catalog
 
SSHDノートPC高速化 / Let's note CF-S9
SSHDノートPC高速化 / Let's note CF-S9SSHDノートPC高速化 / Let's note CF-S9
SSHDノートPC高速化 / Let's note CF-S9
 
NUCで始めるVMware Tanzu
NUCで始めるVMware TanzuNUCで始めるVMware Tanzu
NUCで始めるVMware Tanzu
 
Meetup 2104 my_homenutanixce_mizuta
Meetup 2104 my_homenutanixce_mizutaMeetup 2104 my_homenutanixce_mizuta
Meetup 2104 my_homenutanixce_mizuta
 
[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...
[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...
[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...
 
Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)
Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)
Sheepdogを使ってみて分かったこと(第六回ストレージ研究会発表資料)
 
04 これが(多分)最後! ベンチマークs
04 これが(多分)最後! ベンチマークs04 これが(多分)最後! ベンチマークs
04 これが(多分)最後! ベンチマークs
 
NASのHDDが死にかけた話
NASのHDDが死にかけた話NASのHDDが死にかけた話
NASのHDDが死にかけた話
 

More from Fixstars Corporation

製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptxFixstars Corporation
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編Fixstars Corporation
 
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~Fixstars Corporation
 
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~Fixstars Corporation
 
株式会社フィックスターズの会社説明資料(抜粋)
株式会社フィックスターズの会社説明資料(抜粋)株式会社フィックスターズの会社説明資料(抜粋)
株式会社フィックスターズの会社説明資料(抜粋)Fixstars Corporation
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編Fixstars Corporation
 
Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)Fixstars Corporation
 
Jetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてJetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてFixstars Corporation
 
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~Fixstars Corporation
 
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化Fixstars Corporation
 
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例Fixstars Corporation
 
株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)Fixstars Corporation
 
株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)Fixstars Corporation
 
ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方
ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方
ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方Fixstars Corporation
 
AIチップ戦国時代における深層学習モデルの推論の最適化と実用的な運用を可能にするソフトウェア技術について
AIチップ戦国時代における深層学習モデルの推論の最適化と実用的な運用を可能にするソフトウェア技術についてAIチップ戦国時代における深層学習モデルの推論の最適化と実用的な運用を可能にするソフトウェア技術について
AIチップ戦国時代における深層学習モデルの推論の最適化と実用的な運用を可能にするソフトウェア技術についてFixstars Corporation
 
株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)Fixstars Corporation
 
第8回 社内プログラミングコンテスト 結果発表会
第8回社内プログラミングコンテスト 結果発表会第8回社内プログラミングコンテスト 結果発表会
第8回 社内プログラミングコンテスト 結果発表会Fixstars Corporation
 
第8回 社内プログラミングコンテスト 第1位 taiyo
第8回社内プログラミングコンテスト 第1位 taiyo第8回社内プログラミングコンテスト 第1位 taiyo
第8回 社内プログラミングコンテスト 第1位 taiyoFixstars Corporation
 
第8回 社内プログラミングコンテスト 第2位 fy999
第8回社内プログラミングコンテスト 第2位 fy999第8回社内プログラミングコンテスト 第2位 fy999
第8回 社内プログラミングコンテスト 第2位 fy999Fixstars Corporation
 
第8回 社内プログラミングコンテスト 第3位 logicmachine
第8回社内プログラミングコンテスト 第3位 logicmachine第8回社内プログラミングコンテスト 第3位 logicmachine
第8回 社内プログラミングコンテスト 第3位 logicmachineFixstars Corporation
 

More from Fixstars Corporation (20)

製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
製造業向け量子コンピュータ時代のDXセミナー_生産計画最適化_20220323.pptx
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
 
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
 
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
 
株式会社フィックスターズの会社説明資料(抜粋)
株式会社フィックスターズの会社説明資料(抜粋)株式会社フィックスターズの会社説明資料(抜粋)
株式会社フィックスターズの会社説明資料(抜粋)
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
 
Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)
 
Jetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてJetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けて
 
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
 
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
金融業界向けセミナー 量子コンピュータ時代を見据えた組合せ最適化
 
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例
 
株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)
 
株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)
 
ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方
ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方
ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方
 
AIチップ戦国時代における深層学習モデルの推論の最適化と実用的な運用を可能にするソフトウェア技術について
AIチップ戦国時代における深層学習モデルの推論の最適化と実用的な運用を可能にするソフトウェア技術についてAIチップ戦国時代における深層学習モデルの推論の最適化と実用的な運用を可能にするソフトウェア技術について
AIチップ戦国時代における深層学習モデルの推論の最適化と実用的な運用を可能にするソフトウェア技術について
 
株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)株式会社フィックスターズ 会社説明資料(抜粋)
株式会社フィックスターズ 会社説明資料(抜粋)
 
第8回 社内プログラミングコンテスト 結果発表会
第8回社内プログラミングコンテスト 結果発表会第8回社内プログラミングコンテスト 結果発表会
第8回 社内プログラミングコンテスト 結果発表会
 
第8回 社内プログラミングコンテスト 第1位 taiyo
第8回社内プログラミングコンテスト 第1位 taiyo第8回社内プログラミングコンテスト 第1位 taiyo
第8回 社内プログラミングコンテスト 第1位 taiyo
 
第8回 社内プログラミングコンテスト 第2位 fy999
第8回社内プログラミングコンテスト 第2位 fy999第8回社内プログラミングコンテスト 第2位 fy999
第8回 社内プログラミングコンテスト 第2位 fy999
 
第8回 社内プログラミングコンテスト 第3位 logicmachine
第8回社内プログラミングコンテスト 第3位 logicmachine第8回社内プログラミングコンテスト 第3位 logicmachine
第8回 社内プログラミングコンテスト 第3位 logicmachine
 

NVMCT #1 ~今さら聞けないSSDの基本~

  • 4. こんばんは! NANDフラッシュメモリとSSDの 中身をおさらいします – 詳しい人が多そうなのでさらっと SSD(Solid State Drive)と言えば? – NANDフラッシュメモリが使われているらしいよ – HDDに比べて • 値段が高い? – QLC(Quad Level Cell)が出てきた今、お安いSSDも出てきて いる(Intel SSD 660p 2TB $399 ⇔ Seagate HDD 2TB $100) • 速い? – ランダムアクセス性能はQLCでもHDDの2桁速い • メカ的な衝撃に強いよ – でもQLC(Quad Level Cell)の寿命は短い… – そんなQLCヤバい話は後半戦で 4
  • 5. 古今東西不揮発メモリ  ストレージを作るには? – データの蓄積と参照ができる – 書き込んだデータが永続的に参照できる 不揮発デバイスが必要  不揮発性メモリ – 電源供給を行わない状態でも書き込まれたデータが消えない半導 体メモリの総称 – 例えば • FeRAM(強誘電体型) • MRAM(磁気抵抗型) • PCM(相変化型) • ReRAM(抵抗変化型) • フラッシュメモリ – EEPROM (Electrically Erasable Programmable Read-Only Memory) – NOR Flash Memory – NAND Flash Memory – 何が一番いいの? • ストレージの容量対コストの観点で、NANDフラッシュめちゃ強い 5 詳しくは 福田昭のセミコン業界最前線 https://pc.watch.impress.co.jp/docs/column/semicon/
  • 6. Why NAND flash memory  様々なメモリ素子があるが、所詮は集積されたトランジスタ ご存知の通り微細化には限界が見えてきている  集積回路のトランジスタ数は18か月毎に倍になるという例のアレ  ダイ面積≒コスト  bits/面積でメモリの容量密度が決まる 6 “Microprocessors no longer scale at the level of performance they used to — the end of what you would call Moore’s Law, Jensen Huang(nVIDIA CEO)@COMPUTEX TAIPEI2017も こう言っています 微細化界のグル、2018年9月 An Steegen氏、imecを去る https://www.semiconportal.com/archive/blog/insiders/hattori/181005-minitualization.html
  • 7. Why NAND flash memory ダイ当たりの容量にステータス全振りした 不揮発性メモリ どうやって容量を稼ぐのか? – メモリセルあたりの面積 • Cell area factor:4F2で不揮発メモリで最小 – メモリを構成するセルアレイの面積を大きくして、 セルアレイ以外の回路資源(配線)を減らす – メモリセルあたりの容量を増やす • 1bit SLC • 2bit MLC • 3bit TLC • 4bit QLC – 面積が足りない?縦に積めばいいじゃない • 3D NAND 7
  • 8. Why NAND flash memory (配線資源をけちる) データの読み書きのためには、データを保 持するメモリセルの他に、読出し、書き込 みに必要な配線とロジックを配置する必要 がある 8 Not NAND flash memory NAND flash memory (注)概念図です メモリセルごとのアクセスが可能 配線がメモリセル面積を圧迫 複数のメモリセルにまとめてアクセス 減らした配線分の面積をメモリセルに充当
  • 9. Why NAND flash memory (配線資源をけちった代償)  読み/書き/消去単位が大きい – Program:ページごと(同一ページの上書き不可) – Read:ページごと – Erase:ブロックごと  例 – ページ 16KB – ブロック 1152ページ(約18MB) 9 Cell array Plane 0 Cell array Plane n Page Buffer Page Buffer Peripheral Rowdecoder Rowdecoder Rowdecoder Rowdecoder ISSCC2018 東芝-WDの3D NANDフラッシュ 「福田昭のセミコン業界最前線」 https://pc.watch.impress.co.jp/docs/column/semicon/1108255.html
  • 10. Why NAND flash memory(多値化、積層)  メモリセルあたりの多値化  積層構造による更なる高集積化 10 東芝メモリHPより SLC MLC TLC QLC Bits/cell 1 2 3 4 P/E cycles 100,000 3,000 1,000 100? Read time 25us 50us 75us >100us? Program time 200-300us 600-900us 900us-1350us >1500us? Erase time 1.5-2ms 3ms 5ms >6ms? 出展:https://flashdba.com/2014/07/03/understanding-flash-slc-mlc-and-tlc/
  • 11. NAND controller SSDの典型的な構造  OSからはブロックレイヤドライバからLBA(Logical Block Address)空間に対してIOコマンドが発行される  NANDコントローラがホストインタフェース経由でコマ ンドを解釈  FTL(Flash Translation Layer)が論理アドレスと物理アド レスの対応関係を管理 – 不良ブロック管理 • 初期不良ブロック (歩留まりと製造コストとのトレードオフ) • 後発不良ブロック (経年劣化) – Wear leveling – 必要に応じて誤り訂正 – Read disturb対策 – Data retention対策 – NANDフラッシュメモリへのインターリーブアクセス 11 OS File system Low-level driver Host interface Flash Translation Layer(FTL) 不良ブロック管理 Wear leveling Interleave Error collection Garbage collection Logical to physical Address mapping NAND interface NAND flash memory
  • 12. FTL(Flash Translation Layer)って何ですか?  ホストから見たリニアな論理アドレス空間を、NANDフラシュメモ リの物理アドレスと関連付ける  FTLの実装によってNANDフラッシュメモリがはじめてストレージ になる – 性能や寿命も支配する超重要な役割 – NANDフラッシュメモリちゃんはとってもわがまま • 世代が変わると性格も変わっちゃう – 「QLC怖い」に人類はどう立ち向かうのか!!! 12 Host view LBA space #0 addr0 write #1 addr1 write #2 addr1 read #3 addr1 overwrite #4 addr1 read NAND flash PBA space #0 addr0 write #1 addr1 write #3 addr1 overwrite #0 LBA0:PBA0 #1 LBA1:PBA1 #3 LBA1:PBA2 NAND flash LBA-PBA table