EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 alexwang 于 2018-7-3 11:12 编辑
5 n+ d1 s4 \5 m' u2 z( Y: G/ Q: s# l
SATA接口测试的常见问题集锦原创 2016-03-01 李凯 shark4685
. X% ^$ c1 o/ s7 p# [. ?5 ~3 B0 }+ T7 O2 X
前言 9 } _ v7 V7 U, `* n6 h8 k7 p
SATA(Serial ATA)口的硬盘又叫串口硬盘,是未来PC机硬盘的趋势,现已基本取代了传统的PATA硬盘。SATA的全称是Serial Advanced Technology Attachment,Intel、APT、Dell、IBM、希捷、迈拓这几大厂商组成的Serial ATA委员会正式确立了Serial ATA 1.0规范,2002年,虽然串行ATA的相关设备还未正式上市,但Serial ATA委员会已抢先确立了Serial ATA 2.0规范。Serial ATA采用串行连接方式,串行ATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比其最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性。串行接口还具有结构简单、支持热插拔的优点。
* r. k/ ~3 x/ `3 u' ]- }/ t/ I& ^# i* z% c; l, G- t
Question SATA组织的Plugfest会议和Workshop会议有什么区别? C" Z9 m7 @5 P) v. A6 C5 {, i
Answer Plugfest和Workshop会议都是为了验证SATA设备间的兼容性以及测试方法的有效性而举办的行业会议。区别是Plugfest侧重于产品开发的初期阶段,产品还没有公开,测试方法可能还不确定,参加会议的厂商可以根据自己的需要选择测试和验证方法;而Workshop侧重于产品和标准的成熟阶段,这时测试和验证方法基本统一,各参会厂商是按照协会制定的统一方法进行测试和验证。
+ V1 M) `& L/ r3 L0 ?# O
! V+ {7 |# k1 _2 {9 W! _2 m% Y. @. L2 l" H& S2 c6 ?
% k7 y& ]1 n. n) P
& Z: l8 w' `8 R; z8 o! ?$ ]) K% \
Question SATA的发送信号质量测试中为什么需要不同的码型? 0 h0 f3 N- J: v4 [, u2 h
Answer 在SATA的测试规范里,对于不同的测试项目要用到不同的测试码型,比如HFTP(High Frequency Test Pattern,1010101010 1010101010b)、MFTP(Mid Frequency Test Pattern,1100110011 0011001100b)、LFTP(Low Frequency Test Pattern,0111100011 1000011100b)、LBP(Lone Bit Pattern,共2048个 Double words长度)等。不同的码型针对不同的测试项目,比如上升/下降时间测量时会使用LFTP的长码型,以避免码间干扰对上升/下降时间测量的影响。还有些测试项目中会用到几种不同的码型以验证被测件发送不同码型时信号参数的变化。用户进行信号调试时可以使用真实传输的数据码型,但是一致性测试时要求必须使用规范规定的测试码型。 8 Q0 i. T8 R, L g- w c6 N
; ]# G2 \' W6 w( @' H
# L8 M% ]9 z% O, x% Q# h7 l
3 C- n9 M* k0 ^ z' u1 f 0 H, X. t$ W+ m F9 M. `) [6 O
Question 在发送信号质量测试中怎么控制被测件发送不同的测试码型?
0 K. z% E- W7 F0 f/ t. q. e
Answer - ^, ~7 j' f9 j1 D
, W8 e, k0 i* X9 P: d( U
7 ]/ c4 v6 K2 K
6 y) w) m6 \8 P; m; Q6 f% G9 h' {8 m% l0 p; ?9 T1 j# g
) h# a. H- y, j: y2 @
Question 什么是OOB信号,起什么作用?
+ R/ M9 i& [! J/ n" u1 H: W6 U3 s
Answer OOB信号(Out-of-Band signaling)是SATA总线上在上电阶段用于主从设备协商的一种特殊信号,用于主从设备间的复位、建立连接、握手、速率协商等。 5 V% K0 P: ]/ U, |6 e; Q
! {/ K# G ]' ~0 S; a. U2 L7 h$ ` [- e! Y
3 V; ^5 u: p" |4 E3 \. u0 ?$ q8 K- I+ v% R3 X* v
# R, n. Q4 V! {" q6 z1 G T# v
Question 需要进行OOB信号的测试吗? % w5 _9 b, q- h6 T# {6 A+ ^
Answer OOB信号是数据速率为1.5Gbps一组触发的脉冲串,脉冲串的宽度和间隔分别代表不同的含义。SATA测试规范要求要进行OOB信号的测试,不过OOB信号的测试项目主要和驱动程序的设置有关,和硬件的布线关系不大。在OOB的测试项目中,既需要验证被测件产生的OOB信号的脉冲串的长度、间隔符合规范,也需要验证被测件检测OOB信号的阈值、间隔判决范围是否正确,因此OOB的测试项目中除了示波器以外还需要额外的码型发生器产生相应的信号和被测件进行OOB信号的交互。 8 ~/ o6 v2 N. u4 N$ D
# X# z% B: F B8 M! \' U5 @
- Z3 Y6 ?5 p# v2 s5 d# K
5 i2 t2 f" U7 Z$ h7 d
Question 在SATA的接收端容限测试中如何使被测件进入环回模式?
/ p. H; L$ B8 S
Answer 主要有两种方法:可以通过芯片厂商提供的控制工具使被测件进入环回模式,也可以通过信号发生器或者协议分析仪通过协商使被测件进入环回模式。 ( h' _* s# ?. Z+ L" Q7 M1 T5 Z
1 a4 T" D. k1 o& g6 q- Y5 H0 _3 W
Question 在SATA的接收端容限测试中的测试时间是依据什么选择的?
. Z# ~ K# \* K5 N' d* N/ d
Answer SATA总线要求的系统误码率要小于1E-12,因此需要累积大量的数据bit才能确保其接收误码率可以达到这个要求,比如测试中如果累积3E+12个数据bit仍然没有误码就可以在95%置信度的情况下保证系统误码率小于1E-12。但是累积大量的数据需要花费大量时间,因此SATA的测试规范对此做了折衷。
0 \1 l( C! x# J3 ^% @
' ?5 c+ j/ f# u* c% B/ h L
0 h$ K* ~$ Q- v' N( R6 M1 v+ I
1 ` E+ Z7 G5 U2 Q. @1 Z4 B5 Q4 \. Q
; ~" G( ]+ t( l( t( r( W( V" e
Question SAS和SATA有什么区别?
, w2 i: I& S U6 G- u6 y1 d
Answer SATA是传统IDE硬盘的串行版本,承载的是ATA协议,主要针对个人电脑应用;而SAS(Serial Attached SCSI)是传统SCSI硬盘的串行版本,承载的是SCSI协议,主要针对企业级、服务器的应用。SAS和SATA采用类似的物理层,但是连接器不一样,其数据速率可以为3Gbps或者6Gbps,同时12Gbps的SAS标准也在制定中。一般SAS硬盘的转速和平均寻道时间比SATA硬盘要快,平均无故障时延也要更长。同时SAS在数据恢复、纠错等方面比SATA更加复杂和可靠。 1 {& {; Q& q& I+ T' V3 {3 u+ I) I- X
% Y1 Y/ ]. B) o& B. P. C
0 \" Z9 f9 g; y5 F X# u8 E
6 F( K8 j$ v- c. z- _( r% r
Question SAS的信号质量测试怎么进行?
5 c9 c5 E3 K& s1 [ [9 ?
Answer 类似于SATA测试,但是需要另外的夹具和测试软件。比如Agilent公司的N5412C SAS信号一致性测试软件以及N5421A测试夹具等。 3 q4 W4 {* Z V# N# k1 h: M
s& w2 B9 U6 H4 R4 O+ @. B0 Z
: B( o, [4 [1 c, q( I( |# p# h% T* g
. F8 L2 @: o: M
Question 为什么SATA还没有12Gbps的版本出来?
+ Z; L% Q$ G% l$ m2 |$ {
Answer 因为SATA主要针对个人电脑应用,如果要在廉价的PCB板材和连接器上实现12Gbps的信号传输非常困难,而且芯片里要有复杂的均衡电路也会提高成本,所以SATA组织目前还没有制定12Gbps的SATA标准,而是准备用SATA-Express的标准来满足更高数据传输速率的需求。 % }" p$ J! ~4 T8 y( W2 J3 I
* R! v' W y) E% h t, u
- C- o) Q. a7 ?5 k `+ U
5 J" D. F4 _/ f2 Z* o
7 k8 _8 [6 j0 R6 I9 k; B
Question 什么是SATA-Express? % ~& y$ _* o, F$ J$ C5 K, d8 ]8 E
Answer SATA-Express就是用PCI-E来进行硬盘数据的传输,主要满足SSD(Solid State Disk,固态硬盘)等高速数据存取的应用。由于PCI-E技术非常成熟,PCI-E 3.0的数据速率已经达到8Gbps并已经可以商用,而且PCI-E还可以支持多条Lane同时进行数据传输,所以用PCI-E来进行硬盘数据传输在提高总线吞吐率上有很大优势。由于PCI-E的连接器和SATA不一样,为了保持对原有SATA硬盘的兼容性,所以SATA协会重新定义了SATA-Express的连接器,比如SFF-8639连接器,其上面可以承载最多2路传统的SATA信号或者4条Lane的PCI-E信号。对于笔记本的应用,也可以采用M.2(NGFF ,Next Generation Form Factor )的连接器。 3 i6 I- U7 s8 Z4 v: N) }
: q2 Z5 g. Z7 M. x1 y- I* p" x3 N
/ R( o; A" E( p) E! f1 N
|