KR20110081961A - 회로 설계 방법, 회로 설계 시스템 및 기록 매체 - Google Patents

회로 설계 방법, 회로 설계 시스템 및 기록 매체 Download PDF

Info

Publication number
KR20110081961A
KR20110081961A KR1020117007390A KR20117007390A KR20110081961A KR 20110081961 A KR20110081961 A KR 20110081961A KR 1020117007390 A KR1020117007390 A KR 1020117007390A KR 20117007390 A KR20117007390 A KR 20117007390A KR 20110081961 A KR20110081961 A KR 20110081961A
Authority
KR
South Korea
Prior art keywords
information
port
modules
instance
module
Prior art date
Application number
KR1020117007390A
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 KR20110081961A publication Critical patent/KR20110081961A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design

Landscapes

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

Abstract

복수의 모듈을 서로 접속하기 위한 회로 설계 방법은 복수의 모듈의 입력 포트 및 출력 포트를 포함하는 포트 정보를 취득하는 단계와, 복수의 모듈 중, 동일 기능을 가지는 복수의 인스턴스를 구비하는 모듈이 있음을 나타내는 인스턴스 정보를 취득하는 단계와, 포트 정보 및 상기 인스턴스 정보에 기초하여, 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 단계를 포함한다.

Description

회로 설계 방법, 회로 설계 시스템 및 기록 매체{CIRCUIT DESIGN METHOD, CIRCUIT DESIGN SYSTEM, AND RECORDING MEDIUM}
본 발명은 회로 설계 방법, 회로 설계 시스템 및 기록 매체, 특히, 회로 설계 도구를 이용한 복수의 모듈의 상호간 접속의 자동 생성에 관한 것이다.
최근, 집적 회로(예를 들어, ASIC(Application Specific Integrated Circuit))의 미세화ㆍ고집적화가 진전되어, 1개의 반도체 칩의 회로 규모가 커져 가고 있다. 이와 같은 대규모 회로 설계에 대응하기 위해, 회로를 기능 블럭(모듈)별로 분할하고, 분할된 각각의 모듈을 복수의 설계자로 나누어 설계하는 것이 행해지고 있다. 설계된 개개의 모듈은 그 후에 소정의 대응 관계에 따라 서로 접속되고, 1개의 상위 모듈을 설계할 수 있다. 마찬가지로 하여, 설계된 개개의 상위 모듈은 그 후에 소정의 대응 관계에 따라 서로 접속되고, 더 상위의 1개의 모듈을 설계할 수 있다. 이렇게 하여, 순서대로 상위 계층을 생성하고, 최종적으로 반도체 칩 전체의 회로 설계를 달성할 수 있다.
이와 같은 회로 설계를 달성하기 위한 도구로서는, 현재, Verilog-HDL이나 VHDL 등의 언어를 이용하여 행하는 RTL(Register Transfer Level) 설계가 주류이기는 하지만, 최근, RTL 보다도 높은 추상 레벨 모델로부터 설계하는 고위 설계(고위 합성)이 채용되도록 되어 가고 있다. 고위 설계에 의하면, 소정의 처리 흐름에 따라 기능만을 알고리즘 기술하고, 해당 알고리즘 기술로부터 고위 합성 도구(거동 합성 도구)를 이용하여 RTL 모델을 자동 생성할 수 있다. 또한, 거동 합성 도구로서는, 예를 들어, NEC 시스템테크놀로지 사가 제공하는 「사이버 워크 벤치」(CWB : Cyber Work Bench)가 알려져 있다.
그런데, 상술한 회로 설계에 있어서, 설계된 개개의 모듈을 서로 접속할 경우, 각 모듈이 서로 상이한 것이면, 모듈의 입출력 포트 명을 소정의 대응 관계에 따라 결정하는 것에 의해, 해당 입출력 포트 명만의 정보에 기초하여, 모듈끼리의 접속을 자동으로 행할 수 있다. 그러나, 접속해야 할 모듈 사이에서 동일 모듈이 복수개 있을 경우에는, 동일 모듈 사이에서는 통상, 입출력 포트 명은 동일하기 때문에, 입출력 포트 명만의 정보로는 모듈끼리의 접속을 자동으로 행하는 것은 할 수 없고, 사람의 수작업으로 모듈끼리의 접속을 행하지 않을 수 없다. 이와 같은 사람 수작업에 있어서는, 인위적 접속 실수는 피할 수 없고, 모델의 품질이 저하할 위험이 있다. 또한, 접속 실수 있은 경우, 실수를 그 장소에서 발견하는 것은 어렵고, 예를 들어, 윤리 검증의 스텝에서 최초로 실수를 발견하는 일이 있어서, 설계 생산성이 저하한다고 하는 문제도 있다.
특히, 반도체 시험 장치에 이용되는 ASIC에서는, 피시험 IC의 시험을 행하기 위해, 타이밍 발생기, 패턴 발생기, 파형 정형기 및 논리 비교기 등의 몇 개인가의 기능 블럭이 합쳐져서 1칩화 되어 있고, 그 중에서도, 타이밍 발생기, 패턴 발생기 및 파형 정형기에 대해서는, 1개의 반도체 시험 장치 시스템 내에 1000을 초과하는 수의 동일 기능 블럭을 설치할 필요가 있기 때문에, 1칩 내에 동일 기능 블럭을 복수개 설치하는 것이 요구된다. 따라서, 특히, 반도체 시험 장치에 이용되는 ASIC에서는, 상기 문제를 해결하는 것은 중요하다.
이에 따라, 본 발명의 목적은 상기 과제를 해결할 수 있는 회로 설계 방법을 제공하는 것을 목적으로 한다. 이 목적은 특허청구범위에서의 독립항에 기재된 특징의 조합에 의해 달성된다. 또한, 종속항은 본 발명의 한층 더 유리한 구체적인 예를 규정한다.
본 발명에 따른 회로 설계 방법의 일 양태는 복수의 모듈을 서로 접속하기 위한 회로 설계 방법으로서, 상기 복수의 모듈의 입력 포트 및 출력 포트를 포함하는 포트 정보를 취득하는 단계와, 상기 복수의 모듈 중, 동일 기능을 가지는 복수의 인스턴스를 구비하는 모듈이 있음을 나타내는 인스턴스 정보를 취득하는 단계와, 상기 포트 정보 및 상기 인스턴스 정보에 기초하여, 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 단계를 포함한다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 상기 인스턴스 정보는 복수의 인스턴스의 개수를 나타내는 인스턴스 개수 정보를 포함할 수 있다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 상기 인스턴스 정보는 복수의 인스턴스를 각각 식별하는 인스턴스 식별 정보를 포함할 수 있다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 상기 대응시키는 단계는 상기 인스턴스 정보에 기초하여 상기 포트 정보로부터 가짜 포트 정보를 생성하고, 이 가짜 포트 정보에 기초하여 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 것을 포함할 수 있다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 소정의 모듈의 출력 포트가 상기 복수의 인스턴스의 각 입력 포트에 공통으로 접속되는 것을 나타내는 공통 접속 정보를 취득하는 단계를 더 포함하고, 상기 대응시키는 단계는 상기 인스턴스 정보 및 상기 공통 접속 정보에 기초하여 상기 포트 정보로부터 가짜 포트 정보를 생성하고, 이 가짜 포트 정보에 기초하여 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 것을 포함할 수 있다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 상기 포트 정보를 취득하는 단계 이전에, 상기 복수의 모듈을 서로 접속하여 생성되는 상위 모듈에 관한 정보를 취득하는 단계를 더 포함할 수 있다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 상기 대응시키는 단계 이후에, 상기 대응시킨 접속 정보를 접속 정보 데이터베이스로서 기억하는 단계를 더 포함할 수 있다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 상기 대응시키는 단계 이후에, 상기 복수의 모듈을 서로 접속하여 생성되는 상위 모듈의 소스 파일을 생성하는 단계를 더 포함할 수 있다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 상기 대응시키는 단계 이후에, 적어도, 인스턴스 명을 나타내는 정보, 상기 포트 정보, 및 상기 복수의 모듈을 서로 접속하기 위한 입력 포트와 출력 포트의 접속 정보를 표시하는 단계를 더 포함할 수 있다.
또한, 본 발명에 따른 회로 설계 방법의 일 양태에 의하면, 반도체 시험 장치에 이용되는 반도체 디바이스의 회로 설계에 적용될 수 있다.
본 발명에 따른 회로 설계 시스템의 일 양태는 복수의 모듈을 서로 접속하기 위한 회로 설계 시스템으로서, 상기 복수의 모듈의 입력 포트 및 출력 포트를 포함하는 포트 정보를 취득하는 포트 정보 취득 수단과, 상기 복수의 모듈 중, 동일 기능을 가지는 복수의 인스턴스를 구비하는 모듈이 있음을 나타내는 인스턴스 정보를 취득하는 인스턴스 정보 취득 수단과, 상기 포트 정보 및 상기 인스턴스 정보에 기초하여, 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 대응 수단을 포함한다.
또한, 본 명세서에서, 수단이라 함은 단순하게 물리적 수단을 의미하는 것이 아니라, 그 수단이 가지는 기능을 소프트웨어에 의해 실현하는 경우도 포함한다. 또한, 1개의 수단이 가지는 기능이 2개 이상의 물리적 수단에 의해 실현되어도 좋고, 2개 이상의 수단의 기능이 1개의 물리적 수단에 의해 실현되어도 좋다.
본 발명에 따른 프로그램을 저장한 컴퓨터 판독 가능한 기록 매체의 일 양태는 복수의 모듈을 서로 접속하기 위한 것으로서, 상기 복수의 모듈의 입력 포트 및 출력 포트를 포함하는 포트 정보를 취득하는 단계와, 상기 복수의 모듈 중, 동일 기능을 가지는 복수의 인스턴스를 구비하는 모듈이 있음을 나타내는 인스턴스 정보를 취득하는 단계와, 상기 포트 정보 및 상기 인스턴스 정보에 기초하여, 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 단계를 실행시킨다.
도 1은 본 실시 형태에 있어서 서로 접속해야 할 복수의 모듈의 일 양태를 도시하는 도면이다.
도 2는 도 1의 복수의 모듈을 서로 접속한 상태를 도시하는 도면이다.
도 3은 도 1 및 도 2에 대한 상위 계층의 모듈의 일 양태를 도시하는 도면이다.
도 4는 본 실시 형태에 따른 회로 설계 시스템의 기능 구성을 도시하는 도면이다.
도 5는 본 실시 형태에 따른 회로 설계 시스템의 하드웨어 구성을 도시하는 블럭도이다.
도 6은 본 실시 형태에 따른 회로 설계 방법의 개략을 도시하는 도면이다.
도 7은 도 6의 STEP 100을 설명하는 도면이다.
도 8은 도 6의 STEP 102를 설명하는 도면이다.
도 9는 도 6의 STEP 102를 설명하는 도면이다.
도 10은 도 6의 STEP 104를 설명하는 도면이다.
도 11은 도 6의 STEP 106을 설명하는 도면이다.
도 12는 도 6의 STEP 108을 설명하는 도면이다.
도 13은 본 실시 형태에 따른 상위 모듈 소스 파일의 일례를 도시하는 도면이다.
도 14는 본 실시 형태에 따른 접속 정보 데이터베이스의 표시예를 도시하는 도면이다.
도 15는 본 실시 형태에 따른 회로 설계의 적용예를 도시하는 도면이다.
이하, 도면을 참조하면서 발명의 실시 형태를 통해 본 발명을 설명하지만, 이하의 실시 형태는 특허청구범위에 따른 발명을 한정하는 것이 아니고, 또한, 실시 형태 중에서 설명되어 있는 특징의 조합 전부가 발명의 해결 수단에 필수라고는 한정되지 않는다.
본 실시 형태에 따른 회로 설계 도구는 기능별로 분할된 복수의 모듈을 서로 접속하고, 1개의 상위 모듈을 자동 생성한다. 또한, 본 실시 형태에 따른 회로 설계 도구는 소정의 프로그램 언어를 따르는 프로그램을 자동 생성하는 기능을 구비하는 소프트웨어에 대해 적용할 수 있다. 이하, 프로그램 언어로서, NEC 시스템테크놀로지 사가 제공하는 「사이버 워크 벤치」의 BDL(Behavioral Description Language) 언어를 이용한 예를 나타낸다.
(1) 본 실시 형태에서 처리하는 모듈
우선, 도 1 내지 도 3을 참조하여, 본 실시 형태에서 처리하는 모듈에 대해 설명한다. 도 1 및 도 2가 본 실시 형태에서 서로 접속하는 복수의 모듈의 일 양태를 도시하고, 도 1이 복수의 모듈을 서로 접속하기 전의 상태, 도 2가 복수의 모듈을 서로 접속한 후의 상태를 도시하고 있다. 도 3은 도 1 및 도 2에 대한 상위 계층의 모듈의 일 양태를 도시하는 도면이다.
도 1에 도시한 바와 같이, 모듈(모듈 명 : model_abcd)(100)에는, 복수의 모듈(모듈 명 : model_a, model_b, model_c, model_d)(110, 120, 130, 140)이 설치되어 있다. 모듈(110, 120, 130, 140)은 모듈(100)을 기능별로 세분화한 것이며, 양자의 관계에 있어서, 전자를 하위 모듈(또는 하위 계층), 후자를 상위 모듈(또는 상위 계층)이라고 칭할 수 있다.
본 실시 형태에 의하면, 도 1에 도시한 바와 같이, 상위 모듈(100)에 속하는 복수의 하위 모듈(110, 120, 130, 140)을 각각 설계하고, 본 실시 형태에 따른 회로 설계 도구를 사용하여 복수의 하위 모듈(110, 120, 130, 140)을 서로 접속하도록 대응시키고, 도 2에 도시한 바와 같이 1개의 상위 모듈(100)을 자동 생성할 수 있다. 또한, 이와 같이 하여 자동 생성된 모듈(100)은 예를 들어, 도 3에 도시한 바와 같이, 다른 모듈(102)과 서로 접속하도록 대응시키고, 또한, 상위 1개의 모듈(104)을 생성할 수 있다. 이와 같이 하여, 순서대로 상위 계층을 생성하고, 최종적으로 반도체 칩 전체의 회로 설계를 달성한다.
각 하위 모듈(110, 120, 130, 140)은 데이터의 송수신에 사용되는 포트를 가진다. 포트는 입력 포트 및 출력 포트 외에, 기준 클럭 포트나 기준 리셋 포트를 포함할 수 있다. 도 1에 도시하는 예에서는, 하위 모듈(110)은 입력 포트(포트 정보 : i_a1, i_a2) 및 출력 포트(포트 명 : a, b_1, b_2)를 가지고, 하위 모듈(120)은 입력 포트(포트 명 : a, b) 및 출력 포트(포트 정보 : c)를 가지고, 하위 모듈(130)은 입력 포트(포트 정보 : c) 및 출력 포트(포트 정보 : d)를 가지고, 하위 모듈(140)은 입력 포트(포트 정보 : d_1, d_2) 및 출력 포트(포트 정보 : o_d1, o_d2)를 가진다. 또한, 기준 클럭 포트 및 기준 리셋 포트와 같이, 각 하위 모듈에 공통으로 접속되는 것으로, 모듈 사이의 접속에는 관계되지 않는 것에 대해서는 도 1 내지 도 3에서는 생략하고 있다.
포트에는 포트 정보(포트 명)가 관계되어 있다. 개개의 하위 모듈의 설계에 있어서는, 상이한 데이터를 송수신하는 것에 대해서는 각각 개별적으로 포트가 설치되고, 또한, 포트 정보에 대해서도 상이한 명칭이 붙여진다.
또한, 복수의 하위 모듈(110, 120, 130, 140)은 신호의 입력 측으로부터 출력 측에 걸쳐서 순서대로 배열되고, 인접하는 모듈 사이의 입출력 포트끼리가 소정의 대응 관계에 따라 접속되고, 이것에 의해 복수의 하위 모듈이 서로 접속된다. 또한, 가장 상류 측의 하위 모듈(110)의 입력 포트(포트 정보 : i_a1, i_a2)는 상위 모듈(100)의 입력 포트에 대응하고, 가장 하류 측의 하위 모듈(140)의 출력 포트(포트 정보 : o_d1, o_d2)는 상위 모듈(100)의 출력 포트에 대응한다.
도 1에 도시한 바와 같이, 복수의 하위 모듈의 적어도 1개는 동일 기능을 가지는 복수의 인스턴스를 가진다. 여기서, 인스턴스라 함은 동일 기능을 가지는 모듈이 복수개 있는 경우의 각각을 특정하기 위한 것이며, 이와 같이 동일 기능을 가지는 모듈을 복수로 전개하는 것을 인스턴스 전개라고 칭할 수 있다.
도 1에 도시하는 예에서는, 모듈(120)이 복수의 인스턴스(120A, 120B)를 가지고, 모듈(130)이 복수의 인스턴스(130A, 130B)를 가진다. 인스턴스 전개된 복수의 모듈(120A, 120B)(또는 130A, 130B)은 각각 동일한 포트를 가지고, 동일 포트 정보가 붙여져 있다. 도 1에 도시하는 예에서는, 모듈(120, 130)이 복수의 인스턴스를 가지고, 이것에 대해 모듈(110, 140)은 각각 1개의 인스턴스를 가진다고 말할 수 있다. 또한, N개의 모듈이 있을 경우에, 인스턴스 전개되는 모듈은 1번째 또는 N번째의 적어도 1개의 모듈이어도 좋고, 2번째 ~ (N-1)번째의 적어도 1개의 모듈이어도 좋고(도 1에 도시하는 예가 해당한다), 그것들의 조합이어도 좋다.
또한, 도 1 ~ 도 3에 도시하는 모듈의 양태는 일례에 불과하고, 전체 모듈의 개수, 인스턴스 전개되는 모듈의 개수, 인스턴스 전개되는 경우의 복수의 인스턴스의 개수, 각 모듈의 포트 수 등은 상술한 예에 한정되는 것은 아니다.
(2) 본 실시 형태에 따른 회로 설계 시스템의 개요
다음으로, 도 4 및 도 5를 참조하여, 본 실시 형태에 따른 회로 설계 시스템의 개요를 설명한다. 여기서, 도 4는 본 실시 형태에 따른 회로 설계 시스템의 기능 구성을 도시하는 도면이다. 또한, 도 5는 본 실시 형태에 따른 회로 설계 시스템의 하드웨어 구성을 도시하는 블럭도이다.
도 4에 도시하는 바와 같이, 회로 설계를 행하기 위한 프로그램이 인스톨된 회로 설계 시스템(200)은 주된 구성으로서, 회로 설계의 처리를 제어하는 제어 수단(210)과, 회로 설계의 처리에 필요한 정보를 기억하기 위한 기억 수단(230)을 구비한다.
회로 설계 시스템(200)에는, 예를 들어, 도 5에 도시한 바와 같은 CPU(201), ROM(202), RAM(203), 외부 기억 장치(204), 유저 인터페이스(205), 디스플레이(206), 프린터(207) 및 통신 인터페이스(208)를 구비하는 범용의 컴퓨터를 적용할 수 있다. 회로 설계 시스템(200)은 단일 컴퓨터로 구성되는 것이어도 좋고, 네트워크 상에 분산된 복수의 컴퓨터로 구성되는 것이어도 좋다.
회로 설계 시스템(200)은 CPU(201)가 ROM(202), RAM(203), 외부 기억 장치(204) 등에 기억된, 또는 통신 네트워크를 통해 다운로드된 소정의 프로그램(본 실시 형태에 따른 회로 설계 처리를 규정한 프로그램)을 실행하는 것에 의해, 회로 설계 시스템(200)을 후술하는 각종 기능 실현 수단(도 4 참조) 또는 각종 스텝으로서 기능시킨다.
즉, 도 4에 도시하는 제어 수단(210)은 주된 구성으로서, 상위 모듈 정보 취득 수단(212), 포트 정보 취득 수단(214), 인스턴스 정보 취득 수단(216), 공통 접속 정보 취득 수단(218), 입력 포트 및 출력 포트 대응 수단(220), 상위 모듈 소스 파일 생성 수단(222), 소정 정보 표시 수단(224)을 구비한다. 각종 기능 실현 수단은 기억 수단(230)에 접속되어 있고, 이것에 의해 상기 각 수단에 의해 처리된 회로 설계의 처리에 필요한 정보를 기억 수단(230)에 기억하거나, 기억 수단(230)으로부터 판독해낼 수 있다. 각종 기능 실현 수단에 대한 설명은 후술하는 회로 설계 방법의 각종 스텝에 대한 설명을 참조할 수 있다.
(3) 본 실시 형태에 따른 회로 설계 시스템을 이용한 회로 설계 방법
다음으로, 도 6 ~ 도 14를 참조하여, 본 실시 형태에 따른 회로 설계 방법의 구체적인 예에 대해 설명한다. 본 실시 형태에 따른 회로 설계 방법은 상술한 회로 설계 시스템(200)(도 4 및 도 5 참조)을 이용하여 행할 수 있다. 또한, 후술하는 플로우차트에서의 각 스텝(부호가 붙여져 있지 않은 부분적인 스텝을 포함)은 처리 내용에 모순을 발생시키지 않는 범위에서 임의로 순서를 변경하거나 병렬로 실행할 수 있다.
여기서, 도 6은 본 실시 형태에 따른 회로 설계 방법의 개략을 도시하는 도면이며, 도 7 ~ 도 14는 본 실시 형태에 따른 회로 설계 방법의 각 스텝에서의 상세한 것을 설명하기 위한 도면이다. 이하, 도면을 참조하여 설명하는 처리는 제어 수단(210)(예를 들어, CPU(201))의 제어에 기초하여, 기억 수단(230)(예를 들어, RAM(203))으로부터 판독해낸 소정의 프로그램에 규정된 스텝을 실행하는 것에 의해 실현할 수 있다.
우선, 도 6 및 도 7에 도시하는 바와 같이, 상위 모듈 정보 취득 수단(212)에 의해, 생성되는 상위 모듈(100)에 대한 필요한 정보를 취득한다(STEP 100).
예를 들어, 유저가 회로 설계를 행할 때에, 디스플레이(206)에 소정의 메뉴 화면이 표시되고, 해당 메뉴 화면으로부터 STEP 100의 처리에 개시를 촉구하는 입력을 행하는 것에 의해, STEP 100의 처리를 개시하여도 좋다. 또한, 디스플레이(206)에, 도 6에 도시하는 STEP 100 ~ 110의 처리에 대응하는 복수의 아이콘이 표시되어 있고, 이 표시로부터 STEP 100의 처리에 대응하는 아이콘을 클릭하는 것에 의해 입력을 행하여도 좋다. 또한, 상술한 예시는 이 스텝에 한정하는 것이 아니고, 다른 스텝에도 적용할 수 있다.
STEP 100의 처리를 선택하면, 도 7에 도시하는 바와 같이, 상위 모듈에 대해 필요한 정보의 입력을 촉구하는 상위 모듈 설정 화면(300)이 디스플레이(206)에 표시된다. 상위 모듈에 대한 필요한 정보로서는, 도 7에 도시하는 바와 같이, 예를 들어, 모듈 명, 기준 클럭 정보(Mater Clock), 기준 리셋 정보(Master Reset) 등이 열거된다. 본 실시 형태에서는, 도 7에 도시하는 바와 같이, 각각의 란에, model_abcd, clk, rst로 입력한다. 입력을 종료하였으면, 설정 종료의 아이콘을 클릭하고, 다음 스텝으로 진행할 수 있다. 또한, 상위 모듈 정보 취득 수단(212)에 의해 취득된 정보는 후술하는 스텝에서 판독해내기 위해 기억 수단(230)에 기억시켜 둘 수 있다.
다음으로, 도 6 및 도 8에 도시하는 바와 같이, 포트 정보 취득 수단(214)에 의해, 하위 모듈(110, 120, 130, 140)의 포트 정보를 취득한다(STEP 102).
STEP 102의 처리를 선택하면, 도 8에 도시하는 바와 같이, 하위 모듈에 대해 필요한 정보의 입력을 촉구하는 하위 모듈 설정 화면(310)이 디스플레이(206)에 표시된다. 하위 모듈 설정 화면(310)에는, 상위 모듈(100)의 생성을 위해 필요한 모든 하위 모듈(model_a, model_b, model_c, model_d)(110, 120, 130, 140)의 일람이 표시된다. 그리고, 일람 표시된 하위 모듈을 1개씩 선택하여, 각 하위 모듈의 소스 파일(312)을 열고, 이 소스 파일(312)의 데이터를 기억 수단(230)(예를 들어, RAM(203))에 판독해 넣는다. 이와 같은 데이터의 판독은 예를 들어, 도 9에 도시하는 플로우차트에 따라 행하여도 좋다. 즉, 우선, 설정 화면(310)으로부터 소정의 하위 모듈을 선택하고, 소스 파일(312)을 연다(STEP 200). 소스 파일(312)을 열면, 이 파일에 기술되어 있는 프로그램을 선두로부터 1행씩 판독하고(STEP 202), 입력 포트(in 선언), 출력 포트(out 선언), 기준 클럭(클럭 선언), 기준 리셋(reset 선언)의 기술을 인식하고(STEP 204 ~ 210), 기술이 존재하는 경우에는 각 정보를 취득한다(STEP 212). 최종적으로 소스 파일(312)의 모든 기술을 판독하는 것이 종료되면(STEP 214), 소스 파일(312)의 데이터의 판독은 종료된다. 또한, 포트 정보 취득 수단(214)에 의해 취득된 정보는 후술하는 스텝에서 판독해내기 위해 기억 수단(230)에 기억시켜 둘 수 있다.
다음으로, 도 6 및 도 10에 도시하는 바와 같이, 인스턴스 정보 취득 수단(216) 및 공통 접속 정보 취득 수단(218)에 의해, 하위 모듈(110, 120, 130, 140)의 인스턴스 정보 및 공통 접속 정보를 취득한다(STEP 104).
STEP 104의 처리를 선택하면, 도 10에 도시하는 바와 같이, 하위 모듈에서 인스턴스 정보 및 공통 접속 정보의 입력을 촉구하는 하위 모듈 설정 화면(314)이 디스플레이(206)에 표시된다. 하위 모듈 설정 화면(314)에는, 상위 모듈(100)의 생성을 위해 필요한 모든 하위 모듈(model_a, model_b, model_c, model_d)(110, 120, 130, 140)의 일람이 표시된다. 그리고, 일람 표시된 하위 모듈 중, 복수의 인스턴스를 구비하는 모듈(120, 130)을 1개씩 선택한다. 우선, 도 10에 도시하는 바와 같이 모듈(model_b)(120)을 선택하고, 하위 모듈 정보 표시 화면(316)을 연다. 하위 모듈 정보 표시 화면(316)에는, STEP 102에 의해 취득한 하위 모듈(120)의 포트 정보 및 데이터의 종류를 나타내는 데이터 정보 등과 함께, 인스턴스 정보 입력 영역(318) 및 공통 접속 정보 입력 영역(320)이 표시되어 있다. 유저는 하위 모듈에 관한 포트 정보나 미리 결정된 설계 룰 등으로부터, 인스턴스 정보 입력 영역(318)에 인스턴스 정보를 입력하고, 또한 공통 접속 정보 입력 영역(318)에 공통 접속 정보를 입력한다.
여기서, 인스턴스 정보라 함은 적어도, 동일 기능을 가지는 복수의 인스턴스를 구비하는 모듈이 있음을 나타내는 정보이며, 복수의 인스턴스의 개수를 나타내는 인스턴스 개수 정보나, 복수의 인스턴스를 각각 식별하는 인스턴스 식별 정보를 포함할 수 있다. 도 10에 도시하는 예에서는, 인스턴스 정보 입력 영역(318)의 「인스턴스 정보」의 항목에서, 인스턴스의 개수에 따른 복수의 셀의 각각에, 복수의 인스턴스를 각각 식별하는 정보(예를 들어, 숫자, 기호 또는 문자열)를 입력한다. 예를 들어, 모듈(120)에서는, 인스턴스는 2개이므로, 1개째의 셀에 인스턴스를 식별하는 정보 「1」을 입력하고, 2개째의 셀에 인스턴스를 식별하는 정보 「2」를 입력한다. 이와 같이 하여, 인스턴스 개수 정보 및 인스턴스 식별 정보의 양쪽을 동시에 입력할 수 있다.
인스턴스 식별 정보로서 입력하는 정보는 인스턴스 전개되는 모듈(120)보다도 상류 측의 모듈(110)의 출력 포트의 포트 정보(예를 들어, 「신호명_전개값」), 또는, 인스턴스 전개되는 모듈(130)보다도 하류 측의 모듈(140)의 입력 포트의 포트 정보(예를 들어, 「신호명_전개값」)에 기초하여 결정할 수 있다. 즉, 도 2에 도시하는 바와 같이, 모듈(110)의 출력 포트는 인스턴스 전개되는 복수의 모듈(120A, 120B)의 각각에 대응하는 포트(포트 정보 : b_1, b_2)를 가지고 있고, 후술하는 포트끼리의 대응에 있어서 가짜 포트 정보가 서로 일치하도록, 미리 인스턴스 식별 정보로서 입력하는 정보를 포트 정보의 전개값(예를 들어, 언더바의 뒤에 이어지는 정보 「1」및「2」인 것이다)과 일치시켜도 좋다. 또한, 마찬가지로, 모듈(140)의 입력 포트는 인스턴스 전개되는 복수의 모듈(130A, 130B)의 각각에 대응하는 포트(포트 정보 : d_1, d_2)를 가지고 있고, 포트끼리의 대응에 있어서 가짜 포트 정보가 서로 일치하도록, 미리 인스턴스 식별 정보로서 입력하는 정보를 포트 정보의 전개값과 일치시켜도 좋다. 또한, 인스턴스 식별 정보는 후술하는 포트끼리의 대응을 꾀할 수 있다면, 반드시 포트 정보의 전개값과 일치시켜야 한다는 제약은 없고, 포트 정보의 전개값과는 상이한 숫자, 기호 또는 문자열을 입력하여도 상관없다.
다른 한편으로, 공통 접속 정보라 함은 소정의 모듈의 출력 포트가 복수의 인스턴스의 각 입력 포트에 공통으로 접속되는 것을 나타내는 정보이다. 즉, 도 2에 도시하는 바와 같이, 모듈(110)의 출력 포트(포트 정보 : a)가 인스턴스 전개되는 복수의 모듈(120A, 120B)의 각 입력 포트(포트 정보 : a)에 공통으로 접속되는 것인 경우에는, 공통 접속 정보 입력 영역(320)의 「공통 접속 정보」의 항목의 포트 정보 a에 대응하는 셀에 소정의 정보(예를 들어, 숫자, 기호 또는 문자열)를 입력한다. 도 10에 도시하는 예에서는, 「공통 접속 정보」의 항목의 포트 정보 a에 대응하는 셀에 「1N」이라고 입력한다. 공통 접속 정보로서 입력하는 정보는 그 포트가 공통 접속되는 것이라는 점이 식별되면 좋고, 상술한 문자열에 한정되는 것은 아니다.
또한, 인스턴스 정보 취득 수단(216) 및 공통 접속 정보 취득 수단(218)에 의해 취득된 정보는 후술하는 스텝에서 판독해내기 위해 기억 수단(230)에 기억시켜 둘 수 있다.
또한, STEP 104에서는, 인스턴스 정보 및 공통 접속 정보의 양쪽을 취득하는 예를 설명하였지만, 소정의 모듈의 출력 포트가 복수의 인스턴스의 각 입력 포트에 공통으로 접속되는 양태가 존재하지 않는 경우에는, 공통 접속 정보를 취득하는 것을 요구하지 않는다. 이 경우에는, 인스턴스 정보 취득 수단(216)에 의해, 하위 모듈(110, 120, 130, 140)의 인스턴스 정보를 취득하면 좋다.
다음으로, 도 6 및 도 11에 도시하는 바와 같이, 입력 포트 및 출력 포트 대응 수단(220)에 의해, 하위 모듈(110, 120, 130, 140)의 입력 포트와 출력 포트를 대응시킨다(STEP 106).
도 11은 STEP 106을 더욱 상세하게 설명하기 위한 플로우차트이다. 우선, STEP 106의 처리를 선택하면, 입력 포트 및 출력 포트 대응 수단(220)이 미리 기억 수단(230)에 기억시켜 둔 필요한 정보를 판독해내고, STEP 104에서 취득한 인스턴스 정보 및 공통 접속 정보에 기초하여, STEP 102에서 취득한 포트 정보로부터 가짜 포트 정보를 생성한다(STEP 302).
표 1은 입력 포트에 관한 포트 정보로부터 가짜 포트 정보를 생성한 입력 정보 데이터베이스를 나타내고, 표 2는 출력 포트에 관한 포트 정보로부터 가짜 포트 정보를 생성한 출력 정보 데이터베이스를 나타낸다.
입력 정보 데이터베이스
모듈 명 인스턴스 명 포트 정보 가짜 포트 정보 설명
model_a
INST_model_a
i_a1 i_a1 가짜 포트 정보는 포트 정보 그대로
i_a2 i_a2



model_b

INST_model_b_1 a a 가짜 포트 정보는 공통 접속 정보에 기초하여 포트 정보 그대로
b b_1 가짜 포트 정보는 인스턴스 정보에 기초하여 변경
INST_model_b_2 a a 가짜 포트 정보는 공통 접속 정보에 기초하여 포트 정보 그대로
b b_2 가짜 포트 정보는 인스턴스 정보에 기초하여 변경

model_c
INST_model_c_1 c c_1 가짜 포트 정보는 인스턴스 정보에 기초하여 변경
INST_model_c_2 c c_2 가짜 포트 정보는 인스턴스 정보에 기초하여 변경
model_d
INST_model_d
d_1 d_1 가짜 포트 정보는 포트 정보 그대로
d_2 d_2
출력 정보 데이터베이스
모듈 명 인스턴스 명 포트 정보 가짜 포트 정보 설명

model_a

INST_model_a
a a
가짜 포트 정보는 포트 정보 그대로
b_1 b_1
b_2 b_2
model_b
INST_model_b_1 c c_1 가짜 포트 정보는 인스턴스 정보에 기초하여 변경
INST_model_b_2 c c_2 가짜 포트 정보는 인스턴스 정보에 기초하여 변경
model_c
INST_model_c_1 d d_1 가짜 포트 정보는 인스턴스 정보에 기초하여 변경
INST_model_c_2 d d_2 가짜 포트 정보는 인스턴스 정보에 기초하여 변경
model_d
INST_model_d
o_d1 o_d1 가짜 포트 정보는 포트 정보 그대로
o_d2 o_d2
표 1 및 표 2로부터 알 수 있는 바와 같이, 가짜 포트 정보의 생성에 있어서는, 우선, 인스턴스 전개하고 있지 않은 것에 관해서는, 인스턴스 정보 및 공통 접속 정보도 부여되어 있지 않으므로, 포트 정보와 동일한 정보가 가짜 포트 정보로서 표시된다(가짜 포트 정보 : i_a1, i_a2, d_1, d_2, o_d1, o_d2). 다음으로, 인스턴스 전개한 것에 관해서는, 인스턴스 정보에 기초하여 가짜 포트 정보를 생성한다(가짜 포트 정보 : b_1, b_2, c_1, c_2). 즉, 인스턴스 정보에 기초하여, 포트 정보를 상이한 가짜 포트 정보로 변경한다. 이 경우, 상술한 바와 같이, 미리 인스턴스 식별 정보로서 입력하는 정보를 포트 정보의 전개값과 일치시켜 두는 것에 의해, 대응시켜야 할 포트에서 가짜 포트 정보를 일치시킬 수 있다. 최종적으로, 인스턴스 전개되어 있는 것에서 공통 접속 정보를 입력한 것에 관해서는, 공통 접속 정보에 기초하여 가짜 포트 정보를 생성한다(가짜 포트 정보 : a). 즉, 포트 정보가 상이한 가짜 포트 정보로 변경되는 것이 이 공통 접속 정보에 의해 방해되고, 포트 정보가 그대로 가짜 포트 정보로서 표시된다. 이와 같이 하여, 입력 정보 데이터베이스(표 1) 및 출력 정보 데이터베이스(표 2)를 작성하고, 각 데이터베이스를 예를 들어, 기억 수단(230)에 기억해 둔다.
다음으로, 생성한 가짜 포트 정보에 기초하여 입력 포트와 출력 포트를 대응시킨다(STEP 304). 본 실시 형태에서는, 대응시켜야 할 포트끼리는 가짜 포트 정보가 일치하도록 되어 있기 때문에, 입력 포트와 출력 포트의 대응은 가짜 포트 정보가 일치하는지 여부에 기초하여 판단할 수 있다. 예를 들어, 출력 정보 데이터베이스(표 2)의 가짜 포트 정보를 1개씩 판독해내고, 입력 정보 데이터베이스(표 1)의 가짜 포트 정보와 비교하여, 일치하는 것이면, 이들 가짜 포트 정보는 서로 접속되도록 대응된다고 판단하고, 대응시킨 접속 정보를 접속 정보 데이터베이스로서 등록한다. 또한, 표 3은 접속 정보 데이터베이스의 일 양태를 나타낸다.
접속 정보 데이터베이스
출력측 입력측
인스턴스 명 포트 정보 인스턴스 명 포트 정보
- i_a1 INST_model_a i_a1
- i_a2 INST_model_a i_a2
INST_model_a
a
INST_model_b_1 a
INST_model_b_2 a
INST_model_a b_1 INST_model_b_1 b
INST_model_a b_2 INST_model_c_1 b
INST_model_b_1 c INST_model_c_2 c
INST_model_b_2 c INST_model_c_2 c
INST_model_c_1 d INST_model_d d_1
INST_model_c_2 d INST_model_d d_2
INST_model_d o_d1 - o_d1
INST_model_d o_d2 - o_d2
표 3에 나타낸 바와 같이, 접속 정보 데이터베이스로서 등록하는 정보는 출력 측의 인스턴스 명 및 포트 정보, 입력 측의 인스턴스 명 및 포트 정보, 및, 입력 포트와 출력 포트의 접속 정보 등이다. 생성한 접속 정보 데이터베이스는 최종적으로 기억 수단(230)에 기억시켜 둘 수 있다.
또한, 표 3에 나타내는 접속 정보 데이터베이스는 디스플레이(206)에 표시하여도 좋다. 예를 들어, 도 14에 도시하는 바와 같이 일람으로서 접속 정보 데이터베이스에 기초하여 정보를 유저가 시인할 수 있도록 하여도 좋다. 디스플레이(206)에 출력하는 표시 양태는 한정되지 않지만, 예를 들어, 적어도, 인스턴스 명을 나타내는 정보, 포트 명(포트 정보), 및, 복수의 모듈을 서로 접속하기 위한 입력 포트와 출력 포트의 접속 정보를 포함할 수 있다.
다음으로, 도 6 및 도 12에 도시하는 바와 같이, 상위 모듈 소스 파일 생성 수단(222)에 의해, 상위 모듈(100)의 소스 파일을 생성한다(STEP 108). 여기서, 도 12는 상위 모듈 소스 파일 생성 처리의 플로우차트를 도시하는 도면이고, 도 12의 플로우차트에 따라 생성된 상위 모듈 소스 파일의 일례를 도 13에 도시한다.
도 13에 도시하는 바와 같이, 상위 모듈 소스 파일(400)은 주요한 구성으로서, 하위 모듈 판독부(402)와, 입출력 신호 선언부(404)와, 내부 신호 접속부(400)를 포함한다. 이들 구성도 지금까지 설명한 스텝에서 기억 수단(230)에 기억한 정보나 데이터베이스에 기초하여 생성할 수 있다.
도 12에 도시하는 바와 같이, 이와 같은 소스 파일(400)은 우선, 하위 모듈(110, 120, 130, 140)의 판독부를 생성하고(STEP 500), 다음으로, 상위 모듈(100)의 입출력 선언부를 생성하고(STEP 600), 최종적으로 상위 모듈(100)의 내부 신호 접속부를 생성하는 것에 의해 생성할 수 있다(STEP 700).
우선, STEP 500에서는, 하위 모듈 명을 판독 파일로 출력하고(STEP 502), 다음으로, 하위 모듈의 포트 정보를 판독한다(STEP 504). 그리고, 포트 정보(clock/reset/in/out)를 식별하여 선언을 파일로 출력하고(STEP 506), 모든 포트 정보의 처리가 종료하면(STEP 508), 인스턴스 명을 파일로 출력하고(STEP 510), 모든 하위 모듈을 호출하였음을 확인한다(STEP 512). 이와 같이 하여, 도 13에 도시하는 하위 모듈 판독부(402)의 부분의 소스 파일을 생성할 수 있다.
다음으로, STEP 600에서는, 접속 정보 데이터베이스(표 3 참조)로부터 접속 정보를 1개(표 3의 예에서는 1행분량) 판독하고(STEP 602), 판독한 접속 정보가 외부 입출력 신호인지 여부를 판단한다(STEP 604). 이 결과, 외부 입출력 신호인 경우에는, 외부 입출력 선언으로서 그 취지의 파일로 출력한다(STEP 606). 외부 입출력 신호가 아닌 경우에는, 모든 접속 정보를 판독하였는지 여부에 대해 판단하고(STEP 608), 아직 나머지 접속 정보가 있는 경우에는 STEP 604로 돌아가서, 상술한 순서를 반복하여 행한다. 이와 같이 하여, 최종적으로 모든 접속 정보를 판독하는 것에 의해, 도 13에 도시하는 입출력 신호 선언부(404)의 부분의 소스 파일을 생성할 수 있다.
그리고, STEP 700에서는, 상위 모듈 명을 판독 파일로 출력하고(STEP 702), 다음으로, STEP 600에서도 설명한 바와 같이, 접속 정보 데이터베이스(표 3 참조)로부터 접속 정보를 1개 판독하고(STEP 704), 판독한 접속 정보가 내부끼리의 접속 정보인지 여부를 판단한다(STEP 706). 이 결과, 내부끼리의 접속 정보인 경우에는, 그 취지의 파일로 출력한다(STEP 708). 내부끼리의 접속 정보가 아닌 경우에는, 다음으로, 외부와의 접속 정보인지 여부를 판단하고(STEP 710), 이 결과, 외부와의 접속 정보인 경우에는, 그 취지의 파일로 출력한다(STEP 712). 혹은, 외부와의 접속이 아닌 경우에는, 모든 접속 정보를 판독하였는지 여부에 대해 판단하고(STEP 714), 아직 나머지의 접속 정보가 있는 경우에는 STEP 704로 돌아가서, 상술한 순서를 반복하여 행한다. 이와 같이 하여, 최종적으로 모든 접속 정보를 판독하는 것에 의해, 도 13에 도시하는 내부 신호 접속부(406)의 부분의 소스 파일을 생성할 수 있다.
이와 같이 하여, 본 실시 형태에 따른 회로 설계 방법에 의하면, 상위 모듈(100)을 자동 생성할 수 있기 때문에, 설계되는 모델의 품질의 향상 및 설계 생산성의 향상을 꾀할 수 있다.
또한, 본 실시 형태에 따른 회로 설계 방법에 의하면, 「사이버 워크 벤치」의 프로그램 언어 BDL을 이용한 예를 나타내었지만, 프로그램 언어는 이것에 한정되는 것이 아니라, 소스 파일을 작성하기 위한 루틴을 변경하는 것에 의해 다른 프로그램 언어에도 적용할 수 있다.
(4) 본 실시 형태에 따른 회로 설계의 적용예
다음으로, 도 15를 참조하여, 본 실시 형태에 따른 회로 설계의 적용예에 대해 설명한다. 본 실시 형태에 따른 회로 설계는 반도체 시험 장치에 이용되는 반도체 디바이스(예를 들어, ASIC)의 회로 설계에 적용할 수 있다.
반도체 시험 장치(500)에 이용되는 반도체 디바이스(502)는 피시험 IC(600)의 시험을 행하기 위하여, 타이밍 발생기(510), 패턴 발생기(520), 파형 정형기 및 타이밍 발생기(530), 논리 비교기(540) 등의 복수의 모듈을 구비한다. 그 중에서도, 파형 정형기 및 타이밍 발생기(530)와, 논리 비교기(540)는 각각 복수의 인스턴스, 즉, 동일 기능을 가지는 복수의 모듈(530A~C, 540~C)에 인스턴스 전개되어 있다. 예를 들어, 피시험 IC의 측정해야 할 다수의 외부 단자의 수에 따른 수의 인스턴스 전개가 수행되면, 파형 정형기 및 타이밍 발생기(530)와, 논리 비교기(540)는 각각 다수의 인스턴스를 구비하게 된다.
따라서, 이와 같은 다수의 인스턴스를 가지는 모듈을 구비하는 반도체 디바이스(502)의 회로 설계에 있어서는, 상술한 본 실시 형태에 따른 회로 설계 시스템(200) 및 회로 설계 방법을 적용하면, 극히 용이하게 상위 모듈을 자동 생성할 수 있기 때문에, 더욱 효과적으로 모델의 품질의 향상 및 설계 생산성의 향상을 꾀할 수 있다.
상기 발명의 실시 형태를 통해 설명된 실시예나 응용예는 용도에 따라 적절하게 조합하게 하여, 또는 변경 혹은 개량을 부가하여 이용할 수 있고, 본 발명은 상술한 실시 형태의 기재에 한정되는 것은 아니다. 그와 같은 조합 또는 변경 혹은 개량을 부가한 형태도 본 발명의 기술적 범위에 포함될 수 있다는 것이 특허청구범위의 기재로부터 명확하다.
100 : 상위 모듈 110, 120, 130, 140 : 하위 모듈
210 : 제어 수단 212 : 상위 모듈 정보 취득 수단
214 : 포트 정보 취득 수단 216 : 인스턴스 정보 취득 수단
218 : 공통 접속 정보 취득 수단
220 : 입력 포트 및 출력 포트 대응 수단
222 : 상위 모듈 소스 파일 생성 수단
224 : 소정 정보 표시 수단 230 : 기억 수단

Claims (12)

  1. 복수의 모듈을 서로 접속하기 위한 회로 설계 방법으로서,
    상기 복수의 모듈의 입력 포트 및 출력 포트를 포함하는 포트 정보를 취득하는 단계와,
    상기 복수의 모듈 중, 동일 기능을 가지는 복수의 인스턴스를 구비하는 모듈이 있음을 나타내는 인스턴스 정보를 취득하는 단계와,
    상기 포트 정보 및 상기 인스턴스 정보에 기초하여, 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 단계를 포함하는, 방법.
  2. 청구항 1에 있어서,
    상기 인스턴스 정보는 복수의 인스턴스의 개수를 나타내는 인스턴스 개수 정보를 포함하는, 방법.
  3. 청구항 1에 있어서,
    상기 인스턴스 정보는 복수의 인스턴스를 각각 식별하는 인스턴스 식별 정보를 포함하는, 방법.
  4. 청구항 1에 있어서,
    상기 대응시키는 단계는, 상기 인스턴스 정보에 기초하여 상기 포트 정보로부터 가짜 포트 정보를 생성하고, 이 가짜 포트 정보에 기초하여 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 것을 포함하는, 방법.
  5. 청구항 1에 있어서,
    소정의 모듈의 출력 포트가 상기 복수의 인스턴스의 각 입력 포트에 공통으로 접속되는 것을 나타내는 공통 접속 정보를 취득하는 단계를 더 포함하고,
    상기 대응시키는 단계는, 상기 인스턴스 정보 및 상기 공통 접속 정보에 기초하여 상기 포트 정보로부터 가짜 포트 정보를 생성하고, 이 가짜 포트 정보에 기초하여 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 것을 포함하는, 방법.
  6. 청구항 1에 있어서,
    상기 포트 정보를 취득하는 단계 이전에, 상기 복수의 모듈을 서로 접속하여 생성되는 상위 모듈에 관한 정보를 취득하는 단계를 더 포함하는, 방법.
  7. 청구항 1에 있어서,
    상기 대응시키는 단계 이후에, 상기 대응시킨 접속 정보를 접속 정보 데이터베이스로서 기억하는 단계를 더 포함하는, 방법.
  8. 청구항 1에 있어서,
    상기 대응시키는 단계 이후에, 상기 복수의 모듈을 서로 접속하여 생성되는 상위 모듈의 소스 파일을 생성하는 단계를 더 포함하는, 방법.
  9. 청구항 1에 있어서,
    상기 대응시키는 단계 이후에, 적어도, 인스턴스 명을 나타내는 정보, 상기 포트 정보, 및, 상기 복수의 모듈을 서로 접속하기 위한 입력 포트와 출력 포트의 접속 정보를 표시하는 단계를 더 포함하는, 방법.
  10. 청구항 1 내지 청구항 9 중의 어느 한 항에 있어서,
    반도체 시험 장치에 이용되는 반도체 디바이스의 회로 설계에 적용되는, 방법.
  11. 복수의 모듈을 서로 접속하기 위한 회로 설계 시스템으로서,
    상기 복수의 모듈의 입력 포트 및 출력 포트를 포함하는 포트 정보를 취득하는 포트 정보 취득 수단과,
    상기 복수의 모듈 중, 동일 기능을 가지는 복수의 인스턴스를 구비하는 모듈이 있음을 나타내는 인스턴스 정보를 취득하는 인스턴스 정보 취득 수단과,
    상기 포트 정보 및 상기 인스턴스 정보에 기초하여, 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 대응 수단을 포함하는, 시스템.
  12. 복수의 모듈을 서로 접속하기 위한 프로그램을 저장한 컴퓨터 판독 가능한 기록 매체로서,
    상기 복수의 모듈의 입력 포트 및 출력 포트를 포함하는 포트 정보를 취득하는 단계와,
    상기 복수의 모듈 중, 동일 기능을 가지는 복수의 인스턴스를 구비하는 모듈이 있음을 나타내는 인스턴스 정보를 취득하는 단계와,
    상기 포트 정보 및 상기 인스턴스 정보에 기초하여, 상기 복수의 모듈을 서로 접속하도록 입력 포트와 출력 포트를 대응시키는 단계를 실행하게 하는 프로그램을 저장한 컴퓨터 판독 가능한 기록 매체.
KR1020117007390A 2008-09-30 2009-09-25 회로 설계 방법, 회로 설계 시스템 및 기록 매체 KR20110081961A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2008-255056 2008-09-30
JP2008255056 2008-09-30

Publications (1)

Publication Number Publication Date
KR20110081961A true KR20110081961A (ko) 2011-07-15

Family

ID=42073171

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117007390A KR20110081961A (ko) 2008-09-30 2009-09-25 회로 설계 방법, 회로 설계 시스템 및 기록 매체

Country Status (5)

Country Link
US (1) US20110191739A1 (ko)
JP (1) JP5229834B2 (ko)
KR (1) KR20110081961A (ko)
TW (1) TWI409659B (ko)
WO (1) WO2010038387A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6364786B2 (ja) 2014-01-24 2018-08-01 富士通株式会社 設計書管理プログラム、設計書管理方法および設計書管理装置
CN105718644A (zh) * 2016-01-19 2016-06-29 深圳市同创国芯电子有限公司 一种现场可编程门阵列网表生成方法及装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1300265C (en) * 1987-06-22 1992-05-05 William Curtis Newman Block diagram simulator
US5220512A (en) * 1990-04-19 1993-06-15 Lsi Logic Corporation System for simultaneous, interactive presentation of electronic circuit diagrams and simulation data
US5914889A (en) * 1996-09-13 1999-06-22 Lucent Technologies Inc. Method and system for generating a mask layout of an optical integrated circuit
US5896301A (en) * 1996-10-25 1999-04-20 Advanced Micro Devices, Inc. Method for performing floorplan timing analysis using multi-dimensional feedback in a histogram and integrated circuit made using same
JPH10222374A (ja) * 1996-10-28 1998-08-21 Altera Corp 遠隔ソフトウェア技術支援を提供するための方法
US6237007B1 (en) * 1998-07-02 2001-05-22 Micron Technology, Inc. Verification of port list integrity in a hardware description language file
US6817005B2 (en) * 2000-05-25 2004-11-09 Xilinx, Inc. Modular design method and system for programmable logic devices
US6996799B1 (en) * 2000-08-08 2006-02-07 Mobilygen Corporation Automatic code generation for integrated circuit design
US6684381B1 (en) * 2000-09-29 2004-01-27 Hewlett-Packard Development Company, L.P. Hardware description language-embedded regular expression support for module iteration and interconnection
US6539520B1 (en) * 2000-11-28 2003-03-25 Advanced Micro Devices, Inc. Systems and methods for generating hardware description code
US6865722B2 (en) * 2002-12-17 2005-03-08 International Business Machines Corporation Method of automating chip power consumption estimation calculation
US6823502B2 (en) * 2002-12-31 2004-11-23 Lsi Logic Corporation Placement of configurable input/output buffer structures during design of integrated circuits
US6959428B2 (en) * 2003-06-19 2005-10-25 Lsi Logic Corporation Designing and testing the interconnection of addressable devices of integrated circuits
JP2007114881A (ja) * 2005-10-18 2007-05-10 Elpida Memory Inc 回路図作成装置、回路図作成エディタプログラム及び回路図作成方法
US7979262B1 (en) * 2005-12-19 2011-07-12 Cadence Design Systems, Inc. Method for verifying connectivity of electrical circuit components
US7412669B1 (en) * 2006-07-06 2008-08-12 Xilinx, Inc. Generation of graphical design representation from a design specification data file
JP5029070B2 (ja) * 2007-03-02 2012-09-19 日本電気株式会社 集積回路のレイアウト設計支援装置、方法、及びプログラム
CN101246516B (zh) * 2007-03-09 2010-06-02 知亿科技股份有限公司 可执行于计算机系统的电路设计修改方法
US8255845B2 (en) * 2007-11-30 2012-08-28 Cadence Design Systems, Inc. System and method for generating flat layout
WO2010053779A1 (en) * 2008-11-07 2010-05-14 Intrinsity, Inc. A method for preparing re-architected designs for sequential equivalence checking
US8549447B2 (en) * 2010-04-24 2013-10-01 Robert Eisenstadt Integrated circuits with multiple I/O regions
US8549454B1 (en) * 2012-07-20 2013-10-01 Xilinx, Inc. System and method for automated configuration of design constraints
US8782587B2 (en) * 2012-07-30 2014-07-15 Atrenta, Inc. Systems and methods for generating a higher level description of a circuit design based on connectivity strengths

Also Published As

Publication number Publication date
US20110191739A1 (en) 2011-08-04
JP5229834B2 (ja) 2013-07-03
TW201019153A (en) 2010-05-16
TWI409659B (zh) 2013-09-21
JPWO2010038387A1 (ja) 2012-02-23
WO2010038387A1 (ja) 2010-04-08

Similar Documents

Publication Publication Date Title
US8037436B2 (en) Circuit verification apparatus, a method of circuit verification and circuit verification program
US6028991A (en) Layout parameter extraction device
US20140270050A1 (en) Design and deployment of custom shift array macro cells in automated application specific integrated circuit design flow
JP2010033208A (ja) 回路設計支援装置、回路設計支援プログラム、回路設計支援方法
CN105740487B (zh) 基于工艺设计包的版图与原理图一致性验证方法
US10970456B1 (en) Identifying root cause of layout versus schematic errors
US20140129998A1 (en) Hierarchical equivalence checking and efficient handling of equivalence checks when engineering change orders are in an unsharable register transfer level
US7409650B2 (en) Low power consumption designing method of semiconductor integrated circuit
KR20110081961A (ko) 회로 설계 방법, 회로 설계 시스템 및 기록 매체
KR100486274B1 (ko) 집적회로 장치 설계용 네트리스트 작성 방법
US9275175B2 (en) Integrated circuit clock tree visualizer
US7117471B1 (en) Generation of design views having consistent input/output pin definitions
US20050086621A1 (en) Method for processing design data of semiconductor integrated circuit
CN105447212A (zh) 产生集成电路的验证平台文件的方法与编译系统
CN110941932B (zh) 一种面向硬件逻辑设计的需求建模与验证方法
CN106897504A (zh) 对ip模块进行开发形成参数化单元的方法
US5715170A (en) Apparatus for forming input data for a logic simulator
ITTO20010667A1 (it) Metodo per generare circuiti elettronici.
CN109885850B (zh) 一种局部寄存器的生成方法及生成系统
CN106649895A (zh) 一种层次化的集成电路版图短路查找方法
JP3373641B2 (ja) テスト系列生成装置
US6877140B1 (en) Method and system for generating a schematic representing bus structures
US20090259978A1 (en) Arrangement verification apparatus
WO2013191873A2 (en) Generation of memory structural model based on memory layout
US11741284B2 (en) Systems and methods of automatic generation of integrated circuit IP blocks

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right