- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SSD工作原理傻瓜教程
SSD工作原理傻瓜教程
由于本人之前的C300测试贴中的部分原理解释不是最“傻瓜”式,造成很多朋友的困惑,在群里在论坛里讨论时,发现很多朋友的理解都还是有问题,故此特地开一个帖子解释的更“傻瓜”点。首先我们来看下,作为L63B颗粒,Intel/Micron的34nm 4KB page的颗粒,内部结构是这样的。
我知道自己画图很烂。。。。意思意思就行。1个page为4KB,1个Block为256个page组成,1个Plane由2048个Block组成,2个Plane组成1个Die,也就是最小的芯片(4GB),X25-M 80G Gen2 SSD上面我们看到10个颗粒,每个颗粒是8GB的,就是由2个Die封装起来的。Page为最小的读写单位,Block为最小的擦除/编程单位。 (我知道这些很多人都知道,重复重复再重复我也很烦)。接下来,我来假设一个主控和颗粒环境:
1个8通道8位的主控连接到8个Die上,为了解释方便,我这里就画了每个Die里的第一个Block。(实际当然要复杂很多)好了,接下来我们要进行读写了,看清楚,这下面的东西才是你们最想知道的。1. 现在我先对主机发送一条命令,要求写入4KB。
主控接到主机发来的指令后,往颗粒1的Block1里写入了1个4KB(占1Page)。2.继续写入8KB。
主控接到主机发来的指令后,往颗粒2的Block1里和颗粒3的Block1里各写入4KB。好了,我们来举一反三,如果写入的是32KB,那么主控就会一下子往每个颗粒的Block1里写入4KB,这样就能发挥出这个SSD主控理论最大的写入带宽,相对4KB来说最好情况下我们可以得到8倍的速度(取决于主控对通道的优化,颗粒当前的文件状况等等)。这样你们就会知道为啥4KB的写入慢,而持续写入SSD并不慢的道理了吧,实际情况下当然不会都写Block1,我这里只是想解释的简单点。这个类似RAID 0的操作模式就是大部分的SSD内部操作情况。上面是写入的情况,对于读取自然也是如此,4KB的读取就从一个Block里读,而32KB的话就从8个Block里拿,速度是不是8倍提升取决于要读取 的数据是不是平均分布在每个颗粒的Block里,如果32KB数据是存储在图中颗粒1~4的Block1里的(每个Block假设8KB),那么读取就最 多只有4倍的提升了,这也是为啥文件越小传输率越低的道理。这样经过一段时间之后,所有的NAND Block都被填满了,就会产生如下图的情况:
这个图显示的是LBA(逻辑块地址),也就是我们的操作系统看到的文件系统结构,而非我们的SSD主控制器看到的结构。图中红色的地方表示为这个地址里的数据已经“过期”或者“无效”,这些红色地址是如何产生的?在你删除文件的时候,这个地址就“无效”了,里面的文件还在,只不过不用了而已,等待下一次的数据更新并覆盖进去。对于SSD的主控制器来说,它看到的并不是如图中这样,而是如下图:
是的,在SSD主控制器看来,这里的文件都是有效的,也就是不能擦除,那么接下来如何?在操作系统的要求下,继续写入数据的话就要在前面LBA红色的地方写入,对于SSD来说,这时候就需要把整个块的绿色读进缓存并更新操作系统发来的数据,之后擦除这整个块并把缓存里的整个更新完的块写回去,这样即使写入4KB的数据,其实也是大费周章的折腾,这就是早期SSD主控制器或者U盘写入放大高的道理,这些SSD的算法上不支持GC,也没有Trim,所以在随机写入的表现上非常的悲剧。Trim是什么?他带来了什么好处?Trim是一条ATA的指令,当最新的操作系统删除文件的时候(包括格式化),同时把这个文件地址发送给SSD的主控制器,让主控制器知道这个地址的文件地址无效了,好了,到此结束,没有下文了。Trim的完成需要几点:1.SSD的主控制器必须认识Trim指令,也就是固件要支持。2.操作系统必须会发送Trim指令,也就是删除时候会发送。3.操作系统下的控制器驱动必须要支持Trim指令的传输,也就是能够Pass Trim指令到SSD主控制器。如果SSD的主控制器支持Trim并且有开启的话,他看到的图就会是这样:
是的,基本和操作系统看到的差不多,那些不一样的地址是因为并非删除操作造成的“无效”,而是由于覆盖等原因造成的,所以操作系统并没有发送Trim指令告诉SSD主控这个地址。那么相比之前的SSD主控制器,我们有了Trim,带来了提升是啥道理哪。如果光有Trim,提升并不大,因为数据的写入还是需要读取进入缓存并更改整个块,只是Trim后红色的page就不需要读取进入缓存更新了,因为SSD主控已经知道那个地址的数据无效了,只省下来了红色page的读取写入时
您可能关注的文档
最近下载
- 写作《说明书》-【中职专用】高二语文同步精品课件(高教版2023·职业模块).pptx VIP
- 2024随县中小学教师招聘考试题库及答案.docx VIP
- TIA博图软件培训(内部资料).ppt VIP
- 蒂升电梯MC2-C控制柜主板插件端子说明产品介绍.pdf VIP
- “一带一路”跨境电商 课件 第3、4章 “一带一路”沿线国家跨境电商相关法律法规与规章、“一带一路”跨境电商平台.pptx VIP
- 无机化学第四章-化学反应速率和化学平衡.pptx VIP
- 培养青年教师师徒协议7篇.docx VIP
- “一带一路”跨境电商 课件 第5、6章 “一带一路”跨境电商交易流程、“一带一路”跨境电商消费者行为.pptx VIP
- 23快乐的小河 公开课一等奖创新教案(2课时).docx VIP
- 4.3《撰写报告》(教学设计)-【中职专用】高二语文同步精品课堂(高教版2023·职业模块).docx VIP
原创力文档


文档评论(0)