|
本帖最后由 hhdjz13813 于 2022-9-1 18:36 编辑
前言:年初的时候需要一款合适的TF卡给单片机用,要求是512B读写速度要快,必须是MLC颗粒,宽温,最好是支持S.M.A.R.T.功能,于是逐渐从小黄鱼上购入了N多款TF卡,在这个过程中踩了无数坑,也收获了很多知识点,在此分享一下。
//*************************************跑分数据部分*************************************
首先展示一下收集的部分TF卡合照
本次测试的卡有:
1.三星64G PRO+ 黑白卡;
2.海康威视HS-TF-H1 32G(江波龙代工);
3.威刚ADATA IDU3A 16G、32G;【支持S.M.A.R.T.功能】
4.三星Pro Endurance黑白卡 128G;
5.三星Pro Endurance蓝白卡 32G;
6.闪迪Extreme 64G;
7.广颍电通SDT530 16G;【支持S.M.A.R.T.功能】
8.江波龙版假闪迪32G 型号52X;【支持S.M.A.R.T.功能】
9.江波龙版假闪迪64G 型号52X;
10.CARE MORE 32G;
11.宇视U1速度等级 江波龙工业卡64G 型号M9H;【支持S.M.A.R.T.功能】
12.BLACKBOX RO 64G;
13.Seoha Digital BLACKBOX 64G;
14.BLACKBOX PLUS+ 64G;
15.雷克沙633X 512G蓝黑卡;
16.宇瞻工业H2-M 16G;【支持S.M.A.R.T.功能】
17.宇视U3速度等级 江波龙工业卡64G 型号MPS;【支持S.M.A.R.T.功能】
首先下结论:
江波龙的卡,除了SM2702主控的以外,普遍都有极快的4K & 512B读写速度,远超各TF卡生产厂家,如果是单片机用,一次只能几K读写而且需要高速记录的话,江波龙的MPS系列工业卡无异于是最优选择,而且该型号的卡还支持S.M.A.R.T.功能,唯一的遗憾就是查不到这个卡具体用的什么颗粒,所以PE上限是多少没法查证,根据SMART信息来看是3000PE,实际可能不止这个数,如果真是3000PE,那也就是20nm 2DMLC的水平。
江波龙MPS系列代表有:本文中宇视U3速度等级带M圈圈的那一款,大华2020年以后明确标注MLC的那一款,具体需要看卡背面第一行第二列前三个字母是不是MPS。
追求高耐久以及高可靠性,不需要SMART功能的话,三星2018款Pro Endurance是最佳选择,三星64L 3DMLC,7000PE的寿命,小黄鱼上价格也非常实惠。
追求高耐久以及高可靠性,需要SMART功能的话,江波龙M9H(SD卡是M9M)是最佳选择,但是此卡最好是一次至少写入64K数据,否则写入放大会非常离谱,正确使用的情况下该卡可以传给下一代,海力士3DV2 36L 3DMLC颗粒,31nm制程,保守寿命估计7000PE,而且该卡的SMART可以看最大、最小、平均擦除计数,我觉得这一点比江波龙MPS系列要好。江波龙M9H系列代表有:本文中的宇视U1速度等级监控卡,本文中的FORESEE Industrial Grade丝印款,具体需要看卡背面第一行第二列前三个字母是不是M9H。
需要千年档案级别的存储,推荐全新的20nm以及更大制程的2DMLC卡或者任意制程的2DSLC卡,比如广颍电通的SDT530(15nm 2DMLC@pSLC),威刚IDU3A。3D Nand的优势在于PE寿命通常远超2D Nand,但是根据数据手册来看,其数据保存期通常初始状态也只有10年左右。2D Nand在前100次PE时数据保存期可以超过10年,前几次PE数据保存期甚至可以达到千年水平,超过100PE后数据保存期才逐渐下降到1年的水平。根据本人实测,全新的20nm 2DMLC威刚IDU3A,放在135℃的回流焊烤炉内烘烤72小时,等效于25°环境下放了几百年,冷却后进行数据校验,全盘不掉速,数据全部OK。
文章开始之前,先介绍一些背景知识,由于江版的卡横行小黄鱼,其特征也很明显,背面丝印格式如下图所示一样。江波龙的卡背面丝印的含义以下图中海康H1为例进行说明:
第一行第一列O32GK38,第一个字母是生产工厂代号,江波龙目前有两个封测厂,O是OSE(华泰),Y是KYEC(京元);第二三个数字是卡的容量,32就是32G,1A就是128G;第五个字母是生产年份,J是2019年,K是2020年,以此类推,第六七个数字是生产周数;因此,该卡就是OSE华泰于2020年38周生产的。
第一行第二列,前三个字母是卡的型号,此卡型号是52A,后面的是生产序列号。
下面开始主题,直接上跑分图,用的是优越者USB3.0读卡器,这个读卡器很早就买了,比雷克沙的读卡器速度慢一点点。
测速原则来说必须要用独立的这种读卡器,如果用挂载在PCIE总线上的笔记本内置读卡器,由于有内置缓存加速,所以跑出来的速度失真很厉害,512B速度都能跑上好几M/s,这种跑分就没有了参考的价值。
三星Pro+ 64G,主控型号未知,颗粒应该是三星的2DMLC,网上某些渠道说是三星1Znm工艺,如果属实,那么寿命也就只有2000PE的样子。
海康威视H1 32G,该卡是江波龙生产的,型号52A,主控型号未知(用SMI FLASH ID软件测不出,盲猜群联主控),虽然海康官网说可以进行寿命监测,但是无论怎么尝试均无法读取。
威刚工业IDU3A 32G,SM2702BA主控,闪迪15nm MLC颗粒,受限于SM2702孱弱的性能,在脏盘情况下写入速度不稳定,毕竟工业卡内部还有全局写入均衡策略需要消耗一定的时间,清空扇区后重新跑分,速度才正常了点。
闪迪64G不点评,闪存颗粒以及主控型号未知。
广颍电通SDT530,闪迪15nm MLC工作于pSLC颗粒,这个卡的性价比自认为不高,而且坏块偏多,用SP Toolbox软件测试下来坏块最少的都是24,要是20nm的MLC我认为才值得买。
威刚工业IDU3A 16G,SM2702BA主控,镁光20nm MLC颗粒,20nm的MLC标称PE次数在BCH纠错的情况下是3000次。
三星Pro Endurance 2018款 128G,三星官方承认的3DMLC颗粒,应该是三星64L 3DMLC,保守寿命7000PE,最新的Endurance2022蓝白卡换成了企业级96L 3DTLC,真的是越做越倒退,也是三星这个卡没有SMART功能,否则我可以把这个卡买爆。
三星Pro Endurance 2022款 32G,3Dv5 96L 3DTLC,负升级的典型范例,3DMLC升级成3DTLC,价格还差不多,三星是越来越会当奸商了。
江版假闪迪TF卡,以上两款都是52X系列,但是神奇的是32G的卡支持SMART功能,64G的又不支持,通过SMART查询PE寿命是1000次,铁定的TLC颗粒,64G的卡怀疑内部有SLC缓冲区,所以跑分速度非常快,写入80+M/s,但是实际拷贝速度过了那一百多M的鸡血区,剩下的写入速度还不如32G的卡。
小黄鱼上的韩国车拆机TF卡,这个CAR MORE同样是32G的容量我至少见过三种型号,图上这张是慧荣主控,可以查到是19nm闪迪MLC,该丝印另外几种型号查不出闪存和主控型号,小黄鱼上的韩文卡是最不推荐的卡,很多都已经快到寿命尽头了,而且质量参差不齐,虽然标称MLC,但是鬼知道这是写入了多少TB的MLC。
图上所示宇视U1速度等级的监控卡和江波龙工业卡是同一个型号,型号M9H,主控SM2702BA,闪存颗粒海力士3Dv2 36L 3DMLC颗粒,我对这个卡的评价是鲜花插在牛粪上,3DMLC用在这种只支持BCH纠错的主控上简直就是暴殄天物,受制于SM2702的性能,512B以及4K速度目不忍视,此外,SM2702主控的卡在脏盘情况下持续写入,速度可能掉到10M+持续很长时间,排除过热保护,就是这个主控性能太差还要执行全局写入均衡的原因导致的。
图上所示宇视U3速度等级的监控卡是江波龙工业卡,型号MPS,主控未知,怀疑是得一微的,512B和4K速度非常牛逼,应该是3DMLC,颗粒型号未知,根据SMART信息查询得知额定PE次数是3000。
另外两款不评价,Seoha Digital BLACKBOX一看就是闪迪贴牌。
图左的卡不评价,主控和颗粒未知,来源为韩国车拆机卡。
宇瞻工业的H2-M 16G,群联主控,该型号同容量的卡我买到过15年产东芝19nm MLC颗粒的,也买到过16-18年产东芝15 nm MLC颗粒的。
雷克沙512G卡,下面的台湾产地是我从正规渠道买的,查不出主控型号和闪存型号,标称512G容量,实际容量477G。
上面的韩国产是从小黄鱼买的,单价189,可惜前几天被人秒光了,我就买了2张,这个卡一看背面的R就知道是官翻卡,实际容量460G,比台湾产的少17G,慧荣SM2705主控,闪存信息如下:
两种产地的卡容量差异如下:
//*************************************读取S.M.A.R.T.部分*************************************
关于S.M.A.R.T.功能的介绍相信数码之家的大部分坛友已经了解了,如果不了解的,可以参考【https://baike.baidu.com/item/smart/2230874?fr=aladdin】
通常固态硬盘和机械硬盘都支持S.M.A.R.T.功能,可以检测硬盘的数据写入量,健康状态等等一系列数据,而部分工业级TF卡其实也支持这个功能,下面介绍一下如何读取工业级TF卡的S.M.A.R.T.数据。
根据JEDEC文档可知,TF卡,也就是microSD卡,也可以相当于是4bit位宽的eMMC卡(EMMC卡的数据总线位宽是8bit),是通过几十个CMD命令控制的,其中有读命令,写命令,获取CSD,获取CID命令等等,而读取TF卡的S.M.A.R.T.使用的是CMD56命令,JEDEC文档参见:
主机通过SDIO接口向卡发送命令时,可以携带一个32位的参数(arg),发送CMD56的同时携带一个特定的arg即可获得TF卡返回的512字节数据,SMART信息就在这返回的512字节中,CMD56命令的响应方式是R1响应,不同厂家的TF卡读取SMART所需要带的参数不同,以下分别介绍。
在此先以NXP LPC43xx系列单片机的官方库为示例演示如何带参数执行CMD56:
注意!执行CMD56命令之前,必须通过命令控制卡进入传输状态,此时发送CMD56命令才有效。
闪迪工业,江波龙工业MPS系列,arg=0x00000001
闪迪工业卡SMART数据解析说明文件:
江波龙工业卡MPS系列由于没有找到数据手册,通过手上几十张卡反复测试,推敲出解析方式如下:
镁光工业,arg=0x110005FB
镁光工业卡SMART数据解析说明文件:
Swissbit工业,arg=0x53420001
Swissbit工业卡SMART数据解析说明文件:
创见工业,arg=未知
因为手里没有创见的卡,其附带参数是多少没法测试,网上找到的相关数据解析文档如下:
ADATA IDU3A,arg=0x110005F9
威刚工业卡SMART数据解析说明文件:参考创见230I中的【The SMART definition of 2GB and 4GB】
江波龙工业M9H系列,arg=0x110005FD
江波龙工业卡M9H系列由于没有找到数据手册,通过手上几十张卡反复测试,推敲出解析方式如下:
ATP工业,arg=0x11000001
ATP工业卡SMART数据解析说明文件:
Apacer宇瞻工业,arg1=0x00000010,arg2=0x00000021
宇瞻工业的卡比较特殊,它需要先发送CMD56写指令给卡,使得卡执行加载SMART信息操作,之后再发送CMD56读指令读取SMART信息,如果直接发送CMD56读指令,读出的SMART信息将是空白的。
CMD56的arg参数,最低位是控制读写状态的,最低位为0是CMD56写(即下图56(w)),最低位为1是CMD56读(即下图56(r))。
通过JEDEC手册可知执行CMD56写命令后TF卡会进入ReceiveDataStatus,等数据传输完毕后会自动进入ProgrammingStatus,此时必须手动执行STOP命令结束编程状态,这样卡才能进入传输状态执行CMD56读命令。
以NXP LPC43xx系列单片机官方库为例介绍如何执行CMD56写命令
宇瞻工业卡SMART数据解析说明文件:
此外,经过查找发现,Delkin Device的工业卡和宇瞻工业卡的解析方式是一样的,相关文件:
介绍了读取TF卡SMART信息的方法,下面来实际读取几张试一下:
宇视U1速度64G(江波龙M9H工业卡)
宇视U3速度64G(江波龙MPS工业卡)
江版假闪迪32G(江波龙52X系列),注意!江波龙52X系列有的可以读SMART,有的不可以读,具体能不能读需要实测,图上这款怀疑是使用降级Flash的次品工业卡流了出来,所以坏块这么多。
威刚工业IDU3A 32G
宇瞻工业H1-M 16G
广颍电通SDT530,这个卡不知道arg参数是啥,所以暂时没法通过单片机来读,但是通过广颍电通的SP Toolbox可以读出SMART信息,通过软件里面的某个文件名称(Phison_Smart.exe)可以得知,这个卡100%是群联主控。
此外,有坛友指出不存在sMLC制程,我个人认为,软件里sMLC的意思是MLC工作在SLC模式下,所以简写成sMLC。
补充内容 (2022-10-26 18:07):
本贴推出第二季啦,评测了目前能买得到的12款顶级工业级TF卡,此外修正了江波龙MPS系列SMART解析算法,详情访问: https://www.mydigit.cn/thread-349896-1-1...
补充内容 (2022-10-26 18:08):
https://www.mydigit.cn/thread-349896-1-1.html |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
打赏
-
查看全部打赏
|