KR20010023096A - 트랜지스터 회로의 타이밍 특성 추출 방법, 타이밍 특성 라이브러리를 기억한 기억 매체, lsi의 설계 방법, 및 게이트 추출 방법 - Google Patents

트랜지스터 회로의 타이밍 특성 추출 방법, 타이밍 특성 라이브러리를 기억한 기억 매체, lsi의 설계 방법, 및 게이트 추출 방법 Download PDF

Info

Publication number
KR20010023096A
KR20010023096A KR1020007001718A KR20007001718A KR20010023096A KR 20010023096 A KR20010023096 A KR 20010023096A KR 1020007001718 A KR1020007001718 A KR 1020007001718A KR 20007001718 A KR20007001718 A KR 20007001718A KR 20010023096 A KR20010023096 A KR 20010023096A
Authority
KR
South Korea
Prior art keywords
circuit
timing
gate
1stff
delay
Prior art date
Application number
KR1020007001718A
Other languages
English (en)
Other versions
KR100521289B1 (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 KR20010023096A publication Critical patent/KR20010023096A/ko
Application granted granted Critical
Publication of KR100521289B1 publication Critical patent/KR100521289B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

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

본 발명은, CPU 코어 등의 부품 설계 자산(모듈)의 트랜지스터 회로 데이터로부터, 타이밍 특성을 추출하는 방법에 관한 것으로, 추출된 타이밍 특성은, 추출 대상 모듈을 포함하는 회로의 타이밍 검증, 논리 합성 또는 타이밍 구동 레이아웃을 행할 때의 타이밍 제약에 이용한다. 특히, 시뮬레이션으로 타이밍 검증을 행할 때에는, 모듈의 타이밍 룰 적합 조건이 타이밍 특성에 포함되므로, 유사 에러가 없는 검증을 가능하게 한다. 또한, 본 발명은 타이밍 특성 라이브러리의 구조, 및 그것을 기억한 기억 매체, 및 그것을 이용한 LSI의 설계 방법에 관한 것이다.

Description

트랜지스터 회로의 타이밍 특성 추출 방법, 타이밍 특성 라이브러리를 기억한 기억 매체, LSI의 설계 방법, 및 게이트 추출 방법{METHOD OF EXTRACTING TIMING CHARACTERISTICS OF TRANSISTOR CIRCUITS, STORAGE MEDIUM STORING TIMING CHARACTERISTIC LIBRARY, LSI DESIGNING METHOD, AND GATE EXTRACTION METHOD}
대규모의 원칩(one-chip) 시스템의 시대가 도래하고, 설계를 마친 데이터를 활용하여 단기간에 시스템 LSI를 제공하는 것이, 칩 및 시스템의 경쟁력 향상을 위해 불가결하게 되고 있다. 특히 최근에는, 설계 자산, 혹은 IP(Intellectual Property)를 이용한 시스템 LSI의 설계가 급속히 상승해 오고 있다. 예를 들면, CPU 코어 등의 부품 설계 자산(모듈)을 재이용한 ASIC(Application Specification Integrated Circuits)의 설계에 있어서는, ASIC 메이커측이 모듈을 고객(시스템 하우스 등)에 제공하고, 고객은 모듈에 고객 고유의 논리를 부가하여 ASIC를 설계한다. 이 때, 고객측에는, 논리 기능의 기술만을 제공하는 것만으로는 불충분하다. 왜냐하면, 칩 전체의 타이밍 검증을 행할 필요가 있기 때문이다. 이 경우에, 고객측으로부터 보는 CPU 코어는 블랙박스이고, CPU 코어의 인터페이스에 있어서의 타이밍 특성 없이는 칩 전체의 타이밍 검증을 행할 수 없다. 이 타이밍 특성을 고객에게 제공하기 위해서는, 모듈로부터 특성을 추출해야만 하지만, 종래에는 이 추출 작업을 사람의 손으로 행하고 있었다. 이 때문에, 많은 공정수가 필요하고, 동시에 타이밍 추출 결과에 대해서도 항상 오류가 혼입할 우려가 있었다.
그래서, 본 발명에서는, 모듈의 레이아웃 데이터로부터 타이밍 특성을 추출하는 것을 목적으로 하고 있다. 본 발명에서는, 타이밍 특성의 추출을 행하는 방법으로서, 셀마다 타이밍 특성을 추출하고, 그 추출 결과를 이용하는 방법도 검토되었다.
종래의 방법으로서, 셀 레벨의 타이밍 특성 추출 툴을 개시한 특개평4-316166호 공보 등이 있다. 이들 방법은, 트랜지스터 회로를 입력하여, 전체 회로의 회로 시뮬레이션의 자동 실행을 행하여 타이밍 특성을 추출하지만, 취급하는 회로의 규모는, 셀 레벨이므로, 수 100 트랜지스터 정도까지의 회로가 대상이 되어, 수 M 규모의 대규모 트랜지스터 회로는 취급할 수 없다. 이하에 대규모 트랜지스터 회로와 셀 레벨의 회로와의 상위점을 나타낸다.
(1) 셀 레벨에서는, 순서 회로의 셀은, 셀=플립플롭(FF)이라고 생각하여도 좋고, 셀의 단자와 FF 사이에 있는 다른 회로의 영향은 고려할 필요는 없다. 또한, 복수의 FF가 타이밍에 영향을 주는 케이스도 고려할 필요는 없다.
(2) 셀 레벨에서는, 수100 트랜지스터 레벨이기 때문에 회로 전체에서 시뮬레이션을 행하여도 타이밍 특성의 추출은 가능하다.
이에 대해, 대규모 회로에서는, 전체의 회로의 시뮬레이션에서의 추출에서는 처리 시간이 최대이다.
(3) 셀 레벨에서는, F를 조합한 바와 같은 복잡한 회로의 타이밍 추출은 대상 밖이다. 대규모 회로에서는, 분주 클럭의 발생 회로 등, 복잡한 순서 회로가 내재하고 있고, 이 회로도 취급할 필요가 있다.
본 발명에서는, 이들 상위점을 고려하여 대규모 회로의 타이밍 특성 추출을 실현하는 방법을 제공한다.
종래 기술은, 소규모인 셀 레벨에서의 타이밍 특성 추출 방법이므로, 상기한(1)∼(3)에 진술한 바와 같이, 대규모 회로에는, 그대로는 적용할 수 없다. 대규모 트랜지스터 회로를 취급하는 과제는, 이하의 3개이다.
(1) FF 이외의 회로를 포함시키고, 복수의 FF가 내재되어 있어도, 단자에서의 타이밍 특성을 규정하는 모델화 방법과 처리 방법의 제공.
(2) 수 M 트랜지스터 회로까지 취급하여도 처리 시간이 실용 범위에 들어가는 타이밍 특성의 모델화 방법과 처리 방법의 제공.
(3) 복잡한 회로를 포함하는 경우의 취급 방법의 제공.
〈발명의 개시〉
상기 3개의 과제를 해결하기 위한 수단을 이하에 진술한다.
우선, 과제 (1), (2)를 해결하기 위한 모델화 방법을 진술하고, 다음에 처리 방법을 진술한다.
(1) 모델화 방법
모듈의 대상은, 도 3에 도시한 바와 같은 클럭 동기 회로로 압축된다. 타이밍 특성에는, 출력의 지연와 입력의 타이밍 룰(셋업/홀드 타임)의 2종류가 있다. 클럭 동기 회로이므로, 타이밍은, 클럭 기준이다. 즉, 출력 지연는, 클럭의 변화 시각을 기점(기준)으로 하는 출력의 지연이고, 타이밍 룰이란, 클럭에 대한 입력의 셋업 타임, 또는 홀드 타임의 제약을 총칭하고 있는 이름이다.
클럭 동기 회로에서는, 타이밍과 타이밍을 정하는 회로는 이하와 같이 된다.
출력 지연의 경우에는, 도 3에 도시한 바와 같이, 마지막으로 출력에 영향을 주는 lastFF(플립플롭: 35)가 타이밍을 정하는 기본 회로가 된다. 즉, 클럭(311)이 lastFF(35)를 상승하여 FF의 출력의 변화가 출력(313)에 전파하기까지의 시간이 출력 지연로 된다. 따라서, 관련된 회로는, 클럭으로부터 lastFF를 통과하여 출력까지의 패스 상의 회로이다. 이 패스는, 복수 존재할 가능성이 있기 때문에, 이들 패스 상의 회로를 전부 고려하여, 다른 회로에 최악의 영향을 줄 수 있는 최대 딜레이값의 패스의 딜레이값를 출력 지연로 한다.
타이밍 룰의 경우에는, 도 3에 도시한 바와 같이, 입력(312)이 최초에 도달하는 1stFF(34)가 타이밍을 정하는 기본 회로가 된다. 즉, 클럭이 변화한 시간의 셋업 시간 전으로부터 홀드 타임 시간 후까지, 입력이 안정하지 않으면, 1stFF의 출력은 변화되어, 기대한 바대로의 출력이 얻어지지 않는다. 본 모델화 방법에서는, 이 타이밍 룰(셋업 타임과 홀드 타임)을 FF를 포함한 형으로 직접 구하지 않고서, FF의 타이밍 파라미터에 delay(클럭∼FFck: 32)와 delay(입력∼FFd: 33)의 스큐우를 가감산하여 구한다. 도 4에 그 산출 방법을 도시한다. 또한, FF와 입력/클럭 단자 사이에는, 다른 회로가 긴 패스를 구성하고 있고, 단자에서 클럭과 입력이 변화하여도, FF로 도달한다고는 한정하지 않는다. 이 때문에, 도 4에 도시한 바와 같이 룰 적합 조건을 타이밍 룰에 넣고, 변화가 도달하는지의 여부를 검사하여 룰 체크를 행한다. 이것이 없으면, 도 18에 도시한 형태로 시뮬레이션 검증 시에 다른 회로에 사용되는 신호도 체크 대상이 되어, 유사 에러가 다발한다.
상기한 타이밍 룰의 모델화를 기본으로 하여, 복수의 1stFF가 존재하는 경우에는, 도 4에 도시한 바와 같이, 복수의 1stFF에 대해 구한 타이밍 파라미터 중에서 최대치를 취하고, 룰 적합 조건에 대해서는, 모든 1stFF에 대해 구한 조건의 or 조건을 취한다.
(2) 처리 방법
(1)에서 진술한 모델을 구하기 위해, 도 1에 도시한 방법을 채용한다.
우선, Tr. 회로 데이터(102)를 입력하여, 게이트·FF 복원을 행한다(스텝 11). 그 후, 입력 단자와 출력 단자로부터 각각 최초에 도달하는 1stFF와 lastFF를 발견하고, 각 단자로부터 이들 각 FF까지의 회로를 관련 회로로서 인식한다(스텝 12).
과제 (2)에서 진술한 바와 같이, 대규모 트랜지스터 회로의 전체 회로에서의 시뮬레이션에 있어서의 지연 측정은 처리 시간이 대이므로, 이들 각 FF∼입력/출력까지의 유효 패스를 탐색하여, 고속인 스태틱 지연 측정 툴에 지연 측정을 위한 패스(104)를 입력한다(스텝 13). 이에 따라, 스태틱 지연 측정 툴은, 논리적으로 있을 수 없는 패스까지 지연 측정 패스에 포함하는 것을 회피할 수 있기 때문에 이 스텝은 필요하다. 동시에, 입력/클럭이 1stFF까지 변화를 전하기 위한 조건(활성화 조건105)을 작성한다(스텝 14). 지연 측정(15)으로 측정된 지연(106), 활성화 조건(105), FF 타이밍 룰(107)을 기초로 하여, (1)에서 구한 모델화 방법에 따라서, 타이밍 특성 라이브러리(108)를 생성한다(스텝 16).
또, 과제 (3)에서 진술한 문제의 해결 수단은, 스텝 12의 인식 방법과 스텝 14의 활성화 조건의 작성 방법이다. 이 주요한 과제는, 분주 클럭 작성 회로를 어떻게 취급하는 가와, 조합 회로 이외의 예외 소자를 어떻게 취급할지이다. 이에 관해서는, 이하의 발명을 실시하기 위한 최량의 형태의 항에서 상세히 진술한다.
본 발명은, CPU 코어 등의 부품 설계 자산(모듈)의 트랜지스터 회로 데이터로부터, 타이밍 특성을 추출하는 방법에 관한 것으로, 추출된 타이밍 특성은, 추출 대상 모듈을 포함하는 회로의 타이밍 검증, 논리 합성 또는 타이밍 구동 레이아웃을 행할 때의 타이밍 제약에 이용한다. 특히, 시뮬레이션으로 타이밍 검증을 행할 때에는, 모듈의 타이밍 룰 적합 조건이 타이밍 특성에 포함되므로, 유사 에러가 없는 검증을 가능하게 한다. 또한, 본 발명은 타이밍 특성 라이브러리의 구조, 및 그것을 기억한 기억 매체, 및 그것을 이용한 LSI의 설계 방법에 관한 것이다.
도 1은 타이밍 특성 추출 방법의 전체 플로우도.
도 2는 본 발명이 가동하는 처리 장치를 나타낸 도면.
도 3은 회로예.
도 4는 타이밍 특성의 모델화 방법을 나타낸 도면.
도 5는 Tr. 회로 정보와 보조 정보를 나타낸 도면.
도 6은 타이밍 특성 라이브러리의 구성을 나타낸 도면.
도 7은 게이트·FF 복원(11)의 처리예 1: 게이트 복원을 나타낸 도면.
도 8은 게이트·FF 복원(11)의 처리예 2 : FF 복원을 나타낸 도면.
도 9는 1stFF와 관련 회로의 탐색 방법의 설명도.
도 10은 1stFF와 관련 회로의 탐색 범위의 설명을 하는 도면.
도 11은 lastFF와 관련 회로의 탐색 방법의 설명도.
도 12는 lastFF와 관련 회로의 탐색 범위의 설명을 하는 도면
도 13은 지연 측정 패스 탐색(1)을 나타낸 도면.
도 14는 지연 측정 패스 탐색(2)을 나타낸 도면.
도 15는 클럭 활성화 조건을 나타낸 도면.
도 16은 클럭 활성화 조건의 계산예를 나타낸 도면.
도 17은 데이터 활성화 조건을 나타낸 도면
도 18은 타이밍 특성 라이브러리의 사용 형태를 나타낸 도면
도 19는 클럭 활성화 조건 작성의 별도의 방법을 나타낸 도면.
도 20은 타이밍 특성 추출 방법(3)의 전체 플로우도.
도 21은 타이밍 특성 추출 방법(4)의 전체 플로우도.
도 22는 타이밍 특성 추출 방법(5)의 전체 플로우도.
도 23은 타이밍 특성 추출 방법(6)의 전체 플로우도.
도 24는 활성화 조건의 구성 요소를 나타낸 도면.
도 25는 타이밍 특성 라이브러리의 시뮬레이션 처리(1)를 나타낸 플로우도.
도 26은 타이밍 특성 라이브러리의 시뮬레이션 처리(2)를 나타낸 플로우도.
도 27은 타이밍 특성 라이브러리의 데이터 구조를 나타낸 도면.
도 28은 본 발명에 기초하는 게이트 추출 전체의 처리 플로우의 전반부를 나타낸 도면.
도 29는 본 발명에 기초하는 게이트 추출 전체의 처리 플로우의 후반부를 나타낸 도면.
도 30은 스텝 283의 동일 출력 게이트 그룹에의 분할 방법을 나타낸 도면.
도 31은 스텝 284의 동일 출력 게이트 그룹의 분할 방법을 나타낸 도면.
도 32는 스텝 3021의 처리를 행할 때 페어 체인에의 통합 조건을 나타낸 도면.
도 33은 스텝 285의 게이트 변환 처리 방법을 나타낸 도면.
도 34는 모듈 특성을 사용한 시스템 전체 시뮬레이션을 나타낸 도면.
〈발명을 실시하기 위한 최량의 형태〉
이하, 본 발명의 실시의 형태를 도면에 의해 상세히 설명한다.
1. 본 발명이 가동하는 처리 장치
본 발명은, 도 2에 도시한 처리 장치 상에서 가동한다. 본 발명은, 도 1에 도시한 Tr. 회로(트랜지스터 레벨의 레이아웃 데이터: 102), 보조 정보(P/Nmos 구분 데이터, 전원/GND 신호 등: 101), 클럭·입력·출력 단자명(103), 및 FF 타이밍 그룹(107)을 입력 파일군(22)으로서, 도 1의 스텝 11∼16의 처리를 실현하는 프로그램을 프로그램 파일군(25)으로서 저장하고, CPU(21)에 의해 이들 처리를 실행하고, 타이밍 특성 라이브러리(24)를 출력한다. CPU(21)에서의 처리 실행 시에는, 우선, 프로그램 파일군(25)으로부터 프로그램을 주기억(26)에 입력하고, 프로그램을 실행한다. 각 처리 스텝의 프로그램은, 주기억(26)으로부터 중간 처리 결과를 입출력하고, 마지막으로 프로그램 실행 결과를 파일로 출력한다. 스텝 13, 14, 및 15의 프로그램은, 다음 스텝의 프로그램의 입력이 되는 중간 파일(104, 105, 및 106)을 워크파일군(23)으로서 출력한다.
2. 타이밍 특성 모델화 방법
여기서는, 타이밍 특성 추출 방법을 설명하기 전에 이 방법의 기초가 되는 타이밍 특성의 모델화 방법에 대해, 도 3과 도 4에 따라서 진술한다.
출력 지연는, 「발명의 개시」의 항에서 진술한 바와 같이, 클럭(311)으로부터 lastFF(35)를 통과하여 출력(313)까지의 지연 delay(클럭∼출력: 31)이다. 이들 패스 상의, lastFF(35)와 게이트 회로의 패스에 의해 복수의 패스가 존재하는 경우에는, 최대 패스의 지연를 출력 지연로 한다. 최대 패스 지연를 취하는 이유는, 이 회로가 다른 회로를 접속하여 타이밍 검증을 행할 때에 최악의 조건이 되는 것이 가장 지연가 큰 최대 패스 지연이기 때문이다.
타이밍 룰은, 셋업 타임룰과 홀드 타임룰로 이루어지고, 어느 것이나, 타이밍을 정하는 클럭에 대한 제약 시간인 타이밍 파라미터와, 단자에서 룰이 적합한지의 여부를 정하는 룰 적합 조건으로 이루어진다.
타이밍 파라미터는, 도 3에 도시한 바와 같이, 입력이 최초에 도달하는 플립플롭(순서 회로 소자의 1종) 1stFF의 타이밍 룰을, 모듈의 입력 시각으로 환산한 값이다. 즉, 클럭 지연 (클럭으로부터 1stFF의 클럭 단자 CK까지의 지연) d_35클럭(도 3의 32)과, 입력 지연(입력 312로부터 1stFF의 데이터 단자 D까지의 지연) d_데이터(도 3의 33)의 분을 보정한 값이다. 셋업 타임을 예로 들어, 입력의 타이밍 룰과 플립플롭의 타이밍 룰의 관계를 도 4에 도시한다.
도 4 내의 타임차트로부터 분명한 바와 같이, 보다 구체적으로는, 셋업 타임은 이하의 식으로 나타내진다.
마찬가지로 하여, 홀드 타임은 이하의 식으로 나타내진다.
지연의 패스나 1stFF가 복수 존재할 때에는, 수학식 1, 수학식 2에서 구한 값 중 가장 근접한 최대치를 취한다.
룰 적합 조건은, 클럭과 데이터가 변화할 때에 변화가 1stFF에 전해졌는지 여부의 조건이고, 이 조건이 없으면, 다른 회로와 접속되고, 지금 대상으로 되어 있는 회로 이외에 팬아웃되는 케이스에는, 룰 체크를 잘못 행하게 된다.
룰 적합 조건은, 1stFF에서 클럭·입력까지의 게이트 회로에 의해 결정된다. 즉, 데이터 활성화 조건과 클럭 활성화 조건의 and 논리이다. 여기서, 데이터 활성화 조건은, 데이터의 변화가 1stFF에 전해지는 조건이고, 클럭 활성화 조건은, 클럭의 변화가 1stFF에 전해지고, 또한, 1stFF의 클럭 단자가 FF의 타이밍 룰의 기준(상승 ↑, 또는, 하강 ↓)이 되는 조건이다. 예를 들면, 도 3의 회로예에서는, 데이타 활성화 조건은, C2 or C3=1이고, 클럭 활성화 조건은, FF의 타이밍 기준점이 ↑로 되면, 클럭 ↑ 또한 C1=1이다. 활성화 조건을 구하는 방법은 이하에 상세히 진술한다.
3. 타이밍 특성 추출 방법
본 발명에 기초하는 차이밍 특성
추출 방법을 도 1에 도시하고, 이하에 진술한다.
타이밍 특성 추출 방법은, Tr. (트랜지스터) 회로(102), 트랜지스터의 PMOS/NMOS 구분과 Tr. 회로 내의 전원/그라운드(GND) 신호명 등으로 이루어지는 보조 정보(101), 클럭과 타이밍 특성 추출의 대상이 되는 입력·출력 단자 지시 정보(103), 및 Tr. 회로 내의 FF의 타이밍 룰(107)을 입력으로 하여, 타이밍 특성 라이브러리(108)를 출력한다.
본 방법은, Tr10 회로(102)와 보조 정보(101)로부터 게이트·FF 복원을 행하는 스텝 11, 복원된 게이트·FF 회로로부터 1stFF와 lastFF의 관련 회로를 인식하는 스텝 12, 이 관련 회로의 중으로부터 지연 측정 패스를 탐색하고, 지연 측정 패스 파일(104)로 출력하는 스텝 13, 관련 회로로부터 활성화 조건을 작성하고, 활성화 조건 파일(105)로 출력하는 스텝 14, Tr 회로(102)와 지연 측정 패스 파일(104)로부터 타이밍 특성에 필요한 지연를 측정하고, 지연 파일(106)로 출력하는 스텝 15, 및 측정된 지연, 활성화 조건(105), FF 타이밍 룰(107)로부터, 상기한 모델화 방법에 따라서 타이밍 특성 라이브러리(108)를 출력하는 스텝 16으로 이루어진다.
이하에서는, 우선, 입출력(102, 101, 103, 107, 및, 108)에 대해 진술하고, 다음에 각 처리 스텝에 대해 상세히 진술한다.
3. 1 입출력
입력인 Tr 회로(102)와 보조 정보(101)를 도 5(a)에 도시하고, 이 Tr. 회로의 회로 이미지를 도 5(b)에 도시한다.
이 Tr. 회로예는, NMOS 트랜지스터(4021)와 PMOS 트랜지스터(4011)의 네트리스트이고, 서브 회로 정의명(41)이 EXSMPL(42)에서 도시한 단자명을 갖고, 소자명(43)이 MXX1과 MXX2의 트랜지스터가 2개 있다. 각각, 드레인(44), 게이트(45), 소스(46)는 도면에 도시한 신호에 접속하고, 소자 모델(47)은 penh와 nenh이다. 보조 정보에서는, penh의 소자 모델은 PMOS를 nenh의 소자 모델은 NMOS이고, VDD1은 전원 신호명, GND1은 GND 신호명인 것을 정보로서 부여한다. 따라서, 도 5(b)에 도시한 회로도를 표현하고 있게 된다. 이들 정보에 의해, 도 1의 스텝 11에서는, 트랜지스터 회로에서의 게이트의 복원이 가능하게 된다.
보조 정보에는, 관련 회로 탐색 지시 정보(40)도 포함되어 있고, 이 정보에 대해서는, 후의 스텝 12의 처리로써 진술한다.
다른 입력 정보, 클럭·입력·출력 단자(103)는, 클럭과 타이밍 특성 추출의 대상이 되는 입력·출력 단자명을 지시하는 정보이고, FF 타이밍 룰(107)은 Tr. 회로 내의 FF의 타이밍 파라미터이다. 이들 정보의 필요성에 대해서는 2.에서 진술하였다.
출력인 타이밍 특성 라이브러리를 도 6에 도시한다. 이 예는, 어떤 종류의 하드웨어 기술 언어로 라이브러리의 내용과 사용 방법을 도시한 것이다. 라이브러리로서 생성되는 것은, 타이밍 특성 라이브러리부(54)로 나타낸 것이다. 이 예에서는, 유닛 타임과 정밀도를 나타낸 타임 스케일(51), 인터페이스(52), 및 하위 계층의 기능 모델 호출부(53) 중에 삽입하는 형식으로 사용된다. 즉, 회로의 기능 모델의 상위 계층에 타이밍 특성을 추가함으로써, 기능 모델과 연동하여 타이밍 검증용 모델로서 사용된다.
타이밍 특성 라이브러리의 데이터 구조는, 도 27에 도시한 바와 같이, 인터페이스(52), 인스턴스(하위 계층의 기능 모델 호출: 53), 타이밍 룰 체크부(56), 룰 적합 조건 연산부(55), 및 출력 지연부(57)로 구성된다.
인터페이스(52)는, 도 27에 도시한 바와 같이, 모듈명, 입력 단자, 및 출력 단자로 구성된다. 도 6에서는, ADCH8S2가 모듈명, input 선언된 CKM 등이 입력 단자, output 선언된 LFDIN 등이 출력 단자이다.
인스턴스(53)는 기능 모델을 본 라이브러리의 하위 계층으로서 호출하는 부분이고, 도 27에 도시한 바와 같이, 인스턴스명, 입력 단자, 출력 단자의 주요한 구성 요소이다. 도 6에서는, ADCH8S2_core가 인스턴스명, CKM(CKM)의 ( )안의 신호명이 입력 단자 또는 출력 단자에 해당한다. CKM은, 상위 계층인 본 라이브러리의 신호이고, 상기한 기술에 의해, 상위 계층의 CKM이 ( ) 안의 기능 모델의 단자에 접속되게 된다. 이것은, 데이터 구조 상, 인스턴스 내의 단자가 상위 계층의 신호를 참조하고 있는 것을 나타내고, 도 27에서는 참조되어 있는 것을, 인터페이스로 향하는 화살표로 나타내었다.
타이밍 룰 체크부(56)는, 셋업타임과 홀드 타임의 타이밍 체크를 행하는 부분이다. 도 27에 도시한 바와 같이, 체크 신호, 클럭 신호, 룰 적합 조건, 및 셋업 타임(홀드 타임)이 주요한 구성요소이다.
도 6에서는, 셋업 타임 체크 기술 $setup에 있어서, PDB(8)가 체크 신호, CKM이 클럭 신호, C_C_1이 룰 적합 조건, 1.572000이 셋업 타임을 나타낸다. 이 기술은, C_C_1이 1일 때에, CKM의 하강(negedge 구문)을 기준으로 하여, PDB(8)의 셋업 타임이 1.57㎱(51의 timescale문에 의해 단위가 ㎱) 이하인지의 여부를 체크한다는 것을 의미한다.
데이터 구조로서는, 도 27의 화살표로 도시한 바와 같이, 체크 신호와 클럭 신호가 인터페이스 신호의 입력 단자를 참조하고, 룰 적합 조건이 룰 적합 조건 연산부(55)의 연산 결과를 참조한다.
룰 적합 조건 연산부(55)는, 도 27에 도시한 바와 같이, 변수와 풀 연산자로 이루어지는 풀 연산식과 연산 결과로 구성된다. 도 6에서는, and...의 1행이, ADCH0 and PDB8의 풀 연산식을 나타내고, ADCH0과 PDB8이 변수, and가 풀 연산자를 나타낸다. C_C_1이 연산 결과를 나타낸다. 데이터 구조에서는, 도 27의 화살표로 도시한 바와 같이, 변수가 인터페이스(52)의 입력 단자를 참조하고, 연산 결과 타이밍 룰 체크부(56)의 룰 적합 조건으로 참조된다.
마지막으로, 출력 지연부(57)는, 도 27에 도시한 바와 같이, 클럭 신호, 지연 부가 신호, 및, 지연의 주요한 구성 요소이다. 도 6에서는, CKM이 클럭 신호, LFADIN이 지연 부가 신호, (1.302, 1590)이 지연를 나타낸다. 이 기술은, CKM이 변화 후, 상승 지연 1.302㎱, 하강 지연 l.590㎱에서 LFADIN이 출력되는 것을 나타내고 있다. 여기서, 지연의 단위 ㎱는, 타임 스케일(51)로 지정된다.
중간 출력인 지연 측정 패스(104)의 구성 요소를 도 24에 도시한다. 이 예는, 도 13의 tri1을 통과하는 CK에서 FF1까지의 패스의 데이터 표현이다. 클럭으로부터 1stFF까지의 클럭 패스, 입력 데이타부터 1stFF까지의 데이터 패스, 또는 클럭으로부터 출력까지의 구분을 나타내는 패스 속성(241), 시점에서 종점까지의 게이트 또는 순서 회로 소자의 출력의 신호명을 열거한 패스 상 신호(242), 및 종점의 FF의 명칭을 나타내는 종단 FF(243)의 3개의 데이터로 구성한다.
중간 출력인 활성화 조건(105)의 구성 요소를 도 24에 도시한다. 이 예는, 도 13의 클럭 CK의 FF1에 대한 활성화 조건의 데이터 표현이다. FF명(244), 지연 출력 패스 데이터와 동일 표현의 패스 속성(241), 시종점(246), 및 신호명을 변수로 하는 부울식 표현을 나타내는 활성화 조건(247)의 4개의 데이터로부터 구성한다.
타이밍 특성 라이브러리부(54)를 생성하는 방법이 본 실시예의 주안이며, 다음 3. 2에서 상세히 진술한다.
3. 2 타이밍 특성 추출 방법의 각 처리 스텝
도 1의 각 처리 스텝을 이하에 진술한다.
3. 2. 1 스텝 11:게이트·FF 복원
이 스텝은, 트랜지스터 회로군으로부터 게이트 회로를 복원하는 게이트 복원과, 복원된 게이트 회로로부터 FF 회로를 복원하는 FF 복원으로 이루어진다. 타이밍 특성 추출의 자동화는 타이밍 측정 개소와 활성화 조건을 취득하면 실현할 수 있다. 이 중 어느 하나를 취득하는 것에도 트랜지스터 레벨의 레이아웃 데이터로부터는 곤란하고, 일단 게이트, 및 플립플롭을 추출(복원)하는 것이 필요하다. 이 추출(복원) 처리 중, 플립플롭 추출(복원)은 게이트 추출(복원) 결과를 이용하여 처리하기 때문에, 게이트 추출(복원)이 모든 처리의 전제가 된다.
3. 2. 1. 1 게이트 복원
MOS 트랜지스터 회로로부터의 게이트 회로의 추출(복원) 방법은, 레이아웃 데이터의 검증 지원, 트랜지스터 회로의 논리 시뮬레이션의 고속화, 및 형식 검증을 목적으로서, 종래부터 여러가지의 공지예가 있다. 그 중에서, 트라이스테이트 게이트(출력에 트라이스테이트 상태를 갖는 게이트로 순서 회로 소자의 일종)도 대상으로 하는 본 발명자에 의한 일례로서, 특개평9-179885호 공보에 기재된 처리 과정을 도 7에 간단히 진술한다. 우선, 도 7에 도시하는 트랜지스터 회로군의 트랜지스터 하나 하나를 가상 트라이스테이트 소자(4003)로 변환한다. 다음에, 트라이스테이트 소자의 직렬 접속군(41)을 각 트라이스테이트 소자의 제어 논리의 AND 논리(43)를 제어 논리로 갖는 하나의 트라이스테이트(401)로 변환하고, 동일 입력의 병렬 접속군(42)을 각 제어 논리의 OR 논리(44)를 제어 논리로 갖는 트라이스테이트로 변환한다고 하는 과정을 반복해 가면, 402의 회로가 된다. 제3번째로, 다른 입력을 갖는 병렬의 트라이스테이트에 대해서도 병렬 변환의 일반화 변환에 의해, 403의 회로를 얻는다. 이 과정의 상세한 것은, 생략하지만, 이 예에서는, 참조 번호(402)의 입력의 반전 논리를 입력으로 갖고, 참조 번호(401와 402)의 제어 논리 C1과 C2의 or 논리를 제어 논리로 갖는 트라이스테이트 1개로 변환할 수 있다. 마지막으로, 제어 논리 C1 or C2= C가 1일 때만 이 입력은 출력에 영향을 주는 것을 고려하여, 제어 논리에 의한 입력 논리의 제산을 행하고, 참조 번호(46)에 도시하는 축약 게이트 논리를 얻는다.
이상의 방법은, 레이아웃 데이터로부터 게이트를 추출하는 방법으로, 1개의 게이트를 구성하는 MOS군이 결정될 때에, MOS의 접속 형태에 의존하지 않고, 스위칭 특성만으로부터 게이트를 추출한다. 그러나, 동일 출력 게이트 그룹을 게이트 구성 단위로 분할하는 방법은 제시되어 있지 않다.
이하에, 본 발명 독자의 동일 출력 게이트 그룹의 게이트 구성 단위에의 분할 방법을, MOS의 접속 형태에 의존하지 않은 형으로 개시한다. 우선 분할 방침을 진술하고, 다음에 분할 방법에 대해 진술한다.
(1) 분할 방침
분할은, 「0과 1 모두 출력할 수 있지만, 0과 1을 동시에는 출력하지 않는다」라는 게이트가 갖는 조건(이후, 게이트 조건이라고 부른다)을 이용하여 행한다.
동일 출력 게이트 그룹에의 분할은, 우선「0과 1 모두 출력할 수 있다」라는 제1 게이트 조건을 이용하여, MOS군 내의 게이트의 출력점을 결정한다. 출력점은 동시에 다음의 게이트로의 논리값의 발생원, 즉 논리 소스가 된다. 다음에, 논리 소스로부터 각 게이트까지의 영역을 동일 출력 게이트 그룹으로서 MOS군을 분할한다.
동일 출력 게이트 그룹의 분할은, 게이트 출력의 논리값를 정하는 기본 단위로 동일 출력 게이트 그룹을 분리하고, 그 후, 게이트 조건을 만족하는 기본 단위군을 최대한 모아 게이트 구성 단위를 작성함으로써, 이 게이트 구성 단위로 동일 출력 게이트 그룹을 분할한다.
(2) 분할 방법
(a) 동일 출력 게이트 그룹에의 분할
이 처리에서는, 게이트 출력점과 논리 소스의 집합을 결정하고, 다음에 MOS 군을 동일 출력 게이트 그룹으로 분할한다.
게이트 출력점과 논리 소스의 집합은, 이하에 진술하는 처리에 의해 결정한다.
우선, 이들 집합의 초기치를 설정한다. MOS의 게이트 단자(이후, G 단자라 한다)와의 접속점은 게이트 조건과는 무관하게 다른 게이트 추출 기본 단위로 논리값를 전파하는 점이기 때문에, 이것을 게이트 출력점의 초기치로 한다. 전원은 논리적인 1의 소스원이며 그라운드는 0의 소스원이기 때문에, 이들을 논리 소스의 초기치로 한다.
다음에, 게이트 출력점과 논리 소스의 탐색을 행한다. MOS의 유효 방향에 따른 경로를 MOS 트레이스 경로라 정의하면, 복수의 다른 논리 소스로부터의 MOS 트레이스 경로가 교차하는 점은, 제1 게이트 조건을 만족시키는 게이트의 출력으로 될 수 있다. 이 때문에, 탐색 처리에서는, 복수의 다른 논리 소스로부터의 MOS 트레이스 경로가 처음으로 교차하는 점을 새로운 게이트 출력점으로 한다. 이 교차점은 새로운 논리 소스로도 될 수 있으므로, 게이트 출력점과 논리 소스의 양방의 집합에 가한다. 이 탐색 처리를 새로운 게이트 출력점이 없어질 때까지 반복함으로써, 게이트 출력점과 논리 소스의 집합이 얻어진다.
동일 출력 게이트 그룹에의 분할은, 상기 구해진 게이트 출력점의 각각에 대해, 게이트 출력점에 도달하는 MOS 트레이스 경로 상의 직전의 논리 소스와 이 게이트 출력점에 둘러싸인 MOS군을 동일 출력 게이트 그룹으로서, MOS군을 분할한다.
(b) 동일 출력 게이트 그룹의 분할
이 처리는, 게이트 출력의 논리값를 정하는 기본 단위로 동일 출력 게이트 그룹을 분리하고, 기본 단위를 게이트 변환 단위로 차례로 통합하여 간다고 하는 순서로 행한다.
게이트 출력의 논리값를 정하는 기본 단위는, 동일 출력 게이트 그룹 내의 각 논리 소스로부터 게이트 출력점까지의 하나의 MOS 트레이스 경로 상의 MOS군이며, 이것을 MOS 체인이라 부른다. 따라서, 최초의 스텝은 동일 출력 게이트 그룹의 MOS 체인에의 분리이다.
MOS 체인의 게이트 구성 단위에의 통합은, 두개의 MOS 체인의 페어 체인에의 통합과 페어 체인의 통합으로 이루어진다.
페어 체인에의 통합은 이하와 같이 처리한다.
다른 논리 소스를 갖는 MOS 체인은「0과 1을 모두 출력한다」라는 제1 게이트 조건을 만족하기 때문에, 다른 논리 소스를 갖는 2개의 MOS 체인(이후, 파트너 체인1과 2라 부른다)을 페어 체인으로서 통합한다. 단, 「0과 1을 동시에는 출력하지 않는다」라는 제2 게이트 조건을 만족하기 때문에, 논리 소스로부터 게이트 출력점까지 논리값를 전송하는 조건이 동시에는 성립하지 않는다고 하는 제약을, 통합 대상에 부과시킨다.
페어 체인의 통합은, 페어 체인을 통합하여 게이트 조건을 만족하는 최대의 MOS군을 작성하는 처리이다. 이 처리는, 상기에서 구해진 페어 체인을 통합하고, 통합된 페어 체인군을 새로운 페어 체인으로서 재정의한다고 하는 통합 처리를, 통합되는 페어 체인이 없어질 때까지 반복한다. 이하에 이 통합 처리를 진술한다.
통합 처리에서는, 우선, 모든 파트너 체인 중에서 동일 파트너 체인(이후, SameP라고 부른다)을 갖는 페어 체인군을 새로운 페어 체인으로서 통합한다. 다음에, SameP를 새로운 페어 체인의 파트너 체인(1)으로서 재정의하고, 통합 전의 페어 체인군에 있어서, SameP의 파트너 체인군을 새로운 체어 체인의 파트너 체인(2)으로서 재정의한다. 마지막으로, 새로운 페어 체인군과 통합되어 있지 않은 페어 체인군을 합쳐서 페어 체인이 새로운 집합과 재정의하여, 다음 통합 처리로 옮긴다.
페어 체인의 통합 결과, 최종적으로 생긴 페어 체인을 게이트 구성 단위로 하여, 동일 출력 게이트 그룹의 분할은 종료한다.
이하에, 게이트 복원의 일 실시의 형태를 도면에 의해 상세히 설명한다.
본 발명은, 도 2에 도시하는 처리 장치 상에서 가동한다. 본 발명은, 하드디스크 등의 입력 파일군(22)으로부터 MOS 트랜지스터 회로 데이터(102)를 주기억(26)에 입력하고, 입력된 MOS 트랜지스터 회로 데이터를 기초로, 중간 데이터를 주기억(26) 상과의 사이에서 입출력하면서 CPU(21)에서 각 처리 스텝을 행한다. 마지막으로, 변환 결과인 게이트 회로 데이터를 워크파일군(23)으로 출력한다.
본 발명에 기초하는 게이트 추출의 전체 처리 플로우를 도 28과 도 29에 도시한다. 게이트 추출 처리는, 전처리로서, 게이트 추출 기본 단위에의 분할(281)과 유효 방향 결정(282)을 행한 후, 기본 단위의 동일 출력 게이트 그룹에의 분할(283)과 게이트 구성 단위에의 동일 출력 게이트 그룹의 분할(284)을 행한다. 그 후, 게이트 변환(285)을 행한다. 이하에서는, 전처리(281와 282), 게이트 추출 기본 단위의 게이트 구성 단위에의 분할(283과 284), 및 게이트 변환(285)으로 나눠 각 처리 스텝을 진술한다.
3. 2. 1. 1. 1 전처리
게이트 추출 기본 단위에의 분할(281)은, (MOS 트랜지스터 데이터102를 상호 소스 또는 드레인을 접속하는 MOS군으로 분할한다. 도 28의 MOS 트랜지스터 데이터(102)는 참조 번호(2802)로 도시한 2개의 기본 단위로 분할할 수 있다.
유효 방향 결정(282)은, 기본 단위 내의 MOS군에 대해, 논리적인 소스가 되는 전원, 또는 그라운드로부터 G 단자와의 접속점(2801)까지, 상호 소스 또는 드레인을 접속하는 MOS군을 트레이스하고, 트레이스 방향을 MOS군의 유효 방향으로 한다. 복수의 유효 방향을 갖는 MOS는 쌍방향 트랜지스터이고 게이트 추출 대상밖으로 된다. 도 28의 게이트 추출 기본 단위1(2821)는, 참조 번호(2803)에 도시한 화살표의 방향이 유효 방향으로 된다.
3. 2. 1. 1. 2 게이트 추출 기본 단위의 게이트 구성 단위에의 분할
이하의 처리가 게이트 복원키이며, 그 처리 순서는, 상기 3. 2. 1. 1의 절에서 진술한 바와 같다. 여기서는, 회로 예를 통과시킨 구체적인 처리 순서를 진술한다. 이 처리를 구성하는 「동일 출력 게이트 그룹에의 분할」283과「동일 출력 게이트 그룹의 분할」284의 2개의 스텝을, 이하에 진술한다.
3. 2. 1. 1. 2. 1 동일 출력 게이트 그룹에의 분할(283)
이것은, 게이트 추출 기본 단위를 동일 출력 게이트 그룹으로 분할하는 처리이며, 게이트 출력점과 논리 소스의 결정, 및 이들을 이용한 동일 출력 게이트 그룹에의 분할의 2개의 스텝으로 이루어진다. 도 30에 따라서 이들 스텝을 이하에 진술한다.
(1) 게이트 출력점과 논리 소스의 결정
도 30(a)에 도시한 예제 회로(3001)에 대한 게이트 출력점과 논리 소스의 탐색 과정을 도 30(b)에 도시한다.
게이트 출력점의 집합의 초기치는 G 단자와의 접속점{04}, 논리 소스의 집합의 초기치는 {0, 1}이다.
1회째의 탐색으로, 논리 소스 0과 1로부터의 MOS 트레이스 경로가 처음으로 교차하는 점 0과 02가, 새로운 게이트 출력점으로서 발견된다. 이들을 게이트 출력점과 논리 소스의 양방의 집합에 가한다.
2회째의 탐색에서는, 논리 소스 0과 02로부터의 MOS 트레이스 경로가 처음으로 교차하는 점 03이, 새로운 게이트 출력점으로서 발견된다. 이것을 게이트 출력점과 논리 소스의 양방의 집합에 가한다.
새로운 게이트 출력점은 이 이상 발견되지 않기 때문에 탐색은 종료한다. 이 결과, 게이트 출력점의 집합{04, 0, 02, 03}과 논리 소스의 집합{0, 1, 0, 02, 03}이 얻어진다.
(2) 동일 출력 게이트 그룹에의 분할
상기에서 구해진 게이트 출력점의 각각에 대해, 게이트 출력점에 도달하는 MOS 트레이스 경로 상의 직전의 논리 소스와 이 게이트 출력점에 둘러싸인 MOS군을 구하면, 도 30(c)에 도시하는 M_0, M_02, M_03, 및 M_04의 4개의 동일 출력 게이트 그룹이 얻어진다. 예제 회로를 이들로 분할하여 동일 출력 게이트 그룹에의 분할은 종료한다.
도 28의 참조 번호(2803)는, 마찬가지의 처리에 의해 참조 번호(2804)와 참조 번호(2806)의 2개의 동일 출력 게이트 그룹으로 분할할 수 있다.
3. 2. 1. 1. 2. 2 동일 출력 게이트 그룹의 분할(284)
이것은, 동일 출력 게이트 그룹을 게이트 구성 단위로 분할하는 처리이고, 도 31에 도시한 바와 같이, MOS 체인에의 분리(301)와 MOS 체인의 게이트 구성 단위에의 통합(302)의 2개의 스텝으로 이루어진다. 도 28에서 얻어진 동일 출력 게이트 그룹(2804)을 예로 들어, 도 31에 따라서 이들 스텝을 이하의 (1) (2)에서 진술한다.
(1) MOS 체인에의 분리(301)
이것은, 동일 출력 게이트 그룹(2804)을, 각 논리 소스로부터 게이트 출력점까지의 하나의 MOS 트레이스 경로 상의 MOS군, 즉 MOS 체인으로 분리하는 처리이다. 참조 번호(2804)는, 참조 번호(3102)에 도시한 바와 같이, v1, v2, g1, g2, 및 g3의 5개의 MOS 체인으로 분리할 수 있다. 여기서, vl과 v 2는 논리 소스(1)의 MOS 체인, g1, g2, g3은 논리 소스 0의 MOS 체인이다.
(2) MOS 체인의 게이트 구성 단위에의 통합(302)
이것은, MOS 체인을 게이트 구성 단위로 차례로 통합해 가는 처리이고, 페어 체인에의 통합(3021)과 페어 체인의 통합(3022)으로 이루어진다.
(a) 페어 체인에의 통합(3021)
이것은 2개의 MOS 체인을 통합하는 처리이며, 통합 조건으로서 도 32(a)에 도시하는 조건을 부과시킨다. 첫번째의 조건은 3. 2. 1. 1의 절의 (2) (b)에서 진술한 바와 같은 조건이고, 2번째의 조건은, 논리 소스의 전송이 동시에 일어나지 않기 위한 조건이다. 2번째의 조건에서, 논리 소스의 전송 논리란, 논리 소스의 전송 조건을 정하는 논리이고, 스위칭 특성의 차이에 의해, NMOS 구성과 PMOS 구성의 MOS 체인은 각각 도 32(b)에 도시한 바와 같이 하여 구한다.
도 31의 참조 번호(3102)에 도시하는 5개의 MOS 체인 중에서, 상기한 통합 조건을 만족하는 MOS 체인의 조로서 (v1, g1), (v2, g2), 및(v2, g3)의 3개의 조가 있어, 이들을 참조 번호(3104)에서 도시한 (vg1, 1), (vg2, 2), (vg2, 3)의 페어 체인으로 통합한다.
(b) 페어 체인의 통합(3022)
이것은, 상기 (a)에서 만들어진 페어 체인을 통합하고, 게이트 조건을 만족하는 최대의 MOS군을 작성하는 처리이다. 파트너 체인이 동일한 페어 체인을 모두 통합하고, 통합한 것을 새로운 페어 체인으로서 재정의하여, 다시 통합을 반복한다.
도 31에 도시한 페어 체인군(3104)에는, 동일 파트너 체인 v2를 갖는 2개의 페어 체인, (vg2, 2)와 (vg2, 3)이 있고, 이들을 통합하여 새로운 페어 체인(vg2, 23)을 작성한다. (vg2, 23)의 새로운 파트너 체인(1)은 v2이고, 새로운 파트너 체인(2)은 원래의 페어 체인에서의 v2의 파트너 체인(g2)과 g3을 통합한 g23이다. 이 결과, 새로운 페어 체인군은(vg1, 1)과 (vg2, 23)으로 되고, 이들은 동일 파트너 체인을 갖지 않기 때문에, 통합 처리는 종료한다. 만일 동일 파트너 체인을 갖는 페어 체인이 아직 있으면, 통합 처리는 속행한다.
상기한 처리 결과로 생긴 페어 체인(vg1, 1), (vg2, 23)이 게이트 구성 단위로 된다. 원래의 동일 출력 게이트 그룹(2804)에 기초하여 이들을 MOS 회로에서 표현하면, 도 29의 참조 번호(2806)에 도시한 바와 같이, 게이트 구성 단위 1과 게이트 구성 단위 2(2862)로 분할할 수 있다. 전자가 (vg1, 1), 후자가(vg2, 23)이다.
3. 2. 1. 1. 3 게이트 변환(285)
3. 2. 1. 1. 2의 절에서 기재한 처리의 결과로 생긴 게이트 구성 단위의 각각에 대해, 도 33에 기재한 처리 순서로, 게이트로 변환한다.
우선, MOS군을 트라이스테이트 소자의 표현으로 변환한다. 구체적으로는, 동일 논리 소스를 갖는 MOS군 각각에 대해, 논리 소스의 전송 논리를 컨트롤 논리에 갖는 트라이스테이트 소자 1개로 변환한다. (v92, 23)는 도 33(a)에 도시한 결과로 된다.
이 결과 생긴 복수의 트라이스테이트 소자를, 도 33(b)에 도시한 통합 룰에 의해 트라이스테이트 소자 1개로 통합한다. 이 통합 룰은, 트라이스테이트 소자의 진리치표와, 2개의 소자가 출력을 공유할 때의 진리치표를 조합한 룰이다.
도 33(b)의 통합 룰을 도 33(a)의 결과에 적용하면, 도 33(c)에 도시한 바와 같이, 트라이스테이트를 나타내는 변환 결과로 된다.
이 변환 결과는, 트라이스테이트 소자의 컨트롤 C2가 데이터 논리(331)에 혼재하고 있다. 이 혼재는, C2가 1일 때에만 게이트 출력에 대해 의미를 갖는 데이터 논리(331)가, C2가 0일 때의 장황한 논리를 포함하기 위해 일어난다. 이 장황한 논리를 제외하기 위해서, 컨트롤에 의한 데이터 논리의 제산을 행한다. 컨트롤에 의한 제산은, 데이터 논리를 컨트롤이 1일 때의 논리로 변환하는 처리이다.
제산을 행한 결과, 데이터 논리(331)에는 컨트롤 C2의 혼재가 없어지고, 도 33(d)에 도시한 트라이스테이트 NOR 게이트로 된다.
3. 2. 1. 2 FF 복원
FF 복원은, 처리 장치 내에, 여러가지의 패턴 종별마다의 변환룰을 내장함으로써 처리하는 과정이며, FF가 게이트 회로의 루프를 기초로 하여 구성되어 있는 것을 이용한다. 여기서는, 복원 패턴의 예만을 도 8에 도시한다. 이 예는 NOR의 X자형과 트라이스테이트 루프 타입의 변환예이다.
3 2. 2 스텝 12 : 1stFF/lastFF와 관련 회로의 추출
이 스텝은, 1stFF와 관련 회로의 탐색, lastFF와 관련 회로의 탐색의 2개의 처리를 행하여, 관련 회로를 인식하는 스텝이다. 2개의 탐색 처리의 개요와 탐색 범위에 대해 도 9, 도 10, 도 11, 및 도 12에 나타내고, 이하에 진술한다.
(a) 1stFF와 관련 회로의 탐색은, 도 9의 1stFF 검색(81), 클럭 관련 회로의 탐색(83, 85), 및 데이터 관련 회로의 탐색(82)으로 이루어진다.
1stFF 검색(81)은, 입력 d를 시점으로 하여, 게이트 회로를 팬아웃 방향으로 탐색해 가고, FF의 데이터 단자 D에 도달한 때에 이것을 1stFF로 하는 스텝이다. 단, 검색 과정에 있어서, 게이트 회로 이외의 예외 소자에 접속하는 신호가 있는 경우에는, 도 10의 1stFF 탐색에 따라서 취급한다. 이 중, 게이트가 다른 게이트 또는 FF와 출력을 공유하고 있는 멀티드라이브 신호에 대해서는, 참조 번호(2001)와 같이 구동 능력을 향상하기 위해 동일 게이트를 병렬로 접속하고 있는 케이스가 많기 때문에, 보조 정보(101) 내의 도 5의 40에 도시한 멀티드라이브 지정이 있으면, 이것을 동일 게이트라고 간주하여 어느 하나의 게이트를 대상으로 하여 검색을 속행한다.
클럭 관련 회로의 탐색은, 1stFF80의 클럭 단자를 시점으로서, 팬인측에 클럭 ck에 도달할 때까지 탐색해 가고, 탐색 범위의 회로를 관련 회로로 하는 스텝이다. 이 스텝은, 게이트 회로만이 아니라, 2ndFF84도 고려에 넣는 것이 특징이다.
보다 일반적으로는, 임의의 갯수의 FF도 마찬가지로 하여 취급하는 것은 가능하지만, 그 일례로서, 여기서는 2ndFF까지를 고려하면 충분한 케이스를 취급하고 있도록 한다. 2ndFF의 고려는, 1stFF의 클럭에서는, 1사이클 구간의 클럭을 고려하고 있는 것과 동일하며, 분주 회로에는 이러한 구성이 종종 사용된다.
클럭 관련 회로의 탐색의 처리는, 1stFF80의 클럭 단자로부터 전체 회로의 단자, 또는, 2ndFF84까지 탐색하는 스텝 83과, 2ndFF84의 클럭 단자로부터 전체 회로의 단자까지를 탐색하는 스텝 85에서 이루어진다. 단, 검색 과정에 있어서, 게이트 회로 이외의 예외 소자에 접속하는 신호가 있는 경우에는, 도 10에 따라서 취급한다. 멀티드라이브 신호의 취급은 1stFF 탐색과 마찬가지이다.
데이터 관련 회로의 탐색은, 1stFF(80)의 데이터 단자로부터, 단자 또는, FF의 끝점까지를, 팬인 방향으로 게이트 회로를 탐색하여 가는 스텝이다. 단, 검색과정에서, 게이트 회로 이외의 예외 소자에 접속하는 신호가 있는 경우에는, 도 10에 따라서 취급한다.
(b) lastFF와 관련 회로의 탐색은, 도 1의 lastFF 검색(91), 1stFF의 클럭 관련 회로의 탐색과 동일 처리(83, 85)에 의한 lastFF의 클럭 관련 회로의 탐색, 및 lastFF의 출력 데이터 관련 회로의 탐색(94)으로 이루어진다.
lastFF 검색(91)은, 출력 OUT을 시점으로 하여, 게이트 회로를 팬인 방향으로 탐색해 가고, FF의 출력 단자에 도달할 때에 이것을 lastFF로 하는 스텝이다. 단, 검색 과정에서, 게이트 회로 이외의 예외 소자에 접속하는 신호가 있는 경우에는, 도 12의 lastFF 탐색에 따라서, 취급한다. 멀티드라이브 신호의 취급은, lstFF의 클럭 관련 회로의 탐색 시와 마찬가지이다.
lastFF의 클럭 관련 회로의 탐색은, lastFF의 클럭 단자를 시점으로서, 1stFF의 클럭 관련 회로의 탐색과 완전히 동일 처리(83, 85)를 행한다.
lastFF의 출력 데이터 관련 회로의 탐색(94)은, 출력 OUT을 정점으로 하여, 도 9의 데이터 관련 회로의 탐색 시와 동일 끝점과, lastFF 모두를 끝점으로 하는 게이트의 콘을 관련 회로로 하는 스텝이다.
3. 2. 3 스텝 13 : 지연 측정 패스 탐색
이 스텝은, 스텝 12에서 추출된 관련 회로에 대해, 스태틱에 Tr. 회로의 지연 측정을 행하기 위해, 측정하는 단자로부터 종점까지의 모든 패스를 지연 측정 스텝 15에 부여한다. 통상, 스태틱 지연 측정에서는, false path라고 불리는 기능적으로 있을 수 없는 패스에 대해서도 지연 측정을 행하기 때문에, 복원된 게이트 회로의 레벨로 false path를 제거하여 지연 측정 스텝에 패스를 부여한다.
여기서는, 우선, 간단한 회로예에서, 조합 회로에서의 유효 패스의 탐색 방법의 개요를 나타내고, 다음에 FF를 통과하는 패스의 탐색 방법에 대해 진술한다.
조합 회로에서의 패스 탐색은, Karl Funchs et af1., "DYNAMITE : An Efficient Automatic Test Pattern Generation System for Path Delay Faults , IEEE Tansaction on CAD, vo110, No.l0, pp1323-1335, Oct. 1991. 등, 수많은 공지예가 있다. 여기서는, FF를 포함하는 패스 탐색의 준비로서, 도 13 (a)에 도시하는 재수렴 구조를 갖지 않는 간단한 회로에서 탐색 방법의 개요만을 도시한다.
도 13(a)에서는 C가 패스의 도달점이고, CKI가 시점이다. 지금, C가 상승하는 (↑) 시의 패스를 구하도록 한다. 이 때, 패스는, CKI→P1→C가 있다. 이 패스를 팬인측에, 한층씩 게이트를 조사해 가고, 출력측의 변화를 일으키기 위한 패스상의 신호 변화와 off 패스 상의 신호를 만족시켜야 하는 조건을 구해 간다. 이 도면의 경우에는, 한층 째의 게이트로부터, 패스 상의 신호 P1은 ↑, off 패스 신호 C1= 0이 아니면 안되는 것을 알 수 있다. 둘째 단의 게이트로부터, CKI는 ↑, offpath 상의 신호 C2=1이 아니면 안되는 것을 알 수 있다. 따라서, 이 패스를 통하는 조건(패스 활성화 조건)은 시점 CKIT에서(C1= O 또한 C 2=1)이다. 후자의 조건은, C1, C 2가 다른 게이트의 출력인 때에는, 이들 조건이 0인지dml 여부를 논리 연산을 행하고, 0아니면 패스는 유효 패스로 된다.
FF를 통과하는 패스는, 상기에서 진술한 조합 회로의 패스 탐색을 연쇄적으로 행하여 감으로써 탐색을 할 수 있다. 지금, 도 13(b)에 도시한 바와 같은, 클럭 CKI에서 1stFF의 클럭 단자까지 도달하는 패스를 구하도록 한다. 이 회로에서는, 1stFF가 FF1에서 2ndFF는 tri1과 FF2이다. 2ndFF를 통과하는 패스의 탐색은, 어떤 2ndFF, 예를 들면 tri1의 출력이 변화할 때의 유효 패스의 판정은, tri1의 출력이 시점에서 1stFF를 도달점으로 하는 유효 패스의 판정 조건과, CKI가 시점에서 tri1을 도달점으로 하는 유효 패스의 판정 조건의 and 조건이 0인지의 여부로 판단할 수가 있다. 도 13(b)의 예에서는, FF1과 tri1이 함께 상승 액티브로 하면, S1∼FFlck↑의 패스 활성화 조건과 CKI∼trilck(신호 Cl) ↑의 and 조건이 0인지 여부의 판정으로 된다. 전자의 조건은, S1↑ 또한(I1 and S2 and S3=1)이고, 후자의 조건은 CK1↑ 또한(I3=1)이고, 이들의 and가 0이 아닐 때에 이 패스는 유효 패스로 된다.
도 14는, 이상의 패스 탐색의 방법을, 구하고 싶은 3개의 전체 패스, 즉, 클럭→출력(출력 지연용), 클럭→1stFFck(타이밍 룰용), 및 입력→1stFFd(타이밍 룰용)에 적용하기 위한, 각 FF 사이의 콘(111, 112, 113)이 무엇을 구하는가 하면, 유효 패스를 찾아 내는 조건을 나타낸다. 예를 들면, 클럭→1stFFck를 구하기 위해서는, 1st 콘 내에서 클럭이 있으면,
(a) 클럭→1stFFck 액티브 조건의 패스를 구하고, 2ndFF가 있으면, (b) 패스 FF2out-1stFFck 액티브 조건의 패스를 구한다. 2nd 콘에서는, (c)클럭→ 패스 FFlck 액티브의 패스를 구한다. FF를 통과하는 패스는, (a)의 패스 활성화 조건과 (b)의 패스 활성화 조건의 and가 0이 아닐 때에, 유효가 된다.
도 14는, 출력 지연용, 타이밍 룰용 모두, 타이밍을 정하는 FF의 클럭 단자(전자는, 패스 FF1의 클럭 단자, 후자는 도달점)로부터 2번째의 FF까지를 고려하였지만, 보다 일반적으로 2n 분주 클럭을 만드는 n개의 FF를 취급하는 경우에도, 마찬가지로 하여 패스 활성화 조건을 연쇄적으로 and 하여 가면 전체의 패스의 유효 조건은 구할 수 있다.
이상으로부터 구한 유효 패스를 지연 측정 패스 파일(104)에 출력하여 이 스텝은 종료한다.
3. 2. 4 스텝 14 : 활성화 조건 작성
이 스텝은, 스텝 13에서 유효 패스의 판정에 이용한 패스 활성화 조건의 모든 or을 취한다고 하는 방법을 이용하지 않고 행한다 . 패스 활성화 조건의 or을 취하는 방법에서는, 처리 시간이 대이기 때문에, 일괄해서 활성화 조건을 구하는 방법을 나타낸다. 활성화 조건은, 타이밍 룰의 작성을 위해 이용하기 때문에, 클럭∼lstFF까지의 클럭 활성화 조건과 입력∼1stFF까지의 데이터 활성화 조건의 작성으로 이루어진다.
클럭 활성화 조건의 작성 방법을 도 15에 도시하고, 이하에 진술한다. 이 방법은, 유효 패스의 판정 조건을 구하는 것과 마찬가지로, FF 사이의 콘의 활성화 조건을 연쇄적으로 and하여 간다. 지금까지와 마찬가지로, 2ndFF까지 밖에 없는 경우를 구한다. nthFF에의 확장도 이제까지와 마찬가지로 용이하다.
클럭 활성화 조건은, 도 15의 식 121에 도시한 바와 같이, 1st콘의 입력에 클럭 CK이 있는 경우의 1st 콘의 활성화 조건과 2ndFF 고려의 활성화 조건으로 이루어진다.
lst콘의 활성화 조건은, lstFF가 상승 액티브(on)인지 하강 on인지, 시점 CK이 하강인지 상승인지의 4가지 조건이 있다. 식 122가 그 조건을 도시한다. 어느 것이나 마찬가지이므로, 첫번째 식만을 설명한다. 이것은, 1stFF의 클럭이 상승 on이므로, 1st 콘의 논리 함수를 h로 하면, 변화 전이 0즉 h(CK= 변화전의 값)= 0이고, h(CK= 변화 후의 값)=1일 때에 1stFF의 클럭 단자가 상승한다. 따라서, CK 상승 조건에서는, not(h(CK=0)) and h(CK= 1)=1일 때에 lstFF가 액티브하게 되는 활성화가 일어난다. 이것을 도시하는 것이, 식 122의 제1 식이다.
2ndFF 고려의 활성화 조건은, 2ndFF가 on하고 <1>, 또한, 2ndFF의 출력이 변화하여 1stFFck가 on하는 조건 <2>에 의해 구한다. 이것을 도시한 것이, 식 123이다. <l> <2>는, 1st콘과 2nd콘의 각각에 대해 식 124와 125에 의해 구할 수 있다. 여기서 주의해야 하는 것은, 식 125에서는, 변화 전의 2ndFF의 출력은 S로 하고 있고, 단자에서 클럭이 변화할 때의 내부의 상태 S가 활성화 조건으로 출현하는 것이다. 이것이, 조합 회로만으로 활성화 조건을 구하는 경우와 다른 점이다.
도 16에 클럭 활성화 조건의 계산예를 도시한다. 도 15에 도시하는 식에 의해, 순으로 1st 콘의 활성화 조건과 2ndFF로서 tril을 통과하는 패스의 활성화 조건을 구하였다. 어느 것이나 CK가 상승 시에만 유효하고, 134와 135에 도시하는 식으로 된다.
다음에, 데이터 활성화 조건의 작성 방법을 도 17에 도시한다. 데이터 활성화 조건은, 클럭 활성화 조건은, 2 ndFF를 고려하지 않는 것과, 변화 도달점의 상승/하강을 한정하지 않고 변화가 일어나는 조건을 구하는 것이 다르다. 따라서, 클럭 활성화 조건, 도 15의 lst 콘의 활성화 조건 122의 상승 시간과 하강 시의 조건의 or을 취하게 된다. 결국, 142에 도시한 바와 같이, 입력 IN= 0인의 경우와 IN= 1의 배타적 논리합으로 나타내진다.
3. 2. 5 스텝 15 : 지연 측정
이 스텝은, Tr. 회로(102)를 입력하여, 스텝 14에 의해 작성한 지연 측정 패스 (104)의 유효 패스의 지연를, 트랜지스터 레벨의 스태틱 지연 측정 툴에 의해 측정한다. 구해진 지연를 지연 파일(106)로 저장한다. 트랜지스터 레벨의 스태틱 지연 측정 툴은, 공지의 것이 있고, 그것을 이용한다.
3 2. 6 스텝 16 : 타이밍 특성 생성
이 스텝은, 도 4의 모델화 방법으로 진술한 방법을, 지연 파일(106), FF 타이밍 룰(107), 및 활성화 조건(105)을 기초로, 각 단자에 대해 행하고, 도 6에 도시하는 타이밍 특성 라이브러리(108)를 생성하는 스텝이다.
타이밍 파라미터에 대해서는, 각 입력의 각 1stFF에 대해, delay(클럭∼1stFFck)32와 delay(입력∼lstFFd)33의 스큐우(신호의 타이밍의 어긋남)를 계산하고, 이 스큐우와 FF 타이밍 룰로부터, 도 4에 도시하는 입력의 타이밍 파라미터를 계산한다. 동시에, 활성화 조건 105를 기초로 도 4의 룰 적합 조건을 작성하여, 적합 조건과 함께 도 6의 55와 56에 도시하는 기술을 타이밍 특성 라이브러리(108)로 출력한다.
출력 지연에 대해서는, 지연 파일(106)을 기초로, 도 4에 도시한 바와 같이 최대 패스 딜레이값를 계산하고, 도 6에 도시한 출력 지연 기술(57)을 타이밍 특성 라이브러리(108)로 출력한다.
완성된, 타이밍 특성 라이브러리는, 도 6의 참조 번호(51∼53)를 자동 부가 혹은, 사람이 직접 부가하여, 기능 모델와 함께 타이밍 검증용의 모델로서 사용된다. 타이밍 특성 라이브러리의 사용의 형태는, 4에서 진술한다.
4. 타이밍 특성 라이브러리의 사용 형태
본 발명의 방법에서 생성된 타이밍 특성 라이브러리(108)의 사용 형태의 일례를 도 18에 도시한다.
도 18(a)는, 시스템 LSI 시뮬레이션 형태의 이미지도를 나타낸다. 시스템 LSI는, CPU 코어, DMAC, 타이머 등의 기존 설계 논리를 LSI 내에 모듈로 하여 조립하고, 신규 설계 논리를 부가하여 작성한다. 시스템 LSI를 시뮬레이션으로 검증 시에는, CPU 코어(156)의 예로 나타낸 바와 같이, 기존의 모듈은, 기능 모델의 상위 계층에 본 발명에서 생성한 타이밍 특성을 부가하여 시뮬레이션을 행한다.
이 때, 기능 모델의 출력 결과에 지연를 부가하는 것이 출력 지연부(1511)이고, 입력된 신호가 타이밍 룰에 적합한 것인지를 체크하는 것이 타이밍 룰 체크부(1512)이다. 타이밍 룰 체크부에 의해 타이밍 위반이 검출된 때에는, 타이밍 에러가 표시되고, 이 결과를 기초로 설계자는, 설계 회로를 재확인한다.
타이밍 특성 라이브러리의 시뮬레이션 처리를 도 25와 도 26에 도시한다. 시뮬레이션은, 일반적으로 단위 시간을 설정하여 이 단위 시간마다 행해진다. 도 25와 도 26은, 이 단위 시간 내에서의 시뮬레이션 처리이다.
우선, 참조 번호(261)에서 모듈 전체, 및 기능 모델 인스턴스의 입출력 단자의 값의 변화를 검출하고, 값이 변화하고 있으면 263 이하의 처리를 행하고, 무변화 시에는 도 26의 B 이하를 처리한다.
263 이하의 처리를 진술한다. 263에서는, 하위 계층의 기능 모델을 호출하고(2631), 기능 모델의 시뮬레이션을 행하여(2632), 마지막으로 기능 모델의 출력 단자로 값을 등록한다. 참조 번호(264)에서 타이밍 룰 체크부를 참조하여, 우선, 룰 적합 조건이 만족했는지의 여부를 체크한다(265). 만족하고 있으면, 셋업 타임과 홀드 타임의 체크(266)를 행하고, 타이밍 룰 위반이면(267), 에러 메시지를 화면에 출력하고, 타이밍 룰 위반이 아니면 도 26의 B 이하의 처리를 행한다.
도 26의 B 이하의 처리를 진술한다. 이것은 출력 지연 처리이다. 우선, 출력 지연부를 참조하고(269), 기능 모델의 출력이 전회 변화한 시각이 현재보다 딜레이값 시간 전이면(2621),모듈 전체의 출력 단자로 값을 등록하여 1 단위 시간의 처리는 종료한다. 그렇지 않으면 1단위 시간의 처리는 종료한다.
이상에 의해, 신규 설계 논리 회로와 모듈 사이, 또는 모듈 사이의 타이밍의 체크가 가능해진다. 즉, 각 모듈의 모델에 조립되고 있는 타이밍 룰 체크부에 의해 타이밍 위반이 검출된 때에는, 타이밍 에러가 표시되고, 이 결과를 기초로 설계자는, 설계 회로의 재확인, 또는, 모듈 사이에의 버퍼 부가 등을 행한다.
시스템 LSI 시뮬레이션시의 시스템 구성을, 도 18(b)에 도시한다. 모듈라이브러리(152)와 신규 설계 논리 회로 데이터(153)의 설계 데이터, 및 입력 파형 데이터(155)를, HDL(Hardware Description Language 하드웨어 기술 언어) 시뮬레이터에 입력함으로써, 시뮬레이션 결과와 타이밍 에러가 출력된다. 생성한 타이밍 특성 라이브러리와 기능 모델 라이브러리는, 각각 개별로, 또는 통합한 모듈 라이브러리로서 기억 매체에 기억된다.
5. 제2 실시예
도 19에 제2의 실시예를 도시하고, 이하에 진술한다.
도 19에 도시된 것은, 도 l5에 도시하는 클럭 활성화 조건의 작성의 2ndFF 고려의 활성화 조건 123의 계산에 있어서, 식 123에 포함되는 <2>의 계산으로부터 있는 조건의 패스를 제외하는 방법이다. 도 16의 회로를 예 로 하여 제외하는 조건을 설명한다.
도 16의 패스(133)가 활성화될 때, 패스 137도 동시에 활성화하고, 게이트(138)의 입력이 2개 모두 ↑ 변화하기 때문에, FF1의 클럭 단자가 ↑ 변화하는 케이스가 있다. 이것은, FF를 통하는 패스가, 1st콘(131) 내의 클럭의 변화에 의해 도움을 받아 변화를 전하는 패스이다. 그러나, 통상 이러한 클럭과의 동시 변화를 일으키는 패스는 억제되어 있고, 특히 순서 회로를 통과하는 패스와, 타이밍을 정하는 클럭과의 패스의 동시 변화가 있으면 타이밍 설계가 어렵게 된다. 이것은 스태틱에 패스를 보고 있기 때문에 판정할 수 없는 false path 라고 생각하여도 좋은 케이스가 많다.
상기한 이유에서, 여기서 진술하는 활성화 조건은, 식 123 중의 <2>로부터 클럭과의 동시 변화에 의해 일어나는 패스를 제외하는 방법이다.
이러한 동시 변화를 일으키는 패스를 제외하기 위해서는, <2>의 조건을, 클럭이 상승이든, 하강이든 성립하는 조건으로 하면 좋다. 즉, 식 125를 식 161로 변경한다. 이에 따라, 도 16의 회로예에 의한 S1을 통하는 패스의 2ndFF의 활성화 조건은, 식 162에 도시한 바와 같이 된다. 이 조건은, S2=0이 아니면 성립하지 않는다. 즉, 게이트(139)에 있어서, S2=0으로 함으로써, 패스(137)를 억제하고 있는 것이다.
상기에 도시한 방법이거나, 도 15에 도시한 방법 중 어느쪽이 좋은지는, 스태틱에 회로를 해석하여도 답은 얻어지지 않는다. 설계 회로의 성질에 의한다. 실제의 실시 상황에서는, 어느 쪽의 선택으로 하는지를 회로마다 설계자에게 선택의 여지가 있다. 이 실시는, 잘 보이는 방법, 즉, 제어 파일로 시스템 실행 제어를 행하게 된다. 이 상세는 생략한다.
6. 제3 실시예
도 20에 제3 실시예를 도시하여, 이하에 진술한다.
이 실시예는, 지연 측정 지시 정보를, 제1 실시예를 나타낸 도 1에서 지연 측정 패스(104)이었던 것을, 지연 측정용 테스트 패턴(109)으로 바꾸고, 동시에 이것을 생성하는 처리로서, 지연 측정용 테스트 패턴 생성(17)으로 변경하고, 지연 측정 방법을 Tr. 회로 레벨이 다이내믹한 시뮬레이션 방법으로 변경한다.
테스트 패턴은, 패스마다 존재하고, 도 13에 도시하는 패스 활성화 조건을 만족시키는 패턴이다.
예를 들면, 도 13(a)의 예에서는 C1=0 또한 C2=1에 초기 설정하는 패턴과 CKI를 초기치 0으로부터 지연 측정 시에 1로 상승하는 패턴이다. 지연 측정 시에는, 내부 신호도 포함하며, 시뮬레이션 전에 C1, C2를 상기한 패턴에 설정하고, CKI를 0으로부터 1로 상승하는 패턴을 시뮬레이션에 인가하여 지연를 측정한다. 도 13(b)에 도시한 FF를 통과하는 패턴은, 각 콘의 활성화 조건을 마찬가지로 하여 변경한다. 또한, 중간의 FF(이 도면에서는, tri1)의 출력 S1을 변화의 초기치에 설정하고(이 회로예에서는, 0), FF의 입력을 클럭 단자 C1이 액티브하게 된 때에 S1로 변화 후의 값이 되도록 설정한다.
상기한 방법은, 관련된 회로에만 초기 설정, 및 변화 후의 설정을 행하기 때문에, 다른 회로의 영향은 적고, 전체 회로의 시뮬레이션에 비교하여, 처리시간은 문제가 되지 않는다.
7. 제4 실시예
도 21에 제4의 실시예를 도시하고, 이하에 진술한다.
이 실시예도, 제3 실시예와 마찬가지로 다이내믹한 시뮬레이션에 의해 지연 측정을 행하는 어프로치이지만, 제3 실시예와 달리, 입력 파형(1001)을 부여하고, 활성화 조건을 기초로, 활성화 조건이 만족하는 시간을 자동적으로 결정한다(지연 측정 시간 결정 18). 단, 활성화 조건은, 내부 신호도 포함하기 때문에, 내부 신호의 스무징(172), 즉 활성화 조건에 포함되는 내부 신호가 0인 경우와 1인 경우의 논리합 연산을 모든 내부 신호에 대해 행하고, 단자의 활성화 조건(171)을 기초로 시간을 결정한다.
8. 제5 실시예
도 22에 제5 실시예를 도시하여, 이하에 진술한다.
이 실시예는, Tr. 회로의 신호명과 기능 모델의 신호명이 다른 경우에, Tr 회로의 신호명을 사람의 손으로 수정하지 않으면 도 18에서 도시한, 시뮬레이션을 실현할 수 없다고 하는 문제를 해결하기 위한 실시예이다. 특히, 활성화 조건에 내부 신호를 포함하는 경우에는, 사람의 손으로 수정하는 공정수가 대이고, 이 방법은 유효가 된다. 활성화 조건은, 도 10에 도시한, 반점이, FF의 출력/멀티 드라이브 신호/VCC/GND/부유인 경우와, 클럭 활성화 조건에서 2ndFF를 고려한 경우에, 다수 일어날 수 있다.
이 실시예는, 도 1의 스텝 14에 활성화 조건에서 사용되어 있는 Tr. 회로의 신호명을 출력하는 처리를 부가하고, 1004의 스텝으로 변경한다. 스텝 1004는, 활성화 조건(105)과 사용되고 있는 Tr. 회로 신호(1005)를 출력한다. 다음에, Tr. 회로 신호에 대응하는, 기능 모델 내의 신호명을 사람의 손으로 입력하고, Tr. 회로-기능 모델 신호 대응표 1006을 작성한다. 마지막으로, 다른 입력 파일(106, 107)과 함께, 1006을 입력으로 하여, 타이밍 특성 생성(181)을 실행한다. 타이밍 특성 생성(181)은, 타이밍 특성 라이브러리(182)를 출력 시에, 활성화 조건으로 출현하는 Tr. 회로 신호명을, 기능 모델의 신호명으로 변환하여, 참조 번호(182)를 출력한다.
9. 제6 실시예
도 23에 제6의 실시예를 도시하고, 이하에 진술한다.
이 실시예는, FF 타이밍 룰(107)을 자동으로 계산하는 처리를 지금까지의 실시예에 추가한 예이다.
이 실시예는, 지연 측정 패스 탐색(13)에서 지연 측정 패스를 탐색함과동시에, 관련된 1stFF의 입출력 단자 정보도 인식하고, 지연 측정 패스·1stFFl002로 출력한다. 그 후, 지연 측정과 함께 1stFF의 입출력 단자 정보를 기초로, FF 타이밍 룰(107)도 측정한다. 이 측정 방법은, 적어도 시뮬레이션을 사용하는 방법은 공지예가 있고, 여기서는 생략한다.
10. 제7 실시예
도 34에 모듈을 포함하는 시스템 전체 시뮬레이션의 제7 실시예를 도시한다. 도 34(a)에 시뮬레이션의 시스템 구성을 나타낸다.
특성 추출 장치(10)가 작성하는 모듈 특성(22)은
(1) 독립한 타이밍 활성화 조건용 논리
(2) 모듈 단자에 직접 설정하고 있는 타이밍 정보
(3) 타이밍 속성을 분리하는 노드 분리 회로
등을 구비한 구조 상의 특징에 의해, 모듈 기능(21)과는 완전히 독립된 논리계층으로서 라이브러리화할 수 있다. 이것은 종래의 라이브러리 데이터의 표현 상의 분리와는 달리, 논리 계층의 일부이므로, 후 처리 등으로 논리 시뮬레이터에 적합한 형식으로 변경할 필요가 없다. 또한, 모듈 기능의 표현 방법도, 특성 정보를 고려할 필요가 전혀 없기 때문에 자유도가 매우 높다.
도 34(b)에 시스템 전체 회로의 시뮬레이션 형태의 예를 나타낸다. 기존의 MPU나 메모리 등의 모듈을 탑재하고, 신규의 랜덤 논리를 부가한 전체 회로에 있어서, 시스템 클럭(110)과 랜덤 논리부에서의 데이터(111)나 다른 모듈로부터의 데이터(112)의 시간차와, 셋업이나 홀드의 특성 정보가 비교(103)되고, 위반이 있는 경우에는 시뮬레이션 결과(40) 중에 에러가 표시된다. 이 때 위반을 체크하지 않아도 좋은 상태인지 타이밍 활성화 조건용 논리가 연산되고, 만일 체크하지 않아도 좋은 상태이면, 유사 에러를 억지한다.
본 발명의 모듈 특성 표현 수법과 동작 기술이나 기능 기술과 조합하는 것에 의해, 고속이고 고정밀도인 시뮬레이션이 가능하게 된다.
이상과 같이, 본 발명에 따르면, 종래에 비교하여, 대규모 회로 모듈의 타이밍 검증을 고속으로 정밀도 있게 행할 수 있는 타이밍 특성 라이브러리를 제공 가능하다. 종래의 타이밍 검증 방법으로, 모듈을 셀레벨의 타이밍부 라이브러리의 집합체로서 취급하면, 시뮬레이션으로써 타이밍 검증을 행할 때에는, 시뮬레이션 처리 시간이 대이며, 또한, 시뮬레이션의 고속화를 위해, 모듈을 기능 모델+ 모듈 전체의 타이밍으로 표현할 때에는, 모듈 전체의 타이밍을 자동 추출하는 방법은 없고, 사람의 손에 의지하고 있었기 때문에, 공정수가 대이며, 또한 정밀도가 떨어진다고 하는 문제를 본 발명은 극복하고 있다. 본 발명은, 이 문제를 해결하기 위한 방법으로, 이에 따라, 모듈 전체의 타이밍을 타이밍 특성 라이브러리로서, 정밀도 있게 고속으로 추출할 수가 있어, 나아가서는, 타이밍 검증 시에 고속으로 정밀도 좋은 검증 방법을 제공할 수가 있다. 또한, 생성된 타이밍 특성 라이브러리에는 타이밍 룰의 적합 조건을 포함하기 위해서, 모듈에 관여하지 않은 데이터 변화 시에는 유사 에러를 억제할 수 있기 때문에, 검증 공정수의 삭감이 가능해진다.

Claims (18)

  1. 트랜지스터 회로로부터 타이밍 특성을 추출하고, 타이밍 특성 라이브러리를 생성하는 방법에 있어서,
    상기 트랜지스터 회로 데이터를 기초로 게이트를 추출하고,
    출력 타이밍을 결정하는 최종단의 플립플롭(lastFF), 입력이 최초에 도달하는 플립플롭(1stFF)을 각각 상기 게이트 추출 결과로부터 구하고,
    상기 1stFF에 도달하는, 및 상기 IastFF를 통과하는 지연 측정 패스를 탐색하고,
    출력 지연와, 입력의 타이밍 룰을 구하여, 타이밍 특성 라이브러리를 생성하는 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  2. 제1항에 있어서,
    상기 1stFF에 도달하는, 및 상기 lastFF를 통과하는 지연 측정 패스를 탐색하는 처리는,
    상기 트랜지스터 회로의 입력 단자(IN), 출력 단자(OUT), 및 클럭 단자(CK)를 기초로, 상기 IN으로부터 팬아웃측에 최초에 도달하는 클럭 동기 FF(lstFF), 상기 OUT으로부터 팬인측에 최초에 도달하는 클럭 동기 FF(lastFF), 상기 IN에서 상기 1stFF까지의 전(全)경로 상의 회로(lstFF의 데이터 관련 회로), 및 상기 CK로부터 상기 1astFF를 통과하여 상기 OUT까지의 전 경로 상의 회로(lastFF의 관련 회로)를 인식하고,
    상기 인식한 관련 회로를 기초로, 상기 CK로부터 상기 1stFF, 상기 IN으로부터 상기 1stFF, 및 상기 CK로부터 상기 OUT까지의 지연 측정 패스를 탐색하는 처리인 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  3. 제1항에 있어서,
    상기 출력 지연와, 입력의 타이밍 룰을 구하는 처리는,
    상기 인식한 관련 회로를 기초로, 상기 CK의 신호 변화가 상기 lstFF에 전파하는 조건(클럭 활성화 조건)과 상기 IN의 신호 변화가 상기 lstFF에 전파하는 조건(데이터 활성화 조건)으로 이루어지는 활성화 조건을 작성하고,
    상기 트랜지스터 회로 데이터와 상기 탐색한 지연 측정 패스를 기초로, 지연를 측정하고,
    상기 측정된 딜레이값, FF 타이밍 룰, 및 상기 활성화 조건을 기초로, 상기 IN의 상기 CK에 대한 타이밍 룰, 타이밍 룰을 체크하는 룰 적합 조건, 상기 OUT의 상기 CK에 대한 출력 지연를 생성하는 처리인 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  4. 제1항에 있어서,
    상기 트랜지스터 회로 데이터를 기초로 게이트를 추출하는 처리는, 트라이스테이트 게이트도 대상으로 하는 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  5. 제1항 내지 제3항 중 어느 한항에 있어서,
    상기 플립플롭(FF) 외에, 트라이스테이트 게이트도 마찬가지로 대상으로 하는 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  6. 모듈의 타이밍 특성 라이브러리를 기록한 컴퓨터 판독 가능한 기억 매체에 있어서,
    상기 모듈의 입출력 단자 정보에 대응시켜, 출력 지연와 입력의 타이밍 룰을 각각 기억하며,
    상기 모듈의 입출력 단자 정보에 대응시켜, 하위 계층의 기능 모델을 호출하는 정보를 기억한 것을 특징으로 하는 컴퓨터 판독 가능한 기억 매체.
  7. 모듈의 타이밍 특성 라이브러리를 기록한 컴퓨터 판독 가능한 기억 매체에 있어서,
    상기 타이밍 특성 라이브러리는,
    상기 모듈의 입출력 단자를 기록하고,
    상기 모듈의 입력 단자와, 1stFF의 셋업 타임과, 홀드 타임을 대응시켜 기억하고,
    클럭 신호와 입력 단자의 페어에 대해, 룰 적합 조건을 기억하고,
    타이밍 룰 체크부를 기억하고,
    상기 모듈의 출력 단자와, lastFF를 통과하여 출력 단자까지의 최대의 지연를 대응시켜 기록하고,
    상기 모듈의 기능 모델을 하위 계층으로서 호출해야 되는 인스턴스 기술(記述)을 기억하고,
    상기 모듈의 입력 단자를 인스턴스 기술의 입력 단자에 접속하고, 인스턴스 기술의 출력 단자에 상기 지연를 부여하여 상기 모듈의 출력 단자에 접속하는 출력 지연부를 기록한 것을 특징으로 하는 컴퓨터 판독 가능한 기억 매체.
  8. 기존의 부품 설계 자산(모듈)의 기능 모델 라이브러리와, 상기 모듈의 타이밍 특성 라이브러리와, 신규 설계 논리 회로 데이터, 및 입력 파형 데이터를 회로 시뮬레이터에 입력하여,
    신규 설계 논리 회로와 모듈 간, 또는 모듈 간의 타이밍을 체크하고,
    타이밍 위반 개소를 표시하는 것을 특징으로 하는 LSI의 설계 방법.
  9. 트랜지스터 회로 데이터로부터, 상기 트랜지스터 회로의 타이밍 특성을 추출하여, 타이밍 특성 라이브러리를 생성하는 방법에 있어서,
    상기 트랜지스터 회로를 기초로 게이트·FF(플립플롭) 회로를 복원하고,
    상기 복원된 게이트·FF 회로와, 미리 지정되어 있는 타이밍 특성을 추출하여야 할 입력 단자(IN), 출력 단자(OUT), 및 클럭 단자(CK)를 기초로, 상기 IN로부터 팬아웃측에 최초에 도달하는 클럭 동기 FF(1stFF),상기 OUT으로부터 팬인측에 최초에 도달하는 클럭 동기 FF(lastFF), 상기 IN으로부터 상기 1stFF까지의 전 경로 상의 회로(1stFF의 데이터 관련 회로), 및 상기 CK로부터 상기 lastFF를 통과하여 상기 OUT까지의 전 경로 상의 회로(lastFF의 관련 회로)를 상기 1stFF/1astFF와 관련 회로로서 인식하고,
    상기 인식한 관련 회로를 기초로, 상기 CK로부터 상기 1stFF, 상기 IN으로부터 상기 1stFF, 및 상기 CK로부터 상기 OUT까지의 지연 측정 패스를 탐색하고,
    상기 인식한 관련 회로를 기초로, 상기 CK의 신호 변화가 상기 1stFF에 전파하는 조건(클럭 활성화 조건)과 상기 IN의 신호 변화가 상기 1stFF에 전파하는 조건(데이터 활성화 조건)으로 이루어지는 활성화 조건을 작성하고,
    상기 트랜지스터 회로 데이터와 상기 탐색한 지연 측정 패스를 기초로, 지연를 측정하고,
    상기 측정된 딜레이값, FF 타이밍 룰, 및 상기 활성화 조건을 기초로, 상기 IN의 상기 CK에 대한 타이밍 룰, 타이밍 룰을 체크하는 룰 적합 조건, 상기 OUT의 상기 CK에 대한 출력 지연를 포함하는 타이밍 특성 라이브러리를 생성하는 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  10. 모듈의 타이밍 특성 라이브러리를 기록한 컴퓨터 판독 가능한 기억 매체에 있어서,
    상기 타이밍 특성 라이브러리는,
    상기 모듈의 입력 단자로부터 팬아웃측에 최초에 도달하는 클럭 동기 FF를 lstFF로서, 모든 1stFF 후보에 대하여 입력의 셋업 타임과, 홀드 타임을 구한 것중에서, 이들의 최대치를 상기 입력 단자에 대응시켜 기록하고,
    상기 각 1stFF 후보에게 대응시켜, 클럭의 변화가 상기 1stFF 후보에게 도달하는 활성화 조건과, 입력의 변화가 상기 1stFF 후보에게 도달하는 활성화 조건을 기록하고,
    상기 모듈의 출력 단자로부터 팬인측에 최초에 도달하는 클럭 동기 FF를 1 astFF로서, 상기 모듈의 클럭 단자로부터 상기 lastFF를 통과하여, 상기 모듈의 출력 단자까지의 지연 중 최대의 지연를 상기 출력 단자에 대응시켜 기록한
    것을 특징으로 하는 모듈의 타이밍 특성 라이브러리를 기억한 컴퓨터 판독 가능한 기억 매체.
  11. 트랜지스터 회로 데이터, 상기 트랜지스터 회로 내의 PMOS/NMOS 구분과 전원/GND(그라운드) 신호를 지시하는 보조 정보, 및 내부의 FF 회로의 셋업·홀드 타임(FF 타이밍 룰)으로부터, 상기 트랜지스터 회로의 타이밍 특성을 추출하여, 타이밍 특성 라이브러리를 자동 생성하는 방법에 있어서,
    상기 트랜지스터 회로와 상기 보조 정보를 기초로 게이트·FF(플립플롭, (여기서는 트라이스테이트 소자도 포함한다)) 회로를 복원하고(스텝 11),
    상기 게이트·FF 회로와, 미리 지정되어 있는 타이밍 특성을 추출하여야 할 입력 단자, 출력 단자, 및 클럭 단자(이하, IN, OUT, CK라 함)를 기초로, 상기 IN으로부터 팬아웃측에 최초에 도달하는 클럭 동기 FF(1stFF), 상기 OUT으로부터 팬인측에 최초에 도달하는 클럭 동기 FF(lastFF), 상기 IN으로부터 상기 lstFF까지의 전 경로 상의 회로(1stFF의 데이터 관련 회로), 및 상기 CK로부터 상기 lastFF를 통과하여 상기 OUT까지의 전 경로 상의 회로(lastFF의 관련 회로)를 1stFF/lastFF와 관련 회로로서 인식하고(스텝 12),
    상기 관련 회로를 기초로, 상기 CK에서 상기 1stFF까지, 상기 IN에서 상기 lstFF까지, 및 상기 CK에서 OUT까지의 모든 패스 지연를 측정하기 위한 지연 측정용 테스트 패턴을 작성하고(스텝 17),
    상기 관련 회로를 기초로, 상기 CK의 신호 변화가 상기 1stFF에 전파하는 조건(클럭 활성화 조건)과 상기 IN의 신호 변화가 상기 1stFF에 전파하는 조건(데이터 활성화 조건)으로 이루어지는 활성화 조건을 작성하고(스텝 14) ,
    상기 트랜지스터 회로 데이터와 스텝 17에서 작성한 지연 측정용 테스트 패턴을 기초로, 지연 측정 장치에 의해 지연를 측정하고(스텝 15),
    측정된 딜레이값, 상기 FF 타이밍 룰, 및 상기 활성화 조건을 기초로, 상기 IN의 상기 CK에 대한 타이밍 룰, 타이밍 룰을 체크하는 룰 적합 조건, 상기 OUT의 상기 CK에 대한 출력 지연를 포함하는 타이밍 특성 라이브러리를 생성하는 (스텝16) 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  12. 트랜지스터 회로 데이터, 상기 트랜지스터 회로 내의 PMOS/NMOS 구분과 전원/GND(그라운드)신호를 지시하는 보조 정보, 및 내부의 FF 회로의 셋업·홀드 타임(FF 타이밍 룰)으로부터, 상기 트랜지스터 회로의 타이밍 특성을 추출하여, 타이밍 특성 라이브러리를 자동 생성하는 방법에 있어서,
    상기 트랜지스터 회로와 상기 보조 정보를 기초로 게이트·FF(플립플롭, (여기서는 트라이스테이트 소자도 포함한다)) 회로를 복원하고(스텝 11),
    상기 게이트·FF 회로와, 미리 지정되어 있는 타이밍 특성을 추출하여야 할 입력 단자, 출력 단자, 및 클럭 단자(이하, IN, OUT, CK라 함)를 기초로, 상기 IN으로부터 팬아웃측에 최초에 도달하는 클럭 동기 FF(1stFF), 상기 OUT으로부터 팬인측에 최초에 도달하는 클럭 동기 FF(lastFF), 상기 IN으로부터 상기 1stFF까지의 전 경로 상의 회로(1stFF의 데이터 관련 회로), 및 상기 CK로부터 상기 1ast FF를 통과하여 상기 OUT까지의 전 경로 상의 회로(lastFF의 관련 회로)를 1stFF/IastFF와 관련 회로로서 인식하고(스텝12),
    상기 관련 회로를 기초로, 상기 CK의 신호 변화가 상기 1stFF에 전파하는 조건(클럭 활성화 조건)과 상기 IN의 신호 변화가 상기 1stFF에 전파하는 조건(데이터 활성화 조건)으로 이루어지는 활성화 조건을 작성하고(스텝 14),
    상기 활성화 조건과 미리 작성된 상기 트랜지스터 회로의 단자에 대한 테스트 패턴열로부터, 지연를 측정하는 시간을 자동적으로 결정하고(스텝 18), 결정된 시간과 상기 테스트 패턴열, 및 상기 트랜지스터 회로 데이터로부터, 지연 측정 장치에 의해 지연를 측정하고(스텝 15),
    측정된 딜레이값, 상기 FF 타이밍 룰, 및 상기 활성화 조건을 기초로, 상기 IN의 상기 CK에 대한 타이밍 룰, 타이밍룰을 체크하는 룰 적합 조건, 상기 OUT의 상기 CK에 대한 출력 지연를 포함하는 타이밍 특성 라이브러리를 생성하는 (스텝16) 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  13. 트랜지스터 회로 데이터, 상기 트랜지스터 회로 내의 PMOS/NMOS 구분과 전원/GND(그라운드) 신호를 지시하는 보조 정보, 및 내부의 FF 회로의 셋업·홀드 타임(FF 타이밍 룰)으로부터, 상기 트랜지스터 회로의 타이밍 특성을 추출하여, 타이밍 특성 라이브러리를 자동 생성하는 방법에 있어서,
    상기 트랜지스터 회로와 상기 보조 정보를 기초로 게이트·FF(플립플롭, (여기서는 트라이스테이트 소자도 포함한다)) 회로를 복원하고(스텝 1l),
    상기 게이트·FF 회로와, 미리 지정되어 있는 타이밍 특성을 추출하여야 할 입력 단자, 출력 단자, 및 클럭 단자(이하, IN, OUT, CK로 함)를 기초로, 상기 IN으로부터 팬아웃측에 최초에 도달하는 클럭 동기 FF(1stFF), 상기 OUT으로부터 팬인측에 최초에 도달하는 클럭 동기 FF(lastFF), 상기 IN으로부터 상기 1stFF까지의 전 경로 상의 회로(1stFF의 데이터 관련 회로), 및 상기 CK로부터 상기 last FF를 통과하여 상기 OUT까지의 전 경로 상의 회로(lastFF의 관련 회로)를 1stFF/lastFF와 관련 회로로서 인식하고(스텝 12),
    상기 관련 회로를 기초로, 상기 CK로부터 상기 lstFF, 상기 IN으로부터 상기 1stFF, 및 상기 CK로부터 OUT까지의 모든 지연 측정 패스를 탐색하고(스텝 13), 상기 관련 회로를 기초로, 상기 CK의 신호 변화가 상기 1stFF에 전파하는 조건(클럭 활성화 조건)과 상기 IN의 신호 변화가 상기 1stFF에 전파하는 조건(데이터 활성화 조건)을 작성하여 활성화 조건 파일로 출력하고, 동시에 활성화 조건에 나타나는 상기 트랜지스터 회로 내의 신호명을 Tr. 회로 신호 파일로 출력하고(스텝1004),
    상기 Tr. 회로 신호 파일을 기초로, 상기 트랜지스터 회로 내의 신호명과, 타이밍 특성 라이브러리를 사용하는 상기 트랜지스터 회로의 기능 모델 내의 신호명과의 대응을 나타내는 Tr. 회로-기능 모델 신호 대응표를 사람의 손으로 작성하여 상기 트랜지스터 회로 데이터와 상기 지연 측정 패스를 기초로, 지연 측정 장치에 의해 지연를 측정하고(스텝 15),
    측정된 딜레이값, 상기 FF 타이밍 룰, 상기 활성화 조건 파일, 및 상기 Tr. 회로-기능 모델 신호 대응표를 기초로, 상기 IN의 상기 CK에 대한 타이밍 룰, 타이밍 룰을 체크하는 룰 적합 조건, 상기 OUT의 상기 CK에 대한 출력 지연를 포함하는 타이밍 특성 라이브러리를, 상기 기능 모델 내의 신호명으로 룰 적합 조건을 표현하여 생성하는(스텝 161) 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  14. 트랜지스터 회로 데이터, 상기 트랜지스터 회로 내의 PMOS/NMOS 구분과 전원/GND(그라운드) 신호를 지시하는 보조 정보, 및 내부의 FF 회로의 셋업·홀드 타임(FF 타이밍 룰)으로부터, 상기 트랜지스터 회로의 타이밍 특성을 추출하여, 타이밍 특성 라이브러리를 자동 생성하는 방법에 있어서,
    상기 트랜지스터 회로와 상기 보조 정보를 기초로 게이트·FF(플립플롭, (여기서는 트라이스테이트 소자도 포함한다))회로를 복원하고(스텝 11),
    상기 게이트·FF 회로와, 미리 지정되어 있는 타이밍 특성을 추출하여야 할 입력 단자, 출력 단자, 및 클럭 단자(이하, IN, OUT, CK라 함)를 기초로, 상기 IN으로부터 팬아웃측에 최초에 도달하는 클럭 동기 FF(lstFF), 상기 OUT으로부터 팬인측에 최초에 도달하는 클럭 동기 FF(lastFF), 상기 IN으로부터 상기 1stFF까지의 전 경로 상의 회로(1stFF의 데이터 관련 회로), 및 상기 CK로부터 상기 last FF를 통과하여 상기 OUT까지의 전 경로 상의 회로(lastFF의 관련 회로)를 1stFF/lastFF와 관련 회로로서 인식하고(스텝 12),
    상기 관련 회로를 기초로, 상기 CK로부터 상기 lstFF, 상기 IN으로부터 상기 lstFF, 및 상기 CK로부터 OUT까지의 모든 지연 측정 패스를 탐색하여, 동시에 1stFF의 단자에 접속하는 신호를 인식하고(스텝 19),
    상기 관련 회로를 기초로, 상기 CK의 신호 변화가 상기 1stFF에 전파하는 조건(클럭 활성화 조건)과 상기 IN의 신호 변화가 상기 1stFF에 전파하는 조건(데이터 활성화 조건)으로 이루어지는 활성화 조건을 작성하고(스텝14),
    상기 트랜지스터 회로 데이터와 스텝 13에서 탐색한 지연 측정 패스를 기초로, 지연 측정 장치에 의해 지연를 측정하고, 동시에 1stFF의 단자 정보를 기초로 1stFF의 타이밍 룰을 산출하고(스텝 15),
    측정된 딜레이값, 상기 FF 타이밍 룰, 및 상기 활성화 조건을 기초로, 상기 IN의 상기 CK에 대한 타이밍 룰, 타이밍 룰을 체크하는 룰 적합 조건, 상기 OUT의 상기 CK에 대한 출력 지연를 포함하는 타이밍 특성 라이브러리를 생성하는 (스텝 16) 것을 특징으로 하는 트랜지스터 회로의 타이밍 특성 추출 방법.
  15. MOS 트랜지스터 회로 데이터를 기초로, 게이트 회로 데이터를 추출하는 방법에 있어서,
    MOS 트랜지스터 회로 데이터를 상호 소스 또는 드레인끼리를 접속하는 MOS 트랜지스터의 그룹(게이트 추출 기본 단위)으로 분할하는 제1 스텝과,
    상기 각 게이트 추출 기본 단위에 대해, 상기 기본 단위 내의 전 MOS의 유효 방향을 결정하는 제2 스텝과,
    상기 게이트 추출 기본 단위를, 출력이 동일 게이트군을 구성하는 MOS군(동일 출력 게이트 그룹)으로 분할하는 제3 스텝과,
    상기 동일 출력 게이트 그룹을 1개의 게이트를 구성하는 단위(게이트 구성 단위)로 분할하는 제4 스텝과,
    상기 게이트 구성 단위마다 MOS 트랜지스터군을 게이트 회로로 변환하고, 상기 게이트 회로 데이터를 출력하는 제5 스텝
    을 구비하는 것을 특징으로 하는 MOS 트랜지스터 회로에서의 게이트 추출 방법.
  16. 제15항에 있어서,
    상기 제3 스텝은, 게이트 출력점과 상기 게이트 추출 기본 단위 내의 논리값의 발생원인 논리 소스를 결정하는 제6 스텝과, 상기 기본 단위를 동일 출력 게이트 그룹으로 분할하는 제7 스텝으로 이루어지고,
    상기 제6 스텝은, MOS의 게이트 단자와의 접속점을 게이트 출력점의 집합의 초기치, 전원과 그라운드를 논리 소스의 집합의 초기치로 설정하고, 새로운 게이트 출력점이 탐색되지 않을 때까지 게이트 출력점과 논리 소스의 탐색을 반복하는 처리이고, 상기 탐색 처리는, 상기 제2 스텝에서 결정된 유효 방향을 따르는 MOS의 경로를 MOS 트레이스 경로로 정의하면, 복수의 다른 논리 소스로부터의 MOS 트레이스 경로가 처음으로 교차하는 점을 새로운 게이트 출력점으로 하고, 동시에 이 교차점을 새로운 논리 소스로 하고, 상기 교차점을 게이트 출력점과 논리 소스의 양쪽의 집합에 부가하는 처리이며,
    상기 제7 스텝은, 각 게이트 출력점에 도달하는 MOS 트레이스 경로 상의 직전의 논리 소스와 상기 게이트 출력점에 둘러싸인 MOS군을 동일 출력 게이트 그룹으로서, 상기 기본 단위를 상기 동일 출력 게이트 그룹으로 분할하는 것을 특징으로 하는 MOS 트랜지스터 회로에서의 게이트 추출 방법.
  17. 제15항에 있어서,
    상기 제4 스텝은, 동일 출력 게이트 그룹 내의 각 논리 소스로부터 게이트 출력점까지의 하나의 MOS 트레이스 경로 상의 MOS군을 MOS 체인이라 정의하면, 상기 동일 출력 게이트 그룹을 상기 MOS 체인으로 분리하는 제8 스텝과, 상기 MOS 체인을 게이트 구성 단위로 통합하는 제9 스텝으로 이루어지고,
    상기 제9 스텝은, 논리 소스의 논리값를 게이트 출력점까지 전송하기 위한 조건을 전송 조건이라 정의하면, 다른 논리 소스를 갖고, 전송 조건이 동시에 성립하지 않은 2개의 MOS 체인(파트너 체인1, 파트너 체인2)을 페어 체인으로서 통합하는 처리와,
    복수의 상기 페어 체인을 통합하고, 통합된 페어 체인군을 새로운 하나의 페어 체인으로서 재정의하고, 통합되는 페어 체인이 없어질 때까지 페어 체인의 통합을 반복하는 처리로 이루어지고,
    상기 페어 체인의 통합은, 모든 페어 체인 중에서, 동일한 파트너 체인(SameP)을 갖는 페어 체인군을 새로운 페어 체인으로서 통합하고, 새로운 페어 체인의 파트너 체인 1을 상기 SameP, 파트너 체인 2를 통합 전의 페어 체인군에 있어서의 상기 SameP의 파트너 체인군으로 하고, 새로운 페어 체인군과 통합되어 있지 않은 페어 체인군을 합하여, 페어 체인이 새로운 집합으로서 재정의하는 처리이며,
    상기 페어 체인의 통합을 반복한 결과, 최종적으로 할 수 있는 페어 체인을 게이트 구성 단위로 하는 것을 특징으로 하는 MOS 트랜지스터 회로에서의 게이트 추출 방법.
  18. 제15항에 있어서,
    상기 각 게이트 추출 기본 단위에 대해, 상기 기본 단위 내의 전 MOS의 유효 방향을 결정하는 처리는,
    소스와 드레인 사이에서 논리값 1 또는 0을 전파하기 위한 논리적인 방향을 결정하는 처리인 것을 특징으로 하는 MOS 트랜지스터 회로에서의 게이트 추출 방법.
KR10-2000-7001718A 1997-08-20 1998-08-04 트랜지스터 회로의 타이밍 특성 추출 방법, 타이밍 특성라이브러리를 기억한 기억 매체, lsi의 설계 방법, 및게이트 추출 방법 KR100521289B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP22334997 1997-08-20
JP1997-223349 1997-08-20
JP1997-342504 1997-12-12
JP34250497 1997-12-12
PCT/JP1998/003455 WO1999009497A1 (fr) 1997-08-20 1998-08-04 Procede d'extraction de caracteristiques de synchronisation de circuits a transistors, support de stockage stockant une bibliotheque de caracteristiques de synchronisation, procede de conception de lsi et procede d'extraction par grille

Publications (2)

Publication Number Publication Date
KR20010023096A true KR20010023096A (ko) 2001-03-26
KR100521289B1 KR100521289B1 (ko) 2005-10-17

Family

ID=26525412

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-7001718A KR100521289B1 (ko) 1997-08-20 1998-08-04 트랜지스터 회로의 타이밍 특성 추출 방법, 타이밍 특성라이브러리를 기억한 기억 매체, lsi의 설계 방법, 및게이트 추출 방법

Country Status (5)

Country Link
US (1) US6557150B1 (ko)
JP (1) JP3851357B2 (ko)
KR (1) KR100521289B1 (ko)
TW (1) TW387076B (ko)
WO (1) WO1999009497A1 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4462745B2 (ja) * 2000-10-13 2010-05-12 株式会社ルネサステクノロジ 遅延時間計算方法及び記録媒体
US6684375B2 (en) * 2000-11-22 2004-01-27 Matsushita Electric Industrial Co., Ltd. Delay distribution calculation method, circuit evaluation method and false path extraction method
JP4237434B2 (ja) * 2001-11-26 2009-03-11 富士通マイクロエレクトロニクス株式会社 集積回路のホールドタイムエラー修正方法及びその修正プログラム
US6684615B1 (en) * 2002-07-19 2004-02-03 Lastec, Inc. Hinge system for articulating mower decks
US7117465B2 (en) * 2003-06-30 2006-10-03 Intel Corporation Application of the retimed normal form to the formal equivalence verification of abstract RTL descriptions for pipelined designs
KR100504117B1 (ko) * 2003-07-31 2005-07-27 삼성전자주식회사 네거티브 셋업/홀드 타임을 가지는 하드 매크로 코어를고려한 에이치디엘 시뮬레이션 방법
JP2005196265A (ja) * 2003-12-26 2005-07-21 Matsushita Electric Ind Co Ltd 遅延ライブラリ作成方法および遅延ライブラリ作成装置
US7421675B1 (en) 2006-01-17 2008-09-02 Xilinx, Inc. Annotating timing information for a circuit design for increased timing accuracy
US7451417B1 (en) * 2006-05-12 2008-11-11 Xilinx, Inc. Timing annotation accuracy through the use of static timing analysis tools
JP4388965B2 (ja) * 2007-02-13 2009-12-24 富士通株式会社 クロックゲーティング解析プログラム、該プログラムを記録した記録媒体、クロックゲーティング解析装置、およびクロックゲーティング解析方法
JP4985211B2 (ja) * 2007-08-16 2012-07-25 富士通株式会社 論理回路のシミュレーション
US7840925B1 (en) 2008-03-13 2010-11-23 Xilinx, Inc. Source specific timing checks on synchronous elements using a static timing analysis engine
JP5148434B2 (ja) * 2008-09-22 2013-02-20 ルネサスエレクトロニクス株式会社 ホールドタイムエラーの収束方法、収束装置、及び収束プログラム
US8362622B2 (en) * 2009-04-24 2013-01-29 Synopsys, Inc. Method and apparatus for placing transistors in proximity to through-silicon vias
US9507897B2 (en) * 2014-06-14 2016-11-29 Taiwan Semiconductor Manufacturing Company Limited Circuit arrangement for modeling transistor layout characteristics
US9405871B1 (en) * 2014-12-05 2016-08-02 Xilinx, Inc. Determination of path delays in circuit designs
US9984194B2 (en) * 2015-09-15 2018-05-29 Arm Limited Integrated circuit design
US11704461B1 (en) * 2022-01-04 2023-07-18 International Business Machines Corporation Dynamic control of coverage by a verification testbench

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2956228B2 (ja) 1991-01-16 1999-10-04 富士通株式会社 デジタル回路のタイミングチェック方式
JPH04316166A (ja) 1991-04-15 1992-11-06 Dainippon Printing Co Ltd Lsiにおけるタイミング情報算出装置
JPH0618617A (ja) 1992-07-01 1994-01-28 Dainippon Printing Co Ltd 集積回路クロックド素子動作検証方法
JP2891004B2 (ja) 1992-12-07 1999-05-17 日本電気株式会社 論理icのタイミングチェック方式
JPH06348775A (ja) 1993-06-11 1994-12-22 Hitachi Ltd ハイレベルモデル自動生成方法
JPH07287051A (ja) 1994-04-20 1995-10-31 Fujitsu Ltd 論理シミュレータ用入力データ作成装置
JPH08221456A (ja) 1995-02-17 1996-08-30 Hitachi Ltd タイミング検証方法及びタイミング検証システム
JP2755237B2 (ja) 1995-11-29 1998-05-20 日本電気株式会社 シミュレーション装置およびその方法
JPH09179885A (ja) 1995-12-22 1997-07-11 Hitachi Ltd Mosトランジスタ回路のゲート回路変換方法
WO1997025681A1 (fr) * 1996-01-08 1997-07-17 Fujitsu Limited Dispositif interactif de cao pour la conception de la mise en boitier d'un circuit logique
JP3161314B2 (ja) 1996-01-19 2001-04-25 ヤマハ株式会社 論理シミュレーション装置および論理シミュレート方法
JP2853649B2 (ja) 1996-03-22 1999-02-03 日本電気株式会社 論理シミュレーション用モデルの作成方法
JP2882359B2 (ja) * 1996-04-27 1999-04-12 日本電気株式会社 レイアウト設計装置
JPH10327047A (ja) * 1997-05-22 1998-12-08 Sony Corp 半導体集積回路およびその設計方法
US6167001A (en) * 1999-01-26 2000-12-26 Xilinx, Inc. Method and apparatus for measuring setup and hold times for element microelectronic device

Also Published As

Publication number Publication date
US6557150B1 (en) 2003-04-29
KR100521289B1 (ko) 2005-10-17
WO1999009497A1 (fr) 1999-02-25
JP3851357B2 (ja) 2006-11-29
TW387076B (en) 2000-04-11

Similar Documents

Publication Publication Date Title
KR100521289B1 (ko) 트랜지스터 회로의 타이밍 특성 추출 방법, 타이밍 특성라이브러리를 기억한 기억 매체, lsi의 설계 방법, 및게이트 추출 방법
CN108830008B (zh) 一种标准单元库全模型的测试方法及测试系统
US7117466B2 (en) System and method for correlated process pessimism removal for static timing analysis
US6311317B1 (en) Pre-synthesis test point insertion
US6148436A (en) System and method for automatic generation of gate-level descriptions from table-based descriptions for electronic design automation
US5210699A (en) Process for extracting logic from transistor and resistor data representations of circuits
US20050091025A1 (en) Methods and systems for improved integrated circuit functional simulation
JP2000148808A (ja) スケジュ―リングされた動作記述に対するストラクチュラルrtlの正当性検証方法
JPH05143674A (ja) 回路図形データベースからの自動論理モデル作成方法
US7437701B1 (en) Simulation of a programming language specification of a circuit design
US11347917B2 (en) Determining and verifying metastability in clock domain crossings
Lavagno et al. Synthesis of hazard-free asynchronous circuits with bounded wire delays
CN107844678B (zh) 包含IP/Memory时序路径的spice仿真方法
US7747972B2 (en) Methods and apparatuses for timing analysis of electronic circuits
CN107784185B (zh) 一种门级网表中伪路径的提取方法、装置及终端设备
US20040044975A1 (en) Combinational equivalence checking methods and systems with internal don't cares
CN114586036A (zh) 利用寄存器传输级矢量的毛刺功率分析
US9104829B2 (en) Method of validating timing issues in gate-level simulation
US20220327269A1 (en) Computing device and method for detecting clock domain crossing violation in design of memory device
US6301691B1 (en) System and method for detecting NFETs that pull up to VDD and PFETs that pull down to ground
CN112613185B (zh) 一种复合电流源噪声的建模方法
CN117350208A (zh) 时序逻辑元件性能检查方法及设备
Oh et al. Efficient logic-level timing analysis using constraint-guided critical path search
Jones Incremental vlsi design systems based on circular attribute grammars (fixed point computation, computer aided design)
US20240086602A1 (en) Clock relationship based re-convergence analysis

Legal Events

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