基于TileLink的芯片互联电路及数据传输方法

文档序号:29935933发布日期:2022-05-07 13:35阅读:353来源:国知局
基于TileLink的芯片互联电路及数据传输方法
基于tilelink的芯片互联电路及数据传输方法
技术领域
1.本发明涉及基于tilelink的芯片互联电路及数据传输方法,属于芯片互联技术领域。


背景技术:

2.在逐渐到来的后摩尔时代,芯片先进制程逐渐逼近物理极限,另一方面,先进制程的设计成本也水涨船高。在此背景下,将soc系统分成多片芯片,再通过片间互联形成整体的方案优势渐显。而如何实现芯片间的互联以及芯片间的数据传输是其中的重要问题。
3.tilelink总线是专为risc-v指令集cpu设计的一种高速、低延迟、高吞吐量、可扩展的片内总线,用于连接处理器核、cache、dma及其他设备。tilelink总线支持从单一外设到高吞吐量的复杂多外设的所有通讯需求,为任意数量的缓存和非缓存主设备提供一致性的访问。
4.tilelink总线协议定义了5个通道,每个通道的方向及具体功能如下,通道a:由主设备到从设备,传送一个请求,访问指定的地址范围或对数据进行缓存操作。通道b:由从设备到主设备,传输一个请求,对主代理已缓存的某个地址上的数据进行访问或是写回操作。通道c:由主设备到从设备,响应通道b的请求,也用于自发写回脏缓存数据(dirtied cached data)。通道d:由从设备到主设备,向最初的请求者传送一个数据回复响应或是应答消息。通道e:由主设备到从设备,传输来自最初请求者的缓存块传输的最终应答,用于序列化。
5.针对基于tilelink总线设计的芯片系统,目前尚没有能够根据tilelink总线及serdes发送能力来灵活配置电路结构完成总线数据跨芯片的传输方法和架构方案。
6.专利cn113704151a(基于tilelink总线的芯片互联架构及互联方法)公开了一种基于tilelink总线的互联架构及互联方法,虽然解决了tilelink总线数据的跨芯片交互,并将片内大位宽的并行tilelink总线数据串行传输到另一芯片,但是完整tilelink总线包含5个通道,包含普通的访存操作和缓存一致性操作,专利cn113704151a只解决了通过a、d通道就能完成的基本访存请求的操作,不能解决需要完整5个通道的缓存一致性的操作,也不能根据需要发送的tilelink总线具体通道、通道数据位宽及serdes的数据发送位宽,灵活配置电路结构,因此当前的tilelink总线数据跨芯片互联方案还存在总线通道不完整、总线操作传输不完整、不能根据tilelink总线具体通道、通道数据位宽和serdes的数据发送位宽进行灵活配置等缺点。


技术实现要素:

7.为了解决目前存在的跨片传输过程中的tilelink总线通道不完整、总线操作传输不完整和不能根据具体转发的tilelink总线通道、通道数据位宽、serdes的数据发送位宽进行灵活配置电路结构问题,本发明提供了一种基于tilelink的芯片互联电路及数据传输方法。
8.本发明第一个目的在于提供一种基于tilelink的芯片互联电路,所述互联电路包括:发送端和接收端;所述发送端和所述接收端分别被设置在采用tilelink总线的第一芯片和第二芯片内,所述第一芯片和第二芯片连接,所述互联电路实现所述第一芯片和所述第二芯片的片间互联和数据传输;
9.所述发送端包括:第一tilelink串化解串模块、第一serdes控制模块;所述第一tilelink串化解串模块用于把接收到的来自tilelink总线的数据进行格式统一并串化处理后发送给所述第一serdes控制模块,还用于将接收到的来自所述第一serdes控制模块的串化数据恢复成tilelink总线对应通道的数据,并传输给tilelink总线;
10.所述接收端包括:第二tilelink串化解串模块、第二serdes控制模块;所述第二tilelink串化解串模块用于把接收到的来自tilelink总线的数据进行格式统一并串化处理后发送给所述第二serdes控制模块,还用于将接收到的来自所述第二serdes控制模块的串化数据恢复成tilelink总线对应通道的数据,并传输给tilelink总线;
11.所述第一serdes控制模块和所述第二serdes控制模块通过串行差分线连接。
12.可选的,所述第一tilelink串化解串模块包括:第一通道仲裁模块、第一数据串化模块、第一数据解串模块;所述第一serdes控制模块包括:第一数据fifo模块、第一控制模块、第一serdes模块;
13.在所述发射端,tilelink总线a、c、e中的若干通道连接所述第一通道仲裁模块的输入;所述第一通道仲裁模块的输出连接所述第一数据串化模块的输入;所述第一数据串化模块的输出连接所述第一serdes模块的并行数据输入端口;所述第一serdes模块的并行数据输出端口连接所述第一数据fifo模块的数据输入;所述第一数据fifo模块的数据输出连接所述第一数据解串模块的输入;所述第一数据fifo模块的数据数量输出端口连接所述第一控制模块;所述第一控制模块连接所述第一serdes模块的控制端口;所述第一数据解串模块的输出连接所述tilelink总线b、d中的若干通道;
14.所述第一通道仲裁模块用于将tilelink总线a、c、e中的若干通道的数据格式进行统一后,仲裁出一路通道数据进行发送;所述第一数据串化模块用于将仲裁出的通道数据按所述第一serdes模块发送能力进行串化;所述第一数据fifo模块用于缓存所述第一serdes模块输出的数据,数据先入先出,并将内部的数据数量输出给所述第一控制模块;所述第一控制模块用于根据所述第一fifo模块内数据数量对所述第一serdes模块进行流量控制,控制所述第一serdes模块工作状态;所述第一数据解串模块用于将串化的数据恢复成tilelink总线对应通道的数据;所述第一serdes模块,用于将并行数据串行发送,并接收来自所述接收端的串行数据后并行输出。
15.可选的,所述第二tilelink串化解串模块包括:第二通道仲裁模块、第二数据串化模块、第二数据解串模块;所述第二serdes控制模块包括:第二数据fifo模块、第二控制模块、第二serdes模块;
16.在所述接收端,tilelink总线b、d中的若干通道连接所述第二通道仲裁模块的输入;所述第二通道仲裁模块的输出连接所述第二数据串化模块的输入;所述第二数据串化模块的输出连接所述第二serdes模块的并行数据输入端口;所述第二serdes模块的并行数据输出端口连接所述第二数据fifo模块的数据输入;所述第二数据fifo模块的数据输出连接所述第二数据解串模块的输入;所述第二数据fifo模块的数据数量输出端口连接所述第
二控制模块;所述第二控制模块连接所述第二serdes模块的控制端口;所述第二数据解串模块的输出连接所述tilelink总线a、c、e中的若干通道;
17.所述第二通道仲裁模块用于将tilelink总线b、d中的若干通道的数据格式进行统一后,仲裁出一路通道数据进行发送;所述第二数据串化模块用于将仲裁出的通道数据按所述第二serdes模块发送能力进行串化;所述第二数据fifo模块用于缓存所述第二serdes模块输出的数据,数据先入先出,并将内部的数据数量输出给所述第二控制模块;所述第二控制模块用于根据所述第二数据fifo模块内数据数量对所述第二serdes模块进行流量控制,控制所述第二serdes模块工作状态;所述第二数据解串模块用于将串化的数据恢复成tilelink总线对应通道的数据;所述第二serdes模块,用于将并行数据串行发送,并接收来自所述发送端的串行数据后并行输出。
18.可选的,所述第一通道仲裁模块和所述第二通道仲裁模块对统一后通道的数据进行仲裁,仲裁策略采用固定优先级仲裁。
19.可选的,所述第一serdes模块和所述第二serdes模块支持流量控制和数据crc校验。
20.可选的,所述第一芯片和所述第二芯片之间采用金属连接或pcb连接或信号线连接。
21.可选的,所述tilelink总线与所述第一通道仲裁模块间,第一通道仲裁模块与第一数据串化模块间,第一数据串化模块与第一serdes模块间,第一数据fifo模块与第一数据解串模块间,第一数据解串模块与tilelink总线间,第一控制模块与第一serdes模块间,采用valid、ready握手机制传输数据。
22.可选的,所述第二serdes模块与第二数据串化模块间,第二数据fifo模块与第二数据解串模块间,第二数据解串模块与tilelink总线间,第二数据串化模块与tilelink总线间,第二控制模块与第二serdes模块间,采用valid、ready握手机制传输数据。
23.本发明第二个目的在于提供一种基于tilelink总线的芯片互联数据传输方法,所述数据传输方法基于上述的芯片互联电路实现,当所述第一芯片内的tilelink总线a、c、e中的若干通道发起请求时,所述方法包括如下步骤:
24.步骤一:所述第一芯片内的第一通道仲裁模块将tilelink总线a、c、e中的若干通道的数据的格式进行统一,对统一后的若干通道进行仲裁,选出其中一路数据进行发送;
25.新的数据格式如表1所示:
26.表1tilelink总线通道统一数据格式
[0027][0028]
步骤二:所述第一数据串化模块将选出的一路数据根据所述第一serdes模块并行数据输入位宽进行串化;
[0029]
步骤三:所述第一serdes模块将并行数据串行发送给所述第二芯片;
[0030]
步骤四:所述第二芯片的所述第二serdes模块接收到串行数据后,所述第二serdes模块将数据并行输出至所述第二数据fifo模块;
[0031]
步骤五:所述第二数据fifo模块先入先出接收数据,将接收的数据输出给所述第二数据解串模块,并将内部的数据数量输出给所述第二控制模块;
[0032]
步骤六:所述第二数据解串模块接收数据并进行重组,将数据恢复成tilelink总线对应通道的请求消息输出给所述第二芯片内的tilelink总线;在此过程中,若所述接收端的所述第二数据fifo模块内数据数量超过预设值,那么所述第二控制模块对所述第二serdes模块进行控制;完成一次所述第一芯片与所述第二芯片之间tilelink总线请求消息的传输。
[0033]
可选的,所述方法的数据流传输过程中,当响应消息通过所述第二芯片的tilelink总线b、d中的若干通道回传时,包括如下步骤:
[0034]
步骤一:所述第二芯片内的第二通道仲裁模块将tilelink总线b、d中的若干通道的数据进行格式统一,然后对统一格式后的若干通道进行仲裁,选出其中一路数据进行发送;
[0035]
步骤二:所述第二数据串化模块将选出的一路数据根据所述第二serdes模块并行数据输入位宽进行串化;
[0036]
步骤三:所述第二serdes模块将并行数据串行发送给所述第一芯片;
[0037]
步骤四:所述第一芯片的所述第一serdes模块接收到串行数据后,所述第一serdes模块将数据并行输出至所述第一数据fifo模块;
[0038]
步骤五:所述第一数据fifo模块先入先出接收数据,将接收的数据输出给所述第一数据解串模块,并将内部的数据数量输出给所述第一控制模块;
[0039]
步骤六:所述第一数据解串模块接收数据并进行重组,将数据恢复成tilelink总线对应通道的请求消息输出给所述第一芯片内的tilelink总线;在此过程中,若所述发送端的第一数据fifo模块内数据数量超过预设值,那么所述第一控制模块对所述第一serdes
模块进行控制;完成一次所述第一芯片与所述第二芯片之间tilelink总线响应消息的传输。
[0040]
本发明有益效果是:
[0041]
本发明通过增加通道间仲裁和统一各通道数据格式的方式,解决了现有技术中无法进行多通道数据跨片传输问题,使得互联电路能够完整传输tilelink总线所有通道数据及所有操作类型,并且根据tilelink总线数据宽度灵活配置电路结构;
[0042]
通过参数化配置串化电路,使得互联电路可以适配任意接口宽度的serdes;
[0043]
通过在仲裁电路中固定通道间的优先级顺序a《c《e和b《d,设置优先级保证了消息在tilelink总线网络的传输过程中不会进入路由环路或资源死锁,避免了总线死锁现象的发生,使得设备间消息在所有通道上的传输过程保持为有向无环图。
附图说明
[0044]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045]
图1是本发明的片间互联电路发送端芯片架构示意图,其中(a)是第一芯片内架构示意图,(b)是第二芯片内架构示意图。
[0046]
图2是tilelink总线的通道示意图。
[0047]
图3是tilelink总线完成一次传输的波形图。
[0048]
图4是本发明实施例一中发送端通道仲裁模块输入输出波形图。
[0049]
图5是本发明实施例一中发送端数据串化模块输入输出波形图。
[0050]
图6是本发明实施例一中发送端数据解串模块输入输出波形图。
[0051]
图7是本发明实施例一中接收端通道仲裁模块输入输出波形图。
[0052]
图8是本发明实施例一中接收端数据串化模块输入输出波形图。
[0053]
图9是本发明实施例一中接收端数据解串模块输入输出波形图。
具体实施方式
[0054]
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0055]
为便于理解本技术的技术方案,首先对tilelink总线进行介绍如下:
[0056]
tilelink总线包含a、b、c、d和e五个通道,如图3所示。其中a、d通道是必须的,用以对设备进行访存操作,具体以opcode信号区分操作类型;b、c、e通道是可选的,用以支持缓存一致性的操作。每个通道的具体功能如下,通道a:传送一个请求,访问指定的地址范围或对数据进行缓存操作。通道b:传输一个请求,对主代理已缓存的某个地址上的数据进行访问或是写回操作。通道c:响应通道b的请求,也用于自发写回脏缓存数据(dirtied cached data)。通道d:向最初的请求者传送一个数据回复响应或是应答消息。通道e:传输来自最初请求者的缓存块传输的最终应答,用于序列化。
[0057]
上述5条通道中,任一通道上发射的每一条数据都称为一次传输。传输过程中,当
valid和ready信号均为高且时钟存在上升沿时,发生一次有效传输。例如,图4中在t3处发生传输。
[0058]
a通道的传输方向是从主设备到从设备,携带请求消息发送到一个特定地址。相关信息如表2所示。
[0059]
表2通道a信号
[0060][0061][0062]
注:z:size字段的位宽,最小4位;o:区分源(主)端所需的比特数;a:地址的位宽,最小32位;w:以字节为单位的数据总线宽度。
[0063]
b通道的传输方向是从从设备到主设备,用于向保存一个特定缓存块的主代理发送请求消息。相关信息如表3所示。
[0064]
表3通道b信号
[0065]
[0066]
注:z:size字段的位宽,最小4位;o:区分源(主)端所需的比特数;a:地址的位宽,最小32位;w:以字节为单位的数据总线宽度。
[0067]
c通道的传输方向是从主设备到从设备,用于响应通道b的请求消息,也用于自发写回脏缓存数据(dirtied cached data)。相关信息如表4所示。
[0068]
表4通道c信号
[0069][0070][0071]
注:z:size字段的位宽,最小4位;o:区分源(主)端所需的比特数;a:地址的位宽,最小32位;w:以字节为单位的数据总线宽度。
[0072]
d通道的传输方向是从从设备到主设备,用于对通道a发送到特定地址请求的响应,也用于对通道c自发写回的响应。相关信息如表5所示。
[0073]
表5通道d信号
[0074]
[0075]
注:z:size字段的位宽,最小4位;o:区分源(主)端所需的比特数;i:区分终(从)端所需的比特数;w:以字节为单位的数据总线宽度。
[0076]
e通道的传输方向是从主设备到从设备,携带是否已经收到通道d响应消息的响应。相关信息如表6所示。
[0077]
表6通道e信号
[0078][0079][0080]
注:i:区分终(从)端所需的比特数。
[0081]
实施例一:
[0082]
本实施例提供一种基于tilelink的芯片互联电路,所述互联电路包括:发送端和接收端;所述发送端和所述接收端分别被设置在采用tilelink总线的第一芯片和第二芯片内,所述第一芯片和第二芯片连接,所述互联电路实现所述第一芯片和所述第二芯片的片间互联和数据传输;
[0083]
所述发送端包括:第一tilelink串化解串模块、第一serdes控制模块;所述第一tilelink串化解串模块用于把接收到的来自tilelink总线的数据进行格式统一并串化处理后发送给所述第一serdes控制模块,还用于将接收到的来自所述第一serdes控制模块的串化数据恢复成tilelink总线对应通道的数据,并传输给tilelink总线;
[0084]
所述接收端包括:第二tilelink串化解串模块、第二serdes控制模块;所述第二tilelink串化解串模块用于把接收到的来自tilelink总线的数据进行格式统一并串化处理后发送给所述第二serdes控制模块,还用于将接收到的来自所述第二serdes控制模块的串化数据恢复成tilelink总线对应通道的数据,并传输给tilelink总线;
[0085]
所述第一serdes控制模块和所述第二serdes控制模块通过串行差分线连接。
[0086]
实施例二:
[0087]
本实施例提供一种基于tilelink的芯片互联电路,通过serdes将tilelink总线若干并行通道上的数据串行发送,完成数据跨芯片传输。
[0088]
根据本实施例的互联架构如图1和图2所示,图1为片间互联电路发送端芯片架构示意图,图2为片间互联电路接收端芯片架构示意图;所述互联架构所述互联架构包括发送端和接收端,所述发送端被分别设置于采用tilelink总线的芯片1,所述接收端被设置于采用tilelink总线的芯片2,所述芯片1的txp与所述芯片2的rxp连接,所述芯片1的txn与所述芯片2的rxn连接,所述芯片1的rxp与所述芯片2的txp连接,所述芯片1的rxn与所述芯片2的txn连接,以实现芯片1和芯片2的片间互联及数据传输。
[0089]
所述发送端包括通道仲裁模块,数据串化模块,数据解串模块,控制模块,数据fifo模块和serdes模块;所述接收端包括通道仲裁模块,数据串化模块,数据解串模块,控制模块,数据fifo模块和serdes模块;并且,发送端的控制模块,数据fifo模块和serdes模
块与接收端的控制模块,数据fifo模块和serdes模块相同。
[0090]
根据本发明的互联架构的发送端芯片架构连接情况如图1所示,具体而言,所述芯片1内:所述发送端的输入连接tilelink总线a、c、e三个通道,所述发送端的输出连接tilelink总线b、d两个通道。
[0091]
所述发送端内,所述a、c、e三个通道连接所述通道仲裁模块的输入;所述通道仲裁模块的输出连接所述数据串化模块的输入;所述数据串化模块的输出连接所述serdes模块的并行输入数据端口;所述serdes模块的并行数据输出端口连接所述数据fifo模块的输入;所述数据fifo模块的数据输出连接数据解串模块的输入,所述数据fifo模块的数据数量输出端口连接所述控制模块;所述控制模块连接所述serdes模块的控制端口;所述数据解串模块的输出连接所述tilelink总线b、d两个通道。
[0092]
并且,如图2所示,所述芯片2内,所述接收端的输出连接tilelink总线a、c、e三个通道,所述接收端的输入连接tilelink总线b、d两个通道。
[0093]
所述接收端内,所述b、d两个通道连接所述通道仲裁模块的输入;所述通道仲裁模块的输出连接所述数据串化模块的输入;所述数据串化模块的输出连接所述serdes模块的并行输入数据端口;所述serdes模块的并行数据输出端口连接所述数据fifo模块的输入;所述数据fifo模块的数据输出连接数据解串模块的输入,所述数据fifo模块的数据数量输出端口连接所述控制模块;所述控制模块连接所述serdes模块的控制端口;所述数据解串模块的输出连接所述tilelink总线a、c、e三个通道。
[0094]
所述发送端内,所述通道仲裁模块用于将tilelink总线a、c、e三个通道的数据格式进行统一,统一后的格式如表1所示,然后对统一后三个通道的数据进行仲裁,为避免发生总线死锁现象,仲裁策略采用固定优先级仲裁,优先级e》c》a,仲裁出其中一路通道数据输出给数据串化模块;
[0095]
所述数据串化模块用于将仲裁出的通道数据根据所述serdes模块输入数据位宽进行串化;
[0096]
所述数据fifo模块用于缓存所述serdes模块输出的数据,数据先入先出,并将内部的数据数量输出给所述控制模块;
[0097]
所述控制模块,用于控制serdes模块的工作状态,并且可以根据数据fifo模块中的数据数量对所述serdes模块进行流量控制。存在高低两个阈值,当数据fifo模块中数据量达到高阈值时,停止serdes模块功能,但可能仍存在传输中的数据,数据fifo模块继续接收;当数据fifo模块中数据量减少到低阈值时,重新开启serdes模块数据收发功能。
[0098]
所述数据解串模块用于将串化的数据恢复成tilelink总线对应通道的数据;
[0099]
所述serdes模块,用于将并行数据串行发送,并接收对端的串行数据后并行输出,支持流量控制,数据crc校验。
[0100]
所述接收端内,所述通道仲裁模块用于将tilelink总线b、d两个通道的数据格式进行统一,统一后的格式如表1所示,然后对统一后两个通道的数据进行仲裁,为避免发生总线死锁现象,仲裁策略采用固定优先级仲裁,优先级d》b,仲裁出其中一路通道数据输出给数据串化模块;
[0101]
根据本实施例所述的互联结构,所述接收端内,所述数据串化模块、所述数据解串模块、所述serdes模块、所述数据fifo模块及所述控制模块与所述发送端的所述数据串化
模块、所述数据解串模块、所述serdes模块、所述数据fifo模块及所述控制模块作用相同。
[0102]
实施例三:
[0103]
本实施例提供一种基于tilelink总线的芯片互联数据传输方法,基于实施例二中的芯片互联电路实现,所述方法的数据流传输过程中,当芯片1内的tilelink总线a、c、e三个通道发起消息时,所述方法包括如下步骤:
[0104]
步骤一:所述芯片1内的通道仲裁模块将tilelink总线a、c、e三个通道的数据进行统一,新的数据格式如表1所示,包括chanid表示来源的通道、opcode表示通道消息类型、param表示参数码、size表示携带数据大小的对数、source表示源设备id、address表示操作的目标地址、data表示消息携带的数据、corrupt表示消息携带数据是否有误、union表示通道间不同的额外数据、last表示统一数据的最后一位。然后对统一后的三个通道进行仲裁,为避免发生总线死锁现象,仲裁策略采用固定优先级仲裁,优先级e》c》a,选出其中一路通道数据进行发送;
[0105]
步骤二:所述数据串化模块将选出的一路通道数据根据所述serdes模块并行数据输入位宽进行串化;
[0106]
步骤三:所述serdes模块将并行数据串行发送给芯片2;
[0107]
步骤四:所述芯片2的serdes模块接收到串行数据后,根据serdes模块并行数据输出位宽输出至数据fifo模块;
[0108]
步骤五:所述数据fifo模块先入先出接收数据,将接收的数据输出给所述数据解串模块,并将内部的数据数量输出给所述控制模块;
[0109]
步骤六:所述数据解串模块接收数据并进行重组,将数据恢复成tilelink总线对应通道的请求消息输出给芯片2内的tilelink总线;在此过程中,若接收端数据fifo模块内数据数量超过预设值,那么所述控制模块对所述serdes模块进行控制;完成一次从芯片1到芯片2的tilelink总线消息的传输。
[0110]
本实施例的芯片互联数据传输方法中,当消息通过芯片2的tilelink总线b、d两个通道向芯片1传输时,所述方法还包括如下步骤:
[0111]
步骤一:所述芯片2内的通道仲裁模块将tilelink总线b、d两个通道的数据进行统一,新的数据格式如表1所示,然后对统一后两个通道的数据进行仲裁,为避免发生总线死锁现象,仲裁策略采用固定优先级仲裁,优先级d》b,选出其中一路通道数据进行发送;
[0112]
步骤二:所述数据串化模块将选出的一路通道数据根据所述serdes模块并行数据输入位宽进行串化;
[0113]
步骤三:所述serdes模块将并行数据串行发送给芯片1;
[0114]
步骤四:所述芯片1的serdes模块接收到串行数据后,根据serdes模块并行数据输出位宽输出至数据fifo模块;
[0115]
步骤五:所述数据fifo模块先入先出接收数据,将接收的数据输出给所述数据解串模块,并将内部的数据数量输出给所述控制模块;
[0116]
步骤六:所述数据解串模块接收数据并进行重组,将数据恢复成tilelink总线对应通道的请求消息输出给芯片1内的tilelink总线;在此过程中,若发送端数据fifo模块内数据数量超过预设值,那么所述控制模块对所述serdes模块进行控制;完成一次从芯片2到芯片1的tilelink总线消息的传输。
[0117]
本实施例的互联架构将芯片内多通道大位宽的并行tilelink总线数据通过仲裁串化后,采用serdes串行传输到另一芯片,能够减少芯片引脚的使用;并且时钟内嵌在数据中,不需要传输随路时钟,避免了由于数据和时钟的传播延时不同,导致的数据接收端不能正确接收数据。
[0118]
通过增加通道间仲裁和统一各通道数据格式的方式,解决了现有技术中无法进行多通道数据跨片传输问题,使得互联电路能够完整传输tilelink总线所有通道数据及所有操作类型,并且根据tilelink总线数据宽度灵活配置电路结构。通过参数化配置串化电路,使得互联电路可以适配任意接口宽度的serdes。通过在仲裁电路中固定通道间的优先级顺序a《c《e和b《d,设置优先级保证了消息在tilelink总线网络的传输过程中不会进入路由环路或资源死锁,避免了总线死锁现象的发生,使得设备间消息在所有通道上的传输过程保持为有向无环图。
[0119]
本发明实施例中的部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
[0120]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1