KR20020059793A - 버퍼 기억 장치를 포함하는 가상 채널 - Google Patents

버퍼 기억 장치를 포함하는 가상 채널

Info

Publication number
KR20020059793A
KR20020059793A KR1020027006726A KR20027006726A KR20020059793A KR 20020059793 A KR20020059793 A KR 20020059793A KR 1020027006726 A KR1020027006726 A KR 1020027006726A KR 20027006726 A KR20027006726 A KR 20027006726A KR 20020059793 A KR20020059793 A KR 20020059793A
Authority
KR
South Korea
Prior art keywords
virtual channel
processor system
memory
memory device
virtual
Prior art date
Application number
KR1020027006726A
Other languages
English (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 KR20020059793A publication Critical patent/KR20020059793A/ko

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
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • 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
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3814Implementation provisions of instruction buffers, e.g. prefetch buffer; banks

Landscapes

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

Abstract

본 발명의 목적은 프로세서 시스템과 상기 프로세서 시스템에 속한 메모리 영역(MCA) 사이의 버퍼 기억 장치로서 가상 채널(CH)을 포함하는 프로세서 시스템의 출력을 더욱 증가시키는데 있다. 상기 목적은, 버퍼 기억 장치로서 제공된 가상 채널(CH)이 버퍼 기억 장치와 같이 관리됨으로써 달성된다.

Description

버퍼 기억 장치를 포함하는 가상 채널 {VIRTUAL CHANNELS COMPRISING BUFFER STORAGES}
컴퓨터 공학의 모든 분야에서와 같이 동적 메모리 칩을 사용하는 프로세서 시스템용 메모리 장치의 영역은 지속적인 발전을 나타내고 있다. 이 분야에서 이루어진 가장 최근의 발전 중 하나는 NEC 회사의 소위 가상 채널인 SDRAM(VC SDRAM)이 소개된 것이다. 이러한 가상 채널들은 버퍼 기억 장치의 소자로서 사용된다. 상기 가상 채널들은 프로세서 시스템과 상기 프로세서 시스템의 메모리 영역 사이에 제공된다. 상기 가상 채널들의 관리자는 그것의 정확한 관리를 위해 제공된다. 상기 가상 채널들은 RAM 소자로서 제공된다. 상기 RAM 소자는 각각 몇 백 바이트의 기억 용량을 갖는 다수의 (가상) 채널들을 포함한다. 상기 채널들의 가치는 프로세서 시스템의 메모리 영역으로의 메모리 엑세스가 이루어질 때 대기 시간을 단축시키는데 있다.
인터넷에서 다음과 같은 주소:
http://www.cambridge.arm.com/CoInfo/PressRel/29Ju198a/에는 위에 언급한사실에 관련하여 "NEC and ARM to Co-Develop a Memory Controller to Support Virtual Channel SDRAM with System-on-Silicon Chips"라는 제목의 논문이 공지되어 있다.
다음과 같은 주소를 갖는 인터넷 사이트:
http://www.necel.com/home.nsf/HTMLPages/VCM에는 위에 언급한 사실에 관련하여 "Virtual Channel Memory"(줄여서 VCM)라는 제목의 다른 정보가 공지되어 있다. 또한 상기 인터넷 사이트는 다음과 같은 주소를 갖는 인터넷 사이트:
http://www.necel.com/home.nsf/Createpage?OpenAgent&Memory+Products&DRAMs&Virtual+Channel+Memory+(VCM)&&&&&&&에 링크될 수 있다. 상기 인터넷 사이트에는 "Memory DRAMs"라는 제목으로 VCM 제품들이 소개되어 있다. 각각의 VCM 제품에 대해 각각 추가의 링크가 존재한다. 특히 관련 "Data Sheet(7/99)(567K)" 및 관련 "Product Brief(1998)(25K)"에 대한 링크가 존재한다. 개별 VCM 제품에 대한 데이터 시트는 각각 동일하다. 이와 마찬가지로, 개별 VCM 제품에 대한 프로덕트 브리프도 동일하다. 각각의 VCM 제품은 μPD4565161, μPD4565821, 그리고 μPD4565421로 표기된다. 상기 데이터 시트 및 프로덕트 브리프로부터 가상 채널에 대한 심도있는 정보들을 얻을 수 있다.
그리고 나서, 상기 가상 채널들은 프로세서 시스템의 출력 증가를 위해 사용된다. 상기 가상 채널들은 프로세서 시스템의 메모리 영역으로부터 인출되어 상기 메모리 영역 내로 공급되는 데이터에 대한 엑세스 시간을 단축한다. 이러한 트랜잭션에 관련된 데이터는 프로세서 시스템의 입/출력 위치와 메모리 영역 사이의 가상 채널 내에 일시 저장된다. 따라서, 프로세서 시스템에서 비어있는 다른 가상 채널들을 통해 메모리 영역으로 이르는 경로가 비어있게 된다. 이를 통해, 메모리 영역까지의 시퀀스는 저속이지만, 프로세서 시스템까지의 시퀀스는 고속이기 때문에 발생되는 시스템 상태를 피할 수 있다.
가상 채널의 단점은, 상기 가상 채널이 단지 단순한 버퍼로서 사용된다는 점이다. 다시 말해, 트랜젝션에 관련된 데이터가 가상 채널 내에 일시 저장되어, 그 다음 시점에 인출되고 나서, 한번 더 겹쳐쓰지는 것이다. 각각의 가상 채널들은 비교적 큰 기억 용량을 가지기 때문에, 원래 필요한 데이터 이외에도 인접하게 저장된 데이터도 종종 함께 저장된다. 그 이유는 행 전체가 각각 저장되기 때문이다. 그러나, 가상 채널에서의 단순한 버퍼링은 추가로 저장된 정보들에 대해서는 고려하지 않는다. 그러나, 종종 잠시 후에 트랜젝션이 나타날 때 바로 이러한 정보들이 필요하게 된다. 그리고 나서, 이 정보들이 이미 실제로 가상 채널 어딘가에 저장되어 있을지라도 상기 정보들은 새롭게 일시 저장된다. 그럼으로써, 프로세서 시스템의 실제적인 출력 증가는 달성되지 않는다.
본 발명은 청구항 1항의 서문에 따른 프로세서 시스템을 위한 메모리 장치에 관한 것이다.
도면은 본 발명에 따른 메모리 장치의 실시예이다.
본 발명의 목적은 프로세서 시스템의 출력을 더욱 증가시키기 위해 서두에 언급된 방식의 메모리 장치를 개선시키는데 있다.
상기 목적은 본 발명에 따라 청구항 1항의 특징을 갖는 메모리 장치에 의해 달성된다.
그 결과, 프로세서 시스템과 관련 메모리 영역 사이에 트랜젝션이 발생할 때가상 채널 내에 저장된 모든 정보들이 항상 고려된다. 이러한 방식으로, 필요하게 된 정보가 좀 더 실제적으로 가상 채널 내에 이미 저장되어 있을 때 저속 메모리 엑세스는 피해진다. 그럼으로써, 프로세서 시스템의 출력은 더욱 증가된다.
가상 채널이 더 이상 단순한 버퍼처럼 사용되는 것이 아니라, 일반적으로 공지된 캐시 기억 장치처럼 사용됨으로써 프로세서 시스템의 출력 증가가 달성된다. 캐시 기억 장치는, 상기 캐시 기억 장치의 관리자가 항상 실효가 있는 메모리 내용에 대한 요약을 가지며 유효한 정보들은 필요시에 즉시 전달될 수 있고 또 다시 프로세서 시스템의 메모리 영역으로 후퇴하는 일은 없다는 장점을 지닌다. 또한 상기 캐시 기억 장치의 관리자는 독립적으로 프로세서 시스템의 메모리 영역 및 캐시 기억 장치의 메모리 내용의 업데이트를 고려한다.
본 발명의 바람직한 실시예는 종속항의 대상이다.
그리고 나서, 가상 채널의 관리자는 요일 성분을 가지며, 상기 요일 성분의 도움으로 가상 채널의 메모리 내용의 상태가 관리된다.
또한 저장된 실 데이터가 캐시 기억 장치 내에 오랫동안 저장되어 있을 수록, 필요하게 된 정보들이 고속 버퍼 기억 장치에 있고 저속 메모리 영역으로의 후퇴가 불필요하게 될 가능성이 더 커지게 된다. 이와 관련하여 가능한 겹쳐쓰기 메카니즘은 소위 LRU(LeastRecentlyUsed;최근 최소사용) 원칙일 수도 있으며, 상기 원칙에 따라 가장 오랫동안 사용되지 않은 정보들이 처음으로 겹쳐쓰기된다. 상기와 같은 메카니즘은 또다른 메카니즘에 의해 보충될 수 있다.
캐시 기억 장치 기능은, 필요하게 된 정보들이 항상 캐시 기억 장치나 캐시기억 장치 기능을 갖는 메모리에서 처음으로 검색될 수 있다는 장점을 지닌다. 왜냐하면, 상기 캐시 기억 장치나 캐시 기억 장치 기능을 갖는 메모리에서 메모리 내용의 상태가 명확하게 주어지고 메모리 내용에 필요하게 된 정보들이 속하지 않거나 더 이상 속하지 않을 경우에 적합한 방식으로 신속하게 요구들에 반응할 수 있기 때문이다. 이 경우 달성되는 적은 시간 손실은, 고속 버퍼 기억 장치의 메모리 내용으로부터 필요하게 된 정보들이 인출될 수 있을 때 달성되는 시간 절약에 의해 커버된다.
본 발명은 하기 도면에 의해 더 자세히 설명된다.
도면에는 자세히 도시되지 않은 프로세서 시스템의 메모리 영역인 MCA(MemoryCellArray)를 볼 수 있다. 상기 메모리 영역(MCA)은 다수의 가상 채널(CH)에 연결되며, 상기 가상 채널(CH)은 자세히 도시되지 않은 프로세서 시스템 내에서의 데이터 전송 및 상기 프로세서 시스템으로부터의 데이터 전송을 위한 입력 라인(DATA)에 추가로 연결된다.
본 실시예에서 8개의 SDRAM 소자의 가상 채널(CH)은 각각 64 Mbit의 기억 용량을 갖는다. 각각의 SDRAM 소자는 16개의 가상 채널(CH)을 가짐으로써, 각각의 1Kbyte당 16개의 완전 연관 블록(full associative block)이 제공된다. 큰 블록 크기를 통해, 프로세서 시스템에서 소위 선취 메카니즘(prefetch mechanism)이 실행될 수 있다. 가상 채널(CH)에서 히트가 나타날 때의 대기 시간은 적고 관련 메모리 셀 어레이(MCA)에서의 대역폭은 감소된다.
본 실시예에서 가상 채널(CH)은 스토어인 캐시(store-in cache)로서 사용, 즉 각각의 데이터는 처음에는 가상 채널(CH)에만 기록되고 메모리 영역(MCA)에는 기록되지 않는다. 데이터 엑세스시에는 역으로, 필요시에 데이터가 메모리 영역(MCA)으로부터 인출되기 전에 우선 가상 채널(CH)에서 검사된다.
제어 유닛(MCU)(MemoryControlUnit)은 가상 채널(CH)로의 엑세스시 시퀀스를 제어하고 제어 신호(REQUEST) 및 어드레스 신호(ADR)에 따라 메모리 영역(MCA)을 제어한다. 이러한 제어는 세부적으로 볼 때, 가상 채널(CH)이 캐시 기억 장치와 함께 동작되는 방식으로 이루어진다. 이를 위해, 부가의 채널 관리자(CV)가 MCU에 연결된다. 부가의 채널 관리자(CV)는 채널용 요일 정보(TAG)를 포함한다. 또한 상기 채널 관리자(CV)는 예컨대 소위 LRU 원칙에 따라 가상 채널(CH) 내에 있는 데이터의 대체 알고리즘을 제어한다. 또한 상기 채널 관리자(CV)는 HIT 검출 및 처리를 위한 절차에 해당되며 변형된 데이터 내용이 존재할 때 필요한 절차를 제어한다.

Claims (4)

  1. 프로세서 시스템과 상기 프로세서 시스템의 메모리 영역 사이에 버퍼 기억 장치로서의 가상 채널 및 상기 가상 채널을 위한 관리자를 갖는, 프로세서 시스템용 메모리 장치에 있어서,
    상기 가상 채널(CH)의 관리자는 소자들(MCU, CV)을 가지며, 상기 소자들(MCU, CV)에 의해 상기 가상 채널들(CH)에는 캐시 기억 장치의 기능이 할당되는 것을 특징으로 하는 메모리 장치.
  2. 제 1항에 있어서,
    상기 가상 채널들(CH)에 상기 캐시 기억 장치의 기능을 할당하는 소자(예컨대 CV)는 요일 성분(TAG)을 포함하며, 상기 가상 채널(CH)에 상기 캐시 기억 장치의 기능을 할당하는 소자(예컨대 MCU)에 의해 각각의 실 시점에, 어떠한 정보가 어떠한 가상 채널에 저장되고 가상 채널 내의 어떠한 정확한 위치에 각각 유효하게 저장되는지에 대해 통보되는 것을 특징으로 하는 메모리 장치.
  3. 제 1항 또는 2항에 있어서,
    상기 가상 채널(CH)에 상기 캐시 기억 장치의 기능을 할당하는 소자들(MCU;CV)은, 정보들이 겹쳐쓰기 과정에 들어가기 전에 사용 횟수가 많으면 많을수록 상기 가상 채널(CH) 내에 저장된 정보들이 상기 사용 횟수에 상응하여 상기 가상 채널(CH)에 좀 더 오랫동안 저장되는 것을 특징으로 하는 메모리 장치.
  4. 제 1항 내지 3항 중 어느 한 항에 있어서,
    상기 가상 채널(CH)에 상기 캐시 기억 장치의 기능을 할당하는 소자들(MCU;CV)은, 프로세서 시스템의 메모리 영역(MCA)으로부터 상기 프로세서 시스템으로 전달되는 정보들이 처음에는 가상 채널에서 탐색되는 방식으로 구현되는 것을 특징으로 하는 메모리 장치.
KR1020027006726A 1999-11-25 2000-11-24 버퍼 기억 장치를 포함하는 가상 채널 KR20020059793A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19956829A DE19956829A1 (de) 1999-11-25 1999-11-25 Speichereinrichtung für Prozessorsysteme
DE19956829.4 1999-11-25
PCT/DE2000/004166 WO2001038988A1 (de) 1999-11-25 2000-11-24 Virtuelle kanäle mit zwischenspeichern

Publications (1)

Publication Number Publication Date
KR20020059793A true KR20020059793A (ko) 2002-07-13

Family

ID=7930345

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027006726A KR20020059793A (ko) 1999-11-25 2000-11-24 버퍼 기억 장치를 포함하는 가상 채널

Country Status (4)

Country Link
EP (1) EP1244972A1 (ko)
KR (1) KR20020059793A (ko)
DE (1) DE19956829A1 (ko)
WO (1) WO2001038988A1 (ko)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5091850A (en) * 1987-09-28 1992-02-25 Compaq Computer Corporation System for fast selection of non-cacheable address ranges using programmed array logic
US5109496A (en) * 1989-09-27 1992-04-28 International Business Machines Corporation Most recently used address translation system with least recently used (LRU) replacement
US5487153A (en) * 1991-08-30 1996-01-23 Adaptive Solutions, Inc. Neural network sequencer and interface apparatus
JP2775549B2 (ja) * 1992-05-08 1998-07-16 三菱電機株式会社 連想メモリセルおよび連想メモリ回路
US5446726A (en) * 1993-10-20 1995-08-29 Lsi Logic Corporation Error detection and correction apparatus for an asynchronous transfer mode (ATM) network device
US6167486A (en) * 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels
US5925145A (en) * 1997-04-28 1999-07-20 Credence Systems Corporation Integrated circuit tester with cached vector memories
US6122714A (en) * 1997-10-24 2000-09-19 Compaq Computer Corp. Order supporting mechanisms for use in a switch-based multi-processor system
JP4226686B2 (ja) * 1998-05-07 2009-02-18 株式会社東芝 半導体メモリシステム及び半導体メモリのアクセス制御方法及び半導体メモリ
JP2000011640A (ja) * 1998-06-23 2000-01-14 Nec Corp 半導体記憶装置

Also Published As

Publication number Publication date
DE19956829A1 (de) 2001-06-07
EP1244972A1 (de) 2002-10-02
WO2001038988A1 (de) 2001-05-31

Similar Documents

Publication Publication Date Title
EP0179811B1 (en) Interleaved set-associative memory
US4471429A (en) Apparatus for cache clearing
US4912631A (en) Burst mode cache with wrap-around fill
US8621152B1 (en) Transparent level 2 cache that uses independent tag and valid random access memory arrays for cache access
US7890673B2 (en) System and method for accessing non processor-addressable memory
US5179675A (en) Data processing system with cache memory addressable by virtual and physical address
KR100851738B1 (ko) 로우-레벨 캐시를 포함한 액세스 촉진용 리버스 디렉토리
EP0533427A1 (en) Computer memory control system
US5983313A (en) EDRAM having a dynamically-sized cache memory and associated method
KR19990077471A (ko) 스누핑포트를사용하는프리페치캐시질의방법및시스템
US7949833B1 (en) Transparent level 2 cache controller
US5813030A (en) Cache memory system with simultaneous access of cache and main memories
CA1228171A (en) Working set prefetch for level two caches
GB2214336A (en) Cache memory apparatus
US6480940B1 (en) Method of controlling cache memory in multiprocessor system and the multiprocessor system based on detection of predetermined software module
EP0474356A1 (en) Cache memory and operating method
KR20020059793A (ko) 버퍼 기억 장치를 포함하는 가상 채널
JP2976980B2 (ja) キャッシュ制御方式
US6467030B1 (en) Method and apparatus for forwarding data in a hierarchial cache memory architecture
JPH0421222B2 (ko)
KR950013113B1 (ko) 멀티프로세서 시스템의 캐쉬 상태 관리의 방법
JPH0793215A (ja) 半導体記憶装置
JPH10320275A (ja) キャッシュメモリ
JP2689899B2 (ja) 情報処理装置
JPH10207773A (ja) バス接続装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application