主机存储器的基于通知协议的端点高速缓存制造技术

技术编号:7571431 阅读:192 留言:0更新日期:2012-07-15 04:45
响应于从端点设备(14)接收到针对主机存储器地址的内容状态的改变的通知的请求,与所述主机存储器地址相关联地登记所述端点设备(14)。响应于所述主机存储器地址的内容状态的改变,向所述端点设备(14)发送表明所述主机存储器地址已改变内容状态的通知。响应于由所述端点设备(14)接收到所述通知,通过数据规划(42)确定与所述主机存储器地址的内容状态的改变相关联的语义,并且根据所确定的语义由所述端点设备(14)执行动作。

【技术实现步骤摘要】
【国外来华专利技术】主机存储器的基于通知协议的端点高速缓存
技术介绍
计算机系统通常包括中央处理单元(CPU)、高速设备(例如主机高速缓冲存储器和图形控制器)、以及外围总线(例如外围部件互连(PCI)或PCI Express (PCIe)总线)和片上集成外围部件(例如网络接口控制器、通用串行总线端口、闪速存储器、以及音频设备)。 一些计算机系统具有主机接口,其包括存储器控制器集线器和输入/输出(I/O)控制器集线器。存储器控制器集线器经由一致性(coherent)互连把CPU连接到计算机系统的各高速部件,所述一致性互连可以由前端总线或串行接口来实施,比如QPI (Intel QuickPath 互连)或cHT (—致性超传输)。I/O控制器集线器经由集线器互连把存储器控制器集线器连接到外围总线和集成外围部件。外围部件根据外围总线协议与I/O控制器集线器进行通信。举例来说,在现代htel 集线器架构中,外围部件通常经由PCI通信协议或PCIe通信协议与CPU进行通信。主机高速缓冲存储器(也被称作“高速缓存”)是本地高速存储器,其通过从低级别高速缓存或主存储器取出并存储其位置与所请求的数据片段邻近的数据而提高系统性能。 主机高速缓冲存储器通常包括状态比特,其指示每条高速缓存线路的状态以便在整个计算机系统中保持数据一致性。举例来说,根据“M0ESI”高速缓存一致性协议,所述状态比特指示相关联的高速缓存线路的状态(例如自有(0)、修改(M)、排他(E)、共享(S)、或无效(I))。在许多计算机系统中,利用I/O操作将数据从CPU传送到外围部件,所述I/O操作通常涉及把数据移动到主存储器,并且随后由CPU或外围部件从主存储器中读取所述数据。举例来说,在把输出数据从CPU传送到I/O设备时,CPU通常创建输出数据、将输出数据传送到主存储器,并且把指向输出数据的指针(也被称作描述符)存储在已知的位置。CPU 随后发出“门铃”事件,其向I/O设备通知已经准备好发送所述输出数据。响应于所述门铃事件,I/O设备使用所述指针来把输出数据从主存储器传送到I/O设备。新的处理器和I/ 0集线器架构除了主存储器之外还允许从高速缓存直接进行传送。需要的是在减少CPU参与的情况下提供改进的I/O通信的装置和方法。
技术实现思路
在一个方面中,本专利技术的特征在于方法,根据所述方法,响应于从端点设备接收到针对主机存储器地址的内容状态的改变的通知的请求,与所述主机存储器地址相关联地登记所述端点设备。响应于所述主机存储器地址的内容状态的改变,向端点设备发送表明所述主机存储器地址已改变内容状态的通知。响应于由端点设备接收到所述通知,通过数据规划(schema)确定与所述主机存储器地址的内容状态的改变相关联的语义,并且由端点设备根据所确定的语义来执行动作。本专利技术的特征还在于可操作用来实施上述的方法的装置、以及存储使计算机实施上述的方法的计算机可读指令的计算机可读介质。附图说明CN 102549555 A图1是包括连接到端点设备的主机CPU的计算机系统架构的一个实施例的框图。图2是根据通知协议的一个实施例的主机高速缓冲存储器的端点高速缓存的方法的一个实施例的流程图。图3是计算机系统架构的一个实施例的框图。图4是应用(application)与端点设备之间的计算机软件栈的一个实施例的图7J\ ο图5是计算机系统架构的一个实施例的框图。图6A是根据通知协议的一个实施例的高速缓存代理与存储器代理之间的交互图。图6B是根据通知协议的一个实施例的高速缓存代理与存储器代理之间的交互图。图7示出根据通知协议的一个实施例的无效化消息的一个示例性实施例。图8是包括连接到图形处理单元的CPU的计算机系统布置的一个实施例的框图。图9是包括连接到网络接口控制器的CPU的计算机系统布置的一个实施例的框图。图10是包括连接到多个端点设备的CPU的计算机系统布置的一个实施例的框图。图11是包括连接到数据存储系统的CPU的计算机系统布置的一个实施例的框图。图12是包括连接到多个存储设备的多个CPU的计算机系统布置的一个实施例的框图。图13是包括虚拟化设备驱动器、管理程序和端点设备的I/O虚拟化架构的一个实施例的图示。图14是包括经由互连而连接到多个存储设备的多个CPU的计算机系统架构的一个实施例的框图。具体实施例方式在下面的描述中,相同的附图标记被用来标识相同的元件。此外,附图意图以图示的方式说明示例性实施例的主要特征。附图不意图描绘实际实施例的每项特征和所描绘元件的相对尺寸,并且不是按比例绘制的。I.术语的定义“计算机”是根据临时地或永久地存储在计算机可读介质上的计算机可读指令来处理数据的任何机器、设备、或装置。“操作系统”是计算机系统的软件部件,其管理并协调各项任务的执行以及计算和硬件资源的共享。“软件应用”(也被称作软件、应用、计算机软件、计算机应用、程序、以及计算机程序)是计算机可以解释并执行来执行一项或多项特定任务的指令集合。“数据文件”是耐久地存储数据以供软件应用使用的信息块。中央处理单元(CPU)是可以执行软件应用的电子电路。CPU可以包括一个或多个处理器(或处理核心)。“主机CPU”是控制其他设备或为其他设备提供服务的CPU,所述其他设备包括I/O设备和其他外围设备。术语“处理器”指代通常在单个芯片上的电子电路,其执行操作,包括但不限于数据处理操作、控制操作、或者数据处理操作和控制操作这二者。术语“机器可读介质”指代能够携带可由机器(例如计算机)读取的信息的任何物理介质。适于有形地包括这些指令和数据的存储设备包括但不限于所有形式的非易失性计算机可读存储器,例如包括半导体存储器设备(比如EPROM、EEPROM和闪速存储器设备)、磁盘(比如内部硬盘和可移除硬盘)、磁光盘、DVD-ROM/RAM、以及CD-ROM/RAM。存储器地址的“内容状态”指的是存储在计算机可读介质中的所述存储器地址处的内容的状态。“主机高速缓冲存储器”指的是存储来自主存储器的数据的拷贝以便减少CPU的访问等待时间的高速存储器。主机高速缓冲存储器可以是单个存储器或分布式存储器。举例来说,主机高速缓冲存储器可以存在于以下地点中的一项或多项在CPU芯片上;在存储器控制器前方;以及在I/O集线器内。所有这些高速缓存都可以被一致性地保持并被用作 DMA操作的来源/目的地。“端点”是由通信实体在通信链路的一端所暴露出的接口。“端点设备”是处于通信链路的一端的物理硬件实体。“I/O设备”是连接到主机CPU但是与主机CPU分开并分立的物理硬件实体。I/O 设备可以位于或者可以不位于与主机CPU相同的电路板上。I/O设备可以位于或者可以不位于与主机CPU相同的硬件管芯或封装上。"PCIe高速缓存代理”(PCA)是通过利用Rcoh协议的PCIe管理存储器的高速缓存的客户端子系统。"PCIe存储器代理”(PMA)是通过利用Rcoh协议的PCIe管理可高速缓冲存储器的导出的服务子系统。受限一致性(Rcoh)是支持在PCIe上的主机高速缓冲存储器的高速缓存的PCIe协议。如在这里所使用的那样,术语“包括”意味着包括但不限于,以及术语“包括”意味着包括但不限于。术语“基于”意味着至少部分地基于。II.总览在这里所描述的实施例在减少CP本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:M克劳泽
申请(专利权)人:惠普发展公司有限责任合伙企业
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术