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

文档序号:8548077阅读:来源:国知局
构和缓冲区,而未交织区域714的内容可以被指定用于处理(例如内核操作和/或其它低存储过程),因此与系统100的存储管理架构相结合的多层交织技术可以有助于在交织和未交织部分之间进行转换。
[0038]如上面所提到的,存储通道优化模块102可以并入到任何期望的计算系统中。图8示出了并入示例性的便携式计算设备(PCD)SOO中的存储通道优化模块102。存储器优化模块102可以包括片上系统(SoC)或者嵌入式系统,该片上系统(SoC)或者嵌入式系统可以是单独地制造并且并入到用于便携式计算设备800的设计中的。
[0039]如所示出的,PCD 800包括含有多核CPU 402A的片上系统322。多核CPU 402A可以包括第零核410、第一核412和第N核414。这些核中的一个核可以包括例如GPU 106,其它核中的一个或多个核包括CPU 108。根据替代的示例性实施例,CPU 402还可以包括单核类型的那些CPU并且不是具有多核的CPU,在这种情况下,CPU 108和GPU 106可以是如系统100中所示出的专用处理器。
[0040]显示控制器328和触摸屏控制器330可以耦合到GPU 106。相应地,在片上系统322外部的触摸屏显示器108可以耦合到显示控制器328和触摸屏控制器330。
[0041]图8还示出了视频编码器334(例如,逐行倒相(PAL)编码器、顺序传送彩色与存储(SECAM)编码器或者国家电视系统委员会(NTSC)编码器)耦合到多核CPU 402A。此外,视频放大器336耦合到视频编码器334和触摸屏幕显示器108。此外,视频端口 338耦合到视频放大器336。如图8中所示出的,通用串行总线(USB)控制器340耦合到多核CPU 402A。此外,USB端口 342耦合到USB控制器340。存储器404A和用户身份模块(SM)卡346也可以耦合到多核CPU 402A。存储器404A可以包括两个或多个相异存储设备(例如,DRAM设备104a和104b),如上面所描述的。存储通道优化模块102可以耦合到CPU 402A (包括例如CPU 108和GPU 106),并且存储器404A可以包括两个或多个相异存储设备。存储通道优化模块102可以被并入作为单独的片上系统(SoC)或者作为SoC 322的组件。
[0042]此外,如图8中所示出的,数字照相机348可以耦合到多核CPU 402A。在示例性的方面中,数字照相机348是电荷耦合器件(CCD)照相机或者互补式金属氧化物半导体(CMOS)照相机。
[0043]如图8中进一步示出的,立体声音频编码器-解码器(编解码器)350可以耦合到多核CPU 402A。此外,音频放大器352可以耦合到立体声音频编解码器350。在示例性的方面中,第一立体声扬声器354和第二立体声扬声器356耦合到音频放大器352。图8示出了话筒放大器358也可以耦合到立体声音频编解码器350。另外,话筒360可以耦合到话筒放大器358。在特定的方面中,频率调制(FM)无线电调谐器362可以耦合到立体声音频编解码器350。此外,FM天线364耦合到FM无线电调谐器362。此外,立体声耳机366可以耦合到立体声音频编解码器350。
[0044]图8还示出了射频(RF)收发机368可以耦合到多核CPU 402A。RF切换器370可以耦合到RF收发机368和RF天线372。如图8中所示出的,键盘204可以耦合到多核CPU402A。此外,具有话筒的单声道头戴装置376可以耦合到多核CPU 402A。此外,振荡器设备378可以耦合到多核CPU402A。
[0045]图8还示出了电源380可以耦合到片上系统322。在特定的方面中,电源380是直流(DC)电源,其向需要电量的PCD 800的各种组件提供电量。此外,在特定的方面中,电源是可再充电的DC电池或者是从连接到AC电源的交流(AC)至DC变压器获得的DC电源。
[0046]图8还指示P⑶800还可以包括网卡388,网卡388可以用于接入数据网络(例如,局域网、个域网或者任何其它网络)。网卡388可以是蓝牙网卡、WiFi网卡、个域网(PAN)卡、个域网超低功率技术(PeANUT)网卡或者本领域公知的任何其它网卡。此外,网卡388可以并入到芯片中,即,网卡388可能是芯片中的完全解决方案,并且可能不是单独的网卡388。
[0047]如图8中所描述的,触摸屏显示器108、视频端口 338、USB端口 342、照相机348、第一立体声扬声器354、第二立体声扬声器356、话筒360、FM天线364、立体声耳机366、RF切换器370、RF天线372、键盘374、单声道头戴装置376、振荡器378以及电源380可以是在片上系统322外部的。
[0048]图9-图13示出了用于在高级操作系统(HLOS)环境中对上面结合图1_图8所描述的重映射和交织解决方案的方面进行利用的系统和方法的各种替代的实施例。应当意识到,HLOS环境可以提供异构计算平台或者异构系统架构(HSA),例如由HSA基金会公布的HSA标准中所公开的。故此通过引用方式将当前的标准、AMD I/O虚拟化技术(1MMU)规范(公开号N0.48882,修订2.00,2011年3月24日颁布)的全部内容并入本文。
[0049]如本领域所公知的,基于HSA的系统可以被配置为提供对系统存储器的统一视图。HSA允许开发方通过例如使用主流编程语言、从开发方的硬件规范中抽离、并且将特定于硬件的编码留给由硬件供应商执行,来以较高的抽象级进行编程。然而,针对在具有相异存储器类型或设备的系统中有效地实现HSA,不存在公知的解决方案。
[0050]应当意识到,下面结合图9-图13所描述的系统和方案通常提供用于在包括例如上面所描述的相异存储器类型或设备的系统中支持HSA和/或HLOS的独特的和期望的解决方案。下面所描述的系统和方法可以通过去除对平台中的所有存储器要统一的现有需求,来提供高性能、较低的功率和较低的成本。此外,硬件开发方可以具有对例如遵循HSA标准的计算设备中的高成本和无效益成本存储设备和/或类型两者进行组合的灵活性。
[0051]图9示出了包括与存储通道优化模块102和一个或多个应用906进行通信的HLOS902、用于向相异存储设备动态地分配存储的系统900。存储通道优化模块102通常可以以上面所描述的方式被配置和操作。存储通道优化模块102电连接到两个或多个相异存储器类型或设备(例如,DRAM104a和104b)以及可以对相异存储设备进行存取的任意数量的处理单元。应当意识到,处理单元可以包括专用处理单元(例如,CPU 108和GPU 106)或者其它可编程处理器。GPU 106经由电连接110耦合到存储通道优化模块102。CPU 108经由电连接112耦合到存储通道优化模块102。一个或多个可编程处理器(未示出)可以经由相应的连接耦合到存储通道优化模块102。对相异存储设备进行存取的专用处理单元、可编程处理器以及任意应用906通常可以被称为HLOS 902和/或存储通道优化模块102的“客户端”。
[0052]可编程处理器可以包括用于例如包括视频应用、音频应用或者任意其它应用906的专用和/或通用应用的数字信号处理器(DSP)。如上面所提到的,专用处理单元、应用906、HLOS 902和/或可编程处理器可以支持被配置为支持异构系统架构(HSA)的异构计算平台。应当意识到,HSA创建了改进的处理器设计,其向应用906揭示了主流可编程计算单元的益处和能力。利用HSA,应用906能够在单个统一地址空间中创建数据结构,并且能够在最适合于给定任务的硬件上并行地发起工作项目。在计算单元之间共享数据如发送指针一样简单。多个计算任务能够工作在相同的连贯存储区域上,按需要使用屏障(barrier)和原子存储器操作来保持数据同步。
[0053]如上面更详细描述的,存储通道优化模块102还包括用于耦合到DRAM 104a和104b的多个硬件连接。取决于存储设备的类型,硬件连接可以改变。在一个实施例中,相异存储设备包括双倍数据速率(DDR)存储设备,其提供连接到存储通道优化模块102上的物理/控制连接的相应通道。应当意识到,取决于存储设备的类型(包括存储地址的大小(例如,32位、64位等)),物理/控制连接的数量和配置可以改变。
[0054]HLOS 902包括服务质量(QoS)监测模块904。QoS监测模块904通过保证和/或匹配应用存储要求来向应用906提供QoS服务。QoS服务可以是基于经由例如与QoS监测模块904相关联的应用程序接口(API) 1002向HLOS 902提供的程序员声明的QoS的。在其它实施例中,HLOS 902可以基于对应用906(例如,进程、线程等)的存储存取行为和/或性能进行监测来确定估计的QoS。进一步的示例性QoS值可以是存储带宽和/或延迟要求或者其它存储性能度量,以用于在平台存储器上要分配的数据,使得进行数据存取的应用能够满足期望的性能和质量。
[0055]如图10的实施例中所示出的,HLOS 902支持对由统一
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1