[发明专利]三维torus网中的无死锁自适应路由方法无效

专利信息
申请号: 200810104405.4 申请日: 2008-04-18
公开(公告)号: CN101335704A 公开(公告)日: 2008-12-31
发明(设计)人: 向东;陈振;王琦 申请(专利权)人: 清华大学
主分类号: H04L12/56 分类号: H04L12/56;H04L29/06
代理公司: 北京众合诚成知识产权代理有限公司 代理人: 朱琨
地址: 100084北*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 三维 torus 中的 死锁 自适应 路由 方法
【权利要求书】:

1.三维torus网中的无死锁自适应路由方法,其特征在于,所述方法是在每一维上有k个节点的三维torus网上依次按步骤实现的:

步骤(1):初始化

对于三维torus网络,连接每一维两个边界之间的物理通道称为边界通道;把每条物理通道被划分为两条虚拟通道:c1和c2,这两条通道均为两向通道,c1通道分为c1+和c1-两个方向的通道,c2通道分为c2+和c2-两个方向的通道,“+”和“-”表示消息传输的正负方向;将x轴正方向的虚拟通道c1+表示为x(c1+),将x轴负方向的虚拟通道c1表示为x(c1-),y轴和z轴上的虚拟通道的表示方式与x轴上的虚拟通道的表示方式相同;

将三维torus网划分为划分为如下八个虚拟子网:x+y+z+、x+y+z-、x+y-z+、x+y-z-、x-y+z+、x-y+z-、x-y-z+、x-y-z-,x+、x-即表示在x轴上的正、负方向的路由,对于y轴、z轴同理;

把上述八个虚拟子网两两合并,从而得到以下四个虚拟子网:x+y+z*(x(c1+),y(c1+),z(c1)),x+y-z*(x(c2+),y(c1-),z(c1)),x-y*z+(x(c1-),y(c2),z(c2+)),x-y*z-(x(c2-),y(c2),z(c2-)),括号中的标号表示分配到每个虚拟子网中的虚拟通道,“+”和“-”表示消息传输的正负方向,“*”表示正负任意方向,x+y+z*和x+y-z*在z方向上共享c1通道,x-y*z+和x-y*z-在y方向上共享c2通道,从而在x,y,z三个方向上,每条物理通道都只用到了两条虚拟通道,当消息在y方向和z方向之间转弯时,消息跳转到不同于原分配通道的另外一条虚拟通道,以避免死锁;

步骤(2):对于每个消息依次按以下步骤分配到所属虚拟子网:

设当前节点为curr,目的节点为dest,当前节点和目的节点在两维上的偏移量为A=xd-xc,B=yd-yc,C=zd-zc,其中下标c、d分别代表当前节点和目的节点,VN表示消息所属的虚拟子网分配;

当A≥0且B≥0时,

如果A<k/2,B≥k/2,VN=x+y-z*

如果A<k/2,B<k/2,VN=x+y+z*

当A≥0且B<0时,

如果A<k/2,B≥-k/2,VN=x+y-z*

如果A<k/2,B<-k/2,VN=x+y+z*

当A<0且B≥0时,

如果A≤-k/2,B≥k/2,VN=x+y-z*

如果A≤-k/2,B<k/2,VN=x+y+z*

当A<0且B<0时,

如果A<-k/2,B<-k/2,VN=x+y+z*

如果A<-k/2,B>-k/2,VN=x+y-z*

当A≥0且C≥0时,

如果A>k/2,C≥k/2,VN=x-y*z-;

如果A>k/2,C<k/2,VN=x-y*z+;

当A≥0且C<0时,

如果A>k/2,C≥-k/2,VN=x-y*z+;

如果A>k/2,C<-k/2,VN=x-y*z-;

当A<0且C≥0时,

如果A>-k/2,C≥k/2,VN=x-y*z-;

如果A>-k/2,C<k/2,VN=x-y*z+;

当A<0且C<0时,

如果A>-k/2,C<-k/2,VN=x-y*z+;

如果A>-k/2,C>-k/2,VN=x-y*z-;

步骤(3):消息在三维平面上消息依次按以下步骤路由:

步骤(3.1):如果消息在x+y+z*虚拟子网中:

如果A≥0,B≥0,则选择通道x(c1+),y(c1+),z(c1);

如果A<0,B≥0,则选择通道x(c2+),y(c1+),z(c1);

如果A≥0,B<0,则选择通道x(c1+),y(c2+),z(c1);

如果A<0,B<0,则选择通道x(c2+),y(c2+),z(c1);

步骤(3.2):如果消息在x+y-z*虚拟子网中:

如果A≥0,B≥0,则选择通道x(c2+),y(c2-),z(c1);

如果A<0,B≥0,则选择通道x(c1+),y(c2-),z(c1);

如果A≥0,B<0,则选择通道x(c2+),y(c1-),z(c1);

如果A<0,B<0,则选择通道x(c1+),y(c1-),z(c1);

步骤(3.3):如果消息在x-y*z+虚拟子网中:

如果A≥0,C≥0,则选择通道x(c2-),y(c2),z(c2+);

如果A<0,C≥0,则选择通道x(c1-),y(c2),z(c2+);

如果A≥0,C<0,则选择通道x(c2-),y(c2),z(c1+);

如果A<0,C<0,则选择通道x(c1-),y(c2),z(c1+);

步骤(3.4):如果消息在x-y*z-虚拟子网中:

如果A≥0,C≥0,则选择通道x(c1-),y(c2),z(c1-);

如果A<0,C≥0,则选择通道x(c2-),y(c2),z(c1-);

如果A≥0,C<0,则选择通道x(c1-),y(c2),z(c2-);

如果A<0,C<0,则选择通道x(c2-),y(c2),z(c2-)。

2.根据权利要求1所述的在三维torus网中无死锁的自适应路由方法,其特征在于,在进行所述消息自适应路由时,按以下步骤避免死锁:

对于从z+方向上转弯到y-方向的消息,使用不同于原分配虚拟通道c1或c2的另外一条虚拟通道c2或c1

对于从z-方向上转弯到y-方向的消息,使用不同于原分配虚拟通道c1或c2的另外一条虚拟通道c2或c1

对于从y-+方向上转弯到z-方向的消息,使用不同于原分配虚拟通道c1或c2的另外一条虚拟通道c2或c1

对于从y+方向上转弯到z-方向的消息,使用不同于原分配虚拟通道c1或c2的另外一条虚拟通道c2或c1

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200810104405.4/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top