基于异步结构的集成电路片上通讯方法及装置的制作方法

文档序号:6382519阅读:157来源:国知局
专利名称:基于异步结构的集成电路片上通讯方法及装置的制作方法
技术领域
本发明涉及集成电路SOC芯片的片上通信领域,具体涉及一种基于异步结构的集成电路片上通讯方法及装置。
背景技术
随着集成电路SOC芯片的规模和设计复杂度的迅速提高,SOC片上总线结构的研究日益引起人们的重视,并开发了多种片上总线,如AMBA、CoreConnect等,这些总线均属于同步总线类型,具有高带宽、低延迟的优点,但是要求总线上的设备属于同一个时钟域, 而且这类总线的互连线数目众多,占用较多的硬件资源。然而在集成电路中,有些部件并不需要高速的访问接口,而更关心减少硬件资源的占用和设计的易实现性。例如SOC芯片中常集成多个具有独立时钟系统的IP部件和自定义部件,各部件一般都有一定数量的控制和状态寄存器,通常需要系统初始化或在线观察,另外有一些慢速设备如UART接口、12C接口等也存在一定数量的寄存器,需要在线读写。访问这类寄存器,一般不需要很高的读写速度,如果为访问此类寄存器而为每个部件设立单独的通信线使用高速连接总线(如AXI 总线、PLB总线等),则需要使用大量的互连线并配置跨时钟转换模块,这势必会严重浪费芯片面积和布线通道资源,并增加芯片功耗。
为满足上述需求,IBM公司提出了使用DCR总线结构访问部件内寄存器和慢速设备寄存器的方法,该DCR总线结构采用异步握手通讯技术,主从式结构,能够实现主设备访问不同时钟域内的从设备,同时支持从设备级联。如图I所示,现有技术的菊花链式DCR总线中包括一个主设备和多个从设备,多个从设备之间级联连接(图中为了说明方便仅绘制了从设备I、从设备2、从设备3共3个从设备,从设备I、从设备2、从设备3之间级联连接), 该总线的优点是支持从设备间级联连接,为扩展设备接口提供了方便。但是,由于当多个从设备进行级联时,必须分别布置主设备与各个从设备的地址总线和数据总线结构,互连线数目较多,因此随着从设备数量的增加必然导致物理实现时占据大量的布线资源,增加了物理实现时的时序约束难度。此外,现有技术的菊花链式DCR总线仅支持主设备向从设备发送读写请求,而不支持从设备主动报告机制,导致DCR总线无法支持中断报文的传输,这无疑使DCR总线的应用范围受到限制。
综上所述,菊花链式DCR总线存在下述问题
(I)菊花链式DCR总线中,当多级从设备与主设备级联时会有数量众多的主从设备间的长通讯线,占据大量布线资源,增加了芯片面积和物理实现难度;
(2)菊花链式DCR总线仅支持读写信息传输,不支持从设备中断等其他类型的信息传输。发明内容
本发明要解决的技术问题是提供一种能够减少主从设备间通信互连线数量,能够支持不同时钟域内设备通信和支持包括寄存器读写、设备中断等多种信息传输的片上通信4方法及装置,同时能够简化物理实现时的布局布线和时序约束工作量,占用硬件资源少、可扩展性好的基于异步结构的集成电路片上通讯方法及装置。
为了解决上述技术问题,本发明采用的技术方案为
一种基于异步结构的集成电路片上通讯方法,其实施步骤如下
I)预先将主设备通过请求总线直接连接到每一个从设备的请求接口,预先将多个从设备应答接口依次串联形成从设备应答链、将位于所述从设备应答链链头的从设备应答接口与主设备应答接口相连,从设备通过请求总线接收来自主设备的由微包构成的请求报文,所述从设备通过从设备应答链向主设备发送由微包构成的应答报文;
2)当主设备向从设备发送报文时,首先由主设备将报文分割为微包,并通过所述请求总线广播进入微包传输状态;然后在微包传输状态下,主设备通过所述请求总线向所有从设备广播该报文的第一个微包,所有从设备读取微包后通过所述从设备应答链依次传递请求微包握手成功信号,主设备收到请求微包握手成功信号后开始传递下一个微包,按上述过程传递微包直至最后一个微包传递完毕,完成该请求报文的传输过程;所有从设备在完成报文接收后,解析出其中的地址信息并与自己的地址空间进行匹配,若匹配不成功, 则抛弃该报文,若成功,则执行该报文对应的操作,若需要向主设备返回应答报文,则继续执行步骤3);
3)当从设备向主设备发送报文时,首先由从设备通过从设备应答链向上一级从设备发出应答报文有效信号并进入微包传输状态,然后在微包传输状态下发出第一个微包, 上一级从设备若发现其应答接口空闲,则将此微包转发到更上一级从设备,如此依次传递, 直到转发到主设备的应答接口 ;主设备接收该应答微包后,返回应答微包握手成功信号,通过从设备应答链的各级从设备依次传递下来,从设备获取此应答微包握手成功信号后,开始传递下一个微包,如此往复直至最后一个微包传递完毕,完成该应答报文的传输过程。
作为本发明基于集成电路芯片的片上异步通讯方法的进一步改进
所述步骤2)中的报文具有固定的报文长度和种类,所述将报文分割为微包具体是指将每一个报文分为固定数量的微包,且报文的宽度Plmgth和每一个微包的宽度Slmgth之间满足公式(I)所示的关系;
Plength= (Slength-1) *n(I)
其中,η为将报文分割为微包的数量,n e {1,2,......}。
所述步骤2)和步骤3)中检测微包是否为报文的最后一个微包具体是指检测每一个微包的最高位是否为逻辑1,如果微包的最高位为逻辑1,则判定当前的微包为报文的最后一个微包。
所述报文的内容域包括目标地址、数据、报文类型以及自定义属性,所述主设备或者从设备在发送报文时根据所述目标地址来决定发送报文的目标,所述主设备或者从设备根据数据和报文类型来决定报文的具体执行方法。
本发明还提供一种基于异步结构的集成电路片上通讯装置,包括一个主设备和多个从设备,所述主设备通过请求总线直接连接到每一个从设备,所述多个从设备依次串联连接形成从设备应答链,且位于从设备应答链链头的从设备与主设备相连;所述从设备通过请 求总线接收来自主设备的由微包构成的请求报文,所述从设备通过从设备应答链向主设备发送由微包构成的应答报文;当主设备向从设备发送报文时,首先由主设备将报文分割为微包,并通过所述请求总线广播进入微包传输状态;然后在微包传输状态下,主设备通过所述请求总线向所有从设备广播该报文的第一个微包,所有从设备读取微包后通过所述从设备应答链依次传递请求微包握手成功信号,主设备收到请求微包握手成功信号后开始传递下一个微包,按上述过程传递微包直至最后一个微包传递完毕,完成该请求报文的传输过程;所有从设备在完成报文接收后,解析出其中的地址信息并与自己的地址空间进行匹配,若匹配不成功,则抛弃该报文,若成功,则执行该报文对应的操作,若需要向主设备返回应答报文,则继续执行从设备向主设备发送报文;当从设备向主设备发送报文时,首先由从设备通过从设备应答链向上一级从设备发出应答报文有效信号并进入微包传输状态,然后在微包传输状态下发出第一个微包,上一级从设备若发现其应答接口空闲,则将此微包转发到更上一级从设备,如此依次传递,直到转发到主设备的应答接口 ;主设备接收该应答微包后,返回应答微包握手成功信号,通过从设备应答链的各级从设备依次传递下来,从设备获取此应答微包握手成功信号后,开始传递下一个微包,如此往复直至最后一个微包传递完毕,完成该应答报文的传输过程。
本发明基于异步结构的集成电路片上通讯方法具有下述优点
(I)本发明的异步通讯方法能够通过增加单个报文包含的微包个数的方法来减少微包宽度,即减少了主从设备间的通信互连线数目,进而有效减少了整个芯片内的长信号线数目,既减少了对硬件资源的占用又降低了物理实现难度。
(2)本发明的异步通讯方法主从设备间使用异步握手控制信号,针对异步握手控制信号设计了主设备和从设备采用二级同步逻辑实现,能够保障通讯可靠性。
(3)本发明的异步通讯方法中的报文的内容域包括报文类型,通过报文类型除了支持的如读、写报文请求等,还支持中断报文及其他自定义报文的传输,而且通过自定义属性还能够进行扩展,具有功能丰富、可扩展性强的优点。
本发明基于异步结构的集成电路片上通讯装置为上述基于异步结构的集成电路片上通讯方法对应的装置,具有与上述基于异步结构的集成电路片上通讯方法相同的技术效果。


图I为现有技术的菊花链式DCR总线的结构以及主从设备信号连接结构示意图。
图2为本发明实施例的基本实施流程示意图。
图3为本发明实施例的结构以及主从设备信号连接结构示意图。
图4为本发明实施例中主设备请求报文的时序示意图。
图5为本发明实施例中从设备应答报文的时序示意图。
具体实施方式
如图2所示,本发明实施例基于异步结构的集成电路片上通讯方法的实施步骤如下
I)预先将主设备通过请求总线直接连接到每一个从设备的请求接口,预先将多个从设备应答接口依次串联形成从设备应答链、将位于从设备应答链链头的从设备应答接口与主设备应答接口相连,从设备通过请求总线接收来自主设备的由微包构成的请求报文,从设备通过从设备应答链向主设备发送由微包构成的应答报文;
2)当主设备向从设备发送报文时,首先由主设备将报文分割为微包,并通过请求总线广播进入微包传输状态;然后在微包传输状态下,主设备通过请求总线向所有从设备广播该报文的第一个微包,所有从设备读取微包后通过从设备应答链依次传递请求微包握手成功信号,主设备收到请求微包握手成功信号后开始传递下一个微包,按上述过程传递微包直至最后一个微包传递完毕,完成该请求报文的传输过程;所有从设备在完成报文接收后,解析出其中的地址信息并与自己的地址空间进行匹配,若匹配不成功,则抛弃该报文,若成功,则执行该报文对应的操作,若需要向主设备返回应答报文,则继续执行步骤3);
3)当从设备向主设备发送报文时,首先由从设备通过从设备应答链向上一级从设备发出应答报文有效信号并进入微包传输状态,然后在微包传输状态下发出第一个微包, 上一级从设备若发现其应答接口空闲,则将此微包转发到更上一级从设备,如此依次传递, 直到转发到主设备的应答接口 ;主设备接收该应答微包后,返回应答微包握手成功 信号,通过从设备应答链的各级从设备依次传递下来,从设备获取此应答微包握手成功信号后,开始传递下一个微包,如此往复直至最后一个微包传递完毕,完成该应答报文的传输过程。
本实施例采用异步握手通信机制与报文分段(微包)传输方式相结合的通信手段,在简化异步转换逻辑的同时又能够减少部件间通信线的数目,有利于减少芯片全局布线通道的使用,具有占用硬件资源少的优点;而且本实施例支持主从式的点到多点的链式连接结构,即多个从设备以菊花链式结构串联在一起,共享同一个数据总线通道。本实施例能够作为一种片上异步通讯总线(Asynchronous Communication Bus,简称ACB)广泛用于数字集成电路芯片的片上通讯。
本实施例中主设备和所有从设备具有统一的报文格式,本实施例中对该报文格式命名为片上异步通讯总线报文(下文中简称为ACB报文)。ACB报文具有固定的报文长度和种类,且将报文(ACB报文)分割为微包具体是指将每一个报文分为固定数量的微包,且报文(ACB报文)的宽度Plmgth和每一个微包的宽度Slmgth之间满足公式⑴所示的关系 _] Plength= (Slength-1) *n(I)
其中η为将报文分割为微包的数量,n e {1,2,......}。例如,ACB报文长度为128位,则可选的微包宽度Slenga有129、65、33、17、9、5、3、2共8种选择。
步骤2)和步骤3)中检测微包是否为ACB报文的最后一个微包(tail微包)具体是指检测每一个微包的最高位是否为1,如果微包的最高位为1,则判定当前的微包为报文的最后个微包(即为tail微包)。
本实施例中,报文的内容域包括目标地址、数据(写报文中包含,读报文和中断报文可不包含)、报文类型(如读报文、写报文、中断报文等)以及自定义属性(长度可为O), 主设备或者从设备在发送报文时根据目标地址来决定发送报文的目标,主设备或者从设备根据数据和报文类型来决定报文的具体执行方法,自定义属性则用于增强或扩展功能。本实施例通过报文类型,使得本实施例支持部件中断报文,从而支持中断功能,为部件设计提供了更灵活的功能选择。每一个报文也包含目标地址,各设备在判断目标地址不匹配后, 自动抛弃该报文;和报文一样,每一个微包也包含目标地址,各设备在判断目标地址不匹配后,自动抛弃该微包。
如图3所示,本实施例基于异步结构的集成电路片上通讯装置包括一个主设备和多个从设备,主设备通过请求总线直接连接到每一个从设备,多个从设备依次串联连接形成从设备应答链,且位于从设备应答链链头的从设备与主设备相连;从设备通过请求总线接收来自主设备的由微包构成的请求报文,从设备通过从设备应答链向主设备发送由微包构成的应答报文;当主设备向从设备发送报文时,首先由主设备将报文分割为微包,并通过请求总线广播进入微包传输状态;然后在微包传输状态下,主设备通过请求总线向所有从设备广播该报文的第一个微包,所有从设备读取微包后通过从设备应答链依次传递请求微包握手成功信号,主设备收到请求微包握手成功信号后开始传递下一个微包,按上述过程传递微包直至最后一个微包传递完毕,完成该请求报文的传输过程;所有从设备在完成报文接收后,解析出其中的地址信息并与自己的地址空间进行匹配,若匹配不成功,则抛弃该报文,若成功,则执行该报文对应的操作,若需要向主设备返回应答报文,则继续执行从设备向主设备发送报文;当从设备向主设备发送报文时,首先由从设备通过从设备应答链向上一级从设备发出应答报文有效信号并进入微包传输状态,然后在微包传输状态下发出第一个微包,上一级从设备若发现其应答接口空闲,则将此微包转发到更上一级从设备,如此依次传递,直到转发到主设备的应答接口 ;主设备接收该应答微包后,返回应答微包握手成功信号,通过从设备应答链的各级从设备依次传递下来,从设备获取此应答微包握手成功信号后,开始传递下一个微包,如此往复直至最后一个微包传递完毕,完成该应答报文的传输过程。本实施例将主设备发送到从设备的报文通过总线方式连接到各个从设备,去掉了主从设备间的地址总线,将应答有效信号经从设备级联到主设备,同时将从设备发送到主设备的通讯线级联连接到主设备,可以有效减少主设备与从设备间的通讯长线,为后端布局提供更大的空间;而且为解决跨时钟域的通信信号传输问题,本实施例采用了异步握手通讯机制,减少了跨时钟转换逻辑的硬件开销。
图3中主设备请求总线的通道信号说明如表⑴所示,其中X为数据总线的位宽。
表(I):
主设备请求通道信号信号名称含义说明mst slv req pvid主设备到从设备的发送报文请求mst_slv_req_svld主设备到从设备的发送微包请求mst_slv_req_data[x: 0]主设备发送到从设备的微包,最高位标志该微包是否为Tail微包slv mst req gnt从设备应答链链头的从设备发送到主设备的请求微包握手应答信号
图3中从设备应答链的通道信号说明如表(2)所示,其中m为数据链中的从设备间的数据接口位宽以及从设备应答链链头的从设备与主设备的数据接口位宽。
表⑵
权利要求
1.一种基于异步结构的集成电路片上通讯方法,其特征在于实施步骤如下 1)预先将主设备通过请求总线直接连接到每一个从设备的请求接口,预先将多个从设备应答接口依次串联形成从设备应答链、将位于所述从设备应答链链头的从设备应答接口与主设备应答接口相连,从设备通过请求总线接收来自主设备的由微包构成的请求报文,所述从设备通过从设备应答链向主设备发送由微包构成的应答报文; 2)当主设备向从设备发送报文时,首先由主设备将报文分割为微包,并通过所述请求总线广播进入微包传输状态;然后在微包传输状态下,主设备通过所述请求总线向所有从设备广播该报文的第一个微包,所有从设备读取微包后通过所述从设备应答链依次传递请求微包握手成功信号,主设备收到请求微包握手成功信号后开始传递下一个微包,按上述过程传递微包直至最后一个微包传递完毕,完成该请求报文的传输过程;所有从设备在完成报文接收后,解析出其中的地址信息并与自己的地址空间进行匹配,若匹配不成功,则抛弃该报文,若成功,则执行该报文对应的操作,若需要向主设备返回应答报文,则继续执行步骤3); 3)当从设备向主设备发送报文时,首先由从设备通过从设备应答链向上一级从设备发出应答报文有效信号并进入微包传输状态,然后在微包传输状态下发出第一个微包,上一级从设备若发现其应答接口空闲,则将此微包转发到更上一级从设备,如此依次传递,直到转发到主设备的应答接口 ;主设备接收该应答微包后,返回应答微包握手成功信号,通过从设备应答链的各级从设备依次传递下来,从设备获取此应答微包握手成功信号后,开始传递下个微包,如此往复直至最后一个微包传递完毕,完成该应答报文的传输过程。
2.根据权利要求I所述的基于异步结构的集成电路片上通讯方法,其特征在于所述步骤2)中的报文具有固定的报文长度和种类,所述将报文分割为微包具体是指将每一个报文分为固定数量的微包,且报文的宽度Plmgth和每一个微包的宽度Slmgth之间满足公式(I)所不的关系; Plength= (Slength-I)(I) 其中,n为将报文分割为微包的数量,n e {1,2,......}。
3.根据权利要求2所述的基于异步结构的集成电路片上通讯方法,其特征在于所述步骤2)和步骤3)中检测微包是否为报文的最后一个微包具体是指检测每一个微包的最高位是否为逻辑1,如果微包的最高位为逻辑1,则判定当前的微包为报文的最后一个微包。
4.根据权利要求3所述的基于异步结构的集成电路片上通讯方法,其特征在于所述报文的内容域包括目标地址、数据、报文类型以及自定义属性,所述主设备或者从设备在发送报文时根据所述目标地址来决定发送报文的目标,所述主设备或者从设备根据数据和报文类型来决定报文的具体执行方法。
5.一种基于异步结构的集成电路片上通讯装置,其特征在于包括一个主设备和多个从设备,所述主设备通过请求总线直接连接到每一个从设备,所述多个从设备依次串联连接形成从设备应答链,且位于从设备应答链链头的从设备与主设备相连;所述从设备通过请求总线接收来自主设备的由微包构成的请求报文,所述从设备通过从设备应答链向主设备发送由微包构成的应答报文;当主设备向从设备发送报文时,首先由主设备将报文分割为微包,并通过所述请求总线广播进入微包传输状态;然后在微包传输状态下,主设备通过所述请求总线向所有从设备广播该报文的第一个微包,所有从设备读取微包后通过所述从设备应答链依次传递请求微包握手成功信号,主设备收到请求微包握手成功信号后开始传递下一个微包,按上述过程传递微包直至最后一个微包传递完毕,完成该请求报文的传输过程;所有从设备在完成报文接收后,解析出其中的地址信息并与自己的地址空间进行匹配,若匹 配不成功,则抛弃该报文,若成功,则执行该报文对应的操作,若需要向主设备返回应答报文,则继续执行从设备向主设备发送报文;当从设备向主设备发送报文时,首先由从设备通过从设备应答链向上一级从设备发出应答报文有效信号并进入微包传输状态,然后在微包传输状态下发出第一个微包,上一级从设备若发现其应答接口空闲,则将此微包转发到更上一级从设备,如此依次传递,直到转发到主设备的应答接口 ;主设备接收该应答微包后,返回应答微包握手成功信号,通过从设备应答链的各级从设备依次传递下来,从设备获取此应答微包握手成功信号后,开始传递下一个微包,如此往复直至最后一个微包传递完毕,完成该应答报文的传输过程。
全文摘要
本发明公开了一种基于异步结构的集成电路片上通讯方法及装置,方法包括1)预先将主设备通过请求总线直接连接到每一个从设备请求接口,预先将多个从设备应答接口依次串联形成从设备应答链、将位于从设备应答链链头的从设备应答接口与主设备应答接口相连;2)主设备和从设备通讯时,从设备通过请求总线接收来自主设备由多个微包构成的请求报文,从设备通过从设备应答链向主设备发送由多个微包构成的应答报文;装置包括一个主设备和多个从设备,主设备通过请求总线直接连接到每一个从设备,多个从设备依次串联连接形成从设备应答链,从设备应答链链头的从设备与主设备相连。本发明具有长信号线少、占用硬件资源少、可扩展性好的优点。
文档编号G06F13/38GK102981992SQ20121049519
公开日2013年3月20日 申请日期2012年11月28日 优先权日2012年11月28日
发明者张明, 郭御风, 石伟, 罗莉, 龚锐, 邓宇, 任巨, 马爱永, 窦强, 王永文 申请人:中国人民解放军国防科学技术大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1