更正一下过去对 SM3257 UFD 控制器的偏见

以前一直有个错误的观念,就是 SM3257Q AA 闪存盘控制器的性能很不行,直到最近我才知道这是因为我用了几片很不合适的闪存来测试这个控制器。让我慢慢道来。

开始接触 SM3257 的时候差不多也就是我刚开始玩闪存的时候。那个时候除了用过安国的一些控制器以外也就用过 UP19 ( PS2251-50 )。对 SM3257 不太好的印象也是从这里开始的。淘宝上能买到的有关的主控板几乎就只有一种,SM3257Q AA 的,制作精度很高,而且也不贵,如下图。

  
  
但是到手并贴上三星 27nm 的 K9GBG08U0A 以后发现,这个主控在第一次写入以前读取速度极高(30+ MB/s ),但是一旦全盘写入一次以后读取速度立马跌到 18MB/s 左右,而与此同时 UP19 读这片闪存却有 20+ MB/s (这个时候没有意识到 UP19 还没有写过这片闪存),于是我就草率地认定 SM3257 的性能没 UP19 好。

此后又拿 JS29F16B08JAMD2 试过 SM3257 ,结果跟在 SM3251 上表现一样的糟糕,写入才 12.6MB/s 。当然英特尔镁光 34nm 闪存在 SMI 家的控制器上表现糟糕是众人皆知的事实了,不过考虑到 UP19 虽然无法把同种 34nm 的连续写入跑到满速但是至少超过了 13MB/s ,于是又一次觉得 SMI 家的控制器连续读写性能都不行。顺便说一下,这片闪存后来被我贴在 IS902 上了,USB2.0 下速度都很给力,连续读写都远超 20MB/s ,所以 IS902 这样的 USB3.0 控制器也许才是 34nm 的最终归宿。

然后又有次试了 Hynix 的 32nm 闪存,读取再次跑得没 UP19 快,不过这次写入倒是比 UP19 强一些。

虽然这三次测出来 SM3257 的 4K 读写都比 UP19 强很多,但是连续读写的成绩不如 UP19 这个带 MLC 最大只有读 25MB/s 写 15MB/s 的主控,这让我对 SM3257 彻底失望了。

不过后来又发生了一些事情,让我对 SM3257 的看法有了改观。

第一次是在 SM3257 双贴 K9GBG08U0A 的时候,我惊讶的发现 SM3257 写 MLC 的速度可以达到 19MB/s ,远超 UP19 的上限。

后来在 mydigit 上看到屡屡有人用 SM3257 做出读取超过 20MB/s 的 U 盘。一开始我还以为是测试软件的问题,直到后来我发现别人拿 K9GBG08U0A 单贴在 UP19 主控板上的时候读取速度也只有 18MB/s ,我才感觉到一定是哪里不对。

某次在一只 UP19 + K9GBG08U0A 以 256MB 总数据量跑过 ATTO 以后发现前 256MB 的读取速度都下降了,于是突然意识到我还没测过 UP19 在写入一遍以后的读取速度。后来发现 UP19 带这个闪存的读写速度(不管是连续还是 4K )其实都比 SM3257 要低一些。2xnm 的闪存 ECC 拖慢速度真不是盖的。

于是又试了下把一块 JS29F16B08CAME1 挪到了 SM3257 的板子上。之所以选择这块闪存是因为已知这个玩意连续写入能跑到 20MB/s 左右,超过了 UP19 的上限,放在 UP19 的板子上有些浪费。最后的结果是连续读取 24.1MB/s ,与 UP19 相当;写入 18.8MB/s ,秒杀 UP19 。SMI 的特长 4K 读写就不用说了,不测都知道能秒了 UP19 (根据以前的经验,不管用什么闪存, SM3257 的 4K 读都比 UP19 高 0.5MB/s 以上,4K 写高 1MB/s 以上)。

至此,整个事情已经清楚了:

  1. 在测量一个 U 盘连续读取速度之前一定要写满随机数据,否则读取会虚高,因为不用做 ECC 。
  2. SM3257Q AA 性能还是不错的,尤其对于 2xnm 的闪存来说;
  3. UP19 的小文件读写不如 SM3257 ,最高连续读写速度也低于 SM3257 很多;
  4. 2xnm 闪存不是很靠谱,能存住数据基本上是靠 ECC 撑起来的。

最后,自己再加上前人的经验,总结一下 MLC NAND U 盘控制器的选择:

  1. 对于 2xnm 的闪存,用 SM3257 是没错的;
  2. 对于 3xnm 首选 UP19 ,除非闪存的连续写入速度超过 15MB/s ;
  3. 4xnm 的闪存暂时还没摸到过实物,在此不做评论;
  4. 对于 5xnm 闪存,可以用 SM3252 试试,据说效果不错;
  5. 更老的闪存可以用 UT165 试试,虽然小文件读写很烂但是连续读写非常给力;
  6. 有钱的话用 USB3.0 控制器如 IS902 ,由于运算能力较强这类控制器即使在 USB2.0 下也比 USB2.0 only 的控制器快。

当然,最后 SM3257 还有另外一个蛋疼的卖点,那就是呼吸灯。(跟某灯厂学的吧!)

《更正一下过去对 SM3257 UFD 控制器的偏见》有2个想法

  1. hi My Friend Frist thank you for good information
    second you must

    Comparison 2250 vs sm3255ab

    also maked in 2009

    2250 is so cheap and dont use crystal
    also 3257q hanent crystal but

    in 2009 2250 is so good

    au6986 -ut165-sm3255ab in 2009 maked

    if you have 34nm use 2238

    wonder full speed

    i use dual chanel
    r=33
    w=25!!!

    also 2233 write speed 2ce*dual mlc42nm
    r=30
    w=20

    thank you soo much if you need any thing say me

发表评论

电子邮件地址不会被公开。 必填项已用*标注