ATA8协议规范.docx

上传人:b****5 文档编号:6764830 上传时间:2023-01-10 格式:DOCX 页数:21 大小:1.13MB
下载 相关 举报
ATA8协议规范.docx_第1页
第1页 / 共21页
ATA8协议规范.docx_第2页
第2页 / 共21页
ATA8协议规范.docx_第3页
第3页 / 共21页
ATA8协议规范.docx_第4页
第4页 / 共21页
ATA8协议规范.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

ATA8协议规范.docx

《ATA8协议规范.docx》由会员分享,可在线阅读,更多相关《ATA8协议规范.docx(21页珍藏版)》请在冰豆网上搜索。

ATA8协议规范.docx

ATA8协议规范

ATA8协议规范

8.51.1.1命令代码

B0H带有D9H的特征寄存器的值

8.51.1.2特征设置

SMART特征设置

---当SMART特征设置应用时这个命令是强制性的执行的

---当数据包命令特征应用时禁止使用这个命令

8.51.1.3协议

无数据(见9.4)

8.51.1.4输入

特征寄存器调到D9H,LBA中央寄存器调到4FH,LBA高位寄存器被调到C2H.

装置寄存器–

DEV将详细说明被选择的装置

8.51.1.5标准输出

装置寄存器–

DEV将指示被选择的装置

状态寄存器–

BSY清0表明命令完成.

DRDY将被调到1

DF(装置错误)将清0

DRQ将清0

ERR将清0

8.51.1.6错误输出

如果装置不支持这个命令,如果SMART无效,或特征,中央LBA,高位LBA寄存器里的值是有无效的,那么装置将返回,命令失败。

错误寄存器-

如果这个命令不被支持,如果SMART无效或输入寄存器值失败那么ABRT将被调到1。

如果装置不能按命令要求执行,ABRT可能会调到1。

装置寄存器-

DEV将指示被选择的装置

状态寄存器-

BSY将清0表明命令完成.

DRDY调到1

有装置错误发生时,DF调到1

DRQ清0

如果一个错误寄存器位调到1,ERR调到1

8.51.1.7先决条件

DRDY调到1,SMART有效.

8.51.1.8描述

这个命令使装置的任一个SMART功能失效,所有计时器和事项计算功能只与这个命令有关.当命令接收后,装置会使所有SMART操作失效.SMART数据将不再被检测或被装置保存.SMART的状态要么能要么不能被通过热交换的装置保存.

装置收到这个命令后,所有其它的SMART命令包括SMART无效操作命令都是无效的,被装置中止的命令也是无效的,除了SMART有效操作之外.

8.51.2SMART有效/无效属性自动保存

8.51.2.1命令代码

BOH带有D2H的一个特征寄存器的值

8.51.2.2特征设置

SMART特征设置

-SAMRT特征设置执行时这个命令是被强制执行的

-当数据包命令特征设置执行时禁止使用这个命令。

8.51.2.3协议

见9.4

8.51.2.4输入

这个特征寄存器设为D2H.LBA中央寄存器设为4FH.LBA高位寄存器设为C2H.扇区计算寄存器设为00H使属性自动保存功能失效,设为F1H时使属性自动保存功能有效.

装置寄存器-

DEV会详细指明被选择的装置

8.51.2.5常规输出

装置寄存器-

DEV会指出被选择的装置。

状态寄存器-

BSY将被清0表明命令结束。

DRDY调到1

DF被清0

DRQ被清0

ERR被清0

8.51.2.6错误输出

如果装置不支持这个命令,如果SMART失效,如果特征,LBA高位,LBA中央寄存器里值是无效的,那么装置将返回,命令中止。

错误寄存器-

如果这个命令不被支持,如果SMART无效,或如果输入寄存器值是无效的,那么ABRT调到1。

如果装置不能完成命令要求,ABRT可能调到1.

装置寄存器-

DEV将指出被选择的装置

状态寄存器-

BSY将被清0表明命令完成

DRDY调到1

如果一个装置错误发生,DF将调到1

DRQ将清0

如果一个错误寄存器比特调到1,ERR调到1

8.51.2.7先决条件

DRDY调到1.SMART有效.

8.51.2.8描述

这个命令控制装置任意选择的属性自动保存功能有效和无效.这个命令也能允许装置输入厂商规定事项后保存装置更新的属性值到永久性存储器;或这个命令能导致自动保存功能失效.这个属性自动保存功能的状态(能或不能)被热交换的装置保留.

主机写入0到装置的扇区计算寄存器后发出这个命令会导致这个功能失效.在一些其它常规操作例如在开电或关电期间,或在一个错误恢复期间,这个失效的功能不会阻止装置保存SMART数据到永久性储存器里.

F1H被主机写入装置的扇区计算寄存器后发出这个命令会导致这个功能有效.这个值的任何其它含义或任何其它非0的值被主机写入这个寄存器后发这个命令会不同于装置对装置之间.这个任何非0值的含义被写入这个寄存器同时会被通过热交换的装置保留.

如果这个命令不被装置支持,装置会在一收到主机命令时返回,命令中止.

在自动保存程序执行时,装置不会把BSY设为1或把DRDY清0.如果装置收到主机的命令,当执行自动保存程序时,装置会在两秒内开始处理这个命令.

8.51.3SMART有效操作

8.51.3.1命令代码

B0H带有D8H这个特征寄存器值.

8.51.3.2特征设置

SMART特征设置.

---当SMART特征设置执行时,它是强制性的.

---当数据包命令特征设置执行时,它被禁止使用.

8.51.3.3协议

无数据(见9.4)

8.51.3.4输入

这个特征寄存器设为D8H.LBA中央寄存器设为4FH.LBA高位寄存器设为C2H.

装置寄存器-

DEV将指定被选择的装置.

8.51.3.5常规输出

装置寄存器-

DEV将指定被选择的装置.

状态寄存器-

BSY清0表明命令完成.

DRDY设为1

DF清0

DRQ清0

ERR清0

8.51.3.6错误输出

如果装置不支持这个命令或如果特征,LBA中央,LBA高位寄存器里的值无效,那么装置会返回,命令中止.

错误寄存器-

如果这个命令不被支持或如果输入寄存器里的值是无效的,那么ABRT会设为1.

如果装置不能完成命令要求,那么ABRT会设为1.

装置寄存器-

DEV会指定被选择的装置.

状态寄存器-

BSY清0表明命令完成.

DRDY设为1.

DF在一个装置错误发生时设为1.

DRQ清0.

ERR在一个错误寄存器位设为1时设为1.

8.51.3.7先决条件

DRDY设为1.

8.51.3.8描述

这个命令能进入到装置里的所有SMART功能里,在收到这个命令之前,SMART数据既不被装置检测也不被保存,这个SMART的状态(既能也不能)被热交换的装置保留,一旦能,收到的后面的SMART有效操作命令不会影响任何SMART数据或功能。

8.51.4突然掉线的SMART操作

8.51.4.1命令代码

BOH下的特征寄存器为D4H的内容

8.51.4.2特征设置

SMART特征设置

-当SMART特征设置执行时这一命令是随意的

-当数据包命令特征设置执行时被禁止使用。

8.51.4.3协议

见9.4

8.51.4.4输入

特征寄存器调到D4H,LBA中央寄存器被调到4FH,LBA高位寄存器调到C2H,51表格详解基于在LBA低位寄存器里的值上被执行的子命令。

装置寄存器-

DEV指明被选择的装置

8.51.4.5常规输出

LBA中央-

当子命令规定了一个掉线的程序包括一个掉线的自检程序时是NA.

当子命令规定了一个捕获的已经成功执行的自检程序时中央寄存器为4FH.

LBA高位-

当子命令规定了一个掉线的程序包括一个掉线的自检程序时是空的

当子命令规定了一个捕获的已经成功执行的自检程序时高位寄存器为C2H

装置寄存器-

DEV将指出被选择的装置。

状态寄存器-

BSY清0表明命令完成

DRDY调到1表明装置能收到任何命令

DF清0

DRQ清0

ERR清0

8.51.4.6错误输出

如果装置不支持这个命令,如果SMART无效,或如果在特征,LBA中央,LBA高位寄存器里的值无效的,装置会返回,命令无效。

在捕获数据模式里检测不成功,LBA中央寄存器值为F4H和LBA高位值为2CH时,装置会返回,命令无效。

错误寄存器-

如果SMART数据扇区的ID区不能找到,IDNF调到1

如果这个命令不被支持,如果SMART无效,如果寄存器值无效,或如果在捕获模式里执行一个程序时自检失败,那么ABRT调到1.如果装置不能完成命令要求,那么ABRT可能调到1.

LBA中央寄存器-

    当子命令指定一个掉线程序包括一个掉线的自检程序时寄存器是NA.

当子命令指定一个捕获的自检程序和一些其它的错误程序发生时(例如:

如果子命令不被支持或寄存器值是无效的),寄存器为4FH.

当子命令指定一个捕获运行失败的自检程序时,寄存器为F4H.

LBA高位寄存器-

当子命令指定一个掉线程序(包括一个掉线的自检程序)时为NA.

当子命令指定一个捕获失败的自检程序时寄存器为2CH。

当子命令指定一个捕获的自检程序和一些其它错误发生时(就是说如果子命令不被支持或寄存器值失效),寄存器为C2H。

装置寄存器-

DEV将指定被选择的装置

状态寄存器-

BSY清0表明命令结束。

DRDY调到1表明装置能收到任何命令。

DF调到1表明发生了一个装置错误。

DRQ清0表明没有数据被编译。

如果任何错误寄存器比特调到1,那么ERR调到1。

8.51.4.7

DRDY调到1,SMART激活。

8.51.4.8描述

这个命令导致装置立即发起在掉线模式下的采集SMART数据的设置,然后保存这个数据到装置的永久性存储器,或在捕获或掉线模式下执行一个自检测程序。

Table51-SMART掉线执行即时的LBA低位寄存器值

0在掉线模式下执行SMART立即掉线程序

1在掉线模式下执行SMART短路的立即自检程序

2在掉线模式下执行SMART扩展的立即自检程序。

3-63保留的

64-126厂商特规

127失效掉线模式自检程序

128保留的

129捕获模式下执行SMART短路的立即自检程序

130捕获模式下执行SMART扩展的立即自检程序

131-191保留的

192-255厂商特规

8.51.4.8.1掉线模式

以下描述了一个在掉线模式下SMART执行立即掉线(SMARTEXECUTEOFF-LINEIMMEDIATE)子命令程序(包括一个自检程序)的协议.

A)装置完成执行命令后执行子命令程序.

B)收到命令,BSY清0后,设置DRDY到1,装置不会设置BSY也不会清0DRDY在执行子命令程序时.

C)如果装置在执行子命令程序的过程中被任何来自主机的新命令打断,除了休眠命令,SMART操作失效(SMARTDISABLEOPERATION),SMART执行立即掉线(SMARTEXECUTEOFF-LINEIMMEDIATE)或备用即时(STANDBYIMMEDIATE)命令外,装置会暂停或中止子命令程序并且在收到新命令后两秒内服务于主机.在服务来自主机的中止命令后,装置可能立即重新创建或重新开始子命令程序(没有任何主机的附加命令情况下).见8.51.5.8.4

D)如果装置在执行一个子命令程序的过程中被来自主机的一个休眠命令打断,那么装置可能中止子命令程序并执行休眠命令.如果装置在任何自检程序执行过程中被主机的休眠命令打断,那么装置会中止子命令程序并执行休眠命令.

E)如果装置在执行子命令程序过程中被一个主机的SMART失效操作(SMARTDISABLEOPERATIONS)命令打断,那么装置会暂停或中止子命令并在收到命令后两秒内服务于主机.一收到下一个SMART有效操作(SMARTENABLEOPERATIONS)命令,装置要么重新创建子命令要么重新开始子命令程序从它先前被暂停的地方.

F)如果装置在执行子命令过程中被主机的一个SMART执行立即掉线(SMARTEXECUTEOFF-LINEIMMEDIATE)命令打断,那么装置会中止子命令并在收到命令后两秒内服务于主机.然后装置会服务于新的SMART执行立即掉线(SMARTEXECUTEOFF-LINEIMMEDIATE)子命令.

G)如果装置在执行子命令程序过程中被一个主机的备用即时(STANDBYIMMEDIATE)或空转即时(IDLEIMMEDIATE)命令打断,那么装置会暂停或中止子命令程序,并在收到命令后两秒内服务于主机.收到一个导致装置退出节电模式的新命令后,没有被主机任何附加的命令中止的情况下,装置会创建或重新开始子命令程序.见8.51.5.8

H)当装置在执行子命令程序时,它不会自动地转变电源状态.(例如,由于备用计时器到期失效)

I)装置在执行一个自检程序时,检测失败,那么装置会停止检测并把检测结果放入自检执行状态字节.见表格52

8.51.4.8.2捕获模式

当在捕获模式下执行一个自检,在收到命令后,装置设置BSY为1并执行自检程序,在程序最后装置会放程序结果在自检执行状态字节里,执行命令完成.(见表格52)如果在一个装置执行程序时发生错误,装置会中止这个检测,把这个程序结果放入自检执行状态字节里,完成这个命令.

8.51.4.8.2SMART掉线程序

这个程序只会在掉线模式下执行.这个程序结果会放入掉线数据采集状态字节里,见表格53

8.51.4.8.3SMART短路自检程序

依据LBA低位寄存器里的值,这个自检程序可能在捕获或掉线模式下执行.这个自检程序应该执行这些命令几分钟才完成.见8.51.5.8

8.51.4.8.5SMART扩展自检程序

依据LBA低位寄存器里的值,这个自检程序可能在捕获或掉线模式下执行.这个自检程序应该执行这些命令几分钟才完成.见8.51.5.8

8.51.5SMART读数据

8.51.5.1命令代码

B0H带有特征寄存器值为D0H的内容

8.51,5.2特征设置

SMART特征设置

---当SMART特征设置被执行时是随意的

---当数据包命令特征设置被执行时禁止使用

8.51.5.3协议

PIO数据输入,见9.5

8.51.5.4输入

这个特征寄存器设置为D0H,这个LBA中央寄存器设置为4FH.LBA高位寄存器设为C2H.

装置寄存器—

DEV将详细说明被选择的装置.

8.51.5.5常规输出

装置寄存器-

DEV将指出被选择的装置

状态寄存器-

BSY清0表明命令结束

DRDY设置到1表明装置能收到任何命令

DF清0

DRQ清0

ERR清0

8.51.5.6错误输出

如果装置不支持这个命令,如果SMART失效,或如果特征,LBA中央,LBA高位寄存器里的值是无效的,那么装置会返回命令中止.

错误寄存器—

如果SMART数据不能修复,UNC将设置为1.

如果SMART数据部分的ID区不能找到或数据结构校验和产生,IDNF将设置为1.

如果SMART是无效的或如果寄存器值是无效的,如果这个命令不支持,那么ABRT设置为1.如果装置不能完成命令要求,ABRT将设置为1.

装置寄存器—

DEV将指出被选择的装置

状态寄存器-

BSY清0表明命令结束

DRDY设为1表明装置能收到任何命令.

DF设为1表明一个装置错误发生.

DRQ清0表明没有数据被编译

如果任何错误寄存器比特设为1,ERR设为1

8.51.5.7先决条件

DRDY设为1,SMART有效.

8.51.5.8描述

这个命令把装置SMART数据结构返回到主机.

表格52定义了组成装置SMART数据结构的512个字节.所有显示在这个结构中的

多字节区域都遵循3.2.9里字节命令的描述.

表格52---装置SMART数据结构

比特F/V描述

0-361X厂商规定

362V掉线数据采集状态

363V自检执行状态比特

364-365V完成掉线数据采集过程总共几秒钟

366X厂商规定

367F掉线数据采集功能

368-369FSMART功能

370F错误日志功能7-1保存

01=支持装置错误日志

371X厂商规定

372F短路自检程序建议问询时间在几秒内

373F扩展自检程序建议问询时间在几秒内

374-385R保存

386-510X厂商规定

511V数据结构校验和

关键点

F=字节的内容被修复并且不会改变

V=字节的内容是可变的并且可能取决于装置或被装置执行的命令而转变.

X=字节的内容是厂商规定的并且可以修复或可变化.

R=字节的内容被保存并且是0.

8.51.5.8.1掉线采集状态字节

掉线数据采集状态字节的值定义了掉线装置的当前状态,表格53列出了这些值和它们各自的定义.

表格53---掉线数据采集状态字节值

值定义

00H或80H掉线数据采集永不开始

01H保存

02H或82H掉线数据采集正确完成

03H保存

04H或84H掉线数据采集被主机的打断命令暂停

05H或85H掉线数据采集被主机的打断命令中止

06H或86H掉线数据采集被带有致命错误的装置打断而中止

07H--3FH保留

40H--7FH厂商规定

81H保留

83H保留

87H--BFH保留

C0H--FFH厂商规定

8.51.5.8.2自检执行状态字节

自检执行状态字节报告自检程序执行的状态

---比特(3:

0)(剩余自检的百分比)这个在比特中的值表明在完成百分之十的增加量时一个剩余自检程序百分数的近似值.有效值为9至0.一个0值代表这个自检程序完成.一个9的值代表剩余检测时间总数的90%.

---比特(7:

4)(自检执行状态)这个在比特中的值代表当前自检执行状态(见表格54)

表格54—自检执行状态值

值描述

0早前的自检程序完成并且没有错误,或没有自检跑过.

1自检程序被主机中止.

2重置硬件或软件的主机打断了自检程序

3当装置在执行它的自检程序时,一个致命错误或不可知的检测错误发生,装置不能完成自检程序

4早先的自检完成了一个失败的检测事项,并且这个失败是不可知的.

5早先的自检完成了一个失败的电子元器件检测事项.

6早先的自检完成了伺服(和/或查找)检测失败的事项.

7早先的自检完成了一个读取失败的检测.

8-14保存

15进程中的自检程序.

8.51.5.8.3完成掉线数据采集的总时间

完成掉线数据采集总时间在几秒钟内,它代表装置需要多少秒去完成一系列的掉线数据采集活动.它的有效值为从0001H到FFFFH.

8.51.5.8.4掉线数据采集功能

以下描述了掉线数据采集能力的定义.如果所有这些比特的值都清0,那么没有掉线数据采集被装置执行.

---BIT0(立即离线命令操作位)-如果这个位设为1,那么SMART立即离线执行命令被这个装置执行.如果这个位清0,那么SMART立即离线命令不被这个装置执行.

---BIT1(厂商规定).

---BIT2(主机位中止/重启离线)-如果这个位设为1,那么这个装置会中止所有离线数据采集活动,这个采集活动是由SMART执行立即离线命令启动的,如果这个位清0,那么输入打断命令之后装置会暂停离线数据采集活动,如果输入厂商规定的事项就会重启离线数据采集活动.

---BIT3(离线扫描读执行位)-如果这个位清0,那么装置不支持掉线扫描读.如果这个设为1,那么装置支持离线扫描读.

---BIT4(自检执行位)-如果这个位清0,那么装置不执行短路的或扩展的自检程序.如果这个位设为1,装置执行短路的或扩展的自检程序.

---BITS(7:

5)(保留).

8.51.5.8.5SMART功能

以下描述了SMART功能位的定义.

---BIT0-如果这个位设为1,那么装置保存SMART数据,进入节电模式(空转,待机,或休眠)或从待机模式立即恢复到活动状态或空转模式.如果这个位清0,那么装置不保存SMART数据,进入节电模式(空转,待机,或休眠)或从待机模式立即恢复到活动状态或空转模式.

---BIT1-这个位设为1表明装置支持SMART有效/无效属性自动保存命令(SMARTENABLE/DISABLEATTRIBUTEAUTOSAVE).

---BITS(15:

2)(保留).

8.51.5.8.6自检程序建议调查时间

自检程序建议调查时间为几分钟,它是建议时间的最小值,然后主机应该进行第一次检测完成状态的调查.实际检测时间可能有几次是这个值.调查后,这个时间能扩展自检执行程序的时间或中止这个检测,这取决于离线数据功能位的BIT2的状态.

8.51.5.8.7数据结构校验和

数据结构校验和是在数据结构中的第一个511字节总数的表示法.每个位用无符号的算法相加,溢出部分将忽略不计.当校验和是正确时,所有512字节的总数是0.校验和放在511字节里.

8.51.6SMART读日志.

8.51.6.1命令代码

B0H带有D5H的特征寄存器的内容

8.51.6.2特征设置

SMART特征设置

---当SMART特征设置在执行时,是可选择的.

---当数据包命令特征设置执行时,禁止使用.

8.51.6.3协议

PIO数据输入(见9.5)

8.51.6.4输入

特征寄存器设为D5H.扇区计算寄存器指明从LBA低位寄存器指定的日志数中读出的扇区数.LBA中央寄存器设为4FH.LBA高位寄存器设为C2H.

扇区计算---指从指定日志里被读的数字.装置编译日志是从指定日志里的第一个扇区开始的,与计算扇区无关.

LBA低位---指被返回的日志如表格55里的描述.如果这个命令被执行,所有被解释了内容的地址值都会被执行,所有解释了的地址值如主机执行厂商规定都会被执行.主机厂商规定日志被主机用于储存任何想要的数据.如果一个主机厂商规定日志永不能被主机写,那么读这个日志的内容时,会是0.装置厂商规定日志能被装置厂商用于储存任何数据,如果使用,只需要执行它.

表格55-日志地址解释

关键-

RO-日志只被主机读.

R/W-日志被主机读和写.

VS-日志是厂商规定的,因此读写能力是由厂商规定的.

注释-日志地址03H,07H,20H,21H,22H,23H被READLOGEXT和WRITELOGEXT命令使用.如果这些日志地址和SMARTREADLOG命令使用,装置会返回,命令中止.

装置寄存器-

DEV指示被选择的装置.

8.51.6.5常规输出

装置寄存器-

DEV指示被选择的装置.

状态寄存器-

BSY清0表明命令完成.

DRDY设成1表明装置能收到任何命令.

DF清0

DRQ清0

ERR清0

8.51.6.6错误输出

如果装置不支持这个命令,如果SMART无效,或如果特征,LBA低位,扇区计算,LBA中央,或LBA高位寄存器里的值无效,那么装置返回,命令中止.如果主机发出带有扇区计算值为0的SMARTREADLOG或SMARTWRITELOG命令,那么装置会返回,命令中止.

错误寄存器-

UNC设为1,在SMART日志扇区不能修复时.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 工作计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1