使用直接数据路径架构来存储数据以降低能量消耗和改进性能的制作方法

文档序号:6497745阅读:397来源:国知局
使用直接数据路径架构来存储数据以降低能量消耗和改进性能的制作方法
【专利摘要】在一个实施例中,本发明包括一种方法,其用于得到与要从远程位置下载到计算装置的文件有关的文件信息,用于基于文件信息在目的地存储装置中创建至少一个空文件,并且向网络接口传递与空文件有关的块信息,以及在网络接口中接收文件的数据分组,并且按照块信息将数据分组的有效载荷从网络接口直接发送给目的地存储装置,同时计算装置的主机处理器处于低功率状态。其它实施例被描述和要求权利。
【专利说明】使用直接数据路径架构来存储数据以降低能量消耗和改进性能
【背景技术】
[0001]半导体加工和逻辑设计方面的进步允许在集成电路装置上可存在的逻辑数量的增加。因此,计算机系统配置从系统中的单个或多个集成电路演进到单独集成电路上的多个硬件线程、多个核、多个装置和/或完整系统。。另外,随着集成电路的密度已经增长,对计算系统(从嵌入式系统到服务器)的功率要求也迅速增加。此外,软件低效及其对硬件的要求也引起计算装置能量消耗的增加。实际上,一些研究表明,计算装置消耗一个国家、例如美利坚合众国的整个电力供应的相当大的百分比。因此,存在对关联集成电路的能量效率和保存的关键需要。这些需要将随着服务器、台式计算机、笔记本、超级本、平板、移动电话、处理器、嵌入式系统等变得更为普遍(从包含于典型计算机、汽车和电视机到生物技术)而增加。
[0002]随着更多消费者采用诸如智能电话、平板计算机、移动计算机、便携媒体播放器等的便携和移动装置,对基于网络的内容和服务存在极大增长。示例包括电影下载、快速同步(例如便携媒体播放器音乐/电影同步)、基于云的存储等。这些使用模型通过普遍存在和更快的连通性以及诸如智能电话、平板和超级本之类的移动装置的增加计算能力来推动。
[0003]移动装置上提供这些服务的一个缺点是大量媒体内容的连通性和传递能够消耗的功率消耗。上述服务以及许多其它服务的典型数据路径如下所述:对装置的进入数据在装置的源组件、例如网络接口控制器(NIC)中接收,并且传递给装置的宿(sink)组件、例如存储装置。这个数据路径涉及主机中央处理器(CPU)处置经过系统存储器从装置的一个组件到另一个组件的数据移动。按照典型装置架构和数据路径,主机CPU和系统存储器极大地涉及到从输入装置到输出装置的数据控制和移动中,这包括处置源组件与系统存储器之间、或者甚至内核空间与用户空间之间的数据的多个副本。这种开销引起高功率消耗并且降低性能。
【专利附图】

【附图说明】
[0004]图1是按照本发明的一个实施例的系统的框图。
[0005]图2是按照本发明的一个实施例的直接路径架构的应用视图的高级框图。
[0006]图3是按照本发明的一个实施例的网络-存储直接数据传输的高级架构图示。
[0007]图4是按照本发明的一个实施例、建立和执行直接数据传输的方法的流程图。
[0008]图5是按照本发明的一个实施例的架构布置的框图。
[0009]图6是按照本发明的一个实施例的SoC的的高级框图。
[0010]图7是按照本发明的一个实施例的移动平台的软件架构的框图。
[0011]图8是实施例能够与其配合使用的示例系统的框图。
[0012]图9是按照本发明的一个实施例的网络的框图。
【具体实施方式】[0013]实施例可提供所谓的“直接路径”架构,其能够实现快速和节省能量的数据传输路径,其中数据从源知识产权(IP)块直接传递给宿IP块,而无需涉及用于数据处理的CPU。虽然本发明的范围并不局限于这个方面,但是实施例可以可适用于芯片上系统(SoC),其包括单个半导体管芯或者集成电路封装的多管芯上的多个单独IP代理器或块或者经过总线所连接并且可形成移动装置的处理系统的主干的多个分立组件。如本文所使用的术语“IP块”、“IP逻辑”或“IP代理器”用来表示多样化类型的硬件,包括通用处理器、固定功能单元、图形单元、媒体处理器、网络单元、存储单元等。
[0014]数据传输路径的示例能够根据使用模型而改变,但是能够包括网络-存储、存储-网络、捕获装置(例如音频或视频装置)-编码器-网络或者音频或视频播出等等。
[0015]在各个实施例中,数据传输架构可提供控制路径,以便由按照Intel架构(IA)指令集架构(ISA)的主机处理器、例如单核或多核处理器以及主机操作系统(OS)来处置,以建立硬件数据路径。然后,数据在SoC内部从源IP代理器直接传输到目的地IP代理器,而对传输无需CPU涉及。注意,在一些实施例中,CPU能够是SoC的一部分,或者能够附连在SoC的上游。类似地,目的地IP代理器能够直接在SoC内部,或者是耦合到SoC的分立装置。通过这样做,这种直接路径架构可显著改进性能并且降低平台/CPU功率。
[0016]这通过下列步骤来实现:建立源与目的地装置之间的直接通信路径;对于不要求CPU处理的长期数据移动绕过CPU,同时对网络协议栈处理的控制方面、例如传输控制协议/因特网协议(TCP/IP)控制保持所涉及的CPU。在各个实施例中,这种直接数据路径能够在没有对网络栈生态系统的任何变更的情况下实现,因为栈仍然没有改变地处理网络协议。相应地,对于例如从内容服务器所接收的进入通信等,也不存在对源侧的变更。
[0017]在一些实施例中,源IP代理器与目的地IP代理器之间的这种直接存储器存取(DMA)能够平衡连接构造体(fabric)支持IP块的直接“组对”的能力,因此能够从源到目的地IP块对数据直接进行DMA。
[0018]值得注意,虽然架构可在源IP与目的地IP块之间直接通信,但是一些实施例还可允许数据也经过多跳,以到达其最终目的地。例如,通信可经过中间IP块、例如安全IP块来干涉,以便对数据执行安全任务。实施例可经由按照本发明的一个实施例的直接路径架构,来实现吞吐量改进和显著能量节省。
[0019]通过按照本发明的一个实施例的直接路径架构和方法,数据有效载荷不需要经过涉及主机CPU的系统存储器和存储器副本来经过多个DMA事务。该架构允许源IP块将数据直接发送给目的地IP块,而对这些源与宿块之间的数据移动无需CPU涉及,因而允许CPU及关联非核组件连同其它系统组件、例如系统存储器(其原本会沿它到最终目的地的路由来接收数据)一起停留在低功率状态。对于初始数据传输建立阶段期间的特定网络-存储使用模型,预先分配文件空间能够被创建并且传递给源逻辑。有效载荷的数据部分又将直接经DMA而进入目的地存储装置,从而显著降低开销。同时,仍然将分组控制报头发送给主机以供处理,以避免到源IP代理器的完全TCP卸载。
[0020]在SoC中实现实施例时,可改进网络吞吐量性能,同时节省CPU循环以用于更增值的数据处理。实施例可特别适合于包括较低性能CPU的系统,因为CPU能够用于其它处理,从而实现更高吞吐量和更低能量消耗。改进的网络吞吐量实现更快存储装置的使用,从而实现较高速度的固态驱动器(SSD)装置。[0021]对于执行下载的典型客户端应用,进行读和写的组合,以通过套接字来接收文件并且将文件写出到盘。在各个实施例中,客户端应用而是能够直接路径感知的,使得它实现控制路径的建立,并且然后实现直接数据传输。经修改的客户端应用仍然执行与文件传输协议(FTP)相同的功能性,而没有引起服务器侧变更。
[0022]虽然参照特定集成电路中、例如计算平台或处理器中的能量保存和能量效率来描述以下实施例,但是其它实施例可适用于其它类型的集成电路和逻辑装置。本文所述实施例的类似技术可适用于能够获益于更好的能量效率和能量保存的其它类型的电路或半导体装置。例如,所公开的实施例并不局限于任何特定类型的计算机系统,而是还可用于其它装置、例如手持装置、SoC和嵌入式应用中。手持装置的一些示例包括蜂窝电话、因特网协议装置、数码相机、个人数字助理(PDA)和手持PC。嵌入式应用通常包括微控制器、数字信号处理器(DSP)、网络计算机(NetPC)、机顶盒、网络集线器、广域网(WAN)交换机或者能够执行以下所述功能和操作的其它任何系统。此外,本文所述的设备、方法和系统并不局限于物理计算装置,而是还可涉及用于能量保存和效率的软件优化。如在以下描述中易于显而易见,本文所述(无论是参照硬件、固件、软件还是其组合)的方法、设备和系统的实施例又‘绿色技术’未来、例如对于构成美国经济的大部分的产品的功率保存和能量效率是必不可少的。
[0023]现在参照图1,所示的是按照本发明的一个实施例的系统的框图。具体来说,图1示出系统100,其在所述实现中是能够用来执行直接路径数据传输的SoC。如图1所示,SoC100包括各种域,其中包括核域105、互连域140和装置域170。在图1的实施例中,所有这些域能够属于单个集成电路,但是本发明的范围并不局限于这个方面。例如,其它实现可包括作为单管芯SoC的核域105、互连域140以及装置域170的部分。
[0024]如图1所示,核域105包括多个核IlOc1-1lO1^这些核能够包括各种组件,其中包括对指令进行取和解码的前端单元、运行指令的一个或多个执行单元以及退出指令的后端单元。在各个实施例中,核全部能够是同构核,或者核的一个或多个能够具有异构设计。例如,核的一些可以是比较简单的有序核,而核的其它核能够是无序核。另外,每个核能够包括高速缓存分级结构的至少部分,例如专用高速缓存的多级其中之一。核又能够耦合相互耦合,剖腹藏珠经由高速缓存/互连120耦合到非核电路130。在各个实施例中,非核电路130能够包括一般处理电路,例如功率控制电路、接口电路、存储控制器电路等。另外,非核电路130能够包括共享高速缓存,例如最后一级高速缓存。
[0025]又如在图1中看到,核域105与装置域170之间的通信能够经由互连域140进行。在各个实施例中,互连域140能够是包括各种互连、路由器等的构造体。如下面将进一步描述,实施例能够与按照PCI Express?基本规范版本3.0 (2910年发布)的外围组件互连(PCI) Express?构造体、集成芯片上系统构造体(IOSF)(其例如经由主信道和边带信道来提供互连和通信,能够用来有效地传递带外信息)或者另一个这种构造体配合使用。
[0026]又如在图1中看到,装置域170能够包括源装置180,其在一个实施例中能够是网络接口控制器(NIC), 配置成经由芯片外互连175、例如以太网连接来接收信息。在图1所示的实施例中,有效载荷数据的直接路径传递能够是从源装置180到目的地装置190 (其能够是给定类型的存储装置)、从芯片上存储装置(例如静态随机存取存储器(SRAM)到芯片外装置(例如盘驱动器)。在所示实施例中,这种直接路径数据传输能够经由媒介、即安全装置185来发送,安全装置185能够例如按照给定数字版权管理(DRM)技术(例如数字生活网络联盟(DLNA)和数字传输内容保护-因特网协议(DTCP-1P)协议)来执行安全操作。
[0027]使用这个实施例,对于许多数据传输操作,核域105能够断电,因为它没有涉及到主要数据传输操作中。而是在初始装置控制/建立过程(其中源装置180与核域105进行通信,以建立数据路径,并且向两个核以及向目的地装置190提供某个控制信息)之后,实际数据传输不需要涉及核110或系统存储器150。直接存储器存取(DMA)数据传输而是可从源装置180到目的地装置190进行,其中控制由工作在核域105中的主机OS来处置。注意,这个控制能够具有相对有限的复杂度和涉及,使得核能够改为执行其它处理任务或者进入低功率状态。虽然在图1的实施例中采用这个具体实现示出,但是要理解,本发明的范围并不局限于这个方面。
[0028]现在参照图2,所示的是按照本发明的一个实施例的直接路径架构的应用视图的高级框图。如图2所示,架构200 —般可对应于给定计算装置,例如膝上型计算机、上网本、超级本、平板计算机、智能电话或者诸如台式计算机或服务器计算机之类的其它计算装置。如所看到的那样,CPU 220能够耦合到系统存储器225,例如但不限于动态随机存取存储器(DRAM)。另外,CPU 220可耦合到外围控制器集线器)PCH) 230,其又能够耦合到源IP块240 (其在一个实施例中能够是NIC)和目的地IP块250,其能够是给定类型的存储装置,包括盘驱动器、固态驱动器(SSD)、光存储装置、磁阻存储装置、随机存取存储器(RAM)盘(其可以是系统存储器的配置和隔绝部分)或其它存储装置。
[0029]如所看到的那样,应用210可在系统上运行,并且能够是给定客户端应用,例如从远程源得到数字内容的媒体应用。例如,客户端应用能够是音频播放器、视频播放器等,其还能够配置成得到和存储从远程源(例如,内容提供商、例如音乐提供商、诸如多频道视频节目传输商(MVPD)之类的视频提供商等的内容服务器)可获得的内容,以及将信息存储在本地存储装置250中。如所看到的那样,能够对IP块240与250之间的直接数据通信来优化该系统。更具体来说,这个通信能够响应由CPU 220经由应用210所执行的建立和控制。
[0030]相应地,在应用210与IP块之间的初始发现和控制之后,当这个应用的有效载荷数据由源IP块240来接收时,它能够经由PCH 230或者IP块之间的直接互连来直接传递给目的地IP块250。如所看到的那样,不需要经过CPU 220或系统存储器225的过渡路径。注意,接收具有控制信息(例如给定计算机OS的主机栈对其用于网络控制处理)的这个有效载荷。这样,实现能够平衡现有生态系统,使得对数据通信的始发方(例如内容提供商)不存在变更,并且此外不存在对系统200中的网络栈的变更。虽然在图2的实施例中以这种高级示出,但是要理解,本发明的范围并不局限于这个方面。
[0031]现在参照图3,所示的是按照本发明的一个实施例的网络-存储直接数据传输的高级架构图示。如图3所示,架构300包括输入装置320,其在一个实施例中能够是耦合到存储装置330的NIC。在各个实施例中,存储装置330能够是盘驱动器、SSD、RAMdisk等。
[0032]为了建立直接数据传输,可首先进行与主机OS/文件系统310的交互。如所看到的那样,控制分组能够从输入装置320被传递,作为数据输入的部分被接收。从这个信息,OS/文件系统能够向输入装置320传递文件块信息,并且还能够向存储装置330传递直接数据传输建立信息。因此,按照这种方式,从数据输入,控制分组能够传递给OS/文件系统310,并且然后有效载荷数据能够直接传递给存储装置330。[0033]现在来看图4,所示的是按照本发明的一个实施例、建立和执行直接数据传输的方法的流程图。如图4所示,方法400能够开始于创建套接字,并且检测所指定端口上的进入传输控制协议(TCP)连接(框410)。随后,在框420,从文件服务器能够得到文件大小,并且还能够得到名称信息(若这个信息可获得的话)。在一个实施例中,建立文件大小和名称信息可对应于预期被下载的给定一段内容。例如,信息能够对应于音乐文件(例如歌曲)或视频文件(例如电影或电视节目),并且能够包括内容的标题、其预计文件大小以及其它这类数据。在一些实施例中,服务质量(QoS)信息能够被包含并且用来以不同方式处理给定流。
[0034]仍然参照图4,随后在框425,能够对文件系统接口进行调用,以创建一个或多个空文件。因此,这些空文件可对应于所请求文件的所分配量的存储空间(例如基于得到的文件大小)。控制随后转到框430,其中文件块信息能够被得到并且传递给NIC。虽然本发明的范围并不局限于这个方面,但是在一些实施例中,当目的地存储装置是RAM盘时,这个信息能够包括各种文件块的物理地址。这样,NIC能够将进入的有效载荷数据进行DMA而进入这个位置。在目的地装置是SSD的一个实施例中,这个信息能够包括存储信息、例如块号、流标识符等,使得SSD能够进一步优化块(若需要的话)。在一个实施例中,这个信息能够经由输入/输出(I/O)控制调用来传递。相应地,在这点上,建立源和宿装置,以处置直接路径通信。
[0035]在建立数据传输之后,当NIC接收数据分组时,它可执行进入分组的元数据与关联客户端应用的元数据之间的比较。在一个实施例中,NIC可执行5元组值(在这个实施例中包括协议、源地址源端口、目的地地址和目的地端口)之间的比较,以确定分组是否属于直接路径流。如果是这样的话,则NIC可将有效载荷与分组的控制报头分离。有效载荷然后可直接发送给存储装置,并且控制报头被发送给主机以供处理。由于预先分配文件空间,所以在民IC中实现的有效载荷数据能够直接经DMA而进入存储空间,而无需经由存储器总线传递给系统存储器,这可显著降低数据移动开销。相应地,进一步参照图4,在菱形框440能够确定是否对所指示套接字/端口接收到数据分组。如果是的话,则能够开始直接数据传输(框450)。如所看到的那样,在这个传输期间,主机OS(例如经由主机处理器)能够监视来自NIC的异常。例如,如果所接收数据有效载荷大于所分配空间,则异常能够对应于对附加存储空间的请求。然后,响应这个异常,如由OS网络协议栈所确定,在需要时,能够附加新的文件块信息。
[0036]如果而是没有接收到这个直接路径流的数据分组,则控制转到框460,其中例如对于没有沿用直接路径路由的流能够接收和处理控制分组。随后,能够确定是否接收到流控制分组的结束(菱形框470)。如果没有的话,则控制转到菱形框440,如上所述。以及如果接收到流控制分组的结束,则控制转到框480,其中能够关闭所有套接字。虽然在图4的实施例中以这种高级示出,但是要理解,本发明的范围并不局限于这个方面。
[0037]现在参照图5,所示的是按照本发明的一个实施例的架构布置的进一步细节。如图5所示,架构500可提供一种处置直接数据路径操作的软件布置,其能够实现成允许装置层550中的装置、即NIC 560与存储装置570 (其在所示实施例可以是RAMdisk)之间的数据的直接传递。虽然示为RAM盘存储装置,但是要理解,本发明的范围并不局限于这个方面,而是其它类型的存储装置能够存在。[0038]如在图5中进一步看到,软件架构包括用户空间505,其能够包括应用510(例如内容播放器/下载器/库应用)和内核空间515 (其可包括OS内核的各种组件)。
[0039]为了实现NIC 560与存储装置570之间的直接数据传输,能够首先进行建立和控制操作。具体来说,应用510能够建立接收缓冲器虚拟地址,其能够用来建立NIC驱动器530中的缓冲器、即缓冲器532 (其能够存储与数据有效载荷关联的进入报头数据)。NIC 560有能力基于例如元组匹配(其可包括IP源、目的地、端口源、目的地等)来分割分组562的控制报头和数据部分。如进一步看到,NIC 560能够包括数据缓冲器561和5642,以存储控制报头的进入数据和数据有效载荷通信路径。如进一步看到,OS内核还能够包括网络栈,其中包括套接字520和传输TCP/IP 525,以用于处置控制通信路径。
[0040]除了建立这个虚拟缓冲器地址之外,应用510还能够创建空文件,并且将这个信息传递到存储装置570,以便为直接数据传输预先设置预定量的存储/空间。因此,如所看到的那样,这个信息能够经过虚拟文件系统535、经由页高速缓存538来传递,并且传递给文件系统540。在图5所示的实施例中,文件系统540可以是给定文件系统、例如Linux?Ext2/Ext4文件系统,其可提供系统调用以创建空文件,并且收集所有必需的文件块信息。可预先分配用于进入数据流的文件空间,而无需引起数据盘运行时I/O开销,因为该空间事先创建,使得当数据到达时,不存在额外开销。对应信息能够经过一般块层542和I/O调度器层544来传递,并且进入盘 驱动器545 (其可以是RAMdisk的驱动器)。如所看到的那样,驱动器545可包括缓冲器546,其能够接收有效载荷数据的DMA数据传输,并且将它们直接传递给存储装置570。如进一步看到,驱动器545还能够通知应用关于存储装置570中的文件的块地址。虽然在图5的实施例中以这种高级示出,但是要理解,本发明的范围并不局限于这种方式。
[0041]因此,在图5的实施例中,客户端应用510调用文件系统接口,以得到空文件信息。然后,应用510可经过例如输入/输出控制(IOCTL)调用将文件的块信息传递给NIC接口。假定存储装置570可以是RAM驱动器;应用510可经过NIC驱动器530向NIC 560发送块的物理地址连同要经过直接路径数据传输的特定流信息。
[0042]如上所述,SoC能够采用给定类型的互连结构来实现。现在参照图6,所示的是按照本发明的一个实施例的SoC的高级框图。如图6所示,SoC 600可包括各种组件,其全部能够集成在单个半导体管芯上,以便以高速度和低功率来提供各种处理能力,从而消耗较少量的不动产。如在图6中看到,SoC 600包括多个核605(605^在各个实施例中,核605能够是比较简单的有序核或者更复杂的无序核。或者有序和无序核的组合能够存在于单个SoC中。如所看到的那样,核605能够经由相干互连615来互连,其中相干互连615进一步耦合到高速缓冲存储器610、例如共享最后一级高速缓存(LLC)。虽然本发明的范围并不局限于这个方面,但是在一个实施例中,相干互连615可按照从Intel Corporation (SantaClara, California)可得到的 Quick Path Interconnect (QPI) ?规范。
[0043]如在图6中进一步看到,相干互连615可经由桥接器620来与构造体650进行通信,其中构造体650可以是包括处理和边带通信信道的IOSF构造体。相干互连615还可经由集成存储控制器615来与芯片外存储器(为了便于说明,在图6的实施例未示出)进行通信,并且还经过桥接器630来与构造体650进行通信。
[0044]如在图6中进一步看到,各种组件能够耦合到构造体650,其中包括内容处理模块(CPM) 640,其能够用于执行各种操作、例如安全处理、加密功能等。另外,显示处理器645能够是媒体处理管线的一部分,其对关联显示器呈现视频。
[0045]如进一步看到,构造体650还可耦合到IP代理器655 (其能够是源代理器,例如NIC)和IP代理器675 (其可以是目的地代理器,例如芯片上存储装置)。相应地,在代理器655中接收的下载文件的有效载荷数据的直接数据路径传递能够在代理器665与代理器675之间进行,其中特定安全处理由CPM 640来执行。另外,为了实现与其它芯片上装置的通信,构造体650还可与PCIe ?控制器660和通用串行总线(USB)控制器665 (其两者均能够与按照这些协议的各种装置进行通信)进行通信。最后,图6的实施例中所示的是桥接器670,其能够用来与其它协议(例如开放核协议(OCP)或ARM高级微控制器总线架构(AMBA)协议)的附加组件进行通信。虽然采用图6的实施例中的这些特定组件示出,但是要理解,本发明的范围并不局限于这种方式,以及在不同实施例中,附加或不同的组件可存在。
[0046]实施例能够通过许多不同系统来实现。为了说明的目的,智能电话、即基于Android?的智能电话在图7中示出。如所看到的那样,图7示出基于Android?的平台的软件架构700的框图。如所看到的那样,架构700包括应用层710,其中各种用户应用能够运行。一个这种应用可以是内容应用715,其按照本发明的一个实施例可配置成使用户能够访问远程内容并且将其下载到智能电话。应用715能够例如经由服务提供商所提供的应用商店来下载到智能电话。通信应用、计算应用、电子邮件应用等的范围的各种其它用户应用还可驻留在应用层710中。
[0047]应用框架720在应用层710之外运行。应用框架720可包括各种管理器,以管理智能电话的功能性。各种服务、代理器、本地库和运行时又能够在应用框架720之下运行。在图7所示的实施例中,这类组件可包括安全引擎730,其能够对进入的数据运行安全操作。安全引擎730还可配置有一个或多个DRM技术,以便允许内容从源代理器到智能电话的非易失性存储装置的直接路径传递。另外,各种本地库740可存在,以处置不同的服务。另外,运行时750能够包括核库752和过程虚拟机(VM) 754、例如Dalvik VM。如在图7中进一步看到,所有上述组件能够在内核760、即Linux?内核上运行。这种内核能够包括用于硬件交互、网络交互等的各种驱动器。
[0048]因此,实施例能够用于许多不同的环境中。现在参照图8,所示的是实施例能够与其配合使用的示例系统800的框图。如所看到的那样,系统800可以是智能电话或其它无线通信装置。如图8的框图所示,系统800可包括基带处理器810,其上能够运行远程内容共享应用。一般来说,基带处理器810能够执行针对通信的各种信号处理以及执行装置的计算操作。基带处理器810又能够耦合到用户界面/显示器820,其在一些实施例中能够由触摸屏显示器来实现。另外,基带处理器810可耦合到存储器系统,其中在图8的实施例中包括非易失性存储器(即,闪速存储器830)和系统存储器(即,动态随机存取存储器(DRAM)835)。如进一步看到,基带处理器810还能够耦合到捕获装置840、例如图像捕获装置,其能够记录视频和/或静止图像。
[0049]为了使通信能够被传送和接收,各种电路可耦合在基带处理器810与天线880之间。具体来说,射频(RF)收发器870和无线局域网(WLAN)收发器875可存在。一般来说,RF收发器870可用来按照给定无线通信协议(例如3G或4G无线通信协议)、例如按照码分多址(CDMA)、全球移动通信系统(GSM)、长期演进(LTE)或其它协议来接收和传送无线数据和呼叫。还可提供其它无线通信、例如无线电信号(例如AM/FM)或全球定位卫星(GPS)信号的接收或传输。另外,经由WLAN收发器875,还能够实现例如按照Bluetooth?标准或IEEE 802.11标准(例如IEEE 802.lla/b/g/n)的本地无线信号。虽然在图8的实施例中以这种高级示出,但是要理解,本发明的范围并不局限于这个方面。
[0050]现在参照图9,所示的是按照本发明的一个实施例的网络的框图。如图9所示,网络900可用来允许用户在多种不同类型的装置上、经由网络来访问内容。如所看到的那样,网络900可对应于任何类型的通信网络,并且可包括经由给定网络、例如因特网920所互连的许多不同类型的计算装置。
[0051]为了实现例如媒体内容的基于云的存储,能够提供云存储910。这个云存储可以是包括各种计算装置、存储装置等的数据中心的一部分。作为一个示例,云存储910可以是包括诸如盘、光或基于半导体的存储装置之类的多个存储组件的存储装置。云存储910可充当与给定内容提供商关联的内容库,例如MP3或其它音乐库、视频库(例如基于预订的视频点播服务)等。
[0052]如在图9中进一步看到,在相同位置、例如作为相同数据中心的一部分,云服务器915可耦合到云存储910。在各个实施例中,云服务器915可用来使用户能够请求并且得到对云存储810上存储的内容的远程访问。如图9所示,各种用户装置可存在,例如用户装置930!和9302。这类用户装置可以是给定用户的个人装置,例如智能电话、平板计算机、膝上型计算机、上网本、超级本、台式计算机等,其能够实现按照本发明的一个实施例的直接路径架构。虽然在图9的实施例中以这种高级示出,但是要理解,本发明的范围并不局限于这个方面。
[0053]本发明的另一方面针对包括指令的至少一个计算机可访问媒体,其中指令在运行时使计算装置执行各 种操作以建立和发起装置的源与目的地代理器之间的直接数据传输。为此,指令能够使装置能够实现,得到与包括所请求内容的文件有关的信息,将文件信息传递给主机处理器以建立源代理器与目的地代理器之间的直接通信路径,以及在源代理器中接收文件的数据分组,并且按照与直接通信路径有关的信息将数据分组的有效载荷从源代理器直接发送给目的地代理器。这种接收和有效载荷传输能够在主机处理器处于低功率状态的同时进行。指令还能够使装置将数据分组的控制报头转发到主机处理器。在一个实施例中,装置的文件系统能够用来在装置(其可以是目的地代理器)的存储单元中创建一个或多个空文件,并且向源代理器传递与这个文件有关的信息。然后,源代理器可从源代理器向介于源代理器与目的地代理器之间的安全处理器提供有效载荷。这样,安全处理可对源代理器与目的地代理器之间的直接数据路径来执行,同时主机处理器保持在低功率模式。
[0054]实施例可通过代码来实现,并且可存储在至少一个非暂时存储媒体上,存储媒体上存储了能够用于将系统编程为执行指令的指令。存储媒体可包括但不限于:任何类型的盘,包括软盘、光盘、固态驱动器(SSD)、紧致盘只读存储器(⑶-ROM)、可重写紧致盘(CD-RW)和磁光盘;半导体装置,例如只读存储器(ROM)、诸如动态随机存取存储器(DRAM)和静态随机存取存储器(SARAM)之类的随机存取存储器(RAM)、可擦可编程只读存储器(EPROM)、闪速存储器、电可擦可编程只读存储器(EEPROM)、磁卡或光卡;或者适合于存储电子指令的任何其它类型的媒体。
[0055]虽然针对有限数量的实施例描述了本发明,但是本领域的技术人员将从中领会大量修改和变更。预计所附权利要求涵盖落入本发明的真实精神和范围之内的所有这类修改和变更。
【权利要求】
1.至少一个计算机可访问媒体,包括指令,所述指令在被运行时使计算装置: 得到与要从远程位置下载到计算装置的文件有关的文件信息; 基于所述文件信息在所述计算装置的目的地存储装置中创建至少一个空文件,并且向所述计算装置的网络接口传递与所述至少一个空文件有关的块信息;以及 在所述网络接口中接收所述文件的数据分组,并且按照所述块信息将所述数据分组的有效载荷从所述网络接口直接发送给所述目的地存储装置,同时所述计算装置的主机处理器处于低功率状态。
2.如权利要求1所述的至少一个计算机可访问媒体,其中,所述指令还使所述计算装置将所述数据分组的控制报头转发到所述计算装置的所述主机处理器。
3.如权利要求1所述的至少一个计算机可访问媒体,其中,所述指令还使所述计算装置使用所述计算装置的文件系统来创建所述至少一个空文件。
4.如权利要求1所述的至少一个计算机可访问媒体,其中,所述指令还使所述计算装置将所述有效载荷 从所述网络接口提供给介于所述网络接口与所述目的地存储装置之间的所述计算装置的安全处理器。
5.如权利要求1所述的至少一个计算机可访问媒体,其中,所述文件包括音频信息,以及所述目的地存储装置包括所述计算装置的随机存取存储器(RAM)盘。
6.如权利要求1所述的至少一个计算机可访问媒体,其中,所述指令还使所述计算装置将所述有效载荷从所述网络接口直接发送给所述目的地存储装置,而无需中途将所述有效载荷存储在所述计算装置的系统存储器中。
7.如权利要求6所述的至少一个计算机可访问媒体,其中,所述指令还使所述计算装置在文件被下载到所述计算装置的同时将所述系统存储器保持在低功率状态。
8.如权利要求1所述的至少一个计算机可访问媒体,其中,所述指令还使所述计算装置在将所述有效载荷从所述网络接口直接发送给所述目的地存储装置的同时将所述计算装置的芯片上系统(SoC)的核域断电。
9.如权利要求8所述的至少一个计算机可访问媒体,其中,所述指令还使所述计算装置在将所述有效载荷从所述网络接口直接发送给所述目的地存储装置的同时向所述SoC的互连域和装置域供电,所述装置域包括所述网络接口。
10.如权利要求9所述的至少一个计算机可访问媒体,其中,所述指令还使所述计算装置在所述网络接口接收所述文件的至少一些数据分组的同时向所述SoC的核域供电,并且在所述核域中执行与所述文件不相关的处理。
11.一种芯片上系统(SoC),包括: 核域,包括独立运行指令的多个核; 互连域,将所述核域耦合到装置域的多个知识产权(IP)逻辑;以及 所述装置域包括源IP逻辑,所述源IP逻辑耦合到网络以接收用户所请求的文件,无需将所述有效载荷数据传递给所述核域并且响应从所述核域所接收的直接数据传输建立信息的传递,所述源IP逻辑将所述文件的数据分组的有效载荷数据直接传输给目的地IP逻辑,同时所述核域的至少一部分处于低功率状态。
12.如权利要求11所述的SoC,其中,有效载荷的所述直接数据传输经过所述互连域而绕过所述核域。
13.如权利要求11所述的SoC,其中,所述目的地IP逻辑包括系统存储器的随机存取存储器(RAM)盘部分。
14.如权利要求11所述的SoC,其中,所述源IP逻辑向所述核域传递所述文件的所述数据分组的至少一个分组的控制信息。
15.如权利要求14所述的SoC,其中,响应应用请求,所述核域使空文件在所述目的地IP逻辑中被创建。
16.如权利要求15所述的SoC,其中,所述核域向所述源IP逻辑传递与所述空文件关联并且与所述直接数据传输建立信息对应的文件块信息,以便使所述源IP逻辑能够将所述文件的数据分组的有效载荷数据直接传输给所述目的地IP逻辑。
17.—种系统,包括: 处理器,运行指令; 无线收发器,无线地传送和接收指令; 源代理器,耦合到网络,以接收运行于所述处理器之上的客户端应用所请求的文件; 目的地代理器,耦合到所述源代理器,以存储所述文件;以及 至少一个存储媒体,包括指令,所述指令使所述系统能够得到与所述文件有关的文件信息,经由所述客户 端应用向所述系统的文件系统传递所述文件信息,基于所述文件信息、经由所述文件系统在所述目的地代理器中创建至少一个文件,并且向所述源代理器传递与所述至少一个文件有关的块信息,以及此后在所述源代理器中接收所述文件的数据分组,向所述处理器提供所述数据分组的控制部分,并且按照所述块信息、经由耦合所述源代理器和所述目的地代理器同时绕过所述处理器和系统存储器的旁路路径向所述目的地代理器直接提供所述数据分组的数据部分,同时所述处理器处于低功率状态。
18.如权利要求17所述的系统,其中,所述源代理器向所述处理器传递与所述文件的接收关联的异常,以及所述处理器处置所述异常。
19.如权利要求18所述的系统,其中,当所述异常对应于对所述文件的附加存储空间的请求时,所述处理器响应所述异常而向所述源代理器提供附加块信息。
20.如权利要求19所述的系统,其中,所述源代理器按照所述附加块信息、经由所述旁路路径向所述目的地代理器直接提供所述文件的附加数据分组的数据部分。
【文档编号】G06F1/32GK104011656SQ201280063438
【公开日】2014年8月27日 申请日期:2012年12月19日 优先权日:2011年12月22日
【发明者】王任, C.马焦科, T-Y.C.邰, A.萨米, M.维伊, A.拉胡纳特, J.基斯, S.哈恩, R.亚瓦特卡 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1