Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR DATA PROCESSING, PCI-E BUS SYSTEM AND SERVER
Document Type and Number:
WIPO Patent Application WO/2012/103768
Kind Code:
A1
Abstract:
The embodiments of the present invention provide a method and apparatus for data processing, a PCI-E bus system and a server. The method comprises: configuring the address information for PCI-E memory of a PCI-E device, thus ensuring that said PCI-E device can save the received data into the PCI-E memory; controlling CPUs to access the data saved into the PCI-E memory, thus ensuring that said CPUs can process the data. The method in the embodiment of the present invention can avoid the problem in the prior art that part of the bandwidth of the buses between the other CPUs and the buses through which the other CPUs access corresponding memory are occupied when accessing the data received by the PCI-E device, which is resulted from the PCI-E device saved the received data into memory of the other CPUs, thereby improving the utilization ratio of CPUs.

Inventors:
FANG FAN (CN)
YU BAIFENG (CN)
Application Number:
PCT/CN2011/083754
Publication Date:
August 09, 2012
Filing Date:
December 09, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECH CO LTD (CN)
FANG FAN (CN)
YU BAIFENG (CN)
International Classes:
G06F13/16
Domestic Patent References:
WO2010033375A22010-03-25
Foreign References:
CN101639930A2010-02-03
CN101178697A2008-05-14
CN101281453A2008-10-08
US20090271590A12009-10-29
Other References:
See also references of EP 2620876A4
Attorney, Agent or Firm:
LEADER PATENT & TRADEMARK FIRM (CN)
北京同立钧成知识产权代理有限公司 (CN)
Download PDF:
Claims:
权 利 要求 书

1、 一种数据处理方法, 其特征在于, 包括:

配置 PCI-E设备的 PCI-E内存的地址信息,以使所述 PCI-E设备将接收 到的数据存储到所述 PCI-E内存中;

控制 CPU访问所述 PCI-E内存中存储的所述数据, 以使所述 CPU对该 数据进行处理。

2、 根据权利要求 1所述的方法, 其特征在于,

所述控制 CPU访问所述 PCI-E内存中存储的所述数据, 以使所述 CPU 对该数据进行处理, 之前还包括:

通过预先指定的 CPU访问所述 PCI-E内存中存储的所述数据, 确定需 要访问该数据的 CPU。

3、 根据权利要求 1或 2所述的方法, 其特征在于, 所述控制 CPU访问 所述 PCI-E内存中存储的所述数据, 包括:

控制所述 CPU根据所述 PCI-E内存的地址信息, 访问所述 PCI-E内存 中存储的所述数据; 或者

将所述 PCI-E内存中存储的所述数据拷贝到所述 CPU的内存中, 并控 制所述 CPU访问该 CPU的内存中存储的所述数据。

4、 根据权利要求 1至 3任一权利要求所述的方法, 其特征在于, 所述 PCI-E内存位于 PCI-E总线内或者与 PCI-E总线连接。

5、 一种数据处理装置, 其特征在于, 包括:

配置单元, 用于配置 PCI-E设备的 PCI-E内存的地址信息, 以使所述 PCI-E设备将接收到的数据存储到所述 PCI-E内存中;

控制单元, 用于控制 CPU访问所述 PCI-E内存中存储的所述数据, 以 使所述 CPU对该数据进行处理。

6、 根据权利要求 5所述的装置, 其特征在于, 还包括确定单元, 用于 通过预先指定的 CPU访问所述 PCI-E内存中存储的所述数据, 确定需 要访问该数据的 CPU , 以供所述控制单元控制所述 CPU访问所述 PCI-E内 存中存储的所述数据。

7、根据权利要求 5或 6所述的装置, 其特征在于, 所述控制单元具体用 于 控制所述 CPU根据所述 PCI-E内存的地址信息, 访问所述 PCI-E内存 中存储的所述数据; 或者

将所述 PCI-E内存中存储的所述数据拷贝到所述 CPU的内存中, 并控 制所述 CPU访问该 CPU的内存中存储的所述数据。

8、 根据权利要求 5至 7任一权利要求所述的装置, 其特征在于, 所述 PCI-E内存位于 PCI-E总线内或者与 PCI-E总线连接。

9、 一种 PCI-E总线系统, 其特征在于, 包括 PCI-E内存和权利要求 5 至 8任一权利要求所述的数据处理装置,所述 PCI-E内存用于存储所述 PCI-E 设备接收到的数据。

10、 一种服务器, 其特征在于, 包括 CPU和权利要求 9所述的 PCI-E 总线系统, 所述 CPU用于访问所述 PCI-E内存中存储的所述数据, 并对该 数据进行处理。

Description:
数据处理方法及装置、 PCI-E总线系统、 服务器 技术领域 本发明实施例涉及通信技术, 尤其涉及一种数据处理方法及装置、 扩展 的夕卜设部件互连标准 ( Peripheral Component Interconnect Express, 简称 PCI-E ) 总线系统、 服务器。 背景技术

一般来说, 服务器可以由多个中央处理单元(Central Process Unit, 简 称 CPU )组成, 每个 CPU之间以总线形式进行互联, 其中, CPU可以通过 PCI-E总线系统连接设备即 PCI-E设备。 PCI-E设备根据获得的 CPU的内存 的地址信息, 将接收到的数据存储到该 CPU的内存中。

然而, 当另一 CPU需要访问上述数据时, 需要通过另一 CPU与存储该 数据的内存对应的 CPU (即其他 CPU )之间的总线、 以及其他 CPU与对应 的内存之间的总线访问该内存中存储的数据, 使得占用了另一 CPU 与其他 CPU之间总线的部分带宽, 以及占用了其他 CPU访问对应的内存的总线, 导致了 CPU利用率的降低。 发明内容 本发明实施例提供一种数据处理方法及装置、 PCI-E总线系统、 服务器, 用以实现提高 CPU的利用率。

本发明实施例一方面提供了一种数据处理方法 , 包括:

配置 PCI-E设备的 PCI-E内存的地址信息,以使所述 PCI-E设备将接收 到的数据存储到所述 PCI-E内存中;

控制 CPU访问所述 PCI-E内存中存储的所述数据, 以使所述 CPU对该 数据进行处理。

本发明实施例另一方面提供了一种数据处理装 置, 包括:

配置单元, 用于配置 PCI-E设备的 PCI-E内存的地址信息, 以使所述 PCI-E设备将接收到的数据存储到所述 PCI-E内存中; 控制单元, 用于控制 CPU访问所述 PCI-E内存中存储的所述数据, 以 使所述 CPU对该数据进行处理。

本发明实施例另一方面提供了一种 PCI-E总线系统, 包括 PCI-E内存和 上述数据处理装置,所述 PCI-E内存用于存储所述 PCI-E设备接收到的数据。

本发明实施例另一方面提供了一种服务器, 包括 CPU和上述 PCI-E总 线系统, 所述 CPU用于访问所述 PCI-E内存中存储的所述数据, 并对该数 据进行处理。

由上述技术方案可知, 本发明实施例通过配置 PCI-E设备的 PCI-E内存 的地址信息, 使得在上述 PCI-E设备将接收到的数据存储到上述 PCI-E内存 中之后, 能够控制 CPU访问上述 PCI-E 内存中存储的上述数据, 能够避免 现有技术中由于 PCI-E设备将接收到的数据存储到其他 CPU的内存中而导 致的访问 PCI-E设备接收到的数据时会占用与其他 CPU之间总线的部分带 宽, 以及占用其他 CPU访问对应的内存的总线的问题, 从而提高了 CPU的 利用率。 附图说明 为了更清楚地说明本发明实施例或现有技术中 的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作一 简单地介绍, 显而易见地, 下 面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员来讲, 在 不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。

图 1为本发明一实施例提供的数据处理方法的流 示意图;

图 2为图 1对应的实施例涉及的 PCI-E总线系统的结构示意图; 图 3为本发明另一实施例提供的数据处理装置的 构示意图;

图 4为本发明另一实施例提供的数据处理装置的 构示意图;

图 5为本发明另一实施例提供的 PCI-E总线系统的结构示意图; 图 6为本发明另一实施例提供的服务器的结构示 图。 具体实施方式 为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发 明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于 本发明中的实施例, 本领域普通技术人员在没有作出创造性劳动前 提下所获 得的所有其他实施例, 都属于本发明保护的范围。

图 1为本发明一实施例提供的数据处理方法的流 示意图,如图 1所示, 本实施例的数据处理方法可以包括:

101、 配置 PCI-E设备的 PCI-E内存的地址信息, 以使上述 PCI-E设备 将接收到的数据存储到上述 PCI-E内存中;

102、控制 CPU访问上述 PCI-E内存中存储的上述数据,以使上述 CPU 对该数据进行处理。

其中, 上述 101~102的执行主体可以为操作系统。

进一步地, 在 102之前, 操作系统还可以通过预先指定的 CPU (例如: 主 CPU )访问上述 PCI-E内存中存储的数据, 确定需要访问该数据的 CPU。 具体确定方法可以参见现有技术中的相关内容 , 此处不再赘述。

可选地, 102中,具体可以控制确定的上述 CPU根据上述 PCI-E内存的 地址信息, 访问上述 PCI-E内存中存储的上述数据。

可选地, 102中, 具体可以将上述 PCI-E内存中存储的上述数据拷贝到 确定的上述 CPU的内存中, 并控制该 CPU访问该 CPU的内存中存储的上 述数据。

其中, 可选地, 上述 PCI-E内存可以位于 PCI-E总线内, 即 PCI-E内存 可以设置在转换组件( Switch )之前。可选地,上述 PCI-E内存还可以与 PC卜 E 总线连接, 即 PCI-E内存可以与 PCI-E设备类似, 在转换组件(Switch )之 后, 通过总线与 CPU进行连接。

本实施例中, 通过配置 PCI-E设备的 PCI-E内存的地址信息, 使得在上 述 PCI-E设备将接收到的数据存储到上述 PCI-E内存中之后,能够控制 CPU 访问上述 PCI-E内存中存储的上述数据, 能够避免现有技术中由于 PCI-E设 备将接收到的数据存储到其他 CPU的内存中而导致的访问 PCI-E设备接收 到的数据时会占用与其他 CPU之间总线的部分带宽, 以及占用其他 CPU访 问对应的内存的总线的问题, 从而提高了 CPU的利用率。

为使得本发明实施例提供的方法更加清楚,下 面将以如图 2所示的 PCI-E 总线系统作为举例。 如图 2所示的 PCI-E总线系统中, CPU1通过快速通道 互联 ( Quick Path Interconnect, 简称 QPI ) 总线与 CPU2连接, CPU1和 CPU2通过 QPI总线连接到输入输出中心 ( Input Output Hub, 简称 ΙΟΗ ) , ΙΟΗ通过根组件(Root Complex )连接到转换组件(Switch ) , 该转换组件 ( Switch )连接 PCI-E设备 1、 PCI-E设备 2和 PCI-E内存。 首先, 运行在 CPU1和 CPU2上的操作系统配置 PCI-E设备 1和 PCI-E设备 2的 PCI-E 内存的地址信息, 以使 PCI-E设备 1或 PCI-E设备 2将接收到的数据存储到 上述 PCI-E内存中。 然后, 操作系统则控制 CPU1访问上述 PCI-E内存中存 储的上述数据, 以使 CPU1对该数据进行处理。 CPU1在访问上述 PCI-E内 存中存储的上述数据的同时, CPU1还可以进一步通过 CPU1与 CPU2之间 的 QPI总线传递信息, CPU1访问上述 PCI-E内存中存储的上述数据并没有 占用 CPU1与 CPU2之间的 QPI总线的带宽;另外, CPU1在访问上述 PCI-E 内存中存储的上述数据的同时, CPU2还可以访问其对应的内存中存储的其 他数据, 从而提高了 CPU1和 CPU2的利用率。

需要说明的是: 对于前述的各方法实施例, 为了简单描述, 故将其都表 述为一系列的动作组合, 但是本领域技术人员应该知悉, 本发明并不受所描 述的动作顺序的限制, 因为依据本发明, 某些步骤可以采用其他顺序或者同 时进行。 其次, 本领域技术人员也应该知悉, 说明书中所描述的实施例均属 于优选实施例, 所涉及的动作和模块并不一定是本发明所必须 的。

在上述实施例中, 对各个实施例的描述都各有侧重, 某个实施例中没有 详述的部分, 可以参见其他实施例的相关描述。

图 3为本发明另一实施例提供的数据处理装置的 构示意图, 如图 3所 示, 本实施例的数据处理装置 3可以包括配置单元 31和控制单元 32。 其中, 配置单元 31用于配置 PCI-E设备的 PCI-E内存的地址信息,以使上述 PC卜 E 设备将接收到的数据存储到上述 PCI-E内存中; 控制单元 32用于控制 CPU 访问上述 PCI-E内存中存储的上述数据, 以使上述 CPU对该数据进行处理。

上述图 1对应的实施例中的方法可以由本实施例提供 数据处理装置实 现。

进一步地, 如图 4所示, 本实施例的数据处理装置 4还可以进一步包括 确定单元 41 , 用于通过预先指定的 CPU访问上述 PCI-E内存中存储的上述 数据, 确定需要访问该数据的 CPU , 以供控制单元 32控制确定单元 41确定 的上述 CPU访问上述 PCI-E内存中存储的上述数据。

可选地, 本实施例中的控制单元 32 具体可以控制上述 CPU 根据上述 PCI-E内存的地址信息, 访问上述 PCI-E内存中存储的上述数据。

可选地, 本实施例中的控制单元 32具体还可以将上述 PCI-E内存中存 储的上述数据拷贝到上述 CPU的内存中, 并控制上述 CPU访问该 CPU的 内存中存储的上述数据。

其中, 可选地, 上述 PCI-E内存可以位于 PCI-E总线内, 即 PCI-E内存 可以设置在转换组件( Switch )之前。可选地,上述 PCI-E内存还可以与 PC卜 E 总线连接, 即 PCI-E内存可以与 PCI-E设备类似, 在转换组件(Switch )之 后, 通过总线与 CPU进行连接。

本实施例中, 通过配置单元配置 PCI-E设备的 PCI-E内存的地址信息, 使得在上述 PCI-E设备将接收到的数据存储到上述 PCI-E内存中之后, 控制 单元能够控制 CPU访问上述 PCI-E内存中存储的上述数据, 能够避免现有 技术中由于 PCI-E设备将接收到的数据存储到其他 CPU的内存中而导致的 访问 PCI-E设备接收到的数据时会占用与其他 CPU之间总线的部分带宽, 以及占用其他 CPU访问对应的内存的总线的问题, 从而提高了 CPU的利用 率。

图 5为本发明另一实施例提供的 PCI-E总线系统 5的结构示意图, 如图 5所示, 本实施例的 PCI-E总线系统可以包括 PCI-E内存 51和图 3或图 4 对应的实施例提供的数据处理装置 52, PCI-E内存 51用于存储所述 PCI-E 设备接收到的数据。

图 6为本发明另一实施例提供的服务器 6的结构示意图, 如图 6所示, 本实施例的服务器可以包括 CPU 61和图 5对应的实施例提供的 PCI-E总线 系统 62, CPU 61用于访问所述 PCI-E内存中存储的所述数据, 并对该数据 进行处理。

所属领域的技术人员可以清楚地了解到, 为描述的方便和简洁, 上述描 述的系统, 装置和单元的具体工作过程, 可以参考前述方法实施例中的对应 过程, 在此不再赘述。

在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统, 装置和 方法, 可以通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅是示 意性的, 例如, 所述单元的划分, 仅仅为一种逻辑功能划分, 实际实现时可 以有另外的划分方式, 例如多个单元或组件可以结合或者可以集成到 另一个 系统, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论的相互之间 的耦合或直接耦合或通信连接可以是通过一些 接口, 装置或单元的间接耦合 或通信连接, 可以是电性, 机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可 以不是物理上分开的, 作 为单元显示的部件可以是或者也可以不是物理 单元, 即可以位于一个地方, 或者也可以分布到多个网络单元上。 可以根据实际的需要选择其中的部分或 者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可 以集成在一个处理单元中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一个单 元中。 上述集成的单元既可以采用硬件的形式实现, 也可以采用软件功能单 元的形式实现。

所述集成的单元如果以软件功能单元的形式实 现并作为独立的产品销售 或使用时, 可以存储在一个计算机可读取存储介质中。 基于这样的理解, 本 发明的技术方案本质上或者说对现有技术做出 贡献的部分或者该技术方案的 全部或部分可以以软件产品的形式体现出来, 该计算机软件产品存储在一个 存储介质中, 包括若干指令用以使得一台计算机设备 (可以是个人计算机, 服务器, 或者网络设备等)执行本发明各个实施例所述 方法的全部或部分步 骤。 而前述的存储介质包括: U 盘、 移动硬盘、 只读存储器 (Read-Only Memory, 简称 ROM ) 、 随机存取存储器( Random Access Memory, 简称 RAM ) 、 磁碟或者光盘等各种可以存储程序代码的介质 。