KR0157415B1 - 배치 최적화 방법과 장치 및 반도체 장치 설계장치 - Google Patents

배치 최적화 방법과 장치 및 반도체 장치 설계장치

Info

Publication number
KR0157415B1
KR0157415B1 KR1019900007744A KR900007744A KR0157415B1 KR 0157415 B1 KR0157415 B1 KR 0157415B1 KR 1019900007744 A KR1019900007744 A KR 1019900007744A KR 900007744 A KR900007744 A KR 900007744A KR 0157415 B1 KR0157415 B1 KR 0157415B1
Authority
KR
South Korea
Prior art keywords
circuit
value
processor
processors
network
Prior art date
Application number
KR1019900007744A
Other languages
English (en)
Other versions
KR910001934A (ko
Inventor
히로시 다라
데루미네 하야시
Original Assignee
미다 가쓰시게
가부시기 가이샤 히다찌 세이사꾸쇼
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 미다 가쓰시게, 가부시기 가이샤 히다찌 세이사꾸쇼 filed Critical 미다 가쓰시게
Publication of KR910001934A publication Critical patent/KR910001934A/ko
Application granted granted Critical
Publication of KR0157415B1 publication Critical patent/KR0157415B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/10Interfaces, programming languages or software development kits, e.g. for simulating neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S706/00Data processing: artificial intelligence
    • Y10S706/902Application using ai with detail of the ai system
    • Y10S706/919Designing, planning, programming, CAD, CASE
    • Y10S706/921Layout, e.g. circuit, construction

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Architecture (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

내용 없음.

Description

배치 최적화 방법과 장치 및 반도체 장치 설계장치
제1도는 종래에 있어서의 반복개선법의 처리수순의 플로우챠트.
제2도는 본 발명의 일실시예에 관한 반도체 장치 설계장치에 구비되는 배치 최적화장치의 전체구성도.
제3도는 제2도에 나타낸 네트워크 초기화부의 구성도.
제4도는 제2도에 나타낸 상호결합 프로세스 네트워크의 구성도.
제5도는 제3도에 나타낸 네트워크의 가중치 및 역치 설정부의 구성도.
제6도는 제2도에 나타낸 배치 좌표 교환부의 구성도.
제7도는 제6도에 나타낸 CPU부의 구성도.
제8도는 제7도에 나타낸 판정처리부의 구성도.
제9도는 제7도에 나타낸 가산기의 구성도.
제10도는 제6도에 나타낸 판정부의 구성도.
제11도는 제6도에 나타낸 배치처리부의 구성도.
제12도는 본 발명의 다른 실시예에 관한 배치최적화 장치의 전체 구성도이다.
* 도면의 주요부분에 대한 부호의 설명
10 : 배치 최적화 장치 11 : 네트워크 초기화부
11a : 접속테이블 11b : 위치배치테이블
11c : 역치설정부 11d : 초기치설정부
12 : 상호결합 프로세서 네트워크 13 : 배치좌표 변환부
31 : 프로세서 네트워크부 31a - 31g : 프로세서
32 : 출력부 41a : 평가 함수 설정부
41b : 제약 조건 설정부 42 : 함수 설정부
43 : 계수비 결정부 44 : 결정부
상관 관계를 가지는 다수의 회로 모듈을 1매의 프린트 기판상에 배치하거나, 상관관계를 가지는 다수의 회로 소자를 동일한 반도체 기판상에 제작하여 LSI등의 반도체 장치를 제조하는 경우, 평가 함수치가 최적이 되도록, 예를 들면, 회로 모듈이나 회로소자간의 총배선 길이가 최단이 되도록, 또는 교차하는 배선의 혼잡도가 최소가 되도록 각 회로 모듈이나 회로소자의 배치위치를 구하여, 제조가격의 저감 및 회로동작 속도의 향상을 도모할 필요가 있다.
제1도는, 종래의 반복개선법이라 불리는 배치 최적화 방법의 수순을 나타내는 플로우챠트이다. 이 종래 법에서 예를 들면 LSI의 각 회로소자의 최적 배치를 구하는 경우, 먼저 반복연산회로(N)를 스텝 1에서 설정하고, 다음에 의사난수(擬似亂數)에 의하여 각 회로소자의 초기배치를 설정한다(스텝 2). 다음에 어떤 2개의 회로소자의 페어(쌍) 후보를 선택하고(스텝 3). 그 회로소자 페어 후보의 소자의 위치를 교환하므로서 개선되고 코스트가 얼마가 되는가를 구한다(스텝 4). 그리고 스텝5에서 코스트가 개선되는가의 여부를 판정하고, 그 페어 후보의 코스트가 개선되는 경우, 예를 들면 교환후의 코스트로부터 교환전의 코스트를 뺀 차가 마이너스가 되는 경우에는 스텝 6으로 진행하여 그 페어의 소자위치를 교환하고, 스텝 3으로 되돌아 간다. 스텝 5의 판정에서 코스트가 개선되지 않는다고 판정되었을 경우는 스텝 7에 진행하여, 카운터(C)의 내용을 +1하여, 다음의 스텝에서 카운터(C)의 내용이 스텝1에서 설정한 수치(N)보다 큰가의 여부를 판정한다. 이 판정에서 CN가 성립하지 않는 경우에는 스텝 3으로 되돌아가 스텝3 이후의 처리를 반복하고, 성립하는 경우에는 이상의 처리를 종료하고 스텝 9에서 그 개선된 배치를 출력한다.
상기한 반복 개선법을 병열 처리형 계산기에서 행하는 종래 기술에 관련되는 것으로서, 예를 들면 일본국 특개소 62-93760호, 특개소 62-243071호, 특개소 63-121979호등이 있다.
종래의 배치최적화법은, 소자 페어의 위치를 교환하여 코스트가 개선되는지 여부를 판정하여 최적배치를 구하고 있다. 그러나, 『최적배치』라고는 해도 그것이 최적 배치인지 여부는 알수 없고, 단지 극치(極値)인것임을 아는데 지나지 않는다. 즉 아직 개선할 수 있는 가능성이 큰 경우가 있다.
또, 종래법은 대상이 되는 LSI등의 규모가 커지면 커질수록, 연산회수가 지수적으로 증대하여, 고속 처리가 불가능하게 되어 버린다는 문제점도 있다.
또한 최근에는 조합최적해(最適解)를 구하기 위하여, 신경 회로망(Neural-Net)을 사용하는 것이 알려져 있으며, 홉프필드씨등의 모델이 제안되고 있다.(USP 4,719,591등 참조).
본 발명의 목적은, 신경회로망을 사용하고 또는 이 신경회로망의 생각을 적용하여 배치문제를 고속 또 고성능으로 해석할 수가 있는 배치 최적화 방법 및 장치 그리고 이 장치를 구비하는 반도체 장치 설계등을 제공하는데 있다.
상기 목적은, n2개의 각 프로세서가 각각 자기 및 다른 모든 프로세서의 출력치를 입력치로서 입력하여 문제를 푸는 프로세서 네트워크를 사용하여, i(i=1∼n)번째의 회로를 k (k=1∼n)번째의 장소에 배치했을때의 제약조건 변수치를 좌표(i, k)의 프로세서가 회로평가 함수치가 최적치가 되도록 또 제약 조건 변수치가 제약 조건에 수렴(convergence)할 때 까지 연산하고, 출력치가 제약조건에 수렴한 프로세서의 상기 좌표로부터 그 프로세서에 할당된 연산대상 회로의 배치위치를 결정함으로서 달성된다.
좌표(i, 1∼n)의 프로세서가 상기 연산을 행하므로서, 좌표 (i, k)의 프로세서가 출력이 1이 되면, 다른 프로세서(i, 1∼n(단, k제외))의 출력은 0이 된다. 여기서 i번째의 회로를 장소(k)에 배치하면 최적 배치가 된다.
이하, 본 발명의 일실시예를 도면을 참조하여 설명한다.
제2도는, 본 발명의 일실시예에 관한 반도체 장치 설계 장치에 구비되는 배치 최적화장치의 전체구성도이다. 배치 최적화장치(10)는, 네트워크 초기화부(11)와, 복수의 프로세서를 서로 결합한 상호 결합 프로세서 네트워크(12)와, 배치 좌표 변환부(13)를 구비한다. 네트워크 초기화부(11)는, 각종 데이터의 초기치를 설정하여 상호 결합 프로세서 네트워크(12)를 가동하고, 그 네트워크(12)에 의한 연산결과가 배치 좌표 변환부(13)에 출력되고, 그 배치좌표 교환부(13)는 네트워크(12)의 연산결과에 의거하여 각 회로소자의 배치 위치 좌표를 출력한다.
제3도는 네트워크 초기화부(11)의 상세 구성도이다. 네트워크 초기화부(11)는, 접속 테이블(11a)과, 배치위치 테이블(11b)과, 네트워크의 가중치 및 역치설정부(11c)와, 출력치의 초기치 설정부(11d)를 구비한다. 접속테이블(11a), 를 들면 LSI에 탑재하는 회로소자 사이를 어떻게 접속하는가의 정보, 즉 어떤 회로소자와 어떤 회로소자를 접속할 것인가의 정보가 격납되어 있다. 배치 위치 테이블(11b)에는, LSI상의 소자 배치위치의 각 좌표치가 격납되어 있다. 이들의 접속테이블(11a)과 배치위치 테이블(11b)의 내용(격납데이타)은, 입력치에 의하여 갱신되고 그 결과가 네트워크의 가중치 및 역치설정부(11c)에 출력된다. 이 네트워크의 가중치 및 역치 설정부(11c)는, 각 테이블로 부터의 정보에 의거하여, 상세는 후술하는 바와 같이, 가중치 및 역체를 설정하고, 상호 결합 프로세서 네트워크를 기동한다. 또, 출력치의 초기치 설정부(11d)는, 출력치(네트워크 12의 각 프로세서는, 최종적으로 0나 1을 출력한다)의 초기치를 예를 들면 0.5로 설정하고, 이것을 상호 결합 프로세서 네트워크(12)에 출력한다.
제4도는 상호 결합 프로세서 네트워크(12)의 설명도이다. 이 프로세서 네트워크(12)는, 프로세서 네트워크부(31)와, 출력부(32)로 이루어진다. 프로세서 네트워크부(31)는, 다수의 프로세서 (31a∼31g)로 구성되어 있고, 각 프로세서는 다른 모든 프로세서 및 자기의 출력치를 입력치로서 입력하도록 접속되어 있다(모든 결합 관계를 도시하면 복잡해지므로 제3도에는 그 일부만을 도시함). 출력부(32)에는, 각 프로세서 대응의 출력단자가 설치되어있다. 예를 들면 n개의 회로소자의 배치위치(배치 개소도 n개소가 된다)를 연산하는 경우, 본 실시예에서는 n2개의 프로세서로 연산한다. 이때 n2개의 프로세서를 n x n의 2차 매트릭스로서 정열했다고 가정하고, 1번째의 1열째의 프로세서(31a)에는 1번째의 회로소자를 1번째의 배치 개소에 할당했을 때의 연산을 후술하는 연산식에 의거하여 행하게 하고, 1행째의 2열째의 프로세서(31b)에는 1번째의 회로 소자를 2번째의 배치 개소에 할당했을때의 연산을 마찬가지로 행하고 하고, …2행째의 1열째의 프로세서(31d)에는 2번째의 회로소자를 1번째의 회로소자를, 1번째의 배치 개소에 할당했을때의 동일한 연산을 행하게 하고 …n행째의 n열째의 프로세서(31g)에는 n번째의 회로소자를 n번째의 배치개소에 할당했을 때의 연을 행하게 하는구성으로 한다. 즉, i(i=1∼n)를 회로소자 번호로하고, k(k=1∼n)를 배치개소로 한 경우, (i, k)로 표시되는 회로소자와 배치개소와의 조합에 대한 연산을, (i, k)가 나타내는 좌표의 프로세서에 할당한다.
또한, 상기 n2개의 프로세서 대신에, 1개 내지 n2-1개 중의 임의의 개수의 프로세서를 준비하고, 그 프로세서에 상기 연산을 순차 처리 시킴에 있어, 각 연산 결과를 메모리에 격납하고, 그 메모리에 격납한 연산 결과를 사용하여 다음의 연산을 행하게 함으로서, 상기 n2개의 프로세서의 연산과 동등한 연산을 행하게 하는 것도 가능하다.
제5도는 제3도에 나타낸 네트워크의 가중치 및 역치 설정부(11c)의 구성도이다. 설정부(11c)는 , 평가 함수 설정부(41a)와, 제약 조건 설정부(41b)와, 평가함수 및 제약조건을 기초로한 에너지 함수를 구하는 함수 설정부(42)와, 그 에너지 함수의 각 항의 계수비를 결정하는 계수비 결정부(43)와, 그 계수비로부터 가중치와 역치를 결정하는 가중치 등 결정부(44)를 구비한다. 가중치 및 역치의 결정 방법을 설명하기 전에, 상호 결합 프로세서 네트워크에 의한 최적화 수법의 원리에 대하여 설명한다.
이 최적화 수법에서는, 웨이팅(weighting)이 행해진 상호 결합 프로세서 네트워크가 갖는 에너지 함수(E)의 값이, 극소치를 취하는 조건을 구한다.
Figure kpo00002
여기서, x, b 는 n차원의 백터이고, T는 n x n의 행열이다.
또 tx, tb는 전치(轉値)백터를 나타낸다. 이 에너지 함수(E)각 극소(極小)가 되는 조건 즉 배치위치를 구하는 것이다. 백터(x) 각성분(xi)은 0 또는 1의 값을 취한다고 하는 제약하에 구한다. 여기서 T가 이 네트워크의 가중 행열이고, b가 역치백터이다. 여기서 말하는 「가중」이라하는 것은, 연산대상의 소자 까지의 거리에 상당하고, 거리가 길수록 가중치가 커진다. 또, 「역치」는 그 배치 개소에 그 회로소자가 놓여지는 가능성을 나타내고, 그 배치개소에 그 회로소자가 놓여진 가능성이 높을수록 역치가 높아진다.
이때, 각 프로세서는 다음의 미분방정식에 따라 변수(x)의 각 성분(xi)의 값을 갱신해가며, 최종적으로 에너지 함수(E)의 극소치를 구한다.
Figure kpo00003
상기한 에너지 함수(E)로부터 최적배치를 구하는 것이나 이것을 실제로 구하기 위해서 본 실시예에서는 이하와 같이 행한다.
먼저, 평가함수 설정부(41a)가, 예를 들면 연산대상의 회로소자간의 총배선 길이를 최단으로 한다는 최적화 문제의 평가함수를 다음과 같이 설정한다.
평가함수 :
Figure kpo00004
여기서,
Figure kpo00005
다음에, 제약 조건 설정부(41b)가, 본 최적화 문제의 제약 조건을 이하와 같이 설정한다.
Figure kpo00006
이 제약 조건은, 복수의 회로소자는 1개소에 중복하여 배치되지 않는다는 것을 나타낸다.
이들의 평가함수(목적함수라고도 한다)와 제약 조건은, 프로세서 네트워크의 에너지 함수(E)로 변환하면 다음식과 같이 된다.
Figure kpo00007
또한 상기한 평가함수 및 에너지 함수는, 배치대상으로 하는 회로소자중, 특정의 회로소자의 배치개소가 경험적 또는 다른 제약 조건등으로 미리 결정되어 있을 경우의 예이고, 이와 같이 배치개소가 고정되는 소자가 없는 경우에는, 평가함수의 제2항째 및 에너지 함수중의 E1의 제2항째는 없어진다.
다음에, 계수비 결정부(43)는, 에너지 함수(E)의 E1항의 계수 D와 E2항의 계수A의 비 A/D를 결정한다.
여기서 상호 결합형 신경회로망에서 구해진 해(解)에 대하여, 어느 하나의 뉴론(neuron)의 상태를 0으로부터 1또는 1로부터 0로 변화시켰을 때 에너지 함수(E)는 반드시 비감소(非減少)이라는 성질이 있다. 따라서 제약조건을 만족시키는 해가 구해지도록 하는데는, 제약 조건을 만족시키는 해에 대하여, 어느 하나의 뉴론의 상태를 0으로부터 1로 변화시켜도 제약 조건을 만족시키는 해의 쪽이 에너지가 낮아지도록 A/D를 결정하면 된다(상태를 1로부터 0으로 변화시키는 경우는, 에너지 함수(E)의 형태로부터 상기의 조건이 만족된다).
이 결정의 방법을 이하에 설명한다.
E2항이 최소의 상태 즉 제약조건을 만족시키고 있는 상태로부터, 본수(本數)가 0으로부터 1로 변화했을 경우의 각항(E1,E2)의 변화량(ΔE1, ΔE2)을 조사한다. 여기서 ΔE1의 상한치는, 회로소자의 네트중 제일 큰 네트에 포함되는 수(N)를 사용하여 다음과 같이 표시할 수가 있다.
Figure kpo00008
그리고, ΔE1= ΔE2가 되도록, 계수의 비(A/D)를 결정하면, 제약 조건이 만족된다. 다시 이 계수의 비(A/D)의 값이 작을수록, 질이 좋은 보다 최적의 소자 배치구성이 얻어진다. 따라서, ΔE1= ΔE2로하여 계수의 비(A/D)에 관한 다음식을 얻는다.
Figure kpo00009
이상과 같이하여 구한 에너지 함수와, 최적화 수법의 원리의 설명에서 나타낸 에너지 함수의 계수를 비교하므로서, 결정부(44)에서는, 다음과 같이 가중행열(T)과 역치 백터(b)를 각각 결정한다.
Figure kpo00010
상호 결합 프로세서 네트워크는, 이 가중 행열(T)과 역치 백터(b)를 사용하고, 다음의 연산을 행하여, 회로 소자의 배치위치를 구한다.
좌표(i, k)에 있는 프로세서는, 시각(t)에 있어서의 연산결과 ujℓ(t)를 알고있을 때, 시각 t+1에 있어서의 연산에서 uik(t+1)을 연산한다.
Figure kpo00011
여기서, dt는 적분의 시각폭이고, 이것은 실험적으로 결정하며, 에를 들면 dt=0.01 로한다. 이 연산에 있어서 초회의 uik의 값 즉 초기치로서 uik(0)=0.5를 부여하고, t+1회째의 연산에서 uik가 0또는 1에 수렵하지 않을 경우에는, 자기 및 다른 프로세서의 t+1회째의 연산 결과를 입력하여 dxik(t+1)를 구하고, t+2회째의 연산을 행한다. 이 연산을 반복하므로서 최종적으로 2차원 매트릭스상으로 할당된 프로세서 네트워크는, 각행 각열에 있어서 1개의 프로세서만 1을 출력하고, 다른 프로세서는 0을 출력하게 된다. 1을 출력한 프로세서의 좌표(i, k)에 의하여, i번째의 회로소자를 장소(k)에 배치하면 좋다는 것을 알수 있다.
다음에, 상호결합 프로세서 네트워크의 출력신호의 처리에 대하여 설명한다.
제6도는, 제2도에 나타낸 배치좌표 변환부(13)의 구성도이다. 배치좌표 변환부(13)는, 상호결합 프로세서(12)의 출력부(32)와 신호선(51)으로 접속된 CPU부(52)와, 판정부(53)와, 배치처리부(54)와 배치프로그램(55)에 의하여 이루어진다.
상호 결합 프로세서 네트워크(12)로 부터는, 연산실행마다 n2개의 신호가 CPU부(52)에 출력된다. 이 신호는 0, 1에 수렴되기 전은 0.3이나 0.9인 0으로부터 1 까지의 불확정치를 취하고, 수렴되었을 때 확정된 값이 된다. 먼저, CPU부(52)는, 네트워크(12)의 연산이 수렴되었는지의 여부를 판정한다. 이 판정은 n개의 1 신호가 네트워크(12)로부터 출력되므로서 행한다.
그리고, 네트워크(12)의 연산이 수렴되었을 때, 이하의 신호처리를 행한다.
네트워크(12)에 의한 연산은, 계수비 A/D의 값을 상기한 식에 따라 결정하면, 반드시 n개의 프로세서로부터 1에 수렴된 신호가 출력되고, 이 1을 출력한 프로세서의 좌표로부터 어느 회로소자를 어디에 배치하면 좋은가가 알 수 있다. 그러나, 계수비 A/D/를 상기한 식과는 별도로 설정했을 경우에는, 네트워크(12)의 출력은 수렴되지 않게된다. A/D를 부여하는 상기식의 값은, A/D의 하한치를 부여하는 것이나, 그보다 아래의 값이나 위 값을 실험적으로 설정하는 것은 배치문제의 종류에 따른다. 이 경우, 네트워크(12)는 프로세서중 출력신호가 수렴되지 않는 것이 나올 염려가 있다. 이러한 경우는, 네트워크(12)에 의한 연산을 도중에서 중단하고, 네트워크(12)의 출력신호로부터 회로소자의 배치를 판정할 필요가 생긴다.
CPU부(52)는, 네트워크(12)의 출력신호로부터, 판정부(53)에서 필요한 정보를 후술하는 바와 같이 연산하여 구한다. 그리고 판정부(53)는, 이 정보로부터 회로소자의 배치가 네트워크(12)의 출력대로 되는가 여부를 판정한다. 배치가능(그 소자의 배치연산을 맡은 프로세서의 출력이 수렴되었을 경우)하면, 배치처리부(54)에서 회로소자의 배치장소가 결정된다. 배치불가능(그 소자의 배치연산을 맡은 프로세서의 출력이 수렴되지 않했을 경우)으로 판정되는 회로 소자가 있는 경우에는, 배치가능한 회로소자만 배치하고, 나머지 배치 불가능한 회로소자는, 배치 프로그램에 의하여, 예를 들면 종래의 반복개선법이나 시뮬레이트드(Simulated)어닐링법으로 배치위치를 교환하므로서 배치 장소를 구한다.
제7도는, 상기 CPU부(52)의 구성도이다. 배치 대상의 회로 소자수(=배치장소수)가 n개인 경우, 네트워크(12)로 부터는 n2개의 신호가 출력된다. 본 실시예에서는, CPU부(52)는 n2개의 CPU 즉 판정처리부(61, 62, 63)을 구비하고, 네트워크(12)로 부터의 각 출력신호는 각각 대응하는 판정처리부에 입력된다. 각 판정 처리부는 입력된 신호가 수렴되었는지 여부를 판정하는 정보를 각각 독립적으로 계산한다. 그리고 각 계산결과를 판정부(53)와 가산기(64)에 출력한다. 가산기(64)는 후술하는 바와 같이 입력신호를 가산하고, 가산 결과를 판정부(52)에 출력한다. 또한, 판정처리부를 n2개 설치한 것은, 병열처리하므로서 처리시간의 단축화를 도모하기 위한 것이며, 물론, 고속처리 가능한 1개의 CPU를 사용하여 순차처리를 행하게 하는것도 가능하다.
제8도는, 제7도에 나타낸 각 판정처리부의 설명도이다. 먼저, 처리(71)에 의하여, 변수 Cm(j)와 변수 PLACE(j) (j=1∼n2)가 0으로 초기화 된다. 그리고 자신에 대하여 신호를 출력하고 있는 프로세서의 좌표가 (i, k)이고, 그 프로세서의 출력신호가 1인지 여부를 처리(72)에서 판정하고, 1인 경우에는 처리(73)으로 진행하여, 변수Cm(i), Cm(k)의 값을 1로 한다. 또 처리(75)에서 변수 PLACE(i)의 값을 k로 한다. 그리고 이들의 변수의 값을 판정부(53)에 출력한다. 처리(72)의 판정에서 프로세서의 출력신호가 1에 수렴하고 있지 않은 것으로 되었을 경우는, 처리(74)에서, 변수 Cm(i), Cm(k)의 값을 0상태 그대로 한다. 처리(73)와 처리(74)의 결과가 가산기(64)에 출력된다.
제9도는, 가산기(64)의 설명도이다. 가산기(64)는 판정 처리부(61∼63)로부터 출력되어 오는 변수 Cm(j)의 값을 가산하고, 가산한 값을 변수 COUNT(j)에 설정하고
Figure kpo00012
이 변수 COUNT(j)의 값을 판정부(53)에 출력한다.
제10도는, 판정부(53)의 설명도이다. 먼저 가산기(64)로부터 입력되는 변수 COUNT(j) 의 값에 대하여 설명한다. 지금, 네트워크(12)에 있어서의 각 프로세서중, 1의 값을 출력하고 있는 프로세서의 좌표를 (i, k)라 한다. 이때, nxn의 영매트릭스의 대각성분 (i, i)와 (k, k)의 값을 +1로 한다. 이 작업을 1을 출력하고 있는 모든 프로세서에 대하여 행한다. 네트워크(12)의 전프로세서의 출력이 수렴되었을 경우, 이 매트릭스의 대각성분은 모두 2가 된다. 즉, 2가 된 대각성분에 대응하는 회로소자는 배치가능함을 나타낸다.
변수 COUNT(i)의 값은, 대각성분(i,i)의 값을 나타낸다.
따라서, 판정부(53)에서는 먼저 처리(91)에서 j의 값이 1이상 n2이하인 것을 판정하고, j의 값이 이 범위에 있는 경우에는 그 변수 COUNT(j)의 값이 2인가 여부를 처리(92)에서 판정한다. 변수 COUNT(j)가 2의 값을 나타내는 소자(j)는 배치가능하고, 2이외의 값을 나타내는 소자는 배치 불가능이다. 판정부(53)는 이 판정결과를 배치처리부(54)에 출력한다.
제11도는, 배치처리부(54)의 설명도이다. 판정부(53)로부터 I번째의 회로소자에 대한 배치가능인지 불가능인지의 판정 결과를 받아 넣었을때, 배치가능한 소자수를 나타내는 변수(C)와, 배치 불가능이였던 소자 번호를 나타내는 변수 FAIL(C)의 값을 초기화하여 0으로 한다. 다음에, 판정부(53)로 부터의 n2개의 판정 결과 모두에 대하여, 이하의 처리를 행한다. 먼저 회로소자(i)에 대한 판정결과가 배치가능을 나타내는지 여부를 판정하고, 배치가능을 나타내면, 그 회로소자(i)를 판정처리부(61∼63)로부터 입력한 변수 PLACE(i)가 나타내는 번호의 장소에 배치한다. 또, 배치불가능이면, 변수(C)의 값을 +1하여 변수 FAIL(C)의 값을 i로한다. 이 처리를 모든 회로소자에 대하여 행하고, 배치할수 없었던 소자수 즉 변수(C)의 값이 0이면, 배치처리를 완료하고, 배치 불가능한 소자가 남았을 경우에는, 그 배치불가능인 소자에 대하여 종래의 반복 개선법이나 스뮬레이트드 어닐링법을 적용하여 배치위치를 결정한다.
제12도는, 본 발명의 다른 실시예에 관한 배치 최적화 장치의 전체 구성도이다. 이 실시예에서는 제1도의 실시예에 비하여, 처리 스텝(112)를 부가하여, 배치좌표변환부(13)의 출력이 최적 배치가 아닌 경우에, 상기한 처리를 반복하므로서, 최적 배치를 구하는 것이다. 이하 이예에 대하여 설명한다.
상호결합 프로세서 네트워크의 출력신호가 모두 1이거나 0에 수렴되지 않았을 경우, 수렴하지 않는 출력신호에 대응하는 회로소자의 배치위치는 종래의 교환 방법이나 시뮬레이트드 어닐링법으로 그 배치위치를 결정하는 것은 앞에서 설명했다. 그러나, 이와 같이하여 모든 회로소자의 배치위치를 결정했을 경우, 그 배치 위치가 최적 배치위치 인가의 여부는 알수없고, 단지 그것이 극치를 갖는데 불과한 경우가 있다. 그러나, 그것이 극치인지, 때때로 최적배치를 부여하는가는 영확하게 알수없다. 그러나, 경험적으로 그 배치위치가 최적배치가 아님을 아는 경우가 있다. 이와 같은 경우, 상기한 가중행열(T)의 대각성분을 증가시켜, 상호결합 프로세서 네트워크의 연산을 반복하므로서, 최적배치를 구할 수가 있다.
상기한 가중행열(Ti, k, j, ℓ)은 i=j, k=ℓ의 성분, 즉 대각성분은 모두 0의 값을 갖도록 결정하고 있다. 대각성분이 모두 0인 경우에, 이 가중행열을 사용하므로서 얻어지는 회로소자의 배치가 극치를 취하는 것은 수학적으로 판단하고 있기 때문이다.
배치 불가능한 회로소자(i)가 나와서, 종래의 교환법등으로 그 회로소자(i)의 배치위치를 결정했을 경우, 해당배치 위치에 대응하는 프로세서의 출력신호를 1로 하고, 그 회로소자(i)의 다른 프로세서의 출력신호를 0으로 하여, 네트워크(12)의 1을 출력하고 있는 좌표에 대응하는 가중행열(T)의 대각성분의 값을, 각 성분별로 오패레이터가 지정하는 값 예를 들면 0.1이나 0.3으로 증가한다. 그리고, 이와 같이 대각성분이 증가한 가중행열(T)을 사용하여, 상기와 마찬가지로 Uik의 값을 0이나 1에 수렴할때까지 네트워크(12)에서 연산한다. 이 연산에 의하여 구한 배치위치가 대각성분 증가전에 구한 배치위치와 동일하면 최적 배치를 부여하는 것이고, 앞에서 구한 배치위치가 단순히 극치에 지나지 않는 경우에는, 다른 배치위치가 구해지게된다. 따라서, 제12도의 처리(11c, 12, 13, 112)를 반복하므로서, 더욱 최적인 배치위치를 구하는 것이 가능하다.
또한, 실시예는 LSI의 회로소자 배치에 본 발명을 적용한 예이나, 본 발명은 이것에 한정되는 것이 아니고, 예를 들면 1매의 프린트 기판에 상호관계를 가지는 다수의 회로 모듈을 배치하는 경우에도 적용할 수 있음은 말할것도 없다.
본 발명에 의하면, 질이 높은 회로배치의 레이아웃을 고속으로 구할 수가 있고, 이 회로 배치방법을 적용하여 레이아웃을 설계하여 제조한 반도체 장치는, 저렴, 고속동작이 가능하게 된다는 효과가 있다.

Claims (20)

  1. 상관 관계를 가지는 다수개의 회로모듈 또는 회로소자의 최적 배치를 구하는 배치 최적화 방법에 있어서, 자기의 출력 및 다른 모든 프로세서의 출력을 거두어들여 문제를 푸는 신경회로망을 구성하는 프로세서 네트워크의 연산 결과로부터 상기 회로모듈 또는 회로소자의 최적 배치 개소를 결정하는 것을 특징으로 하는 배치 최적화 방법.
  2. 상관 관계를 가지는 다수개의 회로모듈 또는 회로소자의 최적 배치를 구하는 배치 최적화 방법에 있어서, n2개의 각 프로세서가 각각 자기 및 다른 모든 프로세서의 출력치를 입력치로서 거두어들여 문제를 푸는 프로세서 네트워크를 사용하여, i(i=1∼n)번째의 회로를 k(k=1∼n)번째의 장소에 배치했을 때의 제약 조건 변수치를 좌표(i, j)의 프로세서가 회로 평가 함수치가 최적치가 되도록, 또 제약 조건 변수치가 제약조건에 수렴할때까지 연산하고, 출력치가 제약조건에 수렴한 프로세서의 상기 좌표로부터 그 프로세서에 할당된 연산 대상회로의 배치위치를 결정하는 것을 특징으로 하는 배치 최적화 방법.
  3. 상관 관계를 가지는 다수개의 회로 모듈 또는 회로 소자의 최적배치를 구하는 배치 최적화 방법에 있어서, 자기의 출력 및 다른 모든 프로세서의 출력을 거두어 넣어 문제를 푸는 신경회로망을 구성하는 프로세서 네트워크를 사용하여, n개의 회로의 배치를 회로배치 평가 함수치가 최적치가 되도록 또 계약조건이 계약조건에 수렴할때까지 연산하고, 수렴되었을때의 각 프로세서의 좌표치로부터 회로의 배치개소를 구함에 있어, 상기 연산은,
    Figure kpo00013
    여기서, x, b : n차원 백터
    tx,tb : 상기의 전치(轉値)백터
    d㎘ : 배치장소 k와 소자 ℓ의 고정배치장소와의 거리
    (고정배치장소가 없는 경우는dkp=0)
    cijm : 1(i,j가 네트를 구성할때) 또는 0(기타)
    xik,xjl : 제약조건변수
    A,D : 계수
    로부터 구한 가중 행열 T와 역치 백터 b를
    Figure kpo00014
    로 하고, t회째의 연산결과 ujℓ(t)를 알고 있을때에, t+1회째의 연산을 행하여 uik(t+1)을,
    Figure kpo00015
    를 연산하여 구하고, 그 uik의 값이,
    Figure kpo00016
    에 수렴할때까지 연산하는 것을 특징으로 하는 배치 최적화 방법.
  4. 제3항에 있어서, 계수 A/D의 값을
    Figure kpo00017
    (여기서, N은 네트에 포함되는 회로수)로하여, 청구항 3항에 기재된 가중행열 T와 역치백터 b를 결정하는 것을 특징으로 하는 배치 최적화 방법.
  5. 제3항에 있어서, 계수 A, D의 비 A/D의 값으로서
    Figure kpo00018
    여기서, N은 네트에 포함되는 회로수 로한 A/D 값 보다 작은 값을 설정하는 것을 특징으로 하는 배치 최적화 방법.
  6. 제5항에 있어서, 연산결과가 수렴되지 않는 회로가 나왔을 경우에는, 그 회로의 배치위치를 교환법 또는 시뮬레이트드 어닐링법으로 결정하는 것을 특징으로 하는 배치 최적화 방법.
  7. 제6항에 있어서, 최종적으로 구한 회로 배치위치에 있어서 회로를 배치하는 개소에 상당하는 좌표의 상기 가중행열에 있어서의 대각성분의 값에 0보다 크고 1보다 작은 임의의 값을 가산하고, 제3항 기재의 연산을 다시 행하여 배치 개소를 구하는 것을 특징으로 하는 배치 최적화 방법.
  8. 제3항에 있어서, uik의 초기치로서 0 이상 1 이하의 임의의 값을 부여하는 것을 특징으로 하는 배치 최적화 방법.
  9. 제8항에 있어서, 초기치로서 0.5를 부여하는 것을 특징으로 하는 배치 최적화 방법.
  10. 제2항에 있어서, 상기 n2개의 프로세서 대신에 1개 내지 n2-1개 중의 임의의 개수의 프로세서를 준비하고, 그 프로세서에서 상기 연산을 순차 처리시킴에 있어, 각 연산결과를 메모리에 격납하고, 그 메모리에 격납한 연산 결과를 사용하여 다음의 연산을 행하게 하므로서, 상기 n2개의 프로세서의 연산과 동등한 연산을 행하게 하는 것을 특징으로 하는 배치 최적화 방법.
  11. 상관 관계를 가지는 다수개의 회로모듈 또는 회로소자의 최적 배치를 구하는 배치 최적화 방법에 있어서, 자기 및 다른 프로세서의 출력치를 입력치로서 거두어 넣는 n2개의 프로세서로 이루어지고, i번째의 회로를 k번째의 장소에 배치했을때의 제약 조건 변수치를 좌표(i, k)의 프로세서가 회로평가 함수가 최적치가 되도록, 또 제약조건 변수치가 제약조건에 수렴할때까지 연산하는 상호결합 프로세서 네트워크를 구비하는 것을 특징으로 하는 배치 최적화 장치.
  12. 상관 관계를 가지는 다수개의 회로모듈 또는 회로소자의 최적 배치를 구하는 배치 최적화 장치에 있어서, 자기 및 다른 프로세서의 출력치를 입력치로서 거두어 넣는 신경회로망을 구성하는 n2개의 프로세서로 이루어지는 네트워크와, 가중행열 T와 역치백터 b의 값을 에너지 함수 E
    Figure kpo00019
    여기서, x, b : n 차원 백터
    tx,tb : 상기의 전치백터
    dkℓ : 배치장소 k, ℓ간의 거리
    dkp : 배치장소 k와 소자 p의 배치장소와의 거리(고정배치장소가 없는 경우는dkp=0)
    cijm : 1(i, j가 네트를 구성할 때) 또는 0(기타)
    xik,xjℓ : 제약조건 변수
    A, D : 계수
    로부터 구한 가중행열 T와 역치백터 b
    Figure kpo00020
    로서 결정하는 수단과, 상기 네트워크의 좌표(i, k)의 프로세서에 i번째의 회로를 k번째의 장소에 배치 했을때의 문제를 할당하여
    Figure kpo00021
    을 행하게 하는 수단과, 각 프로세서의 출력치가 제약조건에 수렴했을 때 프로세서의 좌표치로부터 회로의 배치를 결정하는 수단을 구비하는 것을 특징으로 하는 배치 최적화 장치.
  13. 제12항에 있어서, 가중 행열 T 및 역치백터 b를 결정함에 있어서, 계수비 A/D의 값을
    Figure kpo00022
    여기서, N는 네트에 포함되는 회로수, 로서, 결정하는 수단을 구비하는 것을 특징으로 하는 배치 최적화 장치.
  14. 제12항에 있어서, 가중행열 T 및 역치백터 b를 결정함에 있어, 계수비 A/D를
    Figure kpo00023
    여기서, N은 네트에 포함되는 회로수, 로한 A/D값보다 작은 값으로 설정하는 수단을 구비한 것을 특징으로 하는 배치 최적화 장치.
  15. 제14항에 있어서, 연산이 수렴되지 않은 회로의 배치위치를 교환법 또는 시뮬레이트드어닐링법으로 결정하는 수단을 구비한 것을 특징으로 하는 배치 최적화 장치.
  16. 제15항에 있어서, 교환법 또는 시뮬레이트드어닐링법으로 배치위치를 구한 회로가 있는 경우에 가중행열 T의 회로를 배치하는 위치에 대응하는 대각성분의 값을 0보다 크고 1보다 작고 임의 값으로서,
    Figure kpo00024
    을 재연산시키는 수단을 구비한 것을 특징으로 하는 배치 최적화 장치.
  17. 제12항에 있어서,ujℓ값의 최초치로서 0이상 1이하의 임의의 값을 설정하는 초기치 설정수단을 구비한 것을 특징으로 하는 배치 최적화 장치.
  18. 제17항에 있어서, 초기치 설정수단은 초기치로서 0.5를 설정하는 것을 특징으로 하는 배치 최적화 장치.
  19. 제11항 또는 제12항에 있어서, n2개의 프로세서 대신에 1∼n2-1개중의 임의의 개수의 프로세서와, 그 프로세서의 연산결과를 격납하는 메모리를 구비하고, 상기 프로세서에서 상기 연산을 순차처리 시킴에 있어 각 연산결과를 상기 메모리에 격납하고 그 격납 데이터를 사용하여 다음의 연산을 행하게 하여, 상기 n2개의 프로세서의 연산과 동등한 연산을 행하게 하는 것을 특징으로 하는 배치 최적화 장치.
  20. 반도체 집적회로의 회로설계를 행하는 반도체 장치 설계장치에 있어서, 자기 및 다른 프로세서의 출력치를 입력치로서 거두어 넣는 n2개의 프로세서로 이루어지고, i번째의 회로를 k번째의 장소에 배치했을때의 제약조건 변수치를 좌표(i, k)의 프로세서가 회로 평가 함수치가 최적치가 되도록 또 제약조건 변수치가 제약 조건에 수렴할때까지 연산하는 상호 결합 프로세서 네트워크를 구비한 배치 최적화 장치를 구비한 것을 특징으로 하는 반도체 장치 설계장치.
KR1019900007744A 1989-06-08 1990-05-29 배치 최적화 방법과 장치 및 반도체 장치 설계장치 KR0157415B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP14412389A JP2863550B2 (ja) 1989-06-08 1989-06-08 配置最適化方法及び配置最適化装置と回路設計装置
JP1-144123 1989-06-08

Publications (2)

Publication Number Publication Date
KR910001934A KR910001934A (ko) 1991-01-31
KR0157415B1 true KR0157415B1 (ko) 1998-11-16

Family

ID=15354731

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900007744A KR0157415B1 (ko) 1989-06-08 1990-05-29 배치 최적화 방법과 장치 및 반도체 장치 설계장치

Country Status (5)

Country Link
US (1) US5200908A (ko)
EP (1) EP0401687B1 (ko)
JP (1) JP2863550B2 (ko)
KR (1) KR0157415B1 (ko)
DE (1) DE69031197D1 (ko)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0410000A4 (en) * 1989-02-10 1993-09-01 Hitachi, Ltd. Data processing unit for obtaining solution for optimal combination solution and method thereof
US5361214A (en) * 1990-07-09 1994-11-01 Kabushiki Kaisha Toshiba Method for automatically determining wiring routes
JPH04130968A (ja) * 1990-09-21 1992-05-01 Toshiba Corp ニューラルネットワークを用いた配線方式
US5452400A (en) * 1991-08-30 1995-09-19 Mitsubishi Denki Kabushiki Kaisha Method of optimizing a combination using a neural network
JP2887969B2 (ja) * 1991-08-30 1999-05-10 三菱電機株式会社 ニューラルネットワークによる部品配置最適化方法
JPH05128085A (ja) * 1991-11-08 1993-05-25 Toshiba Corp システム制御の学習方法
JP3479538B2 (ja) * 1991-12-26 2003-12-15 テキサス インスツルメンツ インコーポレイテツド 半導体集積回路を製作する方法
JP3220250B2 (ja) * 1992-01-09 2001-10-22 株式会社東芝 セル自動配置方法
JP3201156B2 (ja) * 1993-08-30 2001-08-20 トヨタ自動車株式会社 設計を支援する方法と装置
JP3192057B2 (ja) * 1994-03-18 2001-07-23 富士通株式会社 配線プログラム生成方法及びその装置
US5691913A (en) * 1994-03-28 1997-11-25 Matsushita Electric Ind. Co. Layout designing apparatus for circuit boards
US5914887A (en) * 1994-04-19 1999-06-22 Lsi Logic Corporation Congestion based cost factor computing apparatus for integrated circuit physical design automation system
US5557533A (en) * 1994-04-19 1996-09-17 Lsi Logic Corporation Cell placement alteration apparatus for integrated circuit chip physical design automation system
US6155725A (en) * 1994-04-19 2000-12-05 Lsi Logic Corporation Cell placement representation and transposition for integrated circuit physical design automation system
US5815403A (en) * 1994-04-19 1998-09-29 Lsi Logic Corporation Fail-safe distributive processing method for producing a highest fitness cell placement for an integrated circuit chip
US5963975A (en) * 1994-04-19 1999-10-05 Lsi Logic Corporation Single chip integrated circuit distributed shared memory (DSM) and communications nodes
US5495419A (en) * 1994-04-19 1996-02-27 Lsi Logic Corporation Integrated circuit physical design automation system utilizing optimization process decomposition and parallel processing
US5875117A (en) * 1994-04-19 1999-02-23 Lsi Logic Corporation Simultaneous placement and routing (SPAR) method for integrated circuit physical design automation system
US6493658B1 (en) 1994-04-19 2002-12-10 Lsi Logic Corporation Optimization processing for integrated circuit physical design automation system using optimally switched fitness improvement algorithms
US5535134A (en) * 1994-06-03 1996-07-09 International Business Machines Corporation Object placement aid
US5590063A (en) * 1994-07-05 1996-12-31 Motorola, Inc. Optimization method using parallel processors
US5740071A (en) * 1995-06-07 1998-04-14 International Business Machines Corporation Method and apparatus for selective shape adjustment of hierarchical designs
US5740067A (en) * 1995-10-19 1998-04-14 International Business Machines Corporation Method for clock skew cost calculation
US5745735A (en) * 1995-10-26 1998-04-28 International Business Machines Corporation Localized simulated annealing
US5831863A (en) * 1996-06-28 1998-11-03 Lsi Logic Corporation Advanced modular cell placement system with wire length driven affinity system
US5963455A (en) * 1996-06-28 1999-10-05 Lsi Logic Corporation Advanced modular cell placement system with functional sieve optimization technique
US5808899A (en) * 1996-06-28 1998-09-15 Lsi Logic Corporation Advanced modular cell placement system with cell placement crystallization
US5872718A (en) * 1996-06-28 1999-02-16 Lsi Logic Corporation Advanced modular cell placement system
US5835381A (en) * 1996-06-28 1998-11-10 Lsi Logic Corporation Advanced modular cell placement system with minimizing maximal cut driven affinity system
US5870311A (en) * 1996-06-28 1999-02-09 Lsi Logic Corporation Advanced modular cell placement system with fast procedure for finding a levelizing cut point
US5892688A (en) * 1996-06-28 1999-04-06 Lsi Logic Corporation Advanced modular cell placement system with iterative one dimensional preplacement optimization
US5812740A (en) * 1996-06-28 1998-09-22 Lsi Logic Corporation Advanced modular cell placement system with neighborhood system driven optimization
US5914888A (en) * 1996-06-28 1999-06-22 Lsi Logic Corporation Advanced modular cell placement system with coarse overflow remover
US5844811A (en) * 1996-06-28 1998-12-01 Lsi Logic Corporation Advanced modular cell placement system with universal affinity driven discrete placement optimization
US5971588A (en) * 1996-06-28 1999-10-26 Lsi Logic Corporation Advanced modular cell placement system with optimization of cell neighborhood system
US5870312A (en) * 1996-06-28 1999-02-09 Lsi Logic Corporation Advanced modular cell placement system with dispersion-driven levelizing system
US6067409A (en) * 1996-06-28 2000-05-23 Lsi Logic Corporation Advanced modular cell placement system
US5867398A (en) * 1996-06-28 1999-02-02 Lsi Logic Corporation Advanced modular cell placement system with density driven capacity penalty system
US6026223A (en) * 1996-06-28 2000-02-15 Scepanovic; Ranko Advanced modular cell placement system with overlap remover with minimal noise
US6085032A (en) * 1996-06-28 2000-07-04 Lsi Logic Corporation Advanced modular cell placement system with sinusoidal optimization
US6030110A (en) * 1996-06-28 2000-02-29 Lsi Logic Corporation Advanced modular cell placement system with median control and increase in resolution
US5980093A (en) * 1996-12-04 1999-11-09 Lsi Logic Corporation Integrated circuit layout routing using multiprocessing
US5953518A (en) * 1997-03-14 1999-09-14 Lsi Logic Corporation Yield improvement techniques through layout optimization
US6993186B1 (en) 1997-12-29 2006-01-31 Glickman Jeff B Energy minimization for classification, pattern recognition, sensor fusion, data compression, network reconstruction and signal processing
US6324436B1 (en) 1998-09-14 2001-11-27 Fujitsu Limited Method for optimizing cost of manufacturing memory arrays
KR100352603B1 (ko) * 1998-12-21 2002-10-19 주식회사 포스코 내화조성물 및 이를 이용한 턴디쉬의 상부노즐
US7342414B2 (en) * 2002-02-01 2008-03-11 California Institute Of Technology Fast router and hardware-assisted fast routing method
JP2003249591A (ja) * 2002-02-26 2003-09-05 Nec Electronics Corp エリアio型半導体装置の配線基板の設計方法
US7210112B2 (en) * 2002-08-21 2007-04-24 California Institute Of Technology Element placement method and apparatus
US7285487B2 (en) * 2003-07-24 2007-10-23 California Institute Of Technology Method and apparatus for network with multilayer metalization
US9061119B2 (en) 2008-05-09 2015-06-23 Edwards Lifesciences Corporation Low profile delivery system for transcatheter heart valve
US10192016B2 (en) * 2017-01-17 2019-01-29 Xilinx, Inc. Neural network based physical synthesis for circuit designs
CN113722853B (zh) * 2021-08-30 2024-03-05 河南大学 一种面向智能计算的群智能进化式工程设计约束优化方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3629843A (en) * 1970-05-11 1971-12-21 Bell Telephone Labor Inc Machine process for assigning interconnected components to locations in a planar matrix
US3702003A (en) * 1970-10-09 1972-10-31 Marathon Oil Co Algorithm to minimize iterative computation in a process for the analysis or design of a physical system
US3681782A (en) * 1970-12-02 1972-08-01 Honeywell Inf Systems Machine process for positioning interconnected components to minimize interconnecting line length
US4580228A (en) * 1983-06-06 1986-04-01 The United States Of America As Represented By The Secretary Of The Army Automated design program for LSI and VLSI circuits
US4593363A (en) * 1983-08-12 1986-06-03 International Business Machines Corporation Simultaneous placement and wiring for VLSI chips
US4577276A (en) * 1983-09-12 1986-03-18 At&T Bell Laboratories Placement of components on circuit substrates
JPS6293760A (ja) * 1985-10-18 1987-04-30 Nec Corp 配置改良装置
US4719591A (en) * 1985-11-07 1988-01-12 American Telephone And Telegraph Company, At&T Bell Labs. Optimization network for the decomposition of signals
US4754408A (en) * 1985-11-21 1988-06-28 International Business Machines Corporation Progressive insertion placement of elements on an integrated circuit
USH354H (en) * 1986-04-04 1987-10-06 The United States Of America As Represented By The Secretary Of The Army Linear algorithm for non-linear interpolation for computer aided designs
JPS62243071A (ja) * 1986-04-16 1987-10-23 Fujitsu Ltd 並列配置改善方式
JPS63121978A (ja) * 1986-11-11 1988-05-26 Fujitsu Ltd 大規模組合せ問題の最適化処理装置

Also Published As

Publication number Publication date
KR910001934A (ko) 1991-01-31
EP0401687A2 (en) 1990-12-12
US5200908A (en) 1993-04-06
EP0401687A3 (en) 1993-01-27
JPH0310378A (ja) 1991-01-17
EP0401687B1 (en) 1997-08-06
JP2863550B2 (ja) 1999-03-03
DE69031197D1 (de) 1997-09-11

Similar Documents

Publication Publication Date Title
KR0157415B1 (ko) 배치 최적화 방법과 장치 및 반도체 장치 설계장치
Nagy et al. Configurable multilayer CNN-UM emulator on FPGA
US5519811A (en) Neural network, processor, and pattern recognition apparatus
US5517667A (en) Neural network that does not require repetitive training
US8316337B2 (en) Method and system for optimally placing and assigning interfaces in a cross-fabric design environment
US20210357560A1 (en) Method and System for Hierarchical Circuit Simulation Using Parallel Processing
US8527929B2 (en) Method and system for optimally connecting interfaces across multiple fabrics
US6643832B1 (en) Virtual tree-based netlist model and method of delay estimation for an integrated circuit design
JPWO2019053835A1 (ja) 演算回路、演算方法、およびプログラム
US8479134B2 (en) Method and system for specifying system level constraints in a cross-fabric design environment
US20220405455A1 (en) Methods and systems for congestion prediction in logic synthesis using graph neural networks
US5627944A (en) Parallel data processing system
WO2020093669A1 (en) Convolution block array for implementing neural network application and method using the same, and convolution block circuit
Serrano-Gotarrdeona et al. An ART1 microchip and its use in multi-ART1 systems
Fukunaga et al. Placement of circuit modules using a graph space approach
Kundu An incremental algorithm for identification of longest (shortest) paths
CN117561515A (zh) 拥塞预测模型训练方法、图像处理方法及装置
JP2825133B2 (ja) 並列データ処理方式
Kukutla et al. TC-GVF: Tensor Core GPU based Vector Fitting via Accelerated Tall-Skinny QR Solvers
TWI659324B (zh) 電路規劃結果產生方法與系統
Hendrich A scalable architecture for binary couplings attractor neural networks
CN117787196A (zh) 基于深度强化学习的绕障X结构Steiner最小树方法
Dawwd et al. Time sharing based parallel implementation of CNN on low cost FPGA
Shishehbor et al. Parametric Encoding with Attention and Convolution Mitigate Spectral Bias of Neural Partial Differential Equation Solvers
Aksoy et al. Realization of Logic Functions Using Switching Lattices Under a Delay Constraint

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee