KR100800989B1 - 중재 패킷 프로토콜을 구비한 메모리 중재 시스템 및 방법 - Google Patents

중재 패킷 프로토콜을 구비한 메모리 중재 시스템 및 방법 Download PDF

Info

Publication number
KR100800989B1
KR100800989B1 KR20067022032A KR20067022032A KR100800989B1 KR 100800989 B1 KR100800989 B1 KR 100800989B1 KR 20067022032 A KR20067022032 A KR 20067022032A KR 20067022032 A KR20067022032 A KR 20067022032A KR 100800989 B1 KR100800989 B1 KR 100800989B1
Authority
KR
South Korea
Prior art keywords
coupled
memory
data path
arbitration
memory hub
Prior art date
Application number
KR20067022032A
Other languages
English (en)
Other versions
KR20070065261A (ko
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 KR20070065261A publication Critical patent/KR20070065261A/ko
Application granted granted Critical
Publication of KR100800989B1 publication Critical patent/KR100800989B1/ko

Links

Images

Classifications

    • 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
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1642Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • 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
    • G06F13/1684Details of memory controller using multiple buses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Bus Control (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

전송 메모리 허브와 수신 메모리 허브간에 개입된 메모리 허브의 데이터 경로상에 판독 응답을 전송하기 위한 메모리 허브 및 방법이다. 중재 패킷은 메모리 허브에서 수신된 연관된 판독 응답을 위한 데이터 경로 구성을 나타내는 데이터를 포함한다. 중재 패킷은 디코드되고, 데이터 경로는 중재 패킷의 데이터에 따라 구성된다. 연관된 판독 응답은 메모리 허브에서 수신되고 연관된 판독 응답은 수신 메모리 허브와 동일한 것을 전송하기 위한 구성화된 데이터 경로에 연결된다.
전송 메모리 허브, 수신 메모리 허브, 데이터 경로 구성, 중재 패킷, 메모리 중재 시스템

Description

중재 패킷 프로토콜을 구비한 메모리 중재 시스템 및 방법{Memory arbitration system and method having an arbitration packet protocol}
본 출원은 "MEMORY ARBITRATION SYSTEM AND METHOD HAVING AN ARBITRATION PACKET PROTOCOL"이라는 명칭으로, 2004년 3월 24일 출원된 미국특허출원 10/809,839의 출원일의 이익을 청구하며, 여기에 참조로서 통합된다.
본 발명은 일반적으로 프로세서 기반 컴퓨팅 시스템에 대한 메모리 시스템에 관한 것으로, 보다 상세하게는 메모리 응답을 유지하기 위한 중재 시스템 및 방법을 구비한 허브 기반 메모리 시스템에 관한 것이다.
컴퓨터 시스템은, 프로세서에 의해 접근되는 데이터를 저장하기 위해, 동적 랜덤 접근 메모리("DRAM") 디바이스 같은 메모리 디바이스를 사용한다. 전형적 컴퓨터 시스템에 있어, 프로세서는 프로세서 버스와 메모리 제어기를 통해 시스템 메모리와 통신한다. 전형적으로 다중 메모리 디바이스를 구비하는 메모리 모듈에 배치되는, 시스템 메모리의 메모리 디바이스는 메모리 버스를 통해 메모리 제어기에 연결된다. 프로세서는 판독 커맨드 같은 메모리 커맨드를 포함하는 메모리 요청와 판독될 데이터 또는 명령으로부터의 위치를 지정하는 어드레스를 발행한다. 메모리 제어기는 메모리 버스를 통해 시스템 메모리로 적용되는, 행과 열 어드레스 뿐만 아니라 적절한 커맨드 신호를 생성하기 위해 커맨드와 어드레스를 사용한다. 커맨드와 어드레스에 대한 응답에 있어, 데이터는 시스템 메모리와 프로세서 사이에서 전송된다. 메모리 제어기는 때때로 시스템 제어기의 일부가 되며, 또한 PCI 버스 같은 프로세서 버스를 확장 버스와 연결시키기 위한 버스 브리지 회로를 포함한다.
메모리 시스템에 있어, 높은 데이터 대역폭이 요구된다. 일반적으로, 메모리 제어기는 메모리 디바이스가 허용하는 최대한의 속도로 시스템 메모리로 그리고 이로부터의 데이터를 배열하기 때문에 대역폭 한계는 메모리 제어기와 관련되지 않는다. 대역폭을 증가시키기 위해 취해진 한 방식은 메모리 제어기를 메모리 디바이스로 연결하는 메모리 데이터 버스의 속도를 증가시키는 것이다. 따라서, 정보의 동일한 총량은 짧은 시간내에 메모리 데이터 버스로 이동될 수 있다. 하지만, 메모리 데이터 버스 속도 증가에도 불구하고, 대역폭에 있어 대응하는 증가가 나타나지 않는다. 데이터 버스 속도와 대역폭 간의 비선형 관계에 대한 한 이유는 메모리 디바이스 그 자신 내에 있어 하드웨어 한계이다. 즉, 메모리 제어기는 하드웨어 한계가 수용되도록 메모리 디바이스에 대한 모든 메모리 커맨드를 스케쥴링 해야만 한다. 이러한 하드웨어 한계가 메모리 디바이스의 설계를 통해 어느 정도 감소될 수 있다 하더라도, 하드웨어 한계를 감소시키는 것은 전형적으로 메모리 디바이스에 대한 비용, 파워, 및/또는 사이즈를 추가시키기 때문에 절충은 이루어져야만 하며, 이 모두는 바람직하지 않은 대안이다. 따라서, 주어진 이러한 구속하에서, 예를 들어, 메모리 디바이스의 동일한 페이지로의 연속 트래픽 같이 이전에 없던 증가율로 "정상적 동작" 트랙픽으로 메모리 디바이스가 이동시키는 것이 용이하다고 하더라도, 메모리 디바이스의 다른 페이지 또는 뱅크 간의 바운싱(bouncing) 같은 "비정상적 동작 트래픽"을 메모리 디바이스가 해결하는 것은 보다 어렵다. 그 결과, 메모리 버스 대역폭의 증가는 대응하는 정보 대역폭의 증가를 가져오지 않는다.
프로세서와 메모리 디바이스 간의 제한된 대역폭에 추가하여, 컴퓨터 시스템의 성능 또한 시스템 메모리 디바이스로부터 데이터를 판독하는데 요구되는 시간이 증가되는 대기시간(latency) 문제에 의해서도 제한된다. 보다 상세하게는, 메모리 디바이스 판독 커맨드가 동기형 DRAM("SDRAM") 디바이스 같은, 시스템 메모리 디바이스에 연결될 때, 판독 데이터는 몇몇 클럭 주기 지연 후에만 SDRAM 디바이스로부터 출력된다. 따라서, SDRAM 디바이스가 높은 데이터 전송속도로 동시에 버스트 데이터를 출력할 수 있다 하더라도, 초기에 데이터를 제공함에 있어 지연은 SDRAM 디바이스를 사용하는 컴퓨터 시스템의 동작 속도를 늦추게 할 수 있다. 메모리 데이터 버스 속도를 증가시키는 것은 대기시간 문제의 완화를 돕기 위해 사용될 수 있다. 하지만, 대역폭에서와 같이, 실질적으로 상술한 동일 이유에 의해, 메모리 데이터 버스 속도에 있어서의 증가는 대기시간의 선형적 감소를 가져오지 않는다.
다소 메모리 데이터 버스 속도의 증가가 대역폭의 증가와 대기시간을 줄이는데 성공적이라고 하더라도, 이러한 접근은 다른 문제가 일어난다. 예를 들어, 메모리 데이터 버스의 속도 증가에 따라, 전통적으로 메모리 모듈이 접속되는 것은 오직 메모리 제어기와 메모리 슬롯간의 와이어만이기 때문에, 메모리 버스로의 로딩은 신호품질을 유지하기 위해 감소될 필요가 있다. 메모리 데이터 버스 속도를 증가시키기 위해 몇몇 접근방식이 취해져 왔다. 예를 들어, 단일 메모리 디바이스 인 터페이스상에 메모리 모듈 커넥터가 너무 적기 때문에 메모리 슬롯 수를 줄이는 것, 메모리 모듈상에 메모리 디바이스로 제어 신호의 충분한 전개를 제공하기 위해 메모리 모듈상에 버퍼 회로를 추가하는 것, 메모리 모듈상에 다중 메모리 디바이스를 제공하는 것이다. 하지만, 이러한 종래 접근방식의 효율성은 제한적이다. 과거에 사용해 온 이러한 기술의 이유는 비용효율 때문에 그러한 것이다. 하지만, 인터페이스 당 오직 하나의 메모리 모듈이 접속될 수 있을 때, 요구되는 메모리 슬롯마다 분리된 메모리 인터페이스를 추가하는 것은 너무 비용이 들게 된다. 환언하면, 시스템 제어기를 필수품 영역으로 부터 벗어나게 하고 전문품 영역으로 강요함으로써, 상당한 추가 비용을 들게 한다.
최근 한 접근방식은 메모리 허브를 통해 다중 메모리 디바이스를 프로세서에 결합하는 것을 사용하여 비용 효율적 방식으로 메모리 데이터 버스 속도를 증가시킨다. 메모리 허브, 또는 허브-기반 메모리 서브 시스템 설계구조에 있어, 시스템 제어기 또는 메모리 제어기는 고속 양방향 또는 일방향 메모리 제어기/허브 인터페이스를 거쳐 몇몇 메모리 모듈로 결합된다. 전형적으로, 메모리 모듈은 직렬로 굳게 연결시키기 위해 포이트-대-포인트 또는 데이지 체인 설계구조로 연결된다. 따라서, 메모리 제어기는 제 1 메모리 모듈에 연결되고, 제 1 메모리 모듈은 제 2 메모리 모듈에 연결되며, 제 2 메모리 모듈은 제 3 메모리 모듈에 연결되는 식으로 데이지 체인 방식으로 연결된다.
각 메모리 모듈은 메모리 제어기/허브 인터페이스와 복수의 모듈상의 메모리디바이스에 연결된 메모리 허브를 포함하며, 메모리 허브는 효과적으로 메모리 요 청을 루팅하고 메모리 제어기/허브 인터페이스를 거치는 제어기와 메모리 디바이스 사이에서 응답한다. 이러한 설계구조를 채용하는 컴퓨터 시스템은 신호품질이 메모리 데이터 버스상에서 유지될 수 있기 때문에 고속 메모리 데이터 버스를 사용할 수 있다. 게다가, 이러한 설계구조는 종래 메모리 버스 구조에서 발생하는 것 같이, 보다 많은 메모리 모듈이 추가됨에 따라 신호 품질의 저하를 고려할 필요 없이 시스템 메모리의 용이한 확장을 제공할 수도 있다.
메모리 허브를 사용하는 컴퓨터 시스템이 우수한 성능을 제공한다 하더라도, 다양한 변수가 메모리 시스템의 성능에 영향을 미칠 수 있다. 예를 들어, 하나의 메모리 허브로부터 다른 것으로 유지되는 판독 데이터 업스트림(즉, 컴퓨터 시스템에 있어 메모리 허브 제어기로 되돌아 가는) 흐름 방식은 판독 대기시간에 영향을 미칠 것이다. 메모리 허브에 의한 판독 데이터 흐름의 유지는 일반적으로 중재라고 언급되며, 각 메모리 허브가 로컬 메모리 판독 응답과 업스트림 메모리 판독 응답간을 중재한다. 즉, 각 메모리 허브는 먼저 로컬 메모리 판독 응답을 전송할 것인가 다운스트림(즉, 메모리 허브 제어기로부터 보다 멀리 떨어진) 메모리 허브로부터의 메모리 판독 응답을 먼저 전송할 것인가를 결정한다. 낮은 우선순위를 가지는 메모리 판독 응답에 대한 결정이 특정 메모리 판독 응답의 대기시간에만 영향을 미치더라도, 증가된 대기시간을을 가지는 메모리 판독 응답의 추가적 영향이 메모리 시스템의 모든 대기시간에 영향을 미칠 것이다. 결국, 메모리 허브에 의해 채용된 중재 테크닉은 직접적으로 전 메모리 시스템의 성능에 영향을 미친다. 또한, 중재 스킴의 구현은 모든 판독 대기시간에도 영향을 미칠 것인데, 왜냐하면 바람직한 중 재 스킴을 사용함에도 불구하고 비효율적인 구현은 시스템 메모리 성능에 악 영향을 미치기 때문이다. 따라서, 메모리 허브 설계구조를 가지는 시스템 메모리에 있어서의 메모리 응답을 유지관리하는 중재 스킴의 구현을 위한 시스템 및 방법이 필요하다.
본 발명의 일 측면에 따른 방법은 전송 메모리 허브와 수신 메모리 허브간에 개입된 메모리 허브의 데이터 경로(path)상의 판독 응답을 전송하는 단계를 포함한다. 본 방법은 연관된 판독 응답에 대한 데이터 경로 구성을 나타내는 데이터를 포함하는 중재 패킷을 메모리 허브에서 수신하는 단계를 포함한다. 중재 패킷은 디코드되고, 데이터 경로는 중재 패킷 데이터에 따라 구성된다. 연관된 판독 응답은 메모리 허브에서 수신되고 연관된 판독 응답은 동일한 것을 수신 메모리 허브로 전송하기 위한 구성화된 데이터 경로에 연결된다.
본 발명의 다른 측면에 있어, 적어도 하나의 메모리 디바이스가 연결된 메모리 허브가 제공된다. 메모리 허브는 원격 및 로컬 입력 노드, 출력 노드, 그리고 원격 및 로컬 입력 노드에 연결되며 또 출력 노드에 연결되는 구성가능 데이터 경로를 포함한다. 메모리 허브는 또한 구성가능 데이터 경로에 연결된 중재 제어 회로, 출력 노드, 및 원격 입력 노드를 포함한다. 중재 제어 회로는 연관된 판독 응답에 대한 데이터 경로 구성을 나타내는 데이터를 포함하는 로컬 입력 노드를 통해 연결된 연관된 판독 응답에 대한 중재 패킷을 생성한다. 또한 중재 제어 회로는 원격 입력 노드를 통해 연결된 연관된 판독 응답을 출력 노드로의 연결을 준비하여 원격 입력 노드를 통해 연결된 중재 패킷에 포함된 데이터에 따라 구성가능 데이터 경로를 구성할 수 있다.
본 발명의 또 다른 측면에 있어, 활성화에 응답하여 판독 응답이 연결되는 입력 노드와 출력 노드간에 연결된 바이패스(bypass) 데이터 경로를 구비하는 메모리 허브가 제공되고, 또한 중재 제어 회로를 포함한다. 본 중재 제어 회로는 바이패스 데이터 경로에 연결되고 메모리 허브에 연결된 메모리 디바이스로부터의 판독 데이터를 검색함에 따라 중재 패킷을 생성한다. 중재 패킷은 업스트림 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 가능화 데이터를 포함하는 데이터 경로 필드를 구비한다. 중재 제어 회로는 또한 다운스트림 메모리 허브로부터 중재 패킷을 수신하고 입력 노드로부터의 다운스트림 메모리 허브에서 또한 수신된 판독 응답을 바이패스 데이터 경로가 출력 노드로 연결가능하게 한다.
도 1은 본 발명이 구현될 수 있는 실시예에 있어 시스템 메모리에 근거한 메모리 허브를 구비하는 컴퓨터 시스템의 일부 블록도이다.
도 2는 도 1의 메모리 허브에서 사용될 수 있는 본 발명의 실시예에 따른 중재 제어 구성요소의 기능적 블록도이다.
도 3은 본 발명의 실시예에 따른 중재 패킷 및 메모리 응답의 데이터 구조도이다.
도 4는 본 발명의 실시예에 따른 도 3의 중재 제어 구성요소의 동작을 나타내는 플로우이다.
도 4에는 본 발명의 실시예가 사용될 수 있는 메모리 허브 설계구조를 가지는 컴퓨터 시스템(100)을 도시한다. 본 컴퓨터 시스템(100)은 특정 계산 또는 태스크를 수행하기 위한 특정 소프트웨어의 실행 같은, 다양한 계산 기능을 수행하는 프로세서(104)를 포함한다. 프로세서(104)는 통상적으로 어드레스 버스, 제어 버스, 및 데이터 버스를 포함하는 프로세서 버스(106)를 포함한다. 프로세서 버스(106)는 전형적으로 정적 랜덤 접근 메모리("SRAM")인 캐시 메모리에 연결되어 있다. 프로세서 버스(106)는 또한 버스 브리지라고도 언급되는 시스템 제어기(110)에 연결된다.
시스템 제어기(110)는 또한 다양한 구성요소를 위해 프로세서(104)로의 통신 경로로서 기능한다. 보다 상세하게는, 시스템 제어기(110)는 순서대로, 비디오 터미널(114)에 연결된 그래픽 제어기에 전형적으로 연결되는 그래픽 포트를 포함한다. 시스템 제어기(110)는 또한 조작자가 컴퓨터 시스템(100)과 연동하도록, 키보드 또는 마우스 같은, 하나 이상의 입력 디바이스(118)에 연결된다. 전형적으로, 컴퓨터 시스템(100)은 또한 시스템 제어기(110)를 통해 프로세서(104)에 연결된 프린터 같은, 하나 이상의 출력 디바이스(120)를 포함한다. 일반적으로 하나 이상의 데이터 저장 디바이스(124)는 또한 프로세서(104)가 내부 또는 외부 저장 미디어(도시하지 않음)로부터의 데이터를 저장하거나 검색하도록 시스템 제어기(110)를 통해 프로세서(104)에 연결된다. 예시적인 전형적 저장 디바이스(124)는 하드 그리고 플로피 디스크, 테이프 카셋트, 및 컴팩트 디스크 판독 전용 메모리(CD-ROM)를 포함한다.
시스템 제어기(110)는 버스 시스템(154,156)을 통해 몇몇 메모리 모듈(130a-n)에 연결된 메모리 허브 제어기(128)를 포함한다. 각각의 메모리 모듈(130a-n)은 총칭 버스(150)로 나타낸, 커맨드, 어드레스 및 데이터 버스를 통해 몇몇 메모리 디바이스(148)에 연결된 메모리 허브(140)를 포함한다. 메모리 허브(140)는 제어기(128)와 메모리 디바이스(148) 간의 메모리 요청와 응답을 효율적으로 결정한다. 각 메모리 허브(140)는 쓰기 버퍼 및 판독 데이터 버퍼를 포함한다. 이러한 설계구조를 채택한 컴퓨터 시스템은 프로세서(104)가 다른 메모리 모듈(130a-n)이우선순위 메모리 요청에 응답하는 동안 하나의 메모리 모듈(130a-n)에 접근하게 한다. 예를 들어, 프로세서(104)는 시스템 내 다른 메모리 모듈(130a-n)이프로세서(104)로 판독 데이터를 제공하기 위해 준비하는 동안 시스템 내 메모리 모듈(130a-n) 중 하나로 쓰기 데이터를 출력할 수 있다. 또한, 메모리 허브 설계구조는 컴퓨터 시스템에 있어서 대폭 증가된 메모리 용량을 또한 제공할 수 있다.
도 2는 본 발명의 일 실시예에 따른 중재 제어 구성요소(200)를 나타내는 기능적 블록도이다. 본 중재 제어 구성요소(200)는 도 1의 메모리 허브(140)내에 포함될 수 있다. 도 2에 도시한 바와 같이, 중재 제어 구성요소(200)는 연관된 메모리 응답을 저장하기 위한 두 개의 큐를 포함한다. 로컬 응답 큐(202)는 연관된 메모리 모듈(130)상의 메모리 디바이스(148)로부터 로컬 메모리 응답(LMR)을 수신하고 저장한다. 원격 응답 큐(206)는 바이패스 경로(204)를 통해 즉시 업스트림으로 포워드될 수 있는 다운스트림 메모리 응답을 수신하고 저장한다. 중재 제어 회 로(210)는, 중재 제어 회로(210)가 각 큐(202,206)의 컨텐츠를 모니터할 수 있고, 멀티플렉서(208)를 제어함에 있어 이 정보를 사용함으로써 메모리 허브(140)에 의해 실행된 전 중재 프로세스를 제어하게 하는 제어/상태 버스(136)를 통해 큐(202,206)에 연결된다. 또한 제어/상태 버스(136)는 중재 제어 회로(210)로부터 큐(202,206)로 제어신호의 전송을 통합하기 위해 큐(202,206)로부터 중재 제어 회로(210)로 연결될 "핸드쉐이킹" 신호를 허용한다.
또한 중재 제어 회로(210)는 다운스트림 메모리 허브로부터 중재 패킷을 수신하기 위해 고속 링크(134)에 연결된다. 하기에서 상술하는 바와 같이, 중재 패킷은 연관된 메모리 응답에 앞서 제공되며, 업스트림 메모리 허브의 중재 제어 회로(210)에 연관된 메모리 응답 수신을 예상하여 메모리 허브 수신을 통해 적절한 경로가 가능한 정보를 제공한다. 또한, 중재 제어 회로(210)는 데이터가 데이터 요청에 응답하여 메모리 디바이스(148)(도 1)로부터 판독될 때 연관된 메모리 응답의 초기 지시로서 기능하기 위해 연관된 LMR에 앞서 제공되는 중재 패킷을 생성한다. 앞서 설명한 바와 같이, 중재 패킷은 업스트림 메모리 허브로 적절한 정보를 제공할 것이며 메모리 응답이 도착하기 전에 가능한 적절한 데이터 경로에 대해 결정할 수 있는 시간을 각 중재 제어 회로(210)에 부여할 것이다. 중재 제어 회로(210)는 메모리 응답에 대한 판독 데이터가 메모리 디바이스(148)로부터 검색되는 동안 중재 패킷을 준비한다. 중재 패킷은, 업스트림 메모리 허브가 유휴 또는 비지(busy) 여부에 따라, 멀티플렉서(208) 또는 로컬 응답 큐(202) 중 하나의 스위치(212)를 통해 제공된다. 중재 제어 회로의 제어하의 멀티플렉서(208)는 원격 응답 큐(206) 또는 바이패스 경로(204)로부터의 메모리 응답, 중재 제어 회로(210)로부터의 중재 패킷, 또는 로컬 응답 큐(202)로부터의 중재 패킷 및 메모리 응답을 수신하기 위해 고속 링크(134)와 연결된다. 예를 들어, 데이터 구조(300)의 데이터 필드의 수와 타입은 변화될 수 있거나 비트 시간 마다의 비트 수는 변화될 수 있으며 본 발명의 범위 내에서 변화하지 않을 수 있다. 본 발명의 대안적 실시예에 있어, 중재 패킷은 도 2에 도시된 바와 같이, 중재 제어 회로(210)보다 중재 패킷 회로에서 생성되어진다. 게다가, 중재 패킷이 데이터 스트림으로 주입되는 멀티플렉스(208)로 제공되는 것으로 도 2에 도시하였지만, 중재 패킷은 대안적으로 로컬 응답 큐(202)에 제공될 수 있으며 데이터 스트림으로 주입되는 연관된 판독 응답 패킷 앞에 놓여진다. 당업자는, 중재 패킷이 생성되는 위치 또는 연관된 판독 패킷에 앞서 데이터 스트림으로 중재 패킷이 놓여지는 방식 같이 본 발명의 범위를 벗어나지 않는 한 본 발명의 실시예에 대한 변형을 구성할 수 있음을 이해할 것이다.
도 3은 본 발명의 실시예에 따른 중재 패킷 및 메모리 응답을 위한 데이터 구조(300)를 도시한다. 데이터 구조(300)는, 순차적 비트-시간에 대응하는 각 정보 바이트를 가지는 8비트의 정보 바이트로 나누어져 있다. 각 비트-시간은 새로운 데이터가 제공될 수 있는 시간의 증가를 나타낸다. 응답 헤더 필드(302)는 응답이 중재 패킷이나 메모리 응답인 것을 나타내는 두 개의 데이터 바이트를 포함한다. 어드레스 필드(304)는 중재 패킷 또는 메모리 응답이 지정된 특정 허브를 식별하기 위해 사용된다. 커맨드 코드 필드(306)는 메모리 응답으로서가 아닌, 중재 패킷으로서의 데이터 구조(300)를 식별하기 위한 값을 가질 것이다. 중재 패킷과 메모리 응답은, 데이터 필드(308)의 페이로드(payload)가 중재 패킷에 관하여 "돈 케어(don't care)"인 것을 제외하곤 동일하다. 데이터 구조(300)에 있어, 사이즈 필드(310)의 모든 16 비트는 메모리 응답에 의해 운반된 데이터 페이로드의 사이즈를 지시하기 위해 동일한 값을 운반한다. 예를 들어, "0"은 데이터 32 바이트가 포함된 것을 나타내고, "1"은 데이터 64 바이트가 포함된 것을 나타낸다. 도 3에 도시된 데이터 구조(300)의 실시예는 예시로서 제공된 것이며, 본 발명의 범위를 벗어나지 않는 한 데이터 구조(300)에 대한 변형을 구성할 수 있음을 당업자는 이해할 것이다.
중재 제어 구성요소(200)(도 2)의 동작은 도 4의 플로우를 참조하면서 기술될 것이다. 판독 데이터 커맨드 수령 후, 스텝(402)에서, 메모리 허브는 요청하는 타겟에 제공될 메모리 응답을 위해 메모리 디바이스(148)(도 1)로부터 요청된 판독 데이터를 검색하기 위해 판독 동작을 초기화한다. 스텝(404)에서, 메모리 허브의 중재 제어 회로(210)는 로컬 데이터 경로가 로컬 응답 큐(202)의 상태를 체크함으로써 유휴인지 여부를 결정한다. 로컬 데이터 경로가 유휴이면, 스텝(406)에서 메모리 디바이스(148)로부터 판독 데이터를 검색하는 동안 중재 패킷이 중재 제어 회로(210)에 의해 생성된다. 중재 패킷과 메모리 응답이 준비되고 전송될 상태가 될 때, 스텝(408)에서 업스트림 메모리 허브가 비지인지 여부를 묻는다. 업스트림 메모리 허브가 유휴인 경우, 중재 패킷이 업스트림 메모리 허브로 보내지고, 스텝(410,412)에서 메모리 응답이 뒤따른다. 하지만, 업스트림 메모리 허브가 비지라면, 중재 패킷은 스텝(414)에서 폐기되고 메모리 응답이 스텝(416에서 로컬 응답 큐(202)에 저장된다. 동일하게, 로컬 데이터 경로가 비지인 스텝(404)의 경우, 메모리 응답은 스텝(416)에서 로컬 응답 큐에 또한 저장된다. 스텝(418)에서, 메모리 허브에 의해 구현된 중재 스킴에 따라 업스트림 메모리 허브로 전송이 선택될 때 까지 메모리 응답은 로컬 응답 큐(202)에 저장된다. 스텝(420)에서, 메모리 응답이 타겟 목적지에 도착할 때 까지 메모리 응답은 중재 스킴에 따라 각 업스트림 메모리 허브를 통해 전송된다. 적합한 중재 스킴은 종래 기술로 공지되어 있어 여기서 상세히 설명하지 않을 것이다. 또한 적절하게 사용될 수 있는 중재 스킴의 일례는 동일 출원인이며, 동시 계속중인 "ARBITRATION SYSTEM AND METHOD FOR MEMORY RESPONSES IN A HUB-BASED MEMORY SYSTEM"이란 명칭으로 James W.Meyer 및 Cory Kanski가 2003년 10월 20일 출원한 미국특허출원 10/690,810에 보다 상세하게 기술되어 있으며, 여기서 참조로서 통합된다.
상술한 바와 같이, 로컬 및 원격 응답 큐(202,206)와 바이패스 경로(204)는 다양한 응답 중재 스킴을 구현하기 위해 사용된다. 예를 들어, 일 실시예에 있어, 중재 제어 회로는 로컬 응답 보다 다운스트림 응답, 또는 원격 응답에 우선권을 부여하는 중재 스킴을 실행한다. 대안적으로, 기술된 다른 실시예에 있어서, 중재 제어 회로는 다운스트림 응답보다 로컬 응답에 우선권을 부여하는 중재 스킴을 실행한다. 또 다른 실시예에 있어, 중재 제어 회로는 로컬 및 다운스트림 메모리로부터의 예정된 수를 번갈아 하는데, 예를 들어, 로컬 및 원격 응답이 대안적으로 포워드되거나 또는 두 개의 로컬 응답이 포워드되고 뒤이어 두 개의 원격 응답이 따르는 등이다. 여기에 기술된 다른 실시예는 로컬 및 다운스트림 메모리 응답간의 중 재에 있어 선입선출(oldest first) 알고리즘을 사용한다. 즉, 동작에 있어, 중재 제어 회로(210)는 로컬 응답 큐와 원격 응답 큐에 저장된 메모리 응답의 응답 식별부를 모니터하고 업스트림으로 포워드될 다음 응답으로서 이들 큐 중에 포함된 가장 오래된 응답을 선택한다. 따라서, 메모리 응답이 저장된 응답 큐에 독립하여, 중재 제어 회로는 가장 오래된 응답을 제일 먼저 포워드한다.
다른 중재 방법 및 스킴이 본 발명의 범위를 벗어나지 않는 한 사용될 수 있음을 당업자는 이해할 것이다.
스텝(410,412)으로 돌아와서, 중재 패킷이 업스트림 메모리 허브로 제일 먼저 전송되고 이어 메모리 응답이 뒤 따르며, 업스트림 메모리 허브의 중재 제어 회로(210)는 스텝(422)에서 중재 패킷을 수신한다. 중재 패킷이 디코드되고, 적절한 데이터 경로가 스텝(424,426)에서 디코드된 정보에 근거하여 중제 제어 회로(210)에 의해 가능하게 된다. 스텝(430)에서 메모리 응답이 수신될 때까지는, 적절한 데이터 경로는 중재 제어 회로(210)에 의해 가능하게 된다. 스텝(428)에서, 다음 업스트림 메모리 허브가 비지인지 여부를 문의한다. 그렇치 않다면, 중재 패킷과 메모리 응답이 스텝(432)에서 바이패스 방식으로 다음 업스트림 메모리 허브로 전송된다. 바이패스 방식의 중재 패킷과 메모리 응답의 전송은 스텝(412)에서 연관된 메모리 응답이 전송되기 전에 스텝(410)에서 전송된 중재 패킷의 디코드된 정보에 근거한 메모리 허브를 통해 적절한 데이터 경로를 가능화하는데 용이하다.
스텝(428)으로 돌아와서, 다음 업스트림 메모리 허브가 비지로 결정되면, 중재 패킷은 스텝(440)에서 폐기되고, 메모리 응답이 스텝(442)에서 채용된 중재 스 킴에 따라 다음 업스트림 메모리 허브로 전송되는 것으로 선택될 때까지, 메모리 응답은 원격 응답 큐(206)에 저장된다. 스텝(420)에서, 메모리 응답은 타겟 목적지에 도달할 때까지 중재 스킴에 따라 메모리 허브를 통해 업스트림으로 길을 열 것이다.
상술로부터 알 수 있듯이 본 발명의 특정 실시예가 실례를 위해 기술되어 왔지만, 본 발명의 사상과 범위를 일탈하지 않는 한 다양한 변형이 이루어질 수 있다. 예를 들어, 본 발명의 실시예는 컴퓨터 시스템에 사용되는 메모리 허브 기반 시스템 메모리에 관하여 기술하였다. 하지만, 본 발명의 실시예는 허브-기반 메모리 시스템 이외의 적절한 메모리 시스템에 사용될 수 있음을 이해할 것이다. 게다가, 본 발명의 실시예는 컴퓨터 시스템 이외 종래 기술에서 알려진, 프로세서 기반 시스템에 사용되는 메모리 허브-기반 시스템에 사용될 수도 있다. 따라서, 본 발명은 첨부되는 청구항에 의해 정해진 것을 제외하곤 제한적인 것이 아니다.

Claims (36)

  1. 응답 메모리 허브, 및 판독 응답이 개입 메모리 허브의 데이터 경로 상에 전송되는 적어도 하나의 상기 개입 메모리 허브를 구비하는 시스템 메모리에서 판독 요청에 응답하는 방법에 있어서,
    상기 응답 메모리 허브에 연결된 메모리 디바이스로부터 판독 데이터를 검색하는 단계 및 상기 판독 데이터를 포함하는 판독 응답을 준비하는 단계;
    상기 판독 응답을 위한 데이터 경로 구성을 나타내는 데이터를 포함하는 중재 패킷을 생성하는 단계;
    상기 중재 패킷 및 상기 판독 응답을 상기 개입 메모리 허브로 제공하는 단계로서, 상기 중재 패킷은 상기 판독 응답보다 먼저 제공되는, 상기 제공 단계; 및
    상기 개입 메모리 허브에서 상기 중재 패킷을 수신하는 단계, 상기 중재 패킷의 데이터를 디코딩하는 단계, 및 상기 중재 패킷의 데이터에 따라 상기 개입 메모리 허브에 있어 상기 판독 응답을 위한 데이터 경로를 가능하게 하는 단계를 포함하는, 판독 요청에 응답하는 방법.
  2. 제 1 항에 있어서,
    중재 패킷을 생성하는 단계는 판독 응답으로부터의 상기 중재 패킷을 구별하기 위해 사용되는 상기 중재 패킷에 대한 데이터를 생성하는 단계를 포함하는, 판독 요청에 응답하는 방법.
  3. 제 1 항에 있어서,
    중재 패킷을 생성하는 단계는 복수의 8-비트 바이트를 생성하는 단계를 포함하며, 상기 복수의 8-비트 바이트는 판독 응답으로부터의 상기 중재 패킷을 구별하기 위해 상기 개입 메모리 허브에 의해 사용된 데이터를 포함하는 1 바이트를 포함하는, 판독 요청에 응답하는 방법.
  4. 제 1 항에 있어서,
    상기 판독 응답을 위한 데이터 경로를 가능하게 하는 단계는 상기 개입 메모리 허브를 통해 상기 중재 패킷 및 판독 응답을 연결시키기 위해 상기 개입 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 단계를 포함하는, 판독 요청에 응답하는 방법.
  5. 제 1 항에 있어서,
    상기 개입 메모리 허브가 비지인지 결정하는 단계; 및
    상기 개입 메모리 허브가 비지하지 않을 경우, 상기 개입 메모리 허브로 연관된 판독 응답을 제공함에 앞서 상기 개입 메모리 허브로 제공하는 상기 중재 패킷을 생성하는 단계를 더 포함하는, 판독 요청에 응답하는 방법.
  6. 제 1 항에 있어서,
    상기 응답 메모리 허브의 로컬 데이터 경로가 유휴인지를 결정하는 단계;
    상기 로컬 데이터 경로가 유휴인 경우, 상기 연관된 판독 응답을 상기 개입 메모리 허브로 제공함에 앞서 상기 개입 메모리 허브에 제공하기 위한 상기 중재 패킷을 생성하는 단계를 더 포함하는, 판독 요청에 응답하는 방법.
  7. 제 1 항에 있어서,
    상기 중재 패킷을 생성하는 단계는 상기 개입 메모리 허브를 통해 상기 중재 패킷 및 판독 응답을 연결시키기 위한 상기 개입 메모리 허브의 바이패스 데이터 경로를 가능하게 함을 나타내는 데이터를 포함하는 중재 패킷을 생성하는 단계를 포함하는, 판독 요청에 응답하는 방법.
  8. 전송 메모리 허브와 수신 메모리 허브간에 개입된 메모리 허브의 데이터 경로상의 판독 응답을 전송하는 방법에 있어서,
    연관된 판독 응답을 위한 데이터 경로 구성을 나타내는 데이터를 포함하는 중재 패킷을 상기 메모리 허브에서 수신하는 단계;
    상기 중재 패킷을 디코딩하는 단계;
    상기 중재 패킷의 데이터에 따라 상기 데이터 경로를 구성하는 단계;
    상기 메모리 허브에서 상기 연관된 판독 응답을 수신하는 단계; 및
    상기 수신 메모리 허브와 동일한 것을 전송하기 위해 상기 구성된 데이터 경로를 상기 연관된 판독 응답에 연결시키는 단계를 포함하는, 판독 응답을 전송하는 방법.
  9. 제 8 항에 있어서,
    상기 데이터 경로를 구성하는 단계는 상기 수신 메모리 허브로 상기 메모리 허브를 통해 상기 중재 패킷 및 판독 응답을 연결시키기 위해 상기 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 단계를 포함하는, 판독 응답을 전송하는 방법.
  10. 제 8 항에 있어서,
    상기 연관된 판독 응답을 전송함에 앞서 상기 수신 메모리 허브와 동일한 것을 전송하기 위한 상기 구성된 데이터 경로로 상기 중재 패킷을 연결시키는 단계를 더 포함하는, 판독 응답을 전송하는 방법.
  11. 제 8 항에 있어서,
    상기 메모리 허브가 비지인지 여부를 상기 전송 허브로부터 문의를 수신하는 단계 및 상기 메모리 허브가 비지하지 않다는 것을 상기 전송 허브로 지시함으로써 상기 문의에 응답하는 단계를 더 포함하는, 판독 응답을 전송하는 방법.
  12. 판독 응답이 제공되는 메모리 허브의 데이터 경로를 구성하는 방법에 있어서,
    연관된 판독 응답을 위한 데이터 경로 구성을 나타내는 데이터를 포함하는 중재 패킷을 제 1 메모리 허브에서 생성하는 단계;
    상기 제 1 메모리 허브에 연결된 제 2 메모리 허브로 상기 중재 패킷을 제공하는 단계;
    상기 제 2 메모리 허브에서 상기 중재 패킷을 디코딩하는 단계; 및
    상기 연관된 판독 응답 수신을 준비하여 상기 중재 패킷의 데이터에 따라 상기 제 2 메모리 허브의 데이터 경로를 구성하는 단계를 포함하는, 데이터 경로를 구성하는 방법.
  13. 제 12 항에 있어서,
    중재 패킷을 생성하는 단계는 판독 응답으로부터의 상기 중재 패킷을 구별하는데 사용되는 상기 중재 패킷을 위한 데이터를 생성하는 단계를 포함하는, 데이터 경로를 구성하는 방법.
  14. 제 12 항에 있어서,
    상기 데이터 경로를 구성하는 단계는 상기 제 2 메모리 허브를 통해 상기 중재 패킷과 판독 응답을 연결시키기 위해 상기 제 2 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 단계를 포함하는, 데이터 경로를 구성하는 방법.
  15. 제 12 항에 있어서,
    상기 제 2 메모리 허브가 비지인지 결정하는 단계; 및
    상기 제 2 메모리 허브가 비지하지 않은 경우, 상기 제 2 메모리 허브로 상기 연관된 판독 응답을 제공함에 앞서 상기 제 2 메모리 허브로 상기 중재 패킷을 제공하는 단계를 더 포함하는, 데이터 경로를 구성하는 방법.
  16. 제 12 항에 있어서,
    로컬 데이터 경로가 유휴인지를 결정하는 단계;
    상기 로컬 데이터 경로가 유휴인 경우, 상기 연관된 판독 응답을 상기 제 2 메모리 허브로 제공함에 앞서 상기 제 2 메모리 허브로 제공하기 위한 상기 중재 패킷을 생성하는 단계를 더 포함하는, 데이터 경로를 구성하는 방법.
  17. 제 12 항에 있어서,
    상기 중재 패킷을 생성하는 단계는 상기 제 2 메모리 허브를 통해 상기 중재 패킷과 판독 응답을 연결시키기 위한 상기 제 2 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 것을 나타내는 데이터를 포함하는 중재 패킷을 생성하는 단계를 포함하는, 데이터 경로를 구성하는 방법.
  18. 제 2 메모리 허브의 데이터 경로를 구성하기 위해 제 1 및 상기 제 2 메모리 허브간 통신하는 방법에 있어서,
    상기 제 2 메모리 허브를 통해 연관된 판독 응답이 연결되기 위한 중재 패킷 을 생성하는 단계로서, 상기 중재 패킷은 중재 패킷을 식별하는 데이터를 포함하는 커맨드 코드 필드를 구비하고, 상기 제 2 메모리 허브의 데이터 경로 구성을 나타내는 데이터를 포함하는 데이터 경로 필드를 더 구비하는, 상기 패킷 생성 단계;
    상기 연관된 판독 응답을 상기 제 2 메모리 허브로 전송함에 앞서 상기 중재 패킷을 전송하는 단계; 및
    상기 데이터 경로 필드에 포함된 상기 데이터에 따라 상기 제 2 메모리 허브의 데이터 경로를 구성하는 단계를 포함하는, 제 1 및 제 2 메모리 허브간 통신하는 방법.
  19. 제 18 항에 있어서,
    상기 데이터 경로를 구성하는 단계는 상기 제 2 메모리 허브를 통해 상기 중재 패킷과 상기 연관된 판독 응답을 연결시키기 위한 상기 제 2 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 단계를 포함하는, 제 1 및 제 2 메모리 허브간 통신하는 방법.
  20. 제 18 항에 있어서,
    상기 제 2 메모리 허브가 비지인지 결정하는 단계; 및
    상기 제 2 메모리 허브가 비지하지 않은 경우, 상기 연관된 판독 응답을 상기 제 2 메모리 허브로 제공함에 앞서 상기 제 2 메모리 허브로 제공하기 위한 상기 중재 패킷을 생성하는 단계를 더 포함하는, 제 1 및 제 2 메모리 허브간 통신하 는 방법.
  21. 제 19 항에 있어서,
    로컬 데이터 경로가 유휴인지를 결정하는 단계;
    상기 로컬 데이터 경로가 유휴인 경우, 상기 연관된 판독 응답을 상기 제 2 메모리 허브로 제공함에 앞서 상기 제 2 메모리 허브로 제공하기 위한 상기 중재 패킷을 생성하는 단계를 더 포함하는, 제 1 및 제 2 메모리 허브간 통신하는 방법.
  22. 적어도 하나의 메모리 디바이스와 연결된 메모리 허브에 있어서,
    원격 및 로컬 입력 노드들;
    출력 노드;
    상기 원격 및 로컬 입력 노드들에 연결되고, 또한 상기 출력 노드에 연결된 구성화 가능 데이터 경로로서, 상기 구성화 가능 데이터 경로는 상기 원격 및 로컬 입력 노드를 통해 연결된 판독 응답 중 적어도 하나를 상기 출력 노드로 연결시키도록 작동가능한, 상기 구성화 가능 데이터 경로; 및
    상기 구성화 가능 데이터 경로, 상기 출력 노드, 및 상기 원격 입력 노드에 연결된 중재 제어 회로로서, 상기 중재 제어 회로는 상기 로컬 입력 노드를 통해 연결된 연관된 판독 응답을 위한 중재 패킷을 생성하도록 작동가능하고, 상기 중재 패킷은 상기 연관된 판독 응답을 위한 데이터 경로 구성을 나타내는 데이터를 포함하며, 상기 중재 제어 회로는 또한 상기 원격 입력 노드를 통해 연결된 연관된 판 독 응답을 상기 출력 노드로의 연결을 준비하여 상기 원격 입력 노드를 통해 연결된 중재 패킷에 포함된 데이터에 따라 상기 구성화 가능 데이터 경로를 구성하도록 작동가능한, 메모리 허브.
  23. 제 22 항에 있어,
    상기 구성화 가능 데이터 경로는:
    상기 출력 노드에 연결된 출력과 상기 중재 제어 회로에 연결된 제어 노드를 구비한 멀티플렉서;
    상기 원격 입력 노드 및 상기 멀티플렉서의 제 1 입력에 연결된 바이패스 데이터 경로;
    상기 로컬 입력 노드에 연결된 입력을 구비하고 또한 상기 멀티플렉서의 제 2 입력에 연결된 출력을 구비하는 로컬 큐; 및
    상기 원격 입력 노드에 연결된 입력 및 또한 상기 멀티플렉서의 제 3 입력에 연결된 출력을 구비하는 원격 큐로서, 상기 중재 제어 회로는 상기 바이패스 데이터 경로, 로컬 큐 또는 원격 큐를 상기 출력 노드로 선택적으로 연결시키는 상기 멀티플렉서를 위한 제어 신호를 생성하도록 작동가능한, 상기 원격 큐를 포함하는, 메모리 허브.
  24. 제 22 항에 있어서,
    상기 중재 제어 로직은 연관된 판독 응답으로부터 상기 중재 패킷을 구별하 는데 사용되는 상기 중재 패킷을 위한 데이터를 생성하도록 더 작동가능한, 메모리 허브.
  25. 메모리 허브에 있어서,
    입력 노드와 출력 노드 사이에 연결되는 바이패스 데이터 경로로서, 판독 응답들이 활성화에 응답하여 이들 사이에 연결되는, 상기 바이패스 데이터 경로; 및
    상기 메모리 허브에 연결된 메모리 디바이스로부터 판독 데이터를 검색함에 따라 중재 패킷을 생성하도록 작동가능한 상기 바이패스 데이터 경로에 연결된 중재 제어 회로로서, 상기 중재 패킷은 업스트림 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 활성화 데이터를 포함하는 데이터 경로 필드를 구비하며, 상기 중재 제어 회로는 다운스트림 메모리 허브로부터 중재 패킷을 수신하고 상기 입력 노드로부터 수신된 판독 응답을 상기 출력 노드로 연결하는 상기 바이패스 데이터 경로를 가능하게 하도록 더 작동가능한, 상기 중재 제어 회로를 포함하는, 메모리 허브.
  26. 제 25 항에 있어서,
    상기 출력 노드에 연결된 출력과 상기 중재 제어 회로에 연결된 제어 노드를 구비하며, 상기 바이패스 데이터 경로에 연결된 제 1 입력을 더 구비하는, 멀티플렉서;
    로컬 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 2 입력에 연결된 출력을 더 구비하는 로컬 큐; 및
    상기 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 3 입력에 연결된 출력을 더 구비하는 원격 큐로서, 상기 중재 제어 회로는 상기 바이패스 데이터 경로, 로컬 큐 또는 원격 큐를 상기 출력 노드로 선택적으로 연결시키는 상기 멀티플렉서를 위한 제어 신호를 생성하도록 작동가능한, 상기 원격 큐를 더 포함하는, 메모리 허브.
  27. 메모리 모듈에 있어서,
    복수의 메모리 디바이스들; 및
    상기 메모리 디바이스들에 접근하기 위해 메모리 디바이스 버스를 통해 상기 메모리 디바이스들에 연결된 메모리 허브를 포함하며, 상기 메모리 허브는:
    원격 및 로컬 입력 노드들로서, 상기 로컬 입력 노드는 상기 메모리 디바이스 버스에 연결되는, 상기 원격 및 로컬 입력 노드들;
    출력 노드;
    상기 원격 및 로컬 입력 노드들에 연결되고 상기 출력 노드에 또한 연결되는 구성화 가능 데이터 경로로서, 상기 원격 및 로컬 입력 노드들을 통해 연결된 적어도 하나의 판독 응답을 상기 출력 노드로 연결시키도록 작동가능한, 상기 구성화 가능 데이터 경로; 및
    상기 구성화 가능 데이터 경로, 상기 출력 노드 및 상기 원격 입력 노드에 연결된 중재 제어 회로로서, 상기 중재 제어 회로는 상기 로컬 입력 노드를 통해 연결된 연관된 판독 응답을 위한 중재 패킷을 생성하도록 작동가능하며, 상기 중재 패킷은 상기 연관된 판독 응답을 위한 데이터 경로 구성을 나타내는 데이터를 포함하며, 상기 중재 제어 회로는 또한 상기 원격 입력 노드를 통해 연결된 연관된 판독 응답을 상기 출력 노드로의 연결을 준비하여 상기 원격 입력 노드를 통해 연결된 중재 패킷에 포함된 상기 데이터에 따라 상기 구성화 가능 데이터 경로를 구성하도록 작동가능한, 상기 중재 제어 회로를 포함하는, 메모리 모듈.
  28. 제 27 항에 있어서,
    상기 메모리 허브의 구성화 가능 데이터 경로는:
    상기 출력 노드에 연결된 출력 및 상기 중재 제어 회로에 연결된 제어 노드를 구비하는 멀티플렉서;
    상기 원격 입력 노드와 상기 멀티플렉서의 제 1 입력에 연결된 바이패스 데이터 경로;
    상기 로컬 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 2 입력에 연결된 출력을 더 구비하는 로컬 큐; 및
    상기 원격 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 3 입력에 연결된 출력을 더 구비하는 원격 큐를 포함하며, 상기 중재 제어 회로는 상기 바이패스 데이터 경로, 로컬 큐 또는 원격 큐를 상기 출력 노드로 선택적으로 선택적으로 연결시키는 상기 멀티플렉서를 위한 제어 신호를 생성하도록 작동가능한, 메모리 모듈.
  29. 제 27 항에 있어서,
    상기 메모리 허브의 중재 제어 로직은 연관된 판독 응답으로부터 상기 중재 패킷을 구별하는데 사용되는 상기 중재 패킷을 위한 데이터를 생성하도록 더 작동가능한, 메모리 모듈.
  30. 메모리 모듈에 있어서,
    복수의 메모리 디바이스들; 및
    상기 메모리 디바이스들에 접근하기 위해 메모리 디바이스 버스를 통해 상기 메모리 디바이스들에 연결되는 메모리 허브를 포함하며, 상기 메모리 허브는:
    입력 노드와 출력 노드간에 연결된 바이패스 데이터 경로로서, 판독 응답들이 활성화에 응답하여 이들 사이에 연결되는, 상기 바이패스 데이터 경로; 및
    상기 메모리 허브에 연결된 메모리 디바이스로부터 판독 데이터를 검색함에 따라 중재 패킷을 생성하도록 작동가능한 상기 바이패스 데이터 경로에 연결된 중재 제어 회로를 포함하며, 상기 중재 패킷은 업스트림 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 활성화 데이터를 포함하는 데이터 경로 필드를 구비하며, 상기 중재 제어 회로는 다운스트림 메모리 허브로부터 중재 패킷을 수신하고 상기 입력 노드로부터 수신된 판독 응답을 상기 출력 노드로 연결하는 상기 바이패스 데이터 경로를 가능하게 하도록 더 작동가능한, 메모리 모듈.
  31. 제 30 항에 있어서,
    상기 출력 노드에 연결된 출력과 상기 중재 제어 회로에 연결된 제어 노드를 구비하는 멀티플렉서로서, 상기 바이패스 데이터 경로에 연결된 제 1 입력을 더 구비하는, 상기 멀티플렉서;
    로컬 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 2 입력에 연결된 출력을 더 구비하는 로컬 큐; 및
    상기 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 3 입력에 연결된 출력을 더 구비하는 원격 큐를 더 포함하고, 상기 중재 제어 회로는 상기 바이패스 데이터 경로, 로컬 큐 또는 원격 큐를 상기 출력 노드로 선택적으로 연결시키는 상기 멀티플렉서를 위한 제어 신호를 생성하도록 작동가능한, 메모리 모듈.
  32. 프로세서-기반 시스템에 있어서,
    프로세서 버스를 구비하는 프로세서;
    상기 프로세서 버스에 연결되는 시스템 제어기로서, 주변 디바이스 포트를 구비하며, 시스템 메모리 포트에 연결된 제어기를 더 포함하는, 상기 시스템 제어기;
    상기 시스템 제어기의 주변 디바이스 포트에 연결된 적어도 하나의 입력 디바이스;
    상기 시스템 제어기의 주변 디바이스 포트에 연결된 적어도 하나의 출력 디바이스;
    상기 시스템 제어기의 주변 디바이스 포트에 연결된 적어도 하나의 데이터 저장 디바이스;
    메모리 요청들 및 응답들을 전송하기 위한 상기 시스템 제어기에 연결되는 메모리 버스; 및
    상기 메모리 버스에 연결된 복수의 메모리 모듈들을 포함하며, 각 메모리 모듈들은:
    복수의 메모리 디바이스들; 및
    상기 메모리 디바이스들에 접근하기 위해 메모리 디바이스 버스를 통해 상기 메모리 디바이스들에 연결된 메모리 허브를 포함하며, 상기 메모리 허브는:
    원격 및 로컬 입력 노드들로서, 상기 로컬 입력 노드는 상기 메모리 디바이스 버스에 연결된, 상기 원격 및 로컬 입력 노드들;
    출력 노드;
    상기 원격 및 로컬 입력 노드들에 연결되고 상기 출력 노드에 또한 연결되는 구성화 가능 데이터 경로로서, 상기 구성화 가능 데이터 경로는 상기 원격 및 로컬 입력 노드를 통해 연결된 적어도 하나의 판독 응답을 상기 출력 노드로 연결시키도록 작동가능한, 상기 구성화 가능 데이터 패스; 및
    상기 구성화 가능 데이터 경로, 상기 출력 노드, 및 상기 원격 입력 노드에 연결된 중재 제어 회로로서, 상기 중재 제어 회로는 상기 로컬 입력 노드를 통해 연결된 연관된 판독 응답을 위한 중재 패킷을 생성하도록 작동가능며, 상기 중재 패킷은 상기 연관된 판독 응답을 위한 데이터 경로 구성을 나타내는 데이터를 포함 하며, 상기 중재 제어 회로는 또한 상기 원격 입력 노드를 통해 연결된 연관된 판독 응답을 상기 출력 노드로의 연결을 준비하여 상기 원격 입력 노드를 통해 연결된 중재 패킷에 포함된 데이터에 따라 상기 구성화 가능 데이터 경로를 구성하도록 작동가능한, 상기 중재 제어 회로를 포함하는, 프로세서-기반 시스템.
  33. 제 32 항에 있어서,
    상기 메모리 허브의 구성화 가능 데이터 경로는:
    상기 출력 노드에 연결된 출력 및 상기 중재 제어 회로에 연결된 제어 노드를 구비하는 멀티플렉서;
    상기 원격 입력 노드 및 상기 멀티플렉서의 제 1 입력에 연결된 바이패스 데이터 경로;
    상기 로컬 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 2 입력에 연결된 출력을 더 구비하는 로컬 큐; 및
    상기 원격 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 3 입력에 연결된 출력을 더 구비하는 원격 큐로서, 상기 중재 제어 회로는 상기 바이패스 데이터 경로, 로컬 큐 또는 원격 큐를 상기 출력 노드로 선택적으로 연결시키는 상기 멀티플렉서를 위한 제어 신호를 생성하도록 작동가능한, 상기 원격 큐를 포함하는, 프로세서-기반 시스템.
  34. 제 32 항에 있어서,
    상기 메모리 허브의 중재 제어 로직은 연관된 판독 응답으로부터 상기 중재 패킷을 구별하는데 사용되는 중재 패킷을 위한 데이터를 생성하도록 더 작동가능한, 프로세서-기반 시스템.
  35. 프로세서-기반 시스템에 있어서,
    프로세서 버스를 구비하는 프로세서;
    상기 프로세서 버스에 연결되는 시스템 제어기로서, 주변 디바이스 포트를 구비하며, 시스템 메모리 포트에 연결된 제어기를 포함하는, 시스템 제어기;
    상기 시스템 제어기의 주변 디바이스 포트에 연결된 적어도 하나의 입력 디바이스;
    상기 시스템 제어기의 주변 디바이스 포트에 연결된 적어도 하나의 출력 디바이스;
    상기 시스템 제어기의 주변 디바이스 포트에 연결된 적어도 하나의 데이터 저장 디바이스;
    메모리 요청들 및 응답들을 전송하기 위한 상기 시스템 제어기에 연결되는 메모리 버스; 및
    상기 메모리 버스에 연결되는 복수의 메모리 모듈들을 포함하며, 각 메모리 모듈은:
    복수의 메모리 디바이스들; 및
    상기 메모리 디바이스들에 접근하기 위해 메모리 디바이스 버스를 통해 상기 메모리 디바이스들에 연결되는 메모리 허브를 포함하며, 상기 메모리 허브는:
    입력 노드 및 출력 노드 사이에 연결되는 바이패스 데이터 경로로서, 판독 응답들이 활성화에 응답하여 이들 사이에 연결되는, 상기 바이패스 데이터 경로; 및
    상기 메모리 허브에 연결된 메모리 디바이스로부터 판독 데이터를 검색함에 따라 중재 패킷을 생성하도록 작동가능한 상기 바이패스 데이터 경로에 연결된 중재 제어 회로로서, 상기 중재 패킷은 업스트림 메모리 허브의 바이패스 데이터 경로를 가능하게 하는 활성화 데이터를 포함하는 데이터 경로 필드를 구비하며, 상기 중재 제어 회로는 다운스트림 메모리 허브로부터 중재 패킷을 수신하고 상기 입력 노드로부터 수신된 판독 응답을 상기 출력 노드로 연결하는 상기 바이패스 데이터 경로를 가능하게 하도록 더 작동가능한, 상기 중재 제어 회로를 더 포함하는, 프로세서-기반 시스템.
  36. 제 35 항에 있어서,
    상기 메모리 허브는:
    상기 출력 노드에 연결된 출력 및 상기 중재 제어 회로에 연결된 제어 노드를 구비하며, 상기 바이패스 데이터 경로에 연결된 제 1 입력을 더 구비하는, 멀티플렉서;
    로컬 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 2 입력에 연결된 출력을 더 구비하는 로컬 큐; 및
    상기 입력 노드에 연결된 입력을 구비하고 상기 멀티플렉서의 제 3 입력에 연결된 출력을 더 구비하는 원격 큐로서, 상기 중재 제어 회로는 상기 바이패스 데이터 경로, 로컬 큐, 또는 원격 큐를 상기 출력 노드로 선택적으로 연결시키는 상기 멀티플렉서를 위한 제어 신호를 생성하도록 작동가능한, 상기 원격 큐를 더 포함하는, 프로세서-기반 시스템.
KR20067022032A 2004-03-24 2005-03-23 중재 패킷 프로토콜을 구비한 메모리 중재 시스템 및 방법 KR100800989B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/809,839 US7257683B2 (en) 2004-03-24 2004-03-24 Memory arbitration system and method having an arbitration packet protocol
US10/809,839 2004-03-24

Publications (2)

Publication Number Publication Date
KR20070065261A KR20070065261A (ko) 2007-06-22
KR100800989B1 true KR100800989B1 (ko) 2008-02-05

Family

ID=34991516

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20067022032A KR100800989B1 (ko) 2004-03-24 2005-03-23 중재 패킷 프로토콜을 구비한 메모리 중재 시스템 및 방법

Country Status (7)

Country Link
US (5) US7257683B2 (ko)
EP (2) EP2472403B1 (ko)
JP (1) JP4445998B2 (ko)
KR (1) KR100800989B1 (ko)
CN (1) CN100444131C (ko)
AT (1) ATE556373T1 (ko)
WO (1) WO2005094459A2 (ko)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7836252B2 (en) * 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US7039736B2 (en) * 2003-01-15 2006-05-02 Hewlett-Packard Development Company, L.P. Systems and methods for accessing bus-mastered system resources
US7133991B2 (en) * 2003-08-20 2006-11-07 Micron Technology, Inc. Method and system for capturing and bypassing memory transactions in a hub-based memory system
US7136958B2 (en) 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US7257683B2 (en) 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US6980042B2 (en) 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7590797B2 (en) 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7363419B2 (en) 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7392331B2 (en) 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US7685392B2 (en) * 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
JP2007183816A (ja) * 2006-01-06 2007-07-19 Elpida Memory Inc メモリ制御装置
JP4829038B2 (ja) * 2006-08-17 2011-11-30 富士通株式会社 マルチプロセッサシステム
JP5669338B2 (ja) * 2007-04-26 2015-02-12 株式会社日立製作所 半導体装置
US8332680B2 (en) * 2007-08-13 2012-12-11 Rambus Inc. Methods and systems for operating memory in two modes
US7840748B2 (en) * 2007-08-31 2010-11-23 International Business Machines Corporation Buffered memory module with multiple memory device data interface ports supporting double the memory capacity
US7861014B2 (en) 2007-08-31 2010-12-28 International Business Machines Corporation System for supporting partial cache line read operations to a memory module to reduce read data traffic on a memory channel
US8086936B2 (en) 2007-08-31 2011-12-27 International Business Machines Corporation Performing error correction at a memory device level that is transparent to a memory channel
US8082482B2 (en) 2007-08-31 2011-12-20 International Business Machines Corporation System for performing error correction operations in a memory hub device of a memory module
US7865674B2 (en) 2007-08-31 2011-01-04 International Business Machines Corporation System for enhancing the memory bandwidth available through a memory module
US7899983B2 (en) * 2007-08-31 2011-03-01 International Business Machines Corporation Buffered memory module supporting double the memory device data width in the same physical space as a conventional memory module
US7818497B2 (en) * 2007-08-31 2010-10-19 International Business Machines Corporation Buffered memory module supporting two independent memory channels
US8019919B2 (en) 2007-09-05 2011-09-13 International Business Machines Corporation Method for enhancing the memory bandwidth available through a memory module
US8601181B2 (en) * 2007-11-26 2013-12-03 Spansion Llc System and method for read data buffering wherein an arbitration policy determines whether internal or external buffers are given preference
US7925826B2 (en) 2008-01-24 2011-04-12 International Business Machines Corporation System to increase the overall bandwidth of a memory channel by allowing the memory channel to operate at a frequency independent from a memory device frequency
US7925824B2 (en) 2008-01-24 2011-04-12 International Business Machines Corporation System to reduce latency by running a memory channel frequency fully asynchronous from a memory device frequency
US7925825B2 (en) 2008-01-24 2011-04-12 International Business Machines Corporation System to support a full asynchronous interface within a memory hub device
US7930470B2 (en) 2008-01-24 2011-04-19 International Business Machines Corporation System to enable a memory hub device to manage thermal conditions at a memory device level transparent to a memory controller
US8140936B2 (en) 2008-01-24 2012-03-20 International Business Machines Corporation System for a combined error correction code and cyclic redundancy check code for a memory channel
US7930469B2 (en) * 2008-01-24 2011-04-19 International Business Machines Corporation System to provide memory system power reduction without reducing overall memory system performance
US7770077B2 (en) * 2008-01-24 2010-08-03 International Business Machines Corporation Using cache that is embedded in a memory hub to replace failed memory cells in a memory subsystem
US8234540B2 (en) 2008-07-01 2012-07-31 International Business Machines Corporation Error correcting code protected quasi-static bit communication on a high-speed bus
US20100005214A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation Enhancing bus efficiency in a memory system
US20100005212A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation Providing a variable frame format protocol in a cascade interconnected memory system
US20100005220A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation 276-pin buffered memory module with enhanced memory system interconnect and features
US7717752B2 (en) * 2008-07-01 2010-05-18 International Business Machines Corporation 276-pin buffered memory module with enhanced memory system interconnect and features
US7895374B2 (en) * 2008-07-01 2011-02-22 International Business Machines Corporation Dynamic segment sparing and repair in a memory system
US20100005219A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation 276-pin buffered memory module with enhanced memory system interconnect and features
US20100005218A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation Enhanced cascade interconnected memory system
US20100005206A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation Automatic read data flow control in a cascade interconnect memory system
TWI449043B (zh) * 2009-12-17 2014-08-11 Novatek Microelectronics Corp 高速記憶體系統
US8261121B2 (en) * 2009-12-24 2012-09-04 Nvidia Corporation Command latency reduction and command bandwidth maintenance in a memory circuit
US11099982B2 (en) * 2011-03-31 2021-08-24 Oracle International Corporation NUMA-aware garbage collection
US9357649B2 (en) 2012-05-08 2016-05-31 Inernational Business Machines Corporation 276-pin buffered memory card with enhanced memory system interconnect
US9519315B2 (en) 2013-03-12 2016-12-13 International Business Machines Corporation 276-pin buffered memory card with enhanced memory system interconnect
US9477733B2 (en) * 2013-03-15 2016-10-25 Uda, Lld Hierarchical, parallel models for extracting in real-time high-value information from data streams and system and method for creation of same
US10372642B2 (en) * 2016-09-29 2019-08-06 Intel Corporation System, apparatus and method for performing distributed arbitration
US20200285580A1 (en) * 2017-06-30 2020-09-10 Intel Corporation Speculative memory activation
TWI658363B (zh) 2017-10-20 2019-05-01 慧榮科技股份有限公司 儲存裝置以及其介面晶片
US11481342B2 (en) 2019-06-25 2022-10-25 Seagate Technology Llc Data storage system data access arbitration

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040024948A1 (en) * 2002-07-31 2004-02-05 Joerg Winkler Response reordering mechanism
US20040044857A1 (en) * 2002-08-29 2004-03-04 Jeddeloh Joseph M. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US20050086441A1 (en) * 2003-10-20 2005-04-21 Meyer James W. Arbitration system and method for memory responses in a hub-based memory system

Family Cites Families (286)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3742253A (en) * 1971-03-15 1973-06-26 Burroughs Corp Three state logic device with applications
US4078228A (en) 1975-03-24 1978-03-07 Ohkura Electric Co., Ltd. Loop data highway communication system
US4045781A (en) 1976-02-13 1977-08-30 Digital Equipment Corporation Memory module with selectable byte addressing for digital data processing system
US4245306A (en) * 1978-12-21 1981-01-13 Burroughs Corporation Selection of addressed processor in a multi-processor network
US4253144A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4253146A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Module for coupling computer-processors
US4240143A (en) 1978-12-22 1980-12-16 Burroughs Corporation Hierarchical multi-processor network for memory sharing
US4608702A (en) 1984-12-21 1986-08-26 Advanced Micro Devices, Inc. Method for digital clock recovery from Manchester-encoded signals
US4724520A (en) * 1985-07-01 1988-02-09 United Technologies Corporation Modular multiport data hub
US4843263A (en) 1986-01-10 1989-06-27 Nec Corporation Clock timing controller for a plurality of LSI chips
US4707823A (en) 1986-07-21 1987-11-17 Chrysler Motors Corporation Fiber optic multiplexed data acquisition system
US4831520A (en) * 1987-02-24 1989-05-16 Digital Equipment Corporation Bus interface circuit for digital data processor
JPH07117863B2 (ja) * 1987-06-26 1995-12-18 株式会社日立製作所 オンラインシステムの再立上げ方式
US4891808A (en) * 1987-12-24 1990-01-02 Coherent Communication Systems Corp. Self-synchronizing multiplexer
US5251303A (en) 1989-01-13 1993-10-05 International Business Machines Corporation System for DMA block data transfer based on linked control blocks
US5442770A (en) 1989-01-24 1995-08-15 Nec Electronics, Inc. Triple port cache memory
US4953930A (en) 1989-03-15 1990-09-04 Ramtech, Inc. CPU socket supporting socket-to-socket optical communications
US4982185A (en) 1989-05-17 1991-01-01 Blh Electronics, Inc. System for synchronous measurement in a digital computer network
JPH03156795A (ja) 1989-11-15 1991-07-04 Toshiba Micro Electron Kk 半導体メモリ回路装置
US5327553A (en) * 1989-12-22 1994-07-05 Tandem Computers Incorporated Fault-tolerant computer system with /CONFIG filesystem
US5317752A (en) * 1989-12-22 1994-05-31 Tandem Computers Incorporated Fault-tolerant computer system with auto-restart after power-fall
US5313590A (en) * 1990-01-05 1994-05-17 Maspar Computer Corporation System having fixedly priorized and grouped by positions I/O lines for interconnecting router elements in plurality of stages within parrallel computer
JP2772103B2 (ja) 1990-03-28 1998-07-02 株式会社東芝 計算機システム立上げ方式
US5243703A (en) 1990-04-18 1993-09-07 Rambus, Inc. Apparatus for synchronously generating clock signals in a data processing system
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
BE1004668A3 (nl) 1991-04-02 1993-01-05 Bell Telephone Mfg Beschermingsinrichting voor een optische zender/ontvangerinrichting.
US5255239A (en) 1991-08-13 1993-10-19 Cypress Semiconductor Corporation Bidirectional first-in-first-out memory device with transparent and user-testable capabilities
US5461627A (en) 1991-12-24 1995-10-24 Rypinski; Chandos A. Access protocol for a common channel wireless network
JP2554816B2 (ja) 1992-02-20 1996-11-20 株式会社東芝 半導体記憶装置
JP3517237B2 (ja) * 1992-03-06 2004-04-12 ラムバス・インコーポレーテッド 同期バス・システムおよびそのためのメモリ装置
US5355391A (en) 1992-03-06 1994-10-11 Rambus, Inc. High speed bus system
EP0632913B1 (en) 1992-03-25 2001-10-31 Sun Microsystems, Inc. Fiber optic memory coupling system
US5432907A (en) * 1992-05-12 1995-07-11 Network Resources Corporation Network hub with integrated bridge
US5270964A (en) 1992-05-19 1993-12-14 Sun Microsystems, Inc. Single in-line memory module
JPH05342084A (ja) 1992-06-08 1993-12-24 Matsushita Electric Ind Co Ltd データ記憶装置及びデータ記憶方法
US5828907A (en) 1992-06-30 1998-10-27 Discovision Associates Token-based adaptive video processing arrangement
GB2270780A (en) * 1992-09-21 1994-03-23 Ibm Scatter-gather in data processing systems.
JPH0713945A (ja) 1993-06-16 1995-01-17 Nippon Sheet Glass Co Ltd 演算処理部および制御・記憶部分離型マルチプロセッサ ・システムのバス構造
US5497494A (en) 1993-07-23 1996-03-05 International Business Machines Corporation Method for saving and restoring the state of a CPU executing code in protected mode
US5467455A (en) 1993-11-03 1995-11-14 Motorola, Inc. Data processing system and method for performing dynamic bus termination
US5729709A (en) * 1993-11-12 1998-03-17 Intel Corporation Memory controller with burst addressing circuit
US5502621A (en) * 1994-03-31 1996-03-26 Hewlett-Packard Company Mirrored pin assignment for two sided multi-chip layout
US5566325A (en) 1994-06-30 1996-10-15 Digital Equipment Corporation Method and apparatus for adaptive memory access
US6175571B1 (en) * 1994-07-22 2001-01-16 Network Peripherals, Inc. Distributed memory switching hub
US5978567A (en) 1994-07-27 1999-11-02 Instant Video Technologies Inc. System for distribution of interactive multimedia and linear programs by enabling program webs which include control scripts to define presentation by client transceiver
US5553070A (en) * 1994-09-13 1996-09-03 Riley; Robert E. Data link module for time division multiplexing control systems
JPH08123717A (ja) 1994-10-25 1996-05-17 Oki Electric Ind Co Ltd 半導体記憶装置
US6804760B2 (en) 1994-12-23 2004-10-12 Micron Technology, Inc. Method for determining a type of memory present in a system
US5715456A (en) * 1995-02-13 1998-02-03 International Business Machines Corporation Method and apparatus for booting a computer system without pre-installing an operating system
US5638534A (en) 1995-03-31 1997-06-10 Samsung Electronics Co., Ltd. Memory controller which executes read and write commands out of order
US5875352A (en) * 1995-11-03 1999-02-23 Sun Microsystems, Inc. Method and apparatus for multiple channel direct memory access control
US5834956A (en) * 1995-12-29 1998-11-10 Intel Corporation Core clock correction in a 2/N mode clocking scheme
US5966724A (en) 1996-01-11 1999-10-12 Micron Technology, Inc. Synchronous memory device with dual page and burst mode operations
US7681005B1 (en) 1996-01-11 2010-03-16 Micron Technology, Inc. Asynchronously-accessible memory device with mode selection circuitry for burst or pipelined operation
US5832250A (en) 1996-01-26 1998-11-03 Unisys Corporation Multi set cache structure having parity RAMs holding parity bits for tag data and for status data utilizing prediction circuitry that predicts and generates the needed parity bits
US5819304A (en) 1996-01-29 1998-10-06 Iowa State University Research Foundation, Inc. Random access memory assembly
US5659798A (en) 1996-02-02 1997-08-19 Blumrich; Matthias Augustin Method and system for initiating and loading DMA controller registers by using user-level programs
US5799048A (en) 1996-04-17 1998-08-25 Sun Microsystems, Inc. Phase detector for clock synchronization and recovery
US5687325A (en) 1996-04-19 1997-11-11 Chang; Web Application specific field programmable gate array
US6064706A (en) 1996-05-01 2000-05-16 Alcatel Usa, Inc. Apparatus and method of desynchronizing synchronously mapped asynchronous data
US5815681A (en) * 1996-05-21 1998-09-29 Elonex Plc Ltd. Integrated network switching hub and bus structure
US5818844A (en) 1996-06-06 1998-10-06 Advanced Micro Devices, Inc. Address generation and data path arbitration to and from SRAM to accommodate multiple transmitted packets
US5900020A (en) * 1996-06-27 1999-05-04 Sequent Computer Systems, Inc. Method and apparatus for maintaining an order of write operations by processors in a multiprocessor computer to maintain memory consistency
US5875454A (en) * 1996-07-24 1999-02-23 International Business Machiness Corporation Compressed data cache storage system
JPH1049511A (ja) 1996-08-02 1998-02-20 Oki Electric Ind Co Ltd 1チップマイクロコンピュータ
JP4070255B2 (ja) 1996-08-13 2008-04-02 富士通株式会社 半導体集積回路
TW304288B (en) * 1996-08-16 1997-05-01 United Microelectronics Corp Manufacturing method of semiconductor memory device with capacitor
US5706224A (en) * 1996-10-10 1998-01-06 Quality Semiconductor, Inc. Content addressable memory and random access memory partition circuit
US6272600B1 (en) 1996-11-15 2001-08-07 Hyundai Electronics America Memory request reordering in a data processing system
US6167486A (en) 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels
KR19980064365A (ko) 1996-12-19 1998-10-07 윌리엄비.켐플러 메모리 모듈로의 어드레스 및 데이타 분산용 장치 및 방법
KR100239716B1 (ko) 1996-12-30 2000-01-15 김영환 소형 컴퓨터 시스템 인터페이스 콘트롤러의 진단 테스트 장치
US6308248B1 (en) * 1996-12-31 2001-10-23 Compaq Computer Corporation Method and system for allocating memory space using mapping controller, page table and frame numbers
US6031241A (en) * 1997-03-11 2000-02-29 University Of Central Florida Capillary discharge extreme ultraviolet lamp source for EUV microlithography and other related applications
US6271582B1 (en) 1997-04-07 2001-08-07 Micron Technology, Inc. Interdigitated leads-over-chip lead frame, device, and method for supporting an integrated circuit die
KR100202385B1 (ko) 1997-06-04 1999-06-15 윤종용 Hdlc를 이용한 반이중 통신용 송신 장치
US5946712A (en) 1997-06-04 1999-08-31 Oak Technology, Inc. Apparatus and method for reading data from synchronous memory
US6044429A (en) * 1997-07-10 2000-03-28 Micron Technology, Inc. Method and apparatus for collision-free data transfers in a memory device with selectable data or address paths
US6073190A (en) * 1997-07-18 2000-06-06 Micron Electronics, Inc. System for dynamic buffer allocation comprising control logic for controlling a first address buffer and a first data buffer as a matched pair
US6243769B1 (en) * 1997-07-18 2001-06-05 Micron Technology, Inc. Dynamic buffer allocation for a computer system
US6760833B1 (en) 1997-08-01 2004-07-06 Micron Technology, Inc. Split embedded DRAM processor
US6105075A (en) 1997-08-05 2000-08-15 Adaptec, Inc. Scatter gather memory system for a hardware accelerated command interpreter engine
US6137780A (en) 1997-08-07 2000-10-24 At&T Corp Apparatus and method to monitor communication system status
JP4014708B2 (ja) 1997-08-21 2007-11-28 株式会社ルネサステクノロジ 半導体集積回路装置の設計方法
US6249802B1 (en) * 1997-09-19 2001-06-19 Silicon Graphics, Inc. Method, system, and computer program product for allocating physical memory in a distributed shared memory network
DE69811262T2 (de) * 1997-10-10 2003-11-27 Rambus Inc Verfahren und vorrichtung zur ausfallsicheren resynchronisation mit minimaler latenzzeit
JPH11120120A (ja) 1997-10-13 1999-04-30 Fujitsu Ltd カードバス用インターフェース回路及びそれを有するカードバス用pcカード
FR2770008B1 (fr) 1997-10-16 2001-10-12 Alsthom Cge Alkatel Dispositif de communication entre plusieurs processeurs
US5987196A (en) 1997-11-06 1999-11-16 Micron Technology, Inc. Semiconductor structure having an optical signal path in a substrate and method for forming the same
US6098158A (en) 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US6014721A (en) 1998-01-07 2000-01-11 International Business Machines Corporation Method and system for transferring data between buses having differing ordering policies
US6023726A (en) * 1998-01-20 2000-02-08 Netscape Communications Corporation User configurable prefetch control system for enabling client to prefetch documents from a network server
US6721860B2 (en) * 1998-01-29 2004-04-13 Micron Technology, Inc. Method for bus capacitance reduction
GB2333896B (en) * 1998-01-31 2003-04-09 Mitel Semiconductor Ab Vertical cavity surface emitting laser
US6742098B1 (en) * 2000-10-03 2004-05-25 Intel Corporation Dual-port buffer-to-memory interface
US7024518B2 (en) 1998-02-13 2006-04-04 Intel Corporation Dual-port buffer-to-memory interface
US6186400B1 (en) * 1998-03-20 2001-02-13 Symbol Technologies, Inc. Bar code reader with an integrated scanning component module mountable on printed circuit board
US6038630A (en) * 1998-03-24 2000-03-14 International Business Machines Corporation Shared access control device for integrated system with multiple functional units accessing external structures over multiple data buses
US6079008A (en) * 1998-04-03 2000-06-20 Patton Electronics Co. Multiple thread multiple data predictive coded parallel processing system and method
US6247107B1 (en) * 1998-04-06 2001-06-12 Advanced Micro Devices, Inc. Chipset configured to perform data-directed prefetching
JPH11316617A (ja) 1998-05-01 1999-11-16 Mitsubishi Electric Corp 半導体回路装置
KR100283243B1 (ko) 1998-05-11 2001-03-02 구자홍 운영체제의 부팅방법
US6167465A (en) 1998-05-20 2000-12-26 Aureal Semiconductor, Inc. System for managing multiple DMA connections between a peripheral device and a memory and performing real-time operations on data carried by a selected DMA connection
SG75958A1 (en) 1998-06-01 2000-10-24 Hitachi Ulsi Sys Co Ltd Semiconductor device and a method of producing semiconductor device
US6405280B1 (en) * 1998-06-05 2002-06-11 Micron Technology, Inc. Packet-oriented synchronous DRAM interface supporting a plurality of orderings for data block transfers within a burst sequence
US6134624A (en) 1998-06-08 2000-10-17 Storage Technology Corporation High bandwidth cache system
US6301637B1 (en) 1998-06-08 2001-10-09 Storage Technology Corporation High performance data paths
US6067649A (en) * 1998-06-10 2000-05-23 Compaq Computer Corporation Method and apparatus for a low power self test of a memory subsystem
US6453377B1 (en) * 1998-06-16 2002-09-17 Micron Technology, Inc. Computer including optical interconnect, memory unit, and method of assembling a computer
US6289068B1 (en) 1998-06-22 2001-09-11 Xilinx, Inc. Delay lock loop with clock phase shifter
JP2000011640A (ja) 1998-06-23 2000-01-14 Nec Corp 半導体記憶装置
FR2780535B1 (fr) * 1998-06-25 2000-08-25 Inst Nat Rech Inf Automat Dispositif de traitement de donnees d'acquisition, notamment de donnees d'image
JP3178423B2 (ja) 1998-07-03 2001-06-18 日本電気株式会社 バーチャルチャネルsdram
US7346063B1 (en) * 1998-07-08 2008-03-18 Broadcom Corporation Memory management unit for a network switch
US6286083B1 (en) 1998-07-08 2001-09-04 Compaq Computer Corporation Computer system with adaptive memory arbitration scheme
JP3248617B2 (ja) * 1998-07-14 2002-01-21 日本電気株式会社 半導体記憶装置
US6272609B1 (en) 1998-07-31 2001-08-07 Micron Electronics, Inc. Pipelined memory controller
US6061296A (en) * 1998-08-17 2000-05-09 Vanguard International Semiconductor Corporation Multiple data clock activation with programmable delay for use in multiple CAS latency memory devices
US6219725B1 (en) * 1998-08-28 2001-04-17 Hewlett-Packard Company Method and apparatus for performing direct memory access transfers involving non-sequentially-addressable memory locations
US6029250A (en) * 1998-09-09 2000-02-22 Micron Technology, Inc. Method and apparatus for adaptively adjusting the timing offset between a clock signal and digital signals transmitted coincident with that clock signal, and memory device and system using same
US6587912B2 (en) 1998-09-30 2003-07-01 Intel Corporation Method and apparatus for implementing multiple memory buses on a memory module
US6622188B1 (en) 1998-09-30 2003-09-16 International Business Machines Corporation 12C bus expansion apparatus and method therefor
US6910109B2 (en) * 1998-09-30 2005-06-21 Intel Corporation Tracking memory page state
TW498215B (en) 1998-10-30 2002-08-11 Ind Tech Res Inst Ring topology network switch using dual-port memory
US6243831B1 (en) * 1998-10-31 2001-06-05 Compaq Computer Corporation Computer system with power loss protection mechanism
JP3248500B2 (ja) * 1998-11-12 2002-01-21 日本電気株式会社 半導体記憶装置およびそのデータ読み出し方法
US6434639B1 (en) 1998-11-13 2002-08-13 Intel Corporation System for combining requests associated with one or more memory locations that are collectively associated with a single cache line to furnish a single memory operation
US6425021B1 (en) 1998-11-16 2002-07-23 Lsi Logic Corporation System for transferring data packets of different context utilizing single interface and concurrently processing data packets of different contexts
US6453370B1 (en) 1998-11-16 2002-09-17 Infineion Technologies Ag Using of bank tag registers to avoid a background operation collision in memory systems
US6438622B1 (en) 1998-11-17 2002-08-20 Intel Corporation Multiprocessor system including a docking system
US6100735A (en) 1998-11-19 2000-08-08 Centillium Communications, Inc. Segmented dual delay-locked loop for precise variable-phase clock generation
US6430696B1 (en) 1998-11-30 2002-08-06 Micron Technology, Inc. Method and apparatus for high speed data capture utilizing bit-to-bit timing correction, and memory device using same
US6463059B1 (en) 1998-12-04 2002-10-08 Koninklijke Philips Electronics N.V. Direct memory access execution engine with indirect addressing of circular queues in addition to direct memory addressing
US6349363B2 (en) * 1998-12-08 2002-02-19 Intel Corporation Multi-section cache with different attributes for each section
US6374360B1 (en) 1998-12-11 2002-04-16 Micron Technology, Inc. Method and apparatus for bit-to-bit timing correction of a high speed memory bus
US6067262A (en) * 1998-12-11 2000-05-23 Lsi Logic Corporation Redundancy analysis for embedded memories with built-in self test and built-in self repair
FR2787600B1 (fr) 1998-12-17 2001-11-16 St Microelectronics Sa Memoire tampon associee a plusieurs canaux de communication de donnees
US6487556B1 (en) 1998-12-18 2002-11-26 International Business Machines Corporation Method and system for providing an associative datastore within a data processing system
US6191663B1 (en) * 1998-12-22 2001-02-20 Intel Corporation Echo reduction on bit-serial, multi-drop bus
US6367074B1 (en) * 1998-12-28 2002-04-02 Intel Corporation Operation of a system
US6061263A (en) 1998-12-29 2000-05-09 Intel Corporation Small outline rambus in-line memory module
US6598154B1 (en) 1998-12-29 2003-07-22 Intel Corporation Precoding branch instructions to reduce branch-penalty in pipelined processors
US6324485B1 (en) 1999-01-26 2001-11-27 Newmillennia Solutions, Inc. Application specific automated test equipment system for testing integrated circuit devices in a native environment
CN100359601C (zh) 1999-02-01 2008-01-02 株式会社日立制作所 半导体集成电路和非易失性存储器元件
US6327650B1 (en) 1999-02-12 2001-12-04 Vsli Technology, Inc. Pipelined multiprocessing with upstream processor concurrently writing to local register and to register of downstream processor
US6285349B1 (en) 1999-02-26 2001-09-04 Intel Corporation Correcting non-uniformity in displays
US6564329B1 (en) * 1999-03-16 2003-05-13 Linkup Systems Corporation System and method for dynamic clock generation
US6496909B1 (en) 1999-04-06 2002-12-17 Silicon Graphics, Inc. Method for managing concurrent access to virtual memory data structures
US6381190B1 (en) * 1999-05-13 2002-04-30 Nec Corporation Semiconductor memory device in which use of cache can be selected
JP3376315B2 (ja) 1999-05-18 2003-02-10 日本電気株式会社 ビット同期回路
US6233376B1 (en) * 1999-05-18 2001-05-15 The United States Of America As Represented By The Secretary Of The Navy Embedded fiber optic circuit boards and integrated circuits
US6449308B1 (en) 1999-05-25 2002-09-10 Intel Corporation High-speed digital distribution system
US6294937B1 (en) 1999-05-25 2001-09-25 Lsi Logic Corporation Method and apparatus for self correcting parallel I/O circuitry
JP3721283B2 (ja) 1999-06-03 2005-11-30 株式会社日立製作所 主記憶共有型マルチプロセッサシステム
TW548547B (en) 1999-06-18 2003-08-21 Ibm Method and system for maintaining cache coherency for write-through store operations in a multiprocessor system
JP2001014840A (ja) * 1999-06-24 2001-01-19 Nec Corp 複数ラインバッファ型メモリlsi
US6434736B1 (en) 1999-07-08 2002-08-13 Intel Corporation Location based timing scheme in memory design
US6401213B1 (en) * 1999-07-09 2002-06-04 Micron Technology, Inc. Timing circuit for high speed memory
US6477592B1 (en) 1999-08-06 2002-11-05 Integrated Memory Logic, Inc. System for I/O interfacing for semiconductor chip utilizing addition of reference element to each data element in first data stream and interpret to recover data elements of second data stream
US6629220B1 (en) 1999-08-20 2003-09-30 Intel Corporation Method and apparatus for dynamic arbitration between a first queue and a second queue based on a high priority transaction type
US6493803B1 (en) 1999-08-23 2002-12-10 Advanced Micro Devices, Inc. Direct memory access controller with channel width configurability support
US6552564B1 (en) * 1999-08-30 2003-04-22 Micron Technology, Inc. Technique to reduce reflections and ringing on CMOS interconnections
US6539490B1 (en) * 1999-08-30 2003-03-25 Micron Technology, Inc. Clock distribution without clock delay or skew
US6307769B1 (en) 1999-09-02 2001-10-23 Micron Technology, Inc. Semiconductor devices having mirrored terminal arrangements, devices including same, and methods of testing such semiconductor devices
US6594713B1 (en) 1999-09-10 2003-07-15 Texas Instruments Incorporated Hub interface unit and application unit interfaces for expanded direct memory access processor
US6467013B1 (en) 1999-09-30 2002-10-15 Intel Corporation Memory transceiver to couple an additional memory channel to an existing memory channel
US6438668B1 (en) 1999-09-30 2002-08-20 Apple Computer, Inc. Method and apparatus for reducing power consumption in a digital processing system
US6636912B2 (en) * 1999-10-07 2003-10-21 Intel Corporation Method and apparatus for mode selection in a computer system
US6421744B1 (en) 1999-10-25 2002-07-16 Motorola, Inc. Direct memory access controller and method therefor
US6633576B1 (en) * 1999-11-04 2003-10-14 William Melaragni Apparatus and method for interleaved packet storage
KR100319292B1 (ko) 1999-12-02 2002-01-05 윤종용 빠른 부팅 속도를 갖는 컴퓨터 시스템 및 그 방법
JP2001161912A (ja) 1999-12-09 2001-06-19 Maruhon Ind Co Ltd パチンコ機における遊技球の発射異常報知装置
US6501471B1 (en) 1999-12-13 2002-12-31 Intel Corporation Volume rendering
JP3546788B2 (ja) * 1999-12-20 2004-07-28 日本電気株式会社 メモリ制御回路
JP3356747B2 (ja) 1999-12-22 2002-12-16 エヌイーシーマイクロシステム株式会社 半導体記憶装置
US6628294B1 (en) 1999-12-31 2003-09-30 Intel Corporation Prefetching of virtual-to-physical address translation for display data
KR100343383B1 (ko) * 2000-01-05 2002-07-15 윤종용 반도체 메모리 장치 및 이 장치의 데이터 샘플링 방법
US6297702B1 (en) 2000-01-10 2001-10-02 Honeywell International Inc. Phase lock loop system and method
US6745275B2 (en) * 2000-01-25 2004-06-01 Via Technologies, Inc. Feedback system for accomodating different memory module loading
US6823023B1 (en) 2000-01-31 2004-11-23 Intel Corporation Serial bus communication system
US6185352B1 (en) * 2000-02-24 2001-02-06 Siecor Operations, Llc Optical fiber ribbon fan-out cables
JP2001265539A (ja) 2000-03-16 2001-09-28 Fuji Xerox Co Ltd アレイ型記憶装置及び情報処理システム
JP2001274323A (ja) * 2000-03-24 2001-10-05 Hitachi Ltd 半導体装置とそれを搭載した半導体モジュール、および半導体装置の製造方法
US6728800B1 (en) * 2000-06-28 2004-04-27 Intel Corporation Efficient performance based scheduling mechanism for handling multiple TLB operations
US6594722B1 (en) 2000-06-29 2003-07-15 Intel Corporation Mechanism for managing multiple out-of-order packet streams in a PCI host bridge
JP2002014875A (ja) * 2000-06-30 2002-01-18 Mitsubishi Electric Corp 半導体集積回路、半導体集積回路のメモリリペア方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US6799268B1 (en) 2000-06-30 2004-09-28 Intel Corporation Branch ordering buffer
US6754812B1 (en) * 2000-07-06 2004-06-22 Intel Corporation Hardware predication for conditional instruction path branching
US6816947B1 (en) 2000-07-20 2004-11-09 Silicon Graphics, Inc. System and method for memory arbitration
US6845409B1 (en) * 2000-07-25 2005-01-18 Sun Microsystems, Inc. Data exchange methods for a switch which selectively forms a communication channel between a processing unit and multiple devices
US6625687B1 (en) 2000-09-18 2003-09-23 Intel Corporation Memory module employing a junction circuit for point-to-point connection isolation, voltage translation, data synchronization, and multiplexing/demultiplexing
US6453393B1 (en) 2000-09-18 2002-09-17 Intel Corporation Method and apparatus for interfacing to a computer memory
US6526483B1 (en) * 2000-09-20 2003-02-25 Broadcom Corporation Page open hint in transactions
US6523092B1 (en) * 2000-09-29 2003-02-18 Intel Corporation Cache line replacement policy enhancement to avoid memory page thrashing
US6523093B1 (en) * 2000-09-29 2003-02-18 Intel Corporation Prefetch buffer allocation and filtering system
US6859208B1 (en) 2000-09-29 2005-02-22 Intel Corporation Shared translation address caching
US6658509B1 (en) 2000-10-03 2003-12-02 Intel Corporation Multi-tier point-to-point ring memory interface
US7187742B1 (en) * 2000-10-06 2007-03-06 Xilinx, Inc. Synchronized multi-output digital clock manager
US6631440B2 (en) 2000-11-30 2003-10-07 Hewlett-Packard Development Company Method and apparatus for scheduling memory calibrations based on transactions
US6792059B2 (en) 2000-11-30 2004-09-14 Trw Inc. Early/on-time/late gate bit synchronizer
TW502174B (en) 2000-12-08 2002-09-11 Silicon Integrated Sys Corp Pipelined SDRAM memory controller to optimize bus utilization
US6807630B2 (en) 2000-12-15 2004-10-19 International Business Machines Corporation Method for fast reinitialization wherein a saved system image of an operating system is transferred into a primary memory from a secondary memory
US6801994B2 (en) 2000-12-20 2004-10-05 Microsoft Corporation Software management systems and methods for automotive computing devices
US6751703B2 (en) * 2000-12-27 2004-06-15 Emc Corporation Data storage systems and methods which utilize an on-board cache
US6622227B2 (en) * 2000-12-27 2003-09-16 Intel Corporation Method and apparatus for utilizing write buffers in memory control/interface
US6493250B2 (en) 2000-12-28 2002-12-10 Intel Corporation Multi-tier point-to-point buffered memory interface
US20020118692A1 (en) 2001-01-04 2002-08-29 Oberman Stuart F. Ensuring proper packet ordering in a cut-through and early-forwarding network switch
CN1181438C (zh) * 2001-01-18 2004-12-22 深圳市中兴集成电路设计有限责任公司 异步时钟域设备对共享存储装置访问的控制方法
US6889304B2 (en) * 2001-02-28 2005-05-03 Rambus Inc. Memory device supporting a dynamically configurable core organization
DE10110469A1 (de) 2001-03-05 2002-09-26 Infineon Technologies Ag Integrierter Speicher und Verfahren zum Testen und Reparieren desselben
US6877079B2 (en) 2001-03-06 2005-04-05 Samsung Electronics Co., Ltd. Memory system having point-to-point bus configuration
US6782435B2 (en) 2001-03-26 2004-08-24 Intel Corporation Device for spatially and temporally reordering for data between a processor, memory and peripherals
JP4035963B2 (ja) * 2001-03-27 2008-01-23 日産自動車株式会社 内燃機関の制御装置
US6904499B2 (en) 2001-03-30 2005-06-07 Intel Corporation Controlling cache memory in external chipset using processor
US7107399B2 (en) 2001-05-11 2006-09-12 International Business Machines Corporation Scalable memory
US6670959B2 (en) * 2001-05-18 2003-12-30 Sun Microsystems, Inc. Method and apparatus for reducing inefficiencies in shared memory devices
SE524110C2 (sv) 2001-06-06 2004-06-29 Kvaser Consultant Ab Anordning och förfarande vid system med lokalt utplacerade modulenheter samt kontaktenhet för anslutning av sådan modulenhet
US6697926B2 (en) * 2001-06-06 2004-02-24 Micron Technology, Inc. Method and apparatus for determining actual write latency and accurately aligning the start of data capture with the arrival of data at a memory device
US6920533B2 (en) * 2001-06-27 2005-07-19 Intel Corporation System boot time reduction method
US20030005344A1 (en) * 2001-06-29 2003-01-02 Bhamidipati Sriram M. Synchronizing data with a capture pulse and synchronizer
US6721195B2 (en) * 2001-07-12 2004-04-13 Micron Technology, Inc. Reversed memory module socket and motherboard incorporating same
US6665498B1 (en) 2001-07-20 2003-12-16 Wenbin Jiang High-speed optical data links
US6792496B2 (en) 2001-08-02 2004-09-14 Intel Corporation Prefetching data for peripheral component interconnect devices
US6904556B2 (en) * 2001-08-09 2005-06-07 Emc Corporation Systems and methods which utilize parity sets
US6681292B2 (en) * 2001-08-27 2004-01-20 Intel Corporation Distributed read and write caching implementation for optimized input/output applications
WO2003021600A2 (en) 2001-08-29 2003-03-13 Analog Devices, Inc. Methods and apparatus utilizing flash burst mode to improve processor performance
US7941056B2 (en) * 2001-08-30 2011-05-10 Micron Technology, Inc. Optical interconnect in high-speed memory systems
US6665202B2 (en) 2001-09-25 2003-12-16 Integrated Device Technology, Inc. Content addressable memory (CAM) devices that can identify highest priority matches in non-sectored CAM arrays and methods of operating same
US6718440B2 (en) * 2001-09-28 2004-04-06 Intel Corporation Memory access latency hiding with hint buffer
DE10153657C2 (de) * 2001-10-31 2003-11-06 Infineon Technologies Ag Anordnung zur Datenübertragung in einem Halbleiterspeichersystem und Datenübertragungsverfahren dafür
US6886048B2 (en) * 2001-11-15 2005-04-26 Hewlett-Packard Development Company, L.P. Techniques for processing out-of-order requests in a processor-based system
US6646929B1 (en) 2001-12-05 2003-11-11 Lsi Logic Corporation Methods and structure for read data synchronization with minimal latency
KR100454123B1 (ko) 2001-12-06 2004-10-26 삼성전자주식회사 반도체 집적 회로 장치 및 그것을 구비한 모듈
US6775747B2 (en) 2002-01-03 2004-08-10 Intel Corporation System and method for performing page table walks on speculative software prefetch operations
US6804764B2 (en) 2002-01-22 2004-10-12 Mircron Technology, Inc. Write clock and data window tuning based on rank select
US6670833B2 (en) 2002-01-23 2003-12-30 Intel Corporation Multiple VCO phase lock loop architecture
US7006533B2 (en) 2002-02-19 2006-02-28 Intel Corporation Method and apparatus for hublink read return streaming
US20040022094A1 (en) * 2002-02-25 2004-02-05 Sivakumar Radhakrishnan Cache usage for concurrent multiple streams
US6725306B2 (en) 2002-02-27 2004-04-20 Lsi Logic Corporation DEBUG mode for a data bus
US6774687B2 (en) 2002-03-11 2004-08-10 Micron Technology, Inc. Method and apparatus for characterizing a delay locked loop
US6795899B2 (en) 2002-03-22 2004-09-21 Intel Corporation Memory system with burst length shorter than prefetch length
US6735682B2 (en) * 2002-03-28 2004-05-11 Intel Corporation Apparatus and method for address calculation
US7110400B2 (en) 2002-04-10 2006-09-19 Integrated Device Technology, Inc. Random access memory architecture and serial interface with continuous packet handling capability
JP2003309564A (ja) 2002-04-17 2003-10-31 Mitsubishi Electric Corp マイクロコンピュータシステムおよびそれに使用されるトランシーバ
US20030217223A1 (en) 2002-05-14 2003-11-20 Infineon Technologies North America Corp. Combined command set
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US6731548B2 (en) 2002-06-07 2004-05-04 Micron Technology, Inc. Reduced power registered memory module and method
US6898674B2 (en) 2002-06-11 2005-05-24 Intel Corporation Apparatus, method, and system for synchronizing information prefetch between processors and memory controllers
US7486894B2 (en) 2002-06-25 2009-02-03 Finisar Corporation Transceiver module and integrated circuit with dual eye openers
CN1300707C (zh) * 2002-07-23 2007-02-14 华为技术有限公司 外部sdram读写处理方法
US7117316B2 (en) 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7149874B2 (en) 2002-08-16 2006-12-12 Micron Technology, Inc. Memory hub bypass circuit and method
US7836252B2 (en) * 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US6667926B1 (en) 2002-09-09 2003-12-23 Silicon Integrated Systems Corporation Memory read/write arbitration method
US7102907B2 (en) * 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US6821029B1 (en) 2002-09-10 2004-11-23 Xilinx, Inc. High speed serial I/O technology using an optical link
US6811320B1 (en) 2002-11-13 2004-11-02 Russell Mistretta Abbott System for connecting a fiber optic cable to an electronic device
DE10255937B4 (de) 2002-11-29 2005-03-17 Advanced Micro Devices, Inc., Sunnyvale Ordnungsregelgesteuerte Befehlsspeicherung
US6978351B2 (en) 2002-12-30 2005-12-20 Intel Corporation Method and system to improve prefetching operations
US7366423B2 (en) 2002-12-31 2008-04-29 Intel Corporation System having multiple agents on optical and electrical bus
US6961259B2 (en) 2003-01-23 2005-11-01 Micron Technology, Inc. Apparatus and methods for optically-coupled memory systems
US7469316B2 (en) 2003-02-10 2008-12-23 Intel Corporation Buffered writes and memory page control
JP3841762B2 (ja) 2003-02-18 2006-11-01 ファナック株式会社 サーボモータ制御システム
US7020757B2 (en) 2003-03-27 2006-03-28 Hewlett-Packard Development Company, L.P. Providing an arrangement of memory devices to enable high-speed data access
US7366854B2 (en) 2003-05-08 2008-04-29 Hewlett-Packard Development Company, L.P. Systems and methods for scheduling memory requests utilizing multi-level arbitration
US7016213B2 (en) 2003-05-13 2006-03-21 Advanced Micro Devices, Inc. Method for initializing a system including a host and plurality of memory modules connected via a serial memory interconnect
US7386768B2 (en) 2003-06-05 2008-06-10 Intel Corporation Memory channel with bit lane fail-over
US6937076B2 (en) 2003-06-11 2005-08-30 Micron Technology, Inc. Clock synchronizing apparatus and method using frequency dependent variable delay
US20050015426A1 (en) * 2003-07-14 2005-01-20 Woodruff Robert J. Communicating data over a communication link
US7174432B2 (en) * 2003-08-19 2007-02-06 Nvidia Corporation Asynchronous, independent and multiple process shared memory system in an adaptive computing architecture
US7133991B2 (en) 2003-08-20 2006-11-07 Micron Technology, Inc. Method and system for capturing and bypassing memory transactions in a hub-based memory system
US7136958B2 (en) * 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US7177211B2 (en) * 2003-11-13 2007-02-13 Intel Corporation Memory channel test fixture and method
US7098714B2 (en) 2003-12-08 2006-08-29 Micron Technology, Inc. Centralizing the lock point of a synchronous circuit
US7529800B2 (en) 2003-12-18 2009-05-05 International Business Machines Corporation Queuing of conflicted remotely received transactions
US7181584B2 (en) * 2004-02-05 2007-02-20 Micron Technology, Inc. Dynamic command and/or address mirroring system and method for memory modules
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7412574B2 (en) 2004-02-05 2008-08-12 Micron Technology, Inc. System and method for arbitration of memory responses in a hub-based memory system
US7257683B2 (en) 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US7447240B2 (en) 2004-03-29 2008-11-04 Micron Technology, Inc. Method and system for synchronizing communications links in a hub-based memory system
US6980042B2 (en) * 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7363419B2 (en) * 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7046060B1 (en) * 2004-10-27 2006-05-16 Infineon Technologies, Ag Method and apparatus compensating for frequency drift in a delay locked loop
US7116143B2 (en) 2004-12-30 2006-10-03 Micron Technology, Inc. Synchronous clock generator including duty cycle correction
JP4812016B2 (ja) 2006-07-25 2011-11-09 ダイコク電機株式会社 遊技機用ドラム式表示装置
US7768325B2 (en) 2008-04-23 2010-08-03 International Business Machines Corporation Circuit and design structure for synchronizing multiple digital signals

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040024948A1 (en) * 2002-07-31 2004-02-05 Joerg Winkler Response reordering mechanism
US20040044857A1 (en) * 2002-08-29 2004-03-04 Jeddeloh Joseph M. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US20050086441A1 (en) * 2003-10-20 2005-04-21 Meyer James W. Arbitration system and method for memory responses in a hub-based memory system

Also Published As

Publication number Publication date
US20140108746A1 (en) 2014-04-17
WO2005094459A3 (en) 2006-08-31
US20120066461A1 (en) 2012-03-15
US8082404B2 (en) 2011-12-20
US8555006B2 (en) 2013-10-08
KR20070065261A (ko) 2007-06-22
ATE556373T1 (de) 2012-05-15
JP4445998B2 (ja) 2010-04-07
WO2005094459A2 (en) 2005-10-13
EP2472403A2 (en) 2012-07-04
CN100444131C (zh) 2008-12-17
US7412571B2 (en) 2008-08-12
US20050216677A1 (en) 2005-09-29
EP1738264A4 (en) 2007-10-03
CN1957332A (zh) 2007-05-02
US7257683B2 (en) 2007-08-14
EP1738264B1 (en) 2012-05-02
US20080294856A1 (en) 2008-11-27
US20070180171A1 (en) 2007-08-02
EP2472403A3 (en) 2012-11-28
US9032166B2 (en) 2015-05-12
JP2007531119A (ja) 2007-11-01
EP2472403B1 (en) 2014-06-04
EP1738264A2 (en) 2007-01-03

Similar Documents

Publication Publication Date Title
KR100800989B1 (ko) 중재 패킷 프로토콜을 구비한 메모리 중재 시스템 및 방법
KR100854946B1 (ko) 허브-기반의 메모리 시스템에서 메모리 응답용 패킷메모리 및 방법을 갖는 조정 시스템
US8589643B2 (en) Arbitration system and method for memory responses in a hub-based memory system
KR100919386B1 (ko) 메모리 허브 구조를 가진 메모리 모듈들에 대한 메모리 액세스들을 제어하는 방법 및 시스템
US7415567B2 (en) Memory hub bypass circuit and method
JP4024875B2 (ja) 異なるデータ・レートで動作するネットワーク・ポートに関して、共用メモリへのアクセスを調停する方法および装置
EP1738267B1 (en) System and method for organizing data transfers with memory hub memory modules
KR20050046094A (ko) 슬래이브 장치의 데이터 기입 레이턴시를 감소시키는 버스시스템 및 이에 대한 데이터 처리 방법

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: 20130111

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140107

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150105

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160105

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170103

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180119

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190117

Year of fee payment: 12