KR900008022B1 - 동기배열논리회로 및 시스템 - Google Patents

동기배열논리회로 및 시스템 Download PDF

Info

Publication number
KR900008022B1
KR900008022B1 KR1019870011484A KR870011484A KR900008022B1 KR 900008022 B1 KR900008022 B1 KR 900008022B1 KR 1019870011484 A KR1019870011484 A KR 1019870011484A KR 870011484 A KR870011484 A KR 870011484A KR 900008022 B1 KR900008022 B1 KR 900008022B1
Authority
KR
South Korea
Prior art keywords
transistors
node
circuit
array
transistor
Prior art date
Application number
KR1019870011484A
Other languages
English (en)
Other versions
KR880005754A (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 KR880005754A publication Critical patent/KR880005754A/ko
Application granted granted Critical
Publication of KR900008022B1 publication Critical patent/KR900008022B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier the substrate being a semiconductor body
    • H01L27/10Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
    • H01L27/118Masterslice integrated circuits
    • H01L27/11803Masterslice integrated circuits using field effect technology
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/08Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using semiconductor devices
    • H03K19/094Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using semiconductor devices using field-effect transistors
    • H03K19/096Synchronous circuits, i.e. using clock signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1738Controllable logic circuits using cascode switch logic [CSL] or cascode emitter coupled logic [CECL]

Abstract

내용 없음.

Description

동기배열논리회로 및 시스템
제1도는 본 발명의 바람직한 실시예의 회로를 사용하여 제조되는 집적회로의 일부분에 관한 블럭도.
제2도는 제1도에 도시된 배열내에 있는 트랜지스터들의 개념적인 배치를 예시하는 개략도.
제3도는 제2도회로의 동작을 예시하는 일련의 타이밍도.
제4도는 제1도 배열에 관한 다른 개념적인 배치를 예시하는 개략도.
제5도는 부울기능을 수행하는 트랜지스터 배열을 예시하는 개략도.
제6도는 트랜지스터들을 적게 사용한 등가 부울기능의 수행을 예시하는 개략도.
제 7도는 제1도에 도시된 멀티플렉서와 기억소자를 상세하게 예시하는 개략도.
제8도는 본 발명의 시스템을 사용한 여러 부울식들이 집적회로로 수행되는것을 예시하는 배치도.
제9도는 본 발명의 시스템에 의해 동작되는 방법의 바람직한 실시예를 예시하는 플로우차트.
* 도면의 주요부분에 대한 부호의 설명
10,20 : 셀(cel1) 12 : 트랜지스터 배열
15 : 멀티플렉서 18 : 기억소자
25 : 클럭 라인 27 : 검사 라인
35a,b : 입력노드 37 : 스틱(stick)
50 : 상부노드 52 : 하부노드
101-107 : 수평금속 라인 110-113 : 확산영역
120-122 : 트랜지스터
발명의 배경
발명의 분야
본 발명은 사용자에의해 시스템에 제공되는 부울식이나 다른 고레벨정보를 사용한 부울기능과 다른 논리기능을 수행하는 집적회로의 제조에 관한 마스크를 자동적으로 발생하는 시스템 및 그 회로에 관한 것이다.
선행기술의 설명
초대규모 집적회로의 제조가 현재 다양한 기술을 사용하여 수행된다. 하나의 끝부분이 커스텀(custom)설계이며, 여기서 집적회로 "칩"상에 편입되는 각각의 성분이 수동으로 선택되어 제조되는 칩상에서 그 위치가 결정된다. 스펙트럼의 나머지 단부는 게이트 배열들이며, 이 배열에 모든 논리소자들이 형성되어 칩에의해 수행되는 기능전에 칩상에 설치된다는 것이 공지되어졌다. 이후로 CAD 시스템을 사용하여, 칩제조자의 도움으로 사용자는 원하는 논리기능들을 만들기위하여 게이트들을 위한 상호연결패턴을 정하는 마스크를 만든다.
설계자의 관점으로볼때, 초대규모 커스텀 집적회로의 설계는 타스크(task)크기에 기인하는 여러문제들을 제기한다. 첫째로, 많은 사람과 시간이 대규모 칩을 설계하여 배치하기 위해 종종 요구된다. 이러한 완전한 커스텀 설계에 관한 전형적인 생산성은 한사람이 일주일에 약 1-10개의 게이트 정도이다. 더욱이, 실질적인 기술가격이 고객원조와 사용된 컴퓨터 시간의 가격을 위하여 커스텀 배치의 고객에게 부과되어야만 한다. 이러한 공정의 커스텀 성질이 비교될 정도의 높은 가격을 초래한다, 두번째로, 집적회로들이 더욱 복잡해지므로써, 컴퓨터 재원의 증가량이 모의(simulation), 배치 및 유사한 것들을 위하여 더욱 강력하고 값비싼 컴퓨터에 소비되어야만 한다. 부가적으로, 완전한 칩들의 적절한 기능을 증명하기위해 사용되는 자동검사시스템을 제어하는 컴퓨터 프로그램을 준비하기 위하여 많은 노력이 필요하다. 커스텀 배치와 관련된 다른 관점은 공정한도 근방에서 동작하기위하여 실리콘 구조를 부차적으로 필요로한다는 것이다. 이것은 실질적인 제한이 제조수율에 놓이기때문에 바람직하지 않은 경우이다.
이러한 난점들에 관하여, 여러 접근방법이 집적회로의 설계를 자동화시키기 위하여 시도되었다. 예를들면, 표준셀들과 게이트 배열시스템이 논리개략도를 획득하여 이것을 실리콘으로 수행하기 위하여 사용되었다. 그러나, 복잡한 기능들에 관한 대부분의 설계노력은 여전히 수동으로 준비되어야만하는 논리개략도를 만드는 것과 관련되어있다. 더욱이, 일반적으로 게이트 배열들과 표준 셀들은 사용한 실리콘 면적에서 비교적 비효율적이었다. 칩상에 정해진 모든 게이트들의 사용은 극단적으로 있을수가 없으며, 전형적인 설계는 흔히 게이트의 3/4 또는 그보다적은 수를 사용한다. 그결과, 칩에 관한 제조비용이 불필요하게 높으며, 실리콘 면적은 최종 설계에서 사용되지않는 기능들로 할당되어야만 한다. 칩면적을 증가시키면 수율이 감소하며 가격이 증가한다는것은 주지된 사실이다.
발명의 개요
자동적으로 설계되어, 설계자에게 노력이 최소한으로 들고, 수행되기위해 요구되는 논리기능들과 같은 정도의 실리콘면적만을 사용하는 방법으로 집적회로를 정할 수 있는 시스템과 회로에 관한 필요성이 대두되었다. 이와같은 방법으로, 커스텀 배치에 고유한 설계지연과 게이트 배열들과 표준 셀들에 고유한 비효율성을 피하면서 효율적으로 완전한 회로가 개발되어 제조될 수 있다.
설계자의 구조와 배치구조사이의 직접적인 연결이 제거된 시스템이 본원에서 개발되었다. 본원의 시스템에서 배치소프트웨어는 설계를 증명하기 위하여 사용되는 동일한 네트리스트(netlist)로부터 동작하나, 본원의 시스템은 최선의 속도와 최소의 다이면적을 얻기위하여 하부로부터 상부로 이 설계를 재분할한다. 이러한 최적화는 제조되는 회로에 관해 요망되는 전반적인 기능성과 속도를 지정하는 것을 단지 필요로하는 설계자로부터 감춰졌다. 이 시스템은 설계자가 시스템의 능력을 초과하려고하는 경우에 설계자에계 경고를 제공하면서, 설계자의 기능 성명을 받아들여 집적회로 제조용 마스크들을 만들었다. 본 출원의 시스템을 사용하여 실계된 회로들이 레이스(race)위험을 제거하기위하여 동기한다. 설계되는 회로작용의 설명이 수학적이기 때문에, 설계자의 논리는 최선의 가능한 효율적인 방법으로 요구되는 기능을 달성하기 위하여 이 시스템에 의해 변형될 수 있다 이것이 칩의 전체적인 크기를 감소시키면서 속도이득을 제공한다.
바람직한 실시예에서, 본원의 시스템은 각각의 N 채널 트랜지스터를 흔히 요구하는 대부분의 상보형 P채널 트랜지스터들의 제거를 허용하는 "의사(pseudo)-CMOS"기술에 입각한다. 수행되는 논리기능들은 트랜지스터들의 배열에 의해 제공된다. 본 출원의 시스템을 사용하여 수행되는 각각의 기능이 셀로서 명명되며, 따라서 필요한 많은 셀들이 하나의 칩상에 적합되여 사용될 수 있다. 주어진 기능들을 수행하는 셀들이상호연결정보를 사용한 컴퓨터에 의해 만들어지기 때문에, 이러한 셀들은 밀집하여 효과적인 방법으로 제조될 수 있다. 그결과, 본 출원의 기술을 사용하여 제조되는 칩들이 게이트 배열들과 표준 셀들보다 7배 이상의 밀도를 갖는다. 그 결과의 회로가 용장도(redundancy)없이 완전하게 검사가능하다.
본원의 시스템은 회로상에서 모든 트랜지스터가 특별하게 필요하고 실리콘 또는 논리에서 용장도가 없는 커스텀 집적회로를 제공한다. 다른 한편으로, 전체 집적회로의 위상이 컴퓨터에 의해 배치되어 대규모 회원들을 신속하게 설계하여 제조할 수 있다. 예를들어, 부울식이 주어지면, 가산기에 관한 마스크들이 수시간내에 설계될 수 있다. 본원의 시스템은 회로설계자가 검사를 할 필요가 없도록하는데, 그 까닭은 본원의 시스템이 검사가능한 회로를 자동적으로 구성하여 검사프로그램을 자동적으로 발생한다. 칩성능은 회로내에 있는 모든 소자들의 최악의 경우의 예비특성 모의에 의해 보장될 수 있다.
한 실시예에서, 본원의 시스템을 사용하여 제조된 회로는, 클럭신호들의 소스, 제1, 제2와 제3주사노드(node), 제2주사노드에 연결되어 클럭신호들을 수신하도록 연결된 제1기억소자, 제3주사노드에 연결되어 클럭신호들을 수신하도륵 연결된 제2기억소자, 제1과 제2입력노드들과 제1과 제2출력노드들을 각각 갖는 제1과 제2트랜지스터배열들, 검사신호를 공급하는 검사노드, 검사신호에 응답하여 제1주사노드 또는 제1출력노드중 하나를 제1기억소자에 연결하기 위하여 검사노드, 제1주사노드와 제1출력노드 각각에 연결되며, 제1주사노드와 제1기억소자 사이에 연결된 제1스위칭수단, 및 검사신호에 응답하여 제2주사노드 또는 제2출력노드중 하나를 제2기억소자에 연결하기위하여 검사노드, 제2주사노드와 제2출력노드 각각에 연결되며, 제2주사노드와 제2기억소자 사이에 연결된 제2스위칭수단을 포함한다. 바람직한 실시예에서, 트랜지스터 배열들은, 트랜지스터 소스들과 드레인들이 AND 기능을 수행하는 방향으로 연결되며,트랜지스터 게이트들은 OR 기능을 수행하기 위하여 수직방향으로 연결되는 방법으로 상호 연결된 트랜지스터들의 회로망을 포함한다.
이러한 회로를 배치하기 위하여 사용하는 방법은, 집적회로에 의해 수행되는 기능을 정하는 한세트의 부울식들을 제공하는 단계, 각각의 이러한 부울식을 위하여 데이타베이스로부터 기억소자를 포함하는 한세트의 원시군(primitives)을 검색하는 단계, 배치면적을 최소화하기 위하여 기억소자를 정하는 단계, 각각의 이러한 부울식을 위하여 제1축을 따라 트랜지스터들의 위치들을 정하는 단계, 및 각각의 이러한 부울식을 위하여 제2축을 따라 트랜지스터들의 위치들을 정하는 단계를 포함한다.
바람직한 실시예의 상세한 설명
집적회로의 기능성에 관하여 단지 고레벨정보만이 주어진 집적회로를 자동적으로 "배치"하는 시스템과 회로가 본원에 의해 개발되었다. 배치는 집적회로를 제조하기 위해 사용되는 여러마스크들상에서 소자들을 형성하는 영역들의 위치와 소자들의 선택으로 언급된다. 예를들어, 이러한 소자들은 회로를 형성하기 위해 상호연결되는 트랜지스터들을 포함하며, 반면에 이러한 영역들은 금속라인들, 반도체재료자체, 트랜지스터들의 위치등에서 도우핑된 영역과 도우핑되지않은 영역을 포함한다. 본윈의 시스템으로서, 설계자는 부울식 또는 다른 고레벨사항을 사용한 집적회로의 전반적인 가능성을 지정할 수 있어서, 이 시스템이 설계자에 의해 그 이상의 개입없이, 이러한 회로를 제조하기위해 사용되는 마스크들에 관한 도면을 제공한다. 본원의 시스템을 이해하기위하여, 이하에서 본원의 시스템에 사용되는 회로기술과 이 시스템이 동작하는 방식을 기술한다.
회로기술
제1도는 본원의 시스템을 사용하여 설계되는 집적회로들이 수행되는 방법을 개념적으로 예시한 블럭도이다. 제1도는 대규모 집적회로의 소부분으로 두개의 부울식을 수행하는 회로를 예시한다. 제1도에 예시된 것과 같은 이러한 부분들이 많이모여 집적회로에 요망되는 전반적인 기능성을 발생하기위하여 결합될 수 있다.
제1도는 각각이 단일 부울식을 수행하는 두개의 셀들(10 및 20)을 포함한다. 셀들(10 및 20)은 블럭도의 수준에서는 서로 동일하여서 셀(10)에만 관하여 기술된다. 셀(10)은 일반적으로, 트랜지스터의 배열(12), 멀티플렉서(15), 및 기억소자(18)을 포함한다. 이러한 소자들이 블럭형태로 도시되여있으며, 이들의 소자들이 아래에서 상세히 기술된다. 기억소자(18)는 주사검사능력과 셀들 서로의 동기동작을 수행한다. 셀(10)로부터 요망되는 논리기능이 수행되는 수단을 제공하는 트랜지스터 배열(12)은 전원(VDD)과 트랜지스터들(21및 22)에 의한 더 적은 전위(VSS)사이에서 스위칭 가능하도록 연결된다. 클럭신호(25), 검사신호(27) 및 신호 Q(28)에 관한 신호라인들이 셀의 외부로부터 셀(10)로 확장해간다. 원한다면, 신호 Q의 역신호인
Figure kpo00002
가 대신 제공될 수 있다. 라인(28)은 셀(10)보다 앞선 도시되지 않은 셀로부터 발생하며, 또는 셀(10)이 첫번째 셀인 경우에는 오프된 칩으로부터 제공된 신호들로부터 발생한다. 클럭라인(25)은 공지된 발진기에 의해 구동되여 클럭신호를 공급하기 위하여 기억소자(18)과 트랜지스터(21)에 연결되며, 이 신호의 역이 트랜지스터(22)에 공급된다. 명확하게하기 위하여, 트랜지스터들(21 및 22)은 배열(12)외부에 도시되있다. 그러나 실제회로에서는, 이들이 배열(12)내에서 또는 클럭라인들을 구동하기 위해 사용되는 클럭버퍼내에서 수행된다. 멀티플렉서(15)는 기억소자에 제공되는 신호들을 제어하기 위하여 기역소자(18)에 연결되어있다. 검사라인(27)상의 신호들이 멀티플렉서(15)를 제어하여, 멀티플렉서(15)가 라인(28)상에 있는 신호 Q를 기억소자(18)에 제공할 것인지, 또는 트랜지스터 배열(12)로부터의 출력신호가 라인(30)위에서 수신되는가의 여부를 결정한다.
셀(10)은 두개의 상이한 모드들인 정상모드와 검사모드로 동작할 수 있다. 정상동작에서는 검사라인(27)이 오프가된다. 배열의 입력노드들(35a,35b…)에 제공되는 신호들에 응답하여, 배열(12)이 부울식을 평가하여 그 결과를 라인(30)상에서 멀티플렉서(15)로 제공한다. 검사라인(27)이 오프가 되었기 때문에, 멀티플렉서(15)는 이 평가의 결과를 기억소자(18)로 전달하여, 이 기억소자가 출력라인(32)위에서 배열출력신호를 래치시킨다. 출력라인(32)이 다음번셀(20)에서 입력라인으로서 기억소자에 연결되여, 전형적으로 다른 셀들에 있는 트탠지스터 배열들에 하나 또는 그 이상의 입력신호들을 제공한다. 귀환이 배열(12)에서 사용되었다면, 라인(32)은 동일한 셀(10)내의 원래 배열(12)에 연결될 수도 있다.
감사중, 제1도의 셀(10)내에 도시된 회로는 검사라인(27)의 제어하에 상이한 방법으로 구성된다. 이 라인상의 신호는 멀티플렉서(15)가 라인(30)상에 있는 신호를 무시하면서, 라인(28)상에 있는 Q신호가 기억소자(18)로 바로 공급되도륵 허용한다. 이러한 구성에 있어서, 인접한 셀들로된 기억소자들의 사슬(chain)이 만들어져 쉬프트 레지스터로서 작용한다. 이 쉬프트 레지스터가 트랜지스터 배열들을 포함하여, 집적회로의 완전한 검사를 허용한다. 넓게 말하면, 검사데이타는 쉬프트 레지스터 형태로 기억소자들을 사용한 회로속으로 클럭될 수가 있다. 이에 이 시스템이 지정된 동작을 수행하기 위하여 1 또는 그 이상의 사이클동안 정상 동작으로 스위치된다. 마지막으로, 이 시스템이 검사모드로 귀환되여, 지정된 동작의 결과가 적절한 기능회로에 의해 제공된 데이타와 비교되기 위하여 클럭 아우트(clock out)된다 이러한 처리방식은 모든 회로소자들의 적절한 기능성을 입증하기 위해 원하는 만큼 여러번 반복될 수 있다. 이러한 검사동작이 아래에서 더욱 기술된다.
본원의 시스템에서, 각각의 트랜지스터 배열은 단일 기억소자를 제공하며, 각 그룹의 셀들(10,20,…)은 동일한 클럭신호를 수신한다. 필요한 경우에는, 들어오는 클럭신호를 모든 원하는 기억소자들에 분배하기 위하여 클럭버퍼회로가 사용된다. 클럭신호는 지니고 있는 위상들의 수에 제한을 받지 않으며, 기억소자들이 동적 또는 정적 여부에도 제한받지 않는다.
셀(10)의 본질은 트랜지스터 배열(12)이다. 전형적으로 N-채널트랜지스터들만을 사용하는 트랜지스터배열이 입력신호들(35)상에서 논리동작을 수행하여, 기억소자(18)가 그 결과를 기억시킨다. 평가되는 부울식과 같은, 배열(12)은 임의의 원하는 크기일수가 있다. 보통 배열은 여러 상이한 형태를중 하나이다. 트랜지스터 배열(12)의 한 실시예에 관한 일반적인 구조가 제2도에 자세하게 도시되어 있다. 이 배열자체는 논리적으로 AND 기능을 수행하는 임의의 하나의 스틱(stick)상에 있는 트랜지스터들(42 및 43)과 같은 트랜지스터들과 함께 상부 및 하부에서 결합된 매입 확산의 "스틱들"(37)로 이루어져 있다. 상부 및 하부에서 스틱들의 결합은 논리적인 OR 기능을 제공한다. 적배열들의 간단한 합에 관하여, 스틱돌의 수가 배열의 폭을 결정하며, 이것은 부울식에서 OR 항의 수와 동일하다. 각각의 스틱의 트랜지스터들의 수는 배열 높이를 결정하며, 이것은 AND 항의 수를 나타낸다. 비록 이론적으로는 제한을 받지않지만, 배열의 크기는 실절적으로 회로성능 사정에 의해 제한된다. 더욱이 아래에서 상술되는 것처럼, 배열크기는 인수분해함으로써 감소될 수 있다.
제2도에 도시된 예시적인 부분 회로에서, 하부노드(52)는 (1) 트랜지스터들(42 및 43)이 모두 ON이거나 또는 (2) 트랜지스터(44)과 트랜지스터들(45 또는 46)중 하나가 ON인 겅우에 상부노드(50)에 연결된다. 따라서 도시된 이 간단한 회로가 다음과 같은 기능을 평가한다. 즉 트랜지스터들(42 및 43)이 1과 같거나, 또는 트랜지스터(44)가 1이고 트랜지스터들(45 및 46)중 하나가 1이면, 출력은 0으로 평가된다. 도시된 접근방법은 제8도에 도시된 것과같은 더욱 복잡한 논리기능들을 수행하기 위하여 실행될 수 있다.
제2도에 도시된 회로동작이 제3도의 타이밍도를 사용하여 예시되어 있다. 전반부 클럭 사이클중, 클럭신호 CLK는 고레벨이며, ON 상태인 트랜지스터들에 의해 클럭신호에 연결된 상부노드(50)와 모든 다른노드들은 고레벨의 디지탈상태로 충전된다. 이것이 선충전(precharge)위상이다. 다음번 반사이클중, 오프상태인 트랜지스터들에 의해 클럭신호에 연결된 하부노드(52)와 모든 다른 노드들은 저레벨의 디지탈상태로 방전된다. 이것이 평가위상이다. 전도성경로가 상부노드로부터 하부노드까지의 배열을 통하여 존재한다면, (즉, 하나의 OR 스틱에 있는 모든 AND 트랜지스터들이 ON이면)상부노드는 마찬가지로 저레벨로 방전된다. 다음번 선충전 바로전인, 다음번 클럭 엣지상에서, 기억소자가 배열의 상부에서 디지탈 레벨을 판독하여, 이것이 고레벨인가 또는 저레벨인가를 검출하여 그 결과를 래치시킨다. 따라서, 기억소자를 사용하여, 배열출력이 기억되어 후속 셀들과 배열들로 전파되여, 이 배열이 다음번 데이타와 선충전/평가 사이클을 위하여 자유롭게된다. 제3도에 사용된 가정적인 입력 데이타에 관하여, 사이클들(1과 2)중에 전도성 경로가 노드들(50 및 52)사이에 존재하여, 노드(50)가 따라서 저레벨로 된다. 사이클(3)중에는 전도성 경로가 존재하지 않기 대문에, 노드(50)가 고레벨로 남아있는다.
선충전과 평가기능들은 여러 상이한 방식으로 수행될 수 있다. 이러한 접근방식중 하나가 제2도에 도시되어 있는데, 여기서 각각의 배열은 p 채널의 선충전 트랜지스터와 N 채널의 평가트랜지스터를 포함한다. 선택적인 다른 접근방식이 제4도에 도시되어 있다. 제4도에 도시된 것처럼, 각각의 배열은 N 채널선충전 트랜지스터를 포함하여 평가노드로서 클럭라인을 각각 사용한다. 필요한 트랜지스터들의 수를 적게한 것을 제외하고도, 제4도의 접근방식은 배치와 작업공정에 있어 장점을 가지고 있다. 클럭라인이 제1도에 도사된것과 같은 각각의 셀을 통과하기 때문에, 클럭라인이 점표적인 평카트랜지스터와는 다르게 자동적인 작업공정을 위하여 배열의 하부에서 용이한 선형표적을 제공한다.
배열의 트랜지스터 수를 감소시키기위한 "인수분해"의 실시예가 제5도 및 6도에 도시되어 있다. 제5도에 도시된 것처럼, 배열은 제2트랜지스터(62)에 직렬로 연결된 제1트랜지스터(60)을 포함한다. 이러한 직렬로 연결된 트랜지스터들은 제3 및 제4트랜지스터들(64 및 66)가 병렬로 연결되어 있다. 각각의 트랜지스터들(60 및 64)은 A로 지정된 입력신호를 수신하며, 반면에 트랜지스터(62)는 신호 B에 의해 제어되고 트랜지스터(66)는 신호 C에 의해 제어된다. 따라서, 출력은 A와 B 또는 A와 C중 하나가 온인 경우에 입력과 정합된다. 이와같은 방식으로 배열을 수행하기 위해서는 4개의 트랜지스터들을 필요로 한다.
제6도는 트랜지스터(64)가 생략되고 트랜지스터(60)가 병렬로 연결된 트랜지스터들(62 및 66)에 직렬로 연결된 인수분해의 개념을 예시하는 것이다. 이결과 이회로는 트랜지스터가 하나적은 채로 제5도와 동일한 기능을 수행한다. 트랜지스터 수를 감소하고, 속도를 개선시키며, 부하 및 대배열에서의 칩면적을 감소시키기 위하여 인수분해의 개념을 사용한다. 제8도를 참조한다.
트랜지스터 배열의 전반적인 동작속도는 선충전 시간과 평가시간에 의해 제한되는데, 이들은 충전되고 방전되는 배열내부의 부하들에 의해 차례로 제어된다. 커다란 배열들은 적은 배열보다 더욱 느리게 동작한다. 배열의 성능을 저하시키는 특징들은 트랜지스터 전도성과 기생부하이다. 온 저항은 트랜지스터들의 전도성을 나타낸다. 그 결과, 더 많은 직렬소자들은 충전되고 방전되는 더 많은 용량과 그 용량을 통하여 충전되고 방전되는 더 많은 용량에 관한 더 많은 저항을 나타낸다. AND 경로들중 단 하나가 전도되고 하부 트랜지스터 이외의 모든 다른 경로들이 오프인 경우에, 이것에 의해 모든 기생용량들이 단일 트랜지스터를 통하여 방전되도록 야기시킴으로써 최악의 경우가 발생한다.
트랜지스터 배열 성능에 영향을 미치는 다른 인자는 트랜지스터와 배열 사이의 상호연결 확산의 길이이다. 긴 상호연결의 라인들은 더많은 저항과 용량을 갖는다. 부가적으로, 배열성능은 선충전 위상 개시와 타당한 배열에 대한 입력신호들 사이의 지연에 의해 영향을 받는다. 이것이 기억소자들을 통한 신호전파의 지연결과로서 이 결과가 클럭이 선충전 위상에 남아있어야만 하는 시간을 증가시킨다. 따라서, 최대클럭속도는 신호전파지연, 촤악의 선충전시간, 및 최악의 경우의 평가시간의 합에 의해 제한을 받는다.
제7도는 제1도에 블럭도로 도시된 멀티플렉서(15)와 기억소자(18)의 결합을 상세하게 나타낸 개략도이다. 기억소자로부터 출력신호들을 증폭하는 한 기술을 예시하기 위하여 증폭기단이 기억소자(18)에 부가되었다. 기억소자가 많은 다른 트랜지스터 배열들을 구동하거나 또는 기억소자로부터 멀리 이격된 더적은 배열들을 구동할때 이러한 증폭이 필요하다.
기억소자의 목적은 집적회로의 모든 셀들내에 있는 트랜지스터 배열들을 동기하는 것이며, 또한 검사용 주사경로를 제공하는 것이다. 기억소자가 평가의 결과를 기억하여 그 결과를 후속단을 위하여 증폭한다. 트랜지스터 배열평가의 출력이 엣지-트리거되는 d-형 래치와 같이 작용하는 회로에 의해 기억된다. 기억소자들은 동적설계 또는 정적설계일 수 있다. 동적회로들은 더욱 소형이고 더욱 빠르며, 반면에 정적회로들은 장치 클럭을 정지시키기위한 기회를 제공한다.
단일 클럭신호로부터 동작하는 "동적기억소자"(래치)로 표시되어 제7도에 도시된 회로의 중앙부분은 배치가 간편하며, 증폭단들을 포함하고 있다. 제7도의 오른쪽 측면상에 있는 증폭기 회로는 대부하를 보상하기 위해 사용된다. 상호연결 작업공정의 오버헤드(overhead)가 너무 크기 때문에 이러한 증폭은 초대규모 집적회로에서는 매우 임계적이다.
제7도는 기억소자에 제공되는 신호들을 제어하는 멀티플렉서를 상세히 도시한다. 검사 신호가 제공되면, 기억소자는 주사입력으로 표시된 노드로부터 신호를 수신하며, 반면에 검사 신호가 존재하지 않는다면, 기억소자라인(120)이 트랜지스터 배열과 연결된다. 제7도에 도시된 회로는 단지 예시적인 목적을 위한 것이다. 다른 공지된 회로들이 래치, 멀티플렉서로서, 또는 도시된 증폭기를 대신하여 사용될 수 있다. 예를들어, 단들이 적은 부하를 위하여 기억소자와 증폭기로부터 제거될 수 있다.
제7도에 도시된 회로의 동작은 다음과 같다. 검사신호가 나타날때, 주사입력신호가 라인(120)상에서 기억소자로 공급되기 위하여 트랜지스터(100)은 턴온되고 트랜지스터(101)은 턴오프된다. 선택적으로 정상모드에서, 검사신호가 오프가 될때, 배열로부터의 신호가 라인(120)상에서 기억소자로 공급되기 위하여 트랜지스터(101)가 온이되고 트랜지스터(100)가 오프가 된다.
동적기억소자는 라인(l20)상에서 나타난 신호를 라인(130)상으로 래치시킨다. 이 신호가 라인(130)상에서 래치된후, 이 신호가 하부 기억소자들과 칩상의 다른 트랜지스터 배열들로 직접공급될 수 있다. 라인(130)상의 부하가 기억소자 능력을 초과하는 경우에는, 증폭기가 제공될 수 있다. 대표적인 증폭기가 제7도에 도시되었지만, 다른 증폭기들도 사용될 수가 있다. 궁극적으로, 증폭된 출력신호는 라인(140)상에서 다음번 기억소자로 제공된다 반전된 출력신호가 요구되는 경우에는, 공지된 인버터가 라인(140)에 의해 구동될 수 있다.
제8도는 본원의 시스템과 회로를 사용하여 자동적으로 설계되는 대표적인 동기 배열 논리회로의 위상을 예시하는 배치도이다. 제8도는 두개의 완전한 셀들과 제3셀의 일부분을 포함하는데, 각각의 셀은 단일 부울식을 수행한다. 아래의 설명은 기억소자 No.1과 관련된 제1셀에만 관한 것이다. 제공된 다른 셀들과 기억소자들은 상응하는 방법으로 동작한다. 제8도에 도시되어 "배열"로 표시된 제1트랜지스터 배열이 멀티플렉서 회로로 확장된 캐리(carry)에 관한 식을 수행한다. 이 식은 다음과 같다.
Figure kpo00003
Figure kpo00004
Figure kpo00005
여기서 ·는 AND를 +는 OR를 나타낸다. 이 식을 둘러싸는 참고번호들(130-138)은 제 8도의 해당하는 번호들에 관한 것이다. 이 식이 "배연"로 표시된 제8도의 부분에서 수행된다. 이 배열은 신호들(A,B,C,D,… ,G)이 인가되는 일련의 수평금속 라인들(101,102,…,107)을 포함한다. 상술하듯이, 신호를(A,…,G)은 전형적으로 다른 기억소자들에 의해 제공된다. 이 배열은 또한 영역을(110,111,112 및 113)과 같은 일련의 확산된 영역들을 포함한다. 금속연결들(101-107)과 확산영역들(110-113)의 원하는 교차점에서, 트랜지스터들(120,121 및 122)와 같은 트랜지스터들이 제조된다. 트랜지스터들의 소스들과 드레인들, 소스들과 드레인들을 연결하는 확산영역들, 및 금속라인들로부터 트랜지스터들의 게이트들까지의 연결들이 상술한 방법으로 배열논리를 수행한다. 예를들면, 배열의 부분(130)내에 있는 트랜지스터들이 번호(130)로 지정된 상술한 식, 즉 A·B·C(131부분)와 D+E+F+G(137부분)의 부분을 수행한다. 유사하게, 부분(134)내에 있는 트랜지스터들이 번호(134)로 지정된 식, 즉 A+B+C의 부분을 수행한다. 부분(135)내의 트랜지스터들은 논리기능 A·B+A·C+B·C를 수행한다. 마찬가지로, 영역들(132,…,138)내의 트랜지스터들은 상술한 RX식의 해당하는 부분들을 수행한다. 제8도에 도시된 것처럼, 기억소자는 제1셀 뿐만이 아니라, 다른셀들, 신호 Q에 관한 주사단자, 멀티플렉서, 클럭버티 및 출력단과도 관련이 있다. 이러한 부분들은 상술한 방법으로 제조된다.
제8도는 또한 제2기억소자와 제2식의 수행을 포함한다. 원하는 많은 기억소자들과 식들이 도시된 방법으로 수행될 수 있다. 스페이서 영역이 기억소자 No. 2와 기억소자 No.3 사이에 삽입되는데, 그까닭은 제2기억소자와 관련하여 수행되는 부울식이 제2기억소자의 폭보다 측면으로 더많은 공간을 점유하기 때문이다.
상술한 것이 본원에서 개발된 동기배열 논리회로이다. 원하는 회로에 관한 부울식들이 정해지며, 집적회로 배치가 자동적으로 제조되기 때문에 본원의 시스템은 특별히 유익하다.
시스템 실명
제9도는 원하는 부울식들을 수행하는 회로의 물리적인 위상을 만들기 위하여 본 발명의 시스템이 시스템 사용자에 의해 제공된 정보를 처리하는 방법을 예시하는 플로우차트이다. 이 처리공정은 부울식들의 입력으로서 시작한다. 이것은 블럭(200)에 의해 도시된 것처럼, 상태기계(210)을 사용하여, 또는 다른 도구(220)에 의해 수동으로 수행될 수 있다. 수동으로 입력되면, 이 식들이 인수분해될 수 있다. 인수분해는 제5도및 6도와 관련하여 설명되어 트랜지스터 수를 더욱 최소화시키기 위하여 사용된다. 여러수단에 의해, 이 식들이 시스템에 의해 지정된 형태가 아닌 형태로 이 시스템에 제공된다. 이 형태가 블럭(230)에 의해 도시되듯이 "사용자 속기형식"으로서 언급된다. 제공된, 이 식들이 설계자에 의해 나중에 사용하기 위하여 이러한 형태로 데이타 베이스에 기억된다.
이 단계에서, 설계자가 의도한 기능을 수행하는 식들을 입증하고 적당한 속도와 전력요구량으로 이 기능을 수행하기 위하여 공지된 적당한 모의 프로그램들이 개별적인 셀들 또는 셀들의 군(group)들을 모의하도록 호출될 수 있다. 동시에 이 식들이 로드(load)되면, 다양한 프로그램들이 이 식들의 구문(syntax)에 관한 정정을 입증하기 위하여 호출될 수 있다.
이 식들이 장치에 로드되면, 이들은 블럭(240)에 도시된 것처럼 순수한 부울형식으로 변환된다. 이것은 배타적 OR기능(XOR)을 제거하고, 각각의 전체식은 AND, OR 및 역동작으로 변환함으로써 수행된다. 이 단계에서, 이 식들은 내포되거나 또는 인수분해될 수 있다. 동시에, "if then else"문을 포함하는 식들이 부울형태로 변환되고 모든 식들이 완전하게 확장된다. 예를들면, 다른 식들에 있는 다른 항목들을 사용하여정해진 하나의 식에있는 항목이 가장 기본적인 항목들로 교체된다.
이 식들이 순전한 부울형식이면, 본원의 시스템은 이 식들이 인수분해되면 감소되거나 또는 본원에서 최소화로서 언급되는 용장도 제거에 관한 포위형태인 두동작들중 하나로 행해진다. 감소시, 모든 이중 항목들 또는 트랜지스터들이 이 결과 회로의 검사가능성을 완료하기 의하여 제거된다. 이 식들은 진리표를 유도하여 각각의 트랜지스터를 제거하는 본원의 시스템에 의해 감소된다. 이 결과의 진리표가 초기 진리표에 대하여 검사된다. 진리표들이 동일한 경우는, 트랜지스터가 여분이거나 또는 불필요하여 제거될 수 있다 감소후 이 결과의 식들이 본원에서 배치형식인 부울식들로서 언급되여 블록(250)에 의해서 나타나있다. 이러한 식들이 또한 데이타베이스로 기억된다.
순전한 부울형식과 배치형식 사이의 선택적인 경로는 최소화를 포함한다. 최소화 과정에서, 이 식들은 먼저 곱의 합 형태로 확장되어, 이후로 이 트랜지스터수가 퀸 맥클러스키(Quine McCluskey)알고리즘 적용에 의해 최소화된다. 여분의 트랜지스터들이 마찬가지로 상술한 방법으로 제거된다. 이 식들이 배치형식으로되면, 이 회로는 블럭(260)으로 도시된 자동셀 배치 소프트웨어인 "오토셀"(Autocell)을 사용하여 배치될 수 있다.
개별적인 셀들의 배치
개별적인 셀의 자동배치는 성능, 실리콘면적 및 작업공정 능력과 관련된 다차원적인 최적 문제이다. 본원의 시스템을 사용하여, 사용자는 예를 들면 실리콘면적을 희생하여 작업공정가능성을 개선시키도륵 선택하기 위하여, 이러한 3가지 인자들의 상대적인 중점을 선택할 수 있다. 선택적으로, 면적을 최소화함으로써,이 셀은 작업공정에 관한 표적들이 매우 밀접하게 군을 이룰 수 있기 때문에 작업공정을 간략히 하기위하여압축될 수 있다.
오토셀이 컴퓨터 시스템에 로드될때, 정보가 사용되는 원시군, 기억소자들, 클럭버퍼들, 및 기술에 관한 라이브러리(1ibrary)로부터 검색된다. 각각에 관하여 원하는 대라이브러리가 적당한 것을 선택하도록 제공된다. 원시군은 단일 트랜지스터에 의해 점유된 공간, 이 회로에 관한 설계규칙등과 같은 회로배치내에서 실리콘 성분들에 관한 기본적인 정보를 제공한다. 기억소자들은 상술한 것과 같으며, 바람직한 실시예에서 상이한 크기들, 증폭등의 다양한 기억소자들의 라이브러리는 수행되는 특별한 트랜지스터 배열과 출력의 로딩(1oading)에 따라 선택되여 이용가능하다. 마찬가지로, 클럭버퍼들의 라이브러리는 구동되는 로드에 따라, 적당한 버퍼의 선택을 허용한다. 기술정보는 이 회로가 수행되는 기술과 관련되어 있다. 바람직한 실시예에서는 의사-CMOS가 사용되었다.
기억소자들은 그들의 구동능력과 면적종횡비율에 따라 라이브러리로부터 선택된다. 선택적으로, 기억소자들은 설계 관련정보로부터 자동적으로 발생될 수 있다. 기억소자들의 자동발생은 기억소자들의 라이브러리에 관한 필요성을 제거하나, 또한 손으로 만든 기억소자와 같은 간편한 배치를 초래하지는 않는다.
여러형태의 기억소자들이 있다. 기억소자들은 기억소자들이 함께 행으로 인접해있을때 클럭, 검사, 주사, Vcc 및 Vss 연결들이 자동적으로 연결되도록 설계된다. 기억소자는 입력노드, 본체, 및 출력노드를 갖는것으로서 간주될 수 있다. 입력노드는 트랜지스터들의 배열로부터 입력을 허용하는 정상적인 트랜지스터 배열입력일 수 있다. 입력노드는 트랜지스터들의 커다란 배열로부터 입력신호들을 허용하는 "감지성"배열 입력일 수 있거나, 또는 오프-칩 신호와 같은 외부환경 혹은 다른 독립적인 클럭신호 환경으로부터 입력을 허용하는 노드일 수 있다. 마지막으로, 입력노드는 신호가 인접한 셀로부터 수신되도록 허용하는 직접 입력일수 있다. 노드가 정상적인 입력노드 또는 감지성 입력노드로 정해지는 여부는 배열 크기에 의해 결정된다. OR 항목들의 수가 최대 AND 항목에 있는 트랜지스터를 수의 곱을 의미하는 것으로서 정해지도록, 배열이 크거나, 또는 배열용량이 크다면, 강지성 입력노드가 사용된다.
기억소자의 본체는 동적 또는 정적일 수 있다. 동적소자들이 바람직스러운 것은 간편하기 때문이다. 그러나, 클럭신호가 비동기성인 경우에는 정적기억소자들이 사용될 수 있다. 기억소자의 출력노드는 단지 인접한 셀과 그 셀(귀환 루프)내에 있는 배열 트랜지스터들만을 구동할 수 있거나, 또는 그 셀 외부에 있는 다중 목적지들 또는 그 결합을 구동할 수 있다.
원시클럭버퍼는 셀내부에서 클럭신호를 구동하기 위해 사용된다. 클럭버퍼는 셀을 위한 반전검사 버퍼와 주사입력 노드 표적을 포함한다. 클럭버퍼가 셀들의 각행에 필요하며, 셀내에서 로딩에 따라 이용가능한 여러크기들의 버퍼들이 있다. 다른 원시군들은 기억소자들 사이의 임의의 갭을 충전시키기 위해 사용되는 스페이서 유니트와 상이한 형태의 상호연결을 위한 경로 또는 접촉등을 포함한다.
클럭신호는 주사검사에서 중요하다. 칩상에서 클럭신호의 로딩과 이 신호의 분배는 버퍼되는 클럭신호를 필요로 할 수 있다. 이것은(제8도에 도시된 것처럼) 기억소자들의 상부행의 처음에 클럭버퍼를 포함함으로서 셀 레벨에서 행해지거나. 또는 글로발(global)배치 소프트웨어에 의해 반복기초상에서 행해질 수 있다.
오토셀 프로그램이 로드되면, 다음 단계는 블럭(270)에 의해 도시된 것처럼, 기억소자들을 배열하는 것이다. 기억소자들의 배치가 배치의 임계적인 부분인데, 그 까닭은 이러한 배열이 트랜지스터 배열들의 최소높이를 포함하기 때문이다. 어떠한 이유로 이 시스템을 무효로하는 경우에는, 설계자는 기억소자들의 순서를 결정하여, 블럭(280)은 사용자가 기억소자들에 관한 소자를 지정하도륵 허용한다. 플로우차트에 도시된 것처럼, 사용자가 순서를 정하는 경우에는, 기억소자순서의 시스템 명세서는 우회된다.
셀들에 관한 두개의 기본적인 배열이 있어, 배열의 선택이 자동적인 경우와 사용자에 의해 정해지는 경우가 있다. 첫번깨 배열에서, 기억소자들은 서로 이격된 두개의 병렬행들을 따라 위치한다. 행들 사이의 공간에서, 트랜지스터 배열들이 원하는 기억소자들과 상호연결하기 위하여 형성된다. 단일행 시스템에서, 제8도에 도시된 방법과 같이, 단일행의 기억소자들이 제공된다.
상술하듯이, 시스템이 평가하는 각각의 부울식에 관한 단일 기억소자가 있다. 기억소자들은 각각의 트랜지스터 배열을 인접한 배열들로부터 전기적으로 분리시켜서 이 시스템이 완전하게 동기되도록 한다. 이것이 비동기회로와 관련된 클럭킹(clocking)문제를 제거한다. 회로가 식들이 라이트(write)된 순서로 배치된 경우에는, 클럭버퍼 및 기억소자로딩등이 매우 높을 것이다. 적당히 배열시킴으로써, 배치 라인들이 최소화되어 기록밀도가 개선된다.
본원의 시스템에서 기억소자들은 모의 어닐링(anneaing)으로 공지된 기술을 사용하여 배열된다. 모의어닐링은 현재 잘 알려진 기술로서 에스. 커크패트릭, 시.겔라트 및 엠. 베치가 쓴 사이언스(1983)220(4598) : 671-680의 "모의 어닐링에 의한 최적화"에 기술되어 있다. 모의 어닐링은 셀의 채널밀도를 최소화하려고 하였다. 채널밀도는 채널에서 임의의 수직 라인과 교차하는 상호연결들의 최대수이다. 채널밀도는 상호 연결 채널의 높이에 더적은 반동을 제공한다. 집적회로상에서 배치되는 식들의 순서를 재배열하기 위한 모의 어닐링의 사용이 전파 지연을 짧게하고 로딩을 더욱 적게한다.
일단 이 시스템이 기억소자들에 관한 순서를 결정하면 주어진 셀내에 있는 트랜지스터들이 바람직하게 X축인 제1축을 따라서 위치가 실정된다, 이러한 단계가 블럭(290)에 의해 도시되어 있다. 배열들을 간단히 하기 위하여, 트랜지스티들에 관한 X위치들이 왼쪽에서 시작하여 그 위치를 식의 각각의 OR 항목에 관한 하나의 부호 그리드 유니트에 의해 증가함으로서 주어진 셀에 설정된다. 예를 들어, 제8도를 참조하면, 수행된 식의 A와 C 항목들에 해당하는 트랜지스터들(120 및 121)이 동일한 X 위치를 점유하는데 그 까닭은 이들이 AND 연산자에 의해 결합된 식에있는 항목들을 나타내기 때문이다. 반대로, 트랜지스터(122)는 OR항목에 의해 부분들(131 및 137)로부터 분리된 식의 다른 부분에서 발견되는 식의 다른 항목을 나타낸다. 따라서, 트랜지스터(122)는 항목들(131 및 137)내의 모든 트랜지스터들이 X축을 따라서 더적은 좌표에서 수행되기 위하여 트랜지스터(120)에 설정된 X 위치보다 충분하게 큰 X 위치로 설정되어야만 한다.
서로 바로 인접한 기억소자들과 관련된 두 배열들의 전체폭이 기억소자들의 전장보다 클때, 최대밀도가 발생한다. 인접한 배열들이 또한 최대밀도인 경우에, 제8도에 도시된 것처럼, 이 배열들에 관한 부가적인 공간을 제공하기 위하여 공간 소자들이 기억소자들의 행으로 삽입될 수 있다. 인접한 배열들이 최대밀도가 아닌 경우에는, 원하는 배열이 인접한 배열공간으로 칭해할 수 있다. 선택적으로, 동일한 기능을 가지나 상이한 면적 종횡비를 갖는 기억소자들이 라이브러리로부터 재선택될 수 있다.
X 위치들이 설정된후, 트랜지스터의 Y 위치들이 블럭(300)에 도시된 것처럼 설정된다. 이 단계에서, 종래의 채널 작업공정과 연결 소프트웨어가 사용된다. 전형적으로 이러한 소프트웨어는 공지된 수직구속 그래프를 사용하고 신호동작들을 합병하기 위하여 이분 그래프를 사용한다. 이 소프트웨어의 목적은, 부울식들의 항목과 관련된 트랜지스터들이 위치한 채널의 Y 차원을 가능한한 많이 압축성형키는 것이다. Y 위치들의 설정에서, 신호들이 가능한한 동일한 수평 트랙상으로 합병된다. 더욱이 상호연결채널의 압축성형은 커패시턴스를 최소화한다. 다양한 연결들이 몇몇의 라인 부분들 상에서 수직구속을 일으키며, 반면에 인수분해된 식들이 배치될때 다른 구속이 도입된다. 채널작업공정 알고리즘은 집적회로 및 장치의 CAD에 관한 IEEE 회보(1982) CAD-1(1) ; 25-35에서 티. 요시무라 및 이. 쿠에 의하여 "채널 작업공정용의 효과적인 알고리즘"에 기술되어 있다.
채널이 압축성형되면, 확산경로가 배치된다. 트랜지스터 위치들이 주어지고, 부울식 트리(tree)가 데이타베이스로부터 판독되면, 확산경로가 지정된다. 소프트웨어는 확산경로들을 소프트웨어 자체로부터 분리시키는 원하는 설계 규칙을 유지한다. 확산경로의 배치에서, 확산경로 길이는 커패시턴스를 감소시키기 위하여 최소화된다. 확산경로가 단계(310)에 도시된 것처럼 배치되면, 스파이스(spice)파일이 현재 정해진 배열의 성능을 평가하기 위하여 공지된 모의 프로그램에 의해 사용하는 출력일 수 있다. 셀들의 대다수를 위하여 스파이스 모의는 반드시 필요하지가 않으며 이 장치에 의해 주어진 성능 평가만으로 충분하다. 그러나, 선택적인 경우에서 설계자는 특정한 배열의 상세한 작용에 흥미를 가질 수 있으므로, 스파이스 모의가 이 배열을 위해 사용될 수 있다.
확산경로배치(310)후, 선충전과 평가 트랜지스터들 및 기억소자 상호연결들(Q 및 (
Figure kpo00006
)이 단계(320)에 도시된 것처럼 배치된다. 이것은 종래의 리버(river) 작업공정기술을 사용하여 달성된다. 선충전과 평가 트랜지스터들은 위에서 기술하있으며, 이 트랜지스터들이 배열을 적당한 전위소스들과 결합시킨다. 제1도에 Q 연결들이 도시되어서, 다음 기억소자와 각각의 기억소자를 하향으로 상호 연결시킬뿐만 아니라 다양한 배열들의 입력노드에 대한 연결들을 제공한다.
기억소자들은 배열 트랜지스터 상호연결들처럼 제1층 금속을 사용하여, 따라서 기억소자들의 행들이 작업공정을 위한 제1층 금속에 대한 방해물을 형성한다. 그러나, 작업공정은 기억소자들위에 제2층 금속을 공정시킬 수 있다. 두개의 층 금속처리용의 종래의 작업공정은 한 방향의 라인부분들을 위하여 하나의 금속층을 사용하고 수직방향의 라인 부분들을 위하여 다른 금속층을 사용한다. 이러한 해결책에 알맞게 하기위하여, 자동배치 소프트웨어는 수평부분들을 위해 제1층 금속을 사용하고 수직부분들을 위해 제2층 금속을사용한다. 그러나, 주어진 셀내에서, 가능한한 많은 연결들이 확산 또는 다결정질 실리콘을 사용하여 만들어진다. (바람직한 실시예에서는 스스로 정렬된 실리콘 게이트 MOS 소자들이 배열들에 사용된다.) 이것이 금속에 의해서만 방해가되는 작업공정에 관한 방해물의 수를 최소화시키며, 반면에 셀내에 있는 상호연결 채널은 작업공정 표적들이 셀의 모든 측면으로부터 접근하도록 허용하는 제1과 제 2층 금속에 의해 횡단될 수 있다.
셀에 대한 외부 입력들과 외부 출력들이 작업공정에 관한 표적들로서 플래그(flag)되어, 셀들의 자동배치가 이 표적들에 놓인다. 외부 출력들에 관한 표적들은 항상 기억소자내에 위치하며, 그들의 위치는 기억소자의 내부설계에 의해 주로 기억된다. 그러나, 입력신호들에 관한 표적들은 신중하게 내부연결 필드(field)상에 위치하여야만 한다. 예를 들면, 작업공정이 수직 제2층 금속을 사용하여 기억소자들을 횡단할 수 있기 때문에, 입력 표적들은 수평으로 엇갈려야만 한다.
예를 들면 Q 및
Figure kpo00007
와 같이, 많은 신호들이 다른 신호들의 역이기 때문에, 밀집은 칩주위에서 단 하나의 신호를 작업공정하고 신호가 목적지에 도달할때 신호를 반전시키기 위하여 국부인버터들을 사용함으로써 피할 수 있다. 그러나 충분하게 반전된 신호들이 여러 분리된 목적지에서 필요한 경우에, 여분의 인버터들의 오버헤드(overhead)가 작업공정에 대한 이익보다 중요하다.
작입공정중, 표적들(330)이 제2층 금속 상호연결 장치를 위하여 설정된다. 제2층 금속이 개입 절연층내에 있는 경로들을 통하여 이러한 표적들에 연결된다. 제 2층 금속의 사용에 관한 실시예가 제8도의 스트랩(strap; 140)으로 이것이 평가노드로부터 출력버퍼로 연결시킨다.
이 단계에서 회로의 모든것이 정해지고 남아있는 모든것이 물리적 좌표를 데이타베이스의 추상적인 정보로 설정한다. 배치의 기호표시에 입각한 연결이 파일로 고정된다. 공지된 소프트웨어가 이러한 표시를 처리하여 원하는 상이한 출력형태들을 발생한다. 예를 들어, 셀은 슐룸버거, 리마티드의 자회사인 어플리케이션 시스템즈에 의해 사용된 것처럼 APL 언어로 그래프식으로 나타낼 수 있다. 중요하게도, 이 셀의 표시는어떠한 정해진 그래픽 묘사언어와도 무관하다. 이단계가 블럭(340)에서 수행되는데, 이것은 각각의 소자크기들에 관하여 이 시스템에 주어진 정해진 설계 규칙에 달려있다.
이 시스템의 이단계에서, 모든 셀들이 완전하게 정해진다. 제9도의 블럭(350)에 도시된 것처럼, 모든 셀들이 이때 칩상에 놓이고 전체칩이 원하는 방식으로 셀들을 상호연결시키기 위하여 작업공정을 한다. 이것은 종래의 CAD 소프트웨어를 사용하여 수행된다. 전형적인 작업공정 장치는 23차 IEEE 설계 자동회의의회보, 페이퍼 번호 26.1, pp 432-433에서 시. 세첸 및 에이 산지오바니-빈센텔리에 의한 "팀버울프 3: 2 새로운 표준 셀 배치 및 글로발(global) 작업공정 패케이지"에 기술되어 있다.
설계의 이러한 단계에 대한 입력데이타는 칩레벨정보(글로발네트 리스트,기술 및 배치규율)뿐만 아니라 셀정보로 이루어져있다. 배치전에, 칩 레벨네트 리스트가 프로그램을 관통하는데, 이 프로그램은 모든 규칙들이 컴파일되어 네트 리스트가 일치하도록 하기위해서 검사한다. 칩면적이 설계에 따라서, 본딩패드들과 관련되어 집적회로로부터 제공된 신호들을 버퍼시키기에 사용되는 주변셀들에 의해, 또는 코아면적의 크기에 의해 구속된다. 코아면적은 셀들과 작업공정 오버헤드를 포함한다. 이 면적과 본딩 패드 위치 구속내에서, 칩은 임의의 원하는 구형일 수 있다. 주변 셀들은 입/출력 패드들과 버퍼회로들로 이루어져 있다. 많은 I/0를 갖는 회로들을 위하여, 주변셀들에 요구되는 이 면적이 설계를 제한시키며, 반면에 복잡한 기능을 가지며 적은 I/0를 지닌 회로들을 위하여는 코아면적이 칩면적을 제한시킨다.
코아셀들의 배치는 분할 접근을 사용하여 초기에 수행된다. 분할은 연결성, 면적, 고정된 셀들의 위치들, 및 통용하는 분할외부에 있는 셀들의 위치들을 고려하여 수행된다. 임계적인 네드들이 정상네트들을 나타내도록 무게가 가해진다. 이것이 소자들이 임계적인 네트에서 집단화되도록 분할을 바이어스시킨다. 이때 발생된 상대적인 배치가 작업공정 및 형태요구와 협력한다. 이러기 위하여 상대적인 배치가 데이타구조로 맵(map)되는데 이 데이타구조는 셀들과 셀 상호간 공간 모두가 인접한 이웃의 국부지식을 갖는 타일들(tile)로서 존재한다. 이러한 데이타구조가 셀들을 조정하기 위하여 가요성을 제공하여 변경들이 인접한 셀들상에 뚜렷한 효과를 발생시키지만 거의 멀리 떨어져 있는 셀들에게는 영항을 미치지 않는다. 상호작용 배치 설비가 제공되어 설계자가 다양한 셀들 또는 셀들의 그룹들의 위치들을 수동으로 변화시키도록 한다.
작업공정에서 2-경로 작업공정이 사용된다. 처음에, 공지된 "하이타워"(Hightower)알고리즘이 사용된다. 훨씬 어려운 남아있는 네트들은 이후에 리(Lee)알고리즘과 같은 미로 작업공정 알고리즘을 사용하여 작업공정된다.
주사검사능력이 기억소자들에 의해 제공되어 모든 기억소자들이 주사경로에 연결되고 주사입력과 주사 출력지점들이 글로발 배치 소프트웨어로 이용가능하도록 만들어지는 것을 보장하기 위해서 소프트웨어가 단지 필요하다.
본 발명의 기본적인 개념의 하나는 설계자는 검사능력에 관심을 가질 필요가 없다는 것이다. 이것을 달성하기 위하여, 검사특징들이 본 시스템을 사용하여 설계된 회로들 속으로 자동적으로 만들어진다. 정상 셀들을 위하여, 주사 경로들에 만들어진것은 검사모드신호가 인가될때(제1도의 라인(27)상에) 쉬프트 레지스터로서 연결될 수 있다. 이후로 검사데이타가 칩으로 이동되여 모든 쉬프트 레지스터들이 채워질때, 칩이 하나의 클럭사이클동안에 정상모드로 귀환된다. 모든 부울 논리배열들이 평가되어 그 경과들이 기억소자들에 위치한다. 다시 검사신호가 나타날때, 그 결과가 칩밖으로 이동되여 동시에 새로운 검사데이타가 안으로 이동된다. 이러한 실질적인 검사결과들이 적당한 기능회로의 예언된 검사결과들과 비교될 수 있다.
비록 동일한 클럭신호들을 지닌 모든 셀들이 동일한 주사사슬에 속한다고 간주할 수 있지만, 이 주사 사슬은 패턴들이 안밖으로 이동되도록 허용하고 대부분의 자동검사장치(ATE)에서 발견되는 병렬 데이타경로들의 사용을 허용하는 더짧은 부사슬들로 분할될 수 있다. 부사슬들의 선택은 예를 들어, 보통의 출력버퍼를 검사라인의 제어하에서 멀티플렉서에 의해 선행되는 하나의 부사슬로 교체하는 것을 포함한다. 칩은 수동으로 발생된 회로 또는 다른 칩들로부터 선택된 회로들과 같은 비동기성 배열논리 셀들을 포함하는데, 여분의 논리가 검사가능한 칩의 이부분을 만들기위해 부과될 수 있다.
마지막으로, 검사 벡터들이 자동적으로 발생되여 회로를 검사하는데 사용한다. 이것이 블럭(360)에 의해 도시되어있다. 검사 벡터들은 일련의 기억소자들과 배열들이 출력신호를 초래하는 완성된 칩에서 모든 주사사슬들에 관한 데이타를 판독함으로써 발생된다. 발생된 제1검사 벡터는 전체 주사경로가 존재하는가를 증명하고 Q와
Figure kpo00008
사이에서의 단락 결여를 증명하기 위한 개별적인 이동검사이다. 이것은 패턴이 사슬을 통하여 주사된 단일 1 또는 만일 0에 관하여 발생되는 "워킹"(walking) 1 또는 "워킹" 0에 의해 수행된다. 이때 패턴이 발생되여 이것이 원하는 주사사슬로부터 어떤 다른 주사사슬들에 대한 단락이 없다는 것을 증명하기 위하여 모든 주사경로들을 함께 검사한다.
최종적으로, 검사벡터들이 발생되여 스틱이 개방된 트랜지스터와 스틱이 밀페된 트랜지스터 뿐만 아니라 매입확산 파괴를 검사한다. 이것은 각각의 트랜지스터를 턴온시키는 검사벡터를 발생함으로써 수행된다. 셀에 관한 부울식 기술은 각각의 기억소자에 부착된 배열내에서 각각의 트랜지스터에 관한 개별적인 검사들을 수행하기 위하여 설계 데이타베이스와 관련하여 사용될 수 있다. 개별적인 배열 검사들은 트랜지스터배열을 통한 각각의 경로가 절연이되도록 함으로써 형성되어, 교대로 각각의 트랜지스터를 검사하기 위하여 그 경로를 선택적으로 스위치 오프시킨다. 일단 검사패턴들이 각각의 셀에 관하여 결정되면, 이들이 칩에 관한 완전한 검사를 만들기 위하여 합병될 수 있다. 예를 들어, 주어진 트랜지스터를 턴온시키기 위한 검사패턴에 관하여, 모든 원하는 셋업(setup)값들이 필요한 기억소자들로 클럭되는데, 이 기억소자들은 검사라인을경유하여 쉬프트 레지스터 모드에 연결된 기억소자들을 사용하여 주어진 트랜지스터에 관계된 배열 입력들을 제공한다. 이때 패턴이 회로를 정상모드로 스위칭하여, 이것에 의해 배열이 평가된다. 이 배열과 결합된 기억소자가 정확한 신호를 가진것을 확인할때 원하는 트랜지스터의 기능성이 증명되어, 이후로 다시 검사라인을 경유하여 쉬프트 레지스터에 있는 기억소자들로서 클럭 아우트된다. 마지막으로, 하나이상의 검사가 한 세트의 입력데이타에 관하여 타당한가를 결정하기 위하여 검사 벡터들이 입력과 출력 데이타를 검사함으로써 압축된다.
전기한 설명은 본 발명의 바람직한 실시예에 관한 시스템과 회로에 관한 기술이다. 이러한 기술은 본 발명을 예시하고 그 동작을 설명하기 위한 것으로서, 본 발명의 범위는 첨부한 특허청구범위에 의해 주어진다.

Claims (35)

  1. 클럭 신호들의 소스(source), 제1, 제2와 제3주사노드(node), 제2주사노드에 연결되어 클럭신호들을 수신하도록 연결된 제 1기억소자, 제 3주사노드에 연결되어 클럭신호들을 수신하도록 연결된 제 2 기억소자, 최소한 하나의 제1입력노드와 제1출력노도를 갖는 제1트랜지스터 배열, 최소한 하나의 제2입력노드와 제2출력노드를 갖는 제2트랜지스터 배열, 검사 신호를 공급하는 검사노드, 검사신호에 응답하여 제1주사노드 또는 제1출력노드중 하나를 제1기억소자에 연결하기 위하여 검사노드와 제1출력노드에 연결되며, 제1주사노드와 제1기억소자사이에 연결된 제1스위칭수단, 및 검사신호에 응답하여 제2주사노드 또는 제2출력노드중 하나를 제2기억소자에 연결하기 위하여 검사노드와 제2주사노드에 연결되며, 제2주사노드와 제2기억소자사이에 연결된 제2스위칭수단을 포함하는 회로.
  2. 제1항에 있어서, 제1트랜지스터 배열이 제1과 제2소스의 전기전위, 부울기능을 평가하는 트랜지스터들의 배열, 제1소스와 상기배열 사이에 연결된 선충전(precharge)수단, 및 제2소스와 상기 배열 사이에 연결된 평가수단을 포함하여, 전도성경로가 상기 배열을 통하여 존재하는 경우에 제1소스가 제2소스에 연결되는 회로.
  3. 제2항에 있어서, 클럭신호들의 소스가 선충전수단과 평가수단에 각각 연결되는 회로.
  4. 제 1항에 있어서, 제 1기억소자가 래치(latch)를 포함하는 회로.
  5. 제1항에 있어서, 제1스위칭수단이 멀티플렉서를 포함하는 회로.
  6. 제 1항에 있어서, 제1트랜지스터 배열이 부울기능을 수행하도록 연결된 다수의 트랜지스터들을 포함하는 회로.
  7. 제6항에 있어서, 상기 배열이 다수의 트랜지스터들중 AND 기능을 수행하기 위하여 직렬로 연결된 트랜지스터를, 및 다수의 트랜지스터들중 OR 기능을 수행하기 위하여 병렬로 연결된 트랜지스터들을 포함하는 것을 특징으로 하는 회로.
  8. 제2항에 있어서, 상기 배열내의 각각의 트랜지스터가 제어 게이트를 가지고, 부울기능에서 동일한 항목에 해당하는 상기 배열의 모든 트랜지스터들이 공통으로 제어게이트들에 연결되는 회로.
  9. 검사노드, 클럭노드, 주사입력노드, 주사출력노드, 특정한 기능을 수행하도록 상호연결된 트랜지스터들의 배열, 클럭노드와 주사출력노드에 연결된 기억소자, 및 주사입력노드 또는 상기배열중 하나로부터 기억소자로 신호들을 공급하기 위하여 검사노드의 제어하에 동작가능하도록, 검사노드, 주사입력노드, 상기배열과 기억소자에 연결된 스위칭수단을 포함하는 회로.
  10. 제9항에 있어서, 상기배열이 부울기능을 수행하는 회로.
  11. 제10항에 있어서, 상기배열이 AND-OR 매트릭스로 연결된 다수의 트랜지스터들을 포함하는 회로.
  12. 제11항에 있어서, AND 기능을 수행하는 트랜지스터들이 직렬로 연결되는 회로.
  13. 제12항에 있어서, OR 기능을 수행하는 트랜지스터들이 병렬로 연결되는 회로.
  14. 제9항에 있어서, 상기 배열이, 제1과 제2전위소스, 부울기능을 수행하기 위하여 제1노드와 제2노드사이에 연결되어, 각각의 트랜지스터가 제어전극을 갖는 다수의 트랜지스터들, 제어신호들을 제공하기 위하여 제어전극들 각각에 연결된 제어수단, 제1전위소스와 제1노드사이에 연결된 충전수단, 및 제2노드와 제2전위 소스를 제어가능하도록 연결하기 위하여 제2노드와 제2전위소스 사이에 연결된 평가수단을 포함하는 회로.
  15. 제14항에 있어서, 충전수단이 클럭신호들의 소스에 연결된 제어전극을 갖는 충전트랜지스터를 포함하는회로.
  16. 제15항에 있어서, 평가수단이 클럭신호들의 소스에 연결된 제어전극을 갖는 평가트랜지스터를 포함하는 회로.
  17. 제16항에 있어서, 스위칭수단이 제1노드에서 상기 배열에 연결되는 회로.
  18. 제14항에 있어서, 동일한 제어신호를 수신하는 모든 트랜지스터들에 관한 제어전극들이 공통으로 연결되는 회로.
  19. 제9항에 있어서, 트랜지스터들의 배열이 게이트와 게이트 신호인가에 의해서 서로 선택적으로 연결가능한 한쌍의 확산 영역들을 각각의 전계효과 트랜지스터가 갖는 전계효과 트랜지스터들을 포함하는 회로.
  20. 제19항에 있어서, 상기 배열에 의해 수행되는 특정한 기능이 단지 AND 연산자들과 OR 연산자들에 의해 연결된 항목들을 갖는 부울기능을 포함하여, 상기배열이 식의 각각의 항목에 해당하는 트랜지스터를 포함하는 회로.
  21. 제20항에 있어서, 동일한 항목에 해당하는 모든 트랜지스터들의 게이트들이 공통으로 연결되는 회로.
  22. 제21항에 있어서, AND 연산자들에 의해 연결된 식의 항목들에 해당하는 확산된 영역들의 트랜지스터들이 직렬로 연결되고 OR 연산자들에 의해 연결된 식의 항목들에 해당하는 확산된 영역들의 트랜지스터들이 병렬로 연결되는 회로.
  23. 한세트의 부울식들을 사용한 집적회로에 의해 수행되는 기능을 정하는 단계, 모든 동작이 단지 AND 연산자들과 OR 연산자들을 사용하여 수행되도록 부울식들을 다시 정하는 단계, 세트내의 각각의 식을 위하여 최소한 하나의 다른식에 관한 기억소자와 직렬로 연결되어있는 각각의 식에관한 기억소자를 제공하는 단계, 및 식의 각각의 항목에 관하여 트랜지스터를 제공하여, AND 연산자들에 의해 분리된 식의 항목들에 해당하는 트랜지스터들을 직렬로 연결하며, OR 연산자들에 의해 분리된 식의 항목들에 해당하는 트랜지스터들을 병렬로 연결하고, 식내에서 동일한 항목들에 해당하는 트랜지스터들을 공통으로 연결함으로써 형성되여 기억소자에 연결된 출력을 갖는 트랜지스터 배열을, 세트내의 각각의 식을 위하여 이 식을 평가하기 위해서 제공하는 단계를 포함하는 집적회로 설계방법.
  24. 집적회로의 부분에 의해 수행되는 기능을 정하는 한세트의 부울식들을 제공하는 단계, 각각의 이러한 식을 위하여 데이타베이스로부터 기억소자를 포함하는 한세트의 원시군(primitives)을 검색하는 단계, 기억소자들을 정하는 단계, 각각의 이러한 부울식을 위하여 제1축을 따라 트랜지스터들의 위치들을 정하는 단계, 및 각각의 이러한 부울식을 위하여 제2축을 따라 트랜지스터들의 위치들을 정하는 단계를 포함하는 상호연결된 트랜지스터들의 배열을 사용하여 논리기능을 수행하는 집적회로의 부분을 배치하는 방법.
  25. 제24항에 있어서, 부울식들을 제공하는 단계가 이러한 식들이 단지 AND, OR 및 역(inverse)연산자들만을 포함하도록 변환시키기 위해 식들을 자동적으로 처리하는 단계를 더욱 포함하는 방법.
  26. 제24항에 있어서, 기억소자들을 정하는 단계가 제1축을 따라 기억소자들을 직렬로 정렬시키는 단계를 더욱 포함하는 방법.
  27. 제26항에 있어서, 기억소자들을 정하는 단계가 각각의 기억소자를 각각에 인접한 기억소자와 상호연결시키는 단계를 더욱 포함하는 방법.
  28. 제24항에 있어서, 제1축을 따라 위치를 정하는 단계가 식들의 각각의 모든 항목에 해당하는 단일 트랜지스터를 배치하는 단계를 포함하는 방법.
  29. 제28항에 있어서, 배치단계가 제1기억소자에 해당하는 식의 제1항목으로 시작하여, 제1 OR 동작이 도달할때까지 제1축을 따라서 제1위치를 모든 순서적인 트랜지스터에 설정하는 단계를 포함하는 방법.
  30. 제29항에 있어서, 제2 OR 동작이 도달할때까지 제1축을 따라서 제 2위치를 모든 순서적인 트랜지스터에 설정하는 단계가 뒤따르는 방법.
  31. 제30항에 있어서, 모든 트랜지스터들이 제1축을 따라 위치들이 설정될때까지, 제1위치 실정단계를 반복하는 단계를 더욱 포함하는 방법.
  32. 제25항에 있어서, 제2축을 따라 트랜지스터들의 위치들을 정하는 단계가 제2축을 따라서 동일한 위치를 동일한 입력신호를 수신하는 모든 트랜지스터에 설정하는 단계를 포함하는 방법.
  33. 제32항에 있어서, 제2축을 따라서 트랜지스터들을 압축하는 단계가 뒤따르는 방법.
  34. 제25항에 있어서, 각각의 식에 해당하는 트랜지스터들 중에서 상호연결을 정하는 단계가 뒤따르는 방법.
  35. 제34항에 있어서, AND 동작에 의해 분리된 식의 순서적인 항목들에 해당하는 모든 트랜지스터들이 직렬로 연결되고 OR 동작에 의해 분리된 식의 순서적인 항목들에 해당하는 모든 트랜지스터들이 병렬로 연결되는 방법.
KR1019870011484A 1986-10-16 1987-10-16 동기배열논리회로 및 시스템 KR900008022B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US91992486A 1986-10-16 1986-10-16
US919924 1986-10-16

Publications (2)

Publication Number Publication Date
KR880005754A KR880005754A (ko) 1988-06-30
KR900008022B1 true KR900008022B1 (ko) 1990-10-29

Family

ID=25442875

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019870011484A KR900008022B1 (ko) 1986-10-16 1987-10-16 동기배열논리회로 및 시스템

Country Status (5)

Country Link
US (1) US5126950A (ko)
EP (1) EP0264334B1 (ko)
JP (1) JPH0766943B2 (ko)
KR (1) KR900008022B1 (ko)
DE (1) DE3750926T2 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5233539A (en) * 1989-08-15 1993-08-03 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure, input/output structure and configurable logic block
US5644496A (en) * 1989-08-15 1997-07-01 Advanced Micro Devices, Inc. Programmable logic device with internal time-constant multiplexing of signals from external interconnect buses
US5212652A (en) * 1989-08-15 1993-05-18 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure
US5231588A (en) * 1989-08-15 1993-07-27 Advanced Micro Devices, Inc. Programmable gate array with logic cells having symmetrical input/output structures
US5276857A (en) * 1991-04-26 1994-01-04 Motorola, Inc. Data processing system with shared control signals and a state machine controlled clock
US5337255A (en) * 1991-10-30 1994-08-09 Xilinx, Inc. Method for implementing set/reset synchronously or asynchronously in a programmable logic device
US5654898A (en) * 1993-05-10 1997-08-05 Cascade Design Automation Corporation Timing-driven integrated circuit layout through device sizing
US5566080A (en) * 1993-09-07 1996-10-15 Fujitsu Limited Method and apparatus for designing semiconductor device
US5455528A (en) * 1993-11-15 1995-10-03 Intergraph Corporation CMOS circuit for implementing Boolean functions
US5559718A (en) * 1994-04-28 1996-09-24 Cadence Design Systems, Inc. System and method for model-based verification of local design rules
JPH09107048A (ja) 1995-03-30 1997-04-22 Mitsubishi Electric Corp 半導体パッケージ
US6028446A (en) * 1995-06-06 2000-02-22 Advanced Micro Devices, Inc. Flexible synchronous and asynchronous circuits for a very high density programmable logic device
US5798938A (en) * 1996-07-02 1998-08-25 Hewlett-Packard Co. System and method for verification of a precharge critical path for a system of cascaded dynamic logic gates
US6785873B1 (en) * 1997-05-02 2004-08-31 Axis Systems, Inc. Emulation system with multiple asynchronous clocks
JP2000138292A (ja) * 1998-10-30 2000-05-16 Fujitsu Ltd エンベディッドアレイを備えた半導体装置及びその製造方法並びに記録媒体
US7031889B1 (en) * 1999-03-22 2006-04-18 Hewlett-Packard Development Company, L.P. Method and apparatus for evaluating the design quality of network nodes
US6305003B1 (en) * 1999-05-26 2001-10-16 Hewlett-Packard Company System and method for propagating clock nodes in a netlist of circuit design
US7299390B1 (en) * 2005-12-09 2007-11-20 Altera Corporation Apparatus and method for encrypting security sensitive data
FR2918823B1 (fr) * 2007-07-13 2009-10-16 Ecole Centrale De Lyon Etablis Cellule logique reconfigurable a base de transistors mosfet double grille
US8782591B1 (en) * 2012-12-31 2014-07-15 Cadence Design Systems, Inc. Physically aware logic synthesis of integrated circuit designs
CN104731993B (zh) * 2013-12-23 2018-01-26 深圳市国微电子有限公司 一种半导体电路抗单粒子翻转的全加固方法及系统
CN111460747B (zh) * 2020-04-10 2023-03-31 重庆百瑞互联电子技术有限公司 一种用于集成电路设计的标准单元追踪方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2175609B1 (ko) * 1972-03-15 1974-12-13 Inst Francais Du Petrole
US3806891A (en) * 1972-12-26 1974-04-23 Ibm Logic circuit for scan-in/scan-out
US3783254A (en) * 1972-10-16 1974-01-01 Ibm Level sensitive logic system
DE2842750A1 (de) * 1978-09-30 1980-04-10 Ibm Deutschland Verfahren und anordnung zur pruefung von durch monolithisch integrierten halbleiterschaltungen dargestellten sequentiellen schaltungen
DE3029883A1 (de) * 1980-08-07 1982-03-11 Ibm Deutschland Gmbh, 7000 Stuttgart Schieberegister fuer pruef- und test-zwecke
JPS57133644A (en) * 1981-02-12 1982-08-18 Fujitsu Ltd Semiconductor integrated circuit device
US4513418A (en) * 1982-11-08 1985-04-23 International Business Machines Corporation Simultaneous self-testing system
US4513283A (en) * 1982-11-30 1985-04-23 International Business Machines Corporation Latch circuits with differential cascode current switch logic
JPS59161744A (ja) * 1983-03-04 1984-09-12 Hitachi Ltd 情報処理装置のスキヤン方式
JPS6120350A (ja) * 1984-07-09 1986-01-29 Nippon Telegr & Teleph Corp <Ntt> 集積回路及びその冗長切替方法
JPH0772744B2 (ja) * 1984-09-04 1995-08-02 株式会社日立製作所 半導体集積回路装置
JPH0668732B2 (ja) * 1984-11-21 1994-08-31 株式会社日立製作所 情報処理装置のスキヤン方式
US4700316A (en) * 1985-03-01 1987-10-13 International Business Machines Corporation Automated book layout in static CMOS
US4672610A (en) * 1985-05-13 1987-06-09 Motorola, Inc. Built in self test input generator for programmable logic arrays
US4701920A (en) * 1985-11-08 1987-10-20 Eta Systems, Inc. Built-in self-test system for VLSI circuit chips
US4703484A (en) * 1985-12-19 1987-10-27 Harris Corporation Programmable integrated circuit fault detection apparatus
US4698830A (en) * 1986-04-10 1987-10-06 International Business Machines Corporation Shift register latch arrangement for enhanced testability in differential cascode voltage switch circuit

Also Published As

Publication number Publication date
DE3750926D1 (de) 1995-02-09
KR880005754A (ko) 1988-06-30
EP0264334A2 (en) 1988-04-20
DE3750926T2 (de) 1995-08-03
JPS63120439A (ja) 1988-05-24
US5126950A (en) 1992-06-30
JPH0766943B2 (ja) 1995-07-19
EP0264334A3 (en) 1991-04-10
EP0264334B1 (en) 1994-12-28

Similar Documents

Publication Publication Date Title
KR900008022B1 (ko) 동기배열논리회로 및 시스템
US5581742A (en) Apparatus and method for emulating a microelectronic device by interconnecting and running test vectors on physically implemented functional modules
US6301692B1 (en) Method for designing layout of semiconductor integrated circuit, semiconductor integrated circuit obtained by the same method, and method for verifying timing thereof
EP0394598B1 (en) An improved gate array cell having FETS of different and optimized sizes
JP3144967B2 (ja) 半導体集積回路およびその製造方法
US7017132B2 (en) Methodology to optimize hierarchical clock skew by clock delay compensation
Stroud et al. Using ILA testing for BIST in FPGAs
US4607339A (en) Differential cascode current switch (DCCS) master slice for high efficiency/custom density physical design
US7062739B2 (en) Gate reuse methodology for diffused cell-based IP blocks in platform-based silicon products
US4615010A (en) Field effect transistor (FET) cascode current switch (FCCS)
US4608649A (en) Differential cascode voltage switch (DCVS) master slice for high efficiency/custom density physical design
US7954077B2 (en) Integrated circuit design utilizing array of functionally interchangeable dynamic logic cells
US7659751B2 (en) Multiple-output transistor logic circuit
CN103828239B (zh) 集成电路
US20230005562A1 (en) Scan chain compression for testing memory of a system on a chip
Strickland et al. VLSI design in the 3rd dimension
Bednar et al. Technology-migratable ASIC library design
Palchaudhuri et al. FPGA fabric conscious architecture design and automation of speed-area efficient Margolus neighborhood based cellular automata with variegated scan path insertion
US7017134B2 (en) Automatic floor-planning method capable of shortening floor-plan processing time
Kernhof et al. Mixed static and domino logic on the CMOS gate forest
Roos et al. On structured gate forest VLSI design
Vollmer et al. VENUS-A Fully Automatic Design System for Complex Cell and Gate Array Chips
Anagnostopoulos et al. Application-Specific Integrated Circuits
Aoyagi et al. Chip layout design of a Josephson LSI circuit for examining high-speed operability by using a standard cell automatic placement and routing technique
Gupta et al. FTROM: A silicon compiler for fault-tolerant ROMs

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20051027

Year of fee payment: 16

LAPS Lapse due to unpaid annual fee