KR101245096B1 - 상호연결 시스템에서의 스큐 관리 - Google Patents

상호연결 시스템에서의 스큐 관리 Download PDF

Info

Publication number
KR101245096B1
KR101245096B1 KR1020097008236A KR20097008236A KR101245096B1 KR 101245096 B1 KR101245096 B1 KR 101245096B1 KR 1020097008236 A KR1020097008236 A KR 1020097008236A KR 20097008236 A KR20097008236 A KR 20097008236A KR 101245096 B1 KR101245096 B1 KR 101245096B1
Authority
KR
South Korea
Prior art keywords
line
data
time delay
data bits
lines
Prior art date
Application number
KR1020097008236A
Other languages
English (en)
Other versions
KR20090073195A (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 KR20090073195A publication Critical patent/KR20090073195A/ko
Application granted granted Critical
Publication of KR101245096B1 publication Critical patent/KR101245096B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17764Structural details of configuration resources for reliability

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Information Transfer Systems (AREA)
  • Dc Digital Transmission (AREA)

Abstract

본 발명은 데이터 레인들이 전송경로를 따른 간격들에서 라인들간에 교환될 수 있어 수신위치에서 판단할 때 복수의 라인들상에 비트들간의 차동 시간지연이 줄어들수 있는 상호연결 시스템을 기술하고 있다. 데이터 레인들은 구성가능한 스위치의 동작을 통해 또는 기설정된 제조된 연결부들과 연계한 구성가능 스위치에 의해, 또는 기술들의 조합에 의해 라인들에 속박될 수 있다. 메모리 소자를 포함할 수 있는 연결노드 모듈의 와이어링은 노드의 출력에서 측정되는 노드의 입력라인들의 쌍들간에 차동 시간지연이 줄어들게 구성될 수 있다.
상호연결 시스템, 데이터 스큐, 듀얼 인-라인 메모리 모듈(DIMM)

Description

상호연결 시스템에서의 스큐 관리{Skew Management In An Interconnection System}
본 출원은 2006년 10월 23일자로 "상호연결 시스템에서의 스큐 관리"라는 발명의 명칭의 미국 가특허출원 제60/853,852호의 우선권을 주장하며, 상기 출원은 본 명세서에 참조로 합체되어 있다.
일반적으로, 컴퓨터 및 통신 제품의 진화는 시간에 따라 구성요소의 밀도가 높아지고 이러한 구성요소의 비용이 감소되는 "무어의 법칙(Moore's Law)"과 같은 원리에 의해 지배되어왔다. 이는 또한 종종 전송 및 계산속도에 있어 증가가 동반되어왔다. 이들 경향은 종종 전력 소비밀도를 늘렸고 열을 소산사키거나 고온 환경에서 동작하기 위한 새로운 방안을 필요로 해왔다. 고속회로에서, 신호전파 지연 및 설계와 제조 허용오차 모두가 실제로 얻은 구현가능한 속도에 한계를 지을 수 있다.
현재 메모리 시스템 구조는 비용, 성능 및 예컨대 시스템의 총 메모리 용량의 업그레이드 능력 간에 상쇄를 나타낼 수 있다. 메모리 용량은 통상적으로 커넥터/소켓 인터페이스가 있는 메모리 모듈 또는 카드를 통해 업그레이드된다. 종종 이들 메모리 모듈은 시스템 자원을 효율적으로 이용하기 위한 백플랜(backplane)상에 배치된 버스 또는 상호연결 와이어링(interconnecting wiring)에 연결되어 있다. 업그레이드 능력 이외에, 이들 대부분의 현재 메모리 시스템은 또한 그래픽과 같은 대역폭 위주의 애플리케이션에 대한 고효율을 필요로 한다.
메모리 모듈의 한가지 인기있는 타입은 듀얼 인-라인 메모리 모듈(Dual In-line Memory Module, DIMM)이다. DIMM은 하나의 긴 가장자리를 따라 양측에 배열된 전기 접촉점들이 있는 직사각형의 로우-프로파일(low-profile) 회로기판이다. 접촉점들은 DIMM이 DIMM 메모리 소켓에 삽입될 때 메인보드 메모리 버스에 전기연결을 형성한다.
계산 및 통신 시스템에 사용된 메모리는 모든 타입의 RAM(예컨대, S-RAM, D-RAM); 피롬(Programmable Read Only Memory, PROM), 이피롬(electronically alterable read only memory, EPROM); 플래시 메모리, 엠램(Magnetoresistive Random Access Memory, MRAM), 에프램(Ferroelectric RAM, FRAM 또는 FeRAM), 및 엔램(Nanotube-based/ Nonvolatile RAM) 및 피램(Phase-change memory, PRAM) 및 자기디스크 저장매체를 포함한 모든 타입의 자기 메모리을 포함하나 이에 국한되지 않는다. 미래에 사용하기에 적합할 수 있는 다른 메모리들로는 양자장치 등을 포함한다.
현재, 메모리 시스템의 크기와 성능은 소비전력, 상기 소비전력 및 소자밀도와 관계된 냉각능력, 예컨대 데이터 스큐(data skew)로 인한 응답시간, 메모리 소자를 연결시키는데 필요한 회로기판의 복잡도, 및 이들 고려사항들의 경제적 비용에 의해 제한받을 수 있다.
본 출원은 2006년 4월17일자로 동일 출원인명의 "Interconnection System"이라는 발명의 제목으로 출원된 미국특허출원 제11/405,083호에 관한 것으로, 상기 출원은 본 명세서에 전체가 참조로 합체되어 있다.
복수의 신호라인들이 있고, 각 라인은 데이터 비트를 포함한 신호를 송수신할 수 있는 버스를 구비한 상호연결 시스템이 개시되어 있다. 제 1 라인상의 데이터 비트와 제 2 라인상의 데이터 비트는 신호라인들 간에 버스를 따라 간격(inteval)이 교환된다. 한 태양으로, 데이터는 3이상의 신호라인들에 전달되고 제 1 시간지연을 갖는 데이터 비트가 제 2 시간지연을 갖는 데이터 비트와 교환되도록 상기 데이터 비트들이 교환된다. 또 다른 태양으로, 교환 패턴 중 제 1 교환 패턴은 각각의 연속한 교환을 위해 사용된다.
복수의 노드들을 포함하는 상호연결 시스템이 개시되어 있고, 상기 노드들은 복수의 라인들이 있는 링크들에 의해 연결된 네트워크를 형성하고, 마더보드에는 복수의 노드들 중 한 노드와 인터페이스하기 위한 커넥터가 있다. 제 1 노드는 데이터 소스이고, 제 2 노드는 데이터의 목적지이며, 제 1 노드 또는 제 2 노드 중 적어도 하나는 라이들 간에 데이터의 할당을 변경하도록 구성될 수 있다. 한 태양으로, 데이터는 3이상의 신호라인들상에 전달되고, 누적 시간지연이 큰 라인상의 데이터 비트가 누적 시간지연이 작은 라인상의 데이터 비트와 교환되도록 데이터의 데이터 비트들이 교환된다.
상호연결 시스템의 노드는 스위치와, 입력포트와 출력포트를 포함하고, 각 포트는 제 1, 제 2, 제 3 및 제 4 라인들이 있다. 입력포트의 제 1 라인은 출력포트의 제 2 라인에 연결되고, 입력포트의 제 3 라인은 출력포트의 제 1, 제 3, 또는 제 4 라인에 연결된다. 일태양으로, 입력포트의 제 2 라인은 출력포트의 제 1 라인에 연결되고, 입력포트의 제 3 라인은 출력포트의 제 3 또는 제 4 라인에 연결될 수 있다.
모듈은 다중 연결가능한 소자들이 있는 커넥터와 상기 커넥터의 연결가능한 소자들과 소통하는 입력연결부들 및 출력연결부들이 있는 전기회로모듈을 갖는 연결회로카드를 포함한다. 한 입력연결부와 한 출력연결부는 입력 연결가능한 소자들과 출력 연결가능한 소자들의 쌍들 간에 전송지연에서의 차가 줄어들도록 배치된다.
상호연결시 데이터 스큐 보상방법은 복수의 라인들이 있는 신호버스를 제공하는 것과, 상기 신호 버스에 복수의 노드들을 연결하는 것과, 상기 버스상의 인접한 연결노드들간에 신호전송을 위해 차동 시간지연을 결정하는 것과, 목적지 모드에서 측정시 상기 버스의 라인들 중 적어도 한 쌍들 간에 데이터에 대한 시간지연차를 변경하도록 라인들간에 데이터 레인(data lane)을 상호변경하는 것을 포함한다.
상호연결 시스템에서 데이터 스큐 보상방법은 적어도 하나의 스위치를 구비하고 상기 스위치가 적어도 하나의 제 1 입력라인이 다른 제 1 출력라인에 연결되도록 구성하는 신호버스에 연결할 수 있는 노드를 제공하는 것을 포함한다. 일태양으로, 적어도 하나의 경로는 제 1 입력라인과 다른 제 1 출력라인 간에 고정연결로서 제공된다.
기계판독가능한 매체상에 저장된 소프트웨어 프로그램 제품으로는 버스상에 연결된 노드들간에 신호전송을 위해 차동시간지연을 결정하고, 상기 버스의 라인들간에 데이터 레인들의 할당을 구성하여 연이은 노드에서 측정될 때 한 쌍의 버스 라인들간에 데이터에 대한 시간지연차를 변경하는 전자장치를 구성하는 명령어를 포함한다.
도 1은 트레이스 길이를 도시한 듀얼 인-라인 메모리 모듈(DIMM)의 치수와 유사한 치수를 갖는 연결 모듈의 전후면의 입단면도이다.
도 2a는 다른 라인 길이로 인해 스큐를 줄이는 수단을 되한 것이고, 도 2b는 스큐를 줄이는 대체 방법을 도시한 것이다.
도 3은 버스에 연결된 노드들의 선형배열을 도시한 것으로, 라인들에 레인의 결합으로 인해 입력 라인상의 데이터가 해당 출력 라인상의 데이터와 같아진다.
도 4는 라인들에 레인의 결합을 도시한 버스에 연결되고, 목적지 노드에서 측정시 스큐를 줄이도록 구성된 노드들의 선형배열을 도시한 것이다.
도 5a는 도 4를 반복한 것이며, 도 5b 및 도 5c는 데이터 레인들이 소스 노드 또는 목적지 노드중 어느 하나에서 라인에 결합될 수 있어, 데이터 경로상의 동일한 차동 스큐를 달성하는 것을 도시한 것이다.
도 6은 입력 라인과 출력 라인 사이에 대칭적으로 데이터를 스와핑하기 위한 고정 네트워크와, 2:1 멀티플렉서에 의해 선택될 수 있는 부분적 스위치가능 네트 워크를 갖는 스위치 구성을 도시한 것이다.
도 7은 도 6의 고정 네트워크가 각각의 노드에서 사용되는 노드들의 선형배열을 도시한 것이다.
도 8은 도 7의 패턴과는 다른 스와핑 패턴을 갖는 노드들의 선형배열을 도시한 것이다.
도 9는 도 7 및 도 8의 패턴과는 다른 스와핑 패턴을 갖는 노드들의 선형 배열을 도시한 것이다.
도 10a 및 도 10b는 DIMM의 폼 팩터와 유사한 폼 팩터를 갖는 연결회로보드를 도시한 것으로, 입력 및 출력 라인들이 물리적으로 다른 라인 길이로 인해 다른 스큐를 줄이도록 배열되어 있다.
도 11a 및 도 11b는 출력 라인의 또 다른 배열을 도시한 것이다.
도 12a, 도 12b, 및 도 12c는 볼 그리드 어레이(ball grid aray, BGA)가 회로 인터페이스로 사용된 출력 라인의 또 다른 배열을 도시한 것이다.
도 13a 및 도 13b는 한 노드에 2 포트 이상이 있는 입력라인과 출력라인의 예를 도시한 것이다.
도 14a 및 도 14b는 마더보드상에 트레이스 길이가 다른 것을 이용해 차동 스큐가 줄어들 수 있는 것을 도시한 것이다.
도 15는 고정된 상호교환들과 완전히 구성가능한 상호교환들의 조합이 수행될 수 있는 스위치의 예를 도시한 것이다.
도 16은 한 노드에 2포트 이상이 있는 구성가능한 스위치의 예를 도시한 것 이다.
도 17은 몇몇 교환들이 한 포트의 I/O 패드 내에 또는 부근에 수행될 수 있고, 몇몇 교환들은 I/O 패드로의 스위치 구역에 수행될 수 있으며, 다른 교환들은 하나 이상의 전체 스위치(미도시)를 통해 수행될 수 있는 구성가능한 스위치를 도시한 것이다.
예시적인 실시예들은 도면을 참조로 더 잘 이해될 수 있으나, 이들 실시예들은 제한적인 성질이 되지 않아야 한다. 동일하거나 다른 도면에서의 동일한 번호의 요소들은 동일한 기능을 수행한다. 요소들은 숫자 또는 두문자로 또는 둘 다 표시될 수 있으며, 표시의 선택은 단지 명확하기 위한 것이어서, 숫자로 표시된 요소와 두문자 또는 알파벳 표시자로 지시된 동일한 요소는 기본적으로 구별되지 않아야 한다.
기술된 방법과 도면에 도시된 장치는 기계실행가능한 명령어와 전자 구성부품들, 예컨대, 소프트웨어, 하드웨어, 또는 이들의 조합으로 구성되거나 구현될 수 있는 것이 명백해 진다. 명령어는 상술한 동작을 수행하기 위한 명령어들로 프로그램된 범용 컴퓨터, DSP 또는 어레이 프로세서와 같은 특수용 프로세서 등을 작동시키는데 사용될 수 있다. 대안으로, 운영은 상술한 동작을 수행하기 위한 하드웨어 로직 또는 펌웨어 명령어를 포함하거나 그렇게 구성될 수 있는 특수 하드웨어 구성부품들로 또는 프로그램된 컴퓨터 구성부품들과 아날로그 회로를 포함할 수 있는 고객 하드웨어 구성부품들의 임의의 조합에 의해 수행될 수 있다.
상기 방법들은 적어도 부분적으로 상기 방법을 수행하기 위해 컴퓨터를 프로그램하는데 사용될 수 있는 명령어들에 저장된 기계판독가능 매체 (또는 현장 프로그램 가능 게이트 어레이(Field-Programmable Gate Array, FPGA 등과 같은 다른 전자장치)를 포함할 수 있는 컴퓨터 프로그램 제품으로서 제공될 수 있다. 이러한 사양을 위해, "기계판독가능 매체"라는 용어는 컴퓨팅 장치 또는 특수용 하드웨어에 의한 실행을 위해 일련의 명령어들 또는 데이터를 저장하고 부호화할 수 있고 기계 또는 특수용 하드웨어가 본 발명의 방법 또는 기능 중 어느 하나를 수행하도록 하는 임의의 매체를 포함하도록 되어야 한다. 따라서 "기계판독가능 매체"라는 용어는 고체상태 메모리, 광 및 자기 디스크, 자기 메모리, 광메모리, 및 반송파 신호를 포함하도록 되어야 하나 이에 국한되지 않아야 한다. 소프트웨어는 한 매체에 저장 또는 분포될 수 있고 사용을 위해 또 다른 매체에 전달 또는 재저장될 수 있다.
예컨대, 제한하는 것이 아니라, 기계판독 매체는 롬(ROM); 모든 타입의 램(RAM)(예컨대, S-RAM, D-RAM); 피롬(Programmable Read Only Memory, PROM), 이피롬(electronically alterable read only memory, EPROM); 엠램(Magnetoresistive Random Access Memory, MRAM); 자기디스크 저장매체; 플래시 메모리; 전기, 광, 음파 또는 다른 형태의 전파신호(예컨대, 반송파, 적외선 또는 디지털 신호)를 포함할 수 있다.
더욱이, 동작을 취하거나 결과를 유발하는 것으로서 일형태 또는 또 다른 형태(예컨대, 프로그램, 절차, 프로세스, 애플리케이션, 모듈, 알고리즘 또는 로직) 의 소프트웨어를 말하는 것이 해당기술분야에 통상적이다. 이러한 표현들은 단지 컴퓨터 또는 FPGA와 같은 등가장치에 의한 소프트웨어의 실행으로 상기 컴퓨터 또는 등가장치의 프로세서가 당업자에게 잘 알려진 동작을 수행하거나 결과를 산출하도록 하는 편의적인 것이다.
특별한 예를 기술하는 경우, 상기 예는 특수한 특징, 구조 또는 특성을 포함할 수 있으나, 모든 예들이 특수한 상기 특징, 구조 또는 특징을 반드시 포함할 필요는 없다. 이는 이러한 조합이 명백히 배제되는 경우를 제외하고 2 이상의 예들의 특징, 구조 또는 특성들이 조합되지 않아야 하거나 조합될 수 없는 암시 또는 제안으로서 간주되지 않아야 한다. 특수한 특징, 구조 또는 특성이 예와 연계하여 기술된 경우, 이러한 특징, 구조 또는 특성은 명백히 기술되거나 기술되지 않든지 간에 다른 예와 연계하여 사용될 수 있다.
메모리 모듈 커넥터 인터페이스와 같이 본 명세서에 기술된 커넥터 또는 커넥터 인터페이스는 볼록 커넥터 또는 인터페이스가 오목 커넥터 또는 인터페이스와 맞물리는 물리적으로 분리가능한 인터페이스에 국한되지 않는다. 커넥터 인터페이스는 또한 메모리 모듈, 스위치 등으로부터 리드, 솔더 볼 또는 연결들이 회로보드에 접합되는 인터페이스와 같은 임의의 타입의 물리적 인터페이스 또는 연결부를 포함한다. 예컨대, 적층 다이 접근으로, 많은 집적회로 다이(예컨대, 메모리 소자 및 버퍼 소자)가 예컨대 볼 그리드 어레이 타입의 커넥터 인터페이스를 통해 메모리 컨트롤러 또는 프로세서에 베이스와 인터페이스를 형성하는 기판과 함께 서로의 상단에 적층될 수 있다. 또 다른 예로 메모리, 스위치 또는 버퍼 소자가 유연한 타 입의 상호연결부를 통해 볼 그리드 어레이 타입의 커넥터 인터페이스 또는 물리적으로 분리가능한 소켓 타입의 커넥터 인터페이스 중 하나를 통한 메모리 컨트롤러에 인터페이스될 수 있다. 연결 타입은 집적회로 칩, 기판상에, 기판들 간에, 또는인쇄회로기판상에 등등 상호연결 도체간의 인터페이스를 포함할 수 있다.
노드는 메모리를 포함할 수 있고 또한 메모리용 컨트롤러, 구성가능한 스위칭 소자(CSE), 및 신호 처리 또는 송수신을 위한 기타 회로를 가질 수 있다. 그러나, 모듈은 메모리를 포함할 수 있고, 다른 소자들 중 하나 이상이 개별적으로 장착될 수 있다. 대안으로, 모듈은 CSE를 포함할 수 있고, 다른 소자들 중 하나 이상이 개별적으로 장착될 수 있다. 구체적으로 본 명세서에 기술된 것을 제외하고, 당업자는 실제 물리적 태양 및 계산 태양이 여러가지 등가의 방식으로 배열될 수 있음을 인식하는 바와 같이, 특정 모듈에 대한 기능의 할당은 논의의 편의를 위해 의도된 것이다.
"버스" 또는 "링크"는 신호라인 또는 복수의 신호라인을 의미하며, 각 라인은 "송수신"(즉, 송신, 수신 또는 둘 다)을 위한 하나 이상의 연결점을 갖고 있다. 각 연결점은 트랜시버(즉, 송수신기) 또는 신호 송신기 또는 수신기 회로 중 하나와 결합되거나 통신하도록 연결될 수 있다. 연결 또는 결합은 양자 얽힘(quantum entanglement) 또는 등가물에 의해 전기적, 광학적, 자기적으로 제공된다. 동일하거나 유사한 수단에 의한 다른 전기연결은 전원, 접지, 보조신호 및 제어 등과 같은 추가 시스템 요건의 만족을 제공하는데 사용된다. 이러한 추가 연결은 설명을 명확히 하기 위해 가끔 기술되나, 이러한 추가 연결은 당업자에 잘 알려져 있으며, 어떤 예에서 이들 연결에 대한 설명의 결여는 포함을 제외하는 것으로 여겨지지 않아야 한다.
링크는 신호 라인상에 신호를 전달한다. 신호들은 일반적으로 클록신호 및 제어신호, 어드레스 신호, 명령 신호, 및 데이터 신호를 포함한 다수의 카테고리 중 어느 하나에 해당한다. 데이터 신호는 메모리 소자 또는 인터페이스에 저장될 수 있거나 검색될 수 있는 데이터를 전달한다. 어드레스 신호는 데이터가 읽어지거나 쓰여지는 메모리 소자 또는 시스템내에 위치들 또는 위치들의 범위를 특정하고, 하나 또는 복수의 메모리 소자 또는 인터페이스 중 어느 하나가 어드레스되는 것을 또한 선택할 수 있다. 명령 신호는 어떤 타입의 동작이 수행되는 것에 관한 메모리 소자 또는 인터페이스를 지시한다. 예컨대, 읽기, 쓰기, 새로고침, 또는 (버스트 또는 브로드캐스트 모드와 같은) 접속모드가 데이터 전달을 위해 사용되어야 한다. 클록 및 제어신호가 컨트롤러와 메모리 소자들 간에 전달되는 다른 신호들을 동기시킨다. 링크가 각 신호(예컨대, 한 클록 싸이클에서 32 비트 와이드(bit-wide)의 어드레스를 전달하기 위한 32개 어드레스 라인들과 한 클록 싸이클에서 32 비트 와이드(bit-wide)의 데이터 워드를 전달하기 위한 32개 어드레스 라인들)에 대한 별도의 신호를 사용하나, 다양한 방식들이 또한 메모리 트랜잭션(memory transaction)의 다른 클록 싸이클동안 명령신호, 제어신호, 어드레스 신호 또는 데이터 신호에 대한 하나 이상의 신호라인들을 재사용하도록 있게 된다.
라인들이 인터페이스 또는 포트에 연결되는 것으로 논의될 때, 활동 중, 전원 켜짐 또는 전원 꺼짐, 대기모드 등인 것으로 라인들을 기술하는 것이 편한 것임을 알아야 한다. 이는 한 노드에 있는 포트와 인터페이스에서의 연결 상태를 의미하는 것으로 해석되는 것을 뜻하며, 다른 노드 기능들을 포함할 수 있다. 라인들 자체는 단지 회로보드 등 노드들 간에 연결을 제공하도록 하는 금속 트레이스일 수 있다.
본 명세서에서 논리적으로 할당된 데이터를 가질 수 있는 물리적 라인을 의미하는 "라인(line)"이라는 용어의 사용은 미국출원번호 No. 11/405,083에서 이전 사용과는 약간 다른 것으로, 상기 문헌에서 라인과 레인(lane)이라는 용어는 종종 상호교환가능하게 사용되었다. 레인이라는 용어가 현재 라인이라고 하는 물리적 대상으로 해석되는지 아니면 데이터 워드 또는 데이터 비트와 결합된 논리 구성인 것으로 해석되는지는 명세서의 문맥적 사용으로부터 이해될 수 있을 것이다. 본 명세서에서, 소급되는 것이 아니라 장래의 사용을 위해, 레인이라는 용어는 데이터와 관련된 논리개념을 의미한다. 데이터의 레인은 능동 및 수동 구성부품들일 수 있는 노드들 또는 다른 전자 구성부품들간의 신호로서 데이터가 이동하는 물리적 라인에 대한 것일 수 있다. 이와 같이, 레인은 한 레인의 데이터가 한 라인상의 신호로서 전송될 때 라인에 결합되는 것으로 말해질 수 있다. 라인에 대한 레인의 결합은 상기 레인이 또 다른 라인에 재할당될 수 있도록 변경될 수 있다. 마찬가지로, 버스 또는 링크라는 용어는 채널이라 할 수 있고, 상기 용어가 논리 레인들의 집합을 의미하는지 또는 라인들의 집합을 의미하는지는 문맥으로부터 명백해질 것이다.
현재 사용되고 있는 레인과 라인이라는 용어는 도 3을 참조로 이해될 수 있다. 실제로 전자적이며 숫자 0부터 4까지 매겨져 있는 신호들을 전달하는 5개 라인들이 있다. 라벨 A에서 E까지의 해당하는 논리 데이터 할당의 세트가 있다. 도 3의 예에서, 물리적 라인들에 논리 데이터 세트의 결합은 각 노드들에서 같은 채로 있다. 그러나, 도 4는 논리 데이터를 물리적 라인에 결합시키는 것이 하나 이상의 노드에서 변경되는 예를 도시한 것이다.
"너비 우선(breadth first tree)" 관례는 종종 트리에서 노드를 넘버링하는데 사용된다; 즉, 트리의 루트에서 시작하여 다음 레벨로 이동하기 전에 주어진 레벨에서 모든 요소들에 걸쳐 작동된다. 이 넘버링은 단지 편의상일 뿐이다. 실행을 위해, 2 이상의 넘버링 방식들을 동시에 포함하는 다른 많은 넘버링 방식들이 사용될 수 있다. 신호용도로, 관례적인 "포트 0", "포트 1", 또는 "포트 A" 또는 "포트 B"는 절대적인 포트라기 보다는 상대적인 것임을 의미한다. 대표적으로, "사우스바운드(southbound)", "다운스트림" 또는 "2차"는 모듈 컨트롤러 또는 루트로부터 멀리 향하는 방향을 의미하는 반면, "노스바운드(northbound)", "업스트림", 또는 "1차"는 모듈 컨트롤러 또는 루트로 향하는 방향을 의미한다. 하나 이상의 루트 또는 모듈 컨트롤러가 있을 수 있고 이들 각각이 동시에 작동될 수 있다.
추가 고려사항은 각 데이터 워드에, 패킷 또는 프레임에서 데이터 비트의 시분산(time dispersal)이다. 많은 링크에서, 데이터의 비트들이 라인상에 병렬로 전송될 수 있다. 이는 데이터가 예로서 직렬로 각 라인상에 전송된 데이터 워드 중 한 비트 이상으로 병렬 라인들에 걸쳐 전송될 수 있기 때문에 실제 상황의 간략화일 수 있음이 이해되어야 한다. 다른 요인들 중에서 라인 길이, 임피던스, 전자 대역폭 등과 관련된 라인상에 신호들의 차동지연으로 인해, 데이터 비트를 나타내는 신호들이 즉각적인 처리를 위해 충분한 동시성(simultaneity)으로 도달될 수 없고, 모든 비트들이 디코딩 또는 다른 데이터 처리로 진행하도록 한 모듈 또는 노드에 의해 수신될 때까지 하나 이상의 클록 싸이클 또는 데이터 프레임을 기다리거나 데이터를 버퍼시키는 것이 필요할 수 있다. 이 지연은 또한 어드레스 또는 다른 정보가 작동될 수 있기 전에 각 노드에서 필요한 시간을 늘린다. 이러한 상황에서, 데이터 전송(전송이 일반적으로 수신을 포함하는 것으로 이해됨)을 위해 필요할 때에만 링크들의 라인들이 온되는 것이 바람직한 경우, 어드레스 정보는 관련된 명령 또는 데이터에 앞서는 시간 주기에 보내져야 할 수 있다. 이는 시스템 전송능력 또는 대역폭을 줄이는 영향을 끼칠 수 있다.
링크내 각 라인들의 유효한 물리적 길이들은 일반적으로 다를 수 있고, 다른 전송 라인들상에 전송된 비트들의 도착시간에 시간차가 있을 수 있다. 이를 데이터 "스큐(skew)"라 한다. 데이터 스큐를 수용하는 한 방법은 각 호프에 디스큐(de-skew)를 실행하여 데이터 패킷의 헤더가 해석될 수 있고 상기 패킷이 다음 호프상에 전송될 수 있게 하는 것이다. 그러나, 이는 재전송에 상당한 대기시간을 추가할 수 있는데, 이는 디스큐 프로세스가 적어도 각 노드간의 라인들 사이에 최장 차동지연만큼의 많은 시간을 필요로 할 수 있기 때문이다. 다른 접근은 각 노드에서 디스큐를 실행함으로써가 아니라 스큐가 경로를 따라 증진되게 하는 한편 어드레스 모듈 또는 노드의 수신기에 상기 디스큐를 실행하도록 함으로써 이러한 추가 지연을 방지하려는 시도이다. 그러나, 누적 지연은 또한 데이터 패킷의 일부가 더 일찍 도착할 수 있더라도, 소스(예컨대, 메모리 컨트롤러)로부터 목적지 노드로 누적된 차동지연이 누적되어야 할 필요가 있기 때문에 상당한 총 지연을 추가할 수 있다.
INTEL사가 개발한 FB-DIMM 기술에서, 장치들은 호프당 6개 UI까지의 스큐를 수정할 수 있도록 요구되는 것으로 생각된다. 신호 전이(transition) 사이의 평균 시간 간격인 "UI" 또는 "단위간격(Unit Interval)"이라는 용어는 클록주기가 완전히 안정적이거나 지터가 없을 수 없기 때문에 클록주기 대신 높은 클록속도로 사용될 수 있다. 호프당 6개의 스큐 UI가 예상되고 메모리 시스템이 8호프라면, 총 스큐는 48UI이다.
4Gbps의 데이터 속도로 공칭 2GHz의 클록속도로 운영되는 링크의 경우, 1UI=250피코세컨드(ps)이어서 48UI의 지연 스큐는 12나노세컨드(ns)의 스큐와 같다. 즉, 한 라인상에 첫번째 도착한 비트와 다른 라인들 중 하나에 마지막 도착한 비트들 간에 12n가 요구되는 것으로 추정된다. 첫번째 도착한 비트는 마지막 도착 비트가 도착하는 시간까지 메모리, 래치(latch) 또는 시프트 레지스터 등에 저장될 필요가 있을 있고, 그런 후 상기 비트들은 디스큐하고 데이터를 읽는 장치로 보내진다.
스큐의 원인들 중 하나가 도 1에 도시되며, INTEL 어드밴스드 메모리 버퍼(Advanced Memory Buffer, AMB) 등이 예컨대 마더보드상에 장착된 커넥터에 삽입될 수 있는 연결보드상에 배치되는 모듈내에 있다. "AMB"라는 용어는 온보드 메모리 인터페이스 또는 컨트롤러의 예로서 사용된다. 이러한 배열은 FB-DIMM, 레지스터 DIMM 등에 사용될 수 있다. 다운스트림 모듈로부터 업스트림 경로상의 메세지는 많은 라인들을 가지며, 여기서 라인 0은 좌측에, 라인 4는 중앙에 등등 그렇게 있다. 상류 경로는 커넥터의 전면과 인터페이스할 수 있고, AMB를 통과한 후, 커넥터의 후면에 있는 유사한 라인의 배열에 연결될 수 있다. AMB가 플러그인 보드의 전면과 후면에 도시되어 있는 한편, 별도의 AMB 소자들은 이 기능을 수행할 필요가 없는 것을 유의하라. 추가로, 라인들이 AMB의 가장자리에만 도시되어 있으나, 상기 라인들은 AMB가 볼 그리드 어레이(BGA) 패키지 또는 가장자리에만 아니라 연결을 허용하는 다른 패키지에 있다면 상기 AMB 아래에 연결될 수 있다. 상기 라인들은 AMB로부터 보드의 후면에 있는 커넥터에 나타난다. 보드의 후면에 있는 라인들은 또한 라인 0이 좌측에 라인 4가 중앙에 등등 있도록 배치된다. 도시된 라인들은 AMB와 보드 인터페이스 커넥터(미도시) 간에 연결을 위해 보드상에 트레이스를 나타내도록 고려될 수 있다. 라인들은 도시된 바와 같이 하나 이상의 모듈이 메이팅 모듈 인터페이스 커넥터를 연결하는 트레이스와 함께 마더보드에 의해 연결될 수 있도록 배치되어 있다. 이 태양에서, 마더보드상에 연이은 커넥터들의 핀들간에 신호가 전파하는 시간은 대략 각 라인에 대해 동일할 수 있다. 그러나, 이는 모듈 보드상의 상황이 아니다. 라인 4은 커넥터로부터 AMB까지 이동하는 단거리인 한편 예컨대 라인 0은 거리가 더 멀다.
예시를 위해, 표준크기의 DIMM 모듈이 기준으로 사용된다. 이러한 모듈은 폭이 약 140㎜이며, 따라서, 스위치가 위치된 중앙에서 레인 0까지의 거리는 약 70㎜이다. AMB와 커넥터상의 해당 핀 간의 라인 4의 길이까지 20㎜ 길이에 속하는 이 예에서는 최단 트레이스와 최장 트레이스 간의 최대 길이차는 약 50㎜로, 이는 약 250-350ps의 전파시간의 대략적인 차에 해당한다. 이는 기존 DIMM을 이용한 평가상황을 나타낸다. 데이터 속도가 공칭적으로 4GB/s인 경우, 이는 이 효과로부터 스큐 가 1 또는 2 클록주기가 될 수 있다.
여러가지 표준 DIMM 또는 메모리 모듈이 있지만, 본 명세서에 사용된 DIMM 또는 메모리 모듈은 다른 모듈 회로등에 연결을 위해 커넥터 인터페이스가 있는 회로보드에 장착되는 것으로 사용될 수 있는 메모리 타입 중 어는 하나를 의미하는 것으로 이해되어야 한다. 핀 또는 트레이스 개수, 회로보드의 치수, 및 DIMM 또는 메모리 모듈상의 메모리 타입 또는 타입들은 현재 생산 또는 사용되는 이러한 핀 개수, 인터커넥트 개수, 치수, 타입 및 커패시티에 국한되지 않는다.
도 2a는 차동 전파시간 문제를 줄이는데 신호 라우팅에 대한 다른 접근들이 어떻게 사용될 수 있는지를 도시한 것이다. 도 2a는 트레이스들이 CSE 또는 AMB일 수 있는 다른 장치로부터 커넥터에 직접 전개되는 상황을 도시한 것이다. 도 2b는 더 긴 트레이스들을 가진 신호 라인들이 보드의 맞은편 단부로 전송되고, 신호라인들의 또 다른 세트들이 중앙으로부터 전송되는 상황을 도시한 것이다. 이러한 상황에서, 몇몇 트레이스들에 대한 전파거리는 도 2a에서 보다 더 크나, 신호 그룹들 간에, 예컨대, 0, 1, 2, 및 3 간의, 또는 4, 5, 6, 및 7 간의 트레이스 길이 차는 줄어들 수 있다. 트레이스 그룹들 간의 길이에서 차가 여전히 있을 수 있으나, 지연관리 프로세스와 신호 디스큐는 도 2b의 예에서 N개 신호에 대한 N개의 다른 지연으로부터 2개의 다른 대략 동일한 지연들로 줄임으로써 간략화될 수 있다.
도 3은 라인 0-4에 대한 5개의 모듈을 통해 도면의 좌측에 도시된 모듈 컨트롤러(MC)로부터 전송의 예를 도시한 것이다. MC로부터 전송된 데이터는 입력 데이터 레인에 해당하는 A, B, C, D, 및 E로 표시되어 있다. 각각의 하류 모듈에서 표는 입력 "I"의 논리명, 상기 라인상에 데이터가 겪는 지연"D", 데이터 전송경로를 따라 MC로부터 현재 위치까지의 총 지연 "T", 및 출력 데이터의 논리명"O"를 나타내고 있다. 표의 행들은 라인들의 순서에 해당하고, 따라서 상단 행은 라인 0을, 하단 행은 라인 4를 나타낸다. 이 예에서, 지연은 각 라인에 대한 것이며, 상기 지연은 각 라인에 대해 다를 수 있다. 지연은 초과지연 또는 이전 모듈 또는 MC상에 송신기로부터 수신 모듈상의 수신기까지의 지연이 전혀 없는 가상의 라인에 대한 차동지연으로서 해석될 수 있다.
이 예에서, 모듈들 간에 지연은 예시를 위해 1-6(임의의 단위)에 이르는 것으로 가정하고, 각 모듈로부터 입력 및 출력라인이 입력에 도달한 데이터와 동일한 주어진 라인 번호의 출력에 할당되거나 속박된 데이터를 갖는 경우, 각 모듈에 대한 출력 데이터 패턴은 입력 데이터 패턴 즉, 라인 0-4에 대한 A, B, C, D, 및 E와 동일하다. 하류 방향으로 모듈 대 모듈의 표의 진행을 따라, 각 라인에 대한 총 지연은 MC와 표와 관련된 모듈간의 라인에 대한 지연의 합인 것으로 보여진다. 예컨대, MC와 5번째 모듈(M4)간에 겪는 총 지연은 라인 0에 대해 30 단위이나, 레인 4에 대해서는 단지 5 단위이다. 이 예에서 다른 라인들은 중간의 시간지연량을 겪는다. 지연 단위가 클록 싸이클과 연관된 경우, 라인 0상의 데이터는 라인 4에 대한 데이터 뒤에 25개 클록 싸이클에 도달될 수 있다.
지연시간 값은 정수값으로 주어지며 이는 단지 예로서 각각의 모듈들 간에 주어진 라인에서 동일하다. 지연은 정수값일 필요도 모듈들 간에 각 호프에서 반드시 같을 필요도 없다.
이 예에서, 전송된 명령 또는 데이터 패킷, 또는 프레임의 총 길이가 예컨대 10 클록 싸이클인 경우, 약 2.5 명령이 모듈 M4에 의해 임의의 시간에 수신되는 과정에 있게 된다. 따라서, 마지막 모듈은 최초의 명령의 모든 비트들이 완전한 그룹으로서 수신되는데 너무 길어지기 때문에 최초의 명령을 처리할 수 있기 전에 임의의 시간에 2이상의 완전한 명령을 버퍼하는 것이 필요할 수 있다. 이 예에서, 제 2 명령과 제 3 명령의 일부가 모듈 M4에서 수신되기 시작한 후에 제 1 명령의 모든 비트들이 수신될 것이다.
도 4는 시스템내 스큐의 누적이 줄어들 수 있고, 각 노드 또는 호프에서 동시에 처리될 필요가 있을 수 있는 명령의 개수가 줄어들 수 있도록 데이터 레인들 간에 차동지연을 줄이기 위한 장치 및 방법을 예시한 것이다. 이 장치에서, 각 모듈에 대한 입력 데이터는 플러그-인 모듈 또는 회로보드 또는 기판상의 레이아웃에 대해 입력 라인과는 다른 라인에 입력될 수 있다. 실제 라인들의 물리적 배열은 도 4의 예를 위해 도 3과 동일하다. 상기 예는 데이터 레인들이 상술한 바와 같이 각 모듈과, 본 출원의 방법 및 장치에서 동일한 라인들에 할당되거나 속박된 채로 있는 기존의 AMB 또는 동일한 시스템의 성능 간의 몇가지 차이를 도시하도록 의도되어 있다. 몇몇 예에서, 입력 및 출력 데이터 라인들은 이전과 동일한 논리 레인 할당을 가지므로, 데이터의 단지 일부만이 다른 라인상에 있을 수 있게 된다.
예컨대, 제 1 모듈(M0)에서, 라인 0에 들어오는 데이터 레인 A는 라인 4에 출력된다; 라인 1에 들어오는 데이터 레인 B는 라인 3에 출력된다; 라인 3에 들어오는 데이터 레인 D는 라인 1에 출력된다; 라인 4에 들어오는 데이터 레인 E는 라인 0에 출력된다; 그리고 라인 2에 들어오는 데이터 레인 C는 라인 2에 출력된다.
모듈 M1의 출력시, 차동지연 상황은 도 3에서 모듈 M1에 대해 도시된 상황과 동일하다. 그러나, 모듈 M2에 대한 표를 고려하면, 상황이 바뀌었다. 예로서, 모듈 M1과 M2 사이의 전이에 대해 현재 라인 4에 있는 데이터 레인 A는 단지 1단위인 라인 4에 대한 지연을 누적시킨다; 그리고 현재 라인 0에 있는 데이터 레인 E는 라인 0에 대한 지연을 누적시킨다. 제 2 모듈 M2의 출력시, 데이터 레인 E에 대한 지연은 7 단위이고 데이터 레인 A에 대한 지연도 또한 7 단위인 것으로 보여진다. 다른 데이터 레인들 B, C, D에 대한 지연은 정확하게 같지 않으나, 값이 근사하며 데이터 레인들과 물리적 라인들의 재할당은 지연시 확산을 줄였다.
데이터 레인들 A-E의 각 모듈에서 라인 0-4로의 재할당 또는 교환에 잇달아, 다양한 데이터 레인 할당 A-E 간의 지연의 차는 상술한 예에서처럼 단조적으로 누적되는 것으로 보여진다. 데이터 레인들은 각 모듈에서 적절한 라인으로 계속 교환될 수 있다. 마지막 모듈(이 예에서 M4)에서, 관련된 표는 다양한 데이터 레인들 요소에 대한 지연의 범위가 총 3의 지연 확산에 대해 15 단위에서 18 단위에 이르는 것으로 나타나 있다. 이는 지연 확산이 25인 도 3의 예와 비교될 수 있다. 따라서, 이 예에 도시된 논리 데이터 레인 할당과 물리적 라인들 간의 대응을 상호교환하는 것은 송신기(예컨대 메모리 컨트롤러)에서 주어진 프레임에 대한 모든 데이터가 약 8의 인수만큼 모듈에서 수신되기 전에 버퍼되는 것이 필요할 수 있는 데이터 량을 줄일 수 있다. 이 예에서, 레인 또는 데이터 비트는 송신된 것과 동일한 논리 배열로 모듈 M4에 재배열된다. 대안으로, 레인 또는 데이터 비트는 수신단에서 재정렬이 필요하지 않을 수 있도록 메모리 컨트롤러 또는 다른 송신단부에서 재배열될 수 있다.
예에서 사용된 비트 할당 전략은 최고 누적된 시간지연을 겪은 데이터를 선택하고 상기 데이터를 최저 누적 시간지연을 갖는 라인에 출력으로서 할당하는 것이었다. 마찬가지로, 최저 누적 시간지연을 갖는 데이터는 최고 누적 시간지연을 갖는 라인에 할당된다. 시스템내 특정 위치에서 측정될 때 다른 스큐가 증가, 감소 또는 똑같이 유지될 수 있는 다른 전략이 또한 사용될 수 있다.
명세서에서, 지연은 표현의 간략화를 위해 정수값으로 주어져 있다; 그러나 시간지연이 클록속도의 몇 배를 나타내는 임의의 단위로 진술될 때 비정수 값도 또한 가능하다. 대안으로, 시간지연과 차동시간지연은 정수 및 분수 클록 기간으로 표현될 수 있다.
시간지연은 레인 대 라인 스와핑 스위치의 세팅 전략 및 구성의 기초로서 앞서 결정된 것으로 도시되어 있다. 이러한 결정은 시스템 디자인시 또는 시스템의 프로토타입시, 각 시스템 시작시 또는 시스템의 운영동안 이루어진 측정에 의해 이루어질 수 있다. 이 결정을 수행하기 위한 시간 또는 시간들의 선택은 시스템의 소정의 성능 및 복잡도와 관련있을 수 있고 제조 다양성과 온도영향 및 능동 또는 수동 구성부품의 장애 또는 열화를 고려할 수 있다.
교환, 스와핑, 재할당 또는 레인들의 라인으로의 결합을 상호교환하는 기능은 스위치에 의해 수행될 수 있으나, "스위치"라는 용의 사용은 상기 기능의 특정한 실행을 별개의 장치로 제한하는 것으로 사용되지 않는다; 교환, 스와핑, 재할당 또는 레인들의 결합을 달성하는 임의의 방식들이 사용될 수 있다. 편의상, 시스템, 기기 또는 방법의 태양에 적용되는 경우 "스위치"라는 용어는 기능을 수행하는데 통용되는 기술의 범위를 포함하는 것을 뜻한다. 이러한 기술은 메모리 저장 위치, 상태 장치의 동작 또는 저장된 프로그램 컴퓨터 및 전용 전자논리회로 등 단독으로 또는 조합으로 사용할 수 있다. 이러한 스위칭은 특정 제품의 디자인 요건에 따라정적 또는 동적 기반으로 수행될 수 있다. 스위치라는 용어는 또한 고정된 연결 또는 트레이스를 이용한 라인들의 스와핑을 포함하며, 이는 같은 결과를 갖는 가용 연결(fusible links) 또는 다른 기술들을 포함할 수 있다.
도 5a는 임의의 모듈에서 차동 데이터 시간지연을 최소로 하기 위해 라인들 간에 데이터 레인들을 교환하는 패턴을 도시한 것이다. 시간지연의 표는 도시되어 있지 않으나, 도시된 스외핑의 패턴을 이끄는 것으로 추정된다. M4에서, 데이터 레인들이 스와핑되는 순서(C, D, E, A, B)로 도착하는 반면, 예상되는 순서는 A, B, C, D, E이며, 이 순서는 데이터가 예상된 순서로 시스템의 나머지에 나타나도록 모듈 M4내에 적절하게 데이터를 스와핑함으로써 복원된다.
도 5b는 MC의 출력에서 M4의 입력 및 M4내로 도시된 스와핑의 전반적인 영향을 요약한 것이다. 즉, 중간 호프와 각 호프에서 발생한 스와핑은 MC에서 M4로의 레인들의 단일 스와핑과 M4내 레인들의 스와핑에 의해 논리적으로 대체될 수 있다. 이는 얻은 엔드-투-엔드(end-to-end) 변환을 나타낸다. 각 모듈에서 스위치들의 구성은 도 5a에 도시된 바와 같고, MC에서 데이터의 정렬로 인해 상기 정렬은 M4에서 달성된다. 도 5c에 도시된 또 다른 태양으로, 스위치 배열은 불변인 채로 있으나 데이터를 레인에 할당하는 순서는 전송하기 전에 MC에서 사전 치환되어 M4에서 예상된 순서대로 수신되며 어떠한 재정렬도 M4에서 필요로 하지 않다. 이러한 접근은 각 모듈에서의 처리시 시간지연을 최소화할 수 있고, 처리가 MC에서 수행될 때, 명령 및 데이터가 여전히 출력 큐에 있고 동작을 수행할 시간이 다른 시스템 프로세스에 포함될 수 있더라도 사전 치환이 행해질 수 있다. 이러한 사전 치환은 또한 들어오는 데이터를 다음 모듈로의 전송을 위해 변경되거나 로컬 CSE에 의한 사용을 위해 치환없이 읽어지도록 함으로써 CSE내에 데이터 경로를 단순화하게 할 수 있다. CSE가 트리와 같은 이진 트리 또는 고차 트리일 수 있는 브랜치 구성내에 배열되는 경우, 시스템내 CSE의 대부분은 리프일 수 있고 상기 리프로부터 하류에 다른 CSE가 없을 수 있다. 사전 치환은 정적 또는 동적 방식으로 이루어질 수 있다.
도시된 상황은 모듈 전환에 대한 MC에 관한 것이나 모듈들 간에 DMA 전환과 같은 다른 경로들에 대해 그리고 다른 채널 또는 트리의 브랜치에 대해 효과적으로 사용될 수 있다. 상기 논의는 MC로부터 예컨대 모듈로 경로를 어드레스하면서, 이들동작들이 역방향으로 동일하게 수행될 수 있다. 즉, 예컨대, 상기 논의는 사우스바운드 방향을 어드레스하면서, 노스바운드 방향도 마찬가지로 기술될 수 있다.
몇몇 배열에서는, 레인 상호교환의 하나 이상의 패턴들이 자주 조우되는 것을 발견할 수 있다. 도 6은 풀 스왑이 시스템의 몇몇 레인들에 대해 공통 발생일 수 있는 상황을 도시하고 있고, 예컨대 입력라인 1과 출력라인 8에 출력되는 멀티플렉서간에 연결되는 고정회로 소자와 함께 도시되어 있다. 다른 입력 및 출력들도 동일하게 연결되어 있다. 다른 스와핑 배열들도 또한 구성될 수 있도록 입력 및 출 력을 출력 멀티플렉서에 연결한 2개의 베네스 네트워크(Benes Network)가 도시되어 있다. 고정 네트워크 및 가변 구성 스위치와 조합하여 출력 멀티플렉서에 의해 요망하는 치환이 선택된다. 단지 하나의 고정 네트워크만이 도시되어 있으나, 하나 이상의 네트워크가 더 큰 입력 용량을 갖는 3 대 1 멀티플렉서와 같은 멀티플렉서와 함께 사용될 수 있다. 기술된 많은 회로들에 대해 행해질 수 있는 바와 같이, 사용되지 않는 회로는 전원이 다운되거나 꺼질 수 있거나, 있다면 클록이 게이트 될 수 있거나 바람직하게는 전력소비를 최소화하도록 취해질 수 있는 임의의 단계를 가질 수 있다.
도 7은 메모리 컨트롤러 MC와 메모리 모듈 M4 간에 사우스바운드 전달이 있고 신호들이 메모리 모듈 M0를 통해 M3로 전달되는 버스 배열을 도시한 것이다. 간략히 하기 위해, 지연을 위한 동일한 값들이 이전 예에서와 같이 사용된다. 각 메모리 모듈에서, 지연 D, 총지연 T, 입력 I 및 출력 O 논리 데이터 할당이 도시되어 있다. 각 모듈 M에서, 예컨대 커넥터상에 핀으로 표현될 수 있는 입력 라인이 도시된 바와 같이 표현될 수 있고 연결 트레이스의 고정배열에 의해 또는 칩의 연결에 의해 또는 정적 또는 동적 반도체 스위치 등에 의해 있을 수 있는 치환을 통해 출력라인에 연결된다. 치환은 입력라인을 출력라인에 연결시켜 입력과 출력의 스왑이 라인들의 배열에 대해 대칭적으로 이루어진다. 이와 같은 대칭축이 라인과 일치하는지 여부는 홀수 또는 짝수의 라인들이 사용되는지 여부에 따른다. 이는 개념적인 설명을 나타내는 것으로 이해되어야 하며 실제 물리적 배열을 필요로 하는 것으로 해석되지 않아야 한다. 각 라인에 대한 지연에 대해 수치의 할당은 예이며 할당될 수 있는 값들의 임의의 제한 또는 라인 번호와 시간 지연값의 관계의 임의의 연속을 가정하지 않아야 함이 되풀이되어야 한다.
몇몇 애플리케이션에서, 라인들의 고정 교환은 총 지연 및 차동 스큐가 허용되기에 충분할 수 있다. 이 예에서 라인들이 교환되지 않는다면, 25의 차동지연에 대해 라인 1의 총 지연은 30이 되며, 라인 5의 총 지연은 5가 된다. 그러나, 도 7로부터, 라인에 본래 입력된 레인의 총 지연은 20이며, 6의 최대 차동시간지연(데이터 레인 스큐)에 대해 임의의 다른 레인의 최소 지연은 14이다.
MC에서 입력 데이터 표현(ABCDE)은 입력 M4에서 복제된다. 이 결과는 버스 길이가 명확하게 확장될 수 있고 총지연이 2배의 버스 길이로 배가되도록 증가되는 한편 상기 버스를 따라 임의의 주기지점에서 겪는 최대 차동지연도 또한 배가될 수 있고 패턴도 반복되는 것을 의미한다.
AMB 또는 CSE 등과 같이 반도체 장치내 시간지연의 효과는 이들 예에서 미도시되어 있고 당업자는 이러한 시간지연의 효과와 시스템, 노드 또는 모듈의 디자인시 시간지연에서 임의의 가변성을 고려할 수 있다. 고정된 치환을 구현하기 위한 물리적 연결 또는 고정 스위치 연결의 사용은 임의의 추가 시간지연을 줄일 수 있다. 물리적 연결은 트레이스, 가용 연결, 또는 동일한 목적을 달성하는 구성의 임의의 다른 기술일 수 있다.
이용될 수 있는 레인 대 라인 교환 치환의 또 다른 것이 도 8에 도시되어 있다. 이러한 교환타입은 "셔플(shuffle)"이라 한다. 이 예에서, 일련의 모듈의 입력 및 출력시 데이터 레인 할당의 순서는 동일하며, 총 시간지연은 16 단위이다. 차동 시간지연(스큐)는 마지막 모듈에서 0이다. 이 패턴은 또 다른 5개 모듈 다음에 반복되기 때문에, 이 버스의 확장은 총 지연의 더 작은 축적을 가지며, 다른 지연은 첫번째 5개 모듈에 걸쳐 최대 차동지연에 속박된다. 이 예에서, 최대 시간지연 스큐는 버스길이에 무관하게 7이다.
교환의 고정패턴이 도 8 및 도 9에 도시되어 있으나, 이는 제한이 아니며, 예컨대 양 치환 타입들이 디자인시 사용될 수 있다. 더욱이, 교환은 모듈상에 수행되는 것으로 도시되어 있으나, 교환은 마더보드상에 또는 전체 또는 부분적으로 수행될 수 있다. 예컨대, 교환은 모듈상에 총 8개 라인들 중 4개 라인들의 그룹상에서 예를 들면 셔플링에 의해 수행될 수 있고, 교환은 그룹들간에 충분한 차동스큐가 누적되는 경우 상기 마더보드상의 각 그룹을 상호교환하도록 상기 마더보드상에 수행될 수 있다. 이들 선택은 디자인과 관련된 특정 시간지연 및 모듈, 반도체 장치 및 마더보드에 기능의 할당에 의해 영향받는다.
도 9는 모듈상에 발생한 교환이 도시된 치환의 혼합의 또 다른 예를 도시한 것이다.
치환교환을 수행하는 한가지 방법은 모듈의 와이어링을 할당함으로 인한 것이다. 도 10은 모듈의 평면도를 도시한 것이다. 보드의 층의 방향을 나타내기 위해 노치가 우측상단 코너에 도시되어 있다. 도 10a에서, 위쪽 도면은 위에서 본 상단층의 도면을 도시한 반면, 하단층은 노치가 사이에 배열되도록 상기 상단층 아래에 위치되는 것으로 이해된다. CSE, AMB 등일 수 있는 칩이 상단층에 실선으로 도시되어 있으나, 하단층에서 점선은 칩이 상단층에 또는 위에 위치된 것을 나타낸다. 점 선은 예컨대, 바이어스, 와이어 등에 의해 연결부들로의 위치가 이해될 수 있도록 하단층상의 칩의 투영위치를 도시한 것이다.
도 10a는 칩내 발생한 전체 교환 치환을 도시한 것이다. 상단층은 입력라인으로 사용될 수 있고, 상기 라인들은 좌에서 우로 0에서 4로 지정되어 있다. 하단층상의 출력라인들은 우에서 좌로 0에서 4로 지정되어 있다. 이런 식으로, 칩의 좌측에서 라인 0의 데이터 입력은 칩의 우측에 있는 라인 0에서 출력된다. 라인 4의 데이터는 마찬가지로 우에서 좌로(입려에서 출력으로) 상호교환될 수 있다. 이는 도 7에 도시된 상호교환을 수행한다.
도 10a(상단층)과 동일한 입력 구성을 이용해, 도 10b는 셔플 상호교환을 도시한 것이다. 상기와 같이, 입력 라인 0에서 4가 좌에서 우로 배치되어 있다. 출력라인은 0에서 4이며, 좌에서 우로 배치되어 있으나, 칩과 보드 가장자리 간에 이르는 트레이스들의 지향은 도 8에서와 같이 라인들이 셔플 교환되게 배치된다. 거리가 재어지지 않는 이 도면 및 다른 도면에서, 도시된 거리들 중 어느 하나는 심지어 상대적으로 증감되지 않을 수 있는 것이 이해되어야 한다. 오히려, 도면들은 개념적이며 설계자는 실제 지연이 보드 레이아웃 또는 스위치 구성에 고려됨을 알게 된다.
도 11a는 도 10b와 같은 셔플 상호교환의 예를 도시한 것으로, 출력 라인들이 단일층상에 이어진다. 이 도면에서, 동일한 숫자 예컨대 0을 갖는 칩에 대한 입력 및 출력핀들 또는 연결들이 서로 가까이 위치되어 핀들 간의 오프세트로 인한 차동시간지연이 설계 목적으로 최소화되어 진다. 이러한 차동지연의 고려를 포함할 수 있는 다른 배열들도 가능하다. 클록 속도가 증가함에 따라 이들 태양이 설계시 고려될 수 있다.
도 11b는 도 10a에서와 같이 대칭 스왑의 예로서, 입력 및 출력 트레이스들이 동일 보드층에 있다. 칩에 대한 핀 또는 연결 접속은 납, 볼 그리드 연결 등에 의해 또는 광파와 같이 개발중인 다른 기술들에 의해 될 수 있다.
도 12는 모듈 인쇄회로기판을 이용해 교환 치환에 영향을 끼칠 수 있도록 칩에 연결 및 라인들의 라우팅의 또 다른 예를 도시한 것이다. 도 11 및 도 12와 곧일한 도면 관례를 이용해 칩에 대한 입력을 도시하고 있다. 도 12b에서 출력 라인 라우팅으로 인해 도 10a에서 전체가 교환되고, 도 12c에서 출력라인 라우팅으로 인해 예컨대 도 10b에서 셔플 교환이 된다. 이 배열은 예컨대 플립칩 모듈과 함께 사용될 수 있다.
한 입력포트와 한 출력포트를 갖는 노드 또는 모듈을 이용한 라인 교환들이 기술되어 있으나, 이에 국한되지 않는다. 도 13a는 3개 포트 A, B, C를 갖는 칩을 도시한 것이다. 다시, 신호 전파의 일방향만이 도시되어 있으나, 장치는 각 라인 또는 포트상에 양방향 전송용으로 구성될 수 있고, 노스바운드와 사우스바운드 모두가 라인 교환을 이용할 수 있다. 도표는 예시용으로 간략화되어 있다.
칩의 핀 또는 볼을 모듈의 가장자리에 연결한 보드의 상단층에 배치되어 있는 포트 A 입력라인과 포트 B 및 포트 C 출력라인들이 도시되어 있다. 도 13은 포트 A 출력라인과 포트 B 및 포트 C 입력라인을 도시한 것이다.
교환이 모듈을 수용하기 위한 커넥터를 갖는 마더보드상에 부분적으로 또는 전체적으로 수행될 수 있다. 도 14a는 인접한 연결메모리 모듈들 사이의 통과동안 데이터의 셔플 교환에 사용될 수 있다. 도 14a는 도 9의 M0의 구성에 적합하며, 도 14b는 도 9의 구성에 적합하다. 본 명세서는 마더보드에 플러그된 연결 모듈로 표현되어 있으나, 이는 단지 한가지 가능한 기술의 구션이다. 구성부품들은 커넥터의 사용없이 직접 연결될 수 있거나, 구성부품들 중 일부 또는 모두가 단일 기판 등에 포함될 수 있다. 또한, 연결 수단들은 레이저 링크 뿐만 아니라 도전성 연결과 같은 광학 기술들을 포함할 수 있다.
도 15는 도 6과 유사하나, 도 15에서 연결 구성이 변경될 수 있는 고정 네트워크 또는 스위치를 통해 입력 단자들과 출력단자들간에 연결 간에 선택이 이루어질 수 있다. 핀 배열은 예컨대 도 12에서의 배열과 유사할 수 있다. 고정 네트워크의 사용은 입력 및 출력핀 간에 더 낮은 시간지연과 이에 따란 더 낮은 전체 지연을 초래할 수 있으나, 다른 교환들이 스큐를 제어하기 위해 사용될 수 있는 버스를 따라 한 위치에서 시간지연을 보상하도록 스위치가 사용될 수 있다. 특히, 특정 라인들(예컨대, 1 및 3)에 대한 핀들의 배열은 동일한 클록 도메인이 입력 및 출력 회뢰의 동작을 위해 사용될 수 있게 전체 지연이 충분히 작도록 배열될 수 있다.
도 16은 CSE에서 구성부품들의 배열의 예를 도시한 것이다. 이 예에서, I/O 패드는 도 12a에 도시된 바와 같은 CSE에 해당할 수 있는 칩의 외주에 위치될 수 있고, 상기 배열은 신호의 풀 스왑을 발생하도록 구성되는 한편, 출력 트레이스가 도 12b에 도시된 것보다는 오히려 도 12a에 도시된 입력 트레이스로 보내질 수 있다.
밝은 회색선이 로컬 클록 도메인내에 동작할 수 있는 구성부품의 그룹들을 둘러싼다. 다른 클록 도메인에서의 동작은 내부 신호전파 지연으로 인하거나 심지어 동일한 클록 도메인이 로컬 클록 도메인내에 각 영역들과 함께 사용하기 전에 버퍼될 때에도 발생될 수 있다. 박스 가장자리를 가로지르는 신호는 박스내 전체 신호보다 더 큰 지연을 겪을 수 있다.
입력 0에 도달한 신호는 신호를 출력 0에 보내는 것보다 더 작은 지연을 가지며 출력 4을 통해 출력될 수 있고, 심지어 입력 신호를 출력 1, 2, 또는 3에 보내기 위해 지연이 더 작을 수 있다. 입력 1 및 3은 동일한 지연을 갖는 출력 1 또는 3으로 하지만 더 큰 지연을 갖는 출력 0, 2 또는 4로 전송될 수 있다.
I/O 패드, 예컨대, 입력 라인 0을 출력 라인 4로 직접 전송하기 위해 도시된 멀티플렉서 부근에서 로컬 스위칭을 이용할 경우, 모든 입력을 모든 출력에 연결한 것으로 도시된 중앙 스위치는 기능상 풀 스위치 또는 그 서브세트를 보유할 수 있다. 예컨대, 중앙 스위치는 입력 라인 0에서 출력 라인 4로 전송하기 위한 능력을 생략할 수 있는데 이는 상기 능력이 I/O 패드 부근에 스위칭 기능을 가지며 중복될 수 있기 때문이다. 이는 비고정 스위칭 기능이 출력 신호 논리 할당으로의 입력 논리 할당의 모든 가능한 재배열을 수행할 수 없는 도 6에 도시된 배열과 동일하다.
도 17은 도 13에 도시된 CSE에 대응할 수 있는 면적 I/O 플립-칩상에 위치된 I/O 패드를 이용한 또 다른 CSE의 배열의 일부를 도시한 것이다. I/O 연결의 배치는 포트 A의 입력 0 또는 5로부터 포트 A의 출력 0 및 5로 전송된 신호들에 대해 지연이 낮을 수 있고, 로컬 스위치를 통과함으로써 포트 B 및 C의 출력 0 또는 5로 전송된 신호들에 대해 지연이 더 커질 수 있다. 포트 A, B, 또는 C들 중 어느 하나의 입력 라인들 0 또는 5로부터 임의의 포트의 출력 라인 1, 2, 3, 또는 4로 전송된 신호들은 하나 이상이 있을 수 있는 전체 스위치(미도시)로 전송되는 경우 더 큰 지연을 겪을 수 있다. 하나 이상의 논로컬 스위치들을 지나는 I/O로부터의 신호들에 대한 지연은 포트 C가 포트 A 및 포트 B에 대한 것과 같이 로컬 스위치를 통해서라기 보다는 전체 스위치로부터 직접 신호를 수신하는 것으로 도시된 몇몇 경로를 따라 직접 연결을 가짐으로써 줄어들 수 있다.
본 명세서에서의 설명은 예로서 연결될 수 있는 모듈들, 마더 보드 등을 이용하였다. 그러나, 상기 기기 및 방법은 집적회로, 멀티칩 모듈 등으로서 기판상에 장착된 장치들과 연계하여 사용될 수 있다. 전자모듈의 밀도가 계속 증가함에 따라, 이러한 구성이 사용하기에 편리할 수 있다.
본 발명은 상술한 예로써 설명하였으나, 본 발명은 상기 예들에 국한되지 않고 오히려 다양한 변경 또는 변형들이 본 발명의 기술사상에서 벗어남이 없이 가능한 것을 당업자들은 알아야 한다.
본 발명의 상세한 설명에 포함됨.

Claims (43)

  1. 데이터 비트를 구비한 신호를 각각 전송할 수 있는 복수의 신호라인들을 갖는 버스를 구비하고,
    제 1 누적 시간지연을 갖는 제 1 신호라인 상의 제 1 데이터 비트와 제 2 누적 시간지연을 갖는 제 2 신호라인 상의 제 2 데이터 비트는 제 1 데이터 비트와 제 2 데이터 비트 사이의 누적 시간지연의 차가 상기 버스 상의 제 2 위치에서 변경되도록 상기 버스 상의 제 1 위치에 제 1 신호라인과 제 2 신호라인 사이에서 교환될 수 있는 상호연결 시스템.
  2. 제 1 항에 있어서,
    상기 데이터 비트들은 3 이상의 신호라인들로 전송되고, 제 1 누적 시간지연을 갖는 데이터 비트가 제 2 누적 시간지연을 갖는 데이터 비트와 교환되도록 상기 두 개의 데이터 비트들이 교환되는 상호연결 시스템.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 제 1 누적 시간지연과 상기 제 2 누적 시간지연의 차의 변경이 버스상의 수신 위치에서 결정되는 상호연결 시스템.
  5. 제 4 항에 있어서,
    각 데이터 비트의 누적 시간지연은 상기 신호라인들의 수신단부에서 데이터 수신기의 출력시에 결정되는 상호연결 시스템.
  6. 제 2 항에 있어서,
    상기 제 1 누적 시간지연이 상기 제 2 누적 시간지연보다 더 큰 상호연결 시스템.
  7. 제 2 항에 있어서,
    상기 제 2 누적 시간지연이 상기 제 1 누적 시간지연보다 더 큰 상호연결 시스템.
  8. 제 2 항에 있어서,
    제 1 교환패턴의 교환패턴이 각각의 연속한 교환을 위해 사용되는 상호연결 시스템.
  9. 제 8 항에 있어서,
    상기 교환패턴은 도전성 트레이스를 구비하는 상호연결 시스템.
  10. 제 9 항에 있어서,
    상기 도전성 트레이스는 마더보드상에 커넥터들 사이에 배치되는 상호연결 시스템.
  11. 제 9 항에 있어서,
    상기 도전성 트레이스는 연결모듈상에 배치되는 상호연결 시스템.
  12. 제 11 항에 있어서,
    상기 도전성 트레이스는 모듈내 플러그 상에 장착된 전기회로에 배치되는 상호연결 시스템.
  13. 제 1 항에 있어서,
    버스로 전송된 데이터에 대한 라인들에 데이터 비트들의 할당은 소정의 데이터 비트들의 순서가 버스상의 수신 위치에서 얻어지도록 선택되는 상호연결 시스템.
  14. 제 1 항에 있어서,
    상기 버스 상의 제 1 위치와 제 2 위치 사이의 간격은 연결된 노드들간의 이격거리인 상호연결 시스템.
  15. 제 1 항에 있어서,
    더 큰 누적 시간지연을 갖는 데이터 비트가 더 작은 누적 시간지연을 갖는 데이터 비트와 교환되도록 상기 데이터 비트들은 교환되는 상호연결 시스템.
  16. 제 15 항에 있어서,
    상기 데이터 비트들은 3 이상의 신호라인들을 통하여 전송되고, 상기 데이터 비트들은 상기 데이터 비트들 중 가장 큰 누적 시간지연을 갖는 데이터 비트가 가장 작은 누적 시간지연을 갖는 데이터 비트와 교환되도록 교환되는 상호연결 시스템.
  17. 제 16 항에 있어서,
    상기 누적 시간지연은 신호라인들의 수신단부에서 측정되는 상호연결 시스템.
  18. 제 16 항에 있어서,
    상기 누적 시간지연은 상기 신호라인들의 수신단부에서 데이터 수신기의 출력에서 결정되는 상호연결 시스템.
  19. 제 1 항에 있어서,
    상기 제 1 신호라인 상의 데이터 비트와 상기 제 2 신호라인 상의 데이터 비트는 상기 데이터 비트들 사이의 누적 시간지연의 차가 상기 데이터 비트들이 저장되거나 디멀티플렉스되는 수신 위치에서 감소되도록 교환되는 상호연결 시스템.
  20. 스위치와,
    제 1, 제 2, 제 3, 및 제 4 라인들을 각각 갖는 입력포트 및 출력포트를 구비하고,
    상기 스위치는 입력포트의 라인들에서 수신된 데이터 비트들이 출력포트의 라인들로 전송되도록 하기 위해 상기 입력포트와 상기 출력포트 간에 통신하도록 설정되며,
    상기 입력포트는 서로 간에 차동 시간지연을 갖는 데이터 비트들을 상기 제 1, 제 2, 제 3, 및 제 4 라인들로 수신하고,
    상기 입력포트의 제 1 라인이 상기 출력포트의 제 2 라인에 연결되고, 상기 입력포트의 제 3 라인이 상기 출력포트의 제 1, 제 3 또는 제 4 라인에 연결될 수 있는 노드.
  21. 제 20 항에 있어서,
    상기 입력포트의 제 2 라인이 상기 출력포트의 제 1 라인에 연결되는 노드.
  22. 제 21 항에 있어서,
    상기 입력포트의 제 3 라인이 상기 출력포트의 제 3 또는 제 4 라인 중 하나에 연결될 수 있는 노드.
  23. 제 22 항에 있어서,
    상기 입력포트의 제 4 라인이 상기 출력포트의 제 3 또는 제 4 라인 중 하나에 연결될 수 있는 노드.
  24. 제 20 항에 있어서,
    상기 입력포트의 제 2 라인이 상기 출력포트의 제 1, 제 3 또는 제 4 라인 중 하나에 연결될 수 있는 노드.
  25. 제 20 항에 있어서,
    상기 입력포트 또는 상기 출력포트 중 적어도 하나와 소통하는 메모리 회로를 더 구비하는 노드.
  26. 제 20 항에 있어서,
    제 1, 제 2, 제 3 및 제 4 라인들을 갖는 제 2 출력포트를 더 구비하고,
    상기 입력포트의 제 1 라인이 상기 제 2 출력포트의 제 2 라인에 연결되고, 상기 입력포트의 제 3 라인이 상기 제 2 출력포트의 제 1, 제 3, 또는 제 4 라인 중 하나에 연결될 수 있는 노드.
  27. 복수의 신호 라인들을 갖는 링크들에 의해 연결된 네트워크를 형성하는 복수의 노드들과,
    상기 복수의 노드들 중 한 노드와 인터페이스하기 위한 커넥터를 갖는 마더보드를 구비하고,
    제 1 노드는 데이터 비트들의 소스이며, 제 2 노드는 데이터 비트들의 목적지이고, 상기 제 1 노드 또는 상기 제 2 노드 중 적어도 하나는 신호 라인들 사이의 데이터 비트들의 할당을 변경하도록 구성될 수 있는 상호연결 시스템.
  28. 제 27 항에 있어서,
    상기 소스의 데이터 비트들은 3개 이상의 신호 라인들 상에 전송되며, 더 큰 누적 시간지연을 갖는 신호 라인 상의 데이터 비트가 더 작은 누적 시간지연을 갖는 신호 라인 상의 데이터 비트와 교환되도록 신호 라인들 사이에서 상기 데이터 비트들이 교환되는 상호연결 시스템.
  29. 제 27 항에 있어서,
    상기 소스의 데이터 비트들은 3개 이상의 신호 레인들 상에 전송되고, 더 큰 누적 시간지연을 갖는 데이터 비트가 더 작은 누적 시간지연을 갖는 데이터 비트와 교환되도록 상기 데이터 비트들이 교환되는 상호연결 시스템.
  30. 제 27 항에 있어서,
    데이터가 저장되거나 디멀티플렉스되는 노드에서 복수의 신호 레인들 상에 데이터 비트들간의 시간지연차가 감소되도록 상기 데이터 비트들이 교환되는 상호연결 시스템.
  31. 제 27 항에 있어서,
    상기 복수의 신호 라인들 상에 데이터 비트들간의 시간지연차가 주기적인 간격을 갖는 노드에서 국소적으로 최소가 되도록 상기 데이터 비트들이 교환되는 상호연결 시스템.
  32. 제 27 항에 있어서,
    상기 신호 라인들 간의 데이터 할당의 변경으로 수신 위치에서 상기 신호 라인들 상의 데이터 비트 간에 차동 시간지연이 변경되는 상호연결 시스템.
  33. 다수의 연결가능한 요소들이 있는 커넥터를 갖는 연결회로카드와,
    커넥터의 연결가능한 요소들과 소통하는 입력연결부 및 출력연결부를 갖는 전기회로모듈을 구비하고,
    입력연결부와 출력연결부는 입력 연결가능 요소들과 출력 연결가능 요소들의 쌍들 간의 전송 지연시 차가 변경되도록 배치되는 상호연결 시스템에서의 모듈.
  34. 제 33 항에 있어서,
    입력 연결가능 요소들과 출력 연결가능 요소들의 2쌍들간의 전송 지연시 차가 줄어드는 상호연결 시스템에서의 모듈.
  35. 제 33 항에 있어서,
    입력 연결가능 요소들과 출력 연결가능 요소들의 2쌍들간의 전송 지연시 차가 늘어나는 상호연결 시스템에서의 모듈.
  36. 복수의 라인들을 갖는 신호버스를 제공하는 단계;
    상기 신호버스에 복수의 노드들을 연결하는 단계;
    상기 버스상에 인접하게 연결된 노드들간의 신호전송을 위해 차동 시간지연을 결정하는 단계; 및
    연속노드에서 측정시 상기 버스의 라인들간에 데이터에 대한 시간 지연차를 변경하도록 라인들간에 데이터 레인들을 교환하는 단계를 포함하는 상호연결 시스템에서의 데이터 스큐 보상방법.
  37. 제 36 항에 있어서,
    상기 시간 지연차가 증가되는 상호연결 시스템에서의 데이터 스큐 보상방법.
  38. 제 36 항에 있어서,
    상기 지연차가 줄어드는 상호연결 시스템에서의 데이터 스큐 보상방법.
  39. 제 36 항에 있어서,
    상기 연속 노드는 목적지 노드인 상호연결 시스템에서의 데이터 스큐 보상방법.
  40. 신호버스에 연결할 수 있고, 적어도 하나의 스위치를 구비하는 노드를 제공하는 단계; 및
    적어도 하나의 제 1 입력라인이 제 1 출력라인 외에 연결되도록 스위치를 구성하는 단계를 구비하는 상호연결 시스템에서 데이터 스큐 보상방법.
  41. 제 40 항에 있어서,
    상기 제 1 입력라인과 상기 제 1 출력라인 외에 고정연결로서 적어도 하나의 경로를 제공하는 단계를 더 포함하는 상호연결 시스템에서의 데이터 스큐 보상방법.
  42. 버스상에 인접하게 연결된 노드간에 신호전송을 위한 차동 시간지연을 결정하고, 상기 버스의 라인들간에 데이터 레인들의 할당을 구성하도록 전자장치를 구성하여 연속노드에서 측정시 상기 버스의 적어도 한 쌍의 라인들 간에 데이터에 대한 시간지연차를 변경하는 명령어를 포함하는 소프트웨어 프로그램이 저장된 기계판독가능한 기록매체.
  43. 제 42 항에 있어서,
    상기 연속노드는 목적지 노드인 소프트웨어 프로그램이 저장된 기계판독가능한 기록매체.
KR1020097008236A 2006-10-23 2007-10-19 상호연결 시스템에서의 스큐 관리 KR101245096B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US85385206P 2006-10-23 2006-10-23
US60/853,852 2006-10-23
PCT/US2007/022316 WO2008051467A1 (en) 2006-10-23 2007-10-19 Skew management in an interconnection system

Publications (2)

Publication Number Publication Date
KR20090073195A KR20090073195A (ko) 2009-07-02
KR101245096B1 true KR101245096B1 (ko) 2013-03-18

Family

ID=39154374

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097008236A KR101245096B1 (ko) 2006-10-23 2007-10-19 상호연결 시스템에서의 스큐 관리

Country Status (5)

Country Link
US (3) US8028186B2 (ko)
EP (2) EP2498257B1 (ko)
KR (1) KR101245096B1 (ko)
CN (1) CN101611452B (ko)
WO (1) WO2008051467A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8233304B2 (en) * 2008-07-28 2012-07-31 Inphi Corporation High speed memory module
JP5280135B2 (ja) * 2008-09-01 2013-09-04 株式会社日立製作所 データ転送装置
CN101931828B (zh) * 2009-06-12 2013-01-30 华为技术有限公司 背板和通讯设备
US8768181B2 (en) * 2009-10-09 2014-07-01 Mitsubishi Electric Corporation Differential code optical transmission and reception device
US8762920B2 (en) * 2010-12-06 2014-06-24 Infinera Corporation Interconnection system and method
US9148345B2 (en) 2012-01-16 2015-09-29 Ciena Corporation Link management systems and methods for multi-stage, high-speed systems
JP5910383B2 (ja) * 2012-07-19 2016-04-27 株式会社ソシオネクスト スキュー低減回路
US8732358B2 (en) 2012-09-28 2014-05-20 Ciena Corporation Circuit systems and methods using prime number interleave optimization for byte lane to time slice conversion
CA2867585A1 (en) * 2013-10-15 2015-04-15 Coho Data Inc. Methods, devices and systems for coordinating network-based communication in distributed server systems with sdn switching
CN105531766A (zh) * 2013-10-15 2016-04-27 拉姆伯斯公司 负载减小的存储模块
US10571954B2 (en) * 2016-04-25 2020-02-25 Hewlett Packard Enterprise Development Lp Prioritization for a set of data signals based on skew requirements
US10445259B2 (en) * 2017-04-18 2019-10-15 Western Digital Technologies, Inc. Bit reordering for memory devices
CN108061937A (zh) * 2017-12-22 2018-05-22 中国科学院半导体研究所 一种用于链路交换的多模光开关结构
US10951545B2 (en) * 2019-04-15 2021-03-16 Mellanox Technologies Tlv Ltd. Network devices
US20230420018A1 (en) * 2022-06-24 2023-12-28 Ati Technologies Ulc Channel routing for simultaneous switching outputs

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681338B1 (en) * 2000-06-21 2004-01-20 Rambus, Inc. Method and system for reducing signal skew by switching between multiple signal routing layers

Family Cites Families (213)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3728679A (en) * 1971-10-21 1973-04-17 Weston Instruments Inc Skew device
FR2269158B1 (ko) 1974-04-26 1976-10-15 Ibm France
US4128882A (en) 1976-08-19 1978-12-05 Massachusetts Institute Of Technology Packet memory system with hierarchical structure
US4363094A (en) 1977-12-29 1982-12-07 M/A-COM DDC, Inc. Communications processor
US4240143A (en) 1978-12-22 1980-12-16 Burroughs Corporation Hierarchical multi-processor network for memory sharing
US4263651A (en) * 1979-05-21 1981-04-21 International Business Machines Corporation Method for determining the characteristics of a logic block graph diagram to provide an indication of path delays between the blocks
US4323849A (en) 1980-01-11 1982-04-06 Hybricon, Inc. Coulometer
NL183214C (nl) 1980-01-31 1988-08-16 Philips Nv Inrichting voor het synchroniseren van de fase van een lokaal opgewekt kloksignaal met de fase van een ingangssignaal.
US4322849C1 (en) 1980-04-14 2002-03-05 Frank A Calabrese Data relay system
US4383314A (en) 1981-01-12 1983-05-10 Burroughs Corporation Circular access linkage loop configuration for system communication
US4445171A (en) 1981-04-01 1984-04-24 Teradata Corporation Data processing systems and methods
EP0104294B1 (fr) 1982-09-28 1987-03-18 International Business Machines Corporation Système de transmission de données
US4703451A (en) 1983-05-02 1987-10-27 Calabrese Frank A Data relay system
US4820944A (en) * 1983-08-01 1989-04-11 Schlumberger Systems & Services, Inc. Method and apparatus for dynamically controlling the timing of signals in automatic test systems
US4805195A (en) * 1984-06-08 1989-02-14 Amdahl Corporation Selectable timing delay circuit
US4701756A (en) 1985-09-10 1987-10-20 Burr William E Fault-tolerant hierarchical network
DE3787494T2 (de) 1986-05-14 1994-04-28 Mitsubishi Electric Corp Datenübertragungssteuerungssystem.
US4860201A (en) 1986-09-02 1989-08-22 The Trustees Of Columbia University In The City Of New York Binary tree parallel processor
FR2605768B1 (fr) 1986-10-23 1989-05-05 Bull Sa Dispositif de commande de bus constitue par plusieurs segments isolables
US4756011A (en) 1986-12-24 1988-07-05 Bell Communications Research, Inc. Digital phase aligner
US4910669A (en) 1987-04-03 1990-03-20 At&T Bell Laboratories Binary tree multiprocessor
US6112287A (en) 1993-03-01 2000-08-29 Busless Computers Sarl Shared memory multiprocessor system using a set of serial links as processors-memory switch
US4843288A (en) * 1988-03-28 1989-06-27 Rigidyne Corporation Phase locked motor control system for multiple disk drive units
US4881165A (en) 1988-04-01 1989-11-14 Digital Equipment Corporation Method and apparatus for high speed data transmission between two systems operating under the same clock with unknown and non constant skew in the clock between the two systems
US5128810A (en) 1988-08-02 1992-07-07 Cray Research, Inc. Single disk emulation interface for an array of synchronous spindle disk drives
US5053942A (en) 1988-11-01 1991-10-01 The Regents Of The University Of California Bit-sliced cross-connect chip having a tree topology of arbitration cells for connecting memory modules to processors in a multiprocessor system
US5041964A (en) 1989-06-12 1991-08-20 Grid Systems Corporation Low-power, standby mode computer
US5258660A (en) 1990-01-16 1993-11-02 Cray Research, Inc. Skew-compensated clock distribution system
US5175640A (en) * 1990-04-25 1992-12-29 At&T Bell Laboratories Interleaved receivers
US5283877A (en) 1990-07-17 1994-02-01 Sun Microsystems, Inc. Single in-line DRAM memory module including a memory controller and cross bar switches
JP2666533B2 (ja) * 1990-08-06 1997-10-22 日本電気株式会社 スイツチモジユール
WO1992006436A2 (en) 1990-10-03 1992-04-16 Thinking Machines Corporation Parallel computer system
US5920704A (en) * 1991-03-29 1999-07-06 International Business Machines Corporation Dynamic routing switch apparatus with clocked signal regeneration
DE69119076T2 (de) 1991-12-05 1996-11-21 Ibm Plattenlaufwerksynchronisierung
DE69230129T2 (de) 1991-12-18 2000-06-15 Sun Microsystems Inc Schreibüberlappung mit Verhinderung des Überschreibens
US5285441A (en) * 1992-03-17 1994-02-08 At&T Bell Laboratories Errorless line protection switching in asynchronous transer mode (ATM) communications systems
US5365487A (en) 1992-03-24 1994-11-15 Texas Instruments Incorporated DRAM power management with self-refresh
US5313501A (en) * 1992-06-15 1994-05-17 Digital Equipment Corporation Method and apparatus for deskewing digital data
JP3412839B2 (ja) 1992-07-01 2003-06-03 株式会社東芝 不揮発性半導体メモリ装置
EP0654168B1 (en) 1992-08-10 2001-10-31 Monolithic System Technology, Inc. Fault-tolerant hierarchical bus system
JPH07154381A (ja) * 1993-11-30 1995-06-16 Hitachi Ltd データ転送装置
US5513377A (en) * 1994-06-17 1996-04-30 International Business Machines Corporation Input-output element has self timed interface using a received clock signal to individually phase aligned bits received from a parallel bus
US5507029A (en) * 1995-01-11 1996-04-09 International Business Machines Corporation Method for minimizing the time skew of electrical signals in very large scale integrated circuits
US6728851B1 (en) 1995-07-31 2004-04-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US5960034A (en) 1995-12-01 1999-09-28 Advanced Micro Devices, Inc. Expandable repeater with built-in tree structure arbitration logic
US6151289A (en) 1996-01-22 2000-11-21 T. Squared G, Inc. Multibyte random access mass storage/memory system
JP2924773B2 (ja) 1996-03-28 1999-07-26 日本電気株式会社 位相同期システム
US6018778A (en) 1996-05-03 2000-01-25 Netcell Corporation Disk array controller for reading/writing striped data using a single address counter for synchronously transferring data between data ports and buffer memory
JP3976839B2 (ja) * 1996-07-09 2007-09-19 株式会社ルネサステクノロジ 不揮発性メモリシステムおよび不揮発性半導体メモリ
US5872959A (en) * 1996-09-10 1999-02-16 Lsi Logic Corporation Method and apparatus for parallel high speed data transfer
US5771346A (en) 1996-10-24 1998-06-23 Micron Quantum Devices, Inc. Apparatus and method for detecting over-programming condition in multistate memory device
US6015144A (en) * 1997-04-18 2000-01-18 Fuji Xerox Co., Ltd. Sheet feeder and image forming apparatus
US5974503A (en) 1997-04-25 1999-10-26 Emc Corporation Storage and access of continuous media files indexed as lists of raid stripe sets associated with file names
US5923830A (en) 1997-05-07 1999-07-13 General Dynamics Information Systems, Inc. Non-interrupting power control for fault tolerant computer systems
KR100211123B1 (ko) * 1997-05-23 1999-07-15 윤종용 고속 패킷 스위칭을 위한 다단 상호 연결 망
US6031847A (en) * 1997-07-01 2000-02-29 Silicon Graphics, Inc Method and system for deskewing parallel bus channels
US6370200B1 (en) * 1997-08-04 2002-04-09 Matsushita Electric Industrial Co., Ltd. Delay adjusting device and method for plural transmission lines
US6442644B1 (en) 1997-08-11 2002-08-27 Advanced Memory International, Inc. Memory system having synchronous-link DRAM (SLDRAM) devices and controller
US6226708B1 (en) * 1997-08-18 2001-05-01 Texas Instruments Incorporated Method and system for efficiently programming non-volatile memory
GB2332607B (en) * 1997-08-22 2002-05-01 Richard Weatherley Method of reducing skew in signal carrying cables
EP1016233A4 (en) * 1997-09-19 2000-12-06 Fujitsu Network Communications CONSTANT PHASE CROSS BAR SWITCH
US6157229A (en) * 1997-09-29 2000-12-05 Matsushita Electric Industrial Co., Ltd. Skew compensation device
US5889714A (en) 1997-11-03 1999-03-30 Digital Equipment Corporation Adaptive precharge management for synchronous DRAM
US6009547A (en) 1997-12-03 1999-12-28 International Business Machines Corporation ECC in memory arrays having subsequent insertion of content
EP1036362B1 (en) 1997-12-05 2006-11-15 Intel Corporation Memory system including a memory module having a memory module controller
US7024518B2 (en) 1998-02-13 2006-04-04 Intel Corporation Dual-port buffer-to-memory interface
US6968419B1 (en) 1998-02-13 2005-11-22 Intel Corporation Memory module having a memory module controller controlling memory transactions for a plurality of memory devices
US6336192B1 (en) * 1998-02-16 2002-01-01 Nippon Telegraph And Telephone Corporation Parallel redundancy encoding apparatus
US6105144A (en) * 1998-03-02 2000-08-15 International Business Machines Corporation System and method for alleviating skew in a bus
WO1999046775A2 (en) 1998-03-10 1999-09-16 Rambus, Inc. Performing concurrent refresh and current control operations in a memory subsystem
US6359815B1 (en) * 1998-03-12 2002-03-19 Hitachi, Ltd. Data transmitter
JP3715429B2 (ja) * 1998-04-16 2005-11-09 富士通株式会社 パラレル光送信/光受信モジュール
US6636932B1 (en) * 1998-05-27 2003-10-21 Micron Technology, Inc. Crossbar switch and control for data networks switching
US6134167A (en) 1998-06-04 2000-10-17 Compaq Computer Corporation Reducing power consumption in computer memory
US6356610B1 (en) 1998-06-23 2002-03-12 Vlsi Technology, Inc. System to avoid unstable data transfer between digital systems
US6185654B1 (en) 1998-07-17 2001-02-06 Compaq Computer Corporation Phantom resource memory address mapping system
US6445719B1 (en) 1998-08-28 2002-09-03 Adtran Inc. Method, system and apparatus for reducing synchronization and resynchronization times for systems with pulse stuffing
US6334167B1 (en) 1998-08-31 2001-12-25 International Business Machines Corporation System and method for memory self-timed refresh for reduced power consumption
US6422644B1 (en) * 1998-09-02 2002-07-23 Lear Donnelly Overhead Systems, L.L.C. Crash box component holder
US6611518B1 (en) * 1998-09-18 2003-08-26 Samsung Electronics Co., Ltd. Methods and apparatus for flexible device interface port assignment in a data communications switching system
US6138185A (en) * 1998-10-29 2000-10-24 Mcdata Corporation High performance crossbar switch
JP2000173289A (ja) * 1998-12-10 2000-06-23 Toshiba Corp エラー訂正可能なフラッシュメモリシステム
US6301244B1 (en) * 1998-12-11 2001-10-09 Nortel Networks Limited QoS-oriented one-to-all route selection method for communication networks
US20030001880A1 (en) 2001-04-18 2003-01-02 Parkervision, Inc. Method, system, and computer program product for producing and distributing enhanced media
US6473827B2 (en) * 1998-12-22 2002-10-29 Ncr Corporation Distributed multi-fabric interconnect
US6636993B1 (en) * 1999-02-12 2003-10-21 Fujitsu Limited System and method for automatic deskew across a high speed, parallel interconnection
US6321345B1 (en) 1999-03-01 2001-11-20 Seachange Systems, Inc. Slow response in redundant arrays of inexpensive disks
US6591338B1 (en) 1999-05-03 2003-07-08 3Ware, Inc. Methods and systems for mirrored disk arrays
US6745363B2 (en) 1999-07-30 2004-06-01 Hewlett-Packard Development Company, Lp Early error detection using ECC
JP3573032B2 (ja) * 1999-11-09 2004-10-06 日本電気株式会社 ディスクアレイ装置
US6647027B1 (en) * 1999-11-10 2003-11-11 Lsi Logic Corporation Method and apparatus for multi-channel data delay equalization
JP2001159970A (ja) * 1999-12-03 2001-06-12 Sony Corp 装置間結合装置
US6417713B1 (en) * 1999-12-30 2002-07-09 Silicon Graphics, Inc. Programmable differential delay circuit with fine delay adjustment
US7031420B1 (en) * 1999-12-30 2006-04-18 Silicon Graphics, Inc. System and method for adaptively deskewing parallel data signals relative to a clock
US7266634B2 (en) 2000-01-05 2007-09-04 Rambus Inc. Configurable width buffered module having flyby elements
US20050010737A1 (en) 2000-01-05 2005-01-13 Fred Ware Configurable width buffered module having splitter elements
US6502161B1 (en) 2000-01-05 2002-12-31 Rambus Inc. Memory system including a point-to-point linked memory subsystem
US7356639B2 (en) 2000-01-05 2008-04-08 Rambus Inc. Configurable width buffered module having a bypass circuit
US6425114B1 (en) * 2000-01-31 2002-07-23 Lsi Logic Corporation Systematic skew reduction through buffer resizing
FR2804790B1 (fr) 2000-02-09 2002-04-12 Saint Louis Inst Procede de polarisation d'un materiau ferroelectrique sous forme de cylindre
US7012811B1 (en) 2000-05-10 2006-03-14 Micron Technology, Inc. Method of tuning a multi-path circuit
US6591285B1 (en) * 2000-06-16 2003-07-08 Shuo-Yen Robert Li Running-sum adder networks determined by recursive construction of multi-stage networks
US6961347B1 (en) 2000-06-20 2005-11-01 Hewlett-Packard Development Company, L.P. High-speed interconnection link having automated lane reordering
JP2002007201A (ja) 2000-06-21 2002-01-11 Nec Corp メモリシステム、メモリインターフェース及びメモリチップ
US6446174B1 (en) 2000-07-11 2002-09-03 Intel Corporation Computer system with dram bus
US6518812B1 (en) * 2000-07-20 2003-02-11 Silicon Graphics, Inc. Discrete delay line system and method
JP3758953B2 (ja) * 2000-07-21 2006-03-22 富士通株式会社 スキュー補正装置
US6781984B1 (en) * 2000-08-30 2004-08-24 Ciena Corporation Techniques and architectures for implementing a data skew equalizer for data alignment in a distributed system
US6928571B1 (en) 2000-09-15 2005-08-09 Intel Corporation Digital system of adjusting delays on circuit boards
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
US6369605B1 (en) 2000-09-18 2002-04-09 Intel Corporation Self-terminated driver to prevent signal reflections of transmissions between electronic devices
US6553450B1 (en) 2000-09-18 2003-04-22 Intel Corporation Buffer to multiply memory interface
US6317352B1 (en) 2000-09-18 2001-11-13 Intel Corporation Apparatus for implementing a buffered daisy chain connection between a memory controller and memory modules
US6658509B1 (en) 2000-10-03 2003-12-02 Intel Corporation Multi-tier point-to-point ring memory interface
JP2002117000A (ja) 2000-10-05 2002-04-19 Hitachi Ltd メモリシステムおよび接続部材
JP2002135234A (ja) * 2000-10-20 2002-05-10 Mitsubishi Electric Corp スキュー調整回路
US6934785B2 (en) 2000-12-22 2005-08-23 Micron Technology, Inc. High speed interface with looped bus
US6493250B2 (en) 2000-12-28 2002-12-10 Intel Corporation Multi-tier point-to-point buffered memory interface
US7013361B2 (en) * 2001-01-24 2006-03-14 Grass Valley Group Inc. Routing switcher with variable input/output architecture
US7123660B2 (en) * 2001-02-27 2006-10-17 Jazio, Inc. Method and system for deskewing parallel bus channels to increase data transfer rates
US6882082B2 (en) 2001-03-13 2005-04-19 Micron Technology, Inc. Memory repeater
US6697974B2 (en) * 2001-03-14 2004-02-24 International Business Machines Corporation Method and apparatus for adaptively compensating skews during data transmission on a bus
US6735397B2 (en) * 2001-03-14 2004-05-11 Blaze Network Products, Inc. Skew discovery and compensation for WDM fiber communications systems using 8b10b encoding
US6874097B1 (en) * 2001-06-01 2005-03-29 Maxtor Corporation Timing skew compensation technique for parallel data channels
JP4542286B2 (ja) * 2001-06-06 2010-09-08 富士通株式会社 並列信号自動位相調整回路
US6504848B1 (en) 2001-06-13 2003-01-07 Interdigital Communications Corporation Binary-tree method and system for multiplexing scheduling
US7609695B2 (en) * 2001-06-15 2009-10-27 Industrial Technology Research Institute Optimizing switching element for minimal latency
JP2003041305A (ja) 2001-07-27 2003-02-13 Fuji Photo Film Co Ltd 超微粒子、並びに、その製造方法及び製造装置
JP2003076498A (ja) 2001-09-05 2003-03-14 Hitachi Ltd ディスク記憶装置
TW591838B (en) 2001-09-24 2004-06-11 Micro Star Int Co Ltd Power-off instantaneous voltage protector
US7085950B2 (en) * 2001-09-28 2006-08-01 Koninklijke Philips Electronics N.V. Parallel data communication realignment of data sent in multiple groups
US6938133B2 (en) 2001-09-28 2005-08-30 Hewlett-Packard Development Company, L.P. Memory latency and bandwidth optimizations
US20030084397A1 (en) * 2001-10-31 2003-05-01 Exanet Co. Apparatus and method for a distributed raid
US7065101B2 (en) 2001-11-15 2006-06-20 International Business Machines Corporation Modification of bus protocol packet for serial data synchronization
US7130317B2 (en) * 2001-11-19 2006-10-31 Annadurai Andy P Method and circuit for de-skewing data in a communication system
US6785771B2 (en) 2001-12-04 2004-08-31 International Business Machines Corporation Method, system, and program for destaging data in cache
EP1456963B1 (en) * 2001-12-20 2006-09-13 Bhavik Amin Skew delay compensator
US6690191B2 (en) 2001-12-21 2004-02-10 Sun Microsystems, Inc. Bi-directional output buffer
US6799235B2 (en) 2002-01-02 2004-09-28 Intel Corporation Daisy chain latency reduction
US6625078B2 (en) 2002-02-11 2003-09-23 United Memories, Inc. Look-ahead refresh for an integrated circuit memory
US6998892B1 (en) * 2002-02-13 2006-02-14 Rambus Inc. Method and apparatus for accommodating delay variations among multiple signals
US6871257B2 (en) 2002-02-22 2005-03-22 Sandisk Corporation Pipelined parallel programming operation in a non-volatile memory system
US7110400B2 (en) 2002-04-10 2006-09-19 Integrated Device Technology, Inc. Random access memory architecture and serial interface with continuous packet handling capability
US6996738B2 (en) * 2002-04-15 2006-02-07 Broadcom Corporation Robust and scalable de-skew method for data path skew control
US20030208511A1 (en) 2002-05-02 2003-11-06 Earl Leroy D. Database replication system
US6789165B2 (en) 2002-05-10 2004-09-07 International Business Machines Corporation Data storage array method and system
US7149857B2 (en) 2002-05-14 2006-12-12 Micron Technology, Inc. Out of order DRAM sequencer
US7028200B2 (en) 2002-05-15 2006-04-11 Broadcom Corporation Method and apparatus for adaptive power management of memory subsystem
US7734867B1 (en) 2002-05-17 2010-06-08 Hewlett-Packard Development Company, L.P. Data storage using disk drives in accordance with a schedule of operations
US6983354B2 (en) 2002-05-24 2006-01-03 Micron Technology, Inc. Memory device sequencer and method supporting multiple memory device clock speeds
US7134056B2 (en) 2002-06-04 2006-11-07 Lucent Technologies Inc. High-speed chip-to-chip communication interface with signal trace routing and phase offset detection
KR100463202B1 (ko) 2002-07-02 2004-12-23 삼성전자주식회사 반도체 메모리 장치의 패드 및 주변 회로 레이아웃
US6834023B2 (en) 2002-08-01 2004-12-21 Micron Technology, Inc. Method and apparatus for saving current in a memory device
US6930949B2 (en) 2002-08-26 2005-08-16 Micron Technology, Inc. Power savings in active standby mode
US7551640B1 (en) 2002-09-20 2009-06-23 Cisco Technology, Inc. Method and apparatus for errorless frame timing adjustment
JP3838968B2 (ja) 2002-11-29 2006-10-25 Necインフロンティア株式会社 複数の通信インターフェースを搭載した通信機器、及び無線lanアクセスポイント
US7093076B2 (en) 2002-12-12 2006-08-15 Samsung Electronics, Co., Ltd. Memory system having two-way ring topology and memory device and memory module for ring-topology memory system
US20040153902A1 (en) 2003-01-21 2004-08-05 Nexflash Technologies, Inc. Serial flash integrated circuit having error detection and correction
DE102004014450A1 (de) 2003-03-26 2005-02-10 Infineon Technologies Ag Verfahren zum Messen und Kompensieren von Versatz von Datenübertragungsleitungen
WO2004102403A2 (en) 2003-05-13 2004-11-25 Advanced Micro Devices, Inc. A system including a host connected to a plurality of memory modules via a serial memory interconnect
US20040243769A1 (en) 2003-05-30 2004-12-02 Frame David W. Tree based memory structure
US7386768B2 (en) * 2003-06-05 2008-06-10 Intel Corporation Memory channel with bit lane fail-over
US7200790B2 (en) 2003-07-08 2007-04-03 Sun Microsystems, Inc. Switch level reliable transmission
US6952813B1 (en) * 2003-07-30 2005-10-04 Xilinx, Inc. Method and apparatus for selecting programmable interconnects to reduce clock skew
JP3984206B2 (ja) 2003-09-02 2007-10-03 株式会社東芝 マイクロプロセッサー及び映像音声システム
US7149950B2 (en) 2003-09-12 2006-12-12 Hewlett-Packard Development Company, L.P. Assisted memory device for reading and writing single and multiple units of data
US7085943B2 (en) 2003-09-26 2006-08-01 Freescale Semiconductor, Inc. Method and circuitry for controlling supply voltage in a data processing system
US7668271B2 (en) 2003-09-30 2010-02-23 Rambus Inc. Clock-data recovery (“CDR”) circuit, apparatus and method for variable frequency data
US7433258B2 (en) 2003-10-10 2008-10-07 Datasecure Llc. Posted precharge and multiple open-page RAM architecture
US7320080B2 (en) 2003-10-15 2008-01-15 Intel Corporation Power management over switching fabrics
JP3808863B2 (ja) * 2003-11-21 2006-08-16 株式会社東芝 複数のデータ伝送路を持つシリアルデータ通信方式
JP4486348B2 (ja) * 2003-11-26 2010-06-23 株式会社日立製作所 ドライブの稼働時間を抑止するディスクアレイ
US7913148B2 (en) 2004-03-12 2011-03-22 Nvidia Corporation Disk controller methods and apparatus with improved striping, redundancy operations and interfaces
US7203889B2 (en) * 2004-04-01 2007-04-10 Intel Corporation Error correction for memory
US7213103B2 (en) * 2004-04-22 2007-05-01 Apple Inc. Accessing data storage systems without waiting for read errors
US20050246362A1 (en) 2004-05-03 2005-11-03 Borland Devin P System and method for dynamci log compression in a file system
US20050259692A1 (en) 2004-05-19 2005-11-24 Zerbe Jared L Crosstalk minimization in serial link systems
US7205803B2 (en) * 2004-06-29 2007-04-17 Lsi Logic Corporation High speed fully scaleable, programmable and linear digital delay circuit
CN100407166C (zh) * 2004-07-29 2008-07-30 普安科技股份有限公司 改善数据读取效率的方法及其储存系统
US7668272B1 (en) 2004-10-26 2010-02-23 National Semiconductor Corporation Method and apparatus for data transfer between mesochronous clock domains
US7817767B2 (en) 2004-12-23 2010-10-19 Rambus Inc. Processor-controlled clock-data recovery
US7953921B2 (en) 2004-12-28 2011-05-31 Qualcomm Incorporated Directed auto-refresh synchronization
CN101507145B (zh) 2005-01-21 2013-05-29 Rmi公司 执行不同路由信道级联的系统和方法
US7421598B2 (en) 2005-02-09 2008-09-02 International Business Machines Corporation Dynamic power management via DIMM read operation limiter
CN101872333A (zh) 2005-04-21 2010-10-27 提琴存储器公司 一种互连系统
US7457978B2 (en) 2005-05-09 2008-11-25 Micron Technology, Inc. Adjustable byte lane offset for memory module to reduce skew
KR100663361B1 (ko) * 2005-05-17 2007-01-02 삼성전자주식회사 지연 회로 및 이를 구비한 반도체 장치
US7836204B2 (en) * 2005-06-01 2010-11-16 International Business Machines Corporation Apparatus, system, and method for accessing a preferred path through a storage controller
US7444526B2 (en) 2005-06-16 2008-10-28 International Business Machines Corporation Performance conserving method for reducing power consumption in a server system
US7401246B2 (en) * 2005-06-30 2008-07-15 Intel Corporation Nibble de-skew method, apparatus, and system
JP2007072988A (ja) * 2005-09-09 2007-03-22 Hitachi Ltd ディスクアレイ装置及びデータ移動方法並びにプログラム
JP4745169B2 (ja) 2005-09-16 2011-08-10 株式会社東芝 半導体記憶装置
US9047344B2 (en) 2005-10-17 2015-06-02 International Business Machines Corporation Guaranteeing data and metadata referential integrity in content management archival solutions
US7504822B2 (en) * 2005-10-28 2009-03-17 Teradyne, Inc. Automatic testing equipment instrument card and probe cabling system and apparatus
US7783845B2 (en) 2005-11-14 2010-08-24 Sandisk Corporation Structures for the management of erase operations in non-volatile memories
US7653776B2 (en) * 2005-12-14 2010-01-26 Apple Inc. Method and apparatus for selectively switching IC ports to card slots through the use of three switches per switch group
US20070162516A1 (en) 2005-12-30 2007-07-12 Microsoft Corporation Computing asynchronous transaction log replication progress based on file change notifications
US7440331B2 (en) 2006-06-01 2008-10-21 Sandisk Corporation Verify operation for non-volatile storage using different voltages
US7490189B2 (en) * 2006-06-14 2009-02-10 Sun Microsystems, Inc. Multi-chip switch based on proximity communication
US20080052446A1 (en) * 2006-08-28 2008-02-28 Sandisk Il Ltd. Logical super block mapping for NAND flash memory
US20080059869A1 (en) * 2006-09-01 2008-03-06 The Regents Of The University Of California Low cost, high performance error detection and correction
US7525356B2 (en) * 2006-09-14 2009-04-28 Lsi Corporation Low-power, programmable multi-stage delay cell
US7499317B2 (en) * 2006-10-13 2009-03-03 Sandisk Corporation System for partitioned erase and erase verification in a non-volatile memory to compensate for capacitive coupling
KR101490327B1 (ko) 2006-12-06 2015-02-05 퓨전-아이오, 인크. 뱅크 인터리브를 이용한 솔리드-스테이트 스토리지의 명령 관리 장치, 시스템 및 방법
US7751713B2 (en) * 2007-01-19 2010-07-06 Infinera Corporation Communication network with skew path monitoring and adjustment
US8660020B2 (en) * 2007-01-19 2014-02-25 Infinera Corporation Communication network with skew compensation
US20080320366A1 (en) 2007-06-25 2008-12-25 Lin Jason T Methods of reading nonvolatile memory
US8111837B2 (en) * 2007-06-28 2012-02-07 Apple Inc. Data-driven media management within an electronic device
US8041990B2 (en) * 2007-06-28 2011-10-18 International Business Machines Corporation System and method for error correction and detection in a memory system
US7508715B2 (en) * 2007-07-03 2009-03-24 Sandisk Corporation Coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
US8095763B2 (en) * 2007-10-18 2012-01-10 Datadirect Networks, Inc. Method for reducing latency in a raid memory system while maintaining data integrity
US7688638B2 (en) 2007-12-07 2010-03-30 Sandisk Corporation Faster programming of multi-level non-volatile storage through reduced verify operations
US8175113B2 (en) * 2008-06-30 2012-05-08 Infinera Corporation Communication network with node bypassed co-routed multi-channel traffic

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681338B1 (en) * 2000-06-21 2004-01-20 Rambus, Inc. Method and system for reducing signal skew by switching between multiple signal routing layers

Also Published As

Publication number Publication date
KR20090073195A (ko) 2009-07-02
US20110060857A1 (en) 2011-03-10
CN101611452A (zh) 2009-12-23
US8090973B2 (en) 2012-01-03
EP2076903B1 (en) 2012-10-03
US20090043933A1 (en) 2009-02-12
WO2008051467A1 (en) 2008-05-02
CN101611452B (zh) 2017-07-07
US8028186B2 (en) 2011-09-27
EP2498257B1 (en) 2014-06-18
EP2076903A1 (en) 2009-07-08
US8806262B2 (en) 2014-08-12
US20120079163A1 (en) 2012-03-29
EP2498257A1 (en) 2012-09-12

Similar Documents

Publication Publication Date Title
KR101245096B1 (ko) 상호연결 시스템에서의 스큐 관리
US8726064B2 (en) Interconnection system
US7356639B2 (en) Configurable width buffered module having a bypass circuit
US7266634B2 (en) Configurable width buffered module having flyby elements
US20130042119A1 (en) Interconnection system
KR101457302B1 (ko) 스토리지 장치
US20050010737A1 (en) Configurable width buffered module having splitter elements
KR20120030328A (ko) 설정 가능한 모듈 및 메모리 서브시스템

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151230

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161229

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee