《考虑计划组的扫描链的重构方法与装置.pdf》由会员分享,可在线阅读,更多相关《考虑计划组的扫描链的重构方法与装置.pdf(21页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN102054075A43申请公布日20110511CN102054075ACN102054075A21申请号200910211374722申请日20091030G06F17/5020060171申请人新思科技上海有限公司地址200050上海市长宁区长宁路1027号兆丰广场14层18层72发明人葛坤峰刘榜74专利代理机构北京律盟知识产权代理有限责任公司11287代理人刘国伟54发明名称考虑计划组的扫描链的重构方法与装置57摘要本发明提供一种考虑计划组的扫描链的重构方法与装置,该扫描链的重构方法包含一一第一阶段重构与第二阶段重构。该第一阶段重构首先对若干扫描链进行分类,其中起点和。
2、终点在一相同计划组内的扫描链归为第一扫描链集合;起点和终点不在同一计划组内的扫描链归为第二扫描链集合;起点和终点都在一顶层的扫描链被归为第三扫描链集合。然后,依序先重构该第一扫描链集合内的扫描链,再重构该第二扫描链集合内的扫描链,最后重构该第三扫描链集合内的扫描链。本发明的扫描链的重构方法与装置从全局角度出发,考虑了扫描链的起止点位置信息,使其尽可能少的穿过计划组。因而大幅度降低计划组上的端口及计划组间的连线,降低对资源的需求和后续设计的难度。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书3页说明书7页附图10页CN102054082A1/3页21一种扫描链的重构方法。
3、,其包括一第一阶段重构,该第一阶段重构包含步骤一对若干扫描链进行分类,其中起点和终点在一相同计划组内的扫描链归为第一扫描链集合;起点和终点不在同一计划组内的扫描链归为第二扫描链集合;起点和终点都在一顶层的扫描链被归为第三扫描链集合;步骤二重构该第一扫描链集合内的扫描链直至该第一扫描链集合为空;步骤三重构该第二扫描链集合内的扫描链直至该第二扫描链集合为空;步骤四重构该第三扫描链集合内的扫描链直至该第三扫描链集合为空。2根据权利要求1所述的扫描链的重构方法,该步骤二进一步包含自该第一扫描链集合中取出需要扫描元件数量最少的一扫描链;检查该扫描链的端点所在的一计划组中的可用扫描元件数量是否满足该扫描链。
4、需要;如足够,依该扫描链的需求数量将该计划组中的可用扫描元件分配该扫描链;否则,将该计划组中所有的可用扫描元件分配该扫描链,并将该扫描链放入第三扫描链集合。3根据权利要求1所述的扫描链的重构方法,其中该步骤三进一步包含自该第二扫描链集合中取出扫描元件需要数量最少的一扫描链;判断该扫描链是否有一个端点在该顶层如是,在步骤I判断该扫描链的另一端点所在计划组内的可用扫描元件数量是否满足该扫描链需要;否则,在步骤II针对该扫描链的两端点所在的两个计划组,分别计算所有可能从其中选取扫描元件的扫描链的扫描元件需求总数。4根据权利要求3所述的扫描链的重构方法,其中该步骤I进一步包含如该计划组内的扫描元件数足。
5、够,则将该计划组内的扫描元件依需求数量分配给该扫描链;否则,将该计划组内的扫描元件分配给该扫描链,并将该扫描链添加至该第三扫描链集合。5根据权利要求3所述的扫描链的重构方法,其中该步骤II进一步包含判断该两个计划组内的可用扫描元件是否满足该扫描链的需要,如满足,则从对应扫描元件需求总数较少的一计划组中优先选择扫描元件分配给该扫描链,不足的扫描元件从另一计划组选择;否则,将该两个计划组中的可用扫描元件都分配给该扫描链,并将该扫描链放入该第三扫描链集合。6根据权利要求1所述的扫描链的重构方法,其中该步骤四进一步包含自该第三扫描链集合中取出所需扫描元件最多的一扫描链;检查是否有一计划组含有的可用扫描。
6、元件数比需求最多的一扫描链所需要的扫描元件数多如有,则该扫描链从含扫描元件数最少的一计划组中选择;否则,从含有该可用扫描元件数最多的计划组开始为该扫描链分配扫描元件,最后到该顶层选择扫描元件。7根据权利要求16之一所述的扫描链的重构方法,其进一步包含一第二阶段重构,在该第二阶段重构在同一计划组内的扫描链所需的扫描元件将基于扫描元件位置被重新分配。8根据权利要求7所述的扫描链的重构方法,其中相邻且距一扫描链近的扫描元件将权利要求书CN102054075ACN102054082A2/3页3被分配到该扫描链。9一种扫描链的重构装置,其包括一第一级重构器,该第一级重构器包含一分类器,对若干扫描链进行分。
7、类,其中起点和终点在一相同计划组内的扫描链归为第一扫描链集合;起点和终点不在同一计划组内的扫描链归为第二扫描链集合;起点和终点都在一顶层的扫描链被归为第三扫描链集合;一分配器,与该分类器通信连接;其首先重构该第一扫描链集合内的扫描链直至该第一扫描链集合为空;然后重构该第二扫描链集合内的扫描链直至该第二扫描链集合为空;最后重构该第三扫描链集合内的扫描链直至该第三扫描链集合为空。10根据权利要求9所述的扫描链的重构装置,其中该分配器在重构该第一扫描链集合内的扫描链时自该第一扫描链集合中取出需要扫描元件数量最少的一扫描链;检查该扫描链的端点所在的一计划组中的可用扫描元件数量是否满足该扫描链需要;如足。
8、够,依该扫描链的需求数量将该计划组中的可用扫描元件分配该扫描链;否则,将该计划组中所有的可用扫描元件分配该扫描链,并将该扫描链放入第三扫描链集合。11根据权利要求9所述的扫描链的重构装置,其中该分配器在重构该第二扫描链集合内的扫描链时自该第二扫描链集合中取出扫描元件需要数量最少的一扫描链;判断该扫描链是否有一个端点在该顶层如是,则判断该扫描链的另一端点所在计划组内的可用扫描元件数量是否满足该扫描链需要;否则,则针对该扫描链的两端点所在的两个计划组,分别计算所有可能从其中选取扫描元件的扫描链的扫描元件需求总数。12根据权利要求11所述的扫描链的重构装置,其中该分配器在判断该扫描链的另一端点所在计。
9、划组内的可用扫描元件数量是否满足该扫描链需要时如该计划组内的扫描元件数足够,则将该计划组内的扫描元件依需求数量分配给该扫描链;否则,将该计划组内的扫描元件分配给该扫描链,并将该扫描链添加至第三扫描链集合。13根据权利要求11所述的扫描链的重构装置,其中该分配器在该扫描链没有端点在该顶层时,判断该两个计划组内的可用扫描元件是否满足该扫描链的需要,如满足,则从对应扫描元件需求总数较少的一计划组中优先选择扫描元件分配给该扫描链,不足的量从另一计划组选择;否则,将两个计划组中的可用扫描元件都分配给该扫描链,并将该扫描链放入第三扫描链集合。14根据权利要求9所述的扫描链的重构装置,其中该分配器在重构该第。
10、三扫描链集合内的扫描链时自该第三扫描链集合中取出所需扫描元件最多的一扫描链;检查是否有一计划组含有的可用扫描元件数比需求最多的扫描链所需要的扫描元件数多如有,则该扫描链从含扫描元件数最少的一计划组中选择;否则,从含有该可用扫描元件数最多的计划组开始为该扫描链分配扫描元件,最后到权利要求书CN102054075ACN102054082A3/3页4该顶层选择。15根据权利要求14所述的扫描链的重构装置,其进一步包含一第二级重构器,与该第一级重构器通信连接;其将该第一级重构器重构的扫描链基于扫描元件位置将同一计划组内的扫描链所需的扫描元件重新分配。16根据权利要求15所述的扫描链的重构装置,其中该第。
11、二重构器将相邻且离一扫描链距离近的一扫描元件将被分配到该扫描链。权利要求书CN102054075ACN102054082A1/7页5考虑计划组的扫描链的重构方法与装置技术领域0001本发明是关于一种扫描链的重构方法与装置,尤其是关于一种芯片模块规划设计阶段的扫描链的重构方法与装置。背景技术0002在对包含测试链的芯片进行模块规划设计时,扫描元件分布的任意性将会造成各个计划组之间存在过多的连线。同时,每个计划组也需要创建较多的端口来承担扫描信号的输入与输出。这使得各个计划组在顶层应用时对资源的需求很大,从而增加设计的难度。为了减少扫描链穿过计划组造成的计划组上的端口和组间的连线数目,有必要将扫描。
12、链进行重构,即对扫描元件的位置进行调整组成新的扫描链。0003图1为一扫描链的重构方法首先在步骤70中,将该扫描链的起点作为一基准元件,在步骤71计算该基准元件至该扫描链中所有其它可用扫描元件的距离,找出其中距其最近的一扫描元件;在步骤72连接该基准元件与该距其最近的扫描元件;在步骤73将该距其最近的扫描元件作为基准元件;接着在步骤74检查该基准元件是否是最后一个可用扫描元件;如是则在步骤75将其与扫描链的终点连接;否则返回步骤71。0004该扫描链的重构方法仅考虑了扫描元件间的距离关系,而没有考虑各扫描元件所在的计划组位置信息,因此获得的扫描链在缩短长度的同时可能较重构前穿过更多的计划组,导。
13、致各计划组之间存在过多连线。即便经过重新排序,计划组上的端口和计划组间的连线有所减少,而实际上通过扫描链的重构仍有进一步减少端口和连线的余地。0005鉴于此,业界仍需一种扫描链的重构技术方案以解决计划组上端口和组间连线过多的问题。发明内容0006本发明提供一种考虑计划组的扫描链的结构重构方法与装置,其在缩短扫描链长度的同时使重构后的每一条扫描链穿过尽可能少的计划组,从而使得计划组上的端口和组间的连线总数达到最少。0007本发明提出一扫描链的重构方法,其包括一第一阶段重构,该第一阶段重构包含步骤一对若干扫描链进行分类,其中起点和终点在一相同计划组内的扫描链归为第一扫描链集合;起点和终点不在同一计。
14、划组内的扫描链归为第二扫描链集合;起点和终点都在一顶层的扫描链被归为第三扫描链集合;步骤二重构该第一扫描链集合内的扫描链直至该第一扫描链集合为空;步骤三重构该第二扫描链集合内的扫描链直至该第二扫描链集合为空;及步骤四重构该第三扫描链集合内的扫描链直至该第三扫描链集合为空。0008根据一实施例,该步骤二进一步包含自该第一扫描链集合中取出需要扫描元件数量最少的一扫描链;检查该扫描链的端点所在的一计划组中的可用扫描元件数量是否满足该扫描链需要;如足够,依该扫描链的需求数量将该计划组中的可用扫描元件分配该扫描链;否则,将该计划组中所有的可用扫描元件分配该扫描链,并将该扫描链放入第三扫描说明书CN102。
15、054075ACN102054082A2/7页6链集合。该步骤三进一步包含自该第二扫描链集合中取出扫描元件需要数量最少的一扫描链;判断该扫描链是否有一个端点在顶层如是,判断该扫描链的另一端点所在计划组内的可用扫描元件数量是否满足该扫描链需要;如该计划组内的扫描元件数足够,则将该计划组内的扫描元件依需求数量分配给该扫描链;否则,将该计划组内的扫描元件分配给该扫描链,并将该扫描链添加至第三扫描链集合。否则,针对该扫描链的两端点所在的两个计划组,分别计算所有可能从其中选取扫描元件的扫描链的扫描元件需求总数;并判断该两个计划组内的可用扫描元件是否满足该扫描链的需要,如满足,则从对应扫描元件需求总数较少。
16、的一计划组中优先选择扫描元件分配给该扫描链,不足的量从另一计划组选择;否则,将两个计划组中的可用扫描元件都分配给该扫描链,并将该扫描链放入第三扫描链集合。该步骤四进一步包含自该第三扫描链集合中取出所需扫描元件最多的一扫描链;检查是否有一计划组含有的可用扫描元件数比需求最多的扫描链所需要的扫描元件数多如有,则该扫描链从含扫描元件数最少的一计划组中选择;否则,从含有该可用扫描元件数最多的计划组开始为该扫描链分配扫描元件,最后到该顶层选择。该扫描链的重构方法可进一步包含一第二阶段重构,在该第二阶段重构在同一计划组内的扫描链所需的扫描元件将基于扫描元件位置被重新分配,其中相邻且离一扫描链距离近的扫描元。
17、件将被分配到该扫描链。0009本发明还提供一与该扫描链的重构方法对应的扫描链的重构装置,其包括一第一级重构器与一第二级重构器。该第一级重构器包含一分类器,对若干扫描链进行分类,其中起点和终点在一相同计划组内的扫描链归为第一扫描链集合;起点和终点不在同一计划组内的扫描链归为第二扫描链集合;起点和终点都在一顶层的扫描链被归为第三扫描链集合;一分配器,与该分类器通信连接;其首先重构该第一扫描链集合内的扫描链直至该第一扫描链集合为空;然后重构该第二扫描链集合内的扫描链直至该第二扫描链集合为空;最后重构该第三扫描链集合内的扫描链直至该第三扫描链集合为空。0010本发明的扫描链重构方法与装置不仅考虑了扫描。
18、链和扫描元件的位置信息,同时计入了扫描链的起点与终点在计划组或顶层的位置信息,最大程度减少计划组上的端口数及组间的连线数,从而获得更好的规划设计结果;降低对上层资源的需求和后续设计的难度。附图说明0011图1是一使用距离排序法进行扫描链重构的流程图;0012图2是本发明的第一阶段重构的流程图;0013图3是本发明的第一阶段重构中对第一扫描链集合内扫描链重构的流程图;0014图4是本发明的第一阶段重构中对第二扫描链集合内扫描链重构的流程图;0015图5是本发明的第一阶段重构中对第三扫描链集合内扫描链重构的流程图;0016图6是一芯片设计后未进行优化时的扫描链的示意图;0017图7是对图6中扫描链。
19、进行排序优化后的示意图;0018图8是对图6中扫描链进行第一阶段重构后的示意图;0019图9是对图6中扫描链进行第二阶段重构后的示意图;0020图10是本发明的扫描链的重构装置的结构框图;说明书CN102054075ACN102054082A3/7页70021图11是本发明的第一级重构器的结构框图。具体实施方式0022为便于更好的理解本发明的精神,以下结合本发明的优选实施例对其作进一步说明。0023本发明提出一种在芯片模块规划设计阶段基于计划组的扫描链重构方法和装置。0024根据本发明的一实施例,基于计划组的扫描链重构方法包含两个阶段0025首先在扫描链重构的第一阶段,以计划组中扫描元件的数目。
20、为主要依据,让一扫描链从尽可能少的计划组中选取扫描元件。且在重构过程中充分考虑扫描链的起点和终点与计划组的关系,使同一计划组中的扫描元件会被优先分配给与之有关联的扫描链,从而减少计划组间可能出现的连线的数目。0026接着在扫描链重构的第二阶段,以扫描元件的位置信息为主要依据,在一个计划组内进行扫描元件分配,将相邻的扫描元件分配给同一个扫描链,从而减少每一扫描链内扫描元件之间布线的长度。0027以下分别就该扫描链重构的第一阶段与第二阶段详细说明如下0028第一阶段重构0029在扫描链重构的第一阶段,重构的顺序是依据各扫描链的起点与终点的位置,使扫描链尽可能不穿出其所在的计划组。其中,起点和终点在。
21、一相同计划组内的扫描链归为第一扫描链集合,会优先从其所在计划组内选择扫描元件;起点和终点不在同一计划组内的扫描链归为第二扫描链集合,以较低优先级处理;起点和终点都在顶层的扫描链被归为第三扫描链集合,被最后处理。0030具体的,如图2所示,首先在步骤10判断该第一扫描链集合是否为空,如存在起点和终点在同一计划组内的扫描链,则进入步骤11重构起点和终点在同一计划组内的扫描链。否则在步骤12判断第二扫描链集合是否为空,如存在起点和终点不在同一计划组内的扫描链,或只有一个端点,即起点或终点在顶层的扫描链,则进入步骤13重构该第二扫描链集合内的扫描链。否则进入步骤14判断第三扫描链集合是否为空,如非空,。
22、则在步骤15重构该第三扫描链集合内的扫描链;如空,则进入步骤16结束该第一阶段重构。0031如图3所示,在步骤11,首先从步骤110开始,找出第一扫描链集合中需要扫描元件数量最少的扫描链,将其自第一扫描链集合取出。在步骤111中,检查该扫描链的起点与终点所在计划组中的可用扫描元件数量是否满足该扫描链需要。如足够,在步骤112依需求数量将该计划组中可用扫描元件分配该扫描链;否则,进入步骤113将该计划组中所有的可用扫描元件分配该扫描链,并将其放入第三扫描链集合以在步骤14中继续选择扫描元件。0032如图4所示,重构该第二扫描链集合内的扫描链时,为了扫描链尽可能少的穿出计划组,在步骤130中同样找。
23、出对第二扫描链集合中扫描元件需要数量最少的扫描链,将其自第二扫描链集合取出。在步骤131,判断该扫描链是否有一个端点起点或终点在顶层,如是则进入步骤132判断另一端点终点或起点所在计划组内的扫描元件数量是否满足该扫描链需要,如该计划组内的扫描元件数足够,则进入步骤133将该计划组内的扫描元件依需求数量分配给该扫描链;否则,进入步骤134将该计划组内的扫描元件分配给说明书CN102054075ACN102054082A4/7页8该扫描链,并将该扫描链添加至第三扫描链集合。否则,该扫描链的起点与终点在两个不同的计划组,则进入步骤135,针对该两个计划组,分别计算所有可能从其中选取扫描元件的扫描链对。
24、于扫描元件的需求总数。在步骤136判断该两个计划组内的可用扫描元件是否满足该扫描链的需要,如满足,则在步骤137从对应扫描元件需求总数较少的一计划组中优先选择扫描元件分配给该扫描链,不足的量从另一计划组选择;否则,进入步骤138将两个计划组中的可用扫描元件都分配给该扫描链,并将该扫描链放入第三扫描链集合。0033如图5所示,在步骤15,重构起点和终点都在顶层的扫描链以及完成在前两步骤10、11中未完成重构的扫描链。在步骤150中自第三扫描链集合中将从所需扫描元件最多的扫描链取出。在步骤151中检查是否有一计划组含有的可用扫描元件数比需求最多的扫描链所需要的扫描元件数多,如有,则步骤152该扫描。
25、链从含扫描元件数最少的计划组中选择;否则,在步骤153该扫描链从含有可用的扫描元件数最多的计划组开始选择,最后到顶层选择。如此,避免计划组被更多的扫描链分割,减少该计划组上的端口。0034第二阶段重构0035由于在扫描链的第一阶段重构时,扫描链是随机选择计划组内的扫描元件,有可能选中的扫描元件离其较远,而离其很近的元件并没有被选中。因而在第二阶段重构时,在同一计划组内的扫描链所需的扫描元件将基于扫描元件位置被重新分配。其中,相邻且离一扫描链距离近的扫描元件将被分配到该扫描链中,从而缩短该扫描链中扫描元件间布线的总长度。0036当以上两阶段重构完成后,还可对每条扫描链的扫描元件进行重排序,使得扫。
26、描链的布线总数达到最小。0037如图6所示,根据本发明一实施例将重构位于两个计划组40、41及顶层42内的三条扫描链50、51、52。其中第一计划组40包含七个扫描元件A,F,J,H,K,M,N;第二计划组包含四个扫描元件B,C,I,L,而顶层设有三个扫描元件D,E,G。该三条扫描链50、51、52的结构信息分别是0038扫描链50包含A、B、C共三个扫描元件,其起点500和终点501均在第一计划组40里;从而在两个计划组40、41间形成两条交叉线,四个端口;0039扫描链51包含D、E、F、G、H共五个扫描元件,其起点510在第二计划组41中,终点511在顶层42;从而在两个计划组40、41。
27、间形成三条交叉线,五个端口;0040扫描链52包含I、J、K、L、M、N共六个扫描元件,其起点520和终点521均在顶层42;从而在两计划组40、41间形成五条交叉线,八个端口。0041如果仅依现有方法对这三条扫描链50、51、52进行重新排序,以扫描链50为例,其所有扫描元件中A是距其起点500最近的,则先将A与扫描链50的起点500连接。接着经计算B与C中距离A最近的是B,连接A与B。然后连接B与C,C与终点501。如此,如图7所示,该三条扫描链50、51、52调整为0042扫描链50的扫描元件排序为A、B、C,仍是两条交叉线,四个端口;0043扫描链51的扫描元件排序为E、D、G、F、H。
28、,有两条交叉线,三个端口;0044扫描链52的扫描元件排序为J、M、N、K、L、I,有三条交叉线,四个端口。0045可以看出经单纯排序后,计划组40、41的端口和相互间的连线有所减少,然实际上仍有很多端口和连线可以减少。说明书CN102054075ACN102054082A5/7页90046以下根据本发明对该三条扫描链50、51、52进行两级重构0047首先根据该三条扫描链50、51、52的信息,即各扫描链所包含的扫描元件及其数量,各扫描元件所在的计划组、各扫描链的起点与终点位置,对该三条扫描链50、51、52进行分类。其中,扫描链50的起点500与终点501同在计划组40,则放入第一扫描链集。
29、合;扫描链51的起点510与终点511分别位于第二计划组41和顶层42,则将其放入第二扫描链集合;而扫描链52的起点520与终点521均位于顶层42,则归入第三扫描链集合。0048首先,随机选择计划组40内的扫描元件分配给第一扫描链集合内的扫描链50,如A、F、H。0049接着,为第二扫描链集合内的扫描链51分配扫描元件。因为扫描链51的终点511在顶层42,故将起点510所在计划组41中的元件B、C、I、L分配给扫描链51。此时,扫描链51还没有被填满,因而被放入第三扫描链集合。0050此时,第三扫描链集合中还有两条扫描链51、52需要构建,其中扫描链51需要一个扫描元件,扫描链52需要六个。
30、扫描元件,因此首先为扫描链52选择扫描元件。又,可用扫描元件最多的计划组40只有四个可用扫描元件,因而将计划组40中的可用扫描元件J、K、M、N以及顶层的D、E分配给扫描链52。最后为扫描链51选择剩余的可用扫描元件,即,顶层42的G。0051经过这一级的重构,各条扫描链50、51、52的构成如图8所示,可见端口和计划组间的连线的数目减为最少,具体情况如下0052扫描链50的扫描元件为A、F、H,且该扫描链50没有离开计划组40;0053扫描链51的扫描元件为B、C、I、L、G,有一条交叉线,一个端口;0054扫描链52的扫描元件为J、K、M、N、D、E,有两条交叉线,两个端口。0055接下来。
31、可对该若该扫描链进行第二级重构,由于计划组41的扫描元件全部分配给扫描链51,因而该第二级重构分别在计划组40和顶层42进行。该第二级重构可采用任意单一组或顶层内的优化方法,如考虑罚参数的排序法等。本实施例中仅以常见的距离排序为例,在计划组40中,M、N、K被分配给扫描链50,而H、J、A、F则被分配给扫描链51;在顶层42,E被分配给扫描链51,D、G被分配给扫描链52。0056如图9所示,这三条扫描链的组成变为0057扫描链50包含N、M、K,仅在计划组40内,且长度缩短;0058扫描链51包含B、I、C、L、E,有一条交叉线,一个端口,且长度缩短;0059扫描链52包含H、J、A、F、G。
32、、D,有两条交叉线,两个端口,且长度缩短。0060对应本发明的扫描链的重构方法,本发明提供一种扫描链的重构装置2。如图10所示,本发明的扫描链的结构重构装置包2含一第一级重构器20与第二级重构器21。0061所有的扫描链首先被输入该第一级重构器20,由该第一级重构器20在扫描链重构的第一阶段,以计划组中扫描元件的数目为主要依据,让一扫描链从尽可能少的计划组中选取扫描元件。该第一级重构器20在重构过程中将充分考虑扫描链的起点和终点与计划组的关系,使同一计划组中的扫描元件会被优先分配给与之有关联的扫描链,从而很好的减少计划组间可能出现的连线的数目。0062扫描链经第一级重构器20重构后由其输入第二。
33、级重构器21。第二级重构器21在扫描链重构的第二阶段,以扫描元件的位置信息为主要依据,在一个计划组内进行扫描元说明书CN102054075ACN102054082A6/7页10件分配,将相邻的扫描元件分配给同一个扫描链,从而减少每一扫描链内扫描元件之间布线的长度。0063以下分别就该扫描链的重构装置2的第一级重构器20与第二级重构器21详细说明如下0064第一级重构器0065第一级重构器20需完成扫描链重构的第一阶段任务,其重构的顺序是依据各扫描链的起点与终点的位置,使扫描链尽可能不穿出其所在的计划组。如图11,该第一级重构器20包含一分类器200,其由输入端口201接收所有扫描链并进行分类。。
34、其中起点和终点在一相同计划组内的扫描链归为第一扫描链集合,会优先从其所在计划组内选择扫描元件;起点和终点不在同一计划组内的扫描链归为第二扫描链集合,以较低优先级处理;起点和终点都在顶层的扫描链被归为第三扫描链集合,被最后处理。0066一分配器202与该分类器200通信连接,其首先检查该第一扫描链集合是否为空,如存在起点和终点在同一计划组内的扫描链,则重构起点和终点在同一计划组内的扫描链。否则检查第二扫描链集合是否为空,如存在起点和终点不在同一计划组内的扫描链,或只有一个端点,即起点或终点在顶层的扫描链,则重构该第二扫描链集合内的扫描链。否则检查第三扫描链集合是否为空,如非空,则重构该第三扫描链。
35、集合内的扫描链;如空,则结束该第一阶段重构。0067具体的,该分配器202首先找出第一扫描链集合中需要扫描元件数量最少的扫描链,将其自第一扫描链集合取出。检查该扫描链的起点与终点所在计划组中的可用扫描元件数量是否满足该扫描链需要。如足够,依需求数量将该计划组中可用扫描元件分配该扫描链;否则,将该计划组中所有的可用扫描元件分配该扫描链,并将其放入第三扫描链集合。0068在第一扫描链集合的扫描链重构结束后,该第一级重构器20重构该第二扫描链集合内的扫描链。为了扫描链尽可能少的穿出计划组,分配器202同样找出对第二扫描链集合中扫描元件需要数量最少的扫描链,将其自第二扫描链集合取出。判断该扫描链是否有。
36、一个端点起点或终点在顶层,如是则判断另一端点终点或起点所在计划组内的扫描元件数量是否满足该扫描链需要,如该计划组内的扫描元件数足够,则将该计划组内的扫描元件依需求数量分配给该扫描链;否则,将该计划组内的扫描元件分配给该扫描链,并将该扫描链添加至第三扫描链集合。否则,该扫描链的起点与终点在两个不同的计划组,针对该两个计划组,分别计算所有可能从其中选取扫描元件的扫描链对于扫描元件的需求总数。判断该两个计划组内的可用扫描元件是否满足该扫描链的需要,如满足,则从对应扫描元件需求总数较少的一计划组中优先选择扫描元件分配给该扫描链,不足的量从另一计划组选择;否则,将两个计划组中的可用扫描元件都分配给该扫描。
37、链,并将该扫描链放入第三扫描链集合。0069在检查第二扫描链集合为空时,该第一级重构器20重构起点和终点都在顶层的扫描链以及完成之前未完成重构的扫描链。分配器202自分类器200的第三扫描链集合中将从所需扫描元件最多的扫描链取出。检查是否有一计划组含有的可用的扫描元件数比需求最多的扫描链所需要的扫描元件数多,如有,则该扫描链从含扫描元件数最少的计划组中选择;否则,该扫描链从含有可用的扫描元件数最多的计划组开始选择,最后到顶层选说明书CN102054075ACN102054082A7/7页11择。如此,避免计划组被更多的扫描链分割,减少该计划组上的端口。0070第二级重构器0071第一级重构器2。
38、0在重构结束后,由输出端口203传输给第二级重构器21。由于第一级重构器20在重构扫描链时,是随机选择计划组内的扫描元件分配给扫描链的,有可能选中的扫描元件离该扫描链较远,而离其很近的元件并没有被选中。因而第二级重构器21会将在同一计划组内的扫描链所需的扫描元件基于其位置重新分配,其中,相邻且离一扫描链距离近的扫描元件将被分配到该扫描链中,从而缩短该扫描链中扫描元件间布线的总长度。0072本发明的扫描链的重构方法与装置较现有技术仅考虑降低扫描链长度的技术方案,在第一阶段重构时将全局扫描链依其端点的位置进行分类,使扫描链穿过尽可能少的计划组。因而大幅度降低计划组上的端口与计划组间的连线,降低了资。
39、源需求和后续设计难度。本发明还可在第一阶段后进行第二阶段重构,同一计划组内的扫描链所需的扫描元件基于其位置重新分配,从而进一步缩短扫描链的长度。0073本发明的技术内容及技术特点已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰。因此,本发明的保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。说明书CN102054075ACN102054082A1/10页12图1说明书附图CN102054075ACN102054082A2/10页13图2说明书附图CN102054075ACN102054082A3/10页14图3说明书附图CN102054075ACN102054082A4/10页15图4说明书附图CN102054075ACN102054082A5/10页16图5说明书附图CN102054075ACN102054082A6/10页17图6说明书附图CN102054075ACN102054082A7/10页18图7说明书附图CN102054075ACN102054082A8/10页19图8说明书附图CN102054075ACN102054082A9/10页20图9说明书附图CN102054075ACN102054082A10/10页21图10图11说明书附图CN102054075A。