KR100228940B1 - 메모리 일관성 유지 방법 - Google Patents
메모리 일관성 유지 방법 Download PDFInfo
- Publication number
- KR100228940B1 KR100228940B1 KR1019960001883A KR19960001883A KR100228940B1 KR 100228940 B1 KR100228940 B1 KR 100228940B1 KR 1019960001883 A KR1019960001883 A KR 1019960001883A KR 19960001883 A KR19960001883 A KR 19960001883A KR 100228940 B1 KR100228940 B1 KR 100228940B1
- Authority
- KR
- South Korea
- Prior art keywords
- bus
- data
- memory
- memory controller
- snoop
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
Claims (8)
- 이중버스 메모리 제어기를 포함하는 메모리 시스템을 구비하는 데이타 프로세싱 시스템에서, 메모리 일관성(memory coherency)을 유지하기 위한 방법에 있어서, ① 상기 이중 버스 메모리 제어기를 제 1 버스 및 제 2 버스 모두에 접속하는 단계와, ② 상기 데이타 프로세싱 시스템에서 어드레스/데이타 멀티플렉스 버스(address/data multiplex bus)상의 속성에 대해 상기 이중 버스 메모리 제어기를 이용하여 상기 제 1 또는 제 2 버스 중 어느 하나를 가로질러 스누핑(snooping)을 수행하는 단계와, ③ 상기 제 1 또는 제 2 버스상에 무효 데이타가 검출된 것에 응답하여, 상기 이중 버스 메모리 제어기를 이용하여 판독 트랜잭션 동안 상기 제 1 또는 제 2 버스상에 스누프 어드레스(snoop address)를 제공하는 단계를 포함하는 메모리 일관성 유지 방법.
- 제 1 항에 있어서, ① 상기 스누핑 단계를 수행하기 전에, 상기 이중 버스 메모리 제어기에 의한 액세스를 위해 상기 제 1 또는 제 2 버스의 액세스를 요구하는 단계와, ② 버스 액세스를 요구한 후에 상기 제 1 또는 제 2 버스의 제어를 허가(grant)하는 단계와, ③ 상기 제 1 또는 제 2 버스를 통해 데이타의 전송을 개시하는 단계와, ④ 무효 데이타 신호를 수신하는 단계를 더 포함하는 메모리 일관성 유지 방법.
- 제 1 항에 있어서, 상기 스누핑 수행 단계는 최종 판독 데이타 동작이 수행되기 전에 이루어지는 메모리 일관성 유지 방법.
- 제 1 항에 있어서, 상기 데이타 프로세싱 시스템에 의해 스누프 히트(snoop hit)이 발생되었음을 인식하는 단계를 더 포함하는 메모리 일관성 유지 방법.
- 데이타 프로세싱 시스템에 있어서, ① 제 1 버스 마스터에 접속되는 제 1 버스와 제 2 버스 마스터에 접속되는 제 2 버스를 구비한 이중 버스 메모리 제어기를 포함하는 메모리 시스템과, ② 상기 데이타 프로세싱 시스템에서 어드레스/데이타 멀티플렉스 버스상의 속성에 대해 상기 이중 버스 메모리 제어기를 이용하여 상기 제 1 또는 제 2 버스를 가로질러 스누핑을 수행함으로써 메모리 일관성을 유지시키는 수단과, ③ 상기 제 1 또는 제 2 버스상에 무효 데이타가 검출된 것에 응답하여 상기 이중 버스 메모리 제어기를 이용하여 판독 트랜잭션 동안 상기 제 1 또는 제 2 버스상에 스누프 어드레스를 제공하는 수단을 포함하는 데이타 프로세싱 시스템.
- 제 5 항에 있어서, 상기 유지 수단은 상기 이중 버스 메모리 제어기에 의한 액세스를 위해 상기 제 1 또는 제 2 버스의 액세스를 요구하는 수단을 더 포함하는 데이타 프로세싱 시스템.
- 제 5 항에 있어서, 상기 유지 수단은, 버스 액세스를 요구한 후에 상기 제 1 또는 제 2 버스의 제어를 허가하고, 상기 제 1 또는 제 2 버스를 가로질러 데이타 전송을 제어하는 데이타 프로세싱 시스템.
- 제 7 항에 있어서, 상기 유지 수단은 버스 액세스를 요구한 후에 상기 제 1 또는 제 2 버스의 제어를 허가하고, 무효 데이타 신호 수신시 데이타 전송을 개시하는 데이타 프로세싱 시스템.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US8/387,148 | 1995-02-10 | ||
| US08/387,148 US5893921A (en) | 1995-02-10 | 1995-02-10 | Method for maintaining memory coherency in a computer system having a cache utilizing snoop address injection during a read transaction by a dual memory bus controller |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR100228940B1 true KR100228940B1 (ko) | 1999-11-01 |
Family
ID=23528678
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1019960001883A Expired - Fee Related KR100228940B1 (ko) | 1995-02-10 | 1996-01-29 | 메모리 일관성 유지 방법 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5893921A (ko) |
| EP (1) | EP0726523A3 (ko) |
| JP (1) | JPH08263373A (ko) |
| KR (1) | KR100228940B1 (ko) |
Families Citing this family (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6513091B1 (en) | 1999-11-12 | 2003-01-28 | International Business Machines Corporation | Data routing using status-response signals |
| US6526469B1 (en) | 1999-11-12 | 2003-02-25 | International Business Machines Corporation | Bus architecture employing varying width uni-directional command bus |
| US6557069B1 (en) | 1999-11-12 | 2003-04-29 | International Business Machines Corporation | Processor-memory bus architecture for supporting multiple processors |
| US6643752B1 (en) * | 1999-12-09 | 2003-11-04 | Rambus Inc. | Transceiver with latency alignment circuitry |
| US7363422B2 (en) * | 2000-01-05 | 2008-04-22 | Rambus Inc. | Configurable width buffered module |
| US7017002B2 (en) * | 2000-01-05 | 2006-03-21 | Rambus, Inc. | System featuring a master device, a buffer device and a plurality of integrated circuit memory devices |
| US6502161B1 (en) * | 2000-01-05 | 2002-12-31 | Rambus Inc. | Memory system including a point-to-point linked memory subsystem |
| US7266634B2 (en) | 2000-01-05 | 2007-09-04 | Rambus Inc. | Configurable width buffered module having flyby elements |
| US7356639B2 (en) | 2000-01-05 | 2008-04-08 | Rambus Inc. | Configurable width buffered module having a bypass circuit |
| US7404032B2 (en) * | 2000-01-05 | 2008-07-22 | Rambus Inc. | Configurable width buffered module having switch elements |
| US6587905B1 (en) | 2000-06-29 | 2003-07-01 | International Business Machines Corporation | Dynamic data bus allocation |
| US6715085B2 (en) * | 2002-04-18 | 2004-03-30 | International Business Machines Corporation | Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function |
| US7089419B2 (en) | 2002-04-18 | 2006-08-08 | International Business Machines Corporation | Control function with multiple security states for facilitating secure operation of an integrated system |
| US6851056B2 (en) | 2002-04-18 | 2005-02-01 | International Business Machines Corporation | Control function employing a requesting master id and a data address to qualify data access within an integrated system |
| US7266842B2 (en) * | 2002-04-18 | 2007-09-04 | International Business Machines Corporation | Control function implementing selective transparent data authentication within an integrated system |
| TWI282513B (en) * | 2002-06-12 | 2007-06-11 | Mediatek Inc | A pre-fetch device of instruction for an embedded system |
| US6944698B2 (en) * | 2002-07-08 | 2005-09-13 | International Business Machines Corporation | Method and apparatus for providing bus arbitrations in a data processing system |
| US6976132B2 (en) * | 2003-03-28 | 2005-12-13 | International Business Machines Corporation | Reducing latency of a snoop tenure |
| US7461268B2 (en) * | 2004-07-15 | 2008-12-02 | International Business Machines Corporation | E-fuses for storing security version data |
| US7340568B2 (en) * | 2005-02-11 | 2008-03-04 | International Business Machines Corporation | Reducing number of rejected snoop requests by extending time to respond to snoop request |
| US7464225B2 (en) * | 2005-09-26 | 2008-12-09 | Rambus Inc. | Memory module including a plurality of integrated circuit memory devices and a plurality of buffer devices in a matrix topology |
| US7562271B2 (en) | 2005-09-26 | 2009-07-14 | Rambus Inc. | Memory system topologies including a buffer device and an integrated circuit memory device |
| US11328764B2 (en) | 2005-09-26 | 2022-05-10 | Rambus Inc. | Memory system topologies including a memory die stack |
| US20080065837A1 (en) * | 2006-09-07 | 2008-03-13 | Sodick Co., Ltd. | Computerized numerical control system with human interface using low cost shared memory |
| US7958314B2 (en) * | 2007-12-18 | 2011-06-07 | International Business Machines Corporation | Target computer processor unit (CPU) determination during cache injection using input/output I/O) hub/chipset resources |
| US8510509B2 (en) * | 2007-12-18 | 2013-08-13 | International Business Machines Corporation | Data transfer to memory over an input/output (I/O) interconnect |
| US9336003B2 (en) | 2013-01-25 | 2016-05-10 | Apple Inc. | Multi-level dispatch for a superscalar processor |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5157774A (en) * | 1987-09-28 | 1992-10-20 | Compaq Computer Corporation | System for fast selection of non-cacheable address ranges using programmed array logic |
| US5072369A (en) * | 1989-04-07 | 1991-12-10 | Tektronix, Inc. | Interface between buses attached with cached modules providing address space mapped cache coherent memory access with SNOOP hit memory updates |
| US5119485A (en) * | 1989-05-15 | 1992-06-02 | Motorola, Inc. | Method for data bus snooping in a data processing system by selective concurrent read and invalidate cache operation |
| JPH03219345A (ja) * | 1990-01-25 | 1991-09-26 | Toshiba Corp | 多ポートキャッシュメモリ制御装置 |
| DE69127773T2 (de) * | 1990-06-15 | 1998-04-02 | Compaq Computer Corp | Vorrichtung zur echten LRU-Ersetzung |
| US5228134A (en) * | 1991-06-04 | 1993-07-13 | Intel Corporation | Cache memory integrated circuit for use with a synchronous central processor bus and an asynchronous memory bus |
| US5293603A (en) * | 1991-06-04 | 1994-03-08 | Intel Corporation | Cache subsystem for microprocessor based computer system with synchronous and asynchronous data path |
| US5426765A (en) * | 1991-08-30 | 1995-06-20 | Compaq Computer Corporation | Multiprocessor cache abitration |
| US5359723A (en) * | 1991-12-16 | 1994-10-25 | Intel Corporation | Cache memory hierarchy having a large write through first level that allocates for CPU read misses only and a small write back second level that allocates for CPU write misses only |
| US5341487A (en) * | 1991-12-20 | 1994-08-23 | International Business Machines Corp. | Personal computer having memory system with write-through cache and pipelined snoop cycles |
| US5353415A (en) * | 1992-10-02 | 1994-10-04 | Compaq Computer Corporation | Method and apparatus for concurrency of bus operations |
| US5463753A (en) * | 1992-10-02 | 1995-10-31 | Compaq Computer Corp. | Method and apparatus for reducing non-snoop window of a cache controller by delaying host bus grant signal to the cache controller |
| US5394555A (en) * | 1992-12-23 | 1995-02-28 | Bull Hn Information Systems Inc. | Multi-node cluster computer system incorporating an external coherency unit at each node to insure integrity of information stored in a shared, distributed memory |
-
1995
- 1995-02-10 US US08/387,148 patent/US5893921A/en not_active Expired - Fee Related
-
1996
- 1996-01-23 EP EP96480009A patent/EP0726523A3/en not_active Withdrawn
- 1996-01-29 KR KR1019960001883A patent/KR100228940B1/ko not_active Expired - Fee Related
- 1996-02-05 JP JP8018801A patent/JPH08263373A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| JPH08263373A (ja) | 1996-10-11 |
| EP0726523A3 (en) | 1996-11-20 |
| EP0726523A2 (en) | 1996-08-14 |
| US5893921A (en) | 1999-04-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100228940B1 (ko) | 메모리 일관성 유지 방법 | |
| US8180981B2 (en) | Cache coherent support for flash in a memory hierarchy | |
| US5787486A (en) | Bus protocol for locked cycle cache hit | |
| US5774700A (en) | Method and apparatus for determining the timing of snoop windows in a pipelined bus | |
| US5913224A (en) | Programmable cache including a non-lockable data way and a lockable data way configured to lock real-time data | |
| US11321248B2 (en) | Multiple-requestor memory access pipeline and arbiter | |
| TW591384B (en) | Method and system for speculatively invalidating lines in a cache | |
| US5784590A (en) | Slave cache having sub-line valid bits updated by a master cache | |
| US6138208A (en) | Multiple level cache memory with overlapped L1 and L2 memory access | |
| US8301843B2 (en) | Data cache block zero implementation | |
| US5696937A (en) | Cache controller utilizing a state machine for controlling invalidations in a network with dual system busses | |
| US11720495B2 (en) | Multi-level cache security | |
| US8195881B2 (en) | System, method and processor for accessing data after a translation lookaside buffer miss | |
| JPH0659976A (ja) | 遅延プッシュをコピー・バック・データ・キャッシュに再ロードする方法 | |
| US20190155729A1 (en) | Method and apparatus for improving snooping performance in a multi-core multi-processor | |
| WO1988006762A1 (en) | Central processor unit for digital data processing system including cache management mechanism | |
| US5590310A (en) | Method and structure for data integrity in a multiple level cache system | |
| US6408363B1 (en) | Speculative pre-flush of data in an out-of-order execution processor system | |
| KR100322223B1 (ko) | 대기행렬및스누프테이블을갖는메모리제어기 | |
| US6643766B1 (en) | Speculative pre-fetching additional line on cache miss if no request pending in out-of-order processor | |
| US7464227B2 (en) | Method and apparatus for supporting opportunistic sharing in coherent multiprocessors | |
| CN101833517B (zh) | 快取存储器系统及其存取方法 | |
| KR100218616B1 (ko) | 현재의 트랜잭션동안 다음 어드레스를 제공하기 위한 전송방법 및 시스템 | |
| US6389527B1 (en) | Microprocessor allowing simultaneous instruction execution and DMA transfer | |
| JPH0353657B2 (ko) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-X000 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20020813 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20020813 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |