CN102185751B - 一种基于快速通道技术的单周期片上路由器 - Google Patents
一种基于快速通道技术的单周期片上路由器 Download PDFInfo
- Publication number
- CN102185751B CN102185751B CN2010105845504A CN201010584550A CN102185751B CN 102185751 B CN102185751 B CN 102185751B CN 2010105845504 A CN2010105845504 A CN 2010105845504A CN 201010584550 A CN201010584550 A CN 201010584550A CN 102185751 B CN102185751 B CN 102185751B
- Authority
- CN
- China
- Prior art keywords
- module
- channel
- passage
- arbitration
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于快速通道技术的单周期片上路由器,它由P个输入端口、一个快速仲裁模块、一个传输仲裁模块、一个通道仲裁模块、一个超前信号管理模块、一个交叉开关与P个输出端口组成。输入端口由通道分配模块、缓冲存储模块、快速通道模块、虚拟通道模块、传输请求发送单元和通道请求发送单元组成。快速仲裁模块由第一应答控制部件和P个快速仲裁部件组成。通道仲裁模块由通道请求分发部件,P个通道仲裁部件和第二应答控制单元组成。传输仲裁模块由传输请求分发部件,P个传输仲裁部件、第三应答控制部件组成。超前信号管理模块由P个计算存储部件与P个信号驱动部件组成。本发明能实现单周期转发操作,适应于各类路由算法。
Description
技术领域
本发明涉及微处理器芯片内部通信节点,尤其指一种支持单周期报文转发的片上路由器。
背景技术
经过近三十年的发展,半导体工艺已经具备了单颗芯片集成几十亿只晶体管的能力,为高性能微处理器发展创造了源源不断的动力,但也给芯片设计带来了新的机遇与挑战。目前,针对如何利用众多晶体管资源,工业界普遍意识到“众核”处理器作为提高计算性能的最有效手段,将成为未来微处理器结构的主流发展趋势。在这种背景下,单颗芯片集成数百个处理器核,微处理器的性能瓶颈将转移到诸多处理器核之间的互连通信问题上。例如,1GHz主频下20毫米铜线的总线信号传输延迟将超过80个时钟周期,这将无疑成为未来“众核”处理器性能提升的关键瓶颈。
结合目前半导体工艺的发展现状,在微处理器芯片内部设计高效的互连结构来支持大量处理器核之间低延迟、高带宽的数据通信,已成为未来芯片设计研究领域中的关键性问题。W.J.Dally借鉴于网络领域的概念首先提出了一种适应于超深亚微米的片内通信解决方案——片上互连网络。片上互连网络由适配器、路由节点和传输链路三类基本构件组成,适配器连接处理器核与路由节点,路由节点负责网络报文的路由转发,传输链路连接相邻路由节点。片上互连网络的特点在于利用路由节点将众多处理器核连接成为一个通信实体,路由节点之间采用报文交换方式通信,这样不仅支持更高的通信带宽,更容易满足多个处理器核并行通信的迫切需求,而且还更方便于控制超深亚微米条件下的线延迟,有利于提高主频等。
片上互连网络虽然能够有效解决信号传输的长线延迟问题,但随着“众核”微处理器内处理器核数量的持续增加,报文传输经过更多中间节点所造成的传输延迟问题也将会重新突出。例如,Intel公司的80核微处理器“TeraScale”与Tilera公司的64核微处理器“Tile64”的片上互连网络分别配置了5级与4级流水线的片上路由器,较深的流水线让二者的平均传输延迟高达35与26个周期。其原因在于单个报文在传统路由器中需要串行执行路由计算、通道仲裁、传输仲裁等操作,耗时远超过了链路传输所耗时间,成为了制约片上互连网络性能提升的主要瓶颈。为此,研究并开发具有低延迟特征的片上路由器结构对于当前微处理器芯片设计具有非常重要的实用价值。
为了将网络报文在路由器处的转发时间降低到理想情况下的单个时钟周期,全世界的科研人员都进行了不懈的努力,发明了各种各样的新方法,这些方法可以归为四类:(1)猜测传输:报文到达后无需经过路由计算操作,直接根据历史信息对输出方向进行猜测后立即传输;(2)跳跃旁路:如果报文在相同方向多个连续节点上持续传输,可以采取旁路机制单周期跳跃通过中间节点,快速抵达目标节点;(3)提前仲裁:报文到达下游路由节点之前事先发送自己的目标地址,让下游路由节点可以提前进行传输仲裁及通道仲裁,等报文到达之后根据仲裁结果立刻输出;(4)静态配置:借助传输路径频率统计加速那些高频路径上的报文传输。
1.[猜测传输]
借鉴于宏观网络相关概念,研究人员相继设计出了基于猜测传输的片上路由器结构,例如:LLVCR(R.Mullins et al,2004;R.Mullins et al,2006)和PR(H.Matsutani,et.al,2009)等,这类结构强调报文到达后不需要执行路由计算与仲裁操作,直接根据历史信息猜测输出方向后便立即传输。如果路由计算证明猜测成功,且传输仲裁结果表明无冲突产生,那么报文可以顺利流向下游节点;否则,作废上述传输操作,并遵循传统路由器的多周期流水线执行重传。实际上,PR(H.Matsutani,et.al,2009)已经发现各种猜测算法难以适应于流量负载变化,最好的猜测效果只能达到约65%的命中率,一旦猜测失败,报文需要花费三个周期流过路由器,难以实现真正的单周期路由转发,并且还会产生大量的作废、重传功耗。
2.[跳跃旁路]
在采取XY路由的片上互连网络中,大多数报文沿着固定方向不断向前传输,为此,研究人员专门设计了基于跳跃旁路机制的路由器结构,如EVC(A.Kumar,et.al,2007)。在该结构之中,报文每次传输一次性经过包含若干节点的笔直路径,除了在路径的起始节点与终止节点处执行多周期的流水线操作之外,在其余中间节点处利用旁路机制可以实现单周期的路由转发,其原因在于向前传输的报文在中间节点处已经无需进行路由计算,并且已经被赋予了最高传输优先级。然而,该结构主要存在两个方面缺陷:首先,报文在大量起始节点、终止节点处仍需要消耗多个时钟周期进行传输;其次,该结构无法应用于自适应路由与源路由策略,如果采取这些路由策略,报文不断变换传输方向将会使它流过大多数路由节点时花费多个时钟周期。
3.[提前仲裁]
这类方法的主要思想是指:在报文到达之前,事先发送报文目标地址信息来通知下游节点提前完成报文的传输仲裁与通道仲裁操作,待报文到达之后立即根据仲裁结果配置交叉开关,直接让报文流向目标输出模块。例如A.Kumar的SNR结构,它设计了冲突检测排序、高速交叉开关等大规模电路让路由器在报文到达前提前执行传输仲裁与通道仲裁操作,并加快流过交叉开关的速度。然而,这种结构中的单周期传输是以输入端口缓冲全部空闲为前提条件的,只要输入端口存在滞留报文就无法提前完成传输仲裁与通道仲裁操作。为此,该路由器结构只能在极低网络流量下才能实现报文的单周期传输操作,适用面较窄。
4.[静态配置]
为了实现每个路由节点处的单周期路由转发,人们还发展了一种静态配置的方法。具体的做法是:采取固化硬件电路使向特定方向传输的报文具有最高优先级,报文无需进行任何仲裁操作便可直接传输到默认的输出端口模块。例如PCR(G.Michelogiannakis,et.al,2007)便通过统计报文输出方向的概率来预先设置硬件电路。在嵌入式多核数字信号处理器领域,大多数报文都沿特定方向进行传输,这种方法可以有效减少传输延迟。但是这种结构的最大缺陷是,预先固化的电路无法适应于网络负载变化,在动态负载情况下,大量报文向非默认的输出端口模块进行传输时都会花费多个时钟周期。
综合上述四种单周期路由器结构,不难发现它们都存在着一些不足之处。猜测传输方法命中率不高,大量路由节点处的错误猜测不仅会导致大量多周期的路由转发操作,而且还将带来大量硬件作废与重传功耗;跳跃旁路方法也无法实现所有节点处的单周期节点传输,即在许多起始节点、终止节点仍需花费多个时钟周期,另外,该方法通用性较差,无法应用于自适应路由与源路由策略;提前仲裁方法对网络流量具有严格要求,仅在输入端口缓冲全部空闲时才可以实现单周期报文传输,适用面较窄,大多数流量负载下大量报文都会需要花费多个周期穿过路由器;而静态配置方法采取了固化的硬件配置来适应特殊的网络负载,其灵活性较差,在动态负载情况下,大量报文都将无法在单周期内流过路由器节点。总而言之,在片上互连网络领域,为了降低网络传输延迟,真正实用的单周期片上路由器结构应该强调四项基本要求:1)只要新流入报文与其它报文无冲突发生就应该支持单周期报文传输;2)适应各类路由算法;3)适应各类流量负载;4)简化硬件逻辑设计。当前上面所述的四种片上路由器结构均未能满足这些要求,专利与文献中也未见关于具有上述良好特征的单周期片上路由器结构的相关报道。
发明内容
本发明要解决的技术问题是针对现有片上路由器转发报文需花费多个时钟周期,或者虽然支持单周期传输但适用面窄、通用性差等问题,提出一种具有单周期转发特征的片上路由器,只要报文之间没有冲突发生便能实现单周期转发操作,适应于各类路由算法与流量负载,硬件复杂性较低,为片上互连网络提供更低的传输延迟与更高的通信带宽。
本发明基于快速通道技术的片上路由器由P个输入端口、一个快速仲裁模块、一个传输仲裁模块、一个通道仲裁模块、一个超前信号管理模块、一个交叉开关与P个输出端口组成(P为大于1的整数)。
输入端口与上游路由器、本地路由器的快速仲裁模块、传输仲裁模块、通道仲裁模块、超前信号管理模块和交叉开关相连。输入端口从上游路由器接收报文切片,对报文切片进行缓存;从传输仲裁模块接收输出端口传输状态,根据输出端口传输状态给输入报文分配虚拟通道模块或快速通道模块。输入端口发送传输请求给传输仲裁模块,发送通道请求给通道仲裁模块,发送快速传输请求给快速仲裁模块,从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,从快速仲裁模块接收快速仲裁应答。在快速仲裁应答有效情况下,输入端口发送快速通道报文切片给交叉开关;在快速仲裁应答无效,而传输仲裁应答与通道仲裁应答均有效情况下,输入端口发送虚拟通道报文切片给交叉开关。快速通道报文切片与虚拟通道报文切片分别指被分配快速通道模块与虚拟通道模块的报文切片。输入端口发送由上游路由器分配的通道逻辑编号给超前信号管理模块,从超前信号管理模块接收下游路由方向。输入端口还发送通道反馈信号给上游路由器。
快速仲裁模块的主要功能是对所有快速传输请求进行仲裁,它与P个输入端口、通道仲裁模块、传输仲裁模块、超前信号管理模块和交叉开关相连。快速仲裁模块从P个输入端口接收快速传输请求,采用轮循方法对所有快速传输请求进行仲裁,将P个输出端口的快速仲裁结果发送给超前信号管理模块,将快速仲裁应答发送给P个输入端口;对所有快速传输请求进行或操作来产生各输出端口的快速传输状态,将P个输出端口的快速传输状态发送给通道仲裁模块、传输仲裁模块与超前信号管理模块;对P个输出端口快速仲裁结果进行拼接操作来产生快速仲裁配置Config1,将快速仲裁配置Config1发送给交叉开关。拼接操作指将位宽为wl(l=1,…,M)的M个信号按位拼接成位宽为的信号,M为大于1的整数,wl为大于等于1的整数。
传输仲裁模块的主要功能是对所有传输请求进行仲裁,它与P个输入端口、快速仲裁模块、交叉开关相连。传输仲裁模块从P个输入端口接收传输请求,对所有传输请求进行或运算来产生各输出端口的传输状态,将P个输出端口的传输状态发送给P个输入端口,用于输入端口为输入报文选择虚拟通道模块或快速通道模块;对从P个输入端口接收的传输请求进行仲裁,当从快速仲裁模块接收的输出端口快速传输状态无效时,产生传输仲裁应答发送给P个输入端口,产生传输仲裁配置Config2发送给交叉开关。
通道仲裁模块的主要功能是对所有通道请求进行仲裁,并分配通道逻辑编号,与下游路由器、本地路由器输入端口、快速通道模块和超前信号管理模块相连。通道仲裁模块从下游路由器接收通道反馈信号,根据通道反馈信号回收由下游路由器释放的通道逻辑编号;从快速通道模块接收输出端口快速传输状态,从本地路由器P个输入端口接收通道请求,采用轮循方法对通道请求进行仲裁,在第i输出端口(i=1,…,P)的快速传输状态无效时,发送第i输出端口的通道仲裁结果给超前信号管理模块,并发送通道仲裁应答给第i输入端口。通道仲裁模块还给通道仲裁获胜报文或快速仲裁获胜报文分配通道逻辑编号,将分配的通道逻辑编号发送给超前信号管理模块,用于超前信号管理模块发送通道仲裁获胜报文或快速仲裁获胜报文的超前信号。通道逻辑编号指本地路由器给下游路由器输入报文分配的临时编号,用于下游路由器来区分不同输入报文,当输入报文从下游路由器离开时,下游路由器释放该临时编号。通道逻辑编号的位宽为为输入端口内虚拟通道模块与快速通道模块总数,表示对log2N上取整)。
超前信号管理模块的主要功能是根据输入报文的超前信号计算下游路由方向,发送当前输入报文的下游路由方向给输入端口,它与上游路由器、下游路由器、本地路由器P个输入端口、通道仲裁模块及快速通道模块相连。超前信号管理模块从上游路由器接收超前信号,采用常规路由算法计算下游路由方向,更新超前信号中的下游路由方向信息。超前信号管理模块从P个输入端口接收由上游路由器分配的通道逻辑编号,查询下游路由方向信息,发送下游路由方向信息给P个输入端口。超前信号管理模块从通道仲裁模块接收输出端口通道仲裁结果以及由本地路由器分配的通道逻辑编号,从快速仲裁模块接收输出端口快速传输状态以及输出端口快速仲裁结果,当输出端口快速传输状态有效时,根据输出端口快速仲裁结果选择快速仲裁获胜报文的超前信号,利用本地路由器分配的通道逻辑编号替换超前信号中的通道逻辑编号信息,发送超前信号给下游路由器;当输出端口快速传输状态无效时,根据输出端口通道仲裁结果选择通道仲裁获胜的超前信号,利用本地路由器分配的通道逻辑编号替换超前信号中的通道逻辑编号信息,发送超前信号给下游路由器。常规路由算法指维序路由、最小路径路由算法等。
网络中的每个报文由多个切片组成,切片分为三种类型:头切片、体切片和尾切片。每个报文由一个头切片、L-2个体切片及一个尾切片构成(L是2的整数次幂)。任意切片都由四个域构成:切片传输标识、切片类型、通道逻辑编号与数据体。切片传输标识域宽度为1,指明路由器输入端口上是否存在报文切片输入。切片类型域位宽为W,指明当前切片属于哪种类型,W一般为3,切片类型域最高位指明了当前切片是否属于头切片。数据体域位宽为D,指明当前切片有效载荷,D一般为128。头切片数据体域至少包含四个子域:下游路由方向、本地路由方向、目标地址与报文长度。下游路由方向与本地路由方向子域位宽均为P,分别指明报文在下游路由器与本地路由器中传输方向。目标地址子域位宽为S,指明报文传输的目标路由器地址,S为正整数,一般为4到8。报文长度子域位宽为log2L,指明报文中的切片数量。
每个输入端口由通道分配模块、缓冲存储模块、快速通道模块、N-1个虚拟通道模块、传输请求发送单元和通道请求发送单元组成。通道分配模块的主要功能是为输入报文分配快速通道模块或虚拟通道模块,它与上游路由器、本地路由器的传输仲裁模块和超前信号管理模块、所属输入端口的缓冲存储模块、快速通道模块和N-1个虚拟通道模块相连。通道分配模块从上游路由器接收报文,从传输仲裁模块接收输出端口传输状态,根据输入报文的下游路由方向对输出端口传输状态进行多路选择,产生快速通道使用标识,在快速通道使用标识有效或无效时,分别给输入报文分配快速通道模块或虚拟通道模块,并产生缓冲存储模块写地址,将缓冲存储模块写地址及输入报文发给缓冲存储模块。如果分配快速通道模块,通道分配模块发送通道使能、本地路由方向、报文长度、切片传输标识、由上游路由器分配的通道逻辑编号给快速通道模块,发送通道使能给缓冲存储模块;如果分配虚拟通道模块,通道分配模块发送通道使能、本地路由方向、报文长度、切片传输标识、由上游路由器分配的通道逻辑编号给虚拟通道模块。通道分配模块从上游路由器接收报文,发送由上游路由器分配的通道逻辑编号给超前信号管理模块,从超前信号管理模块接收下游路由方向信息来更新输入报文的下游路由方向子域。通道分配模块还从快速通道模块或N-1个虚拟通道模块接收释放信号以及由快速通道模块或虚拟通道模块释放的通道逻辑编号,将释放信号与释放通道逻辑编号一起作为通道反馈信号发送给上游路由器,用于上游路由器回收通道反馈信号中的通道逻辑编号。
通道分配模块由通道地址产生单元、通道状态表格、空闲通道跟踪单元、通道分发单元、通道流反馈控制单元、使能单元以及更新单元组成。
通道地址产生单元主要用于记录快速通道模块与虚拟通道模块的写地址,它由通道地址表格与地址更新器组成。通道地址产生单元从通道分发单元接收通道物理编号,从上游路由器接收切片传输标识、切片类型和通道逻辑编号,将分配给输入报文的虚拟通道模块或快速通道模块的写地址发送给缓冲存储模块,同时对分配给输入报文的虚拟通道模块或快速通道模块的写地址进行更新。通道物理编号是指本地路由器给输入报文实际分配的快速通道模块或虚拟通道模块的编号。通道地址表格是一个深度为N的寄存器文件,包含三个写端口和三个读端口,用于存储各快速通道模块与虚拟通道模块的写地址。地址更新器与上游路由器、通道地址表格、通道分发单元和缓冲存储模块相连,它从上游路由器接收切片类型、切片传输标识和通道逻辑编号,从通道分发单元接收通道物理编号。当切片传输标识以及切片类型最高位均有效时,地址更新器将右移log2L位后的通道物理编号作为写地址发送给缓冲存储模块,发送通道逻辑编号给通道地址表格写地址端口,发送右移log2L位后的通道物理编号给通道地址表格写数据端口,发送有效信号给通道地址表格写控制端口,更新输入报文所在虚拟通道模块或快速通道模块的写地址。当切片传输标识有效但接收切片类型最高位无效时,地址更新器发送通道逻辑编号给通道地址表格读地址端口与写地址端口,发送有效信号给通道地址表格读控制端口,从通道地址表格读数据端口读出数据作为写地址发送给缓冲存储模块;同时,地址更新器发送有效信号给通道地址表格写控制端口,将写地址加1之后发送给通道地址表格写数据端口,将输入报文所在虚拟通道模块或快速通道模块的写地址加1。
通道状态表格是一个位宽为N的寄存器,各通道状态位记录一个快速通道模块或虚拟通道模块的空闲状态,通道状态位有效表示快速通道模块或虚拟通道模块闲置,通道状态位无效表示快速通道模块或虚拟通道模块正忙。通道状态表格与上游路由器、通道分发单元、通道流反馈控制单元、空闲通道跟踪单元相连。通道状态表格一方面从通道分发单元接收分配的通道物理编号,从上游路由器接收切片类型,如果切片类型最高位有效,分配给该切片的通道物理编号所指的通道状态位被置为无效。通道状态表格一方面从通道流反馈控制单元接收释放信号和释放通道编号,如果释放信号有效,释放通道编号所指的通道状态位被置为有效。释放通道编号指本地路由器给当前输入端口流出报文所分配的通道物理编号。
空闲通道跟踪单元与通道分发单元、通道状态表格相连,它从通道状态表格读取通道状态,按照虚拟通道模块S1>S2>…>SN-1分配优先级,向通道分发单元发送空闲快速通道模块的通道物理编号、组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,组合A={S1,…,SN-3,SN-2},组合B={S1,…,SN-3,SN-1}。
通道分发单元由一个P-1:1多选器和两个2:1多选器组成,它与上游路由器、通道状态表格、通道地址产生单元、使能单元、空闲通道跟踪单元以及传输仲裁模块相连。通道分发单元从上游路由器接收输入报文,从空闲通道跟踪单元接收空闲快速通道的通道物理编号、组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,从传输仲裁模块接收输出端口传输状态,依据输出端口传输状态给输入报文分配虚拟通道模块或快速通道模块,发送分配的通道物理编号给通道状态表格、通道地址产生单元和使能单元。P-1:1多选器从上游路由器接收输入报文的下游路由方向,从传输仲裁模块接收输出端口传输状态,根据下游路由方向对输出端口传输状态进行多路选择,得到目标输出端口的传输状态,作为快速通道使用标识发送给第二2:1选择器。第一2:1选择器从空闲通道跟踪单元接收组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,从上游路由器接收输入报文切片类型,根据切片类型最高位对组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号进行两路选择,结果作为预分配虚拟通道模块的通道物理编号发送给第二2:1选择器。第二2:1选择器从P-1:1多选器接收快速通道使用标识,从第一2:1选择器接收预分配虚拟通道模块的通道物理编号,从空闲通道跟踪单元接收快速通道模块的通道物理编号,根据快速通道使用标识对快速通道模块的通道物理编号与预分配虚拟通道模块的通道物理编号进行2路选择,结果作为分配的通道物理编号发送给通道状态表格、通道地址产生单元与使能单元。
通道流反馈控制单元与通道状态表格、所属输入端口的快速通道模块和N-1个虚拟通道模块及上游路由器相连,从所属输入端口的快速通道模块与N-1个虚拟通道模块接收释放信号以及释放通道逻辑编号。如果发现输入端口内任意虚拟通道模块或快速通道模块的释放信号有效,通道流反馈控制单元将从该虚拟通道模块或快速通道模块接收的释放信号与释放通道逻辑编号作为通道流反馈信号发送给上游路由器;将该虚拟通道模块或快速通道模块的通道物理编号作为释放通道编号发送给通道状态表格,置释放通道编号所指的通道状态位为有效。
使能单元与通道分发单元、所属输入端口的快速通道模块与N-1个虚拟通道模块相连,从通道分发单元接收通道物理编号,从上游路由器接收报文切片,当报文切片的切片类型最高位有效时,将通道物理编号所指的通道使能信号置为有效,其余通道使能信号置为无效,发送所有通道使能信号给各快速通道模块与虚拟通道模块。
更新单元与上游路由器、超前信号管理模块和所属输入端口的缓冲存储模块相连,它从上游路由器接收报文切片,从超前信号管理模块接收下游路由方向信息,当输入报文切片的切片类型最高位有效时,利用下游路由方向信息更新输入报文中的下游路由方向子域,然后发送报文切片给缓冲存储模块。
缓冲存储模块主要对输入报文进行存储,它由缓冲控制器与缓冲存储器组成,与所属输入端口的通道分配模块、快速通道模块、N-1个虚拟通道模块、传输仲裁模块及交叉开关相连。缓冲存储模块从通道分配模块接收写地址和报文切片,从快速通道模块与N-1个虚拟通道模块接收写使能,在写使能或输入报文切片类型最高位有效时根据写地址来存储报文切片。缓冲存储模块从快速通道模块接收读使能、读地址及旁路使能,从N-1个虚拟通道模块接收读使能及读地址,从传输仲裁模块接收传输仲裁应答,在读使能有效时,根据传输仲裁应答对读地址进行多路选择,交叉开关根据多路选择结果读取报文切片;在旁路使能有效时,交叉开关根据从通道分配模块接收的写地址读取报文切片。
缓冲控制器是产生缓冲存储器访问信号的逻辑电路,与通道分配模块、快速通道模块、N-1个虚拟通道模块、传输仲裁模块、缓冲存储器相连。缓冲控制器从通道分配模块接收报文切片类型,从快速通道模块与N-1个虚拟通道模块接收写使能,对报文切片类型最高位与所有写使能进行或操作,发送操作结果给缓冲存储器的写控制端口;从快速通道模块与N-1个虚拟通道模块接收读地址,从传输仲裁模块接收传输仲裁应答,对传输仲裁应答进行锁存,根据锁存后的传输仲裁应答对所有读地址进行多路选择,发送选择结果给缓冲存储器的第一读地址端口;从快速通道模块与N-1个虚拟通道模块接收读使能,对所有读使能进行或操作,发送操作结果给缓冲存储器的第一读控制端口;从通道分配模块接收写地址,对写地址进行锁存,将锁存后的写地址作为第二读地址信号发送给缓冲存储器的第二读地址端口;从快速通道模块接收旁路使能,将旁路使能发送给缓冲存储器第二读控制端口。
缓冲存储器是深度为N×L的寄存器文件,包含3个写端口和6个读端口,与通道分配模块、缓冲控制器、交叉开关相连。缓冲存储器的写数据端口与写地址端口分别从通道分配模块接收报文切片与写地址,写控制端口从缓冲控制器接收写控制信号。缓冲存储器第一读控制端口与第一读地址端口分别从缓冲控制器接收第一读控制信号与第一读地址信号,从第一读数据端口读出的虚拟通道报文切片被发送给交叉开关。缓冲存储器的第二读控制端口与第二读地址端口从缓冲控制器分别接收第二读控制信号与第二读地址信号,从第二读数据端口读出的快速通道报文切片被发送给交叉开关。
虚拟通道模块由第一读计数器、第一写计数器和虚拟通道状态机组成,它与传输请求发送单元、通道请求发送单元、传输仲裁模块、通道仲裁模块、通道分配模块和缓冲存储模块相连。虚拟通道模块从通道分配模块接收通道使能、报文长度、切片传输标识、本地路由方向及通道逻辑编号,如果通道使能有效,激活虚拟通道状态机,发送写使能、读使能、读地址给缓冲存储模块,发送传输请求给传输请求发送单元,发送通道请求给通道请求发送单元,并从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,等待报文传输完毕,发送释放信号、释放通道逻辑编号给通道分配模块。第一读计数器位宽为log2L,与通道分配模块、传输仲裁模块、虚拟通道状态机相连,它从通道分配模块接收通道使能、报文长度,从传输仲裁模块接收传输仲裁应答,然后发送第一读计数器的值给虚拟通道状态机。当从通道分配模块接收的通道使能有效时,第一读计数器取值为从通道分配模块接收的报文长度;当从传输仲裁模块接收的传输仲裁应答有效时,第一读计数器值减1。第一写计数器的位宽为log2L,与通道分配模块、虚拟通道状态机相连,它从通道分配模块接收通道使能信号、报文长度和切片传输标识,然后发送第一写计数器的值给虚拟通道状态机。当从通道分配模块接收的通道使能有效时,第一写计数器的值为从通道分配模块接收的报文长度;当从通道分配模块接收的报文切片中切片传输标识有效且第一写计数器值非零时,第一写计数器值减1。
虚拟通道状态机与第一读计数器、第一写计数器、传输仲裁模块、通道仲裁模块、所属输入端口的传输请求发送单元、通道请求发送单元、通道分配模块和缓冲存储模块相连。虚拟通道状态机由四个状态组成,“00”状态表示通道空闲;“01”状态表示等待通道仲裁应答;“10”表示等待传输仲裁应答;“11”表示通道仲裁应答、传输仲裁应答均已有效。上电复位时,虚拟通道状态机处于状态“00”,若发现从通道分配模块接收的通道使能信号有效,锁存从通道分配模块接收的通道逻辑编号,转向状态“01”。虚拟通道状态机处于“01”状态时,发送通道请求给通道请求发送单元,发送传输请求给传输请求发送单元,如果第一写计数器值非零,则发送写使能给缓冲存储模块;如果从通道仲裁模块接收的通道仲裁应答有效,但从传输仲裁模块接收的传输仲裁应答无效,转移到“10”状态;如果通道仲裁应答且传输仲裁应答均有效,转移到“11”状态。虚拟通道状态机处于“10”状态时,发送传输请求给传输请求发送单元,如果第一写计数器值非零,则发送写使能给缓冲存储模块;如果传输仲裁应答有效,转移到“11”状态。虚拟通道状态机处于“11”时,发送传输请求给传输请求发送单元,发送读使能信号与读地址给缓冲存储模块,如果第一写计数器值非零,发送写使能信号给缓冲存储模块;如果第一读计数器值为零,转移到状态“00”,并发送释放信号与锁存的通道逻辑编号给通道分配模块。
快速通道模块由第二读计数器、第二写计数器和快速通道状态机组成,它与快速仲裁模块、传输仲裁模块、通道仲裁模块以及所属输入端口的传输请求发送单元、通道请求发送单元、通道分配模块和缓冲存储模块相连。快速通道模块从通道分配模块接收通道使能、报文长度、切片传输标识、本地路由方向及通道逻辑编号,如果通道使能有效,激活快速通道状态机,发送写使能、读使能、读地址与旁路使能信号给缓冲存储模块,发送快速传输请求给快速仲裁模块,发送传输请求给传输请求发送单元,发送通道请求给通道请求发送单元,并从快速仲裁模块接收快速仲裁应答,从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,等待报文传输完毕,发送释放信号、释放通道逻辑编号给通道分配模块。第二读计数器位宽为log2L,与通道分配模块、传输仲裁模块、快速仲裁模块及快速通道状态机相连,它从通道分配模块接收通道使能、报文长度,从传输仲裁模块接收传输仲裁应答,从快速仲裁模块接收快速仲裁应答,发送第二读计数器的值给快速通道状态机。当从通道分配模块接收的通道使能有效时,第二读计数器的值为从通道分配模块接收的报文长度,当从快速仲裁模块接收的快速仲裁应答或从传输仲裁模块接收的传输仲裁应答有效时,读计数器值减1。第二写计数器的位宽为log2L,与通道分配模块、快速通道状态机相连,它从通道分配模块接收通道使能、报文长度和切片传输标识,发送第二写计数器的值给快速通道状态机。当从通道分配模块接收的通道使能时,第二写计数器的值为从通道分配模块接收的报文长度;当从通道分配模块接收的报文切片中切片传输标识有效且第二写计数器值非零时,第二写计数器值减1。
快速通道状态机与第二读计数器、第二写计数器、快速仲裁模块、传输仲裁模块、通道仲裁模块、所属输入端口的传输请求发送单元、通道请求发送单元、通道分配模块和缓冲存储模块相连。快速通道状态机共有六个状态,“000”状态表示通道空闲;“001”状态表示等待快速仲裁应答;“010”状态表示快速传输;“011”表示等待通道仲裁应答;“100”表示等待传输仲裁应答;“101”表示通道仲裁应答、传输仲裁应答均有效。上电复位时,快速通道状态机处于状态“000”,若发现从通道分配模块接收的通道使能有效,锁存从通道分配模块接收的通道逻辑编号,转向状态“001”。快速通道状态机处于“001”状态时,发送快速传输请求给快速仲裁模块,发送旁路使能给缓冲存储模块,如果第二写计数器取值非零,发送写使能给缓冲存储模块;如果从快速仲裁模块接收的快速仲裁应答有效,则转移到“010”状态;如果从快速仲裁模块接收的快速仲裁应答无效,转移到“011”状态。快速通道状态机处于“010”状态时,发送旁路使能给缓冲存储模块,发送快速传输请求给快速仲裁模块,如果第二写计数器取值非零,发送写使能给缓冲存储模块;如果第二读计数器值为零,则转移到状态“000”,并发送释放信号与锁存的通道逻辑编号给通道分配模块。快速通道状态机处于“011”状态时,发送通道请求给通道请求发送单元,发送传输请求给传输请求发送单元,如果第二写计数器值非零,则发送写使能给缓冲存储模块;如果从通道仲裁模块接收的通道仲裁应答有效,但从传输仲裁模块接收的传输仲裁应答无效,则转移到“100”状态;如果通道仲裁应答、传输仲裁应答均有效,则转移到“101”状态。快速通道状态机处于“100”时,发送传输请求给传输请求发送单元,如果第二写计数器值非零,则发送写使能给缓冲存储模块;如果传输仲裁应答有效,则转移到“101”状态。快速通道状态机处于“101”时,发送传输请求给传输请求发送单元,发送读使能信号与读地址给缓冲存储模块,如果第二写计数器值非零,则发送写使能信号给缓冲存储模块;如果第二读计数器值为零,则转移到状态“000”,并发送释放信号与锁存的通道逻辑编号给通道分配模块。
传输请求发送单元接收来自所属输入端口快速通道模块和N-1个虚拟通道模块的传输请求,将所有传输请求进行拼接之后作为输入端口的传输请求发送给传输仲裁模块。
通道请求发送单元接收来自所属输入端口快速通道模块和N-1个虚拟通道模块的通道请求,将所有通道请求进行拼接之后作为输入端口的通道请求发送给通道仲裁模块。
快速仲裁模块由第一应答控制部件和P个快速仲裁部件组成,它与P个输入端口、通道仲裁模块、传输仲裁模块、超前信号管理模块与交叉开关相连。快速仲裁模块从P个输入端口接收快速传输请求,对所有快速传输请求进行或操作,产生各输出端口的快速传输状态,发送P个输出端口的快速传输状态给通道仲裁模块、传输仲裁模块及超前信号管理模块;采取轮循方法对P个输入端口的快速传输请求进行仲裁,将快速仲裁应答发给P个输入端口,将P个输出端口的快速仲裁结果发给超前信号管理模块;对P个输出端口快速仲裁结果进行拼接操作,产生快速仲裁配置Config1,将快速仲裁配置Config1发给交叉开关。
快速仲裁部件与P个输入端口和第一应答控制部件相连。第i个快速仲裁部件从P个输入端口接收快速传输请求,采用轮循方法对所有快速传输请求进行仲裁,将仲裁结果发给第一应答控制部件;对所有快速传输请求进行或操作产生第i输出端口的快速传输状态,将第i输出端口的快速传输状态发送给第一应答控制部件。
第一应答控制部件与P个快速仲裁部件、P个输入端口、传输仲裁模块、通道仲裁模块、超前信号管理模块和交叉开关相连。第一应答控制部件从快速仲裁部件分别接收P个仲裁结果,将P个仲裁结果作为输出端口快速仲裁结果发送给超前信号管理模块;将P个仲裁结果进行拼接之后作为快速仲裁配置Config1发送给交叉开关;将P个仲裁结果进行或操作之后作为快速仲裁应答发送给P个输入端口。第一应答控制部件还从P个快速仲裁部件接收P个快速传输状态,将P个快速传输状态发送给传输仲裁模块、通道仲裁模块和超前信号管理模块。
通道仲裁模块由通道请求分发部件,P个通道仲裁部件和第二应答控制单元组成,它与下游路由器、P个输入端口、快速仲裁模块及超前信号管理模块相连。通道仲裁模块从快速仲裁模块接收输出端口快速传输状态,从P个输入端口接收通道请求,采用轮循方法对所有通道请求进行仲裁,当输出端口快速传输状态无效时,发送输出端口仲裁结果给超前信号管理模块,发送通道应答给P个输入端口。通道仲裁模块从下游路由器接收通道反馈信号,回收由下游路由器释放的通道逻辑编号;同时,给通道仲裁获胜报文或快速仲裁获胜报文分配通道逻辑编号,将该通道逻辑编号发送给超前信号管理模块。
通道请求分发部件与P个输入端口、通道仲裁模块中P个通道仲裁部件相连,它从P个输入端口接收通道请求,给第i通道仲裁部件发送各输入端口向第i输出端口(i=1,…,P)的请求,其中,各输入端口向第i输出端口的请求位宽均为N,包括输入端口中快速通道模块及N-1个虚拟通道模块向第i输出端口的请求。
通道仲裁部件由PN:1通道仲裁单元、逻辑通道分发单元、通道逻辑编号表格组成,它与下游路由器、通道请求分发部件、第二应答控制部件、快速仲裁模块及超前信号管理模块相连。第i通道仲裁部件的PN:1通道仲裁单元是对PN个通道请求进行仲裁的电路,它从通道请求分发部件接收所有输入端口向第i输出端口的通道请求,采用轮循方法对所有通道请求进行仲裁,将通道仲裁结果发给同部件中的逻辑通道分发单元。第i通道仲裁部件的逻辑通道分发单元从PN:1通道仲裁单元接收通道仲裁结果,从快速仲裁模块接收第P输出端口快速传输状态,从通道逻辑编号表格接收各通道逻辑编号是否可用信息,如果快速传输状态无效,且通道逻辑编号表格中存在通道逻辑编号可用,逻辑通道分发单元发送通道仲裁结果给第二应答控制部件;如果通道逻辑编号表格中所有通道逻辑编号均不可用,或者快速传输状态有效,逻辑通道分发单元将通道仲裁结果清零之后发送通道仲裁结果给第二应答控制部件。如果通道逻辑编号表格中存在通道逻辑编号可用,第i通道仲裁部件的逻辑通道分发单元判断从PN:1通道仲裁单元接收的通道仲裁结果以及从快速仲裁模块接收的第i输出端口快速传输状态是否有效。如果通道仲裁结果或者快速传输状态有效,逻辑通道分发单元还根据各通道逻辑编号的可用信息,采用轮循方法选取一个可用的通道逻辑编号,发送该通道逻辑编号给超前信号管理模块与逻辑通道状态表格,同时发送分配信号给通道逻辑编号表格,置该通道逻辑编号为不可用。
通道逻辑编号表格是一个位宽为N的寄存器,每一位记录各通道逻辑编号是否可用,其中,第i位有效表示通道逻辑编号i可用,第i位无效表示通道逻辑编号i不可用。通道逻辑编号表格与逻辑通道分发单元、下游路由器相连,它一方面从逻辑通道分发单元接收分配信号以及通道逻辑编号,如果分配信号有效,则分配的通道逻辑编号所指寄存器位被置为无效;另一方面从下游路由器接收通道反馈信号,如果通道反馈信号中释放信号有效,则通道反馈信号中释放通道逻辑编号所指寄存器位被置为有效。
第二应答控制部件与P个通道仲裁部件、输入端口和超前信号管理模块相连。第二应答控制部件从P个通道仲裁部件接收通道仲裁结果,对所有通道仲裁结果进行或逻辑操作,并将操作结果的(i-1)×N+1位至i×N位(i=1,…,P)作为第i输入端口通道仲裁应答发送给第i输入端口。第二应答控制部件还将从第i通道仲裁部件接收的仲裁结果作为第i输出端口通道仲裁结果发送给超前信号管理模块。
传输仲裁模块由传输请求分发部件,P个传输仲裁部件以及第三应答控制部件组成,它与P个输入端口、快速仲裁模块和交叉开关相连。传输仲裁模块从P个输入端口接收传输请求,对所有传输请求进行或操作得到P个输出端口传输状态,发送输出端口传输状态给P个输入端口;采用轮循方法对P个输入端口传输请求进行仲裁,当从快速仲裁模块接收的输出端口快速传输状态无效时,产生传输仲裁应答发送给P个输入端口,产生传输仲裁配置Config2发送给交叉开关。
传输请求分发部件与P个输入端口、传输仲裁模块中P个传输仲裁部件相连,它从P个输入端口接收传输请求,给第i传输仲裁部件发送各输入端口向第i输出端口(i=1,…,P)的请求。各输入端口向第i输出端口的请求信号宽度为N,包括输入端口内快速通道模块与N-1个虚拟通道模块向第i输出端口的请求。
传输仲裁部件由PN:1传输仲裁单元、仲裁屏蔽单元和或逻辑单元组成,它与传输请求分发部件、快速仲裁模块及第三应答控制部件相连。第i传输仲裁部件的PN:1传输仲裁单元是对PN个传输请求的仲裁电路,它从传输请求分发部件接收所有输入端口向第i输出端口的传输请求,采取轮循方法对PN个传输请求进行仲裁,发送仲裁结果给同部件中的仲裁屏蔽单元。第i传输仲裁部件中仲裁屏蔽单元从PN:1传输仲裁单元接收仲裁结果,从快速仲裁模块接收第i输出端口快速传输状态,如果快速传输状态无效,将仲裁结果作为第i输出端口传输仲裁结果发送给第三应答控制部件;如果快速传输状态有效,将第i输出端口传输仲裁结果清零后发送给第三应答控制部件。第i传输仲裁部件的或逻辑单元从传输请求分发部件接收所有输入端口向第i输出端口的传输请求,对所有传输请求进行或操作得到第i输出端口的传输状态,发送第i输出端口的传输状态给第三应答控制部件。
第三应答控制部件与P个传输仲裁部件、输入端口与交叉开关相连。第三应答控制部件从P个传输仲裁部件接收P个输出端口传输仲裁结果,对所有传输仲裁结果进行拼接操作,产生传输仲裁配置Config2,发送传输仲裁配置Config2发送给交叉开关;对所有传输仲裁结果进行或操作,将操作结果的(i-1)×N+1位至i×N位(i=1,…,P)作为第i输入端口传输仲裁应答,发送第i输入端口传输仲裁应答给第i输入端口。第三应答控制部件还从P个传输仲裁部件接收P个输出端口传输状态,对所有传输状态进行拼接操作,产生输出端口传输状态,发送输出端口传输状态给P个输入端口。
超前信号管理模块由P个计算存储部件与P个信号驱动部件组成,与P个输入端口、通道仲裁模块、快速仲裁模块、上游路由器和下游路由器相连。超前信号管理模块从上游路由器接收超前信号,根据常规路由算法计算下游路由方向,更新超前信号中的下游路由方向信息;从P个输入端口接收由上游路由器分配的通道逻辑编号,查询下游路由方向信息,发送下游路由方向给P个输入端口;从通道仲裁模块接收本地分配的通道逻辑编号与输出端口通道仲裁结果,从快速仲裁模块接收快速传输状态与输出端口快速仲裁结果,根据输出端口通道仲裁结果、快速传输状态及输出端口快速仲裁结果来选择通道仲裁获胜报文或快速仲裁获胜报文的超前信号,利用本地分配的通道逻辑编号替换超前信号中通道逻辑编号信息,发送超前信号给下游路由器。超前信号由通道逻辑编号、目标地址与下游路由方向三个域组成,目标地址位宽为S,指明报文传输目标地址,S为正整数,一般为4到8位;下游路由方向位宽为P,指明报文在下游路由器中的传输方向。
每个计算存储部件由路由计算单元、超前信号表格、发送单元和第一多路选择单元组成。路由计算单元与上游路由器、超前信号表格相连,它从上游路由器接收超前信号,根据常规路由算法以及超前信号中目标路由器地址产生下游路由方向,更新超前信号中下游路由方向信息,根据超前信号中通道逻辑编号将超前信号写入超前信号表格。超前信号表格由N个寄存器组成,每个寄存器记录各通道逻辑编号对应的超前信号,它与路由计算单元、发送单元与第一多路选择单元相连。
发送单元与超前信号表格、P个信号驱动部件相连。第i(i=1,…,P)个计算存储部件的发送单元读取超前信号表格N个寄存器中的超前信号VAdvi,j(j=1,…,N),将超前信号VAdvi,j发送给所有P个信号驱动部件。第一多路选择单元与超前信号表格、P个信号驱动部件和输入端口相连。第i计算存储部件的第一多路选择单元从第i个输入端口接收由上游路由器分配的通道逻辑编号,根据通道逻辑编号对超前信号表格中N个寄存器进行多路选择,将选择结果中的下游路由方向发送给第i输入端口,同时对选择结果进行锁存产生超前信号FAdvi,将超前信号FAdvi发送给所有P个信号驱动部件。
信号驱动部件由第二多路选择单元,第三多路选择单元,临时寄存器,第四多路选择单元、替换单元和逻辑或门组成,与P个计算存储部件、通道仲裁模块、快速仲裁模块和下游路由器相连。第j信号驱动部件的第二多路选择单元从通道仲裁模块接收输出端口j的通道仲裁结果,从P个计算存储部件接收N×P个超前信号VAdvi,j(i=1,…,P;j=1,…,N),根据通道仲裁结果对N×P个超前信号VAdvi,j进行多路选择,将多路选择结果发送给临时寄存器进行锁存。第j信号驱动部件临时寄存器从第二多路选择单元接收多路选择结果的目标地址与下游路由方向进行锁存,从通道仲裁模块接收第j输出端口的分配通道逻辑编号进行锁存,将锁存结果发送给第四多路选择单元。第j信号驱动部件的第四多路选择单元从快速仲裁模块接收第j输出端口的快速传输状态,根据快速传输状态对‘0’信号与来自临时寄存器的锁存结果进行两路选择,如果快速传输状态有效,则将‘0’信号发送给逻辑或门,否则将临时寄存器锁存结果发送给逻辑或门。第j信号驱动部件的第三多路选择单元从快速仲裁模块接收输出端口j的快速仲裁结果,从P个计算存储部件接收超前信号FAdvi,根据快速仲裁结果对P个超前信号FAdvi进行多路选择,将多路选择结果发送给替换单元。第j信号驱动部件的替换单元从通道仲裁模块接收第j输出端口的分配通道逻辑编号,从第三多路选择单元接收多路选择结果,利用分配的通道逻辑编号替换多路选择结果中的通道逻辑编号信息,将替换结果发送给逻辑或门。逻辑或门对来自替换单元的替换结果和来自第四多路选择单元的多路选择结果进行或操作,将操作结果作为超前信号发送给下游路由器。
交叉开关与快速仲裁模块、传输仲裁模块和P个输入端口相连,其大小为2P×P(即输入端口与输出端口的数量分别为2P与P)。交叉开关从每个输入端口接收一个快速通道报文切片与一个虚拟通道报文切片,从快速仲裁模块接收快速仲裁配置Config1,从传输仲裁模块接收传输仲裁配置Config2,对Config1和Config2进行合并操作,产生配置信号Config对交叉开关进行配置,转发从各输入端口接收的快速通道报文切片与虚拟通道报文切片到达目标输出端口。合并操作是指将位宽为P×P的Config1和Config2信号合并成位宽为2×P×P的Config信号,Config信号的第2f×P+1位至2f×P+P位等于Config1信号的f×P+1位至f×P+P位,Config信号的第2f×P+P+1位至2f×P+2P位等于Config2信号的f×P+1位至f×P+P位(0≤f≤P-1,f为整数)。
本发明路由器采取了混合流水线结构。当输入端口的通道分配模块判断输入报文的目标输出端口传输状态无效时,通道分配模块将快速通道模块分配给该输入报文,该输入报文进入快速传输站。快速传输站包含所属输入端口的缓冲存储模块和快速通道模块、快速仲裁模块、超前信号管理模块以及交叉开关。在快速传输站,缓冲存储模块完成对报文切片的缓存操作;快速通道模块完成快速传输请求的发送操作以及缓冲存储模块中报文切片的读操作;快速仲裁模块完成对P个快速传输请求的快速仲裁操作;超前信号管理模块完成对报文超前信号的提前计算和发送操作;交叉开关根据快速仲裁模块发送的快速仲裁配置Config1,以及传输仲裁模块发送的传输仲裁配置Config2,完成交叉开关配置。因此,输入报文在目标输出端口传输状态无效时,即输入报文在目标输出端口未遇冲突的情况下,报文经过路由器仅需单个时钟周期。当输入端口的通道分配模块判断输入报文的目标输出端口传输状态有效时,通道分配模块将虚拟通道模块分配给该输入报文,该输入报文进入两站流水线:通道传输分配站与开关传输站。通道传输分配站包含所属输入端口的缓冲存储模块和虚拟通道模块、通道仲裁模块、传输仲裁模块和超前信号管理模块,开关传输站仅包含交叉开关。在通道传输分配站,缓冲存储模块完成对报文切片的缓存操作;虚拟通道模块完成对缓冲存储模块中报文切片的读操作以及通道请求和传输请求的发送操作;通道仲裁模块完成N×P个通道请求的仲裁操作;传输仲裁模块完成N×P个传输请求的仲裁操作;超前信号管理模块完成对报文超前信号的计算和发送操作。在开关传输站,交叉开关根据通道传输分配站的传输仲裁模块发送的传输仲裁配置Config2,以及快速仲裁模块发送的快速仲裁配置Config1,完成交叉开关配置。因此,输入报文在目标输出端口遇到冲突情况下,经过路由器需要两个时钟周期。
与现有技术相比,采用本发明可以达到以下技术效果:
(1)支持无冲突情况下的单周期路由转发:在输入报文未遇见端口冲突的情况下,分配快速通道模块的报文在单个周期内经过路由器;在遇见端口冲突的情况下,分配虚拟通道模块的报文在两个周期内经过路由器。比较而言,猜测传输结构在猜测失败时需执行多周期报文传输,跳跃旁路结构需在大量的起始节点及终止节点处执行多周期报文传输。从宏观意义上讲,由于任何路由器上的输入报文在遇到端口冲突后需等待前面报文优先流出,因此本发明已达到最低转发延迟的效果。
(2)支持各种路由算法:由于沿任何方向传输的输入报文只要满足目标输出端口仲裁状态无效的前提便能在单周期内经过路由器,因此,本发明实现单周期转发操作与路由算法无关。比较而言,跳跃旁路结构仅适应于确定性路由算法。
(3)支持各种网络负载:本发明在任意网络流量及负载变化条件下只要满足目标输出端口仲裁状态无效的前提便能实现输入报文的单周期转发操作。比较而言,提前仲裁结构只适应于极低流量负载情况,静态配置结构强调网络负载保持不变。
(4)具有简化的硬件机制:本发明仅增加了规模适当的快速仲裁模块、超前信号管理模块,在单周期转发路由器设计范畴内节省了硬件面积与功耗。比较而言,猜测传输结构具有猜测、作废、重传等复杂硬件机制;提前仲裁结构设计了冲突检测排序、快速交叉开关等大规模电路。
附图说明
图1是本发明的总体结构框图。
图2是本发明中采取的报文格式示意图。
图3是本发明中输入端口结构示意图。
图4是本发明中通道分配模块结构示意图。
图5是本发明中缓冲存储模块结构示意图。
图6是本发明中虚拟通道模块结构示意图。
图7是本发明中虚拟通道状态机示意图。
图8是本发明中快速通道模块结构示意图。
图9是本发明中快速通道状态机示意图。
图10是本发明中快速仲裁模块结构示意图。
图11是本发明中通道仲裁模块结构示意图。
图12是本发明中传输仲裁模块结构示意图。
图13是本发明中超前信号管理模块结构示意图。
具体实施方式
图1是本发明的总体结构框图。由P个输入端口、一个快速仲裁模块、一个传输仲裁模块、一个通道仲裁模块、一个超前信号管理模块、一个交叉开关与P个输出端口组成(P为大于1的整数)。
输入端口与上游路由器、本地路由器的快速仲裁模块、传输仲裁模块、通道仲裁模块、超前信号管理模块和交叉开关相连。输入端口从上游路由器接收报文切片,对报文切片进行缓存;从传输仲裁模块接收输出端口传输状态,根据输出端口传输状态给输入报文分配虚拟通道模块或快速通道模块。输入端口发送传输请求给传输仲裁模块,发送通道请求给通道仲裁模块,发送快速传输请求给快速仲裁模块,从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,从快速仲裁模块接收快速仲裁应答。在快速仲裁应答有效情况下,输入端口发送快速通道报文切片给交叉开关;在快速仲裁应答无效,而传输仲裁应答与通道仲裁应答均有效情况下,输入端口发送虚拟通道报文切片给交叉开关。快速通道报文切片与虚拟通道报文切片分别指被分配快速通道模块与虚拟通道模块的报文切片。输入端口发送由上游路由器分配的通道逻辑编号给超前信号管理模块,从超前信号管理模块接收下游路由方向。输入端口还发送通道反馈信号给上游路由器。
快速仲裁模块的主要功能是对所有快速传输请求进行仲裁,它与P个输入端口、通道仲裁模块、传输仲裁模块、超前信号管理模块和交叉开关相连。快速仲裁模块从P个输入端口接收快速传输请求,采用轮循方法对所有快速传输请求进行仲裁,将P个输出端口的快速仲裁结果发送给超前信号管理模块,将快速仲裁应答发送给P个输入端口;对所有快速传输请求进行或操作来产生各输出端口的快速传输状态,将P个输出端口的快速传输状态发送给通道仲裁模块、传输仲裁模块与超前信号管理模块;对P个输出端口快速仲裁结果进行拼接操作来产生快速仲裁配置Config1,将快速仲裁配置Config1发送给交叉开关。拼接操作指将位宽为wl(l=1,…,M)的M个信号按位拼接成位宽为的信号,M为大于1的整数,wl为大于等于1的整数。
传输仲裁模块的主要功能是对所有传输请求进行仲裁,它与P个输入端口、快速仲裁模块、交叉开关相连。传输仲裁模块从P个输入端口接收传输请求,对所有传输请求进行或运算来产生各输出端口的传输状态,将P个输出端口的传输状态发送给P个输入端口,用于输入端口为输入报文选择虚拟通道模块或快速通道模块;对从P个输入端口接收的传输请求进行仲裁,当从快速仲裁模块接收的输出端口快速传输状态无效时,产生传输仲裁应答发送给P个输入端口,产生传输仲裁配置Config2发送给交叉开关。
通道仲裁模块的主要功能是对所有通道请求进行仲裁,并分配通道逻辑编号,与下游路由器、本地路由器输入端口、快速通道模块和超前信号管理模块相连。通道仲裁模块从下游路由器接收通道反馈信号,根据通道反馈信号回收由下游路由器释放的通道逻辑编号;从快速通道模块接收输出端口快速传输状态,从本地路由器P个输入端口接收通道请求,采用轮循方法对通道请求进行仲裁,在第i输出端口(i=1,…,P)的快速传输状态无效时,发送第i输出端口的通道仲裁结果给超前信号管理模块,发送通道仲裁应答给第i输入端口。通道仲裁模块还给通道仲裁获胜报文或快速仲裁获胜报文分配通道逻辑编号,将通道逻辑编号发送给超前信号管理模块,用于超前信号管理模块发送通道仲裁获胜报文或快速仲裁获胜报文的超前信号。通道逻辑编号指本地路由器给下游路由器输入报文分配的临时编号,用于下游路由器来区分不同输入报文,当输入报文从下游路由器离开时,下游路由器释放该临时编号。通道逻辑编号的位宽为(N为输入端口内虚拟通道模块与快速通道模块总数,表示对log2N上取整)。
超前信号管理模块的主要功能是根据输入报文的超前信号计算下游路由方向,发送当前输入报文的下游路由方向给输入端口,它与上游路由器、下游路由器、本地路由器P个输入端口、通道仲裁模块及快速通道模块相连。超前信号管理模块从上游路由器接收超前信号,采用常规路由算法计算下游路由方向,更新超前信号中的下游路由方向信息。超前信号管理模块从P个输入端口接收由上游路由器分配的通道逻辑编号,查询下游路由方向信息,发送下游路由方向信息给P个输入端口。超前信号管理模块从通道仲裁模块接收输出端口通道仲裁结果以及由本地路由器分配的通道逻辑编号,从快速仲裁模块接收输出端口快速传输状态以及输出端口快速仲裁结果,当输出端口快速传输状态有效时,根据输出端口快速仲裁结果选择快速仲裁获胜报文的超前信号,利用本地路由器分配的通道逻辑编号替换超前信号中的通道逻辑编号信息,发送超前信号给下游路由器;当输出端口快速传输状态无效时,根据输出端口通道仲裁结果选择通道仲裁获胜的超前信号,利用本地路由器分配的通道逻辑编号替换超前信号中的通道逻辑编号信息,发送超前信号给下游路由器。常规路由算法指维序路由、最小路径路由算法等。
图2是本发明中采取的报文格式示意图。每个报文由多个切片组成,切片分为三种类型:头切片、体切片和尾切片。每个报文由一个头切片、L-2个体切片及一个尾切片构成(L是2的整数次幂)。任意切片都由四个域构成:切片传输标识、切片类型、通道逻辑编号与数据体。切片传输标识域宽度为1,指明路由器输入端口上是否存在报文切片输入。切片类型域位宽为W,指明当前切片属于哪种类型,W一般为3,切片类型域最高位指明了当前切片是否属于头切片。数据体域位宽为D,指明当前切片有效载荷,D一般为128。头切片数据体域至少包含四个子域:下游路由方向、本地路由方向、目标地址与报文长度。下游路由方向与本地路由方向子域位宽均为P,分别指明报文在下游路由器与本地路由器中传输方向。目标地址子域位宽为S,指明报文传输的目标路由器地址,S为正整数,一般为4到8。报文长度子域位宽为log2L,指明报文中的切片数量。
图3是本发明中输入端口结构示意图。由通道分配模块、缓冲存储模块、快速通道模块、N-1个虚拟通道模块、传输请求发送单元和通道请求发送单元组成。通道分配模块的主要功能是为输入报文分配快速通道模块或虚拟通道模块,它与上游路由器、本地路由器的传输仲裁模块和超前信号管理模块、所属输入端口的缓冲存储模块、快速通道模块和N-1个虚拟通道模块相连。通道分配模块从上游路由器接收报文,从传输仲裁模块接收输出端口传输状态,根据输入报文的下游路由方向对输出端口传输状态进行多路选择,产生快速通道使用标识,在快速通道使用标识有效或无效时,分别给输入报文分配快速通道模块或虚拟通道模块,并产生缓冲存储模块写地址,将缓冲存储模块写地址及输入报文发给缓冲存储模块。如果分配快速通道模块,通道分配模块发送通道使能、本地路由方向、报文长度、切片传输标识、由上游路由器分配的通道逻辑编号给快速通道模块,发送通道使能给缓冲存储模块;如果分配虚拟通道模块,通道分配模块发送通道使能、本地路由方向、报文长度、切片传输标识、由上游路由器分配的通道逻辑编号给虚拟通道模块。通道分配模块从上游路由器接收报文,发送由上游路由器分配的通道逻辑编号给超前信号管理模块,从超前信号管理模块接收下游路由方向信息来更新输入报文的下游路由方向子域。通道分配模块还从快速通道模块或N-1个虚拟通道模块接收释放信号以及由快速通道模块或虚拟通道模块释放的通道逻辑编号,将释放信号与释放通道逻辑编号一起作为通道反馈信号发送给上游路由器,用于上游路由器回收通道反馈信号中的通道逻辑编号。虚拟通道模块从通道分配模块接收通道使能、报文长度、切片传输标识、本地路由方向及通道逻辑编号,如果通道使能有效,激活虚拟通道状态机,发送写使能、读使能、读地址给缓冲存储模块,发送传输请求给传输请求发送单元,发送通道请求给通道请求发送单元,并从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,等待报文传输完毕,发送释放信号、释放通道逻辑编号给通道分配模块。快速通道模块从通道分配模块接收通道使能、报文长度、切片传输标识、本地路由方向及通道逻辑编号,如果通道使能有效,激活快速通道状态机,发送写使能、读使能、读地址与旁路使能信号给缓冲存储模块,发送快速传输请求给快速仲裁模块,发送传输请求给传输请求发送单元,发送通道请求给通道请求发送单元,并从快速仲裁模块接收快速仲裁应答,从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,等待报文传输完毕,发送释放信号、释放通道逻辑编号给通道分配模块。传输请求发送单元接收来自所属输入端口快速通道模块和N-1个虚拟通道模块的传输请求,将所有传输请求进行拼接之后作为输入端口的传输请求发送给传输仲裁模块。通道请求发送单元接收来自所属输入端口快速通道模块和N-1个虚拟通道模块的通道请求,将所有通道请求进行拼接之后作为输入端口的通道请求发送给通道仲裁模块。
图4是本发明中通道分配模块结构示意图。通道分配模块由通道地址产生单元、通道状态表格、空闲通道跟踪单元、通道分发单元、通道流反馈控制单元、使能单元以及更新单元组成。
通道地址产生单元主要用于记录快速通道模块与虚拟通道模块的写地址,它由通道地址表格与地址更新器组成。通道地址产生单元从通道分发单元接收通道物理编号,从上游路由器接收切片传输标识、切片类型和通道逻辑编号,将分配给输入报文的虚拟通道模块或快速通道模块的写地址发送给缓冲存储模块,同时对分配给输入报文的虚拟通道模块或快速通道模块的写地址进行更新。通道物理编号是指本地路由器给输入报文实际分配的快速通道模块或虚拟通道模块的编号。通道地址表格是一个深度为N的寄存器文件,包含三个写端口和三个读端口,用于存储各快速通道模块与虚拟通道模块的写地址。地址更新器与上游路由器、通道地址表格、通道分发单元和缓冲存储模块相连,它从上游路由器接收切片类型、切片传输标识和通道逻辑编号,从通道分发单元接收通道物理编号。当切片传输标识以及切片类型最高位均有效时,地址更新器将右移log2L位后的通道物理编号作为写地址发送给缓冲存储模块,发送通道逻辑编号给通道地址表格写地址端口,发送右移log2L位后的通道物理编号给通道地址表格写数据端口,发送有效信号给通道地址表格写控制端口,更新输入报文所在虚拟通道模块或快速通道模块的写地址。当切片传输标识有效但接收切片类型最高位无效时,地址更新器发送通道逻辑编号给通道地址表格读地址端口与写地址端口,发送有效信号给通道地址表格读控制端口,从通道地址表格读数据端口读出数据作为写地址发送给缓冲存储模块;同时,地址更新器发送有效信号给通道地址表格写控制端口,将写地址加1之后发送给通道地址表格写数据端口,将输入报文所在虚拟通道模块或快速通道模块的写地址加1。
通道状态表格是一个位宽为N的寄存器,各通道状态位记录一个快速通道模块或虚拟通道模块的空闲状态,通道状态位有效表示快速通道模块或虚拟通道模块闲置,通道状态位无效表示快速通道模块或虚拟通道模块正忙。通道状态表格与上游路由器、通道分发单元、通道流反馈控制单元、空闲通道跟踪单元相连。通道状态表格一方面从通道分发单元接收分配的通道物理编号,从上游路由器接收切片类型,如果切片类型最高位有效,分配给该切片的通道物理编号所指的通道状态位被置为无效。通道状态表格一方面从通道流反馈控制单元接收释放信号和释放通道编号,如果释放信号有效,释放通道编号所指的通道状态位被置为有效。释放通道编号指本地路由器给当前输入端口流出报文所分配的通道物理编号。
空闲通道跟踪单元与通道分发单元、通道状态表格相连,它从通道状态表格读取通道状态,按照虚拟通道模块S1>S2>…>SN-1分配优先级,向通道分发单元发送空闲快速通道模块的通道物理编号、组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,组合A={S1,…,SN-3,SN-2},组合B={S1,…,SN-3,SN-1}。
通道分发单元由一个P-1:1多选器和两个2:1多选器组成,它与上游路由器、通道状态表格、通道地址产生单元、使能单元、空闲通道跟踪单元以及传输仲裁模块相连。通道分发单元从上游路由器接收输入报文,从空闲通道跟踪单元接收空闲快速通道的通道物理编号、组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,从传输仲裁模块接收输出端口传输状态,依据输出端口传输状态给输入报文分配虚拟通道模块或快速通道模块,发送分配的通道物理编号给通道状态表格、通道地址产生单元和使能单元。P-1:1多选器从上游路由器接收输入报文的下游路由方向,从传输仲裁模块接收输出端口传输状态,根据下游路由方向对输出端口传输状态进行多路选择,得到目标输出端口的传输状态,作为快速通道使用标识发送给第二2:1选择器。第一2:1选择器从空闲通道跟踪单元接收组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,从上游路由器接收输入报文切片类型,根据切片类型最高位对组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号进行两路选择,结果作为预分配虚拟通道模块的通道物理编号发送给第二2:1选择器。第二2:1选择器从P-1:1多选器接收快速通道使用标识,从第一2:1选择器接收预分配虚拟通道模块的通道物理编号,从空闲通道跟踪单元接收快速通道模块的通道物理编号,根据快速通道使用标识对快速通道模块的通道物理编号与预分配虚拟通道模块的通道物理编号进行2路选择,结果作为分配的通道物理编号发送给通道状态表格、通道地址产生单元与使能单元。
通道流反馈控制单元与通道状态表格、所属输入端口的快速通道模块和N-1个虚拟通道模块及上游路由器相连,从所属输入端口的快速通道模块与N-1个虚拟通道模块接收释放信号以及释放通道逻辑编号。如果发现输入端口内任意虚拟通道模块或快速通道模块的释放信号有效,通道流反馈控制单元将从该虚拟通道模块或快速通道模块接收的释放信号与释放通道逻辑编号作为通道流反馈信号发送给上游路由器;将该虚拟通道模块或快速通道模块的通道物理编号作为释放通道编号发送给通道状态表格,置释放通道编号所指的通道状态位为有效。
使能单元与通道分发单元、所属输入端口的快速通道模块与N-1个虚拟通道模块相连,从通道分发单元接收通道物理编号,从上游路由器接收报文切片,当报文切片的切片类型最高位有效时,将通道物理编号所指的通道使能信号置为有效,其余通道使能信号置为无效,发送所有通道使能信号给各快速通道模块与虚拟通道模块。
更新单元与上游路由器、超前信号管理模块和所属输入端口的缓冲存储模块相连,它从上游路由器接收报文切片,从超前信号管理模块接收下游路由方向信息,当输入报文切片的切片类型最高位有效时,利用下游路由方向信息更新输入报文中的下游路由方向子域,然后发送报文切片给缓冲存储模块。
图5是本发明中缓冲存储模块结构示意图。缓冲存储模块主要对输入报文内容进行存储,它由缓冲控制器与缓冲存储器组成,与所属输入端口的通道分配模块、快速通道模块、N-1个虚拟通道模块、传输仲裁模块及交叉开关相连。缓冲存储模块从通道分配模块接收写地址和报文切片,从快速通道模块与N-1个虚拟通道模块接收写使能,在写使能或输入报文切片类型最高位有效时根据写地址来存储报文切片。缓冲存储模块从快速通道模块接收读使能、读地址及旁路使能,从N-1个虚拟通道模块接收读使能及读地址,从传输仲裁模块接收传输仲裁应答,在读使能有效时,根据传输仲裁应答对读地址进行多路选择,交叉开关根据多路选择结果读取报文切片;在旁路使能有效时,交叉开关根据从通道分配模块接收的写地址读取报文切片。
缓冲控制器是产生缓冲存储器访问信号的逻辑电路,与通道分配模块、快速通道模块、N-1个虚拟通道模块、传输仲裁模块、缓冲存储器相连。缓冲控制器从通道分配模块接收报文切片类型,从快速通道模块与N-1个虚拟通道模块接收写使能,对报文切片类型最高位与所有写使能进行或操作,发送操作结果给缓冲存储器的写控制端口;从快速通道模块与N-1个虚拟通道模块接收读地址,从传输仲裁模块接收传输仲裁应答,对传输仲裁应答进行锁存,根据锁存后的传输仲裁应答对所有读地址进行多路选择,发送选择结果给缓冲存储器的第一读地址端口;从快速通道模块与N-1个虚拟通道模块接收读使能,对所有读使能进行或操作,发送操作结果给缓冲存储器的第一读控制端口;从通道分配模块接收写地址,对写地址进行锁存,将锁存后的写地址作为第二读地址信号发送给缓冲存储器的第二读地址端口;从快速通道模块接收旁路使能,将旁路使能发送给缓冲存储器第二读控制端口。
缓冲存储器是深度为N×L的寄存器文件,包含3个写端口和6个读端口,与通道分配模块、缓冲控制器、交叉开关相连。缓冲存储器的写数据端口与写地址端口分别从通道分配模块接收报文切片与写地址,写控制端口从缓冲控制器接收写控制信号。缓冲存储器第一读控制端口与第一读地址端口分别从缓冲控制器接收第一读控制信号与第一读地址信号,从第一读数据端口读出的虚拟通道报文切片被发送给交叉开关。缓冲存储器的第二读控制端口与第二读地址端口从缓冲控制器分别接收第二读控制信号与第二读地址信号,从第二读数据端口读出的快速通道报文切片被发送给交叉开关。
图6是本发明中虚拟通道模块结构示意图。虚拟通道模块由第一读计数器、第一写计数器和虚拟通道状态机组成,它与传输请求发送单元、通道请求发送单元、传输仲裁模块、通道仲裁模块、通道分配模块和缓冲存储模块相连。虚拟通道模块从通道分配模块接收通道使能、报文长度、切片传输标识、本地路由方向及通道逻辑编号,如果通道使能有效,激活虚拟通道状态机,发送写使能、读使能、读地址给缓冲存储模块,发送传输请求给传输请求发送单元,发送通道请求给通道请求发送单元,并从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,等待报文传输完毕,发送释放信号、释放通道逻辑编号给通道分配模块。第一读计数器位宽为log2L,与通道分配模块、传输仲裁模块、虚拟通道状态机相连,它从通道分配模块接收通道使能、报文长度,从传输仲裁模块接收传输仲裁应答,然后发送第一读计数器的值给虚拟通道状态机。当从通道分配模块接收的通道使能有效时,第一读计数器取值为从通道分配模块接收的报文长度;当从传输仲裁模块接收的传输仲裁应答有效时,第一读计数器值减1。第一写计数器的位宽为log2L,与通道分配模块、虚拟通道状态机相连,它从通道分配模块接收通道使能信号、报文长度和切片传输标识,然后发送第一写计数器的值给虚拟通道状态机。当从通道分配模块接收的通道使能有效时,第一写计数器的值为从通道分配模块接收的报文长度;当从通道分配模块接收的报文切片中切片传输标识有效且第一写计数器值非零时,第一写计数器值减1。
图7是本发明中虚拟通道状态机示意图。虚拟通道状态机由四个状态组成,“00”状态表示通道空闲;“01”状态表示等待通道仲裁应答;“10”表示等待传输仲裁应答;“11”表示通道仲裁应答、传输仲裁应答均已有效。上电复位时,虚拟通道状态机处于状态“00”,若发现从通道分配模块接收的通道使能信号有效,锁存从通道分配模块接收的通道逻辑编号,转向状态“01”。虚拟通道状态机处于“01”状态时,发送通道请求给通道请求发送单元,发送传输请求给传输请求发送单元,如果第一写计数器值非零,则发送写使能给缓冲存储模块;如果从通道仲裁模块接收的通道仲裁应答有效,但从传输仲裁模块接收的传输仲裁应答无效,转移到“10”状态;如果通道仲裁应答且传输仲裁应答均有效,转移到“11”状态。虚拟通道状态机处于“10”状态时,发送传输请求给传输请求发送单元,如果第一写计数器值非零,则发送写使能给缓冲存储模块;如果传输仲裁应答有效,转移到“11”状态。虚拟通道状态机处于“11”时,发送传输请求给传输请求发送单元,发送读使能信号与读地址给缓冲存储模块,如果第一写计数器值非零,发送写使能信号给缓冲存储模块;如果第一读计数器值为零,转移到状态“00”,并发送释放信号与锁存的通道逻辑编号给通道分配模块。
图8是本发明中快速通道模块结构示意图。快速通道模块由第二读计数器、第二写计数器和快速通道状态机组成,它与快速仲裁模块、传输仲裁模块、通道仲裁模块以及所属输入端口的传输请求发送单元、通道请求发送单元、通道分配模块和缓冲存储模块相连。快速通道模块从通道分配模块接收通道使能、报文长度、切片传输标识、本地路由方向及通道逻辑编号,如果通道使能有效,激活快速通道状态机,发送写使能、读使能、读地址与旁路使能信号给缓冲存储模块,发送快速传输请求给快速仲裁模块,发送传输请求给传输请求发送单元,发送通道请求给通道请求发送单元,并从快速仲裁模块接收快速仲裁应答,从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,等待报文传输完毕,发送释放信号、释放通道逻辑编号给通道分配模块。第二读计数器位宽为log2L,与通道分配模块、传输仲裁模块、快速仲裁模块及快速通道状态机相连,它从通道分配模块接收通道使能、报文长度,从传输仲裁模块接收传输仲裁应答,从快速仲裁模块接收快速仲裁应答,发送第二读计数器的值给快速通道状态机。当从通道分配模块接收的通道使能有效时,第二读计数器的值为从通道分配模块接收的报文长度,当从快速仲裁模块接收的快速仲裁应答或从传输仲裁模块接收的传输仲裁应答有效时,读计数器值减1。第二写计数器的位宽为log2L,与通道分配模块、快速通道状态机相连,它从通道分配模块接收通道使能、报文长度和切片传输标识,发送第二写计数器的值给快速通道状态机。当从通道分配模块接收的通道使能时,第二写计数器的值为从通道分配模块接收的报文长度;当从通道分配模块接收的报文切片中切片传输标识有效且第二写计数器值非零时,第二写计数器值减1。
图9是本发明中快速通道状态机示意图。快速通道状态机共有六个状态,“000”状态表示通道空闲;“001”状态表示等待快速仲裁应答;“010”状态表示快速传输;“011”表示等待通道仲裁应答;“100”表示等待传输仲裁应答;“101”表示通道仲裁应答、传输仲裁应答均有效。上电复位时,快速通道状态机处于状态“000”,若发现从通道分配模块接收的通道使能有效,锁存从通道分配模块接收的通道逻辑编号,转向状态“001”。快速通道状态机处于“001”状态时,发送快速传输请求给快速仲裁模块,发送旁路使能给缓冲存储模块,如果第二写计数器取值非零,发送写使能给缓冲存储模块;如果从快速仲裁模块接收的快速仲裁应答有效,则转移到“010”状态;如果从快速仲裁模块接收的快速仲裁应答无效,转移到“011”状态。快速通道状态机处于“010”状态时,发送旁路使能给缓冲存储模块,发送快速传输请求给快速仲裁模块,如果第二写计数器取值非零,发送写使能给缓冲存储模块;如果第二读计数器值为零,则转移到状态“000”,并发送释放信号与锁存的通道逻辑编号给通道分配模块。快速通道状态机处于“011”状态时,发送通道请求给通道请求发送单元,发送传输请求给传输请求发送单元,如果第二写计数器值非零,则发送写使能给缓冲存储模块;如果从通道仲裁模块接收的通道仲裁应答有效,而从传输仲裁模块接收的传输仲裁应答无效,则转移到“100”状态;如果通道仲裁应答、传输仲裁应答均有效,则转移到“101”状态。快速通道状态机处于“100”时,发送传输请求给传输请求发送单元,如果第二写计数器值非零,则发送写使能给缓冲存储模块;如果传输仲裁应答有效,则转移到“101”状态。快速通道状态机处于“101”时,发送传输请求给传输请求发送单元,发送读使能信号与读地址给缓冲存储模块,如果第二写计数器值非零,则发送写使能信号给缓冲存储模块;如果第二读计数器值为零,则转移到状态“000”,并发送释放信号与锁存的通道逻辑编号给通道分配模块。
图10是本发明中快速仲裁模块结构示意图。快速仲裁模块由第一应答控制部件和P个快速仲裁部件组成,它与P个输入端口、通道仲裁模块、传输仲裁模块、超前信号管理模块与交叉开关相连。快速仲裁模块从P个输入端口接收快速传输请求,对所有快速传输请求进行或操作,产生各输出端口的快速传输状态,发送P个输出端口的快速传输状态给通道仲裁模块、传输仲裁模块及超前信号管理模块;采取轮循方法对P个输入端口的快速传输请求进行仲裁,将快速仲裁应答发给P个输入端口,将P个输出端口的快速仲裁结果发给超前信号管理模块;对P个输出端口快速仲裁结果进行拼接操作,产生快速仲裁配置Config1,将快速仲裁配置Config1发给交叉开关。
快速仲裁部件与P个输入端口和第一应答控制部件相连。第i个快速仲裁部件从P个输入端口接收快速传输请求,采用轮循方法对所有快速传输请求进行仲裁,将仲裁结果发给第一应答控制部件;对所有快速传输请求进行或操作产生第i输出端口的快速传输状态,将第i输出端口的快速传输状态发送给第一应答控制部件。
第一应答控制部件与P个快速仲裁部件、P个输入端口、传输仲裁模块、通道仲裁模块、超前信号管理模块和交叉开关相连。第一应答控制部件从快速仲裁部件分别接收P个仲裁结果,将P个仲裁结果作为输出端口快速仲裁结果发送给超前信号管理模块;将P个仲裁结果进行拼接之后作为快速仲裁配置Config1发送给交叉开关;将P个仲裁结果进行或操作之后作为快速仲裁应答发送给P个输入端口。第一应答控制部件还从P个快速仲裁部件接收P个快速传输状态,将P个快速传输状态发送给传输仲裁模块、通道仲裁模块和超前信号管理模块。
图11是本发明中通道仲裁模块结构示意图。由通道请求分发部件,P个通道仲裁部件和第二应答控制单元组成,它与下游路由器、P个输入端口、快速仲裁模块及超前信号管理模块相连。通道仲裁模块从快速仲裁模块接收输出端口快速传输状态,从P个输入端口接收通道请求,采用轮循方法对所有通道请求进行仲裁,当输出端口快速传输状态无效时,发送输出端口仲裁结果给超前信号管理模块,发送通道应答给P个输入端口。通道仲裁模块从下游路由器接收通道反馈信号,回收由下游路由器释放的通道逻辑编号;同时,给通道仲裁获胜报文或快速仲裁获胜报文分配通道逻辑编号,将该通道逻辑编号发送给超前信号管理模块。
通道请求分发部件与P个输入端口、通道仲裁模块中P个通道仲裁部件相连,它从P个输入端口接收通道请求,给第i通道仲裁部件发送各输入端口向第i输出端口(i=1,…,P)的请求,其中,各输入端口向第i输出端口的请求位宽均为N,包括输入端口中快速通道模块及N-1个虚拟通道模块向第i输出端口的请求。
通道仲裁部件由PN:1通道仲裁单元、逻辑通道分发单元、通道逻辑编号表格组成,它与下游路由器、通道请求分发部件、第二应答控制部件、快速仲裁模块及超前信号管理模块相连。第i通道仲裁部件的PN:1通道仲裁单元是对PN个通道请求进行仲裁的电路,它从通道请求分发部件接收所有输入端口向第i输出端口的通道请求,采用轮循方法对所有通道请求进行仲裁,将通道仲裁结果发给同部件中的逻辑通道分发单元。第i通道仲裁部件的逻辑通道分发单元从PN:1通道仲裁单元接收通道仲裁结果,从快速仲裁模块接收第P输出端口快速传输状态,从通道逻辑编号表格接收各通道逻辑编号是否可用信息,如果快速传输状态无效,且通道逻辑编号表格中存在通道逻辑编号可用,逻辑通道分发单元发送通道仲裁结果给第二应答控制部件;如果通道逻辑编号表格中所有通道逻辑编号均不可用,或者快速传输状态有效,逻辑通道分发单元将通道仲裁结果清零之后发送通道仲裁结果给第二应答控制部件。如果通道逻辑编号表格中存在通道逻辑编号可用,第i通道仲裁部件的逻辑通道分发单元判断从PN:1通道仲裁单元接收的通道仲裁结果以及从快速仲裁模块接收的第i输出端口快速传输状态是否有效。如果通道仲裁结果或者快速传输状态有效,逻辑通道分发单元还根据各通道逻辑编号的可用信息,采用轮循方法选取一个可用的通道逻辑编号,发送该通道逻辑编号给超前信号管理模块与逻辑通道状态表格,同时发送分配信号给通道逻辑编号表格,置该通道逻辑编号为不可用。
通道逻辑编号表格是一个位宽为N的寄存器,每一位记录各通道逻辑编号是否可用,其中,第i位有效表示通道逻辑编号i可用,第i位无效表示通道逻辑编号i不可用。通道逻辑编号表格与逻辑通道分发单元、下游路由器相连,它一方面从逻辑通道分发单元接收分配信号以及通道逻辑编号,如果分配信号有效,则分配的通道逻辑编号所指寄存器位被置为无效;另一方面从下游路由器接收通道反馈信号,如果通道反馈信号中释放信号有效,则通道反馈信号中释放通道逻辑编号所指寄存器位被置为有效。
第二应答控制部件与P个通道仲裁部件、输入端口和超前信号管理模块相连。第二应答控制部件从P个通道仲裁部件接收通道仲裁结果,对所有通道仲裁结果进行或逻辑操作,并将操作结果的(i-1)×N+1位至i×N位(i=1,…,P)作为第i输入端口通道仲裁应答发送给第i输入端口。第二应答控制部件还将从第i通道仲裁部件接收的仲裁结果作为第i输出端口通道仲裁结果发送给超前信号管理模块。
图12是本发明中传输仲裁模块结构示意图。由传输请求分发部件,P个传输仲裁部件以及第三应答控制部件组成,它与P个输入端口、快速仲裁模块和交叉开关相连。传输仲裁模块从P个输入端口接收传输请求,对所有传输请求进行或操作得到P个输出端口传输状态,发送输出端口传输状态给P个输入端口;采用轮循方法对P个输入端口传输请求进行仲裁,当从快速仲裁模块接收的输出端口快速传输状态无效时,产生传输仲裁应答发送给P个输入端口,产生传输仲裁配置Config2发送给交叉开关。
传输请求分发部件与P个输入端口、传输仲裁模块中P个传输仲裁部件相连,它从P个输入端口接收传输请求,给第i传输仲裁部件发送各输入端口向第i输出端口(i=1,…,P)的请求。各输入端口向第i输出端口的请求信号宽度为N,包括输入端口内快速通道模块与N-1个虚拟通道模块向第i输出端口的请求。
传输仲裁部件由PN:1传输仲裁单元、仲裁屏蔽单元和或逻辑单元组成,它与传输请求分发部件、快速仲裁模块及第三应答控制部件相连。第i传输仲裁部件的PN:1传输仲裁单元是对PN个传输请求的仲裁电路,它从传输请求分发部件接收所有输入端口向第i输出端口的传输请求,采取轮循方法对PN个传输请求进行仲裁,发送仲裁结果给同部件中的仲裁屏蔽单元。第i传输仲裁部件中仲裁屏蔽单元从PN:1传输仲裁单元接收仲裁结果,从快速仲裁模块接收第i输出端口快速传输状态,如果快速传输状态无效,将仲裁结果作为第i输出端口传输仲裁结果发送给第三应答控制部件;如果快速传输状态有效,将第i输出端口传输仲裁结果清零后发送给第三应答控制部件。第i传输仲裁部件的或逻辑单元从传输请求分发部件接收所有输入端口向第i输出端口的传输请求,对所有传输请求进行或操作得到第i输出端口的传输状态,发送第i输出端口的传输状态给第三应答控制部件。
第三应答控制部件与P个传输仲裁部件、输入端口与交叉开关相连。第三应答控制部件从P个传输仲裁部件接收P个输出端口传输仲裁结果,对所有传输仲裁结果进行拼接操作,产生传输仲裁配置Config2,发送传输仲裁配置Config2发送给交叉开关;对所有传输仲裁结果进行或操作,将操作结果的(i-1)×N+1位至i×N位(i=1,…,P)作为第i输入端口传输仲裁应答,发送第i输入端口传输仲裁应答给第i输入端口。第三应答控制部件还从P个传输仲裁部件接收P个输出端口传输状态,对所有传输状态进行拼接操作,产生输出端口传输状态,发送输出端口传输状态给P个输入端口。
图13是本发明中超前信号管理模块结构示意图。超前信号管理模块由P个计算存储部件与P个信号驱动部件组成,与P个输入端口、通道仲裁模块、快速仲裁模块、上游路由器和下游路由器相连。超前信号管理模块从上游路由器接收超前信号,根据常规路由算法计算下游路由方向,更新超前信号中的下游路由方向信息;从P个输入端口接收由上游路由器分配的通道逻辑编号,查询下游路由方向信息,发送下游路由方向给P个输入端口;从通道仲裁模块接收本地分配的通道逻辑编号与输出端口通道仲裁结果,从快速仲裁模块接收快速传输状态与输出端口快速仲裁结果,根据输出端口通道仲裁结果、快速传输状态及输出端口快速仲裁结果来选择通道仲裁获胜报文或者快速仲裁获胜报文的超前信号,利用本地分配的通道逻辑编号替换超前信号中通道逻辑编号信息,发送超前信号给下游路由器。超前信号由通道逻辑编号、目标地址与下游路由方向三个域组成,目标地址位宽为S,指明报文传输目标地址,S为正整数,一般为4位到8位;下游路由方向位宽为P,指明报文在下游路由器中的传输方向。
每个计算存储部件由路由计算单元、超前信号表格、发送单元和第一多路选择单元组成。路由计算单元与上游路由器、超前信号表格相连,它从上游路由器接收超前信号,根据常规路由算法以及超前信号中目标路由器地址产生下游路由方向,更新超前信号中下游路由方向信息,根据超前信号中通道逻辑编号将超前信号写入超前信号表格。超前信号表格由N个寄存器组成,每个寄存器记录各通道逻辑编号对应的超前信号,它与路由计算单元、发送单元与第一多路选择单元相连。
发送单元与超前信号表格、P个信号驱动部件相连。第i(i=1,…,P)个计算存储部件的发送单元读取超前信号表格N个寄存器中的超前信号VAdvi,j(j=1,…,N),将超前信号VAdvi,j发送给所有P个信号驱动部件。第一多路选择单元与超前信号表格、P个信号驱动部件和输入端口相连。第i计算存储部件的第一多路选择单元从第i个输入端口接收由上游路由器分配的通道逻辑编号,根据通道逻辑编号对超前信号表格中N个寄存器进行多路选择,将选择结果中的下游路由方向发送给第i输入端口,同时对选择结果进行锁存产生超前信号FAdvi,将超前信号FAdvi发送给所有P个信号驱动部件。
信号驱动部件由第二多路选择单元,第三多路选择单元,临时寄存器,第四多路选择单元、替换单元和逻辑或门组成,与P个计算存储部件、通道仲裁模块、快速仲裁模块和下游路由器相连。第j信号驱动部件的第二多路选择单元从通道仲裁模块接收输出端口j的通道仲裁结果,从P个计算存储部件接收N×P个超前信号VAdvi,j(i=1,…,P;j=1,…,N),根据通道仲裁结果对N×P个超前信号VAdvi,j进行多路选择,将多路选择结果发送给临时寄存器进行锁存。第j信号驱动部件临时寄存器从第二多路选择单元接收多路选择结果的目标地址与下游路由方向进行锁存,从通道仲裁模块接收第j输出端口的分配通道逻辑编号进行锁存,将锁存结果发送给第四多路选择单元。第j信号驱动部件的第四多路选择单元从快速仲裁模块接收第j输出端口的快速传输状态,根据快速传输状态对‘0’信号与来自临时寄存器的锁存结果进行两路选择,如果快速传输状态有效,则将‘0’信号发送给逻辑或门,否则将临时寄存器锁存结果发送给逻辑或门。第j信号驱动部件的第三多路选择单元从快速仲裁模块接收输出端口j的快速仲裁结果,从P个计算存储部件接收超前信号FAdvi,根据快速仲裁结果对P个超前信号FAdvi进行多路选择,将多路选择结果发送给替换单元。第j信号驱动部件的替换单元从通道仲裁模块接收第j输出端口的分配通道逻辑编号,从第三多路选择单元接收多路选择结果,利用分配的通道逻辑编号替换多路选择结果中的通道逻辑编号信息,将替换结果发送给逻辑或门。逻辑或门对来自替换单元的替换结果和来自第四多路选择单元的多路选择结果进行或操作,将操作结果作为超前信号发送给下游路由器。
Claims (8)
1.一种基于快速通道技术的单周期片上路由器,其特征在于它由P个输入端口、一个快速仲裁模块、一个传输仲裁模块、一个通道仲裁模块、一个超前信号管理模块、一个交叉开关与P个输出端口组成,P为大于1的整数;输入端口与上游路由器、本地路由器的快速仲裁模块、传输仲裁模块、通道仲裁模块、超前信号管理模块和交叉开关相连;输入端口从上游路由器接收报文切片,对报文切片进行缓存;从传输仲裁模块接收输出端口传输状态,根据输出端口传输状态给输入报文分配虚拟通道模块或快速通道模块;输入端口发送传输请求给传输仲裁模块,发送通道请求给通道仲裁模块,发送快速传输请求给快速仲裁模块,从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,从快速仲裁模块接收快速仲裁应答;在快速仲裁应答有效情况下,输入端口发送快速通道报文切片给交叉开关;在快速仲裁应答无效,而传输仲裁应答与通道仲裁应答均有效情况下,输入端口发送虚拟通道报文切片给交叉开关;快速通道报文切片与虚拟通道报文切片分别指被分配快速通道模块与虚拟通道模块的报文切片;输入端口发送由上游路由器分配的通道逻辑编号给超前信号管理模块,从超前信号管理模块接收下游路由方向;输入端口还发送通道反馈信号给上游路由器;快速仲裁模块与P个输入端口、通道仲裁模块、传输仲裁模块、超前信号管理模块和交叉开关相连;快速仲裁模块从P个输入端口接收快速传输请求,采用轮循方法对所有快速传输请求进行仲裁,将P个输出端口的快速仲裁结果发送给超前信号管理模块,将快速仲裁应答发送给P个输入端口;对所有快速传输请求进行或操作来产生各输出端口的快速传输状态,将P个输出端口的快速传输状态发送给通道仲裁模块、传输仲裁模块与超前信号管理模块;对P个输出端口快速仲裁结果进行拼接操作来产生快速仲裁配置Config1,将快速仲裁配置Config1发给交叉开关,拼接操作指位宽为wl(1≤l≤M)的M个信号按位拼接成位宽为的信号,M为大于1的整数,wl为大于等于1的整数;传输仲裁模块与P个输入端口、快速仲裁模块、交叉开关相连;传输仲裁模块从P个输入端口接收传输请求,对所有传输请求进行或运算来产生各输出端口的传输状态,将P个输出端口的传输状态发送给P个输入端口;对从P个输入端口接收的传输请求进行仲裁,当从快速仲裁模块接收的输出端口快速传输状态无效时,产生传输仲裁应答发送给P个输入端口,产生传输仲裁配置Config2发送给交叉开关;通道仲裁模块与下游路由器、本地路由器输入端口、快速通道模块和超前信号管理模块相连;通道仲裁模块从下游路由器接收通道反馈信号,根据通道反馈信号回收由下游路由器释放的通道逻辑编号;从快速通道模块接收输出端口快速传输状态,从本地路由器P个输入端口接收通道请求,采用轮循方法对通道请求进行仲裁,在第i输出端口的快速传输状态无效时,发送第i输出端口的通道仲裁结果给超前信号管理模块,发送通道仲裁应答给第i输入端口,i=1,…,P;通道仲裁模块还给通道仲裁获胜报文分配通道逻辑编号,并将该通道逻辑编号发送给超前信号管理模块;通道逻辑编号指本地路由器给下游路由器输入报文分配的临时编号,当输入报文从下游路由器离开时,下游路由器释放该临时编号;通道逻辑编号的位宽为N为输入端口内虚拟通道模块与快速通道模块总数,表示对log2N上取整;超前信号管理模块与上游路由器、下游路由器、本地路由器P个输入端口、通道仲裁模块及快速通道模块相连;超前信号管理模块从上游路由器接收由上游路由器分配的超前信号,计算下游路由方向,更新超前信号中的下游路由方向信息;超前信号管理模块从P个输入端口接收由上游路由器分配的通道逻辑编号,查询下游路由方向信息,发送下游路由方向信息给P个输入端口;超前信号管理模块从通道仲裁模块接收输出端口通道仲裁结果以及由本地路由器分配的通道逻辑编号,从快速仲裁模块接收输出端口快速传输状态以及输出端口快速仲裁结果,当输出端口快速传输状态有效时,根据输出端口快速仲裁结果选择快速仲裁获胜报文的超前信号,利用本地路由器分配的通道逻辑编号替换超前信号中的通道逻辑编号信息,发送超前信号给下游路由器;当输出端口快速传输状态无效时,根据输出端口通道仲裁结果选择通道仲裁获胜的超前信号,利用本地路由器分配的通道逻辑编号替换超前信号中的通道逻辑编号信息,发送超前信号给下游路由器;交叉开关与快速仲裁模块、传输仲裁模块和P个输入端口相连,其大小为2P×P;交叉开关从每个输入端口接收一个快速通道报文切片与一个虚拟通道报文切片,从快速仲裁模块接收快速仲裁配置Config1,从传输仲裁模块接收传输仲裁配置Config2,对Config1和Config2进行合并操作,产生配置信号Config对交叉开关进行配置,转发从各输入端口接收的快速通道报文切片与虚拟通道报文切片到达目标输出端口,合并操作是指将位宽为P×P的Config1和Config2信号合并成位宽为2×P×P的Config信号,Config信号的第2f×P+1位至2f×P+P位等于Config1信号的f×P+1位至f×P+P位,Config信号的第2f×P+P+1位至2f×P+2P位等于Config2信号的f×P+1位至f×P+P位,0≤f≤P-1,f为整数;输出端口与交叉开关、下游路由器相连,从交叉开关接收报文,发送报文给下游路由器。
2.如权利要求1所述的基于快速通道技术的单周期片上路由器,其特征在于所述输入端口由通道分配模块、缓冲存储模块、快速通道模块、N-1个虚拟通道模块、传输请求发送单元和通道请求发送单元组成;通道分配模块与上游路由器、本地路由器的传输仲裁模块和超前信号管理模块、所属输入端口的缓冲存储模块、快速通道模块和N-1个虚拟通道模块相连;通道分配模块由通道地址产生单元、通道状态表格、空闲通道跟踪单元、通道分发单元、通道流反馈控制单元、使能单元以及更新单元组成;通道地址产生单元由通道地址表格与地址更新器组成,通道地址产生单元从通道分发单元接收通道物理编号,从上游路由器接收切片传输标识、切片类型和通道逻辑编号,将分配给输入报文的虚拟通道模块或快速通道模块的写地址发送给缓冲存储模块,同时对分配给输入报文的虚拟通道模块或快速通道模块的写地址进行更新;通道物理编号是指本地路由器给输入报文实际分配的快速通道模块或虚拟通道模块的编号;通道地址表格是一个深度为N的寄存器文件,包含三个写端口和三个读端口,用于存储各快速通道模块与虚拟通道模块的写地址;地址更新器与上游路由器、通道地址表格、通道分发单元和缓冲存储模块相连,它从上游路由器接收切片类型、切片传输标识和通道逻辑编号,从通道分发单元接收通道物理编号;当切片传输标识以及切片类型最高位均有效时,地址更新器将右移log2L位后的通道物理编号作为写地址发送给缓冲存储模块,L是2的整数次幂,发送通道逻辑编号给通道地址表格写地址端口,发送右移log2L位后的通道物理编号给通道地址表格写数据端口,发送有效信号给通道地址表格写控制端口,更新输入报文所在虚拟通道模块或快速通道模块的写地址;当切片传输标识有效但接收切片类型最高位无效时,地址更新器发送通道逻辑编号给通道地址表格读地址端口与写地址端口,发送有效信号给通道地址表格读控制端口,从通道地址表格读数据端口读出数据作为写地址发送给缓冲存储模块;同时,地址更新器发送有效信号给通道地址表格写控制端口,将写地址加1之后发送给通道地址表格写数据端口;通道状态表格是一个位宽为N的寄存器,各通道状态位记录一个快速通道模块或虚拟通道模块的空闲状态,通道状态位有效表示快速通道模块或虚拟通道模块闲置,通道状态位无效表示快速通道模块或虚拟通道模块正忙;通道状态表格与上游路由器、通道分发单元、通道流反馈控制单元、空闲通道跟踪单元相连;通道状态表格一方面从通道分发单元接收分配的通道物理编号,从上游路由器接收切片类型,如果切片类型最高位有效,分配给该切片所属报文的通道物理编号所指的通道状态位被置为无效;通道状态表格另一方面从通道流反馈控制单元接收释放信号和释放通道编号,如果释放信号有效,释放通道编号所指的通道状态位被置为有效;释放通道编号指本地路由器分配给当前输入端口流出报文的通道物理编号;空闲通道跟踪单元与通道分发单元、通道状态表格相连,它从通道状态表格读取通道状态,按照虚拟通道模块S1>S2>…>SN-1分配优先级,向通道分发单元发送空闲快速通道模块的通道物理编号、组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,组合A={S1,…,SN-3,SN-2},组合B={S1,…,SN-3,SN-1};通道分发单元由一个P-1:1多选器和两个2:1多选器组成,它与上游路由器、通道状态表格、通道地址产生单元、空闲通道跟踪单元以及传输仲裁模块相连;通道分发单元从上游路由器接收输入报文,从空闲通道跟踪单元接收空闲快速通道的通道物理编号、组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,从传输仲裁模块接收输出端口传输状态,依据输出端口传输状态给输入报文分配虚拟通道模块或快速通道模块,发送分配的通道物理编号给通道状态表格、通道地址产生单元和使能单元;P-1:1多选器从上游路由器接收输入报文的下游路由方向,从传输仲裁模块接收输出端口传输状态,根据下游路由方向信息对输出端口传输状态进行多路选择,得到目标输出端口的传输状态,作为快速通道使用标识发送给第二2:1选择器;第一2:1选择器从空闲通道跟踪单元接收组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号,从上游路由器接收输入报文切片类型,根据切片类型最高位对组合A中一个空闲虚拟通道模块的通道物理编号与组合B中一个空闲虚拟通道模块的通道物理编号进行两路选择,结果作为预分配虚拟通道模块的通道物理编号发送给第二2:1选择器;第二2:1选择器从P-1:1多选器接收快速通道使用标识,从第一2:1选择器接收预分配虚拟通道模块的通道物理编号,从空闲通道跟踪单元接收快速通道模块的通道物理编号,根据快速通道使用标识对快速通道模块的通道物理编号与预分配虚拟通道模块的通道物理编号进行2路选择,结果作为分配的通道物理编号发送给通道状态表格、通道地址产生单元与使能单元;通道流反馈控制单元与通道状态表格、所属输入端口的快速通道模块和N-1个虚拟通道模块及上游路由器相连,从所属输入端口的快速通道模块与N-1个虚拟通道模块接收释放信号以及释放通道逻辑编号;如果发现输入端口内任意虚拟通道模块或快速通道模块的释放信号有效,通道流反馈控制单元将从该虚拟通道模块或快速通道模块接收的释放信号与释放通道逻辑编号作为通道流反馈信号发送给上游路由器;将该虚拟通道模块或快速通道模块的通道物理编号作为释放通道编号发送给通道状态表格,置释放通道编号所指的通道状态位为有效;使能单元与通道分发单元、所属输入端口的快速通道模块与N-1个虚拟通道模块相连,从通道分发单元接收通道物理编号,从上游路由器接收报文切片,当报文切片的切片类型最高位有效时,将通道物理编号所指的通道使能信号置为有效,其余通道使能信号置为无效,发送所有通道使能信号给各快速通道模块与虚拟通道模块;更新单元与上游路由器、超前信号管理模块和所属输入端口的缓冲存储模块相连,它从上游路由器接收报文切片,从超前信号管理模块接收下游路由方向信息,当输入报文切片的切片类型最高位有效时,利用下游路由方向信息更新输入报文中的下游路由方向子域,然后发送报文切片给缓冲存储模块;缓冲存储模块由缓冲控制器与缓冲存储器组成,与所属输入端口的通道分配模块、快速通道模块、N-1个虚拟通道模块、传输仲裁模块及交叉开关相连;缓冲存储模块从通道分配模块接收写地址和报文切片,从快速通道模块与N-1个虚拟通道模块接收写使能,在写使能或输入报文切片类型最高位有效时根据写地址来存储报文切片;缓冲存储模块从快速通道模块接收读使能、读地址及旁路使能,从N-1个虚拟通道模块接收读使能及读地址,从传输仲裁模块接收传输仲裁应答,在读使能有效时,根据传输仲裁应答对读地址进行多路选择,交叉开关根据多路选择结果读取报文切片;在旁路使能有效时,交叉开关根据从通道分配模块接收的写地址读取报文切片;缓冲控制器是产生缓冲存储器访问信号的逻辑电路,与通道分配模块、快速通道模块、N-1个虚拟通道模块、传输仲裁模块、缓冲存储器相连;缓冲控制器从通道分配模块接收报文切片类型,从快速通道模块与N-1个虚拟通道模块接收写使能,对报文切片类型最高位与所有写使能进行或操作,发送操作结果给缓冲存储器的写控制端口;从快速通道模块与N-1个虚拟通道模块接收读地址,从传输仲裁模块接收传输仲裁应答,对传输仲裁应答进行锁存,根据锁存后的传输仲裁应答对所有读地址进行多路选择,发送选择结果给缓冲存储器的第一读地址端口;从快速通道模块与N-1个虚拟通道模块接收读使能,对所有读使能进行或操作,发送操作结果给缓冲存储器的第一读控制端口;从通道分配模块接收写地址,对写地址进行锁存,将锁存后的写地址作为第二读地址信号发送给缓冲存储器的第二读地址端口;从快速通道模块接收旁路使能,将旁路使能发送给缓冲存储器第二读控制端口;缓冲存储器是深度为N×L的寄存器文件,包含3个写端口和6个读端口,与通道分配模块、缓冲控制器、交叉开关相连;缓冲存储器的写数据端口与写地址端口分别从通道分配模块接收报文切片与写地址,写控制端口从缓冲控制器接收写控制信号;缓冲存储器第一读控制端口与第一读地址端口分别从缓冲控制器接收第一读控制信号与第一读地址信号,从第一读数据端口读出的虚拟通道报文切片被发送给交叉开关;缓冲存储器的第二读控制端口与第二读地址端口从缓冲控制器分别接收第二读控制信号与第二读地址信号,从第二读数据端口读出的快速通道报文切片被发送给交叉开关;虚拟通道模块由第一读计数器、第一写计数器和虚拟通道状态机组成,它与传输请求发送单元、通道请求发送单元、传输仲裁模块、通道仲裁模块、通道分配模块和缓冲存储模块相连;虚拟通道模块从通道分配模块接收通道使能、报文长度、切片传输标识、本地路由方向及通道逻辑编号,如果通道使能有效,激活虚拟通道状态机,发送写使能、读使能、读地址给缓冲存储模块,发送传输请求给传输请求发送单元,发送通道请求给通道请求发送单元,并从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,等待报文传输完毕,发送释放信号、释放通道逻辑编号给通道分配模块;第一读计数器位宽为log2L,与通道分配模块、传输仲裁模块、虚拟通道状态机相连,它从通道分配模块接收通道使能、报文长度,从传输仲裁模块接收传输仲裁应答,然后发送第一读计数器的值给虚拟通道状态机;当从通道分配模块接收的通道使能有效时,第一读计数器取值为从通道分配模块接收的报文长度;当从传输仲裁模块接收的传输仲裁应答有效时,第一读计数器值减1;第一写计数器的位宽为log2L,与通道分配模块、虚拟通道状态机相连,它从通道分配模块接收通道使能信号、报文长度和切片传输标识,然后发送第一写计数器的值给虚拟通道状态机;当从通道分配模块接收的通道使能有效时,第一写计数器的值为从通道分配模块接收的报文长度;当从通道分配模块接收的报文切片中切片传输标识有效且第一写计数器值非零时,第一写计数器值减1;虚拟通道状态机与第一读计数器、第一写计数器、传输仲裁模块、通道仲裁模块、所属输入端口的传输请求发送单元、通道请求发送单元、通道分配模块和缓冲存储模块相连;快速通道模块由第二读计数器、第二写计数器和快速通道状态机组成,它与快速仲裁模块、传输仲裁模块、通道仲裁模块以及所属输入端口的传输请求发送单元、通道请求发送单元、通道分配模块和缓冲存储模块相连;快速通道模块从通道分配模块接收通道使能、报文长度、切片传输标识、本地路由方向及通道逻辑编号,如果通道使能有效,激活快速通道状态机,发送写使能、读使能、读地址与旁路使能信号给缓冲存储模块,发送快速传输请求给快速仲裁模块,发送传输请求给传输请求发送单元,发送通道请求给通道请求发送单元,并从快速仲裁模块接收快速仲裁应答,从传输仲裁模块接收传输仲裁应答,从通道仲裁模块接收通道仲裁应答,等待报文传输完毕,发送释放信号、释放通道逻辑编号给通道分配模块;第二读计数器位宽为log2L,与通道分配模块、传输仲裁模块、快速仲裁模块及快速通道状态机相连,它从通道分配模块接收通道使能、报文长度,从传输仲裁模块接收传输仲裁应答,从快速仲裁模块接收快速仲裁应答,发送第二读计数器的值给快速通道状态机;当从通道分配模块接收的通道使能有效时,第二读计数器的值为从通道分配模块接收的报文长度,当从快速仲裁模块接收的快速仲裁应答或从传输仲裁模块接收的传输仲裁应答有效时,读计数器值减1;第二写计数器的位宽为log2L,与通道分配模块、快速通道状态机相连,它从通道分配模块接收通道使能、报文长度和切片传输标识,发送第二写计数器的值给快速通道状态机;当从通道分配模块接收的通道使能时,第二写计数器的值为从通道分配模块接收的报文长度;当从通道分配模块接收的报文切片中切片传输标识有效且第二写计数器值非零时,第二写计数器值减1;快速通道状态机与第二读计数器、第二写计数器、快速仲裁模块、传输仲裁模块、通道仲裁模块、所属输入端口的传输请求发送单元、通道请求发送单元、通道分配模块和缓冲存储模块相连;传输请求发送单元接收来自所属输入端口快速通道模块和N-1个虚拟通道模块的传输请求,将所有传输请求进行拼接之后作为输入端口的传输请求发送给传输仲裁模块;通道请求发送单元接收来自所属输入端口快速通道模块和N-1个虚拟通道模块的通道请求,将所有通道请求进行拼接之后作为输入端口的通道请求发送给通道仲裁模块。
3.如权利要求1所述的基于快速通道技术的单周期片上路由器,其特征在于所述快速仲裁模块由第一应答控制部件和P个快速仲裁部件组成,它与P个输入端口、通道仲裁模块、传输仲裁模块、超前信号管理模块与交叉开关相连;快速仲裁模块从P个输入端口接收快速传输请求,对所有快速传输请求进行或操作,产生各输出端口的快速传输状态,发送P个输出端口的快速传输状态给通道仲裁模块、传输仲裁模块及超前信号管理模块;对P个输入端口的快速传输请求进行仲裁,将快速仲裁应答发给P个输入端口,将P个输出端口的快速仲裁结果发给超前信号管理模块;对P个输出端口快速仲裁结果进行拼接操作,产生快速仲裁配置Config1,将快速仲裁配置Config1发给交叉开关;快速仲裁部件与P个输入端口和第一应答控制部件相连,第i个快速仲裁部件从P个输入端口接收快速传输请求,采用轮循方法对所有快速传输请求进行仲裁,将仲裁结果发给第一应答控制部件;对所有快速传输请求进行或操作产生第i输出端口的快速传输状态,将第i输出端口的快速传输状态发送给第一应答控制部件;第一应答控制部件与P个快速仲裁部件、P个输入端口、传输仲裁模块、通道仲裁模块、超前信号管理模块和交叉开关相连;第一应答控制部件从快速仲裁部件分别接收P个仲裁结果,将P个仲裁结果作为输出端口快速仲裁结果发送给超前信号管理模块;将P个仲裁结果进行拼接之后作为快速仲裁配置Config1发送给交叉开关;将P个仲裁结果进行或操作之后作为快速仲裁应答发送给P个输入端口;第一应答控制部件还从P个快速仲裁部件接收P个快速传输状态,将P个快速传输状态发送给传输仲裁模块、通道仲裁模块和超前信号管理模块。
4.如权利要求1所述的基于快速通道技术的单周期片上路由器,其特征在于所述通道仲裁模块由通道请求分发部件,P个通道仲裁部件和第二应答控制单元组成,它与下游路由器、P个输入端口、快速仲裁模块及超前信号管理模块相连;通道仲裁模块从快速仲裁模块接收输出端口快速传输状态,从P个输入端口接收通道请求,采取轮循方法对P个输入端口通道请求进行仲裁,当输出端口快速传输状态无效时,发送输出端口仲裁结果给超前信号管理模块,发送通道应答给P个输入端口;通道仲裁模块从下游路由器接收通道反馈信号,回收由下游路由器释放的通道逻辑编号;同时,给通道仲裁获胜报文或快速仲裁获胜报文分配通道逻辑编号,将该通道逻辑编号发送给超前信号管理模块;通道请求分发部件与P个输入端口、通道仲裁模块中P个通道仲裁部件相连,它从P个输入端口接收通道请求,给第i通道仲裁部件发送各输入端口向第i输出端口的请求,其中,各输入端口向第i输出端口的请求位宽均为N,包括输入端口中快速通道模块及N-1个虚拟通道模块向第i输出端口的请求;通道仲裁部件由PN:1通道仲裁单元、逻辑通道分发单元、通道逻辑编号表格组成,它与下游路由器、通道请求分发部件、第二应答控制部件、快速仲裁模块及超前信号管理模块相连;第i通道仲裁部件的PN:1通道仲裁单元是对PN个通道请求进行仲裁的电路,它从通道请求分发部件接收所有输入端口向第i输出端口的通道请求,采用轮循方法对所有通道请求进行仲裁,将仲裁结果发给同部件中的逻辑通道分发单元;第i通道仲裁部件的逻辑通道分发单元从PN:1通道仲裁单元接收仲裁结果,从快速仲裁模块接收第P输出端口快速传输状态,从通道逻辑编号表格接收各通道逻辑编号是否可用的信息,如果快速传输状态无效,且通道逻辑编号表格中存在通道逻辑编号可用,逻辑通道分发单元发送仲裁结果给第二应答控制部件;如果通道逻辑编号表格中所有通道逻辑编号均不可用,或者快速传输状态有效,逻辑通道分发单元将通道仲裁结果清零之后发送给通道仲裁结果第二应答控制部件。如果通道逻辑编号表格中存在通道逻辑编号可用,第i通道仲裁部件的逻辑通道分发单元判断从PN:1通道仲裁单元接收的通道仲裁结果以及从快速仲裁模块接收的第i输出端口快速传输状态是否有效。如果通道仲裁结果或者快速传输状态有效,逻辑通道分发单元还根据各通道逻辑编号的可用信息,采取轮循方法选取一个可用的通道逻辑编号,发送该通道逻辑编号给超前信号管理模块与逻辑通道状态表格,同时发送分配信号给通道逻辑编号表格,置该通道逻辑编号为不可用;通道逻辑编号表格是一个位宽为N的寄存器,每一位记录各通道逻辑编号是否可用,其中,第i位有效表示通道逻辑编号i可用,第i位无效表示通道逻辑编号i不可用;通道逻辑编号表格与逻辑通道分发单元、下游路由器相连,它一方面从逻辑通道分发单元接收分配信号以及通道逻辑编号,如果分配信号有效,则分配的通道逻辑编号所指寄存器位被置为无效;另一方面从下游路由器接收通道反馈信号,如果通道反馈信号中释放信号有效,则通道反馈信号中释放通道逻辑编号所指寄存器位被置为有效;第二应答控制部件与P个通道仲裁部件、输入端口和超前信号管理模块相连;第二应答控制部件从P个通道仲裁部件接收通道仲裁结果,对所有通道仲裁结果进行或逻辑操作,并将操作结果的(i-1)×N+1位至i×N位作为第i输入端口通道仲裁应答发送给第i输入端口;第二应答控制部件还将从第i通道仲裁部件接收的仲裁结果作为第i输出端口通道仲裁结果发送给超前信号管理模块。
5.如权利要求1所述的基于快速通道技术的单周期片上路由器,其特征在于所述传输仲裁模块由传输请求分发部件,P个传输仲裁部件以及第三应答控制部件组成,它与P个输入端口、快速仲裁模块和交叉开关相连;传输仲裁模块从P个输入端口接收传输请求,对所有传输请求进行或操作得到P个输出端口传输状态,发送输出端口传输状态给P个输入端口;采用轮循方法对P个输入端口传输请求进行仲裁,当从快速仲裁模块接收的输出端口快速传输状态无效时,产生传输仲裁应答发送给P个输入端口,产生传输仲裁配置Config2发送给交叉开关;传输请求分发部件与P个输入端口、传输仲裁模块中P个传输仲裁部件相连,它从P个输入端口接收传输请求,给第i传输仲裁部件发送各输入端口向第i输出端口的请求;各输入端口向第i输出端口的请求信号宽度为N,包括输入端口内快速通道模块与N-1个虚拟通道模块向第i输出端口的请求;传输仲裁部件由PN:1传输仲裁单元、仲裁屏蔽单元和或逻辑单元组成,它与传输请求分发部件、快速仲裁模块及第三应答控制部件相连;第i传输仲裁部件的PN:1传输仲裁单元是对PN个传输请求的仲裁电路,它从传输请求分发部件接收所有输入端口向第i输出端口的传输请求,采取轮循方法对PN个传输请求进行仲裁,发送仲裁结果给同部件中的仲裁屏蔽单元;第i传输仲裁部件中仲裁屏蔽单元从PN:1传输仲裁单元接收仲裁结果,从快速仲裁模块接收第P输出端口快速传输状态,如果快速传输状态无效,将仲裁结果作为第i输出端口传输仲裁结果发送给第三应答控制部件;如果快速传输状态有效,将第i输出端口传输仲裁结果清零后发送给第三应答控制部件;第i传输仲裁部件的或逻辑单元从传输请求分发部件接收所有输入端口向第i输出端口的传输请求,对所有传输请求进行或操作得到第i输出端口的传输状态,发送第i输出端口的传输状态给第三应答控制部件;第三应答控制部件与P个传输仲裁部件、输入端口与交叉开关相连;第三应答控制部件从P个传输仲裁部件接收P个输出端口传输仲裁结果,对所有传输仲裁结果进行拼接操作,产生传输仲裁配置Config2,发送传输仲裁配置Config2发送给交叉开关;对所有传输仲裁结果进行或操作,将操作结果的(i-1)×N+1位至i×N位作为第i输入端口传输仲裁应答,发送第i输入端口传输仲裁应答给第i输入端口;第三应答控制部件还从P个传输仲裁部件接收P个输出端口传输状态,对所有传输状态进行拼接操作,产生输出端口传输状态,发送输出端口传输状态给P个输入端口。
6.如权利要求1所述的基于快速通道技术的单周期片上路由器,其特征在于所述超前信号管理模块由P个计算存储部件与P个信号驱动部件组成,与P个输入端口、通道仲裁模块、快速仲裁模块、上游路由器和下游路由器相连;超前信号管理模块从上游路由器接收超前信号,计算下游路由方向,更新超前信号中的下游路由方向信息;从P个输入端口接收由上游路由器分配的通道逻辑编号,查询下游路由方向信息,发送下游路由方向给P个输入端口;从通道仲裁模块接收本地分配的通道逻辑编号与输出端口通道仲裁结果,从快速仲裁模块接收快速传输状态与输出端口快速仲裁结果,根据输出端口通道仲裁结果、快速传输状态及输出端口快速仲裁结果来选择通道仲裁获胜报文或者快速通道报文的超前信号,利用本地分配的通道逻辑编号替换超前信号中通道逻辑编号信息,发送超前信号给下游路由器;超前信号由通道逻辑编号、目标地址与下游路由方向三个域组成,目标地址位宽为S,指明报文传输的目标地址,S为正整数,为4位到8位;下游路由方向位宽为P,指明报文在下游路由器中的传输方向;每个计算存储部件由路由计算单元、超前信号表格、发送单元和第一多路选择单元组成;路由计算单元与上游路由器、超前信号表格相连,它从上游路由器接收超前信号,根据常规路由算法以及超前信号中目标路由器地址产生下游路由方向,更新超前信号中下游路由方向信息,并根据超前信号中通道逻辑编号将超前信号写入超前信号表格;超前信号表格由N个寄存器组成,每个寄存器记录各通道逻辑编号对应的超前信号,它与路由计算单元、发送单元与第一多路选择单元相连;发送单元与超前信号表格、P个信号驱动部件相连;第i个计算存储部件的发送单元读取超前信号表格N个寄存器中的超前信号VAdvi,j,j=1,…,N,将超前信号VAdvi,j发送给所有P个信号驱动部件;第一多路选择单元与超前信号表格、P个信号驱动部件和输入端口相连;第i计算存储部件的第一多路选择单元从第i个输入端口接收由上游路由器分配的通道逻辑编号,根据通道逻辑编号对超前信号表格中N个寄存器进行多路选择,将选择结果中的下游路由方向发送给第i输入端口,同时对选择结果进行锁存产生超前信号FAdvi,将超前信号FAdvi发送给所有P个信号驱动部件;信号驱动部件由第二多路选择单元,第三多路选择单元,临时寄存器,第四多路选择单元、替换单元和逻辑或门组成,与P个计算存储部件、通道仲裁模块、快速仲裁模块和下游路由器相连;第j信号驱动部件的第二多路选择单元从通道仲裁模块接收输出端口j的通道仲裁结果,从P个计算存储部件接收N×P个超前信号VAdvi,j,根据通道仲裁结果对N×P个超前信号VAdvi,j进行多路选择,将多路选择结果发送给临时寄存器进行锁存;第j信号驱动部件临时寄存器从第二多路选择单元接收多路选择结果的目标地址与下游路由方向进行锁存,从通道仲裁模块接收第j输出端口的分配通道逻辑编号进行锁存,将锁存结果发送给第四多路选择单元;第j信号驱动部件的第四多路选择单元从快速仲裁模块接收第j输出端口的快速传输状态,根据快速传输状态对‘0’信号与来自临时寄存器的锁存结果进行两路选择,如果快速传输状态有效,则将‘0’信号发送给逻辑或门,否则将临时寄存器锁存结果发送给逻辑或门;第j信号驱动部件的第三多路选择单元从快速仲裁模块接收输出端口j的快速仲裁结果,从P个计算存储部件接收超前信号FAdvi,根据快速仲裁结果对P个超前信号FAdvi进行多路选择,将多路选择结果发送给替换单元;第j信号驱动部件的替换单元从通道仲裁模块接收第j输出端口的分配通道逻辑编号,从第三多路选择单元接收多路选择结果,利用分配通道逻辑编号替换多路选择结果中的通道逻辑编号信息,将替换结果发送给逻辑或门;逻辑或门对来自替换单元的替换结果和来自第四多路选择单元的多路选择结果进行或操作,将操作结果作为超前信号发送给下游路由器。
7.如权利要求2所述的基于快速通道技术的单周期片上路由器,其特征在于所述虚拟通道状态机由四个状态组成,“00”状态表示通道空闲;“01”状态表示等待通道仲裁应答;“10”表示等待传输仲裁应答;“11”表示通道仲裁应答、传输仲裁应答均已有效;上电复位时,虚拟通道状态机处于状态“00”,若发现从通道分配模块接收的通道使能信号有效,锁存从通道分配模块接收的通道逻辑编号,转向状态“01”;虚拟通道状态机处于“01”状态时,发送通道请求给通道请求发送单元,发送传输请求给传输请求发送单元,如果第一写计数器值非零,则发送写使能给缓冲存储模块;如果从通道仲裁模块接收的通道仲裁应答有效,但从传输仲裁模块接收的传输仲裁应答无效,转移到“10”状态;如果通道仲裁应答且传输仲裁应答均有效,转移到“11”状态;虚拟通道状态机处于“10”状态时,发送传输请求给传输请求发送单元,如果第一写计数器值非零,则发送写使能给缓冲存储模块;如果传输仲裁应答有效,转移到“11”状态;虚拟通道状态机处于“11”时,发送传输请求给传输请求发送单元,发送读使能信号与读地址给缓冲存储模块,如果第一写计数器值非零,发送写使能信号给缓冲存储模块;如果第一读计数器值为零,转移到状态“00”,并发送释放信号与锁存的通道逻辑编号给通道分配模块。
8.如权利要求2所述的基于快速通道技术的单周期片上路由器,其特征在于所述快速通道状态机共有六个状态,“000”状态表示通道空闲;“001”状态表示等待快速仲裁应答;“010”状态表示快速传输;“011”表示等待通道仲裁应答;“100”表示等待传输仲裁应答;“101”表示通道仲裁应答、传输仲裁应答均有效;上电复位时,快速通道状态机处于状态“000”,若发现从通道分配模块接收的通道使能有效,锁存从通道分配模块接收的通道逻辑编号,转向状态“001”;快速通道状态机处于“001”状态时,发送快速传输请求给快速仲裁模块,发送旁路使能给缓冲存储模块,如果第二写计数器取值非零,发送写使能给缓冲存储模块;如果从快速仲裁模块接收的快速仲裁应答有效,则转移到“010”状态;如果从快速仲裁模块接收的快速仲裁应答无效,转移到“011”状态;快速通道状态机处于“010”状态时,发送旁路使能给缓冲存储模块,发送快速传输请求给快速仲裁模块,如果第二写计数器取值非零,发送写使能给缓冲存储模块;如果第二读计数器值为零,则转移到状态“000”,并发送释放信号与锁存的通道逻辑编号给通道分配模块;快速通道状态机处于“011”状态时,发送通道请求给通道请求发送单元,发送传输请求给传输请求发送单元,如果第二写计数器值非零,则发送写使能给缓冲存储模块;如果从通道仲裁模块接收的通道仲裁应答有效,而从传输仲裁模块接收的传输仲裁应答无效,则转移到“100”状态;如果通道仲裁应答、传输仲裁应答均有效,则转移到“101”状态;快速通道状态机处于“100”时,发送传输请求给传输请求发送单元,如果第二写计数器值非零,则发送写使能给缓冲存储模块;如果传输仲裁应答有效,则转移到“101”状态;快速通道状态机处于“101”时,发送传输请求给传输请求发送单元,发送读使能信号与读地址给缓冲存储模块,如果第二写计数器值非零,则发送写使能信号给缓冲存储模块;如果第二读计数器值为零,则转移到状态“000”,并发送释放信号与锁存的通道逻辑编号给通道分配模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105845504A CN102185751B (zh) | 2010-12-13 | 2010-12-13 | 一种基于快速通道技术的单周期片上路由器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105845504A CN102185751B (zh) | 2010-12-13 | 2010-12-13 | 一种基于快速通道技术的单周期片上路由器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102185751A CN102185751A (zh) | 2011-09-14 |
CN102185751B true CN102185751B (zh) | 2013-07-17 |
Family
ID=44571821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105845504A Expired - Fee Related CN102185751B (zh) | 2010-12-13 | 2010-12-13 | 一种基于快速通道技术的单周期片上路由器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102185751B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486258B (zh) * | 2014-12-09 | 2017-09-26 | 中国航空工业集团公司第六三一研究所 | 一种基于交换通道的交换电路 |
CN104486263B (zh) * | 2014-12-09 | 2017-10-24 | 中国航空工业集团公司第六三一研究所 | 一种共享存储交换机发送控制方法及系统 |
CN106453109A (zh) * | 2016-10-28 | 2017-02-22 | 南通大学 | 一种片上网络通信方法及路由器 |
CN108848098B (zh) * | 2018-06-26 | 2021-02-23 | 宿州学院 | 一种嵌入式终端设备的通信通道管理方法及系统 |
CN109918043B (zh) * | 2019-03-04 | 2020-12-08 | 上海熠知电子科技有限公司 | 一种基于虚拟通道的运算单元共享方法和系统 |
CN110620731B (zh) * | 2019-09-12 | 2021-03-23 | 中山大学 | 一种片上网络的路由装置及路由方法 |
CN110519174B (zh) * | 2019-09-16 | 2021-10-29 | 无锡江南计算技术研究所 | 一种面向高阶路由器芯片的高效并行管理方法及架构 |
CN113722249B (zh) * | 2021-11-01 | 2022-02-08 | 中科声龙科技发展(北京)有限公司 | 数据处理装置及数据处理方法 |
CN114490456B (zh) * | 2021-12-28 | 2024-06-04 | 海光信息技术股份有限公司 | 电路模块、信用控制方法、集成电路和存储介质 |
CN115550235B (zh) * | 2022-06-22 | 2024-02-09 | 南京大学 | 面向神经网络平台的单周期路由器 |
CN115580572B (zh) * | 2022-09-20 | 2024-04-19 | 海光信息技术股份有限公司 | 路由方法、路由节点、路由装置和计算机可读存储介质 |
CN116107923B (zh) * | 2022-12-27 | 2024-01-23 | 深存科技(无锡)有限公司 | 一种基于bram的多对多高速访存架构和访存系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753388A (zh) * | 2008-11-28 | 2010-06-23 | 中国科学院微电子研究所 | 适用于多核处理器片上和片间扩展的路由及接口装置 |
CN101778049A (zh) * | 2010-03-04 | 2010-07-14 | 南京大学 | 包-电路交换片上路由器及其传输方法 |
CN101834789A (zh) * | 2010-04-15 | 2010-09-15 | 南京大学 | 面向包-电路交换片上路由器的回退转向路由算法及所用路由器 |
CN101841420A (zh) * | 2010-05-24 | 2010-09-22 | 中国人民解放军国防科学技术大学 | 面向片上网络的低延迟路由器结构 |
-
2010
- 2010-12-13 CN CN2010105845504A patent/CN102185751B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753388A (zh) * | 2008-11-28 | 2010-06-23 | 中国科学院微电子研究所 | 适用于多核处理器片上和片间扩展的路由及接口装置 |
CN101778049A (zh) * | 2010-03-04 | 2010-07-14 | 南京大学 | 包-电路交换片上路由器及其传输方法 |
CN101834789A (zh) * | 2010-04-15 | 2010-09-15 | 南京大学 | 面向包-电路交换片上路由器的回退转向路由算法及所用路由器 |
CN101841420A (zh) * | 2010-05-24 | 2010-09-22 | 中国人民解放军国防科学技术大学 | 面向片上网络的低延迟路由器结构 |
Also Published As
Publication number | Publication date |
---|---|
CN102185751A (zh) | 2011-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102185751B (zh) | 一种基于快速通道技术的单周期片上路由器 | |
CN101978659B (zh) | 分组交换的片上互连网络中的快速虚拟通道 | |
EP2227749B1 (en) | Bus enhanced network on chip | |
CN101841420B (zh) | 面向片上网络的低延迟路由器结构 | |
US8085801B2 (en) | Resource arbitration | |
CN103348640B (zh) | 中继装置 | |
CN102629913B (zh) | 适用于全局异步局部同步片上互连网络的路由器装置 | |
US10749811B2 (en) | Interface virtualization and fast path for Network on Chip | |
CN101873253B (zh) | 带缓冲的纵横式交换机系统 | |
Sethuraman et al. | LiPaR: A light-weight parallel router for FPGA-based networks-on-chip | |
EP2589186B1 (en) | Providing a bufferless transport method for multi-dimensional mesh topology | |
Krishna et al. | NoC with near-ideal express virtual channels using global-line communication | |
CN105721355A (zh) | 一种片上网络路由传输报文的方法及片上网络路由 | |
CN105765557A (zh) | 用于混合式电路交换和分组交换路由器的架构和方法 | |
US9294419B2 (en) | Scalable multi-layer 2D-mesh routers | |
CN106453109A (zh) | 一种片上网络通信方法及路由器 | |
CN105610707A (zh) | AntNet路由算法在二维网格拓扑片上网络中的实现方法 | |
Dai et al. | A cost-efficient router architecture for HPC inter-connection networks: design and implementation | |
CN101527686A (zh) | 一种数据交换方法和设备 | |
US20100002716A1 (en) | Switching method | |
Agyeman et al. | An efficient 2d router architecture for extending the performance of inhomogeneous 3d noc-based multi-core architectures | |
Dinesh Kumar et al. | Dynamic low power management technique for decision directed inter-layer communication in three dimensional wireless network on chip | |
Sahu et al. | Area and power efficient network on chip router architecture | |
Dai et al. | A scalable and resilient microarchitecture based on multiport binding for high-radix router design | |
CN102984088A (zh) | 应用于afdx交换机确保帧转发顺序一致性的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130717 Termination date: 20131213 |