KR950008394B1 - 캐쉬 코히런스 프로토콜을 이용한 상태메모리 제어회로 - Google Patents
캐쉬 코히런스 프로토콜을 이용한 상태메모리 제어회로 Download PDFInfo
- Publication number
- KR950008394B1 KR950008394B1 KR1019920004278A KR920004278A KR950008394B1 KR 950008394 B1 KR950008394 B1 KR 950008394B1 KR 1019920004278 A KR1019920004278 A KR 1019920004278A KR 920004278 A KR920004278 A KR 920004278A KR 950008394 B1 KR950008394 B1 KR 950008394B1
- Authority
- KR
- South Korea
- Prior art keywords
- state
- controller
- data
- multiplexer
- cache
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
내용 없음.
Description
도면은 본 발명의 상태메모리 제어회로도이다.
* 도면의 주요부분에 대한 부호의 설명
1a : 4×1멀티플렉서 1b : 2×1멀티플렉서
2a : 캐쉬제어기용 상태메모리 2b : 스누프제어기용 상태메모리
3a, 3b : 상태데이타 저장기
본 발명의 다중프로세서 시스템에 사용되는 다중캐쉬메모리에 관한 것으로, 특히 캐쉬제어기의 상태 천이 요구와 시스템버스의 변화에 따른 스누프제어기의 상태천이 요구를 단방향의 정보로써 순차적으로 간단하게 처리할 수 있게 하는 캐쉬 코히런스 프로토콜(cache coherence protocol)을 이용한 상태메모리 제어회로에 관한 것이다.
일반적으로 멀티프로세서 시스템에서 캐쉬제어기와 스누프 제어기용 상태메모리를 구현함에 있어서 프로세서의 상태데이타 억세스 요구가 오면 캐쉬제어기는 스누프 제어기를 동작하지 못하게(inhibit)하고 역으로 시스템버스에서 상태데이타 억세스 요구가 오면 스누프제어기는 캐쉬제어기를 동작하지 못하게하고 캐쉬메모리를 억세스한다.
위 기술은 시스템버스의 속도가 빠르지 못한때에는 문제가 없었으나, 시스템버스의 전송율이 높아지면서 시스템의 성능에 악영향을 끼쳐왔으며 프로세서의 쓰기(write) 사이클 구동에 따른 캐쉬제어기의 상태 천이 요구와 시스템버스의 변화에 따른 스투프 제어기의 상태천이 요구를 하나의 상태메모리에서 수용하기 위해 1개의 유얼 스택틱 메모리(2-port static ram)를 사용하였다.
이 방법은 듀얼 포트 스태틱 메모리의 비싼가격, 용량의 한계 때문에 큰크기의 캐쉬 메모리 구성이 힘들고, 중재회로가 간단하려면 프로세서 클럭과 시스템버스의 클럭이 동기 되어야만 가능하였다. 그래서 현재 추세인 큰 캐쉬 메모리와 빠르고 동기되지 않은 프로세서와 시스템버스의 구현에는 적합하지 않았다. 따라서 본 발명은 상기의 문제점을 해결하기 위해서 시스템버스의 빈번한 어드레스 전송때문에 이를 감시하는 스누프 제어기를 우선적으로 처리하게 하고, 빠른 전송시간을 가질 수 있게하기 위하여 프로세서의 상태데이타 억세스 요구가 오면 캐쉬제어기는 스누프 제어기를 동작하지 못하게(inhibit)하고, 역으로 시스템버스에서 상태데이타 억세스 요구가 오면 스누프제어기는 캐쉬제어기를 동작 하지못하게 구성하였고, 또한 상태데이타 저장기(queue)를 이용하여 캐쉬제어기의 스누프제어기의 상태데이타에 동일성을 부여할 수 있게 하여 스누프제어기는 전혀 캐쉬제어기에 의해 영향을 받지 않고 동작을 수행할 수 있도록 함을 목적으로 한다.
이하 본 발명을 첨부한 도면을 참조하여 상세히 설명한다. 이하 본 발명에 따른 회로도로서 프로세서로부터의 어드레스와 캐쉬제어기의 상태데이타를 4×1멀티플렉서(4)의 A단자와 B단자에 접속하고, 듀얼로 구성되어 같은 기능을 하는 상태데이타 저장기(3a, 3b)로 부터 출력된 어드레스 또는 상태데이타를 각각 C단자와 D단자에 연결하여 캐쉬제어기로 부터 출력되는 4×1멀티플렉서 선택신호(cs1, cs2)에 캐쉬제어기용 상태메모리(1a)에 출력하는 4×1멀티플렉서(4)와 캐쉬제어기로 부터 출력되어 상태쓰기 신호(cswr)가 "하이" 신호로 액티브될때 캐쉬제어기용 상태메모리로부터 선택된 상태데이타를 기억하고 캐쉬제어기로 출력하는 캐쉬 제어기용 상태메모리(1a)는 4X1멀티플랙서(4)와 상기 스누프 제어기용 상태메모리(1a)에 동일한 데이타가 등록되어 스누프제어기부터 상태쓰기 신호(sswr)의 "하이" 신호로 액티브 될때 저장하고 있던 상태데이타를 스누프제어기로 부터 출력시키는 스누프제어기용 상태메모리(1b)와 스누프제어기의 상태데이타와 시스템버스로 부터의 어드레스 선로를 B단자에 연결한다.
캐쉬제어기와 동일한 데이타를 유지케하기위해 캐쉬제어기의 상태데이타와 프로세서의 어드레스를 프로세서가 캐쉬제어기로 부터 상태데이타의 출력과 동시에 2×1멀티플렉서의 A단자에 연결되고 스누프 제어기의 멀티플렉서 선택신호(SS)를 "하이"레벨로 인에이블 시켜 상태데이타를 스누프제어기용 상태메모리(1b)에 저장할 수 있게 하는 2×1멀티플렉서(2)와 스누프제어기용 상태메모리에 전송됨과 동시에 캐쉬제어기의 클럭 인에이블 신호(CCE0, CCE1)가 번갈아 상태데이타 저장기(3a, 3b)의 인에이블 입력단(CE)를 동기시킴으로써 연속된 데이타를 번갈아 격납하게 된다.
출력시에는 클럭(CLOCK) 신호를 인에이블 신호로 인지하여 저장된 상태데이타를 4×1멀티플렉서(1a) 입력단자(CD)에 동시에 전송하게하는 상태데이타 저장기(3a, 3b)로 구성된다.
이하 본 발명에 따른 도면의 동작을 상세히 설명한다.
설명의 편의를 위하여 먼저 캐쉬제어기의 동작을 설명한다. 시스템버스간에 비동기로 동작하면서 프로세서의 처리속도에 보조를 맞추어주는 상태데이타저장기(3a, 3b)의 데이타 적재상태를 감시하는 역활을 하며 또한 상태데이타 저장기(3a, 3b)에 상태데이타가 완전히 적재되었을시에는 상태데이타 검사기(미도시 됨)가 이를 검출하고 상기의 정보를 인식한 캐쉬제어기로 부터 "하이"레벨의 클럭신호로 상태데이타 저장기(3a, 3b)에 저장된 상태데이타를 입력된 순서대로 출력하고, 상기의 상태데이타는 4×1멀티플렉서(4)의 C와 D단자에 입력되며 A와 B단자에는 프로세서의 어드레스와 캐쉬제어기의 상태데이타가 입력되어 캐쉬제어기용 상태메모리(1a)에 쓰여질(write cycle)를 준비하게 된다.
캐쉬제어기로부터 출력되는 2bit의 멀티플렉서 제어신호(cs1, cs2)에 의해 4×1멀티플렉서 입력단자(A,B,C,D)에 연결된 상세데이타는 캐쉬제어기용 상태메모리(1a)에 기억된다.
캐쉬제어기와 스누프제어기간의 데이타 동일성을 유지하기 위해 캐쉬제어기는 스느프제어기에 상태데이타가 쓰기 사이클을 요청하고 동시에 2×1멀티플레서 A단에 프로세서의 어드레스 또는 캐쉬제어기의 상태데이타가 입력되고, 스누프제어기의 상태데이타와 시스템버스 어드레스는 B단에 입력되어 스누프제어기의 멀티플렉서 선택신호(SS)의 선택에 의해서 스누프 제어기 상태메모리(1b)에 상태데이타를 저장한다.
이하 스느프제어기의 동작을 살펴보면 캐쉬제어기에서 동일성 유지요청이 있었을때 스누프 제어기로 부터의 1bit의 멀티플렉서 선택신호(SS)를 선택하므로써 2×1멀티플렉서(2)는 프로세서쪽으로 연결된 입력단자(A)로 전환하여 프로세서로 부터 출력된 어드레스로 상태데이타를 연결하여 캐쉬제어기가 요청한대로 스누프제어기용 상태메모리(1b)에 쓰기를 한다.
시스템버스상에서 어드레스가 발생했을 경우 시스템버스의 어드레스 또는 스누프제어기의 상태데이타는 2×1멀티플레서(2)의 입력단자(B)에 인결단자에 입력되어 스누프제어기의 멀티플렉서 선택신호(SS)의 구동으로 스누프제어기용 상태메모리(1b)에 상태데이타를 저장함과 동시에 비어있는 상태데이타 저장기(3a, 3b)에도 순서적으로 저장시켜 놓게 된다.
상기에 따른 동작에 의해 캐쉬제어기는 프로세서의 사이클 요구로 상태데이타를 읽을 필요가 있을때 캐쉬 제어기용 상태메모리를 읽고 상태데이타 수정이 필요한 때에는 스누프제어기에 억세스요청을 하므로써 시스템버스가 사용되지 않을때를 이용해 스누프제어기용 상태메모리(1b)를 억세스한다.
또한 스누프제어기용 상태메모리(1b)에 쓰여지는 모든 정보는 동일하게 상태저장기(3a, 3b)에 저장되고 상태저장기에 담겨진 상태데이타는 캐쉬제어기용 상태메모리에 차례로 갱신이된다.
이에 각제어기가 자신의 상태메모리를 읽을때는 각제어기가 자신의 상태메모리를 억세스하게 하고 쓸경우(write cycle)에는 모두 스누프제어기를 통해 스누프제어기용 상태메모리(1a)와 상태데이타 저장기(3a, 3b)에 순차적으로 입력시킬수 있게 한 것이다.
상술한 바와 같이 본 발명은 항상 시스템버스에서 동기되어서 상태메모리의 액서스되므로 빠른전송의 시스템버스에 큰 효과가 있으며 스누프제어기의 동작을 우선적으로 처리하게 되어 프로세서의 처리 속도를 크게 향상시켰다.
또한, 프로세서클럭에 동기되지 않게 상태데이타 저장기에서 동기화 함으로써 클럭에 관계없이 사용될 수 있게했다.
Claims (1)
- 다중프로세서 시스템의 다중 캐쉬메모리에 있어서, 프로세서로부터의 어드레스와 캐쉬제어기의 상태데이타와 상태데이타 저장기(3a, 3b)의 상태데이타를 멀티플렉서 신호(CS1, CS2)에 의해 선택되는 4×1멀티플렉서(4)와, 상기 멀티플렉서로 부터 입력된 데이타를 저장하과 캐쉬제어기의 상태쓰기신호(CSWR)에 의해 저장된데이타를 캐쉬제어기로 출력하는 캐쉬제어기 상태메모리(1a)와, 프로세서의 어드레스 또는 캐쉬제어기의 상태데이타와 시스템버스로부터 어드레스 또는 스누프제어기의 상태데이타를 멀티플레서 선택신호(SS)에 의해 선택하는 2×1멀티플렉서(2)와, 상기 멀티플렉서로 부터 입력된데이타를 저장하고 스누프제어기의 상태쓰기 신호(SSWR)에 의해 저장된 데이타를 스누프제어기로 출력하며 상기의 캐쉬 제어기용 상태 저장기(3a, 3b)와 동일한 상태데이타를 저장하는 스누프제어기기용 상태메모리(1b)와, 상기 상태메모리에 전송됨과 동시에 캐쉬제어기의 클럭 인에이블 신호(CCE0, CCE1)가 번갈아 동기됨에 따라 상태데이타를 4×1멀티플렉서(4)의 입력단자로 출력하는 상태데이타 저장기(3a, 3b)로 구성된 것을 특징으로 하는 캐쉬코히런스 프로토콜을 이용하는 상태메모리 제어회로.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920004278A KR950008394B1 (ko) | 1992-03-16 | 1992-03-16 | 캐쉬 코히런스 프로토콜을 이용한 상태메모리 제어회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920004278A KR950008394B1 (ko) | 1992-03-16 | 1992-03-16 | 캐쉬 코히런스 프로토콜을 이용한 상태메모리 제어회로 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR930020461A KR930020461A (ko) | 1993-10-19 |
KR950008394B1 true KR950008394B1 (ko) | 1995-07-28 |
Family
ID=19330420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920004278A KR950008394B1 (ko) | 1992-03-16 | 1992-03-16 | 캐쉬 코히런스 프로토콜을 이용한 상태메모리 제어회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR950008394B1 (ko) |
-
1992
- 1992-03-16 KR KR1019920004278A patent/KR950008394B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR930020461A (ko) | 1993-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4035777A (en) | Data processing system including parallel bus transfer control port | |
EP0288649B1 (en) | Memory control subsystem | |
JP3645281B2 (ja) | 共用メモリを有するマルチプロセッサ・システム | |
US5526508A (en) | Cache line replacing system for simultaneously storing data into read and write buffers having multiplexer which controls by counter value for bypassing read buffer | |
US5146572A (en) | Multiple data format interface | |
KR950008394B1 (ko) | 캐쉬 코히런스 프로토콜을 이용한 상태메모리 제어회로 | |
JP2950856B2 (ja) | ファーストイン・ファーストアウトメモリ構成方式 | |
JP3618249B2 (ja) | データ転送装置 | |
KR950000125B1 (ko) | 듀얼 포트램을 이용한 at-버스와 입출력 콘트롤러 프로세서의 인터페이스 회로 | |
JPH0450625B2 (ko) | ||
JPH0222748A (ja) | 不揮発生メモリ制御回路 | |
KR0127559Y1 (ko) | 버퍼를 이용한 메모리 엑세스 장치 | |
JPH06103026A (ja) | メモリシステム | |
JPH05233440A (ja) | バッファ機能を備えたデータ転送方式 | |
JPS61288261A (ja) | マルチプロセツサ・システム | |
JP3076199B2 (ja) | バッファアクセス制御回路 | |
JPH02211571A (ja) | 情報処理装置 | |
JP2585852B2 (ja) | バッファ制御方式 | |
KR100263670B1 (ko) | 직접 기억 장소 접근 컨트롤러 | |
JP2581144B2 (ja) | バス制御装置 | |
JPH04333950A (ja) | 情報処理システム | |
JPH0652516B2 (ja) | バス・インターフェース装置 | |
JPH0520165A (ja) | システムバス制御装置 | |
JPS63191398A (ja) | 情報処理装置 | |
JP2002073413A (ja) | メモリアクセス装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 19971230 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |