KR20020021318A - 논리회로의 설계방법, 논리회로의 설계지원 시스템, 및컴퓨터 판독 가능한 기록매체 - Google Patents

논리회로의 설계방법, 논리회로의 설계지원 시스템, 및컴퓨터 판독 가능한 기록매체 Download PDF

Info

Publication number
KR20020021318A
KR20020021318A KR1020010049863A KR20010049863A KR20020021318A KR 20020021318 A KR20020021318 A KR 20020021318A KR 1020010049863 A KR1020010049863 A KR 1020010049863A KR 20010049863 A KR20010049863 A KR 20010049863A KR 20020021318 A KR20020021318 A KR 20020021318A
Authority
KR
South Korea
Prior art keywords
circuit
logic
grouping
candidate
algorithm
Prior art date
Application number
KR1020010049863A
Other languages
English (en)
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 KR20020021318A publication Critical patent/KR20020021318A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성을 최적화하고, 시간을 단축한다.
하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 복수의 회로블럭의 최적화 알고리즘 후보를, 회로블럭의 해밍(Hamming)거리를 고려하여 판정한다(S1 ~ S3). 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을, 회로블럭 상호간의 결합도를 고려하여 그룹화한다(S4 ~ S6). 그룹화의 결과는 알고리즘 후보나 결합도의 점에서 특징이 명확한 회로블럭에 대한 결과이며, 상기 특징이 불명확한 회로블럭도 남아있다. 특징이 불명확한 회로블럭에 대한 그룹화의 최적화를 진행시키기 위해, 상기 그룹화의 결과를 초기상태에 반영하여 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화한다(S7 ~ S13).

Description

논리회로의 설계방법, 논리회로의 설계지원 시스템, 및 컴퓨터 판독 가능한 기록매체{DESIGN METHOD FOR LOGIC CIRCUIT, DESIGN SUPPORT SYSTEM FOR LOGIC CIRCUIT AND READABLE MEDIA}
본 발명은, 논리회로의 설계방법, 논리회로의 설계지원 시스템, 및 컴퓨터 판독 가능한 기억매체에 관한 것으로, 하드웨어 기술언어에 의한 논리회로 기술에 기초하는 논리합성의 최적화에 적용하는 유효한 기술에 관한 것이다.
반도체 집적회로의 논리설계에서는 논리규모나 집적도의 증대에 따라, C언어 등의 프로그래밍 언어에 유사하는 VHDL(Verilof Hardware Descriotion Language) 등의 하드웨어 기술언어가 이용된다. 하드웨어 기술언어로 기술된 논리회로 기술에 대해 논리합성의 처리가 행해짐으로써, 예컨대 게이트 레벨에서의 논리회로가 얻어진다. 이 때, 반도체 집적회로의 칩 전체를 일괄적으로 논리합성하는 것은, 규모적으로 혹은 계산기능력상, 불가능하므로, 분할의 오버헤드가 가능한 한 적은 범위에서 가능한 한 작은 단위로 논리합성처리를 분할할 필요가 있다. 이 분할은 논리의 독립성이 높은 범위에서 분할하여 논리합성 가능한 규모가 되면 좋으나, 논리규모를 작게하여 논리합성을 최적화해가지 않으면 안되므로, 실제로는 더욱 작게 분할 필요가 있다. 또, 분할한 단위를 논리합성할 때에는, 몇개의 알고리즘 후보에서 최적의 것을 선택하여 적용할 필요가 있다. 실제의 논리합성에서는, 논리분할과 최적화된 알고리즘 후보의 선택이 서로 뒤얽혀, 그 해결의 곤란함을 증대시키고 있으며, 이것에 대해 대부분은 사람 손에 의한 시행착오에 대응하고 있다.
종래, 인간이 경험적으로 행하고 있는 판단수법을 프로세스 제어 등에 취입된 기술로서, 퍼지추론을 시스템의 설계지원에 채용한 일본 특개평 3-265974호, 퍼지추론을 제어 시스템의 최적성 판정에 적용한 일본 특개평 4-70906호에 기재가 있다.
그러나, 논리합성 할 때 논리분할과 알고리즘 후보의 선택이라는 상호 복잡하게 관련하는 사상(事象)의 해결의 대부분을 사람 손에 의한 시행착오에 대응하고 있어서는, 이것에 소요되는 공정수나 기간의 증가 외에, 합성결과의 편차도 크게 된다는 문제점이 있다는 것이 본 발명자에 의해 발견되었다.
본 발명자는, 인간이 경험적으로 행하고 있는 발견적 최적화에 가까운 자동화 수법을 논리합성에 적용하는 것에 대해 검토해 왔지만, 상기 퍼지추론을 이용한종래기술은 그것에 대한 착안조차 부여하지 못했다.
본 발명의 목적은 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성에 필요한 기간을 단축 가능한 논리회로의 설계방법, 논리회로의 설계지원 시스템, 및 논리회로의 설계지원 프로그램을 기록한 시스템 컴퓨터 판독 가능한 기록매체를 제공하는데 있다.
본 발명의 다른 목적은, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성 결과의 속인적인 편차를 절감 가능한 논리회로의 설계방법, 논리회로의 설계지원 시스템, 및 논리회로의 설계지원 프로그램을 기록한 시스템 컴퓨터 판독 가능한 기록매체를 제공하는데 있다.
본 발명의 또 다른 목적은, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성을 통해 설계되는 반도체 집적회로의 성능향상에 기여하는 것이 가능한 논리회로의 설계방법, 논리회로의 설계지원 시스템, 및 논리회로의 설계지원 프로그램을 기록한 시스템 컴퓨터 판독 가능한 기록매체를 제공하는데 있다.
본 발명의 상기 및 그 이외의 목적과 신규한 특징은 본 명세서의 기술 및 첨부 도면에서 명백하게 될 것이다.
도 1은 본 발명에 관한 논리회로의 설계방법을 예시하는 플로우챠트,
도 2는 RTL 기술에 의한 논리회로 기술을 예시하는 설명도,
도 3은 논리회로 기술에 의해 특정되는 회로블럭 예로서 가산기 및 셀렉터를 나타내는 설명도,
도 4는 가산기의 진리치표(眞理値表), 해밍(Hamming)거리, 및 평균 해밍거리 지수의 설명도,
도 5는 셀렉터의 진리치표, 해밍거리, 및 평균 해밍거리 지수의 설명도,
도 6은 평균 해밍거리 지수와 알고리즘 후보와의 상관(相關)을 규정하는 알고리즘 후보선택을 위한 멤버쉽 함수를 예시하는 설명도,
도 7은 결합도의 예를 나타내는 설명도,
도 8은 통합가부를 판정하기 위한 멤버쉽 함수를 예시하는 설명도,
도 9는 통합해야 할 회로블럭 그룹의 논리식과 논리규모에 대한 합성부하의 경향을 예시하는 설명도,
도 10은 유전정보의 전달의 형태를 모식적으로 나타내는 설명도,
도 11은 본 발명에 관한 논리회로의 설계지원 시스템을 예시하는 블럭도,
도 12는 논리회로의 설계지원 시스템에서의 데이터 등의 입출력 상태에 착안한 설명도,
도 13은 논리합성 최적화의 결과로서 게이트 레벨의 논리 기술에 의한 출력을 예시하는 설명도이다.
(부호의 설명)
1 키보드 2 디스플레이
3 컴퓨터 유닛 3A CPU
3B 메인 메모리 4 보조기억장치
4A 기억매체 5 통신 인터페이스
본원에 있어서 개시되는 발명 중 대표적인 것의 개요를 간단하게 설명하면 하기와 같다.
[1] 본 발명은, 퍼지추론과 유전적 알고리즘을 조합함으로써, 인간이 경험적으로 행하고 있는 발견적 최적화에 가까운 자동화 수법을 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성에 적용한다. 즉, 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 복수의 회로블럭의 최적화 알고리즘 후보를, 회로블럭의 해밍거리를 고려하는 퍼지추론을 이용하여 판정한다(제1처리). 상기 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을, 회로블럭 상호간의 결합도를 고려하는 퍼지추론을 이용하여 그룹화한다(제2처리). 퍼지추론에 의한 그룹화의 결과는 알고리즘 후보나 결합도라는 점에서 특징이 명확한 회로블럭에 대한 결과이며, 상기 특징이 비교적 불명확한 회로블럭은 그룹화되지 않고 혹은 다른 수법으로 잠정적으로 그룹화되어 남는다. 그와 같은 특징이 불명확한 회로블럭에 대한 그룹화의 최적화를 진행시키기 위해, 상기 제2처리에 의한 그룹화의 결과를 초기상태에 반영하여 상기 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 제3처리를 행한다.
본 발명을 더욱 상세한 태양에 의거해 설명한다. 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 복수의 회로블럭(예컨대 올웨이(always)블럭 또는 펑션(function)블럭 등으로 규정되는 회로블럭)에 대해 퍼지추론에 의해 통합해야 할 초기값을 결정한다. 퍼지추론에 사용하는 멤버쉽 함수는 첫째, 각 회로블럭의 진리치표에서 얻어지는 해밍거리를 고려한 지수와 최적화 알고리즘 후보와의 상관을 규정하는 함수이다. 예컨대, 해밍거리가 회로블럭의 신호수에 일치하는 논리는 인버터이며, 신호수의 1/2에 가까운 논리는 EOR(배타적 논리합)에 가깝고, 그 이외는 AND-OR에 가깝다고 특징되어진다. 상기 지수로서, 예컨대, 회로블럭의 상태수(S), 회로브럭의 입력신호수(N), 회로블럭의 출력신호수(M), 입력신호의 i번째와 출력신호의 j번째의 해밍거리(Hij)를 이용한, ∑|Hij - S/2|/(N*M*S/2)에서 부여되는 평균 해밍거리 지수를 채용하는 것이 가능하다. 멤버쉽 함수는, 둘째 회로블럭 상호간에서의 입출력 신호의 일치성에서 얻어지는 결합도와 회로블럭에 대한 통합 가부와의 상관을 규정하는 함수이다. 그들 멤버쉽 함수에 따라, 회로블럭에 최적화 알고리즘 후보를 할당하여, 동일 알고리즘을 후보로 가지는 것 중, 결합도가 높은 것을 논리합성에서 통합해야 할 회로블럭으로서 그룹화 한다.
그리고, 상기 통합해야 할 회로블럭으로서 그룹화 된 결과를 개체의 초기상태에 반영하여 상기 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화 한다. 각 개체는 예컨대, 통합한 회로블럭과 알고리즘 후보와의 쌍을 데이터로 하고, 통합한 회로블럭에 의해 표현되는 논리식의 변수의 수를 V, 논리단수를 S 및 논리규모에 따라 증가하는 합성부하를 L로 할 때 V*S*L을 평가함수라 한다(기호(*)는 곱셈을 의미한다). 상기 평가함수에 의한 평가가 좋은 개체를 복수개 선택하여, 선택된 복수의 개체의 유전자의 공통부분에 대해 유전확립을 높이도록 세대를 거쳐, 평가가 어느 값에 도달했을 때의 개체가 요구되는 최적해(最適解)가 된다.
상기 유전적 알고리즘에 의한 최적화 처리를 거쳐 도출된 결과는, 합성 가능한 논리규모 내에서 가능한 한 오버헤드가 적게 되는 분할이며, 동시에 그 블럭에 대한 최적화 알고리즘도 결정되어 있기 때문에, 그 결과에 따르면, 즉석에서 논리합성 결과를 얻는 것이 가능하게 된다. 또한, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성에 필요한 기간의 단축, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성 결과의 속인적인 편차의 절감이 가능하게 된다. 그리고, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성을 통해 설계되는 반도체 집적회로의 성능향상에 기여하는 것이 가능하다.
[2] 상기 논리회로의 설계방법은, 입력수단, 기억수단, 및 상기 입력수단으로부터의 입력정보를 이용하고 상기 기억수단을 이용하여 연산처리를 행하는 데이터 처리수단을 가지는 논리회로의 설계지원 시스템에서 실현하는 것이 가능하다. 논리회로의 설계지원 시스템에 있어서, 상기 입력수단은 하드웨어 기술언어에 의한 논리회로 기술 데이터를 입력 가능하다. 상기 데이터 처리수단은, 상기 제1 내지 제3 처리가 실행 가능하다.
[3] 상기 논리회로의 설계방법을 컴퓨터에 실행시키는 프로그램은 컴퓨터 판독 가능한 기록매체로 제공해도 좋다. 즉, 상기 기록매체는 제1 내지 제3 처리를 실행시키는, 논리회로의 설계지원 프로그램을 기록한 것이다. 이것에 의해, 엔지니어링 워크스테이션이나 퍼스털 컴퓨터로 상기 논리회로의 설계방법을 실현하는 것이 용이하게 된다.
도 1에는 본 발명에 관한 논리회로의 설계방법이 플로챠트에 예시된다. 동 도면에 나타내는 설계방법은, VHDL 등의 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성을 최적화하는 방법이며, 퍼지추론과 유전적 알고리즘을 조합함으로써, 인간이 경험적으로 행하고 있는 발견적 최적화에 가까운 자동화 수법을 가지는 것이다. 이 방법은, 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 복수의 회로블럭에 대해 퍼지추론에 의해 통합해야 할 초기치를 결정하는 퍼지추론에 의한 초기치 결정처리(S1 ~ S6)와, 상기 통합해야 할 회로블럭으로서 그룹화된 결과를 개체의 초기상태에 반영하여 상기 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 유전적 알고리즘에 의한 최적화 처리(S7 ~ S13)로 크게 나뉜다.
상기 퍼지추론에 의한 초기치 결정처리는, 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 회로블럭의 알고리즘 후보를, 회로블럭의 해밍거리를 고려하는 퍼지추론을 이용하여 판정하는 제1처리(S1 ~ S3)와, 상기 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을, 회로블럭 상호간의 결합도를 고려하는 퍼지추론을 이용하여 그룹화하는 제2처리(S4 ~ S6)로 분류할 수 있다. 퍼지추론은 애매모호함을 표현한 멤버쉽 함수 혹은 룰을 이용한 추론이며, 그 추론결과에는 애매모호한 결과가 포함되게 된다. 구체적으로는, 퍼지추론에 의한 그룹화의 결과는 알고리즘 후보나 결합도라는 점에서 특징이 명확한 회로블럭에 대한 결과이며, 상기 특징이 비교적 불명확한 회로블럭은 그룹화되지 않고 혹은 다른 수법으로 잠정적으로 그룹화되어 남는다. 그와 같은 특징이 불명확한 회로블럭에 대한 그룹화의 최적화를 진행시키는 것이 상기 유전적 알고리즘에 의한 최적화 처리(S7 ~ S13)이다. 유전적 알고리즘이란 일반적으로, 생물의 유전 메커니즘인 유전자의 교배, 돌연변이, 적응도에 의해 개체를 선택하는 자연도태 등을 모델화하여, 컴퓨터 시뮬레이션 등으로 문제해결을 도모하려고 하는 수법이며, 여기서는, 상기 제2처리에 의한 그룹화의 결과를 초기상태에 반영하여 상기 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 제3처리(S7 ~ S13)로서 채용되어 있다. 이하에서 도 1의 처리 플로우를 상세하게 설명한다.
< 블럭정의 >
도 1의 「블럭정의」 S1의 처리는, VHDL 등의 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 복수의 회로블럭을 정의한다. 예컨대 논리회로 기술에서의 올웨이즈(always) 블럭 또는 펑션(function) 블럭 등의 기술부분에서 회로블럭을 정의한다.
도 2에는 RTL 기술에 의한 논리회로 기술의 예를 나타낸다. 여기서는 펑션 블럭으로서의 assign문과, 올웨이즈 블럭으로서의 always문이 예시되고, 전자는 도 3의 (A)에 예시되는 1비트 전가산기와 같은 가산기를 회로블럭으로서 정의하고, 후자는 도 3의 (B)에 예시되는 4입력 셀렉터와 같은 셀렉터를 회로블럭으로서 정의한다.
< 해밍거리 계산 >
도 1의 「해밍거리 계산」 S2의 처리에서는, 스텝(S1)에서 정의된 회로블럭에 대해 해밍거리의 계산을 행한다. 해밍거리는, 회로블럭에서의 입출력 상태의 상위(相違)의 정도를 나타내는 파라미터이며, 회로블럭의 진리치표에서 얻는다. 도 4의 (A)에는 도 3의 (A)의 가산기의 진리치표를 나타내며, 이에 대한 해밍거리는 도 4의 (B)에 예시된다. 해밍거리는 진리치표의 각 신호간의 논리치(1/0)가 다른 개수로서 파악하는 것도 가능하지만, EOR계 알고리즘을 특수한 셀렉터 등과 정확하게 분별할 수 있게 하기 위해 상기 개수를 진리치표의 상태수(S)의 1/2의 차로 나타내도록 한다. 예컨대 입력(Cin)과 출력(Z) [1]과의 사이에서, 쌍방의 신호의 논리치가 상위하는 조합은 2가지이며, 상태수는 8이므로, 그 해밍거리는 2가 된다. 도 5의 (A)에는 도 3의 (B)의 셀렉터의 진리치표를 나타내며, 이에 대한 해밍거리는 도 5의 (B)에 예시된다. 예컨대 입력(S1)과 출력(OUT)과의 사이에서, 쌍방의 신호의 논리치가 상위하는 조합은 4가지이며, 상태수는 8이므로, 그 해밍거리는 4가 된다. 상기 해밍거리에서 회로의 성질을 파악하는 것이 가능하다. 예컨대, 해밍거리가 회로블럭의 신호수에 일치하는 논리는 인버터이며, 신호수의 1/2에 가까운 논리는 EOR(배타적 논리합)계에 가깝고, 그 이외는 AND-OR계에 가깝다고 특징되어진다.
상기 해밍거리는 회로블럭의 알고리즘 후보를 결정할 때의 지수에 적용한다. 즉, 퍼지추론에 의해 회로블럭의 알고리즘 후보를 결정하기 위해 사용하는 멤버쉽 함수로서, 각 회로블럭의 진리치표에서 얻어지는 해밍거리를 고려한 지수와 알고리즘 후보와의 상관을 규정하는 함수를 이용한다. 예컨대, 여기서는 상기 지수로서, 회로블럭의 상태수(S), 회로블럭의 입력신호수(N), 회로블럭의 출력신호수(M), 및 입력신호의 i번째와 출력신호의 j번째의 해밍거리(Hij)를 이용한, ∑|Hij - S/2|/(N*M*S/2)에서 부여되는 평균 해밍거리 지수를 채용한다. 도 4의 (C)에는 도 3의 (A)에 나타내는 가산기의 평균 해밍거리 지수가 예시된다. 도 5의 (C)에는 도 3의 (B)에 나타내는 셀렉터의 평균 해밍거리 지수가 예시된다.
< 최적화 알고리즘 후보군 결정 >
도 1의 「최적화 알고리즘 후보군 결정」 S3의 처리에서는, 상기 평균 해밍거리 지수를 이용하여 회로블럭의 최적화 알고리즘 후보를 결정한다.
도 6에는 상기 평균 해밍거리 지수와 알고리즘 후보와의 상관을 규정하는 알고리즘 후보 선택을 위한 멤버쉽 함수가 예시된다. 이 예는, 회로블럭이 EOR계의회로인지 여부에 따라, AND-EOR계 최적화와 AND-OR계 최적화의 판정을 목적으로 한 것이다. AND-EOR계 알고리즘은 가산기에 대표되는 EOR을 이용한 여러가지의 연산계 회로를 총칭할 수 있다. AND-OR계 알고리즘은 셀렉터에 대표되는 OR을 이용한 여러가지의 데이터·트랜지스터계 회로를 총칭할 수 있다. 도 6에 있어서, 판정대상이 되는 회로블럭의 평균 해밍거리 지수가 AND-EOR계 최적화의 영역(예컨대 0.3미만)에 있으면, 그 회로블럭의 최적화 알고리즘 후보를 AND-EOR계로 한다. 한편, 판정대상이 되는 회로블럭의 평균 해밍거리 지수가 AND-OR계 최적화의 영역(예컨대 0.65이상)에 있으면, 그 회로블럭의 최적화 알고리즘 후보를 AND-OR계로 한다. 판정대상이 되는 회로블럭의 평균 해밍거리 지수가 상기 최적화 이외의 경우에는, 일부의 회로블럭을 잠정적으로 어느쪽이든지의 알고리즘에 할당하거나, 혹은 그 이외의 알고리즘으로 한다.
< 회로블럭의 그룹화 >
여기서는, 먼저 각 회로블럭의 입출력 신호 리스트를 작성한다(S4). 이 리스트를 이용하여 회로블럭간의 입출력의 결합도를 결정한다(S5). 결합도와 회로블럭 상호간에서의 신호의 일치성으로서 파악하는 것이 가능하다. 예컨대, 공통신호수(회로블럭간 신호수)/전입출력 신호수를 결합도로 하고, 값이 클수록 결합도가 높다고 판정한다.
도 7에는 상기 결합도의 예를 나타낸다. 도 7의 (A)에서 회로블럭(BLK1, BLK2, BLK3)은 상기 최적화 알고리즘 후보군 결정처리(S3)에서 판정된 최적화 알고리즘 후보의 공통인 복수의 회로블럭의 일예이다. IN[0:7]은 8비트의 입력 데이터,OUT1[0:7], OUT2[0:7], OUT[0:7]은 각각 8비트의 출력 데이터, CLT1, CLT2, SEL은 각각 1비트의 제어신호이다. 도 7의 (B)에는 도 7의 (A)에서의 회로블럭의 각종 조합과 상기 결합도가 예시된다.
최적화 알고리즘 후보의 공통인 복수의 회로블럭의 각종 조합에 대해, 당해 회로블럭을 통합하여 그룹화하는지의 여부는 도 8에 예시되는 멤버쉽 함수를 이용하여 판정한다. 예컨대 도 7의 (B)의 결합도에 대해, 도 8의 멤버쉽 함수를 이용하고 통합가부를 판정하면, 회로블럭 BLK1과BLK3, 또는 블럭 BLK1과 BLK2가 통합화되어야 할 회로블럭으로서 그룹화된다.
이와 같이, 평균 해밍거리 지수를 이용하여 회로블럭에 최적화 알고리즘 후보가 할당되고, 동일 알고리즘을 최적 후보로 가지는 것 중 결합도가 높은 것은 논리합성에 있어서 통합해야 할 회로블럭으로서 그룹화된다. 이 결과는 통합블럭의 초기치로 되며(S6), 다음의 유전적 알고리즘에 의한 개체의 초기상태 결정에 반영된다.
< 유전적 알고리즘에 의한 최적화 >
유전적 알고리즘에서는, 해(解)의 후보로서의 개체를 생성하고, 개체에 대해 평가함수를 이용하여 적응도를 평가하고, 평가가 높은 개체를 선택하여, 선택된 개체에 대해 교배 및 돌연변이 등의 조작을 가해, 다음 세대의 개체집단을 생성하고, 그들을 반복하여 세대를 거치므로서, 적응도가 높은 개체가 증가하고, 동시에, 보다 최적해에 가까운 개체가 나타나는 확률도 높게 되며, 평가치가 어느 일정치에 도달했을 때의 개체를 구하는 최적해로 하는 것이다.
도 1에서는, 상기 통합해야 할 회로블럭으로서 그룹화된 결과를 개체의 초기상태에 반영하여 상기 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화한다. 각 개체는 예컨대, 전술의 통합해야 할 것으로 그룹화된 회로블럭과 그것에 대응하는 알고리즘 후보와의 쌍을 유전자 데이터로서 다수 가진다. 개체의 수는 통상 복수개인 것이 바람직하고, 최적화 알고리즘의 할당이 행해지지 않은 회로블럭에 대해 여러가지의 대응으로 그룹화해야 할 상태를 상정하여, 당초 다수의 개체를 생성하면 좋다. 어떠한 개체에 있어서도, 상기 퍼지추론에서 통합해야 할 회로블럭으로서 그룹화된 결과에 대한 유전자가 포함되어 있다. 그들 개체에 대한 적응도 판정에는 예컨대, 통합해야 할 회로블럭에 의해 표현되는 논리식의 변수의 수(V), 논리단수(S) 및 논리규모에 따라 증가하는 합성부하(L)를 고려하여, V*S*L을 평가함수로서 이용한다. 스텝(S6)에서는 통합해야 할 회로블럭마다 평가함수를 계산한다.
도 9에는 통합해야 할 회로블럭 그룹의 논리식과 논리규모에 대한 합성부하를 예시한다. 도 9의 (A)에 있어서, 기호(&)는 논리곱, 기호(|)는 논리합을 의미한다. 도 9의 (A)에 예시되는 논리식과, 도 9의 (B)에 나타내는 논리규모에 대한 합성부하에 따르면, 그 회로블럭 그룹의 평가함수의 값은 4(변수의 수)*3(논리단수)*1.1(합성부하) = 13.2이다.
도 1의 스텝(S9)에서는 상기 평가함수에 기초하여 평가가 높은 개체인지 여부를 판정하고, 평가가 높다고 하여 선택된 개체에 대해 교배 및 돌연변이 등의 조작의 알고리즘을 선택하며(S10), 선택한 알고리즘에 따라 다음의 세대의 어느 개체에 어느 유전자를 전달시킬까, 혹은 어느 회로블럭을 통합할까를 결정한다(S11). 상기 스텝(S9 ~ S11)의 처리를 동일 세대의 모든 개체에 대해 실시하고(S12), 그 후는 세대를 하나 진행시켜(S13), 스텝(S7 ~ S13)의 처리를 반복한다. 이 예에서는, 처리의 세대수가 일정치에 도달했을 때에 남은 개체에 최적해가 포함되어 있으며, 예컨대 그 최적해는 최종세대에서의 스텝(S9)의 평가가 가장 높은 개체이다.
도 10에는 유전정보의 전달의 형태가 모식적으로 예시된다. 유전정보의 전달에 있어서는, 퍼지추론에 의해 최적화 알고리즘이 할당되어 통합화된 회로 그룹은, 세대를 거쳐도 원칙적으로 분할하지 않도록 하지만, 수세대에 걸친 통합화의 결과, 다른 그룹과의 관계에 의해 최대 논리규모를 초과한 경우에만 분할을 행한다. 개체간의 회로블럭의 통합/분할은 난수적으로 행하지만, 평가가 좋은 복수의 개체의 유전자의 공통부분은 유전 확률을 높이도록 한다. 돌연변이는 예컨대 10%를 초과하지 않는 범위에서 램덤하게 발생시킨다.
상기 유전적 알고리즘에 의한 최적화 처리를 거쳐 도출된 결과는, 합성 가능한 논리규모 내에서 가능한 한 오버해드가 적게 되는 분할이며, 동시에 그 회로블럭에 대한 최적화 알고리즘 후보도 결정되어 있기 때문에, 그 결과에 따르면, 즉석에서 논리합성 결과를 얻는 것이 가능하게 된다. 또한, 사람 손에 의한 시행착오가 없으므로, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성에 필요한 기간의 단축, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성 결과의 속인적인 편차의 절감이 가능하게 된다. 그리고, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성을 통해 설계되는 반도체 집적회로의 성능향상에 기여하는 것이 가능하다.
도 11에는 상기 논리회로의 설계방법을 실현하는 논리회로의 설계지원 시스템이 예시된다. 동 도면에 나타내는 시스템은 엔지니어링 워크스테이션 또는 퍼스널 컴퓨터 시스템등에 의해 실현되고, 입력수단으로서의 키보드(1), 표시수단으로서의 디스플레이(2), CPU(3A)급 메인 메모리(3B) 등이 실장된 CPU보드나 인터페이스보드를 가지는 데이터 처리수단으로서의 컴퓨터 유닛(3), 보조기억장치(4), 및 터미널 아댑터나 모뎀 등의 통신 인터페이스 회로(5)를 가지고 이루어진다. 통신 인터페이스 회로(5)도 입력수단의 일예를 이룬다. 보조기억장치(4)는 특히 제한되지 않지만, 자기디스크를 고정적으로 구비한 하드디스크장치, 플래시 메모리 카드가 착탈 가능한 메모리 카드 장치, 플로피 디스크에 대해 리드·라이트 가능한 플로피 디스크 드라이브장치, CD-ROM을 리드 가능한 CD-ROM 드라이브장치, MO 디스크에 대해 리드·라이트 가능한 MO 드라이브장치 등으로 구성된다. 4A는 보조기억장치(4)의 기억매체를 총칭한다. 보조기억장치(4)도 입력수단의 일예를 이룬다. 상기 통신 인터페이스 회로(5)는 공중회선망(6) 등에 접속 가능하게 된다. CPU(3A)는, 특히 제한되지 않지만, 기록매체(4A)에서 판독한 프로그램 또는 통신 인터페이스 수단(5)을 통해 다운로드한 프로그램을 메인 메모리(3B) 등에 로드하여 실행한다. 프로그램의 실행에 필요한 데이터는, 동일하게 기록매체(4)에서 판독하고, 혹은 통신 인터페이스(5)를 이용하여 다운로드하며, 또 키보드(1)로 입력한다.
논리회로의 설계지원 시스템에 있어서, 상기 입력수단으로서의 보조기억장치(4) 또는 통신 인터페이스 회로(5)는 상기 하드웨어 기술언어에 의한논리회로 기술 데이터를 입력 가능하다. 상기 컴퓨터 유닛(3)은, 입력한 논리회로 기술 데이터를 이용하여 상기 도1에 예시된 논리합성의 최적화 처리를 행한다.
상기 컴퓨터 유닛이 상기 논리합성의 최적화 처리를 행하기 위한 동작 프로그램은, 컴퓨터 판독 가능한 기록매체(4A)로 제공된다. 이 프로그램은, 도 1에서 설명한 처리를 컴퓨터 유닛(3)이 실행하기 위해 필요한 오브젝트 코드에 의해 구성되어 있다. 기록매체(4A)를 통해 필요한 프로그램을 제공함으로써, 반도체 집적회로의 논리설계를 위한 논리합성의 최적화를 컴퓨터로 실현하는 것이 용이하게 된다.
도 12에는 논리회로의 설계지원 시스템에서의 데이터 등의 입출력 상태에 착안한 설명을 나타낸다. 논리회로의 설계지원 시스템(10)에는 하드웨어 기술과, 제어정보가 입력되고, 또 동작 프로그램이 세트되며, 그 동작 프로그램이 실행되어, 논리합성 스크립트 혹은 합성결과가 출력된다. 도 13에는 게이트 레벨의 논리기술에 의한 논리합성 출력예를 나타낸다. 동 도면에 나타내는 구체적인 기술은 상기 논리회로의 구체예와는 상관하지 않는다.
이상 본 발명자에 의해 행해진 발명을 실시형태에 기초하여 구체적으로 설명했지만, 본 발명은 그것에 한정되지 않고, 그 요지를 이탈하지 않는 범위에서 여러가지 변경 가능한 것은 말할 필요도 없다.
예컨대, 전술의 예에서는 결합도는 공통신호수(회로블럭간 신호수)/전입출력신호수로 하고, 값이 클수록 결합도가 높다고 판정하는 것으로 했지만, 결합 후의 입출력 신호수/∑블럭마다의 입출력 신호수로서 작은 쪽이 결합도가 높다고 생각하는 등의 베리에이션도 가능하다.
멤버쉽 함수나 평가함수는 다른 항목을 추가함으로써 더욱 튜닝하는 것도 가능하다. 또한, 해밍거리의 이용형태, 결합도의 평가의 방법 등에 작용해도 적절하게 변경할 수 있다. 또, 퍼지추론을 이용하여 행하는 그룹화는 최적 알고리즘 후보가 할당된 회로블럭에 대해서뿐만 아니라, 알고리즘 후보의 판정결과가 비교적 애매모호한 회로블럭에 대해서도, 퍼지추론 결과에 따라 실시해도 좋다. 당연한 것이지만, 퍼지추론에 의한 알고리즘 후보의 판정결과가 비교적 애매모호한 회로블럭에 대해, 퍼지추론 결과와는 다른 방법을 이용하거나, 혹은 오퍼레이터의 지시에 따라, 잠정적인 그룹화를 행하여 좋은 것은 말할 필요도 없고, 여기서 명확화해 둔다.
본원에서 개시되는 발명 중 대표적인 것에 의해 얻어진 효과를 간단하게 설명하면 하기와 같다.
즉, 상기 유전적 알고리즘에 의한 최적화 처리를 거쳐 도출된 결과는, 합성가능한 논리규모 중 가능한 한 오버헤드가 적게 되는 분할이며, 동시에 그 블럭에 대한 알고리즘도 결정되어 있으므로, 그 결과에 따르면, 즉석에서 논리합성 결과를 얻는 것이 가능하게 된다. 또한, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성에 필요한 기간의 단축, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성 결과의 속인적인 편차의 저감이 가능하게 된다. 그리고, 하드웨어 기술언어에 의한 논리회로 기술에 대한 논리합성을 통해 설계되는 반도체 집적회로의 성능향상에 기여하는 것이 가능하다. 그뿐아니라, 해밍거리에 의한 논리의 특징 평가나, 유전적 알고리즘에서 사용하는 평가함수 등, 종래 막연했던 것을 명확하게 적용함으로써, 시스템 전체의 자동화에 의한 시행착오수가 비약적으로 감소한다.

Claims (24)

  1. 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 회로블럭의 최적화 알고리즘 후보를 퍼지추론을 이용하여 판정하는 제1처리와,
    상기 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을 퍼지추론을 이용하여 그룹화하는 제2처리와,
    상기 제2처리에 의한 그룹화의 결과를 초기상태에 반영하여 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 제3처리와, 를 포함하는 것을 특징으로 하는 논리회로의 설계방법.
  2. 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 회로블럭의 최적화 알고리즘 후보를, 회로블럭의 해밍거리를 고려하는 퍼지추론을 이용하여 판정하는 제1처리와,
    상기 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을, 회로블럭 상호간의 결합도를 고려하는 퍼지추론을 이용하여 그룹화하는 제2처리와,
    상기 제2처리에 의한 그룹화의 결과를 초기상태에 반영하여 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 제3처리와, 를 포함하는 것을 특징으로 하는 논리회로의 설계방법.
  3. 제 2 항에 있어서,
    상기 제1처리는, 회로블럭에서의 입출력 상태의 상위(相違)의 정도를 나타내는 해밍거리를 고려한 지수와 알고리즘 후보와의 상관(相關)에 기초하여 최적화 알고리즘 후보를 판정하는 것을 특징으로 하는 논리회로의 설계방법.
  4. 제 3 항에 있어서,
    상기 지수는, 회로블럭의 상태수(S), 회로블럭의 입력신호수(N), 회로블럭의 출력신호수(M), 및 입력신호의 i번째와 출력신호의 j번째의 해밍거리(Hij)를 이용한, ∑|Hij-S/2|/(N*M*S/2)에서 부여되는 평균 해밍거리 지수인 것을 특징으로 하는 논리회로의 설계방법.
  5. 제 4 항에 있어서,
    상기 지수와 알고리즘 후보와의 상관은, 회로블럭의 알고리즘 후보로서 AND-EOR계 후보, AND-OR계 후보, 그 이외의 후보 중, 어느것에 가장 가까운가의 명확성을 상기 지수와의 관계로 규정하는 멤버쉽 함수에 의해 부여되는 것을 특징으로 하는 논리회로의 설계방법.
  6. 제 2 항에 있어서,
    상기 제2처리는, 회로블럭 상호간에서의 신호의 일치성을 고려한 결합도와 회로블럭에 대한 통합 가부와의 상관에 기초하여, 통합해야 할 회로블럭을 그룹화하는 것을 특징으로 하는 논리회로의 설계방법.
  7. 제 2 항에 있어서,
    상기 제3처리는, 회로블럭의 그룹화에 의한 논리규모를 고려한 평가함수를 이용하는 것을 특징으로 하는 논리회로의 설계방법.
  8. 제 7 항에 있어서,
    상기 제3처리는, 회로블럭의 그룹화에 의한 논리의 변수의 수, 논리단수, 및 합성부하를 고려한 평가함수를 이용하는 것을 특징으로 하는 논리회로의 설계방법.
  9. 입력수단, 기억수단, 및 상기 입력수단으로부터의 입력정보를 이용하고 상기 기억수단을 이용하여 연산처리를 행하는 데이터 처리수단을 가지고,
    상기 입력수단은 하드웨어 기술언어에 의한 논리회로 기술 데이터를 입력 가능하며,
    상기 데이터 처리수단은, 상기 논리회로 기술 데이터에서 부여되는 회로블럭의 최적화 알고리즘 후보를 퍼지추론을 이용하여 판정하는 제1처리와,
    상기 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을 퍼지추론을 이용하여 그룹화하는 제2처리와,
    상기 제2처리에 의한 그룹화의 결과를 초기상태에 반영하여 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 제3처리와, 를 실행 가능한 것을 특징으로 하는 논리회로의 설계지원 시스템.
  10. 입력수단, 기억수단, 및 상기 입력수단으로부터의 입력정보를 이용하고 상기 기억수단을 이용하여 연산처리를 행하는 데이터 처리수단을 가지고,
    상기 입력수단은 하드웨어 기술언어에 의한 논리회로 기술 데이터를 입력 가능하며,
    상기 데이터 처리수단은, 상기 논리회로 기술 데이터에서 부여되는 회로블럭의 최적화 알고리즘 후보를, 회로블럭의 해밍거리를 고려하는 퍼지추론을 이용하여 판정하는 제1처리와,
    상기 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을, 회로블럭 상호간의 결합도를 고려하는 퍼지추론을 이용하여 그룹화하는 제2처리와,
    상기 제2처리에 의한 그룹화의 결과를 초기상태에 반영하여 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 제3처리와, 를 실행 가능한 것을 특징으로 하는 논리회로의 설계지원 시스템.
  11. 제 10 항에 있어서,
    상기 데이터 처리수단은, 상기 제1처리에 있어서, 회로블럭에서의 입출력 상태의 상위의 정도를 나타내는 해밍거리를 고려한 지수와 알고리즘 후보와의 상관에 기초하여 최적화 알고리즘 후보를 판정하는 것을 특징으로 하는 논리회로의 설계지원 시스템.
  12. 제 11 항에 있어서,
    상기 지수는, 회로블럭의 상태수(S), 회로블럭의 입력신호수(N), 회로블럭의 출력신호수(M), 및 입력신호의 i번째와 출력신호의 j번째의 해밍거리(Hij)를 이용한, ∑|Hij-S/2|/(N*M*S/2)에서 부여되는 평균 해밍거리 지수인 것을 특징으로 하는 논리회로의 설계지원 시스템.
  13. 제 12 항에 있어서,
    상기 지수와 알고리즘 후보와의 상관은, 회로블럭의 알고리즘 후보로서 AND-EOR계 후보, AND-OR계 후보, 그 이외의 후보 중, 어느것에 가장 가까운가의 명확성을 상기 지수와의 관계로 규정하는 멤버쉽 함수에 의해 부여되는 것을 특징으로 하는 논리회로의 설계지원 시스템.
  14. 제 10 항에 있어서,
    상기 데이터 처리수단은, 상기 제2처리에 있어서, 회로블럭 상호간에서의 신호의 일치성을 고려한 결합도와 회로블럭에 대한 통합 가부와의 상관에 기초하여, 통합해야 할 회로블럭을 그룹화하는 것을 특징으로 하는 논리회로의 설계지원 시스템.
  15. 제 10 항에 있어서,
    상기 데이터 처리수단은, 상기 제3처리에 있어서, 회로블럭의 그룹화에 의한논리규모를 고려한 평가함수를 이용하는 것을 특징으로 하는 논리회로의 설계지원 시스템.
  16. 제 15 항에 있어서,
    상기 데이터 처리수단은, 상기 제3처리에 있어서, 회로블럭의 그룹화에 의한 논리의 변수의 수, 논리단수, 및 합성부하를 고려한 평가함수를 이용하는 것을 특징으로 하는 논리회로의 설계지원 시스템.
  17. 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 회로블럭의 최적화 알고리즘 후보를 퍼지추론을 이용하여 판정하는 제1처리와,
    상기 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을 퍼지추론을 이용하여 그룹화하는 제2처리와,
    상기 제2처리에 의한 그룹화의 결과를 초기상태에 반영하여 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 제3처리를 실행시키는 논리회로의 설계지원 프로그램을 기록한 것을 특징으로 컴퓨터 판독 가능한 기록매체.
  18. 하드웨어 기술언어에 의한 논리회로 기술에서 부여되는 회로블럭의 최적화 알고리즘 후보를, 회로블럭의 해밍거리를 고려하는 퍼지추론을 이용하여 판정하는 제1처리와,
    상기 제1처리에서 판정된 최적화 알고리즘 후보의 공통인 회로블럭을, 회로블럭 상호간의 결합도를 고려하는 퍼지추론을 이용하여 그룹화하는 제2처리와,
    상기 제2처리에 의한 그룹화의 결과를 초기상태에 반영하여 복수의 회로블럭의 그룹화를 유전적 알고리즘에 의해 최적화하는 제3처리를 시행시키는, 논리회로의 설계지원 프로그램을 기록한 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
  19. 제 18 항에 있어서,
    상기 제1처리는, 회로블럭에서의 입출력 상태의 상위의 정도를 나타내는 해밍거리를 고려한 지수와 알고리즘 후보와의 상관에 기초하여 최적화 알고리즘 후보를 판정하는 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
  20. 제 19 항에 있어서,
    상기 지수는, 회로블럭의 상태수(S), 회로블럭의 입력신호수(N), 회로블럭의 출력신호수(M), 및 입력신호의 i번째와 출력신호의 j번째의 해밍거리(Hij)를 이용한, ∑|Hij-S/2|/(N*M*S/2)에서 부여되는 평균 해밍거리 지수인 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
  21. 제 20 항에 있어서,
    상기 지수와 알고리즘 후보와의 상관은, 회로블럭의 알고리즘 후보로서 AND-EOR계 후보, AND-OR계 후보, 그 이외의 후보 중, 어느것에 가장 가까운가의 명확성을 상기 지수와의 관계로 규정하는 멤버쉽 함수에 의해 부여되는 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
  22. 제 18 항에 있어서,
    상기 제2처리는, 회로블럭 상호간에서의 신호의 일치성을 고려한 결합도와 회로블럭에 대한 통합 가부와의 상관에 기초하여, 통합해야 할 회로블럭을 그룹화하는 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
  23. 제 18 항에 있어서,
    상기 제3처리는, 회로블럭의 그룹화에 의한 논리규모를 고려한 평가함수를 이용하는 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
  24. 제 23 항에 있어서,
    상기 제3처리는, 회로블럭의 그룹화에 의한 논리의 변수의 수, 논리단수, 및 합성부하를 고려한 평가함수를 이용하는 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
KR1020010049863A 2000-09-14 2001-08-20 논리회로의 설계방법, 논리회로의 설계지원 시스템, 및컴퓨터 판독 가능한 기록매체 KR20020021318A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000279734A JP3998904B2 (ja) 2000-09-14 2000-09-14 論理回路の設計方法、論理回路の設計支援システム、及びコンピュータ読取り可能な記録媒体
JPJP-P-2000-00279734 2000-09-14

Publications (1)

Publication Number Publication Date
KR20020021318A true KR20020021318A (ko) 2002-03-20

Family

ID=18764698

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010049863A KR20020021318A (ko) 2000-09-14 2001-08-20 논리회로의 설계방법, 논리회로의 설계지원 시스템, 및컴퓨터 판독 가능한 기록매체

Country Status (4)

Country Link
US (1) US6622292B2 (ko)
JP (1) JP3998904B2 (ko)
KR (1) KR20020021318A (ko)
TW (1) TWI229275B (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100579715B1 (ko) * 2002-09-16 2006-05-15 학교법인 인하학원 유전자 알고리즘을 이용한 영상의 적응적인 전처리 기법
JP4393450B2 (ja) * 2005-12-01 2010-01-06 株式会社東芝 論理回路モデル変換装置及び論理回路モデル変換プログラム
US7475368B2 (en) * 2006-01-20 2009-01-06 International Business Machines Corporation Deflection analysis system and method for circuit design
US8302042B2 (en) * 2006-07-24 2012-10-30 Oasys Design Systems Generating a convergent circuit design from a functional description using entities having access to the functional description and to physical design information
CN107885910B (zh) * 2017-10-23 2023-10-13 苏州大学 一种基于演化策略的近似电路逻辑综合优化方法
US11467851B1 (en) * 2019-11-21 2022-10-11 Synopsys, Inc. Machine learning (ML)-based static verification for derived hardware-design elements

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5146583A (en) * 1987-09-25 1992-09-08 Matsushita Electric Industrial Co., Ltd. Logic design system for creating circuit configuration by generating parse tree from hardware description language and optimizing text level redundancy thereof
JPH05242190A (ja) * 1992-03-02 1993-09-21 Toshiba Corp 論理回路設計支援装置
JPH06203097A (ja) * 1993-01-07 1994-07-22 Toshiba Corp 論理回路設計装置
JPH0991321A (ja) * 1995-09-28 1997-04-04 Fujitsu Ltd 論理回路の自動設計方法
KR19990057936A (ko) * 1997-12-30 1999-07-15 김영환 다중화기 방식의 필드-프로그래머블 게이트 어레이를 이용한 집적회로 설계를 위한 논리 함수 분할 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5040134A (en) * 1989-05-26 1991-08-13 Intel Corporation Neural network employing leveled summing scheme with blocked array
JPH0470906A (ja) 1990-07-04 1992-03-05 Hitachi Ltd 制御装置
JPH03265974A (ja) 1990-03-16 1991-11-27 Hitachi Commun Syst Inc 設計支援システム
JP3424997B2 (ja) * 1995-01-31 2003-07-07 富士通株式会社 回路設計装置
US6014506A (en) * 1995-10-31 2000-01-11 Vlsi Technology, Inc. Method and apparatus for improving engineering change order placement in integrated circuit designs
JP3265974B2 (ja) 1996-01-10 2002-03-18 三菱マテリアル株式会社 耐チッピング性のすぐれた表面被覆超硬合金製切削工具の製造法
US5673198A (en) * 1996-03-29 1997-09-30 Xilinx, Inc. Concurrent electronic circuit design and implementation
US5768479A (en) * 1996-09-17 1998-06-16 Cadence Design Systems, Inc. Circuit layout technique with template-driven placement using fuzzy logic
US6090151A (en) * 1997-07-01 2000-07-18 Motorola, Inc. Electronic device parameter estimator and method therefor
US6260178B1 (en) * 1999-03-26 2001-07-10 Philips Electronics North America Corporation Component placement machine step size determination for improved throughput via an evolutionary algorithm

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5146583A (en) * 1987-09-25 1992-09-08 Matsushita Electric Industrial Co., Ltd. Logic design system for creating circuit configuration by generating parse tree from hardware description language and optimizing text level redundancy thereof
JPH05242190A (ja) * 1992-03-02 1993-09-21 Toshiba Corp 論理回路設計支援装置
JPH06203097A (ja) * 1993-01-07 1994-07-22 Toshiba Corp 論理回路設計装置
JPH0991321A (ja) * 1995-09-28 1997-04-04 Fujitsu Ltd 論理回路の自動設計方法
KR19990057936A (ko) * 1997-12-30 1999-07-15 김영환 다중화기 방식의 필드-프로그래머블 게이트 어레이를 이용한 집적회로 설계를 위한 논리 함수 분할 방법

Also Published As

Publication number Publication date
US6622292B2 (en) 2003-09-16
US20020032894A1 (en) 2002-03-14
TWI229275B (en) 2005-03-11
JP2002092055A (ja) 2002-03-29
JP3998904B2 (ja) 2007-10-31

Similar Documents

Publication Publication Date Title
Miller Cartesian genetic programming: its status and future
Orlowska Incomplete information: Rough set analysis
US7003738B2 (en) Process for automated generation of design-specific complex functional blocks to improve quality of synthesized digital integrated circuits in CMOS using altering process
US7039882B2 (en) Technology dependent transformations for Silicon-On-Insulator in digital design synthesis
Salesi et al. TAGA: Tabu Asexual Genetic Algorithm embedded in a filter/filter feature selection approach for high-dimensional data
CN109409504A (zh) 一种数据处理方法、装置、计算机及存储介质
US6543037B1 (en) Delay estimation for restructuring the technology independent circuit
US6460166B1 (en) System and method for restructuring of logic circuitry
JPH0877221A (ja) 消費電力を低減する有限状態マシンを設計するシステム及び方法
KR20020021318A (ko) 논리회로의 설계방법, 논리회로의 설계지원 시스템, 및컴퓨터 판독 가능한 기록매체
US5856926A (en) Logic synthesis method and system with intermediate circuit files
US6782514B2 (en) Context-sensitive constraint driven uniquification and characterization of standard cells
JP3949286B2 (ja) テクノロジマッピング方法及び記憶媒体
US6868535B1 (en) Method and apparatus for optimizing the timing of integrated circuits
Cagnoni et al. Evolving binary classifiers through parallel computation of multiple fitness cases
Lee et al. i TPlace: machine learning-based delay-aware transistor placement for standard cell synthesis
Midelfart et al. A rough set framework for learning in a directed acyclic graph
JP3934586B2 (ja) 情報分類システム及びプログラム
US6820257B2 (en) Optimized production of hardware from source programs involving multiplications
Chang et al. Efficient Boolean division and substitution using redundancy addition and removing
KR20040028081A (ko) 유전자 알고리즘에 있어서 효율적인 적응도 함수 계산을위한 데이터 분류 방법
CN113255257B (zh) 基于工艺库的s盒电路的优化方法及系统
Banerji Computer simulation codes for the Quine-McCluskey method of logic minimization
JP3412731B2 (ja) Lut型fpgaにマッピングされた論理関数の自由度を用いた回路最適化方法
CN110163352B (zh) 电路规划结果产生方法与系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application