用于与适配器进行通信的加载指令制造技术

技术编号:8275197 阅读:177 留言:0更新日期:2013-01-31 12:14
促进与计算环境的适配器的通信。提供明确地定向到适配器的指令。将指令中提供的信息用于将指令导向适配器内的适当位置。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术一般涉及计算环境的输入/输出处理,并且更具体而言,涉及促进与计算环境的适配器的通信。
技术介绍
计算环境可包括一个或多个类型的输入/输出设备,包括各种类型的适配器。一种类型的适配器是外围组件互连(PCI)或外围组件互连标准(PCIe)适配器。所述适配器包括在适配器和与适配器连接的系统之间传送数据时使用的一个或多个地址空间。可从万维网 www. pcisig. com/home 获得 PCI 规范。Avery 在 2004 年 3 月 9 日发布的题为 “Method and Apparatus forConvertingAddress Information Between PCI Bus Protocol and aMessage-Passing Queue-Oriented Bus Protocol”(用于在PCI总线协议和消息传递面向队列的总线协议之间转换地址信息的方法和装置)的第6,704,831号美国专利描述了 PCI加载/存储操作并且经由消息传递的、面向队列的总线架构中的工作队列对来实现DMA操作。将PCI地址空间分成段,并且然后将每个段分成区域。将单独的工作队列分配给每个段。PCI地址的第一部分匹配于由段所表示的地址范围并且用于选择存储器段和其相应的工作队列。工作队列中的项持有PCI地址的第二部分,其指定了被分配给特定PCI设备的所选段中的区域。在一个实施方式中,通过选择被分配给PIO操作的工作队列以及利用PCI设备上的寄存器和指向PIO数据的指针的PCI地址创建工作队列项,来实现PIO加载/存储操作。将工作队列项发送到PCI桥,其中提取PCI地址并且利用PCI地址通过使用数据指针的数据对适当的设备寄存器进行编程。还可以通过将PCI设备生成的PCI地址的一部分与地址范围表进行比较来选择工作队列并且选择为地址范围提供服务的工作队列,实现DMA传递。利用PCI地址的剩余物和指向DMA数据的指针来创建工作队列项。使用RDMA操作来执行DMA传递。结合主机信道适配器中的转换保护表来使用页和区域数据,以访问物理存储器且执行DMA传递。Kjos 等在 2009 年 11 月 3 日发布的题为“Partially Virtualizing an I/0Devicefor Use by Virtual Machines”(部分地虚拟化由虚拟机使用的1/0设备)描述了计算机系统,其包括在物理计算机上可执行的物理计算机和虚拟机监视器,并且其被配置为创建适于控制物理计算机的至少一个客户操作系统的仿真。计算机系统进一步包括可在物理计算机上执行的主机,所述物理计算机代表虚拟机监视器和至少一个客户操作系统来管理耦合到物理计算机的物理资源。主机适于对外围组件互连(PCI)配置地址空间进行虚拟化,由此至少一个客户操作系统直接地且在没有1/0仿真的情况下,控制PCI输入/输出(1/0)设备。在一些系统中,将耦合到适配器的中央处理单元(CPU)的地址空间的一部分映射到适配器的地址空间,使得访问存储器的CPU指令能够直接地操作适配器地址空间中的数据。
技术实现思路
根据本专利技术的方面,提供一种用于促进与适配器的通信的能力,所述适配器例如是PCI或PCIe适配器。提供专门地设计用于向和从适配器传送数据的控制指令,并且将其用于通信。克服了现有技术的缺点并且通过提供用于执行从适配器加载数据的加载指令的计算机程序产品来提供优点。计算机程序产品包括处理电路可读的计算机可读存储介质并且计算机可读存储介质存储由用于执行方法的处理电路所执行的指令。例如,所述方法包括,获得用于执行的机器指令,根据计算机架构定义用于计算机执行的机器指令,所述机器指令包括从适配器指令识别加载的操作码字段;识别第一位置的第一字段,其中将从所述第一位置加载从适配器取回的数据;识别第二位置的第二字段,所述第二字段的内容包括识别适配器的功能句柄、从中加载数据的适配器内地址空间的指定以及地址空间内的偏移量;以及执行所述机器指令,所述执行包括使用所述功能句柄来获得与所述适配器相关联的功能表项;使用功能表项中的信息和所述偏移量中的至少一个来获得所述适配器的 数据地址;以及从由地址空间的指定所识别的地址空间中的特定位置获取数据,其中由所述适配器的数据地址来识别特定位置。此处,还描述和要求保护与本专利技术的一个或多个方面相关的方法和系统。通过本专利技术的技术可以实现附加的特征和优点。此处详细地描述本专利技术的其他实施例和方面,并且将本专利技术的其他实施例和方面认作要求保护的专利技术的一部分。附图说明现在将仅通过实例的方式并参照附图来描述本专利技术的优选实施方式,其中图IA示出了包含并使用本专利技术的一个或多个方面的计算环境的一个实施例;图IB示出了位于图IA的I/O集线器中的且根据本专利技术的一方面来使用的设备表项的一个实施方式;图IC示出了包含并使用本专利技术的一个或多个方面的计算环境的另一实施例;图2示出了根据本专利技术的一方面的适配器功能的地址空间的一个例子;图2B示出了根据本专利技术的一方面的用于对功能表项进行定位的功能句柄的一个实施例;图3A示出了根据本专利技术的一方面使用的数据表项的一个例子;图3B示出了根据本专利技术的一方面使用的功能句柄的一个实施例;图4A示出了根据本专利技术的一方面使用的PCI加载执行的一个实施例;图4B示出了根据本专利技术的一方面的由图4A的PCI加载指令所使用的字段的一个实施例;图4C示出了根据本专利技术的一方面的由图4A的PCI加载指令使用的另一字段的一个实施例;图5A至5B示出了根据本专利技术的一方面的执行PCI加载操作的逻辑的一个实施例;图6A示出了根据本专利技术的一方面使用的PCI存储指令的一个实施例;图6B示出了根据本专利技术的一方面的由图6A的PCI存储指令所使用的字段的一个实施例;图6C示出了根据本专利技术的一方面的由图6A的PCI存储指令所使用的另一字段的一个实施例;图7A至7B示出了根据本专利技术的一方面的执行PCI存储操作的逻辑的一个实施例;图8A示出了根据本专利技术的一方面使用的PCI存储块的一个实施例;图SB示出了根据本专利技术的一方面的由图8A的PCI存储块指令所使用的字段的一个实施例;图SC示出了根据本专利技术的一方面的由图8A的PCI存储块指令所使用的另一字段的一个实施例; 图8D示出了根据本专利技术的一方面的由图8A的PCI存储块指令所使用的再一字段的一个实施例;图9A至9B示出了根据本专利技术一方面的执行PCI存储块操作的逻辑的一个实施例;图10示出了包括本专利技术的一个或多个方面的计算机程序产品的一个实施例;图11示出了包括和使用本专利技术的一个或多个方面的主机计算机系统的一个实施例;图12示出了包括和使用本专利技术的一个或多个方面的计算机系统的另一例子;图13示出了包括和使用本专利技术的一个或多个方面的计算机网络的计算机系统的另一例子;图14示出了包括和使用本专利技术一个或多个方面的计算机系统的各种元件的一个实施例;图15A示出了包括和使用本专利技术的一个或多个方面的图14的计算机系统的执行单元的一个实施例;图15B示出了包括和使用本专利技术的一个或多个方面的图14的计算机系统的分支单元的一个实施例;图15C描述了包括和使用本专利技术的一个或多个方面的图14的计算机系统的加载/存储单元的一个实施例;以及图16描述了包括和使本文档来自技高网
...

【技术保护点】

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

【专利技术属性】
技术研发人员:D·格雷纳D·克拉多克T·格雷格M·法雷尔
申请(专利权)人:国际商业机器公司
类型:
国别省市:

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

1