您好,欢迎访问三七文档
Sang-WonLee&Jin-SooKimSungkyunkwanUniversity{swlee,jinsookim}@skku.edu@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu2Outline▪Introductiontoflashmemory&SSD▪TheOpenSSDproject▪JasmineHardware▪JasmineFirmwareIntroductiontoFlashMemoryandSSDKCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu4StorageDeviceMetrics▪Capacity($/GB):HarddiskFlashSSD▪Bandwidth(MB/sec):HarddiskFlashSSD▪Latency(IOPS):HarddiskFlashSSD▪Weight/energy/shockresistance/heat&cooling….•HarddiskFlashSSD▪e.g.Harddisk•7.2KHDD:50$/1TB/100MB/s/100IOPS•15KHDD:250$/72GB/200MB/s/500IOPS•TheHDDpriceissaidtobeproportionaltoIOPS,notcapacity.KCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu5NANDApplications▪USB▪FlashCards•CompactFlash,MMC,SD/miniSD,xD,…▪UbiquitousCE•MP3,Smartphone,Navigator,DTV,Set-Up▪HybridHDD,IntelTurboMemory,e-MMC▪FlashSSDsforPC/Laptop,EnterpriseKCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu6NANDFlashDeviceOrganizationSource:MicronTechnology,Inc.KCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu7HDDvs.FlashMemoryChip▪Erase-before-overwrite▪Nomechanicallatency▪Asymmetricread/writespeed111111111101101011111111write(program)eraseKCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu8NANDFlashTypes(1)▪SLCNANDflash•Smallblock(≤1Gb)•Largeblock(≥1Gb)▪MLCNANDflash•2bits/cell▪TLCNANDflash•3bits/cellSource:MicronTechnology,Inc.KCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu9NANDFlashTypes(2)SLCNAND1(smallblock)SLCNAND2(largeblock)MLCNAND3Pagesize(Bytes)512+162,048+644,096+128Pages/Block3264128Blocksize16KB128KB512KBtR(read)15μs(max)20μs(max)50μs(max)tPROG(program)200μs(typ)500μs(max)200μs(typ)700μs(max)600μs(typ)1,200μs(max)tBERS(erase)2ms(typ)3ms(max)1.5ms(typ)2ms(max)3ms(typ)NOP1(main),2(spare)41EnduranceCycles100K100K10KECC(per512Bytes)1bitECC2bitsEDC1bitECC2bitsEDC4bitsECC5bitsEDC1SamsungK9F1208X0C(512Mb)2SamsungK9K8G08U0A(8Gb)3MicronTechnologyInc.KCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu10HDDsvs.SSDs(1)2.5”HDDFlashSSD(101x70x9.3mm)1.8”HDDFlashSSD(78.5x54x4.15mm)TopBottomKCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu11HDDsvs.SSDs(2)1Source:=6585712Source:(AsofMar.17,2011)FeatureSSD(Samsung)HDD(Seagate)ModelMMDOE56G5MXP(PM800)ST9500420AS(Momentus7200.4)Capacity256GB(16GbMLCx128,8channels)500GB(2Discs,4Heads,7200RPM)Formfactor2.5”Weight:84g2.5”Weight:110gHostinterfaceSerialATA-2(3.0Gbps)Hosttransferrate:300MBSerialATA-2(3.0Gbps)Hosttransferrate:300MBPowerconsumptionActive:0.26WIdle/Standby/Sleep:0.15WActive:2.1W(Read),2.2W(Write)Idle:0.69W,Standby/Sleep:0.2WPerformanceSequentialread:Upto220MB/sSequentialwrite:Upto185MB/sPower-ontoready:4.5secAveragelatency:4.17msecMeasuredperformance1(OnMacBookPro,256KBforsequential,4KBforrandom)Sequentialread:176.73MB/sSequentialwrite:159.98MB/sRandomread:10.56MB/sRandomwrite:2.93MB/sSequentialread:86.07MB/sSequentialwrite:84.64MB/sRandomread:0.61MB/sRandomwrite:1.28MB/sPrice2539,190won80,400wonKCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu12FlashSSDBlockDiagram▪e.g.SamsungSSD–somewhatoldmodelParallelism/InterleavingforLargeBandwidthPata/Sata/Scsi/SAS….MorePowerfulCPU,BiggerSDRAMKCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu13StorageAbstraction▪Abstractiongivenbyblockdevicedrivers:▪Operations•Identify():returnsN•Read(startsector#,#ofsectors)•Write(startsector#,#ofsectors,data)512B512B512B01N-1Source:SangLyulMin(SeoulNationalUniv.)KCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu14WhatisFTL?▪AsoftwarelayertomakeNANDflashfullyemulatetraditionalblockdevices(ordisks)+DeviceDriverReadWriteEraseFileSystemReadSectorsWriteSectorsFlashMemoryMismatch!+DeviceDriverFlashMemoryFTL+ReadSectorsWriteSectorsFileSystemReadSectorsWriteSectorsSource:ZeenInfo.Tech.KCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu15RolesofFTL▪Forperformance•Indirectmapping(addresstranslation)•Garbagecollection•Over-provisioning•Hot/coldseparation•Interleavingovermultiplechannels/flashchips/planes•Requestscheduling•Buffermanagement•…▪ForReliability•Badblockmanagement•Wear-leveling•Power-offrecovery•Errorcorrectioncode(ECC)•...▪OtherFeatures•Encryption•Compression•Deduplication•...KCCTutorial@Kyeongju,Korea(June30,2011)–Sang-WonLee&Jin-SooKim–{swlee,jinsookim}@skku.edu16OverwritesinFlashMemory▪NaïveapproachDataBlocks:blockmappingFreeBlocksNewwrite(2K):0.2msOverwrite(2K)−632K-reads=6.3ms−632K-writes=12.6ms−12K-write=0.2ms−1erase=1.5ms−Total=20.6msKCCTutorial@Kyeongju,Korea(June30,2011)–
本文标题:Understanding-SSDs-with-the-OpenSSD-Platform
链接地址:https://www.777doc.com/doc-7311699 .html