首页> 中国专利> 串行AT嵌入式接口电子设备及串行AT嵌入式总线节能方法

串行AT嵌入式接口电子设备及串行AT嵌入式总线节能方法

摘要

在一个具有串行ATA接口的电子设备(10)中,当检测到预置命令的发出或接收时(S2),确认装置(如CPU(130))便确认该命令执行完成(S4)。当确认该命令执行完成时,也可以是CPU(130)的控制器控制该串行ATA接口向一种节能方式转移(S8)。

著录项

  • 公开/公告号CN1624633A

    专利类型发明专利

  • 公开/公告日2005-06-08

    原文格式PDF

  • 申请/专利权人 株式会社东芝;

    申请/专利号CN200410068692.X

  • 发明设计人 猪狩史;

    申请日2004-09-02

  • 分类号G06F3/00;G06F3/06;G11B19/00;

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人康建忠

  • 地址 日本东京都

  • 入库时间 2023-12-17 16:12:33

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-11-24

    未缴年费专利权终止 IPC(主分类):G06F3/00 授权公告日:20070124 终止日期:20091009 申请日:20040902

    专利权的终止

  • 2007-01-24

    授权

    授权

  • 2005-08-10

    实质审查的生效

    实质审查的生效

  • 2005-06-08

    公开

    公开

说明书

技术领域

本发明涉及具有串行AT嵌入式(ATA)接口的电子设备,更具体地说,涉及以盘驱动器为代表的电子设备,以及用于串行ATA总线的节能方法,它适于减少附合串行接口ATA标准的串行ATA总线的功耗。

背景技术

如在“串行ATA:高速串行化AT嵌入式接口”修订版1.0a(串行ATA工作组,2003年1月7日)(下文中称作现有技术文档)中所述,已知做出了串行ATA接口的标准,这些接口是用于盘驱动器的新型接口。串行ATA接口用作以磁盘驱动器为代表的外部设备和以个人计算机为代表的主机(主机系统)之间的接口。在这一点上,串行ATA接口类似于传统的ATA接口(即并行ATA接口)。

具有串行ATA接口的外部设备,如磁盘驱动器(下文中称作“HDD”)由串行总线连接于主机。在这样的HDD中,为了保证与ATA接口的兼容性,必须将一个ATA接口转换成一个串行ATA接口和将一个串行ATA接口转换成一个ATA接口。这种接口转换是由例如称作串行ATA桥的一个LSI(桥LSI)完成的。

在串行ATA接口标准中,定义了三层不同功能,即物理层、链路层和传输层。物理层具有执行高速率串行数据发送和接收的功能。物理层解释收到的数据并根据解释结果将数据发送到链路层。物理层还向链路层输出串行数据信号,以响应来自链路层的请求。链路层向物理层提供输出信号的请求。链路层还向传输层提供从物理层发送来的数据。传输层根据ATA标准完成用于操作的转换。假定上述桥LSI被用于HDD中,则传输层的作用对应于利用ATA连接的传统主机的ATA信号输出单元的作用。根据ATA接口标准,桥LIS经由ATA总线(或依从ATA总线的总线)连接到HDD的盘控制器(HDC)。因此,在桥LSI和HDD的HDC之间的连接中,所进行的操作等效于ATA接口标准中规定的那些操作或与该标准兼容的那些操作。在这种情况下,HDD的排除桥LSI的部分(下文中称作“主HDD单元”)把桥LSI看作一个用于向主HDD单元发布命令的装置(主机)。因此,主HDD单元的操作方式与利用ATA连接的传统HDD的操作方式相同。这样,关于逻辑命令等协议,串行ATA接口与ATA标准有兼容性。然而,由并行ATA接口处理后的数据信号(并行数据信号)必须被转化为串行数据信号。

串行ATA接口标准规定一种针对串行ATA总线的节能方式,以及与传统ATA接口(并行ATA接口)标准一致的节能方式。串行ATA总线节能的想法在传统ATA接口中是不存在的。

串行ATA接口标准为串行ATA接口规定了三种供电管理方式,即“PHY准备好(空闲)”、“部分的”和“微睡”(slumber),“PHY准备好”方式表明一种状态,其中用于实现物理层(PHY层)操作的电路(PHY电路)以及主锁相环(PLL)电路二者都在操作,从而同步主机和外部设备之间的接口状态。“部分”方式和“微睡”方式表明一种状态,其中PHY电路在操作,但接口信号处于中性状态。

“部分的”和“微睡”方式之间定义的差别在于从它们恢复到“PHY准备好(空闲)”方式所需的时间。更具体地说,规定从“部分的”方式恢复所需时间必须不超过10μs。另一方面,规定从“微睡”方式恢复所需时间必须不超过10ms。只要恢复时间和接口用电状态符合标准,制造商能选择设备的一部分,它的节能方式应在“部分的”方式或“微睡”方式下执行(即能选择在此方式下应被关掉的电路)。

向符合传统的ATA接口标准的节能状态(ATA节能)转移基本上是在主机控制下实现的。作为ATA节能方式,例如规定了“空闲”、“待用”和“睡眠”方式。另一方面,向用于串行ATA总线的节能(串行ATA节能)方式(即“部分”或“微睡”方式)的转变是在主机或者外部设备的控制下实现的。然而,上述现有技术文档没有关于控制串行ATA节能状态的任何描述(特别是用于使ATA节能状态与串行ATA节能状态关联的技术)。

这里假定一个串行ATA接口被用作一个HDD的接口,而且该HDD经由一个串行ATA总线与一个主机连接。在这种情况中,如前所述,必须提供一个串行ATA接口控制电路(串行ATA桥)用于将传统的ATA接口(并行ATA接口)转换为串行ATA接口。在这个HDD中,串行ATA接口控制电路和HDD的硬盘控制器(HDC)之间进行接合的操作等同于或符合于传统ATA接口标准中规定的操作。因此,HDC把串行ATA桥认作如同发布命令的主机本身。这意味着HDD中除了串行ATA桥外部部分之外的其他部分的操作类似于传统的操作。在具有串行ATA接口的HDD中,能在HDD的印刷电路板(PCB)上形成将串行ATA接口控制电路连接到一个HDC的传统ATA总线(即并行ATA总线)。所以,在具有串行ATA接口的HDD中,ATA总线的导线长度能被缩短,因此能期望提高数据传输速率,如果使用并行ATA总线,这是难于实现的。

串行ATA接口标准是在这些标准与传统的ATA标准(并行ATA标准)兼容的假定下产生的。所以,为了实现在串行ATA标准中的节能新思想,就必须提供具有新手段的主机,以其新手段指定新的节能方式。然而,这类新手段可能大大偏离传统的ATA标准。再有,向主机提供新手段可能显著影响整个系统。

发明内容

本发明的一个目的是通过有效地利用串行ATA标准中规定的用于串行ATA总线的节能方式来减少功耗。

根据本发明的一个实施例,提供了一个具有串行ATA接口的电子设备,具有:检测器,用于检测预定命令的发出或接收;确认装置,用于确认由检测器检测到的命令执行完成;以及控制器,用于当由确认装置确认执行完成时控制串行ATA接口向节能方式的转移。

根据本发明的又一实施例,提供了一种具有串行ATA接口的盘驱动器,该串行ATA接口经由串行ATA总线与主机连接。该盘驱动器具有报告装置用于向主机报告从主机发向该硬盘驱动器的命令已执行完成;以及控制器,用于控制在报告装置报告一个预置命令执行完成后串行ATA接口向节能方式的转移。

本发明的又一些实施例涉及电子设备中采用的串行ATA接口的节能方法。该方法检测预置命令的发出和接收;确认检测到的命令的执行完成;以及当确认检测到的命令执行完成时便将该串行ATA接口转移到节能方式。

本发明的另一实施例是关于在串行ATA接口和并行ATA接口之间进行接口转换的方法。这一方法测量一个预置时间,测量从每次串行ATA接口根据所接收的要求接口转换的命令转移到空闲状态时开始;如果在预置时间结束后仍没有再发送命令则将串行ATA接口从空闲方式转移到预定的节能方式。

本发明的又一个实施例涉及一种方法,用于在具有串行ATA接口的盘驱动器中节能,该串行ATA接口经由串行ATA总线与主机连接。该方法向主机报告从主机向盘驱动器发送的一个命令执行完成;并控制在报造装置报告一个预置命令执行完成后串行ATA接口向节能方式的转移。

附图说明

被纳入本发明并作为本说明一部分的附图说明本发明的实施例,并与上文给出的一般描述以及下文给出的对实施例的详细描述一起,用于解释本发明的原理。

图1是方块图,说明根据本发明一个实施例的一个系统的配置,该系统装备有一个磁盘驱动器(HDD)10;

图2是方块图,说明图1中出现的HDD10中包含的一个主HDD单元11;

图3说明该实施例中采用的ATA节能方式的转移;

图4说明图3中每个ATA节能方式之间的关系以及在每个ATA节能方式中HDD主单元11的每个电路的断开状态;

图5以例说明从图3中的每个ATA节能方式M1至M5恢复到读/写方式M0所需的时间;

图6说明图3中每个ATA节能方式之间的关系以及当HDD10处在每个ATA节能方式时设置的相应的SATA(串行ATA)节能方式;

图7是流程图,用于解释当HDD10的主HDD单元11已收到来自主机20的命令时所井行的电源控制;以及

图8说明在实施例的一个修改中采用的SATA节能方式的转移。

具体实施方式

下面将参考附图详细描述一个实施例,其中本发明被应用于装备一个磁盘驱动器的系统,该磁盘驱动器具有一个串行ATA(SATA)接口。图1是方块图,说明根据本发明的实施例装备了磁盘驱动器(HDD)10的系统的配置。如图中所示,HDD10包含一个主HDD单元11和SATA接口控制电路12。主HDD单元11对应于使用ATA接口进行并行数据传输的传统HDD。SATA接口控制电路12是一个用于外部设备的SATA(串行ATA)桥。SATA接口控制电路12经由SATA总线(串行ATA总线)30与主机(主机系统)20连接。SATA接口控制电路12用于完成ATA接口和SATA接口之间的接口转换,它由例如一个大规模集成电路(LSI)构成。特别是,SATA接口控制电路12具有将经由SATA总线30发送的指令转换成适于ATA总线13(ATA接口)的指令并经由ATA总线13将其发送给主HDD单元11的功能。

主机20是一个电子设备,如个人计算机,它使用HDD10作为存储器。主机20包含一个主机单元21和SATA接口控制电路22。主主机单元21对应于使用ATA接口进行并行数据传输的传统主机。SATA接口控制电路22是一个主机桥,经由ATA总线(并行ATA总线)23与主主机单元21连接,并经由SATA总线(串行ATA总线)30与HDD10连接。SATA接口控制电路22由LSI构成,用于完成ATA接口和SATA接口之间的接口转换,类似于HDD10的SATA接口控制单元12。特别是,SATA接口控制电路22具有将经由SATA总线30发送的指令转换成适于SATA总线30(SATA接口)的指令并经由SATA总线30发送给HDD10的功能。

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各自的链路层处理单元响应来自处理单元122和222的传输层处理单元的请求,向物理层处理单元121和221提供输出信号请求。再有,处理单元122和222各自的链路层处理单元向各自的传输层处理单元提供从物理层处理单元121和221传送来的数据。传输层处理单元完成ATA接口和SATA接口之间的接口转换。

可利用与ATA总线13和23兼容的总线,如外围部件互连(PCI)总线,以代替ATA总线13和23。在这种情况中,能在PCI桥中提供SATA接口控制电路12和22。再有,如果SATA接口控制电路12和22(SATA桥)具有向SATA总线30传送串行ATA接口信号和从SATA总线30接收串行ATA接口信号的功能,则已经足够了。

图2是方块图,说明主HDD单元11的配置。主HDD单元11有一个盘111作为记录介质。盘111的至少一个表面是在其上磁记录数据的表面。头(磁头)112与盘111的这至少一个记录表面相对。为便于绘图,图2显示的是主HDD单元11(HDD10)只包括一个磁头112的情况。然而,通常盘111的两个表面都作为记录介质,具有各自的与之相对的磁头。再有,在图2的例子中,假定主HDD单元11(HDD10)包括单个盘111。然而,它可包括彼此叠放的多个盘111。

盘111被主轴马达(SPM)113高速旋转。磁头112用于对盘111读和写数据。磁头112固定在致动器114的尖端。致动器114有一个音圈马达(VCM)115。致动器114由VCM115驱动,从而在盘111上径向移动磁头112。结果,磁头112被放在目标磁道。SPM113和VCM115由马达驱动器IC116提供的各自的驱动电流(SPM电流和VCM电路)供给能量。马达驱动器IC116向SPM113供给由CPU130指定的SPM电流,向VCM115供给由CPU130指定的VCM电流。

磁头112与磁头IC(磁头放大器电路)117相连。磁头IC117包括一个读放大器用于放大由磁头112读出的读出信号,以及一个写放大器用于将写数据转换成写电流。磁头IC117与一个读/写IC(读/写通道)118相连。读/写IC118是一个信号处理装置,用于完成各种信号处理,如对读出的信号进行模拟到数字的转换,对写数据编码以及对读出的数据解码等。读/写IC118与硬盘控制器(HDC)119相连。

HDC119有盘控制功能,用于控制数据到/从盘111的传输。HDC119包括一个ATA接口。就是说,HDC119有ATA接口控制功能,用于经由ATA总线13从主机20接收或向主机20传送命令(如读/写命令)和数据。然而,在包括具有SATA接口的HDD10的本实施例中,HDC119经由ATA总线13与SATA接口控制电路12相连,这不同于传统的HDD。HDC119经由SATA接口控制电路12以及SATA总线30与主机20相连。HDC119具有缓存器控制功能,用于控制缓存器RAM120。HDC119包括一个状态寄存器119a,用于向主机20报告HDD10的状态。

缓存器RAM120的一部分存储区用作数据缓存区,供暂时存储主机20和HDD10的HDC119之间传送的数据。缓存器RAM120的另一部分存储区用作标志存储区120a,供存储下文要描述的标志F,以及作为命令接收时间存储区120b,供存储时间信息以指出已接收了一个命令的时间。区域120b用作环形缓存区,供存储时间信息以指出已接收了预定数量最近命令的时间点。

CPU130是主HDD单元11(HDD10)中的主控制器。CPU130包括一个非易失存储器(未示出),它预先存储一个控制程序(例如一个闪速ROM作为可编程非易失存储器)。CPU130根据非易失存储器中预存的控制程序控制HDD10中的每个部件。如果HDC119从主机20接收一个为ATA接口指定节能方式(ATA节能方式)的特定命令,则CPU130将HDD10设置为由该命令指定的ATA节能方式。当设置ATA节能方式时,CPU130经由HDC119和SATA总线13使SATA接口控制电路12预先设置与该ATA节能方式相关的一种SATA节能方式。

图3显示该实施例中采用的各ATA节能方式(符合ATA接口标准的节能方式)的转移。在该实施例中,ATA节能方式包括五种方式:活跃空闲方式M1、性能空闲方式M2、低能耗空闲方式M3、待用方式M4和睡眠方式M5。除了节能M1至M5外,还提供了读/写方式(活跃方式)M0作为另一种ATA接口方式,使得允许一个读/写命令被执行。能耗按如下顺序减小:读/写方式M0、活跃空闲方式M1、性能空闲方式M2、低能耗空闲方式M3、待用方式M4以及睡眠M5。

在HDD10(主HDD单元11)中,在读/写方式M0中完成由读/写命令所命令的读/写操作之后,HDD10在CPU130控制下转移到活跃空闲方式M1,以减小HDD10的能耗。如果从转移到活跃空闲方式M1起经过一个预定时间T1之后仍没有由主机20发出的再一个命令,则HDD10在CPU130控制下自动转移到性能空闲方式M2,以进一步减小HDD10的能耗。方式M1和M2是由制造商任意指定的ATA节能方式。

如果从转移到性能空闲方式M2起经过一个预定时间T2之后仍没有由主机20发出的再一个命令,则HDD10在CPU130控制下自动转移到低能耗空闲方式M3,以进一步减小HDD10的能耗。方式M3对应于ATA接口标准中的“空闲”。因此,如果在方式M1或M2中由主机20发出一个空闲命令,HDD10的ATA节能方式便根据此命令转移到低能耗空闲方式M3。类似地,如果在方式M1、M2或M3中由主机20发出一个待用命令,HDD10的ATA节能方式便根据此命令转移到待用方式M4。立即待用命令已知为一种待用命令。使用这一命令,能指定转移到待用方式所需时间。一旦发出立即待用命令之后,在经过指定时间之后方式转移到待用方式M4。再有,如果在方式M1、M2、M3或M4中由主机20发出一个睡眠命令,则HDD10的ATA节能方式根据此命令转移到睡眠方式M5。如果在方式M1、M2、M3、M4或M5中由主机20发出一个读/写命令,则HDD10的节能方式根据此命令转移到读/写方式M0。

图4显示图3中每个方式M0至M5之间的关系和在每个方式M0至M5中HDD主单元11的每个电路的断开状态。在读/写方式M0,向主HDD单元11的每个电路供电,从而能在主HDD单元11中同时进行读和写操作。在活跃空闲方式M1、性能空闲方式M2和低能耗空闲方式M3每种方式中,向主HDD单元11中一部分电路的供电被停止。在活跃空闲方式M1中,盘111由SPM113转动而磁头112由伺服控制定位到盘111的某一磁道上。在性能空闲方式M2中,盘111由SPM113转动而磁头112位于任意磁道,没有受到伺服控制。在低能耗空闲方式M3中,尽管盘111由SPM113转动,但磁头112从盘111退回。因此,在活跃空闲方式M1中,只有对读/写IC118的一部分(即写通道)的供电被停止。另一方面,在性能空闲方式M2中,对马达驱动器IC116的一部分(即VCM驱动器)的供电和对读/写IC118的一部分的供电被停止。再有,在低能耗空闲方式M3中,对马达驱动器IC116的一部分的供电被停止,对磁头IC117和读/写IC118的供电被停止。在上述空闲方式之间,恢复到读/写方式M0所需时间(即达到能再次执行读/写操作所需要的恢复时间)是不同的。按活跃空闲方式M1、性能空闲方式M2和低能耗空闲方式M3的顺序,这一恢复时间被依次设置得更长。而所需能耗按活跃空闲方式M1、性能空闲方式M2和低能耗空闲方式M3的顺序依次降低。换言之,恢复时间越长,则能耗越低。

在待用方式M4中,SPM113的转动被停止。在这一方式中,对SPM113、马达驱动器IC116、磁头IC117、读/写IC118以及缓存器RAM120的供电都被停止。因此,在待用方式M4中的能耗低于低能耗空闲方式M3,而在前者中的恢复时间长于后者。在睡眠方式M5中,只向HDC119的一部分(即复位处理电路)供电,而对其他电路的供电被停止。只有通过复位操作才能从睡眠方式M5恢复到读/写方式M0,所需恢复时间几乎等于从待用方式M4恢复所需时间。在方式M0至M5当中,睡眠方式中的功耗最小。

图5显示从每种方式M1至M5恢复到读/写方式M0所需时间举例。图6显示每种方式M0至M5与HDD10处于每种方式M0至M5时由CPU130设置的相应SATA节能方式之间的关系。在图6的举例中,当ATA节能方式(ATA接口方式)是读/写方式M0时,SATA节能方式(SATA接口方式)被设为空闲方式M11。再有,当ATA节能方式是活跃空闲方式M1或性能空闲方式M2时,SATA节能方式被设为部分方式12。然而,由于性能空闲方式M2只在活跃空闲方式M1之后被设置,故当HDD10转移到性能空闲方式M2时部分方式M12保持不变。再有,当ATA节能方式是低能耗空闲方式M3,待用方式M4或睡眠方式M5时,SATA节能方式被设为微睡方式M13。

现在参考图7的流程图,使用当HDD10的主HDD单元11已接收一个来自主机20的命令时所执行的供电控制作为举例来描述图1所示系统的操作。这里假定主机20的主主机单元21已向ATA总线23发出一个符合ATA接口标准的指向HDD的命令。在ATA总线23上该命令被主机20的SATA接口控制电路22接收。SATA接口控制电路22的链路/传输层处理单元222将所接收的命令转换成一个符合SATA接口标准的命令(即转换成适于SATA总线30的命令),并将其发送给SATA总线30。在SATA总线30上该命令由HDD10的SATA接口控制电路12接收。SATA接口控制电路12的链路/传输层处理单元122将所接收的命令转换成符合ATA接口标准的命令(即转换成适于ATA总线13的命令),并将其发送给ATA总线13。在ATA总线13上该命令由HDD10的主HDD单元11中包含的HDC119接收。HDC119把SATA接口控制电路12认作一个主机。由HDC119接收的命令被传送给CPU130。

一旦收到来自HDC119的命令,CPU130将指出接收命令时间的命令接收时间信息存储在命令接收时间存储区120b(步骤S1)。接下来,CPU130确定所接收的命令是否是预置命令之一(步骤S2)。预置命令指出与节能有关的命令,如空闲命令、待用命令和睡眠命令。

如果所接收的命令是预置命令之一,则CPU130进行以下处理。首先,CPU130解释所接收的命令并执行由该命令指出的操作(步骤S3)。具体地说,如果所接收的命令是空间命令,则CPU130将HDD10的ATA节能方式转移到低能耗空闲方式M3。再有,如果所接收的命令是待用命令,则CPU130将HDD10的ATA节能方式转移到待用M4。如果所接收的命令是睡眠命令,则CPU130将HDD10的ATA节能方式转移到睡眠方式M5。

一旦完成命令执行并确认完成,则CPU130执行处理以向主机20报告命令执行完成(步骤4)。具体地说,CPU130在状态寄存器119a中设置一个响应状态,指出该命令执行完成,并向ATA总线13发送一个中断信号。SATA接口控制电路12响应该中断信号,读出状态寄存器119a的内容。根据所读出的状态寄存器119a的内容,SATA接口控制电路12经由SATA总线30向主机20发送一个命令完成报告(下文中称作“命令执行完成报告”),该报告符合SATA接口标准。一旦从SATA总线30接收到命令执行完成报告,主机20的SATA接口控制电路22经由ATA总线23向主主机单元21发送一个中断信号。响应该中断信号,主主机单元21接收来自SATA接口控制电路22的命令执行完成报告(即指出命令完成的一个响应,下文中将称作“命令完成响应”)。

在该实施例中,如果从主机20向HDD10发送的命令是预置命令之一,即与节能有关的命令之一,则CPU130对SATA接口控制电路12进行SATA节能方式控制(即对SATA总线30进行电源控制)。在这一控制中,如果该命令是一个空闲命令、待用命令或睡眼命令,则SATA节能方式转移到微睡方式M13。结果,在串行ATA标准中规定的串行ATA节能功能能被有效地应用于减小能耗,与传统的ATA标准保持兼容性。

CPU130对SATA节能方式的控制是经由ATA总线13向SATA接口控制电路12的链路/传输层处理单元122(链路层处理单元)发送一个特定原语(primitive)而实现的。该特定原语含有一个信号图案,用于指定一个符合SATA接口标准的SATA节能方式。SATA接口控制电路12可包括一个控制寄存器,用于SATA节能方式控制。在这种情况中,能通过CPU130对控制寄存器的控制,将SATA总线30设置成目标SATA节能方式。

由于下述理由,该实施例不利用这样一种机制,在该机制中,在报告完成一个与ATA节能有关的命令之后(即在命令完成响应之后),SATA总线30不立即转移到相应的SATA节能方式。如果在报告一个命令执行完成之后SATA总线30立即转移到微睡方式M13,而且如果必须发出一个指出其后命令完成的响应,则在该响应变为能被返回之前最多需要10ms的恢复时间。换言之,根据微睡方式M13的定义,当SATA总线30从微睡方式M13恢复到空闲方式M11时,最多需要10ms时间。例如,假定主机20向HDD10发出一个待用命令,例如一个立即待用命令(standby immediate command),则监视器使用检验供电方式命令停止SPM113。在这种情况中,如果在报告该待用立即命令执行完成之后(即在命令完成响应之后),SATA节能方式立即转移到微睡方式M13,则指出其后的检验供电方式命令的响应的速度不可避免地被降低。考虑到这一点,在该实施例中,SATA总线30不是在命令完成响应之后无条件地立即转移到微睡方式M13。

现在将更详细地描述这一点。这里假定在一个待用立即命令执行完成时SATA总线30转移到微睡方式M13之后主机20立即向HDD10发出一个检验供电方式命令。在这种情况中,当发出该检验供电方式命令时,SATA总线30已经转移到微睡方式M13。为经由SATA总线30从主机20向HDD10的HDC119传送一个命令,必须将SATA总线30恢复到可传送命令的状态,即空闲方式M11。就是说,为传送检验供电方式命令,主机20的SATA接口控制电路22执行一个恢复过程。结果,主机20认识到,由来自HDD10的指出检验供电方式命令的执行完成的响应被恢复SATA总线30到空闲方式M11所需时间所拖延。

在根据命令的发出SATA总线30从微睡方式M13(节能方式)恢复到空闲方式M11由此使主机20和HDD10可被访问之后,由主机20发出的命令(检验供电方式命令)到达HDD10。在此时,SATA接口控制电路12的链路/传输层处理单元122(传输层处理单元)被操作,以将该命令传送到HDD10的HDC119。这样,由主机20发出的命令在被延迟SATA总线30的恢复时间之后到达HDD10的HDC119。然而,HDC119不能认识这一延迟。

由于这一点,当SATA节能方式受到控制时,接收命令的频率被计算出来(步骤S7)。命令接收频率是根据例如一系列预定数量命令接收时间点计算出来的,这些时间点是由存储在缓存器RAM120的命令接收时间存储区120b中存储的命令接收时间信息指出的。命令接收间隔的平均或可能性最大的命令接收间隔能用作命令接收频率。再有,在当前时间点附近的某个时间段内的一系列命令接收时间点可用于代替一系列预定数量的命令接收时间点。

根据计算出的命令接收频率(命令接收间隔),CPU130确定SATA总线转移到由当前接收的命令所确定的SATA节能方式的时刻,并进行控制,从而在所确定的时刻实现SATA节能方式(步骤S8)。这里假定计算出的命令接收频率,即命令接收间隔,为Tc。在这种情况中,如果当Tc过去时HDC119仍末收到后续命令,则CPU130使SATA接口控制电路12将SATA总线30转移到由当前接收的命令确定的SATA节能方式。结果,当后续命令要被执行的同时,对SATA总线转移到由一个与ATA节能有关的命令所确定的ATA节能方式的控制被延迟TC。在这种情况中,如果主机20已在此时发出后续命令的话,指出该后续指令完成的响应的发出便不会被延迟。

主机20在发出一个与ATA节能有关的命令后很有可能向HDD10发出一个检验供电方式命令。因此,在发出一个响应以指出与ATA节能方式有关的一个命令已经完成之后,CPU130可以确认SPM113的停止,并在该确认时刻之后经过一个预定时段再进行对SATA总线转移到微睡方式M13的控制。这一控制也能防止延迟发出指出一个后续指令的完成的响应。另一种作法是,可在最后一次接收一个不需重新启动SPM113的命令之后经过一个预定时间再进行向微睡方式M13的转移。在该实施例中,不管来自主机20的一个与ATA节能有关的命令是待用命令还是睡眠命令,SATA节能方式都被设置为微睡方式M13。然而,取决于命令的类型或SATA接口控制电路12的结构(恢复到空闲方式M11的能力),SATA节能方式可被设置为部分方式M12,SATA总线能在更短的时间内从这一节能方式恢复到空闲方式M11。

在该实施例中,为减小HDD10的能耗,HDD10利用如图3中所示结构,其中ATA节能方式在设定的各方式之间自动转移,不管来自主机20的与ATA节能有关的命令如何。具体地说,在读/写方式M0中结束读/写处理之后,HDD10的CPU130立即将HDD10从读/写方式M0转移到活跃空闲方式M1。再有,如果在转移到活跃空闲方式M1之后经过一个预定时间T1时仍没有从主机20发出又一个命令,则CPU130将HDD10从活跃空闲方式M1转移到性能(performance)空闲方式M2。类似地,如果在转移到性能空闲方式M2之后经过一个预定时间T2时仍没有从主机20发出又一个命令,则CPU130将HDD10从性能空闲方式M2转移到低能耗空闲方式M3。可建议例如根据前文提到的命令接收频率(命令接收间隔)动态地和周期性地改变时间T1和T2。

在该实施例中,当在CPU130控制下在HDD10中自动进行ATA节能方式转移时,如图6中所示,SATA节能方式转移是与自动ATA节能方式转移同步进行的。具体地说,在从读/写方式M0向活跃空闲方式M1转移期间,SATA节能方式从空闲方式M11转移到部分方式M12。再有,在从活跃空闲方式M1向性能空闲方式M2转移期间,SATA节能方式保持在部分方式M12。在从性能空闲方式M2向低能耗空闲方式M3转移期间,SATA节能方式从部分方式M12转移到微睡方式(slumbermode)M13。在低能能耗空闲方式M3,磁头112从盘111退回。当HDD10在低能耗空闲方式M3时,如果主机20向HDD10提供一个读/写命令,则为恢复到读/写方式M0所需时间比较长,超过30ms(见图5)。在这种情况中,如在该实施例中那样,将SATA总线30(SATA接口)设置为微睡方式M13以压低能耗是有效的。

由主机20对HDD10的访问往往易于集中化或分散化。例如,有这样的情况,在持续一个命令接收间隔很短的状态之后在一段时间里没有接收命令。在这种情况中,可建议由CPU130估计主机20已结束一个应用的执行并设置一个在较短时间内降低能耗的ATA节能方式。再有,在命令接收间隔比较长而且这一状态持续长时间,即在长时间里HDD10连续被访问,可建议由CPU130设置一种ATA节能方式,其中达到减小能耗所需时间比较长。在这两种情况中,SATA节能方式与ATA节能方式同步受到控制。

在该实施例中,HDD10的CPU130控制SATA节能方式(用于SATA总线30节能的方式)。然而,SATA接口控制电路12能进行这一控制。图8显示当SATA接口控制电路12控制SATA节能方式时的状态转移。假定SATA接口控制电路12已收到一个来自主机20的命令,于是SATA总线30被转移(恢复)到空闲方式M11。如果在转移到空闲方式M11的时刻之后经过一段预定时间T4仍没有从主机20发出新的命令,则SATA接口控制电路12控制SATA总线30从空闲方式M11到部分方式M12的转移。再有,如果在转移到部分方式M12的时刻之后经过一段预定时间T5仍没有从主机20发出新的命令,则SATA接口控制电路12控制SATA总线30从部分方式M12到微睡方式M13的转移。微睡方式M13继续到由主机20发出一个新命令为止。可用一个或多个计时器(时间测量装置)测量预定时间T4和T5,而且T4可等于T5。另一种作法是,当SATA总线从空闲方式M11转移到部分方式M12时,部分方式M12可继续到由主机20发出一个新命令时为止。还有,SATA总线可从空闲方式M11直接转移到微睡方式M13。再有,SATA节能方式控制功能可从SATA接口控制电路12分给HDD10的HDC119。

在该实施例中,SATA节能方式控制(SATA总线30的节能)是在HDD10的控制下进行的。为进行SATA节能方式控制,必须使HDD10的SATA接口控制电路12和主机20的SATA接口控制电路22二者都支持SATA节能方式(即,使电路12和22支持SATA节能功能)。如果SATA接口控制电路22不支持SATA节能方式(部分方式M12和微睡方式M13),则向SATA节能方式(部分方式M12或微睡方式M13)的转移是不可能。在下文的描述中,SATA接口控制电路22不支持SATA节能方式的事实等效于主机20不支持SATA节能方式这一表述。在SATA接口标准中规定了识别SATA接口控制电路是否支持SATA节能方式的方法。SATA接口标准规定,根据由SATA总线连接的SATA接口控制电路(在该实施例中的SATA接口控制电路12和22)的相互作用,可识别这些电路是否支持SATA节能方式。这里假定经由SATA总线30与HDD10连接的主机20不支持微睡方式M13。在这种情况中,每次从HDD10向主机20发出一个要把SATA总线转移到微睡方式M13的指令(即含有指出该指令的图案的原语)时,主机20的SATA接口控制电路22返回一个响应,指出向微睡方式M13的转移是不可能的。这样,当主机20不支持SATA节能方式时,如果HDD10向主机20发出一个转移到SATA节能方式的指令,则主机20总是返回一个响应,指出转移到SATA节能方式是不可能的。这样,由HDD10控制主机20中的SATA节能方式失败。换言之,如果HDD10经由SATA总线30连接到一个不支持SATA节能方式的主机20,则由HDD10进行SATA节能方式控制是无用的。

因为上述理由,在该实施例中,如果主机20返回一个响应指出转移到指定的SATA节能方式是不可能的,即如果SATA节能方式控制已失败,则HDD10的CPU130设置存储在缓存器RAM120中的标志存储区120a中的标记F(步骤S9和S10)。如果在另一场合SATA节能方式控制成为必要的,则CPU130参考标志F的状态以确定SATA节能是否可能(步骤S5和S6)。如果标志F被设置,则CPU130确定不可能有SATA节能方式,于是不进行SATA节能方式控制(步骤S7和S8)。结果,当主机20的SATA接口控制电路22不支持SATA节能方式时,SATA节能方式控制便无用,这种无用的控制被防止执行,从而稳定SATA总线30的操作。

当HDD10和主机20二者都支持SATA节能方式时,能在主机20控制下执行SATA节能方式控制。然而,在HDD10中,向ATA节能方式的转移是自动进行的,不管来自主机20的关于ATA节能的命令如何。因此,为了设置适于HDD10当前ATA节能方式的SATA节能方式,在HDD10的控制下与HDD10的ATA节能方式同步地控制SATA总线30的SATA节能方式要比在主机20控制进行这种控制更加合适。

上文描述的实施例是针对一个装备有HDD(磁盘驱动器)的系统。然而,本发明也可应用于装备有另一类盘驱动器(如光盘驱动器、磁-光盘驱动器等)的系统。如果该盘驱动器具有一个SATA接口便足够了。本发明可进一步应用于装备一个电子设备而不是盘驱动器的系统,只要该电子设备有SATA接口。

对于本领域技术人员而言,将容易想到其他优点和修改。所以,本发明在其更广的方面不限于这里显示和描述的具体细节和代表性实施例。因此,可做出各种修改而不脱离所附权利要求及其等同物定义的一般发明概念的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号