芯片互联方法、系统、设备及可读存储介质与流程

文档序号:28919583发布日期:2022-02-16 12:36阅读:396来源:国知局
芯片互联方法、系统、设备及可读存储介质与流程

1.本技术涉及通信传输技术领域,具体涉及一种芯片互联方法、系统、设备及可读存储介质。


背景技术:

2.芯片之间的互联是通信传输技术必不可少的环节,一个芯片能够提供的互联接口能力,往往成为左右通信系统设计的关键因素,因此互联接口能力也是衡量芯片能力的关键技术指标。在复杂片上系统(system-on-chip,soc)芯片设计时需要提前规划其互联接口能力,以支持多种多样不同场景的应用。
3.目前现有的芯片互联的方法,主要包括以下方式:1.pcie rc直接与ep相连;2.两个pcie rc之间,通过ntb或具有ntb功能的pcie switch相连;3.通过gigabit ethernet相连。
4.然而,在构思及实现本技术过程中,发明人发现现有的芯片互联方法至少存在如下问题:pcie设备rc可以与ep或者 switch相连,但会中断单向传递;而且两个rc之间无法直接相连,对于两个soc芯片相连存在限制。如果两个soc系统通过ntb或者具有ntb功能的pcie switch连接,则需要桥接芯片,增加成本,导致增加线路及转换延时的问题。而车内通过gigabit ethernet相连,协议本身用于远距离通讯,延时较高;同时由于协议采用七层结构,导致协议开销比较大。
5.前面的叙述在于提供一般的背景信息,并不一定构成现有技术。


技术实现要素:

6.针对上述技术问题,本技术提供一种芯片互联方法、系统、设备及可读存储介质,能够实现芯片之间的高速互联,提高芯片互联的效率。
7.为解决上述技术问题,本技术提供一种芯片互联方法,执行于发送端芯片,包括如下步骤:对所述发送端芯片中pcie控制器的寄存器进行配置,得到第一寄存器配置信息;获取根据所述第一寄存器配置信息对接收端芯片中pcie控制器的寄存器进行配置后得到的第二寄存器配置信息;根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的连接;获取与所述接收端芯片之间的连接状态信息;当检测所述连接状态信息满足预设数据传输状态时,进行与所述接收端芯片之间的数据传输。
8.可选地,在所述进行与所述接收端芯片之间的数据传输之后,所述方法还包括:当所述数据传输完成时,发送事务层数据包至所述接收端芯片;在所述事务层数据包通过所述接收端芯片的事务识别后,中断和所述接收端芯片
之间的数据传输。
9.可选地,所述对所述发送端芯片中pcie控制器的寄存器进行配置,包括:通过soc内部总线设置rc元件的pcie配置空间存储器;对所述发送端芯片的msi配置寄存器进行配置;对所述发送端芯片的功能寄存器进行配置;对所述发送端芯片的中断级别掩码寄存器进行配置;对与所述接收端芯片之间的pcie链路进行训练。
10.可选地,所述根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的连接,包括:根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的地址映射,得到地址映射信息集合;根据所述地址映射信息集合与所述接收端芯片进行连接。
11.可选地,所述根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的地址映射,包括:在所述发送端芯片中设置所述发送端芯片的存储器地址空间至所述发送端芯片中的rc元件的pcie总线地址空间;在所述发送端芯片中设置所述发送端芯片中rc元件的pcie总线地址空间至所述接收端芯片中rc元件的pcie总线地址空间;在所述发送端芯片中设置所述接收端芯片中rc元件的pcie总线地址空间至所述接收端芯片中的存储器地址空间。
12.本技术还提供了一种芯片互联方法,执行于接收端芯片,包括如下步骤:获取发送端芯片的第一寄存器配置信息;根据所述第一寄存器配置信息对所述接收端芯片中pcie控制器的寄存器进行配置,得到第二寄存器配置信息;根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的连接;获取与所述发送端芯片之间的连接状态信息;当检测所述连接状态信息满足预设数据传输状态时,进行与所述发送端芯片之间的数据传输。
13.可选地,在所述进行与所述发送端芯片之间的数据传输之后,所述方法还包括:当所述数据传输完成时,接收所述发送端芯片发送的事务层数据包;对所述事务层数据包进行事务识别,在通过所述事务识别后,中断与所述发送端芯片之间的数据传输。
14.可选地,所述根据所述第一寄存器配置信息对所述接收端芯片中pcie控制器的寄存器进行配置,包括:通过soc内部总线设置rc元件的pcie配置空间存储器;对所述接收端芯片的msi配置寄存器进行配置;对所述接收端芯片的功能寄存器进行配置;对所述接收端芯片的中断级别掩码寄存器进行配置;
对与所述发送端芯片之间的pcie链路进行训练。
15.可选地,所述根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的连接,包括:根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的地址映射,得到地址映射信息集合;根据所述地址映射信息集合与所述发送端芯片进行连接。
16.可选地,所述根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的地址映射,包括:在所述接收端芯片中设置所述接收端芯片的存储器地址空间至所述接收端芯片中rc元件的pcie总线地址空间;在所述接收端芯片中设置所述接收端芯片中rc元件的pcie总线地址空间至所述发送端芯片中rc元件的pcie总线地址空间;在所述接收端芯片中设置所述发送端芯片中rc元件的pcie总线地址空间至所述发送端芯片中的存储器地址空间。
17.本技术还提供了一种发送端芯片,包括:第一配置模块,用于对所述发送端芯片中pcie控制器的寄存器进行配置,得到第一寄存器配置信息;第一获取模块,用于获取根据所述第一寄存器配置信息对接收端芯片中pcie控制器的寄存器进行配置后得到的第二寄存器配置信息;第一连接模块,用于根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的连接;第二获取模块,用于获取与所述接收端芯片之间的连接状态信息;第一传输模块,用于当检测所述连接状态信息满足预设数据传输状态时,进行与所述接收端芯片之间的数据传输。
18.本技术还提供了一种接收端芯片,包括:第三获取模块,用于获取发送端芯片的第一寄存器配置信息;第二配置模块,用于根据所述第一寄存器配置信息对所述接收端芯片中pcie控制器的寄存器进行配置,得到第二寄存器配置信息;第二连接模块,用于根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的连接;第四获取模块,用于获取与所述发送端芯片之间的连接状态信息;第二传输模块,用于当检测所述连接状态信息满足预设数据传输状态时,进行与所述发送端芯片之间的数据传输。
19.本技术还提供了一种芯片互联系统,包括发送端芯片和接收端芯片,所述发送端芯片根据第一寄存器配置信息对接收端芯片进行pcie控制器的寄存器的配置,根据配置得到的第二寄存器配置信息与第一寄存器配置信息进行与接收端芯片的连接,在检测与接收端芯片之间的连接状态信息满足预设数据传输状态时进行与接收端芯片之间的连接;所述接收端芯片根据获取发送端芯片的第一寄存器配置信息进行pcie控制器的寄存器的配置,根据配置得到的第二寄存器配置信息与第一寄存器配置信息进行与发送端芯片的连接,在
检测与发送端芯片之间的连接状态信息满足预设数据传输状态时进行与发送端芯片之间的连接。
20.本技术还提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的芯片互联方法的步骤。
21.本技术还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的芯片互联方法的步骤。
22.实施本技术实施例,具有如下有益效果:如上所述,本技术提供的一种芯片互联方法、系统、设备及可读存储介质,所述方法包括:首先对发送端芯片中pcie控制器的寄存器进行配置,得到第一寄存器配置信息;然后获取根据所述第一寄存器配置信息对接收端芯片中pcie控制器的寄存器进行配置后得到的第二寄存器配置信息;接着根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的连接;其次,获取与所述接收端芯片之间的连接状态信息;最后当检测所述连接状态信息满足预设数据传输状态时,进行与所述接收端芯片之间的数据传输。通过上述技术方案,通过对芯片之间的寄存器进行配置和地址映射,从而根据获取芯片之间的连接状态信息进行数据传输,实现两个soc芯片之间的高速互联,提高芯片互联的效率的同时,解决传统pcie设备互联会中断单向传递,以及两个rc之间无法直接相连导致两个soc芯片相连存在限制的问题,同时克服两个soc芯片之间互联需要构建全新的软件架构且导致兼容性低的缺陷,降低芯片互联的成本和资源。
附图说明
23.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。为了更清楚地说明本技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
24.图1是本技术实施例提供的执行于发送端芯片的芯片互联方法的流程示意图;图2是本技术实施例提供的pcie rc设备互联的结构示意图;图3是本技术实施例提供的执行于发送端芯片的芯片互联方法的一种实施方式的流程示意图;图4是本技术实施例提供的执行于接收端芯片的芯片互联方法的流程示意图;图5是本技术实施例提供的执行于接收端芯片的芯片互联方法的一种实施方式的流程示意图;图6是本技术实施例提供的发送端芯片的结构示意图;图7是本技术实施例提供的接收端芯片的结构示意图;图8是本技术实施例提供的芯片互联系统的结构示意图;图9是本技术实施例提供的计算机设备的结构示意框图。
25.本技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
26.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
27.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,此外,本技术不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
28.应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本文范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。本技术使用的术语“或”、“和/或”、“包括以下至少一个”等可被解释为包括性的,或意味着任一个或任何组合。例如,“包括以下至少一个:a、b、c”意味着“以下任一个:a;b;c;a和b;a和c;b和c;a和b和c”,再如,“a、b或c”或者“a、b和/或c”意味着“以下任一个:a;b;c;a和b;a和c;b和c;a和b和c”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
29.应该理解的是,虽然本技术实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
30.取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
31.需要说明的是,在本文中,采用了诸如s10、s20等步骤代号,其目的是为了更清楚简要地表述相应内容,不构成顺序上的实质性限制,本领域技术人员在具体实施时,可能会先执行s20后执行s10等,但这些均应在本技术的保护范围之内。
32.应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
33.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或者“单元”的后缀仅
为了有利于本技术的说明,其本身没有特定的意义。因此,“模块”、“部件”或者“单元”可以混合地使用。
34.为了更好地理解本技术实施例,以下为本技术所涉及的相关技术的缩略词和关键术语定义。
35.pcie:peripheral component interconnect express,一种高速串行计算机扩展总线标准;rc:root complex,pcie 协议中一种组成元件;ep: endpoint,pcie 协议中一种组成元件;sw:switch,pcie 协议中一种组成元件;pcie controller:pcie 控制器,负责pcie 协议中transaction layer, data link layer和部分physical layer的逻辑功能;prefetchable memory,可预取存储;non-prefetchable memory,不可预取存储;soc:system on a chip,片上系统;ntb:non-transparent bridge,非透明桥;gigabit ethernet:千兆以太网;dma:direct memory access,直接内存访问。
36.首先介绍本技术可以提供的应用场景,如提供一种芯片互联方法、系统、设备及可读存储介质,能够实现两个soc芯片之间的高速互联,提高芯片互联的效率,降低芯片互联所需的资源和成本。
37.请参阅图1,图1是本技术实施例提供的执行于发送端芯片的芯片互联方法的流程示意图。该芯片互联方法具体可以包括:s11.对所述发送端芯片中pcie控制器的寄存器进行配置,得到第一寄存器配置信息。
38.可选地,在一些实施例中,所述s11步骤,具体可以包括:s111.通过soc内部总线设置rc元件的pcie配置空间存储器;s112.对所述发送端芯片的msi配置寄存器进行配置;s113.对所述发送端芯片的功能寄存器进行配置;s114.对所述发送端芯片的中断级别掩码寄存器进行配置;s115.对与所述接收端芯片之间的pcie链路进行训练。
39.具体的,本实施例主要解决两个pcle rc设备无法直接互联的问题,因此在s11步骤之前,还包括基于pcie接口对两个需要连接的soc芯片进行连接,包括对两个soc芯片的rc进行连接。如图2所示,图2中的soc_l为发送端芯片,soc_r为接收端端芯片,通过基板或者pcie线缆进行两个pcle rc设备的直接互联,从而完成发送端芯片和接收端芯片之间的物理层面的连接。在芯片上电稳定后,首先通过soc内部总线设置rc的pcie的配置空间寄存器,其中所述配置空间寄存器包括memory base register和memory limit register,用于作为存储空间的寄存器。另外,如果设备支持预读,则需要配置 prefetchable memory base、prefetchable memory limit registers、prefetchable base upper 32 bits和prefetchable limit upper 32 bits registers。接着,通过分别配置发送端芯片和接收
端芯片的msi相关寄存器;然后,分别配置发送端芯片和接收端芯片的功能寄存器command register(offset 04h),同时使能bus master enable和 memory space enable位;其次,分别配置发送端芯片和接收端芯片的mask寄存器,并屏蔽ec发送message tlp导致的异常;最后使能link training,对发送端芯片和接收端芯片之间的pcie链路进行训练。
40.s12.获取根据所述第一寄存器配置信息对接收端芯片中pcie控制器的寄存器进行配置后得到的第二寄存器配置信息。
41.具体的,对于s12步骤,在发送端芯片获得第一寄存器配置信息之后,将该第一寄存器配置信息发送至接收端芯片,以使接收端芯片根据第一寄存器配置信息对自身的pcie控制器的寄存器进行配置,生成得到第二寄存器配置信息后,发送端芯片获取该第二寄存器配置信息。
42.s13.根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的连接。
43.可选地,在一些实施例中,所述s13步骤,具体可以包括:s131.根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的地址映射,得到地址映射信息集合;s132.根据所述地址映射信息集合与所述接收端芯片进行连接。
44.可选地,在一些实施例中,所述s131步骤,具体可以包括:s1311.在所述发送端芯片中设置所述发送端芯片的存储器地址空间至所述发送端芯片中的rc元件的pcie总线地址空间;s1312.在所述发送端芯片中设置所述发送端芯片中rc元件的pcie总线地址空间至所述接收端芯片中rc元件的pcie总线地址空间;s1313.在所述发送端芯片中设置所述接收端芯片中rc元件的pcie总线地址空间至所述接收端芯片中的存储器地址空间。
45.具体的,对于s13步骤,发送端芯片根据获取的第一寄存器配置信息和第二寄存器配置信息进行与接收端芯片的连接。以1g空间大小为例,在发送端芯片的存储器域地址空间中,将0x4000_0000-0x7fff_ffff地址空间用于映射接收端芯片相应的地址空间,包括从发送端芯片存储器域地址空间到发送端芯片中rc的pcie总线地址空间,从发送端芯片中rc的pcie总线地址空间到接收端芯片的pcie总线地址空间,和接收端芯片中rc的pcie总线地址空间到接收端芯片存储器域地址空间的映射。其中,两个pcie总线地址空间采用直接映射,具体为:发送端芯片存储域地址空间-》发送端芯片 pcie总线地址空间,接收端芯片存储域地址空间-》接收端芯片pcie总线地址空间,上述设置均可以根据用户需求,通过rc中的controller atu进行调整。
46.s14.获取与所述接收端芯片之间的连接状态信息。
47.具体的,对于s14步骤,通过发送端芯片获取与接收端芯片之间的连接状态信息,主要是在完成两个芯片的pcie控制器的寄存器配置和地址映射后,分别获取发送端芯片和接收端芯片的link状态,从而提取对应的连接状态信息,以用于判断当前发送端芯片和接收端芯片之间的实时连接状态。
48.s15.当检测所述连接状态信息满足预设数据传输状态时,进行与所述接收端芯片之间的数据传输。
49.具体的,对于s15步骤,当检测到发送端芯片和接收端芯片之间的连接状态信息满足预设的数据传输状态时,开始进行两个soc芯片之间的数据传输或数据交互。若检测到发送端芯片和接收端芯片之间的连接状态信息不满足预设的数据传输状态时,则继续进行实时检测,直至满足预设数据传输状态才开始进行两个目标芯片之间的数据传输。
50.可选地,所述预设数据传输状态,具体为所述发送端芯片和接收端芯片的状态机均进入预设传输状态,当发送端芯片和接收端芯片双方的状态机ltssm均进入l0状态后,即可开始进行发送端芯片和接收端芯片的数据传输或数据交互。
51.可选地,在一些实施例中,所述s15步骤,具体还可以包括:当所述数据传输的数据包的容量超过预设值时,采用第一使能串口进行数据传输。
52.具体的,在每次进行数据传输之前,都对本次数据传输的数据包进行数据量检测,当检测到本次数据传输的数据包容量超过预设值时,即判定为大数据传输量传输时,通过使能dma方式进行本次数据传输,从而进一步提高芯片的高速互联,提高芯片数据传输的效率。
53.可选地,在一些实施例中,如图3所示,在s15步骤之后,所述方法具体还可以包括:s16.当所述数据传输完成时,发送事务层数据包至所述接收端芯片;s17.在所述事务层数据包通过所述接收端芯片的事务识别后,中断和所述接收端芯片之间的数据传输。
54.具体的,对于s15步骤,当完成本次数据传输后时,通过发送端芯片发送符合msi要求的事务层数据包memory write tlp至接收端芯片,通知接收端芯片本次传输已经完成;接收端芯片对接收的事务层数据包进行第一识别,当通过第一识别后,接收端芯片转换为中断状态,并上传中断信息至soc系统,完成本次数据传输;通过对数据传输进行状态监控,当完成数据传输立即中断芯片互联,减少芯片互联所占用的资源。
55.在现有技术中,对于pcie设备的连接,主要通过pcie rc直接与ep相连,或是两个soc系统通过ntb或具有ntb功能的pcie switch相连;但前者会中断单向传递,且两个rc之间无法直接相连,对于两个soc芯片相连存在限制,pcie 树状拓扑结构无法对等操作;而后者则需要桥接芯片,增加成本,导致增加线路及转换延时的问题。虽然还能够通过gigabit ethernet相连,但该协议本身用于远距离通讯,延时较高,同时由于协议采用七层结构,导致协议开销比较大。
56.由上可知,本实施例为了解决上述技术问题,提出一种芯片互联方法,执行于发送端芯片,包括:首先对发送端芯片中pcie控制器的寄存器进行配置,得到第一寄存器配置信息;然后获取根据所述第一寄存器配置信息对接收端芯片中pcie控制器的寄存器进行配置后得到的第二寄存器配置信息;接着根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的连接;其次,获取与所述接收端芯片之间的连接状态信息;最后当检测所述连接状态信息满足预设数据传输状态时,进行与所述接收端芯片之间的数据传输。可见,本技术实施例的芯片互联方法,通过对芯片之间的寄存器进行配置和地址映射,从而根据获取芯片之间的连接状态信息进行数据传输,实现两个soc芯片之间的高速互联,提高芯片互联的效率的同时,解决传统pcie设备互联会中断单向传递,以及两个rc之间无法直接相连导致两个soc芯片相连存在限制的问题,突破了pcie传统连接方式中对非对称
操作的限制,可以实现对称性操作,实现了standard msi中断的双向传输;同时克服两个soc芯片之间互联需要构建全新的软件架构且导致兼容性低的缺陷,相比于ethernet方式的连接,只需要更少的协议开销即可得到更高的带宽利用率,降低芯片互联的成本和资源。
57.相应地,如图4所示,本技术实施例还提供了一种芯片互联方法,执行于接收端芯片,包括如下步骤:s21.获取发送端芯片的第一寄存器配置信息。
58.s22.根据所述第一寄存器配置信息对所述接收端芯片中pcie控制器的寄存器进行配置,得到第二寄存器配置信息。
59.可选地,在一些实施例中,所述s22步骤,具体可以包括:s221.通过soc内部总线设置rc元件的pcie配置空间存储器;s222.对所述接收端芯片的msi配置寄存器进行配置;s223.对所述接收端芯片的功能寄存器进行配置;s224.对所述接收端芯片的中断级别掩码寄存器进行配置;s225.对与所述发送端芯片之间的pcie链路进行训练。
60.s23.根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的连接。
61.可选地,在一些实施例中,所述步骤s23,具体可以包括:s231.根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的地址映射,得到地址映射信息集合;s232.根据所述地址映射信息集合与所述发送端芯片进行连接。
62.可选地,在一些实施例中,所述步骤s231,具体可以包括:s2311.在所述接收端芯片中设置所述接收端芯片的存储器地址空间至所述接收端芯片中rc元件的pcie总线地址空间;s2312.在所述接收端芯片中设置所述接收端芯片中rc元件的pcie总线地址空间至所述发送端芯片中rc元件的pcie总线地址空间;s2313.在所述接收端芯片中设置所述发送端芯片中rc元件的pcie总线地址空间至所述发送端芯片中的存储器地址空间。
63.s24.获取与所述发送端芯片之间的连接状态信息。
64.s25.当检测所述连接状态信息满足预设数据传输状态时,进行与所述发送端芯片之间的数据传输。
65.可选地,在一些实施例中,如图5所示,在所述s25步骤之后,所述方法具体还可以包括:s26.当所述数据传输完成时,接收所述发送端芯片发送的事务层数据包;s27.对所述事务层数据包进行事务识别,在通过所述事务识别后,中断与所述发送端芯片之间的数据传输。
66.本技术实施例提供的一种芯片互联方法,执行于接收端端芯片,包括:获取发送端芯片的第一寄存器配置信息;根据所述第一寄存器配置信息对所述接收端芯片中pcie控制器的寄存器进行配置,得到第二寄存器配置信息;根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的连接;获取与所述发送端芯片之间的连接状态信
息;当检测所述连接状态信息满足预设数据传输状态时,进行与所述发送端芯片之间的数据传输。可见,本技术实施例的芯片互联方法,通过对芯片之间的寄存器进行配置和地址映射,从而根据获取芯片之间的连接状态信息进行数据传输,实现两个soc芯片之间的高速互联,提高芯片互联的效率的同时,解决传统pcie设备互联会中断单向传递,以及两个rc之间无法直接相连导致两个soc芯片相连存在限制的问题,突破了pcie传统连接方式中对非对称操作的限制,可以实现对称性操作,实现了standard msi中断的双向传输;同时克服两个soc芯片之间互联需要构建全新的软件架构且导致兼容性低的缺陷,相比于ethernet方式的连接,只需要更少的协议开销即可得到更高的带宽利用率,降低芯片互联的成本和资源。
67.如图6所示,本技术实施例还提供了一种发送端芯片,包括:第一配置模块101,用于对所述发送端芯片中pcie控制器的寄存器进行配置,得到第一寄存器配置信息;第一获取模块102,用于获取根据所述第一寄存器配置信息对接收端芯片中pcie控制器的寄存器进行配置后得到的第二寄存器配置信息;第一连接模块103,用于根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述接收端芯片的连接;第二获取模块104,用于获取与所述接收端芯片之间的连接状态信息;第一传输模块105,用于当检测所述连接状态信息满足预设数据传输状态时,进行与所述接收端芯片之间的数据传输。
68.相应地,如图7所示,本技术实施例还提供了一种接收端芯片,包括:第三获取模块201,用于获取发送端芯片的第一寄存器配置信息;第二配置模块202,用于根据所述第一寄存器配置信息对所述接收端芯片中pcie控制器的寄存器进行配置,得到第二寄存器配置信息;第二连接模块203,用于根据所述第一寄存器配置信息与第二寄存器配置信息进行与所述发送端芯片的连接;第四获取模块204,用于获取与所述发送端芯片之间的连接状态信息;第二传输模块205,用于当检测所述连接状态信息满足预设数据传输状态时,进行与所述发送端芯片之间的数据传输。
69.如图8所示,本技术实施例还提供了一种芯片互联系统,包括发送端芯片和接收端芯片,所述发送端芯片根据第一寄存器配置信息对接收端芯片进行pcie控制器的寄存器的配置,根据配置得到的第二寄存器配置信息与第一寄存器配置信息进行与接收端芯片的连接,在检测与接收端芯片之间的连接状态信息满足预设数据传输状态时进行与接收端芯片之间的连接;所述接收端芯片根据获取发送端芯片的第一寄存器配置信息进行pcie控制器的寄存器的配置,根据配置得到的第二寄存器配置信息与第一寄存器配置信息进行与发送端芯片的连接,在检测与发送端芯片之间的连接状态信息满足预设数据传输状态时进行与发送端芯片之间的连接。
70.综上所述,本技术实施例提供的芯片互联系统,首先对发送端芯片中pcie控制器的寄存器进行配置,得到第一寄存器配置信息,通过发送端芯片根据第一寄存器配置信息对接收端芯片进行pcie控制器的寄存器的配置,根据配置得到的第二寄存器配置信息与第一寄存器配置信息进行与接收端芯片的连接,获取与所述接收端芯片之间的连接状态信
息,在检测与接收端芯片之间的连接状态信息满足预设数据传输状态时,通过发送端芯片进行与接收端芯片之间的连接;所述接收端芯片根据获取发送端芯片的第一寄存器配置信息进行pcie控制器的寄存器的配置,根据配置得到的第二寄存器配置信息与第一寄存器配置信息进行与发送端芯片的连接,获取与所述发送端芯片之间的连接状态信息,在检测与发送端芯片之间的连接状态信息满足预设数据传输状态时进行与发送端芯片之间的连接。
71.可见,本技术实施例的芯片互联系统,通过对芯片之间的寄存器进行配置和地址映射,从而根据获取芯片之间的连接状态信息进行数据传输,实现两个soc芯片之间的高速互联,提高芯片互联的效率的同时,解决传统pcie设备互联会中断单向传递,以及两个rc之间无法直接相连导致两个soc芯片相连存在限制的问题,突破了pcie传统连接方式中对非对称操作的限制,可以实现对称性操作,实现了standard msi中断的双向传输;同时克服两个soc芯片之间互联需要构建全新的软件架构且导致兼容性低的缺陷,相比于ethernet方式的连接,只需要更少的协议开销即可得到更高的带宽利用率,降低芯片互联的成本和资源。
72.参照图9,本技术实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于储存芯片互联方法等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现上述的一种芯片互联方法。
73.本技术一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的一种芯片互联方法。
74.上述执行的芯片互联方法,本技术实施例通过对芯片之间的寄存器进行配置和地址映射,从而根据获取芯片之间的连接状态信息进行数据传输,实现两个soc芯片之间的高速互联,提高芯片互联的效率的同时,解决传统pcie设备互联会中断单向传递,以及两个rc之间无法直接相连导致两个soc芯片相连存在限制的问题,突破了pcie传统连接方式中对非对称操作的限制,可以实现对称性操作,实现了standard msi中断的双向传输;同时克服两个soc芯片之间互联需要构建全新的软件架构且导致兼容性低的缺陷,相比于ethernet方式的连接,只需要更少的协议开销即可得到更高的带宽利用率,降低芯片互联的成本和资源。
75.可以理解,上述场景仅是作为示例,并不构成对于本技术实施例提供的技术方案的应用场景的限定,本技术的技术方案还可应用于其他场景。例如,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
76.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
77.本技术实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
78.本技术实施例设备中的单元可以根据实际需要进行合并、划分和删减。
79.在本技术中,对于相同或相似的术语概念、技术方案和/或应用场景描述,一般只
在第一次出现时进行详细描述,后面再重复出现时,为了简洁,一般未再重复阐述,在理解本技术技术方案等内容时,对于在后未详细描述的相同或相似的术语概念、技术方案和/或应用场景描述等,可以参考其之前的相关详细描述。
80.在本技术中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
81.本技术技术方案的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本技术记载的范围。
82.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本技术每个实施例的方法。
83.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络,或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、存储盘、磁带)、光介质(例如,dvd),或者半导体介质(例如固态存储盘solid state disk (ssd))等。
84.以上仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1