X200的硬盘接口是SATA 1.5Gb/s还是SATA 3Gb/s

今天升级了驱动。在Intel Matrix Storage Console中看到笔记本(ThinkPad X200)硬盘(Seagate Momentus 5400.4 ST9160827AS) 运行在“SATA第一代” (Generation 1)传输模式,NCQ支持却是Yes。印象中不是只有“SATA第二代”才支持NCQ吗?觉得奇怪,便用其他软件看了看。

  1. HWiNFO32显示Drive Controller为Serial ATA 1.5Gb/s。
  2. EVEREST Corporate Edition显示Device Type为SATA,但ATA Device Physical Info中的Interface却又是SATA-II。

到底是SATA I还是SATA II?Seagate网站明确说明这款硬盘接口为SATA 3.0Gb/s。Product manual PDF文档又说突发传输速率最高是150MB/s,自相矛盾。

干脆拆下硬盘。表签上白底黑字写着1.5 Gb/sec。

我想起Seagate曾经在支持SATA 3Gb/s的硬盘上默认设置跳线,将传输速率限制在1.5Gb/s,以免在不支持3Gb/s的主机不兼容。

这块硬盘上果然也有个跳线。移除跳线后开机。所有软件都显示硬盘运行在SATA II传输模式。

以下是两种传输模式的对比。


HD Tach测试表明,突发传输速率大幅提高,超过了150MB/s。但平均传输速率不变。 

 


HD Tune也显示突发传输速率增大,平均传输速率不变。

背景知识

  1. SATA即串行ATA,是一种通常用来连接主机和硬盘的接口总线。与之对应的是已经被其取代的PATA (并行ATA)。
  2. 相比PATA,SATA提供更高的传输速率,以及其他功能,例如NCQ、热插拔等。
  3. SATA的规范目前很混淆。我们通常说SATA I(第一代)和SATA II(第二代),并认为SATA I的传输速率为1.5 Gb/s或150 MB/s;SATA II 的传输速率为3 Gb/s或300 MB/s,并支持NCQ等其他功能。其实是I、II并非规范,而是误称。负责SATA规范的组织曾经叫SATA II,后来为避免混淆更名为SATA-IO。他们措辞严厉地指出习惯说法是错误的。正确的规范名称是SATA Revision 1.x/2.x/3.x,对应接口名称是SATA 1.5Gb/s, SATA 3Gb/s, SATA 6Gb/s。规范被误解和说法被混淆,连Intel的软件也用Generation 1/2这种错误说法。测试软件中也常出现 SATA I/II。
  4. SATA 1.5 Gb/s的实际最大传输速率为150 MB/s。其中有的换算的方法值得说明。首先1.5Gb/s中的小写b指bit,而大写的B指Byte,1Byte = 8bits。然后,SATA使用的 8b/10b encoding 只有80%的效率,所以1.5Gb/s = 1.5*1000*0.8/8 MB/s = 150MB/s。同理SATA 3Gb/s对应的实际最大传输速率为300MB/s。 
  5. SATA使用 Advanced Host Controller Interface (AHCI) 。需要在BIOS中开启AHCI并在操作系统中装响应的驱动才能使用SATA,否则SATA硬盘会模拟PATA设备运行。

结论:

  1. ST9160827AS符合SATA Revision 2.5规范。支持1.5 Gb/s和3Gb/s两种接口传输速率。出厂默认设置跳线,将速率限制为1.5Gb/s。移除跳线后可工作在3Gb/s。
  2. 由于5400 RPM硬盘内部传输速率限制,外部接口是1.5 Gb/s还是3 Gb/s对性能几乎没有影响。只有突发传输速率不同,然而这个指标对实际使用性能没什么影响。更有意义的指标是持续传输速率和平均寻道时间。Seagate可能正是因为这个在硬盘上标注1.5Gb/s。
  3. NCQ对性能的影响在一般测试中不容易体现出来。但在实际使用中应该是有作用的。

This entry was posted in Computer and Internet. Bookmark the permalink.

19 Responses to X200的硬盘接口是SATA 1.5Gb/s还是SATA 3Gb/s

  1. Unknown says:

    welcome join us!! 拇指姑娘( ^_^ )女人討論區 http://twav.me

Leave a comment