KR100429945B1 - 반도체집적회로장치 - Google Patents

반도체집적회로장치 Download PDF

Info

Publication number
KR100429945B1
KR100429945B1 KR1019970007427A KR19970007427A KR100429945B1 KR 100429945 B1 KR100429945 B1 KR 100429945B1 KR 1019970007427 A KR1019970007427 A KR 1019970007427A KR 19970007427 A KR19970007427 A KR 19970007427A KR 100429945 B1 KR100429945 B1 KR 100429945B1
Authority
KR
South Korea
Prior art keywords
bank
circuit
memory
lines
command
Prior art date
Application number
KR1019970007427A
Other languages
English (en)
Other versions
KR970067852A (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
Priority claimed from JP05132196A external-priority patent/JP3546582B2/ja
Priority claimed from JP05133096A external-priority patent/JP3722307B2/ja
Priority claimed from JP30153896A external-priority patent/JP3345282B2/ja
Application filed by 가부시키가이샤 히타치 쪼오 엘.에스.아이.시스템즈, 가부시끼가이샤 히다치 세이사꾸쇼 filed Critical 가부시키가이샤 히타치 쪼오 엘.에스.아이.시스템즈
Publication of KR970067852A publication Critical patent/KR970067852A/ko
Application granted granted Critical
Publication of KR100429945B1 publication Critical patent/KR100429945B1/ko

Links

Images

Classifications

    • 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 potential barriers; including integrated passive circuit elements having potential barriers
    • 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 potential barriers; including integrated passive circuit elements having potential barriers 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 potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/02Arrangements for writing information into, or reading information out from, a digital store with means for avoiding parasitic signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1042Read-write modes for single port memories, i.e. having either a random port or a serial port using interleaving techniques, i.e. read-write of one part of the memory while preparing another part
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1072Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B12/00Dynamic random access memory [DRAM] devices
    • H10B12/50Peripheral circuit region structures

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Dram (AREA)
  • Semiconductor Memories (AREA)

Abstract

본 발명은 메모리와 논리회로를 동일한 반도체칩상에 집적한 반도체 집적회로장치에 있어서, 설계기간을 단축하는 설계방법을 제공하기 위한 것이며, 또한 메모리로부터 병렬로 판독하거나 또는 메모리로 병렬로 기입하는 데이터의 전송패턴을 고속으로 변화시킬 수 있는 고집적의 데이터 전송회로방식을 제공하기 위한 것이다. 또한 본 발명은 상기의 반도체 집적회로 장치에 있어서, 소용량에서 대용량까지 자유롭게 용량을 가변할 수 있고, 또한 데이터 전송속도를 고속으로 할 수 있으며, 회로의 오버헤드가 적은 메모리매크로 또는 메모리 코어를 실현하기 위한 것이다.
상기의 목적을 달성하기 위해 본 발명은 복수의 I/O선을 가지는 메모리코어, 전송회로용모듈 및 논리라이브러리를 작성하여 데이터 베이스에 기억시키며 그것을 사용하여 설계를 행한다. 또한 복수의 I/O선을 가지는 메모리코어와 논리회로를 서로의 I/O선이 동일방향으로 되도록 배치하며, 그들 메모리와 논리회로와 I/O선 간에 다단의 스위치군으로 이루어지는 전송회로를 배치한다. 각단의 스위치군을 구성하는 스위치는 메모리의 I/O선과 논리회로의 I/O선간에 형성한다. 일단 또는 소수 단수의 스위치군을 온시키면 메모리코어의 I/O선과 논리회로의 I/O선이 도통하여 소망의 전송패턴을 형성한다. 또한 메모리코어를 앰플리파이어모듈, 뱅크모듈, 전원 등의 기능모듈의 조합으로 구성하고, 뱅크모듈내에 독립하여 동작하는 로우계회로와 비트선 방향으로 뻗어 있는 다수의 I/O선을 배치하는 구성으로 한다.

Description

반도체 집적회로 장치
본 발명은, 메모리를 집적한 반도체 집적회로 장치에 관한 것이며, 특히 복수의 데이터 입출력선(I/O선)과 같은 데이터전송선을 갖는 메모리와, 논리회로를 동일한 반도체칩상에 집적한 반도체 집적회로 장치에 적용하기에 유효한 기술에 관한 것이다.
근래, LSI(대규모 집적회로)의 고집적화가 진행되어, 한변이 1cm 정도인 사각형의 반도체칩상에 대용량의 메모리와 대규모의 논리회로나 연산회로를 집적하는 것이 가능해지고 있다. 이와 같은 칩에서는 메모리의 I/O 선의 갯수를 수백개 이상으로 함으로써 메모리와 논리회로나 연산회로간의 데이터 전송속도를 1G바이트/초 이상으로 대단히 고속으로 할 수 있다. 이 때문에, 메모리간에 고속 데이터전송이 필요한 화상처리용도 등에서 기대를 모을 수 있다.
상기 용도에 적용가능한 제1 종래 기술로서는, 예컨대, 토시오 수나가 등(Toshio sunaga, et al). "DRAM Macros for ASIC Chips" IEEE JOURNAL OF SOLID-STATE CIRCULT, VOL, 30, NO. 9, SEPTEMBER 1995에 기재된 DRAM(Dynamic Random Access Memory) 매크로의 예가 있다. 상기 문헌에는, 0.8μm CMOS 기술로 제조한 9개의 I/O선을 가지는 288k비트(32×9비트) 용량의 DRAM 매크로와 논리를 조합한 LSI 칩과, 0.5μm CMOS 기술로 제조한 18개의 I/O선을 가지는 1.25M비트(64k×18비트) 용량의 DRAM 매크로와 논리를 조합한 LSI 칩이 개시되어 있다.
본 발명과 관련된 제2 종래 기술로서, 다수의 프로세서 및 메모리를 상호 결합하는 병렬계산시스템을 동일한 반도체칩상에 집적하는 방식이 미국특허 5371896에 나타내어 지고 있다. 이 제2 종래 기술에서는, 복수의 메모리와 복수의 프로세서가 동일한 반도체칩상에 집적되어, 양자간이 크로스바(crossbar) 스위치로 이루어지는 네트워크로 결합되어 있다. 이 제2 종래 기술은, 필요에 따라 SIMD(Single Instruction Multi Data Stream) 동작과 MIMD(Multi Instruction Multi DataStream) 동작을 바꿀 수 있는 것이 특징이다. SIMD 동작시에는, 복수의 메모리 중 하나가 명령어 메모리(instruction memory)로 사용되며, 나머지의 메모리가 데이터 메모리로서 사용된다. 프로세서에는 명령어 메모리로부터의 명령이 공통으로 주어진다. MIMD 동작시에는, SIMD 동작시에 데이터 메모리로서 사용된 메모리의 일부가 명령어 메모리로서 사용됨으로써 개개의 프로세서에 각각의 명령어 메모리로부터의 명령이 주어진다. 개개의 메모리와 프로세서간의 데이터 전송경로는, 상기 크로스바 네트워크에 의해 여러가지로 바뀔 수 있다.
메모리를 집적한 반도체 집적회로 장치는 상기 이외에도 여러가지가 고안되어 있지만, 상기 제1의 종래 기술과 같이 DRAM(Dynamic Random Access Memory)등 고집적 메모리와 논리회로를 동일한 반도체칩에 집적하는 것이 가능하게 된 것은 처음으로 화상처리 등의 분야에서 주목 받고 있다.
이와 같은 반도체 집적회로 장치에는, 2개의 과제가 생긴다는 것이 본원발명자들에 의해 분명하게 되었다.
제1 과제는 설계 방식에 관한 것이다. 종래의 개별칩으로서의 고집적메모리, 특히 DRAM에서는, 사양이 표준화되어 있기 때문에 일단 제작하기만 하면 비교적 제품수명이 길었다. 이 때문에, 신속한 설계을 하기 위한 설계방식은 그다지 중요시되지 않았다. 그러나, 상기와 같은 DRAM 등 고집적의 메모리와 논리회로를 동일한 반도체칩에 집적하는 반도체 집적회로 장치는, 그것이 적용되는 특정한 응용에 맞는 특정한 사양마다 그것이 필요로 하는 것이 많기 때문에, 일반적으로 사용자와 같은 요구자로부터의 요구를 받고나서 요구사양에 맞춰 반도체 메이커가 만들기 시작한다. 그 때문에 신속한 설계를 할 수 있어야만 한다. 즉, 칩 설계의 착수로부터 칩의 완성까지의 시간(Time to Customers)의 단축이 요구된다. 또한 필요해진 메모리용량이나 연산회로의 종류는 용도에 따라서 다르며 다종 다양하다. 이와 같은 기간 및 다양성에 관한 요구를 충족시키기 위해서는, 설계방식부터 개혁할 필요가 있다.
제2 과제는 동일한 반도체칩에 집적하는 DRAM 등의 고집적메모리와 논리회로의 결합회로에 관한 것이다. DRAM 등의 고집적 메모리와 논리회로를 동일한 반도체칩에 집적하는 경우에는, 그것을 단지 집적했다는 것만으로는 개별칩에 대해 큰 메리트가 생기기 어렵다. 제조원가와 요구성능을 고려하면 한변이 1cm 정도인 사각형의 반도체칩상에 대용량 메모리와 대규모의 연산회로 등의 논리회로를 집적하고, 양자간의 결합선의 갯수를 수백개이상 확보할 수 있도록 해두고, 데이터전송속도를 예를 들면 1G 바이트/초 이상과 같은 고속도로 할 수 있는 것이 바람직하다. 즉 메모리와 논리회로를 결합하는 결합회로로서, 고속이고 또한 고집적인 메모리와 논리회로(연산회로)간의 데이터전송경로를 여러가지로 바꾸도록 할 수 있는 것이 바람직하다.
상기 제1 종래 기술은, 필요에 따라 DRAM 매크로의 수를 증감함으로써 메모리용량을 가변으로 할 수 있기 때문에, 상기 제1 과제에 어느 정도 대응할 수 있다. 그러나, 상기 제1 종래 기술에서는 DRAM 매크로의 수에 비례하여 I/O선의 갯수가 변화해 버리기 때문에, I/O 선의 갯수와 메모리용량을 자유롭게 설정할 수 없다고하는 문제점이 있다. 또한 비교적 소용량의 각각의 DRAM 매크로 가운데 판독, 기입 동작에 필요한 전체의 주변회로를 마련하기 때문에 다수의 DRAM 매크로를 배치하면 회로의 오버헤드(overhead)가 커진다고 하는 다른 문제점도 있다. 이들 문제를 보다 명확하게 하기 위해서, 다음에 화상처리용의 LSI를 구성하는 경우를 검토하기로 한다. 간단하게 하기 위해, DRAM 매크로의 기억용량을 256K 비트, I/O 선의 수를 8개, LSI에서 필요한 I/O선의 총수를 512개로 하면, DRAM 매크로는 64개가 필요하게 되며, 이 때 메모리의 총기억용량은 16M 비트가 된다.
화상처리 분야에서 2차원의 데이터를 처리하는 경우, 예컨대, 희미해진 화상을 복원하는 경우나, 문자나 특정의 패턴을 인식하는 경우는, 위에서 말한 정도의 메모리용량을 필요로 하지 않는 때이더라도 고속성은 요구되어 진다. 이 경우 속도만을 고려하면 제1의 종래 기술의 DRAM 매크로를 다수배치하여 병렬동작시키면 되지만, 그것으로는 메모리의 기억용량이 크게 되어 과도하게 칩사이즈가 크게 되어 버린다. 한편, 3차원데이터를 처리하는 것과 같은 경우는, 다량의 데이터를 고속으로 처리할 필요가 있다. 이 경우에는, 상기한 바와 같이 DRAM 매크로를 다수 병렬동작시키는 것으로 대응할 수 있다. 그러나, 가정용인지 공업용인지와 같은 용도의 차이나 데이터의 종류에 따라서는 더욱 많은 I/O 선을 필요로 하거나, 더욱 많은 기억 용량을 필요로 하기도 하는 경우가 있다.
이상과 같이, 같은 화상처리 분야에서도 필요한 데이터 전송속도나 메모리의 기억 용량이 칩의 용도나 데이터의 종류에 따라 다양하기 때문에, 제1 종래 기술과 같이, 용량이 일정한 DRAM 매크로를 준비하는 것만으로는 여러가지 문제를 발생시킬 수 있다.
한편, 상기 제2 종래 기술은, 메모리와 프로세서와의 결합회로에 관한 것으로, 개개의 메모리와 프로세서간의 데이터전송경로를 크로스바 스위치에 의해 여러가지로 바꿀 수 있다. 그러나, 제2 종래 기술에 의하면, 크로스바 스위치를 사용하기 때문에, 결합선의 수가 증가하면 스위치의 개수가 방대해져 하드웨어의 규모가 증대하고, 지연도 증대한다는 제2 과제에 기초한 문제가 생긴다. 상기 제2 종래 기술과 같이 독립한 복수의 메모리와 복수의 프로세서간의 데이터전송경로를 바꾸는 경우에는 일반적으로 메모리나 프로세서의 수도 적기 때문에 종래의 병렬계산기에서 사용되고 있는 방식을 그대로 같은 칩상에 실현하는 것도 가능하다. 그렇지만 수백개 이상이나 되는 메모리의 I/O선군과 연산회로등의 논리회로와의 I/O선군간의 대응을 바꾸는 경우에는, 집적도와 동작속도의 요구가 엄격하여 종래의 방식을 그대로 이용하는 것은 곤란하다.
따라서, 본 발명의 목적 중 하나는 발명이 해결하고자 하는 제1 과제에 맞춰, 필요하게 된 메모리용량이나 연산회로의 종류에 대응한 반도체장치를 신속하게 설계하는 수단을 주는 것이다. 즉, 여러가지의 목적에 대응한 LSI 칩을 단기간에 설계하기 위한 방식 및 그에 따른 제품군을 제공하기 위한 것이다.
본 발명의 다른 목적은, 소용량으로부터 대용량까지 자유롭게 기억용량을 변하게 할 수 있고, 또한 오버헤드가 적은 메모리매크로를 실현하는 것 및 ASIC(Application Specific Integrated Circuit) 설계에 알맞은 메모리 매크로를 실현하는 것에 있다.
본 발명의 다른 목적은, 제2 과제를 해결하기 위해 메모리와 논리회로를 결합하는 결합회로로서, 고속 또한 고집적으로 메모리와 논리회로(연산회로) 간의 데이터 전송경로를 여러가지로 바꿀 수 있는 것을 실현하는 수단을 제공하는 것에 있다.
본 발명의 상기 및 그 밖의 과제와 신규한 특징은 본 명세서의 기술 및 첨부도면으로부터 명확해질 것이다.
또한, 메모리코어 또는 메모리매크로는, 정보를 기억하기 위한 메모리셀을 다수 포함하는 메모리셀 어레이와 그 메모리셀어레이의 데이터를 판독하거나 메모리셀 어레이에 데이터를 기입하기 위한 주변회로를 포함한 회로블록으로 이루어지는 것을 말한다. 본 명세서에서는 메모리코어와 메모리매크로의 양쪽의 어구가 쓰이고 있지만 같은 의미이다.
상기의 과제를 해결하기 위해 본 발명에서는, 메모리코어(MR)와, 메모리코어(MR)의 데이터전송선(I/O선, MIOi)의 피치에 맞춰 설정된 결합회로(TG)용 모듈의 레이아웃패턴을 미리 만들어 데이터 베이스(DB)에 기억시키고, 논리회로를 합성하기 위한 논리 라이브러리(LL)도 작성하여, 데이터 베이스(DB)에 기억시켜 놓는다. 데이터 베이스(DB)에는, 그것들의 레이아웃패턴이나 사양, 특성 등 설계에 필요한 데이터를 기억시킨다. 상기 결합회로(TG)용 모듈은, 스위치군(SWG)과 버퍼군(TGBUFi)으로 이루어져 그것들을 조합시켜 결합회로(TG)를 구성할 수 있도록 한다. 스위치군(SWG)은, 입력된 데이터를 그 중에서 그 순서를 바꿀 수 있도록 복수의 스위치군(SWG)으로 구성된다. 이와 같은 복수의 스위치군(SWG)의 설정에 의해, 적은 단수의 스위치(SW)를 전송패턴(전송경로)에 맞춘 소망의 전송패턴이 되도록스위치를 제어하는 것이 가능하게 되어 고속으로 전송패턴을 전환시킬 수 있게 된다. 결합회로(TG)용 모듈은, 전술한 바와 같이 메모리코어(MR)의 데이터전송선(MIOi)의 피치에 맞춘 구성으로 되기 때문에, 레이아웃패턴의 변경을 요하지 않고 메모리코어(MR)의 데이터전송선(MIOi)에 그대로 결합할 수 있다.
상기한 바와 같이 본 발명에 의하면, 메모리코어(MR), 결합회로(TG)용 모듈, 논리 라이브러리(LL)의 레이아웃패턴이 데이타베이스(DB)에 미리 등록되어 있고, 또한 메모리코어(MR)와 결합회로(TG)용 모듈과의 배선피치가 갖추어져 있어 그대로 결합하여 사용할 수 있다. 따라서, 사용자의 사양과 같은 사양과 같은 달성해야만 하는 사양이 명확해 지고 나서의 LSI 칩의 설계를 단기간에 끝낼 수 있다. 즉, 필요한 기억용량의 메모리코어(MR)와 사양에 맞는 전송회로(TG)를 만들기 위한 모듈을 데이터 베이스(DB)로부터 추출하여 조합시키며, 또한 논리부분은, 논리합성용의 CAD(Computer Aided Design)툴(tool)을 사용하여 논리 라이브러리(LL)로부터 소망의 논리회로를 합성하면 된다. 그것들 사이의 배선은, 배치배선 CAD 툴에 의해 고속으로 할 수 있다. 따라서, 메모리와 논리 회로를 집적한 칩이 단기간에 이루어진다.
또한, 상기의 결합회로(TG)에서는, 메모리코어(MR)와 논리회로(LC)에서 전송되는 데이터가 통과하는 것은 활성화되는 스위치군(SWG)만이므로 고속 데이터 전송을 실현할 수 있다. 게다가, 전송패턴수에 맞춰 단수를 증감하기 위해 전송패턴이 적은 경우에는 쓸데 없는 점유면적이 없게 된다.
또한 상기에 있어서 여러가지 기억 용량의 메모리를 단기간에 구성하기 위해메모리매크로(MMACRO)를 앰플리파이어(AMP), 메모리셀 어레이를 포함하는 뱅크(BANK), 전원(PS)등의 기능모듈의 조합으로 구성한다. 즉, 메모리셀 어레이를 포함하는 뱅크(BANK)의 모듈 중에 비트선 방향으로 뻗은 다수의 데이터전송선(GBL/GBL)을 배치하여, 그것들이 각 모듈을 인접하여 배치하는 것만으로 접속되는 구성이다. 게다가 상기 앰플리파이어(AMP) 모듈내에 그것들을 바이트 단위로 활성화, 비활성화할 수 있는 회로를 마련한다.
복수의 뱅크(BANK)를 갖는 메모리(MMACRO)에 있어서, 각 뱅크의 지정어드레스를 복수(Ri, Ci) 마련한다. 이것에 의해 하나의 뱅크 활성화커맨드(CR, AC, Ri)와 다른 뱅크의 판독 또는 기입커맨드(CC, RW, Ci)가 동일 사이클로 입력가능하게 되며, 다른 뱅크에 걸친 판독 또는 기입이 1사이클마다 연속하여 행해진다.
이하에서는, 본 발명 중 우선, 전체 설계방법과 메모리코어(MR)와 논리회로(LC)와의 결합회로인 전송회로(TG)에 대한 실시예를 설명하고, 마지막으로 메모리 코어(MR)의 구체예인 메모리매크로(MMACRO)에 관한 실시예를 설명한다.
[메모리코어를 사용한 시스템 LSI의 설계방법]
제1도에는, 본 발명에 관한 메모리코어를 내장한 시스템 LSI 설계방법의 개념이 도시되어 있다.
제1도의 왼쪽에 표시되어 있는 것은, 코어회로, 논리라이브러리의 레이아웃패턴이나 특성을 등록한 데이터 베이스용 기억장치(DB)이다. 데이터 베이스용 기억장치(DB)는, 다수의 데이터전송선을 가지며 서로 기억용량이 다른 복수의 메모리코어(MR)와, 메모리코어(MR)의 데이터전송선(I/O선)의 피치에 맞춰 설정된 전송회로(결합회로)(TG) 용 모듈군과, 논리회로(LC)를 합성하기 위한 기본게이트로 이루어지는 논리 라이브러리(LL)와, 레이아웃패턴이나 사양 및 특성 등 설계에 필요한 데이터가 미리 기억된다.
여기서, 전송회로(TG)용 모듈은, 스위치군(SWG)과 버퍼군(TGBUFi)로 이루어지며, 스위치군(SWG)과 버퍼군(TGBUFi)을 조합하여 전송회로(TG)를 합성할 수 있다. 자세한 것은 후술하지만, 복수의 스위치군(SGW)을 접속하는 것에 의해 여러가지 전송패턴을 가지는 전송회로(TG)를 합성할 수 있다. 이것들의 모듈은, 메모리코어(MR)의 데이터전송선(I/O선)의 피치에 맞춰 만들어져 있기 때문에, 레이아웃패턴을 변경하지 않고 메모리코어(MR)의 데이터전송선(I/O선)에 그대로 결합할 수 있다.
LSI 칩의 사양이 주어지면 데이터 베이스용 기억장치(DB)로부터 필요한 데이터를 설계용 워크스테이션(WS)에 전송하면서 설계를 행한다. 메모리코어(MR)와 전송회로(TG)용 모듈의 배선 피치가 갖추어져 있기 때문에 이들은 그대로 결합하여 쓸 수 있다. 즉, 필요한 기억 용량의 메모리코어(MR)와 사양에 맞는 전송회로(TG)를 만들기 위한 모듈을 데이터 베이스(DB)에서 추출하여 조합하면 된다. 논리부분은, 논리합성용의 CAD 툴을 사용함으로써 논리 라이브러리(LL)에서 소망의 논리회로(LC)를 용이하게 합성할 수 있다. 마지막으로 칩의 플로어 플랜(floor plan)에 맞춰 그것들을 배치하고, 그 사이의 배선을, 배치배선 CAD 툴에 의해 행하면 칩의 레이아웃데이터가 완성한다. 이렇게 하여, 메모리코어(MR)를 내장한 시스템 LSI의 제품군을 단기간에 설계할 수 있다.
또, 여기서는 논리라이브러리(LL)를 사용하여 논리를 합성하는 예를 도시하였지만, 경우에 따라서는 칩의 일부를 게이트 어레이로 하여 논리를 합성하더라도 좋다. 그 경우는, 메모리코어(MR)가 공통이며 논리가 다른 칩을 용이하게 제조할 수 있다고 하는 이점이 있다.
제1도의 오른쪽 밑에 전술한 바와 같은 설계에 의해 얻어지는 칩의 예가 2개 도시되어 있다. 반도체칩(LSI-A)은, 각각 도면의 좌측에 배치된 메모리코어(MR)와, 도면의 오른쪽에 배치된 논리회로(LC)간에 전송회로(TG)를 배치하고, 메모리코어(MR)와 논리회로(LC)를 전송회로(TG)에 의해 결합하도록 한 4개의 블록 A, B, C, D를 마련하여, 그 중심에 칩전체를 제어하는 제어회로(CC)를 배치한 것이다. 이것에 대하여, 반도체칩(LSI-B)은, 메모리코어(MR)와 논리회로(LC)를 전송회로(TG)에서 결합한 블록 A, B를 나란하게 하고 중심에 칩전체를 제어하는 제어회로(CC)를 배치한 것이다.
본 발명에서는, 물론 하나의 메모리코어(MR)를 사용하는 칩도 실현할 수 있지만, 도시한 예와 같이 복수의 블록을 집적하는 칩도 용이하게 설계할 수 있다. 그 경우, 각 블록의 메모리코어(MR), 논리회로(LC)를 다른 것으로 해도 좋고, 동일한 구성으로 해도 좋다. 전자는 다른 처리를 동일한 칩으로 병렬로 행하는 것에 적합하고, 후자는 동일한 처리를 병렬로 행하는 것에 적합하다. 특히 후자는, 그래픽, 자연화상처리, 뉴럴 네트워크(neural network) 등 병렬동작이 가능한 처리를 행하는 것에 적합하다.
반도체칩(LSI-A, LSI-B)의 어느 쪽도 메모리코어(MR)와 데이터의 수수(授受)를 행하는 논리회로(LC)를 메모리코어(MR)에 근접배치하는 것으로 되기 때문에 배선지연의 영향이 적어 고속의 데이터 전송을 실현할 수 있다. 또한, 제어회로(CC)로부터 각 블록으로의 거리가 반도체칩(LSI-B)에서는 같으며, 반도체칩(LSI-A)에서도 차가 적기 때문에, 제어신호의 스큐(skew)를 작게 할 수 있다는 이점이 있다.
반도체칩(LSI-B)에서는, 논리회로(LC)를 제어회로(CC)에 근접배치하였지만, 메모리코어(MR)의 제어신호의 배선을 짧게하여 배선지연을 적게 할 필요가 있는 경우에는, 블록을 제어회로(CC)에 대해 반전시켜 메모리코어(MR)를 제어회로(CC)에 근접하여 배치해도 좋다.
또, 반도체칩(LSI-A)에 있어서 제어회로(CC)로부터의 거리가 블록 A와 B 및 D와 C에서 다른 것이 문제가 되는 경우도 고려된다. 그 경우에는, 반도체칩(LSI-B)과 같은 배치를 행하여 제어회로(CC)의 좌우에 블록을 2개씩 배치하면 된다.
블록의 형상이 옆으로 긴 경우에는, 그와 같이하면 칩의 짧은 변과 긴변의 차가 지나치게 커지는 경우가 있다. 그와 같은 경우에는, 제1도에 도시되는 반도체칩 LSI-A의 배치대로, 제어신호의 입력단자를 블록의 한 쪽의 면에 집중시켜, 블록 A와 B 및 D와 C를 반전하여 배치함으로써 블록끼리가 인접하는 면에 제어신호의 입력단자가 오도록 할 수 있다. 이것에 의해 제어신호의 스큐를 감소시킬 수 있다. 이하에서는, 제1도에 도시된 전송회로(TG)에 대해서 상세하게 설명한다.
[다증 I/O 메모리 코어 내장 LSI]
제2도에는, 본 발명에 관한 다중 I/O의 메모리내장 LSI의 예가 도시되어 있다. 제2도에 도시되는 반도체칩(SIC)은, 복수의 I/O선(MIOi)를 갖는메모리코어(MR)와, 복수의 I/O선(LIOi)을 갖는 논리회로(LC)와, 메모리코어(MR)와 논리회로(LC)간의 데이터의 전송패턴을 제어하는 전송회로(TG) 등을 단일한 단결정 실리콘 등으로 된 반도체기판에 집적한 것이다.
논리회로(LC)의 내용은 논리 라이브러리(LL)를 사용하여 목적에 맞는 것을 합성하면 된다. 여기서는, 화상 또는 그래픽에 적합한 예로 된다. 메모리코어(MR)는, 화소데이터를 기억하는 것으로 되며, 논리회로(LC)는, 메모리코어(MR)에 기억된 화소에 대해 연산을 행하는 연산기군(ARG)과 메모리코어(MR)의 내용을 화면에 표시하기 위해 일정한 속도로 판독하기 위한 표시용 버퍼(DBR) 및 그것들과 메모리코어(MR)를 제어하기 위한 제어회로(LCC)로 구성된다.
메모리코어(MR)는, 복수의 데이터선(DL)과 복수의 워드선(WL) 및 그것들의 교점에 형성된 메모리셀(MC)을 갖는다. 메모리셀(MC)은, 1트랜지스터ㆍ1캐패시터의 DRAM셀, 4 또는 6트랜지스터의 SRAM(Static Random Access Memory)셀, 1 트랜지스터의 불휘발성 플래쉬 메모리셀 등을 쓸 수 있다. 또, 메모리코어(MR)로서 위에서 언급한 바와 같은 기입과 판독을 할 수 있는 소위 RAM형 내지는 리드 라이트형을 고려할 수 있지만, 판독 전용의 소위 ROM 형의 것을 사용하는 경우에도 본 발명은 유효하다. 메모리코어(MR)로의 데이터의 기입 및 판독은, 판독ㆍ기입회로(RWC)에 의해 제어되며, 주변회로(PER)에 의해 선택된 복수의 메모리셀(MC)에 복수의 I/O선(MIOi)으로부터 병렬로 데이터의 판독 및 기입을 할 수 있다. 주변회로(PER)에는, 논리회로(LC)로부터의 메모리코어 제어신호(MRC), 제어신호(CTL) 및 어드레스신호(DATA) 등의 버스가 접속되어 있다. 메모리코어(MR)는, 논리회로(LC)의 기준신호인 클록신호와 동기하여 제어신호, 어드레스신호, I/O 신호를 입력하기도하고, 출력하기도 한다.
논리회로(LC)는, 메모리코어(MR)로부터 전송회로(TG)을 통해 판독된 데이터나 반도체칩(SIC) 외부로부터의 데이터에 대하여 연산을 행한다. 그 결과를 다시 전송회로(TG)를 통해 메모리코어(MR)로 기입하거나 반도체칩(SIC) 외부로 출력한다: 전송회로(TG)는, 다단의 스위치군(SWG)에 의해 구성되며, 제어신호(TGCi)에 의한 스위치군(SWG)의 스위치제어에 의해 메모리코어(MR)의 복수의 I/O선(MIOi)과 논리회로(LC)의 복수의 I/O선(LIOi)간의 접속관계(이하, 전송패턴이라 함)를 바꿀 수 있다.
전송회로(TG)는, 쌍방향 또는 양방향으로 데이터전송이 가능한 구성, 즉 메모리 코어(MR)로부터의 데이터신호를 논리회로(LC)로 공급하고, 반대로 논리회로(LC)로부터의 데이터신호를 메모리코어(MR)에 공급할 수 있도록 구성된다.
제3도에는, 전송패턴의 예로서 P0로부터 P7까지 8개의 패턴을 실현하는 경우가 도시되어 있다. 이 예는, 2n개의 I/O선(MIOi과 LIOi)에 대하여, 그의 1/4(2n-2)을 단위로 한 MIO0,1,2,3과 LIO0,1,2,3의 대응을 바꾸는 것이다. 즉, i는 0으로부터 3의 경우이다. 이와 같이, 전송단위가 2n개일 필요는 없으며, 또한 모든 전송단위가 같지 않더라도 본 발명을 적용할 수 있는 것은 물론이다.
화살표의 방향은 데이터의 흐름을 나타내며, 전송패턴(P1)은 메모리로의 데이터의 기입에만 사용되며, 나머지의 패턴(P0. P2∼P7)은 판독, 기입양쪽에 사용된다.
전송패턴(P0)은, 그대로 데이터의 교체없이 전송하는 패턴이다. 전송패턴(P1)은 (LIO0,1)에 입력하는 데이터를(MIO0,1), (MIO2,3)에 전달하여 메모리에 기입하기 위한 것이다. 이 예는 다른 패턴과는 달리, 메모리코어(MR)의 다른 I/O선이 도통한다. 즉, I/O선 LIO0이 I/O선 MIO0 및 MIO2와 결합하며, I/O선 LIO1가 I/O선 MIO1 및 MIO3와 결합한다. 이 때문에 판독시에는 다른 데이터가 충돌하는 경우가 있기 때문에 기입시에만 사용한다. 이 패턴은 후술하는 바와 같이 메모리의 내용을 고속으로 초기화하는 등에 유효하다.
전송패턴 P2 및 P3은 각각(LIO0, 1)과 (MIO0, 1), (LIO0, 1)과 (MIO2, 3)과의 사이에 전송경로를 형성하는 것이다. 전송패턴 P4에서 P7는 각각 (LIO1)와 (MIO0), (LIO1)과 (MIO1), (LIO1)과 (MIO2), (LIO1)과 (MIO3)와의 사이에 전송경로를 형성하는 것이다.
8개의 전송패턴(P0∼P7)은, 제어신호(TGCi)에 의해 자유롭게 바꾸는 것이 가능하다. 각각의 전송패턴은, 전송회로(TG) 내의 한 개의 스위치군(SWG)을 "온"시킴으로써 실현할 수 있다. 예컨데, 전송패턴(P0)은, 제2도에 도시되어 있는 스위치군(SWG#0)을 "온"시킴으로써 실현할 수 있다. 전송회로(TG)의 구체적인 구성은 후술한다.
본 실시예에서는, 메모리코어(MR), 전송회로(TG), 논리회로(LC)를 동일한 반도체칩상에 형성하기 때문에 수십개로부터 수백개의 I/O선을 용이하게 배선하는 것이 가능하다.
다음에, 제2도에 도시되어 있는 다중 I/O 메모리코어 내장 LSI의 동작을 설명한다.
우선, 판독동작을 설명한다. 메모리코어(MR)내의 주변회로(PER)에 의해 하나의 워드선(WL)을 선택하면, 그 워드선(WL)상의 메모리셀(MC)군으로부터 데이터선(DL)에 데이터가 판독되며, 판독ㆍ기입회로(RWC)를 통해 복수의 I/O선(MIOi)에 병렬로 데이터가 판독된다. 제어신호(TGCi)에 의해, 전송회로(TG) 내의 스위치군(SWG)중 하나가 활성화되면 메모리코어(MR)의 복수의 I/O선(MIOi)과 논리회로(LC)의 복수의 I/O선(LIOi)간의 전송패턴이 확정되고 I/O선(MIOi)로부터 I/O선(LIOi)로 데이터가 전송되어, 논리회로(LC)에 입력된다.
기입동작도 데이터의 흐름이 반대로 되는 것 이외에는 같다. 즉, 논리회로(LC)로부터 복수의 I/O선(LIOi)로 출력된 데이터는, 제어신호(TGCi)에 의해 확정한 전송 패턴에 따라 I/O선(LIOi)로부터 I/O선(MIOi)에 전송되고, 메모리어레이(MR)에서의 판독ㆍ기입회로(RWC)를 통해 데이터선(DL)에 전달되며, 또한 선택된 워드선(WL) 상의 메모리셀(MC)에 병렬로 기입된다.
판독 또는 기입을 연속으로 행하기도 하고, 교대로 행하기도 하는 때는, 사이클마다 선택하는 워드선(WL)이나 전송패턴을 바꿔 동작시킬 수 있다. 따라서, 논리회로(LC)의 요구에 따라 사이클마다 다른 어드레스에 대응하는 메모리셀(MC)에 병렬로 판독ㆍ기입을 행할 수 있다.
본 실시예에 의하면 메모리코어(MR)와 논리회로(LC)간의 데이터 수수는, 일단(一段)의 스위치군(SWG)을 통해 행하여지기 때문에 매우 고속으로 데이터전송을 실현할 수 있다. 또한, I/O선 MIOi와 LIOi가 동일방향으로 뻗도록 메모리코어(MR)와 논리회로(LC)를 배치하기 때문에 메모리코어(MR)와 논리회로(LC)의 사이에 전송회로(TG)를 배치할 수가 있다. 전송회로(TG)의 스위치군(SWG)의 단수는 전송패턴에 따라 결정되기 때문에 전송패턴수가 적은 경우에는 전송회로의 데이터선 방향의 치수(제2도의 가로방향)를 작게 하는 것이 가능하다. 따라서, 제2도에 도시된 바와 같이 메모리코어(MR)의 워드선(WL) 방향의 치수(제2도의 세로방향)에 잘들어맞도록 전송회로(TG)와 논리회로(LC)를 레이아웃하면 여분 면적을 차지하지 않고 전체의 면적을 작게 할 수가 있다.
또, 주변회로(PER)는, 상기한 바와 같이 워드선(WL)을 선택하는 X 디코더만을 포함해도 좋고, 데이터선의 일부를 뽑아 I/O선(MIOi)에 접속하는 Y 디코더를 포함하더라도 좋다. 본 실시예에 의하면 I/O선(MIOi)은 다수 마련할 수 있기 때문에, 통상 Y 디코더는 예컨대 1024개의 데이터선 중 128개를 선택하는 것과 같은 간단한 것이어도 좋다.
[전송회로의 제1구체예]
다음에 전송회로(TG)의 구체적인 회로예를 제4도를 사용하여 설명한다. 제4도에는, 제2도에 도시되어 있는 전송패턴을 실현하는 전송회로(TG)의 회로예 실시가 나타내어진다.
제4도에 있어서, MIO0, MIO1, MIO2, MIO3는 메모리코어(MR)의 I/O선이고, LIO0, LIO1, LIO2, LIO3는 논리회로(LC)의 I/O선이다. 또한, SWG0, SWG1, … SWG7은 스위치군이며, TGBUF0, TGBUF1, TGBUF2, TGBUF3은 버퍼회로이다.
TGC0, TGC1, …, TGC7은 각각 스위치군 SWG0, SWG1, …, SWG7을 온ㆍ오프하는 스위치 제어신호이다. 스위치군(SWG)에 있어서의 스위치(SW)는 뒤에서 자세히 설명하는 제9도와 같은 예시의 트랜지스터로 구성된다. 각 스위치(SW)의 스위치상태와 스위치제어신호(TGCi)의 레벨과의 관계는, 스위치(SW)를 구성하는 회로를 어떻게 하는가에 따라 정할 수 있기 때문에 고정적으로 고려하지 않아서 좋다. 그러나, 여기서, 스위치(SW)는 그 제어입력에 가해지는 제어신호(TGCi)가 고전위이면 "온"으로 되고, 반대로 저전위이면 "오프"되는 것으로 한다. 이에 따라 예컨대 제어신호(TGC3)가 고전위로 되고 다른 제어신호가 저전위로 되어 있으면, 스위치군(SWG3) 내의 화살표로 나타낸 2개의 스위치(SW)가 "온"으로 되고, 같은 스위치군의 다른 스위치(SW) 및 다른 스위치군의 스위치(SW)가 "오프"로 된다. 그러므로 제어신호(TGC3)만이 고전위로 된 때에는, 제3도의 P3의 전송패턴이 형성되고, 메모리코어(MR)의 I/O선 MIO2, MIO3과 논리회로(LC)의 I/O선 LIO0, LIO1와의 사이에 전송경로가 생긴다. 그 밖의 전송패턴도 마찬가지로 하여 제어신호(TGCi)중의 하나를 고전위로 하면 실현할 수 있다.
버퍼회로 TGBUF0, TGBUF1, TGBUF2, TGBUF3은, I/O선 MIOi 및 I/O선 LIOi에 존재하는 기생용량에 의한 영향에 따라 신호가 지연하여 버리는 것을 피하도록 작용한다. 버퍼회로(TGBUFi)의 구성에는 다음 제5도에 예시된다. 다음에 제5도를 사용하여 버퍼회로(TGBUFi)의 구성, 동작을 설명한다.
버퍼회로(TGBUFi)는, 메모리코어(MR)의 판독, 기입동작에 맞춰 데이터의 흐름을 바꾸는 양방향의 버퍼임과 동시에 전송패턴이 형성된 때에 사용하지 않는 논리회로(LC)의 I/O선 LIOi의 전위를 래치하는 기능을 가지는 회로로 되어 있다.
전에 설명한 제3도에 도시된 예에서는 전송패턴(P0)을 제외하고 어느 것도 논리회로(LC)의 I/O선 LIOi의 일부는 사용되지 않는다. 사용되지 않은 I/O선 LIOi의 전위가 확정되지 않고 소위 플로팅(floating) 상태로 되면 전하의 누설에 의해 중간 전위로 될 가능성이 있다. 그 경우, I/O선 LIOi의 플로팅 중간전위를 받는 논리회로(LC)측의 도시하지 않은 CMOS(Complement Metal Oxide Semiconductor)트랜지스터에 관통전류와 같은 과도한 전류가 정상적으로 흘러버린다. 그것을 피하기 위해 논리회로(LC)의 I/O선 LIOi중 사용하지 않은 것은 그 전위를 소정전위로 강제 내지 클램프(clamp)한다.
즉, 논리회로(LC)는, 인에이블(enable)신호(LIOEi) (제5도 참조)를 받도록 하여 그 인에이블신호(LIOEi)에 의해 그 동작이 제어되도록 한다.
도시한 회로구성에 의해, 예컨대 버퍼회로(TGBUFi)의 제어입력인 인에이블신호(LIOEi)를 저전위로 하면 제5도에 도시되는 논리 구성으로부터 분명해지는 것과 같이 신호(TGWi, TGRi)가 저레벨로 되고, 신호(TGWBi, TGRBi)가 고레벨로 되어 클록드 인버터(clocked inverter)회로 (RINV, WINV)가 오프된다. 이와 동시에 신호 LIOPRi는 고레벨로 되고, 신호 LIOPRi를 그 게이트로 입력하는 MOS 트랜지스터(Q1)가 온으로 됨으로써, I/O신호 LIOi가 저레벨로 클램프 된다.
이에 대해 사용되어야 하는 I/O신호(LIOi)에 관하여는, 인에이블신호(LIOEi)를 고전위로 한다. 데이터방향의 전환은 다음과 같이 행해진다.
즉, 메모리코어(MR)가 판독동작일 때에는 신호(TGRW)를 저전위로 한다. 그렇게 하면 인에이블신호(LIOEi)가 고전위인 경우에는 판독용 클록드 인버터(RINV)만이 활성화 되어 I/O선 LIOi'으로부터 I/O선 LIOi로 데이터가 전송된다. 한편, 메모리코어(MR)가 기입동작인 때에는, 신호(TGRW)를 고전위로 한다. 그렇게 하면 인에이블신호(LIOEi)가 고전위인 경우에는 기입용 클록드 인버터(WINV)만이 활성화되어 I/O선(LIOi)으로부터 I/O선(LIOi')로 데이터가 전송되어 스위치(SW)를 통해 메모리코어(MR)의 I/O선(MIOi)으로 데이터가 전송된다.
이상 설명한 바와 같이, 제4도, 제5도에 도시되어 있는 실시예를 사용하면, 전송되는 데이터가 통과하는 스위치(SW)의 단수는 일단이기 때문에 고속의 동작을 실현할 수 있다. 또한, 스위치(SW)의 단수는 전송패턴수와 같은 것이므로, 쓸데 없는 레이아웃 영역이 불필요하고 고집적화가 가능하다. 게다가, 논리회로(LC)의 I/O선(LIOi) 중 사용하지 않은 I/O선의 버퍼회로(TGBUFi)를 정지시키고, 또한 전위가 플로팅상태로 되는 것을 피하기 때문에 쓸데 없는 전력소비가 없고 논리회로(LC)의 게이트에 지나친 전류가 흐르는 것을 방지할 수 있다. 따라서 I/O선의 일부를 사용하지 않은 전송패턴을 자유롭게 설정할 수 있다.
또, 제4도에서는, 스위치군(SWG) 내의 스위치(SW)중 제어신호(TGCi)가 입력되지 않음으로써, 회로동작상으로부터는 불필요한 것도 마련되어 있다. 이것은 다음과 같은 이유 때문이다.
즉, 전송회로(TG)를 이루는 스위치군(SWG)은, 제4도과 같이 스위치(SW)와 그것에 대응해야 하는 제어신호(TGCi)와의 접속 및 스위치(SW)와 I/O선(MIOi)과의 접속에 필요한 배선 및 콘택 이외는 전송패턴에 의하지 않고 공통의 형상을 하고 있다.
따라서 스위치(SW)와 제어신호(TGCi)와의 접속 및 스위치(SW)와 I/O선(MIOi)과의 접속에 필요한 배선 및 콘택을 제외한 공통부분을 레이아웃 라이브러리로서 준비해 두면, 칩의 레이아웃 설계가 용이해지는 이점이 있다. 또한, 만일 전송패턴의 변경을 요하는 경우이더라도 스위치군(SWG)내의 스위치(SW)를 라이브러리로 하여 전체로 만들어 놓으면 전송패턴의 변경에 따라 새롭게 필요해지는 스위치(SW)가 있더라도, 그 스위치에 대응하는 트랜지스터를 라이브러리내에 고쳐 추가하는 것이 불필요해지는 이점이 있다. 이 때는 또한, 반도체 집적회로 제조를 위한 포토리소그래피용 마스크를 추가트랜지스터 때문에 수정하는 것이, 새롭게 추가하는 트랜지스터가 없는 것에 의해 불필요해지기 때문에, 수정해야 하는 마스크의 매수를 삭감할 수 있다. 특히 본 발명과 같은 메모리, 논리혼재의 칩은 용도에 따라 메모리 용량이나 논리의 구성을 바꿀 필요가 있는 것을 고려하여야 한다. 이와 같은 용도의 관점에서, 어떤 종류인가의 메모리 코어(MR)와 전송회로(TG)용의 상기 스위치(SWG)군의 기본패턴을 라이브러리로서 준비해 두면 그것들로부터 필요한 것을 고르고, 또한 논리부분을 논리용 기본 라이브러리(LL)를 써서 합성하여 배치배선을 행하는 것에 의해 LSI칩의 마스크를 신속하게 설계할 수가 있다.
또한, I/O선 (MIOi) 및 I/O선 (LIOi)에 접속되는 스위치(SW)를 구성하는 MOS 트랜지스터와 같은 트랜지스터는 그 드레인 접합용량, 소스접합용량과 같은 접합용량을 가진다. 이러한 접합용량은, 일종의 기생용량이어서, 회로의 동작속도를 제한한다. 그 때문에 스위치(SW)의 수가 증가하면 증가할수록 I/O선(MIOi) 및 I/O선(LIOi)의 기생용량이 증가하게 되어 I/O선(MIOi) 및 I/O선(LIOi)를 통해 전달되어야 하는 신호의 지연이 크게 된다. 따라서, 스위치군(SWG)의 단수가 대단히 많아지는 것과 같은 경우에 의해 신호지연이 문제로 되는 경우에는, 불필요한 스위치(SW)는 생략해도 된다.
[전송회로의 제2의 구체예]
제6도에는, 제2도의 전송회로(TG)를 제4도에 도시된 것 보다 적은 7단의 스위치군(SWG)으로 실현하는 전송회로(TG)의 제2의 구체예가 도시되어 있다. 제3도의 전송패턴에 대응하는 제4도의 전송회로(TG)에서는, 하나의 전송패턴에 하나의 스위치군(SWG)이 대응하고 있었다. 그러나, 제3도의 전송패턴 P0, P1. P2에는, 메모리 코어(MR)의 I/O선 중 MIO0, MIO1와, 논리회로(LC)의 I/O선(LIO0, LIO1)을 접속하는 공통점이 있다. 또한, 전송패턴 P1과 P3에는, 메모리코어(MR)의 I/O선 중 MIO2, MIO3과, 논리회로(LC)의 I/O선 LIO0, LIO1를 접속하는 공통점이 있다. 이것에 착안하여 스위치군(SWG0)을 삭제하여 스위치군(SWG1과 SWG2)을 변경한 것이 제6도의 실시예이다.
제7도에는, 제6도의 구성의 전송회로(TG)에서, 각 전송패턴(P0∼P7)을 실현하기 위한 제어신호(TGCi, TGRW, LIOEi)의 설정법이 도시되어 있다. 여기서 "1"은 고전위, "0"은 저전위를 나타낸다. 또, 전송패턴 P1은 전술의 이유로 기입동작 밖에 할 수 없기 때문에 제어신호 TGRW는 "1"로 밖에 설정 할 수 없다. 전송패턴 P0, P1을 실현하기 위한 제어신호 TGCi의 설정은 제4도의 실시예와 다르다.
제7도와 같이, 전송패턴 P0을 실현하기 위해서는, 제어신호 TGC1과 TGC2의 두개의 제어신호를 고전위로 하면된다. 제어신호 TGC1에 의해, I/O선 중 MIO2와LIO2, MIO3와 LIO3가 접속되며, 제어신호 TGC2에 의해, I/O선 중 MIO0과 LIO0, LIO1과 MIO1이 접속된다.
전송패턴 P1을 실현하기 위해서는, TGC2와 TGC3의 두개의 제어신호를 고전위로 하면 된다. 제어신호 TGC2에 의해, I/O 선 중 MIO0과 LIO0, LIO1와 MIO1이 접속되며, 제어신호 TGC3에 의해, I/O 선 중 MIO2과 LIO0, MIO3와 LIO1이 접속된다. 본 실시예에서는, 이와 같이 스위치군(SWG)의 단수를 삭감할 수 있다. 여기서 2개의 스위치군(SWG)을 활성화하여 전송패턴 P0과 P1를 실현하고 있지만, 데이터가 통과하는 것은 스위치(SW) 일단인 것이 제2의 특유한 장점이다. 이 점은, 종래의 오메가 네트워크 등 복수의 단수를 데이터가 통과하는 것과 다르다. 이상과 같이 본 실시예에 의하면, 고속성을 손상하지 않고 보다 고속화를 달성할 수 있다.
[전송회로의 제3의 구체예]
제8도에는, 스위치(SW)을 병렬로 접속하는 것에 의해, 제6도의 실시예보다 스위치군(SWG)의 단수를 더욱 삭감한 예가 나타내어 진다. 이 예에서는, 스위치군(SWG)을 3단으로 삭감할 수 있다. 제어신호의 설정방법은 제7도에 도시된 실시예와 같다. 제8도에 도시된 예에서는, 각 스위치군(SWG)에 있어서, I/O선(LIOi') 양측에 스위치(SW)가 배치된다.
제9도(a)의 기호에서 나타내어지는 2개의 스위치(SW)의 회로구성과 레이아웃의 예가 제9도에 나타내어진다. 제9도(b)에 도시된 바와 같이 1개의 스위치(SW)는 n채널 MOS 트랜지스터(이하, nMOS라 칭함)(Qn1)와, p채널 MOS 트랜지스터(이하, PMOS라 칭함)(Qp1)가 병렬로 접속되어 구성된다. 다른 하나의 스위치(SW)는nMOS(Qn2)와 PMOS(Qp2)가 병렬로 접속되어 구성된다. nMOS(Qn1,Qn2)의 게이트에는 제어신호 TGCi, TGCj를 pMOS(Qp1, Qp2)의 게이트에는 그 역상(逆相)인 제어신호TGCiB, TGCjB가 입력된다.
제9도의(c)에는, 스위치(SW)의 NMOS부의 레이아웃예가 도시된다. M2는 제2배선층, M1은 제1 배선층, FG는 게이트 전극층, L은 확산층, CONT1은 제1배선층(M1)과 확산층(L)과의 콘택, CONT2는 제1배선층(M1)과 제2배선층(M2)과의 콘택이다. 제9도의(c)에 도시된 바와 같이, 최하층이 확산층(L)이고, 게이트전극층(FG), 제1배선층(M1), 제2배선층(M2)의 순으로 배치된다. 본 실시예에서는 2개의 스위치(SW)를 구성하는 MOS끼리의 확산층(L)을 I/O선(LIOi')에서 공통화할 수 있기 때문에 좁은 I/O선의 피치로 해결할 수 있다. 또, 여기서는 병렬로 접속하는 스위치(SW)의 수를 2개로 하였지만, I/O선의 피치가 넓은 경우에는 3개 이상의 스위치(SW)를 병렬로 접속하여 더욱 단수를 삭감해도 되는 것은 물론이다.
[메모리 판독ㆍ기입회로 제어신호에 의한 저소비 전력화]
제4도, 제6도, 제8도에 도시된 실시예에서는, 전송회로(TG)의 버퍼회로(TGBUFi)를 인에이블신호로 컨트롤함으로써 쓸데 없는 소비전력을 삭감함과 동시에 논리회로(LC)의 게이트 전위가 플로팅상태로 되는 것을 방지한다.
제10도에는, 또한 메모리코어(MR)의 판독ㆍ기입회로(RWC)를 전송패턴에 따라 제어함으로써, 사용하지 않은 메모리코어(MR)의 I/O선(MIOi)을 구동하는 것에 의한 판독시의 쓸데 없는 소비전력을 삭감하고, 또한 기입때에 사용하지 않은 I/O선(MIOi)으로부터 메모리코어(MR)로 잘못된 데이터가 기입되는 것을 방지하는예가 도시되어 있다.
제3도의 전송패턴 중 P2부터 P7는, 메모리코어(MR)의 I/O선(MIOi)의 일부 밖에 사용하지 않는다. 그래서, 제10도에서는, 메모리코어(MR)의 판독ㆍ기입회로(RWC)를 제어하는 신호를 마련하고, 그 제어신호에 따라 사용하지 않는 메모리코어(MR)의 I/O선(MIOi)을 담당하는 판독ㆍ기입회로(RWCi)를 정지시킨다. 제10도에 있어서 RWCO, RWC1, RWC2, RWC3는 각각 메모리코어(MR)의 I/O선 MIO0, MIO1, MIO2, MIO3용의 판독ㆍ기입회로(RWCi)이고, 전체로서 메모리코어(MR)의 판독ㆍ기입회로(RWC)를 구성한다. 또한, MIOE0, MIOE1, MIOE2, MIO3은, 각각 판독ㆍ기입회로 RWC0, RWC1, RWC2, RWC3를 제어하는 인에이블신호이다.
각각의 전송패턴에 있어서 판독ㆍ기입회로(RWCi)를 제어하는 인에이블신호 MIOE0, MIOE1, MIOE2, MIOE3과 논리회로(LC)의 버퍼회로(TGBUFi)의 인에이블 신호(LIOEi)의 설정법이 제11도에 도시되어 있다. 여기서, 인에이블신호의 "1"은 고전위 활성상태를 나타내며, "0"은 저전위로 정지상태를 나타낸다. 또, 인에이블신호 MIOE0, MIOE1, MIOE2, MIOE3를 메모리코어(MR)에 인접한 논리회로(LC)로부터 발생시키는 경우, 제11도에 도시되어 있는 바와 같이 전송회로(TG)를 관통해서 배선하면 레이아웃을 고밀도로 할 수 있다.
본 실시예에 의하면, 전송패턴에 따라 메모리코어(MR)의 판독ㆍ기입회로(RWC)를 제어함으로써, 사용하지 않은 I/O선(MIOi)를 구동하는 것에 의한 판독시의 쓸데없는 소비전력을 삭감시키고, 또한 기입시에 사용하지 않는 I/O선(MIOi)으로부터 메모리코어(MR)에 잘못된 데이터가 기입되는 것을 방지할 수가있다.
[메모리 판독ㆍ기입회로와 버퍼제어신호의 공용화]
제10도에 도시된 실시예에서는, 판독ㆍ기입회로(RWC)를 제어하는 인에이블신호(MIOEi)와 논리회로(LC)의 버퍼회로(TGBUFi)의 인에이블신호(LIOEi)를 독립으로 하였다. 즉, 신호 MIOEi와 LIOEi는 제11도에 도시한 바와 같이 전송패턴에 맞춰 각각 다르게 설정할 필요가 있었다. 그러나, I/O선의 수와 전송패턴의 수가 증가하면 인에이블신호(MIOEi와 LIOEi)를 독립으로 설정하는 것은 번잡한 일이 된다.
제14도에는, 논리회로(LC)의 버퍼회로(TGBUFi)의 인에이블신호(LIOEi)용의 전송회로(CTG)를 마련하여 판독ㆍ기입회로(RWC)의 인에이블신호(MIOEi)를 인에이블신호(LIOEi)에서 자동적으로 발생하도록 한 예가 도시되어 있다. 제12도에는, 제3도의 데이터의 전송패턴이 재차 도시되며, 제13도에는, 제12도의 데이터전송패턴에 대응하는 버퍼회로(TGBUFi)의 제어신호(LIOEi)의 전송패턴이 도시되어 있다.
이 전송패턴에 따라 버퍼회로(TGBUFi)의 제어신호(LIOEi)를 메모리코어(MR) 측에 전송해 주면, 그 신호를 그대로 메모리코어(MR)의 판독ㆍ기입회로(RWC)의 인에이블신호(MIOEi)로서 사용할 수가 있다.
여기서 데이터가 사용하지 않는 I/O선(MIOi) 및 I/O선(LIOi)을 담당하는 제어신호도 메모리코어(MR)의 판독ㆍ기입회로(RWC)를 정지시키기 위해서 전송할 필요가 있는 것에 주의하지 않으면 안된다. 즉, 전송패턴 P1부터 P7과 같이 데이터는 일부의 I/O선(MIOi) 및 I/O선(LIOi)밖에 사용하지 않은 경우에도, 제13도에 도시된 바와 같이 제어신호(LIOEi)는 모두 전송된다.
제14도의 버퍼회로(TGBUFi)의 제어신호(LIOEi)의 전송회로(CTG)는 데이터의 전송회로(TG)와 마찬가지로 스위치군(SWGEi)로 이루어진다. 이 전송회로(CTG)에 의하면 전송패턴에 따라 제15도에 도시된 바와 같이, 제어신호(ECi)를 설정함으로써 제13도에 도시된 전송패턴을 실현할 수 있다.
여기서, 제13도에 도시된 전송패턴을 보면 P0, P2, P5의 형이 같은 것임을 알수 있다. 거기서 제어신호 EC0, EC2, EC5에 관한 스위치군(SWGE0)은 하나로 통합되어 제어신호 EC0, EC2, EC5의 오어(OR) 논리를 통해 입력된다. 이것에 의해 스위치군(SWGE)의 단수를 삭감하여 고집적화를 꾀할 수 있다. 동작원리는 지금까지 설명한 데이터의 전송회로(TG)와 같기 때문에 생략한다.
본 실시예에 의하면, 제4도와 같은 데이터의 전송회로(TG)에 부가하여 버퍼회로(TGBUFi)의 제어신호(LIOEi)의 전송회로(CTG)를 마련함으로써 판독ㆍ기입회로(RWC)의 인에이블신호(MIOEi)와 버퍼회로(TGBUFi)의 인이에블신호(LIOEi)를 각각 독립으로 설정할 필요가 없다. 이 때문에, I/O선의 수나 전송패턴의 수가 증가하더라도 인에이블신호의 설정이 번잡하게 되는 것을 피할 수 있다.
[데이터의 전송단위를 세밀하게 설정할 수 있는 인에이블신호]
지금까지의 실시예에서는, 데이터의 전송시에 통합되어 전송되는 I/O선(제3도에서는 2n-2승)에 대해 판독ㆍ기입회로(RWC)의 인에이블신호(MIOEi)와 버퍼의 인에이블신호(LIOEi)를 마련하고 있었다. 그러나, 인에이블신호의 설정을 세밀하게 하는 것에 의해 더욱 다채로운 전송패턴을 실현할 수가 있다.
제16도 및 제17도에는, 데이터의 전송단위보다 세밀하게 설정가능한 인에이블신호의 예가 도시된다. 이 실시예에서는, 제3도의 전송패턴에 대해 통합되어 전송되는 I/O선의 단위를 4바이트(Byte)로 하고, 인에이블신호는, 1바이트 단위로 설정된다. 이것에 의해, 제16도에 도시한 바와 같이 4바이트씩의 메모리코어(MR)의 I/O선(MIOi)과 논리회로(LC)의 I/O선(LIOi)과의 사이에 제3도에 도시된 8종류의 전송패턴을 실현할 수 있다. 인에이블신호(LIOEi-j) 및 인에이블신호(MIOEi-j)는 4바이트의 I/O선군(LIOi 및 MIOi)에 대하여 4개씩 각각 마련되어 있다. 즉, j는 0에서 3이다. 예컨대, I/O선(LIO0)에 관하여는 LIOE0-0, LIOE0-1, LIOE0-2, LIOE0-3의 4개의 인에이블신호가 있다. LIOE0-0는 LIO0의 1바이트 번째, LIOE0-1은 LIO0의 2바이트 번째, LIOE0-2는 LIO0의 3바이트 번째, LIOE0-3는 LIO0의 4바이트 번째의 인에이블신호이다.
제17도에는, 제16도의 구성의 전송회로(TG)에서 가능해지는 전송패턴의 예와 그를 위한 인에이블신호의 설정법이 도시된다. 인에이블신호(MIOEi-j)는 인에인블 신호(LIOEi-j)를 전송하는 것에 의해 만들어도 좋고, 인에이블신호(LIOEi-j)와 독립으로 설정하더라도 좋다. 제17도의(A)는, 전송회로(TG)에서 결정되는 기본전송패턴을 P0 로 한 상태에서 인에이블신호(LIOEi-j) 및 인에이블신호(MIOEi-j)를 모두 "1"로 한 경우이다. 이것은, 지금까지의 패턴과 같다. 즉, I/O선(LIOi 및 MIOi)의 전체가 결합된다. 이것에 대하여, 제17도의(B)와 같이 기본전송패턴을 P0로 하여 인에이블신호(LIOEi-j) 및 인에이블신호(MIOEi-j)를 2바이트씩 "0"과 "1"로 하면 다른 전송패턴을 만들 수 있다. 즉, 각 I/O선(LIOi 및 MIOi)은 각각 2바이트만이결합된다. 또한, 제17도의 (C)는 기본전송패턴 P3이고, 제17도의(D)는, P3에 있어서 인에이블신호(LIOEi-j) 및 인에이블신호(MIOEi-j)의 설정을 바꾼 것이다. 즉, I/O선 LIO0과 MIO2, LIO1과 MIO3은 각각 2바이트만이 결합된다.
여기서는, 두개의 기본전송패턴에 대해서 각각 일례만 나타내었지만, 이외에도 인에이블신호를 바꿈으로써 기본전송패턴과는 다른 여러가지의 전송패턴을 만들 수 있다. 화상용도 등에서 바이트마다 데이터의 속성이 다른 것과 같은 경우에는, 특정한 바이트만을 전송할 필요가 있을 수 있으며 그와 같은 경우 본 실시예가 유용하다.
제18도에는, 본 발명을 3차원 컴퓨터 그래픽(이하 3D-CG라고 칭함)의 묘화(描畵)처리를 행하는 LSI 에서의 데이터전송에 응용한 예가 도시된다.
전송회로(TG)는, 제18도의 (a)에 박스형상으로 표시되어 있다. 전송회로(TG)는 전술의 예와 마찬가지로, 메모리코어(MR)와 논리회로(LC)와의 사이에 마련된다. 전송회로(TG)의 기본전송패턴은, 기본적으로는 제3도과 마찬가지이기 때문에 이하의 설명에서는 제3도의 전송패턴부호 Pi를 그대로 사용한다. 여기서 RGB-A, RGB-B는, 화소A 및 B의 색깔을 나타내는 데이터이고, Z-A, Z-B는 화소 A 및 B의 깊이 좌표를 나타내는 데이터이고, 특히 제한되는 것은 아니나, 각각 16비트의 길이이다.
제18도에는, Z비교, 알파블렌드 및 화면클리어의 각 전송패턴이 모두 도시되어 있다.
3D-CG에서는, Z 비교라고 불리는 특별한 처리가 자주 행하여진다. 이것은, 잘 알려져 있는 바와 같이 새롭게 메모리로 화소의 기입을 행하는 경우, 같은 위치의 화소와 Z치(値)를 비교하여 작으면 기입하고, 크면 기입하지 않는 처리이다. 이와 같은 처리를 화소A에 대해서 행하는 경우, 제18도(b)에 도시된 바와 같이, 우선, 전송 패턴을 P5로 하여, 메모리코어(MR)에 미리 기억되어 있는 Z치 Z-Aold를 판독한다. 뒤이어 논리회로(LC)에서 새로운 화소의 Z치 Zin과 비교하여 Zin이 작으면 새로운 화소의 RGB와 Z치를 기입한다. 여기서, 전송패턴을 P2로 바꾸면 RGB와 Z치를 병렬로 기입할 수 있다. 화소B의 경우에는 전송패턴 P7과 P3를 사용하면 된다. 즉, 이 경우, 전송패턴 P7, P3의 사용에 따라 화소B 에 대한 Z치 및 RGB 데이터에 대하여, 화소 A경우의 논리회로(LC)측의 I/O선(LIOi)과 같은 I/O선이 사용된다. 또, RGB 치가 3바이트이고 Z치가 2바이트 등으로 비트수가 다른 경우에는, 전송회로(TG)의 기본전송패턴을 3바이트 단위로 하여, Z치를 취급하는 경우에는 제16도에 도시된 바와 같은 바이트마다의 인에이블신호를 마련하여 마스크를 씌우면 된다.
3D-CG에서는, 또한 알파 블렌드 처리라는 투명감을 나타내는 처리가 있다. 이것을 행하기 위해서는 제18도의(c)에 도시된 바와 같이 하면 된다. 알파 블렌드 처리는, 잘 알려져있는 바와 같이 새롭게 메모리로 화소의 기입을 하는 경우, 같은 위치의 화소를 판독하고, 그 판독된 화소데이터와 새로운 화소를 소망의 계수α로 가중(weighting)시켜 가산하고, 구해진 화소데이터를 메모리코어의 같은 위치에 기입하는 처리이다. 이와 같은 처리를 화소A에 대해서 행하는 경우, 제18도(c)에 도시된 바와 같이, 우선 전송패턴을 P4로 하여 메모리코어(MR)에 이미 기억되어 있는 RGB-Aold를 판독한다. 뒤이어 논리회로(LC)에서 새로운 화소의 RGBin과 계수α로가중시켜 가산하고, 기입을 행한다. 전송패턴은, P4 대로 하면 된다. 화소B의 경우에는, 화소A에 대한 I/O선과 같은 I/O선을 통해 논리회로(LC)와의 데이터의 수수를 하는 것이므로 전송패턴 P6을 사용하면 된다. 이 경우 만일 논리회로(LC)에 가중시켜 가산을 행하는 연산회로가 하나밖에 없는 경우에는, 바이트마다의 인에이블 신호를 마련함으로써 R과 G와 B의 1바이트씩 알파 블렌드처리를 행할 수 있다.
또한 화면클리어라고 불리는 처리도 고속으로 할 수 있다. 이 처리에서는, 메모리코어(MR) 내의 데이터의 초기화를 행한다. 통상 RGB에 있어서는 최소치나 최대치, Z치에 관하여는, 깊이가 최대로 되는 최대치의 기입을 행한다. 제18도(d)에 도시된 실시예에서는, 2개의 화소분의 I/O선이 있기 때문에, 전송패턴 P1를 이용하면, 2화소 동시에 기입을 행할 수 있기 때문에, 고속으로 클리어처리를 할 수 있다. 게다가, 제18도에는 나타내어 있지 않지만, 전송패턴 P0과 인에이블신호를 사용하면 2 화소의 RGB를 동시에 판독하는 것도 가능하기 때문에 고속의 화면표시도 행할 수 있다. 이상 설명한 바와 같이 본 발명의 전송회로(TG)을 사용하면 고속의 3D-CG 묘화처리를 행할 수 있다.
[I/O 선의 할당을 바이트마다 하는 예]
지금까지는, 설명을 간단히 하기 위해 전송의 단위마다 I/O선 MIOi나 LIOi를 할당하여 도시하였다. 실제의 레이아웃에서 이와 같이 하면, 특히 전송의 단위가 큰 경우에는 많은 I/O 선을 가로 질러 데이터가 전해지기 때문에, 배선지연이나 잡음의 유기 등 나쁜 영향을 미치는 경우가 있다.
제19도에는, I/O선의 할당을 바이트마다 변경한 예가 도시된다. 제19도의(a)에는, 전송의 단위가 4바이트인 경우에 1바이트씩을 단위로 하는 방법이 도시된다. 제19도(b)에는, 제3도의 전송패턴과 등가인 전송패턴이 도시되어 있다. 이와 같이 하면 데이터의 이동이 적게 된다. 예를들면, 전송패턴 P3에서는, 제3도에 도시된 바와 같이 하면 8바이트분의 I/O 선을 가로 지를 필요가 있지만, 제19도의 (b)에 도시된 바와 같이 본 실시예에서는 2바이트로 해결된다. 여기서는 바이트마다 교체하였지만, 비트마다 교체하더라도 좋다. 그 경우에는 더욱 이동이 적게 된다.
물론 본 실시예와 같이 하는 경우는 논리회로(LC)의 투입구도 그에 맞춰 설계할 필요가 있지만, 배선지연이나 잡음의 유기 등 나쁜 영향을 피하고, 또한 배선의 증가에 의한 면적의 증대도 저감할 수가 있다.
[스위치군(SWG)의 구체적인 레이아웃 패턴의 예]
이하에서는, 제20도로부터 제26도를 사용하여 실시예의 스위치군(SWG)의 구체적인 구성을 설명한다. 또, 제21도로부터 제26도에 있어서 메모리코어(MR)와 논리회로(LC)의 I/O선이 각각 4개씩 있는 예를 나타내지만, 본 발명은, 이것에 한정되지 않으며 그 이외의 갯수의 경우에도 메모리코어(MR)와 논리회로(LC)의 I/O선의 수가 다른 경우에도 적용할 수 있는 것은 지금까지 언급한 실시예와 마찬가지다. 실제로는 예컨대 128개와 같은 다수의 I/O선이 마련된다.
제20도는 반도체칩의 단면도로서, 레이아웃층의 관계를 나타내고 있다. 특별히 제한되는 것은 아니나, 도시된 구조는, 소위 3층의 금속배선을 갖는 CMOS구조를 취하고 있다. 3층 금속배선 구성의 CMOS구조 그 자체에 관하여는 본 발명과 직접 관계가 없으므로 그 상세한 설명은 하지 않지만, 그 개략을 설명하면 다음과 같다.
즉, 단결정실리콘으로 이루어지는 것과 같은 반도체기판(200)의 속에 p형웰(PWEL)과 n형웰(NWEL)층이 형성되며, 이러한 반도체기판(200)의 표면에 선택산화 기술에 의해 반도체기판(200)의 표면중 활성영역으로 되어야 하는 표면을 제외한 표면에 필드절연막(202)이 형성되며, 활성영역표면으로의 게이트절연막(204)의 형성과 그 위로의 폴리실리콘이나 폴리사이드로 이루어지는 것과 같은 게이트전극층(FG)의 선택적 형성과, 필드절연막(202)과 게이트전극층(FG)과를 이온 주입의 마스크로 하는 것과 같은 불순물 선택주입에 의한 n형 드레인ㆍ소스영역(206), p형 드레인ㆍ소스영역(208)의 형성에 의해 p형웰(PWEL)내에 nMOS가, n형웰(NWEL)내에 pMOS 가 형성되어 있다. 또, 제20도의 단면도는, 전송회로(TG) 및 논리회로(LC) 등의 소위 로직부의 것이다. 도시되어 있지는 않으나, 메모리코어(MR)부는 P형웰(PWEL) 및 n형웰(NWEL)의 하부에 제2의 n형 웰이 형성되며, 메모리코어(MR)와 논리부가 분리되도록 구성된다.
반도체기판(200)의 표면에는, 실리콘산화물을 주체로 하는 것과 같은 절연체로 이루어지는 층간절연막의 형성과, 선택에칭기술에 의한 층간절연막등으로의 콘택홀의 형성과 알미늄(Al)으로 이루어지는 것과 같은 배선층의 형성과의 반복에 의해 복수의 배선층 M1, M2, M3가 형성된다.
또, 제20도에는 도면의 복잡화를 피하고 이해를 쉽게 하기 위해 다른 계층을 이루는 배선층간에 존재해야 하는 층간절연막은 도시되어 있지 않다.
제20도에 있어서, M1에서 M3는, 알미늄 등의 금속으로 이루어지는 것과 같은 배선층으로, 제3배선층(M3)이 가장 상부에 있고, 그 밑에 제2배선층(M2)이, 더욱밑에 제1배선층(M1)이 있다. 또한, FG는, MOS 트랜지스터의 게이트 전극층이다. CONT1, CONT2, CONT3는, 이들 배선층(M1, M2, M3)이나 게이트전극층(FG) 또는, 트랜지스터의 확산층(206,208), 웰(PWEL, NWEL) 등을 전기적으로 접속하기 위한 콘택층이다. 콘택층 CONT1은 제1배선층(M1)을 트랜지스터의 확산층(206,208)이나 게이트전극층(FG) 또는 웰(PWEL, NWEL)과 접속하기 위한 것이다. 콘택층 CONT2는, 제1배선층(M1)과 제2배선층(M2)을 접속하는 층이다. 콘택층 CONT3은, 제2배선층(M2)과 제3배선층(M3)을 접속하는 층이다. 전술의 콘택층은, 도면에서는 배선층(M1,M2, M3)과 다른층으로 이루어지도록 표시되어 있지만, 전술한 내용으로부터 명확해진 바와 같이 층간절연막에 형성된 콘택홀에 형성된 배선층으로 이루어진다.
제4도의 실시예에서도 설명한 바와 같이, 스위치군(SWG)에 있어서, 전송패턴에 의하지 않은 공통부분을 레이아웃 라이브러리로서 준비해 두면, 칩의 레이아웃 설계가 용이해진다. 제21도는, 그 공통부분의 레이아웃의 실시예를 도시한 것이다. 또, 제21도의 구성에 관한 이해를 쉽게 하기 위해, 제22도에 M1층까지의 레이아웃을 제23도에 M1으로부터 M3까지의 레이아웃을 도시했다. 또 제24도에 레이아웃에 대응하는 등가회로를 도시하였다.
제24도에 도시된 바와 같이 본 실시예에서, 스위치(SW)는 nMOS와 pMOS의 트랜스퍼 게이트로 이루어지는 2개의 스위치를 접속한 4개의 트랜지스터군으로 이루어지며, 각각이, 논리회로(LC)의 I/O선(LIO0'으로부터 LIO3')인 제3배선층(M3)에 접속된다. 제어신호(TGCi나 TGCiB)용의 제2배선층(M2)이나 메모리코어(MR)의 I/O선(MIOi)용의 제3배선층(M3)은 전송패턴에 의해 접속하는 장소가 다르기 때문에미배선인채로 남기고 있다. 또, 웰(PWEL, NWEL)이나 미사용의 스위치(SW)를 구성하는 트랜지스터의 게이트전극을 고정하기 위한 전원선(Vcc, Vss)에는, 제2배선층이 사용된다.
본 실시예에서, 제어신호(TGCi 및 TGCiB)를 구성하는 제2배선층(M2)은 I/O 선(LIOi, MIOi)과 직교되어 레이아웃된다. 이것에 의해 다음과 같은 이점이 생긴다. 즉 스위치군(SWG)의 메모리코어(MR)의 I/O선(MIOi)용의 제3배선층(M3)은, 메모리코어(MR)의 I/O선(MIOi)로의 접속이 용이하게 되도록 메모리코어(MR)의 I/O선(MIOi)의 배선피치에 맞춰 레이아웃되는 것이 바람직하다. 한편, 제어신호의 갯수는, 전송패턴에 따라서는, 상기 실시예에서 나타낸 3개씩보다 증가시킬 필요가 생긴다. 본 실시예와 같이 제어신호(TGCi 및 TGCiB)를 I/O선 LIOi, MIOi와 직교시켜 레이아웃구성을 취한 경우, I/O선 LIOi, MIOi의 피치가 제어신호선의 피치와 무관해지기 때문에, 제어신호의 갯수를 바꾸더라도 스위치군(SWG)의 메모리코어(MR)의 I/O선(MIOi)용의 제3배선층(M3)의 피치를 변경할 필요가 없다고하는 이점이 생긴다.
다음에, 이와 같은 공통부분을 이용하여 전송회로(TG)의 스위치군(SWG)을 구성하는 방법을 설명한다. 제25도는, 제21도의 구성을 사용하여 제8도의 스위치군(SWG)을 구성하는 방법을 나타낸 것이다. 도면에 있어서는, SWG0의 부분만을 나타내고 있지만, 다른 것도 마찬가지로 구성할 수 있다. 이해하기 쉽도록 제26도에 제21도의 공통부분에 대해 추가한 층의 레이아웃도를 나타내었다. 도면에 있어서는, 제어신호(TGCi, TGCiB)를 스위치(SW)를 구성하는 트랜지스터의 게이트전극에 전달하기 위한 콘택층 CONT2과, 메모리코어(MR)의 I/O선(MIOi)를 스위치(SW)를 구성하는 트랜지스터의 소스전극 또는 드레인전극에 전달하기 위한 제2 배선층(M2) 및 콘택층 CONT2, CONT3가 추가되어 있다. 이와 같이, 제21도의 실시예에, 실현하고자 하는 전송패턴에 맞춰 다소의 레이아웃층을 추가하여 나란하게 하는 것만으로 여러가지 전송회로(TG)를 구성할 수 있다. 이와 같이, 공통부분을 레이아웃 라이브러리로서 준비해 두면, 전송회로(TG)의 레이아웃설계를 대단히 용이하게 할 수 있다.
또, 지금까지는 메모리코어(MR)의 I/O선(MIOi)의 피치내에 병렬로 접속된 2개의 스위치(SW)를 배치한 예를 도시하였지만, I/O선(MIOi)의 피치가 넓은 경우에는 더 많은 스위치(SW)를 I/O선(MIOi)의 피치내에 배치하여 스위치군(SWG)의 단수의 삭감을 할 수 있다. 제27도는, I/O선(MIOi)의 피치내에 4개의 스위치를 배치하는 것에 의해 제8도의 스위치군(SWG0과 SWG1)을 일단으로 실현한 예이다. 이와 같이 많은 스위치(SW)를 I/O선(MIOi)의 피치내에 배치하면 스위치군(SWG)의 단수를 삭감할 수 있기 때문에 I/O선(MIOi)의 피치가 넓은 경우에는, 보다 칩사이즈를 저감시킬 수가 있다. 또, I/O선(MIOi)의 피치내에 많은 스위치(SW)를 배치하는 경우라도 레이아웃의 공통부분을 라이브러리에 등록해 두면 전송회로(TG)의 레이아웃설계를 대단히 용이하게 할 수 있는 것은 물론이다.
[전송회로(TG)의 배치를 변경한 예]
지금까지는, 제2도로부터 명확해진 바와 같이 메모리코어(MR)의 판독ㆍ기입회로(RWC)와 논리회로(LC)의 사이에 전송회로(TG)를 배치하는 구성을 취했지만, 본발명은 이것에 한하지 않고, 메모리코어(MR)의 판독ㆍ기입회로(RWC)의 전단에 전송회로(TG)를 배치하는 경우에도 적용할 수 있다.
제28도(A)는, 전송회로(TG)를 메모리코어(MR)의 판독ㆍ기입회로(RWC)의 후단에 배치한 경우이고, 제28도(B)은 전단에 배치한 경우를 나타낸 것이다.
제28도(A)와 같은 구성은, 전송회로(TG)의 구성이 복잡하고, 전송회로(TG) 내의 배선용량이 큰 경우에 적당한 구성으로 고려할 수 있다. 즉, 이와 같이 전송회로(TG) 내에서의 배선용량이 큰 경우는, 메모리코어(MR)로부터 판독된 순수한 신호에 의해, 전송회로(TG)를 직접 구동하려고 하면 지연시간의 증대를 초래하지만, 제28도(A)의 구성에서는 판독ㆍ기입단위회로(URW)에서 신호를 증폭하고, 그 증폭신호에 의해 전송회로(TG)를 구동하기 때문에 신호지연의 증대를 억제할 수 있게 된다.
이에 비해, 제28도(B)와 같은 구성은, 전송회로(TG)의 구성이 단순하고, 전송회로(TG) 내의 배선용량이 작은 경우나, 논리회로(LC)의 I/O선 LIOi의 갯수가, 메모리 코어(MR)의 I/O선 MIOi의 갯수보다 적은 것과 같은 경우에 적당한 구성으로 고려될 수 있다. 즉(B)의 구성에서는 배선용량이 작기 때문에 동작속도의 저하를 염려하지 않아도 되며, 또한 논리회로(LC)의 I/O선 LIOi의 적은 수에 대응하여, 판독ㆍ기입 단위회로(URW)의 수를 감소시킬 수 있기 때문이다.
지금까지 설명한 전송회로(TG)는 스위치군 제어신호(TGCi)나 버퍼군의 제어신호(LIOEi)에 의해 그 동작이나 데이터의 전송패턴이 제어되고 있다. 한편, 메모리코어(MR)에도 판독, 기입을 제어하는 제어신호(MRC)가 입력된다. 전송회로(TG)에제어신호(TGCi)가 입력되고 나서, 전송패턴이나 동작이 확정하기까지의 시간과 메모리코어(MR)에, 제어신호(MRC)가 입력되고나서 데이터를 판독할 수 있기까지의 시간은 일반적으로 일치하지 않는다. 따라서, 제2도의 제어회로(LCC)는, 그 차를 고려하여 양자에 제어신호(TGCi) 및 제어신호(MRC)를 발생할 필요가 있다. 개개의 칩을 설계할 때마다 설계자가 이것을 고려하여 제어회로(LCC)를 설계해도 되지만, 그것이 번거러운 경우도 있다. 이 경우에는, 전송회로(TG)나 메모리코어(MR)의 모듈로서 양자를 동기(同期)시키는 레이턴시(latency) 조정회로를 데이터 베이스에 준비해 두면 칩을 설계할 때에 그것을 부가하는 것만으로 되기 때문에 편리하다. 예를들면, 동시에 전송회로(TG)와 메모리코어(MR)에, 제어신호(TGCi) 및 제어신호(MRC)가 입력되며, 전송회로(TG)의 전송패턴이 확정되고 나서, 메모리코어(MR)에 데이터를 판독할 수 있기까지의 시간(레이턴시(Latency))을 2클록으로 하면 전송회로(TG)의 모듈로서 제어신호(TGCi)를 2클록 지연하는 조정회로를 준비해 두면 된다. 이와 같이 하면, 제어회로(LCC)로부터는 전송회로(TG)와 메모리코어(MR)의 제어신호를 동시에 발생시키더라도 전송회로(TG)의 제어신호가 2클록 지연하기 때문에 양자를 동기시킬 수 있다. 이하의 실시예에서 설명한 바와 같이 메모리코어(MR)의 일실시예인 메모리 매크로(MMACRO)의 레이턴시는 판독과 기입이 다른 경우도 있지만 그 경우는 상기의 조정회로의 지연을 판독ㆍ기입 전환신호로 바꾸면 된다. 일반적으로, 클록에 맞춰 지연을 생성하는 회로 자체는 용이하게 구성할 수 있기 때문에 회로구성의 상세한 설명은 생략한다.
지금까지는, 전송회로(TG)를 중심으로 본 발명의 실시예를 설명하였지만, 다음에 메모리코어(MR)에 대한 실시예를 상세하게 설명한다. 제1도에서 데이터 베이스용 기억장치(DB)에 기억시키는 메모리코어(MR)는, 많은 I/O선을 가지며 또한 기억 용량이 다른 복수의 것을 가정하고 있다. 그러나, 이하에서 설명하는 바와 같이 메모리코어(MR)를 모듈화함으로써, 메모리, 논리혼재칩의 설계를 더욱 유연하게 할 수가 있다. 이하에서는, 그를 위한 실시의 형태를 설명한다. 이하의 설명에서는, 메모리 코어(MR)의 일실시예인 메모리매크로(MMACRO)를 항목마다 나눠 차례차례 설명한다.
[메모리 매크로]
<1. 메모리매크로의 구성및 메모리매크로의 응용예>
제29도에는 메모리매크로(MMACRO)의 구성과 메모리매크로(MMACRO)의 화상처리 LSI로의 적용예가 도시된다. 제29도에 도시된 반도체집적회로(SIC)는, 논리회로블록(LOGIC)과 메모리매크로(MMACRO)를 1개의 단결정실리콘의 반도체기판상에 형성시킨다. 이러한 반도체집적회로(SIC)는, 특별히 제한되는 것은 아니나, 수지봉지(플라스틱 패키지로 봉지)된다. 제29도에 도시된 모듈이나 회로의 배치 및 배선은 반도체칩상의 배치(레이아웃)와 대체로 대응하고 있다. 또, 논리회로블록(LOGIC)은, 제1도의 LSI-A 또는 LSI-B의 논리회로(LC), 전송회로(TG) 및 제어회로(CC)에 대응한다.
<1.1 메모리매크로의 구성>
메모리매크로(MMACRO)의 장점은, 각각 기능이 다른 복수 종류의 모듈의 조합으로 구성되어 있는 것이다. 메모리매크로(MMACRO)는, 제29도의 가로방향에 나란히배치된 복수의 뱅크모듈(BANK)(BANK-0∼BANK-n)과, 복수의 뱅크모듈에 대하여 공통으로 되는 앰플리파이어 모듈(AMP)과, 마찬가지로 공통으로 되는 전원모듈(PS)의 3종류의 모듈로 구성된다.
뱅크모듈(BANK)은 도면의 세로방향에 나란히 배치된 복수의 서브메모리셀 어레이(SUBARY)(SUBARY-00∼SUBARY-i7)와, 복수의 서브메모리셀 어레이에 대하여 공통으로 되는 뱅크제어회로(BNKCNT-1)와, 뱅크제어회로(BNKCNT-2)로 이루어진다.
서브메모리셀 어레이(SUBARY)는, 특별히 제한되는 것은 아니나, 메모리셀로서 정보기억용 용량과 어드레스선택용 MOS 트랜지스터로 이루어지는 소위 다이나믹형 메모리셀을 사용하는 소위 다이나믹 메모리로 된다. 서브메모리셀 어레이(SUBARY)는 복수쌍의 비트선(B, /B)과, 복수개의 워드선(W)(제29도에서는 도면의 복잡화를 피하고 이해를 쉽게 하기 위해서 1개만이 도시되어 있음)과, 복수의 메모리셀(제29도에서는 동그라미로 표시함)과, 메모리셀의 데이터 판독전에 비트선의 전위를 미리 소정의 레벨로 하는 비트선 프리차지(precharge)회로(PC)와, 메모리셀로부터의 신호를 증폭하는 센스 앰플리파이어(SA)와, 복수쌍의 비트선(B, /B)중의 1쌍을 선택하는 Y 선택회로(Y 스위치 Y-SW)와, 선택된 비트선(B, /B)을 앰플리파이어 모듈(AMP)과 접속하는 글로벌비트(global bit)선(GBL, /GBL)으로 이루어진다. 특별히 제한되는 것은 아니나, 서브메모리셀 어레이(SUBARY)는, 뱅크모듈(BANK) 내의 I/O선의 분할단위와 일대일로 대응하는 구성으로 된다. 또, 복수쌍의 비트선(B, /B)과, 복수개의 워드선(W)과, 복수의 메모리셀로 이루어지는 것을 통상은 메모리셀 어레이로 칭하는 것도 있어, 본원에 있어서는 필요에 따라구별지어 사용한다.
뱅크제어회로(BNKCNT-1)는, 워드선(W)을 선택하는 X 디코더(로우디코더)(XD)와 비트선쌍(B, /B)을 선택하는 Y 디코더(컬럼디코더)(YD) 등을 포함한다. 뱅크제어회로(BNKCNT-1)는, 후술의 뱅크어드레스나 제어신호를 받아 비트선 프리차지, 워드선 선택, 센스 앰플리파이어 기동 등 일련의 메모리셀의 판독동작에 필요한 신호를 자동적으로 발생한다. X 디코더(XD)에 의해 1개의 워드선(W)이 선택되며, 그것과 교차하는 (nx8xi)쌍(제29도에서는 도면의 크기 관계로 n=2인 경우가 도시되어 있지만, 본실시의 형태에서는 n=8로 한다)의 비트선(B, /B) 중 (8xi)쌍이 또한 Y 디코더(YD)와 출력신호인 컬럼어드레스 셀렉트신호(YSi)에 의해 선택된다. 선택된 비트선쌍(B, /B)은, 이러한 비트선(B, /B)과 평행하게 배치되는 글로벌비트선(GBL, /GBL)을 통하여 앰플리파이어 모듈(AMP)과 데이터의 수수를 행하도록 한다.
뱅크제어회로(BNKCNT-2)는 센스 앰플리파이어 제어신호가 어느 레벨에 도달한 것을 검출하는 센서군을 포함한다.
앰플리파이어 모듈(AMP)은 제어신호나 어드레스신호 등을 클록신호와 동기하여 뱅크모듈(BANK)에 공급하는 주제어회로(MAINCNT)와 뱅크모듈군(BANK-OBANK0n)으로의 데이터의 판독ㆍ기입을 제어하는 바이트 제어회로(BYTCNT)로 구성된다. 메모리매크로(MMACRO) 밖으로부터의 (8×i)개 데이터입출력선(DQ)(DQ00, ㆍㆍ, DQ07, ㆍㆍ, DQi0, ㆍㆍ,DQi7)은 이곳을 통해 메모리셀로 입력된다. 여기서, 바이트제어신호(BEi)는, 데이터입출력선(DQ)을 바이트단위로 개폐하는 신호이다. 또, 데이터입출력선(DQ)은, 제1도의 데이터전송선(I/O선) 및 제2도의 I/O선(MIOi)에 대응한다.
전원모듈(PS)은, 뱅크모듈(BANK)에 공급되는 워드선 구동회로(WD)에 필요한 워드선전압(VCH)(>전원전압(VCC))을 발생하는 VCH 발생회로(VCHG), 비트선 프리차지에 필요한 전압(HVC)(전원전압(VCC/2)를 발생하는 비트선 프리차지전압 발생회로(HVCG), 어레이내 기판전압(백바이어스(back bias) 전압)(VBB)(<전원전압 VSS(그라운드 전위))을 발생하는 어레이내 기판전압 발생회로(VBBG) 등의 각종전압을 발생하는 모듈이다. 또, 저소비전류화나 소자의 신뢰성 향상을 위해 동작전압을 외부전압보다 낮게 하고자 하는 경우에는, 전원모듈(PS)에 강압회로를 추가하면 된다.
뱅크모듈(BANK)에 필요한 제어신호 및 어드레스신호는, 각 뱅크모듈(BANK)의 서로에 대해 공통이 되도록 하며, 그들 신호는, 뱅크모듈(BANK)의 하변에 비트선방향으로 일종의 버스로서 연장된다. 따라서, 이들 제어신호 및 어드레스신호는 뱅크모듈(BANK)에 포함시키는 것도 가능하다. 즉, 각 뱅크모듈(BANK)은, 제어신호 및 어드레스신호를 포함하여 설계상의 구별로서의 동일한 셀구조로 할 수 있다.
다만, 로우(row)계 뱅크어드레스(Ri)와 컬럼(column)계 뱅크어드레스(Ci)는, 각각의 뱅크모듈(BANK)에 고유한 신호이기 때문에 뱅크모듈(BANK)의 수만큼 필요하다. 따라서, 로우계 뱅크어드레스(Ri)와 컬럼계 뱅크어드레스(Ci)의 배선을 포함해서 각 뱅크모듈(BANK)을 동일한 셀로 하기 위해서는, 간단한 방법으로서 로우계 뱅크어드레스(Ri)와 컬럼계 뱅크어드레스(Ci)의 배선을 제29도의 메모리매크로(MMACRO)의 하변 혹은 상변으로부터 입력하는 구성으로 하면 된다.
한편, 논리회로블록(LOGIC)과의 인터페이스를 쉽게 하기 위해서는, 메모리매크로(MMACRO)로의 제어신호, 어드레스신호, 데이터입출력선(DQ)의 모든 신호선을 셀의 한변(제29도에서는 좌변)에 집중하는 것이 좋다. 따라서, 제29도의 메모리매크로(MMACRO)의 좌변으로부터 로우계 뱅크어드레스(Ri)와 컬럼계 뱅크어드레스(Ci)의 배선을 입력하기 위해서는, 제44도의 (a)에 도시된 바와 같이 배선을 레이아웃하면 된다. 또, 배선도 포함하여 동일셀로 할 필요가 없는 경우는, 제44도의 (b)에 도시된 바와 같이 배선을 레이아웃하면 된다.
또한, 뱅크모듈(BANK)과 앰플리파이어 모듈(AMP)과 전원모듈(PS)의 각 모듈의 셀 높이, 즉 도시한 세로방향의 폭은 동일하게 되며, 글로벌비트선(GBL, /GBL)전원선(Vcc, Vss) 등이 동일 피치로 배치된다.
이것에 의해 뱅크모듈(BANK)을 시스템에서 필요한 기억용량에 맞춰 비트선방향으로 필요한 수만큼 나란하게, 또한 상기의 앰플리파이어 모듈(AMP), 전원모듈(PS)의 각 모듈을 그 좌우에 배치하는 것만으로 소망의 메모리 매크로모듈을 완성할 수 있다.
본 발명의 실시의 형태의 뱅크모듈(BANK)은, 특별히 제한되는 것은 아니나, 256개의 워드선(X 어드레스가 8개)을 가지도록 하며, 1워드선에 (8x8xi)쌍의 비트선이 교차되고, Y 디코더에서 1/8(Y 어드레스가 3개)로 선택되며, (8xi)쌍의 글로벌 비트선에 데이터가 입출력하는 구성으로 된다. i는, 예컨대 16으로 하며, 이것에, 따라 1개의 뱅크모듈(BANK)은 256K(K=1024)비트의 용량에서 128비트폭으로 데이터가 입출력하는 구성으로 된다. 즉, 256K비트단위의 크기로 용량이 가변인 메모리 매크로모듈이 얻어진다.
이에 따라, 예컨대, 4개의 뱅크모듈에 의해 1M(M=1048576) 비트의 메모리매크로가 구성되며 또한 8개의 뱅크모듈에서 2M비트의 메모리매크로가 구성된다. 요컨대, 종래의 범용 다이나믹 RAM(DRAM)의 256K비트, 1M비트, 4M비트, 16M비트 등과 같이 4배씩 용량이 증가하는 것은 아니며, 응용에 필요만큼의 용량의 메모리매크로가 구성된다.
<1. 2메모리매크로의 동작모드>
메모리매크로(MMACRO)의 외부신호와 동작모드의 관계가 제30도에 도시된다. 메모리매크로(MMACRO)는, 클록신호(CLK)에 동기하여 데이터의 입출력, 어드레스의 입력 및 제어신호의 입력이 행하여진다. 여기서 Ai는 어드레스신호이고, X 디코더(XD)에 입력되는 X 어드레스(AXij)와 Y 디코더(YD)에 입력되는 Y 어드레스(AYi)를 포함한다. 따라서 메모리매크로(MMACRO)는, 종래의 범용 DRAM과 같은 어드레스신호가 X계(로우계)와 Y계(컬럼계)로 멀티플렉스되는 소위 어드레스 멀티플렉스방식을 취하는 것은 아니고 어드레스 논멀티플렉스 방식을 취한다.
뱅크모듈(BANK)을 선택하는 로우계 뱅크어드레스(Ri)와 컬럼계 뱅크어드레스(Ci)는, 뱅크모듈수가 가변으로 되는 것에 대응하여, 각각의 뱅크모듈(BANK)에 고유의 신호로 된다. 동일뱅크모듈(BANK) 내에서의 로우계, 컬럼계의 커맨드신호의 구별은, 각각 로우계 뱅크어드레스(Ri)와 컬럼계 뱅크어드레스(Ci)에서 행하여진다. 제어신호로서는, CR, CC, RW, AC의 4개가 있다. DQij는 입출력용의 I/O 신호이다. 바이트 제어신호(BEi)는, 데이터입출력선을 바이트마다 독립으로 제어하는 신호로, 이것에 의해 병렬로 판독ㆍ기입하는 데이터의 양을 1바이트로부터 최대 i바이트까지의 범위에서 바이트단위로 증감할 수 있다.
뱅크모듈(BANK)의 활성(Bank Active), 폐쇄(Bank Close)는, 클록신호(CLK)의 라이징(rising)에지에서 CR, AC와 어드레스신호(Ai)를 입력하는 것에 의해 행하여진다. 뱅크모듈(BANK)은, CR="H"(하이레벨), AC="H"에서 활성되고, CR="H", AC="L"(로우 레벨) 폐쇄된다. 이 때, 입력하는 어드레스 신호(Ai)는 로우계만으로되며, 이러한 로우계 뱅크어드레스(Ri)에 따라 뱅크모듈(BANK)이 선택되고, 어드레스신호(Ai)로 워드선(W)의 선택이 행하여진다. 제30도의 타이밍 내지 상태S0는, 뱅크모듈(BANK)의 폐쇄상태를 나타내고 있다, 상태 S1은 뱅크모듈(BANK)의 활성 상태를 나타내고 있다. 또한, 상태S2는 판독 또는 기입상태를 나타내고 있다.
또, 제30도에 도시된 LA2는, 뱅크모듈(BANK)의 활성커맨드 입력으로부터 판독 또는 기입커맨드가 입력가능한 클록수를 나타낸다. LA는, 활성화되어 있는 동일뱅크모듈(BANK)에서 X 어드레스를 변경하고나서 판독 또는 기입커맨드가 입력가능한 클록수를 나타낸다. LR는, 판독 또는 기입커맨드입력으로부터 뱅크모듈(BANK)의 폐쇄커맨드가 입력가능한 클록수를 나타낸다.
제30도의 하부에는, 컬럼계의 제어신호와 동작모드에 관계하는 타이밍챠트가 도시되어 있다. 이것은 클록신호(CLK)의 라이징에지에서 CC, BEi, RW와 컬럼계 어드레스신호(상기 어드레스신호(Ai)의 나머지와 컬럼계 뱅크어드레스(Ci))를 입력하고, 판독/기입을 제어한다. 본 실시의 형태에 있어서 판독 커맨드를 받고나서 데이터가 출력되기까지의 클록수 즉 레이턴시(Read latency)는 2이고 기입커맨드를 받고 나서 기입데이터를 입력하기까지의 레이턴시(Write latency)는 1이다. 이것에 의해 컬럼계의 제어신호는 연속한 판독, 연속한 기입, 혹은 기입으로부터 판독으로 옮기는 때에는 노오퍼레이션(no operation) 상태(Nop 상태)를 경유하지 않고 웨이트 없이 입력할 수 있지만 판독으로부터 기입으로 옮기는 때는 한 번 Nop 상태로 할 필요가 있다. 또, 레이턴시에 관하여는 상기의 것이 적당한 것으로 해석되는 것은 아니며, 시스템의 구성에 따라서 적당히 변경할 수가 있다.
지금까지는, 설명을 간단히 하기 위해 동일 뱅크에만 착안하였다. 동일뱅크에서는, 뱅크활성화 후 어느 일정시간을 기다려 판독기입동작을 할 필요가 있다. 그러나, 복수의 뱅크에 착안하면, 뱅크의 활성화와 판독기입동작을 동시에 행할 수 있다. 예를들면, i 번째의 뱅크에 활성화 커맨드(CR, AC, Ri)를 투입하고, 동시에 미리 활성화된 j 번째의 뱅크에 판독기입커맨드(CC, Cj)를 투입함으로써 i 번째의 뱅크의 활성화와 j 번째의 뱅크으로부터 판독기입을 동시에 행할 수 있다. 이것에 의해 논리부가 데이터를 기다리는 시간이 적어지게 되어 보다 고속으로 데이터처리를 하는 것이 가능해진다. 또한, 전체 뱅크를 활성화하여 두고, 그 후 임의의 뱅크에 판독기입커맨드를 투입하는 것도 가능하다. 이것에 의해 다른 복수의 뱅크에 걸친 데이터를 1사이클마다 연속적으로 출력할 수 있기 때문에, 보다 복잡한 연산을 고속으로 행하는 것이 가능하게 된다.
상기한 바와 같이 동일 메모리매크로(MMACRO) 내의 복수의 뱅크를 사용한 동작의 일례로서, 제45도에 다른 뱅크의 데이터를 연속하여 판독하는 경우의 타이밍 챠트가 도시된다. 여기서는, 동일한 메모리매크로(MMACRO)에 8개의 뱅크모듈(BANK)이 있는 것으로 설명하지만 뱅크모듈(BANK)의 수가 8개가 아닌 경우도 마찬가지이다. 또한, 여기서는 판독동작에 관해서 설명하지만, 기입동작, 또는 양자가 혼합한 경우에 관해서도 지금까지 설명한 내용을 바탕으로 용이하게 타이밍 차트를 구성할 수 있다.
제45도에 있어서 우선, 처음의 8개의 사이클에서 8개의 뱅크(#0로부터 #7)가 차례로 활성화되도록, 뱅크활성 커맨드가 투입된다. 제45도에서 Active로 표시된 부분에 대응한다. 즉, 로우계의 뱅크어드레스(Ri)를 바꾸면서 커맨드(CR, AC)와 워드선을 선택하는 로우계 어드레스(Ai)가 투입된다.
뱅크#0의 활성화로부터 인터벌 LA2 이상이 경과한 사이클 CY0로부터 뱅크 #0, #1, ㆍㆍㆍ,#7의 순서로 판독되도록 판독커맨드가 입력된다. 제45도에서 Active+Read로 표시된 부분에 대응한다. 즉, 컬럼계의 뱅크어드레스(Ci)를 바꾸면서 커맨드(CC, RW, BEi)와 데이터선을 선택하는 컬럼계 어드레스(Ai)가 투입된다. 여기서 LA2는 7클록 이하로 가정하였기 때문에, 사이클 CY0에서는, 뱅크#7에 뱅크활성커맨드가 투입됨과 동시에 뱅크 #0에 판독커맨드가 입력가능하게 된다.
계속하여 사이클 CY0로부터 레이턴시(Read Latency)의 2사이클이 경과한 사이클 CY2로부터 차례로 다른 뱅크의 데이터가 1사이클마다 출력된다. 여기서 또한 사이클 CY1에 주목하면 뱅크 #1에 판득커맨드가 투입됨과 동시에 뱅크 #0에 다시 뱅크활성커맨드가 투입되어, 로우계어드레스(Ai)가 a1에서 a2로 전환되어 있는 것을 알 수 있다. 이와 같이, 하나의 뱅크에 판독커맨드가 투입되어 있는 사이에 이미 판독커맨드의 투입이 종료된 다른 뱅크의 로우계 어드레스(Ai)를 바꾸는 것이가능하다.
계속하여 뱅크활성커맨드 투입으로부터 인터벌 LA 이상이 경과한 사이클 CYx에서 뱅크 #0에 판독커맨드가 입력되면 사이클 CYx+2에서 뱅크 #0의 로우계 어드레스 a2에 대응하는 데이터가 출력된다. 이상과 같은 뱅크의 활성화와 판독동작이 동시에 계속하여 행하여짐에 따라 로우계와 컬럼계의 어드레스나 바이트 제어신호가 바뀌면서 복수의 뱅크 데이터를 1사이클마다 판독하는 것이 가능하다. 이와 같이 뱅크의 활성화와 판독동작 또는 기입동작이 동시에 행하여지는 것은, 뱅크어드레스를 로우계와 컬럼계에서 다중으로 가지고 있기 때문이다. 이것에 의해, 활성화하는 뱅크어드레스가 로우계의 뱅크어드레스(Ri)에서 지정되는 것과 동시에 억세스하는 뱅크어드레스가 컬럼계의 뱅크어드레스(Ci)에서 지정되는 것이 가능해진다.
상기의 동작으로부터 이해되는 바와 같이 본 실시예에 의하면, 뱅크가 다르게 되어 있으면, 다른 로우계 어드레스의 데이터를 끊임없이 억세스하는 것이 가능해진다. 따라서 화소정보를 메모리매크로(MMACRO)에 기억하도록 하면 직사각형이나 삼각형 등의 화소영역에 대한 판독, 기입이나 화면의 클리어(일정값의 기입)가 고속으로 행하여 지는 것이 가능하게 된다. 이 때문에 화상의 각종 필터처리, 움직임 벡터의 탐색, 직선이나 곡선의 묘화 또는 컴퓨터 그래픽에 관한 묘화처리의 고속화에 매우 유효하다.
<1.3 센스앰플리파이어와 비트선 프리차지회로>
제31도에 뱅크모듈(BANK)의 1쌍의 비트선에 대응하는 부분의 센스앰플리파이어(SA)와 프리차지회로(PC)의 회로예가 도시된다. Q1, Q2, Q3, Q4, Q7, Q8, Q9 및Q10은 N채널 MOS(N-MOS) 트랜지스터이다. Q5와 Q6은 P채널 MOS(P- MOS) 트랜지스터이다. 본 실시예에서 메모리셀은 전술한 바와 같이 1트랜지스터(Q1), 1캐패시터(MC)로 이루어지는 다이나믹 메모리셀로 이루어진다. 이것에 수반하여 비트선 프리차지회로(PC)와 CMOS 크로스 커플형 다이나믹 센스 앰플리파이어(SA)를 사용하고 있다. 비트선 프리차지회로(PC)는 비트선 프리차지신호(FPC)가 하이레벨로 되면 N-MOS 트랜지스터 Q2, Q3가 도통상태로 되어 비트선(B, /B)을 전압 HVC로 프리차지 한다. 또한, N-MOS 트랜지스터(Q4)도 도통상태로 되어 비트선(B, /B)이 이퀄라이즈된다. CMOS 크로스 커플형 다이나믹 센스 앰플리파이어(SA)는, P채널 센스 앰플리파이어 공통구동선(CSP)이 하이레벨이고 N채널 센스앰플리파이어 공통구동선(CSN)이 로우레벨의 경우 동작한다. 즉, P-MOS 트랜지스터 Q5와 N-MOS 트랜지스터 Q7에 의해 인버터회로가 구성되며, P-MOS 트랜지스터 Q56과 N-MOS 트랜지스터 Q8에 의해 인터버회로가 구성된다. N-MOS 트랜지스터 Q9, Q10은 컬럼스위치를 구성하며, 컬럼어드레스 선택신호 YSi가 H로 되면 비트선(B, /B)이 서브 메모리어레이의 입출력선 IO, IOB와 접속된다. 판독/기입 동작은 통상의 범용 DRAM과 마찬가지이다.
<1. 4뱅크제어회로>
제32도에는 제29도에 도시된 실시 형태의 뱅크제어회로(BNKCNT-1)의 동작파형이 도시된다. 뱅크제어회로(BNKCNT-1)의 장점은 로우계 뱅크어드레스(Ri)와 제어신호(CR, AC)를 받아 비트선 프리차지, 워드선선택, 센스 앰플리파이어 기동 등의 일련의 메모리셀의 판독동작에 필요한 신호를 자동적으로 발생하는 것이다. 즉, 이벤트ㆍ드리븐(eventㆍdriven)형으로 제어가 행하여지고있다. 이하에 동작을 설명한다.
(1) 뱅크모듈(BANK)의 폐쇄의 경우
우선 CR="H", AC="L", Ri="H"인 뱅크모듈(BANK)의 폐쇄의 경우를 생각한다. CR="H", AC="L"의 상태에서 클록신호 CLK가 라이징되면 주제어회로(MAINCNT) 내에서 뱅크폐쇄 플랙(flag)(DCS)이 라이징된다. 뱅크폐쇄플랙(DCS)은 각 뱅크모듈(BANK)에 입력된다. 이 때 로우계 뱅크어드레스 Ri="H"로 한 뱅크모듈(BANK) 중에 로우계 뱅크선택신호(iRi)가 라이징된다. 로우계 뱅크선택신호(iRi)와 뱅크폐쇄플랙(DCS)의 논리곱은 셋/리셋 플립플롭(RS-1)의 셋 단자(S)에 입력되어 있기 때문에 로우계 뱅크어드레스 Ri="H"로 되어 있는 뱅크모듈(BANK)의 셋/리셋 플립플롭(RS-1)의 출력(STi)이 "H"로 된다.
한편 상기의 논리곱의 결과는 또 하나의 셋/리셋 플립플롭(RS-2)의 리셋단자에 논리합회로를 통해 입력되어 있기 때문에, 그 출력 WLPi는 "L"로 된다. WLPi가, "L"로 됨에 따라 우선 뱅크제어회로(BNKCNT-1)내의 X 디코더(XD)의 출력과 Y 디코더(YD)의 게이트신호 YG가 "L"로 되며, 계속하여 워드드라이버(WD) 출력(워드선W)이 L로 되어 메모리셀을 비트선(B, /B)으로부터 떼어버린다.
다음에 N채널 센스앰플리파이어 기동신호(FSA)가 "L"로 되고, P채널 센스 앰플리파이어 기동신호(FSAB)가 "H"로 되어 센스 앰플리파이어(SA)는 동작을 정지한다. 여기서, 더미워드선(DWL)은 워드선(W)과 같은 지연시간을 가지는 지연소자로, 이것에 의해 센스앰플리파이어(SA)를 워드선(W)의 레벨이 충분히 낮게 된 후 정지시킬 수 있다. 이것은 센스 앰플리파이어(SA)가 정지하는 것에 의해 비트선(B, /B)의 신호레벨이 저하하고, 메모리셀로의 재기입레벨이 저하하는 것을 막기 때문이다.
계속하여 뱅크모듈(BANK) 상부의 뱅크제어회로(BNKCNT-2)에 마련한 레벨센스회로가 N 채널 센스 앰플리파이어 기동신호(FSA)의 "L"을 검출하여 출력(RE)을 "L"로 한다. 이 신호는 뱅크모듈(BANK) 하부의 뱅크제어회로(BNKCNT-1)내의 프리차지신호 발생회로(XPC)에 입력되며 그 출력의 비트선 프리차지신호(FPC)가 "H"로 된다. 비트선 프리차지신호(FPC)는 비트선(B, /B)에 마련된 프리차지회로(PC)에 입력되며 비트선(B, /B)은 프리차지상태로 된다. 여기까지의 일련의 상태를 S0라고 명명한다.
(2) 상태S0로부터 뱅크모듈(BANK)이 활성으로 옮기는 경우
다음에, 상태S0로부터 CR="H", AC="H", Ri="H"의 뱅크모듈(BANK)의 활성으로 옮기는 경우를 고려한다. CR="H", AC="H"의 상태에서 클록신호(CLK)가 라이징되면 주제어회로(MAINCNT)내에서 뱅크활성화 플랙(DCA)이 라이징된다. 뱅크활성화플랙(DCA)은 각 뱅크모듈(BANK)에 입력된다. 이 때 로우계 뱅크어드레스 Ri="H"로 한 뱅크모듈(BANK)중에 로우계 뱅크선택신호(iRi)가 라이징된다. 로우계 뱅크선택신호(iRi)와 뱅크활성화플랙(DCA)의 논리곱은 셋/리셋 플립플롭(RS-1)의 리셋단자(R)에 입력되어 있기 때문에 로우계 뱅크어드레스 Ri="H"로 되어 있는 뱅크모듈(BANK)의 셋/리셋 플립플롭(RS-1)의 출력(STi)이 "L"로 된다.
로우계 뱅크선택신호(iRi)와 뱅크활성화 플랙(DCA)의 논리곱은 동시에 X 어드레스 래치회로(XLT)에 입력되며, 그의 "H"의 기간에 X 어드레스(AXij)를 받아들여 "L"로 래치한다. STi는 프리차지신호 발생회로(XPC)에 입력되어, 그 출력의 비트선 프리차지 신호(FPC)를 "L"로 한다. 비트선 프리차지신호(FPC)는, 비트선(B, /B)의 프리차지를 해제하면서 뱅크제어회로(BNKCNT-2)내의 레벨센스회로에 도달한다. 이 레벨이 어느 일정치 이하로 되면, 그 출력 PCSEN은, "H"로 된다. 이 신호(PCSEN)는 뱅크제어회로(BNKCNT-1)내의 원 숏 펄스(one shot pulse) 발생회로(ONESHOT)에 의해 수나노초의 폭이 좁은 펄스로 변환된 후, 셋/리셋 플립플롭(RS-2)의 입력단자로 입력된다. 그 결과 출력 WLPi는 "H"로 된다. WLPi가, "H"로 됨에 따라 우선 X 어드레스(AXij)에서 선택된 X 디코더(XD)의 출력이 "H"로 되며, 계속하여 그것에 접속된 워드드라이버(WD) 출력(워드선W)이 "H"로 되어 메모리셀을 비트선(B, /B)와 접속시킨다.
다음에 N채널 센스 앰플리파이어 기동신호(FSA)가 "H"로 되고 P 채널 센스 앰플리파이어 기동신호(FSAB)가 "L"로 되어 센스 앰플리파이어(SA)가 동작을 개시한다. 더미워드선(DWL)에 의해 센스 앰플리파이어(SA)를 워드선(W)의 레벨이 충분히 높게 되고 비트선(B, /B)에 신호가 충분히 나간 후 동작시킬 수 있다. 이것은 센스 앰플리파이어(SA)가 신호가 작은 동안에 동작하여 오동작하는 것을 막기 때문이다. 계속하여 뱅크모듈(BANK) 상부의 뱅크제어회로(BNKCNT-2)에 마련한 레벨 센스회로가 N채널 센스 앰플리파이어 기동신호(FSA)의 N-MOS 트랜지스터측의 공통구동선의 "L"을 검출하며 출력 RE가 "H"로 된다. 신호 RE는 뱅크모듈(BANK)의 하부뱅크 제어회로(BNKCNT-1)내의 논리곱회로에서 WLPi와 논리곱을 하며 그 출력 YG가 H로 된다. 이 YG는 Y 디코더회로(YD)를 사용가능하게 한다. 여기까지의 일련의 상태를 S1이라고 명명한다. 이상의 동작후 뱅크모듈(BANK)은 판독 및 기입이 가능한 상태로 되며, 이 상태를 S2라 명명한다.
(3) 상태S1으로부터 뱅크모듈(BANK)이 활성으로 옮기는 경우
다음에, 상태S1로부터 CR="H", AC="H", Ri="H"의 뱅크모듈(BANK)의 활성으로 옮기는 경우를 생각한다. CR="H", AC="H"의 상태에서 클록신호(CLK)이 라이징하면 주제어회로(MAINCNT)내에서 뱅크활성화 플랙(DCA)이 라이징된다. 뱅크활성화 플랙(DCA)은 각 뱅크모듈(BANK)에 입력된다. 이 때 로우계 뱅크어드레스 Ri="H"로 한 뱅크모듈(BANK) 중에 로우계 뱅크선택신호(iRi)가 라이징된다. 로우계 뱅크선택신호(iRi)와 뱅크활성화 플랙(DCA)의 논리곱은 셋/리셋 플립플롭(RS-1)의 리셋단자(R)에 입력되지만 전의 사이클에서 STi가 이미 "L"로 되어 있기 때문에 STi는 변화하지 않는다. 로우계 뱅크선택신호(iRi)와 뱅크활성화 플랙(DCA)의 논리 곱은 동시에 X어드레스 래치회로(XLT)에 입력되고, 그 "H"의 기간에 X 어드레스(AXij)를 받아들여 "L"로 래치한다.
또한 상기 논리곱 회로출력은, 논리합회로를 통해 RS-2의 R 단자에 입력되며, WLPi를 "L"로 한다. WLPi가 "L"로 됨에 따라, S0와 같은 순서로 워드선(W), N 채널 센스 앰플리파이어 기동신호(FSA)의 전압이 "L"로 되며 RE가 "L"로 된다. RE가 "L"가 되면 프리차지 신호발생회로(XPC)내의 원 숏 펄스 발생회로(ONESHOT)로부터 폭이 십수나노초 정도인 펄스가 나온다.
이 펄스는 프리차지신호 발생회로(XPC)의 드라이브회로에 입력되며, 그 폭대로 비트선 프리차지신호(FPC)에 H가 출력된다. 이 신호는, 비트선(B, /B)의 프리차지를 하면서 뱅크제어회로(BNKCNT-2)내의 레벨센스회로에 도달한다. 이 레벨이 어느 일정치 이하가 되면 그 출력 PCSEN은 "H"로 된다. 이 신호는 뱅크제어회로(BNKCNT-1)내의 원 숏 펄스 발생회로(ONESHOT)에서 폭이 좁은 펄스로 변환된 뒤 셋/리셋 플립플롭(RS-2)의 S 입력단자에 입력된다. 그 결과 출력 WLPi는 "H"로 된다. WLPi가 "H"로 됨으로써 우선 X 어드레스(AXij)에서 선택된 X 디코더(XD)의 출력(워드선W)이 "H"로 되며, 계속하여 그것에 접속된 워드드라이버(WD)의 출력이 "H"로 되어 메모리셀을 비트선(B, /B)와 접속시킨다.
다음에 N채널 센스 앰플리파이어 기동신호(FSA)가 "H"로 되며, P채널 센스 앰플리파이어 기동신호(FSAB)가 "L"로 되어 센스 앰플리파이어(SA)가 동작을 개시한다. 이 다음의 동작은 상기의 S1과 같다. 즉, 뱅크모듈(BANK) 상부의 뱅크제어회로(BNKCNT-2)에 마련한 레벨센스 회로가 N채널 센스 앰플리파이어 기동신호(FSA)의 N-MOS 트랜지스터측 공통구동선의 "L"을 검출하여 출력RE가 "H"로 된다. 신호 RE는 뱅크모듈(BANK)의 하부뱅크 제어회로(BNKCNT-1)내의 논리곱회로에서 WLPi와 논리곱이 되며 그 출력 YG가 "H"로 된다. 이 YG는 Y 디코더회로(YD)를 사용가능하게 한다. 이상의 동작 후 뱅크모듈(BANK)은 판독 및 기입이 가능한 상태 S2로 된다.
<1. 5바이트제어 회로>
다음에 컬럼계의 동작에 관해서 설명한다. 제33도에는 바이트 제어회로(BYTCNT)의 일례가 도시된다. 제29도의 앰플리파이어 모듈(AMP)중에 이 바이트재어회로(BYTCNT)가 i개 들어 간다.
제33도에 있어서, WA-0∼WA-7은 기입회로, RA-0∼RA-7은 판독회로(메인 앰플리파이어)이다. 바이트 제어회로(BYTCNT)내에는 이와 같이 8개의 기입회로(WA)와 판독회로(RA)가 배치되어 있다. 여기서 DQ-i0로부터 입력된 기입데이터는 입력버퍼로서 기능하는 인버터 I1, I2 및 스위치(SW1)를 통해 글로벌 비트선(GBL-i0,/GBL-i0)에 전달된다. 글로벌 비트선(GBL-i0, /GBL-i0)은, 제29도에 도시한 바와 같이 각 뱅크모듈(BANK)내의 분할된 입출력선(IO, IOB)과 접속되어 있기 때문에 그곳으로 전달되며, Y 스위치(Y-SW)를 통해 비트선(B, /B)으로 또한, 메모리셀로 전달된다. 여기서, 스위치(SW1)는 판독시에 글로벌비트선(GBL-i0, /GBL-i0)을 하이ㆍ임피던스(high impedance)의 상태로 하기 위해 마련된 것이다. 즉, 스위치(SW1)는 판독시에 글로벌비트선(GBL-i0, /GBL-i0)을 인버터(I1, I2)로부터 떼어낸다. 이것은 라이트 인에이블신호(WAi)에 의해 제어된다.
메모리셀로부터 판독된 데이터는, 각 뱅크모듈(BANK)내의 입출력선(IO, IOB)으로부터 글로벌비트선(GBL-i0, /GBL-i0), 스위치(SW2)를 통해 MOS 트랜지스터 QA4∼QA8로 이루어지는 메인 앰플리파이어에 전달된다. 여기서 메인 앰플리파이어는 드레인입력형의 다이나믹 앰플리파이어로 글로벌비트선(GBL-i0, /GBL-i0)으로 부터 신호를 판독하기전에 그 입력노드가 VCC에 프리차지되어 있다. 신호가 전달되면 그 2개의 입력단자사이에 전압차가 나타나며, 메인 앰플리파이어 인에이블신호(MAi)에 의해 메인 앰플리파이어를 활성화시켜, 그 차를 증폭시킨다. 여기서 스위치(SW2)는 메인 앰플리파이어의 동작 직전까지 글로벌비트선(GBL-i, /GBL-i)과 메인 앰플리파이어를 접속하고, 동작시에는 떼어버린다. 이것은 메인 앰플리파이어의 증폭시에부하용량을 가볍게 하여 고속동작을 가능하게 하기 때문이다. 스위치(SW2)는 리드 인에이블신호(MAGi)에 의해 제어된다. 메인 앰플리파이어로 증폭된 신호는, 다음 단의 NAND 게이트(N1와 N2)로 이루어지는 래치회로에 입력되며, 또한 버퍼 앰플리파이어(TI1)를 통해 단자DQ-i0에 출력된다.
출력버퍼 인에이블신호(DOEi)는 출력버퍼회로(TI1)의 출력의 하이임피던스, 로우임피던스를 바꾼다. 기입시에는 출력버퍼회로(TI1)의 출력은 하이임피던스로 된다. P-MOS 트랜지스터(QA1∼QA3)는 글로벌비트선(GBL-i, /GBL-i)의 프리차지회로, P-MOS 트랜지스터(QA9∼QA10)는 메인 앰플리파이어의 프리차지회로를 구성하고 있다. 각각 글로벌비트선 프리차지 제어신호(IOEQiB) 및 메인 앰플리파이어 프리차지 제어신호(MAEQiB)에 의해 제어된다. 또한, 상기 제어신호, 즉 글로벌 비트선 프리차지 제어신호(IOEQiB), 리드 인에이블신호(MAG1), 메인 앰플리파이어 인에이블신호(MA1), 라이트 인에이블신호(WAi), 메인 앰플리파이어 프리차지 제어신호(MAEQiB) 및 출력버퍼 인에이블신호(DOEi)는 어느것이나 판독/기입 제어회로블록(RWCNT)내에서 외부신호 CC, BEi, RW, CLK에 의해 만들어진다. 여기서 판독기입 제어회로블록(RWCNT)은 바이트 제어회로(BYTCNT)마다 마련되어 있다.
제34도에는 상기 컬럼계 신호의 타이밍챠트가 도시된다. 클록신호(CLK)가 라이징된 상태에서, 기입커맨드(CC="H", RW="L") 및 바이트 제어신호(BEi="H")가 입력되면, 라이트 제어신호(WAi)는 H로 되어 스위치(SW1)가 도통상태로 된다. 또, 이때 글로벌비트선 프리차지 제어신호(IOEQiB)는 H로 되며, 글로벌비트선(GBL-I0, /GBL-i0)은 하이임피던스 상태로 된다. 한편, 리드 인에이블신호(MAG1), 메인 앰플리파이어 인에이블신호(MA1), 메인 앰플리파이어 프리차지 제어신호(MAEQiB) 및 출력버퍼인에이블신호(DOEi)는 L로 되며 판독회로(RA)는 비활성화된다. 그 후, 라이트 제어신호(WAi) 및 글로벌비트선 프리차지 제어신호(IOEQiB)는 L로 된다.
다음에 클록신호(CLK)의 라이징 상태에서 판독커맨드(CC="H", RW="H") 및 바이트 제어신호(BEi="H")가 입력되면, 상기에서 설명한 제어신호가 제34도에 도시된 바와 같이 바뀐다. 즉, 글로벌 비트선 프리차지 제어신호(IOEQiB)는 L에서 H로 되며, 글로벌 비트선(GBL-I0, /GBL-i0)은 프리차지 상태로부터 하이 임피던스상태로 된다. 그 후, 리드인에이블신호(MAG1) 및 메인 앰플리파이어 프리차지 제어신호(MAEQiB)가 L에서 H로 되며, 판독회로(RA)가 글로벌 비트선(GBL-I0, /GBL-I0)과 스위치 (SW2)를 통해 접속된다. 판독데이터를 글로벌 비트선(GBL-I0, /GBL-I0)으로부터 판독회로(RA)에 판독한 후 리드 인에이블신호(MAG1)가 H에서 L로 되어, 판독회로(RA)가 글로벌 비트선(GBL-I0, /GBL-I0)으로부터 떼어진다.
그 후, 메인 앰플리파이어 인에이블신호(MA1)가 H에서 L로 되고, 판독된 데이터가 메인 앰플리파이어로 증폭되어, NAND 회로(N1와 N2)로 이루어지는 래치회로에 래치된다. 마지막으로 출력버퍼 인에이블신호(DOEi)가 L에서 H로 되며, DOEi="H"인 기간에 데이터가 출력버퍼회로(TI1)로부터 메모리매크로(MMACRO)의 밖으로 판독된다. "Byte dis."는 BEi="L"이고, 각DQ-I0∼DQ-i7은 비선택의 바이트인 것을 나타내고있다.
<1. 6 주제어회로>
제35도에는 주제어회로(MAINCNT)의 일례가 도시된다. 주제어회로(MAINCNT)에서는, 메모리매크로(MMACRO)의 외부로부터 입력되는 제어신호 CR, AC, CC, 클록신호 CLK, 어드레스신호 Ai로부터, NAND 회로나 인버터, D형 플립플롭(인버터와 클록드 인버터로 구성됨) 등의 표준적인 논리회로를 조합해서, 제29도에 도시된 뱅크폐쇄 플랙(DCS)(제35도에서는 그 반전신호/DCS), 뱅크활성화 플랙(DCA)(제35도에서는 그 반전신호/DCA), 컬럼어드레스 인에이블신호(YP), 로우어드레스신호(X 어드레스신호)(AXij), 컬럼어드레스신호(Y 어드레스신호)(AYi) 등의 신호가 만들어지고있다.
뱅크폐쇄플랙(/DCS)(제32도에서는 그 반전신호 DCS가 도시되어 있음)은 플립플롭(DFF-1)과 논리회로(TG1) 등에 의해, 제32도에 도시된 것과 같은 타이밍으로 생성된다. 뱅크활성화플랙(/DCA)(제32도에서는 그 반전신호DCA가 도시되어 있음)은, 플립플롭(DFF -2)과 논리회로(TG2) 등에 의해, 제32도에 도시된 것과 같은 타이밍으로 생성된다. 컬럼어드레스 인에이블신호(YP)는, 플립플롭(DFF -3)과 논리회로(TG3) 등에 의해, 제34도에 도시된 타이밍으로 생성된다. 컬럼 어드레스 내부신호(AYiG)는 플립플롭(DFF-4) 등에 의해 제34도에 도시된 타이밍으로 생성된다.
또, 제29도에는, Y 어드레스 래치회로(YLT)가 도시되어 있으며, 제35도의 플립플롭(DFF-4) 및 논리회로(TG3)가 Y어드레스 래치회로(YLT)에 대응한다. Y 어드레스 래치회로(YLT)는 뱅크제어회로(BNKCNT-1)에 포함되더라도 좋고, 주제어회로(MAINCNT)에 포함되더라도 좋다.
D1은 지연회로이다. 플립플롭 DFF(DFF-1, DFF-2, DFF-3, DFF-4, DFF-5)는 클록신호(CLK)의 라이징 에지에서 입력데이터(D)를 래치하는 회로이다.클록신호(CLK1B)는 제36도의 클록발생회로(CLKCNT)에서 생성된다. 논리회로(TG4)의 출력 BXiT는 X 어드레스의 버퍼된 신호이며, BXiB는 그 반전신호이다. X 어드레스신호(Axij)는 X 어드레스의 버퍼된 신호(BXiT) 또는 그 반전신호(BXiB)를 사용하여 프리디코드된 신호이다. 제35도에 도시된 논리회로 TG1, TG2, TG3, TG4 및 그 밖의 논리회로는 간단한 회로이고, 당업자는 용이하게 이해할 수 있기 때문에 상세한 설명은 생략한다.
여기서, 회로(RSTCKT)는 후술하는 뱅크제어회로(BNKCNT)의 전원투입시의 리셋신호(RST)를 발생하는 회로이고, 전원투입시에 원 숏의 펄스를 발생시킨다. 이 회로(RSTCKT)의 장점은, 전원전압이 고속으로 라이징된 경우에도 인버터(IV1)의 입력단자의 전압이 고속으로 라이징되도록 전원선과 그 단자 사이에 콘덴서를 마련한 것이다. 이하에 동작을 설명한다.
우선 전원전압(VCC)이 상승하면 N-MOS 트랜지스터 QV3의 게이트, 드레인전압이 상승한다. 이 전압이 N-MOS 트랜지스터 QV3, QV5의 문턱 전압 이하인 경우는, N-MOS 트랜지스터 QV3, QV5에 전류가 흐르지 않기 때문에 인버터 IV1의 입력단자의 전압은 전원진압과 같은 전압으로 상승한다. 다음에 N-MOS 트랜지스터 QV3의 게이트, 드레인전압이 그 문턱전압을 넘으면 N-MOS 트랜지스터 QV3, QV5에 전류가 흘러 인버터 IV1의 입력단자의 전압은 내려간다. 이것에 의해, 전원투입시에 원숏 펄스를 발생시킬 수 있다. 여기서 인버터(IV1)의 입력단자의 전압이 내려가기 시작하는 VCC의 값은, 대략적으로는 QV2와 QV3의 문턱전압으로 결정되어 VCC=VT(QV2)+VT(QV3)으로 표현된다. 또한, 이 값은 P-MOS 트랜지스터 QV4와 N-MOS트랜지스터 QV5, N-MOS 트랜지스터 QV3와 P-MOS 트랜지스터 QV1 또는 N-MOS 트랜지스터 QV3와 QV5의 W/L비를 변하게 하는 것으로 더욱 세밀하게 조정할 수 있다. 여기서, 전원선과 그 단자의 사이에 컨덴서 QV6가 접속되어 있으며, 이것은, 전원전압이 고속으로 라이징된 경우에 인버터(IV1)의 입력단자에 붙는 용량에 의해 그 전압의 라이징이 늦어져 인버터(IV1)의 논리문턱치를 넘기 전에 QV5에 전류가 흘러 그 노드가 인버터(IV1)의 논리문턱치를 넘지 않게 되는 현상을 막기 위한 것이다. 이상과 같이 본회로에 의하면 전류가 고속으로 라이징되더라도 저속으로도 확실하게 펄스를 발생시킬 수 있다.
<1.7 판독/기입 제어회로블록>
제36도에는 판독/기입 제어회로블록(RWCNT)의 일례가 도시된다. 여기서는, 주제어회로(MAINCNT)와 마찬가지로 메모리매크로(MMACRO)의 외부로부터 입력되는 제어신호(RW, CC), 클록신호(CLK), 바이트제어신호(BEi)로부터 NAND 회로나 인버터, D형 플립플롭(제35도의 플립플롭(DFF)과 동일한 것) 등의 표준적인 논리회로를 조합해서, 제33도에 도시된 메인 앰플리파이어 프리차지 제어신호(MAEQiB), 라이트 인에이블신호(WAi), 메인 앰플리파이어 인에이블신호(MAi), 출력버퍼 인에이블신호(DOEi)(제36도에서는 그 반전신호DOEiB), 리드 인에이블신호(MAGi)(제36도에서는 그 반전신호(MAGiB))등의 신호를 만들고 있다.
메인 앰플리파이어 프리차지 제어신호(MAEQiB), 라이트 인에이블신호(WAi), 메인 앰플리파이어 인에이블신호(MAi), 출력버퍼 인에이블신호(DOEi)(제36도에서는 그 반전신호 DOEiB), 리드 인에이블신호(MAGi)(제36도에서는 그 반전신호(MAGiB))는, 제34도에 도시된 것과 같은 타이밍으로 생성된다. D1, D2, D3는 지연회로이다. 또 동도 하부에 나타낸 클록신호 CLK1B, CLK2B, CLK3B를 생성하는 클록발생회로(CLKCNT)는 판독/기입 제어회로블록(RWCNT)마다 넣더라도 좋고, 주제어회로 블록(MAINCNT)에 1개만 넣더라도 좋다. 제36도에 도시되는 논리회로도 간단한 회로이고, 당업자가 용이하게 이해할 수 있는 것이므로 상세한 설명은 생략한다.
<1.8 메모리셀 어레이의 다른 예>
제37도에는, 뱅크모듈(BANK)내의 메모리셀 어레이(MCA)부의 다른 예가 도시된다. 비트선(B, /B)과 글로벌비트선(GBL, /GBL)은 도면의 가로방향으로 늘어져 있다. 또한, 워드선(W), 메모리어레이 입출력선(IO, IOB) 및 컬럼어드레스 선택신호(YSi)는 도면의 세로방향으로 뻗어 있다. 또, 글로벌비트선은 도면의 좌단과 우단의
Figure pat00068
을 연결한 파선상에 배치된다. 또한, 센스 앰플리파이어(SA), 비트선 프리차지회로(PC), 메모리어레이 입출력선(IO, IOB)및 어드레스 선택신호(YSi)는 메모리셀어레이(MCA)의 좌우에 나눠 배치된다. 따라서 Y 디코더(YD)도 메모리셀어레이(MCA)의 좌우에 나눠 배치된다. 워드드라이버(WD), X 디코더(XD) 및 Y 디코더(YD)는 메모리셀어레이 MCA의 아래쪽, 즉 도면의 하변 가까이에 배치된다. 본 실시예의 특징은, 비트선 1쌍마다 센스 앰플리파이어(SA) 및 비트선 프리차지 회로(PC)를 메모리셀어레이(MCA)의 좌우에 나눠 배치한 것이다. 이것에 의해 센스 앰플리파이어(SA)의 레이아웃 피치가 완화되기 때문에 센스 앰플리파이어(SA)의 비트선방향의 길이가 짧게 되고, 본 발명과 같이 다수의 컬럼어드레스 선택신호(YSi)를 워드선방향으로 통과시키는 방식에는 특히 유효하게 된다. 즉, 센스 앰플리파이어(SA)의 비트선 방향의 길이가 짧게 되는 것에 의해 그 부분의 기생용량이 작게 되어, 메모리셀로부터의 신호를 보다 크게 할 수 있다.
<1.9 뱅크제어 회로블록>
제38도에는 뱅크제어 회로블록(BNKCNT-1)의 일례가 도시된다. 특히 제37도에 도시된 센스 앰플리파이어 교대배치의 메모리셀 어레이에 적합한 것이다. 상기 판독/기입 제어회로블록(RWCNT)과 마찬가지로 메모리매크로(MMACRO)의 외부로부터 입력되는 제어신호(CR, CC), 로우계 뱅크어드레스(Ri), 컬럼계 뱅크어드레스(Ci) 및 클록신호(CLK), 또 주제어 회로블록(MAINCNT)에서 생성된 신호(/DCA, /DCS, RST, YP)로부터 NAND 회로나 인버터, D형 플립플롭 등의 표준적인 논리회로를 조합하여, 제29도에 도시된 워드선W(W0, W1, W2, W3), 비트선 프리차지신호 FPC(R), FPC(L), 칼럼어드레스 선택신호YSi(YS0, YS1, YS2, YS3, YS4, YS5, YS6, YS7), N 채널 센스 앰플리파이어 기동신호 FSA(R), FSA(L), P채널 센스 앰플리파이어 기동신호 FSAB(R), FSAB(L) 등의 신호를 만들고 있다. 여기서 (R), (L)은 각각 우측의 센스 앰플리파이어(SA)와 좌측의 센스 앰플리파이어(SA)를 위한 신호이다. 워드드라이버(WDBLK)는, 제29도에 도시된 워드드라이버(WD)에 대응한다. 기타 제29도에 도시된 회로는 제38도와 같은 기호를 사용하고 있다. D1, D5, D15는 지연회로이다. 전술한 파워 온 리셋(power on reset)회로의 출력(RST)은 WLPi, STi 발생회로에 입력되어 파워 온시 그것들의 출력을 각각 S0 상태와 같은 "L", "H"로 한다. 이것에 의해 메모리셀어레이는, 프리차지상태로 되어 센스 앰플리파이어(SA)가 동작하는 것에 의한 파워 온 전류의 증가를 억제할 수 있다. 또, 제38도에 도시된 논리회로도 간단한 회로이고, 당업자는 용이하게 이해할 수 있기 때문에 상세한 설명은 생략한다.
제38도의 하부는, 뱅크제어 회로블록(BNKCNT-2)의 일례이다. 여기서, 프리차지ㆍ레벨센서(PCS)는 비트선 프리차지신호(FPC)의 레벨센서, 센스 앰플리파이어ㆍ레벨센서(SAS)는 센스 앰플리파이어(SA)의 N-MOS 트랜지스터측의 공통구동선의 레벨센서이다. 이들은 각각, 프리차지의 종료와 신호증폭의 종료점을 검출하기 위한 것이다. 즉, 프리차지ㆍ레벨센서(PCS)는, 신호 PCSEN을 생성하고, 센스 앰플리파이어ㆍ레벨센서(SAS)는 신호 RE를 생성한다. 프리차지ㆍ레벨센서(PCS)는, 우측의 프리차지(PC)용과 좌측의 프리차지(PC)용의 2개가 있다. 또한, 센스 앰플리파이어ㆍ래벨센서(SAS)는, 우측의 센스 앰플리파이어(SA)용과 좌측의 센스 앰블리파이어(SA)용의 2개가 있다. 본 예의 특징은, 입력신호가 충분히 내려 가는 점을 검출하기 위해서 그것들의 신호를 받는 CMOS논리회로의 논리문턱치를 N-MOS 트랜지스터의 문턱전압부근까지 내리고 있는 것이다. 이것에 의해 센스 앰플리파이어(SA)나 메모리셀의 문턱전압이 편차가 있더라도 어느정도 보상할 수 있도록 한다. 또, 이 레벨센서로서 제29도에 도시된 바와 같은 차동 앰플리파이어를 사용해도 좋다. 이 경우는 그 센스레벨로되는 기준전압(Vr)을 N-MOS의 문턱전압보다 편차분만큼 낮게 설정하여 놓으면, 상기의 논리문턱치 방식과 마찬가지로 그 편차에 의한 오동작을 방지할 수 있다.
<1.10 논리 회로블록>
제29도에 도시된 논리회로블록(LOGIC)은, 화상데이터의 연산처리, 화상메모리(메모리매크로 MMACRO)로의 묘화, 화상메모리로부터 표시장치로의 판독 등의 기능의 처리를 하는데 적당한 구성으로 되어 있다.
도시된 논리회로블록(LOGIC)은, 메모리매크로(MMACRO)에 어드레스신호(Ai), 로우계 뱅크어드레스(Ri), 컬럼계 뱅크어드레스(Ci), 데이터 입출력선(DQ-i0∼DQ-i7), 제어신호(CC, AC, CR, RW), 바이트제어신호(BEi), 클록신호(CLK) 등을 공급한다. 게다가, 논리회로블록(LOGIC)은, 메모리매크로(MMACRO)에 리프레쉬(refresh) 동작의 지시 및 리프레쉬 어드레스를 상기 제어선, 어드레스신호 등을 사용하여 행한다.
또한, 반도체집적회로(SIC)의 외부로의 인터페이스도 논리회로블록(LOGIC)이행한다. 외부에는 중앙처리장치(CPU)나 표시장치 등이 접속되며, 제29도의 I/O, Control Signal에 의해 데이터나 커맨드의 교환이 행하여진다.
<2. 메모리ㆍ논리혼재LSI에의 제2의 적용예>
제39도에는, 메모리ㆍ논리혼재 LSI에의 또 하나의 적용예가 도시된다. 본 실시예의 메모리매크로(MMACRO)는 4개의 뱅크모듈(BANK0-3), 앰플리파이어 모듈(AMP) 및 전원모듈(PS)로 구성된다. 2개의 메모리매크로(MMACRO)는 논리회로블록(LOGIC-1)을 사이에 두고 배치된다. 또한, 다른 2개의 메모리매크로(MMACRO)는 논리회로블록(LOGIC-2)을 사이에 두고 배치된다. 데이터 입출력선(DQi)은, 각 메모리 매크로(MMACRO)와 논리회로블록(LOGIC-1) 또는 논리회로블록(LOGIC-2) 간의 데이터의 수수를 행한다. 바이트 제어신호(BEi)는, 논리회로블록(LOGIC-1) 또는 논리회로블록(LOGIC-2)으로부터 각 메모리매크로(MMACRO)에 입력된다. 제어신호(CR, CC, AC, RW), 어드레스신호(Ai), 클록신호(CLK), 로우계 뱅크어드레스(Ri) 및 컬럼계 뱅크어드레스(Ci)는, 논리회로블록(LOGIC-3)으로부터 각 메모리매크로(MMACRO)에 입력된다.
본 실시예의 특징은, 본 발명에 의한 메모리매크로(MMACRO)를 4개 탑재하여, 메모리매크로(MMACRO)로부터 출력되는 모든 데이터를 병렬로 논리회로블록(LOGIC-1, LOGIC-2)에서 처리하고 있는 것이다. 이것에 의해 데이터전송 및 처리 속도는 메모리매크로(MMACRO) 1개만의 경우의 4배로 할 수 있다. 또한, 매크로의 수를 늘리는 것에 의해 더욱 데이터처리속도를 향상시킬 수 있다. 여기서 논리회로 블록(LOGIC-3)은 논리회로블록(LOGIC-1, LOGIC-2)에서의 연산결과를 칩외부의 소자로 받아들이기 쉬운 데이터 형식으로 가공하기도 하고, 반대로 칩외부로부터의 데이터를 연산하기 쉬운 형식으로 가공하는 기능을 가진다. 이와 같이 복수개의 메모리매크로(MMACRO)로부터의 데이터를 병렬로 처리하는 방식은, 3차원그래픽과 같은 다량의 데이터를 고속으로 처리할 필요가 있는 용도에 특히 유효하다.
또한, 본 실시예와 같이 동일 용량의 메모리매크로(MMACRO) 뿐만 아니라, 용도에 따라 다른 용량의 메모리매크로(MMACRO)를 사용해도 된다. 예컨대, 마이크로프로세서(microprocessor)와 함께 사용하는 경우, 메모리매크로(MMACRO)의 뱅크모듈(BANK)을 1∼2개로 하고 또한 앰플리파이어 모듈(AMP)을 고속타입으로 변경하여, 캐쉬 메모리로서 사용하는 것도 가능하다. 또한, 뱅크모듈(BANK)의 수를 더 늘리고 저속이나 중속의 앰플리파이어 모듈(AMP)을 조합하여 메인 메모리로서 사용하는 것도 가능하다. 여기서, 메인 앰플리파이어를 저속이나 중속으로 하는 것은 앰플리파이어의 점유면적을 작게 하기 위함이다. 이와 같이, 본 발명에 의하면 메모리매크로는 모듈방식이기 때문에 자유롭게 메모리 용량이나 앰플리파이어의 능력을 변경할 수 있다.
<3. 메모리ㆍ논리혼재 LSl에의 제3의 적용예>
제40도에는 내부의 데이터버스폭이 같은 경우의 적용예가 도시된다. 본 실시예의 메모리매크로(MMACRO)는 4개의 뱅크모듈(BANK0-3), 앰플리파이어 모듈(AMP) 및 전원모듈(PS)로 구성된다. 2개의 메모리매크로(MMACRO)는 선택회로(SELECTOR)를 사이에 두고 배치된다. 또한, 다른 2개의 메모리매크로(MMACRO)도 선택회로(SELECTOR)를 사이에 두고 배치된다. 데이터입출력선(DQi)은, 각 메모리매크로(MMACRO)와 논리회로블록(LOGIC)간의 데이터의 수수를 행한다. 바이트 제어신호(BEi)는, 선택회로(SELECTOR)로부터 각 메모리매크로(MMACRO)에 입력된다. 제어신호(CR, CC, AC, RW), 어드레스신호(Ai), 클록신호(CLK), 로우계 뱅크어드레스(Ri) 및 컬럼계 뱅크어드레스(Ci)는, 논리회로블록(LOGIC)으로부터 각 메모리매크로(MMACRO)에 입력된다.
동도에서 데이터입출력선(DQi)은 바이트마다 공통으로 결선되어 있다. 이 때문에 1개의 메모리매크로(MMACRO)로부터로 나오는 입출력선의 수는 8개뿐 이다. 데이터의 전환은 선택회로(SELECTOR)로부터 나오는 바이트제어신호(BEi)로 행하여진다. 이와 같은 결선을 행함으로써, 통상의 8∼32비트의 1칩 마이크로 컴퓨터의 내장메모리로서도 본 메모리매크로(MMACRO)를 사용할 수가 있다.
<4. ROM 뱅크모듈>
제41도에는 메모리매크로(MMACRO)의 뱅크모듈(BANK)의 일부를 ROM(Read Only Memory)모듈로 치환한 예가 도시된다. 본 실시예의 메모리매크로(MMACRO)는 4개의 RAM의 뱅크모듈(BANK0-3), ROM의 뱅크모듈(ROM- BANK), 앰플리파이어 모듈(AMP) 및 전원모듈(PS)로 구성된다. 이 예의 이점은, 1칩 마이크로컴퓨터의 내장메모리로서 사용한 경우, ROM과 RAM의 제어회로(주제어회로(MAINCNT)를 포함하는 앰플리파이어 모듈(AMP) 등)를 공통화할 수 있기 때문에 칩면적을 저감할 수 있다는 것이다. 또한, 화상처리 프로세서나 DSP(Digital Signal Processor)에 내장한 경우, 예컨대 곱셈 및 덧셈연산의 계수를 ROM에 넣어 두면 RAM와 ROM이 바로 옆에 있기 때문에 고속으로 데이터를 판독하여 연산할 수가 있다.
제42도에는 본 메모리매크로(MMACRO)에 적용하기 위해 적당한 ROM 모듈의 메모리어레이(RMCA)의 회로예가 도시된다. 본 실시예의 특징은 글로벌 비트선의 수와 피치를 RAM 모듈(제29도, 제31도, 제37도 등에 도시된 뱅크모듈(BANK))과 맞추기 위해 RAM 모듈과 같은 사이즈의 DRAM의 메모리셀을 일부 변경하여 ROM셀로서 사용하고 있는 것이다. DRAM 구성의 메모리셀을 ROM셀로서 사용하기 위해서는, 예컨대, 메모리셀의 절연막을 형성한 후에 기입하는 데이터에 맞춰 그 절연막을 제거하는 마스크를 추가하면 된다. 이것에 의해, 절연막을 제거한 셀(동도의 MC1)은 메모리셀의 공통전극과 쇼트(short) 상태로 되며 제거하지 않은 셀(동도의 MC2)은 절연성을 유지하는 것으로 정보가 기입되게 된다.
ROM 모듈의 동작을 제42도, 43을 사용하여 설명한다. 우선 비트선 프리차지신호(FPC)를 "H"로 하는 것으로 N-MOS트랜지스터(QR3, QR4, QR5, QR7)가 온으로 되고 비트선(B) 및 센스 앰플리파이어의 입력단자(N1, N2)가 VCC의 전압으로 된다. 다음에 비트선 프리차지신호(FPC)를 "L"로 하고 워드선(본 실시예로서는W1)과 전송신호(SC)를 "H"(VCC 이상)로 한다. 그렇게 하면 N-MOS 트랜지스터(QR1, QR6, QR8)가 온 상태로 되므로 N1의 노드는 HVC의 전압에까지 내려가고, N2의 노드는 3/4 VCC의 전압에까지 내려간다. 이 전압차를 P채널 센스 앰플리파이어 공통구동선(CSP)을 "H"로, N채널 센스 앰플리파이어 공통구동선(CSN)을 "L"로 함으로써 센스 앰플리파이어(QR9∼QR12)를 동작시켜 증폭한다. 이 상태에서는 N-MOS 트랜지스터(QR1)를 통해 전류가 계속 흐르므로 전송신호(SC)를 "L"로 하여 N-MOS 트랜지스터(QR6, QR8)를 오프한다. 이렇게 하여, N1은 VSS의 전압으로 N2는 VCC의 전압으로 된다. 즉 정보 "0"이 판독된다. 여기서 만약 W1 대신에 W2를 라이징 시키면 N2의 노드는 3/4VCC의 전압으로 변하지 않지만 N1의 노드는 메모리셀에 전류가 흐르지 않기 때문에 VCC의 전압으로 되며 전위관계는 이전과 반대로 이번은 N1이 VCC의 전압, N2가 VSS의 전압으로 된다. 즉 정보 "1"이 판독된다. 여기서, 컬럼 어드레스 선택신호(YSi)를 "H"로 하면 입출력선(IO, IOB)를 통해 글로벌 비트선(GBL, /GBL)에 신호가 나타나는 것으로 된다. 또 워드선을 "L"로 하는 타이밍은, SC을 "L"로 한 시점에서 프리차지를 개시하기까지의 사이이면 어느 것이라도 좋다.
이상과 같이 본 실시예에 의하면, RAM과 같은 메모리셀 패턴을 ROM으로서 사용할 수 있기 때문에, 글로벌 비트선의 수와 피치를 RAM 모듈의 그것에 간단하게 맞출 수 있다. 또, 여기서는, 예로서 DRAM 셀의 절연막을 제거하는 방식에 대해 기재하였지만, 다른 방법 예를들면 메모리셀의 축적전극을 제거한다고 하는 방법이라도 좋다. 또한, 글로벌 비트선의 피치까지도 다른 뱅크모듈(BANK)과 같이 할 수 있으면 종래의 ROM 셀을 사용해도 된다.
여기서, ROM이란 미리 정보를 칩 제조공정에서 기입해 버리는 프로그램 고정의 마스크 ROM으로 전원을 끊더라도 기억정보가 유지되는 불휘발성 메모리이다. 또한, RAM이란 데이터를 수시로 기입하고, 유지하고, 판독할 수 있는 메모리로, 전원을 끊으면 기억정보를 유지할 수 없는 휘발성 메모리이다.
이상 여기까지는 RAM의 메모리셀을 제31도에 도시된 DRAM 셀로서 설명하였지만, 이것은 SRAM 셀을 사용하더라도 하등 지장이 없다. 또한, 이 경우 ROM 뱅크모듈의 ROM 셀은, 그 SRAM 셀의 일부를 변경하여 만들면 된다.
상기에 있어서 ROM의 변화로 재기입을 할 수 있는 메모리셀로 이루어지는 모듈을 사용해도 좋은 것은 물론이다. 예컨대 강유전체막을 사용한 메모리셀로 이루어지는 모듈을 사용할 수 있다. 강유전체막을 사용한 메모리셀은, RAM과 같이 재기입을 할 수 있는 것외에 ROM과 같이 전원을 끊은 후에도 정보가 유지되기 때문에 전체 모듈을 강유전체막을 사용한 메모리셀로 이루어지는 모듈로 하는 것도 가능하다.
[싱크로너스(synchronous) 구조 다이나믹 RAM 모듈]
제46도에는, 메모리매크로(MMACRO)를 사용하여 구성한 DRAM 모듈의 일례가 도시된다. 상기한 바와 같이 메모리매크로(MMACRO)의 뱅크모듈(BANK)은 256개의 워드선(X 어드레스가 8개)을 가지도록 하고, 1워드선에 (nx8xi)쌍의 비트선이 교차되며, Y 디코더로 1/n(Y 어드레스가 (logn/log2개)로 선택되고, (8xi)쌍의 글로벌 비트선에 데이터가 입출력하는 구성으로 된다. 한편, DRAM 모듈(M25)의 각 뱅크(BANK0-9)는, 메모리매크로(MMACRO)의 뱅크모듈(BANK)의 n=16, i=8인 경우의 것에 대응한다. 즉, DRAM 모듈(M25)의 각 뱅크(BANKi, i=0-9)는, 256K비트의 기억 용량을 가지며 64쌍의 글로벌 비트선에 데이터가 입출력하는 구성으로 한다. 또한, DRAM 모듈(M25)은, 10개의 뱅크(BANKi, i= 0-9)로 구성된다. 따라서, DRAM 모듈(M25)은 4096워드x64비트x10뱅크구성의 싱크로너스구조 다이나믹 DRAM 모듈을 구성한다. 또, 각 뱅크(BANKi, i=0-9)는 완전히 독립으로 동작가능하게 된다. DRAM 모듈(M25)은 어드레스 논멀티구성으로, 로우ㆍ컬럼이 완전분리 제어된다. DRAM 모듈(M25)의 AMP는 메모리매크로(MMACRO)의 앰플리파이어 모듈(AMP)에 대응한다.
<입출력 인터페이스>
DRAM 모듈(M25)은, ASIC에 사용되는 모듈이다. 제46도에 도시된 바와 같이, 다른 ASIC의 모듈과의 인터페이스 신호로서는, 클록신호(CLK), 8개의 로우(Row) 어드레스신호(AX)[0:7], 4개의 칼럼(Column) 어드레스신호(AY)[0:3], 4개의 로우ㆍ뱅크(Row bank) 어드레스신호(AR)[0:3], 4개의 컬럼ㆍ뱅크(Column bank) 어드레스신호(AC)[0:3], 로우(Row)커맨드선택신호(CR), 뱅크(Bank) 활성비활성 신호(BA), 컬럼(column)커맨드 선택신호(CC), 판독/기입 제어신호(RW), 64개의 데이터입출력신호(DQ)[0,0:7,7], 데이터 바이트 제어신호(BE)[0:7], 전원선(VDD), 접지선(VSS)이 있다.
클록신호(CLK)는 메모리매크로(MMACRO)의 클록신호(CLK)에 대응한다. 다른신호의 입력 및 출력 전체는 이 신호에 동기하여 행하여진다.
로우ㆍ어드레스신호(AX)[0:7]는 메모리매크로(MMACRO)의 어드레스신호(Ai) 중 X 어드레스에 대응한다. 뱅크(BANK)내의 로우ㆍ어드레스(X 어드레스)가 입력된다. 컬럼ㆍ어드레스신호(AY)[0:3]는 메모리매크로(MMACRO)의 어드레스신호(Ai) 중 Y 어드레스에 대응한다. 뱅크(BANK)내의 컬럼ㆍ어드레스(Y어드레스)가 입력된다.
로우ㆍ뱅크ㆍ어드레스신호(AR)[0:3]는 메모리매크로(MMACRO)의 로우계 뱅크 어드레스 Ri에 대응한다. 로우ㆍ커맨드를 접수하는 뱅크(BANK)의 어드레스가 입력된다. 메모리매크로(MMACRO)의 로우계 뱅크어드레스(Ri)는 디코드되지 않고 뱅크모듈(BANK)을 직접 선택하고 있는 구성이다. 그러나, 로우ㆍ뱅크ㆍ어드레스신호(AR)[0:3]는 디코드되어, 뱅크(BANK)를 선택하는 구성으로 된다. 4개의 어드레스가 있기 때문에, 최대 16뱅크까지 선택하는 것이 가능하다.
컬럼ㆍ뱅크ㆍ어드레스신호(AC)[0:3]는 메모리매크로(MMACRO)의 컬럼계 뱅크 어드레스(Ci)에 대응한다. 컬럼ㆍ커맨드를 접수하는 뱅크(BANK)의 어드레스가 입력된다. 메모리매크로(MMACRO)의 컬럼계 뱅크어드레스(Ci)는 디코드되지 않고, 뱅크모듈(BANK)을 직접 선택하고 있는 구성이다. 그러나, 컬럼ㆍ뱅크ㆍ어드레스신호(AC)[0:3]는 디코드되어, 뱅크(BANK)를 선택하는 구성으로 된다. 4개의 어드레스가 있기 때문에, 최대 16뱅크까지 선택할 수가 있다.
로우ㆍ커맨드선택신호(CR)는 메모리매크로(MMACRO)의 제어신호(CR)에 대응한다. 해당 사이클이 로우ㆍ커맨드입력인 것을 나타낸다.
뱅크 활성비활성신호(BA)는 메모리매크로(MMACRO)의 제어신호(AC)에 대응한다. 해당 뱅크(BANK)를 활성화할지 비활성화할지 지시한다.
컬럼ㆍ커맨드선택신호(CC)는 메모리매크로(MMACRO)의 제어신호(CC)에 대응한다. 해당 사이클이 컬럼ㆍ커맨드입력인 것을 나타낸다.
판독/기입제어신호(RW)는 메모리매크로(MMACRO)의 제어신호(RW)에 대응한다. 판독인지 기입인지를 지시한다.
데이터입출력신호(DQ)[0,0:7,7]는 메모리매크로(MMACRO)의 입출력용의 I/O신호(DQij)에 대응한다. 데이터의 입출력을 행한다.
데이터바이트 제어신호(BE)[0:7]는 메모리매크로(MMACRO)의 바이트제어신호(BEi)에 대응한다. 각 바이트에 대하여 입출력의 마스크를 행한다. 판독의 경우는, BE=L인 경우 출력은 임피던스로 되고, BE=H인 경우 출력은 인에이블로 된다. 기입의 경우는, BE=L인 경우 해당하는 데이터의 기입은 행하여지지 않고, 이전의 데이터가 유지된다. BE=H인 경우 해당하는 데이터의 기입이 행하여진다.
전원선(VDD)은 메모리매크로(MMACRO)의 전원전압(VCC)에 대응한다. 3.3V가 접속된다. 접지선(VSS)은 메모리매크로(MMMACRO)의 전원전압(VSS)에 대응한다. GND(0V)가 접속된다.
또, 입출력신호의 전압레벨은 소위 CMOS 인터페이스 레벨이다.
<커맨드 오퍼레이션>
제47도에는, DRAM 모듈(M25)에 설정되는 커맨드의 진리값표가 도시된다. "1"은 입력신호가 고레벨(VIH)인 것을 나타낸다. "0"은 입력신호가 저레벨(VIL)인 것을 나타낸다. "X"는 입력신호가 고레벨(VIH) 또는 저레벨(VIL)인 것을 나타낸다. "V"는 입력신호가 유효한 것을 나타낸다.
로우ㆍ커맨드(Row command(com R))계는, 로우ㆍ커맨드선택신호(CR), 뱅크 활성비활성신호(BA), 로우ㆍ어드레스신호(AX)[0:7] 및 로우ㆍ뱅크ㆍ어드레스신호(AR)[0:3]의 조합으로 커맨드가 설정된다. 로우ㆍ커맨드선택신호(CR), 뱅크활성비활성신호(BA), 로우ㆍ어드레스신호(AX)[0:7] 및 로우ㆍ뱅크ㆍ어드레스신호(AR)[0:3]는, 클록신호(CLK)의 라이징에지에서 DRAM 모듈(M25)내에 래치된다. 제47도의 "↑"는 클록신호(CLK)의 라이징에지에서 DRAM 모듈(M25)내에 래치되는 것을 나타내고 있다.
커맨드 NOP(No operation)는 CR=0으로 설정된다. 커맨드 NOP는 실행커맨드가 아니다. 다만, 내부동작은 계속된다.
커맨드 BA(Row address strobe and bank active)는 CR=1, BA=1로 설정된다. 커맨드 BA는 로우ㆍ어드레스(AX0-AX7) 및 로우ㆍ뱅크ㆍ어드레스(AR0-AR3)가 지정되며, 로우ㆍ뱅크ㆍ어드레스로 지정된 뱅크(BANK)가 활성화(Active) 상태로 된다. 커맨드 BA는 범용 DRAM 칩에 있어서, /CAS=H에서 /RAS의 폴링(falling)에 상당한다. 또, 커맨드 BA는 리프레쉬에도 사용된다.
커맨드 BC(Precharge and bank close)는 CR=1, BA=0으로 설정된다. 커맨드 BC에 의해 로우ㆍ뱅크ㆍ어드레스(AR0-AR3)로 지정된 뱅크(BANK)가 프리차지되며, 그 후 뱅크폐쇄상태로 된다.
컬럼ㆍ커맨드(Column command(com C))계는, 컬럼ㆍ커맨드선택신호(CC), 데이터 바이트 제어신호(BE)[0:7], 판독/기입제어신호(RW), 컬럼ㆍ어드레스신호(AY)[0:3] 및 컬럼ㆍ뱅크ㆍ어드레스신호(AC)[0:3]의 조합으로 커맨드가 설정된다. 컬럼ㆍ커맨드선택신호(CC), 데이터 바이트 제어신호(BE)[0:7], 판독/기입제어신호(RW), 컬럼ㆍ어드레스신호(AY)[0:3] 및 컬럼ㆍ뱅크ㆍ어드레스신호(AC)[0:3]는, 클록신호(CLK)의 라이징에지에서 DRAM 모듈(M25)내에 래치된다.
커맨드 NOP(No operation)는 CC=0으로 설정된다. 커맨드 NOP는 실행커맨드가 아니다. 다만, 내부동작은 계속된다.
커맨드 RD(Column address strobe and read command)는 CC=1, RW=1로 설정된다. 커맨드(RD)에 의해 리드동작이 시작된다. 리드 어드레스는 컬럼ㆍ어드레스(AY0-AY3) 및 컬럼ㆍ뱅크ㆍ어드레스(AC0-AC3)에서 지정된다. 커맨드(RD)는 범용 DRAM 칩에 있어서, /RAS=L, WE=H에서의 /CAS의 폴링에 상당한다. 리드 종료 후 출력은 하이임피던스로 된다.
커맨드 WT(Column address strobe and write command)는 CC=1, RW=0으로 설정된다. 커맨드 WT에 의해 라이트동작이 시작된다. 라이트 어드레스는 컬럼ㆍ어드레스(AY0-AY3) 및 컬럼ㆍ뱅크ㆍ어드레스(AC0-AC3)에서 지정된다.
데이터 바이트 제어신호(BE)[0:7]는 입출력데이터의 마스크 조작을 바이트 단위로 행하도록 한다. 리드시는, BE="1"로 하면, 출력이 로우임피던스로 되며, 데이터의 출력이 가능하게 된다. BE="0"으로 하면, 출력이 하이임피던스로 되며, 데이터의 출력이 행하여지지 않는다. 라이트시는, BE="1"로 하는 것에 의해, 데이터의 기입이 행하여진다. BE="0"으로 하면, 데이터의 기입이 행하여지지 않고 이전의 데이터가 유지된다.
제48도에는, 각종의 상태로부터 다음에 각 커맨드를 실행한 경우의 동작을 나타내는 기능진리값표가 도시된다. 뱅크 BANK#i가 뱅크활성(Bank active)의 상태에서 뱅크 BANK#i 에 대하여 커맨드 BA가 실행되면, 프리차지(Precharge)와 새로운 로우ㆍ어드레스(AX)에 대한 센스(Sense)가 행하여진 후, 뱅크 BANK#1는 뱅크활성상태(Bank active status)로 된다. 또, 뱅크활성 상태란 컬럼ㆍ커맨드(com C)가 입력가능한 상태를 말한다. 뱅크 BANK#j (j는 i와 다름)가 뱅크활성의 상태에서 뱅크 BANK#i에 대하여 커맨드 BA가 실행되면 뱅크 BANK#j의 상태는 계속된다.(No operation)
뱅크 BANK#i가 뱅크폐쇄(Bank close)의 상태에서 뱅크 BANK#i에 대하여 커맨드 BA가 실행되면 새로운 Row 어드레스(AX)에 대한 센스(Sense)가 행하여진 후, 뱅크 BANK#i는 뱅크활성상태(Bank active status)로 된다. 뱅크 BANK#j (j는 i 와 다름)가 뱅크폐쇄의 상태에서 뱅크 BANK#i에 대하여 커맨드 BA가 실행되면 뱅크 BANK#j의 상태는 계속된다(No operation).
뱅크 BANK#i가 뱅크활성 또는 뱅크폐쇄의 상태에서 뱅크BANK#i에 대하여 커맨드 BC가 실행되면 프리차지(Precharge)가 행하여진 후, 뱅크 BANK#i는 뱅크폐쇄상태(Bank close status)로 된다. 뱅크BANK#j (j는 i와 다름)가 뱅크활성 또는 뱅크 폐쇄의 상태에서 뱅크BANK#i에 대하여 커맨드 BC가 실행되면, 뱅크BANK#j의 상태는 계속된다(No operation).
뱅크 BANK#i가 뱅크활성 및 뱅크폐쇄 이외(not Bank active or not Bank close)의 상태에서는, 뱅크 BANK#i에 대하여 커맨드 BA 또는 커맨드 BC의 실행은 금지된다. 뱅크 BANK#j (j는 i와 다름)가 뱅크활성 및 뱅크폐쇄 이외의 상태에서 뱅크 BANK#i에 대하여 커맨드 BA 또는 커맨드 BC가 실행되면, 뱅크BANK#j의 상태는 계속된다(No operation).
뱅크 BANK#i가 뱅크활성의 상태에서 뱅크 BANK#i에 대하여 커맨드 RD가 실행되면, 뱅크 BANK#i로부터 판독(Read)이 행하여진다. 뱅크 BANK#i가 비뱅크활성의 상태에서는 뱅크 BANK#i에 대하여 커맨드 RD의 실행은 금지된다. 뱅크BANK#j(j는 i와 다름)가 어떠한 상태에서 뱅크 BANK#i에 대하여 커맨드 RD가 실행되더라도, 뱅크 BANK#j의 상태는 계속된다(No operation).
뱅크 BANK#i가 뱅크활성의 상태에서 뱅크 BANK#i에 대하여 커맨드 WT가 실행되면 뱅크 BANK#i에의 기입(Write)이 행하여진다. 뱅크 BANK#i가 뱅크활성 이외의 상태에서는 뱅크 BANK#i에 대하여 커맨드 WT의 실행은 금지된다. 뱅크 BANK#j (j는 i와 다름)가 어떠한 상태에서 뱅크 BANK#i에 대하여 커맨드 WT가 실행되더라도, 뱅크 BANK#j의 상태는 계속된다(No operation).
제49도에는, 커맨드 입력에 대한 뱅크의 상태천이도가 도시된다. 뱅크의 상태에는, 스탠바이(Stand by)상태(S0). 프리차지(Precharge)상태(S1P), 센스(Sense)상태(S1S), 뱅크활성(Bank active)상태(S2), 출력없음 리드(Read without output)상태(S2RP), 리드(Read)상태(S2R), 파이프라인 출력(Pipeline output only)상태(S1RS), 파이프라인 출력(Pipeline output only)상태(S2RS) 및라이트(write)상태(S2W)가 있다. 커맨드 BA, BC, RD, WT, NOP의 입력에 따라 뱅크의 상태가 천이된다. 제49도에 있어서, 커맨드명이 기입되어 있지 않은 화살표는 소정의 시간경과후(time out)에 뱅크의 상태가 천이된다.
<리드/라이트동작>
(1) 뱅크활성
리드 또는 라이트 동작전에 커맨드 BA에 의하여 해당 뱅크(BANK) 및 로우ㆍ어드레스의 활성화를 행한다. 로우ㆍ뱅크ㆍ어드레스(AR0-AR3)에 의해 활성뱅크(BANK)가 지정되며, 로우ㆍ어드레스(AX0-AX7)에서 워드선이 활성화된다.
RAS 다운모드(커맨드 BA가 들어가기전의 상태가 뱅크활성)의 경우, 커맨드 BA로부터 커맨드 RD 또는 커맨드 WT의 사이는 LA의 간격이 필요하다. 제49도에 도시된 바와 같이, 뱅크활성상태(S2)로부터 프리차지상태(S1P) 및 센스상태(S1S)를 경유하여 뱅크활성상태(S2)로 된다.
고속액세스모드(커맨드 BA가 들어가기 전의 상태가 뱅크폐쇄)의 경우, 커맨드 BA로부터 커맨드 RD 또는 커맨드 WT의 사이는 LA2의 간격이 필요하다. 제49도에 도시된 바와 같이, 스탠바이상태(S0)로부터 센스상태(S1S)를 경유하여 뱅크활성상태(S2)로 된다.
(2) 리드동작
제50도에는, RAS 다운모드의 페이지ㆍ리드 동작의 타이밍도가 도시된다. 커맨드 BA(Bank active(with Precharge))가 입력되며, 간격 LA 후의 커맨드 RD의 입력에 의해 리드동작이 개시된다. 제50도에서는, 커맨드 RD가 연속하여 입력되어,데이터가 연속하여 판독되는 예가 도시된다. 제50도에서는, LA가 5클록사이클인 예가 도시되어 있지만, 최소 레이턴시에 관하여는 후술한다. 어드레스는, 컬럼ㆍ뱅크ㆍ어드레스(AC0-AC3)의 상태에 의해 활성뱅크가 지정되며, 컬럼ㆍ어드레스(AY0-AY3)에 의해 컬럼선택 신호가 지정된다. 제50도에는, 컬럼ㆍ어드레스(AY0-AY3)의 #1, #2에 대응하는 데이터의 1, 2가 판독되는 모양이 도시된다. 데이터를 출력한 후는, 데이터입출력(DQ)은 하이임피던스로 된다. 제50도에 도시된 리드동작의 상태는, 제49도에 도시된 바와 같이, 뱅크활성상태(S2)로부터 프리차지상태(S1P) 및 센스상태(S1S)를 경유하여 뱅크활성상태(S2)로 된다. 커맨드 RD의 입력 후, 출력없음 리드상태(S2RP) 및 리드상태(S2R)를 경유하여 파이프라인출력상태(S2RS)로 된다. 커맨드 BA 입력 후, 프리차지 상태(S1P)로 된다.
제51도에는, 고속 액세스모드의 리드동작의 타이밍도가 도시된다. 커맨드 BA(Bank active)가 입력되며 간격(LA2) 후의 커맨드 RD의 입력에 의해 리드동작이 개시된다. 제51도에서는, LA2은 3클록사이클의 예가 도시되어 있지만, 최소 레이턴시에 대하여는 후술한다. 어드레스는, 컬럼ㆍ뱅크ㆍ어드레스(AC0-AC3)의 상태에 의해 활성뱅크가 지정되며, 컬럼ㆍ어드레스(AY0-AY3)에 의해 컬럼선택 신호가 지정된다. 제51도에는, 컬럼ㆍ어드레스(AY0-AY3)의 #1, #2에 대응하는 데이터의 1,2가 판독되는 모양이 도시된다. 데이터를 출력한 후는, 데이터 입출력(DQ)은 하이임피던스로 된다. 제51에 도시된 리드동작의 상태는, 제49도에 도시된 바와 같이, 스탠바이상태(S0)로부터 센스상태(S1S)를 경유하여 뱅크활성상태(S2)로 된다. 커맨드 RD의 입력 후, 출력없음 리드상태(S2RP) 및 리드상태(S2R)를 경유하여 파이프라인상태(S2RS)로 된다. 커맨드 BC의 입력후, 프리차지상태(S1P)를 경유하여 스탠바이상태(S0)로 된다. 간격 LP후, 커맨드 BA를 입력하면, 센스상태 S1S로 된다.
(3) 라이트동작
제52도에는, RAS 다운모드의 페이지ㆍ라이트동작의 타이밍도가 도시된다. 커맨드BA(Bank active(with Precharge))가 입력되며, 간격 LA후의 커맨드 WT의 입력에 의해 라이트 동작이 개시된다. 제52도에서는, LA가 5 클록사이클인 예가 도시되어 있지만, 최소레이턴시에 관하여는 후술한다. 어드레스는, 컬럼ㆍ뱅크ㆍ어드레스(AC0-AC3)의 상태에 의해 활성뱅크가 지정되며, 컬럼ㆍ어드레스(AY0-AY3)에 의해 컬럼선택신호가 지정된다. 제52도에는, 컬럼ㆍ어드레스(AY0-AY3)의 #1, #2에 대응하는 데이터의 1, 2가 판독되는 모양이 도시된다. 데이터 입출력의 레이턴시는 1사이클이다. 제52도에 도시된 라이트동작의 상태는, 제49도에 도시된 바와 같이, 뱅크활성상태(S2)로부터 프리차지상태(S1P) 및 센스상태(S1S)를 경유하여 뱅크활성상태(S2)로 된다. 커맨드 WT의 입력후, 라이트상태(S2W)로 된다. 커맨드 NOP의 입력후, 뱅크활성상태(S2)로 된다.
제53도에는, 고속액세스모드의 페이지ㆍ라이트 동작의 타이밍도가 도시된다. 커맨드 BA(Bank active)가 입력되며, 간격 LA2 후의 커맨드 WT의 입력에 의해 라이트동작이 개시된다. 제53도에서는, LA2가 3클록사이클인 예가 도시되어 있지만, 최소레이턴시에 관하여는 후술한다. 어드레스는, 컬럼ㆍ뱅크어드레스(AC0-AC3)의 상태에 의해 활성뱅크가 지정되며, 컬럼ㆍ어드레스(AY0-AY3)에 의해 컬럼선택신호가 지정된다. 제53도에는, 컬럼ㆍ어드레스(AY0-AY3)의 #1, #2에 대응하는 데이터의 1,2가 판독되는 모양이 도시된다. 데이터입력의 레이턴시는 1사이클이다. 제53도에 도시된 라이트동작의 상태는, 제49도에 도시된 바와 같이, 스탠바이상태(S0)로부터 센스상태(S1S)를 경유하여 뱅크활성상태(S2)로 된다. 커맨드 WT의 입력후, 라이트상태(S2W)로 된다. 커맨드 NOP의 입력후, 뱅크활성상태로 된다. 커맨드 BC의 입력 후, 프리차지상태(S1P)를 경유하여 스탠바이상태(S0)로 된다. 간격 LP후, 커맨드 BA를 입력하면 센스상태(S1S)로 된다.
<커맨드 레이턴시>
(1) 커맨드 RDㆍ커맨드 RD 레이턴시(LRR)
동일뱅크, 동일 로우ㆍ어드레스의 경우, 제54도에 도시된 바와 같이, 커맨드 RD가 연속 실행되면 매사이클 판독이 가능하게 된다. 즉, 커맨드 RD와 커맨드 RD간의 최소간격 LRR는 1 사이클로 된다. 제49도에 도시된 뱅크활성상태(S2)로부터 출력없음 리드상태(S2RP)를 경유하여 리드상태(S2R)에 천이되기 때문이다. 그러나, 동일뱅크, 다른 로우ㆍ어드레스에 대하여 연속하여 커맨드 RD가 실행될 수는 없다. 뒤의 커맨드 RD가 입력되기 전에, 새로운 커맨드 BA가 실행되고, 혹은 커맨드 BC와 커맨드 BA가 실행되며, 다시 커맨드 RD가 실행될 필요가 있다.
타뱅크의 어드레스를 액세스하는 경우, 제55도에 도시된 바와 같이, 복수의 뱅크가 뱅크활성상태이면 뱅크활성의 뱅크에 대하여 커맨드 RD를 매사이클 연속실행할 수 있게 된다.
(2) 커맨드 WTㆍ커맨드 WT 레이턴시(LWW)
동일 뱅크, 동일 로우ㆍ어드레스의 경우, 제56도에 도시된 바와 같이, 커맨드 WT가 연속실행되면 매사이클기입이 가능하게 된다. 즉, 커맨드 WT와 커맨드 WT간의 최소간격 LWW는 1 사이클로 된다. 제49도에 도시된 뱅크활성상태(S2)로부터 라이트상태(S2W)로 천이되기 때문이다. 그러나, 동일뱅크, 다른 로우ㆍ어드레스에 대하여 연속하여 커맨드 WT가 실행될 수는 없다. 뒤의 커맨드 WT가 입력되기 전에, 새로운 커맨드 BA가 실행되며, 다시 커맨드 WT가 실행될 필요가 있다.
타 뱅크의 어드레스를 액세스하는 경우, 제57도에 도시된 바와 같이, 복수의 뱅크가 뱅크활성상태이면, 뱅크활성의 뱅크에 대하여 커맨드 WT를 매사이클 연속실행할 수 있게 된다.
(3) 커맨드 RDㆍ커맨드 WT 레이턴시(LRW)
제58도에 도시된 바와 같이, 커맨드 RD의 후, 동일뱅크의 동일 로우ㆍ어드레스에 대하여 연속하여 커맨드 WT가 연속실행되면 커맨드 RD와 커맨드 WT와의 사이에 최소 1사이클의 커맨드 NOP를 넣을 필요가 있다. 즉, 커맨드 RD와 커맨드 WT간의 최소간격(LRW)은 2사이클로 된다. 제49도에 도시된 출력없음 리드상태(S2RP) 또는 리드상태(S2R)에 있기 때문이며 커맨드 NOP가 실행되어, 파이프라인 출력상태(S2RS)로 천이될 필요가 있기 때문이다. 또한, 커맨드 RD의 후, 동일뱅크의 다른 로우ㆍ어드레스에 대하여 연속하여 커맨드 WT가 실행될 수는 없다. 커맨드 WT가 입력되기 전에, 새로운 커맨드 BA가 실행되며, 다시 커맨드 WT가 실행될 필요가 있다. 또, 제58도에 도시된 Q는 데이터출력을, D는 데이터입력을 나타내고 있다.
타 뱅크의 어드레스를 액세스하는 경우, 복수의 뱅크가 뱅크활성 상태이면,뱅크활성의 뱅크에 대하여 커맨드 RD의 후, 연속하여 커맨드 WT가 실행가능하게 되지만, 커맨드 RD와 커맨드 WT와의 사이에 최소 1사이클의 커맨드 NOP를 넣을 필요가 있다.
(4) 커맨드 WTㆍ커맨드 RD 레이턴시(LWR)
제59도에 도시된 바와 같이, 커맨드 WT의 후, 동일 뱅크의 동일 로우ㆍ어드레스에 대하여 연속하여 커맨드 RD가 연속 실행되면 매사이클 연속동작이 가능하게 된다. 즉, 커맨드 WT와 커맨드 RD간의 최소간격(LWR)은 1사이클로 된다. 제49도에 도시된 라이트상태(S2W)에 있기 때문이며, 즉시 커맨드 RD가 실행가능하게 되기 때문이다. 그러나, 커맨드 WT의 후, 동일 뱅크의 다른 로우ㆍ어드레스에 대하여 연속하여 커맨드 RD가 실행될 수는 없다. 커맨드 RD가 입력되기 전에, 새로운 커맨드 BA가 실행되며, 다시 커맨드 RD가 실행될 필요가 있다. 또, 제59도에 도시된 Q는 데이터출력을, D는 데이터입력을 나타내고 있다.
타뱅크의 어드레스를 액세스하는 경우, 복수의 뱅크가 뱅크활성상태이면, 뱅크 활성의 뱅크에 대하여 커맨드 WT의 후, 연속하여 커맨드 RD가 실행가능하게 된다. 커맨드 WT와 커맨드 RD는 매사이클 연속실행가능하게 된다.
(5) 커맨드 RDㆍ커맨드 BA/커맨드 BC 레이턴시(LR)
제60도에 도시된 바와 같이, 커맨드 RD의 후, 동뱅크에 대하여 커맨드 BA 또는 커맨드 BC가 연속하여 실행되는 것이 가능하게 된다. 즉, 커맨드 RD와 커맨드 BA 또는 커맨드 BC간의 최소간격(LR)은 1사이클로 된다. 제49도에 도시된 출력없음 리드상태(S2RP) 또는 리드상태(S2R)에 있기 때문이며, 즉시 커맨드 BA 또는 커맨드BC가 실행가능하게 되기 때문이다.
(6) 커맨드 WTㆍ커맨드 BA/커맨드 BC 레이턴시(LR)
제61도에 도시된 바와 같이 커맨드 WT의 후, 동뱅크에 대하여 커맨드 BA 또는 커맨드 BC가 연속하여 실행되는 것이 가능하게 된다. 즉, 커맨드 WT와 커맨드 BA 또는 커맨드 BC간의 최소간격(LR)은 1사이클로 된다. 제49도에 도시된 라이트 상태(S2W)에 있기 때문이다.
(7) 커맨드 BAㆍ커맨드 BA 레이턴시 (LC)
제62도 및 제63도에 도시된 바와 같이, RAS 다운모드 및 고속액세스 모드의 어느것에 있어서도, 동뱅크에 대한 2개의 커맨드 BA의 간격은, LC를 만족하도록 할 필요가 있다. 제62도에서는, LC은 8클록 사이클의 예가 도시되어 있지만, 최소레이턴시에 관하여는 후술한다. 다른 뱅크간의 경우, 2개의 커맨드 BA는 매사이클 연속 실행 가능하게 된다.
(8) 커맨드 BCㆍ커맨드 BA 레이턴시(LP)
제51도 및 제53도에 도시된 바와 같이 커맨드 BC 후, 동뱅크에 대하여 커맨드 BA가 실행되기 위해서는, 간격 LP를 만족하도록 할 필요가 있다. 최소 레이턴시에관하여는 후술한다.
<데이터 바이트제어>
데이터 바이트 제어신호(BEi)에 의해 입출력데이터의 마스크조작이 행하여진다. 리드시, 데이터 바이트 제어신호(BEi)에 의해 출력버퍼의 제어가 가능하게 된다. BEi=1인 경우, 출력버퍼의 출력은 로우 임피던스로 되며 데이터의 출력이 가능하게 된다. BEi=0인 경우, 출력버퍼의 출력은 하이임피던스로 되어 데이터의 출력이 금지된다. 제64도에 도시된 바와 같이, 리드시의 데이터 바이트 제어신호(BEi)의 레이턴시는 2로 된다. 제64도에는, #4의 어드레스에 대응하는 데이터는 BEi=0으로 되기 때문에 데이터입출력(DQ)에는 출력되지 않은 예가 도시되어 있다.
라이트시, 데이터 바이트 제어신호(BEi)에 의해 입력데이터의 마스크가 가능하게 된다, BEi=1인 경우, 입력데이터의 기입이 가능하게 된다. BEi=0인 경우, 상기 데이터 기입이 행하여지지 않고, 이전의 데이터가 유지된다. 제65도에 도시된 바와 같이, 라이트시의 데이터 바이트 제어신호(BEi)의 레이턴시는 1로 된다. 제65도에는, #4의 어드레스에 대응하는 데이터는 BEi=0로 되기 때문에, 데이터입출력(DQ)상의 데이터가 기입되지 않은 예가 도시되어 있다.
<리프레쉬>
DRAM 모듈(M25)의 리프레쉬는, 로우활성 리프레쉬방식으로 행하여지도록 구성되어 있다. 즉, 커맨드 BA를 사용하여 각 뱅크의 각 워드선을 선택함으로써, 리프레쉬를 행한다. 통상동작시의 리프레쉬 사이클은 2560사이클/16ms이다(전 ROW어드레스의 리프레쉬에는 2560회가 필요함). 데이터유지시의 리프레쉬 사이클은 2560사이클/64ms로 연장하는 것이 가능하게 된다.
<전기적 특성>
제66도에는, DRAM 모듈(M25)의 AC 특성이 도시된다. 시스템 클록사이클(tC)의 최소치는 15ns, 즉 최대동작 클록주파수는 66MHz이다. 제66도의 주)에 도시된 tT는 각 신호의 라이징 및 폴링 시간을 나타내고 있다.
제67도에는, DRAM 모듈(M25)의 동작주파수 최소레이턴시가 도시된다. 시스템 클록사이클(tC)이 최소의 15ns시, LA=4, LA2=2, LP=2, LC= 6으로 된다. 이와 같이, 최소레이턴시가 시스템 클록 사이클(tC)에 의존하는 것은, 내부회로가 완전히 시스템 클록(CLK)에 동기하여 동작하고 있지 않기 때문이다.
이상 본 발명을 실시예에 기초하여 설명하였다. 본 실시예에 의한 효과의 개요는 다음과 같다.
(1) 복수의 I/O선을 가지는 메모리코어, 전송회로용 모듈 및 논리라이브러리가 데이터 베이스에 기억되어 있기 때문에 단기간에 설계할 수 있다.
(2) 또한, 본 실시예의 전송회로에서는, 메모리코어와 연산기 등의 논리회로사이에서 전송되는 데이터는 일단의 스위치를 통과하여 전송되기 때문에 고속인 데이터 전송을 실현할 수 있다.
(3) 게다가, 일단 또는 소수 단수의 스위치군이 하나의 전송패턴에 대응하기 때문에 전송패턴이 적은 경우에는 단수가 적어지게 되어 충분하게 점유면적을 작게할 수 있다.
(4) 메모리매크로(메모리코어)를 앰플리파이어 모듈, 뱅크모듈, 전원모듈 등의 기능모듈의 조합으로 구성한다. 뱅크모듈내에 독립하여 동작하는 로우계 회로와 비트선 방향으로 뻗는 다수의 I/O선을 배치한다. 그 I/O선이 각 모듈을 인접하여 배치하는 것만으로 접속되는 구성으로 한다. 이것에 의해, I/O선 수를 일정하게 한 채로 뱅크모듈수를 증감할 수 있기 때문에, 데이터 전송속도의 고속성을 유지한 채로, 소용량으로부터 대용량까지 자유롭게 용량을 가변할 수 있다. 또한, 뱅크모듈은 전원 모듈, 앰플리파이어 모듈을 공용할 수 있기 때문에 메모리 매크로 전체의 오버헤드가 적다.
(5) 앰플리파이어 모듈내에서 I/O선을 바이트단위로 활성화, 비활성화할 수 있는 것과 같은 회로를 마련한다. 이것에 의해, 메모리 매크로 외부로 나가는 I/O선 수를 바이트단위로 증강할 수 있다.
(6) 복수의 뱅크를 갖는 메모리에 있어서, 각 뱅크의 지정어드레스를 복수 마련한다. 이것에 의해서, 1개의 뱅크 활성화커맨드와 다른 뱅크의 판독 또는 기입커맨드가 동일사이클로 입력가능하게 되며, 다른 뱅크에 걸친 판독 또는 기입이 1사이클 마다 연속하여 행할 수 있다.
이상 본 발명자에 의해 행해진 발명을 실시예에 따라서 구체적으로 설명하였지만, 본 발명은 그것에 한정되는 것이 아니고, 그 요지를 일탈하지 않은 범위에서 여러가지 변경가능한 것은 말할 필요도 없다. 예컨대, 메모리코어(MR)의 I/O선(MIOi)의 피치와 논리회로의 I/O선(LIOi)의 피치가 합쳐지는 경우, 메모리코어(MR)와 전송회로(TG)는 일체로 할 수 있다. 따라서 메모리코어(MR)와 전송회로(TG)를 합친 것을 메모리코어 또는 메모리매크로로 칭하더라도 좋다.
본원에 있어서 개시되는 발명 중 대표적인 것에 의해 얻어지는 효과를 간단하게 설명하면 다음과 같다.
복수의 I/O선을 가지는 메모리코어, 전송회로용 모듈 및 논리 라이브러리가 데이터 베이스에 기억되어 있기 때문에, 메모리와 논리회로를 집적한 반도체를 단기간에 설계할 수 있다. 또한 면적이 작은 전송회로에 의해 실시간으로 전송패턴을바꾸면서 복수의 I/O선을 갖는 메모리코어와 논리회로의 사이에서 고속인 데이터전송을 실현할 수 있다.
메모리매크로(메모리코어)를 앰플리파이어 모듈, 뱅크모듈, 전원모듈 등의 기능 모듈의 조합으로 구성한다. 뱅크모듈내에 독립하여 동작하는 로우계회로와 비트선방향으로 뻗는 다수의 I/O선을 배치한다. 그 I/O선이 각 모듈을 인접하여 배치하는 것만으로 접속되는 구성으로 한다. 메모리매크로에 관하여는 I/O선 수를 일정하게 한채로 뱅크모듈수를 증감할 수 있기 때문에, 데이터 전송속도의 고속성을 유지한 채로, 소용량으로부터 대용량까지 자유롭게 용량을 가변할 수 있다.
제1도는 본 발명에 관한 다중I/O 메모리코어 내장시스템 LSI의 설계방법의 개념,
제2도는 본 발명에 관한 다중I/O 메모리코어 내장LSI의 예,
제3도는 제2도의 전송회로의 전송패턴,
제4도는 제3도의 전송패턴을 실현하는 전송회로의 제1 구체예,
제5도는 전송회로의 버퍼회로(TGBUFi)의 구체예,
제6도는 제3도의 전송패턴을 실현하는 전송회로의 제2 구체예,
제7도는 제6도의 전송회로의 제어신호의 설정법,
제8도는 제3도의 전송패턴을 실현하는 전송회로의 제3 구체예,
제9도는 제8도의 전송회로의 병렬 스위치부의 회로구성과 레이아웃예,
제10도는 메모리 판독ㆍ기입 제어신호에 의한 저소비 전력화를 행하는 예,
제11도는 제10도의 전송회로의 제어신호의 설정법,
제12도는 제3도와 동일한 데이터의 전송패턴,
제13도는 버퍼제어신호의 전송패턴,
제14도는 제어신호 전송회로의 예,
제15도는 제14도의 제어신호 전송회로의 제어신호 설정법,
제16도는 데이터의 전송단위보다 세밀하게 설정가능한 인에이블신호의 예,
제17도는 제16도의 구성의 전송회로에서 가능하게 되는 전송패턴의 예,
제18도는 3차원 컴퓨터 그래픽에의 응용예,
제19도는 I/O 선의 어드레스를 바이트마다 변경한 예,
제20도는 레이아웃층의 관계를 나타내는 반도체칩의 단면도,
제21도는 스위치군(SWG)의 레이아웃의 예,
제22도는 제21도의 스위치군의 제1배선층(M1)까지의 레이아웃,
제23도는 제21도의 스위치군의 제1 배선층(M1)으로부터 제3배선층(M3)까지의 레이아웃,
제24도는 제21도의 스위치군의 레이아웃에 대응하는 등가회로,
제25도는 제8도의 전송회로의 레이아웃예,
제26도는 제8도의 전송회로의 레이아웃에 있어서의 추가층의 레이아웃,
제27도는 스위치를 병렬로 접속하여 단수를 삭감한 예,
제28도는 전송회로와 판독ㆍ기입회로의 위치관계를 바꾼 실시예,
제29도는 메모리 매크로의 구성과 화상처리 LSI에의 적용예,
제30도는 메모리매크로의 외부신호와 동작모드의 관계,
제31도는 메모리매크로의 센스 앰플리파이어와 프리차지회로의 예,
제32도는 메모리매크로의 뱅크제어회로의 동작타이밍,
제33도는 메모리매크로의 바이트제어회로의 일예,
제34도는 바이트 제어회로의 판독ㆍ기입 타이밍,
제35도는 메모리매크로의 주제어회로의 일례도,
제36도는 메모리매크로가 판독ㆍ기입제어회로의 일례,
제37도는 메모리매크로의 뱅크모듈의 제2의 예,
제38도는 메모리매크로의 뱅크제어회로의 일례,
제39도는 메모리매크로의 메모리ㆍ논리혼재 LSI에의 제2의 적용예,
제40도는 메모리매크로의 메모리ㆍ논리혼재 LSI에의 제3의 적용예,
제41도는 메모리매크로의 제2의 구성예,
제42도는 메모리매크로의 ROM-BANK 모듈의 구성예,
제43도는 ROM-BANK 모듈의 동작파형,
제44도는 메모리매크로의 뱅크어드레스의 배선레이아웃예,
제45도는 메모리매크로의 다른 뱅크모듈을 데이터를 연속하여 판독하는 경우의 타이밍,
제46도는 메모리매크로를 사용하여 구성한 DRAM 모듈,
제47도는 DRAM 모듈에 설정되는 커맨드 진리값표,
제48도는 DRAM 모듈의 기능진리값표,
제49도는 DRAM 모듈의 상태천이도,
제50도는 DRAM 모듈의 RAS 다운모드의 리드동작 타이밍도,
제51도는 DRAM 모듈의 고속액세스모드의 리드동작 타이밍도,
제52도는 DRAM 모듈의 RAS 다운모드의 라이트 동작타이밍도,
제53도는 DRAM 모듈의 고속 액세스모드의 라이트동작 타이밍도,
제54도는 DRAM 모듈의 동일 뱅크ㆍ동일 Row 어드레스의 경우의 커맨드 RD-커맨드 RD 간의 인터벌을 나타내는 도면,
제55도는 DRAM 모듈의 다른 뱅크의 경우의 커맨드 RD-커맨드 RD 간의 인터벌을 나타내는 도면,
제56도는 DRAM 모듈의 동일 뱅크ㆍ동일 Row 어드레스의 경우의 커맨드 WT-커맨드 WT간의 인터벌을 나타내는 도면,
제57도는 DRAM 모듈의 다른 뱅크의 경우의 커맨드 WT-커맨드 WT 간의 인터벌을 나타내는 도면,
제58도는 DRAM 모듈의 동일 뱅크 동일 Row 어드레스의 경우의 커맨드 RS-커맨드 WT간의 인터벌을 나타내는 도면,
제59도는 DRAM 모듈의 동일뱅크ㆍ동일 Row 어드레스의 경우의 커맨드 WT-커맨드 RD 간의 인터벌을 나타내는 도면,
제60도는 DRAM 모듈의 동일뱅크의 경우의 커맨드 RD-커맨드 BA/BC 간의 인터벌을 나타내는 도면,
제61도는 DRAM 모듈의 동일뱅크의 경우의 커맨드 WT-커맨드 BA/BC 간의 인터벌을 나타내는 도면,
제62도는 DRAM 모듈의 RAS 다운모드의 동일뱅크의 경우의 커맨드 BA-커맨드 BA 간의 인터벌을 나타내는 도면,
제63도는 DRAM 모듈의 고속 액세스 모드의 동일뱅크의 경우의 커맨드 BA-커맨드 BA 간의 인터벌을 나타내는 도면,
제64도는 DRAM 모듈의 리드시의 바이트 제어신호의 레이턴시를 나타내는 도면,
제65도는 DRAM 모듈의 라이트시의 바이트 제어신호의 레이턴시를 나타내는 도면,
제66도는 DRAM 모듈의 AC 특성을 나타내는 도면,
제67도는 DRAM 모듈의 동작주파수 최소레이턴시를 나타내는 도면,
* 도면에 대한 주요부호의 설명 *
MR ... 메모리코어, MC ... 메모리셀,
DL ... 데이터선, WL ... 워드선,
PER ... 주변회로, RWC ... 판독ㆍ기입회로,
LC ... 논리회로, TG ... 전송회로,
SWG ... 스위치군, TGBUFi ... 버퍼군,
MIOi, TGCi, LIOi ... 제어신호,
DB ... 코어회로, 논리라이브러리의 데이터베이스용 기억장치,
LL ... 논리라이브러리, WS ... 설계용 워크스테이션,
LSI-A, LSI-B ... 반도체칩, MMACRO ... 메모리매크로,
LOGIC ... 논리회로블록, AMP ... 앰플리파이어모듈,
BANK ... 뱅크모듈, PS ... 전원모듈,
MAINCNT ... 주제어회로블록, BYTCNT ... 바이트제어블록,
BNKCNT-1 ... 하부뱅크제어블록, BNKCNT ... 상부뱅크제어블록,
MCA ... 메모리셀어레이,
SUBARY ... 서브메모리셀어레이(뱅크모듈내 I/O선의 분할단위),
SA ... 센스앰플리파이어, PC ... 프리차지회로,
MC1, MC2 ... 메모리셀, WD ... 워드드라이버,
XD ... X디코더, YD ... Y디코더,
DWL ... 더미워드선, ONESHOT ... 원 숏 펄스 발생회로,
RS-1, RS-2 ... 세트/리셋 플립플롭,
D-FF ... 지연플립플롭(D플립플롭),
XLT ... X 어드레스 래치회로, YLT ... Y 어드레스 래치회로,
XPC ... 프리차지신호 발생회로, VCHG ... VCH발생회로,
VBBG ... 어레이내 기판전압 발생회로,
HVCG ... 비트선 프리차지 전압발생회로,
D1, D2, D3, D5, D15 ... 지연회로,
Qi, QAi, QRi ... MOS 트랜지스터,
VCC ... 전원전압, VCH ... 워드선 전압,
VSS ... 전원전압(접지전위), VBB ... 전원전압,
HVC ... 전원전압의 1/2전압, B, /B ... 비트선,
GBLij, /GBLij ... 글로벌비트선,
I/O ... 서브메모리셀 어레이블록내의 입출력선,
YSi ... 컬럼 어드레스 선택신호,
FPC ... 비트선 프리차지신호,
FSA ... N채널 센스 앰플리파이어 기동신호,
FSAB ... N채널 센스 앰플리파이어 기동신호,
W, W1, W2 ... 워드선,
CSP ... P채널 센스 앰플리파이어 공통구동선,
CSN ... N채널 센스 앰플리파이어 공통구동선,
DQ-ij ... 메모리 매크로의 데이터 입출력선,
BEi ... 바이트 제어신호, CLK ... 클록신호,
DCA ... 뱅크활성화 플랙, DCS ... 뱅크 폐쇄 플랙,
YP ... 컬럼어드레스 인에이블 신호,
AXij ... 로우 어드레스신호(X 어드레스신호),
AYi ... 컬럼 어드레스신호(Y 어드레스신호),
Ri ... 로우계 뱅크어드레스 Ci ... 컬럼계 뱅크어드레스,
RST ... 파워온시 리셋신호.

Claims (7)

  1. 복수의 I/O선을 가지는 메모리코어와,
    상기 메모리코어에 결합되고, 기본논리게이트를 조합함으로써 합성되는 논리회로와,
    다단의 스위치군으로 구성되고, 전송회로 제어신호에 의해 상기 스위치군의 일부를 활성하는 것에 의해 상기 메모리코어의 I/O선과 상기 논리회로의 I/O선과의 사이의 복수의 데이터 전달경로를 전환하고, 상기 메모리코어와 상기 논리회로와의 사이의 데이터의 전송패턴을 실시간으로 변화시킬 수 있는 전송회로를 구비하고,
    상기 메모리코어, 상기 논리회로 및 상기 전송회로는, 동일한 반도체칩 상에 형성되며,
    상기 메모리코어와 상기 기본논리게이트의 레이아웃패턴은 상기 메모리코어와 상기 기본 논리게이트 각각에 대해 미리 등록되어 있는 레이아웃패턴들에서 추출된 것이고, 상기 전송회로의 적어도 일부의 레이아웃패턴은 상기 전송회로의 상기 적어도 일부에 관해 미리 등록되어 있는 공통의 레이아웃패턴들에서 추출된 것을 특징으로 하는 반도체 집적회로 장치.
  2. 제 1 항에 있어서,
    상기 전송회로 제어신호의 배선은 상기 메모리코어의 I/O선 또는 상기 논리회로의 I/O선의 배선과 직교하여 배치되는 것을 특징으로 하는 반도체 집적회로 장치.
  3. 복수의 제1 I/O선을 가지는 메모리코어와,
    복수의 제2 I/O선을 가지는 논리회로와,
    다단의 스위치군으로 구성되고, 전송회로 제어신호에 의해 상기 스위치군의 일부를 활성화하는 것에 의해 상기 복수의 제1 I/O선과 상기 복수의 제2 I/O선과의 사이의 복수의 데이터 전달경로를 전환할 수 있는 전송회로를 구비하고,
    상기 메모리코어, 상기 논리회로 및 상기 전송회로는, 동일한 반도체칩 상에 형성되는 것을 특징으로 하는 반도체 집적회로 장치.
  4. 제 3 항에 있어서,
    상기 복수의 제1 I/O선과 상기 복수의 제2 I/O선은, 서로 동일방향으로 되도록 배치되는 것을 특징으로 하는 반도체 집적회로 장치.
  5. 제 4 항에 있어서,
    상기 메모리코어의 제1 I/O선과 상기 논리회로의 제2 I/O선과의 사이의 복수의 데이터 전달경로 중 적어도 하나는, 상기 논리회로의 동일한 제2 I/O선으로부터 메모리코어의 다른 제1 I/O선에 데이터를 전달가능한 것을 특징으로 하는 반도체 집적회로 장치.
  6. 복수의 제1 I/O선을 가지는 반도체코어와,
    복수의 제2 I/O선을 가지는 논리회로와,
    다단의 스위치군으로 구성되고, 전송회로 제어신호에 의해 상기 스위치군의 일부를 활성화하는 것에 의해 상기 복수의 제1 I/O선과 상기 복수의 제2 I/O선과의 사이의 복수의 데이터 전달경로를 전환할 수 있는 전송회로를 구비하고,
    상기 메모리코어, 상기 논리회로 및 상기 전송회로는, 동일한 반도체칩 상에 형성되며,
    상기 복수의 제1 I/O선과 상기 복수의 제2 I/O선과의 사이의 복수의 데이터 전달경로 중 적어도 하나는, 상기 복수의 제2 I/O선 중 적어도 일부만을 사용하고, 사용하지 않고 남은 제2 I/O선은 상기 전송회로에 의해 일정한 전위로 유지하는 것을 특징으로 하는 반도체 집적회로 장치.
  7. 제 1 항, 제 2 항 내지 제 4 항, 제5항, 제6항 중 어느 한 항에 있어서,
    상기 메모리코어가 하나의 트랜지스터와 하나의 커패시터로 이루어지는 DRAM 타입의 셀을 포함하는 것을 특징으로 하는 반도체 집적회로 장치.
KR1019970007427A 1996-03-08 1997-03-06 반도체집적회로장치 KR100429945B1 (ko)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
JP9651321 1996-03-08
JP96-51330 1996-03-08
JP05132196A JP3546582B2 (ja) 1996-03-08 1996-03-08 半導体装置
JP05133096A JP3722307B2 (ja) 1996-03-08 1996-03-08 半導体集積回路
JP96-51321 1996-03-08
JP96-147010 1996-06-10
JP14701096 1996-06-10
JP30153896A JP3345282B2 (ja) 1996-06-10 1996-11-13 半導体集積回路装置の設計方法
JP96-301538 1996-11-13
JP96301538 1996-11-13

Related Child Applications (3)

Application Number Title Priority Date Filing Date
KR1020010070713A Division KR100433738B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로 장치의 설계방법
KR1020010070714A Division KR100441865B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로 장치
KR1020010070712A Division KR100439096B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로

Publications (2)

Publication Number Publication Date
KR970067852A KR970067852A (ko) 1997-10-13
KR100429945B1 true KR100429945B1 (ko) 2004-10-20

Family

ID=27462622

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1019970007427A KR100429945B1 (ko) 1996-03-08 1997-03-06 반도체집적회로장치
KR1020010070713A KR100433738B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로 장치의 설계방법
KR1020010070712A KR100439096B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로
KR1020010070714A KR100441865B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로 장치

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR1020010070713A KR100433738B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로 장치의 설계방법
KR1020010070712A KR100439096B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로
KR1020010070714A KR100441865B1 (ko) 1996-03-08 2001-11-14 반도체 집적회로 장치

Country Status (5)

Country Link
US (6) US6069834A (ko)
KR (4) KR100429945B1 (ko)
CN (3) CN100356571C (ko)
SG (1) SG74580A1 (ko)
TW (1) TW318933B (ko)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG74580A1 (en) * 1996-03-08 2000-08-22 Hitachi Ltd Semiconductor ic device having a memory and a logic circuit implemented with a single chip
US6551857B2 (en) 1997-04-04 2003-04-22 Elm Technology Corporation Three dimensional structure integrated circuits
JP3597706B2 (ja) * 1997-07-25 2004-12-08 株式会社東芝 ロジック混載メモリ
US6442667B1 (en) * 1998-06-08 2002-08-27 Texas Instruments Incorporated Selectively powering X Y organized memory banks
JP3869128B2 (ja) * 1998-09-11 2007-01-17 株式会社ルネサステクノロジ 半導体集積回路装置の製造方法
JP4437565B2 (ja) * 1998-11-26 2010-03-24 富士通マイクロエレクトロニクス株式会社 半導体集積回路装置、半導体集積回路装置の設計方法、及び、記録媒体
JP4212171B2 (ja) * 1999-01-28 2009-01-21 株式会社ルネサステクノロジ メモリ回路/ロジック回路集積システム
US6178133B1 (en) 1999-03-01 2001-01-23 Micron Technology, Inc. Method and system for accessing rows in multiple memory banks within an integrated circuit
US6842104B1 (en) * 1999-03-19 2005-01-11 Matsushita Electric Industrial Co., Ltd. System lsi and a cross-bus switch apparatus achieved in a plurality of circuits in which two or more pairs of a source apparatus and a destination apparatus are connected simultaneously and buses are wired without concentration
JP2001043671A (ja) * 1999-07-28 2001-02-16 Oki Micro Design Co Ltd 半導体装置
US7119809B1 (en) * 2000-05-15 2006-10-10 S3 Graphics Co., Ltd. Parallel architecture for graphics primitive decomposition
JP2002008399A (ja) * 2000-06-23 2002-01-11 Mitsubishi Electric Corp 半導体集積回路
US6658544B2 (en) 2000-12-27 2003-12-02 Koninklijke Philips Electronics N.V. Techniques to asynchronously operate a synchronous memory
US6944168B2 (en) * 2001-05-04 2005-09-13 Slt Logic Llc System and method for providing transformation of multi-protocol packets in a data stream
US6904057B2 (en) * 2001-05-04 2005-06-07 Slt Logic Llc Method and apparatus for providing multi-protocol, multi-stage, real-time frame classification
US6901052B2 (en) * 2001-05-04 2005-05-31 Slt Logic Llc System and method for policing multiple data flows and multi-protocol data flows
US7042848B2 (en) * 2001-05-04 2006-05-09 Slt Logic Llc System and method for hierarchical policing of flows and subflows of a data stream
KR100412131B1 (ko) 2001-05-25 2003-12-31 주식회사 하이닉스반도체 반도체 메모리 장치의 셀 데이타 보호회로
WO2003003197A2 (en) * 2001-06-28 2003-01-09 Oak Technology, Inc. System-on-a-chip controller
CN100568395C (zh) * 2001-06-29 2009-12-09 Nxp股份有限公司 非易失性存储器和通过附加修改的空存储单元加速测试地址解码器的方法
US7075284B2 (en) * 2002-07-08 2006-07-11 Kabushiki Kaisha Toshiba Time limit function utilization
US7402897B2 (en) 2002-08-08 2008-07-22 Elm Technology Corporation Vertical system integration
US6891753B2 (en) * 2002-09-24 2005-05-10 Sandisk Corporation Highly compact non-volatile memory and method therefor with internal serial buses
US6983428B2 (en) * 2002-09-24 2006-01-03 Sandisk Corporation Highly compact non-volatile memory and method thereof
US6940753B2 (en) * 2002-09-24 2005-09-06 Sandisk Corporation Highly compact non-volatile memory and method therefor with space-efficient data registers
US6934199B2 (en) * 2002-12-11 2005-08-23 Micron Technology, Inc. Memory device and method having low-power, high write latency mode and high-power, low write latency mode and/or independently selectable write latency
JP2004235515A (ja) * 2003-01-31 2004-08-19 Renesas Technology Corp 半導体装置
US6600673B1 (en) 2003-01-31 2003-07-29 International Business Machines Corporation Compilable writeable read only memory (ROM) built with register arrays
US7159128B2 (en) * 2003-04-16 2007-01-02 Seiko Epson Corporation Method and apparatus for selectively reducing the depth of digital data
US6862203B2 (en) * 2003-05-27 2005-03-01 Macronix International Co., Ltd. Memory with shielding effect
US7219324B1 (en) * 2003-06-02 2007-05-15 Virage Logic Corporation Various methods and apparatuses to route multiple power rails to a cell
US20050012735A1 (en) * 2003-07-17 2005-01-20 Low Yun Shon Method and apparatus for saving power through a look-up table
US7099221B2 (en) 2004-05-06 2006-08-29 Micron Technology, Inc. Memory controller method and system compensating for memory cell data losses
US7355875B2 (en) * 2004-06-21 2008-04-08 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device having capacitor arranged between power supplies to prevent voltage fluctuation
US20060010339A1 (en) * 2004-06-24 2006-01-12 Klein Dean A Memory system and method having selective ECC during low power refresh
US7340668B2 (en) 2004-06-25 2008-03-04 Micron Technology, Inc. Low power cost-effective ECC memory system and method
KR100608882B1 (ko) * 2004-06-30 2006-08-08 엘지전자 주식회사 무전극 조명기기의 도파관 시스템
CN100382085C (zh) * 2004-07-07 2008-04-16 华为技术有限公司 一种印制电路板中集成设计元件的版图设计方法和装置
US7116602B2 (en) * 2004-07-15 2006-10-03 Micron Technology, Inc. Method and system for controlling refresh to avoid memory cell data losses
US6965537B1 (en) * 2004-08-31 2005-11-15 Micron Technology, Inc. Memory system and method using ECC to achieve low power refresh
KR100587692B1 (ko) * 2004-11-05 2006-06-08 삼성전자주식회사 반도체 메모리 장치에서의 회로 배선 배치구조와 그에따른 배치방법
CN100433178C (zh) * 2005-04-11 2008-11-12 智元科技股份有限公司 存储器电路元件应用装置
JP4010336B2 (ja) 2005-06-30 2007-11-21 セイコーエプソン株式会社 集積回路装置及び電子機器
JP4186970B2 (ja) 2005-06-30 2008-11-26 セイコーエプソン株式会社 集積回路装置及び電子機器
JP4830371B2 (ja) 2005-06-30 2011-12-07 セイコーエプソン株式会社 集積回路装置及び電子機器
US7755587B2 (en) * 2005-06-30 2010-07-13 Seiko Epson Corporation Integrated circuit device and electronic instrument
KR100828792B1 (ko) * 2005-06-30 2008-05-09 세이코 엡슨 가부시키가이샤 집적 회로 장치 및 전자 기기
JP4661400B2 (ja) * 2005-06-30 2011-03-30 セイコーエプソン株式会社 集積回路装置及び電子機器
JP4010335B2 (ja) 2005-06-30 2007-11-21 セイコーエプソン株式会社 集積回路装置及び電子機器
JP4151688B2 (ja) 2005-06-30 2008-09-17 セイコーエプソン株式会社 集積回路装置及び電子機器
JP4010332B2 (ja) * 2005-06-30 2007-11-21 セイコーエプソン株式会社 集積回路装置及び電子機器
US7764278B2 (en) * 2005-06-30 2010-07-27 Seiko Epson Corporation Integrated circuit device and electronic instrument
JP4665677B2 (ja) 2005-09-09 2011-04-06 セイコーエプソン株式会社 集積回路装置及び電子機器
KR100824798B1 (ko) * 2005-11-08 2008-04-24 삼성전자주식회사 에지 서브 어레이에 전체 데이터 패턴을 기입할 수 있는 오픈 비트 라인 구조를 가지는 메모리 코어, 이를 구비한 반도체 메모리 장치, 및 에지 서브 어레이 테스트 방법
JP2007157944A (ja) * 2005-12-02 2007-06-21 Matsushita Electric Ind Co Ltd 半導体集積回路装置
US7584442B2 (en) 2005-12-09 2009-09-01 Lsi Corporation Method and apparatus for generating memory models and timing database
JP4586739B2 (ja) 2006-02-10 2010-11-24 セイコーエプソン株式会社 半導体集積回路及び電子機器
US7301828B2 (en) 2006-02-27 2007-11-27 Agere Systems Inc. Decoding techniques for read-only memory
US7324364B2 (en) * 2006-02-27 2008-01-29 Agere Systems Inc. Layout techniques for memory circuitry
EP1990836A4 (en) * 2006-02-28 2010-11-03 Fujitsu Ltd METHOD FOR MANUFACTURING SEMICONDUCTOR DEVICE, AND SEMICONDUCTOR MEMORY DEVICE
JP4790518B2 (ja) * 2006-07-12 2011-10-12 富士通株式会社 半導体記憶装置及び半導体記憶装置を備えた情報処理装置
US7894289B2 (en) 2006-10-11 2011-02-22 Micron Technology, Inc. Memory system and method using partial ECC to achieve low power refresh and fast access to data
US7900120B2 (en) 2006-10-18 2011-03-01 Micron Technology, Inc. Memory system and method using ECC with flag bit to identify modified data
JP5143413B2 (ja) * 2006-12-20 2013-02-13 オンセミコンダクター・トレーディング・リミテッド 半導体集積回路
JP5018074B2 (ja) * 2006-12-22 2012-09-05 富士通セミコンダクター株式会社 メモリ装置,メモリコントローラ及びメモリシステム
US7865857B1 (en) * 2007-01-23 2011-01-04 Cadence Design Systems, Inc. System and method for improved visualization and debugging of constraint circuit objects
WO2008126229A1 (ja) * 2007-03-29 2008-10-23 Fujitsu Limited 半導体集積回路および制御信号分配方法
US7733724B2 (en) * 2007-11-30 2010-06-08 Taiwan Semiconductor Manufacturing Company, Ltd. Controlling global bit line pre-charge time for high speed eDRAM
US8117567B2 (en) * 2007-12-03 2012-02-14 International Business Machines Corporation Structure for implementing memory array device with built in computation capability
US20090141530A1 (en) * 2007-12-03 2009-06-04 International Business Machines Corporation Structure for implementing enhanced content addressable memory performance capability
US7924588B2 (en) * 2007-12-03 2011-04-12 International Business Machines Corporation Content addressable memory with concurrent two-dimensional search capability in both row and column directions
US8649262B2 (en) * 2008-09-30 2014-02-11 Intel Corporation Dynamic configuration of potential links between processing elements
US7974124B2 (en) * 2009-06-24 2011-07-05 Sandisk Corporation Pointer based column selection techniques in non-volatile memories
JP4908560B2 (ja) * 2009-08-31 2012-04-04 株式会社東芝 強誘電体メモリ及びメモリシステム
KR101096185B1 (ko) * 2010-05-25 2011-12-22 주식회사 하이닉스반도체 데이터 전송회로 및 전송방법, 데이터 전송회로를 포함하는 메모리장치
US8605526B2 (en) * 2011-05-31 2013-12-10 Infineon Technologies Ag Memory reliability verification techniques
US8842473B2 (en) 2012-03-15 2014-09-23 Sandisk Technologies Inc. Techniques for accessing column selecting shift register with skipped entries in non-volatile memories
KR101394488B1 (ko) * 2012-10-02 2014-05-13 서울대학교산학협력단 전해질을 이용한 다이내믹 램
US9305614B2 (en) 2012-12-21 2016-04-05 Cypress Semiconductor Corporation Memory device with internal combination logic
JP6597628B2 (ja) * 2014-10-24 2019-10-30 株式会社ソシオネクスト 半導体集積回路装置
US9710590B2 (en) * 2014-12-31 2017-07-18 Arteris, Inc. Estimation of chip floorplan activity distribution
WO2016166631A1 (en) * 2015-04-13 2016-10-20 Semiconductor Energy Laboratory Co., Ltd. Decoder, receiver, and electronic device
CN105677968B (zh) * 2016-01-06 2019-09-13 深圳市紫光同创电子有限公司 可编程逻辑器件电路图绘制方法及装置
US10403352B2 (en) * 2017-02-22 2019-09-03 Micron Technology, Inc. Apparatuses and methods for compute in data path
CN111095417B (zh) * 2017-09-07 2023-08-29 松下控股株式会社 使用非易失性半导体存储元件的神经网络运算电路
JP2019160150A (ja) 2018-03-16 2019-09-19 株式会社東芝 半導体装置
JP7023149B2 (ja) 2018-03-22 2022-02-21 キオクシア株式会社 半導体装置
US10884664B2 (en) 2019-03-14 2021-01-05 Western Digital Technologies, Inc. Executable memory cell
US10884663B2 (en) 2019-03-14 2021-01-05 Western Digital Technologies, Inc. Executable memory cells
US11601656B2 (en) * 2021-06-16 2023-03-07 Western Digital Technologies, Inc. Video processing in a data storage device

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5212777A (en) * 1989-11-17 1993-05-18 Texas Instruments Incorporated Multi-processor reconfigurable in single instruction multiple data (SIMD) and multiple instruction multiple data (MIMD) modes and method of operation
JP2880547B2 (ja) * 1990-01-19 1999-04-12 三菱電機株式会社 半導体記憶装置
US5226134A (en) * 1990-10-01 1993-07-06 International Business Machines Corp. Data processing system including a memory controller for direct or interleave memory accessing
US5384745A (en) * 1992-04-27 1995-01-24 Mitsubishi Denki Kabushiki Kaisha Synchronous semiconductor memory device
JP3280704B2 (ja) * 1992-05-29 2002-05-13 株式会社東芝 半導体記憶装置
DE69329788T2 (de) * 1992-10-14 2001-08-02 Sun Microsystems, Inc. Direktzugriffspeicherentwurf
JP3307478B2 (ja) * 1993-09-13 2002-07-24 株式会社日立製作所 半導体集積回路装置
US5371396A (en) 1993-07-02 1994-12-06 Thunderbird Technologies, Inc. Field effect transistor having polycrystalline silicon gate junction
US5617367A (en) * 1993-09-01 1997-04-01 Micron Technology, Inc. Controlling synchronous serial access to a multiport memory
JPH07111100A (ja) * 1993-10-08 1995-04-25 Nec Corp テスト回路
JP2742220B2 (ja) * 1994-09-09 1998-04-22 松下電器産業株式会社 半導体記憶装置
JP3279101B2 (ja) * 1994-11-21 2002-04-30 ソニー株式会社 半導体集積回路
TW330265B (en) * 1994-11-22 1998-04-21 Hitachi Ltd Semiconductor apparatus
JP2915312B2 (ja) * 1995-02-10 1999-07-05 インターナショナル・ビジネス・マシーンズ・コーポレイション 半導体集積回路装置
US5535172A (en) * 1995-02-28 1996-07-09 Alliance Semiconductor Corporation Dual-port random access memory having reduced architecture
JP2629645B2 (ja) * 1995-04-20 1997-07-09 日本電気株式会社 半導体記憶装置
JP3824689B2 (ja) * 1995-09-05 2006-09-20 株式会社ルネサステクノロジ 同期型半導体記憶装置
JPH09161476A (ja) * 1995-10-04 1997-06-20 Toshiba Corp 半導体メモリ及びそのテスト回路、並びにデ−タ転送システム
SG74580A1 (en) * 1996-03-08 2000-08-22 Hitachi Ltd Semiconductor ic device having a memory and a logic circuit implemented with a single chip
JP3171097B2 (ja) * 1996-03-25 2001-05-28 日本電気株式会社 半導体記憶装置
US5953278A (en) * 1996-07-11 1999-09-14 Texas Instruments Incorporated Data sequencing and registering in a four bit pre-fetch SDRAM
US5675537A (en) * 1996-08-22 1997-10-07 Advanced Micro Devices, Inc. Erase method for page mode multiple bits-per-cell flash EEPROM

Also Published As

Publication number Publication date
US20020009834A1 (en) 2002-01-24
KR970067852A (ko) 1997-10-13
US6609236B2 (en) 2003-08-19
CN1077727C (zh) 2002-01-09
KR100439096B1 (ko) 2004-07-05
CN100356571C (zh) 2007-12-19
TW318933B (en) 1997-11-01
US5995439A (en) 1999-11-30
CN1380695A (zh) 2002-11-20
CN1344028A (zh) 2002-04-10
US20010014051A1 (en) 2001-08-16
CN1317764C (zh) 2007-05-23
US6335898B2 (en) 2002-01-01
SG74580A1 (en) 2000-08-22
US6097663A (en) 2000-08-01
KR100441865B1 (ko) 2004-07-27
CN1163484A (zh) 1997-10-29
KR100433738B1 (ko) 2004-06-04
US6246629B1 (en) 2001-06-12
US6069834A (en) 2000-05-30

Similar Documents

Publication Publication Date Title
KR100429945B1 (ko) 반도체집적회로장치
EP0600692B1 (en) Virtual ground read only memory circuit
US7016238B2 (en) Semiconductor memory device
US5877976A (en) Memory system having a vertical bitline topology and method therefor
CN103151070A (zh) 用于FinFET SRAM阵列集成电路的方法和装置
US20080247249A1 (en) Circuit and method for a sense amplifier
CN105070315B (zh) Sram存储单元、sram电路及其读写方法
US11694742B2 (en) Apparatuses and methods for internal voltage generating circuits
US20050111267A1 (en) Semiconductor integrated circuit device
CN110136758A (zh) 写入辅助
JP3345282B2 (ja) 半導体集積回路装置の設計方法
JP4474424B2 (ja) 半導体集積回路装置
US7095673B2 (en) Semiconductor memory device capable of operating at high speed
JP4355114B2 (ja) 半導体記憶装置
CN113450839B (zh) 微电子装置接口配置以及相关方法、装置和系统
JP2002190195A (ja) 半導体集積回路装置
JP3722307B2 (ja) 半導体集積回路
JP3546582B2 (ja) 半導体装置
EP1471535B1 (en) Distributed memory and logic circuits
US7940544B2 (en) Memory system having multiple vias at junctions between traces
CN117916804A (zh) 拆分读取端口锁存器阵列位单元

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130404

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140401

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee