当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于主机适应可配置集成电路管芯的角色变化的方法和装置制造方法及图纸

技术编号:24799301 阅读:17 留言:0更新日期:2020-07-07 21:00
一种方法包括在FPGA的管理组件处接收角色改变请求并且由管理组件向FPGA的可重新配置的PR插槽发出请求以将FPGA的第一电路设备的第一角色改变为FPGA的第二电路设备的第二角色。管理组件、可重新配置的PR插槽以及第一和第二电路设备配置在FPGA核中。该方法包括通过可重新配置的PR插槽将第一角色切换到第二角色。该方法包括由管理组件发出请求、主机重新枚举可重新配置的PR插槽、由主机触发重新枚举组件重新枚举可重新配置的PR插槽,以及通过可重新配置的PR插槽暴露第二角色,使得主机被重新配置为识别第二电路设备。

【技术实现步骤摘要】
用于主机适应可配置集成电路管芯的角色变化的方法和装置
本公开涉及一种集成电路管芯,其容纳在多芯片封装中或安装在接口卡上并且可连接到接口总线。更具体地,本公开涉及可配置的集成电路管芯,其可以向外围组件互连快速总线呈现多个设备角色,其中,总线适应设备角色的变化。
技术介绍
可配置集成电路管芯可以被配置为实现多个不同的设备,其中,每个设备具有不同的设备角色。在不同时间,可配置集成电路管芯可以向连接的总线呈现不同设备的不同设备角色。不可动态地重新配置为与不同设备通信的连接的总线可能限制可配置集成电路管芯可以被配置为在连接的总线上实现的设备类型。需要新的可配置集成电路管芯和总线结构,其允许动态地重新配置总线结构以与可配置集成电路管芯可以向总线呈现的变化的设备进行通信。附图说明图1示出了在实施例中包括可配置IC管芯(例如,FPGA)的主机。图2示出了在另一实施例中包括可配置IC管芯(例如,FPGA)的主机。图3示出了在另一实施例中包括可配置IC管芯(例如,FPGA)的主机。图4示出了在另一实施例中包括可配置IC管芯(例如,FPGA)的主机。图5示出了实施例中的可配置IC管芯(例如,FPGA)。图6是在没有主机重启的情况下改变可配置IC管芯的角色并改变主机设置以识别角色改变的操作方法的流程图。图7示出了在实施例中包括可配置IC管芯(例如,FPGA)的主机。图8是在实施例中在主机中为可配置IC管芯的电路设备预留存储器的操作方法的流程图,其中,电路设备具有大于可配置IC管芯(例如,FPGA)的其他电路设备的存储器要求。图9是在另一实施例中在主机存储器中为可配置IC管芯(例如,FPGA)的虚设电路设备预留存储器的操作方法的流程图。图10是在另一实施例中在可配置IC管芯(例如,FPGA)的主机存储器中预留存储器的操作方法的流程图。图11示出了在实施例中的主机操作系统的元素以及从主机操作系统的元素到可配置IC管芯的元素的通信链路。图12示出了在另一实施例中的主机操作系统的元素以及将主机操作系统的元素链接到可配置IC管芯的元素的通信链路。图13示出了在另一实施例中的主机操作系统的元素以及将主机操作系统的元素链接到可配置IC管芯的元素的通信链路。图14示出了在另一实施例中的主机操作系统的元素以及将主机操作系统的元素链接到可配置IC管芯的元素的通信链路。图15示出了实施例中的数据系统。图16示出了另一实施例中的数据系统。图17是在实施例中可配置IC管芯的操作方法的流程图。图18是在实施例中对系统进行操作的方法的流程图。具体实施方式通常被封装为系统级封装(SiP)设备的可配置集成电路(IC)管芯继续推动IC市场的发展。电路仿真市场、ASIC原型制造市场和数据中心市场是可配置IC管芯推动的一些正在发展的IC市场。针对电路仿真市场的可配置IC管芯通常包括许多被封装为SiP的可配置IC管芯,以促进几乎无限数量的仿真电路,其中,单个可配置IC管芯可能无法提供足够的可编程结构来实现电路仿真。针对ASIC原型制造市场的可配置IC管芯通常包括许多被封装为SiP的可配置IC管芯,以实现各种ASIC。针对数据中心市场的可配置IC管芯通常包括许多被封装为SiP的可配置的IC,以促进数据中心的加速,增加处理能力,添加网络和虚拟网络能力,添加非易失性存储器快速能力,或者其他能力。这些SiP设备中包括的可配置IC管芯可以包括现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、复杂可编程逻辑设备(CPLD)、可编程逻辑阵列(PLA)、可配置逻辑阵列(CLA)、存储器、传输管芯和其他IC。可配置IC管芯通常包括多个可配置逻辑块,其可以被配置为实现各种电路。逻辑块通过可配置的互连结构进行互连,所述可配置的互连结构可以被配置为以几乎任何期望的配置互连逻辑块以提供几乎任何期望的电路。可配置IC管芯可以被配置为实现多个电路,其中,两个或更多个电路具有不同的设备个性(personality)。例如,FPGA设备的可编程结构可以配置有许多具有不同设备个性的电路。电路可以独立操作,并且FPGA可以动态地将在FPGA上操作的电路从在FPGA上操作的第一电路改变为在FPGA上操作的第二电路。从在FPGA上操作的第一电路到在FPGA上操作的第二电路的转换可以在FPGA的软件控制下发生。例如,FPGA可以被配置为用作非易失性存储器快速(NVMe)控制器、网络接口卡(NIC)、数据压缩电路、数据解压缩电路、数据加密电路、数据解密电路、非易失性存储器主机控制器接口(NVMHCIS)或其他电路。每个电路的每个设备角色(persona)可以包括识别设备角色的一个或多个设备角色信息。设备角色信息可以包括供应商标识符、设备标识符、修订标识符、编程接口标识符、类代码标识符、基类代码、子系统供应商标识符、子系统子类代码、诸如SR-IOv之类的特定PCIe能力的标识符、地址转换服务(ATS)、进程地址空间ID(PASID)、页面请求接口(PRI)、其他标识符或这些标识符的任意组合的信息。设备角色可以被存储在FPGA中。对设备角色信息的改变可以包括添加、移除或修改信息,例如添加、移除或修改特定PCIe能力,所述特定PCIe能力例如SR-IOv、ATS、PASID、PRI或其他标识符。图1示出了在实施例中包括可配置IC管芯40(例如,FPGA)的主机5。主机5可以包括一个或多个处理器10、存储器15、存储器20、网络接口控制器(NIC)25、总线系统30(例如,PCIe总线)、PCIe卡插槽以及支持PCIe总线的PCIe电路以及其他组件。一个或多个处理器可以包括中央处理单元(CPU)、微处理器、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、视觉处理单元(VPU)、图像阵列处理器(SIMD)、神经网络处理器、人工智能处理器、加密加速器(仅举几例)。存储器15可以存储主机操作系统16、其他主机系统软件或二者。存储器15和20可以包括一种或多种类型的存储器,例如RAM、闪存、磁盘存储器(例如,磁存储器、光存储器或其他)、其他类型的存储器,或者这些存储器类型的任意组合。主机5可以是聚合的服务器或解聚的服务器。聚合的服务器可以在单个外壳中、在机架的单个托架(sled)上、在单个插入卡(例如,单个PCIe卡)上、在单个主板上、或其他聚合的配置。解聚的服务器可以包括分布式组件,例如分布在外壳中的一个或多个电路板上、机架中的一个或多个托架上、不同机架中的一个或多个托架上、不同插入卡上、不同数据中心中的组件,或者可以具有其他组件分布。因此,虽然图1概括地示出了主机5是聚合的设备,但是图1中主机的图示表示具体实施例。可配置IC管芯40可以安装在卡35上,例如PCIe卡。卡可以包括一个或多个其他组件,例如处理器45、存储器子系统50、输入-输出(IO)系统52、其他组件或这些组件的任意组合。卡本文档来自技高网...

【技术保护点】
1.一种半导体设备,包括:/n核心结构,其能够配置为包括:/n包括第一物理功能的可重新配置的部分重配置(PR)插槽;/n指派给所述可重新配置的PR插槽并具有第一设备角色的第一电路设备;/n指派给所述可重新配置的PR插槽并具有第二设备角色的第二电路设备,其中,所述第一电路设备和所述第二电路设备是不同的电路设备,并且所述第一设备角色和所述第二设备角色是不同的设备角色;以及/n硬件管理组件,其用于重新配置所述第一物理功能以暴露所述第二设备角色而非暴露所述第一设备角色,触发主机重新枚举组件以请求主机的主机操作系统重新枚举所述第一物理功能以发现所述第二角色并且用所述第二设备角色替换所述主机操作系统中的所述第一设备角色,禁用所述第一电路设备用所述主机操作系统操作,并且启用所述第二电路设备用所述主机操作系统操作。/n

【技术特征摘要】
20181225 US 16/232,0141.一种半导体设备,包括:
核心结构,其能够配置为包括:
包括第一物理功能的可重新配置的部分重配置(PR)插槽;
指派给所述可重新配置的PR插槽并具有第一设备角色的第一电路设备;
指派给所述可重新配置的PR插槽并具有第二设备角色的第二电路设备,其中,所述第一电路设备和所述第二电路设备是不同的电路设备,并且所述第一设备角色和所述第二设备角色是不同的设备角色;以及
硬件管理组件,其用于重新配置所述第一物理功能以暴露所述第二设备角色而非暴露所述第一设备角色,触发主机重新枚举组件以请求主机的主机操作系统重新枚举所述第一物理功能以发现所述第二角色并且用所述第二设备角色替换所述主机操作系统中的所述第一设备角色,禁用所述第一电路设备用所述主机操作系统操作,并且启用所述第二电路设备用所述主机操作系统操作。


2.如权利要求1所述的半导体设备,其中,所述硬件管理组件包括第二物理功能,其用于重新配置所述第一物理功能以暴露所述第二设备角色以用于所述重新枚举,而非暴露所述第一设备角色以用于所述重新枚举。


3.如权利要求2所述的半导体设备,包括外围设备,所述外围设备包括硬化的输入-输出块,其中,所述核心结构包括耦合在所述硬件管理组件和所述输入-输出块之间并且耦合在所述可重新配置的PR插槽和所述输入-输出块之间的硬PCIe端点块。


4.如权利要求1所述的半导体设备,其中,所述核心结构包括所述主机重新枚举组件,所述主机重新枚举组件是具有热插拔功能的软交换机。


5.如权利要求1所述的半导体设备,其中,主机操作系统包括所述主机重新枚举组件,所述主机重新枚举组件是所述主机操作系统的热插拔仿真组件。


6.如权利要求1所述的半导体设备,其中,所述主机重新枚举组件是具有热插拔功能的分立交换机。


7.如权利要求1所述的半导体设备,其中,所述硬件管理组件被配置为请求所述主机重新枚举组件触发从所述主机操作系统移除用于所述第一电路设备的第一驱动程序。


8.如权利要求1所述的半导体设备,其中,所述硬件管理组件被配置为请求所述主机重新枚举组件触发所述主机操作系统中的第二驱动程序的安装、加载或二者,并且所述第二驱动程序是用于所述第二电路设备的驱动程序。


9.如权利要求1所述的半导体设备,其中,所述核心结构能够配置为包括具有第三设备角色的第三电路设备,包括第二物理功能的第二可重新配置的PR插槽,并且所述第三电路设备被指派给所述第二可重新配置的PR插槽和所述第二物理功能。


10.一种方法,包括:
在可配置集成电路(IC)管芯的硬件管理组件处接收角色改变请求;
通过所述硬件管理组件向所述可配置IC管芯的可重新配置的部分重配置(PR)插槽发出请求,以将所述可配置IC管芯的第一电路设备的第一设备角色改变为所述可配置IC管芯的第二电路设备的第二设备角色,其中,所述硬件管理组件、所述可重新配置的PR插槽以及所述第一电路设备和所述第二电路设备被配置在所述可配置IC管芯的核心结构中;
通过所述可重新配置的PR插槽将所述第一设备角色切换到所述第二设备角色;
通过所述硬件管理组件向主机重新枚举组件发出重新枚举请求;
通过所述主机重新枚举组件接收所述重新枚举请求;
通过所述主机重新枚举组件触发所述可重新配置的PR插槽的主机重新枚举;以及
在所述主机重新枚举期间,通过所述可重新配置的PR插槽暴露用于所述第二电路设备的所述第二设备角色,使得耦合到所述可配置IC管芯的主机能够被重新配置为识别所述可配置IC管芯的所述第二电路设备。


11.如权利要求10所述的方法,还包括在所述主机重新枚举期间,不通过所述可重新配置的PR插槽暴露用于所述第一电路设备的所述第一设备角色,使得所述主...

【专利技术属性】
技术研发人员:J·D·芬德U·Y·卡凯亚
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1