KR100855193B1 - 허브-기반 메모리 서브-시스템에서 양방향 데이터 버스용데이터 바이패스 장치 및 방법 - Google Patents

허브-기반 메모리 서브-시스템에서 양방향 데이터 버스용데이터 바이패스 장치 및 방법 Download PDF

Info

Publication number
KR100855193B1
KR100855193B1 KR1020067018092A KR20067018092A KR100855193B1 KR 100855193 B1 KR100855193 B1 KR 100855193B1 KR 1020067018092 A KR1020067018092 A KR 1020067018092A KR 20067018092 A KR20067018092 A KR 20067018092A KR 100855193 B1 KR100855193 B1 KR 100855193B1
Authority
KR
South Korea
Prior art keywords
memory
data
coupled
output
input
Prior art date
Application number
KR1020067018092A
Other languages
English (en)
Other versions
KR20060132925A (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 KR20060132925A publication Critical patent/KR20060132925A/ko
Application granted granted Critical
Publication of KR100855193B1 publication Critical patent/KR100855193B1/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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • 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
    • 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/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)
  • Dram (AREA)

Abstract

메모리 허브는 각 데이터 버스들에 연결하는 제 1 및 제 2 링크 인터페이스들, 상기 제 1 및 제 2 링크 인터페이스들에 연결되어 상기 제 1 및 제 2 링크 인터페이스들 간에 데이터를 전송하는 데이터 경로를 포함하고, 상기 데이터 경로에 연결되어 상기 데이터 경로 상에 기록 데이터를 연결하고 상기 기록 데이터를 일시적으로 저장시켜 상기 기록 데이터가 일시적으로 저장되는 동안 상기 데이터 경로를 통해서 판독 데이터를 전송되게 하는 기록 바이패스 회로를 더 포함한다. 메모리 시스템 내의 메모리 위치에 데이터를 기록하는 방법은 메모리 시스템에서 판독 데이터에 액세스하는 단계, 기록 데이터를 메모리 시스템에 제공하는 단계, 및 상기 기록 데이터를 일시적 저장하는 레지스터에 연결하는 단계를 포함한다. 기록 데이터는 메모리 버스에 재연결되어 판독 데이터의 제공 후 메모리 위치에 기록된다.
허브-기반 메모리 서브-시스템, 메모리 허브 제어기, 링크 인터페이스, 기록 바이패스 회로, 선입선출 레지스터

Description

허브-기반 메모리 서브-시스템에서 양방향 데이터 버스용 데이터 바이패스 장치 및 방법{Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system}
관련 출원들의 교차 참조
본 출원은 본원에 참조로서 통합된 2004년 2월 5일자로 출원된 발명의 명칭이 "APPARATUS AND METHOD FOR DATA BYPASS FOR A BI-DIRECTIONAL DATA BUS IN A HUB-BASED MEMORY SUB-SYSTEM"인 미국 특허 출원 제 10/773,583 호의 이점을 청구한 것이다.
본 발명은 메모리 시스템들에 관한 것이며, 특히 양방향 데이터 버스 상에서 데이터 충돌을 방지하는 데이터 바이패스를 갖는 메모리 모듈들에 관한 것이다.
컴퓨터 시스템들은 동적 랜덤 액세스 메모리("DRAM") 장치들과 같은 메모리 장치들을 이용하여 프로세서에 의해 액세스되는 데이터를 저장한다. 이들 메모리 장치들은 통상적으로, 컴퓨터 시스템에서 시스템 메모리로서 사용된다. 일반적인 컴퓨터 시스템에서, 프로세서는 프로세서 버스 및 메모리 제어기를 통해서 시스템 메모리와 통신한다. 일반적으로 다수의 메모리 장치들을 갖는 메모리 모듈들에 배열되는 시스템 메모리의 메모리 장치들은 메모리 버스를 통해서 메모리 제어기에 연결된다. 이 프로세서는 판독 명령과 같은 메모리 명령 및 데이터 또는 명령들을 판독하여야 하는 위치를 지정하는 어드레스를 포함하는 메모리 요청을 발행한다. 메모리 제어기는 명령 및 어드레스를 이용하여, 메모리 버스를 통해서 시스템 메모리로 인가되는 적절한 명령 신호들뿐만 아니라 로우 및 칼럼 어드레스들을 발생시킨다. 명령들 및 어드레스들에 응답하여, 데이터는 시스템 메모리 및 프로세서 간에 전송된다. 메모리 제어기는 종종 시스템 제어기의 파트인데, 이 제어기는 또한 PCI 버스와 같은 확장 버스(expansion bus)에 프로세서 버스를 연결하는 버스 브리지 회로(bus bridge circuitry)를 포함한다.
메모리 시스템들에서, 고 데이터 대역폭이 바람직하다. 일반적으로, 대역폭 제한들은 메모리 제어기들과 상관되지 않는데, 그 이유는 메모리 제어기들이 메모리 장치들이 허용되는 만큼 빠르게 시스템 메모리에/로부터 데이터를 시퀀스하기 때문이다. 대역폭을 증가시키는 한 가지 방법은 메모리 제어기를 메모리 장치들에 연결하는 메모리 데이터 버스의 속도를 증가시키는 것이다. 따라서, 동일한 정보량이 적은 시간으로 메모리 데이터 버스를 통해서 이동될 수 있다. 그러나, 메모리 데이터 버스 속도를 증가시킴에도 불구하고, 이에 대응하여 대역폭이 증가되지 않는다. 데이터 버스 속도 및 대역폭 간의 비선형 관계를 위한 한 가지 이유는 메모리 장치들 자체들 내에서 하드웨어 제한들 때문이다. 즉, 메모리 제어기는 메모리 장치들로의 모든 메모리 명령들을 스케줄링함으로써, 하드웨어 제한들을 지키도록 하여야 한다. 이들 하드웨어 제한들이 메모리 장치의 설계를 통해서 어느 정도 감소될 수 있지만, 하드웨어 제한들을 감소시키면 통상적으로 메모리 장치들에 대한 비용, 전력 및/또는 크기를 부가시키기 때문에 절충이 이루어져야만 하므로, 이들 모두는 바람직한 대안이 아니다. 따라서, 이들 제약들이 주어지면, 메모리 장치들이 꾸준히 증가하는 속도로 "적절한(well-behaved)" 트래픽, 예를 들어 시퀄 트래픽(sequel traffic)을 메모리 장치의 동일한 페이지로 이동시키도록 하는데 용이하지만, 메모리 장치의 상이한 페이지들 또는 뱅크들 간의 바운싱과 같은 "부적절한 트래픽"을 메모리 장치들이 해결하는 것을 훨씬 더 어렵게 한다. 따라서, 메모리 데이터 버스 대역폭의 증가는 이에 대응하여 정보 대역폭을 증가시키지 못한다.
프로세서들 간에 그리고 메모리 장치들 간의 제한된 대역폭 이외에도, 컴퓨터 시스템들의 성능은 또한 시스템 메모리 장치들로부터 데이터를 판독하는데 필요로 되는 시간을 증가시키는 지연 문제들(latency problem)에 의해 제한된다. 특히, 메모리 장치 판독 명령은 동기 DRAM("SDRAM") 장치와 같은 시스템 메모리 장치에 연결될 때, 판독 데이터는 여러 클럭 기간들의 지연 후에만 SDRAM 장치로부터 출력된다. 그러므로, SDRAM 장치들이 고 데이터 속도로 버스트 데이터를 동기적으로 출력할 수 있지만, 데이터를 초기에 제공하는 지연은 SDRAM 장치들을 이용하는 컴퓨터 시스템의 동작 속도를 상당히 느리게 할 수 있다. 메모리 데이터 버스 속도를 증가시키면 지연 문제를 경감시키도록 사용될 수 있다. 그러나, 대역폭과 마찬가지로, 메모리 데이터 버스 속도의 증가는 근본적으로 상술된 동일한 이유들로 지연을 선형적으로 감소시키지 못한다.
메모리 데이터 버스 속도 증가가 어느 정도 대역폭을 증가시키고 지연을 감소시키지만, 다른 문제들이 이 방식에 의해 야기된다. 예를 들어, 메모리 데이터 버스의 속도가 증가될 때, 신호 무결성(signal integrity)을 유지시키기 위하여 메모리 버스상의 로딩을 감소시킬 필요가 있는데, 그 이유는 전통적으로 메모리 모듈들이 플러그 인되는 메모리 슬롯들 및 메모리 제어기간에 와이어만이 존재하기 때문이다. 여러 방법들이 메모리 데이터 버스 속도의 증가를 수용하도록 취해진다. 예를 들어, 메모리 슬롯들의 수를 감소시키며, 메모리 모듈 상의 메모리 장치들에 제어 신호들의 충분한 팬아웃(fanout)을 제공하기 위한 메모리 모듈 상에 버퍼 회로들을 부가하고, 메모리 모듈 상에 다수의 메모리 장치 인터페이스들을 제공하는데, 그 이유는 단일 메모리 장치 인터페이스 상에 너무 적은 메모리 모듈 커넥터들(memory module connectors)이 존재하기 때문이다. 그러나, 이들 종래 방법들의 효율성은 제한된다. 이들 기술들이 과거에 사용되는 이유는 이와 같이 하는 것이 비용 효율적이기 때문이다. 그러나, 단지 하나의 메모리 모듈이 인터페이스 당 플러그 인될 수 있을 때, 비용이 너무 많이 들어 각 필요로 되는 메모리 슬롯을 위한 별도의 메모리 인터페이스를 부가하지 못한다. 다시 말해서, 시스템 제어기들 패키지를 일 상품 범주에서 벗어나 부티크 범주로 확장하는 데에 많은 비용이 수반된다.
비용 효율적인 방식으로 메모리 데이터 버스 속도를 증가시키는 한 가지 최근 방법은 메모리 허브(memory hub)를 통해서 프로세서에 연결되는 다수의 메모리 장치들을 이용하는 것이다. 메모리 허브 아키텍처, 또는 허브-기반 메모리 서브-시스템에서, 시스템 제어기 또는 메모리 제어기는 고속 양방향 또는 단방향 메모리 제어기/허브 인터페이스를 통해서 여러 메모리 모듈들에 연결된다. 일반적으로, 메모리 모듈들은 지점간 또는 직렬 연결 방식 아키텍처(daisy chain architecture)로 연결되어, 메모리 모듈들이 직렬로 서로에 접속되도록 한다. 따라서, 메모리 제어기는 제 1 메모리 모듈에 연결되는데, 상기 제 1 메모리 모듈은 제 2 메모리 모듈에, 제 2 메모리 모듈은 제 3 메모리 모듈에, 등등의 직렬 연결 방식으로 연결된다.
각 메모리 모듈은 메모리 제어기/허브 인터페이스 및 상기 모듈 상의 다수의 메모리 장치들에 연결되는데, 상기 메모리 허브들은 상기 메모리 제어기/허브 인터페이스를 통해서 상기 제어기 및 상기 메모리 장치들 간에 메모리 요청들 및 응답들을 효율적으로 라우팅시킨다. 이 아키텍처를 사용하는 컴퓨터 시스템들은 고속 메모리 데이터 버스를 이용할 수 있는데, 그 이유는 신호 무결성이 메모리 데이터 버스상에 유지될 수 있기 때문이다. 게다가, 이 아키텍처는 또한 종래 메모리 버스 아키텍처들에서 발생되는 것과 같은 더 많은 메모리 모듈들이 부가될 때 신호 품질의 열화에 대한 걱정 없이 시스템 메모리를 손쉽게 팽창시킨다.
메모리 허브들을 이용하는 컴퓨터 시스템들이 우수한 성능을 제공할 수 있지만, 이들은 종종 다양한 이유들로 최적의 효율로 동작하는데 실패할 수 있다. 하나의 이와 같은 이유는 메모리 허브들을 통해서 메모리 제어기로/로부터 흐르는 데이터 간에서 데이터 충돌을 관리하는 문제이다. 종래의 메모리 제어기들에서, 데이터 충돌을 피하도록 하는 한 가지 방법은 다른 메모리 명령의 완료까지 한 메모리 명령의 실행을 지연시키는 것이다. 예를 들어, 종래의 메모리 제어기를 따르면, 메모리 버스상의 기록(즉, 아웃바운드(outbound)) 데이터와 충돌하는 판독(즉, 인바운드(inbound)) 데이터를 피하도록 하기 위하여 판독 명령이 거의 완료될 때까지 판독 명령 후 발행된 기록 명령은 시작하지 않도록 한다. 그러나, 기록 명령을 강제로 대기시키면 대역폭을 효율적으로 감소시키는데, 이것은 통상 메모리 시스템에서 바람직한 것과 일치하지 않게 된다.
본 발명의 일 양태는 데이터 바이패스 회로를 갖는 메모리 허브에 관한 것이다. 메모리 허브는 각 데이터 버스들에 연결하기 위한 제 1 및 제 2 링크 인터페이스, 상기 제 1 및 제 2 링크 인터페이스들에 연결되어 상기 제 1 및 제 2 링크 인터페이스들 간에 데이터를 전송하는 데이터 경로를 포함한다. 상기 메모리 허브는 상기 데이터 경로에 연결되어 상기 데이터 경로 상으로 기록 데이터를 연결하고 상기 기록 데이터를 일시적으로 저장시켜 상기 기록 데이터가 일시적으로 저장되는 동안 상기 데이터 경로를 통해서 판독 데이터를 전송하도록 하는 기록 바이패스 회로를 더 포함한다. 본 발명의 다른 양태에서, 메모리 버스에 연결되는 메모리 시스템 내의 메모리 위치에 데이터를 기록하는 방법이 제공된다. 이 방법은 메모리 시스템에서 판독 데이터에 액세스하는 단계, 기록 데이터를 메모리 버스 상으로 메모리 시스템에 제공하는 단계, 및 상기 기록 데이터를 일시적 저장시키는 레지스터에 연결하는 단계를 포함한다. 이 데이터가 일시적으로 저장되는 동안, 상기 판독 데이터는 상기 메모리 버스로부터 연결되고 판독을 위하여 제공된다. 이 기록 데이터는 상기 메모리 버스에 재결합되고 메모리 위치에 기록된다.
도 1은 본 발명의 실시예들이 수행될 수 있는 메모리 허브 아키텍처에서 메모리 모듈들을 갖는 컴퓨터 시스템의 블록도.
도 2는 도 1의 메모리 모듈들에 사용하기 위한 본 발명의 실시예에 따른 메모리 허브의 부분적인 블록도.
도 3은 본 발명의 실시예에 따른 도 2의 메모리 허브를 위한 데이터 바이패스 회로의 블록도.
도 4는 도 1의 메모리 허브 아키텍처 및 도 2의 메모리 허브를 갖는 컴퓨터 시스템용 도 3의 데이터 바이패스 회로의 동작을 도시하는 블록도.
본 발명의 실시예들은 허브-기반 메모리 서브-시스템에서 양방향 데이터 버스를 위한 데이터 바이패스들을 제공하는 바이패스 회로를 갖는 메모리 허브에 관한 것이다. 본 발명의 각종 실시예들의 충분한 이해를 위하여 특정 상세사항들이 설명된다. 그러나, 당업자는 본 발명의 이들 특정 상세사항들 이외에도 실시될 수 있다는 것을 이해할 것이다. 다른 예들에서, 널리 공지된 회로들, 제어 신호들, 및 타이밍 프로토콜들은 본 발명을 불필요하게 모호한 것을 피하도록 하기 위하여 상세히 도시하지 않았다.
도 1은 본 발명의 일 실시예를 따른 컴퓨터 시스템(100)을 도시한 것이다. 컴퓨터 시스템(100)은 특정 계산들 또는 작업들을 수행하기 위한 특정 소프트웨어를 실행하는 것과 같은 각종 계산 기능들을 수행하기 위한 프로세서(104)를 포함한다. 프로세서(104)는 통상적으로 어드레스 버스, 제어 버스, 및 데이터 버스를 포함하는 프로세서 버스(106)를 포함한다. 프로세서 버스(106)는 일반적으로 캐시 메모리(108)에 연결된다. 캐시 메모리(108)는 일반적으로, 정적 랜덤 액세스 메모리("SRAM")에 의해 제공된다. 프로세서 버스(106)는 또한, 때때로 버스 브리지(bus bridge)라 칭하는 시스템 제어기(110)에 연결된다.
시스템 제어기(110)는 각종 다른 부품들을 위한 프로세서(104)에 통신 경로로서 작용한다. 예를 들어, 도 1에 도시된 바와 같이, 시스템 제어기(110)는 일반적으로 그래픽 제어기(112)에 연결되는 그래픽 포트를 포함한다. 그래픽 제어기는 일반적으로 비디오 디스플레이와 같은 비디오 단말기(114)에 연결된다. 시스템 제어기(110)는 또한 키보드 또는 마우스와 같은 하나 이상의 입력 장치들(118)에 연결되어 오퍼레이터가 컴퓨터 시스템(100)과 인터페이스 하도록 한다. 일반적으로, 컴퓨터 시스템(110)은 또한, 시스템 제어기(110)를 통해서 프로세서(104)에 연결되는 프린터와 같은 하나 이상의 출력 장치들(120)을 포함한다. 하나 이상의 데이터 저장 장치들(124)은 또한 일반적으로 시스템 제어기(110)를 통해서 프로세서(104)에 연결되어 이 프로세서(104)가 내부 또는 외부 저장 매체(도시되지 않음)로부터 데이터를 저장 또는 검색하도록 한다. 일반적인 저장 장치들(124)의 예들로서 하드 및 플로피 디스크들, 테이프 카세트들, 및 컴팩트 디스크 판독 전용 메모리들(CD-ROMs)을 포함한다.
시스템 제어기(110)는 여러 메모리 모듈들(130a, 130b, 130c.. 130n)의 메모리 허브들(140)에 연결되는 메모리 허브 제어기(128)를 포함한다. 메모리 모듈들(130)은 컴퓨터 시스템(100)용 시스템 메모리로서 작용하고, 고속 양방향성 메모리 제어기/허브 인터페이스(134)를 통해서 메모리 허브 제어기(128)에 연결되는 것이 바람직하다. 메모리 제어기/허브 인터페이스(134)가 메모리 모듈들(130)의 메모리 허브들(140)을 통해서 연결되는 지점간 배열(arrangement) 내의 메모리 허브 제어기(128)에 메모리 모듈들(130)이 연결되는 것으로 도시된다. 즉, 메모리 제어기/허브 인터페이스(134)는 직렬로 메모리 허브들(140)에 연결하는 양방향 버스이다. 따라서, 메모리 제어기/허브 인터페이스(134)에 대한 정보는 "업스트림(upstream)" 메모리 모듈들(130)의 메모리 허브들(140)을 통해서 이동하여 "다운스트림" 목적지에 도달한다. 예를 들어, 도 1과 관련하여, 메모리 허브 제어기(128)로부터 메모리 모듈(130c)의 메모리 허브(140)에 전송되는 정보는 메모리 모듈들(130a, 130b)의 메모리 허브들(140)을 통과할 것이다.
그러나, 도 1의 지점간 배열 이외의 토폴로지들(topology)이 또한 사용될 수 있다는 것을 인지할 것이다. 예를 들어, 분리된 고속 링크(도시되지 않음)가 메모리 모듈들(130) 각각을 메모리 허브 제어기(128)에 결합하도록 하는 커플링 배열(coupling arrangement)이 사용된다. 메모리 허브 제어기(128)가 스위치(도시되지 않음)를 통해서 메모리 모듈들(130) 각각에 선택적으로 연결되는 스위칭 토폴로지(switching topology)가 또한 사용될 수 있다. 사용될 수 있는 다른 토폴로지들은 당업자에게 명백할 것이다. 게다가, 메모리 모듈들을 메모리 허브 제어기에 연결하는 메모리 제어기/허브 인터페이스(134)는 전기 또는 광 통신 경로일 수 있다. 그러나, 다른 유형들의 통신 경로들은 또한 메모리 제어기/허브 인터페이스(134)에 사용될 수 있다. 메모리 제어기/허브 인터페이스(134)가 광 통신 경로로서 구현되는 경우에, 광 통신 경로는 하나 이상의 광섬유들 형태일 수 있다. 이와 같은 경우에, 메모리 허브 제어기(128) 및 메모리 모듈들은 본 기술 분야에 공지된 바와 같이 광 통신 경로에 결합되는 분리된 입력 및 출력 포트들 또는 광 입력/출력 포트를 포함할 것이다.
메모리 허브들(140)은 각 메모리 모듈(130)의 메모리 장치들(148)로의 액세스를 제어한다. 도 1에서, 메모리 장치들은 동기식 동적 랜덤 액세스 메모리(synchronous dynamic random access memory; "SDRAM") 장치들로서 도시된다. 그러나, "SDRAM" 장치들 이외의 메모리 장치들이 또한 사용될 수 있다. 도 1에 도시된 바와 같이, 메모리 허브는 각 메모리 버스(150)를 통해서 메모리 장치들(148)의 4개의 세트들에 연결된다. 각 세트들은 각 메모리 모듈(130)을 위한 총 20개의 메모리 장치들(148)을 위한 4개의 메모리 장치들(148)을 포함한다. 메모리 버스들(150)은 통상적으로, 본 기술 분야에 공지된 바와 같은 제어 버스, 어드레스 버스, 및 데이터 버스를 포함한다. 그러나, 공유된 명령/어드레스 버스를 이용하는 버스 시스템과 같은 다른 버스 시스템들이 또한 본 발명의 범위를 벗어남이 없이 사용될 수 있다는 것을 당업자에게 인지될 것이다. 메모리 장치들(148)의 배열 및 메모리 장치들(148)의 수는 본 발명의 범위를 벗어남이 없이 수정될 수 있다는 것을 또한 인지할 것이다.
도 2는 본 발명의 실시예를 따른 메모리 허브(140)의 일부를 도시한 것이다. 메모리 허브(140)는 메모리 제어기/허브 인터페이스(134)(도 1)에 연결되는 로컬 허브 회로(local hub circuit; 214)를 포함한다. 로컬 허브 회로(214)는 또한 메모리 버스(150)를 통해서 메모리 장치들(148)에 연결된다. 로컬 허브 회로(214)는 메모리 제어기(128)로부터 발행된 메모리 명령들을 처리하고 메모리 버스(150)를 통해서 메모리 장치들(148)에 액세스하여 메모리 명령이 각 메모리 모듈(130)로 향할 때 대응하는 데이터를 제공하는 제어 논리(control logic)를 포함한다. 이와 같은 제어 논리의 설계 및 동작은 당업자에게 널리 공지되어 있음으로, 이에 대한 더 상세한 설명은 간결성을 위하여 생략된다. 메모리 허브(140)는 로컬 허브 회로(214)에 연결되는 데이터 바이패스 회로(286)를 더 포함한다. 이하에 더 상세하게 설명되는 바와 같이, 데이터 바이패스 회로(286)는 원격의 메모리 허브로 통과하는 데이터를 일시적으로 캡쳐링하기 위하여 사용되는데, 이는 상기 캡쳐링된 데이터가 상기 원격의 메모리 허브 상에 지속되기 전 다른 원격의 메모리 허브로부터 복귀하는 데이터가 메모리 허브(140)를 통과하도록 한다. 따라서, 데이터 바이패스 회로(286)는 메모리 허브(140)가 연결되는 양방향성 메모리 제어기/허브 인터페이스(134) 상에서 데이터 충돌들을 피하도록 하는데 사용될 수 있는 데이터 바이패스 메커니즘을 제공한다.
상술된 바와 같이, 데이터 충돌을 피하기 위하여 종래 메모리 서브 시스템들에 의해 취해진 한가지 방법은 다른 메모리 명령의 완료까지 하나의 메모리 명령의 실행을 지연시키기 위한 것이다. 예를 들어, 일반적인 메모리 시스템들에서, 판독 명령 후 발행된 기록 명령은 메모리 제어기/허브 인터페이스(134) 상의 기록(즉, 아웃바운드) 데이터와 충돌하는 판독(즉, 인바운드) 데이터를 피하도록 하기 위하여 판독 명령의 완료 근처까지 시작하도록 허용되지 않는다. 대조적으로, 데이터 바이패스 회로(286)를 갖는 메모리 허브(140)를 사용함으로써, 판독 명령 후 발행된 기록 명령들은 종래의 메모리 시스템들과 비교하여 더욱 조기에 시퀀스화됨으로써, 조기에 스케줄링된 기록 명령 다음 스케줄링된 메모리 명령들은 또한 더욱 일찍 실행될 수 있다.
도 3은 본 발명의 실시예를 따른 데이터 바이패스 회로(300)를 도시한 것이다. 데이터 바이패스 회로(300)는 데이터 바이패스 회로(286)(도 2)를 대체할 수 있고 당업자에게 공지된 종래의 설계들 및 회로들을 이용하여 구현될 수 있다. 데이터 바이패스 회로(300)는 입력 기록 데이터(WR-DATA_IN)을 수신하고 이를 바이패스 레지스터/FIFO(304) 및 멀티플렉서(306)의 제 1 입력에 제공하는 입력 버퍼(302)를 포함한다. 바이패스 레지스터/FIFO(304)의 출력은 멀티플렉서(306)의 제 2 입력에 연결된다. 멀티플렉서(306)의 출력에 연결하기 위하여 2개의 입력들 중 어느 입력을 선택하는 것은 바이패스 선택 논리(308)에 의해 발생된 인에이블 신호(EN)에 의해 행해진다. EN 신호는 또한 입력/출력 버퍼(310)를 활성 또는 비활성화는 출력 인에이블 신호로 입력/출력 버퍼(310)에 제공된다. 바이패스 선택 논리(308)는 메모리 허브 제어기(128)(도 1)에 의해 제공되는 활성 신호 BYPASS_EN 신호에 응답하여 적절한 EN 신호를 발생시킨다. 대안적으로, BYPASS_EN 신호는 동일한 메모리 시스템의 부분인 다른 메모리 허브들(도시되지 않음)로부터 제공될 수 있다. 데이터 바이패스 회로의 회로는 기존의 것이며, 데이터 바이패스 회로(300)의 회로들은 본 기술 분야에 널리 공지된 종래의 설계들 및 회로들을 이용하여 구현될 수 있다는 것을 인지할 것이다.
동작시, 데이터 바이패스 회로(300)에 의해 수신되는 WR_DATA_IN은 입력 버퍼(302)를 통해서 구동되고 멀티플렉서(306)의 제 1 입력에 제공된다. WR_DATA_IN은 또한 바이패스 레지스터/FIFO(304)에 세이브된다. 비활성 BYPASS_EN 신호에 응답하여, 활성 EN 신호는 바이패스 선택 논리(308)에 의해 발생된다. 활성 EN 신호는 입력/출력 버퍼(310)에 의해 출력되고 입력 버퍼(302)의 출력을 멀티플렉서(306)를 통해서 입력/출력 버퍼(310)의 입력에 결합시킨다. 따라서, WR_DATA_IN은 입력/출력 버퍼(310)의 입력에 직접 제공되고 WR_DATA-IN은 어떤 바이패스 없이 데이터 바이패스 회로(300)를 통해서 제공된다. 그러나, 활성 BYPASS_EN 신호에 응답하여, 바이패스 선택 논리(308)는 활성 EN 신호를 발생시켜, 입력/출력 버퍼(310)의 출력 기능을 디스에이블하고 이의 출력을 고 임피던스 상태로 배치한다. 게다가, 비활성 EN 신호는 입력/출력 버퍼(310)의 입력을 바이패스 레지스터/FIFO(304)의 출력에 연결한다. 이 방식으로, WR_DATA_IN은 바이패스 레지스터/FIFO(306)에 의해 저장되는 데이터 바이패스 회로(300)에 의해 수신되고 입력/출력 버퍼(310)의 입력에 인가된다. 그러나, EN 신호의 비활성 상태로 인해, WR_DATA_IN은 입력/출력 버퍼(310)에 의해 출력 데이터(WR_DATA_OUT)로서 제공되지 않는다. 따라서, WR_DATA_IN은 BYPASS_EN 신호가 비활성화될 때까지 바이패스 상태로 유지되는데, 이때에, EN 신호는 또 다시 활성화되어 입력/출력 버퍼(310)가 WR_DATA_IN 뿐만 아니라 WR_ATA_OUT 데이터를 제공하도록 한다. 멀티플렉서(306)는 또한 입력/출력 버퍼(310)의 입력에 직접 입력 버퍼(302)의 출력을 연결하도록 다시 스위칭되어, WR_DATA_IN가 감춰지지 않은 데이터 바이패스 회로를 통과시키도록 한다.
데이터 바이패스 회로(286)의 동작이 도 4와 관련하여 설명될 것이다. 도 4가 간단화한 것이라는 것을 제외하면, 도 4는 도 1과 유사하다. 특히, 도 1의 많은 기능 블록들이 생략되고, 단지 메모리 모듈들(130a 내지 130c)만이 도시되고, 메모리 허브들(140a 내지 140c)로 표시된다. 단지 하나의 메모리 장치(148a 내지 148c)는 각 메모리 버스(150a 내지 150c)를 통해서 각 메모리 허브(140a 내지 140c)에 연결되도록 도시된다. 도 1에 따라서, 메모리 허브들(140a 내지 140c)은 고속 양방향성 메모리 제어기/허브 인터페이스(134)에 의해 메모리 허브 제어기(128)에 연결된다.
도 4에서, 메모리 허브 제어기(128)가 판독 및 기록 명령들을 발행한다고 추정하는데, 판독 명령은 기록 명령 전 시퀀스된다. 판독 명령이 메모리 모듈(130b)로 향하고, 기록 명령이 메모리 모듈(130c)로 향한다. 즉, 데이터가 기록되는 메모리 모듈은 데이터가 판독되는 메모리 모듈보다 더 다운스트림된다. 판독 명령에 응답하여, 메모리 허브(140b)는 "(1)"로 도 4에 도시된 바와 같이 메모리 장치(148b)로부터 판독 데이터(RD)를 검색하기 시작한다. 발행된 판독 명령으로 인해, 기록 명령이 초기화되고, 기록 데이터(WD)는 메모리 제어기/허브 인터페이스(134) 상으로 제공된다. 그러나, 메모리 허브 제어기(128)가 RD가 메모리 모듈(130b)로부터 복귀될 것이라고 예상하기 때문에, 메모리 허브(140a)는 데이터 바이패스 회로(286a)에서 WD를 캡쳐링하도록 지시받는다. 따라서, 메모리 허브(286a)는 WD를 캡쳐링하여 도 4에서 "(2)"로 나타낸 바와 같이 RD가 메모리 허브 제어기(128)로 리턴되도록 메모리 제어기/허브 인터페이스(134)를 소거한다. 메모리 허브(140b)는 메모리 장치(148b)로부터 RD를 검색할 때, RD는 판독 요청을 완료하기 위하여 도 4에서 "(3)"으로 나타낸 바와 같이 메모리 제어기/허브 인터페이스(134)를 통해서 메모리 허브 제어기(128)로 제공된다. 메모리 허브 제어기(128)로 가는 경로 상의 메모리 허브(140a)를 RD가 통과시, 메모리 허브(140a)는 데이터 바이패스 회로(286a)로부터 WD를 릴리스하여 메모리 허브(140c)로 계속 진행한다. WD는 고속 링크를 통해서 메모리 허브(140c)로 제공되는데, 이는 메모리 허브(140a, 140c) 간에서 현재 소거된다. 메모리 허브(140c)에 도달시, WD는 도 4에서 "(4)"로 도시된 바와 같이 메모리 장치(148c)에 기록된다. 본 발명의 실시예에서, 데이터 바이패스 회로(286)를 통과하고 메모리 제어기/허브 인터페이스(134) 상의 RD 및 WD의 데이터 흐름을 조정하는 것은 메모리 허브 제어기(128)의 제어하에 있다. 예를 들어, 앞서의 예에서, 메모리 허브 제어기는 RD의 대향 방향으로 흐르는 임의의 WD가 메모리 모듈(130b)로부터 RD를 검색시 경로를 벗어나는 것을 보장한다. 그러나, 대안적인 실시예들에서, 메모리 제어기/허브 인터페이스(134) 및 데이터 바이패스 회로들(286)을 통한 데이터 흐름은 메모리 허브 제어기(128)가 메모리 허브들(140)과 데이터 흐름의 조정을 공유하는 것과 같이, 별도로 관리될 수 있다는 것이 인지될 것이다.
앞서의 예에서, RD는 종래의 메모리 시스템에서 처럼 메모리 허브 제어기(128)로 리턴된다. 즉, 메모리 장치(148)에 의해 전송되는 RD는 상당히 큰 어떤 지연 없이도 메모리 제어기에 제공된다. 그러나, 상술된 데이터 바이패스 메커니즘을 사용함으로써, 기록 명령들은 종래의 메모리 시스템들보다 조기에 스케줄링될 수 있다. 판독 명령 후 발행되는 기록 명령은 전형적인 메모리 시스템들에서 판독 명령의 완료 근처까지 시작하도록 허용되지 않는다. 대조적으로, 본 발명의 실시예들은 다음 발행된 기록 명령이 조기에 스케줄링되도록 하여, 판독 및 기록 명령들 간의 시간 갭을 감소시킨다. 따라서, 조기에 스케줄링된 기록 명령 다음에 스케줄링된 명령들은 전체 감소된 지연을 갖는다.
상술된 바로부터, 본 발명의 특정 실시예들이 예시를 위하여 설명되었지만, 본 발명의 원리 및 범위를 벗어남이 없이 각종 수정들이 행해질 수 있다는 것을 인지할 것이다. 따라서, 본 발명은 첨부된 청구항들에 의해서만 제한된다.

Claims (43)

  1. 허브-기반 메모리 모듈용 메모리 허브에 있어서,
    각 데이터 버스들에 연결하는 제 1 및 제 2 링크 인터페이스들;
    상기 제 1 및 제 2 링크 인터페이스들에 연결되어, 데이터를 상기 제 1 및 제 2 링크 인터페이스들 간에 전송하는 데이터 경로; 및
    상기 데이터 경로에 연결되어, 상기 데이터 경로 상에 기록 데이터를 연결하고 상기 기록 데이터를 일시적으로 저장시켜 상기 기록 데이터가 일시적으로 저장되는 동안 판독 데이터가 상기 데이터 경로를 통해서 전송되도록 하는 기록 바이패스 회로를 포함하는, 허브-기반 메모리 모듈용 메모리 허브.
  2. 제 1 항에 있어서,
    상기 기록 바이패스 회로는:
    상기 데이터 경로에 연결되는 제 1 입력을 갖고 제 2 입력, 출력, 및 선택 단자를 더 갖는 멀티플렉서로서, 상기 선택 단자에 인가되는 선택 신호에 따라서 상기 출력을 상기 제 1 또는 제 2 입력에 연결하는, 상기 멀티플렉서;
    상기 데이터 경로에 연결되는 입력을 갖고 상기 멀티플렉서의 제 2 입력에 연결되는 출력을 더 갖는 선입 선출(FIFO) 레지스터;
    상기 멀티플렉서의 출력에 연결되는 버퍼 입력을 갖고 버퍼 출력과 활성 단자를 더 갖는 출력 버퍼로서, 상기 활성 단자에 인가되는 활성 신호에 따라서 상기 버퍼 입력을 상기 버퍼 출력에 연결하는, 상기 출력 버퍼; 및
    상기 멀티플렉서에 연결되어, 상기 멀티플렉서의 상기 제 2 입력을 상기 멀티플렉서의 출력에 연결하도록 활성화될 때 상기 선택 신호 및 상기 활성 신호를 발생시키는 선택 회로를 포함하는, 허브-기반 메모리 모듈용 메모리 허브.
  3. 제 2 항에 있어서,
    상기 기록 바이패스 회로는 상기 데이터 경로에 연결되는 입력 및 상기 멀티플렉서와 상기 FIFO 레지스터의 입력들에 연결되는 출력을 갖는 입력 버퍼를 더 포함하는, 허브-기반 메모리 모듈용 메모리 허브.
  4. 제 1 항에 있어서,
    상기 데이터 경로에 연결되는 메모리 장치 인터페이스를 더 포함하고, 상기 메모리 장치 인터페이스는 데이터를 상기 메모리 장치 인터페이스가 연결될 수 있는 적어도 하나의 메모리 장치에 연결하는, 허브-기반 메모리 모듈용 메모리 허브.
  5. 허브-기반 메모리 모듈용 메모리 허브에 있어서,
    제 1 데이터 버스에 연결하여 데이터를 상기 제 1 데이터 버스에 제공하고 상기 제 1 데이터 버스로부터 데이터를 수신하는 제 1 링크 인터페이스;
    제 2 데이터 버스에 연결하여 데이터를 상기 제 2 데이터 버스에 제공하고 상기 제 2 데이터 버스로부터 데이터를 수신하는 제 2 링크 인터페이스;
    상기 제 1 및 제 2 링크 인터페이스들에 연결되어 상기 제 1 및 제 2 링크 인터페이스들 간에 데이터를 연결하는 스위칭 회로; 및
    상기 스위칭 회로에 연결된 데이터 바이패스 회로로서, 상기 제 1 또는 제 2 링크 인터페이스들 중 어느 하나에 의해 수신되는 제 1 세트의 데이터를 저장하여 제 2 세트의 데이터가 상기 제 1 세트의 데이터에 의한 간섭없이 상기 제 1 및 제 2 링크 인터페이스들 간에 연결되도록 하는, 상기 데이터 바이패스 회로를 포함하는, 허브-기반 메모리 모듈용 메모리 허브.
  6. 제 5 항에 있어서,
    상기 데이터 바이패스 회로는:
    상기 스위칭 회로에 연결되는 제 1 입력을 갖고 제 2 입력, 출력, 및 선택 단자를 더 갖는 멀티플렉서로서, 상기 선택 단자에 인가되는 선택 신호에 따라서 상기 출력을 상기 제 1 또는 제 2 입력에 연결하는, 상기 멀티플렉서;
    상기 스위칭 회로에 연결되는 입력을 갖고 상기 멀티플렉서의 상기 제 2 입력에 연결되는 출력을 더 갖는 선입 선출(FIFO) 레지스터;
    상기 멀티플렉서의 출력에 연결되는 버퍼 입력을 갖고 버퍼 출력과 활성 단자를 더 갖는 출력 버퍼로서, 상기 활성 단자에 인가되는 활성 신호에 따라서 상기 버퍼 입력을 상기 버퍼 출력에 연결하는, 상기 출력 버퍼; 및
    상기 멀티플렉서에 연결되어, 상기 멀티플렉서의 상기 제 2 입력을 상기 멀티플렉서의 출력에 연결하도록 활성화될 때 상기 선택 신호 및 활성 신호를 발생시키는 선택 회로를 포함하는, 허브-기반 메모리 모듈용 메모리 허브.
  7. 제 6 항에 있어서,
    상기 데이터 바이패스 회로는 상기 스위칭 회로에 연결되는 입력 및 상기 멀티플렉서와 상기 FIFO 레지스터의 입력들에 연결되는 출력을 갖는 입력 버퍼를 더 포함하는, 허브-기반 메모리 모듈용 메모리 허브.
  8. 제 5 항에 있어서,
    상기 스위칭 회로에 연결되는 메모리 장치 인터페이스를 더 포함하고, 상기 메모리 장치 인터페이스는 데이터를 상기 메모리 장치 인터페이스가 연결될 수 있는 적어도 하나의 메모리 장치에 연결하는, 허브-기반 메모리 모듈용 메모리 허브.
  9. 제 8 항에 있어서,
    상기 메모리 장치 인터페이스는:
    메모리 제어기 버스를 통해서 상기 데이터 경로에 연결되고 메모리 장치가 연결될 수 있는 메모리 장치 단자를 더 갖는 메모리 제어기;
    상기 메모리 제어기에 연결되어 메모리 요청들을 저장하는 기록 버퍼; 및
    상기 메모리 제어기에 연결되어 데이터를 저장하는 캐시를 포함하는, 허브-기반 메모리 모듈용 메모리 허브.
  10. 제 5 항에 있어서,
    상기 제 1 세트의 데이터는 기록 데이터를 나타내고 상기 제 2 세트의 데이터는 판독 데이터를 나타내는, 허브-기반 메모리 모듈용 메모리 허브.
  11. 메모리 모듈에 있어서,
    다수의 메모리 장치들; 및
    상기 다수의 메모리 장치들에 연결되는 메모리 허브를 포함하고:
    상기 메모리 허브는,
    각 데이터 버스들에 연결하는 제 1 및 제 2 링크 인터페이스들;
    상기 제 1 및 제 2 링크 인터페이스들에 연결되어 데이터를 상기 제 1 및 제 2 링크 인터페이스들 간에 전송하는 데이터 경로; 및
    상기 데이터 경로에 연결되어, 상기 데이터 경로 상에 기록 데이터를 연결하고 상기 기록 데이터를 일시적으로 저장시켜 상기 기록 데이터가 일시적으로 저장되는 동안 판독 데이터가 상기 데이터 경로를 통해서 전송되도록 하는 기록 바이패스 회로를 포함하는, 메모리 모듈.
  12. 제 11 항에 있어서,
    상기 메모리 허브의 기록 바이패스 회로는:
    상기 데이터 경로에 연결되는 제 1 입력을 갖고 제 2 입력, 출력, 및 선택 단자를 더 갖는 멀티플렉서로서, 상기 선택 단자에 인가되는 선택 신호에 따라서 상기 출력을 상기 제 1 또는 제 2 입력에 연결하는, 상기 멀티플렉서;
    상기 데이터 경로에 연결되는 입력을 갖고 상기 멀티플렉서의 제 2 입력에 연결되는 출력을 더 갖는 선입 선출(FIFO) 레지스터;
    상기 멀티플렉서의 출력에 연결되는 버퍼 입력을 갖고 버퍼 출력과 활성 단자를 더 갖는 출력 버퍼로서, 상기 활성 단자에 인가되는 활성 신호에 따라서 상기 버퍼 입력을 상기 버퍼 출력에 연결하는, 상기 출력 버퍼; 및
    상기 멀티플렉서에 연결되어, 상기 멀티플렉서의 상기 제 2 입력을 상기 멀티플렉서의 출력에 연결하도록 활성화될 때 상기 선택 신호 및 활성 신호를 발생시키는 선택 회로를 포함하는, 메모리 모듈.
  13. 제 12 항에 있어서,
    상기 메모리 허브의 상기 기록 바이패스 회로는 상기 데이터 경로에 연결되는 입력 및 상기 멀티플렉서와 상기 FIFO 레지스터의 입력들에 연결되는 출력을 갖는 입력 버퍼를 더 포함하는, 메모리 모듈.
  14. 제 11 항에 있어서,
    상기 메모리 허브는 상기 데이터 경로 및 상기 다수의 메모리 장치들 중 적어도 하나에 연결되는 메모리 장치 인터페이스를 더 포함하고, 상기 메모리 장치 인터페이스는 데이터를 상기 메모리 장치에 연결하는, 메모리 모듈.
  15. 제 14 항에 있어서,
    상기 메모리 허브의 상기 메모리 장치 인터페이스는:
    메모리 제어기 버스를 통해서 상기 데이터 경로에 연결되고 메모리 장치 버스를 통해서 상기 다수의 메모리 장치들 중 적어도 하나에 더 연결되는 메모리 제어기;
    상기 메모리 제어기에 연결되어, 상기 메모리 제어기에 연결되는 상기 메모리 장치로 향하는 메모리 요청들을 저장하는 기록 버퍼; 및
    상기 메모리 제어기에 연결되어, 상기 메모리 장치에 제공되거나 상기 메모리 장치로부터 검색되는 데이터를 저장하는 캐시를 포함하는, 메모리 모듈.
  16. 메모리 모듈에 있어서,
    다수의 메모리 장치들; 및
    상기 다수의 메모리 장치들 중 적어도 하나에 연결되는 메모리 허브를 포함하고,
    상기 메모리 허브는,
    제 1 데이터 버스에 연결하여 데이터를 상기 제 1 데이터 버스에 제공하고 상기 제 1 데이터 버스로부터 데이터를 수신하는 제 1 링크 인터페이스;
    제 2 데이터 버스에 연결하여 데이터를 상기 제 2 데이터 버스에 제공하고 상기 제 2 데이터 버스로부터 데이터를 수신하는 제 2 링크 인터페이스;
    상기 제 1 및 제 2 링크 인터페이스들에 연결되어 상기 제 1 및 제 2 링크 인터페이스들 간에 데이터를 연결하는 스위칭 회로; 및
    상기 스위칭 회로에 연결되어, 상기 제 1 또는 제 2 링크 인터페이스들 중 어느 하나에 의해 수신되는 제 1 세트의 데이터를 저장하여 제 2 세트의 데이터가 상기 제 1 세트의 데이터에 의한 간섭없이 상기 제 1 및 제 2 링크 인터페이스들 간에 연결되도록 하는 데이터 바이패스 회로를 포함하는, 메모리 모듈.
  17. 제 16 항에 있어서,
    상기 메모리 허브의 상기 데이터 바이패스 회로는:
    상기 스위칭 회로에 연결되는 제 1 입력을 갖고 제 2 입력, 출력, 및 선택 단자를 더 갖는 멀티플렉서로서, 상기 선택 단자에 인가되는 선택 신호에 따라서 상기 출력을 상기 제 1 또는 제 2 입력에 연결하는, 상기 멀티플렉서;
    상기 스위칭 회로에 연결되는 입력을 갖고 상기 멀티플렉서의 상기 제 2 입력에 연결되는 출력을 더 갖는 선입 선출(FIFO) 레지스터;
    상기 멀티플렉서의 출력에 연결되는 버퍼 입력을 갖고 버퍼 출력과 활성 단자를 더 갖는 출력 버퍼로서, 상기 활성 단자에 인가되는 활성 신호에 따라서 상기 버퍼 입력을 상기 버퍼 출력에 연결하는, 상기 출력 버퍼; 및
    상기 멀티플렉서에 연결되어, 상기 멀티플렉서의 제 2 입력을 상기 멀티플렉서의 출력에 연결하도록 활성화될 때 상기 선택 신호 및 활성 신호를 발생시키는 선택 회로를 포함하는, 메모리 모듈.
  18. 제 17 항에 있어서,
    상기 메모리 허브의 상기 데이터 바이패스 회로는 상기 스위칭 회로에 연결되는 입력 및 상기 멀티플렉서와 상기 FIFO 레지스터의 입력들에 연결되는 출력을 갖는 입력 버퍼를 더 포함하는, 메모리 모듈.
  19. 제 16 항에 있어서,
    상기 메모리 허브는 상기 데이터 경로 및 상기 다수의 메모리 장치들 중 적어도 하나에 연결되는 메모리 장치 인터페이스를 더 포함하고, 상기 메모리 장치 인터페이스는 데이터를 상기 메모리 장치에 연결하는, 메모리 모듈.
  20. 제 16 항에 있어서,
    상기 제 1 세트의 데이터는 기록 데이터를 나타내고 상기 제 2 세트의 데이터는 판독 데이터를 나타내는, 메모리 모듈.
  21. 프로세서 기반 시스템에 있어서,
    프로세서 버스를 갖는 프로세서;
    상기 프로세서 버스에 연결되며, 시스템 메모리 포트 및 주변 장치 포트를 갖는 시스템 제어기;
    상기 시스템 제어기의 상기 주변 장치 포트에 연결되는 적어도 하나의 입력 장치;
    상기 시스템 제어기의 상기 주변 장치 포트에 연결되는 적어도 하나의 출력 장치;
    상기 시스템 제어기의 상기 주변 장치 포트에 연결되는 적어도 하나의 데이터 저장 장치; 및
    상기 시스템 제어기의 상기 시스템 메모리 포트에 연결되는 메모리 모듈을 포함하고,
    상기 메모리 모듈은:
    다수의 메모리 장치들; 및
    상기 다수의 메모리 장치들에 연결되는 메모리 허브를 포함하고,
    상기 메모리 허브는:
    각 데이터 버스들에 연결하는 제 1 및 제 2 링크 인터페이스들;
    상기 제 1 및 제 2 링크 인터페이스들에 연결되어 데이터가 상기 제 1 및 제 2 링크 인터페이스들 간에 전송되는 데이터 경로; 및
    상기 데이터 경로에 연결되어, 상기 데이터 경로 상에 기록 데이터를 연결하고 상기 기록 데이터를 일시적으로 저장시켜 상기 기록 데이터가 일시적으로 저장되는 동안 판독 데이터가 상기 데이터 경로를 통해서 전송되게 하는 기록 바이패스 회로를 포함하는, 프로세서-기반 시스템.
  22. 제 21 항에 있어서,
    상기 메모리 허브의 상기 기록 바이패스 회로는:
    상기 데이터 경로에 연결되는 제 1 입력을 갖고 제 2 입력, 출력, 및 선택 단자를 더 갖는 멀티플렉서로서, 상기 선택 단자에 인가되는 선택 신호에 따라서 상기 출력을 상기 제 1 또는 제 2 입력에 연결하는, 상기 멀티플렉서;
    상기 데이터 경로에 연결되는 입력을 갖고 상기 멀티플렉서의 제 2 입력에 연결되는 출력을 더 갖는 선입 선출(FIFO) 레지스터;
    상기 멀티플렉서의 출력에 연결되는 버퍼 입력을 갖고 버퍼 출력과 활성 단자를 더 갖는 출력 버퍼로서, 상기 활성 단자에 인가되는 활성 신호에 따라서 상기 버퍼 입력을 상기 버퍼 출력에 연결하는 상기 출력 버퍼; 및
    상기 멀티플렉서에 연결되어, 상기 멀티플렉서의 상기 제 2 입력을 상기 멀티플렉서의 상기 출력에 연결하도록 활성화될 때 상기 선택 신호 및 활성 신호를 발생시키는 선택 회로를 포함하는, 프로세서 기반 시스템.
  23. 제 22 항에 있어서,
    상기 메모리 허브의 상기 기록 바이패스 회로는 상기 데이터 경로에 연결되는 입력 및 상기 멀티플렉서와 상기 FIFO 레지스터의 입력들에 연결되는 출력을 갖는 입력 버퍼를 더 포함하는, 프로세서 기반 시스템.
  24. 제 21 항에 있어서,
    상기 메모리 허브는 상기 데이터 경로 및 상기 다수의 메모리 장치들 중 적어도 하나에 연결되는 메모리 장치 인터페이스를 더 포함하고, 상기 메모리 장치 인터페이스는 데이터를 상기 메모리 장치에 연결하는, 프로세서 기반 시스템.
  25. 제 24 항에 있어서,
    상기 메모리 허브의 상기 메모리 장치 인터페이스는:
    메모리 제어기 버스를 통해서 상기 데이터 경로에 연결되고 메모리 장치 버스를 통해서 상기 다수의 메모리 장치들 중 적어도 하나에 더 연결되는 메모리 제어기;
    상기 메모리 제어기에 연결되어, 상기 메모리 제어기에 연결되는 상기 메모리 장치로 향하는 메모리 요청들을 저장하는 기록 버퍼; 및
    상기 메모리 제어기에 연결되어, 상기 메모리 장치에 제공되거나 상기 메모리 장치로부터 검색되는 데이터를 저장하는 캐시를 포함하는, 프로세서 기반 시스템.
  26. 프로세서 기반 시스템에 있어서,
    프로세서 버스를 갖는 프로세서;
    상기 프로세서 버스에 연결되며, 시스템 메모리 포트 및 주변 장치 포트를 갖는, 시스템 제어기;
    상기 시스템 제어기의 상기 주변 장치 포트에 연결되는 적어도 하나의 입력 장치;
    상기 시스템 제어기의 상기 주변 장치 포트에 연결되는 적어도 하나의 출력 장치;
    상기 시스템 제어기의 상기 주변 장치 포트에 연결되는 적어도 하나의 데이터 저장 장치; 및
    상기 시스템 제어기의 상기 시스템 메모리 포트에 연결되는 메모리 모듈을 포함하고, 상기 메모리 모듈은:
    다수의 메모리 장치들; 및
    상기 다수의 메모리 장치들 중 적어도 하나에 연결되는 메모리 허브를 포함하고, 상기 메모리 허브는:
    제 1 데이터 버스에 연결하여 데이터를 상기 제 1 데이터 버스에 제공하고 상기 제 1 데이터 버스로부터 데이터를 수신하는 제 1 링크 인터페이스;
    제 2 데이터 버스에 연결하여 데이터를 상기 제 2 데이터 버스에 제공하고 상기 제 2 데이터 버스로부터 데이터를 수신하는 제 2 링크 인터페이스;
    상기 제 1 및 제 2 링크 인터페이스들에 연결되어 상기 제 1 및 제 2 링크 인터페이스들 간에 데이터를 연결하는 스위칭 회로; 및
    상기 스위칭 회로에 연결되어, 상기 제 1 또는 제 2 링크 인터페이스들 중 어느 하나에 의해 수신되는 제 1 세트의 데이터를 저장하여 제 2 세트의 데이터가 상기 제 1 세트의 데이터에 의한 간섭없이 상기 제 1 및 제 2 링크 인터페이스들 간에 연결되도록 하는 데이터 바이패스 회로를 포함하는, 프로세서 기반 시스템.
  27. 제 26 항에 있어서,
    상기 메모리 허브의 상기 데이터 바이패스 회로는:
    상기 스위칭 회로에 연결되는 제 1 입력을 갖고 제 2 입력, 출력, 및 선택 단자를 더 갖는 멀티플렉서로서, 상기 선택 단자에 인가되는 선택 신호에 따라서 상기 출력을 상기 제 1 또는 제 2 입력에 연결하는, 상기 멀티플렉서;
    상기 스위칭 회로에 연결되는 입력을 갖고 상기 멀티플렉서의 상기 제 2 입력에 연결되는 출력을 더 갖는 선입 선출(FIFO) 레지스터;
    상기 멀티플렉서의 출력에 연결되는 버퍼 입력을 갖고 버퍼 출력과 활성 단자를 더 갖는 출력 버퍼로서, 상기 활성 단자에 인가되는 활성 신호에 따라서 상기 버퍼 입력을 상기 버퍼 출력에 연결하는 상기 출력 버퍼; 및
    상기 멀티플렉서에 연결되어, 상기 멀티플렉서의 상기 제 2 입력을 상기 멀티플렉서의 출력에 연결하도록 활성화될 때 상기 선택 신호 및 활성 신호를 발생시키는 선택 회로를 포함하는, 프로세서 기반 시스템.
  28. 제 27 항에 있어서,
    상기 메모리 허브의 상기 데이터 바이패스 회로는 상기 스위칭 회로에 연결되는 입력 및 상기 멀티플렉서와 상기 FIFO 레지스터의 입력들에 연결되는 출력을 갖는 입력 버퍼를 더 포함하는, 프로세서 기반 시스템.
  29. 제 26 항에 있어서,
    상기 메모리 허브는 상기 데이터 경로에 연결되고 상기 다수의 메모리 장치들 중 적어도 하나에 연결되는 메모리 장치 인터페이스를 더 포함하고, 상기 메모리 장치 인터페이스는 데이터를 상기 메모리 장치에 연결하는, 프로세서 기반 시스템.
  30. 제 29 항에 있어서,
    상기 메모리 허브의 상기 메모리 장치 인터페이스는:
    메모리 제어기 버스를 통해서 상기 데이터 경로에 연결되고 메모리 장치 버스를 통해서 상기 다수의 메모리 장치들 중 적어도 하나에 더 연결되는 메모리 제어기;
    상기 메모리 제어기에 연결되어, 상기 메모리 제어기에 연결되는 상기 메모리 장치로 향하는 메모리 요청들을 저장하는 기록 버퍼; 및
    상기 메모리 제어기에 연결되어, 상기 메모리 장치에 제공되거나 상기 메모리 장치로부터 검색되는 데이터를 저장하는 캐시를 포함하는, 프로세서 기반 시스템.
  31. 제 26 항에 있어서,
    상기 제 1 세트의 데이터는 기록 데이터를 나타내고 상기 제 2 세트의 데이터는 판독 데이터를 나타내는, 프로세서 기반 시스템.
  32. 메모리 버스에 연결되는 메모리 시스템 내의 메모리 위치에 데이터를 기록하는 방법에 있어서,
    상기 메모리 시스템에 판독 데이터를 액세스하는 단계;
    상기 메모리 버스 상의 상기 메모리 시스템에 기록 데이터를 제공하는 단계;
    상기 기록 데이터의 일시적 저장을 위하여 상기 메모리 시스템 내의 레지스터에 상기 기록 데이터를 연결하는 단계;
    상기 메모리 버스에 상기 판독 데이터를 연결하고 판독을 위하여 상기 판독 데이터를 제공하는 단계;
    상기 레지스터에 저장되는 상기 기록 데이터를 상기 메모리 버스에 연결하는 단계; 및
    상기 기록 데이터를 상기 메모리 위치에 기록하는 단계를 포함하는, 데이터 기록 방법.
  33. 제 32 항에 있어서,
    기록 명령을 상기 메모리 시스템에 발행하기 전에 판독 명령을 상기 메모리 시스템에 발행하는 단계를 더 포함하는, 데이터 기록 방법.
  34. 제 32 항에 있어서,
    상기 메모리 시스템에 상기 기록 데이터를 제공하는 단계는 상기 기록 데이터를 상기 레지스터에 연결하기 전에 상기 메모리 시스템의 적어도 하나의 메모리 모듈을 통해서 상기 기록 데이터를 제공하는 단계를 포함하는, 데이터 기록 방법.
  35. 제 32 항에 있어서,
    상기 메모리 시스템은 상기 메모리 버스 상에 직렬로 연결되는 다수의 메모리 모듈들을 포함하고, 상기 메모리 위치에 상기 기록 데이터를 기록하는 단계는 상기 판독 데이터가 액세스되는 상기 메모리 모듈의 다운스트림에 위치되는 메모리 모듈에 위치되는 메모리 위치에 상기 기록 데이터를 기록하는 단계를 포함하는, 데이터 기록 방법.
  36. 메모리 버스를 갖는 메모리 시스템에서 메모리 명령들을 실행하는 방법에 있어서,
    판독 명령을 상기 메모리 시스템에 발행하는 단계;
    상기 메모리 시스템 내의 메모리 위치에 기록 명령을 발행하고 상기 메모리 시스템의 상기 메모리 버스에 기록 데이터를 제공하는 단계;
    상기 메모리 시스템에 판독 데이터를 액세스하는 단계;
    상기 메모리 시스템에서, 상기 메모리 버스로부터 상기 기록 데이터를 분리하는 단계;
    상기 메모리 버스 상으로 상기 메모리 시스템으로부터 상기 판독 데이터를 수신하는 단계;
    상기 메모리 버스에 상기 기록 데이터를 재연결하는 단계; 및
    상기 메모리 위치에 상기 기록 명령을 재개하는 단계를 포함하는, 메모리 명령 실행 방법.
  37. 제 36 항에 있어서,
    상기 메모리 시스템에 상기 판독 명령을 발행하는 단계는 상기 메모리 시스템에 상기 기록 명령을 발행하는 단계보다 앞서는, 메모리 명령 실행 방법.
  38. 제 36 항에 있어서,
    상기 판독 데이터의 수신 동안 바이패스 버퍼에 상기 기록 데이터를 일시적으로 저장하는 단계를 더 포함하는, 메모리 명령 실행 방법.
  39. 제 36 항에 있어서,
    상기 기록 데이터를 상기 메모리 버스에 제공하는 단계는 상기 메모리 버스로부터 상기 기록 데이터를 분리하기 전에 상기 메모리 시스템의 적어도 하나의 메모리 모듈을 통해서 상기 기록 데이터를 제공하는 단계를 포함하는, 메모리 명령 실행 방법.
  40. 메모리 버스를 갖는 메모리 시스템에서 판독 및 기록 명령들을 실행하는 방법에 있어서,
    상기 메모리 시스템 내의 제 1 메모리 위치에 액세스하도록 판독 명령을 발행하는 단계;
    상기 판독 명령의 완료 전, 상기 메모리 시스템 내의 제 2 메모리 위치에 데이터를 기록하기 위하여 기록 명령을 스케줄링하는 단계;
    상기 제 1 메모리 위치로부터 판독 데이터를 검색하는 단계;
    상기 메모리 시스템의 상기 메모리 버스로 기록 데이터를 제공하는 단계;
    상기 메모리 시스템에서, 상기 메모리 버스 상에서 상기 판독 데이터를 바이패스하는 단계;
    상기 메모리 시스템으로부터 상기 메모리 버스 상으로 상기 판독 데이터를 수신하는 단계; 및
    상기 메모리 버스에 상기 기록 데이터를 제공하는 단계를 포함하는, 판독 및 기록 명령 실행 방법.
  41. 제 40 항에 있어서,
    상기 메모리 버스 상에서 상기 판독 데이터를 바이패스하는 단계는 상기 메모리 버스 상에서 데이터 충돌을 피하기 위하여 시간 기간 동안 상기 메모리 버스로부터 상기 기록 데이터를 분리하는 단계를 포함하는, 판독 및 기록 명령 실행 방법.
  42. 제 41 항에 있어서,
    상기 판독 데이터의 수신 동안 바이패스 버퍼에 상기 기록 데이터를 일시적으로 저장하는 단계를 더 포함하는, 판독 및 기록 명령 실행 방법.
  43. 제 41 항에 있어서,
    상기 메모리 버스에 상기 기록 데이터를 제공하는 단계는 상기 메모리 버스로부터 상기 기록 데이터를 분리하기 전에 상기 메모리 시스템의 적어도 하나의 메모리 모듈을 통해서 상기 기록 데이터를 제공하는 단계를 포함하는, 판독 및 기록 명령 실행 방법.
KR1020067018092A 2004-02-05 2005-01-25 허브-기반 메모리 서브-시스템에서 양방향 데이터 버스용데이터 바이패스 장치 및 방법 KR100855193B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/773,583 US7788451B2 (en) 2004-02-05 2004-02-05 Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US10/773,583 2004-02-05

Publications (2)

Publication Number Publication Date
KR20060132925A KR20060132925A (ko) 2006-12-22
KR100855193B1 true KR100855193B1 (ko) 2008-09-01

Family

ID=34826794

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067018092A KR100855193B1 (ko) 2004-02-05 2005-01-25 허브-기반 메모리 서브-시스템에서 양방향 데이터 버스용데이터 바이패스 장치 및 방법

Country Status (7)

Country Link
US (4) US7788451B2 (ko)
EP (2) EP1725936B1 (ko)
JP (1) JP4568290B2 (ko)
KR (1) KR100855193B1 (ko)
CN (1) CN100578466C (ko)
TW (1) TWI321727B (ko)
WO (1) WO2005076816A2 (ko)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US7363419B2 (en) 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7539812B2 (en) * 2005-06-30 2009-05-26 Intel Corporation System and method to increase DRAM parallelism
SG135073A1 (en) * 2006-02-27 2007-09-28 Trek 2000 Int Ltd Method and apparatus for cascade memory
DE102006051514B4 (de) * 2006-10-31 2010-01-21 Qimonda Ag Speichermodul und Verfahren zum Betreiben eines Speichermoduls
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
US8019919B2 (en) * 2007-09-05 2011-09-13 International Business Machines Corporation Method for enhancing the memory bandwidth available through a memory module
US20100269021A1 (en) * 2007-09-05 2010-10-21 Gower Kevin C Method for Performing Error Correction Operations in a Memory Hub Device of a Memory Module
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
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
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
US7925825B2 (en) 2008-01-24 2011-04-12 International Business Machines Corporation System to support a full asynchronous interface within a memory hub device
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
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
US8656082B2 (en) 2008-08-05 2014-02-18 Micron Technology, Inc. Flexible and expandable memory architectures
US8250328B2 (en) 2009-03-24 2012-08-21 Micron Technology, Inc. Apparatus and method for buffered write commands in a memory
US8803214B2 (en) 2010-06-28 2014-08-12 Micron Technology, Inc. Three dimensional memory and methods of forming the same
US8759895B2 (en) 2011-02-25 2014-06-24 Micron Technology, Inc. Semiconductor charge storage apparatus and methods
US8996822B2 (en) 2011-07-29 2015-03-31 Micron Technology, Inc. Multi-device memory serial architecture
CN103164366A (zh) * 2011-12-09 2013-06-19 鸿富锦精密工业(深圳)有限公司 具有通用输入输出扩展器的电子设备及信号侦测方法
US9190133B2 (en) * 2013-03-11 2015-11-17 Micron Technology, Inc. Apparatuses and methods for a memory die architecture including an interface memory
US9496052B2 (en) * 2014-12-11 2016-11-15 Freescale Semiconductor, Inc. System and method for handling memory repair data
US10339050B2 (en) 2016-09-23 2019-07-02 Arm Limited Apparatus including a memory controller for controlling direct data transfer between first and second memory modules using direct transfer commands
TWI640870B (zh) * 2017-03-17 2018-11-11 新唐科技股份有限公司 集線器
TWI680374B (zh) * 2017-10-20 2019-12-21 慧榮科技股份有限公司 儲存裝置以及其介面晶片
TWI658363B (zh) 2017-10-20 2019-05-01 慧榮科技股份有限公司 儲存裝置以及其介面晶片
TWI721565B (zh) * 2017-10-20 2021-03-11 慧榮科技股份有限公司 儲存裝置以及其介面晶片
JP2022185463A (ja) * 2021-06-02 2022-12-14 ルネサスエレクトロニクス株式会社 半導体装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6782435B2 (en) 2001-03-26 2004-08-24 Intel Corporation Device for spatially and temporally reordering for data between a processor, memory and peripherals
US20050105350A1 (en) 2003-11-13 2005-05-19 David Zimmerman Memory channel test fixture and method
US6901494B2 (en) 2000-12-27 2005-05-31 Intel Corporation Memory control translators

Family Cites Families (312)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US136683A (en) * 1873-03-11 Improvement in fastenings for railroad-rail joints
US149603A (en) * 1874-04-14 Improvement in the manufacture of composition pipe
US271746A (en) * 1883-02-06 Augustus sequeiea
US294862A (en) * 1884-03-11 Hydrocarbon-gas generator
US160206A (en) * 1875-02-23 Improvement in air-chambers for steam-pumps
US149809A (en) * 1874-04-14 Improvement in station-indicators
US294856A (en) * 1884-03-11 Inking-pad
US225847A (en) * 1880-03-23 John f
US22724A (en) * 1859-01-25 Bobing-machibte
US174070A (en) * 1876-02-29 Improvement in electric fire-alarms
US227798A (en) * 1880-05-18 Buckle
US112119A (en) * 1871-02-28 Improvement in self-centering chucks for lathes
US177695A (en) * 1876-05-23 Improvement in rotary knitting-machines
US236885A (en) * 1881-01-25 Mineral paint
US38611A (en) * 1863-05-19 Improved cut-off-valve gear
US47169A (en) * 1865-04-04 Improvement in bee-hives
US177320A (en) * 1876-05-16 Improvement in meal-chests
US16885A (en) * 1857-03-24 Improvement in operating ships windlasses
US86441A (en) * 1869-02-02 Improvement in bee-hives
US177677A (en) * 1876-05-23 Improvement in watch-keys
US126115A (en) * 1872-04-23 Improvement in vegetable-cutters
US163649A (en) * 1875-05-25 Improvement in bale-ties
US162882A (en) * 1875-05-04 Improvement in firemen s extension-ladders
US213611A (en) * 1879-03-25 Improvement in door-holders
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
US4253146A (en) 1978-12-21 1981-02-24 Burroughs Corporation Module for coupling computer-processors
US4253144A (en) 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4245306A (en) 1978-12-21 1981-01-13 Burroughs Corporation Selection of addressed processor in a multi-processor network
US4240143A (en) 1978-12-22 1980-12-16 Burroughs Corporation Hierarchical multi-processor network for memory sharing
JPH06104707B2 (ja) 1984-05-31 1994-12-21 三井東圧化学株式会社 塩化ビニル樹脂の製造方法
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 半導体メモリ回路装置
US5317752A (en) 1989-12-22 1994-05-31 Tandem Computers Incorporated Fault-tolerant computer system with auto-restart after power-fall
US5327553A (en) 1989-12-22 1994-07-05 Tandem Computers Incorporated Fault-tolerant computer system with /CONFIG filesystem
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 株式会社東芝 計算機システム立上げ方式
IL96808A (en) 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US5243703A (en) 1990-04-18 1993-09-07 Rambus, Inc. Apparatus for synchronously generating clock signals in a data processing system
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 株式会社東芝 半導体記憶装置
US5355391A (en) 1992-03-06 1994-10-11 Rambus, Inc. High speed bus system
JP3517237B2 (ja) 1992-03-06 2004-04-12 ラムバス・インコーポレーテッド 同期バス・システムおよびそのためのメモリ装置
JPH07505491A (ja) 1992-03-25 1995-06-15 サン マイクロシステムズ インコーポレイテッド 光ファイバメモリ接続システム
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 データ記憶装置及びデータ記憶方法
GB2270780A (en) 1992-09-21 1994-03-23 Ibm Scatter-gather in data processing systems.
JPH06104707A (ja) 1992-09-24 1994-04-15 Canon Inc 遅延装置
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
US5801973A (en) 1994-07-29 1998-09-01 Discovision Associates Video decompression
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
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
US5946712A (en) 1997-06-04 1999-08-31 Oak Technology, Inc. Apparatus and method for reading data from synchronous memory
KR100202385B1 (ko) 1997-06-04 1999-06-15 윤종용 Hdlc를 이용한 반이중 통신용 송신 장치
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
US6243769B1 (en) 1997-07-18 2001-06-05 Micron Technology, Inc. Dynamic buffer allocation for a computer system
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
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
WO1999019806A1 (en) 1997-10-10 1999-04-22 Rambus Incorporated Method and apparatus for fail-safe resynchronization with minimum latency
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
US6301637B1 (en) 1998-06-08 2001-10-09 Storage Technology Corporation High performance data paths
US6134624A (en) 1998-06-08 2000-10-17 Storage Technology Corporation High bandwidth cache system
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
US6912637B1 (en) 1998-07-08 2005-06-28 Broadcom Corporation Apparatus and method for managing memory in a network switch
US6286083B1 (en) 1998-07-08 2001-09-04 Compaq Computer Corporation Computer system with adaptive memory arbitration scheme
US6862622B2 (en) 1998-07-10 2005-03-01 Van Drebbel Mariner Llc Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture
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
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
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
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
US6598154B1 (en) 1998-12-29 2003-07-22 Intel Corporation Precoding branch instructions to reduce branch-penalty in pipelined processors
US6061263A (en) 1998-12-29 2000-05-09 Intel Corporation Small outline rambus in-line memory module
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
US6249937B1 (en) * 1999-04-14 2001-06-26 Capewell Components Company Limited Partnership Parachute canopy release
US6381190B1 (en) 1999-05-13 2002-04-30 Nec Corporation Semiconductor memory device in which use of cache can be selected
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
JP3376315B2 (ja) 1999-05-18 2003-02-10 日本電気株式会社 ビット同期回路
US6294937B1 (en) 1999-05-25 2001-09-25 Lsi Logic Corporation Method and apparatus for self correcting parallel I/O circuitry
US6449308B1 (en) 1999-05-25 2002-09-10 Intel Corporation High-speed digital distribution system
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
US6539490B1 (en) 1999-08-30 2003-03-25 Micron Technology, Inc. Clock distribution without clock delay or skew
US6552564B1 (en) 1999-08-30 2003-04-22 Micron Technology, Inc. Technique to reduce reflections and ringing on CMOS interconnections
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
US6799268B1 (en) 2000-06-30 2004-09-28 Intel Corporation Branch ordering buffer
JP2002014875A (ja) 2000-06-30 2002-01-18 Mitsubishi Electric Corp 半導体集積回路、半導体集積回路のメモリリペア方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
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
US6453393B1 (en) 2000-09-18 2002-09-17 Intel Corporation Method and apparatus for interfacing to a computer memory
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
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
US6859208B1 (en) 2000-09-29 2005-02-22 Intel Corporation Shared translation address caching
US6523093B1 (en) * 2000-09-29 2003-02-18 Intel Corporation Prefetch buffer allocation and filtering system
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
US6792059B2 (en) 2000-11-30 2004-09-14 Trw Inc. Early/on-time/late gate bit synchronizer
US6631440B2 (en) 2000-11-30 2003-10-07 Hewlett-Packard Development Company Method and apparatus for scheduling memory calibrations based on transactions
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
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
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
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
US6727609B2 (en) * 2001-08-08 2004-04-27 Hamilton Sundstrand Corporation Cooling of a rotor for a rotary electric machine
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
CN100517215C (zh) 2001-08-29 2009-07-22 联发科技股份有限公司 用于无线系统中定时及事件处理的方法和装置
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
US6523483B1 (en) * 2002-01-16 2003-02-25 Holland Company Cement hopper car hatch anti-accumulator
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
US6912612B2 (en) 2002-02-25 2005-06-28 Intel Corporation Shared bypass bus structure
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
US6731548B2 (en) 2002-06-07 2004-05-04 Micron Technology, Inc. Reduced power registered memory module and method
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
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
DE10234934A1 (de) 2002-07-31 2004-03-18 Advanced Micro Devices, Inc., Sunnyvale Antwortreihenwiederherstellungsmechanismus
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
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7102907B2 (en) 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US6667926B1 (en) 2002-09-09 2003-12-23 Silicon Integrated Systems Corporation Memory read/write arbitration 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
US6727600B1 (en) * 2002-11-18 2004-04-27 Ilich Abdurachmanov Small underwater generator with self-adjusting axial gap
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
GB2416056B (en) 2003-05-13 2006-08-23 Advanced Micro Devices Inc A system including a host connected to a plurality of memory modules 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
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
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
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
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
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
US6901494B2 (en) 2000-12-27 2005-05-31 Intel Corporation Memory control translators
US6782435B2 (en) 2001-03-26 2004-08-24 Intel Corporation Device for spatially and temporally reordering for data between a processor, memory and peripherals
US20050105350A1 (en) 2003-11-13 2005-05-19 David Zimmerman Memory channel test fixture and method

Also Published As

Publication number Publication date
EP2565794B1 (en) 2014-07-16
WO2005076816A3 (en) 2007-03-15
US9164937B2 (en) 2015-10-20
US8291173B2 (en) 2012-10-16
US8694735B2 (en) 2014-04-08
WO2005076816A2 (en) 2005-08-25
CN100578466C (zh) 2010-01-06
EP1725936A4 (en) 2009-12-02
EP1725936B1 (en) 2014-12-31
US20140207993A1 (en) 2014-07-24
CN101084489A (zh) 2007-12-05
US7788451B2 (en) 2010-08-31
EP2565794A2 (en) 2013-03-06
US20100287323A1 (en) 2010-11-11
KR20060132925A (ko) 2006-12-22
TW200606636A (en) 2006-02-16
EP2565794A3 (en) 2013-03-13
JP2007520826A (ja) 2007-07-26
US20050177695A1 (en) 2005-08-11
EP1725936A2 (en) 2006-11-29
JP4568290B2 (ja) 2010-10-27
US20130007384A1 (en) 2013-01-03
TWI321727B (en) 2010-03-11

Similar Documents

Publication Publication Date Title
KR100855193B1 (ko) 허브-기반 메모리 서브-시스템에서 양방향 데이터 버스용데이터 바이패스 장치 및 방법
US7966430B2 (en) Apparatus and method for direct memory access in a hub-based memory system
US7434081B2 (en) System and method for read synchronization of memory modules
EP1665058B1 (en) Memory module and method having on-board data search capabilites and processor-based system using such memory modules
KR100873829B1 (ko) 단방향 데이터 버스를 가진 메모리 시스템 및 방법
US20050210185A1 (en) System and method for organizing data transfers with memory hub memory modules

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

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130801

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140808

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150730

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160727

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170804

Year of fee payment: 10