KR100193193B1 - High-density memory with on-chip caches associated with N-direction sets and systems using them - Google Patents

High-density memory with on-chip caches associated with N-direction sets and systems using them Download PDF

Info

Publication number
KR100193193B1
KR100193193B1 KR1019900015750A KR900015750A KR100193193B1 KR 100193193 B1 KR100193193 B1 KR 100193193B1 KR 1019900015750 A KR1019900015750 A KR 1019900015750A KR 900015750 A KR900015750 A KR 900015750A KR 100193193 B1 KR100193193 B1 KR 100193193B1
Authority
KR
South Korea
Prior art keywords
memory
address
line
cache
row
Prior art date
Application number
KR1019900015750A
Other languages
Korean (ko)
Other versions
KR910008575A (en
Inventor
에이취.샤 야스윈
왕 아이-팽
아이엥가 나라시한
패텔 재내크
Original Assignee
윌리엄 비. 켐플러
텍사스 인스트루먼츠 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 윌리엄 비. 켐플러, 텍사스 인스트루먼츠 인코포레이티드 filed Critical 윌리엄 비. 켐플러
Publication of KR910008575A publication Critical patent/KR910008575A/en
Application granted granted Critical
Publication of KR100193193B1 publication Critical patent/KR100193193B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Dram (AREA)

Abstract

캐시 및 주 메모리와 동일한 것을 사용하기 위해 2-방향 셋트 관련 캐시 능력 온-칩 및 시스템을 갖고 있는 메모리가 기재되어 있다. 메모리는 각각의 그룹의 열이 저장용 다중 (예를 들어, 2개) 셋트의 주 감지 증폭기내에 로드가능 감지 내용을 갖는 국부 감지 증폭기에 의해 감지될 수 있다. 이때, 주 감지 증폭기는 정적 열 디코드 형태로 호출될 수 있는데, 열 그룹은 Y 어드레스에 의해 지정되고, 주 감지 증폭기 셋트는 다중 클럭 신호에 의해 선택된 지정된 그룹에 관련된다(에를들어, 유일한 열 어드레스 스트로브 신호는 각각의 셋트에 관련된다). 메모리의 다중방향 셋트 관련성은 개량된 캐시 히트 성능을 제공한다. 또한, 상술한 시스템은 CPU 및 제어기를 포함하는데, 제어기는 종래의 캐시 제어기로서 캐시 비교기, 더티 비트 및 LRU 스택 기능을 수행하지만, 종래의 dRAM제어기로서 (재생 개시, 행 및 열 어드레스의 다중화등과 같은)메모리 제어 기능도 수행한다. 그러므로, 이 시스템은 캐시 메모리뿐만 아니라, 주 메모리와 동일한 메모리 디바이스를 이용할 수 있다.A memory is described that has a two-way set associated cache capability on-chip and system to use the same as cache and main memory. The memory may be sensed by a local sense amplifier in which each group of rows has loadable sense content in a multiple (eg two) set of main sense amplifiers for storage. At this time, the main sense amplifier can be called in the form of static column decode, where the column group is specified by the Y address, and the main sense amplifier set is associated with the designated group selected by the multiple clock signal (e.g., the only column address strobe Signal is associated with each set). The multidirectional set association of memory provides improved cache hit performance. In addition, the above-described system includes a CPU and a controller, which performs a cache comparator, dirty bits, and LRU stack functions as a conventional cache controller, but as a conventional dRAM controller (such as multiplexing of reproduction, row and column addresses, etc.). It also performs memory control functions. Therefore, this system can use not only cache memory but also the same memory device as main memory.

Description

N-방향 셋트 관련 온-칩 캐시를 갖고 있는 고밀도 메모리 및 이를 사용하는 시스템High-density memory with on-chip caches associated with N-direction sets and systems using them

제1도는 본 발명에 따라 구성된 캐시 메모리의 관련성을 도시한 블럭도.1 is a block diagram showing the relevance of a cache memory constructed in accordance with the present invention.

제2도는 블럭 형태로 도시한 단일 메모리 어레이의 동작을 설명하는 전기적 선도.2 is an electrical diagram illustrating the operation of a single memory array in block form.

제3도는 제2도의 어레이들중 다중 어레이를 포함하는 본 발명에 따라 구성된 메모리를 도시한 개략도.3 is a schematic diagram illustrating a memory constructed in accordance with the present invention comprising multiple of the arrays of FIG.

제4도는 제3도의 메모리내의 국부 감지 증폭기와 주감지 증폭기 사이의 접속상태를 개략적으로 도시한 전기적 선도.4 is an electrical diagram schematically showing a connection state between a local sense amplifier and a main sense amplifier in the memory of FIG.

제5도는 제3도의 메모리용 어드레스 워드를 도시한 도면.FIG. 5 shows an address word for memory of FIG.

제6도는 제3도의 메모리를 사용하는 메모리 시스템을 블럭 형태로 도시한 전기적 선도.6 is an electrical diagram showing, in block form, a memory system using the memory of FIG.

제7a도 내지 제7c도는 제6도의 시스템 동작을 설명하는 흐름도.7A-7C are flowcharts illustrating the system operation of FIG.

제8도는 동작의 예시적 순서에 따라 제6도의 시스템 동작을 설명하는 타이밍도.FIG. 8 is a timing diagram illustrating the system operation of FIG. 6 in accordance with an exemplary sequence of operations.

제9도는 제2도의 전기적 선도에 관련하여 선택적인 실시예에 따라 단일 메모리 어레이의 동작을 블럭 형태로 설명하는 전기적 선도.9 is an electrical diagram illustrating in block form the operation of a single memory array in accordance with an alternative embodiment of the electrical diagram of FIG.

제10도는 제4도의 전기적 선도에 관련하여 본 발명의 선택적인 실시예에 대한 제3도의 메모리내의 국부 감지 증폭기와 주 감지 증폭사이의 접속 상태를 개략적으로 도시한 전기적 선도.FIG. 10 is an electrical diagram schematically illustrating a connection state between a local sense amplifier and a main sense amplification in the memory of FIG. 3 for an alternative embodiment of the present invention with respect to the electrical diagram of FIG.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

2 : 메모리 어레이 4A, 4B : 어드레스2: memory array 4A, 4B: address

4AO, 4BO: 서브-레지스터 6 : 서브-어레이4A O , 4B O : sub-register 6: sub-array

12 : 행 디코더 14 : 국부 감지 증폭기12: row decoder 14: local sense amplifier

16, 18 : 주 감지 증폭기 18 : 패스 게이트16, 18: main sense amplifier 18: pass gate

20 : 열 디코더 24 : 데이타 라인20: column decoder 24: data line

50 : CPU 52, 54 : 멀티플렉서50: CPU 52, 54: Multiplexer

60 : 제어기60: controller

본 발명은 반도체 메모리 디바이스에 관한 것으로, 더욱 상세하게 말하면 온-칩 캐시 (on-chip cache) 능력을 갖는 반도체 메모리에 관한 것이다.TECHNICAL FIELD The present invention relates to semiconductor memory devices, and more particularly, to a semiconductor memory having on-chip cache capability.

반도체 분야에서 계속되고 있는 경향은 동적 등속 호출메모리(dRAM)와같은 반도체 메모리 디바이스내에 칩당 기억 비트의 밀도를 증가시키려는 추세에 있다. 과거 10년 동안에, 각각 새로운 dRAM 세대는 종래의 세대보다 기억 장치 용량이 4배나 증가하였는데, 최근의 dRAM 칩들은 4메가 비트를 각각 포함한다. 이러한 메모리 밀도의 급진적 증가가 메모리 대역폭(bandwidth), 즉 사용자가 메모리내의 비트를 호출할 수 있는 속도를 증가시키기 위한 긴장이 고조되어 왔다. 메모리 밀도의 증가와 함께 메모리 대역폭을 개량하지 않았다면, 새로운 메모리 세대에 의해 제공된 추가 비트는 사용자의 유용성을 감소시킬 것이다.A continuing trend in the semiconductor arts is to increase the density of memory bits per chip in semiconductor memory devices, such as dynamic constant speed call memory (dRAM). In the past decade, each new dRAM generation has four times the memory capacity of the previous generation, with the latest dRAM chips each containing four megabits. This radical increase in memory density has heightened tension to increase memory bandwidth, ie the speed at which a user can call bits in memory. Unless the memory bandwidth has been improved with increasing memory density, the extra bits provided by the new memory generation will reduce the user's usefulness.

메모리 호출 시간만을 개선하는 것외에도 여러가지 구성 기술은 메모리 대역폭을 개량하는 방향으로 진행되어 왔다. 근대의 dRAM 디바이스들은 정적 열 디코드 호출 능력을 갖고 있는 것이 제공되는데, 억세스된 행내의 각각의 비트들이 행 어드레스 또는 열 어드레스 스트로브를 제공할 필요없이 열 어드레스를 제공함으로써만이 호출될 수 있다. 정적 및 열 디코드 능력을 갖고 있는 dRAM의 예는 텍사스 인스트루먼츠 인코포레이티드(Texas instruments Incorporated)사가 제조 및 판매하는 TMS4C1027 dRAM 및 1988년 6월 14일자로 허여되고, 텍사스 인스트루먼츠 인코포레이티드사에 양도된 미합중국 특허 제4,750,839호에 기재된 dRAM을 포함한다. 비디오 및 그래픽 응용을 위하여, 1987년 1월 27일자로 허여되고, 텍사스 인스트루먼츠 인코포레이티드사에 양도된 미합중국 특허 제4,639,890호, 1987년 1월 13일자로 허여된 미합중국 특허 제4,636,986호 및 1989년 2월 21일자로 허여된 미합중국 특허 제4,807,189호에 기술된 바와 같은 비디오 dRAM 디바이스는 호출된 행으로 부터 다중 비트가 로드될 수 있고, 메모리 어레이의 등속 호출과 비동기적으로 연속 출력되며, 이 등속 호출로 부터 독립적으로 연속 출력되는 레지스터를 포함한다.In addition to improving only memory call time, various construction techniques have been directed toward improving memory bandwidth. Modern dRAM devices are provided with static column decode calling capability, where each bit in an accessed row can only be called by providing a column address without having to provide a row address or column address strobe. Examples of dRAMs with static and thermal decode capability are TMS4C1027 dRAM manufactured and sold by Texas Instruments Incorporated and issued on June 14, 1988, and assigned to Texas Instruments Inc. DRAM as described in US Pat. No. 4,750,839. For video and graphics applications, U.S. Patent Nos. 4,639,890, issued January 27, 1987, and assigned to Texas Instruments Inc., and U.S. Patents 4,636,986 and January 1989 A video dRAM device as described in US Pat. No. 4,807,189, issued February 21, may be loaded with multiple bits from the called line and continuously output asynchronously with a constant speed call of the memory array, which is called a constant speed call. Contains registers that are output serially independently from.

시스템 메모리 이용의 개선에 대한 데이타 프로세싱 시스템에 사용된 일반적인 기술은 캐시 메모리를 사용한다는 것이다. 캐시 메모리는 어드레스된 메모리 위치 주변에 있는 다수의 주 메모리 위치로 부터 데이타를 저장하는 비교적 작고 고속 메모리이다. 캐시 동작의 이론은 시스템 중앙 처리 장치 (central processing unit; CPU)가 최근에 어드레스된 메모리 위치에 인접한 (어드레스 값의 견지에서) 메모리 위치를 자주 어드레스할 수 있다. 캐시에 저장된 각각의 데이타 그룹은 태크(tag), 또는 캐시에 저장된 데이타에 공통적인 메모리 어드레스부에 관련되고, 비교기는 CPU에 의해 제공된 메모리 어드레스부를 태그, 또는 캐시내에 저장된 데이타에 관련된 태그들과 비교한다. 양호한 메모리 어드레스가 태그값과 정합할 경우(즉, 캐시 히트가 발생할 경우)에 양호한 데이타를 주 메모리가 어드레스될 경우보다 더 빨리 제공하기 위해 캐시가 호출될 수 있으므로, 시스템의 유효 메모리 대역폭을 개선할 수 있다.A common technique used in data processing systems for improving system memory utilization is the use of cache memory. Cache memory is a relatively small and fast memory that stores data from multiple main memory locations around an addressed memory location. The theory of cache operation is that a system central processing unit (CPU) can often address memory locations (in terms of address values) adjacent to recently addressed memory locations. Each data group stored in the cache is associated with a tag, or a memory address portion common to the data stored in the cache, and the comparator compares the memory address portion provided by the CPU with a tag, or with tags associated with data stored in the cache. do. If a good memory address matches the tag value (that is, a cache hit occurs), the cache can be called to provide good data faster than if the main memory is addressed, thereby improving the effective memory bandwidth of the system. Can be.

양호한 메모리 어드레스의 적절한 부분이 캐시내에 저장된 데이타에 관련하여 태그와 정합 [즉, 캐시 실패(miss)']이 발생되지 않는 경우에, 주 메모리는 캐시 호출에 관련하여 지연이 발생하여 어드레스된 다음, 캐시 부분은 일반적으로 주 메모리로 부터의 데이타로, 새롭게 어드레스된 주 메모리 위치에 대한 근사 위치에 재충전된다. 캐시 대신에 주 메모리를 호출하는데 필요한 추가 시간 플러스, 근사 어드레스로부터 새로운 메모리 어드레스까지 캐시를 새로운 데이타로 채우는데 필요한 추가 시간은 통상적으로 실패 조건 (miss penalty)이라고 한다. 캐시를 재충전하는데 필요한 시간, 또는 양호한 메모리 어드레스용 주메모리에 대한 초기 호출은 주 메모리 싸이클 시간에 따라 변하고, 캐시내의 비트수 (또는, 일반적으로 캐시 라인이라 하는 부분으로서 소정의 태그에 관련된 캐시 부분)에 비례한다. 결과적으로, 실패 조건이 커지게 되면, 시스템의 유효 메모리 대역폭은 실패율이 비교적 떨어질지라도 감소할 수 있다. 캐시 대역폭이 개선됨에 따라 시스템 성능이 개선되며, 캐시 실패율이 감소한다는 것 뿐만 아니라, 각각의 캐시 실패에 관련된 실패 조건이 감소한다는 것이 중요하다.If an appropriate portion of a good memory address does not match a tag (ie cache miss') with respect to the data stored in the cache, then the main memory is addressed with a delay associated with the cache call, then The cache portion is generally data from main memory, refilled to an approximate location to the newly addressed main memory location. The additional time required to call the main memory instead of the cache, plus the additional time required to fill the cache with new data from the approximate address to the new memory address, is commonly referred to as a miss penalty. The time required to reload the cache, or the initial call to main memory for a good memory address, varies with the main memory cycle time, and the number of bits in the cache (or the portion of the cache associated with a given tag, generally referred to as a cache line). Proportional to As a result, if the failure condition becomes large, the effective memory bandwidth of the system may decrease even if the failure rate is relatively low. As cache bandwidth improves, it is important not only that system performance improves, and that the cache failure rate decreases, but also that the failure conditions associated with each cache failure decrease.

상술한 바와 같은 정적 열 디코드 특징을 갖고 있는 dRAM은 캐시 구조에 사용되는 것이 제안되어 왔다. 제11회차 콤퓨터 구조학에 관한 학술회 (IEEE 컴퓨터 협회 간행물, 1984) The llth Annual Symposium on Computer Architecture (IEEE Computer Society Press, 1984)에 발표된 제이. 굿맨 (J. Goodman) 및 엠-씨 치앙(M-C, Chiang)의 The use of Static Column RAM as a Memory Hierarchy, 페이지167 내지 174를 참조하십시요. 그러나, 이러한 메모리는 정적 열 버퍼내의 전체 메모리 행을 저장하므로, 캐시 히트는 어드레스가 단일 행내에 있는 것을 요구된다. 정적 열 퍼버내에 저장된 행의 크기가 다수의 캐시 히트(cache hit)를 허용할 수 있지만(예를 들어, 다수의 순차 어드레스가 어드레스될 수 있지만), 다수의 행 어드레스가 버퍼내에 최소한 부분적으로 저장될 경우에 이용할 수 있는 캐시 히트의 가능성이 감소된다.It has been proposed that dRAM with static column decode features as described above be used in cache structures. Jay, published in The 11th Annual Symposium on Computer Architecture (IEEE Computer Society Press, 1984). See The Use of Static Column RAM as a Memory Hierarchy, pages 167-174, by J. Goodman and M-C, Chiang. However, since this memory stores the entire memory row in the static column buffer, a cache hit requires that the address be in a single row. Although the size of the rows stored in the static column buffer may allow for multiple cache hits (eg, multiple sequential addresses may be addressed), multiple row addresses may be stored at least partially in the buffer. In this case, the likelihood of available cache hits is reduced.

본 발명의 목적은 온-칩 캐시(on-chip-cache)내의 다중방향(multiple-way_ 셋트 관련성으로 인해 실패율이 감소하는 메모리를 제공하기 위한 것이다.It is an object of the present invention to provide a memory in which a failure rate is reduced due to multiple-way_set association in an on-chip-cache.

본 발명의 또 다른 목적은 dRAM 칩내에 효과적으로 사용될 수 있는 메모리를 제공하기 위한 것이다.Another object of the present invention is to provide a memory that can be effectively used in a dRAM chip.

본 발명의 다른 목적은 캐시 능력을 이용하기 위해 최소형 오프-칩 논리(off-chip logic)를 필요로 하는 메모리를 제공하기 위한 것이다.Another object of the present invention is to provide a memory that requires the smallest off-chip logic to take advantage of cache capabilities.

본 발명의 또 다른 목적은 캐시의 내용에 영향을 끼치지 않고도 데이타 어레이를 재생할 수 있는 메모리를 제공하기 위한 것이다.Another object of the present invention is to provide a memory capable of reproducing a data array without affecting the contents of the cache.

본 발명의 다른 목적은 캐시의 일부분을 갱신하는 동안에 메모리내의 데이타를 재생할 수 있는 메모리를 제공하기 위한 것이다.Another object of the present invention is to provide a memory capable of reproducing data in the memory while updating a portion of the cache.

본 발명의 또 다른 목적은 이러한 메모리를 이용하는 시스템을 제공하기 위한 것이다.Another object of the present invention is to provide a system using such a memory.

본 발명은 각각의 래치들이 감지 증폭기의 열에 선택적으로 접속할 수 있는 메모리 어레이의 각 열에 관련된 다중 래치를 제공함으로써 반도체 메모리 칩내에 사용될 수 있다. 래치는 메모리 어레이의 열 셋트에 대응하는 셋트로 그룹을 이룬다. 선택된 메모리행으로 부터는 데이타는, 데이타가 판독 및 기입되고, 선택된 래치 셋트내에 로드될 수 있다. 각 셋트의 열에 관련된 다중 래치의 선택이 다중 열 어드레스 스트로브(strobe) 방식에 의해 달성된다.The present invention can be used in a semiconductor memory chip by providing multiple latches associated with each column of a memory array where each latch can selectively connect to a column of sense amplifiers. The latches are grouped into sets corresponding to the column sets of the memory array. From the selected memory row, data can be read and written, and loaded into the selected latch set. Selection of multiple latches associated with each set of columns is accomplished by a multi-column address strobe method.

이하, 첨부 도면을 참조하여 본 발명의 실시예에 대하여 상사하게 설명하겠다.Hereinafter, embodiments of the present invention will be described similarly with reference to the accompanying drawings.

제1도에는 본 발명을 사용함으로써 달성될 수 있는 캐시 동작의 개량상태를 설명하기 위해 본 발명의 셋트 관련성에 따른 메모리 어레이(2)의 구조가 도시되어 있다. 어레이(2)는 행 및 열로 정렬된 메모리 셀과 같은 근대 dRAM 디바이스에 사용된 한개의 트랜지스터 한개의 캐패시터 메모리 셀과 같은 장방형으로 정렬된 메모리 셀이다. 동작을 설명하기 위해, 어레이(2)는 0에서 31까지 번호가 붙여진 32개의 행등을 포함한다. 어레이(2)는 4개 그룹의 열로 세분되므로, 각각의 행은 각각 4개 그룹의 열을 포함한다. 따라서, 어레이(2)는 4개의 서브-어레이(60내지 63)으로 구성된다. 물론, 어레이의 요구된 아키텍처(architecture) 및 캐시 성능에 따라 변하는 4개의 서브-어레이(6)보다 작거나 많은 것이 선택적으로 사용된다.1 shows the structure of a memory array 2 according to the set relevance of the present invention to illustrate an improved state of cache operation that can be achieved by using the present invention. The array 2 is a rectangular aligned memory cell, such as one transistor one capacitor memory cell, used in modern dRAM devices such as row and column aligned memory cells. To illustrate the operation, array 2 includes 32 rows, numbered from 0 to 31. The array 2 is subdivided into four groups of columns, so each row contains four groups of columns each. Thus, the array 2 consists of four sub-arrays 6 0 to 6 3 . Of course, less or more than four sub-arrays 6, which vary depending on the required architecture and cache performance of the array, are optionally used.

어레이(2)는 레지스터(4A 및 4B)에 관련된다. 각각의 레지스터(4A 및 4B)에 포함된 비트 수는 어레이(2)내의 열의 수와 같다. 또한, 레지스터(4A 및 4B)는 서브-레지스터 (4A0내지 4A3및 4B0내지 4B3)으로 세분되는데, 각각의 서브-레지스터는 서브-어레이(6)들 중 한 어레이에 관련된다. 그러므로, 각각의 서브-어레이(6)은 서브-어레이에 관련되는 한 쌍의 서브-레지스터 (4A 및 4B)를 갖고 있다.Array 2 is associated with registers 4A and 4B. The number of bits contained in each register 4A and 4B is equal to the number of columns in the array 2. In addition, registers 4A and 4B are subdivided into sub-registers 4A 0 through 4A 3 and 4B 0 through 4B 3 , each sub-register being associated with one array of sub-arrays 6. Therefore, each sub-array 6 has a pair of sub-registers 4A and 4B associated with the sub-array.

개량된 캐시 동작은 어레이(2)용 다중 서브-레지스터(4A 및 4B)의 이용 능력에 의해 본 발명에 따라 이용할 수 있게 된다. 2개의 행의 서브-어레이(6)의 내용이 각각 캐시되는 것과 같은 구조는 2-방향(two-way) 셋트 관련성이라 할 수 있다. 물론, 추가 서브-레지스(4)가 n-방향 셋트 관련성을 제공하는 각각의 서브-어레이(6)에 제공될 수 있다(여기에서, n은 서브-어레이 행의 내용을 저장할 수 있는 서브-레지스터의 수이다). 각각의 서브-어레이(6)의 상이한 행으로 부터 데이타를 저장하는 다중 서브-레지스터(4A 및 4B)는 캐시 히트(hit)의 가능성을 증가시키므로, 캐시 성능이 개선된다. 제1도를 참조하면, 서브-어레이(60)는 이 두개 행들이 레지스터(4A 및 4B)에 저장되는 것을 나타내는 것을 중시한 행 (4 및 21)을 갖고 있다. 이와 같은 예에 있어서, 서브-어레이(60)의 행(4)의 내용은 서브-레지스터(4A0)에 저장되고, 행(21)의 내용은 서브-레지스터 (4B0)에 저장된다. 그러므로, 메모리가 행(4) 또는 행(21)에서 비트의 어드레스를 수신하고, 서브-어레이(60)에 관련된 그룹에서 열 어드레스를 수신하는 경우, 캐시히트가 발생하고, 데이타는 메모리의 캐시 사이클 기간동안 행 어드레스를 디코드시키지 않을 뿐만 아니라, 행을 활성화시키지 않고도 해독(또는, 기입)할 수 있다.The improved cache operation is made available according to the present invention by the availability of multiple sub-registers 4A and 4B for the array 2. A structure such that the contents of two rows of sub-arrays 6 are each cached can be referred to as a two-way set association. Of course, an additional sub-register 4 can be provided for each sub-array 6 providing n-direction set relevance (where n is a sub-register that can store the contents of the sub-array row). Is the number of). Multiple sub-registers 4A and 4B that store data from different rows of each sub-array 6 increase the likelihood of cache hits, thereby improving cache performance. Referring to FIG. 1, the sub-array 6 0 has rows 4 and 21 that emphasize that these two rows are stored in registers 4A and 4B. In this example, the contents of row 4 of sub-array 6 0 are stored in sub-register 4A 0 , and the contents of row 21 are stored in sub-register 4B 0 . Therefore, when the memory receives the address of the bit in row 4 or row 21 and the column address in the group associated with the sub-array 6 0 , a cache hit occurs and the data is cached in the memory Not only does it decode the row address during the cycle period, it can also decrypt (or write) without activating the row.

그 밖의 다른 서브-어레이 (61내지 63)는 그들의 각각의 서브-레지스터 (4A 및 4B)에 저장된 상이한 행으로 부터 데이타를 가질 수 있다. 예를 들어, 서브-어레이(61)의 행(7)의 내용은 서브-어레이(4A1)에 저장되고, 서브-어레이(61)의 행(13)의 내용은 서브-레지스터(4B1)에 저정된다. 각각의 행의 내용은 서브-레지스터(4A 또는 4B)에 저장되고, 제1도에 도시된 바와 같이, 서브-어레이(61)은 상부의 2개의 행 [서브-어레이 (61)의 행(7)]은 하부 서브-레지스터(4B)에 저장될 수 있다. 서브-어레이(62)에 관련하여, 행(4)의 내용은 서브-레지스터(4B2)에 저장되고, 상술한 바와 같이, 서브-어레이(60)로 부터 행(4)의 내용은 서브-레지스터(4A0)에 저장된다. 따라서, 상이한 서브-어레이(6)내의 동일한 행의 내용은 레지스터(4A 및 4B)들중 상이한 한개의 레지스터에 저장될 수 있다.Other sub-arrays 6 1 to 6 3 may have data from different rows stored in their respective sub-registers 4A and 4B. For example, the sub-array (61) to (7) information, the sub-of-stored in the array (4A 1), the sub-information, sub-line 13 of the array (61), - a register (4B Is stored in 1 ). The contents of each row are stored in the sub-registers 4A or 4B, and as shown in FIG. 1, the sub-array 6 1 is divided into two rows of upper sub-arrays 6 1 . (7) may be stored in the lower sub-register 4B. Regarding the sub-array 6 2 , the contents of the row 4 are stored in the sub-register 4B 2 , and as described above, the contents of the row 4 from the sub-array 6 0 are stored. Stored in the sub-register 4A 0 . Thus, the contents of the same row in different sub-arrays 6 may be stored in one of the different registers 4A and 4B.

제2도를 참조하면, 제1도에 관련되어 상술한 바와 같이 2-방향 셋트 관련성으로 구성된 메모리 어레이(10)의 동작이 도시되어 있다. 어레이(10)은, 동적(dynamic) 메모리 셀과 같은 장방형의 메모리 셀이고, 본 분야에 공지된 바와 같이 행 및 열로 정렬된다. 행 디코더(12)는 어드레스 라인(Xn)을 통해 외부로 제공된 어드레스 신호의 행 어드레스부를 수신하고, 행 어드레스 값에 대응하는 어레이(10)내의 행을 활성화시키기 위해 행 어드레스를 디코드 한다. 물론, 클럭 회로, 해독/기입 제어 회로, 입력/출력회로 및 제2도에 도시하지는 않았지만, 동적 RAM의 필요에 따라서 관습적으로 포함된 그밖의 다른 회로로 제공할 수 있다.Referring to FIG. 2, there is shown the operation of memory array 10 configured in two-way set association as described above with respect to FIG. Array 10 is a rectangular memory cell, such as a dynamic memory cell, arranged in rows and columns as is known in the art. The row decoder 12 receives the row address portion of the address signal provided externally through the address line Xn, and decodes the row address to activate the row in the array 10 corresponding to the row address value. Of course, the clock circuit, the read / write control circuit, the input / output circuit, and other circuits not conventionally shown in FIG. 2 but customarily included according to the needs of the dynamic RAM can be provided.

종래의 dRAM에 있어서, 어레이(10)은 각각의 열은 국부 감지(local sense) 증폭기(14)에 관련된다. 행이 행 디코더(12)에 의해 선택되는 어레이(10)의 각각의 메모리 셀에 있어서, 국부 감지 증폭기(14)들중 한 증폭기가 종래의 방식으로 저장된 데이타 상태를 감지하도록 동작할 수 있고, (감지된 데이타 상태를 메모리 셀에 기입되지 않은 열의 해독 사이클 또는 기입 사이클의 경우), 본 발명의 n-방향 셋트 관련성을 실행하기 위해 국부 감지 증폭기(14)의 셋트는, 행의 선택이 내부에 저장된 데이타 상태를 파손시키기 때문에 캐시로서 사용될 수 없다. 따라서, 래치 셋트는 캐시 모드로 저장될 n개 셋트의 데이타를 저장할 수 있는 본 발명에 따른 메모리에 제공된다. 더욱이 이러한 래치 정렬은 어레이(10)을 세분하지 않고도 어레이(10)의 분할을 제공할 수 있는데, 그 이유는 캐시 라인 셋트의 호출이 단지 물리적 행의 데이타의 일부만을 호출할 수 있기 때문이다. 래치 정렬을 사용하므로써, 단일 캐시 세그먼트에 관련된 것보다 더 많은 메모리 셀이 행을 활성화시키므로써 재생될 수 있다.In a conventional dRAM, the array 10 is associated with a local sense amplifier 14 where each row is local. For each memory cell of the array 10 in which a row is selected by the row decoder 12, one of the local sense amplifiers 14 can operate to sense the stored data state in a conventional manner, ( Set of local sense amplifiers 14 to implement the n-direction set association of the present invention, in the case of a read cycle or a write cycle of a column that has not been sensed in a memory cell. It cannot be used as a cache because it destroys the data state. Thus, a latch set is provided in the memory according to the present invention capable of storing n sets of data to be stored in cache mode. Moreover, such latch alignment can provide partitioning of the array 10 without subdividing the array 10, since a call to a set of cache lines can only call a portion of the data of a physical row. By using latch alignment, more memory cells can be regenerated by activating a row than is associated with a single cache segment.

단일 라인이 국부 감지 증폭기(14)와 어레이(10) 사이에 접속된 것처럼 도시되었지만, 한쌍의 상보(complementary) 비트 라인은 각각의 국부 감지 증폭기(14) 및 어레이(10)내의 열 사이에 접속된다. 일반적으로, 감지 증폭기가 한쌍의 비트 라인들사이의 상이한 변화를 감지하는 것과 같이, 통신이 근대 동적 RAM 디바이스에서 용이하게 이루어지는데, 비트라인들 중 한 비트 라인은 선택된 메모리 셀에 접속되고, 이들중 다른 비트 라인은 더미(dumny), 또는 기준 셀에 접속된다. 더욱이, 데이타가 통신되는 제2도의 라인들 중 다른 라인은 단일 라인으로 도시되어 있지만, 본 발명은 상보쌍의 라인들이 이러한 통신에 사용되는 경우에 동일하게 응용할 수 있다.Although a single line is shown as connected between the local sense amplifier 14 and the array 10, a pair of complementary bit lines are connected between each local sense amplifier 14 and a column in the array 10. . In general, as a sense amplifier senses different changes between a pair of bit lines, communication is facilitated in a modern dynamic RAM device, where one bit line is connected to a selected memory cell, of which The other bit line is connected to a dummy or reference cell. Moreover, while the other of the lines of FIG. 2 through which data are communicated is shown as a single line, the present invention is equally applicable when lines of complementary pairs are used for such communication.

주 감지 증폭기(16)은 본 발명에 따른 n-방향 (이 경우, 양방향)셋트 관련성을 실행하기 위해 제2도의 실시예에 사용된다. 각각의 국부 감지 증폭기(14)는 주 감지 증폭기(16) (즉, 16A 및 16B)에 관련되므로, 패스 게이트(15) 및 패스 게이트(18A 또는 18B)들중 한 게이트를 통해 통신한다. 패스 게이트(15)는 메모리에 제공된 열 어드레스로 부터 구동되는 라인 선택 신호(RL)에 의해 제어되고, 제1도에 관련하여 상술한 바와 같은 특정 서브-어레이내의 행의 일부인 양호한 캐시 라인을 선택한다. 제2도에 도시된 예에 있어서, 각각의 라인은 RLO, RL1,...RLn의 순서로 각각의 라인 선택 신호(RL)에 관련된다. 관련된 라인 선택 신호(RL)이 하이(high) 상태일때, 이에 접속된 패스 게이트(15)는 전도성이여서 국부 감지 증폭기(14)의 데이타 상태를 통신한다. 제2도의 예에 있어서, 라인 선택 신호 (RLO)는 국부 감지 증폭기(140, 141및 142)에 관련된다. 따라서, 라인 선택 신호(RL) 및 패스 게이트(15)를 통하여, 캐시 라인에 관련된 서브-어레이내에서 어레이(10)의 분할이 달성되고, 어레이(10)의 전체 물리적 행은 행 디코더(12)에 의한 행의 선택에 의해 재생된다.The main sense amplifier 16 is used in the embodiment of FIG. 2 to implement the n-direction (in this case bidirectional) set association according to the invention. Each local sense amplifier 14 is associated with the main sense amplifier 16 (ie, 16A and 16B) and thus communicates through one of the pass gate 15 and the pass gate 18A or 18B. Pass gate 15 is controlled by a line select signal RL driven from a column address provided to the memory and selects a good cache line that is part of a row in a particular sub-array as described above with reference to FIG. . In the example shown in FIG. 2, each line is associated with each line select signal RL in the order of RL O , RL 1 ,... RL n . When the associated line select signal RL is high, the pass gate 15 connected thereto is conductive to communicate the data state of the local sense amplifier 14. In the example of FIG. 2, the line select signal RL O is related to the local sense amplifiers 14 0 , 14 1 and 14 2 . Thus, through the line select signal RL and the pass gate 15, partitioning of the array 10 within the sub-arrays associated with the cache line is achieved, and the entire physical row of the array 10 is decoded by the row decoder 12. Playback is performed by selecting a row by.

제2도의 양호한 메모리의 2-방향 셋트 관련성은 패스 게이트(18A 및 18B)에 각각 관련된 셋트 선택 신호 (SSA 및 SSB)에 의해 제어된다. 후술한 바와 같이, 셋트 선택 신호(SSA 및 SSB)는 종래의 동적 RAM에 제공된 종래의 열 어드레스 스트로브(CAS_) 클럭과 유사한 방식으로 메모리에 제공되는 클럭 신호로 부터 양호하게 유도된다. 셋트 선택 신호(SSA)는 어써트될때, 적절한 라인 선택 신호(RL)에 의해 선택된 라인에 대해 패스 게이트(18A)를 통해, 주 감지 증폭기(16A)로 국부 감지 증폭기(14)의 내용의 통신이 엔에이블된다. 이와 마찬가지로, 패스 게이트(18B)가 전도성이 되도록 셋트 선택 신호(SSB)가 어써트될때, 선택된 라인에 관련되는 국부 감지 증폭기(14)의 내용은 주 감지 증폭기(16B)로 통신될 수 없다.The two-way set relevance of the preferred memory of FIG. 2 is controlled by the set select signals SSA and SSB respectively associated with pass gates 18A and 18B. As described below, the set select signals SSA and SSB are well derived from the clock signal provided to the memory in a manner similar to the conventional column address strobe (CAS_) clock provided to the conventional dynamic RAM. When the set select signal SSA is asserted, communication of the contents of the local sense amplifier 14 to the main sense amplifier 16A, via the pass gate 18A, for the line selected by the appropriate line select signal RL is established. Is enabled. Similarly, when the set select signal SSB is asserted such that the pass gate 18B is conductive, the contents of the local sense amplifier 14 associated with the selected line cannot be communicated to the main sense amplifier 16B.

또한, 셋트 선택 신호(SSA 및 SSB)는 열 디코더(20)으로 통신된다. 또한 열 디코더(20)은 어드레스 라인(Yn)으로 도시된 메모리에 제공된 어드레스의 열 어드레스 부분을 수신한다. 본 실시예에 있어서, 열 디코더(20)은 캐시 라인이 로드될때 선택된 라인내의 국부 감지 증폭기(14)로 부터 데이타를 수신하기 위해 주 감지 증폭기(16)들중 양호한 증폭기를 엔에이블시키기 위한 것이고, 또한 특정 비트를 호출할 수 있는 경우에 데이타를 해독하거나 데이타를 기입하기 위해 주 감지 증폭기(16)들중 선택된 1개의 주 감지 증폭기를 데이타 라인 (DA 및 DB)에 접속시키기 위한 것이다.The set select signals SSA and SSB are also communicated to the column decoder 20. The column decoder 20 also receives a column address portion of the address provided to the memory shown by the address line Yn. In this embodiment, the column decoder 20 is for enabling the better of the main sense amplifiers 16 to receive data from the local sense amplifiers 14 in the selected line when the cache line is loaded, It is also intended to connect one of the main sense amplifiers 16 selected from the main sense amplifiers 16 to the data lines DA and DB in order to read or write data when a particular bit can be called.

본 발명의 실시예에 있어서, 열 디코더(20)은 2개의 부분, 즉 LSB부분 (20a) 및 MSB 부분 (20b)와 기능적으로 관련될 수 있다. LSB 부분 (20a)는 패스 게이트 (18A 및 18B)를 통해 통신된 라인상의 데이타 상태를 감지하기 위해 주 감지 증폭기(16A 또는 16B) 셋트가 엔에이블되는 것을 선택하기 위한 셋트 선택 신호 (SSA 및 SSB)를 포함한다. MSB 부분(20b)는 캐시 라인내의 비트가 데이타 라인(DA 또는 DB) [주 감지 증폭기(16A)의 셋트용 데이타 라인 (DA) 주 감지 증폭기(16B)의 셋트용 데이타 라인 (DB)로의 통신용 주 감지 증폭기(16)들중 한개 (또는, 2개 이상)의 주 감지 증폭기를 선택하도록 호출되는 것을 나타내는 열 어드레스를 디코드한다. 물론, 선택된 라인에 대응하는 주 감지 증폭기(16)의 셋트를 엔에이블시키기 위한 열 디코더(20)의 그밖의 다른 선택적인 구성은 본 분야에 숙련된 자들이 알고 있는 것으로서 사용될 수 있다.In the embodiment of the present invention, the column decoder 20 may be functionally related to two parts, that is, the LSB part 20a and the MSB part 20b. The LSB portion 20a is a set select signal (SSA and SSB) for selecting whether the main sense amplifier 16A or 16B set is enabled to sense the data state on the line communicated through the pass gates 18A and 18B. It includes. The MSB portion 20b indicates that the bits in the cache line are the data lines (DA or DB) [data lines for the set of main sense amplifiers 16A (DA) for communication to the set data lines for the main sense amplifiers 16B (DB). Decodes a column address indicating that it is called to select one (or more than two) of the sense amplifiers 16 primary sense amplifiers. Of course, any other optional configuration of column decoder 20 for enabling a set of main sense amplifiers 16 corresponding to the selected line can be used as is known to those skilled in the art.

SSA 및 SSB 신호의 상태에 따라 메모리의 동작을 제어하기 위한 선택적인 실시예가 제9도에 도시되어 있다. 본 발명의 실시예에 있어서, SSA 및 SSB 신호는 열 디코더(20)으로는 통신되지 않지만, 대신에 출력 엔에이블 회로(21)으로는 통신된다. 또한, 출력 엔에이블 회로(21)은 주 감지 증폭기(16)으로 부터 데이타 라인(DA 및 DB)를 수신한다. 신호 SSA 및 SSB가 활성화되는데 응답하여 [선택된 캐시 라인내의 주 감지 증폭기(16)의 셋트(A) 또는 셋트(B)를 각각 선택하여], 출력 엔에이블 회로(21)은 데이타 라인 (DA) 또는 데이타 라인(DB)를 외부 회로와의 통신용 데이타 라인(D)에 접속시킨다. 본 발명의 선택적인 실시예는 제2도에 도시된 것 이상의 개량된 캐시 해독 성능을 제공할 수 있으므로, 열 디코더(20)이 신호(SSA 및 SSB)의 상태에 응답하는 제2도의 실시예와는 대조적으로 신호 (SSA 및 SSB)는 열 디코드(20)에 의한 열 어드레스의 디코딩 다음의 메모리 사이클내의 지점까지의 캐시 히트 해독 동작시에는 불필요하다. 그러므로, 제9도의 메모리에 접속된 캐시 제어기는, 열 디코더(20)이 캐시 태그 비교 동작중에 열 어드레스를 디코딩하는 것과 같이 캐시 히트가 발생되는지의 여부 (SSA 및 SSB가 발생되는 신호의 어써션에 의해 나타나는지의 여부)를 결정하기 위한 추가 시간을 필요로 한다.An alternative embodiment for controlling the operation of the memory in accordance with the state of the SSA and SSB signals is shown in FIG. In the embodiment of the present invention, the SSA and SSB signals are not communicated to the column decoder 20 but instead to the output enable circuit 21. The output enable circuit 21 also receives data lines DA and DB from the main sense amplifier 16. In response to the signal SSA and SSB being activated (selecting either set A or set B of the main sense amplifiers 16 in the selected cache line, respectively), the output enable circuit 21 is connected to the data line DA or the like. The data line DB is connected to the data line D for communication with an external circuit. An alternative embodiment of the present invention may provide improved cache decryption performance beyond that shown in FIG. 2, so that the column decoder 20 responds to the state of the signals SSA and SSB. In contrast, the signals SSA and SSB are unnecessary during the cache hit decryption operation up to the point in the memory cycle following the decoding of the column address by the column decode 20. Therefore, the cache controller connected to the memory of FIG. 9 determines whether a cache hit is generated, such as the column decoder 20 decodes the column address during the cache tag comparison operation (by the assertion of the signal from which the SSA and SSB are generated). Additional time is required to determine whether or not it appears.

제3도를 참조하면, 본 발명에 사용되는 양효한 4M 비트 메모리(100)의 배치도가 도시되어 있다. 도시된 메모리는 4096개행 x 1024개열로서 물리적으로 배향되는데, 메모리셀은 32개의 서브-어레이(10)을 포함한다. 각각의 서브-어레이(10)은 메모리 셀은 256개 물리적 행 및 512개 물리적 열을 갖고 있다. 행 디코더(12)는 2개 부분으로 분리되는데, 메모리(100)의 각각의 종료부에서의 한 디코더가 이에 관련된 2048개 행들중 한 행을 선택한다. 열이 행보다 물리적으로 많고 다중화 어드레스 메모리 재생면에서 행 어드레스 스트로브에 관련하여 행 어드레스를 제공함으로써 종래 방식으로 달성되기 때문에, 한개 이상의 행이 각각의 사이클 동안 엔에이블되어 선택될 수 있다. 이러한 예에 있어서, 행은 행디코더(12)의각각의 부분에 의해 선택되는데, 2개의 선택된 행이 입력/출력으로 선정되는 것을 최상위 열 어드레스 비트가 선택된다. 물론, 본 명세서에 기술된 본 발명은 그밖의 다른 여러가지 어드레싱 구조에 따라 행 및 열의 정방형(square) 어레이 또는 그밖의 다른 장방형 구성에 응용할 수 있다.Referring to FIG. 3, a layout of a valid 4M bit memory 100 used in the present invention is shown. The illustrated memory is physically oriented as 4096 rows x 1024 columns, where the memory cell comprises 32 sub-arrays 10. Each sub-array 10 has 256 physical rows and 512 physical columns of memory cells. The row decoder 12 is divided into two parts: one decoder at each end of the memory 100 selects one of the 2048 rows related thereto. Since more columns are physically than rows and are achieved in the conventional manner by providing row addresses in relation to row address strobes in terms of multiplexed address memory regeneration, one or more rows may be enabled and selected for each cycle. In this example, the row is selected by each portion of the row decoder 12, with the highest column address bit being selected such that the two selected rows are selected as input / output. Of course, the invention described herein is applicable to square arrays of rows and columns, or other rectangular configurations, in accordance with other various addressing structures.

각각의 어레이(10)들 사이에는 국부 감지 증폭기(14)의 뱅크(bank)가 있다. 본 발명의 양호한 실시예에 있어서, 국부 감지 증폭기(14)는 1988년 10월 31일자로 출원되고, 텍사스 인스트루먼츠 인코포레이티드 (Texas Instruments Incorporated)사에 양도된 계류중인 미합중국 특허 출원 제265,112호에 기재된 바와 같이 인접 어레이(10)들사이에 공유한다. 이러한 구성면에서의 국부 감지 증폭기(14)는 1987년 10월 20일자로 허여되고, 텍사스 인스트루먼츠 인코포레이티드사에 양도된 미합중국 특허 제4,701,885호에 기재된 바와 같이, 폴드(fold)형 비트 라인 구조 또는 의사-폴드(quasi-fold)형 비트 라인 구조가 유리하게 사용될 수 있다. 물론, 본 분야에 숙련된 기술자들에게 널리 공지된 국부 감지 증폭기의 그밖의 다른 정렬이 선택적으로 사용될 수 있다.Between each array 10 is a bank of local sense amplifiers 14. In a preferred embodiment of the invention, local sense amplifier 14 is filed on October 31, 1988, and assigned to pending US patent application No. 265,112, assigned to Texas Instruments Incorporated. Share between adjacent arrays 10 as described. The local sense amplifier 14 in this configuration, as described in US Pat. No. 4,701,885, issued Oct. 20, 1987, and assigned to Texas Instruments, Inc. Quasi-fold bit line structures may be advantageously used. Of course, other arrangements of local sense amplifiers well known to those skilled in the art may optionally be used.

국부 감지 증폭기(14)의 각각의 뱅크는 상술한 바와 같은 주 감지 증폭기(16A 및 16B)와 통신하는데, 선택된 통신은 후술하게될 방식으로 제어된다. 주 감지 증폭기(16A 및 16B)의 한쌍의 뱅크는 메모리(100)의 사분의 (quadrant)내에 있는 8개 어레이(10)에 관련된다. 제3도에 도시된 바와 같이, 8개 어레이(10)들의 그룹에 관련된 주 감지 증폭기(16A 및 16B)의 각각의 뱅크는 4개의 부분으로 세분된다. 이 부분들은 메모리(100)의 캐시 라인에 대응한다. 이러한 예에 있어서, 메모리(100)은 각각 16개의 캐시 라인에 대해 2개의 셋트를 갖고 있는데, 각각의 셋트는 한 어레이(10)내에서 선택된 행으로 부터 128개 연속 비트를 저장한다. 제1도에 관련하여 상술한 바와 같이, 16개의 캐시 라인의 각각 2개 셋트는 상이한 어드레스 행으로 부터 128개 비트를 저장하고, 제3도의 예에 있어서 동일한 캐시 라인에 대한 그밖의 다른 셋트뿐만 아니라, 인접 캐시 라인이 상이한 어레이(10)의 행으로 부터 128개 비트를 저장할 수 있다는 것을 의미한다. 제3도의 예에 있어서, 캐시 라인은 사분의에 따라 그룹되므로, 각각의 사분의의 8개 셋트는 단지 사분의내의 8개 어레이(10)에 관련된 데이타만을 저장할 수 있다. 주 감지 증폭기 셋트(16A 및 16B)의 선택적인 정렬은 본 분야에 숙련된 기술자들에게 공지되어 있으므로, 이러한 정렬은 배치 및 상호접속이 복잡한 것에 따른 비용을 고려하여 어레이(10)으로의 캐시 라인의 지정에 대한 융통성을 변화시킬 수 있다.Each bank of local sense amplifiers 14 is in communication with main sense amplifiers 16A and 16B as described above, with the selected communication controlled in a manner to be described below. A pair of banks of main sense amplifiers 16A and 16B are associated with eight arrays 10 in a quadrant of memory 100. As shown in FIG. 3, each bank of main sense amplifiers 16A and 16B associated with a group of eight arrays 10 is subdivided into four parts. These portions correspond to cache lines in memory 100. In this example, memory 100 has two sets for each of 16 cache lines, each set storing 128 consecutive bits from the selected row in one array 10. As described above with respect to FIG. 1, each two sets of 16 cache lines store 128 bits from different address lines, as well as other sets for the same cache line in the example of FIG. This means that adjacent cache lines can store 128 bits from the rows of different arrays 10. In the example of FIG. 3, the cache lines are grouped according to a quarter, so eight sets of each quadrant can only store data related to eight arrays 10 within a quarter. Since the selective alignment of the main sense amplifier sets 16A and 16B is known to those skilled in the art, such alignment is necessary for the placement of cache lines into the array 10 in view of the cost of complex placement and interconnection. You can change the flexibility of the assignment.

열 디코더(20)은 메모리(100)의 동일 측상에 있는 어레이(10)의 2개의 사분의에 관련된 주 감지 증폭기(16A 및 16B)의 대향 뱅크들 사이에 배치된다. 본 발명의 양호한 실시예에 있어서, 열 디코드(20)은 [메모리(100)이 단일 입력 및 단일 출력을 갖고 있는 경우에] 전체 메모리의 열들중 한 열을 선택하기 위해 2개의 부분으로 세분된다. 물론, 그밖의 다른 종래의 디코딩 구조는 양호하게 배치하는데 필요한 열을 선택하도록 사용될 수 있다. 제3도의 구성은 4M 비트 메모리와 같은 대규모 동적 RAM에 특히 유리하게 적용된다.The column decoder 20 is disposed between opposite banks of the main sense amplifiers 16A and 16B related to two quarters of the array 10 on the same side of the memory 100. In the preferred embodiment of the present invention, the column decode 20 is subdivided into two parts to select one of the columns of the entire memory (if the memory 100 has a single input and a single output). Of course, other conventional decoding schemes can be used to select the columns needed for good placement. The configuration of FIG. 3 is particularly advantageous for large dynamic RAMs such as 4M bit memory.

제4도를 참조하면, 제3도에 도시되어 있는 메모리(100)의 사분의에 대한 주 감지 증폭기(16A 및 16B)와 국부 감지 증폭기(14)의 각각의 뱅크의 통신이 도시되어 있다. 어레이(10)은 명확하게 하기 위해 제4도에는 도시하지 않았지만, 제3도에 도시된 바와 같이 국부 감지 증폭기(14)의 각각의 수평 그룹들사이에 배치된다. 제3도의 예에 있어서, 사분의에 대한 주 감지 증폭기(16A 및 16B)의 뱅크에 관련된 8개의 어레이(10)이 있는데, 주 감지 증폭기(16A 및 16B)의 뱅크는 각각 8개 어레이로 부터의 데이타를 각각 수신할 수 있는 4개의 캐시 라인으로 각각 세분된다.Referring to FIG. 4, the communication of each bank of main sense amplifiers 16A and 16B and local sense amplifier 14 to a quarter of the memory 100 shown in FIG. Array 10 is not shown in FIG. 4 for clarity, but is disposed between each horizontal group of local sense amplifiers 14 as shown in FIG. In the example of FIG. 3, there are eight arrays 10 associated with banks of main sense amplifiers 16A and 16B for one quarter, with banks of main sense amplifiers 16A and 16B respectively from eight arrays. Each is divided into four cache lines that can each receive data.

제5도를 참조하면, 1개씩 (단일 비트 입력 및 단일 비트 출력)의 메모리 구조인 경우에 제3도 및 제4도에 도시된 4M 비트 메모리(100)에 대한 어드레스 맵이 도시되어 있다. 4M 비트(222비트)를 모두 어드레스 하기 위해, 22개의 어드레스 비트가 요구되는데, 종래의 다중화 동적 RAM과 같이 최상위 11개 비트는 행 어드레스 부분이고, 최하위 11개 비트는 열 어드레스 부분이다. 상술한 바와 같은 어드레스 신호의 행 어드레스 부분은 열 디코더(20)의 각 측상의 2개 행을 선택하므로, 메모리(100)의 각각의 사분의내에서 행이 선택된다. 행 어드레스 신호들중의 3개의 최상위 비트는 각 사분의의 8개 어레이가 선택된 행을 포함하는 것을 선택하고, 8개의 최하위 비트는 선택된 어레이(10)내의 행이 선택되는 것을 결정한다. 어드레스의 열 어드레스 부분에 관련하여, 4개의 최상위 비트는 16개의 캐시 라인들이 선택되는 것을 결정하고 [즉, 이러한 예에 있어서, 라인 선택 신호 RL0 내지 RL15)를 발생시키기 위해 선택되고], 열 어드레스의 7개 최하위 비트는 선택된 캐시 라인내의 양호한 비트를 선택한다.Referring to FIG. 5, an address map for the 4M bit memory 100 shown in FIGS. 3 and 4 in the case of one by one (single bit input and single bit output) memory structures is shown. To address all 4M bits (2 22 bits), 22 address bits are required, as in the conventional multiplexed dynamic RAM, the top 11 bits are the row address portion and the bottom 11 bits are the column address portion. Since the row address portion of the address signal as described above selects two rows on each side of the column decoder 20, a row is selected within each quadrant of the memory 100. As shown in FIG. The three most significant bits of the row address signals select that each of the eight arrays includes the selected row, and the eight least significant bits determine which row in the selected array 10 is selected. Regarding the column address portion of the address, the four most significant bits determine that sixteen cache lines are to be selected (i.e., in this example are selected to generate line selection signals RL0 to RL15), and that of the column address. The seven least significant bits select the good bits in the selected cache line.

다시 제4도를 참조하면, 주 감지 증폭기로 통신될 국부 감지 증폭기(14)의 그룹의 선택이 도시되어 있다. 제2도에 관련하여 상술한 라인 선택 신호 (RL0 내지 RLn)는 선택된 라인내의 국부 감지 증폭기의 내용을 주 감지 증폭기(16A 및 16B)에 접속시키는데 사용된다. 국부 감지 증폭기의 다중 그룹이 본 발명의 실시예에 사용되기 때문에, 행 어드레스도 국부 감지 증폭기(14)의 그룹이 관련된 주 감지 증폭기(16)에 전송되는 것을 선택하도록 사용되어야만 한다. 따라서, 패스 트랜지스터(15)의 게이트는 적절한 어레이를 선택하는 디크드된 신호[소정의 캐시 라인에 관련된 8개 어레이용 신호(AR0 내지 AR7)과 같은 제4도에 도시된 디코드된 신호] 및 라인 선택 신호(RL0 내지 RLn)의 논리 AND 의해 제어된다.Referring again to FIG. 4, the selection of a group of local sense amplifiers 14 to be communicated to the main sense amplifier is shown. The line select signals RL0 to RLn described above in connection with FIG. 2 are used to connect the contents of the local sense amplifiers in the selected line to the main sense amplifiers 16A and 16B. Since multiple groups of local sense amplifiers are used in the embodiments of the present invention, a row address must also be used to select which group of local sense amplifiers 14 is sent to the associated main sense amplifier 16. Thus, the gate of pass transistor 15 has a decoded signal (decoded signal shown in FIG. 4, such as signals for eight arrays AR0 through AR7 associated with a given cache line) and line selecting the appropriate array. It is controlled by the logical AND of the selection signals RL0 to RLn.

제3도에 배치도로 도시된 공유 감지 증폭기로 인해, 각각의 사분의내의 8개 어레이(10)에 1-1 대응관계로 제공되는 국부 감지 증폭기(14)의 8개 뱅크는 없지만, 대신에 9개의 물리적 뱅크가 있다. 본 명세서는 국부 감지 증폭기(14)의 물리적 위치에서 보다 각각의 사분의내의 8개 어레이(10)의 메모리 위치에 대응하도록 기재되어 있다.Due to the shared sense amplifiers shown in the schematic diagram in FIG. 3, there are no eight banks of local sense amplifiers 14 provided in a 1-1 correspondence to the eight arrays 10 in each quadrant, but instead 9 There are two physical banks. This specification is described to correspond to the memory location of the eight arrays 10 in each quadrant rather than at the physical location of the local sense amplifier 14.

해독 동작에 있어서, 라인 선택 신호(RL0)에 관련된 캐시 라인이 열 어드레스의 4개의 최상위 비트에 의해 선택되면, 선택된 행에 대해 국부 감지 증폭기(14)에 관련되는 패스 트랜지스터(15)가 엔에이블될 수 있다. 예를 들어, 선택된 행이 사분의의 상부로부터 제2 어레이내에 있다면, 신호 (AR1 및 RL0)의 논리 AND가 엔에이블되고, 제4도에 열 (0 및 1)로 도시되어 있으며, 제4도의 상부로부터 국부 감지 증폭기(14)의 제2 셋트에 관련된 신호를 수신하는 128개의 패스 트랜지스터(15)가 엔에이블될 수 있다. 그다음, 이 국부 감지 증폭기(14)들의 내용은 캐시 라인내의 모든 128개의 비트에 대한 주 감지 증폭기(16A 및 16B)의 양호한 셋트로의 통신용 주데이타 라인(240및 240_)상에 배치될 수 있다.In the decryption operation, if the cache line associated with the line select signal RL0 is selected by the four most significant bits of the column address, the pass transistor 15 associated with the local sense amplifier 14 is enabled for the selected row. Can be. For example, if the selected row is in the second array from the top of the quarter, the logical AND of the signals AR1 and RL0 is enabled, shown in columns 4 and 4 in FIG. 128 pass transistors 15 may be enabled that receive signals from the top associated with a second set of local sense amplifiers 14. The contents of these local sense amplifiers 14 are then placed on the main data lines 24 0 and 24 0 _ for communication to a good set of main sense amplifiers 16A and 16B for all 128 bits in the cache line. Can be.

상술한 바와 같이, 신호(SSA 및 SSB)는 양호한 캐시 라인에 관련된 셋트가 국부 감지 증폭기(14)로부터 데이타를 수신하기 위한 것을 결정하는 클럭 신호이다. 또한, 클럭(SSA 및 SSB)는 클럭 (SSA 및 SSB)들중 양호한 한 클럭이 양호한 캐시 라인을 선택하는데 필요한 열 디코딩동안 제공되는 경우에 다중화 어드레스 동적 RAM에 종래 방식으로 사용된 열 어드레스 스트로브 신호로서 사용될 수 있다. 그러므로, 관련된 패스 게이트(18A 또는 18B)중 한 패스 게이트가 어드레스 캐시 라인의 각각의 열로 엔에이블되므로, 주 데이타 라인(240및 240_)의 상태는 주 감지 증폭기(18A 및 18B)를 통하는 양호한 셋트로 통신될 수 있다.As discussed above, signals SSA and SSB are clock signals that determine which set associated with the good cache line is to receive data from local sense amplifier 14. The clocks SSA and SSB are also used as column address strobe signals conventionally used in multiplexed address dynamic RAM when a good one of the clocks SSA and SSB is provided during the column decoding needed to select a good cache line. Can be used. Therefore, since one of the associated pass gates 18A or 18B is enabled in each column of the address cache line, the state of the main data lines 24 0 and 24 0_ is good through the main sense amplifiers 18A and 18B. Can be communicated in a set.

해독 동작을 달성하기 위해, 열 디코더(20)은 열 어드레스 신호를 수신하고, 주 데이타 라인(240및 240_)를 수신하고 저장하기 위해 주 감지 증폭기(16A 및 16B)를 양호한 셋트로 엔에이블시킬 수 있다. 이러한 기능은 클럭 신호(SSA 및 SSB)와 함께 4개의 최상위 열 어드레스 비트상의 논리 연산으로 부터 결정된다. 선택되지 않은 캐시 라인의 주 감지 증폭기(16A 및 16B) 및 선택된 캐시 라인의 선택되지 않은 셋트에 관련된 주 감지 증폭기(16A 및 16B)가 이에 관련된 주 데이타 라인(24)상의 데이타 상태(불확실한 상태)를 감지하지 못하도록 엔에이블이 요구된다. 물론, 이러한 감지는 내장된 데이타를 소멸시킬 수 있다.To achieve the decryption operation, column decoder 20 receives the column address signal and enables main sense amplifiers 16A and 16B to a good set to receive and store main data lines 24 0 and 24 0_ . You can. This function is determined from the logical operation on the four most significant column address bits with the clock signals SSA and SSB. The main sense amplifiers 16A and 16B of the unselected cache line and the main sense amplifiers 16A and 16B associated with the unselected set of the selected cache line determine the data state (uncertain state) on the associated main data line 24. An enable is required to prevent detection. Of course, such sensing can destroy embedded data.

주 감지 증폭기(16)은 종래 설계 방식에 따라 구성될 수 있다. 이러한 감지 증폭기의 예는 1987년 12월 29일 자로 허여되고, 텍사스 인트트루먼츠 인코포레이티드사에 양도된 미합중국 특허 제4,716,320호에 기재되어 있다. 이러한 감지 증폭기는 감지 동작을 엔에이블시키는 능동풀-업(pull-up) 및 풀-다운 (pull-down) 디바이스를 포함하고, 디아비스가 온-상태(on-state) 인 경우에는 감지 데이타에 따라 감지 증폭기의 상태를 래치한다. 더욱이, 감지 증폭기는 감지 동작전의 공동 전위에서 감지노드(node)가 같아지도록 프리차지(precharge) 동안 턴온(ture on)되는 등화 (equalization) 트랜지스터를 포함한다.The main sense amplifier 16 can be configured according to conventional design schemes. Examples of such sense amplifiers are described in US Pat. No. 4,716,320, issued Dec. 29, 1987, and assigned to Texas Instruments. Such sense amplifiers include active pull-up and pull-down devices that enable sensing operation, and if diavis is on-state, Accordingly latch the state of the sense amplifier. Moreover, the sense amplifier includes an equalization transistor that is turned on during precharge such that the sense node is equal at the common potential before the sense operation.

본 발명의 실시예에 따른 메모리(100)에 있어서, 주감지 증폭기(16)의 동작은 관련된 캐시 라인이 풀-업, 풀-다운, 및 등화 트랜지스터의 케이트에서 전압을 제어함으로써 선택되는지의 여부에 따라 열 디코더(20)에 의헤 제어된다. 명백하게 하기 위해, 열 디코더(20)을 주 감지 증폭기(16)에 접속시키는 라인은 제4도에 도시하지 않았다. 선택된 캐시 라인에 관련되는 주 감지 증폭기(16)및 해독 동작 중에 새로운 데이타로 로드되는 셋트에 있어서, 열 디코더(20)은 주 감지 증폭기(16)내의 풀-업 및 풀-다운 트랜지스터를 턴 오프시키고, 이들 주 감지 증폭기(16)이 새로운 데이타 상태를 수신하기위해 프리차지되도록 등화 트랜지스터를 턴온시킬 수 있다. 새로운 데이타가 이들 주 감지 증폭기(16)에 대한 비트 라인(24)상에 제공될 때에, 열 디코더(20)은 관련된 데이타 상태를 감지 및 래치하기 위한 적절한 사이클 시간동안 풀-업 및 풀-다운 트랜지스터를 활성화시킬 수 있고, 등화 디바이스를 턴 오프시킬 수 있다.In the memory 100 according to the embodiment of the present invention, the operation of the main sense amplifier 16 depends on whether the associated cache line is selected by controlling the voltage at the pull-up, pull-down, and gate of the equalizing transistor. Accordingly controlled by the column decoder 20. For clarity, the line connecting the column decoder 20 to the main sense amplifier 16 is not shown in FIG. In the main sense amplifier 16 associated with the selected cache line and the set loaded with new data during the decode operation, the column decoder 20 turns off the pull-up and pull-down transistors in the main sense amplifier 16 and The equalization transistors can be turned on such that these main sense amplifiers 16 are precharged to receive new data states. When new data is provided on the bit lines 24 for these main sense amplifiers 16, the column decoder 20 pulls up and pulls down transistors during the appropriate cycle time to sense and latch the associated data state. Can be activated and the equalization device can be turned off.

해독 동작 중에 선택되지 않은 캐시 라인에 관련되는 주 감지 증폭기(16) 및 선택된 캐시 라인의 선택되지 않은 셋트에 관련되는 주 감지 증폭기(16)에 있어서, 열 디코더(20)은 능동 풀-업 및 풀-다운 트랜지스터를 온 상태로 유지하고, 등화 트랜지스터를 오프 상태로 유지하므로, 데이타는 내부에서 래치된 상태를 유지한다.In the main sense amplifier 16 associated with the unselected cache line and the main sense amplifier 16 associated with the unselected set of selected cache lines during the decryption operation, the column decoder 20 is active pull-up and pull-down. By keeping the -down transistor on and the equalizing transistor off, the data remains internally latched.

또한, 열 디코더(20)은 메모리(100)에 대해 외부 출력용으로 선택된 캐시 라인의 선택된 셋트내의 주 감지 증폭기(16A 및 16B)들 중 양호한 한개의 주 감지 증폭기를 데이타 라인(DA 또는 DB)에 접속시키는 패스 트랜지스터(22A 및 22B)를 통해 선택된 캐시 라인내의 요구된 비트를 선택하는 기능을 수행한다.The column decoder 20 also connects to the data line DA or DB one of the main sense amplifiers 16A and 16B in the selected set of cache lines selected for external output to the memory 100. Selects the required bits in the selected cache line via pass transistors 22A and 22B.

기입 동작에 있어서, 양호한 셋트에 관련된 데이타 라인(DA 또는 DB)는 메모리(100)내에 저장될 양호한 데이타 상태로 구동될 수 있다. 열 디코딩이 달성된 후, 데이타 라인(DA 또는 DB)상의 구동된 상태는 경우에 따라서 선택된 캐시 라인내의 선택된 열의 주 감지 증폭기(16A 또는 16B)로 통신될 수 있는데, 기입된 데이타는 캐시 라인의 양호한 셋트로 저장된다. 역기입(write back) 동작에 있어서, 전체의 캐시 라인이 선택된 라인에 대해 국부 감지 증폭기(14)내에 기입되므로, 선택된 행내의 메모리 셀내에 기입되는 경우에, 패스 트랜지스터(18A 또는 18B)가 엔에이블되므로, 주 감지 증폭기(16A 또는 16B)의 내용은 선택된 셋트에 대해 주 데이타 라인(24 및 24_)상에 각각 배치된다. 선택된 캐시 라인내의 국부 감지 증폭기(14) 그룹용 패스 트랜지스터(15)는 해독 동작시에 엔에이블될 수 있고, 국부 감지 증폭기(14)는 종래의 동적 메모리로서의 회복 동작중에(선택된 라인내에는 없는)모든 국부 감지 증폭기(14)에서의 데이타 상태를 수신하는 선택된 행내의 메모리 셀을 갖는 주 데이타 라인(24 및 24_) 상의 데이타 상태를 수신한다.In the write operation, the data line DA or DB associated with the good set can be driven to a good data state to be stored in the memory 100. After column decoding is achieved, the driven state on the data line (DA or DB) may optionally be communicated to the main sense amplifier 16A or 16B of the selected column in the selected cache line, with the data written being good in the cache line. Stored in a set. In write back operation, the entire cache line is written into the local sense amplifier 14 for the selected line, so that the pass transistor 18A or 18B is enabled when writing into the memory cell in the selected row. Therefore, the contents of main sense amplifier 16A or 16B are placed on main data lines 24 and 24_, respectively, for the selected set. The pass transistor 15 for the group of local sense amplifiers 14 in the selected cache line can be enabled during a read operation, and the local sense amplifier 14 is in a recovery operation as a conventional dynamic memory (but not in the selected line). Receive the data state on main data lines 24 and 24_ with memory cells in the selected row that receive the data state in all local sense amplifiers 14.

선택된 캐시 라인의 선택된 셋트내의 주 감지 증폭기(16)의 응답을 제어하고, 그밖의 다른 주 감지 증폭기(16)내에 이미 저장된 데이타를 보유하는 그밖의 다른 선택적인 구조는 본 분야에 숙련된 기술자들이 알고 있다. 제10도에는 실리콘 영역을 희생시켜 가면서 역기입 동작시에 반드시 수반되는 전력 소모를 감소시키기에 양호한 선택적인 실시예가 도시되어 있다. 본 발명의 실시예에 있어서, 패스 게이트(18A 및 18B)는 SSA 및 SSB 신호에 의해 제어될 뿐만 아니라, 캐시 라인 어드레스로도 제어될 수 있다. 캐시 라인(0)내의 주 감지 증폭기(16)에 관련되는 패스 게이트(18A)들은 제4도의 예인 경우인 클럭 (SSA)에 의해서가 아니라 클럭(SSA) 및 캐시 라인 선택 신호 (RL0)의 논리 AND에 의해 제어된 게이트들을 갖고 있다. 이와 마찬가지로, 캐시 라인(1)내의 주 감지 증폭기(16)에 관련되는 패스 게이트(18A)들은 클럭 (SSA) 및 캐시 라인 선택 신호 (RL1)의 논리 AND에 의해 제어된 게이트들을 갖고 있다. 이와 유사한 논리 AND 들은 그밖의 다른 캐시 라인을 제어하고 클럭 (SSB)에 관련하여 게이트(18B)를 통과한다. 패스 게이트(18)의 제어에 있어서, 상술한 바와 같이 열 디코더(20)에 의한 주 감지 증폭기(16)의 내부 트랜지스터들의 제어가 불필요하게 된다. 역기입 동작중에 상기 정렬로 활성 전력이 절약될 수 있으므로, 선택되지 않은 캐시 라인내에 있지만, 선택된 캐시라인에 활성화된 (즉, SSA 또는 SSB 신호에 의해 선택된) 동일 셋트에 관련되는 주 감지 증폭기(16)은 선택된 캐시 라인의 역기입 동작중에 데이타 라인 (24)의전체 용량성 부하를 구동시키는 불필요성은 없어지게 된다.Other optional structures for controlling the response of the main sense amplifier 16 in the selected set of selected cache lines and retaining data already stored in the other main sense amplifiers 16 are known to those skilled in the art. have. FIG. 10 shows an alternative embodiment that is desirable to reduce the power consumption necessarily incurred in back write operations at the expense of silicon regions. In the embodiment of the present invention, the pass gates 18A and 18B are not only controlled by the SSA and SSB signals, but also by the cache line address. The pass gates 18A associated with the main sense amplifier 16 in the cache line 0 are logical AND of the clock SSA and the cache line select signal RL0, not by the clock SSA as in the example of FIG. It has gates controlled by. Similarly, pass gates 18A associated with main sense amplifier 16 in cache line 1 have gates controlled by the logic AND of clock SSA and cache line select signal RL1. Similar logic ANDs control other cache lines and pass through gate 18B with respect to clock SSB. In the control of the pass gate 18, as described above, the control of the internal transistors of the main sense amplifier 16 by the column decoder 20 becomes unnecessary. The active power can be saved with the alignment during backwrite operations, so that the main sense amplifier 16 is in the unselected cache line but is associated with the same set that is active on the selected cache line (ie, selected by the SSA or SSB signal). ) Eliminates the need to drive the full capacitive load of data line 24 during the write back operation of the selected cache line.

제6도를 참조하면, 제3도 및 제4도에 관련하여 상술한 바와 같이 구성된 메모리(100)을 사용하는 시스템 및 이의 동작이 도시되어 있다. 중앙 처리 장치 (CPU; 50)은 제6도에 도시된 바와 같은 X 어드레스 부분 및 Y 어드레스 부분을 포함하는 어드레스 버스에 의한 메모리 호출을 포함하는 종래의 데이타 처리 동작을 수행한다. 핸드쉐이킹(handshaking) 제어 신호I(REQUEST 및 ACKNOWLEDGE)는 라인 REQUEST 상에 신호를 어써트 (assert) 시키고, REQUEST 라인상의 신호를 수신하는 주변 장치로 부터 라인(ACKNOWLEDGE) 상의 신호를 수신하는 것과 같은 종래 방식으로 주변 장치를 엔에이블시키기 위해 CPU에 의해 제공된다.Referring to FIG. 6, there is shown a system using the memory 100 configured as described above with respect to FIGS. 3 and 4 and its operation. The central processing unit (CPU) 50 performs a conventional data processing operation including a memory call by an address bus including an X address portion and a Y address portion as shown in FIG. The handshaking control signals I (REQUEST and ACKNOWLEDGE) are conventional, such as asserting a signal on the line REQUEST and receiving a signal on the line (ACKNOWLEDGE) from a peripheral device receiving the signal on the REQUEST line. Is provided by the CPU to enable the peripheral device in a manner.

제6도의 시스템 있어서, 주변 장치는 메모리 제어기(60)이다. 본 발명의 실시예내의 메모리 제어기(60)은 메모리(100)이 상술한 동적 메모리인 경우에 캐시 메모리의 동작을 제어하는데 필요한 본 분야에 널리 공지된 제어 기능들을 제공할 뿐만 아니라, 동적 메모리의 동작을 제어하는데 유용하다. 그러므로, 제어기(60)은 후술한 기능을 수행하기 위한 집적 회로의 블럭으로 구성할 수 있고, 상기한 기능들을 수행하기 위한 주문(custom) 직접 회로(또는, 회로 셋트)일 수 있다. 본 분야에 숙련된 기술자들이라면 후술한 기능적 요구 조건을 제공하는 경우에 제어기(60)을 구성할 수 있다고 생각한다.In the system of FIG. 6, the peripheral device is a memory controller 60. The memory controller 60 in the embodiment of the present invention not only provides the control functions well known in the art for controlling the operation of the cache memory when the memory 100 is the above-mentioned dynamic memory, but also operates the dynamic memory. Useful for controlling Therefore, the controller 60 may be configured as a block of integrated circuits for performing the functions described below, and may be a custom integrated circuit (or circuit set) for performing the functions described above. Those skilled in the art believe that the controller 60 can be configured when providing the functional requirements described below.

캐시 호출 및 동작을 제어하기 위해, 제어기(60)은 행 어드레스를 지정하는 어드레스 부분 및 캐시 라인을 캐시 메모리(100)의 캐시 라인내에 통상적으로 저장될 공지 캐시 호출 및 동작과 비교하는 캐시 태그 비교기의 기능을 포함한다. 상술한 실시예에 있어서, 캐시 라인은 Y, 또는 열 어드레스 (제5도)의 최상위4개 비트들에 의해 지정된다. 이러한 비교는 제어기(60), 즉 텍사스 인스트루먼츠 인코포레이티드 (Taxas Instruments Incorporated)사가 제조 및 시판하는 SN74ACT2151, SN74ACT2152, SN74ACT2153, 및 SN74ACT2154 캐시 태그 비교기에 의해 종래 방식으로 행해진다.In order to control cache calls and operations, the controller 60 may include a cache tag comparator that compares the address portion and cache lines that specify row addresses with known cache calls and operations that would typically be stored within the cache lines of the cache memory 100. Includes features In the above embodiment, the cache line is designated by Y, or the most significant four bits of the column address (figure 5). This comparison is done in a conventional manner by the controller 60, namely the SN74ACT2151, SN74ACT2152, SN74ACT2153, and SN74ACT2154 cache tag comparators manufactured and marketed by Texas Instruments Incorporated.

제어기(60)내에 포함된 그밖의 다른 캐시 제어 기능들은 캐시 라인이 캐시 실패의 경우에 교체되는 것을 결정하기 위한 스택(stack) 또는 그밖의 다른 임의 회로를 포함한다. 교체 결정을 행하기 위한 여러가지 공지된 기술이 사용될 수 있는데, 이러한 기술들중 한 기술로는 가장 최근에 사용된 라인이 실패의 경우에 캐시 라인을 교체하도록 호출되는 순서로 회로가 트랙을 유지하는 경우에 최근에 사용된 (LRU) 스택 방법이다.Other cache control functions included in the controller 60 include a stack or some other circuit for determining that the cache line is replaced in case of cache failure. Various known techniques for making replacement decisions can be used, one of which techniques is when the circuit keeps track in the order in which the most recently used line is called to replace the cache line in case of failure. Recently used (LRU) stack method.

제6도에 도시된 시스템용의 양호한 교체 알고리즘은 상세하게 후술되어 있다. 임의 교체 방식을 포함하는 그밖의 다른 기술은 캐시 메모리 분야에 널리 공지된 방식으로 선택적으로 사용될 수 있다. 제어기(60)에 의해 양호하게 제공된 다른 제어 기능은 기입 동작이 특정 캐시 라인에서 행해지는지의 여부를 나타내는 더티 비트(dirty bit)라고 일반적으로 칭하는 플래그(flag)이다. 한 셋트의 더티 비트 플래그는 제어기(60)에 내장될 수 있는데, 한 셋트의 비트는 메모리의 캐시 라인의 각각에 대응한다.The preferred replacement algorithm for the system shown in FIG. 6 is described in detail below. Other techniques, including any replacement scheme, may optionally be used in a manner well known in the cache memory art. Another control function well provided by the controller 60 is a flag, commonly referred to as a dirty bit, indicating whether a write operation is performed on a particular cache line. One set of dirty bit flags may be embedded in the controller 60, where one set of bits corresponds to each of the cache lines of the memory.

dRAM 제어 기능에 관련하여 제어기(60)은 텍사스 인스트루먼츠 인코포레이티드사가 제조 및 시판하는 SN74ALS2967, SN74ALS2968, SN74ALS6301, SN74 ALS6302, 및 THCT4502B 동적 메모리 제어기와 유사한 방식으로 등속 호출 메모리로서 메모리(100)의 호출을 제어하도록 동작할 수 있다. 이러한 메모리 제어 기능들은 캐시 메모리(100)으로의 클럭 신호(RASB, CAS1B 및 CAS2B); 및 캐시 메모리(100)에 관련하여 상술한 SSA 및 SSB 셋트 선택 신호를 발생시키기 위한 신호 (CAS1B 및 CAS2B)의 통신을 포함한다. 또한, 제어기(60)은 CPU(50)으로 부터 해독/기입 신호 (R/W)를 수신하여, 라인 (WRITEB) 상의 대응 신호를 캐시 메모리(100)으로 제공한다. 이러한 목적을 달성하기 위해, 끝부분에 B라는 문자(즉, RASB, AS1B, CAS2B 및 WRITEB)로 지정되는 상술한 각각의 신호들은 로우(low) 논리 레벨을 달성할 수 있다는 것을 의미한다. 또한, 제어기(60)은 제어기(60) 자체에 의해 제공된 X 어드레스와, 캐시 메모리(100)에 접속된 어드레스 버스상에 어써션을 위해 CPU(50)에 의해 제공된 Y 어드레스사이에서 선택하기 위해 제어 라인(51)을 통해 어드레스멀티플렉서(MUX; 52)를 제어한다. 멀티플렉서(52)의 기능은 상술한 THCT4502B 동적 RAM 제어기와 유사한 방식으로 제어기(60) 내에 사용될 수 있다. 이와 마찬가지로, 제어기(60)은, CPU(50)에 의해 어써트된 해독/기입(READ, WRITE) 신호의 상태에 따라 변하는 캐시 메모리(100)의 Q(출력) 및 D(입력)라인에 접속된 데이타 입력 (DATA IN) 및 데이타 출력(DATA OUT) 버스를 CPU(50)에 접속된 양방향 DATA 버스에 접속시키기 위해 제어라인 (53)을 통해 데이타 멀티플렉서(54)를 제어한다.Regarding the dRAM control function, the controller 60 calls the memory 100 as a constant velocity call memory in a manner similar to the SN74ALS2967, SN74ALS2968, SN74ALS6301, SN74 ALS6302, and THCT4502B dynamic memory controllers manufactured and marketed by Texas Instruments Inc. To control the operation. These memory control functions include clock signals (RASB, CAS1B and CAS2B) to the cache memory 100; And communication of signals CAS1B and CAS2B for generating the SSA and SSB set selection signals described above with respect to cache memory 100. The controller 60 also receives the read / write signal R / W from the CPU 50 and provides a corresponding signal on the line WRITEB to the cache memory 100. To achieve this goal, each of the signals described above, designated at the end by the letter B (ie, RASB, AS1B, CAS2B and WRITEB), means that a low logic level can be achieved. The controller 60 also controls the control line to select between the X address provided by the controller 60 itself and the Y address provided by the CPU 50 for assertion on the address bus connected to the cache memory 100. The control unit 51 controls the address multiplexer (MUX) 52. The functionality of the multiplexer 52 can be used within the controller 60 in a manner similar to the THCT4502B dynamic RAM controller described above. Similarly, the controller 60 is connected to the Q (output) and D (input) lines of the cache memory 100 that change depending on the state of the read / write (READ, WRITE) signals asserted by the CPU 50. The data multiplexer 54 is controlled through the control line 53 to connect the data input DATA IN and DATA OUT buses to the bidirectional DATA bus connected to the CPU 50.

부수적으로, 제어기(60)은 메모리(100)의 재생이 필요한 경우를 결정하고, 메모리(100)으로의 필요한 신호의 발생에 의한 재생을 실행하는 기능을 양호하게 수행한다. 상술한 THCT4502B 제어기는 재생이 필요한 경우를 결정하기 위한 타이머(timer)를 포함하는 재생을 달성하기 위한 회로를 포함한다. 본 발명의 시스템에 있어서, 캐시 호출이 캐시 실패가 조우되지 않는한 재생 동작동안 계속될 수 있기 때문에 메모리(100)의 재생은 버스트(burst) 형태가 아니라 분배 형태로 행해지는 것이 양호하다. 널리 공지된 바와 같이, 메모리의 단일행을 주기적으로 재생함으로써 행해지는데, 재생 기간은 특정 재생 기간(예를 들어, 4 msec)를, 재생 사이클이 수행되는 주파수에 도달하도록 전체 메모리(예를 들어, 256)를 재생하는데 필요한 재생 사이클(25 ㎲ec)의 수로 나눔으로써 결정된다. 이와 대조적으로, 버스트 재생은 재생 기간의 추이시에 모든 필요한 재생 사이클을 연속적으로 수행함으로써 행해진다(예를 들어, 256 연속 재생 사이클은 4 msec의 추이 기간동안 수행된다). 캐시 실패가 있을 만한 가능성은 모든 재생 사이클을 연속적으로 수행하는데 필요한 기간중에 상당히 높고, 단일 재생 사이클을 수행하는 기간중에 상당히 낮기 때문에, 제6도에 도시된 시스템의 캐시 성능은 버스트 재생이 아니라 분배 재생이 수행되는 경우에 최적하다. 따라서, 본 발명의 실시예에 따른 제어기(60)은 단일 재생 사이클에 대한 요구 조건을 주기적으로 발생시키는데, 기간은 메모리(100)의 특정 재생 시간 및 전체 재생이 필요한 재생 사이클의 수에 따라 변한다.Incidentally, the controller 60 determines the case where the reproduction of the memory 100 is required, and performs the function of performing the reproduction by the generation of the required signal to the memory 100 well. The above-described THCT4502B controller includes circuitry for achieving regeneration including a timer for determining when regeneration is needed. In the system of the present invention, the replay of the memory 100 is preferably made in a distributed form rather than a burst form because the cache call can be continued during the reproducing operation unless a cache failure is encountered. As is well known, this is done by periodically replaying a single row of memory, where the replay period is a specific replay period (e.g. 4 msec) and the entire memory (e.g., It is determined by dividing by the number of regeneration cycles (25 ms) required to regenerate 256. In contrast, burst regeneration is performed by continuously performing all necessary regeneration cycles at the transition of the regeneration period (e.g., 256 consecutive regeneration cycles are performed during a transition period of 4 msec). Since the likelihood of a cache failure is considerably higher during the period required to perform all replay cycles, and significantly lower during the period during which a single replay cycle is performed, the cache performance of the system shown in FIG. 6 is distributed replay, not burst regeneration. It is optimal when this is done. Thus, the controller 60 according to an embodiment of the present invention periodically generates a requirement for a single regeneration cycle, the period of which varies depending on the specific regeneration time of the memory 100 and the number of regeneration cycles for which the entire regeneration is required.

본 발명의 양호한 실시예에 따른 메모리(100)은 재생될 다음행에 대응하는 행 어드레스를 저장하기 위한 온-칩 계수기를 갖고 있다. 재생 사이클의 완료시에, 메모리(100)은 다음 재생 동작에 비례하여 온-칩 계수기의 내용을 증가시킨다. 1980년 6월 10일 자로 허여되고, 텍사스 인스트루먼츠 인코포레이트사에 양도된 미합중국 특허 제4,207,618호에 기재된 동적 메모리내에 온-칩 계수기가 포함된다. 이러한 온-칩 기억장치는 양호하므로, 제어기(60)은 캐시 실패가 발생하지 않는한 어드레스 버스상의 재생 어드레스를 메모리(100)에 제공할 필요가 없지만, 대신에 캐시 모드내의 메모리(100)을 계속하여 호출할 필요가 있다. 온-칩 재생 어드레스 계수기의 다른 장점은 제어기(60)이 계수기의 내용을 저장 및 증가시키는데 필요한 추가 회로를 내장할 필요가 없다는 것이다. 온-칩 재생 계수기내에 저장된 실제값의 놀러지(konwledge)는 제어기(60)의 발진 시간이 모든 필요한 재생 사이클이 특정 재생 시간내에서 개시되도록 하는한 본 시스템에는 중요한 것이 못된다는 것이다.Memory 100 according to a preferred embodiment of the present invention has an on-chip counter for storing a row address corresponding to the next row to be reproduced. Upon completion of the refresh cycle, memory 100 increments the contents of the on-chip counter in proportion to the next refresh operation. An on-chip counter is included in the dynamic memory of US Pat. No. 4,207,618, issued June 10, 1980, and assigned to Texas Instruments Inc. Since such on-chip storage is good, the controller 60 does not need to provide the memory 100 with a replay address on the address bus unless a cache failure occurs, but instead continues the memory 100 in cache mode. You need to call it. Another advantage of the on-chip regenerative address counter is that the controller 60 does not have to incorporate the additional circuitry needed to store and increase the contents of the counter. The Konwledge of the actual value stored in the on-chip regeneration counter is that the oscillation time of the controller 60 is not important for the present system as long as all necessary regeneration cycles are initiated within a particular regeneration time.

제6도의 시스템에 있어서, 다중 메모리(100)은 Q(출력) 및 D(입력) 터미널을 각각 갖고 있는데, 각각의 메모리는 클럭 및 어드레스 신호를 병렬로 수신한다. 메모리(100)들중 다중 메모리는 DATA IN 및 DATA OUT 버스내의 한 라인에 각각 관련되는데, 메모리(100)의 수는 DATA BUS 상의 데이타 워드의 폭에 대응한다. 메모리(100)의 다중 뱅크들이 제공될 수 있다는 것을 본 분야에 숙련된 기술자들이라면 알고 있는데, 양호한 뱅크의 선택 제어는 디코딩 클럭 신호에 의해 종래 방식으로 달성된다. 물론 이러한 추가 뱅크는 양호한 어드레스 스페이스(space)가 단일 메모리(100)의 용량보다 큰 경우에 요구된다.In the system of FIG. 6, multiple memories 100 have Q (output) and D (input) terminals, respectively, each of which receives clock and address signals in parallel. Multiple memories of memories 100 are each associated with one line in the DATA IN and DATA OUT buses, with the number of memories 100 corresponding to the width of the data words on the DATA BUS. Those skilled in the art know that multiple banks of memory 100 may be provided, where the selection control of a good bank is achieved in a conventional manner by a decoded clock signal. This additional bank is, of course, required when a good address space is larger than the capacity of a single memory 100.

제6도에 도시된 시스템의 제어 기능은 CPU(50) 또는 메모리(100)으로 부터 별도 집적 회로, 또는 회로인 제어기(60)으로 사용한다. 선택적으로, 제어기 기능들은 텍사스 인스트루먼츠 인코포레이티드사에 양도된 계류중인 미합중국 특허 출원 제175,875호에 기재된 바와 같은 메모리(100)이 사용될 수 있다. 그러나, 다중 메모리(100)은 데이타 워드가 폭넓게 사용되거나, 부수적으로 상술한 바와 같은 다중 뱅크에 사용되는 경우에, 각각의 메모리(100)용 회로를 복제하는 것이 아니라, 제어 기능들을 모든 메모리용 단일 회로에 사용하는 것이 보다 효과적이라고 생각한다. 물론, 메모리(100)의 다중 뱅크만큼 메모리어레이를 증가시키면, 어드레스 디코딩 및 선택이 복잡해질 뿐만 아니라 이러한 시스템을 필요로 하는 메모리 및 버스를 접속시키는 도체의 물리적 길이로 인해 시스템 성능이 악영향을 받게 된다. 특정하게 요구된 응용에 대한 악 영향이 고려되어야 한다. 더욱이, 선택적인 실시예에 있어서, 제어기(60)의 기능은 양호한 경우에 CPU(50)과 동일한 집적 회로에 사용될 수 있다.The control function of the system shown in FIG. 6 is used as a controller 60 which is a separate integrated circuit or circuit from the CPU 50 or the memory 100. Alternatively, the controller functions can be used with memory 100 as described in pending US patent application No. 175,875, assigned to Texas Instruments Inc. However, the multiple memories 100 do not duplicate the circuitry for each memory 100 when the data words are used extensively or in incidental use in multiple banks as described above, but the control functions are single for all memories. I think it is more effective to use in a circuit. Of course, increasing memory arrays by multiple banks of memory 100 not only complicates address decoding and selection, but also adversely affects system performance due to the physical lengths of the conductors connecting the memories and buses that require such systems. . The adverse effects on the specifically required application should be considered. Moreover, in alternative embodiments, the functionality of the controller 60 may be used in the same integrated circuit as the CPU 50 in good cases.

표 1을 참조하면, 제6도에 도시된 예시적 시스템의 동작에 대한 진리표(truth table)가 도시되어 있다. 각각의 메모리(100)은 제3도에 관련하여 상술한 예시적 회로를 제외하고는 2개의 플래그 비트(C) (캐시) 및 R(재생) 비트를 포함한다. 플래그 비트(C)는 캐시 실패의 경우 및 캐시를 다시 기입하여 재로드시키도록 수행되는 동작중의 0 상태 및 캐시 히트 사이클중의 1 상태일 수 있다. 플래그 비트(R)은 재생 동작이 더 이상 진행되지 않는 경우의 캐시 히트와 캐시 실패 사이클 동안의 0 상태일 수 있고, 재생 동작이 적시에 취해지는 동안의 캐시 비트 사이클에 대한 1 상태일 수 있다. 본 발명의 실시예에 있어서, 플래그 비트(R)은 제6도의 시스템의 동작에 관련하여 후술한 바와 같이 1 상태가 아닐 수 있지만, 플래그 비트 (C)는 0상태이다. 본 발명의 양호한 실시예에 있어서, 플래그 비트 (C 및 R)은 메모리(100)에 내장되어 제공된 클럭 신호 (RASB, CAS1B 및 CAS2B)에 관련된 동작에 영향을 끼친다. 본 발명의 실시예에 있어서, 플래그 비트(C 및 R)은 메모리(100)의 내부에서 발생되고, 본 명세서에 기술될 사이클을 관통하는 것을 제외하고는 직접 해독 또는 셋트되지 않는다. 물론, 캐시 및 재생 동작 (및 이의 상태)를 제어하는 그 밖의 다른 선택적인 실시에는 제어기(60)내에 이러한 비트를 저장하고, 메모리의 동작을 제어하기 위한 추가 라인을 메모리(100)에 제공하는 것과 같은 선택적인 실시예는 본 분야에 숙련된 기술자들이라면 알고 있다. 메모리(100)내의 모든 플래그 비트(C 및 R)의 내부 저장 및 셋팅은 동작 성능 및 통합 입장에서 볼때 양호할 수 있다.Referring to Table 1, a truth table for the operation of the example system shown in FIG. 6 is shown. Each memory 100 includes two flag bits C (cache) and R (replay) bits except for the example circuit described above with respect to FIG. The flag bit C may be in the event of a cache failure and in the 0 state during operation and the 1 state during the cache hit cycle, which is performed to rewrite and reload the cache. The flag bit R may be in the 0 state during cache hit and cache failure cycles when the replay operation is no longer in progress, and may be in the 1 state for the cache bit cycle while the replay operation is taken in a timely manner. In the embodiment of the present invention, the flag bit R may not be in one state as described later in connection with the operation of the system of FIG. 6, but the flag bit C is in the zero state. In the preferred embodiment of the present invention, the flag bits C and R affect the operation related to the clock signals RASB, CAS1B and CAS2B provided in the memory 100. In an embodiment of the invention, the flag bits C and R are generated inside the memory 100 and are not directly decrypted or set except through the cycles described herein. Of course, other alternative implementations of controlling cache and playback operations (and their status) include storing these bits in the controller 60 and providing additional lines to the memory 100 for controlling the operation of the memory. Such alternative embodiments are known to those skilled in the art. Internal storage and setting of all flag bits C and R in memory 100 may be good in terms of operational performance and integration.

표 1과 함께 제7a도 내지 제7c도를 참조하면, 제6도에 도시된 시스템의 일반적인 동작이 상세하게 도시되어 있다. 제7a도에는 캐시 히트 및 비재생 모드시의 시스템의 동작 순서가 도시되어 있다. 이러한 경우에, 메모리(100)내의 C 플래그 비트는 1상태이고, 메모리(100)내의 R 플래그 비트는 0상태이다. 이러한 모드에 있어서, 동작의 개시시에 제7a도내의 판단부(700)에서, 제어기(60)은 재생 사이클이 필요한지의 여부를 결정한다. 본 분야에 널리 공지된 바와 같이, 종래의 동적 메모리 제어기들은 재생 사이클의 필요성을 결정하여 재생을 수행하도록 시도된 메모리를 엔에이블시키도록 동작할 수 있다. 이러한 기능들은 상술한 바와 같이, 제어기(60)의 기능을 양호하게 포함한다. 재생 사이클이 필요한지의 여부가 결정되는 경우에, 제어기(60)은 로우 상태인 모두 3개의 신호(RASB, CAS1B 및 CAS2B)를 제6도에 도시된 바와 같이 접속된 모든 메모리(100)으로 어써트시킬 수 있다(0/0/0으로서 제7a도에 도시된 로우 상태인 RASB, CAS1B 및 CAS2B, 즉 제어기(60)에 의해 어써트되는 3개 신호의 상태를 나타내는 규칙이 제7b도 및 제7c도에도 계속해서 적용될 수 있다). 이러한 모드에서 로우 상태로 되는 3개의 신호에 응답하여, 본 발명의 실시예의 메모리(100)은 이들의 내부 R 플래그 비트를 1 상태로 셋트시키고 (프로세스 702), 및 캐시 히트 및 재생 모드가 제7c도에 관련하여 상술한 바와 같이[제7a도 및 제7c도 및 접속기(C)를 통해]엔터된다.Referring to FIGS. 7A-7C with Table 1, the general operation of the system shown in FIG. 6 is shown in detail. FIG. 7A shows the operation sequence of the system in the cache hit and non-playback modes. In this case, the C flag bit in memory 100 is in one state and the R flag bit in memory 100 is in zero state. In this mode, at the start of the operation, in the judging section 700 in FIG. 7A, the controller 60 determines whether a regeneration cycle is required. As is well known in the art, conventional dynamic memory controllers may be operable to determine the need for a refresh cycle to enable memory attempted to perform a refresh. These functions preferably include the function of the controller 60 as described above. When it is determined whether a refresh cycle is required, the controller 60 asserts all three signals (RASB, CAS1B and CAS2B) in the low state to all connected memories 100 as shown in FIG. (R / B, CAS1B, and CAS2B in the low states shown in FIG. 7A as 0/0/0, i.e., the rules indicating the states of the three signals asserted by the controller 60 are shown in FIGS. 7B and 7C. May continue to be applied). In response to the three signals going low in this mode, the memory 100 of the embodiment of the present invention sets its internal R flag bits to one state (process 702), and the cache hit and play mode is set to 7c. As described above with reference to the drawings (via FIGS. 7A and 7C and the connector C).

제어기(60)은 재생 동작이 수행되지 않은 것을 결정하는 경우에, 제어기(60)은 X 어드레스 및 CPU(50)으로 부터의 어드레스 핀에서 Y 어드레스 (이하, 캐시 어드레스라 칭함)의 4개 최상위 비트를 수신하고, 본 발명의 실시예에 있어서, 제어기(60)은 CPU(50)에 의해 제공된 어드레스의 Y 어드레스 부분 (즉, 캐시 라인 어드레스 및 양호한 비트의 어드레스를 어드레스 버스상에 제공하도록 멀티플렉스(52)를 제어한다. [제7a도의 프로세스 (704)]. 또한, 판단부(706)에서 도시된 바와 같이 제어기(60)은 CPU(50)이 필요로 하는 어드레스가 메모리(100)의 캐시 부분내에 있는 (즉, 캐시 히트)지의 여부(즉, 캐시 실패)를 결정한다. 이러한 결정은 제5도의 메모리 할당부를 갖는 메모리(100)의 예의 경우에 CPU(50)으로 부터 수신된 X 어드레스를, Y 어드레스의 4개 MSB에 의해 도시된 캐시 라인용 캐시 태그 메모리내에 저장된 X 어드레스와 비교함으로서 상술한 캐시 태그 비교기의 널리 공지된 동작 방법에 따라 수행된다.In the case where the controller 60 determines that the playback operation has not been performed, the controller 60 has four most significant bits of the Y address (hereinafter referred to as cache address) on the X address and the address pin from the CPU 50. And in an embodiment of the present invention, the controller 60 is configured to provide a multiplex (i.e., multiplex) to provide the Y address portion of the address provided by the CPU 50 (i. 52. [Process 704 of Fig. 7A] [0059] Further, as shown in the determination unit 706, the controller 60 has an address required by the CPU 50 for the cache portion of the memory 100. (I.e., cache hits) that are within (i.e., cache hits) This determination determines the X address received from the CPU 50 in the case of the memory 100 having the memory allocation of FIG. The cache shown by the four MSBs of the Y address Compared to the X address stored in the cache tag memory for a line by is performed according to a well known method of operation of the above-described cache tag comparator.

캐시 실패의 경우에, 제어기(60)은 RASB, CAS1B 및 CAS2B를 하이 논리 레벨로 모두 어써트시킬 수 있다(즉, 제7a도의 1/1/1/). 이것은 캐시 실패가 발생되는 메모리(100)에 나타날 수 있고, 메모리(100)은 이들의 C 플래그 비트내에서 0 상태로 각각 배치시킬 수 있으며, 캐시 실패 모드시의 메모리의 동작이 수행될 수 있다(제7b도에 관련하여 후술함). 캐시 히트의 경우에는, 제어기(60)은 어드레스 캐시 라인에 관련된 셋트가 엔에이블되는 것을 판단한다(제7a도의 판단부 710). 2-방향 셋트 관련 방식으로 상술한 바와 같이 구성된 메모리(100)에 있어서, 판단부(710)은 주 감지 증폭기(16A 또는 16B)가 엔에이블될 수 있는 지의 여부를 결정할 수 있다. 이러한 판단은 2개 셋트의 캐시 태그(즉, X 어드레스)가 각각 캐시 라인 어드레스 (즉, Y 어드레스의 4개 MSB)에 저장될 수 있는 경우에 캐시 태그 비교 동작에 의해 행해진다. 셋트가 요구됨에 따라서, CAS1B 또는 CAS2B중 적절한 한 신호는 제어기(60)에 의해 로우 상태로 어써트되는데, 그 밖의 다른 라인은 하이 상태를 유지한다. 예를 들어, 셋트(A) [즉, 주 감지 증폭기 (16A)]가 라인(CAS1B)를 로우 레벨로 구동시키고, 라인(CAS2B)를 하이 레벨로 구동시킬 경우에, 셋트(B)의 호출이 제어기 구동 라인(CAS2B)의 로우 상태 및 라인(CAS1B)의 하이상태에 의해 엔에이블된다. 그 다음, 어드레스된 캐시 라인의 요구된 셋트의 호울이 달성된다 (프로세스 712a 및 712b). 제어기(60)에 의해 발생된 라인 (WRITEB)의 상태는 해독 기입 동작시에 종래 방식으로 엔에이블되고, 데이타 입력 버스 [메모리(100)들 중 한 메모리의 D 터미널에 접속된 데이타 입력 버스의 한 비트]또는 데이타-출력 버스[메모리(100)들중 한 메모리의 Q 터미널에 접속된 데이타 출력 버스의 한 비트]를 CPU(50)에 접속된 데이타 버스에 접속시키기 위해 제어 라인(53)을 통해 멀티플렉서(54)를 제어할 수 있다. 이때, 메모리(100)은 어드레스된 캐시 라인의 선택된 셋트에 관련하여 해독 또는 기입 동작을 달성하기 위해 종래 방식으로 어써트된 신호에 응답할 수 있다.In case of cache failure, controller 60 may assert RASB, CAS1B and CAS2B all at a high logic level (ie 1/1/1 / of FIG. 7a). This may appear in the memory 100 where a cache failure occurs, the memory 100 may be placed in their 0 states within their C flag bits, respectively, and the operation of the memory in the cache failure mode may be performed ( Described below in relation to FIG. 7b). In the case of a cache hit, the controller 60 determines that the set related to the address cache line is enabled (determination unit 710 in Fig. 7a). In the memory 100 configured as described above in a two-way set related manner, the determining unit 710 may determine whether the main sense amplifier 16A or 16B can be enabled. This determination is made by a cache tag comparison operation in the case where two sets of cache tags (i.e., X addresses) can each be stored in a cache line address (i.e., four MSBs of Y addresses). As the set is required, one of CAS1B or CAS2B is asserted low by the controller 60 while the other line remains high. For example, if set A (i.e., main sense amplifier 16A) drives line CAS1B to a low level and drive line CAS2B to a high level, the call of set B is It is enabled by the low state of the controller drive line CAS2B and the high state of the line CAS1B. Then, a required set of addresses of addressed cache lines is achieved (processes 712a and 712b). The state of the line WRITEB generated by the controller 60 is enabled in the conventional manner in the read-write operation, and the data input bus (one of the data input buses connected to the D terminal of one of the memories 100). Bit] or data-output bus (one bit of the data output bus connected to the Q terminal of one of the memories 100) to the data bus connected to the CPU 50 via the control line 53 The multiplexer 54 can be controlled. At this time, the memory 100 may respond to a signal asserted in a conventional manner to achieve a read or write operation in relation to the selected set of addressed cache lines.

또한, 메모리(100)으로의 기입 호출의 경우에, 제6도의 시스템은 메모리(100)이 상술한 바와 같이 구성되는 경우에 어드레스 캐시 라인내의 양호한 셋트에만 기입하고, 메모리(100)내의 어레이에는 모두 기입되지 않는다. 그러므로, 캐시 라인 셋트의 갱신이 후술한 바와 같이 역기입 동작을 요구한다. 또한, 제6도에 도시된 시스템의 이점은 메모리(100)이 전체적으로 기입되도록 구성되는 경우에 제공될 수 있다. 전체 시스템 성능간의 종래의 트레이드오프(tradeoff)들은 2가지 방법이 소정의 응용에 적합한 것을 결정할 수 있다. 본 발명의 양호한 실시예에 있어서, 메모리(100)은 역기입방식으로 구성된다.Also, in the case of a write call to the memory 100, the system of FIG. 6 writes only to a good set in the address cache line when the memory 100 is configured as described above, and all to the array in the memory 100. It is not written. Therefore, updating the cache line set requires a write back operation as described below. In addition, the advantages of the system shown in FIG. 6 may be provided when the memory 100 is configured to be written in its entirety. Conventional tradeoffs between overall system performance can determine that the two methods are suitable for a given application. In a preferred embodiment of the present invention, the memory 100 is configured in a write back manner.

양호한 호출이 완료된후, 시스템은 접속기(A)를 통하는 제7a도에 도시된 바와 같이, 캐시 히트 및 비재생 모드를 유지할 수 있고 재생에 필요한 결정 및 다음 캐시 어드레스의 비교를 재개할 수 있다.After the good call is completed, the system can maintain the cache hit and non-replay mode and resume the comparison of the next cache address and the decision needed for replay, as shown in FIG. 7A via connector A. FIG.

제7b도를 참조하면, 캐시 실패 모드시의 제6도의 시스템이 도시되어 있다. 이러한 모드에 있어서, 메모리(100)의 C 플래그 비트 및 R 플래그 비트는 둘다 0 상태로 셋트될 수 있다. 이 시스템이 제7b도의 접속기(B)에서 캐시 실패 모드로 엔터하는 상태에 있어서, 제어기(60)은 모두 3개 신호 (RASB, CAS1B 및 CAS2B)를 하이 논리 레벨로 어써트되게 한다(제7a도 및 제7c도). 이때, 메모리(100)은 프로세서(720)에서 동작 사이클의 종래의 행 프리챠지 부분을 엔터한다. 상술한 바와 같이, 본 발명의 양호한 실시예의 시스템 및 메모리 (100)은 역기입 방식으로 구성된다. 따라서, 캐시 실패의 판단후에(제7a도의 판단부 706), 제어기(60)은 캐시 라인 및 이에 관련된 셋트가 메모리(100)의 캐시로 부터 삭제되는 것을 결정한다.Referring to FIG. 7B, the system of FIG. 6 in cache failure mode is shown. In this mode, both the C flag bit and the R flag bit of the memory 100 may be set to zero state. In the state where the system enters the cache failure mode in the connector B of FIG. 7B, the controller 60 causes all three signals (RASB, CAS1B, and CAS2B) to be asserted at a high logic level (FIG. 7A). And FIG. 7c). At this time, the memory 100 enters the conventional row precharge portion of the operation cycle in the processor 720. As described above, the system and memory 100 of the preferred embodiment of the present invention are configured in a write back manner. Thus, after determining the cache failure (decision section 706 in FIG. 7A), the controller 60 determines that the cache line and its associated set are deleted from the cache of the memory 100.

상술한 바와 같이, 라인의 셋트가 캐시로 부터 삭제되는 것을 중재하기 위한 다수의 종래 방식이 있다. 제6도에 도시된 시스템에 대한 양호한 방법은 캐시 라인 어드레스로서 Y 어드레스의 실제 4개 MSB를 사용하고, 이에 관련하여 최근에 사용된 셋트 (A) 또는 셋트 (B)를 교체하기 위한 것이다. 이러한 방법은 CPU (50)에 의해 제공된 동일한 Y 어드레스가 새로운 데이타로 로드되고, 제1 캐시를 호출하기 위해 역기입용 캐시 라인을 어드레스할 수 있게 한다(필요한 경우에). 또한, 이러한 방법은 CPU (50)으로 부터 Y 어드레스의 4개 MSB를, 캐시 라인을 어드레스하기 위한 상이한 어드레스 값으로 번역하는 추가 단계를 필요로 하지 않는다. 셋트 (A) 또는 셋트 (B)가 실패중에 어드레스된 캐시 라인으로 교체되는 것의 결정은 프로세스(720)에서 메모리의 행 프리챠지중에 제어기(60)에 의해 양호하게 행해진다.As mentioned above, there are a number of conventional ways to mediate the set of lines being deleted from the cache. The preferred method for the system shown in FIG. 6 is to use the actual four MSBs of the Y address as cache line addresses and to replace the recently used set (A) or set (B). This method allows the same Y address provided by the CPU 50 to be loaded with new data and to address the write back cache line to call the first cache (if necessary). In addition, this method does not require the additional step of translating the four MSBs of the Y address from the CPU 50 into different address values for addressing cache lines. The determination of whether a set (A) or (B) is replaced with an addressed cache line during a failure is done well by the controller 60 during row precharge of the memory in process 720.

제어기(60)이, 어드레스된 캐시 라인의 셋트가 새로운 데이타로 교체되는 것을 결정한 후에, 제어기(60)은 기입 동작이 교체될 셋트로 발생되는지의 여부를 결정하도록 더티비트 플래그(DBIT)를 조회한다. 기입이 전혀 발생되지 않은 경우 (즉, DBIT가 클리어 상태인 경우), 역기입 동작은 수행될 수 없고, 셋트내로의 새로운 데이타의 로딩이 수행될 수 있다[제7b도의 프로세스 (732)]. 기입이 실행되는 경우 (즉, DBIT가 셋트되는 경우), 교체될 캐시 셋트가 셋트를, 상이한 메모리 위치로 부터의 데이타로 교체하기 전에 메모리(100)의 어레이(2)내의 위치에 먼저 기입되어야 한다. 역기입 동작이 수행되지 않은 경우에, 교체되는 캐시 셋트에 기입된 데이타가 손실될 수 있는 본 발명의 양호한 실시예로 부터 알게 된 바와 같이, 본 발명의 실시예의 메모리(100)은 캐시 히트 모드를 통과하는 것을 제외하고는 기입될 수 없다. 따라서, 역기입 동작 [또는, 선택적으로, 기입-드루(write-through) 가능성]이 없어도, 기입된 데이타는 어레이(2)내에 로드될 수 없다.After the controller 60 determines that the set of addressed cache lines is to be replaced with new data, the controller 60 looks up the dirty bit flag DBIT to determine whether a write operation occurs to the set to be replaced. . If no writes have occurred at all (ie, the DBIT is in the clear state), the write back operation cannot be performed and the loading of new data into the set can be performed (process 732 in FIG. 7B). If a write is performed (ie, a DBIT is set), the cache set to be replaced must first be written to a location in the array 2 of memory 100 before replacing the set with data from a different memory location. . As can be seen from the preferred embodiment of the present invention where data written to the cache set to be replaced may be lost when the write back operation is not performed, the memory 100 of the embodiment of the present invention may enter the cache hit mode. It cannot be filled in except to pass it. Thus, even without the write back operation (or, optionally, the possibility of write-through), the written data cannot be loaded into the array 2.

역기입 동작은 X 어드레스 [구 (old)X 어드레스]를 멀티플렉서(52)를 통해 어드레스 버스상에 배치하는 제어기(60), 및 어드레스 버스로의, 제어기(60)에 의해 제공된 구 X 어드레스를 선택하기 위해 제어 라인(51)을 통하는 제어기 멀티플렉서(52)에 의해 달성된다. 이러한 구 X 어드레스는 교체되는 캐시 셋트의 내용에 관련하여 메모리(100)내의 어레이(2)의 행에 대응한다. 이때, 제어기(60)은 동적 메모리 사이클의 종래의 행 어드레스 부분에 따라서 RASB 신호를 로우 상태로 어써트시키고, CAS1B 및 CAS2B 신호를 하이 상태로 유지한다. 그 다음, 제어기(60)은 Y 어드레스 버스(즉, 캐시 라인 어드레스)상에 CPU(50)에 의해 제공된 Y 어드레스의 4개 MSB의 저장값을 멀티플렉서(52)에 제공하고, 어드레스 버스에 응용하기 위해 4개 비트들을 선택하도록 제어 라인(51)을 통해 멀티플렉서(52)를 제어한다. 4개 MSB가 아닌 최하위 비트는 이러한 동작을 위해 돈트 캐어(dont cares)로 된다. 그러나, Y 어드레스가 이러한 기간 동안 CPU(50)에 의해 제공된 상태를 유지하기 때문에, 멀티플렉서(52)의 가장 용이한 구성이 어드레스 버스상에 배치하기 위해 전체 X 어드레스 또는 전체 Y 어드레스를 선택하게 한다. 판단 블럭(728) 에서, 제어기(60)은 어레이(10)내로의 데이타 기입을 달성하기 위해 WRITEB 신호를 로우 상태로 구동시키는 것에 관련하여, 셋트 (A) 또는 (B)가 역기입 동작을 실행하도록 엔에이블되는 것을 결정하고, 이에 기초하여 CAS1B 또는 CAS2B 신호중 적절한 한 신호를 어써트시킨다[셋트(A 및 B)에 대한 각각의 프로세스 (730a 및 730b)].The write back operation selects the controller 60 which places the X address (old X address) on the address bus via the multiplexer 52, and selects the old X address provided by the controller 60 to the address bus. Is achieved by the controller multiplexer 52 via the control line 51. This old X address corresponds to the row of array 2 in memory 100 with respect to the contents of the cache set being replaced. At this time, the controller 60 asserts the RASB signal low in accordance with the conventional row address portion of the dynamic memory cycle and maintains the CAS1B and CAS2B signals high. The controller 60 then provides the multiplexer 52 with the stored values of the four MSBs of the Y addresses provided by the CPU 50 on the Y address bus (i.e., cache line address) and applies them to the address bus. Control multiplexer 52 via control line 51 to select four bits. The least significant bits, rather than four MSBs, are dont cares for this operation. However, since the Y address remains in the state provided by the CPU 50 during this period, the easiest configuration of the multiplexer 52 allows to select the full X address or the full Y address for placement on the address bus. At decision block 728, the controller 60 executes the write back operation in either set A or B in connection with driving the WRITEB signal low to achieve data writes into the array 10. It determines what is enabled to enable and asserts the appropriate one of the CAS1B or CAS2B signals based on it (respective processes 730a and 730b for sets A and B).

역기입 동작의 완료후, 또는 역기입 동작이 판단부(722)내에서 클리어 상태인 DBIT로 인해 불필요한 경우, 캐시의 갱신이 수행될 수 있다. 제어기(60)은 CPU(50)에 의해 요구된 X 어드레스 부분을 어드레스 버스상에 배치하기 위해 멀티플렉서(52)를 제어한다. 이때, 제어기(60)은 RASB 신호를 로우 상태로 어써트시키고, CAS1B 및 CAS2B 신호는 하이 상태 (0/1/1/)로 어써트되므로, 메모리(100)은 종래의 행 디코딩 및 엔에이블링 동작을 수행할 수 있다. 프로세스(734)에서, 제어기(60)은 CPU(52)에 의해 제공된 Y 어드레스를 어드레스 버스상에 배치하기 위해 멀티플렉서(52)를 제어한다. 이러한 X 어드레스는 CPU(50)에 의해 부수적으로 제공되는 것과 동일한 Y 어드레스이다. 이것의 4개 MSB는 새로운 정보로 갱신되는 캐시 라인을 결정하고, 이것의 최하위 비트는 호출될 비트를 지정한다. 그다음, 제어기(60)은, 프로세스(738a 및 738b)를 통해 어드레스된 캐시 라인내로 어레이(2)의 해독을 엔에이블시키는 신호(WRITEB)를 하이 상태로 통신시에 판단부(736)을 통해 새로운 정보로 로드될 양호한 셋트(A 또는 B) [즉, 주 감지 증폭기(16A 또는 16B)]의 선택을 달성하고, 적절한 CAS1B 신호 [셋트 (A)에 대한] 또는 CAS2B 신호 [셋트(B)에 대한]의 후속 구동로우 상태를 달성한다. 어드레스된 캐시 셋트가 어드레스된 데이타로 로드된 후, Y 어드레스의 최하위 비트에 의해 요구된 비트의 호출이 발생하는데, 해독 동작은 라인 (WRITEB)가 하이 상태를 유지하는 경우에 수행되거나, 기입 동작은 충분히 시간이 갱신될 캐시 셋트에 할당된 후 WRITEB를 로우 레벨로 어써트시킴으로써 수행된다. 이때, 메모리(100)은 프로세서(740)에서 C 플래그 비트를 1 상태로 각각 셋트시킨다. 그다음, 제어기(60)은 RASB를 하이 상태로 어써트시키는 제7a도 및 제7b도의 접속기(A)를 통해 캐시 히트 모드를 엔터한다.After completion of the write back operation or when the write back operation is unnecessary due to the DBIT in the clear state in the determination unit 722, the update of the cache may be performed. The controller 60 controls the multiplexer 52 to place the X address portion requested by the CPU 50 on the address bus. At this time, the controller 60 asserts the RASB signal to the low state, and the CAS1B and CAS2B signals to the high state (0/1/1 /), so that the memory 100 performs conventional row decoding and enabling. You can perform the operation. In process 734, controller 60 controls multiplexer 52 to place the Y address provided by CPU 52 on the address bus. This X address is the same Y address that is provided incidentally by the CPU 50. Its four MSBs determine the cache line to be updated with new information, the least significant bit of which specifies the bit to be called. Then, the controller 60 sends a new signal through the determination unit 736 in communication with the signal WRITEB enabling the decryption of the array 2 into the cache line addressed through the processes 738a and 738b. Achieve the selection of a good set (A or B) [i.e., main sense amplifier 16A or 16B] to be loaded with information, and for the appropriate CAS1B signal [for set (A)] or CAS2B signal [set (B) To achieve a subsequent drive low state. After the addressed cache set is loaded with the addressed data, a call of the bit required by the least significant bit of the Y address occurs, and the decryption operation is performed when the line WRITEB remains high, or the write operation is performed. This is done by asserting WRITEB low level after sufficient time has been allocated to the cache set to be updated. In this case, the memory 100 sets the C flag bits to 1 state in the processor 740. Controller 60 then enters cache hit mode through connector A of FIGS. 7A and 7B which asserts the RASB high.

제7c도를 참조하면, 캐시 히트 및 재생 모드시의, 제6도에 도시된 시스템의 동작이 도시되어 있다. 이러한 모드에 있어서, 각각의 메모리(100)내의 C 플래그 비트와 R 플래그 비트는 1상태이다. 이러한 모드는 재생 동작이 필요한 것을 제어기(60)이 결정하는 경우에 캐시 히트모드로 부터 엔터된다[제7a도의 판단부 (700)]. 상술한 바와 같이, 양호한 재생 동작은, 메모리(100)에 지정된 재생시간 및 전체 재생 동작에 필요한 재생 사이클수에 따라 변하는 단일 재생 사이클이 주기적으로 개시되는 분배 재생 동작이다. 또한, 상술한 바와 같이, 메모리(100)은 양호하게 온-칩 재생 계수기를 갖고 있으므로, 제어기(60)은 재생 사이클의 개시시에 재생 어드레스를 메모리(100)에 저장 및 포워드(forward)시킬 필요는 없다. 재생 동작을 개시하기 위해, 제어기(60)은 모든 3개의 신호(RASB, CAS1B 및 CAS2B)를 로우 레벨로 어써트시키므로 [제7a도의 동작부 (702) 참조)], RASB를 활성 로우 레벨 상태로 유지시킨다. 그 다음, 신호 (CAS1B 및 CAS2B)는 온-칩 재생 어드레스 계수기의 내용에 대응하는 메모리(100)의 행내의 내용들을 재생하기 위해 동적 RAM 내에서 종래 방식으로 수행된 행 디코딩, 엔에이블링, 감지 및 회복 동작을 개시하기 위해 제어기(60) [동작부 (750)]에 의해 하이 상태로 구동된다.Referring to FIG. 7C, the operation of the system shown in FIG. 6 in cache hit and play mode is shown. In this mode, the C flag bit and the R flag bit in each memory 100 are in one state. This mode is entered from the cache hit mode when the controller 60 determines that a regeneration operation is required (determination section 700 in FIG. 7A). As described above, the good reproducing operation is a distributed reproducing operation in which a single reproducing cycle that varies in accordance with the reproducing time designated in the memory 100 and the number of reproducing cycles required for the entire reproducing operation is started periodically. In addition, as described above, the memory 100 preferably has an on-chip refresh counter, so the controller 60 needs to store and forward the refresh address to the memory 100 at the start of the refresh cycle. There is no. To initiate the playback operation, the controller 60 asserts all three signals (RASB, CAS1B and CAS2B) to the low level (see operation portion 702 of FIG. 7A), so that the RASB is in an active low level state. Keep it. The signals CAS1B and CAS2B are then decoded, enabled, and detected in a conventional manner in dynamic RAM to reproduce the contents in the rows of the memory 100 corresponding to the contents of the on-chip reproducing address counter. And is driven high by the controller 60 (operation unit 750) to initiate a recovery operation.

본 발명의 실시예에 있어서, 메모리(100)의 국부 감지 증폭기(14)가 선택된 어레이(10)의 선택된 행내의 감지된 데이타 상태를 감지 및 회복시키는데 사용되고, 캐시 데이타가 국부 감지 증폭기(14)로 부터 버퍼(buffer)되는 주 감지 증폭기(16)내에 저장되기 때문에, 메모리(100)이 재생 동작중에 있는 기간동안 캐시 동작이 계속되는 것이 가능할 수 있다. 따라서, 제어기(60)이 재생 계수기의 내용을 어드레스 버스상에 배치함으로써 재생 동작을 개시하게 한후, 제어기(60)은 다음 개시 호출동작을 개시할 수 있다.In an embodiment of the invention, a local sense amplifier 14 of memory 100 is used to sense and recover the sensed data state in a selected row of the selected array 10, and cache data is sent to the local sense amplifier 14; Since it is stored in the main sense amplifier 16 that is buffered from, it may be possible for the cache operation to continue for a period of time during which the memory 100 is in a regeneration operation. Therefore, after causing the controller 60 to start the playback operation by placing the contents of the playback counter on the address bus, the controller 60 can start the next start call operation.

그러므로, 제7a도에 관련하여 상술한 캐시 호출은 시스템이 캐시 히트를 계속해서 갖고 있는 한 진행될 수 있다. 종래의 동적 RAM에 있어서, 재생 사이클은 약 150 내지 200 nsec 동안 취해질 수 있고, 캐시 호출 사이클이 더욱 고속, 예를 들어 약 25 내지 50 nsec로 달성될 수 있는 것이 고려된다. 그러므로, 다중 캐시 호출은 각각의 메모리(100)내의 행이 동시에 재생되는 기간동안 행해진다. 그러나, 재생 동작은 캐시 실패의 경우에 계속해서 분배되지 않는데, 그 이유는 상이한 행의 재생 동작이 수행되는 기간동안 행이 갱신 또는 역기입 동작으로 선택되는 경우에 국부 감지 증폭기(14)에서 불일치가 발생하기 때문이다. 후술한 바와 같은 본 발명의 실시예에 있어서, 제6도의 시스템은 재생 동작이 진행하는 기간 동안 캐시 실패(즉, 행) 호출을 폐쇄(lock-out)시킬 수 있다.Therefore, the cache call described above with respect to FIG. 7A can proceed as long as the system continues to have a cache hit. In conventional dynamic RAM, it is contemplated that the refresh cycle may be taken for about 150-200 nsec, and that cache call cycles may be achieved at higher speeds, eg, about 25-50 nsec. Therefore, multiple cache calls are made during a period in which rows in each memory 100 are played back simultaneously. However, the replay operation is not continually distributed in case of cache failure, because the discrepancy in the local sense amplifier 14 is lost when the row is selected as an update or write back operation during the period in which the replay operation of the different rows is performed. Because it occurs. In the embodiment of the present invention as described below, the system of FIG. 6 may lock-out a cache failure (i.e., row) call during a playback operation.

제7c도의 프로세스(752)는 재생이 제어기에 의해 엔에이블된 후에 CPU(50)으로 부터 새로운 캐시 어드레스(즉, X 어드레스 및 Y 어드레스의 4개 MSB)를 제어기(60)이 수신하고, CPU(50)에 의해 제공된 어드레스의 Y 어드레스 부분이 어드레스 버스상에 배치되도록 멀티플렉서(52)를 제어하는 것을 나타낸다. 상술한 캐시 히트 모드와 동일 방식으로, 제어기(60)은 캐시 히트 또는 캐시 실패가 발생되는지의 여부를 결정하기 위해 판단부(754)에서 캐시 태그 비교를 수행한다. 캐시 실패의 경우에, 제어기(60)은 재생 동작에 필요한 시간이 경과할 때까지 RASB 신호를 로우 레벨 상태로 계속해서 구동시키고, CAS1B 및 CAS2B 신호를 하이 레벨 상태로 계속해서 구동시킨다[판독부(756)]. 널리 공지된 바와 같이, 동적 메모리는 적절한 신호가 활성 상태를 유지할 수 있는 기간 동안 재생 사이클 시간을 지정한다. 재생 사이클 시간의 완료시에, 제어기(60)은 RASB 신호를 하이 레벨 상태로 구동시킨다. RASB 신호를 하이레벨 상태로의 어써팅이 설명을 용이하게 하기 위해 판단 블럭 [제7c도의 블럭 (756 및 768)]로서 도시되어 있지만, 제어기(60)은 재생 동작의 종료가 캐시 호출에 무관한 경우에 캐시 히트 또는 실패 동작에 관련된 것과 동일한 방식으로 재생 사이클 시간의 종료시에 RASB 신호를 하이 레벨 상태로 어써트시킨다.The process 752 of FIG. 7C receives a new cache address (i.e., four MSBs of X address and Y address) from the CPU 50 after the playback is enabled by the controller, and the CPU ( Control multiplexer 52 such that the Y address portion of the address provided by 50 is disposed on the address bus. In the same manner as the cache hit mode described above, the controller 60 performs cache tag comparison in the determination unit 754 to determine whether a cache hit or a cache failure has occurred. In case of cache failure, the controller 60 continues to drive the RASB signal to the low level state until the time required for the reproducing operation has elapsed, and continues to drive the CAS1B and CAS2B signals to the high level state (reader ( 756)]. As is well known, dynamic memory specifies a refresh cycle time for a period during which a suitable signal can remain active. Upon completion of the refresh cycle time, the controller 60 drives the RASB signal to a high level state. Although the assertion of the RASB signal to the high level state is shown as a decision block (blocks 756 and 768 of FIG. 7C) to facilitate explanation, the controller 60 indicates that the end of the playback operation is independent of the cache call. In the case asserts the RASB signal to a high level state at the end of the refresh cycle time in the same way as it involves the cache hit or fail operation.

재생 동작의 종료를 나타내는 RASB 신호를 하이 레벨 상태로 수신할 때, 메모리(100)은, 재생 동작이 완료되었다는 것을 나타내기 위해 R 플래그 비트를 0 상태로 각각 클리어시킨다(프로세스 758). 캐시 실패가 판단부 (754)에서 제어기(60)에 의해 검출되는 경우, 메모리(100)은 C 플래그 비트를 0 상태로 각각 클리어시키고 (프로세스 760), 제7b도에 관련하여 상술한 캐시 실패 모드는 접속기(B)를 통해 엔터될 수 있다.Upon receiving the RASB signal in the high level state indicating the end of the reproduction operation, the memory 100 clears each of the R flag bits to 0 state to indicate that the reproduction operation is completed (process 758). When a cache failure is detected by the controller 60 at the determination unit 754, the memory 100 clears each of the C flag bits to zero (process 760), and the cache failure mode described above with reference to FIG. 7b. May be entered via the connector (B).

캐시 히트가 판단부(754)에서 제어기(60)에 의해 검출되는 경우에, 제어기(60)은 Y 어드레스의 4개 MSB에 의해 결정된 캐시 라인에 대한 셋트 (A 또는 B)가 호출되는 것을 결정할 수 있다[판단부(762)를 통해]. 캐시 히트 및 비재생 모드의 경우와 동일한 방식으로, 제어기(60)은 주 감지 증폭기(16A 또는 16B)의 양호한 셋트를 어드레스된 캐시 라인으로 엔에이블시키기 위해 CAS1B 신호 또는 CAS2B 신호를 (하이 레벨 상태에서 그밖의 다른 레벨 상태로 유지하는) 로우 레벨 상태로 어써트시킬 수 있다. 양호한 캐시 셋트로의 해독 또는 호출이 제7a도에 관련하여 상술한 바와 동일한 방식으로 프로세스(764a 및 764b)에서 달성된다.When a cache hit is detected by the controller 60 at the determination unit 754, the controller 60 may determine that a set (A or B) for the cache line determined by the four MSBs of the Y address is called. (Via the determination unit 762). In the same manner as in the cache hit and non-regeneration mode, the controller 60 selects the CAS1B signal or CAS2B signal (at high level) to enable a good set of main sense amplifiers 16A or 16B to the addressed cache line. Can be asserted to a low level state. Decryption or invocation into the preferred cache set is accomplished in processes 764a and 764b in the same manner as described above with respect to FIG. 7A.

캐시 실패에 관련하여 상술한 바와 같이, 제어기(60)은 재생 동작이 완료하기 위한 시간을 갖고 있는지를 결정한다. 필요한 사이클 시간의 종료까지, 제어기(60)은 RASB를 로우 레벨 상태로 유지하고 [설명하기 위한 판단부 (768) 참조], R 플래그는 메모리(100)내에서 셋트 상태를 유지하며, 동작 제어는 다음 캐시 어드레스가 제어기(60), 어드레스 버스상에 배치된 Y 부분, 및 정합이 발생하는 경우를 나타내기 위해 저장된 캐시 태그를 다시 비교하는 캐시 어드레스에 의해 수신되는 프로세스(752)로 복귀한다.As discussed above in connection with cache failure, the controller 60 determines whether the playback operation has time to complete. Until the end of the required cycle time, the controller 60 keeps the RASB in a low level state (see the judgment section 768 for explanation), the R flag maintains the set state in the memory 100, and the operation control The process then returns to process 752 where the cache address is received by the controller 60, the Y portion placed on the address bus, and the cache address that compares the stored cache tag again to indicate when a match occurs.

필요한 재생 동작 사이클 시간을 설명시에, 제어기(60)는 모두 3개의 신호 (RASB, CAS1B 및 CAS2B)를 하이 논리 레벨로 어써트시킴으로써 메모리(100)에 동시에 나타날 수 있다. 각각의 메모리(100)은 R 플래그 비트를 0 상태로 리셋트시키고, 접속기(A)를 통해 제7a도에 관련하여 상술한 캐시 히트 모드를 엔터할 수 있다. 이러한 방식에 있어서, 후속 캐시 실패는 재생 동작의 완료에 필요한 폐쇄 시간을 발생시키지 않고서도 시스템이 캐시 실패 모드로 즉시 엔터시킬 수 있게 한다.In describing the required regeneration operation cycle time, the controller 60 may simultaneously appear in the memory 100 by asserting all three signals (RASB, CAS1B and CAS2B) to a high logic level. Each memory 100 may reset the R flag bit to zero and enter the cache hit mode described above with respect to FIG. 7A via connector A. FIG. In this manner, subsequent cache failures allow the system to immediately enter cache failure mode without incurring the closure time required to complete the playback operation.

이러한 방식에 있어서, 제6도의 시스템은 제1도 내지 제5도에 관련하여 상술한 바와 같이 구성된 메모리(100)이 캐시 메모리와 주 메모리로서 작용하는 것과 동일한 방식으로 동작한다. n-방향 셋트 관련성 (본 발명의 실시예에서, n=2)은 전체 시스템 성능을 개선하는 개량된 캐시 히트율의 능력을 제공한다. 시스템 동작을 설명하는 본 발명의 실시예는 캐시 히트 모드의 동작 다음에, 캐시 실패 모드의 역기입 및 셋트 로드 동작 다음, 캐시 히트 및 재생 모드의 동작을 포함한다. 제7a도 내지 7c도에는 특정 순서에 무관하게 시스템의 동작을 설명하는 흐름도가 도시되어 있다.In this manner, the system of FIG. 6 operates in the same way that the memory 100 configured as described above with respect to FIGS. 1-5 acts as a cache memory and a main memory. n-direction set relevance (in the embodiment of the present invention, n = 2) provides the ability of an improved cache hit rate to improve overall system performance. Embodiments of the present invention that describe system operations include operations in cache hit mode, followed by write back and set load operations in cache failure mode, and operations in cache hit and play mode. 7A-7C are flow charts illustrating the operation of the system regardless of the particular order.

보다 명확하게 하기 위해서, 특정 순서의 동작은 제8도에 도시된 타이밍도를 참조하여 설명하겠다. 제8도에는 메모리(100)들 중 한 메모리에 의해 발생된(또는, 어써트된) 타이밍 신호가 도시되어 있다. 이 예시적 순서는 캐시 히트 및 비재생 모드의 해독 및 기입 사이클, 캐시 실패 역기입 및 셋트 로드, 및 캐시 히트 및 재생 모드의 사이클을 포함한다.For clarity, the specific order of operations will be described with reference to the timing diagram shown in FIG. 8 shows a timing signal generated (or asserted) by one of the memories 100. This exemplary sequence includes the decryption and write cycles of cache hit and non-playback modes, the cache failure writeback and set load, and the cycles of cache hit and playback modes.

캐시 히트 및 비재생 모드를 개시하면, 어드레스 버스는 새로운 Y 어드레스가 상술한 바와 같이 제어기(60)에 의해 제공되는 것을 나타낸다. 상술한 바와 같이 모드에 있어서, C 플래그 비트는 1레벨 상태이고, R 플래그 비트는 0 레벨 상태이다. 이러한 모드에 있어서, 히트가 계속되는 한, 제어기 (60)은 라인(RASB)를 하이 논리 레벨 상태로 유지한다. 제8도의 제1 사이클이 캐시 라인의 셋트(B)에 대한 해독 동작중에 있기 때문에, 라인(CAS1B)는 하이 레벨로 어써트되고, CAS2B는 로우 레벨 상태를 유지한다. 이 신호들에 응답하여, 메모리(100)은 Q단자에서 어드레스된 셀의 데이타 상태 (이러한 경우, 1 데이타 상태)를 종래의 정적 열 디코드 메모리로 부터의 호출의 경우와 유사한 타이밍으로 제공할 수 있다. 정적 열 디코드 호출 능력을 갖고 있는 동적 메모리의 예는 텍사스 인스트루먼츠 인코포레이티드사가 제조 및 시판하는 TMS4C10271 Mbit dRAM이다.Upon initiating the cache hit and non-playback modes, the address bus indicates that a new Y address is provided by the controller 60 as described above. In the mode as described above, the C flag bit is in one level state, and the R flag bit is in zero level state. In this mode, as long as the hit continues, the controller 60 keeps the line RABS at a high logic level. Since the first cycle of FIG. 8 is in the read operation for the set B of cache lines, line CAS1B is asserted to a high level and CAS2B remains in a low level. In response to these signals, the memory 100 can provide the data state (in this case, one data state) of the cell addressed at the Q terminal at a similar timing as in the case of a call from a conventional static column decode memory. . An example of dynamic memory with static thermal decode call capability is the TMS4C10271 Mbit dRAM manufactured and marketed by Texas Instruments.

제8도에 도시된 제2 사이클은 어드레스상에 제공된 새로운 Y 어드레스에 의해 어드레스된 캐시 라인의 셋트 (A) 내의 한 비트로의 기입 동작이다. 이러한 사이클에 있어서, 라인 (CAS1B 및 WRITEB)는 로우 논리 레벨 상태로 어써트되고, 라인 (CAS2B)는 하이 논리 레벨 상태로 어써트되는데, 어드레스된 캐시 라인의 셋트 (A) 내의 어드레스된 비트에 기입될 데이타는 CPU(50)으로부터 멀티플렉서(54)를 통해 메모리(100)의 D 터미널에 제공된다(제6도). 상술한 바와 같이, 메모리(100)은 역기입 구조에 따라서 구성되므로, 데이타는 이러한 동작에 의해 메모리(100)의 어레이 (10)내에는 기입되지 않고, 캐시 라인 셋트내에만 기입된다.The second cycle shown in FIG. 8 is a write operation into one bit in the set A of the cache lines addressed by the new Y address provided on the address. In this cycle, lines CAS1B and WRITEB are asserted in a low logic level state, and lines CAS2B are asserted in a high logic level state, writing to the addressed bits in set A of addressed cache lines. Data to be supplied is provided from the CPU 50 via the multiplexer 54 to the D terminal of the memory 100 (FIG. 6). As described above, since the memory 100 is constructed in accordance with the write back structure, data is not written into the array 10 of the memory 100 by this operation, but only written into the cache line set.

제8도에 도시된 캐시 기입 동작부에, 새로운 Y 어드레스(제8도의 Ymiss를 칭함)는 어드레스상에 나타나므로, Y 어드레스는 캐시 히트가 발생하는 경우에 메모리(100)에 제공된다. 그러나, 이러한 순서에 있어서, 제어기(60)은 CPU(50)에 의해 제공된 X 어드레스가 캐시 실패를 발생시키는 캐시 라인 어드레스 Y (즉, Y 어드레스 부분의 4개 MSB)에 관련된 X 어드레스와 정합되는지의 여부를 결정한다. 캐시 실패의 경우가 제8도에 도시된 바와 같이, 라인 (RASB, CAS1B 및 CAS2B)는 메모리(100)이 C 플래그 비트를 0 상태로 리셋트시키게 하는 하이 상태로 모두 어써트된다.In the cache write operation shown in FIG. 8, a new Y address (called Ymiss in FIG. 8) appears on the address, so that the Y address is provided to the memory 100 when a cache hit occurs. However, in this order, controller 60 determines whether the X address provided by CPU 50 matches the X address associated with cache line address Y (i.e., four MSBs in the Y address portion) that causes a cache failure. Determine whether or not. As the case of cache failure is shown in FIG. 8, the lines (RASB, CAS1B and CAS2B) are all asserted to a high state causing the memory 100 to reset the C flag bit to zero.

이해를 돕기 위해, 제어기(60)내의 더티 비트가 교체될 캐시 셋트가 기입되는 것을 나타내는 셋트인 경우이므로, 이것의 내용은 메모리 어레이내의 대응 위치내에 저장된 것과는 상이할 수 있다. 역기입 동작을 완료하기 위해, 제어기(60)은 제8도에 도시된 바와 같이 캐시 셋트에 관련되는 X 어드레스가 어드레스 버스로 교체되게 하고, 라인(RASB)를 활성 로우 논리 레벨로 어써트시킨다. 이것은 메모리(100)이 종래의 다중화 호출 동적 메모리 사이클에 따라서 행 어드레스 디코드 및 엔에이블 부분을 엔터하게 한다. 이때, 제어기(60)은 이러한 경우에, CPU(50)에 의해 어드레스된 동일 캐시 라인인 것으로 교체될 캐시 라인을 선택하기 위해 어드레스 버스상에 Y 어드레스 Y (최소한 4개 MSB)를 배치한다. 또한, 제어기(60)은 라인(CAS1B)를 로우 논리 레벨로 어써트시키고, 라인(CA2B)는 하이 상태를 유지하는데, 이것은 구 X 어드레스에 의해 선택된 행내의 어레이(10)내에 기입되는 어드레스된 캐시 라인의 셋트(A)인 것을 나타낸다. 이러한 예에 있어서, 셋트(A)는 Y 의 캐시 라인에 대한 셋트(A) 또는 셋트(B)를 최근에 호출되는 것을 검출함으로써 제어기(60)에 의한 교체용으로 선택된다. 상술한 것과 같은 구조는 수행될 어드레스 번역을 필요로하지 않고도 캐시의 역기입 및 갱신 동작을 간단하게 제공한다. 또한, 라인 (WRITEB)는 역기입 동작을 엔에이블시키기 위해 활성 로우 레벨 상태로 어써트된다. D 또는 Q 터미널이 비활성 상태가 된다. 즉, 데이타 출력은 하이 임피던스 상태이고, 데이타 입력은 돈트케어 상태이다.For the sake of understanding, since the dirty bit in the controller 60 is a set indicating that the cache set to be replaced is written, its contents may be different from that stored in the corresponding position in the memory array. To complete the write back operation, the controller 60 causes the X address associated with the cache set to be replaced by the address bus, as shown in FIG. 8, and asserts the line RASB to the active low logic level. This allows memory 100 to enter the row address decode and enable portion in accordance with conventional multiplex call dynamic memory cycles. The controller 60 then places Y address Y (at least four MSBs) on the address bus in this case to select the cache line to be replaced with the same cache line addressed by the CPU 50. In addition, controller 60 asserts line CAS1B to a low logic level, and line CA2B remains high, which is an addressed cache written into array 10 in the row selected by the old X address. Indicates a set (A) of lines. In this example, the set A is selected for replacement by the controller 60 by detecting that the set A or set B for Y's cache line has recently been called. The structure as described above simply provides for the write back and update operations of the cache without requiring an address translation to be performed. Also, line WRITEB is asserted to an active low level state to enable the write back operation. The D or Q terminal becomes inactive. That is, the data output is high impedance and the data input is dont care.

기입 후속 사이클 다음에, 메모리(100)은 CPU(50)에 의해 어써트된 어드레스에 관련된 캐시 라인(즉, Y)가 양호한 셋트내에 로드되는 경우에 갱신 모드를 엔터하기 위한 것이다. 그러므로, 제어기(60)은 CPU(50)에 의해 요구된 X 어드레스 (즉, 새로운 X 어드레스)를 어드레스 버스상에 배치하기 위해 멀티플렉서(52)를 엔에이블시키고, 라인 (RASB)를 로우 논리 레벨로 어써트시키므로, 사이클의 종래의 행 어드레스 디코드 및 행 엔에이블 부분을 재개한다. 그다음, 제어기(60)은 CPU(50)에 의해 요구된 어드레스의 Y 어드레스 부분(즉, 값 Y)을 어드레스 버스상에 배치하므로, 4개 MSB에 관련된 캐시 라인이 선택되고, 라인 (CSA1B)는 로우 논리 레벨로 구성되고, 라인 (CAS2B)는 하이 논리 레벨로 구동되어, 어드레스 캐시 라인에 관련된 주 감지 증폭기(16A) [즉, 셋트(A)]는 새로운 데이타로 로드된다. 새로운 데이타가 어드레스된 캐시 라인의 셋트(A)내에 로드된 후에, 양호한 해독 동작이 수행되는데, 어드레스 Y의 최하위 비트에 대응하는 캐시 라인에 비트가 선택되고, 이에 데이타 상태(이러한 경우에, 1)이 메모리(100)의 Q 터미널에서 구동된다. 이러한 사이클의 종료시에 하이 상태로 구성된 라인 (RASB)에 응답하여, 메모리(100)의 C 플래그 비트는 동작이 캐시 히트 모드로 전달되는 것을 나타내는 1상태로 셋트된다.Following a write subsequent cycle, the memory 100 is for entering the update mode when the cache line (i.e., Y) associated with the address asserted by the CPU 50 is loaded in the good set. Therefore, controller 60 enables multiplexer 52 to place the X address (i.e., the new X address) required by CPU 50 on the address bus, and puts line (RASB) to a low logic level. By asserting, the conventional row address decode and row enable portion of the cycle is resumed. Then, the controller 60 places the Y address portion (i.e., the value Y) of the address requested by the CPU 50 on the address bus, so that the cache lines associated with the four MSBs are selected, and the line CSA1B is Configured to a low logic level, line CAS2B is driven to a high logic level so that main sense amplifier 16A (i.e., set A) associated with the address cache line is loaded with new data. After the new data is loaded into the set A of addressed cache lines, a good decryption operation is performed, in which a bit is selected in the cache line corresponding to the least significant bit of address Y and thus the data state (in this case, 1). It is driven by the Q terminal of the memory 100. In response to the line configured as high (RASB) at the end of this cycle, the C flag bit in memory 100 is set to one state indicating that the operation is transferred to cache hit mode.

제8도의 순서도에 있어서, 다음 사이클이 종래의 캐시 히트 및 비재생 사이클인데, 새로운 Y 어드레스는 어드레스 버스상에 배치되고, 호출은 양도한 비트로 행해진다 [이러한 경우, 어드레스된 캐시 라인의 셋트(B)상의 해독 동작이 Q 터미널에서 0을 발생시킨다]. 그러나, 후속적인 관점에서, 제어기(60)은 재생 동작이 라인(RASB)를 로우 레벨로 어써트시키고, 라인(CAS1B 및 CAS2B)를 하이 레벨로 어써트시킴으로써 필요하다는 것을 나타낸다. 응답시에, 메모리(100)은 R 플래그 비트가 1 상태로 각각 세트되지만, 캐시 동작은 [새로운 Y 어드레스에 대한 각각의, 캐시 라인의 셋트(A)에 대한 해독 동작 및 캐시 라인의 셋트(B)에 대한 기입 동작]전과 같이 계속되는데, 단지 RASB는 재생 동작이 완료될 때까지 로우 레벨 상태를 유지한다. 상술한 바와 같이, 온-칩 재생 어드레스 계수기는 국부 감지 증폭기(14)를 사용하여 재생용 메모리 어레이의 행을 활성화시키기 위해 메모리(100)에 의해 사용된다. RASB가 하이 레벨로 되고, 라인 (CAS1B 및 CAS2B)가 하이 레벨로 되는 것에 응답하여, 메모리(100)은 R 플래그 비트를 0상태로 각각 리셋트시키고, 캐시 히트 및 비재생 모드내의 캐시 히트 및 재생 모드를 나간다.In the flowchart of FIG. 8, the next cycle is a conventional cache hit and non-replay cycle, where a new Y address is placed on the address bus and the call is made with the transferred bits [in this case, a set of addressed cache lines B Decrypt operation causes zero at the Q terminal. However, in a subsequent sense, the controller 60 indicates that a regeneration operation is required by asserting the line RASB to a low level and asserting the lines CAS1B and CAS2B to a high level. In response, the memory 100 sets the R flag bits to the 1 state, respectively, but the cache operation is [decryption operation for each set of cache lines A for the new Y address and set of cache lines B As before, the RASB remains low level until the playback operation is completed. As discussed above, the on-chip regeneration address counter is used by the memory 100 to activate a row of regeneration memory arrays using the local sense amplifier 14. In response to the RASB going high and the lines CAS1B and CAS2B going high, the memory 100 resets the R flag bits to zero, respectively, and cache hits and refreshes in cache hit and non-play mode. Exit the mode.

본 발명에 따라 구성된 제6도의 메모리(100) 및 시스템은 메모리 시스템 성능 및 효율면에서 상당히 유리한 장점을 제공한다. 어레이의 분해와 함께 다중-방향 셋트 관련 온-칩 캐시가 캐시 히트율 및 역기입 및 갱신 동작의 효율을 개선한다. 더욱이, 메모리의 재생은 칩의 경계선내에 주 메모리와 캐시를 보유하고 있는 동안 캐시 호출이 상당히 명백한 방식으로 행해진다.The memory 100 and system of FIG. 6 constructed in accordance with the present invention provides significant advantages in terms of memory system performance and efficiency. Multi-directional set-related on-chip caches with disassembly of the array improve the cache hit rate and the efficiency of backwrite and update operations. Moreover, the regeneration of the memory is done in a fairly obvious manner while the cache call is retained in the chip's borders with the main memory and cache.

또한, 미래의 시스템 아키텍처들은 본 명세서에 기재되고 첨부된 특허 청구의 범위에 청구된 메모리 구조에 유리하다. 더욱이, 집적화의 규모는 단일칩상에 보다 많은 기능을 배치하는 것이 증가하는 추세에 있고, 웨이퍼-스케일(wafer-scale) 집적화를 포함한다. 미래의 아키텍처의 예는 패터슨 (Patterson)등, Design Considerations for Single-Chip Computers of Future, IEEE Trans. on Computers, 제C-29권, 번호 2 (IEEE, 1980, 2), 페이지 108-115에 기재된 P1985 시스템이다. 이러한 예는 백만개의 트랜지스터 집적 회로용 국부 메모리로서 동적 메모리와 정적 메모리의 사용에 기재되어 있다. 본 발명은 동적 메모리 셀과 정적 메모리셀을 필요로하는 것이 아니라, 단일 형태의 메모리 셀(예를 들어, 동적 RAM 셀)이 동일 웨이퍼상에 제조되는 메모리 성능면에서의 이점을 제공하기 위해 웨이퍼 집적화를 수반하는 초대규모 집적화에 사용된다. 더욱이, 제6도의 시스템은 단일 제어 블럭이 개량된 성능의 이점을 달성할 뿐만 아니라, 단일 칩 또는 웨이퍼-스케일 집적화 응용에 2가지 기능의 효율적인 집적화를 달성하기 위해 캐시 메모리 제어와 주 메모리 제어를 수행할 수 있게 한다. 또한, 본 발명은 다중 프로세서가 웨이퍼 스케일상에 집적화되는 상술한 바와 같은 멀티프로세서 시스템의 응용에 특히 유리하다고 생각한다.Further, future system architectures are advantageous for the memory structure described herein and claimed in the appended claims. Moreover, the scale of integration has tended to increase the deployment of more functions on a single chip, and includes wafer-scale integration. Examples of future architectures include Patterson et al., Design Considerations for Single-Chip Computers of Future, IEEE Trans. on Computers, Vol. C-29, No. 2 (IEEE, 1980, 2), pages 108-115. This example is described in the use of dynamic and static memories as local memories for one million transistor integrated circuits. The present invention does not require dynamic memory cells and static memory cells, but rather integrates wafers to provide an advantage in memory performance in which a single type of memory cell (e.g., a dynamic RAM cell) is fabricated on the same wafer. It is used for super-scale integration that entails. Moreover, the system of FIG. 6 performs cache memory control and main memory control to achieve the efficient performance of two functions in a single chip or wafer-scale integration application, as well as the single control block achieves the benefit of improved performance. To do it. It is also contemplated that the present invention is particularly advantageous for the application of multiprocessor systems as described above where multiple processors are integrated on a wafer scale.

본 발명의 양호한 실시예는 동적 해독/기입 등속 호출 메모리로서 구성된 메모리에 관련하여 기술하였다. 본 발명은 이러한 메모리에 특히 분명한 이점이 있다고 생각하지만, 본 발명은 정적 해독/기입 메모리에서도 얻을 수 있다. 더욱이, 본 발명의 실시예의 상세한 설명 부분의 여러가지 변경 및 본 발명의 추가 실시예는 본 분야에 숙련된 기술자들이라면 실행할 수 있다. 이러한 변경 및 추가 실시예는 첨부된 특허 청구의 범위내에서 본 발명의 의의를 벗어나지 않고 실행할 수 있다.Preferred embodiments of the present invention have been described with reference to a memory configured as a dynamic decryption / write constant velocity call memory. The present invention believes that there is a particularly obvious advantage to such a memory, but the present invention can also be obtained from a static decryption / write memory. Moreover, various modifications of the detailed description of the embodiments of the present invention and further embodiments of the present invention can be made by those skilled in the art. Such modifications and further embodiments can be made without departing from the spirit of the invention within the scope of the appended claims.

Claims (18)

행 및 열로 배열된 다수의 메모리 셀을 갖고 있는 형태의 메모리 디바이스에 있어서, 행 어드레스 신호에 응답하는 행에 있는 다수의 메모리 셀을 선택하기 위한 행 디코더, 상기 행 디코더에 의해 선택된 메모리 셀의 데이타 상태를 각각 감지하기 위한 다수의 감지 증폭기, 상기 셀 감지 중폭기들 중 하나와 각각 관련되어 있는 래치의 제1 셋트, 상기 감지 중폭기들 중 하나와 각각 관련되어 있는 래치의 제2 셋트를 구비 함으로써, 상기 다수의 감지 중폭기들의 각각이 상기 제1 셋트 및 상기 제2 셋트중의 래치와 관련되게 되고,A memory device of the type having a plurality of memory cells arranged in rows and columns, comprising: a row decoder for selecting a plurality of memory cells in a row in response to a row address signal, the data state of the memory cells selected by the row decoder A plurality of sense amplifiers for respectively sensing a plurality of sense amplifiers, a first set of latches each associated with one of the cell sense amplifiers, and a second set of latches each associated with one of the sense amplifiers, Each of the plurality of sense attenuators is associated with a latch in the first set and the second set, 상기 다수의 감지 중폭기들의 각각을 제1 셋트 선택 신호에 응답하는 상기 제1 셋트 중관련 래치에 접속시키고, 상기 다수의 감지 중폭기들의 각각을 제2 셋트 선택 신호에 응답하는 상기 제2 셋트 중 관련 래치에 접속시키기 위한 수단, 및 열 어드레스 신호에 응답하는 외부 억세스에 대하여 상기 제1 셋트 또는 상기 제2 셋트중 하나의 래치를 선택하기 위한 열 디코더를 포함하는 것을 특징으로 하는 메모리 디바이스.Connecting each of the plurality of sense amplifiers to an associated latch of the first set in response to a first set select signal, and each of the plurality of sense amplifiers in the second set to respond to a second set select signal. Means for connecting to an associated latch, and a column decoder for selecting one of the first set or the second set for external access responsive to a column address signal. 제1항에 있어서, 상기 다수의 감지 증폭기가 상기 다수의 메모리 셀의 제1 및 제2 열 그룹에 관련된 감지 증폭기의 제1 및 제2 라인을 각각 포함하고, 상기 제1 및 제2 열 그룹 내의 메모리 셀이 상기 행 디코더에 의해 선택되는 것을 특징으로 하는 메모리 디바이스.2. The plurality of sense amplifiers of claim 1, wherein the plurality of sense amplifiers comprise first and second lines of sense amplifiers associated with first and second column groups of the plurality of memory cells, respectively, and within the first and second column groups. And a memory cell is selected by the row decoder. 제2항에 있어서, 상기 래치의 제1 및 제2 셋트가 감지 증폭기의 상기 제1 및 제2 라인에 관련된 래치의 제1 및 제2 라인을 상기 제1 및 제2 셋트 내에 각각 포함하고, 감지 증폭기의 상기 제1 라인을, 상기 열 어드레스 신호 및 상기 제1 셋트 선택 신호에 응답하는 상기 제1 셋트 내의 래치들의 상기 제1 라인에 접속시키고, 감지 증폭기의 상기 제1 라인을, 상기 열 어드레스 신호 및 상기 제2 셋트 선택 신호에 응답하는 상기 제2 셋트 내의 래치들의 상기 제1 라인에 접속시키기 위한 수단, 및 감지 증폭기의 상기 제2 라인을, 상기 열 어드레스 신호 및 상기 제1 셋트 선택 신호에 응답하는 상기 제1 셋트 내의 래치들의 상기 제2 라인에 접속시키고, 감지 증폭기의 상기 제2 라인을, 상기 열 어드레스 신호 및 상기 제2 셋트 선택 신호에 응답하는 상기 제2 셋트 내의 래치들의 상기 제2 라인에 접속시키기 위한 수단을 더 포함하는 것을 특징으로 하는 메모리 디바이스.3. The method of claim 2, wherein the first and second sets of latches comprise first and second lines of latches associated with the first and second lines of sense amplifiers in the first and second sets, respectively, Connect the first line of an amplifier to the first line of latches in the first set responsive to the column address signal and the first set select signal, and connect the first line of a sense amplifier to the column address signal And means for connecting the first line of latches in the second set responsive to the second set select signal, and the second line of a sense amplifier responsive to the column address signal and the first set select signal. Connect the second line of the sense amplifier to the second line of latches in the first set, the second line of the sense amplifier being in response to the column address signal and the second set select signal. And means for connecting to said second line of latches. 제3항에 있어서, 각각의 감지 증폭기가 상기 다수의 메모리 셀의 단일 열에 대응하는 것을 특징으로 하는 메모리 디바이스.4. The memory device of claim 3, wherein each sense amplifier corresponds to a single column of the plurality of memory cells. 제4항에 있어서, 상기 열 어드레스 신호 부분의 제1 값이 감지 증폭기의 상기 제1 라인에 관련된 열에 대응하고, 상기 열 어드레스 신호 부분의 제2 값이 감지 증폭기의 상기 제2 라인에 관련된 열에 대응하는 것을 특징으로 하는 메모리 디바이스.5. The method of claim 4 wherein the first value of the column address signal portion corresponds to a column associated with the first line of a sense amplifier and the second value of the column address signal portion corresponds to a column associated with the second line of a sense amplifier. And a memory device. 제3항에 있어서, 감지 증폭기의 상기 제1 라인을 래치들의 상기 제1 및 제2 셋트에 접속시키기 위한 상기 수단 및 감지 증폭기의 상기 제2 라인을 래치들의 상기 제1 및 제2 셋트에 접속시키기 위한 상기 수단이 패스 트랜지스터를 각각 포함하는 것을 특징으로 하는 메모리 디바이스.4. The method of claim 3, wherein said means for connecting said first line of sense amplifiers to said first and second sets of latches and connecting said second line of sense amplifiers to said first and second sets of latches. Wherein said means for each comprises a pass transistor. 제1항에 있어서, 상기 메모리 셀이 판독/기입 메모리 셀인 것을 특징으로 하는 메모리 디바이스.2. The memory device of claim 1, wherein said memory cell is a read / write memory cell. 제1항에 있어서, 상기 메모리 셀이 판독 전용 메모리 셀인 것을 특징으로 하는 메모리 디바이스.2. The memory device of claim 1, wherein the memory cell is a read-only memory cell. 제1항에 있어서, 상기 다수의 감지 증폭기가 상기 다수의 메모리 셀의 제1 및 제2 행 그룹에 관련된 제1 및 제2의 감지 증폭기 그룹을 포함하고, 상기 다수의 메모리 셀의 각각의 열이 상기 제1 그룹 내의 감지 증폭기 및 상기 제2 그룹 내의 감지 증폭기에 관련되는 것을 특징으로 하는 메모리 디바이스.2. The method of claim 1, wherein the plurality of sense amplifiers comprise first and second sense amplifier groups associated with first and second row groups of the plurality of memory cells, wherein each column of the plurality of memory cells is And a sense amplifier in the first group and a sense amplifier in the second group. 제9항에 있어서, 상기 다수의 메모리 셀의 열에 각각 관련된 국부 데이타 라인, 상기 제1의 감지 증폭기 그룹을 상기 제1 행 그룹 내의 임의의 행을 선택하는 상기 행 어드레스 신호에 응답하는 상기 국부 데이타 라인에 접속시키기 위한 수단 및 상기 제2 감지 중폭기의 그룹을 상기 제2 행 그룹 내의 임의의 행을 선택하는 상기 행 어드레스 신호에 응답하는 상기 국부 데이타 라인에 접속시키기 위한 수단을 더 포함하는 것을 특징으로 하는 메모리 디바이스.10. The local data line of claim 9, further comprising: a local data line each associated with a column of said plurality of memory cells, said local data line responsive to said row address signal selecting said first sense amplifier group any row within said first row group; Means for connecting to the local data line responsive to the row address signal selecting any row in the second row group and means for connecting the group of second sense attenuators. Memory device. 제10항에 있어서, 각각의 상기 제1 및 제2의 감지 증폭기 그룹이 상기 다수의 메모리 셀의 제1 및 제2 열의 그룹에 각각 관련된 감지 증폭기의 제1 및 제2 라인을 각각 더 포함하는 것을 특징으로 하는 메모리 디바이스.11. The method of claim 10, wherein each of said first and second sense amplifier groups further comprises first and second lines of sense amplifiers respectively associated with groups of first and second columns of said plurality of memory cells. And a memory device. 제11항에 있어서, 상기 래치의 제1 및 제2 셋트가 상기 제1 및 제2 그룹 내의 상기 제1 및 제2의 감지 증폭기 라인에 관련된 제1 및 제2의 래치의 라인을 상기 제1 및 제2 셋트 내에 포함하고, 상기 제1 열의 라인에 관련된 상기 국부 데이타 라인을 상기 열 어드레스 신호 및 상기 제1 셋트 선택 신호에 응답하는 상기 제1 셋트 내의 상기 제1 래치의 라인에 접속시키고, 상기 감지 증폭기의 제1 라인을 상기 열 어드레스 신호및 상기 제2 셋트 선택 신호에 응답하는 상기 제2 셋트 내의 상기 래치의 제1 라인에 접속시키기 위한 수단, 및 상기 열의 제2 라인에 관련된 상기 국부 데이타 라인을 상기 열 어드레스 신호 및 상기 제1 셋트 선택 신호에 응답하는 상기 제1 셋트 내의 상기 래치의 제2 라인에 접속시키고, 상기 감지 증폭기의 제2 라인을 상기 열 어드레스 신호 및 상기 제2 셋트 선택 신호에 응답하는 상기 제2 셋트 내의 상기 래치의 제2 라인에 접속시키기 위한 수단을 더 포함하는 것을 특징으로 하는 메모리 디바이스.12. The first and second sets of latches of claim 11, wherein the first and second sets of latches comprise lines of first and second latches associated with the first and second sense amplifier lines in the first and second groups. Connect the local data line associated with the line of the first column to a line of the first latch in the first set responsive to the column address signal and the first set select signal, the sensing included in a second set; Means for connecting a first line of an amplifier to a first line of said latch in said second set responsive to said column address signal and said second set select signal, and said local data line associated with a second line of said column; Connect a second line of the latch in the first set responsive to the column address signal and the first set select signal, and connect a second line of the sense amplifier to the column address signal And means for connecting to a second line of the latch in the second set responsive to the second set select signal. 제12항에 있어서, 상기 감지 증폭기의 제1 그룹을 접속시키기 위한 상기 수단이 상기 제1 그룹 내의 상기 감지 증폭기의 상기 제1 라인을 상기 제1 그룹 내에서 행을 선택하는 상기 행 어드레스 및 상기 제1 라인을 선택하는 상기 열 어드레스에 응답하여 이와 관련된 국부 데이타 라인에 접속시키고, 상기 제1 그룹 내의 상기 감지 증폭기의 제2 라인을 상기 제1 그룹 내에서 행을 선택하는 상기 행 어드레스 및 상기 제2 라인을 선택하는 상기 열 어드레스에 응답하여 이와 관련된 국부 데이타 라인에 접속시키며, 상기 감지 증폭기의 제2 그룹을 접속시키기 위한 상기 수단이 상기 제2 그룹내의 감지 증폭기의 제1 라인을 상기 제2 그룹 내에서 행을 선택하는 상기 행 어드레스 및 상기 제1 라인을 선택하는 상기 열 어드레스에 응답하여 이와 관련된 국부 데이타 라인에 접속시키고, 상기 제2 그룹 내의 상기 감지 증폭기의 제2 라인을 상기 제2 그룹 내에서 행을 선택하는 상기 행 어드레스 및 상기 제2 라인을 선택하는 상기 열 어드레스에 응답하여 이와 관련된 국부 데이타 라인에 접속시키는 것을 특징으로 하는 메모리 디바이스.13. The apparatus of claim 12, wherein the means for connecting a first group of sense amplifiers selects a row within the first group of the first line of the sense amplifiers in the first group. The row address and the second for connecting a second line of the sense amplifier in the first group to select a row within the first group in response to the column address selecting one line; And in response to said column address selecting a line, said means for connecting said second group of sense amplifiers to connect said first line of sense amplifiers in said second group within said second group. Local data associated therewith in response to the row address for selecting a row and the column address for selecting a first line in A local data line associated with said line in response to said row address selecting said row in said second group and said second address of said sense amplifier in said second group and said column address selecting said second line And a memory device. 데이타에 따라 동작을 수행하고, 메모리 어드레스를 제공하며 데이타를 수신할 수있는 데이타 처리 장치, 행 및 열로 배열된 주 어레이와, 상기 어레이의 동일한 열의 다른 행에 대응하는 데이타를 저장하기 위한 제1 및 제2 캐시 셋트를 갖고 있으며, 메모리 어드레스를 수신하기 위해 어드레스 버스에 접속되고, 데이타를 제공하기 위해 상기 데이타 처리 장치에 접속된 메모리 어드레스를 수신하기 위해 상기 데이타 처리 장치에 접속되고 어드레스를 제공하기 위해 어드레스 버스에 접속된 메모리 제어기를 포함하며, 상기 메모리 제어기는, 상기 데이타 처리 장치에 의해 제공된 메모리 어드레스가 상기 메모리의 상기 제1 또는 제2 캐시 셋트 내에 저장된 데이타에 대응하는지 여부, 상기 데이타 처리 장치에 의해 제공된 상기 메모리 어드레스가, 상기 메모리가 상기 제공된 어드레스에 대응하는 제1 캐시 셋트의 위치에 저장된 데이타를 상기 데이타 처리 장치에 전달하도록 어드레스를 상기 어드레스 버스에 제공하고, 제1 셋트 선택 신호를 상기 메모리에 제공하기 위해 상기 메모리의 상기 제1 캐시 셋트 내의 한 위치에 대응하는지의 여부,A data processing device capable of performing an operation according to the data, providing a memory address, and receiving data, a primary array arranged in rows and columns, and a first array for storing data corresponding to other rows in the same column of the array; Having a second cache set, connected to an address bus to receive a memory address, and connected to and providing an address to the data processing device to receive a memory address connected to the data processing device to provide data A memory controller connected to an address bus, wherein the memory controller determines whether a memory address provided by the data processing apparatus corresponds to data stored in the first or second cache set of the memory. The memory address provided by the Providing an address to the address bus for delivering data stored at a location of a first cache set corresponding to the provided address to the data processing device, and for providing a first set select signal to the memory; Whether it corresponds to a location in the first cache set, 상기 데이타 처리 장치에 의해 제공된 상기 메모리 어드레스가, 상기 메모리가 상기 제공된 어드레스에 대응하는 제2 캐시 셋트의 위치에 저장된 데이타를 상기 데이타 처리 장치에 전달하도록 어드레스를 상기 어드레스 버스에 제공하고, 제2 셋트 선택 신호를 상기 메모리에 제공하기 위해 상기 메모리의 상기 제2 캐시 셋트 내의 한위치에 대응하는지의 여부, 및 상기 데이타 처리 장치에 의해 제공된 상기 메모리 어드레스가, 상기 메모리가 상기 메모리 어드레스에 대응하는 상기 어레이의 위치에 저장된 데이타를 상기 데이타 처리 장치에 전달하도록 어드레스를 상기 어드레스 버스에 제공하고 제어 신호를 상기 메모리에 제공하기 위해 상기 메모리의 상기 제1 또는 제2 캐시 셋트내에 저장된 데이타에 대응하는지의 여부를 결정하는 것을 특징으로 하는 데이타 처리 시스템.The memory address provided by the data processing apparatus provides an address to the address bus such that the memory delivers data stored at a location of a second cache set corresponding to the provided address to the data processing apparatus, and a second set Whether the memory address corresponds to a location in the second cache set of the memory for providing a selection signal to the memory, and the memory address provided by the data processing apparatus is such that the memory corresponds to the memory address. Whether to correspond to data stored in said first or second cache set of said memory for providing an address to said address bus and delivering a control signal to said memory for delivering data stored at a location of said data processing device to said data bus. Characterized by determining Data processing system. 제14항에 있어서, 상기 메모리가 판독/기입 메모리이고, 상기 메모리 제어기가 판독/기입 제어 신호를 요구된 동작을 대응하는 상기 메모리에 제공하는 것을 특징으로 하는 데이타 처리 시스템.15. The data processing system of claim 14, wherein the memory is a read / write memory, and wherein the memory controller provides a read / write control signal to the corresponding memory for the requested operation. 제15항에 있어서, 상기 메모리가 동적 판독/기입 메모리이고, 상기 메모리 제어기가 재생 동작이 필요한지의 여부를 결정하고, 재생 동작이 필요하다는 결정에 응답하여 재생을 수행하기 위해 제어 신호를 상기 메모리에 더 제공하는 것을 특징으로 하는 데이타 처리 시스템.16. The memory device of claim 15, wherein the memory is a dynamic read / write memory, and the memory controller determines whether a playback operation is necessary, and transmits a control signal to the memory to perform playback in response to determining that a playback operation is required. A data processing system further comprising. 제14항에 있어서, 상기 제1 및 제2 캐시 셋트가 제1 및 제2 캐시 라인을 각각 포함하고, 상기 데이타 처리 장치에 의해 제공된 상기 어드레스 부분이 상기 제1 또는 제2 캐시 라인 중 어느 라인이 선택되어야 하는지를 결정하는 것을 특징으로 하는 데이타 처리 시스템.15. The apparatus of claim 14, wherein the first and second cache sets comprise first and second cache lines, respectively, and wherein the address portion provided by the data processing device is any one of the first or second cache lines. A data processing system characterized by determining whether it should be selected. 제17항에 있어서, 상기 메모리 제어기가 상기 제1 캐시 셋트의 상기 제1 캐시 라인 내에 저장된 행, 상기 제1 캐시 셋트의 상기 제2 캐시 라인 내에 저장된 행, 상기 제2 캐시 셋트의 상기 제1 캐시 라인 내에 저장된 행, 및 상기 제2 캐시 셋트의 상기 제2 캐시 라인 내에 저장된 행을 대응하는 메모리 어드레스 부분을 저장하고, 상기 데이타 처리 장치에 의해 제공된 메모리 어드레스가 상기 메모리 어드레스 부분을 저장된 부분과 비교함으로써 상기 메모리의 상기 제1 또는 제2 캐시 셋트 내에 저장된 데이타에 대응하는지의 여부를 결정하는 것을 특징으로 하는 데이타 처리 시스템.18. The system of claim 17, wherein the memory controller is a row stored in the first cache line of the first cache set, a row stored in the second cache line of the first cache set, and the first cache of the second cache set. Storing a memory address portion corresponding to a row stored in a line, and a row stored in the second cache line of the second cache set, wherein the memory address provided by the data processing apparatus compares the memory address portion with the stored portion Determining whether it corresponds to data stored in said first or second cache set of said memory.
KR1019900015750A 1989-10-02 1990-09-29 High-density memory with on-chip caches associated with N-direction sets and systems using them KR100193193B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US41609489A 1989-10-02 1989-10-02
US416094 1989-10-02

Publications (2)

Publication Number Publication Date
KR910008575A KR910008575A (en) 1991-05-31
KR100193193B1 true KR100193193B1 (en) 1999-06-15

Family

ID=23648505

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900015750A KR100193193B1 (en) 1989-10-02 1990-09-29 High-density memory with on-chip caches associated with N-direction sets and systems using them

Country Status (2)

Country Link
JP (1) JPH03205680A (en)
KR (1) KR100193193B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200404A (en) * 1993-12-03 1995-08-04 Internatl Business Mach Corp <Ibm> Cache memory using dram
WO1998003918A1 (en) * 1996-07-19 1998-01-29 Hitachi, Ltd. Cache memory device and information processing system

Also Published As

Publication number Publication date
KR910008575A (en) 1991-05-31
JPH03205680A (en) 1991-09-09

Similar Documents

Publication Publication Date Title
US5588130A (en) Semiconductor memory device for simple cache system
US6170036B1 (en) Semiconductor memory device and data transfer circuit for transferring data between a DRAM and a SRAM
US5111386A (en) Cache contained type semiconductor memory device and operating method therefor
US5184320A (en) Cached random access memory device and system
US5226009A (en) Semiconductor memory device supporting cache and method of driving the same
US5636174A (en) Fast cycle time-low latency dynamic random access memories and systems and methods using the same
US5680363A (en) Semiconductor memory capable of transferring data at a high speed between an SRAM and a DRAM array
US5226139A (en) Semiconductor memory device with a built-in cache memory and operating method thereof
EP0138964B1 (en) Apparatus for controlling access to a memory
US6965540B2 (en) Memory device operable in either a high-power, full-page size mode or a low-power, reduced-page size mode
US5815456A (en) Multibank -- multiport memories and systems and methods using the same
US5329489A (en) DRAM having exclusively enabled column buffer blocks
KR100227133B1 (en) A memory architecture using conserved addressing and systems and methods using the same
US7917692B2 (en) Method and system for using dynamic random access memory as cache memory
US5444652A (en) Semiconductor memory device having a memory cell unit including a plurality of transistors connected in series
WO2005050662A1 (en) Method and apparatus for partial refreshing of dram
US5983023A (en) Memory-contained processor
JPH08180675A (en) Multiple page memory
KR100193193B1 (en) High-density memory with on-chip caches associated with N-direction sets and systems using them
EP1523712B1 (en) A system, apparatus, and method for a flexible dram architecture
KR100482380B1 (en) SRAM compatable memory having memory banks capable of indepedently writing access and Operating Method thereof
JPH11126477A (en) Hierarchical column selection line architecture for multi-bank dram
JPH04141888A (en) Semiconductor storage device
JP3386457B2 (en) Semiconductor storage device
JPH07153261A (en) Semiconductor storage

Legal Events

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

Payment date: 20030116

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee