使用虚拟到物理映射以与数据存储装置进行直接用户空间通信的制作方法_2

文档序号:8926991阅读:来源:国知局
实施。在某些实施方案中,可使用易失性存储器装置,例如随机存取存储器装置。为了本发明目的,本文中描述的各个实施方案将原则上被讨论为使用快闪存储器装置实施。然而,将明白,其它方法是可能的且可使用其它类型的存储器装置以实施本文中描述的实施方案。
[0020]在计算系统100中以及在本文中描述的其它实施方案中,存储器控制器130可从主机计算装置110获得存储器操作命令。当将快闪存储器装置用作存储器装置150来实施数据存储装置120时,由存储器控制器130获自主机计算装置110的存储器操作命令可包含快闪存储器读取命令、快闪存储器写入命令及快闪存储器擦除命令以及其它类型的快闪存储器命令(例如移动命令及/或复制命令)。为了本发明目的,术语存储器操作命令、存储器操作及存储器命令可互换使用以描述用于执行数据存储装置中的一或多个数据存储功能的机器可读指令(例如从主机计算装置到数据存储装置)。
[0021]在计算系统100中,存储器装置150可包含被组织到多个存储器信道中的多个存储器装置,例如快闪存储器装置。在此方法中,存储器信道中的每一者可包含一或多个个别存储器装置。取决于特定实施方案,给定的存储器信道的个别存储器装置可在个别装置封装中实施,或替代地,给定的存储器信道的多个存储器装置可包含于单个装置封装中。
[0022]例如,在实例实施方案中,数据存储装置120可包含多个存储器信道。在此方法中,存储器控制器130可使用单独存储器装置信道接口 140与每一存储器信道的存储器装置150通信。每一存储器装置信道接口 140可包含经配置以促进相应存储器信道的存储器装置150与存储器控制器130之间的通信的相应信道控制器。例如,此类信道控制器可经配置以管理存储器控制器130与给定的存储器信道的存储器装置150之间的共享总线,包含传达存储器操作命令、芯片选择信息以及管理存储器控制器130与存储器装置150之间通过对应存储器装置信道接口 140进行的其它数据及控制信息的通信。
[0023]在一个示范性实施方案中,存储器控制器130及其它组件可安置在印刷电路板上,且存储器装置150可安置在一或多个其它印刷电路板上。印刷电路板可组装在一起。
[0024]在一个示范性实施方案中,可使用高速链路155以连接主机计算装置110及数据存储装置120。链路155可为物理连接或其可为逻辑连接。例如,链路155可为PC1-e链路以连接在主机计算装置110与数据存储装置120之间并路由主机计算装置110及数据存储装置120之间的信号。
[0025]在一个实例实施方案中,存储器控制器130可直接从在主机110上运行的至少一个应用程序113获得存储器操作命令。以此方式,应用程序113可绕过主机110上的驱动器/内核115且将命令直接传达到数据存储装置120上的存储器控制器130。为了使得应用程序113能够直接与存储器控制器通信,存储器控制器103可包含存储器模块160。在一个实例实施方案中,存储器模块160可为动态随机存取存储器(DRAM)。在其它实例实施方案中,存储器模块160可包含其它类型的存储器。
[0026]主机110可产生虚拟到物理存储器地址转换映射,其在此文档中可称作映射或表。虚拟存储器地址可在应用程序113的空间中,且主机110将此类虚拟存储器地址映射到主机110上的存储器111的物理存储器地址。具体地说,应用程序113可选择应用程序113的由主机110指派给所述应用程序的虚拟存储器的范围,应用程序113的输入-输出
(1)缓冲器将驻留在所述范围中。应用程序113可将此地址范围传递到主机110上的驱动器/内核115。主机110上的驱动器/内核115可标记存储器位置,因此所分配的存储器不会被移动或改变,且可为所述存储器范围建立映射,且主机110可将映射传达到数据存储装置120。
[0027]数据存储装置120可从主机110接收映射165,且可将映射165存储在存储器模块160中。存储器控制器130可直接从应用程序113接收命令,其中所接收的命令包含虚拟存储器地址。存储器控制器130可使用映射165将虚拟存储器地址转换为物理存储器地址。以此方式,视具体情况而定,与直接从应用程序113接收的命令有关的数据可存储在主机110上的存储器111中的适当物理存储器位置中或被从所述适当物理存储器位置检索。通过在数据存储装置120上的存储器控制器130中执行虚拟地址到物理地址转换,可绕过主机上的驱动器/内核115,因为驱动器/内核115及处理器117无需使用处理能力来执行转换中的任一者以将虚拟地址映射到存储器111的物理存储器地址。
[0028]主机110可使用将映射165写入到存储器模块160的写入命令将映射165传达到数据存储装置120。写入命令可指定在存储器模块160中的何处存储映射165。可由存储器控制器130执行对映射的更新。主机110可将映射165从存储器模块160读回到主机110以存储在例如存储器111中。以此方式,主机110可控制映射165的产生及映射165在主机110与存储器控制器130之间的传达。
[0029]主机110还可产生逻辑地址到物理地址转换映射,其可在此文档中称作映射或表。逻辑地址及物理地址是指数据存储装置120上的存储器装置150的地址。当发送引用存储器装置150上的数据的命令到数据存储装置时,逻辑地址可由例如主机110上的应用程序113使用。逻辑地址需要被转换为实际物理地址(例如存储器装置150上的存储器块中的特定页)以对由逻辑地址在命令中引用的正确数据执行动作。主机110产生逻辑地址到物理地址转换映射且将映射167传达到数据存储装置120上的存储器控制器130。
[0030]在一个实施方案中,主机110可对数据存储装置120上的存储器装置150中的每一者产生逻辑地址到物理地址转换映射。以此方式,数据存储装置上的每一存储器装置具有其自身的相应转换映射。主机110可将映射中的每一者传达到存储器控制器130。
[0031]存储器控制器130从主机110接收映射167且将映射167存储在存储器模块160中。在多个映射的情况中,当每一存储器装置存在一个映射时,存储器控制器130将多个映射存储在存储器模块160中。存储器控制器130可直接从应用程序113接收命令,其中所接收的命令可在引用存储器模块150时使用逻辑存储器地址。存储器控制器130使用映射167将逻辑地址转换为物理地址,其中物理地址引用存储器模块150上的实际物理位置。以此方式,与直接从应用程序113接收的命令有关的数据可存储在数据存储装置120上的存储器装置150中的适当物理存储器位置或被从所述适当物理存储器位置检索。通过在数据存储装置120上的存储器控制器130中执行逻辑地址到物理地址转换,可绕过主机上的处理器117,因为处理器117无需使用处理能力来执行转换中的任一者以将逻辑地址映射到存储器模块150的物理地址。
[0032]主机110可使用将映射167写入到存储器模块160的写入命令将映射167传达到数据存储装置120。写入命令可指定在存储器模块160中的何处存储映射167。可由存储器控制器130执行映射更新。主机110可将映射167从存储器模块160读回到主机110以存储在例如存储器111中。以此方式,主机110可控制映射167的产生及主机110与存储器控制器130之间的映射167的传达。
[0033]图2是说明根据实例实施方案的计算系统200的方框图。图2中所示的计算系统200包含类似于图1中所示的计算系统100的元件。类似于计算系统100的元件的计算系统200的元件是以与图1中所示的100系列参考数字对应的200系列参考数字指示。例如,计算系统200包含主机计算装置210及数据存储装置220。数据存储装置220包含存储器控制器230、存储器装置通信信道240 (240a到240c)、存储器装置250 (250a到250f)。链路255连接在主机计算装置210与数据存储装置220之间并路由主机计算装置210及数据存储装置220之间的信号。链路255可为物理连接或逻辑连接。存储器控制器230包含存储器模块260,其可存储多个映射265a到265c及映射267。在此实例中,主机计算装置210包含存储器211、多个应用程序213a到213c、驱动器/内核215及处理器217。
[0034]图2中所示的计算系统200 (以及本文中描述的其它实施方案)的各个元件是通过说明方式提供。计算系统200 (及本文中描述的其它实施方案)可包含其它元件或方面。例如,计算系统200可包含经配置以在主机装置210与存储器控制器230及/或存储器装置250a到250f之间传达数据的数据路径元件。此类数据路径组件可包含例如一或多个总线接口及/或直接存储器存取(DMA)控制器以及多个其它可能组件。寄存器261可辅助实现应用程序213a到213c与存储器控制器230及/或存储器装置250a到250f之间的直接路径通信。此外,计算系统200还可包含除了图2中所示的元件以外的额外控制路径元件。将明白,计算系统200的特定组件及/或方面以及本文中描述的其它实施方案将至少部分取决于特定实施方案。
[0035]在计算系统200中,主机计算装置210、存储器控制器230、存储器装置信道240及存储器装置250可经配置以实施多个存储器分区。在图2中所示的实施方案中,实施三个存储器分区:分区_A、分区_B及分区_C。在其它实施方案中,可实施额外或更少分区。
[0036]如图2中所示,主机计算装置210包含与计算系统200中实施的每一存储器分区相关联的一或多个队列(其可称作主机存储器操作队列或分区队列或分区)。例如,主机计算装置210包含分区_A队列
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1