一种片上网络的路由节点微结构制造技术

技术编号:3544614 阅读:246 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种片上网络的路由节点微结构,该片上网络的路由节点微结构由头部译码模块、输入缓存模块、输入控制模块、输出仲裁模块、输出缓存模块和输出控制模块组成,头部译码模块对从上一级路由节点进行本级路由节点的数据进行头部分析,并将数据输入至输入缓存模块,输入缓存模块用于数据的临时存储,并在输入控制模块的作用下向输出仲裁模块输入数据;数据进入输出仲裁模块后,输出仲裁模块根据输出缓存模块的状态来决定是否向输出缓存模块输出数据,而输出控制模块则对整个输出链路进行控制,以实现对下一级路由接点传输数据。通过本发明专利技术所述的路由节点微结构,不仅可以实现片上网络的路由节点间的数据传输,还能大大提高传输效率。

【技术实现步骤摘要】

本专利技术涉及一种路由节点微结构,具体地说,涉及一种片上网络的路由节点微结构
技术介绍
随着电子技术的发展,复杂SoC受到越来越多的关注。在目前的技术条件下,复杂SoC需要的物理基础——单片上集成十亿个以上的门成为可能;同时,其广泛的应用范围,使得市场对复杂SoC的需求大大增加。复杂SoC的应用领域很多,从安全系统、控制系统、个人健康系统,到主流消费品领域,如多媒体处理、个人通信、个人的计算、娱乐、视频/图象等等。事实上,目前针对这些应用的专用IC中,大部份已经有了很高的复杂度。但是,随着科学研究和实现应用的逐渐深入,现有的专用IC越来越不能满足人们对具有更强大功能的器件的需求,更加复杂的SoC的实现技术便成为研究热点,一些新的理念和关键技术被提出来,并开始影响处理器的设计和复杂SoC的研发。目前最复杂的SoC,在一个芯片上所包含的处理器数目也不超过十数个,更多数量的处理器的设计会面临一系列困难。另一方面,是电子设计和制造技术的发展,可以在一个IC芯片上设计与集成足够多的晶体管。但是,设计者常常不能够充分开发和使用IC中所有的晶体管。到了2003年,各类实时处理SoC的复杂性,已经远远落后-->于现在的硅技术发展的水平。复杂SoC设计的生产力缺口已经较大,并有继续扩大的趋势。在目前的技术和需求的推动作用下,使用越来越多的处理器核和大量可重复使用的IP模块,将它们集成在一个硅芯片上,将是未来复杂SoC设计的基础。当处理器或IP数量达到上百或数百、甚至上千时,芯片内部采用什么通信结构就变得越来越重要。当前在SoC设计中,如SOPC技术、多处理器技术、SIMD技术等,总线是连接芯片上的各个IP或处理器的主要方式。但是,现有的总线结构却有如下的困难:一.总线能有效连接的部件数量较少,而且随着总线连接部件的数量增加,各个部件之间的冲突也会增加,这就会使得SoC的复杂性受到限制;二.随着总线连接部件数量的增加,总线长度也会随之增长,但是在SoC设计中,长的全局总线会造成SoC中的部件通信的瓶颈效应,从而降低通信效率,甚至引发阻塞;三.将较多部件挂接在同一总线上,就要求所有的部件都具有标准统一的总线接口,这会为各个部件的设计带来额外的开销;四.总线结构造成的通信瓶颈也会使得SoC的规模受到限制,由于不能提供高效的通信模式,使得能利用的芯片中的晶体管数量受到限制,从而造成SoC芯片性能受到限制。五.由于连接SoC中各个部件的是单一的总线,在进行扩展的时候,必须为需扩展的部件设计能用于总线的接口,且各个部件的接口-->必须统一,这就降低了SoC的设计灵活性和可扩展性。因此在复杂SoC设计中,随着越来越多的IP被集成在单个硅芯片上,可编程和可定制的片上通信结构越来越占据主导地位。由于有相当丰富且价格便宜的特定功能的IP核,设计的重心就会集中在:如何实现有效的片上通信。而在片上网络体系结构中,其各个部件的片上通信是通过部件所连接的路由节点来实现的,所以,路由节点是片上网络通信的关键部分。
技术实现思路
本专利技术的目的是提供一种片上网络的路由节点微结构,取代现有技术中片上网络采用的总线结构,解决现有技术中存在的缺陷,提高片上网络的通信效率和性能。为了实现上述目的,本专利技术所采用的技术方案如下:一种片上网络的路由节点微结构,由输入模块和输出模块组成,其中,输入模块包括:头部译码模块,负责对进入路由节点的数据进行头部分析,并将数据输入至数据缓存模块;输入缓存模块,用于缓存数据;输入控制模块,用于翻译握手协议和对数据写入输入缓存模块的过程进行控制;而输出模块包括:输出仲裁模块,主要作用是控制数据向输出缓存模块输入;输出缓存模块,用来存储输入端口传入的数据,并在输出控制器的控制下输出数据;输出控制模块,用于实现对输出链路的控制。-->所述头部译码模块进行头部分析的步骤包括:首先根据路由算法确定数据的输出端口;再向与输出端口对应的VOQ发送请求信号;头部译码模块接受到VOQ发回的允许信号后,通过虚拟通道选择器选择一个非空通道将数据输入至输入缓存模块。所述虚拟通道选择器通过RR调度算法来实现非空通道的选择,以及将数据输入至输入缓存模块。所述RR调度算法包括如下步骤:首先将CPU处理一个数据包的传输时间等分为若干个时间片,并为每个虚拟通道分配若干个时间片;然后将所有虚拟通道排成一个队列,并从队列的起点开始选择一个含有数据的虚拟通道作为第一个向输入缓存模块输入数据的非空通道;当第一个非空通道使用完自身所有的时间片后,若第一个非空通道内的数据尚未输入完毕,则停止输入,并将第一个非空通道排列至原队列的末尾,同时,按队列的先后顺序选择第二个非空通道,并进行数据输入;当第二个非空通道使用完自身所有的时间片后,若其数据尚未输入完毕,则停止输入,并将第二个非空通道排列至第一个非空通道之后,同时,按照新队列的先后顺序选择第三个非空通道,并进行数据输入;按照上述方法依次选择队列中所有的非空通道进行数据输入,直到所有的非空通道将数据全部输入至输入缓存模块。所述输入缓存模块由至少一组虚输出队列组成,每组虚输出队列又由至少一个虚拟通道组成,所有虚拟通道结构相同。所述时间片为在两个相邻路由节点之间传输一个完整数据包所-->需时间。所述输出仲裁模块根据状态机的状态来控制数据向输出缓存模块输入。所述输出仲裁模块控制数据向输出缓存模块输入的步骤包括:首先在状态机的初始状态,判断输出FIFO是否为空,若输出FIFO为空,则状态机状态保持不变;反之,则从输出FIFO中读出一个数据,状态机从其初始状态转移到头部检测状态,并进行头部检测;头部检测状态如检测到数据包头,那么状态机转移到数据传输状态进行数据传输;否则,状态机转回其初始状态,并从输出FIFO中读出下一个数据进行头部检测;状态机处于数据传输状态时,状态机根据下一级路由接点的信息进行数据传输,知道数据传输完毕;数据传输完毕后,若输出FIFO为非空,状态机直接转移至头部检测状态,进行数据包头检测,并进行数据传输;反之,则回到状态机的初始状态等待新数据到来。所述输出控制模块根据本级输出缓存模块的状态对下级路由节点的输入端口提出请求,并接受下级路由节点的输入端口发回的响应信号,根据响应信号来判断是否输出数据。对于具有多处理器的复杂SoC系统来说,路由节点的主要作用是能独立于处理器完成并行的数据交换和通信,实现片上的网络通信,并尽可能的提高通信效率,保证通信质量。本专利技术将路由节点之间的微结构分为输入模块和输出模块,并对输入模块和输出模块进行分别设计,并在数据传输过程中采用特殊的-->调度算法进行控制,使数据传输效率得到提高,下面对输入模块和输出模块进行详细说明。一.输入模块输入模块包括头部译码模块(HD)、输入缓存模块(IB)和输入控制模块(IC)。1.头部译码模块(HD)头部译码模块负责对进入路由节点的数据进行头部分析,以确定数据的路由。经过路由分析后,就可以确定数据将从路由节点的哪一个输出端口输出,并将数据发送到输入缓存中对应输出端口的VOQ中。如果该组VOQ有多个虚通道,则通过虚拟通道选择器选择一个非空通道输入数据包,然后,向相应方向的VOQ发送请求信号,并接收VOQ传回的允许信号,将输入送入VOQ中进行缓存。其中本文档来自技高网
...

【技术保护点】
一种片上网络的路由节点微结构,其特征在于,所述片上网络的路由节点微结构包括输入模块和输出模块,其中,输入模块包括: 头部译码模块,负责对进入路由节点的数据进行头部分析,并将数据输入至数据缓存模块; 输入缓存模块,用于缓存数据; 输入控制模块,用于翻译握手协议和对数据写入输入缓存模块的过程进行控制; 而输出模块包括: 输出仲裁模块,主要作用是控制数据向输出缓存模块输入; 输出缓存模块,用来存储输入端口传入的数据,并在输出控制器的控制下输出数据; 输出控制模块,用于实现对输出链路的控制。

【技术特征摘要】
1.一种片上网络的路由节点微结构,其特征在于,所述片上网络的路由节点微结构包括输入模块和输出模块,其中,输入模块包括:头部译码模块,负责对进入路由节点的数据进行头部分析,并将数据输入至数据缓存模块;输入缓存模块,用于缓存数据;输入控制模块,用于翻译握手协议和对数据写入输入缓存模块的过程进行控制;而输出模块包括:输出仲裁模块,主要作用是控制数据向输出缓存模块输入;输出缓存模块,用来存储输入端口传入的数据,并在输出控制器的控制下输出数据;输出控制模块,用于实现对输出链路的控制。2.根据权利要求1所述的片上网络的路由节点微结构,其特征在于,所述头部译码模块进行头部分析的步骤包括:首先通过路由算法确定数据的输出端口;再向与输出端口对应的VOQ发送请求信号;头部译码模块接受到VOQ发回的允许信号后,通过虚拟通道选择器选择一个非空通道将数据输入至输入缓存模块。3.根据权利要求2所述的片上网络的路由节点微结构,其特征在于,所述虚拟通道选择器通过RR调度算法来实现非空通道的选择,以及将数据输入至输入缓存模块。4.根据权利要求3所述的片上网络的路由节点微结构,其特征在于,所述RR调度算法包括如下步骤:首先将CPU处理一个数据包的传输时间等分为若干个时间片,并为每个虚拟通道分配若干个时间片;然后将所有虚拟通道排成一个队列,并从队列的起点开始选择一个含有数据的虚拟通道作为第一个向输入缓存模块输入数据的非空通道;当第一个非空通道使用完自身所有的时间片后,若第一个非空通道内的数据尚未输入完毕,则停止输入,并将第一个非空通道排列至原队列的末尾,同时,按队列的先后顺序选择第二个非空通道,并进行数据输入;当第二个非空通道使用完自身所有的时间片后,若其数据尚未输入完毕,则停止输入,并将第二个非空通道排列...

【专利技术属性】
技术研发人员:武畅李玉柏李桓柴松杨中明王坚
申请(专利权)人:电子科技大学
类型:发明
国别省市:90[中国|成都]

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

1