KR910002139B1 - 반도체집적회로장치의 배선방법 - Google Patents
반도체집적회로장치의 배선방법 Download PDFInfo
- Publication number
- KR910002139B1 KR910002139B1 KR1019870014894A KR870014894A KR910002139B1 KR 910002139 B1 KR910002139 B1 KR 910002139B1 KR 1019870014894 A KR1019870014894 A KR 1019870014894A KR 870014894 A KR870014894 A KR 870014894A KR 910002139 B1 KR910002139 B1 KR 910002139B1
- Authority
- KR
- South Korea
- Prior art keywords
- wiring
- cell
- channel
- network
- trunk
- Prior art date
Links
- 239000004065 semiconductor Substances 0.000 title claims description 20
- 238000000034 method Methods 0.000 claims description 68
- 230000008569 process Effects 0.000 claims description 33
- 239000000758 substrate Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 15
- 239000000284 extract Substances 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 238000005491 wire drawing Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/70—Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
- H01L21/71—Manufacture of specific parts of devices defined in group H01L21/70
- H01L21/768—Applying interconnections to be used for carrying current between separate components within a device comprising conductors and dielectrics
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/02—Manufacture or treatment of semiconductor devices or of parts thereof
- H01L21/04—Manufacture or treatment of semiconductor devices or of parts thereof the devices having potential barriers, e.g. a PN junction, depletion layer or carrier concentration layer
- H01L21/50—Assembly of semiconductor devices using processes or apparatus not provided for in a single one of the subgroups H01L21/06 - H01L21/326, e.g. sealing of a cap to a base of a container
- H01L21/60—Attaching or detaching leads or other conductive members, to be used for carrying current to or from the device in operation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- General Physics & Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
내용 없음.
Description
제1도는 본 발명의 1실시예에 따른 반도체집적회로장치의 배선방법을 처리해주는 흐름도.
제2도는 좌측변 알고리즘(left-edge algorithm)에 의한 간선의 챈널로 할당해 주도록 된 처리흐름을 도시해 놓은 도면.
제3도(a) 내지 제3도(e)는 본 발명의 1실시예에 따른 폴리셀방식블록의 배선영역의 배선처리공정을 설명하기 위한 도면.
제4도는 보다 구체적인 실시예에서 통과배선의 필요한 망(net)을 도시해 놓은 도면.
제5도는 통과배선의 필요한 망에 대해 추출해서 필요한 간선을 도시해 놓은 도면.
제6도는 필요한 간선에 대해 최적배치조합을 처리하는 결과를 도시해 놓은 도면.
제7도는 통과배선할당의 결과 우회배선이 발생된 일례를 도시해 놓은 도면.
제8도는 우회배선을 없애주기 위한 간선의 챈널로 할당가능범위를 제4도의 필요한 망에 대해 도식화해서 도시해 놓은 도면.
제9도는 공통의 챈널로 할당가능범위를 갖춘 간선의 배치조합결정을 위한 1수법을 도시해 놓은 흐름도.
제10도는 간선의 배치조합결정수법을 이용해서 제5도에 도시된 간선의 배치조합을 한 결과를 도시해 놓은 도면.
제11도(a) 및 제11도(b)는 3단자 이상으로 이루어진 통과배선의 2가지 형태를 도시해 놓은 도면.
제12도는 다시 1가지의 망내에 통과배선의 2가지 형태를 포함한 일례를 도시해 놓은 도면.
제13도는 상기와 같은 망의 형태구분의 처리흐름을 도시해 놓은 도면.
제14도는 통과배선의 l가지 형태의 망에 관한 통과배선위치의 할당처리흐름을 도시해 놓은 도면.
제15도(a) 및 제15도(b)는 셀내에 배선통과금지영역이 있는 경우의 문제를 설명하기 위한 도면.
제16도는 통과배선금지영역이 있는 경우의 문제를 해결하기 위한 수법을 설명하기 위한 도면.
제17도는 필요간선의 분할을 배치하는 일예를 도시해 놓은 도면.
제19도는 종래의 배선처리흐름을 도시해 놓은 도면이다.
* 도면의 주요부분에 대한 부호의 설명
1 : 셀행 2 : 배선영역
3 : 입출력회로영역 4 : 셀
본 발명은 폴리셀방식의 반도체집적회로장치에서 폴리셀사이의 결선경로를 컴퓨터를 이용한 자동배선처리에 의해 결정해 주도록 된 반도체집적회로장치의 배선방법에 관한 것이다.
폴리셀방식의 반도체집적회로장치는 논리기능이나 기억기능의 회로를 일반적으로 같은 높이를 갖고 직사각형을 이루는 회로셀(이하 단순하게 셀이라고 칭함)이라고 칭하는 영역에 구성하고, 그들 셀을 빈틈없이 행형태로 배치해서 셀행을 구성한 다음 복수개의 셀행을 칩내에 배치해 주므로써 각셀의 단자사이를 배선해줌에 따라 소망의 회로동작을 얻도록 되어 있는 것이다. 여기서, 상기 회로셀로는 NAND와 NOR 및 플립플롭과 같이 미리 정해진 패턴으로 설계된 것을 자유롭게 취급할 수 있는 바, 이러한 폴리셀방식에 의해 복잡하면서 대규모적인 회로시스템을 비교적 간단한 반도체집적회로장치로서 실현할 수 있다.
제18도는 일반적인 폴리셀방식에 의한 반도체집적회로의 개략특성을 도시해놓은 것으로, 이 반도체집적회로위는 소자영역인 복수개의 셀(4)이 배열되는 셀행(1)과 챈널이라고 칭하는 각 셀행(1)사이에 있는 배선영역(2) 및, 주변에 설치되는 입출력회로영역(3)으로 나누어져 있는 바, 여기서 챈널인 배선영역(2)은 각셀(4)에 있는 입출력단자사이를 결선해 주는 배선이 설치되는 영역이다.
이 배선으로는 통상적으로 2층의 금속배선이 이용되고 있는데 수평방향인 횡방향과 수직방향인 종방향으로 각각 다른층이 할당되어 있고, 또 챈널(2)의 면적은 미리 정해진 상태가 아니므로 일반적으로 배선을 종료한 후 배선에 필요로 하는 간선수(셀행(1)에 평행한 배선선분을 설치할 수 있는 부분의 갯수로서, 트랙수라고도 칭함)에 의해 결정된다.
일반적으로는 셀(4)내에는 2층 금속배선의 통과배선이 가능한 부분이 존재하게 되므로 복수개의 셀행(1)을 걸칠 필요가 있는 배선(이와 같은 배선을 통과배선이라 칭함)은 통과배선이 가능한 셀(4)내의 장소를 사용해서 실현할 수 있고, 또 셀(4)내의 통과배선이 가능한 장소가 통과배선의 결선요구에 대해 부족하게 될 경우에는 셀행(1)내의 인접셀(4)사이에 통과배선전용의 셀(공급통과셀)을 발생 및 삽입해서 통과배선을 실현하는 것이 일반적이였다.
이상과 같이 폴리셀방식의 반도체집적회로장치에서 컴퓨터를 이용한 자동배선처리에 의해 배선레이아웃을 결정할 때에는 배선영역의 면적을 최소로 해줄 뿐만 아니라 각 배선길이도 최소로 하는 것을 그 목적으로 한다. 이와 같은 자동배선수법으로는 배선영역을 복수개의 챈널로 분할해서 각 챈널마다 배선을 결정해 가는 챈널배선법을 이용하는 것이 대표적이다. 따라서, 이 챈널배선법에 의한 것은 고속처리가 가능할 뿐만 아니라 거의 100%의 배선률을 달성할 수 있다는 잇점을 갖는다.
종래의 챈널배선을 이용한 처리흐름을 제19도에 도시해 놓았다. 일반적으로 처리수순의 개시후 먼저 전체의 망(net ; 동전위로 결선하는 단자의 집합)에 대해 단자의 배선인출방향을 선택하게 되는 바(j1단계와 j2단계), 여기에서는 셀의 단자로부터 배선을 해당셀이 존재하는 셀행의 위에 인접하는 챈널에다 인출하는지, 셀행의 아래에 인접하는 챈널에다 인출하는지, 또는 양쪽의 챈널에다 인출하는지의 여부를 선택하게 된다. 이러한 처리에 있어서는 셀내의 배선금지영역의 유무 및 배선영역의 최소화등을 고려하게 된다.
이어 셀행을 넘는 배선을 할 필요가 있는 망(통과배선이 필요한 망)을 어떤 순서에 의해 순차적으로 끄집어 내고(j4 단계), 그 망에 대해 셀행의 위를 통과하는 위치(통과배선위치)를 결정한다(j5 단계). 이 처리에 의해 통과배선이 필요한 망의 개략배선경로도 동시에 결정된다. 이상의 처리(j1단계∼j5단계)는 개략배선 또는 대역적(大域的 ; global)배선이라 칭하기도 하는데, 이런 대역적 배선이 종료된 후에는 각망에 대한 결선요구가 챈널단위의 처리문제로 환원되게 된다. 이어 각 챈널에 대해 챈널배선을 순차적으로 처리해서 j6단계로 되돌려 보내주는 과정을 전체챈널의 배선이 종료되기까지 실행한 다음 블록내의 배선이 종료되게 된다.
이 폴리셀방식에서는 특히 대역적배선에서 통과배선위치의 할당 및 챈널로의 간선할당이 통과배선을 필요로 하는 망마다 순차적으로 처리되기 때문에 전체의 챈널을 총합한 배선의 혼잡도의 완화를 충분하게 최적화할 수 없고, 그 결과로 챈널면적이 확대될 뿐만 아니라 집적도도 효과적으로 높힐 수 없다는 결점이 있었다.
즉, 망을 순차적으로 처리해 주기 때문에 그 이전에 할당된 통과배선위치나 간선의 챈널에 대한 간선의 할당결과를 기준으로 해서 현재처리중인 망의 통과배선위치 및 간선의 할당챈널을 결정해 주기 때문에 전체의 망을 통해 통과배선위치 및 간선의 할당결정을 최적화하기가 어렵다.
또 순차적인 처리에서는 통과배선을 할당해 주는 망의 처리에 대해 순번을 붙이는 것이 그 결과의 양부에 영향을 준다.
결국 제19도에 도시된 j4단계의 통과배선을 필요한 망에서 끄집어내는 순번에 의해 개개의 망의 통과배선의 할당위치 또는 간선의 할당챈널이 변화되어, 결과적으로 챈널배선을 종료된 후 각 챈널의 배선에 사용한 간선수(트랙수)의 총합에 영향을 준다. 따라서, 통과배선을 할당해 주는 망을 순번붙힘에 의해 배선영역의 높이 뿐만 아니라의 면적에 차이를 주는 결과로 되어, 보다 최적에 가까운 통과배선위치나 간선의 할당은 대단히 어렵게 된다.
상기한 바와 같이 종래의 폴리셀방식 반도체집적회로장치의 개략배선(구형배선)수법으로는 특히 통과배선이 필요한 망의 통과배선위치 및 챈널에 대한 간선의 할당이 최적화되기 어렵게 되고, 또 배선영역의 면적이 증대할 뿐만 아니라의 집적도도 충분히 높힐 수 없다는 문제점이 있었다.
이에 본 발명은 상기와 같은 사정을 감안해서 발명된 것으로, 개략배선수법(大域的 배선수법)에 따른 반도체집적회로장치의 배선방법을 제공함에 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명은, 개략배선에서 통과배선이 필요한 망에 대해 통과배선위치의 할당 및 챈널에 대한 간선의 할당을 결정해서 개략배선경로를 결정한 다음, 그 결과에 준해 챈널배선법에 의해 각 챈널에 대해 순차적으로 배선처리를 하고, 셀사이의 상세한 배선경로를 결정하여 결선을 행할 때 통과배선위치의 할당 및 챈널에 대한 간선의 할당을 망마다 순차적으로 처리하지 않고 통과배선이 필요한 망에 대해 각 망마다 필요하게 되는 간선(셀행에 평행한 수평방향의 배선)을 추출해서 그 간선의 집합을 배선에 우회가 발생되지 않게 하기 위한 할당챈널의 허용범위나 셀내의 통과배선가능한 장소의 유무등을 조건으로 고려하여 최소의 트랙수에서 배치충전이 실현되는 조합을 구하며, 그후 그 간선의 배치충전의 조합에 따라 간선을 챈널로 할당해 주므로써 일거에 배선위치를 결정하도록 되어 있다.
그 결과 본 발명에 의하면 종래의 챈널배선법에 의한 챈널의 배선처리를 기본으로 하면서, 개략배선에서 통과배선이 필요한 망에 대해 통과배선위치의 할당 및 간선의 챈널로의 할당을 최소의 트랙수에서 실현할수 있는 간선의 배치조합에 준거하여 일괄해서 결정하게 되기 때문에, 항상 최적에 가까운 간선의 챈널로의 할당과 그에 종속해서 정해지는 통과배선위치의 할당이 가능하게 된다. 그에 따라 거의 100%의 배선률을 달성할 수 있는 챈널배선법의 잇점을 살려서 배선영역의 유효한 압축이 가능하게 된다.
이하 예시도면을 참조해서 본 발명의 1실시예를 설명한다.
제1도는 본 발명의 1실시예에 따른 반도체집적회로장치의 배선방법을 처리해 주는 수순의 흐름도로서, 수순의 개시후 먼저 전체의 망에 대해 단자의 배선인출방향을 선택하는 바(1단계와2단계), 이는 제19도에 도시된 종래방법의 j1단계 및 j2단계와 마찬가지이다.
이어 셀행을 넘을 필요가 있는 전체망을 추출하고(3단계), 계속해서 통과배선이 필요한 각각의 망에 대해 필요한 간선을 추출한다(4단계). 구체적으로는 그망에 속하는 단자중에서 최소인 X좌표로부터 최대인 X좌표까지의 구간(선본)을 필요한 간선으로 정의한다.
이어 간선을 최적인 배선조합으로 결정하게 되는 바(5단계), 여기에서는 챈널에 대한 간선의 할당(즉, 간선을 어떤 챈널에 설치하는지)을 고려하지 않고, 간선을 어떤 조합으로 1가지의 가상적인 챈널의 트랙에 배치한다면, 최소의 트랙수에서 간선을 배치충전할 수 있는지를 결정하게 된다.
이 조합을 결정하는 것으로는 여러종류의 알고리즘이 제안되어 있는 바, 예컨대 "좌측변 알고리즘(문헌 ; A.Hashimoto, S. Stevens 공저, "wire routing by optimizing channel assignment within large apertures."; 1971년 제8차 설계자동연구회 논문집 PP155∼169)을 이용한다면 최소의 트랙수를 주는 간선의 배선이 얻어진다.
이어 간선의 배선결과에 준해 챈널에 대해 각 간선을 할당하게 되는 바(6단계), 즉 동일트랙에 배치된 간선은 동일챈널에 할당하도록 하는 것이고, 챈널에 대한 간선의 할당이 종료한다면 각 망마다 통과배선이 할당되는 셀행과 그 셀행위의 위치(X좌표)가 결정되므로 그들 셀행위에 할당되었던 통과배선위치를 등록한다(7단계).
이상의 처리에서 개략배선처리(대역적 배선처리)가 종료된 다음 각 챈널마다 챈널배선처리를 하므로써(8단계 내지10단계), 블록내의 배선이 종료된다. 챈널배선처리의 부분은 제19도에 도시된 종래방법의 j6단계 내지 j8단계의 처리와 마찬가지이다.
여기서 간선의 조합결정에 사용되는 전술한 바 있는 좌측변 알고리즘에 대해 구체적으로 설명한다.
제2도는 좌측변 알고리즘을 이용한 간선의 조합결정수순에 관한 흐름도를 도시해 놓은 것으로, 수순의 개시후 우선 t=1라 한다(e1단계). 여기서 t는 간선을 배치한 때의 트랙총수이다. 이어 간선의 구간리스트중에서 좌단 X좌표가 최소인 것을 탐색하고(e2단계), 이 간선을 t번째의 트렉에 할당해서 리스트로부터 삭제한다(e3단계).
이어 e3단계에서 선택된 간선의 구간우단 X좌표보다도 큰 좌단 X좌표를 갖춘 간선의 구간중에서 좌단 X좌표가 최소인 것을 탐색하고(e4단계), 그러한 간선이 존재한다면 e3단계로 되돌려 보내 t번째의 트랙에 할당해서 e4단계로 진행시켜 준다. 또 e5단계에서 간선이 존재하지 않는다면 트랙번호를 1개 진행시켜 준 다음(t=t+l; e6단계) e7단계를 거쳐 e2단계로 되돌려 보낸다.
이상의 조작을 간선의 구간리스트가 모두 삭제되기까지 게속해준 다음 수순을 종료하게 된다. 이 흐름도에서 최종적인 t값이 간선의 배치조합을 종료할 때의 트랙수로 된다.
제3도 (a)는 단자의 배선인출방향을 결정한 처리(제1도의1단계,2단계)가 종료한 단계의 도면으로, 도면부호 1,2, …, 8은 망이름을 나타낸 것인 바, 동일번호를 갖는 단자사이에 결선요구가 있다.
제3도(b)는 각 망에 대해 필요한 간선을 추출한 도면으로, 각 선분은 해당하는 망을 결선하기 위해서 필요한 수평방향의 배선선분을 도시하고 있다.
제3도(c)는 전술한 바 있는 좌측변 알고리즘을 사용해서 얻었던 간선이 최적인 배치조합결과를 도시해 놓은 것으로, 제3도(b)에서는 8개의 트랙을 요구하고 있던 간선이 제3도(c)에서는 4개의 트랙으로 되어 있으므로 이는 최적인 결과이다. 이어 제3도(c)의 결과에 따라 간선을 챈널로 할당한 결과가 제3도(d)인바, 즉 망(3,5,1)을 동일챈널로 할당하고, 망(2,4), (8,6), (7)의 조합에 대해서도 마찬가지이다.
제3도(e)는 제3도(d)의 결과에 따라 통과배선을 셀행위에 할당한 결과를 도시해 놓은 것으로, 이 실시예에 의하면 최종적인 트랙수가 4개의 최적인 배선결과가 얻어진다.
상기 실시예에서는 간선의 각 챈널로의 할당을 개념적으로 간단하게 설명했지만 이 처리는 실제적으로 보다 복잡하고, 이러한 점을 보다 구체화한 실시예를 제4도 내지 제11도를 이용해서 설명한다.
제4도는 제3도(a)와 마찬가지로 단자의 배선인출방향을 결정한 처리(제1도의1단계,2단계)가 종료된 단계의 일례를 도시해 놓은 것으로, 도면중 부호 1,2,…,15는 망이름을 나타내고, 부호 ①,②,‥·,⑩은 챈널번호를 나타낸다.
제5도는 각망에 대해 필요한 간선을 추출해 놓은 것으로, (5,25)와 (8,40)등으로 나타낸 숫자쌍의 전자는 간선의 좌단 X좌표를, 후자는 우단 X좌표를 각각 나타내고 있다.
제6도는 좌측변 알고리즘을 사용해서 얻어진 간선의 최적의 배치조합결과를 도시해 놓은 것으로써 5개의 트랙을 필요로 하고 있다. 상기 제4도로부터 제6도에 이르는 단계는 제3도(a)로부터 제3도(c)에 이르는 단계와 전부 마찬가지이다.
이어 제6도의 결과에 따라 동일트랙에 배치된 간선을 챈널로 할당하는 단계(제1도의6단계)로 진행하게 되는데, 망(6,10)의 조합에 대해 챈널(⑥)로 할당해서 통과배선을 셀행의 위에 할당한 결과를 나타낸 것이 제7도이다.
제7도는 통과배선할당의 결과, 우회배선이 발생된 일례를 도시해 놓은 것으로, 도면부호, a,b는 각각 망(6,10)의 통과배선위치를 나타낸 것인 바, 먼저 망(10)을 눈여겨 보면 통과배선을 총계 6개로 사용함과 더불어 배선경로도 우회하고 있어 배선길이가 길어지게 된다.
따라서, 망(10)에 관해서는 간선을 챈널(⑧∼⑩)에 할당하게 된다면 나머지 통과배선을 사용하지 않을 뿐만 아니라 배선의 우회도 발생되지 않는다. 그러나 챈널 (⑧∼⑩)을 망(6,10)의 간선할당챈널로 한 경우 이번은 망(6)에 마찬가지의 문제가 생기게 되므로 이 예에서는 망(6,10)의 조합을 어떤챈널에 할당하여도 반드시 어떤것이 한쪽 또는 양쪽의 망에 대해 나머지 통과배선의 사용 및 배선경로의 우회가 발생된다.
즉, 망(6,10)을 쌍으로 그 간선을 동일챈널로 할당하는 것은 통과배선의 확대 및 우회배선의 발생이란 점에서 좋지 않으므로 망(6)의 간선은 챈널(①∼⑧)에, 망(10)의 간선은 챈널(⑧∼⑩)에 각각 할당되어야 할것이다.
여기서 단자가 존재하는 셀행에 따라 정해지는 챈널에 대한 간선의 할당가능범위를 제4도에 도시된 망(1,2…15)의 각각에 대해 추출해서 도식화된 것이 제8도인 바, 망(6,10)을 예로써 설명한 바와 같이 동일트랙에 간선을 배치할 수 있는 망의 조합에 있어서도 챈널로의 할당가능범위에 공통인 번호가 존재하지 않는다면 나머지 통과배선의 사용 및 배선경로의 우회가 발생된다.
제6도에 도시된 간선의 배치조합중 망(4,10)의 조합이외는 챈널로의 할당가능범위에 공통인 번호가 없고, 공통챈널로의 간선의 할당에 대해서는 그 망을 구성하는 셀단자가 존재하는 셀행에 따라 정해지는 챈널의 범위를 공유한 것끼리를 동일트랙으로 배치한다는 조건을 붙히는 것이 좋다.
제9도는 공통챈널로의 할당가능범위를 갖춘 간선의 배치조합을 결정하기 위한 한가지 수법을 도시해 놓은 흐름도로서, 그 수법은 제2도에 도시된 좌측변 알고리즘의 확장으로 되어 있다.
수순의 개시후 우선 t=1로 하는 (P1단계)것은 제2도와 마찬가지로, t는 간선을 배치할 때의 트랙총수이다. 이어 간선의 챈널할당범위를 c로 해서 그를 초기화한다(P2단계). 결국 여기서는 챈널할당범위를 전체챈널로 하는 것이다.
이어 간선의 리스트중에서 좌단 X좌표가 최소인 것을 탐색하고(P3단계), 그 간선을 t번째의 트랙에 할당해서 리스트로부터 삭제하는 바(P4단계), 이 2개의 단계는 제2도의 e2단계 및 e3단계와 마찬가지이다. 이어 P4단계에서 선택된 간선의 챈널할당범위와 c의 공통부분을 얻어 c를 갱신한 다음(P5단계), P4단계에서 선택된 간선의 구간우단 X좌표보다 큰 좌표 X좌표를 갖춘 간선의 구간중에서 P5단계에서 구한 챈널할당범위와 공통부분을 갖춘 뿐만 아니라 좌단 X좌표가 최소인 것을 탐색한다(P6단계).
그런 간선이 존재한다면 P7단계에서 P4단계로 되돌려 보내 t번째의 트랙에 할당한 다음 P5단계와 P6단계순으로 처리수순이 진행된다.
그러나 P7단계에서 해당간선이 존재하지 않는다면 트랙번호를 1개씩 진행시켜 준 다음 (t=t+l ; P8단계) P9단계를 거쳐 P2단계로 되돌려 보내고, 이상의 조작을 간선의 구간리스트가 전부삭제되기까지 계속해주므로써 전체수순이 종료되게 된다. 이 흐름도에서 최종적인 t값이 간선의 배치조합을 종료할 때 트랙수로되는 것은 제2도의 경우와 마찬가지이다.
제3도의 간선리스트와 제8도의 챈널할당범위로부터 제9도의 수법을 이용한 간선의 배치조합을 한 결과를 제10도에 도시해 놓는다. 따라서, 제6도와 제10도를 비교한다면 제6도의 트랙수 5에 대해 제10도에서는 트랙수 6으로 1개수만큼 증가하고 있지만 망의 조합(1,11), (2,5,8,12), (3,7,13), (4,15), (6,9,14), (10)의 각각이 전체공통의 챈널할당범위를 갖추고 있기 때문에 제7도를 이용해서 설명한 바와 같이 나머지의 통과배선의 사용이나 배선경로의 우회문제는 해결되게 된다.
제3도 및 제4도∼제10도를 이용해서 설명한 실시예의 범위에서는 통과배선을 필요로 하는 망이 전체 2개의 단자로 이루어지는 소의 2단자망만을 모델로 했지만 실제적으로는 3단자 이상으로 이루어지는 망에도 존재한다. 또, 이하에서 예시하겠지만, 통과배선이 필요한 망에서 간선이 불필요한 것이 존재한다. 이들을 고려한다면 간선의 챈널할당은 실제적으로 더욱 복잡한 처리를 필요로 하게 되는데, 이러한 점들을 보다 구체화한 실시예를 제11도∼제14도를 이용해서 설명한다.
제11도(a) (b)는 3단자 이상으로 이루어지는 통과배선이 필요한 망에서 간선이 필요한 것(a)과 간선이 불필요한 (b) 2가지 형태의 예를 도시해 놓은 것으로, 도면중 부호 ①,②…는 챈널번호, 부호,…는 셀행번호를 각각 나타낸다.
제11도(a)에 도시된 망(a)은 4단자로 되어 있어 필요한 간선의 구간은 Ia이고, 이 구간(Ia)의 할당챈널범위는 1점쇄선으로 도시된 바와 같은 챈널(①∼④)이다.
제11도(b)에 도시된 망(b)은 6단자로 되어 있어 셀행(,,)에 통과배선이 필요하지만 통과배선에 따른 새로운 간선은 불필요하고, 그런고로 챈널(①)에 직면하는 3개의 단자를 결선하기 위해서 필요한 간선과, 챈널(④)에 직면하는 3개의 단자를 결선하기 때문에 필요한 간선에 구간으로써 중복부분(Ib)이 있으며, 그때 구간(Ib)의 동일 X좌표에 통과배선을 할당한다면 새로운 간선이 필요없게 되는 것이다. 따라서,통과배선이 필요한 망은 간선이 필요한 것(이하 형태 I이라 칭함)과 간선이 불필요한 것(이하 형태 Ⅱ라칭함)의 2가지로 분류되어야 할 것인 바, 먼저 형태 I의 망에 대해서는 이미 서술된 간선의 챈널로의 할당과 그에 계속되는 통과배선위치를 할당하게 되고, 형태 II의 망에 대해서는 간선이 중복되는 구간에 통과배선위치를 할당한다.
제12도는 1개의 망중에 형태 I의 부분과 형태 II의 부분이 혼재되는 예를 도시해 놓은 것이다. 도면에서 망(d)은 8단자로 이루어지는 통과배선이 필요한 망으로, 셀행(,,,,)에 통과배선이 필요하게 되는 바. 셀행(,,)의 부분에서는 필요로 하는 간선의 구간이 Id(1)에서 형태 I이지만, 셀행(,)의 부분에서는 챈널(⑤)과 챈널(⑧)에 직면하는 단자를 결선하기 위해서 필요한 간선의 구간에 중복부분 Id(2)가 있어 새로운 간선의 발생은 불필요한 형태 II이다.
즉 일반적으로 통과배선이 필요한 망은 통과배선이 연속해서 필요한 셀행을 단위로써 결국 제12도에서는 셀행(∼)을 1개의 단위, 셀행(,)을 다른 1개의 단위로써 형태 I과 형태 II로 나누어주기 때문에, 각망을 형태 I과 형태 II의 부분에 분할하는 처리가 필요하게 된다.
제13도는 그와 같은 통과배선이 필요한 망의 형태를 나누는 처리의 흐름도로서, 이는 본 발명의 기본적인 처리흐름인 제1도의3단계와4단계를 보다 구체화한 것인 바, 통과배선이 필요한 전체망의 추출(f1단계)에 계속해서, 각망에 대해 통과배선이 연속해서 필요한 셀행을 단위로하여 망을 분할한다(f2단계).
제11도에 도시된 망(a,b)은 분할되지 않지만 제12도에 도시된 망(d)은 셀(∼)의 단위와 셀행(,)의 단위로 분할된다. 이어 f2단계에서 분할된 각망에 대해 간선이 필요한 형태 I과 간선이 불필요한 형태 II의 2가지로 분류한 다음(f3단계), 형태 I의 망이 종료하기까지 각망에 대해 필요한 간선을 추출하고(f4단계), 또 형태 II의 망이 종료하기 까지 각 망에 대해 통과배선할당범위를 추출한다(f5단계). 그러면 형태 I의 망에 대해서는 예컨대 제9도에서 설명한 처리를 이용하여 간선의 배치를 조합하는 한편, 형태 II의 망에 대해서는 제14도의 처리흐름에 의해 통과배선을 할당한다. 즉, 형태 II망의 통과배선할당 개시후 어떤순서에 따라 순차적으로 망을 끄집어 내어(g2단계) 그망에 대해 통과배선을 할당하는 바(g3단계), 여기서는 전술한 바와 같이 통과배선할당범위내에서 동일 X좌표로 통과배선을 할당하면 좋다.
이상과 같이 서술한 실시예에서 형태 I의 망이 간선의 챈널할당의 결과 결정되는 통과배선위치와 실제적으로 셀내에 실현되는 통과배선위치의 관계에 대해서는 언급하지 않았다. 일반적으로는 셀내에 통과배선이 금지되어 있는 장소가 있어서, 상기 2개의 통과배선위치가 항상 일치한다고 할 수는 없다.
제15도는 셀내에 배선통과금지영역이 있는 경우의 문제를 설명한 것으로, 제15도(a)에서는 망(a,b)을 동일 챈널에 할당한 결과 밑부분의 셀행인 t1과 t2, 윗부분의 셀행인 t3와 t4가 통과배선위치로 결정되어 있다.
그런데 t1이 위치하는 셀(C2)안이 배선통과금지영역인 경우, 제15도(b)에 도시된 바와 같이 셀(C2)과 셀(C3)사이에 통과배선전용 셀(CF1)을 발생 및 삽입한다면 망(a)의 간선은 우방향으로 CF1의 폭만큼 연장되고, 결과적으로는 망(a,b)의 간선이 중복해서 2트랙을 점유하게 된다.
그와 같은 문제를 효과적으로 회피하기 위해서는 필요간선의 길이에 미리 정해진 여유를 갖게 하면 좋은바, 즉 제16도에 도시된 바와 같이 형태 I의 망의 필요간선의 좌단점(X1)과 우단점(X2)을 어느 정해져 있는 미소한 폭(α,β)만큼 각각 좌방향, 우방향으로 연장시켜서 X1-α,X2+β를 각각 가상적인 좌단점과 우단점으로 한다. 그리고, 형태 I의 망에 대해 최적의 간선배치조합을 결정하는 단계(제1도의5단계)에서는 그 변경된 좌표로 처리하고, 이 간선의 끝점좌표의 변경에 의해 간선의 챈널할당을 한 결과 결정되는 통과배선위치와 통과배선금지영역등을 고려해서 실제적으로셀내에 실현되는 통과배선위치의 어긋남에 기인하는 트랙수의 증가를 효과적으로 억제할 수 있다.
또 이상의 실시예에서는 형태 I의 망의 통과배선위치는 필요간선의 양끝점으로 되지만, 간선의 길이가 길고 챈널할당범위가 넓은 경우에는 간선을 2개 이상의 구간으로 분할해서 각각을 상이한 간선으로 하여 배치조합하고 챈널로 할당하는 처리를 본 발명의 기본적인 처리흐름에 포함시킬 수 있다.
제17도는 상기와 같은 필요간선을 분할한 일례를 도시해 놓은 것으로, 도면중 부호 ①,②…는 챈널번호를 나타낸 것이다. 여기서 망(a)은 통과배선이 필요한 형태 I 이지만, 필요배선이 길어질 뿐만 아니라 할당챈널의 범위가 넓어지기 때문에 간선을 a1,a2,a3의 3개로 분할하며, 그에 대응해서 챈널의 할당범위도 a1에 대해 챈널(①∼⑤), a2에 대해 챈널(⑥∼⑩), a3에 대해 그 이후의 챈널과 같이 3개로 분할하고 있다.
이 3개의 간선(a1∼a3)을 새로운 별게의 간선으로 취급해서 제9도에 도시된 간선의 배치조합의 흐름에 적용할 수 있게 된다. 이러한 처리에 의해 간선의 배치조합이나 셀내의 통과배선가능한 부분을 효율적으로사용해서 집적도를 향상시킬 수 있다.
Claims (5)
- 반도체기판에 능동소자를 구비한 폴리셀을 일렬로 늘어놓아 셀행을 구성하고, 이 셀행을 복수개로 배열집적해서 그 사이에다 필요에 따라 배선패턴을 형성시켜 주므로써 소망의 회로동작을 실현하도록 되어 있는 폴리셀방식의 반도체집적회로장치에 있어서, 개략배선으로 셀행위의 통과배선위치를 할당하고, 그 결과에 준해 챈널배선법에 따라 각 챈널에 대해 배선처리를 하며, 각 셀의 입출력단자사이를 결선할 때 셀행위의 통과배선을 해야 할 망에 대해 배선상 필요한 수평방향의 배선선분을 추출하고, 이들 트랙으로서의 배치할당을 결정하며, 그 결과에 준해 수평방향의 배선선분을 할당해 주는 챈널 및 셀행위의 통과배선위치를 결정해 주는 처리를 수행하는 수순으로 이루어져 있는 것을 특징으로 하는 반도체집적회로장치의 배선방법.
- 제1항에 있어서, 셀행위의 통과배선을 해야할 망을 배선바탕에서 필요한 수평방향의 배선선분을 트랙으로 배치할당함에 있어 그 망을 구성하는 셀단자가 존재하는 셀행에 따라 정해지는 챈널의 범위를 공유하는 것끼리 동일트랙으로 배치하도록 된 것을 특징으로 하는 반도체집적회로장치의 배선방법.
- 제1항에 있어서, 셀행위의 통과배선을 해야할 망을 배선하는 바탕에서 필요한 수평방향의 배선선분을 추출함에 있어 그 망을 구성하는 셀단자가 존재하는 셀행 및 단자위치좌표에 따라 망을 분할하고 복수개의 배선선분을 추출하도록 된 것을 특징으로 하는 반도체칩적회로장치의 배선방법.
- 제1항에 있어서, 셀행위의 통과배선을 해야할 망을 배선하는 바탕에서 필요한 수평방향의 배선선분을 트랙으로 배선할당함에 있어서 상기 배선선분의 끝점이 추출되는 점으로부터 미소한 길이를 연장시키는 처리를 실시한 후 트랙으로의 배치할당을 수행하는 것을 특징으로 하는 반도체집적회로장치의 배선방법.
- 제1항에 있어서, 셀행의의 통과배선을 해야할 망을 배선하는 바탕에서 필요한 수평방향의 배선선분을 트랙으로 배치할당하고, 그 결과에 준해 그 배선선분을 챈널로 할당함에 있어 상기 배선선분을 끝점을 공유하는 복수개의 선분으로 분할하고, 그 각각에 대해 별개로 트랙으로의 배치할당 및 챈널로의 할당을 결정하도록 한 것을 특징으로 하는 반도체집적회로장치의 배선방법.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31534086 | 1986-12-26 | ||
JP61-315340 | 1986-12-26 | ||
JP62-78572 | 1987-03-31 | ||
JP62078572A JPS63278249A (ja) | 1986-12-26 | 1987-03-31 | 半導体集積回路装置の配線方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR880008436A KR880008436A (ko) | 1988-08-31 |
KR910002139B1 true KR910002139B1 (ko) | 1991-04-04 |
Family
ID=26419631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019870014894A KR910002139B1 (ko) | 1986-12-26 | 1987-12-24 | 반도체집적회로장치의 배선방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US4903214A (ko) |
JP (1) | JPS63278249A (ko) |
KR (1) | KR910002139B1 (ko) |
DE (1) | DE3744258A1 (ko) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5721959A (en) * | 1988-07-01 | 1998-02-24 | Canon Kabushiki Kaisha | Information processing apparatus for pattern editing using logic relationship representative patterns |
JP2695234B2 (ja) * | 1989-04-20 | 1997-12-24 | 富士通株式会社 | 半導体装置の配線方法 |
JP2746762B2 (ja) * | 1990-02-01 | 1998-05-06 | 松下電子工業株式会社 | 半導体集積回路のレイアウト方法 |
JPH0756878B2 (ja) * | 1990-05-30 | 1995-06-14 | シャープ株式会社 | プリント配線板の検査方法 |
JP3219500B2 (ja) * | 1991-12-27 | 2001-10-15 | 株式会社東芝 | 自動配線方法 |
US5353235A (en) * | 1992-06-17 | 1994-10-04 | Vlsi Technology, Inc. | Wire length minimization in channel compactor |
US5648912A (en) * | 1993-04-12 | 1997-07-15 | International Business Machines Corporation | Interconnection resource assignment method for differential current switch nets |
US5360767A (en) * | 1993-04-12 | 1994-11-01 | International Business Machines Corporation | Method for assigning pins to connection points |
JP2746054B2 (ja) * | 1993-05-13 | 1998-04-28 | 日本電気株式会社 | Lsiの自動レイアウト設計方法 |
US5440497A (en) * | 1993-06-29 | 1995-08-08 | Mitsubishi Semiconductor America, Inc. | Method of and system for laying out bus cells on an integrated circuit chip |
US5638288A (en) * | 1994-08-24 | 1997-06-10 | Lsi Logic Corporation | Separable cells having wiring channels for routing signals between surrounding cells |
JP2785710B2 (ja) * | 1994-09-30 | 1998-08-13 | 日本電気株式会社 | 集積回路の配線設計方法 |
JP3175812B2 (ja) * | 1995-08-04 | 2001-06-11 | 株式会社日立製作所 | 半導体集積回路配線方法 |
US6075934A (en) * | 1997-05-01 | 2000-06-13 | Motorola, Inc. | Method for optimizing contact pin placement in an integrated circuit |
US7107564B1 (en) * | 2001-06-03 | 2006-09-12 | Cadence Design Systems, Inc. | Method and apparatus for routing a set of nets |
JP2006005018A (ja) * | 2004-06-15 | 2006-01-05 | Fujitsu Ltd | レイアウト設計装置、レイアウト設計方法、レイアウト設計プログラム、および記録媒体 |
JP4282687B2 (ja) * | 2006-05-10 | 2009-06-24 | エルピーダメモリ株式会社 | 半導体集積回路の設計方法及び設計装置 |
JP2007329425A (ja) * | 2006-06-09 | 2007-12-20 | Elpida Memory Inc | 半導体集積回路の自動配線方法、プログラム及び記録媒体 |
JP2013045861A (ja) * | 2011-08-24 | 2013-03-04 | Renesas Electronics Corp | 半導体レイアウト設定装置、半導体レイアウト設定方法、及び半導体レイアウト設定プログラム |
US10275559B2 (en) | 2016-11-18 | 2019-04-30 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method for legalizing mixed-cell height standard cells of IC |
CN115130420B (zh) * | 2022-09-02 | 2022-12-06 | 合肥本源量子计算科技有限责任公司 | 集成电路版图图形的线对齐方法、系统、介质及电子设备 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR1502554A (ko) * | 1965-12-01 | 1968-02-07 | ||
US3653072A (en) * | 1970-01-08 | 1972-03-28 | Texas Instruments Inc | Process for producing circuit artwork utilizing a data processing machine |
US3653071A (en) * | 1970-01-08 | 1972-03-28 | Texas Instruments Inc | Process for producing circuit artwork utilizing a data processing machine |
CA1024661A (en) * | 1974-06-26 | 1978-01-17 | International Business Machines Corporation | Wireable planar integrated circuit chip structure |
US4484292A (en) * | 1981-06-12 | 1984-11-20 | International Business Machines Corporation | High speed machine for the physical design of very large scale integrated circuits |
US4593351A (en) * | 1981-06-12 | 1986-06-03 | International Business Machines Corporation | High speed machine for the physical design of very large scale integrated circuits |
US4593363A (en) * | 1983-08-12 | 1986-06-03 | International Business Machines Corporation | Simultaneous placement and wiring for VLSI chips |
US4630219A (en) * | 1983-11-23 | 1986-12-16 | International Business Machines Corporation | Element placement method |
US4615011A (en) * | 1983-12-19 | 1986-09-30 | Ibm | Iterative method for establishing connections and resulting product |
US4636965A (en) * | 1984-05-10 | 1987-01-13 | Rca Corporation | Routing method in computer-aided-customization of universal arrays and resulting integrated circuit |
US4742471A (en) * | 1985-10-31 | 1988-05-03 | International Business Machines Corporation | Method for improving wirability of master-image DCVS chips |
-
1987
- 1987-03-31 JP JP62078572A patent/JPS63278249A/ja active Pending
- 1987-12-18 US US07/135,085 patent/US4903214A/en not_active Expired - Lifetime
- 1987-12-24 KR KR1019870014894A patent/KR910002139B1/ko not_active IP Right Cessation
- 1987-12-24 DE DE19873744258 patent/DE3744258A1/de not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
DE3744258A1 (de) | 1988-07-07 |
KR880008436A (ko) | 1988-08-31 |
US4903214A (en) | 1990-02-20 |
JPS63278249A (ja) | 1988-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR910002139B1 (ko) | 반도체집적회로장치의 배선방법 | |
US4823276A (en) | Computer-aided automatic wiring method for semiconductor integrated circuit device | |
US5636129A (en) | Electrical routing through fixed sized module and variable sized channel grids | |
US4593363A (en) | Simultaneous placement and wiring for VLSI chips | |
US5483461A (en) | Routing algorithm method for standard-cell and gate-array integrated circuit design | |
US4613941A (en) | Routing method in computer aided customization of a two level automated universal array | |
US4811237A (en) | Structured design method for generating a mesh power bus structure in high density layout of VLSI chips | |
US6463575B1 (en) | Cell-layout method in integrated circuit devices | |
CA1275508C (en) | Hierarchical top-down method for physical vlsi-chip design | |
US5877091A (en) | Multilayer routing method and structure for semiconductor integrated circuit | |
US4975854A (en) | Method of improving a placement in layout design | |
US5701255A (en) | Cell generation method and cell generation system | |
Igusa et al. | ORCA A sea-of-gates place and route system | |
KR100576987B1 (ko) | 전자 소자 및 전자 장치의 설계 및 제조 방법 | |
US5532501A (en) | Semiconductor device having wiring take-out cells | |
US6704918B1 (en) | Integrated circuit routing | |
US6408426B1 (en) | Method for determining locations of interconnect repeater farms during physical design of integrated circuits | |
US20020066066A1 (en) | Pin placement method for integrated circuits | |
US5537332A (en) | Stack macro order optimizing method | |
JP3570883B2 (ja) | 半導体集積回路の配線方法 | |
JPH05121546A (ja) | 半導体集積回路のレイアウト方法 | |
KR100199009B1 (ko) | 목표지향 미로탐색에 의한 인쇄회로기판 자동 배선방법 | |
JP3076269B2 (ja) | 自動配線方法 | |
JPH06314740A (ja) | 半導体集積回路の配線方法 | |
JPH0212856A (ja) | 半導体集積回路装置の配線方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20070330 Year of fee payment: 17 |
|
EXPY | Expiration of term |