发明名称 系统级封装中总线在双边多绕道约束下的解绕方法
摘要 系统级封装中总线在双边多绕约束下的解绕方法,其特征在于,按从左到右总线信号顺序,对于总线中每一条连线,从预定义连接模式中选择合适模式实现互连,并通过后期检测,在可行情况下采用优化模式代替原有连接模式,达到以较少的绕道实现互连解绕。
申请公布号 CN103886157B 申请公布日期 2016.10.12
申请号 CN201410125427.4 申请日期 2014.03.28
申请人 清华大学 发明人 董社勤;林涛;罗辅其
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 北京思海天达知识产权代理有限公司 11203 代理人 楼艮基
主权项 系统级封装中总线在双边多绕约束下的解绕方法,其特征在于,它是在计算机中依次按照以下步骤实现的:步骤(1),初始化,设顶部焊点序列为(a<sub>1</sub>’,a<sub>2</sub>’,a<sub>3</sub>’.......a<sub>n</sub>’),底部焊点序列为(b<sub>1</sub>’,b<sub>2</sub>’,b<sub>3</sub>’,.....b<sub>n</sub>’),输入:所有顶部焊点上需要解绕互连的总线信号组成的顶部总线信号序列(a<sub>1</sub>,a<sub>2</sub>,a<sub>3</sub>.......a<sub>n</sub>),n为顶部总线信号个数,与顶部焊点个数相同,(a<sub>1</sub>,a<sub>2</sub>,a<sub>3</sub>.......a<sub>n</sub>)是由自然数序列{1,2,3,4,……,n}生成的一个排列,信号a<sub>i</sub>=k,i∈[1,n],k∈[1,n],表示顶部信号k在顶部焊点a<sub>i</sub>’上;所有底部焊点上需要解绕的相应总线信号组成的底部信号序列(b<sub>1</sub>,b<sub>2</sub>,b<sub>3</sub>,.....b<sub>n</sub>),n为底部总线信号个数,与所述顶部总线信号个数n在数值上相等,(b<sub>1</sub>,b<sub>2</sub>,b<sub>3</sub>,.....b<sub>n</sub>)也是由同一个自然数序列{1,2,3,4,…n}生成的一个排列,信号b<sub>j</sub>=k,j∈[1,n],k∈[1,n],表示底部信号k在底部焊点b<sub>j</sub>’上;初始时,所述顶部总线信号序列(a<sub>1</sub>,a<sub>2</sub>,a<sub>3</sub>.......a<sub>n</sub>)与底部总线信号序列(b<sub>1</sub>,b<sub>2</sub>,b<sub>3</sub>,.....b<sub>n</sub>)中,顶部信号a<sub>i</sub>与底部信号b<sub>j</sub>的互连表示为a<sub>i</sub>=k,b<sub>j</sub>=k,其中i∈[1,n],j∈[1,n],k∈[1,n];步骤(2),按以下方法对总线信号进行重命名:对底部总线信号序列(b<sub>1</sub>,b<sub>2</sub>,b<sub>3</sub>,…..b<sub>n</sub>)中的每一个信号b<sub>j</sub>,j∈[1,n],重命名b<sub>j</sub>以及与bj互连的对应的顶部信号a<sub>i</sub>,使ai=j,bj=j;结果使底部信号序列为(b<sub>1</sub>,b<sub>2</sub>,b<sub>3</sub>,.....b<sub>n</sub>)=(1、2、3、......n),顶部信号序列(a<sub>1</sub>,a<sub>2</sub>,a<sub>3</sub>.......a<sub>n</sub>)为序列(1、2、3、......n)的一个新生成序列;以a<sub>x</sub>代表当前顶部最左边第一个未连接的总线信号,以b<sub>y</sub>代表底部左边第一个没有连接的总线信号,以u代表全部没有连接的信号对个数,x,y初始值为1,U初始值为n;步骤(3),对每一个底部信号b<sub>y</sub>,y∈[1,n],把与其相连接的顶部信号a<sub>x</sub>所在的顶部焊点序列的相对位置表示为T[y],即a<sub>T[y]</sub>与b<sub>y</sub>相连,对于每一个顶部信号a<sub>i</sub>,i∈[1,n],设置T[a<sub>i</sub>]=i,得到T[1],T[2],T[3],......T[n];步骤(4),计算与顶部左边第一个信号a<sub>x</sub>相连的底部信号b<sub>ax</sub>左边当连接的总线信号个数p=a<sub>x</sub>‑y+1,包函b<sub>ax</sub>;计算与底部左边第一个信号b<sub>y</sub>相连顶部信号a<sub>by</sub>的左边当前未连接的总线信号个数q=T[y]‑x+1,包函a<sub>by</sub>;步骤(5),定义连接模式:步骤(5.1),straight(a<sub>x</sub>,b<sub>y</sub>)模式:顶部总线信号a<sub>x</sub>与底部总线信号b<sub>y</sub>直接相连;步骤(5.2),down‑left(b<sub>ax</sub>,b<sub>y</sub>,a<sub>x</sub>)模式:连接线从底部总线信号b<sub>ax</sub>出发,绕道底部信号b<sub>ax</sub>与底部信号by之间的所有已经连接信号,然后穿过底部信号b<sub>y</sub>,b<sub>y‑1</sub>之间通道,然后与顶部信号a<sub>x</sub>相连;步骤(5.3),up‑right(a<sub>x</sub>,a<sub>c</sub>,b<sub>ax</sub>)模式中,连接线从顶部总线信号ax出发,绕过顶部信号a<sub>x</sub>与a<sub>c</sub>之间所有已经连接信号,然后穿过顶部信号a<sub>c</sub>,a<sub>c+1</sub>之间,再与底部信号b<sub>ax</sub>相连,其中a<sub>c</sub>,b<sub>ax</sub>分别是当前最右边未连接的顶部,底部总线信号;步骤(5.4),up‑left(a<sub>ty</sub>,a<sub>x</sub>,b<sub>y</sub>)模式:连接线从顶部总线信号aty出发,绕道顶部信号a<sub>ty</sub>与顶部a<sub>x</sub>之间所有已经连接的信号,穿过顶部信号a<sub>x‑1</sub>,a<sub>x</sub>之间,然后与底部信号b<sub>y</sub>相连;步骤(5.5),down‑right(b<sub>y</sub>,b<sub>c</sub>,a<sub>ty</sub>)模式,连接线从底部总线信号by出发,绕道底部信号b<sub>y</sub>与b<sub>c</sub>之间所有已经连接的信号,穿过底部信号b<sub>c</sub>,b<sub>c+1</sub>之间,然后与顶部信号a<sub>ty</sub>相连,其中a<sub>ty</sub>,b<sub>c</sub>分别是最右边没有连接的顶部和底部总线信号;步骤(5.6),右框“[”连接模式:“[”(a<sub>ty</sub>,a<sub>c1</sub>,b<sub>d1</sub>,b<sub>y</sub>)连接模式指连线从顶部总线信号a<sub>ty</sub>出发,经顶部信号a<sub>c1</sub>与a<sub>c1‑1</sub>之间通道和底部信号b<sub>d1</sub>与b<sub>d1‑1</sub>之间通道,与底部总线信号b<sub>y</sub>相连接,绕道数为1;步骤(6),根据p,q,u的大小关系,选择连接模式;步骤(6.1),如果p=q=1,选择straight(a<sub>x</sub>,b<sub>y</sub>)模式连接a<sub>x</sub>与b<sub>y</sub>;步骤(6.2),如果u&gt;p&gt;q;选择down‑left(b<sub>ax</sub>,b<sub>y</sub>,a<sub>x</sub>)模式连接b<sub>ax</sub>与a<sub>x</sub>;步骤(6.3),如果u=p&gt;q,选择down‑left(b<sub>ax</sub>,b<sub>y</sub>,a<sub>x</sub>)模式连接或up‑right(a<sub>x</sub>,a<sub>c</sub>,b<sub>ax</sub>)模式连接中绕道较少的模式连接b<sub>ax</sub>与a<sub>x</sub>;步骤(6.4),如果u&gt;q&gt;p,选择up‑left(a<sub>ty</sub>,a<sub>x</sub>,b<sub>y</sub>)模式连接by与a<sub>ty</sub>;步骤(6.5),如果p&lt;q=u,选择up‑left(a<sub>ty</sub>,a<sub>x</sub>,b<sub>y</sub>)连接模式或down‑right(b<sub>y</sub>,b<sub>c</sub>,a<sub>ty</sub>)连接模式中绕道较少的模式连接by与a<sub>ty</sub>;步骤(6.6),如果p=q&lt;u,选择up‑left(a<sub>ty</sub>,a<sub>x</sub>,b<sub>y</sub>)模式连接b<sub>y</sub>与a<sub>ty</sub>或选择down‑left(b<sub>ax</sub>,b<sub>y</sub>,a<sub>x</sub>)模式连接a<sub>x</sub>与b<sub>ax</sub>;步骤(6.7),如果p=q=u,选择up‑left(a<sub>ty</sub>,a<sub>x</sub>,b<sub>y</sub>)或down‑right(b<sub>y</sub>,b<sub>c</sub>,a<sub>ty</sub>)连接b<sub>y</sub>与a<sub>ty</sub>,选择up‑right(a<sub>x</sub>,a<sub>c</sub>,b<sub>ax</sub>)或down‑left(b<sub>ax</sub>,b<sub>y</sub>,a<sub>x</sub>)模式连接a<sub>x</sub>与b<sub>ax</sub>;步骤(7),以右框“[”连接模式优化连接绕道数:对所有连接为down‑left(b<sub>ax</sub>,b<sub>y</sub>,a<sub>ax</sub>)或up‑left(a<sub>ty</sub>,a<sub>x</sub>,b<sub>y</sub>)连接模式且绕道数大于1的连接,如果以右框“[”模式代替以减少绕道数目,则用“[”模式代替原连接模式,当前连接模式为up‑left(a<sub>ty</sub>,a<sub>x</sub>,b<sub>y</sub>)时,优化方法如下:设顶部总线信号a<sub>x</sub>与a<sub>ty</sub>之间的信号编号最小的已经连接的顶部总线信号为a<sub>min</sub>=k,则与a<sub>min</sub>相连的底部总线信号为ba<sub>min</sub>=b<sub>k</sub>,a<sub>min</sub>与b<sub>k</sub>的连接中连线从a<sub>min</sub>出发,通过a<sub>q</sub>与a<sub>q‑1</sub>之间的通道与b<sub>k</sub>相连,如果以下三个条件能够同时满足,则采用右框“[”模式优化互连结果:(1)顶部总线信号a<sub>min</sub>与底部总线信号b<sub>k</sub>的连接模式为up‑left(a<sub>ty</sub>,a<sub>q</sub>,b<sub>k</sub>)且其中的绕道数为1;(2)从底部信号b<sub>k</sub>到当前信号b<sub>y</sub>之间的所有信号,与其互连的对应顶部信号全部在信号a<sub>q</sub>与a<sub>ty</sub>之间;(3)从顶部信号a<sub>q</sub>到当前信号a<sub>x</sub>之间的所有信号,与其互连的对应底部信号全部在信号b<sub>k</sub>与b<sub>y</sub>之间;如果以上三个条件同时成立,则可以用右框“[”(a<sub>ty</sub>,a<sub>q</sub>,b<sub>k</sub>,b<sub>y</sub>)模式优化连接,即连线从顶部信号a<sub>ty</sub>出发,经过顶部信号a<sub>q</sub>与a<sub>q‑1</sub>之间通道和底部信号b<sub>k</sub>与b<sub>k‑1</sub>之间通道,与底部信号b<sub>y</sub>实现互连;对于连接模式为down‑left(b<sub>ax</sub>,b<sub>y</sub>,a<sub>ax</sub>),按相同的方法优化;更新x,y,重新计算p,q,u值,重复步骤(4)‑步骤(6),直到全部的总线信号连接完成。
地址 100084 北京市海淀区清华园1号