首页 / 专利库 / 广播 / 帧内预测 / 具有串行ATA接口的电子装置和用于串行ATA总线的省电方法

具有串行ATA接口电子装置和用于串行ATA总线的省电方法

阅读:878发布:2024-02-25

专利汇可以提供具有串行ATA接口电子装置和用于串行ATA总线的省电方法专利检索,专利查询,专利分析的服务。并且一种 电子 装置(10)具有串行ATA 接口 并通过该串行ATA总线(30)连接到另一电子装置(20)。判定装置(12)当数据应该被传输到另一电子装置(20)时判定该数据的立即传输是否可能(S4)。第一模式切换装置(12)当从该电子装置的该数据的立即传输被判定为不可能且该数据被预测在预定时间内不会被准备好时,将该串行ATA总线(30)从非省电模式切换到 指定 省电模式。第二模式切换装置(12)在该串行ATA总线(30)被切换到上述指定省电模式时为该数据的传输作好准备后,将该串行ATA总线(30)从上述指定省电模式切换到非省电模式。,下面是具有串行ATA接口电子装置和用于串行ATA总线的省电方法专利的具体信息内容。

1.一种电子装置,配有串行ATA接口并通过串行ATA总线连 接到另一电子装置,该电子装置特征在于,包括:
判定装置,其被设置为判定当数据应该被传输到所述另一电子装 置时该数据的立即传输是否可能;
第一模式切换装置,其被设置为当从该电子装置的该数据的立即 传输被判定为不可能且该数据被预测在预定时间内不会被准备好时, 将该串行ATA总线从非省电模式切换到指定省电模式;以及
第二模式切换装置,其被设置为在第一模式切换装置将该串行 ATA总线切换到了上述指定省电模式的情况下,在该数据的传输准备 好了后,将该串行ATA总线从上述指定省电模式切换到非省电模式。
2.根据权利要求1的电子装置,其特征在于:
上述串行ATA接口的标准定义两种省电模式,它们在到非省电 模式的恢复时间上互不相同;以及
第一模式切换装置从这两种省电模式中选择具有较短恢复时间 的省电模式,并将所选择的省电模式用作指定省电模式。
3.根据权利要求1的电子装置,其特征在于,进一步包括:
数据传输装置,其被设置为使用上述串行ATA总线被设置为非 省电模式的状态中的指定信息,通过该串行ATA总线将数据传输 给所述另一电子装置,其中
当该数据的立即传输可能时,该数据传输装置立即传输该数据, 及
当该数据的立即传输不可能时,该数据传输装置在该数据的传输 准备好了且第二模式切换装置将该串行ATA总线切换到非省电模式 之后,开始该数据的传输。
4.根据权利要求3的电子装置,其特征在于:
当第一帧信息从所述另一电子装置传输到该电子装置且在该第 一帧信息请求数据的情况下,上述判定装置判定该数据的立即传输是 否可能;以及
上述数据传输装置使用第二帧信息传输所请求的数据,该第二帧 信息是指定帧信息。
5.根据权利要求4的电子装置,其特征在于,进一步包括:
第一类型通知装置,其被设置为在上述数据传输装置使用第二帧 信息传输该数据之前,通过该串行ATA总线向所述另一电子装置传 输第三帧信息,该第三帧信息用于通知该数据的传输类型,
其中第一模式切换装置在第三帧信息被传输到所述另一电子装 置之前,将该串行ATA总线从非省电模式切换到指定省电模式。
6.根据权利要求4的电子装置,其特征在于,进一步包括:
传输类型通知装置,其被设置为通过该串行ATA总线向所述另 一电子装置传输第三帧信息,该第三帧信息用于通知该数据的传输类 型,
其中第一模式切换装置在第三帧信息被传送到所述另一电子装 置之后且在该数据传输装置使用第二帧信息传输数据之前,将该串行 ATA总线从非省电模式切换到指定省电模式。
7.根据权利要求4的电子装置,其特征在于,进一步包括:
执行结果通知装置,其被设置为在第一帧信息从所述另一电子装 置被传输到该电子装置且第一帧信息指定不涉及数据传输的操作的情 况下,在指定操作执行之后,使用预定帧信息通过该串行ATA总线 向所述另一电子装置通知执行结果,
其中第一模式切换装置在所述另一电子装置被通知了对应于指 定操作的执行结果之前,将该串行ATA总线从非省电模式切换到指 定省电模式。
8.根据权利要求1的电子装置,其特征在于,进一步包括:
预测装置,其被设置为在上述判定装置判定该数据的立即传输不 可能的情况下,预测该数据的传输准备好所需的时间,
其中在第一模式切换装置在预定时间之后,在由上述预测装置预 测了时间的情况下,将该串行ATA总线从非省电模式切换到指定省 电模式。
9.根据权利要求1的电子装置,其特征在于,进一步包括:
监视装置,其被设置为在上述判定装置判定该数据的立即传输不 可能的情况下,检验为该数据的传输所作的准备是否完成并在第二时 间内继续这一检验,该第二时间短于用作预定时间的第一时间,
其中第一模式切换装置在为该数据的传输所作的准备甚至在第 二时间过去之后还未完成的情况下,认定该数据在第一时间之内不能 准备好并将该串行ATA总线从非省电模式切换到指定省电模式。
10.根据权利要求1的电子装置,其特征在于:
该电子装置是包括在其中记录了数据的记录介质的外部存储装 置;以及
所述另一电子装置是使用该外部存储装置的主机系统。
11.一种应用于具有串行ATA接口的电子装置的方法、用于节 省该串行ATA接口所消耗的电能,该电子装置通过串行ATA总线连 接到另一电子装置,该方法特征在于,包括:
当数据应该被传输到所述另一电子装置时,判定该数据的立即传 输是否可能;以及
当从该电子装置的该数据的立即传输被判定为不可能且该数据 被预测在预定时间内不会被准备好时,将该串行ATA总线从非省电 模式切换到指定省电模式。
12.根据权利要求11的方法,其特征在于,进一步包括:
在该串行ATA总线被切换到指定省电模式的情况下,等待该数 据的传输准备好的完成并然后将该串行ATA总线切换回非省电模式; 以及
在该串行ATA总线被切换到指定省电模式的情况下,等待该串 行ATA总线被切换回到非省电模式,并然后使用预定帧信息通过该 串行ATA总线将该数据传输给所述另一电子装置。
13.根据权利要求12的方法,其特征在于:
在所述另一电子装置向该电子装置传送了第一帧信息且该第一 帧信息请求数据时,该电子装置变为已准备好将该数据传输到所述另 一电子装置;以及
由第一帧信息所请求的数据通过使用第二帧信息来传送,该第二 帧信息是预定帧信息。
14.根据权利要求13的方法,其特征在于,进一步包括:
使用第二帧信息通过该串行ATA总线向所述另一电子装置传送 第三帧信息,用于通知该数据的传输类型,
其中在第三帧信息被传送到所述另一电子装置之前,该串行ATA 总线被切换到指定省电模式。
15.根据权利要求13的方法,其特征在于,进一步包括:
通过该串行ATA总线向所述另一电子装置传送第三帧信息,用 于通知该数据的传输类型,
其中在第三帧信息被传送到所述另一电子装置之后且该数据通 过使用第二帧信息被传输之前,该串行ATA总线被切换到指定省电 模式。
16.根据权利要求13的方法,其特征在于,进一步包括:
在第一帧信息从所述另一电子装置被传输到该电子装置且第一 帧信息指定不涉及数据传输的操作时,在指定操作执行之后使用预定 帧信息通过该串行ATA总线向所述另一电子装置通知执行结果,
其中在所述另一电子装置被通知了对应于指定操作的执行结果 之前,将该串行ATA总线切换到指定省电模式。

说明书全文

技术领域

发明涉及具有串行ATA(AT嵌入式)接口电子装置,尤其 涉及以盘驱动器为代表的电子装置,及用于串行ATA(SATA)总线 的省电方法,其适用于降低符合串行ATA接口标准的串行ATA总线 的电能消耗。

背景技术

如在串行ATA工作组于2003年1月7日“串行ATA:高速串行 化AT嵌入式”修订本1.0a(此后称为“先有技术文件”)中所述的,已 经设计出用于盘驱动器的新接口的串行ATA接口的标准。串行ATA 接口用作以硬盘驱动器为代表的外围装置和以个人计算机为代表的主 机(主机系统)之间的接口。在这一点上,串行ATA接口与传统的 ATA接口(即并行ATA接口)相同。
具有串行接口的外围装置(诸如硬盘驱动器HDD)通过串行ATA 总线连接到主机。串行ATA总线包括:一对连接到设置为在第一方 向上传输信号的微分放大器的信号线;及另一对连接到设置为在第二 方向(即与第一方向相反的方向)上传输信号的微分放大器的信号线。 在这样的HDD中,为确保与ATA接口的兼容性,有必要将ATA接 口转换成串行ATA接口,及将串行ATA接口转换成ATA接口。这 样的接口转换由例如称作串行ATA接口控制电路(串行ATA桥)的 LSI(桥LSI)执行。串行ATA接口控制电路被提供给HDD。
在串行ATA接口标准中,定义了功能不同的三层:即物理层、 链路层和传输层。物理层具有用于执行高速串行数据传输及接收的功 能。物理层分析接收到的数据,并根据分析结果将数据传输到链路层。 物理层也将串行数据信号输出到链路层以响应来自那里的请求。链路 层向物理层提供输出信号的请求。链路层还向传输层提供从物理层传 输来的数据。传输层根据ATA标准执行用于操作的转换。假设上述 串行ATA接口控制电路用于HDD中,则传输层的作用相当于利用了 ATA连接的传统主机的ATA信号输出单元的作用。串行ATA接口控 制电路通过基于ATA接口标准的ATA总线(或顺应ATA总线的总 线)连接到HDD的盘控制器(HDC)。相应地,在串行ATA接口控 制电路和HDD的HDC之间的连接中,执行等价于在ATA接口标准 中规定的那些操作或与标准兼容的操作。因此,串行ATA接口与ATA 标准具有关于诸如逻辑命令的协议的兼容性。然而,由并行ATA接 口处理的数据信号(并行数据信号)必须被转换成串行数据信号。因 为这一转换,HDC将串行ATA接口控制电路看作为向该HDC发出 命令的主机。除了串行ATA接口控制电路(此后称为“主HDD单元”) 以外的HDD部分以与使用了ATA连接的传统HDD相同的方式操作。
在具有串行ATA接口的HDD中,将串行ATA接口控制电路连 接到HDC的传统ATA总线(即并行ATA总线)能形成于HDD的印 刷电路板(PCB)上之。因此,在具有串行ATA接口的HDD中,ATA 总线的布线长度可缩短,因而可期望数据传输速率的增加,这在如果 使用并行ATA总线时是很难实现的。
串行ATA接口标准规定了针对于串行ATA总线的省电模式,以 及符合传统ATA接口(并行ATA接口)标准的省电模式。传统ATA 标准中不存在串行ATA总线省电的思想。串行ATA接口标准规定了 三种用于串行ATA接口的电源管理模式,即“PHY READY(IDLE)”、 “PARTIAL”和“SLUMBER”。“PHY READY”模式指示省电状态,在 这一状态中用于实现物理层(PHY层)操作的电路(PHY电路)和 主相环路(PLL)电路都在操作中,因而使主机和外围装置的接口 状态同步。“PARTIAL”模式和“SLUMBER”模式指示省电状态,在这 一状态中PHY电路处于操作中但接口信号处于中性状态。
“PARTIAL”和“SLUMBER”模式之间定义的不同之处在于从此 模式恢复到“PHY READY(IDLE)”模式所需的时间。具体地,规定 从“PARTIAL”模式恢复所需的时间不得超过10微秒。另一方面,规 定从“SLUMBER”模式恢复所需的时间不得超过10毫秒。只要恢复时 间及接口电源状态符合标准,制造商可选择装置的部分,其省电功能 应当在“PARTIAL”模式或“SLUMBER”模式下执行(即可选择在该模 式下应当被关掉的电路)。
如以上所述,已在假设其与传统ATA标准(并行ATA标准)兼 容的基础上设计出了串行ATA接口标准。因此,为实现在串行ATA 标准中规定的省电的新思想,向主机提供用于指定新的省电的新装置 是有必要的。然而,这种新装置可能完全偏离了传统ATA标准。而 且,向主机提供新的装置可能会相当大地影响整个系统。
转换到符合传统ATA接口标准的省电(ATA省电)状态基本是 在主机的控制下实现的。象规定了ATA省电模式,例如“IDLE”、 “STANDBY”和“SLEEP”一样。另一方面,也可在主机或外围装置的 控制下实现转换到用于串行ATA总线的省电(串行ATA省电)模式 (即“PARTIAL”模式或“SLUMBER”模式)。可以考虑从外围装置控 制串行ATA总线的省电状态。然而,上述先有技术文件未描述关于 用于控制串行ATA省电状态的技术(具体地,用于将ATA省电状态 与串行ATA省电状态相关联的技术)。
在串行ATA标准中,串行ATA总线末端的接口转换不应当与传 统ATA标准(并行ATA接口标准)中规定的接口转换有很大差别。 假设主机向外围装置发出一个命令。在这一情况下,在传统ATA标 准中,并行ATA总线继续处于“BUSY”状态直到主机确定由该命令指 定的操作结束。然后,可以考虑执行接口转换以将串行ATA总线设 置为“BUSY”状态。然而,本发明的发明人们认识到串行ATA总线在 并行ATA总线的“BUSY”期间没有必要“BUSY”。例如,使用串行ATA 总线的信息交换通过使用称为信息结构(FIS)的串行数据格式的帧 信息来执行。串行ATA总线在FIS传输/接收期间及在与此相关的处 理期间实际上变为“BUSY”。简而言之,并行ATA总线的“BUSY”状 态未必意味着串行ATA总线“BUSY”。

发明内容

因此,本发明的一方面在于通过充分利用并行ATA总线的 “BUSY”和串行ATA总线的“BUSY”状态之间的不同,使得能够有效 使用在串行ATA标准中指定的串行ATA总线的省电模式。
根据本发明的一个实施例,提供了一种包括串行ATA接口并通 过串行ATA总线连接到另一电子装置的电子装置。该电子装置包括: 判定装置,其被设置为当数据应该被传输到另一电子装置时,判定该 数据的立即传输是否可能;第一模式切换装置,其被设置为当从该电 子装置的该数据的立即传输被判定为不可能且该数据被预测在预定时 间内不会被准备好时,将该串行ATA总线从非省电模式切换到指定 省电模式;第二模式切换装置,其被设置为在第一模式切换装置将该 串行ATA总线切换到了上述指定省电模式时为该数据的传输作好准 备后,将该串行ATA总线从上述指定省电模式切换到非省电模式。
附图说明
被引入并构成说明书一部分的附图例示了本发明的实施例,并与 上面给出的概括描述和下面给出的实施例的详细描述一起,用于解释 本发明的原理。
图1是示出了根据本发明一个实施例的使用硬盘驱动器(HDD) 10的系统的方框图
图2是示出了图1中显示的主HDD单元11的方框图;
图3是例示在主机20发出涉及数据传输的命令(读命令)的第 一种情况下,SATA总线30上的信号状态及SATA总线30、ATA总 线13和ATA总线23的省电模式是怎样的序列图;
图4是示出了SATA接口控制电路12在上述第一种情况下所执 行操作的流程图
图5是示出了根据第一种修改的且SATA接口控制电路12在上 述第一种情况下所执行的操作的流程图;
图6是示出了根据第二种修改的且SATA接口控制电路12在上 述第一种情况下所执行的操作的流程图;
图7是示出了在主机20发出了涉及数据传输的命令(读命令) 且在执行所指定的数据传输之前有必要从HDD 10向主机20发送关于 数据传输类型的信息的情况中,SATA总线30上的信号状态及SATA 总线30、ATA总线13和ATA总线23的省电模式是怎样的序列图;
图8是示出了SATA接口控制电路12在上述第二种情况下所执 行操作的流程图;
图9是示出了根据上述第二种情况下的修改,SATA总线30上 的信号状态及SATA总线30、ATA总线13和ATA总线23的省电模 式是怎样的序列图;
图10是示出了SATA接口控制电路12根据上述第二种情况下的 修改所执行操作的流程图;
图11是示出了在主机20发出未涉及数据传输的命令的第三种情 况下SATA总线30上的信号状态及SATA总线30、ATA总线13和 ATA总线23的省电模式是怎样的序列图;
图12是示出了SATA接口控制电路12在上述第三种情况下所执 行操作的流程图。

具体实施方式

下面参照附图详细描述在其中本发明被应用到配备有了具有串 行ATA(SATA)接口的硬盘驱动器的系统的实施例。图1是示出了 根据本发明的实施例的配备了硬盘驱动器(HDD)10的系统结构的方 框图。如图所示,HDD 10包括主HDD单元11和SATA接口控制电 路12。主HDD单元11对应于使用ATA接口实现并行数据传输的传 统HDD。SATA接口控制电路12是外围装置的SATA(串行ATA) 桥。SATA接口控制电路12通过SATA总线(串行ATA总线)30连 接到主机(主机系统)。SATA接口控制电路12用于执行ATA接口 和SATA接口之间的接口转换,并由例如大规模集成电路(LSI)组 成。SATA接口控制电路12具体具有用于将通过SATA总线30发送 的指令转换为适合于ATA总线13(ATA接口)的指令,并通过ATA 总线13将其发送到主HDD单元11的功能。
主机20是使用HDD 10作为存储器的电子装置,诸如个人计算 机。主机20包括主机单元21和SATA接口控制电路22。主机单元 21符合对应于用于使用ATA接口实现并行数据传输的传统主机。 SATA接口控制电路22是主机桥,且经由ATA总线(并行ATA总线) 23连接到主机单元21,并经由SATA总线(串行ATA总线)30连接 到HDD 10。SATA接口控制电路22由用于执行ATA接口和SATA 接口之间接口转换的LSI组成,如HDD 10的SATA接口控制单元12。 SATA接口控制电路22具体具有用于将通过ATA总线23发送的指令 转换为适合于SATA总线30(SATA接口)的指令,并通过SATA总 线30将其发送到HDD 10的功能。
SATA接口控制电路12和22分别含有物理层处理单元121和221 及链路/传输层处理单元122和222。物理层处理单元121和221通过 SATA总线30执行高速串行数据传输(传送/接收)。这时,数据传 输速率为1.5Gbps(每秒千兆字节)。物理层处理单元121和221解 释从SATA总线30接收的数据,并根据解释结果分别将该数据传输 到链路/传输层处理单元122和222。而且,物理层处理单元121和221 分别传输各自的串行数据信号以响应来自链路/传输层处理单元122和 222的请求。链路/传输层处理单元122和222每一个均包括未示出的 链路层处理单元和传输层处理单元。链路/传输层处理单元122和222 各自的链路层处理单元向输出物理层处理单元121和221提供输出信 号的请求,以响应来自处理单元122和222的传输层处理单元的请求。 此外,处理单元122和222各自的链路层处理单元向各自的传输层处 理单元提供来自物理层处理单元121和221的数据传输。传输层处理 单元执行ATA接口和SATA接口之间的接口转换。
可以使用与ATA总线13和23兼容的总线,诸如外围部件互连 (PCI)总线,来替代ATA总线13和23。在这一情况下,可以在PCI 桥中提供SATA接口控制电路12和22。此外,如果SATA接口控制 电路12和22(SATA桥)具有用于向SATA总线30传输并从SATA 总线30接收串行ATA接口信号的功能,将是足够的。
图2是示出了主HDD单元11的结构的方框图。主HDD单元11 具有作为记录介质的盘111。盘111的至少一个面是数据磁记录于其 上的记录面。头(磁头)112抵着盘111的至少一个记录面。为了方 便画图,图2显示了主HDD单元11(HDD 10)只包括一个头112的 情况。但是,一般地,盘111的两个面都作为记录面,每个面各自的 头都抵着该面。此外,在图2的例子中,假设主HDD单元11(HDD 10)包括单个盘111。然而,它可以包括多个相互堆叠的盘111。
盘111由轴发动机(SPM)113以高速回旋。头112用于从盘111 读取数据并向其写入数据。头112连接到激励器114的末端。激励器 114具有声音线圈发动机(VCM)115。激励器114由VCM 115驱动, 籍此在盘111上径向移动。结果,头112被放置在目标磁道上。SPM 113和VCM 115分别由从发动机驱动器IC 116提供的驱动电流(SPM 电流和VCM电流)供电。发动机驱动器IC 116向SPM 113提供CPU 130指定的SPM电流,且向VCM 115提供CPU 130指定的VCM电 流。
头112连接到头IC(头放大器电路)117。头IC 117包括用于放 大由头112读出的读信号的读放大器,和用于将写数据转换为写电流 的写放大器。头IC 117连接到读/写IC(读/写通道)118。读/写IC 118 是用于执行诸如读信号的模拟到数字转换、写数据的编码、读数据的 解码等各种信号处理的信号处理装置。读/写IC 118连接到硬盘控制 器(HDC)119。
HDC 119具有用于控制来自盘111和到盘111的数据传输的盘控 制功能。HDC 119包括ATA接口。也就是说,HDC 119具有用于通 过ATA总线从主机20接收和向主机20发送命令(诸如读/写命令) 和数据的ATA接口控制功能。然而,在包括具有SATA接口的HDD 10的实施例中,HDC 119经由ATA总线13连接到SATA接口控制 电路12,其不同于传统HDD。HDC 119经由SATA接口控制电路12 和SATA总线30连接到主机20。HDC 119具有用于控制缓冲RAM 120 的缓冲控制功能。缓冲RAM 120的存储区域的一部分用作临时存储 在主机20和HDD 10的HDC 119之间传输的数据的数据缓冲区。HDC 119管理代表存储在缓冲RAM 120中的数据与该数据的盘地址(逻辑 地址)之间对应关系的信息。HDC 119包括用于向主机20报告HDD 10的状态的状态寄存器119a。
CPU 130是主HDD单元11(HDD 10)中的主控制器。CPU 130 包括快闪ROM(FROM)130a。FROM 130a是可重写非易失性存储 器,其中预先存储了控制程序。根据所存储的控制程序,CPU 130控 制HDD 10中的每一部件。
现在描述图1中所示的系统的操作,指从HDD 10向主机20只 发出了执行结果的情况。在下面的描述中,参考(1)该命令涉及数据 传输的情况;(2)该命令涉及数据传输,且在数据传输之前指示数据 传输类型的数据从HDD 10被发送到主机数据20的情况;以及(3) 该命令不涉及数据传输的情况。
(1)该命令涉及数据传输的情况
参照图3的序列图和图4的流程图说明当从主机20发出涉及数 据传输的命令(例如,读命令)时,怎样进行操作。图3显示由主机 20发送到SATA总线30的信号(“主机Tx”信号)和由主机20从SATA 总线30接收的信号(“主机Rx”信号)怎样与SATA总线30、ATA 总线13和ATA总线23的省电模式相关。图4例示由HDD 10的SATA 接口控制电路12执行的操作。
假设从主机20的主机单元21向ATA总线23提供了符合ATA 标准并针对于HDD 10的读命令,并假设该读命令是指示读数据的直 接存储器存取(DMA)的读DMA命令。ATA总线23上的读命令由 主机20的SATA接口控制电路22接收。SATA接口控制电路22的链 路/传输层处理单元222将其接收的命令转换为基于SATA标准的指定 帧指令结构(FIS)。来自ATA总线的命令被转换为称作“寄存器-主 机到装置FIS”的指定FIS 31。FIS 31是一序列的串行数据。在FIS 31 中含有关于读命令的信息。FIS(“寄存器-主机到装置FIS”)31经由 SATA总线30传输到HDD 10。
HDD 10的SATA接口控制电路12接收通过SATA总线30传输 到那里的FIS(“寄存器-主机到装置FIS”)31。SATA接口控制电路 12的链路/传输层处理单元122分析所接收的FIS 31(步骤S1)。根 据FIS 31的内容,链路/传输层处理单元122判定数据读是否由主机 20所命令(步骤S2)。如果是这样,则链路/传输层处理单元122将 接收的FIS 31转换为符合ATA标准的命令(本实施例中的读命令), 并将它传输到ATA总线13(步骤S3)。
链路/传输层处理单元122判定由对应于FIS 31的读命令所请求 的数据是否可被立即传输到主机20(步骤S4)。通过使链路/传输层 处理单元122向HDC 119询问相应数据是否被存储在缓冲RAM 120 中来实现这一判定。以这一方式来实现该判定的原因在于HDC 119 管理表示存储在缓冲RAM 120中的数据与盘地址(逻辑地址)之间 相互关系的信息。如果链路/传输层处理单元122保留这一信息的副本, 则上述的询问不必执行。附带地,为了将数据从HDD 10通过ATA总 线13传输到主机20,使用称作“数据有效负荷FIS”的指定FIS。可通 过使用“数据有效负荷FIS”被传输的数据的字节数是“4”的整数倍(该 数据包括至少4个字节)。因此,只要至少4个字节的数据存储在缓 冲RAM 120中,该数据可以立即被传输到主机20。
假设HDD 10未准备好向主机20传输由对应于所接收的FIS 31 的读命令所请求的数据。在这一情况下,由该读命令所请求的数据必 须从盘111中读出。这一操作包括寻道操作和等待操作。寻道操作是 用于将头112移动到盘111上的目标磁道的操作。等待操作是在头112 移动到目标磁道之后盘111的目标扇区旋转到头112的位置之前所必 须的操作。一般来说,寻道和等到操作需要几毫秒到几十毫秒。换句 话说,这一时间长度是在要被传输(传递)的数据准备好之前所需的, 因此,SATA接口控制电路12无需与主机20通过SATA总线30进行 通信。如果在数据未准备好之前SATA总线30根据ATA总线23的 “BUSY”状态被设置为“IDLE”(PHY READY)模式(非省电状态), 则电能徒然被使用。
如果由对应于所接收FIS 31的读命令所请求的数据不能被传输 到HDD 10,则本实施例执行下述操作。首先,SATA接口控制电路 12的链路/传输层处理单元122预知所请求数据不能在当前时间T0内 准备好。根据这一预知,链路/传输层处理单元122向SATA总线30 传送“PARTIAL REQUEST”32(步骤S5)。“PARTIAL REQUEST”32 用于将SATA总线30设为“PARTIAL”模式(省电状态)。结果,SATA 总线30从HDD 10所执行的操作中解除出来,并被设为“PARTIAL” 模式。
此后,链路/传输层处理单元122等待为传输与所接收的FIS对 应的读命令所请求的数据的所作的准备完成(步骤S6)。在完成为传 输所请求的数据所作的准备之后,链路/传输层处理单元122执行下述 操作,以便将数据通过SATA总线30传输出去。即,链路/传输层处 理单元122向SATA总线30传送“IDLE REQUEST”33以使SATA总 线30从“PARTIAL”模式切换到“IDLE”模式(步骤S7)。结果,SATA 总线30从HDD 10所执行的操作中解除出来,并被设为“IDLE”模式。 可以通过检测指示数据传输开始的中断的产生,来判定为传输所请求 数据所作的准备是否完成。该中断例如是从HDC 119提供到SATA 接口控制电路12的链路/传输层处理单元122的。该中断是在所请求 数据从盘111中读出并被存储在缓冲RAM 120中时所产生的。只要 所请求数据被存储在缓冲RAM 120中,上述中断立即产生以响应读 命令。
在链路/传输层处理单元122将SATA总线30切换回“IDLE”模 式以响应“IDLE REQUEST”33之后,执行步骤S8的处理。在这一步 骤中,链路/传输层处理单元122将从HDC 119传输到这里的数据(读 数据)通过SATA总线30传输到主机20。称作“数据有效负荷FIS” 的指定FIS 34用于这一传输。在所有数据传输到主机20之后,链路/ 传输层处理单元122向主机20通知HDD 10中所获得的命令(读命令) 执行结果(步骤S9)。称作“寄存器-装置到主机FIS”的指定FIS 35 用于这一通知。在本实施例中,在HDD 10中所获得的命令执行结果 被存储在状态寄存器119a中。因此在步骤S9中,状态寄存器119a 的内容被嵌入FIS 35,并被传输到主机20。
当头112已经处于目标磁道上时,无需寻道操作,且可以在相当 短的时间内准备好所请求数据。在从“PARTIAL”模式切换所需的时间 考虑中,将SATA总线30设为“PARTIAL”模式未必是有效的。带着 这种想法,可以使用图5或6中所示的流程图中例示的操作来代替图 4中所示流程图中例示的操作。在图5和6中,只显示不同于图4中 所示的那些操作的操作。必要时,还参考图4。
在图5的流程图的例子中,检验HDD 10是否可以立即将所请求 数据传输给主机20(步骤S4)。如果HDD 10不能立即传输所请求数 据,则链路/传输层处理单元122预测所请求数据可以被准备好的时间 T1(步骤S11)。可以通过根据头112当前所位于的磁道的位置和头 112将要移动到的目标磁道的位置计算寻道时间,来预测时间T1。可 以根据寻道时间来预测时间T1。在预测时间T1之后,链路/传输层处 理单元122判定所预测时间T1是否在预定时间T0之后(步骤S12)。 只有当预测时间T1在预定时间T0之后,链路/传输层处理单元122 才将SATA总线30设为“PARTIAL”模式(步骤S5)。当所预测时间 T1不在时间T0之后时,链路/传输层处理单元122等待所请求数据准 备好(步骤S13)。当所请求数据已准备好,链路/传输层处理单元122 通过使用FIS 34将它通过SATA总线30传输给主机20(步骤S8)。
在图6的流程图的例子中,检验HDD 10是否可以立即将所请求 数据传输给主机20(步骤S4)。如果HDD 10不能立即传输所请求数 据,则链路/传输层处理单元122确定T2是所请求数据必须被准备好 的时间限制(T2<T0)(步骤S21和S22)。只有当为传输所请求数 据所作的准备不能在时间T2之后完成(其意味着未产生用于开始该 数据传输的中断)时,链路/传输层处理单元122才将SATA总线30 设为“PARTIAL”模式(步骤S5)。另一方面,当为传输所请求数据 所作的准备在时间T2之前完成时,链路/传输层处理单元122通过使 用FIS 34将所请求数据通过SATA总线30传输到主机20(步骤S8)。
(2)该命令涉及数据传输,且指示数据传输类型的数据在数据 传输之前从HDD 10传输到主机20的情况
下面描述情况(2),指该涉及数据传输的命令是读命令的情况。 该描述是参照图7的序列图、图8的流程图、图9的序列图、和图10 的流程图作出的。在图7和9中,用与图3中使用的相同参考标号来 标明与图3相同的描述。在图10和11中,用与图4中使用的相同参 考标号来标明与图4相同的描述。在使用SATA总线30的数据传输 中,数据发送方可能必须指示数据接收方所需的是什么操作。该指示 在数据被实际传输之前通过使用指定FIS从数据发送方被发送到数据 接收方,且该指示包括数据传输类型的标识。在SATA标准中,为通 知数据传输的类型定义了“PIO建立FIS”和“DMA建立FIS”。前面的 FIS用于程控输入/输出(PIO)协议的通知,后面的FIS用于DMA (第一方DMA)协议的通知。PIO协议指示主机20主动执行的数据 传输的类型。
“数据有效负荷FIS”可以在数据传输之前作为用于通知数据类型 的FIS传输。如果必须通知数据传输类型,显示于图7和8中的技术 或显示于图9或10中的技术中的任一种都可应用于在“PARTIA”模式 中使用的控制技术。在图7-10中,“DMA建立FIS”用作通知数据传 输类型的FIS 36。
在图7的序列图和图8的流程图中,在步骤S8(其中传输FIS (“数据有效负荷FIS”)35)之前,立即执行步骤S10(其中FIS(“DMA 建立FIS”)36从SATA接口控制电路12传输到主机20)。在图7和 8所示的情况中,在从主机20接收到FIS(“寄存器-主机到装置FIS”) 31之后,SATA接口控制电路12立即发送“PARTIAL REQUEST”32 以将SATA总线30设为“PARTIAL”模式(步骤S1到S5)(这一操 作在还未作出数据传输准备时执行)。在这一方面,图7和8中所示 的情况与图3的序列图和图4的流程图中所例示的情况相同。
在图9的序列图和图10的流程图中,步骤S10’(其中FIS(“DMA 建立FIS”)36从SATA接口控制电路12传输到主机20)执行以响应 FIS(“寄存器-主机到装置FIS”)31的接收(步骤S1到S3)。在图9 和10所示的情况中,在步骤S10’(其中FIS(“DMA建立FIS”36) 被传输)执行之后,SATA接口控制电路12立即发送“PARTIAL REQUEST”32以将SATA总线30设为“PARTIAL”模式(步骤S5) (这一操作在还未作出数据传输准备时执行)。图7-10中所示的操作 还在“PIO建立FIS”被用于通知数据传输的类型时执行。
(3)该命令不涉及数据传输,且主机20只被从HDD 10通知了 命令执行结果
结合情况(1)和(2),参考在涉及数据传输的命令执行期间 “PARTIAL”模式被控制的方式。然而,图1中所示的系统能够执行不 涉及数据传输的命令。用于激励HDD 10的SPM 113的发送机激励命 令是这样的命令的一个例子。因此,下面给出关于当主机20发出一个 不涉及数据传输的命令时怎样执行操作的说明。参照图11的序列图和 图12的流程图来进行说明。假设从主机20的主机单元21向ATA总 线23提供了符合ATA标准和针对于HDD 10的命令,且假设该命令 不涉及数据传输(这样的命令的一个典型例子是发送机激励命令)。 ATA总线23上的命令由主机20的SATA接口控制电路22接收。SATA 接口控制电路22的链路/传输层处理单元222将它接收的命令转换为 指定FIS(“寄存器-主机到装置FIS”)91。FIS(“寄存器-主机到装置 FIS”)91通过SATA总线30传输到HDD 10。
HDD 10的SATA接口控制电路12接收通过SATA总线30传输 到那里的FIS(“寄存器-主机到装置FIS”)91。SATA接口控制电路 12的链路/传输层处理单元122分析所接收的FIS 91,并判定FIS 91 是否是通过转换从不涉及数据传输的命令获得的(步骤S31和S32)。 如果是这样,则链路/传输层处理单元122将所接收的FIS 91转换为 符合ATA标准且不涉及数据传输的命令(步骤S33)。该命令由HDD 10的主HDD单元11接收,并由主HDD单元11执行。在接收到该 命令的时刻和主机20被通知了通过执行该命令所获得的命令执行结 果的时刻之间的时间段内,SATA总线30无需保持在“IDLE”模式(非 省电状态)。
在执行了上述步骤S33之后,链路/传输层处理单元122向SATA 总线30传送“PARTIAL REQUEST”92(步骤S34)。由于这一缘故, SATA总线30可被HDD 19设为“PARTIAL”模式。假设被传送到ATA 总线13的命令执行结果此后被置入到HDC 119的状态寄存器119a 中。在这一情况中,链路/传输层处理单元122确定该命令的执行已结 束,且现在可以向主机20通知该命令执行结果(步骤S35)。根据这 一确定,链路/传输层处理单元122向SATA总线30传送“IDLE REQUEST”93,以将SATA总线30从“PARTIAL”模式切换到“IDLE” 模式(步骤S36)。在SATA总线30根据“IDLE REQUEST”93被切 换回“IDLE”模式之后,链路/传输层处理单元122执行步骤S37。在这 一步骤,链路/传输层处理单元122使用称作“寄存器-装置到主机FIS” 的指定FIS 94,通过SATA总线30向主机传送由状态寄存器119a所 指示的命令执行结果。
在上述实施例中,SATA接口控制电路12根据主机20向HDD 10 发出的命令的执行方式,执行将SATA总线30设为“PARTIAL”模式 中的所有控制。然而,可以通过允许或者主HDD单元11的HDC 119 或者CPU 130控制SATA接口控制电路12来实现这一控制。上述实 施例针对于配备了HDD(硬盘驱动器)的系统的。但是,本发明还可 应用于配备了除HDD之外的盘驱动器,诸如光盘驱动器、磁光盘驱 动器等。只要该盘驱动器具有SATA接口就足够了。此外,本发明应 用于配备了除盘驱动器之外的外部存储装置,诸如磁带装置。在这一 情况下同样地,只要该外部存储装置具有SATA接口就足够了。本发 明又可应用于配备了除盘驱动器之外的电子装置,只要该电子装置具 有SATA接口即可。
对于本领域的技术人员来说,很容易得出其他优点和修改。因此, 本发明在其更广阔的方面不限于这里显示和描述的具体细节和代表性 实施例。因此,可以作出各种修改,而不脱离由所附权利要求定义的 本发明总体构思的精神和范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈