当前位置: 首页 > 专利查询>谷歌公司专利>正文

用于数据存储装置的命令及中断分组制造方法及图纸

技术编号:7300421 阅读:183 留言:0更新日期:2012-04-27 01:40
一种数据存储装置可包括多个存储器芯片及一控制器,所述控制器可操作地耦合到所述存储器芯片且经布置及配置以:从主机接收命令群组,其中所述群组中的所述命令中的每一者包括相同群组编号以将所述命令识别为所述群组的部分;使用所述存储器芯片来处理所述命令的所述群组;及在所述命令的所述群组完成处理时产生单个中断并将所述单个中断发送到所述主机。

【技术实现步骤摘要】
【国外来华专利技术】
本说明涉及数据存储装置的命令及中断分组。
技术介绍
可使用数据存储装置来存储数据。数据存储装置可与计算装置一同使用以提供所述计算装置的数据存储需要。在某些实例中,可期望在数据存储装置上存储大量数据。此外,可期望快速地执行从所述数据存储装置读取数据及向所述数据存储装置写入数据的命令。所述数据存储装置上的所述命令执行的吞吐量可与可由所述数据存储装置处理的命令的数目相关。可期望通过增加可由所述数据存储装置处理的命令的数目来实现所述数据存储装置的高吞吐量。除快速地执行所述命令以外,还可期望准确地执行所述命令,使得将数据错误最小化及/或至少可在对数据吞吐量具有最小影响的情况下校正所述数据错误。此外,可期望在所述数据存储装置上执行从所述主机接收的命令,同时最小化对主机的影响及主机上的开销。
技术实现思路
本文件描述一种主机,其具有将命令指定为群组的部分以由数据存储装置处理的驱动器。当所述数据存储装置完成所述群组中的所有所述命令的所述处理时,所述数据存储装置将单个中断发送回到所述主机以指示所述命令群组的所述处理完成。举例来说,一个或一个以上命令线程可由所述驱动器指定为群组。当所述数据存储装置完成所述命令线程时,所述数据存储装置产生单个中断并将所述单个中断发送到所述主机以指示那些经分组命令的所述处理完成。通过将命令指定为群组的部分且在所述命令的所述处理完成时将单个中断发送到所述主机,可最小化对所述主机的影响。以此方式,所述主机可花费较少时间来处理中断且可将较多时间投入到执行其它任务。此外,在一些实例中,所述主机可不能够使用所述数据中的任一者,直到已处理所述群组中的所有所述命令为止。在这些实例中,当已处理少于所述群组中的所有所述命令时通知所述主机可没用。在一个示范性实施方案中,所述主机处的所述驱动器可确定如何将所述命令分组。所述驱动器可基于某些准则将所述命令分组。举例来说,所述驱动器可基于来自与所述驱动器介接的应用程序的所要动作的大小来将所述命令分组。以此方式,所述驱动器可将为来自介接的应用程序的大输入/输出请求的一部分的命令分组在一起。因此,即使当操作系统可将所述大输入/输出请求破分成多个命令以执行所述请求时,所述驱动器也可将所述命令分组在一起。在另一实例中,所述驱动器可基于命令为相同线程的部分来将所述命令分组。所述数据存储装置可包括多个存储器装置及一控制器。所述控制器可经配置以从所述主机接收命令且使用所述多个存储器装置来处理所述命令。当所述控制器接收到来自所述主机的被识别为群组的部分的命令时,则所述控制器可使用所述存储器装置来处理这些命令且仅在已处理所述群组中的所有所述命令时产生单个中断并将所述单个中断发送回到所述主机。以此方式,不针对所述群组中的每一命令或所述群组中的命令子组产生中断。而是,针对整个命令群组产生单个中断。所述控制器可包括经布置及配置以追踪经分组命令的中断处理器。所述中断处理器可经配置以在来自多个命令群组的命令正由所述控制器使用所述存储器装置处理时追踪所述多个群组。在一个示范性实施方案中,所述命令包括命令标头且群组编号由所述驱动器插入到所述命令标头中使得可由所述中断处理器来追踪所述命令。所述命令标头还包括旗标,所述旗标可由所述驱动器设定以指示命令为所述群组中的最后命令。所述中断处理器可经配置以辨识所述最后命令旗标,所述最后命令旗标可充当在所述命令已完成处理时产生所述单个中断的指示符。在一个示范性实施方案中,所述控制器可包括用于对来自主机的命令进行追踪、 排序、排队及处理以在数据存储装置上执行的命令处理器。所述命令处理器可经布置及配置以通过给来自所述主机的传入命令中的每一者指派全局时隙识别符来追踪所述命令且使用基于所述命令的年龄的有序列表来对所述命令进行排队及排序。所述命令处理器可经配置以针对指定给同一存储位置的命令维持如从主机接收的命令次序。所述命令处理器还可经配置以针对指定给不同存储位置的命令无序地取命令。以此方式,在维持次序重要的情况下将命令的次序维持为如从主机接收的次序。同时,所述命令处理器通过针对指定给不同存储位置的命令无序地取命令来保持所有存储位置实质忙碌。所述命令处理器使得能够通过在命令队列中具有指定命令的实质所有存储位置并行地处理命令。当所述命令处理器在所有个别命令正在被处理时对其进行追踪时,所述中断处理器可追踪为命令群组的部分的命令。以此方式,所述控制器可以非邻接方式来处理命令,其中包括为命令群组的部分的命令。在产生单个中断并将所述单个中断发送到主机之前,所述中断处理器将等待,直到处理群组中的所有命令为止。此使得所述命令处理器能够继续命令的并行处理,且同时减少主机用来处理可原本已从数据存储装置发送的不必要中断的开销及时间。在一个示范性实施方案中,数据存储装置可包括经布置及配置以控制与一个或一个以上存储器芯片相关联的操作的多个通道控制器。所述存储器芯片可包括快闪存储器芯片。在一个示范性实施方案中,所述命令处理器、所述中断处理器及所述通道控制器可实施为现场可编程门阵列(FPGA)控制器的部分,其中所述FPGA控制器可为数据存储装置的一部分。所述数据存储装置可包括一个或一个以上存储器板,其中所述存储器板中的每一者包括多个存储器装置。在一个示范性实施方案中,所述存储器板中的每一者可包括多个快闪存储器芯片。所述存储器板可包括多个通道,可将所述快闪存储器芯片中的一者或一者以上指派给所述通道中的每一者。所述数据存储装置可包括所述存储器板可操作地连接到的控制器板。所述数据存储装置可经配置以使用接口与主机进行通信以从所述主机接收命令且使用所述快闪存储器芯片来处理这些命令。举例来说,所述主机可发送且所述控制器板可接收用以使用所述快闪存储器芯片读取、写入、拷贝及擦除数据块的命令。在一个示范性实施方案中,所述控制器包括现场可编程门阵列(FPGA)控制器且所述主机与所述控制器板之间的接口可为高速接口,例如(举例来说)外围组件互连高速 (PCIe)接口。以此方式,所述数据存储装置可包括高存储体积且可经配置以实现所述主机与所述快闪存储器芯片之间的数据传送的高性能及高速度。在一个示范性实施方案中,所述数据存储装置可经配置而具有两个存储器板,其中所述存储器板中的每一者包括多个快闪存储器芯片。包括所述控制器板及两个存储器板的所述数据存储装置可以磁盘驱动器形式配置,使得所述数据存储装置装配于计算装置的板上驱动槽中。举例来说,所述数据存储装置可经配置以装配于服务器的板上驱动槽中以为所述服务器提供数据存储容量。所述数据存储装置可经配置而为可抽换的,使得其可容易地从所述计算装置移除且插入于不同计算装置的板上驱动槽中。在其它示范性实施方案中,所述存储器板中的每一者可包括除快闪存储器芯片以外的存储器装置。举例来说,所述存储器板中的每一者可包括多个动态随机存取存储器 (DRAM)芯片。以上文关于快闪存储器芯片所描述的相同方式,所述命令处理器及中断处理器可经配置以处理从所述主机接收的作为群组的命令且在已使用所述DRAM芯片处理所述命令时产生单个中断并将所述单个中断发送回到所述主机。在其它示范性实施方案中,所述存储器板可包括其它类型的存储器装置,其中包括(举例来说)相变存储器(PCM)芯片及其它类型的存储器装置。根据一个一本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】2009.04.08 US 61/167,709;2009.06.17 US 61/187,835;1.一种数据存储装置(100),其包含 多个存储器芯片(118a、118b);及控制器(110),其可操作地耦合到所述存储器芯片(118a、118b)且经布置及配置以 从主机(106)接收命令群组,其中所述群组中的所述命令中的每一者包括相同群组编号以将所述命令识别为所述群组的部分,使用所述存储器芯片(118a、118b)来处理所述命令的所述群组,及在所述命令的所述群组完成处理时产生单个中断并将所述单个中断发送到所述主机 (106)。2.根据权利要求1所述的数据存储装置(100),其中所述控制器(110)经配置以 从所述主机(106)接收多个命令群组,其中所述命令中的每一者包括群组编号以将所述命令识别为所述群组中的一者的部分,使用所述存储器芯片(118a、118b)来处理所述命令的所述群组;及在所述命令的所述群组中的每一者完成处理时针对所述群组中的每一者产生单个中断并将所述单个中断发送到所述主机(106)。3.根据权利要求2所述的数据存储装置(100),其中所述控制器(110)经配置以使用所述存储器芯片(118a、118b)按非邻接次序来处理所述命令的所述群组。4.根据前述权利要求中任一权利要求所述的数据存储装置(100),其中所述命令中的每一者包括命令标头(314)且所述命令标头(314)包括所述群组编号。5.根据前述权利要求中任一权利要求所述的数据存储装置(100),其中所述命令的所述群组中的最后命令包括命令标头(314)中的用以向所述控制器(110)指示所述最后命令的旗标。6.根据前述权利要求中任一权利要求所述的数据存储装置(100),其中所述群组编号将所述命令中的每一者识别为所述群组的部分而不使用所述命令中的指针来指向所述群组中的下一命令。7.根据前述权利要求中任一权利要求所述的数据存储装置(100),其中所述控制器 (110)包含中断处理器(IM),所述中断处理器(124)经布置及配置以在所述命令由所述控制器(110)处理时追踪所述命令的所述群组,且在所述命令的所述群组完成处理时产生所述单个中断并将所述单个中断发送到所述主机(106)。8.根据权利要求7所述的数据存储装置(100),其中所述中断处理器(124)包含多个计数器,其中所述计数器中的每一者被指派给由所述控制器(110)接收的不同命令群组。9.根据权利要求7或8所述的数据存储装置(100),其中所述中断处理器(124)包含多个不同中断机制。10.根据权利要求9所述的数据存储装置(100),其中一个以上中断机制在相同时间启用。11.根据权利要求9或10所述的数据存储装置(100),其中所述中断机制包括水印中断机制、超时中断机制及群组中断机制。12.根据前述权利要求中任一权利要求所述的数据存储装置(100),其中所述存储器芯片(118a、118b)为快闪存储器芯片,且所述控制器(110)为现场可编程门阵列FPGA控制13.根据权利要求12所述的数据存储装置(100),其进一步包含存储器板,在所述存储器板上所述快闪存储器芯片布置及配置成多个通道,其中所述通道中的每一者与所述快闪存储器芯片中的一者或一者以上相关联;及控制器板(102),其可操作地连接到所述存储器板,其中所述控制器板(10 包含高速接口(108);及所述控制器(110),其经布置及配置以使用所述高速接口(108)从所述主机(106)接收所述命令。14.一种用于在具有多个存储器芯片(118a、118b)的数据存储装置(100)上处理命令群组的方法,所述方法包含从主机(106)接收(710)命令群组,其中所述群组中的所述命令中的每一者包括相同群组编号以将所述命令识别为所述群组的部分;使用多个存储器芯片(118a、118b)来处理(720)所述命令群组;及在所述命令的所述群组完成处理时产生(730)单个中断并将所述单个...

【专利技术属性】
技术研发人员:安德鲁·T·斯温阿尔贝特·T·博尔歇斯格兰特·格林德勒
申请(专利权)人:谷歌公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术