答案1
并行性以及控制器如何利用并行性是主要因素。通常没有空间容纳 SSD 中的 8-16 个离散 NAND 芯片。USB 棒中的控制器通常也没有那么复杂,可以有效利用可用的并行性。
其他重要因素是闪存的质量。许多 USB 闪存使用较便宜的闪存,为了避免错误,您必须以较慢的速度读写。USB 驱动器没有大量的超额配置来帮助保持干净的块。而且 USB 2.0 的速度限制在 35 MB/s 左右。许多 SSD 都带有大 RAM 缓存。
造成这些差异的主要原因是价格。有些 SSD 采用 USB 棒外形,例如 LaCie FastKey。
答案2
我看到的一些因素:
并行性:SSD 使用大量闪存设备并以并行、流水线和交叉的方式大量访问它们。
SLC 与 MLC:多层单元在每个单元中存储两位,但访问时间更长,而单层单元在每个单元中存储一位。此外,SLC 比 MLC 承受更多的写入/擦除周期。所有 USB 拇指闪存驱动器和 SD 卡都是 MLC,因为它更便宜。请注意,一些“消费者”SSD(如英特尔的 X25-M)也使用 MLC,将 SLC 保留给“企业”驱动器,如 X25-E。
复杂的分配算法。 它们不仅具有磨损均衡功能(但这也很重要),还将擦除与写入分离,因此当您必须写入时,驱动器已经有几个预擦除的单元可供写入。
接口:SATA2 和现在的 SATA3 是很多比 USB 更快。不仅在原始比特率上,而且效率也更高。您永远无法达到 USB 理论速度的 100%,但在 SATA、SAS 和 IEE1394 上,您可以始终获得该速度。
一些额外的硬件技巧;就像一个小型的电池供电的写回缓存。你写入这个小型 RAM,驱动器本身写入闪存后确认写作。
答案3
USB 接口是一个巨大的瓶颈。我恰好拥有一款非常酷的 Kanguru eFlash 驱动器,它带来了巨大的改变。
此设备有一个 USB 和一个 eSata 连接器。它在 USB 端的传输速度为 45 MB/s,在 eSata 端的传输速度为 90 MB/s。来自同一设备!这确实表明 USB 是限制因素。不过,正如其他人所说,有些驱动器的制造成本太低,甚至不受 USB 的限制。
答案4
多种因素都会限制 USB 闪存驱动器的性能,包括物理尺寸限制和 NAND 性能以及 USB 协议开销。
最重要的限制可能是尺寸。USB 闪存驱动器需要合理的尺寸,因此制造商不能在驱动器中装入太多的 NAND 芯片。SSD 通常使用 2.5 英寸硬盘驱动器尺寸,这为 NAND 提供了充足的空间。(即使是 mSATA 尺寸也比合理尺寸的闪存驱动器提供更多的空间。)一般来说,驱动器中的 NAND 芯片越多,速度就越快,因为控制器可以同时(并行)写入更多芯片。
三星通过制造采用全功能 SSD 技术的“便携式 SSD”彻底解决了这个问题,该技术具有与“真正的”内置 SSD 相同的优质 NAND 和高性能控制器。这些驱动器通过 USB 电缆连接到计算机,而不是直接连接到 USB 端口。
传统棒状外形的闪存驱动器采用全固态硬盘技术。但是,大多数消费者并不需要或不期望闪存驱动器具有全固态硬盘性能,因此只能购买昂贵的产品。此类驱动器通常也足够大,会阻塞大多数系统上的相邻 USB 端口。
为了降低成本,USB 闪存驱动器通常使用低级 NAND,其速度不如 SSD 中使用的芯片,并且控制器的功能也较弱。此外,由于闪存驱动器的容量通常低于 SSD,因此相对于驱动器外壳、电路板和控制器等其他部件,NAND 较少,这也往往会增加每 GB 的成本。
此外,USB 协议的开销相对较高。为了获得最佳性能,驱动器需要支持联合服务计划,它允许系统向 USB 驱动器发送 SCSI 命令。较便宜的驱动器通常仅支持批量传输,这进一步限制了性能。请参阅这个答案了解更多信息。