半导体集成电路和其设计方法转让专利

申请号 : CN200510079922.7

文献号 : CN1770448B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 松原裕之

申请人 : 富士通半导体股份有限公司

摘要 :

本发明公开了一种母片型半导体集成电路,该半导体集成电路具有基体层和多个线路层,其中,在基体层上形成有实现特定电路功能的多个基体图案,多个线路层包括其线路图案可由用户改变的可变线路图案和其线路图案不可由用户改变的固定线路层,在这样的母片型半导体集成电路中,多个基体图案预先固定并放置在整个芯片表面上能够在基体层中形成基体图案的区域处,从而,可以通过只设计可变线路层的线路,并在用户侧产生用于形成线路层中所设计线路的掩模,来制造对应于使用目的的半导体集成电路。

权利要求 :

1.一种为母片型半导体集成电路的半导体集成电路,包括:

基体层,在所述基体层上形成有实现特定电路功能的多个基体图案;和

多个路线层,以多个层的形式顺序形成在所述基体层上,并且包括其线路图案可由用户改变的可变线路层和其线路图案不可由用户改变的固定线路层,其中,所述基体层填充有被固定且选定的所述多个基体图案;

其中,所述基体图案和它们在所述基体层中的放置不可由用户改变;

其中,所述基体图案中的每一个通过形成在所述可变线路层中的每一个上的线路图案来控制所述电路功能;并且其中,根据由所述基体图案在所述基体层中形成的电路,所述可变线路层包括用于向电路提供电源的线路的线路图案以及连接到或者不连接到向终端提供逻辑的电源的线路的线路图案,其中所述终端切换电路内部的模式。

2.如权利要求1所述的半导体集成电路,其中,在所述多个线路层的某些线路层中预先形成有预定线路图案。

3.如权利要求2所述的半导体集成电路,其中,所述预定线路图案包括提供时钟信号的线路图案、用于由所述基体图案组成的测试电路的线路图案和用于电源的线路图案中的至少一种。

4.如权利要求1所述的半导体集成电路,其中,多个所述基体图案放置为基本模块,所述基本模块由将所述多个基体图案组合为单元来构成。

5.如权利要求1所述的半导体集成电路,其中,基本模块由将被固定且选定的所述多个基体图案组合在一起来构成,并且多个所述基本模块预先放置在芯片表面上的预定区域中。

6.如权利要求5所述的半导体集成电路,其中,所述预定区域是通过从所述整个芯片表面中能够形成所述被固定且选定的多个基体图案的区域中,排除放置了用户禁止使用的基体图案的区域而获得的区域。

7.如权利要求6所述的半导体集成电路,其中,所述放置了用户禁止使用的基体图案的区域是放置了与外部接口有关的基体图案和与时钟控制有关的基体图案的区域。

8.如权利要求5所述的半导体集成电路,其中,放置了多种基本模块,且构成所述基本模块的基体图案的组合彼此不同。

9.如权利要求5所述的半导体集成电路,其中,向可选的被放置的基本模块分配通过使用N个所述基本模块实现特定电路功能的布图设计库,从而能够实现所述电路功能,其中N为可选自然数。

10.如权利要求9所述的半导体集成电路,其中,所述布图设计库包括所述基体图案的放置信息和线路信息。

11.如权利要求1所述的半导体集成电路,其中,包括所述基体图案的放置信息和线路信息以实现测试电路功能的布图设计库被使用并且所述库被应用,从而实现了所述测试电路的功能。

12.如权利要求11所述的半导体集成电路,其中,所述线路信息中所示的某些线路图案可由用户改变。

13.如权利要求11所述的半导体集成电路,其中,所述测试电路是执行遵从IEEE1149.1标准的测试的电路。

14.如权利要求13所述的半导体集成电路,其中,所述测试电路能够连接到两个测试接入端口控制器,并且具有用于切换要使用的所述测试接入端口控制器的复用器。

15.一种用于设计母片型半导体集成电路布图的方法,所述母片型半导体集成电路具有在其上放置有实现特定电路功能的多个基体图案的基体层和以多个层的形式顺序形成在所述基体层上的多个线路层,所述多个线路层包括其线路图案可由用户改变的可变线路层和其线路图案不可由用户改变的固定线路层,所述方法包括:基体图案初始放置步骤,用于从预先准备的能够被放置在所述基体层上的基体图案中选择对应于指示要放置的基体图案的设置信息的基体图案,并将所述基体图案放置在所述基体层上;

初始线路设置步骤,用于针对在所述基体图案初始放置步骤中放置所述基体图案之后放置的基体图案,从对应于每个所述基体图案的多个线路图案中,设置被设置为初始值的线路图案作为初始线路图案;

线路图案指定步骤,用于在所述初始线路设置步骤中设置所述初始线路图案之后,设置所述线路图案的标识信息,以由所述基体图案实现期望电路功能;以及线路图案改变步骤,用于通过基于在所述线路图案指定步骤中设置的所述线路图案的标识信息对其进行替换来设置所述基体图案的线路图案,其中,通过使用唯一地确定线路图案的标识信息来设置所述初始值。

16.如权利要求15所述的用于设计半导体集成电路布图的方法,其中,所述标识信息是被分配给每个线路图案、并且对于每个线路图案都不同的代码。

17.如权利要求15所述的用于设计半导体集成电路布图的方法,其中,在所述线路图案指定步骤中,只设置与其线路图案要被替换的基体图案有关的线路图案的标识信息。

18.如权利要求15所述的用于设计半导体集成电路布图的方法,其中,在所述线路图案指定步骤中,设置与所有基体图案有关的线路图案的标识信息。

19.如权利要求15所述的用于设计半导体集成电路布图的方法,其中,通过所述线路图案改变步骤,删除了通过用所述布线图案进行替换而没有被使用的、与所述的基体图案有关的线路图案。

20.如权利要求15所述的用于设计半导体集成电路布图的方法,在所述线路图案改变步骤中,替换了所述线路图案,以由不同的逻辑功能操作所述基体图案。

21.如权利要求15所述的用于设计半导体集成电路布图的方法,其中所述基体图案初始放置步骤包括第一设计步骤,第一设计步骤用于将通过使用N个预先准备的通过组合所述多个基体图案而构成的所述基本模块实现特定电路功能的布图设计库分配到实现所述电路功能的所述基本模块,其中N是可选自然数。

22.如权利要求21所述的用于设计半导体集成电路布图的方法,其中,所述预定区域是通过从所述整个芯片表面的能够形成所述被固定且选定的多个基体图案的区域中,排除放置了用户禁止使用的基体图案的区域而获得的区域。

23.如权利要求22所述的用于设计半导体集成电路布图的方法,其中,所述放置了用户禁止使用的基体图案的区域是放置了与外部接口有关的基体图案和与时钟控制有关的基体图案的区域。

24.如权利要求21所述的用于设计半导体集成电路布图的方法,还包括:库设置步骤,用于设置所述被分配给所述基本模块的布图设计库,

其中,在所述第一设计步骤中,根据所述库设置步骤中的设置,将所述布图设计库分配到所指定的基本模块。

25.如权利要求24所述的用于设计半导体集成电路布图的方法,其中,所述第一设计步骤包括选择步骤,用于根据所述库设置步骤的所述设置,选择所述布图设计库,以及分配步骤,用于将所述选择步骤中选定的所述布图设计库分配到所指定的基本模块。

26.如权利要求25所述的用于设计半导体集成电路布图的方法,

其中,所述布图设计库具有所述基体图案的放置信息和线路信息;以及

其中,在所述分配步骤中,在所指定的基本模块中反映所述基体图案的放置信息和所述线路信息,或者只反映所述基体图案的放置信息。

27.如权利要求21所述的用于设计半导体集成电路布图的方法,还包括:第二设计步骤,用于在所述第一设计步骤中将所述布图设计库分配到所述基本模块后,通过使用未使用的基体图案执行用户布图以实现可选电路功能。

28.如权利要求27所述的用于设计半导体集成电路布图的方法,其中,在所述第二设计步骤中,对于所述未使用的基体图案,设置实现所述可选电路功能的线路图案。

29.如权利要求15所述的用于设计半导体集成电路布图的方法,其中所述基体图案初始放置步骤是通过将使用N个预先准备的通过组合所述多个基体图案构成的所述基本模块实现特定电路功能的布图设计库分配到所述半导体集成电路的可选基本模块来完成的,其中N是可选自然数。

30.一种用于设计母片型半导体集成电路布图的方法,所述母片型半导体集成电路具有在其上放置有被固定且选定以实现特定电路功能的多个基体图案的基体层和以多个层的形式顺序形成在所述基体层上的多个线路层,所述方法包括:测试电路设计步骤,用于将布图设计库应用到所述基体层和线路层,其中所述布图设计库包括实现所述测试电路功能的所述基体图案的放置信息和线路信息。

31.如权利要求30所述的用于设计半导体集成电路布图的方法,其中,在所述线路信息中示出的某些线路图案可由用户改变。

说明书 :

技术领域

本发明涉及半导体集成电路和其设计方法,具体地说,本发明涉及母片型半导体集成电路和其布图设计方法。

背景技术

传统上,在许多情形中,通过利用诸如基于单元的(cell base)LSI和FPGA(现场可编程门阵列)之类的半导体集成电路,来实现ASIC(专用集成电路),ASIC是用于特殊使用目的的半导体集成电路。例如,通过以单元为基础(基本单元)组合作为基础的晶体管来完成基本布线,并将基本单元组合为对应于使用目的的期望电路,然后形成必要的线路,来执行在基于单元的LSI中ASIC的开发。
在门阵列中,前述基本单元规则放置在半导体芯片中,在这样的门阵列中,只有最上层线路可以根据使用目的改变,以方便ASIC的设计和制造,而其他线路层的线路是固定线路(例如,参见专利文献1和专利文献2)。
[专利文献1]日本专利申请早期公开No.6-163860
[专利文献2]日本专利申请早期公开No.2-30163
在传统的ASIC开发中,对于每个ASIC(对于每种产品)都要执行设计基本单元和线路的组合的过程,以实现用户要求的功能。因此,对于每种产品,都要制作用于将设计电路形成在半导体芯片上的掩模(光罩)。
近年来,随着半导体集成电路的微制造技术的发展,能够被集成在一个半导体芯片上的电路规模也随之增大,并且在ASIC的开发中,开发周期的延长以及设计和制造的复杂度也在增加。由于半导体集成电路的微制造技术和随之而来的电路规模的增大,每一个掩模(光罩)的成本变高,所需要的掩模数增加,从而极大地提升了制造一种ASIC所需的掩模成本。因此,需要缩短开发周期和降低开发成本。

发明内容

本发明的目的是可以减小在开发对应于使用目的的半导体集成电路时的负担。
本发明的半导体集成电路是母片型半导体集成电路,其特征在于具有基体层和以多个层的形式顺序形成在基体层上的多个线路层,其中,在基体层上形成有实现预定电路功能的多个基体图案,多个线路层包括其线路图案可由用户改变的可变线路图案和其线路图案不可由用户改变的固定线路层,并且该母片型半导体集成电路的特征还在于被固定且选定的多个基体图案预先放置在整个芯片表面上能够在基体层中形成基体图案的区域处。
根据上述构造,基体图案被预先固定并放置在整个芯片表面上能够在基体层中形成基体图案的区域处,从而,可以通过只设计可变线路层的线路,并产生用于形成可变线路层中所设计线路的掩模,来制造对应于使用目的的半导体集成电路。

附图说明

图1是示出了根据本发明第一实施例的半导体集成电路的配置示例的视图;
图2是示出了根据第一实施例的半导体集成电路的配置示例的截面图;
图3A到3E用于解释形成在基体图案上的线路(线路图案);
图4A和4B是用于解释输入/输出端的线路图案的视图;
图5是示出了根据第一实施例的半导体集成电路的具体配置示例的视图;
图6是示出了根据第一实施例的半导体集成电路的具体配置示例的视图;
图7A和7B是示意性地示出了第一实施例中半导体集成电路的布图设计方法的视图;
图8A和8B是示出了第一实施例中半导体集成电路的布图设计方法的流程图;
图9是示出了能够执行本发明每个实施例中的半导体集成电路的布图设计方法的计算机功能的视图;
图10是示出了根据第一实施例的半导体集成电路的另一个配置示例的视图;
图11是示出了根据本发明第二实施例的半导体集成电路的配置示例的视图;
图12A、12B和12C是示出了固定宏的一个示例的视图;
图13是示出了根据第二实施例的半导体集成电路的具体配置示例的视图;
图14是示意性地示出了第二实施例中半导体集成电路的布图设计方法的视图;
图15是示出了第二实施例中半导体集成电路的布图设计方法的流程图;
图16是示出了根据第二实施例的半导体集成电路的另一个配置示例的视图;
图17A和17B是示意性地示出了第二实施例中半导体集成电路的另一种布图设计方法的视图;
图18是示出了根据本发明第三实施例的半导体集成电路的特性的电路配置图;
图19是示出了第三实施例中半导体集成电路的另一个电路修改示例的视图;
图20是示出了第三实施例中半导体集成电路的另一个电路修改示例的视图;
图21是示出了第三实施例中半导体集成电路的另一个电路修改示例的视图;
图22是示出了第三实施例中半导体集成电路的电路封装的一个示例的视图;
图23是示意性地示出了根据每个实施例中的半导体集成电路中的基体图案的初始放置的布图设计方法的视图;
图24是示出了根据每个实施例中的半导体集成电路中基体图案的初始放置的布图设计方法的流程图。

具体实施方式

下面,将基于附图解释本发明的实施例。
在下面的解释中,在根据本发明实施例的半导体集成电路中,“基体层(bulk layer)”指形成有晶体管的多晶硅基底、扩散层等等,并且不包括线路层。即,基体层对应于具有晶体管层和线路层的传统的基于单元的LSI中的晶体管层。
“基体(bulk)”是制作在基体层上的包括预定电路功能的功能模块,即所谓的宏。
-第一实施例-
图1示出了根据本发明第一实施例的半导体集成电路的配置示例,更具体地说,示出了半导体集成电路中基体层的配置示例。
在图1所示的半导体芯片1(下文中,整个半导体芯片1也称为“框架”)中,根据第一实施例的半导体集成电路具有多种基体(基体图案)。图1所示示例中的半导体集成电路有8个第一基体图案B1、144个第二基体图案B2、16个第三基体图案B3、24个第四基体图案B4和344个第五基体图案B5。
在该实施例(包括后述的其他实施例)中,第一基体图案B1被设为PLL(锁相环)电路的功能模块(PLL宏),第二基体图案B2被设为输入和输出电路的功能模块(I/O宏)。第三和第四基体图案B3和B4分别被设为存储器(RAM)的功能模块(第一和第二RAM宏),第一RAM宏和第二RAM宏至少在尺寸和功能(例如,端口数、字的位数等)其中之一上有所不同。第五基体图案B5被设为这样的功能模块(单位单元),用户可利用该功能模块可选地构造逻辑,并且第五基体图案B5对应于传统门阵列中被称为基本单元的东西。
从图1清楚可见,在根据第一实施例的半导体集成电路中,不仅放置对应于传统门阵列的基本单元的第五基体图案B5(单位单元),而且放置最少种类的基体图案B1到B5,使得它们被铺设在框架1内部。即,根据第一实施例的半导体集成电路通过预先以固定的规则嵌入基体图案B1到B5来被构造,其中基体图案B1到B5被给定了各种功能,并且在所有铺设有对应于传统晶体管层的基体层的基体图案的部分(区域)中形成某些电路功能。
基体图案B1到B5和其在框架1中的放置不能在用户侧改变(定制)。至于框架1中基体图案B1到B5的放置,所希望的是,其放置的方式能实现估计为大多数用户所希望获得的电路配置,或者能实现估计经常被用户所使用的电路配置。
这里,在基体中,相同基体图案,即具有相同电路功能的基体图案,具有相同尺寸和相同图形图案(多晶硅、扩散层、接触等),但是在基体中,不同的基体图案至少在尺寸或图形图案其中之一上有所不同。我们希望每个基体图案B1到B5的尺寸都是标准单元(标准化尺寸的参考单元)的尺寸的整数倍,但是有时也会包括尺寸不等于标准单元尺寸整数倍的基体图案。每个基体图案B1到B5能够由形成在每个基体图案B1到B5上的线路(线路图案)来控制电路功能,这将在下文描述。
至于每个基体图案B1到B5中的晶体管(p沟道晶体管和n沟道晶体管)的尺寸,以完全定义化的尺寸构造晶体管,从而使用户不能自由改变其尺寸。
图2是示出根据第一实施例的半导体集成电路的配置示例的截面图。
在图2中,标号3表示具有基体层BL的半导体衬底(芯片)。在基体层BL上方,提供了形成为多个层的第一到第六线路层PL1到PL6,用于使用Cu(铜)、Al(铝)等形成金属线路(下文中为了解释方便,从基体层BL一侧开始,顺序称为第一、第二、第三、第四、第五和第六线路层)。形成在每个线路层PL1到PL6中的线路通过层间绝缘膜与不同的线路层绝缘,并且在必要情况下利用过孔连接到不同线路层的线路。
在根据第一实施例的半导体集成电路中,形成在第一、第五和第六线路层PL1、PL5和PL6中的线路是线路图案不可改变的固定线路,而形成在第二、第三和第四线路层PL2、PL3和PL4中的线路是线路图案可改变的可变线路。即,第一、第五和第六线路层PL1、PL5和PL6是不能被定制的固定线路层,而第二、第三和第四线路层PL2、PL3和PL4是能够被定制的可变线路层。
在上述解释中,为了解释的方便,只在被称为固定线路层和可变线路层的各自线路层中实现固定线路和可变线路,但是可以只通过形成在线路层中的线路、或只通过位于线路层之间的过孔、或者通过形成在线路层中的线路和位于线路层之间的过孔的组合,来实现固定线路和可变线路。换句话说,当提及分别在其中形成固定线路和可变线路的固定线路层和可变线路层时,所指的只是线路层、或者只是位于线路层之间的过孔、或者线路层和位于线路层之间的过孔的组合。
例如,通过能够被定制的可变线路层中的线路,可以将电源提供给形成在基体层中的电路,并且可以切换内部逻辑配置。即使是能够被定制的可变线路层有时也包括使形成在基体层BL中的电路工作的必要线路。
图3A到3E是用于解释形成在基体图案上的线路(线路图案)的视图。图3A到3E示出了分别形成在第一到第五基体图案B1到B5上的线路图案。
如图3A到3E中所示,每个基体图案B1到B5都具有对应于每个基体图案的多个线路图案。该多个线路图案被分别给予指示标准单元类型的特殊单元名的代码(例如,对于形成在第一基体图案B1上的线路图案为B1A、B1B和B1C)作为标识信息,并且可以由代码唯一地确定线路图案。
至于相同的基体图案B1到B5,可以将线路图案改变为对应于其的多个线路图案中的任何线路图案。例如,作为将被形成在第二基体图案B2上的线路图案,可以选择线路图案B2A、B2B、B2C和B2D中的任何一个,并将其应用到不同位置的基体图案中的每一个上。
对应于相同基体图案的多个线路图案是彼此不同的线路图案,并且根据形成在基体层中的电路,在基体图案中包括用于向电路提供电源的线路的线路图案、连接到或不连接到向终端提供逻辑(“1”或“0”)的电源的线路的线路图案等等,其中终端切换电路内部的模式。因此,通过改变基体图案上的线路图案,可以控制(改变)由基体图案实现的电路功能。
优选地,在对应于相同基体图案的线路图案中,单元尺寸以及提供相对于外部的输入和输出端的位置都是相同的,即固定的。例如,如图4A中所示,在用于通过第五基体图案B5实现具有两输入(IN1、IN2)和一输出(OUT1)的某一逻辑5的线路图案的情形中,提供相对外部的输入端6和7以及输出端8的位置是固定的,并且在线路图案B5A′中对应于逻辑5,其他线路被制成不同的,如图4B中所示。另外优选地,固定线路层和可变线路层之间的接口部分类似地也是固定的。
图5和6示出了根据第一实施例的半导体集成电路的具体配置示例。
图5示出了对如图1所示放置每个基体图案B1到B5的半导体集成电路,在执行对应于用户需求的用户布图处理之前的半导体集成电路。
如图5中所示,在根据第一实施例的半导体集成电路中,在用户布图处理之前的初始状态,对于每个基体图案B1到B5设置被预先设为初始值的线路图案。在图5所示的示例中,对于第一基体图案B1设置线路图案B1A,对于第二基体图案B2设置线路图案B2A。类似地,对于第三、第四和第五基体图案B3、B4和B5设置线路图案B3A、B4A和B5A。例如被设为用于每个基体图案B1到B5的初始值的线路图案对于每种基体图案B1到B5来说是可选择的,并且希望在用户布图处理中线路图案的改变量较小。
在半导体集成电路中,在用户布图处理之前的初始状态,将触发器(FF)、时钟缓冲器、用于应对电源噪声的电容单元(解耦合单元)等放置使得其规则排列,并且预先执行应对串扰等的复杂和困难的设计,在现有技术中,该设计与用户布图处理一起执行。在图3所示的线路图案中,在某一限定线路层(例如,第一线路层PL1)中包括有提供时钟信号的线路图案(根据时钟树的线路图案)、测试电路的线路图案和用于电源的线路图案,从而使得这些线路可以在用户布图处理之前的初始状态阶段被构造到半导体集成电路中,或者其可以根据用户需求只用在必要的场合。
图6示出了对图5中所示的半导体集成电路执行了用户布图处理之后的半导体集成电路。
在图6所示的示例中,某些基体图案B1′的线路图案被从B1A替换(改变)为B1B,某些基体图案B2′的线路图案被从B2A改变为B2D。某些第三、第四和第五基体图案B3′、B4′和B5′的线路图案被分别从B3A、B4A、B5A改变为B3D、B4D、B5D。
未示出线路图案的基体图案B1″、B2″、B3″、B4″和B5″是未使用的基体图案,并且这些基体图案自身被留下但是可删除线路从而将其释放为其他线路的线路通道。通过将附于线路图案的代码替换为标识信息,来执行用户布图处理中线路图案的替换,细节将在后面描述。
如上,在第一实施例的半导体集成电路中,在基体图案保持通用,即,基体层(晶体管层)的结构不改变且固定的情况下,只改变了附于形成在每个基体图案的线路层上的线路图案的代码,从而可以改变线路图案,并且可以容易地切换要实现的电路功能(宏的功能)。
在第一实施例的半导体集成电路中,可根据用户需求而变化的部分(可定制部分)限于线路层的一部分,而包括基体层的其他部分仍然通用。因此,可以在短时间内容易地进行设计,并且当实际制造半导体集成电路时,可以通过在用户侧只是根据可变化部分的线路层制作掩模(光罩),来制造具有希望功能的半导体集成电路。
例如,在PLL宏(第一基体图案B1)的情形中,可以通过仅仅改变线路图案,来执行改变VCO(电压控制振荡器)频率、设置分频比、改变反馈端到外部的扩展和非扩展、当在内部包括多个模块时对使每个模块的有效和禁止的改变等等操作。在I/O宏(第二基体图案B2)的情形中,可以执行改变驱动力和I/O种类、在高速I/O(HSIO)为示例的情形中设置发送-接收通道数和改变精细功率控制、在与SSTL标准(存储器接口标准)一致的I/O情形中切换类1和类2(改变I/O单元的驱动力)、改变操作电压等等操作。
在RAM宏(第三、第四基体图案B3、B4)的情形中,执行了改变字比特电路配置及速度和功率控制的操作,并且几乎所有的线路层当不使用时都是开放的。在单位单元(第五基体图案B5)的情形中,可以执行某些输入端的VDD(电源电位)/VSS(参考电位)的自动箝位、改变驱动力、门延迟的上升/下降特性、通过保持后续管脚(电源线)和支撑的强化、通过释放预先设置的逻辑或其他逻辑的再分配来开放作为线路通道等等操作。
下面将解释第一实施例中半导体集成电路的布图设计方法。
图7A和7B示意性地示出了第一实施例中半导体集成电路的布图设计方法。
图7A示出了在如图5所示的初始状态中半导体集成电路的设计方法。
在初始状态半导体集成电路的设计中,通过参考框架1中的基体图案放置数据71和每个基体的线路图案表72,来执行线路图案的初始值选择处理P1,其中,基体图案放置数据71是在如图1所示的基体图案放置在整个框架1中的情况下,框架1中基体图案的放置信息,每个基体的线路图案表72示出了对应于该基体图案的多个线路图案,如图3所示。
在线路图案的初始值选择处理P1中,根据预先从线路图案表72设置的初始值,来选择每个基体图案的线路图案,并将该线路图案设为基体图案的线路图案。通过该处理P1,获得了初始线路图案设置框架数据73,在数据73中,对每个基体图案设置了相同的线路图案,如图5所示。
图7B示出了根据对应于用户需求的期望半导体集成电路的用户布图设计方法。
在用户布图设计中,通过参考如上所述获得的初始线路图案设置框架数据73和每个基体的线路图案表72,来执行用户布图处理P2。
在该用户布图处理P2中,对于放置在框架1中的每个基体图案,输入合适的线路图案的代码,并且基于输入的线路图案代码,将每个基体图案的线路图案从被设为初始值的线路图案改变并设置为该合适的线路图案,从而使得初始线路图案设置框架变为对应于用户需求的期望半导体集成电路。可以对放置在框架1中的所有基体图案输入线路图案代码,或者可以只输入需要替换线路图案的基体图案的线路图案代码。
通过用户布图处理P2,获得了用户布图完成框架数据74,数据74实现了对应于用户需求的期望电路功能,如图6所示。基于该用户布图完成框架数据74,可以只产生与形成在可变线路层中的线路图案有关的掩模,从而可以制造对应于用户需求的期望半导体集成电路。
下面将详细解释第一实施例中半导体集成电路的布图设计方法。
图8A和8B是示出了第一实施例中半导体集成电路的布图设计方法的流程图,图8A对应于图7A中所示的设计方法,而图8B对应于图7B中所示的设计方法。
在图8A中,在步骤S1,输入基体图案放置数据和线路图案的初始值(初始线路图案的代码)。
接着在步骤S2,通过参考每个基体的线路图案表,选择对应于步骤S1中输入的线路图案的初始值的线路图案。
在步骤S3,将步骤S2中选择的线路图案设为基体图案的初始线路图案。
随后在步骤S4,判定是否存在未设置初始线路图案的基体图案。当该判定结果为存在未设置初始线路图案的基体图案时,流程返回步骤S2,并且再次执行前述处理。
另一方面,当步骤S4中判定结果为不存在未设置初始线路图案的基体图案时,即,当对所有基体图案都已完成初始线路图案设置时,生成并输出初始线路图案设置框架数据,从而在步骤S5完成处理。
在图8B中,在步骤S11,输入初始线路图案设置框架数据和替换线路图案数据。这里,替换线路图案数据是指示出了在半导体集成电路中,用于实现对应于用户所需求的功能的线路图案的代码的数据。
在步骤S12,初始化用于一个接一个地顺序扫描放置在框架1中的基体图案的扫描座标。
接着在步骤S13,扫描对应于扫描座标的基体图案,并且判定是否执行线路图案的替换。当判定结果为要执行线路图案替换时,流程到达步骤S14,而当结果为不需要执行替换时,流程到达步骤S16。
在步骤S14,参考目标基体图案的线路图案表,并且选择对应于在步骤S11中输入的作为替换线路图案数据的线路图案代码的线路图案。
在步骤S15,用在步骤S14中选择的线路图案替换目标基体图案的线路图案,并设置该线路图案。
在步骤S16,判定是否有未被扫描的基体图案。当判定结果为有未扫描基体图案时,在步骤S17中设置下一次扫描座标,并且流程返回步骤S13。
另一方面,当在步骤S16中判定结果为没有未扫描基体图案时,在步骤S18中生成并输出用户布图完成框架数据,处理完成。
在第一实施例中,如图1所示的基体图案的放置只是一个示例,只要基体图案放置在框架1的内部,其放置方式是可选的。例如,可以布置更多的PLL宏(第一基体图案B1),或者可以放置更多的RAM宏(第三或第四基体图案、B3或B4)。另外,不同基体图案的多种放置方式被保存为数据,并且可以从中选择一种。对应于图3所示示例的每个基体图案的线路图案数是可选的。
在前述第一实施例中,基体图案B1到B5中的每一个被独立放置在框架1中,但是例如如图10所示,两个第三基体图案B3、三个第四基体图案B4和32个第五基体图案B5的组合可以被布置为与基体图案类似的基本模块BB1。图10中所示的基本模块BB1只是一个示例,基本模块BB1并不限于此。
-第二实施例-
下面将解释本发明的第二实施例。
第二实施例是通过将由用户设计的用于实现通用电路功能的预先设计信息(基体图案的放置信息、线路信息等等)准备为库,并利用该库执行设计,来减少与半导体集成电路开发有关的时间和成本以减小负担,其中通用电路功能例如是可由许多用户使用的电路功能。
图11示出了根据本发明第二实施例的半导体集成电路的配置示例,更具体地说,示出了半导体集成电路中基体层的配置示例。
如图11中所示,在根据第二实施例的半导体集成电路中,多个最少种类的基体图案B1到B5被布置在框架1中,以铺放在可形成基体图案的区域上。因此,在根据第二实施例的半导体集成电路中,与第一实施例类似,在框架1中放置有基体层的基体图案的所有部分(区域)中形成某些电路功能。
在第二实施例中,当基体图案B1到B5被放置在框架1中时,通过将多个被选择并固定的基体图案组合在一起来构造基本模块BLK,并且基本模块BLK被放置在框架1的预定区域中。此时,放置尽可能多的基本模块BL以将其铺放在框架1的预定区域中。在该实施例中,提供了固定(firm)宏(库),固定宏是预先设计的,并且通过使用N(N是可选自然数)个基本模块BLK,实现预定电路功能。
至于预定区域中的剩余区域,可以适当地放置基体图案(例如,第五基体图案B5),或者可以作为空区域而不放置基体图案,其中剩余区域是指在基本模块BLK被放置在框架1的预定区域中之后剩余的区域。
例如,在图11所示的示例中,通过将一个第三基体图案(第一RAM宏)B3、两个第四基体图案(第二RAM宏)B4和18个第五基体图案(单位单元)B5组合在一起,来构造一个基本模块BLK。在框架1的预定区域中,放置基本模块BLK以使其铺放在该区域上,并且放置了16个基本模块BLK。这里,框架1中的放置基本模块BLK的预定区域是指从框架1中可形成基体图案B1到B5的区域中排除放置了用户禁止使用的基体图案的区域而获得的区域,并且例如是框架1中用户可实现可选电路功能的区域,但除去布置有第一基体图案(PLL宏)B1和第二基体图案(I/O宏)B2的区域(换句话说,布置有与外部接口有关的基体图案和与时钟控制有关的基体图案的区域)。
在图11所示的示例中,第五基体图案B5被放置在预定区域的剩余区域中。
根据第二实施例的半导体集成电路中与基体层BL和线路层PL1到PL6有关的堆叠结构与图2中所示的根据第一实施例的半导体集成电路中的相同,因此省略其解释。
图12A、12B和12C示出了通过使用N个如上所述的基本模块BLK,实现特定电路功能的固定宏的示例。在固定宏中,注册通过预先执行用于实现特定电路功能的布图设计而获得的信息,并且例如将具有经常被用户使用的设计的通用电路功能注册为固定宏。例如,作为可通过使用固定宏实现的电路功能的示例,列举了用于AV设备、服务器设备、存储设备、图像处理等的CPU和处理器,与每个高速I/O标准一致的数据链路层的处理电路(高速I/O的接口电路)等。
固定宏具有基体图案的放置信息和线路信息作为预先设计的数据,这些信息用于在基本模块BLK单元中实现预定电路功能。基体图案的放置信息包括与放置座标和基体图案种类有关的信息,而线路信息包括与示出了形成线路的位置的座标和线路层有关的信息。这些种类信息中的座标值是以基本模块BLK中的预定位置作为参考的座标值。
在图12A到12C所示的示例中,在线路层PL1到PL6中具有用于实现预定电路功能的线路的基体图案,即,被用于实现电路功能且在线路层中形成有线路的基体图案被以阴影线示出。
图12A示出了第一固定宏FM1,FM1利用一个基本模块BLK实现了特定电路功能(特定电路功能注册在一个基本模块BLK中)。第一固定宏FM1通过一个第三基体图案B3和六个第五基体图案B5实现了该特定电路功能。
图12B示出了第二固定宏FM2,FM2利用一个基本模块BLK实现了特定电路功能。第二固定宏FM2通过一个第三基体图案B3、两个第四基体图案B4和四个第五基体图案B5实现了该特定电路功能。
图12C示出了第三固定宏FM3,FM3利用两个基本模块BLK实现了特定电路功能。第三固定宏FM3通过一个基本模块BLK中的一个第三基体图案B3、一个第四基体图案B4和七个第五基体图案B5以及另一个基本模块BLK中的一个第三基体图案B3、一个第四基体图案B4和六个第五基体图案B5实现了该特定电路功能。
图13示出了根据第二实施例的半导体集成电路的具体配置示例。
图13示出了当固定宏FM1到FM3对应于用户需求被分配给框架1的基本模块BLK中时的半导体集成电路。
通过依据基本模块BIK单元将根据固定宏FM1到FM3的基体图案的放置信息和线路信息应用到向其指定了分配的基本模块BLK并反映这些信息(下文中也称为“返回”),来执行固定宏FM1到FM3的分配。从而,指定的可选基本模块BLK可被替换为特定电路功能,例如处理器和高速I/O接口电路。
当固定宏FM1到FM3的基体图案的放置信息和线路信息被应用到基本模块BLK时,基于框架1中指定基本模块BLK的放置位置(放置座标),来转换基体图案放置信息和线路信息中的座标值。即,根据指定基本模块BLK的位置,来转换并返回固定宏FM1到FM3的基体图案放置信息和线路信息中的座标值。通过使用诸如CAD系统的具有座标转换(计算)功能的设计系统,可以进行该处理。当基体图案的放置信息和线路信息都被返回到指定基本模块BLK时,不是这两种信息都被返回,并且可以只返回基体图案的放置信息,至于线路,则可以执行再布线。
用户可以通过使没有被不分配给固定宏FM1到FM3的基本模块(图13中是基本模块UBK)可由用户自由使用,在这样的基本模块的基体图案B1到B5和线路通道中形成可选电路功能,或使其不可由用户使用。另外,即使当固定宏FM1到FM3被分配给基本模块时,也可以释放固定宏FM1到FM3中未使用的基体图案B1到B5和线路通道,从而使用户可以自由使用它们。
如上所述,在根据第二实施例的半导体集成电路中,在用户设计中被预先设计以实现通用电路功能的固定宏FM1到FM3的信息(基体图案的放置信息、线路信息等等)被预备为库,并且当执行半导体集成电路的设计时使用该库,从而只需通过简单的操作,即对于提供为固定宏FM1到FM3的电路功能,应用已经存在的基本模块的放置信息和线路信息,就可以完成基本电路设计,并且可以实现期望电路功能,而不需进行基体图案放置和其线路的设计。因此,通过减少与半导体集成电路开发有关的时间周期和成本,可以极大地减少负担。也可以获得与第一实施例相同的效果。
下面将解释第二实施例中半导体集成电路的布图设计方法。
图14示意性地示出了第二实施例中半导体集成电路的布图设计方法。
在根据第二实施例的半导体集成电路的设计中,通过参考基本模块放置数据141和固定宏库142,来执行固定宏分配处理P11,其中,数据141是框架1中基本模块的放置信息,基本模块被放置使得被铺放在框架1中的预定区域上,如图11所示,固定宏库142示出了固定宏,如图12所示。
在固定宏分配处理P11中,根据用户对框架1中每个基本模块的设置值,从固定宏库142中选择预先设计的固定宏,并且将该固定宏设为基本模块的固定宏。通过该处理P11,得到固定宏已分配框架数据143,在该数据143中,为每个基本模块分配了固定宏,如图13所示。
另外,执行放置/线路信息返回处理P12,用于根据固定宏,将基体图案的放置信息和线路信息返回到指定基本模块。
放置/线路信息返回处理P12是这样的处理,其对于每个分配的固定宏,将基体图案放置信息和线路信息返回到基本模块,或者当在布图中使用已经存在于基本模块中的诸如时钟线路和测试电路线路的线路时,只将基体图案放置信息返回到基本模块。通过处理P12,获得了用户布图完成框架数据144,该数据144具有根据用户设置在框架1中实现期望电路功能的固定宏的布图。
下面将详细解释第二实施例中半导体集成电路的布图设计方法。
图15是示出了第二实施例中半导体集成电路的布图设计方法的流程图。
首先,在步骤S21,输入固定宏的设置值,其示出了被分配给布置在框架1的预定区域中的基本模块的固定宏。
在步骤S22,初始化用于一个接一个地顺序扫描放置在框架1中的基本模块的扫描座标。
随后在步骤S23,基于在步骤S21中输入的固定宏的设置值,选择被分配给对应于扫描座标的基本模块的固定宏。
在步骤S24,判定是否返回为基本模块选定的固定宏的线路信息。当判定的结果为返回固定宏的线路信息时,流程到达步骤S25,并且将固定宏的线路信息返回到基本模块。另一方面,在基本模块的布图中已经使用了诸如时钟线路和测试电路线路的线路的情况下,当判定结果为不返回固定宏的线路信息时,则跳过步骤S25。
接着在步骤S26,将所选的固定宏的基体图案的放置信息返回到基本模块。
即,在步骤S24到S26的处理中,在基本模块等的布图中已经使用了诸如时钟线路和测试电路线路的线路的情形中,考虑到可能会使已经存在的线路发生问题,不返回固定宏的线路信息,此时只是将固定宏中基体图案的放置信息返回到基本模块,否则,要将固定宏中基体图案的放置信息和线路信息都返回到基本模块。
在步骤S27,判定是否有还未被扫描的未扫描的基本模块。当判定的结果为存在未扫描的基本模块时,在步骤S28中设置下一次扫描座标,然后流程返回到步骤S23。
当在步骤S27中判定的结果为不存在未扫描的基本模块时,在步骤S29中生成并输出用户布图完成框架数据,并且处理完成。
在前述的第二实施例中,这样的半导体集成电路被示为如图11所示的一个示例,在该半导体集成电路中,放置一种基本模块BLK,以使其铺放在位于框架1中的预定区域上,但是本发明并不限于此,并且可以在框架1的预定区域中放置多种基本模块。当使用多种基本模块时,每个基本模块的尺寸可以相同,也可以不同。即,基本模块的尺寸是可选的。
在图11中所示根据第二实施例的半导体集成电路中,放置在框架1的预定区域中的基本模块都沿同一方向对齐放置,但是这些基本模块也可以以基本模块中预定位置作为中心,旋转预定角度放置,或者被反转以相对于基本模块中某些轴对称放置。当固定宏被分配给被旋转或反转放置的基本模块时,对于固定宏的基体图案的放置信息和线路信息中的座标值,也执行对应于旋转或反转的座标转换处理。
例如,如图16所示,可以在框架1的预定区域中放置两种基本模块BLK1和BLK2,其中,第一基本模块BLK1组合了一个第三基体图案B3、两个第四基体图案B4和18个第五基体图案B5,第二基本模块BLK2组合了一个第四基体图案B4和20个第五基体图案B5。例如在图16中,可以与基本模块BLK1一同布置基本模块BLK1′,基本模块BLK1′是基本模块BLK1以基本模块BLK1内部的点或轴作为参考旋转或对称移动而得到的。
如上所述,有各种基本模块的放置方法,因此,多种不同的基本模块的放置图案被保存为数据(框架库),并且当设计半导体集成电路时可以从中选择一种。
图12和13中所示的固定宏FM1到FM3和其放置示例只是示例,并且不限于此。例如,可使用不同的基本模块BLK1和BLK2来构造一个固定宏,作为图16中所示的固定宏FM4。当一个固定宏由多个基本模块构成时,并不需要将基本模块之间互相接触地组合在一起,换句话说,并不需要基本模块的任意一侧与另一个基本模块的任意一侧重叠,并且作为图16中所示的固定宏FM3′,固定宏被分配给其的基本模块可以是分离的。当固定宏被分配给其的基本模块是分离的时,要对对应于该固定宏的基本模块之间的线路重新布线。
当一个固定宏由多个基本模块构成时,基本上重新布线基本模块之间的线路。然而,当包括固定宏的基本模块之间的空间(间隙)相同时,则不需要对基本模块之间的线路重新布线,而是可以使用固定宏的线路信息。
如果在第二实施例的基本模块的布图中,已经使用了诸如时钟线路和测试电路线路之类的线路,则在这种情形中,考虑到已经存在的线路存在发生问题的可能,并不将固定宏的线路信息返回到基本模块中的所有基体图案,而是可以只是不将固定宏的线路信息返回到发生问题的部分。固定宏的线路信息总是被返回到基本模块,而不论该基本模块是否发生问题,并且只对诸如物理核实(设计例程检查、电气连接检查)所检测的违反短路等等之类的非法部分执行重新布线。
在前述第二实施例中的半导体集成电路的布图设计方法中,将完成固定宏的分配处理P11和放置/线路信息返回处理P12之后所获得的数据作为用户布图完成框架数据,但是还可通过使用框架1中未使用的基体图案B1到B5和线路通道(未分配固定宏的基本模块的基体图案B1到B5和线路通道,以及固定宏中未使用的基体图案B1到B5和线路通道),来进一步执行用于实现对应于用户需求的各个电路功能的用户布图。在图17A和17B中示出了这种情况下布图设计方法的概要。
图17A和17B示意性地示出了第二实施例中半导体集成电路的另一种布图设计方法。在图17A和17B中,给予对应于图14中所示组件的组件相同的标号和符号。
图17A中所示半导体集成电路的布图设计方法与图14中所示半导体集成电路的布图设计方法相同,但是与图14中的半导体集成电路的区别在于,为了解释的方便,将完成固定宏的分配处理P11和放置/线路信息返回处理P12之后所获得的数据称为初始布图完成框架数据144′,因此省略其解释。
图17B示出了用于实现对应于用户需求的各个电路功能的用户布图设计方法。
在用户布图设计中,通过参考初始布图完成框架数据144′和每个基体的线路图案表175,来执行用户布图处理P23,其中,数据144′是如图17A所示完成了固定宏分配处理P11和放置/线路信息返回处理P12之后所获得的。
在该用户布图处理P23中,通过使用在已执行了固定宏分配的初始布图完成框架中可由用户自由使用的未使用基体图案和线路通道,来执行用于实现对应于用户需求的电路功能的线路图案的设置处理。更具体地说,对于框架1中每个未使用的基体图案输入合适的线路图案的代码,并且基于输入的线路图案代码,选择用于每个基体图案的线路以设置合适的线路图案。
通过执行用户布图处理P23中与未使用的基体图案有关的线路图案的设置处理,利用分配固定宏后的未使用基体图案B1到B5和线路通道,获得了用户布图完成框架数据176,数据176实现了对应于用户需求的各个电路功能。
-第三实施例-
下面将解释本发明的第三实施例。
当例如在半导体集成电路中包括两个遵从于JTAG(边界扫描测试)的TAP(测试接入端口)控制器时,通常将两个TAP控制器构造为利用复用器来切换。通过利用复用器,包括在芯片内部的两个TAP控制器从外部被视为是互斥的,并且可以减少外部管脚(端)的数目(外部I/O的数目)。
然而,当实现前述电路时,在传统的半导体集成电路中与两个TAP控制器和复用器有关的逻辑(网络列表)例如从制造者一侧等提供,并且通常与用户无关,但是每个用户自由执行实际的布图设计。即,尽管实现了相同的电路功能,但是每个用户都执行布图设计,这降低了开发效率,并且成为妨碍降低开发、制造等所需成本的因素之一。
从而,下文中将解释的第三实施例通过将预先设计的用于实现测试电路功能的信息(基体图案的放置信息、线路信息等等)准备为库,并使用该信息执行设计,减少了与半导体集成电路开发有关的时间和成本,并且减少了负担。用户使得提供为库的配置的一部分可变化,从而增强了通用多样性。
应当注意,在下面的解释中,只解释根据第三实施例的半导体集成电路的特性电路配置,并且由于整体配置等与根据第一和第二实施例的半导体集成电路相同,因而省略其解释。
图18示出了根据本发明第三实施例的半导体集成电路的配置示例。在图18中,只示出了根据第三实施例的半导体集成电路的元件特性,其对应于其整体配置被示于第一和第二实施例中的半导体集成电路的配置中的一部分。
在图18中,标号192指代JTAG的复用器,标号193指代第一TAP控制器(TAP-A),标号194指代第二TAP控制器(TAP-B)。例如,TAP-A193是为整个芯片测试提供的TAP控制器,TAP-B194是为处理器提供的TAP控制器。
复用器192经由缓冲器BUF11由线路连接到外部端(管脚)IO11(输入IN1),并且经由缓冲器BUF12由线路连接到外部端IO12(输出OUT1)。复用器192和TAP-A193经由缓冲器BUF21和BUF22由线路连接。类似地,复用器192和TAP-B194经由缓冲器BUF31和BUF32由线路连接。
从外部将测试模式信号TST输入到复用器192中,并且TAP-A193或TAP-B194中哪一个TAP控制器是可切换的。可以根据测试模式信号TST切换TAP-A193和TAP-B194,即,TAP-A193或TAP-B194中哪一个连接到外部端IO11和IO12可以切换。
经由缓冲器BUF11的线路(连接复用器192和外部端IO11)和经由缓冲器BUF21和BUF31的线路(分别将复用器192连接到TAP-A193和TAP-B194)由多种线路构成,所述多种线路分别对应于遵从IEEE1149.1标准(所谓的JTAG)的测试数据输入TDI、测试时钟TCK、测试模式选择TMS和测试复位nTRST,但是为了解释方便在图18中省略了这些线路。经由缓冲器BUF12的线路(连接复用器192和外部端IO12)和经由缓冲器BUF22和BUF32的线路(分别将复用器192连接到TAP-A193和TAP-B194)对应于遵从IEEE1149.1标准的测试数据输出TDO。
这里,在该实施例中,基体图案的放置信息和线路信息被注册为预先设计的数据(库),如在第二实施例的固定宏中,而这些信息用于实现图18中所示示例的电路配置。因此,实现了复用器192、TAP-A193、TAP-B194和每个缓冲器的电路功能的宏的基体图案(基体层的结构)是固定的,与用户无关,并且不能在用户侧改变。
各个宏之间的线路是固定的,并且不能在用户侧改变,但是复用器192(缓冲器BUF31和BUF32)和TAP-B194之间的线路可以在用户侧改变,如后面所述。因此,在各个宏的线路中,至少复用器192(缓冲器BUF31和BUF32)和TAP-B194之间的线路形成在可变线路层中。其他宏之间的线路或者可以形成在固定线路层中,或者可以形成在可变线路层中。
如上所述,在第三实施例中,被预先设计以实现如图18所示的测试电路功能的基体图案放置信息和线路信息被准备为库,并且当执行半导体集成电路的设计时使用该库。结果,对于提供为库的测试电路功能,只需通过应用库中所示的信息的简单操作,而不需执行基体图案之间的线路以及基体图案的放置和其线路的设计,就可以实现测试电路的功能。因此,包括在芯片内部的两个TAP控制器(TAP-A193、TAP-B194)从外部被视为是互斥的,获得了能够减少外部端数目(外部I/O数目)的效果,并且减少了与半导体集成电路开发有关的时间和成本,从而能够减少负担。
另外,复用器192(缓冲器BUF31和BUF32)和TAP-B194之间的线路可以在用户侧改变,即可以定制,从而改变了电路配置的一部分,并且可以实现各种应用。下文中,将参考图19到21,示出根据第三实施例的半导体集成电路的一个定制示例。在图19到21中,只示出了对应于图18的电路部分。
图19示出了第三实施例中半导体集成电路的电路修改示例。在图19所示的示例中,删除了复用器192(缓冲器BUF31和BUF32)和TAP-B194之间的线路,并且TAP-B194的输入端和输出端分别连接到不同于外部端IO11和IO12的外部端(管脚)IO21(输入IN2)和IO22(输出OUT2)。
通过以这种方式将TAP-B194的输入端和输出端连接到外部端IO21和IO22,芯片内部的TAP-A193和TAP-B194从芯片外部看来是独立的,并且可以通过独立地控制两个TAP控制器193和194来操作这两个TAP控制器。
可以在TAP-B194的输入端和输出端与外部端IO21和IO22之间插入可选逻辑电路(与电路、或电路和与非电路)等。与被删除线路有关的缓冲器BUF31和BUF32可以删除,也可以原样保留,如果其被保留,则缓冲器BUF31的输出端可能悬浮,但是优选地将缓冲器BUF32的输入端箝位在VDD(电源电位)或VSS(参考电位)。
图20示出了第三实施例中半导体集成电路的另一个电路修改示例。在图20所示的示例中,第三TAP控制器(TAP-C)195以链(串联)进一步连接到图18所示电路配置中的TAP-B194。当TAP控制器可如这样串联连接时,多个TAP控制器连接在链中,如图20所示,并且可以可选地增加对应于TAP控制器的电路元件(例如处理器)数目。可以包括不同的电路元件等。
图21示出了第三实施例中半导体集成电路的另一个电路修改示例。在图21所示的示例中,第四TAP控制器(TAP-D)196连接到复用器192,而不使用在库中预备的TAP-B194,其中控制器196的布图设计在用户侧被新执行。未使用的TAP-B194可以删除,也可以原样保留。
如上所述,可以将新布局的TAP-D196连接到复用器192,而不使用库中存在的TAP-B194,即,可以通过有效地利用现存的复用器192,将不同的TAP控制器连接到复用器192。例如,如果TAP-B194是对应于某一种(类型A)CPU的TAP控制器,而TAP-D196是对应于不同种(类型B)CPU的TAP控制器,则也可以通过应用现存的复用器192,连接不同的CPU。
根据第三实施例的半导体集成电路的定制并不限于此,但是可以可选地在可改变范围内执行定制。例如,可以通过可选地组合图19到21中所示内容来执行定制。
在前述解释中,用于实现图18中所示电路配置的设计信息被注册为库,但是用于实现排除了可改变部分的电路部分191的设计信息也可注册为库。这种情况下,到外部的接口部分,即,缓冲器BUF31的输出端和缓冲器BUF32的输入端是固定的,并且可连接到TAP-B194和TAP-D196。
图22示出了第三实施例中半导体集成电路的电路封装的具体示例。在图22中,标号221指代芯片,在芯片中形成有复用器222、用于整个芯片测试的TAP控制器223和处理器内核224。在处理器内核224中形成有用于处理器的TAP控制器225。这里,复用器222、用于整个芯片测试的TAP控制器223和用于处理器的TAP控制器225分别对应于图18中所示的复用器192、TAP-A193和TAP-B194。
宏221对应于IEEE1149.1标准,并且其外部端(管脚)分别被用作遵从IEEE1149.1标准的测试数据输入TDI、测试时钟TCK、测试模式选择TMS、测试复位nTRST和测试数据输出TDO。另外,宏221还有用于输入测试模式信号TST的外部端,测试模式信号TST用于控制复用器222,以切换到TAP控制器223和225中的任何一个。
根据信号是来自芯片外部的输入信号(测试数据输入TDI、测试时钟TCK、测试模式选择TMS、测试复位nTRST)、还是到芯片外部的输出信号(测试数据输出TDO),或者根据信号是正逻辑、负逻辑等等,通过使用或电路、与电路和2选1选择器来构造复用器222。复用器222对应于测试模式信号TST,将每个信号发送到TAP控制器223和225中任何一个,并且发送来自控制器223和225中任何一个的信号。
前述方法是将用于实现第三实施例中测试电路功能的设计信息预备为库,并通过使用库来执行布图设计,前述方法不仅适用于第一和第二实施例中所示的半导体集成电路,还适用于包括门阵列等的可选ASIC,其中通过固定基体层和一部分或整个线路来提供该可选ASIC。
-每个实施例中半导体集成电路的初始布图设计-
这里,将解释每个前述实施例中半导体集成电路的初始布图设计方法,即,根据图1、10、11等中所示示例的基体图案的初始放置的布图设计方法。
图23示意性地示出了每个实施例中半导体集成电路的布图设计方法(基体图案的初始放置方法)。
在半导体集成电路的初始布图设计(基体图案初始放置的设计)中,通过参考基体图案数据231和基体图案放置候选表232,来执行基体图案选择和放置处理P31,其中数据231是框架中基体图案的设置信息,表232示出了可被放置在框架中的基体图案。在基体图案数据231和基体图案放置候选表232中可包括第二实施例中所示的基本模块等。
在基体图案选择放置处理P31中,根据对于框架1的每个预定区域的基体图案数据231中所示的设置值,从基体图案放置候选表232中选择基体图案,并且将该基体图案设置为用于该预定区域的基体图案并放置该图案。通过该处理P31,可以获得基体图案设置框架数据233,在数据233中,基体图案被放置在整个框架中,如图1、10和11所示铺放在其中基体可布置在基体层中的区域上。
随后将详细解释每个实施例中半导体集成电路的初始布图设计方法。
图24是示出了每个实施例中半导体集成电路的初始布图设计方法的流程图。
首先在步骤S31,输入基体图案数据231(基体图案的设置值),数据231示出了在框架的每个区域中要被放置的基体图案。
随后在步骤S32,对于框架的每个预定区域选择对应于在步骤S31输入的基体图案的设置值的基体图案,然后将其设置并放置在区域中。通过参考基体图案放置候选表来执行基体图案的选择,其中基体图案放置候选表示出了可适用于半导体集成电路,即可在框架中放置的基体图案。
然后在步骤S33,判定框架中是否存在未放置基体图案的区域。当判定结果为存在未放置基体图案的区域时,流程返回到步骤S32,并且再次执行前述的处理。
另一方面,当在步骤S33中判定结果为不存在未放置基体图案的区域,即,对于框架中可放置基体的所有区域都已完成基体图案放置时,在步骤S34生成并输出基体图案设置框架数据,并且处理结束。
-其他实施例-
通过由具有CPU或MPU、RAM、ROM等的计算机执行存储在ROM中的程序,可以实现与前述半导体集成电路的布图设计方法有关的处理,并且上述程序包括在本发明的实施例中。通过将程序记录在诸如CD-ROM的记录介质中并且使计算机读取程序,可以实现该处理,其中计算机操作所述程序以执行上述功能,并且存储上述程序的记录介质包括在本发明的实施例中。至于记录上述程序的记录介质,除了CD-ROM外,还可使用软盘、硬盘、磁带、光磁盘、非易失性存储器卡等等。
程序产品包括在本发明的实施例中,其中计算机通过执行该程序产品并执行处理,实现上述实施例的功能。上述程序产品包括实现上述实施例功能的程序自身、读取上述程序的计算机、能够将上述程序提供给经由网络通信地连接的计算机的通信设备、包括该通信设备的网络系统等。
上述实施例功能的实现不仅可以由计算机执行所提供的程序来获得,还可以由运行在计算机中的OS(操作系统)或其他应用软件等的合作来获得,以及由计算机的扩展板或扩展单元执行所提供程序的处理的全部或一部分来获得。为了在网络环境中利用本发明,可以由另一个计算机执行程序的全部或一部分。
例如,根据前述实施例的半导体集成电路的布图设计方法使用图9中所示的计算机功能900,并且可由其CPU 901执行。
在计算机功能900的配置中,CPU 901、ROM 902、RAM 903、键盘(KB)909的键盘控制器(KBC)905、作为显示部分的CRT显示器(CRT)910的CRT控制器(CRTC)906、硬盘(HD)911和软盘(FD)912的磁盘控制器(DKC)907、以及网络接口卡(NIC)908经由系统总线904通信地连接,如图9所示。
CPU 901通常通过执行存储在ROM 902或HD 911中的软件(程序)或者从FD 912提供的软件(程序),来控制连接到系统总线904的每个组件。
即,CPU 901通过读取来自于ROM 902、HD 911或FD 912的用于执行前述操作的处理程序,来执行控制以实现上述实施例中的操作。
RAM 903充当CPU 901的主存储器、工作区域等等。
KBC 905控制从KB 909和未示出的点击设备等的指令输入。CRTC906控制CRT 910的显示。DKC 907控制对HD 911和FD 912的存取,HD 911和FD 912存储引导程序、各种应用、用户文件、网络管理程序和在上述实施例中的上述处理程序等。NIC 908与网络913上的其他设备双向交换数据。
在本发明的前述实施例中,六层线路的半导体集成电路被示为一个示例,其中使得第一、第五和第六线路层PL1、PL5和PL6为固定线路层,第二、第三和第四线路层PL2、PL2和PL4为可变线路层,但是本发明并不限于此,而是适用于具有多层线路(线路层数目是可选的)的半导体集成电路,并且只要包括至少一个可变线路层,可变线路层和固定线路层就是可选的。如上所述,可以只通过形成在线路层中的线路,或者通过设置在线路层之间的过孔,或者通过形成在线路层中的线路和设置在线路层之间的过孔的组合,来实现固定线路和可变线路。
上述实施例只是用于执行本发明的实施例的示例,并且一定不能限制性地解释本发明的技术范围。本发明可以各种形式实现,而不偏离技术概念或主要特性。
根据本发明,在开发对应于用户目的的半导体集成电路时,可以只通过设计每种产品的可变线路层的线路并产生用于形成设计线路的掩模,来制造期望的半导体集成电路。因此,由于对于每种产品只需产生最小数目的掩模,所以可以极大地减小开发成本,并且由于对每种产品只设计了有限线路层的线路,减少了要产生的掩模数目,所以可以极大地减小开发时间周期。由于此,可以极大地减小人工小时数,即人力成本,并且可以避免开发中的复杂化。
相关申请的交叉引用
本申请基于并要求2004年4月19日提交的在先日本专利申请No.2004-123320、2004年11月5日提交的No.2004-322730和2005年3月4日提交的No.2005-061442的优先权,这里通过引用并入上述申请的全部内容。