用于使用服务质量来向相异存储设备分配存储的系统和方法_2

文档序号:8548077阅读:来源:国知局
A)、便携式游戏控制台、掌上型计算机,或者平板计算机)以及具有两个或多个相异存储设备的任何其它计算设备。如在下面更详细描述的,存储管理架构被配置为选择性地提供两种操作模式:统一模式和分立模式。在分立模式中,存储管理架构如上面所描述的以常规的方式操作成“分立架构”,其中,每个专用处理单元对出于其预定目的而优化的相应存储设备进行存取。例如,专用的通用中央处理单元(CPU)可以以优化的数据带宽来存取第一类型的存储设备,并且较高性能的专用图形处理单元(GPU)可以以较高的数据带宽来存取第二类型的存储设备。在统一模式中,存储管理架构被配置为对相异存储设备进行统一并且使得专用处理单元能够选择性地存取(单独地或组合地)相异存储设备或者其部分设备的组合带宽。
[0028]如图1的实施例中所示出的,系统100包括:存储通道优化模块102,其电连接到两种不同类型的动态随机存取存储器(DRAM)设备104a和104b以及可以对DRAM设备104a和104b进行存取的两个或多个专用处理单元(例如,CPU 108和GPU 106)。GPU 106经由电连接110耦合到存储通道优化模块102。CPU 108经由电连接112耦合到存储通道优化模块102。存储通道优化模块102还包括用于耦合到DRAM设备104a和104b的多个硬件连接。取决于存储设备的类型,硬件连接可以改变。在图1的示例中,DRAM 104a支持分别连接到物理/控制连接116a、116b、116c和116d的四个通道114a、114b、114c和114d。DRAM104b支持分别连接到物理/控制连接120a和120b的两个通道118a和118b。应当意识到,取决于存储设备的类型(包括存储地址的大小(例如,32位、64位等)),物理/控制连接的数量和配置可以改变。
[0029]图2示出了一种由存储通道优化模块102执行的、用于通过对相异存储设备(例如,DRAM设备104a和104b)进行交织来实现统一操作模式的方法200。在框202处,存储通道优化模块102确定交织带宽比率,该交织带宽比率包括用于DRAM设备104a和104b的数据带宽的比率。可以在计算设备的启动时确定该数据带宽。
[0030]在一个实施例中,可以通过存取诸如图1中所示出的表格300之类的数据结构来确定交织带宽比率。表格300标识用于实现两个DRAM设备104a和104b的相异存储设备的各种类型组合的交织带宽比率。列302列出针对DRAM设备104a的各种配置。行304列出针对DRAM设备104b的各种配置。在这方面,每个数字的数据字段标识针对相应配置行/列配置的交织带宽比率。例如,表格300的上面部分中的第一数据字段以黑色高亮并且列出2.00的交织带宽比率,其与用于DRAM设备104a的12.8GB/s的带宽和用于DRAM设备104b的6.4GB/s的数据带宽相对应。在图3中,DRAM设备104a和104b被优化用于移动计算系统中。DRAM设备104b包括低功率双倍数据速率(LPDDR)存储设备,其可以被常规地优化用于分立模式中,以便由CPU 108进行专门的使用。DRAM设备104a包括宽I/O(宽10)存储设备,其可以被常规地优化用于分立模式中,以便由GPU106进行专门的使用。在这方面,数字的值根据诸如存储地址位大小(χ64、χ128、χ256、χ512)、时钟速度(MHz)和数据带宽(GB/s)之类不同的性能参数来标识用于DRAM设备104a和104b的交织带宽比率。存储通道优化模块102可以执行查找来获得与DRAM设备104a和104b相关联的交织带宽比率。在图2中的框202处,存储通道优化模块102还可以确定数字的数据带宽(例如,根据表格300或者直接根据DRAM设备104a和104b)并且然后使用该数据来计算交织带宽比率。
[0031]应当意识到,取决于其中实现系统100的计算设备、系统应用等的特定类型,存储设备的类型和性能参数可以改变。在本描述中仅使用图3中所示出的示例类型和性能参数,来描述由移动系统中的存储通道优化模块102执行的示例性的交织方法。适合于通道优化模块102的其它随机存取存储器技术的一些示例包括:N0R FLASH、EEPROM、EPROM,DDR-NVM、PSRAM、SRAM、PROM和ROM。本领域普通技术人员将很容易意识到,可以执行各种替代的交织方案和方法。
[0032]再次参考图2,在框204处,存储通道优化模块102根据框202中所确定的交织带宽比率来对DRAM设备104a和104b进行交织。交织过程将去往分别用于DRAM设备104a和104b的存储通道114a、114b、114c、114d以及118a和118b中的每个通道的业务与特定通道的可用带宽进行匹配。例如,如果DRAM设备104a具有34GB/s的数据带宽并且DRAM设备104b具有17GB/s的数据带宽,则交织带宽比率是2:1。这意味着DRAM设备104a的数据速率与DRAM设备104b的数据速率的两倍一样快。
[0033]如图4中所示出的,存储通道优化模块102可以包括:一个或多个通道重映射模块400,其用于根据交织带宽比率来配置和保持用于DRAM设备104a和104b的虚拟地址映射表格,以及根据交织带宽比率来向DRAM设备104a和104b分发业务。图5中示出了示例性的地址映射表格500。地址映射表格500包括地址块(其可以是任意大小)的列表502,其具有基于交织带宽比率的、相应的通道和/或存储设备分配。例如,在图5中,列504示出了基于1:1的交织带宽比率的、DRAM设备104a ( “宽12”)和DRAM设备104b ( “lpddr3e”)之间的交替的分配。偶数的地址块(N、N+2、N+4、N+6等)被分配给宽12,并且奇数的地址块(Ν+1、Ν+3、Ν+5 等)被分配给 lpddr3e。
[0034]列506示出了针对2:1的交织带宽比率的另一分配。在DRAM设备104a(“宽12”)具有两倍于DRAM设备104b (“lpddr3e”)的速率的情况下,针对被分配给lpddr3e的每一个地址块,两个连续的地址块被分配给宽12。例如,地址块N和N+1被分配给宽12。块N+2被分配给lpddr3e。块N+3和N+4被分配给宽12,等等。列508示出了针对1:2的交织带宽比率的另一分配,其中,由于DRAM设备104b(“lpddr3e”)的速度是DRAM设备104a(“宽12”)的两倍,所以分配方案是相反的。
[0035]再次参考图2的流程图,在框206处,GPU 106和CPU 108可以通过向存储通道优化模块102发送存储地址请求来以常规的方式存取交织的存储器。如图6中所示出的,业务可以作为请求 606、608、610、612、614、616 等(与地址块 N、N+l、N+2、N+3、N+4、N+5 等(图5)相对应)的输入流而由通道重映射逻辑单元600来接收。通道重映射逻辑单元600被配置为:根据交织带宽比率和包含在地址映射表格500中的适当的分配方案(例如,列504、506、508等),来向DRAM设备104a和104b分发业务(框208-图2)。
[0036]接着上面2:1交织带宽比率的示例,通道重映射逻辑单元600对请求606、608、610、612、614和616进行引导,如图6中所示出的。可以将分别针对地址块N、N+l、N+3和N+4的请求606、608、612和614引导到DRAM设备104a。可以将分别针对地址块N+2和N+5的请求610和616引导到DRAM设备104b。以此方式,可以将来自GPU 106和CPU 108的输入业务与用于DRAM设备104a的存储通道114和/或用于DRAM设备104b的存储通道118中的任意存储通道上的可用带宽进行最优地匹配。这种统一操作模式使得GPU 106和CPU108能够单独地和/或共同地存取相异存储设备的组合带宽,而不是受限于常规的分立操作模式的“局部化的”高性能操作。
[0037]如上面所提到的,存储通道优化模块102可以被配置为:基于各种期望的使用场景、系统设置等来选择性地启用要么统一模式要么分立模式。此外,应当意识到,可以对相异存储设备的部分进行交织,而不是对全部的存储设备进行交织。图7示出了可以由存储通道优化模块102实现以便创建多个“逻辑的”设备或区域的多层交织技术。接着上面使用2:1交织带宽比率的示例,DRAM设备104a可以包括:一对0.5GB存储设备702和704,其具有被常规地优化用于GPU 106的34GB/s的高性能带宽。DRAM设备104b可以包括:1GB存储设备706和2GB存储设备708,其中每一个存储设备具有被常规地优化用于CPU 108的17GB/s的较低带宽。多层交织技术可以创建两个交织区域710和712以及未交织区域714。区域710可以是4路交织的,以提供在102GB/S的组合带宽的组合的1.5GB。区域712可以是2路交织的,以提供在34GB/S的组合的1.5GB。区域714可以是未交织的,以提供在17GB/S的1GB。由于交织区域710和712的内容可以被明确地指定用于可清除的或可迀移的数据结
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1