KR0175983B1 - 데이타 처리 시스템 - Google Patents
데이타 처리 시스템 Download PDFInfo
- Publication number
- KR0175983B1 KR0175983B1 KR1019950033599A KR19950033599A KR0175983B1 KR 0175983 B1 KR0175983 B1 KR 0175983B1 KR 1019950033599 A KR1019950033599 A KR 1019950033599A KR 19950033599 A KR19950033599 A KR 19950033599A KR 0175983 B1 KR0175983 B1 KR 0175983B1
- Authority
- KR
- South Korea
- Prior art keywords
- cache
- input
- write
- memory
- data
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0835—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/30—Providing cache or TLB in specific location of a processing system
- G06F2212/303—In peripheral interface, e.g. I/O adapter or channel
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)
Abstract
본 발명은 프로세서, 시스템 메모리, 하나 이상의 입/출력 채널 제어기(IOCC), 및 시스템의 여러 구성요소 사이에서 인스트럭견, 어드레스 및 데이타를 통신하기 위해 프로세서, 메모리 및 IOCC를 공통으로 접속하는 시스템 버스를 포함하는 데이타 처리 시스템에 관한 것이다. IOCC는 다수의 라인을 갖는 페이지형 캐시 저장 장치를 포합하며, 페이지의 각각의 라인은 예를 들면 32 바이트일 수 있다.
캐시내의 각각의 페이지는 또한 이른바 WIM으로 지칭피는 속성 비트들을 비롯하여 그 페이지에 대한 각종 속성 비트를 갖는다. W 비트는 라이트 쓰루 동작(write through operation)을 제어하고, 1 비트는 캐시 금지(cache inhibit)를 제어하며, M 비트는 메모리 코히어런시 (memory coherency)를 제어한다. IOCC는 시스템 메모리에 DMA되는 캐시 라인에 대한 페이지 테이블 속성 비트를 인지하고 있지 못하므로, 성능 저하없이 메모리 코히어런시 및 캐시 일관성을 유지해야 한다. 시스템 메모리에 데이타를 DMA 방식으로 기록하기 위해, 전역적(global)이고 캐시가능(cachable)하며, 요구 기반의 라이트 쓰루로 일컬어지는 새로운 캐시 속성이 생성된다. 캐시 라인내의 개별 기록은 IOCC에 의해 축적되어, 입/출력 버스 마스터가 다른 캐시 라인을 액세스하거나 흑은 입/출력 버스를 포기할 때에만 시스템 메모리에 기록된다.
Description
제1도는 본 발명을 구현하는 데이타 처리 시스템의 시스템 블럭도.
제2도는 본 발명에 따른 요구 기반의 라이트 쓰루 캐시의 블럭도.
제3도는 본 발명에 따른 요구 기반의 라이트 쓰루 캐시 기법의 동작을 설명하는 흐름도.
* 도면의 주요부분에 대한 부호의 설명
100 : 멀티프로세서 시스템 102, 104, 106 : 프로세서 장치
110 : 메모리 제어기 112 : 시스템 메모리
114, 116, 118 : 입/출력 채널 제어기 120 : 고성능 입/출력 장치
160 : 서브시스템 및 원시 입/출력 서브시스템
200 : 캐시
250 : 입/출력 버스 인터페이스 제어기
본 발명은 데이타 처리 시스텝(data processing system)에 관한 것으로,특히 하나 이상의 프로세서, 시스템 저장 장치, 시스템 버스, 및 하나 이상의 입/출력 채널 제어기(inpuVoutDut channel controllers : loco)를 구비하며, 입/출력 채널 제어기로부터 시스템 메모리로의 직접 메모리 액세스(direct memory access: DMA)를 가능케 하는 데이타 처리 시스템에 관한 것이다.
직접 메모리 액세스(DMA)는 컴퓨터 분야만큼 오래전부터 알려진 기법이다. 이 기법은 1956년 칼 크리스티안센(Carl Christiansen) 등에 의해 IBM 705형 컴퓨터 시스템용으로 처음 개발되었다. 크리스티안겐 등에 특허 허여된 미국특허 제 3,812,475호는 폰 노이만식 컴퓨터 구조 시스템에 적용된 기본적인 DMA기법을 기술하고 있다.
캐시(cache) 및 라이트 쓰루 캐시(write through cache)를 포함하는 시스텝용 DMA 기법은 당해 분야에서는 일반적으로 잘 알려진 기법이다. 전형적인 라이트 쓰루 캐시는 각각의 캐시 변경을 적절한 시스템 메모리 변경과 동시에 행한다. 따라서, 다수의 캐시 변경이 발생하면,그에 상당하는 다수의 시스텝 메모리의 기록 동작이 발생한다.
라이트 쓰루 캐시는 캐시 제어기의 복잡성(cache controller complexity)을 감소시키고 캐시 및 메모리의 데이타 불일치(cache and memory data inconsistencies)를 최소화하기 위해 컴퓨터 시스템에서 통상적으로 사용되고 있다.
프로세서, IOCC 및 입/출력 장치는 모두 이러한 잇점을 성취하기 위해 통상적인 라이트 쓰루 캐시를 사용하고 있다.
본 발명의 목적은, 캐시를 통해 시스템 메모리로 기록될 데이타가 캐시에 축적되어 사전결정된 요구 기준(predertermined demand criteria)에 기초하여 시스템 메모리에 블럭 단위로 기록되는,요구 기반의 라이트 쓰루 캐시 기법(demand based write through cache technique)을 적용함으로써 시스템 성능을 향상시키는 데 있다.
본 발명의 다른 목적은 시스템 메모리로의 BMA 기록시 바이트 단위로 기록을 순서화하는 데 있다.
따라서, 데이타 처리 시스템은 프로세서, 시스템 메모리, 하나 이상의 입/출력 채널 제어기(IOCC) 및 시스템의 여러 구성 요소 사이에서 인스트럭션, 어드레스 및 데이타를 통신하기 위해 프로세서, 메모리 및 IOCC를 공통으로 접속하는 시스템 버스를 포함한다. IOCC는 다수의 라인을 갖는 페이지형 캐시 저장 장치(Daged cache storage)를 포함하며, 페이지의 각 라인은 예를 들면 32 바이트일 수 있다. 캐시내의 각각의 페이지는 또한 이른바 WIM으로 지칭되는 속성 비트들(attribute bits)을 비롯하여 그 페이지에 대한 여러 속성 비트를 갖는다. W 비트는 라이트 쓰루 동작(write through operation)을 제어하고, 1 비트는 캐시 금지(cache inhibit) 를 제어하며, M 비트는 메모리 코히어런시 (memory coherency)를 제어한다. IOCC는 시스템 메모리에 DMA되고 있는 캐시 라인에 대한 페이지 테이블 속성 비트를 인지하고 있지 못하므로, 성능 저하없이 메인메모리 코히어런시 및 캐시 일관성을 유지해야 한다. 시스템 메모리에 데이타를 DMA에 의해 기록하기 위해, 전역적(global)이고 캐시가능(cachable)하며, 요구 기반의 라이트 쓰루로 일컬어지는 새로운 캐시 속성이 생성된다. 캐시 라인내의 개별 기_록은 IOCC에 의해 축적되어, 입/출력 버스 마스터가 상이할 캐시 라인을 액세스하거나 혹은 입/출력 버스를 포기(relinquish)할 때에만 시스템 메모리에 기록된다.
본 발명의 장점은 본 발명에 따른 방법 및 시스템이 기록 데이타를 축적하여, 사전결정된 요구 기준에 기초하여 시스템 메모리에 블럭 단위로 기록을 수행함으로써 고성능의 라이트 쓰루캐시(write through cache)를 제공할 수 있다는 것이다.
본 발명의 다른 특징은 요구 기반의 라이트 쓰루 캐시 기법이, 시스템 프로세서 및 다른 입/출력 장치와 연관된 라이트 쓰루 캐시에 효율적으로 적용될 수 있다는 것이다.
전술한 설명은 이어지는 본 발명의 상세한 설명이 보다 용이하게 이해될 수 있도록 하기 위해 개괄한 것이다. 본 발명의 추가적인 특징 및 장점이 이하 상세히 개시될 것이다.
도면에 도시된 하드웨어를 참조하여, 본 발명의 프로세스 관련특징을 설명할 수 있다. 본 발명의 특징을 더욱 명확하게 설명하기 위해, 당업자에게 명백한 다른 통상적인 특징에 대한 설명은 생략한다. 당업자는 멀티유저(multiuser), 멀티프로세서 운영 체제, 및 가상 메모리를 포함한 메모리의 관리, 프로세서 스케쥴링, 프로세스 및 프로세서를 위한 동기화 수단, 메시지 전송, 통상의 장치 드라이버, 터미널 및 네트워크 지원, 시스템 초기화, 인터럽트 관리, 시스템 호출 수단 및 관리수단 등에 대한 필요 요건에 정통해 있다는 것을 전제로 하고 있다.
제1도를 참조하면, 본 발명을 구현하는 데이타 처리 시스템이 도시되어 있다. 멀티프로세서 시스템(100)은 시스템 버스(108)에 작동적으로 접속된 다수의 프로세서 장치(102, 104, 106)를 포함한다. 시스템 버스(108)에는 또한 시스템 메모리(112)에 대한 액세스를 제어하는 메모리 제어기(110)와, 입/출력 채널 제어기(114, 116, 118)가 접속된다. 부가적으로, 고성능 입/출력 장치(120)가 시스템 버스(108)에 접속될 수 있다. (102-120)으로 도시된 시스템 각 구성요소는 시스템 제어기(130)의 제어하에서 동작하며, 이 제어기(130)는, 프로세서(102)에 접속된 라인(132), 프로세서(104)에 접속된 라인(134), 프로세서(106)에 접속된 라인(136), 메모리 제어기(110)에 접속된 라인(140), 입/출력 채널 제어기(114)메 접속된 라인(144), 입/출력 채널 제어기(116)에 접속된 라인(146), 입/출력 채널 제어기(118)에 접속된 라인(148) 및 고성능 입/출력 장치(120)에 접속된 라인(150) 등에 의해, 시스템 버스(108)에 접속된 각 장치와 통신한다. 버스 액세스의 요구 및 버스 액세스의 승인은 모두 시스템 제어기(130)에 의해 제어된다.
입/출력 채널 제어기(114)는 시스템 입/출력 서브시스템 및 원시 입/출력 서브시스템(system I/O subsystem and native I/O subsystem)(160)에 접속되어 그들 서브시스템을 제어한다.
각각의 프로세서 장치(102, 104, 106)는 프로세서 및 캐시 저장 장치를 포함할 수도 있다.
제2도를 참조하여, 본 발명에 따른 라이트 쓰루 캐시 동작을 설명한다. 캐시(200)는 두 개의 64 바이트 캐시 라인을 갖는 128 바이트의 순환형 캐시(circular cache)로서 구성되며, 이 캐시는 4 개의 32 바이트 식터(202, 204, 206 및 208)로 분할된다. 이 캐시 구조는 IOCC, 예를 들면 IOCC(114)(제1도 참조)로 하여금 시스템 버스로부터의 32 바이트 혹은 64 바이트 코히어런시 요건을 갖는 시스템을 효율적으로 지원하토록 할 수 있다. 시스템 버스의 코히어런시 요건에 기인하여, IOCC에 의한 DMA 데이타 기록이 시스템 버스상에서 장시간동안 재시도되는 경우가 다수 존재한다. 본 발명에 따른 DMA 기록 캐시 구성은 입/출력 버스 전송과 시스템 버스 트래픽(system bus traffic)을 비쿄적 효율적으로 분리시키는 분리수단을 제공하여 입/출력 버스의 처리효율 및 대역폭을 개선시킬 수 있다. 캐시(200)를 순환형 구조로 접속된 4개의 32 바이트 식터로 구성합으로써, IOCC(114)는 순차 기록 데이타의 파이프라이닝(Pipelining of sequential write data)을 강력하게 수행하고, 이에 따라 입/출력 버스 장치는 입/출력 버스 인터페이스 제어기(250)를 통해 고속의 데이타 전송 속도를 유지할 수 있다.
시스템 메모리 페이지와 관련된 WIM 속성 비트가 WIM 비트의 각 조합의 의미와 더불어 아래의 테이블에 도시되어 있다.
이들 WIM 비트는 운영 체제소프트웨어(operating system software)에 의해 관리되고, 프로세서(102)(및 입/출력 장치) 등에 의해 액세스되어, 시스템 메모리의 각 페이지와 관련된 캐시 속성을 판정하게 된다. 프로세서(102)와는 달리, 대부분의 IOCC(114) 및 입/출력 장치 등은 WIM 속성 비트의 값을 인지하지 못하고 있다. 따라서, 시스템 메모리(112)에 대한 입/출력 DMA동작 동안, IOCC(114)는 입/출력 캐시 및 메모리의 데이타 불일치를 피하기 위해 101 코드를 지원해야만 한다.
이는 IOCC(114)로 하여급 101 코드를 확장하여, 요구 기반의 라이트 쓰루 캐시를 지원가능케 한다. 몇몇 시스템에서, IOCC(114)는 WIM 속성 비트를 인지하여, WIM 비트가 101 코드와 동일한 경우, 요구 기반의 라이트 쓰루 캐시를 지원하고 있다.
제3도를 참조하여,요구 기반의 라이트 쓰루 캐시의 동작을 설명한다. 요구 기반의 라이트 쓰루 캐시가 수행된다면, WIM 비트는 101이 될 것이다.
동작이 개시된 후에, 단계(310)에서 프로세스는 입/출력 DMA 기록 동작을 테스트한다. 이 프로세스는 기록 동작이 수신될 때까지 반복된다. 프로세스는 이후 단계(320)로 진행하여 IOCC 캐시내에 데이타를 기록할 것이다. 이 프로세스는 모든 데이타가 IOCC 캐시로 기록될 때까지 반복될 것이며, 이후 기록이 종료되면 프로세스는 단계(330)로 진행하여 시스템 메모리에 대한 기록 동작이 보류(hold)된다. 단계(330)에서 시스템 메모리에 대한 기록 동작의 보류가 적용되어 아래의 이밴트들 중 하나의 이벤트가 발생할 때까지 프로세스가 대기하게 되며, 이후 시스템 메모리에 대한 보류된 변경 데이타의 블럭 단위의 기록이 허용된다. 단계(340)에서는 입/출력 장치가,
(1) 입/출력 버스를 개방하였는지, (2) 상이한 캐시 라인에 액세스하였는지, (3) DMA 판독 동작을 개시하였는지, 또는 (4) 이전에 액세스된 위치의 어드레스보다 작은 어드레스의 위치에 액세스 하였는지를 판정하는 테스트가 수행된다.
이들 이벤트들중 어떠한 것도 발생하지 않았다면, 프로세스는 단계(320)로 되돌아가서 추가 데이타를 IOCC 캐시에 기록한다. 단계(340)에서 제시된 이벤트들중 어떠한 이벤트라도 발생하였다면, 단계(350)에서 시스템 메모리에 변경된 데이타를 블럭 단위로 기록한다.
비록 본 발명의 바람직한 실시예는, 데이타가 캐시로 기록된 후 적절한 시기에 시스템 메모리에 기록되는, 요구 기반의 라이트 쓰루 캐시 동작에 대해 기술하였지만, 본 발명은 시스템 메모리로부터 캐시를 통해 데이타가 판독되는 로드 동작(load operation)에 대해서도 동일하게 적용쥘 수 있다. 요구 기반의 리드 쓰루 캐시(demand based read through cache) 동작의 상세한 사항은 당업자에 의해 추가적인 발명없이 쉽게 구현할 수 있을 것이다.
본 발명의 또 다른 특징은 시스템 메모리에 대한 기록 순서를 유지하는 것과 관련된다. 종래 시스템에서, 캐시 레벨 스누핑(cache level snooping), 재시도(retry) 및 푸시 프로토콜(push Drotocal)과 같은 코히어런시 메카니즘이 캐시 및 시스템 메모리 사이의 기록 순서를 유지하는데 사용되어 왔다. (스누핑, 재시도 및 푸시 프로토콜은 당해 분야에서 잘 알려져 있다.)
그러나, 요구 기반의 라이트 쓰루 캐시를 갖는 본 발명에 따른 방법 및 장치는 캐시 레벨 스누핑, 재시도 혹은 푸시를 제공하기 보다는 바이트 단위의 기록 순서화를 제공함으로써 시스템 성능을 상당히 개선시킬 수 있으며 설계의 복잡성을 감소시킬 수 있다.
바이트 단위의 순서화는 요구 기준(demand criteria)에 다른 조건을 부가함으로써 요구 기반의 라이트 쓰루 캐시에 의해 달성된다. 이 조건은 입/출력 버스 마스터가 동일한 캐시 라인내에서 역 방향(backwards)으로 기록하는지의 여부를 판정하기 위한 검사를 수행한다. 즉,어드레스 B 가 동일 라인내에서 어드레스 A보다 작다면, 요구 기반의 라이트 쓰루 캐시 데이타가 시스템 메모리로 전송될 때까지 B에 대한 기록 동작이 지연된다. 따라서, 입/출력 캐시 코히어런시 및 기록 데이타 순서화는,IOCC가 DMA 기록 데이타를 스누프하거나 재시도 혹은 푸시하지 않고도 달성될 수 있다.
이상 본 발명이 바람직한 실시예에 따라 구체적으로 설명되었지만, 본 발명은 상기 실시예에 한정되는 것은 아니며, 그 사상 및 범주를 이탈하지 않는 범위내에서 여러 가지로 변경 가능함은 물론이다.
Claims (3)
- 데이타 처리 시스템에 있어서, ① 하나 이상의 프로세서 장치와, ② 하나의 시스템 메모리와, ③ 하나 이상의 입/출력 장치에 대해 작동적으로 관련된 하나 이상의 입/출력 채널 제어기-상기 입/출력 채널 제어기 각각은 하나의 입/출력 버스를 포함함-와, ④ 상기 프로세서 장치, 상기 메모리 및 상기 입/출력 채널 제어기를 접속하는 시스템 버스와, ⑤ 상기 프로세서 장치, 상기 메모리 및 상기 입/출력 채널 제어기의 동작을 제어하는 시스템 제어기를 포함하되, 상기 각각의 입/출력 채널 제어기는, 상기 프로세서 장치에 의해 사용되며 상기 시스템 메모리 혹은 상기 프로세서 장치로부터의 데이타 라인을 저장하기 위한 요구 기반의 라이트 쓰루 캐시 저장 장치를 더 포함하며, 상기 라이트 쓰루 캐시 저장 장치는 다수의 사전결정된 조건들중의 하나가 캐시로부터 상기 시스템 메모리로의 데이타 기록을 유발할 때까지 추가 데이타가 저장되어 있는 캐시의 요구 기반의 라이트 쓰루 동작을 수행하여 상기 캐시와 상기 시스템 메모리에 저장되어 있는 데이타간의 코히어런시를 보장하는 수단을 포합하며, 상기 입/출력 채널 제어기는 상기 라이트 쓰루 캐시 저장 장치내의 데이타 라인의 일부분에 액세스하기 위한 하나의 어드레스가 이전의 어드레스에 바로 연속되어 있는지를 판정하는 수단과, 상기 요구 기반의 라이트 쓰루 캐시 저장 장치내에 저장된 데이타가 상기 요구 기반의 라이트 쓰루 동작에 의해 상기 시스템 메모리에 기록될 때까지 상기 라이트 쓰루 캐시 저장 장치내의 비연속 어드레스내에 데이타를 기록하는 것을 금지하는 수단을 더 포함하는 데이타 처리 시스템.
- 제1항에 있어서, 상기 라이트 쓰루 캐시 저장 장치는 상기 캐시내에 저장된 각각의 라인과 연관된 다수의 속성 비트를 더 포함하되, 상기 속성 비트는 상기 라인이 라이트 쓰루 라인(write through operation)인지의 여부를 나타내는 제1 비트와, 캐시 동작의 금지 여부를 나타내는 제2 비트와, 메모리 코히어런시에 대한 요건을 나타내는 제3 비트를 포함하는데이타 처리 시스템.
- 제1항에 있어서, 상기 요구 기반의 라이트 쓰루 동작은, 입/출력 장치가 (1) 입/출력 버스를 개방하는 경우, (2) 상이한 캐시 라인에 액세스하는 경우, (3) DMA 판독 동작을 개시하는 경우, 또는 (4) 이전에 액세스된 위치의 어드레스보다 작은 어드례스의 위치에 액세스하는 경우 중의 하나일 때 상기 캐시로부터 상기 시스텝 메모리로의 데이타의 기록을 가능케 하는 데이타 처리 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US31697994A | 1994-10-03 | 1994-10-03 | |
US8/316,979 | 1994-10-03 | ||
US08/316,979 | 1994-10-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR960015368A KR960015368A (ko) | 1996-05-22 |
KR0175983B1 true KR0175983B1 (ko) | 1999-05-15 |
Family
ID=23231576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019950033599A KR0175983B1 (ko) | 1994-10-03 | 1995-09-30 | 데이타 처리 시스템 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5796979A (ko) |
EP (1) | EP0706134A3 (ko) |
JP (1) | JP3266470B2 (ko) |
KR (1) | KR0175983B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100933820B1 (ko) * | 2006-02-07 | 2009-12-24 | 인텔 코오퍼레이션 | 메모리 속성들을 사용하기 위한 기술 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6658537B2 (en) * | 1997-06-09 | 2003-12-02 | 3Com Corporation | DMA driven processor cache |
US6108721A (en) * | 1998-06-29 | 2000-08-22 | Hewlett-Packard Company | Method and apparatus for ensuring data consistency between an i/o channel and a processor |
US6249845B1 (en) | 1998-08-19 | 2001-06-19 | International Business Machines Corporation | Method for supporting cache control instructions within a coherency granule |
US6728869B1 (en) * | 2000-04-21 | 2004-04-27 | Ati International Srl | Method and apparatus for memory latency avoidance in a processing system |
US6785759B1 (en) | 2000-05-10 | 2004-08-31 | International Business Machines Corporation | System and method for sharing I/O address translation caching across multiple host bridges |
AU2002258516A1 (en) * | 2001-03-12 | 2004-02-16 | Mercury Computer Systems, Inc. | Digital data processing apparatus, framework, and methods for dynamically configurable application execution on accelerated resources |
US7958055B2 (en) * | 2003-08-29 | 2011-06-07 | International Business Machines Corporation | Method and apparatus for temporary ownership of digital items in a network data processing system |
US7698229B2 (en) * | 2003-08-29 | 2010-04-13 | International Business Machines Corporation | Method and apparatus for trading digital items in a network data processing system |
US20050050170A1 (en) * | 2003-08-29 | 2005-03-03 | International Business Machines Corporation | Method and apparatus for securely conducting digital property trade |
US20060179173A1 (en) * | 2005-02-02 | 2006-08-10 | Bockhaus John W | Method and system for cache utilization by prefetching for multiple DMA reads |
US7328310B2 (en) * | 2005-02-02 | 2008-02-05 | Hewlett-Packard Development Company, L.P. | Method and system for cache utilization by limiting number of pending cache line requests |
US20060179174A1 (en) * | 2005-02-02 | 2006-08-10 | Bockhaus John W | Method and system for preventing cache lines from being flushed until data stored therein is used |
US7330940B2 (en) * | 2005-02-02 | 2008-02-12 | Hewlett-Packard Development Company, L.P. | Method and system for cache utilization by limiting prefetch requests |
US8108620B2 (en) * | 2009-03-10 | 2012-01-31 | Hewlett-Packard Development Company, L.P. | Cooperative caching technique |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3812475A (en) | 1957-12-26 | 1974-05-21 | Ibm | Data synchronizer |
US3967247A (en) * | 1974-11-11 | 1976-06-29 | Sperry Rand Corporation | Storage interface unit |
US4394733A (en) * | 1980-11-14 | 1983-07-19 | Sperry Corporation | Cache/disk subsystem |
US4713755A (en) * | 1985-06-28 | 1987-12-15 | Hewlett-Packard Company | Cache memory consistency control with explicit software instructions |
US4928225A (en) * | 1988-08-25 | 1990-05-22 | Edgcore Technology, Inc. | Coherent cache structures and methods |
US5519839A (en) * | 1992-10-02 | 1996-05-21 | Compaq Computer Corp. | Double buffering operations between the memory bus and the expansion bus of a computer system |
-
1995
- 1995-09-14 JP JP23640295A patent/JP3266470B2/ja not_active Expired - Fee Related
- 1995-09-22 EP EP95480140A patent/EP0706134A3/en not_active Withdrawn
- 1995-09-30 KR KR1019950033599A patent/KR0175983B1/ko not_active IP Right Cessation
-
1996
- 1996-10-16 US US08/730,994 patent/US5796979A/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100933820B1 (ko) * | 2006-02-07 | 2009-12-24 | 인텔 코오퍼레이션 | 메모리 속성들을 사용하기 위한 기술 |
Also Published As
Publication number | Publication date |
---|---|
KR960015368A (ko) | 1996-05-22 |
EP0706134A2 (en) | 1996-04-10 |
JPH08115289A (ja) | 1996-05-07 |
US5796979A (en) | 1998-08-18 |
EP0706134A3 (en) | 1996-05-29 |
JP3266470B2 (ja) | 2002-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5276836A (en) | Data processing device with common memory connecting mechanism | |
US4141067A (en) | Multiprocessor system with cache memory | |
US5426765A (en) | Multiprocessor cache abitration | |
US5247648A (en) | Maintaining data coherency between a central cache, an I/O cache and a memory | |
KR0175983B1 (ko) | 데이타 처리 시스템 | |
US7337281B2 (en) | Storage system and data caching method in the system | |
US20020144027A1 (en) | Multi-use data access descriptor | |
KR20000036144A (ko) | 다수의 시스템 버스를 가지는 컴퓨터 시스템 내의 메모리 일관성을 유지하기 위한 시스템 및 방법 | |
US5201040A (en) | Multiprocessor system having subsystems which are loosely coupled through a random access storage and which each include a tightly coupled multiprocessor | |
KR940005790B1 (ko) | Dma 기능을 갖춘 정보 처리장치 | |
US5293622A (en) | Computer system with input/output cache | |
EP0512685A1 (en) | Quadrature bus protocol for carrying out transactions in a computer system | |
JPH06318174A (ja) | キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法 | |
US6052762A (en) | Method and apparatus for reducing system snoop latency | |
JPH04250542A (ja) | コンピューターメモリシステム | |
USRE38514E1 (en) | System for and method of efficiently controlling memory accesses in a multiprocessor computer system | |
GB2221066A (en) | Address translation for I/O controller | |
US6397295B1 (en) | Cache mechanism for shared resources in a multibus data processing system | |
US5790892A (en) | Information handling system for modifying coherency response set to allow intervention of a read command so that the intervention is not allowed by the system memory | |
JPH035625B2 (ko) | ||
JP2994917B2 (ja) | 記憶システム | |
JPS6017550A (ja) | キヤツシユメモリ管理方法 | |
EP0377969A2 (en) | I/O cached computer systems | |
JPH0612363A (ja) | メモリ制御装置およびマルチプロセッサシステム | |
JPS58224491A (ja) | デ−タ相関管理処理方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |