一种基于chi片内互联总线与qpi片间互联总线互联适配系统和方法_2

文档序号:8380914阅读:来源:国知局
I片内互联总线协议cache —致性数据,并将其转换为QPI片间互联总线协议cache —致性的数据,而后将转换后的QPI片间互联总线协议cache —致性的数据发送至对应的MAC控制器;或者,MAC控制器接收片间cache —致性数据,并将所接收的数据反向解析为CHI片内互联总线协议格式,并将CHI片内互联总线协议格式的数据发送至QPI agent模块;QPI agent模块在对CHI片内互联总线协议格式的数据进行片间cache —致性维护后,对目标CPU CORE发起访问命令;接收目标CPU CORE响应命令以及数据,QPIagent模块将片间cache —致性数据发送至目标芯片的链路层控制器,逆向返回数据及响应。上述方法和系统不仅提供了一种多核芯片进行交互的整体架构,可以实现多核芯片中的CPU CORE快速进行cache数据的交互,大大提升了数据传输处理的效率,因而在集成电路设计领域具有广阔的市场前景。
【附图说明】
[0049]图1为本发明一实施例所述的基于CHI片内互联总线与QPI片间互联总线互联适配系统的不意图;
[0050]图2为本发明一实施例所述的链路层控制器的示意图;
[0051]图3为本发明一实施例所述的输出管理模块的示意图;
[0052]图4为本发明一实施例所述的基于CHI片内互联总线与QPI片间互联总线互联适配方法的流程图;
[0053]图5为本发明另一实施例所述的基于CHI片内互联总线与QPI片间互联总线互联适配方法的流程图;
[0054]图6为本发明另一实施例所述的基于CHI片内互联总线与QPI片间互联总线互联适配方法的流程图;
[0055]图7为本发明另一实施例所述的基于CHI片内互联总线与QPI片间互联总线互联适配方法的流程图。
[0056]附图标记说明:
[0057]1、芯片;
[0058]2、CPU CORE;
[0059]3、QPI agent 模块;
[0060]4、CHI片内互联总线;
[0061]5、链路层控制器;
[0062]6、MAC 控制器;
[0063]7、高速 serdes;
[0064]8、MAC层训练同步模块;
[0065]9、通道管理模块;
[0066]10、调度控制模块;
[0067]11、缓存管理模块;
[0068]12、组包模块;
[0069]13、输出管理模块;131、拆分模块;132、拼接模块;
[0070]14、中断输出模块;
[0071]15、寄存器配置模块。
【具体实施方式】
[0072]为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
[0073]请参阅图1,为本发明一实施例所述的基于CHI片内互联总线与QPI片间互联总线互联适配系统的示意图;当所述系统包括的芯片为一个时,所述系统可以用于实现该芯片内多个CPU CORE之间的数据传输;而当所述系统包括的芯片为多个时,所述系统既可以用于实现同一芯片内多个CPU CORE之间的数据传输,也可以用于实现不同芯片的CPU CORE之间的数据传输。例如图1中包含有4个芯片,每个芯片中含有4个CPU CORE,则所述系统可以用于实现其中某一个芯片自身内部的CPU CORE之间的数据传输,也可以用于实现其中某一个芯片的CPU CORE与其他三个芯片中的CPU CORE之间的数据传输。在其他实施方式中,所述芯片包括的CPU CORE数量还可以为其他数值,如16个,32个等。
[0074]所述系统包括芯片I,CHI片内互联总线2和QPI片间互联总线;
[0075]所述芯片包括链路层控制器5,QPI agent模块3,MAC控制器6和多个CPU CORE2 ;所述QPI agent模块3用于在对CHI片内互联总线协议格式的数据进行片间cache —致性维护后,对目标CPU CORE发起访问命令;
[0076]所述CPU CORE与CHI片内互联总线2连接,所述CHI片内互联总线2与链路层控制器5连接,所述链路层控制器5与所述MAC控制器6连接;所述QPI agent模块3与CHI片内互联总线2连接。
[0077]在使用所述系统进行CPU CORE之间的数据传输时,CPU CORE发起CHI片内互联总线协议cache —致性操作命令和数据。所述操作命令为发起进行cache —致性维护的命令,所述数据为需要进行维护的cache —致性数据。若目标CPU CORE与发起cache —致性数据的CPU CORE在同一芯片内,则将CPU CORE发起的CHI片内互联总线协议cache —致性数据发送至目标CPU CORE。
[0078]若目标CPU CORE与发起cache—致性数据的CPU CORE不在同一芯片内,则QPIagent模块发起QPI片间互联总线协议cache —致性的访问请求。所述芯片还可以包括cache agent模块,芯片的某颗CPU CORE需要传输数据时,会同时向芯片内的cache agent模块与QPI agent模块同时发出索引请求,所述cache agent模块用于判断目标CPU CORE是否与发起传输数据请求的CPU CORE是否在同一芯片内,所述目标CPU CORE为满足接收cache—致性数据条件的CPU CORE。QPI agent模块在检测到另一芯片中存在着目标CPUCORE后,将CPU CORE发起的CHI片内互联总线协议cache —致性数据通过CHI片内互联总线传输至链路层控制器。若cache agent模块检测到发起CHI片内互联总线协议cache —致性操作命令和数据的CPU CORE的同一芯片内存着在目标CPU CORE,则可以通过片内CHI互联总线进行传递cache—致性数据。QPI agent模块可以对CPU CORE发起的CHI互联总线协议格式的cache —致性数据进行转换,内部维护QPI互联总线协议的cache —致性行为,如cacheline状态更新以及仲裁等操作,而后再将维护处理后的cache —致性数据转换为原有的CHI互联总线协议格式进行输出。而后就可以通过芯片的链路层控制器对cache一致性数据进行进一步传递处理。
[0079]链路层控制器接收CHI片内互联总线协议cache —致性数据,并将其转换为QPI片间互联总线协议cache —致性的数据。在本实施方式中,在芯片与芯片之间传输的cache一致性数据需要满足QPI片间互联总线协议的要求,而cache —致性数据在从CPU CORE发起时为CHI片内互联总线协议格式,因而需要进行对cache —致性数据格式进行转换,使之满足片间数据传递的要求。而后链路层控制器将转换后的QPI片间互联总线协议cache —致性的数据发送至对应的MAC控制器。每个芯片内包含有与其对应的MAC控制器,所述MAC控制器由pcie pcs构成,MAC控制器与MAC控制器之间通过高速serdes连接,从而实现芯片与芯片之间数据的传输。使用高速serdes进行连接,不仅使芯片可以快速捕捉到数据传输时的信号,同时还可以使得数据的传输更加高效、快速。MAC控制器接收转换后的QPI片间互联总线协议cache —致性的数据后,就可以将数据通过高速serdes传输至目标CPUCORE所在的芯片对应的MAC控制器,从而完成数据的传输。
[0080]CPU CORE除了对其他CPU CORE传输cache —致性数据之外,也需要接收其他CPUCORE传输进来的cache —致性数据,从而实现数据的共享交互。CPU CORE在接收其他CPUCORE传输进来的cache —致性数据时,具体包括以下步骤:首先MAC控制器接收片间cache一致性数据,并将所接收的数据反向解析为CHI片内互联总线协议格式,并将CHI片内互联总线协议格式的数据发送至QPI agent模块。芯片与芯片之间的数据传输是基于QPI片间互联总线协议,而同一芯片内CPU CORE之间的数据传输是基于CHI片内互联总线协议。MAC控制器作为芯片与芯片之间交互的接口,在接收到其他芯片的CPU CORE传递进来的片间cache —致性数据时,会对将所接收的数据反向解析为CHI片内互联总线协议格式,并将CHI片内互联总线协议格式的数据发送至QPI agent模块。
[0081]而后QPI agent模块在对CHI片内互联总线协议格式的数据进行片间cache —致性维护后,对目标CPU CORE发起访问命令。芯片内的目标CPU CORE在接收到QPI agent模块发起的访问命令后,会作出相应反馈,即目标CPU CORE会发送响应命令和数据至QPIagent模块。待收到目标CPU CORE响应命令以及数据后,QPI agent模块将片间cache —致性数据发送至目标芯片的链路层控制器,逆向返回数据及响应。这样,就实现了芯片内CPUCORE作为cache —致性数据的接收端与外界的交互,从而使得系统的功能得到进一步的完口 ο
[0082]如图2所示,在本实施方式中,所述链路层控制器5包括通道管理模块9和调度控制模块10,输出管理模块13和MAC层训练同步模块8,所述通道管理模块9与CHI片内互联总线4连接,所述调度控制模块10与输出管理模块13连接,所述输出管理模块13与MAC层训练同步模块8,所述MAC层训练同步模块8与所述MAC控制器连接6。所述通道管理模块用于接收CPU CORE发起的CHI片内互联总线协议cache —致性操作命令和数据;所述调度控制模块用于将通道管理模块所接收的CPU CORE的CHI片内互联总线协议cache —致性的数据转换为QPI片间互联总线协议cache —致性的数据;所述输出管理模块用于对转换后的QPI片间互联总线协议cache —致性的数据作进一步处理,并将处理后数据发送至MAC层训练同步模块;所述MAC层训练同步模块用于将处理后数据的MAC地址译码后发送至对应的MAC控制器。
[0083]链路层控制器5在处理CPU CORE发送至其他芯片内的CPU CORE的cache数据时,具体包括:通道管理模块9接收CPU CORE发起的CHI片内互联总线协议cache —致性操作命令和数据。而后调度控制模块10将通道管理模块所接收的CPU CORE的CHI片内互联总线协议cac
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1