KR20120139789A - 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부 - Google Patents

적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부 Download PDF

Info

Publication number
KR20120139789A
KR20120139789A KR1020127026409A KR20127026409A KR20120139789A KR 20120139789 A KR20120139789 A KR 20120139789A KR 1020127026409 A KR1020127026409 A KR 1020127026409A KR 20127026409 A KR20127026409 A KR 20127026409A KR 20120139789 A KR20120139789 A KR 20120139789A
Authority
KR
South Korea
Prior art keywords
interconnect
master device
coupled
master
link
Prior art date
Application number
KR1020127026409A
Other languages
English (en)
Inventor
펭 왕
Original Assignee
콸콤 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 콸콤 인코포레이티드 filed Critical 콸콤 인코포레이티드
Publication of KR20120139789A publication Critical patent/KR20120139789A/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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • 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
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)
  • Information Transfer Systems (AREA)

Abstract

적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부가 기재된다. 특정한 실시형태에서, 제 1 상호접속부 및 제 1 상호접속부에 커플링된 제 2 상호접속부를 포함하는 시스템이 기재된다. 제 1 상호접속부는 단일 접속을 통해 제 1 마스터 디바이스에 커플링되고, 제 1 상호접속부는 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 커플링된다. 제 2 상호접속부는 메모리 제어기를 통해 메모리에 커플링된다.

Description

적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부{INTERCONNECT COUPLED TO MASTER DEVICE VIA AT LEAST TWO DIFFERENT CONNECTIONS}
본 발명은 일반적으로 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부에 관한 것이다.
상호접속부들을 사용하여 하나 또는 그 초과의 마스터 디바이스들과 하나 또는 그 초과의 메모리 디바이스들 사이에서 통신을 제공하는 통신 시스템에 대해, 상호접속부들 사이의 링크들은 스루풋을 방해하는 잠재적인 병목(bottlenect)일 수도 있다. 하나의 접근법은, 대역폭을 증가시키기 위해 상호접속부들 사이에서 링크들의 수를 증가시키는 것이다. 예를 들어, 듀얼 링크가 단일 링크 대신 상호접속부들 사이에서 사용될 수도 있다. 그러나, 상호접속부들 사이에서 링크들의 수를 증가시키는 것은 상호접속부 라우팅 복잡도를 증가시키고, 상호접속부들에 의해 소비되는 전력 뿐만 아니라 상호접속부들에 의해 취해진 영역을 증가시키며, 타이밍 복잡도를 증가시킨다.
마스터 디바이스들은 2개의 카테고리들, 즉, 높은-스루풋 마스터 디바이스들 및 표준 마스터 디바이스들로 분류된다. 높은-스루풋 마스터 디바이스들은 높은 스루풋을 요구하며, 높은-스루풋 마스터 디바이스와 메모리 디바이스 사이의 상호접속부들을 커플링시키는 단일 링크는 병목을 제공할 수도 있다. 표준 마스터 디바이스들은 낮은 스루풋을 요청하며, 상호접속부들을 커플링시키는 단일 링크는 병목을 제공하지 않는다. 단일 링크는 상호접속부들 각각을 커플링시키는데 사용된다. 예를 들어, 제 1 상호접속부는 단일 링크를 통해 제 2 상호접속부에 커플링될 수도 있다. 각각의 높은-스루풋 마스터 디바이스는 다수의 서브-마스터 디바이스들로 분할되며, 각각의 서브-마스터 디바이스는 상호접속부로의 접속을 갖는다. 높은-스루풋 마스터 디바이스들을 분할하는 것은, 상호접속부들을 커플링시키는 단일 링크로 인한 스루풋 제한들을 완화시킨다.
특정한 실시형태에서, 제 1 상호접속부 및 제 1 상호접속부에 커플링된 제 2 상호접속부를 포함하는 시스템이 기재된다. 제 1 상호접속부는 단일 접속을 통해 제 1 마스터 디바이스에 커플링되고, 제 1 상호접속부는 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 커플링된다. 제 2 상호접속부는 메모리 제어기를 통해 메모리에 커플링된다.
또 다른 특정한 실시형태에서, 단일 접속을 통해 제 1 상호접속부를 제 1 마스터 디바이스에 커플링시키는 단계를 포함하는 방법이 기재된다. 또한, 방법은, 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 제 1 상호접속부를 커플링시키는 단계를 포함한다. 방법은, 제 2 상호접속부를 제 1 상호접속부에 커플링시키는 단계를 더 포함한다. 방법은 메모리 제어기를 통해 제 2 상호접속부를 메모리에 커플링시키는 단계를 더 포함한다.
기재된 실시형태들 중 적어도 하나에 의해 제공되는 하나의 특정한 이점은, 높은-스루풋 마스터 디바이스들을 다수의 서브-마스터 디바이스들로 분할하면서 상호접속부들을 커플링시키기 위해 단일 링크를 사용하는 것이 높은-스루풋 마스터들에 대한 스루풋을 증가시키고, 상호접속부들을 커플링시키는 단일 링크로 인한 잠재적인 성능 손실을 보상한다는 것이다. 상호접속부들을 커플링시키기 위해 단일 링크를 사용하는 것은, 상호접속부 라우팅 복잡도를 감소시키고, 상호접속부들에 의해 취해진 영역을 감소시키고, 상호접속부들에 의해 소비되는 전력을 감소시키며, 타이밍 복잡도를 감소시킨다. 부가적으로, 상호접속부들을 커플링시키는 단일 링크는 상호접속부들을 커플링시키는 다수의 링크들보다 더 높은 주파수에서 구동할 수도 있다. 본 발명의 다른 양상들, 이점들, 및 특성들은 다음의 섹션들: 도면들의 간단한 설명, 상세한 설명, 및 청구항들을 포함하는 전체 명세서의 검토 이후 명백해질 것이다.
도 1은, 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 분산된 컴퓨팅 및 통신 시스템의 제 1 실시형태의 예시적인 블록도이다.
도 2는, 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 분산된 컴퓨팅 및 통신 시스템의 제 2 실시형태의 예시적인 블록도이다.
도 3은 마스터 디바이스를 서브-마스터 디바이스들로 분할하는 제 1 실시형태의 예시적인 블록도이다.
도 4는 마스터 디바이스를 서브-마스터 디바이스들로 분할하는 제 2 실시형태의 예시적인 블록도이다.
도 5는 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 분산된 컴퓨팅 및 통신 시스템의 제 3 실시형태의 예시적인 블록도이다.
도 6은, 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 분산된 컴퓨팅 및 통신 시스템을 형성하는 방법의 예시적인 실시형태의 흐름도이다.
도 7은, 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속을 갖는 모듈을 포함하는 무선 통신 디바이스의 특정한 실시형태의 블록도이다.
도 8은 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부를 이용한 사용을 위한 제조 프로세스를 도시한 데이터 흐름도이다.
본 발명의 특정한 실시형태들은 도면들을 참조하여 후술된다. 설명에서, 공통적인 피처(feature)들은 공통적인 참조 번호들에 의해 지정된다. 도 1을 참조하면, 분산된 컴퓨팅 및 통신 시스템(100)이 도시되어 있다. 분산된 컴퓨팅 및 통신 시스템(100)은 제 1 상호접속부(102) 및 제 2 상호접속부(106)를 포함한다. 제 1 상호접속부(102)는 제 1 마스터 디바이스(108), 제 2 마스터 디바이스(112), 및 대표적인 제 5 마스터 디바이스(116)를 포함하는 다른 마스터 디바이스들에 커플링된다. 제 1 상호접속부(102)는 제 1 접속(110)을 통해 제 1 마스터 디바이스(108)에 커플링되고, 제 2 접속(114)을 통해 제 2 마스터 디바이스(112)에 커플링된다. 제 1 상호접속부(102)는 적어도 2개의 상이한 접속들(118 및 120)을 통해 제 5 마스터 디바이스(116)에 커플링된다. 제 5 마스터 디바이스(116)는 제 5 마스터 디바이스(116) 내에서 제 1 서브-마스터 디바이스(122) 및 제 2 서브-마스터 디바이스(124)를 포함한다. 특정한 실시형태에서, 제 5 마스터 디바이스(116)는 높은 스루풋을 요구하는 높은-스루풋 마스터 디바이스이다. 제 1 마스터 디바이스(108) 및 제 2 마스터 디바이스(112)는, 높은-스루풋 제 5 마스터 디바이스(116) 보다 더 낮은 스루풋을 요청하는 마스터 디바이스들일 수도 있으며, "표준" 마스터 디바이스들로서 지칭된다. 제 2 상호접속부(106)는 도시된 바와 같이, 제 6 마스터 디바이스(126) 및 제 7 마스터 디바이스(128)에 커플링된다. 특정한 실시형태에서, 마스터 디바이스들(108, 112, 116, 126, 및 128)은 프로세서들이다.
제 2 상호접속부(106)는 단일 링크(130)를 통해 제 1 상호접속부(102)에 커플링된다. 제 2 상호접속부(106)는 제 1 메모리 제어기(138)를 통해 제 1 대표적인 메모리 디바이스(134)에 커플링되고, 제 2 메모리 제어기(140)를 통해 제 2 대표적인 메모리 디바이스(136)에 커플링된다. 제 2 상호접속부(106)는 단일 링크(130)에 커플링된 제 1 마스터 포트(142)를 갖는다. 제 2 상호접속부(106)는 제 1 메모리 제어기(138)에 커플링된 제 1 슬레이브 포트(146), 및 제 2 메모리 제어기(140)에 커플링된 제 2 슬레이브 포트(148)를 포함한다. 제 2 상호접속부(106)가 2개의 메모리 제어기들(138 및 140)을 통해 다수의 메모리 디바이스들(134 및 136)에 커플링된 것으로서 도시되지만, 제 2 상호접속부(106)가 2개를 초과하는 대응하는 메모리 제어기들을 통해 2개를 초과하는 메모리 디바이스들에 커플링될 수도 있음을 이해해야 한다. 마스터 디바이스들(108, 112, 및 116)은 단일 링크(130)를 통해 다수의 메모리 디바이스들(134 및 136)에 액세스할 수도 있다. 마스터 디바이스들(126 및 128)은 제 2 상호접속부(106)를 통해 직접 다수의 메모리 디바이스들(134 및 136)에 액세스할 수도 있다.
제 1 상호접속부(102)는 단일 접속(110)을 통해 제 1 마스터 디바이스(108)에 커플링된다. 제 1 상호접속부(102)는 적어도 2개의 상이한 접속들(118 및 120)을 통해 제 5 마스터 디바이스(116)에 커플링된다. 2개의 접속들(118 및 120)만이 도시되어 있지만, 제 1 상호접속부(102)가 2개를 초과하는 접속들을 통해 마스터 디바이스들 중 하나 또는 그 초과에 커플링될 수도 있음을 이해해야 한다. 제 5 마스터 디바이스(116)는 제 1 마스터 디바이스(108)보다 더 높은 스루풋을 가질 수도 있다. 따라서, 다수의 상이한 접속들은 제 5 마스터 디바이스(116) 및 제 1 상호접속(102)에 접속하지만, 단일 접속만이 제 1 마스터 디바이스(108) 및 제 1 상호접속부(102)에 접속한다. 또한, 제 3 마스터 디바이스(미도시) 및 제 4 마스터 디바이스(미도시) 각각은, 단일 접속(미도시)을 통해 제 1 상호접속부(102)에 커플링될 수도 있다. 제 1 상호접속부(102)에 5개의 마스터 디바이스들을 커플링시키는 6개의 접속들이 존재할 수도 있다.
단일 링크(130)를 통한 주어진 마스터 디바이스의 이론적인 최대 스루풋은, 주어진 마스터 디바이스에 할당된 단일 링크(130) 상의 시간 슬롯들의 일부(fraction)와 단일 링크(130)의 버스 주파수와의 곱과 동일하다. 예를 들어, 메모리 디바이스(134)에 액세스하기 위한 것과 같이, 단일 링크(130)를 통한 제 1 마스터 디바이스(108)의 이론적인 최대 스루풋은, 5개의 마스터 디바이스들을 제 1 상호접속부(102)에 커플링시키는 6개의 접속들 사이에서 단일 링크(130) 상의 시간 슬롯들이 동등하게 분배될 경우, 단일 링크(130)의 버스 주파수의 1/6 배와 동일하다. 유사하게, 단일 링크(130)를 통한 제 2 마스터 디바이스(112)의 이론적인 최대 스루풋은, 단일 링크(130)의 버스 주파수의 1/6 배와 동일하다. 그러나, 단일 링크(130)를 통한 제 5 마스터 디바이스(116)의 이론적인 최대 스루풋은, 제 5 마스터 디바이스(116)가 2개의 상이한 접속들(118 및 120)을 통해 제 1 상호접속부(102)에 커플링되기 때문에, 단일 링크(130)의 버스 주파수의 2/6 배와 동일하다. 따라서, 단일 링크(130)를 통한 제 5 마스터 디바이스(116)의 이론적인 최대 스루풋은, 단일 링크(130)를 통한 제 1 마스터 디바이스(108) 또는 제 2 마스터 디바이스(112) 중 어느 하나의 이론적인 최대 스루풋의 2배이다.
제 5 마스터 디바이스(116)가 단일 접속만을 통해 제 1 상호접속부(102)에 커플링되었다면, 단일 링크(130)를 통한 모든 5개의 마스터 디바이스들의 이론적인 최대 스루풋은, 5개의 마스터 디바이스들을 제 1 상호접속부(102)에 커플링시키는 5개의 접속들 사이에 단일 링크(130) 상의 시간 슬롯들이 동등하게 분배될 것이기 때문에, 단일 링크(130)의 버스 주파수의 1/5 배와 동일할 것이다. 제 5 마스터 디바이스(116)를 제 1 상호접속부(102)에 커플링시키는 여분의 접속을 부가하는 것은, 단일 링크(130)를 통한 제 5 마스터 디바이스(116)의 이론적인 최대 스루풋을, 단일 링크(130)의 버스 주파수의 1/5 배로부터 단일 링크(130)의 버스 주파수의 2/6 배로 증가시킨다.
대안적으로, 도 5에 도시되고 더 상세히 후술될 바와 같이, 제 2 상호접속부(106)에 제 1 상호접속부(102)를 커플링시키는 또 다른 링크를 부가하는 것은, 모든 5개의 마스터 디바이스들의 이론적인 최대 스루풋을 2배가 되게 할 것이다. 예를 들어, 듀얼 링크들을 통한 제 5 마스터 디바이스(116)의 이론적인 최대 스루풋은, 제 5 마스터 디바이스(116)가 단일 접속만을 통해 제 1 상호접속부(102)에 커플링되었다면, (듀얼 링크들 양자의 버스 주파수가 동일하다고 가정하면) 듀얼 링크들 중 어느 하나의 버스 주파수의 2/5배가 될 것이다. 그러나, 상호접속부들 사이의 링크들의 수를 증가시키는 것은, 상호접속부 라우팅 복잡도를 증가시키고, 상호접속부들에 의해 소비되는 전력 뿐만 아니라 상호접속부들에 의해 취해진 영역을 증가시키며, 또한 타이밍 복잡도를 증가시킨다. 예를 들어, 듀얼 링크 아키텍처의 라우팅 복잡도는, 제 5 마스터 디바이스(116)가 단일 접속만을 통해 제 1 상호접속부(102)에 커플링되었다면, 5x2가 될 것이다. 이와 대조적으로, 단일 링크(130)를 통한 제 5 마스터 디바이스(116)의 이론적인 최대 스루풋은 단일 링크(130)의 버스 주파수의 2/6 배가 되지만, 도 1에 도시된 단일 링크 아키텍처의 라우팅 복잡도는 단지 6x1이 되며, 제 5 마스터 디바이스(116)는 2개의 상이한 접속들(118 및 120)을 통해 제 1 상호접속부(102)에 커플링된다. 부가적으로, 단일 링크(130)는 타이밍 복잡도로 인해 듀얼 링크들 중 어느 하나보다 더 높은 버스 주파수에서 구동하도록 구성될 수도 있다.
즉, 도 1에 도시된 단일 링크 아키텍처는, 제 5 마스터 디바이스(116)가 단일 접속만을 통해 제 1 상호접속부(102)에 커플링되는 곳에 있을 듀얼 링크 아키텍처의 이론적인 최대 스루풋과 거의 동일한 제 5 마스터 디바이스(116)에 대한 이론적인 최대 스루풋을 제공하며, 하나의 몇몇 링크가 제 1 상호접속부(102) 및 제 2 상호접속부(106)를 커플링시킨다. 제 1 상호접속부(102)에 제 5 마스터 디바이스(116)를 커플링시키는 접속들의 수를 증가시키는 것은, 제 2 상호접속부(106)에 제 1 상호접속부(102)를 커플링시키는 링크들의 수의 감소를 가능하게 할 수도 있으면서, 제 5 마스터 디바이스(116)의 높은-스루풋 요구를 여전히 충족시킨다. 특정한 실시형태에서, 제 2 상호접속부(106)는, 제 1 상호접속부(102)가 단일 접속을 통해 제 5 마스터 디바이스(116)에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 제 1 상호접속부(102)에 커플링된다. 제 5 마스터 디바이스(116)가 단일 접속만을 통해 제 1 상호접속부(102)에 커플링되었다면, 제 5 마스터 디바이스(116)의 높은-스루풋 요구는 듀얼 링크 아키텍처를 사용하여 충족되어야 할 것이며, 여기서, 제 2 상호접속부(106)는 2개의 링크들을 통해 제 1 상호접속부(102)에 커플링된다. 2개의 상이한 접속들(118 및 120)을 통해 제 1 상호접속부(102)에 커플링된 제 5 마스터 디바이스(116)에 관해, 제 5 마스터 디바이스(116)의 높은-스루풋 요구는 도 1에 도시된 단일 링크 아키텍처를 사용하여 충족될 수도 있으며, 여기서, 제 2 상호접속부(106)는 하나의 링크를 통해 제 1 상호접속부(102)에 커플링된다.
도 2에 따르면, 분산된 컴퓨팅 및 통신 시스템(200)의 또 다른 특정한 실시형태가 도시되어 있다. 분산된 컴퓨팅 및 통신 시스템(200)은 제 1 상호접속부(202) 및 제 2 상호접속부(206)를 포함한다. 제 2 상호접속부(206)는 제 1 링크(230)를 통해 제 1 상호접속부(202)에 커플링된다. 제 1 상호접속부(202)는, 대응하는 복수의 마스터 디바이스들에 커플링된 복수의 마스터 포트들을 포함한다. 예를 들어, 제 1 상호접속부(202)의 제 1 마스터 포트(250)는 제 1 대표적인 마스터 디바이스(208)에 커플링된다. 제 1 상호접속부(202)의 제 2 마스터 포트(252)는 제 2 대표적인 마스터 디바이스(212)에 커플링된다. 제 1 상호접속부(202)는 제 1 접속(210)을 통해 제 1 마스터 디바이스(208)에 커플링되며, 제 2 접속(214)을 통해 제 2 마스터 디바이스에 커플링된다. 유사하게, 제 1 상호접속부(202)는 복수의 상이한 접속들(218, 220, 및 244)을 통해 마스터 디바이스(216)에 커플링될 수도 있다. 복수의 상이한 접속들(218, 220, 및 224)은 제 1 상호접속부(202)의 복수의 대응하는 마스터 포트들(254, 256, 및 258)에 커플링되며, 마스터 디바이스(216) 내의 복수의 서브-마스터 디바이스들(222, 224, 및 242)에 커플링된다. 제 2 상호접속부(206)는 제 6 마스터 디바이스(226)에 커플링되고, 제 7 마스터 디바이스(228)에 커플링된다.
제 2 상호접속부(206)는 다수의 메모리 디바이스들에 슬레이브 포트들을 통해 커플링된다. 예를 들어, 제 2 상호접속부(206)는 제 1 슬레이브 포트(246) 및 제 1 메모리 제어기(238)를 통해 제 1 메모리 디바이스(234)에 커플링된다. 또 다른 예로서, 제 2 상호접속부(206)는 제 2 슬레이브 포트(248) 및 제 2 메모리 제어기(240)를 통해 제 2 메모리 디바이스(236)에 커플링될 수도 있다.
도 2의 특정한 실시형태에서, 제 5 마스터 디바이스(216)는 복수의 서브-마스터 디바이스들(222, 224, 및 242)을 포함하며, 제 1 마스터 디바이스(208) 또는 제 2 마스터 디바이스(212) 중 어느 하나보다 더 높은 대역폭 및 스루풋을 갖는다. 예를 들어, 제 5 마스터 디바이스(216)는 높은-스루풋 마스터 디바이스일 수도 있고, 제 1 마스터 디바이스(208) 및 제 2 마스터 디바이스(212)는 표준 마스터 디바이스들일 수도 있다. 제 5 마스터 디바이스(216)는 복수의 상이한 접속들(218, 220, 및 244)을 통해 제 1 상호접속부(202)에 커플링된다. 도 2에 도시된 단일 링크 아키텍처에 관해, 제 2 상호접속부(206)는 제 1 링크(230)를 통해 제 1 상호접속부(202)에 커플링된다. 제 2 상호접속부(206)는, 도 1에 관해 상술된 바와 같이, 제 5 마스터 디바이스(216)의 높은-스루풋 요구들로 인해 제 1 상호접속부(206)가 단일 접속을 통해 제 5 마스터 디바이스(216)에 커플링되었던 경우보다 더 적은 링크들을 통해 제 1 상호접속부(202)에 커플링된다. 또한, 제 3 마스터 디바이스(미도시) 및 제 4 마스터 디바이스(미도시) 각각은 단일 접속(미도시)을 통해 제 1 상호접속부(202)에 커플링될 수도 있다. 5개의 마스터 디바이스들을 제 1 상호접속부(202)에 커플링시키는 7개의 접속들이 존재할 수도 있다.
제 1 링크(230)를 통한 주어진 마스터 디바이스의 이론적인 최대 스루풋은, 주어진 마스터 디바이스에 할당된 제 1 링크(230) 상의 시간 슬롯들의 일부와 제 1 링크(230)의 버스 주파수와의 곱과 동일하다. 예를 들어, 제 1 링크(230)를 통한 제 1 마스터 디바이스(208)의 이론적인 최대 스루풋은, 제 1 상호접속부(202)에 제 1 마스터 디바이스들을 커플링시키는 7개의 접속들 사이에 제 1 링크(230) 상의 시간 슬롯들이 동등하게 분배될 경우, 제 1 링크(230)의 버스 주파수의 1/7 배와 동일할 수도 있다. 유사하게, 제 1 링크(230)를 통한 제 2 마스터 디바이스(212)의 이론적인 최대 스루풋은 제 1 링크(230)의 버스 주파수의 1/7 배와 동일할 수도 있다. 그러나, 제 1 링크(230)를 통한 제 5 마스터 디바이스(216)의 이론적인 최대 스루풋은, 제 5 마스터 디바이스(216)가 3개의 상이한 접속들(218, 220, 및 244)을 통해 제 1 상호접속부(102)에 커플링되기 때문에, 제 1 링크(230)의 버스 주파수의 3/7 배와 동일하다. 따라서, 제 1 링크(230)를 통한 제 5 마스터 디바이스(216)의 이론적인 최대 스루풋은, 제 1 링크(230)를 통한 제 1 마스터 디바이스(208) 또는 제 2 마스터 디바이스(212) 중 어느 하나의 이론적인 최대 스루풋의 3배이다.
제 5 마스터 디바이스(216)가 단일 접속만을 통해 제 1 상호접속부(202)에 커플링되었다면, 제 1 링크(230)를 통한 모든 5개의 마스터 디바이스들의 이론적인 최대 스루풋은, 제 1 링크(230) 상의 시간 슬롯들이 제 1 마스터 디바이스들을 제 1 상호접속부(202)에 커플링시키는 5개의 접속들 사이에서 동등하게 분배될 경우, 제 1 링크(230)의 버스 주파수의 1/5 배와 동일할 것이다. 제 5 마스터 디바이스(216)를 제 1 상호접속부(202)에 커플링시키는 여분의 접속들을 부가하는 것은, 제 1 링크(230)를 통한 제 5 마스터 디바이스(216)의 이론적인 최대 스루풋을, 제 1 링크(230)의 버스 주파수의 1/5 배로부터 제 1 링크(230)의 버스 주파수의 3/7 배로 증가시킨다.
대안적으로, 도 5에 도시되고 더 상세히 후술될 바와 같이, 제 2 상호접속부(206)에 제 1 상호접속부(202)를 커플링시키는 또 다른 링크를 부가하는 것은, 모든 5개의 마스터 디바이스들의 이론적인 최대 스루풋을 2배가 되게 할 것이다. 예를 들어, 듀얼 링크들을 통한 제 5 마스터 디바이스(216)의 이론적인 최대 스루풋은, 제 5 마스터 디바이스(216)가 단일 접속만을 통해 제 1 상호접속부(202)에 커플링되었다면, (듀얼 링크들 양자의 버스 주파수가 동일하다고 가정하면) 듀얼 링크들 중 어느 하나의 버스 주파수의 2/5배가 될 것이다. 그러나, 상호접속부들 사이의 링크들의 수를 증가시키는 것은, 상호접속부 라우팅 복잡도를 증가시키고, 상호접속부들에 의해 소비되는 전력 뿐만 아니라 상호접속부들에 의해 취해진 영역을 증가시키며, 또한 타이밍 복잡도를 증가시킨다. 예를 들어, 듀얼 링크 아키텍처의 라우팅 복잡도는, 제 5 마스터 디바이스(216)가 단일 접속만을 통해 제 1 상호접속부(202)에 커플링되었다면, 5x2가 될 것이다. 이와 대조적으로, 제 1 링크(230)를 통한 제 5 마스터 디바이스(216)의 이론적인 최대 스루풋은 제 1 링크(230)의 버스 주파수의 3/7 배가 되지만, 도 2에 도시된 단일 링크 아키텍처의 라우팅 복잡도는 단지 7x1이 되며, 제 5 마스터 디바이스(216)는 3개의 상이한 접속들(218, 220, 및 244)을 통해 제 1 상호접속부(202)에 커플링된다. 부가적으로, 제 1 링크(230)는 타이밍 복잡도로 인해 듀얼 링크들 중 어느 하나보다 더 높은 버스 주파수에서 구동할 수도 있다.
따라서, 도 2에 도시된 단일 링크 아키텍처는, 제 5 마스터 디바이스(216)가 단일 접속만을 통해 제 1 상호접속부(202)에 커플링되는 곳에 있을 듀얼 링크 아키텍처보다 더 큰 제 5 마스터 디바이스(216)에 대한 이론적인 최대 스루풋을 제공하며, 하나의 몇몇 링크가 제 1 상호접속부(202) 및 제 2 상호접속부(206)를 커플링시킨다. 제 1 상호접속부(202)에 제 5 마스터 디바이스(216)를 커플링시키는 접속들의 수를 증가시키는 것은, 제 2 상호접속부(206)에 제 1 상호접속부(202)를 커플링시키는 링크들의 수의 감소를 가능하게 할 수도 있으면서, 제 5 마스터 디바이스(216)의 높은-스루풋 요구를 여전히 충족시킨다. 특정한 실시형태에서, 제 2 상호접속부(206)는, 제 1 상호접속부(202)가 단일 접속을 통해 제 5 마스터 디바이스(216)에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 제 1 상호접속부(202)에 커플링된다. 제 5 마스터 디바이스(216)가 단일 접속만을 통해 제 1 상호접속부(202)에 커플링되었다면, 제 5 마스터 디바이스(216)의 높은-스루풋 요구는 듀얼 링크 아키텍처를 사용하여 충족되어야 할 것이며, 여기서, 제 2 상호접속부(206)는 2개의 링크들을 통해 제 1 상호접속부(202)에 커플링된다. 3개의 상이한 접속들(218, 220, 및 244)을 통해 제 1 상호접속부(202)에 커플링된 제 5 마스터 디바이스(216)에 관해, 제 5 마스터 디바이스(216)의 높은-스루풋 요구는 도 2에 도시된 단일 링크 아키텍처를 사용하여 충족될 수도 있으며, 여기서, 제 2 상호접속부(206)는 하나의 링크를 통해 제 1 상호접속부(202)에 커플링된다.
도 3을 참조하면, 대표적인 마스터 디바이스를 분할하는 방법(300)의 예시적인 실시형태가 도시되어 있다. 대표적인 마스터 디바이스(302)는 메모리 디바이스에 통신될 수도 있는 데이터 요청들을 행하는 것과 같은 수행될 복수의 태스크들을 포함한다. 예를 들어, 마스터 디바이스(302)는 수행될 대표적인 태스크들 {T1, T2, T3, ...}을 가질 수도 있다. 마스터 디바이스(302)는, 도 1의 제 5 마스터 디바이스(116) 및 도 2의 제 5 마스터 디바이스(216)와 같은 업데이트된 마스터 디바이스(304)를 생성하도록 분할될 수도 있다. 업데이트된 마스터 디바이스(304)는 제 1 서브-마스터 디바이스(306) 및 제 2 서브-마스터 디바이스(308)를 포함한다. 제 1 서브-마스터 디바이스(306)는 복수의 홀수 태스크들 {T1, T3, T5, ...}을 할당받고, 제 2 서브-마스터 디바이스(308)는 복수의 짝수 태스크들 {T2, T4, T6, ...}을 할당받는다. 따라서, 업데이트된 마스터 디바이스(304)는 서브-마스터 디바이스들(306 및 308)을 포함하며, 그 서브-마스터 디바이스들은 차례로, 마스터 디바이스(302)의 태스크들의 각각의 부분들, 예를 들어, 각각의 데이터 요청들을 다른 디바이스들에 전송하는 것을 수행한다.
도 4를 참조하면, 대표적인 마스터 디바이스를 분할하는 방법(400)의 또 다른 예시적인 실시형태가 도시되어 있다. 대표적인 마스터 디바이스(402)는 메모리 디바이스에 통신될 수도 있는 데이터 요청들을 행하는 것과 같은 수행될 복수의 태스크들을 포함한다. 예를 들어, 마스터 디바이스(402)는 수행될 대표적인 태스크들 {T1, T2, T3, ...}을 가질 수도 있다. 마스터 디바이스(402)는, 도 1의 제 5 마스터 디바이스(116) 및 도 2의 제 5 마스터 디바이스(216)와 같은 업데이트된 마스터 디바이스(404)를 생성하도록 분할될 수도 있다. 업데이트된 마스터 디바이스(404)는 제 1 서브-마스터 디바이스(406), 제 2 서브-마스터 디바이스(408), 및 제 3 서브-마스터 디바이스(410)를 포함한다. 제 1 서브-마스터 디바이스(406)는 제 1 복수의 태스크들 {T1, T4, T7, ...}을 할당받고, 제 2 서브-마스터(408)는 제 2 복수의 태스크들 {T2, T5, T8, ...}을 할당받으며, 제 3 서브-마스터(410)는 제 3 복수의 태스크들 {T3, T6, T9, ...}을 할당받는다. 따라서, 업데이트된 마스터 디바이스(404)는 서브-마스터 디바이스들(406, 408, 및 410)을 포함하며, 그 서브-마스터 디바이스들은 차례로, 마스터 디바이스(402)의 태스크들의 각각의 부분들, 예를 들어, 각각의 데이터 요청들을 다른 디바이스들에 전송하는 것을 수행한다.
특정한 실시형태에서, 마스터 디바이스(402)는 프로세서이며, 수행될 대표적인 태스크들 {T1, T2, T3, ...}은 프로세싱 요청들이다. 따라서, 프로세싱 요청들은 도 4에 도시된 바와 같이, 서브-마스터 디바이스들(406, 408, 및 410)의 각각 사이에서 분할될 수도 있다. 특정한 예시적인 실시형태에서, 서브-마스터 디바이스들(406, 408, 및 410)의 각각은 상호접속 디바이스로의 전용 접속을 통한 통신을 위해 특정한 마스터 포트를 할당받을 수도 있다. 예를 들어, 제 1 서브-마스터 디바이스(406)는 제 1 접속(218)을 통해 도 2의 제 1 상호접속부(202)에 접속될 수도 있고, 제 2 서브-마스터 디바이스(408)는 제 2 접속(220)을 통해 제 1 상호접속부(202)에 접속될 수도 있으며, 제 3 서브-마스터 디바이스(410)는 제 3 접속(244)을 통해 제 1 상호접속부(202)에 접속될 수도 있다. 분할 방법들(300 및 400)은 임의의 수 N의 서브-마스터 디바이스들에 일반화될 수도 있으며, 여기서, N은 1보다 큰 정수이다.
도 5를 참조하면, 분산된 컴퓨팅 및 통신 시스템(500)의 또 다른 특정한 실시형태가 도시되어 있다. 분산된 컴퓨팅 및 통신 시스템(500)은 제 1 상호접속부(502) 및 제 2 상호접속부(506)를 포함한다. 제 1 상호접속부(502)는 제 1 마스터 디바이스(508), 제 2 마스터 디바이스(512), 및 대표적인 제 5 마스터 디바이스(542)를 포함하는 다른 마스터 디바이스들에 커플링된다. 제 1 상호접속부(502)는, 제 1 접속(510)을 통해 제 1 마스터 디바이스(508)에 커플링되고, 제 2 접속(514)을 통해 제 2 마스터 디바이스(512)에 커플링된다. 제 1 상호접속부(502)는 적어도 2개의 상이한 접속들(544 및 520)을 통해 제 5 마스터 디바이스(542)에 커플링된다. 제 5 마스터 디바이스(542)는 제 5 마스터 디바이스(542) 내에 제 1 서브-마스터 디바이스(522) 및 제 2 서브-마스터 디바이스(524)를 포함한다. 특정한 실시형태에서, 제 5 마스터 디바이스(542)는 높은 스루풋을 요구하는 높은-스루풋 마스터 디바이스이다. 제 1 마스터 디바이스(508) 및 제 2 마스터 디바이스(512)는 더 낮은 스루풋을 요청하는 표준 마스터 디바이스들일 수도 있다. 제 2 상호접속부(506)는 도시된 바와 같이, 제 6 마스터 디바이스(526) 및 제 7 마스터 디바이스(528)에 커플링된다.
제 2 상호접속부(506)는 듀얼 링크들(530 및 516)을 통해 제 1 상호접속부(502)에 커플링된다. 제 2 상호접속부(506)는 제 1 메모리 제어기(538)를 통해 제 1 대표적인 메모리 디바이스(534)에 커플링되고, 제 2 메모리 제어기(540)를 통해 제 2 대표적인 메모리 디바이스(536)에 커플링된다.
도 5의 특정한 실시형태에서, 제 5 마스터 디바이스(542)는 복수의 서브-마스터 디바이스들(522 및 524)을 포함하며, 제 1 마스터 디바이스(508) 또는 제 2 마스터 디바이스(512) 중 어느 하나보다 더 높은 대역폭 및 스루풋을 갖는다. 예를 들어, 제 5 마스터 디바이스(542)는 높은-스루풋 마스터 디바이스일 수도 있고, 제 1 마스터 디바이스(508) 및 제 2 마스터 디바이스(512)는 표준 마스터 디바이스들일 수도 있다. 제 5 마스터 디바이스(542)는 복수의 상이한 접속들(544 및 520)을 통해 제 1 상호접속부(502)에 커플링된다. 도 5에 도시된 듀얼 링크 아키텍처에 관해, 제 2 상호접속부(506)는 제 1 링크(530) 및 제 2 링크(516)를 통해 제 1 상호접속부(502)에 커플링된다. 제 2 상호접속부(506)는, 도 1에 관해 상술된 바와 같이, 제 5 마스터 디바이스(542)의 높은-스루풋 요구들로 인해 제 1 상호접속부(506)가 단일 접속을 통해 제 5 마스터 디바이스(542)에 커플링되었던 경우보다 더 적은 링크들을 통해 제 1 상호접속부(502)에 커플링된다. 또한, 제 3 마스터 디바이스(미도시) 및 제 4 마스터 디바이스(미도시) 각각은 단일 접속(미도시)을 통해 제 1 상호접속부(502)에 커플링될 수도 있다. 5개의 마스터 디바이스들을 제 1 상호접속부(502)에 커플링시키는 6개의 접속들이 존재할 수도 있다.
제 1 링크(530)를 통한 주어진 마스터 디바이스의 이론적인 최대 스루풋은, 주어진 마스터 디바이스에 할당된 제 1 링크(530) 상의 시간 슬롯들의 일부와 제 1 링크(530)의 버스 주파수와의 곱과 동일하다. 예를 들어, 제 1 링크(530)를 통한 제 1 마스터 디바이스(508)의 이론적인 최대 스루풋은, 제 1 상호접속부(502)에 5개의 마스터 디바이스들을 커플링시키는 6개의 접속들 사이에 제 1 링크(530) 상의 시간 슬롯들이 동등하게 분배되기 때문에, 제 1 링크(530)의 버스 주파수의 1/6 배와 동일하다. 유사하게, 제 1 링크(530)를 통한 제 2 마스터 디바이스(512)의 이론적인 최대 스루풋은 제 1 링크(530)의 버스 주파수의 1/6 배와 동일하다. 그러나, 제 1 링크(530)를 통한 제 5 마스터 디바이스(542)의 이론적인 최대 스루풋은, 제 5 마스터 디바이스(542)가 2개의 상이한 접속들(544 및 520)을 통해 제 1 상호접속부(502)에 커플링되기 때문에, 제 1 링크(530)의 버스 주파수의 2/6 배와 동일하다. 따라서, 제 1 링크(530)를 통한 제 5 마스터 디바이스(542)의 이론적인 최대 스루풋은, 제 1 링크(530)를 통한 제 1 마스터 디바이스(508) 또는 제 2 마스터 디바이스(512) 중 어느 하나의 이론적인 최대 스루풋의 2배이다.
제 5 마스터 디바이스(542)가 단일 접속만을 통해 제 1 상호접속부(502)에 커플링되었다면, 제 1 링크(530)를 통한 모든 5개의 마스터 디바이스들의 이론적인 최대 스루풋은, 제 1 링크(530) 상의 시간 슬롯들이 5개의 마스터 디바이스들을 제 1 상호접속부(502)에 커플링시키는 5개의 접속들 사이에서 동등하게 분배될 것이기 때문에, 제 1 링크(530)의 버스 주파수의 1/5 배와 동일할 것이다. 제 5 마스터 디바이스(542)를 제 1 상호접속부(502)에 커플링시키는 여분의 접속들을 부가하는 것은, 제 1 링크(530)를 통한 제 5 마스터 디바이스(542)의 이론적인 최대 스루풋을, 제 1 링크(530)의 버스 주파수의 1/5 배로부터 제 1 링크(530)의 버스 주파수의 2/6 배로 증가시킨다.
대안적으로, 제 2 상호접속부(506)에 제 1 상호접속부(502)를 커플링시키는 제 3 링크를 부가하는 것은, 모든 5개의 마스터 디바이스들의 이론적인 최대 스루풋을 3배가 되게 할 것이다. 예를 들어, 트리플 링크들을 통한 제 5 마스터 디바이스(542)의 이론적인 최대 스루풋은, 제 5 마스터 디바이스(542)가 단일 접속만을 통해 제 1 상호접속부(502)에 커플링되었다면, (트리플 링크들 모두의 버스 주파수가 동일하다고 가정하면) 트리플 링크들 중 임의의 링크의 버스 주파수의 3/5배가 될 것이다. 그러나, 상호접속부들 사이의 링크들의 수를 증가시키는 것은, 상호접속부 라우팅 복잡도를 증가시키고, 상호접속부들에 의해 소비되는 전력 뿐만 아니라 상호접속부들에 의해 취해진 영역을 증가시키며, 또한 타이밍 복잡도를 증가시킨다. 예를 들어, 트리플 링크 아키텍처의 라우팅 복잡도는, 제 5 마스터 디바이스(542)가 단일 접속만을 통해 제 1 상호접속부(502)에 커플링되었다면, 5x3이 될 것이다. 이와 대조적으로, 제 1 링크(530) 및 제 2 링크(516)를 통한 제 5 마스터 디바이스(542)의 이론적인 최대 스루풋은, (제 1 링크(530)의 버스 주파수가 제 2 링크(516)의 버스 주파수와 동일하다고 가정하면) 제 1 링크(530)의 버스 주파수의 4/6 배가 되지만, 도 5에 도시된 듀얼 링크 아키텍처의 라우팅 복잡도는 단지 6x2가 되며, 제 5 마스터 디바이스(542)는 2개의 상이한 접속들(544 및 520)을 통해 제 1 상호접속부(502)에 커플링된다. 부가적으로, 제 1 링크(530) 및 제 2 링크(516)는 타이밍 복잡도로 인해 트리플 링크들 중 임의의 링크보다 더 높은 버스 주파수들에서 구동할 수도 있다.
따라서, 도 5에 도시된 듀얼 링크 아키텍처는 트리플 링크 아키텍처보다 더 큰 제 5 마스터 디바이스(542)에 대한 이론적인 최대 스루풋을 제공하며, 여기서, 제 5 마스터 디바이스(542)는 단일 접속만을 통해 제 1 상호접속부(502)에 커플링되지만, 하나의 몇몇 링크가 제 1 상호접속부(502) 및 제 2 상호접속부(506)를 커플링시킨다. 제 1 상호접속부(502)에 제 5 마스터 디바이스(542)를 커플링시키는 접속들의 수를 증가시키는 것은, 제 2 상호접속부(506)에 제 1 상호접속부(502)를 커플링시키는 링크들의 수의 감소를 가능하게 할 수도 있으면서, 제 5 마스터 디바이스(542)의 높은-스루풋 요구를 여전히 충족시킨다. 특정한 실시형태에서, 제 2 상호접속부(506)는, 제 1 상호접속부(502)가 단일 접속을 통해 제 5 마스터 디바이스(542)에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 제 1 상호접속부(502)에 커플링된다. 제 5 마스터 디바이스(542)가 단일 접속만을 통해 제 1 상호접속부(502)에 커플링되었다면, 제 5 마스터 디바이스(542)의 높은-스루풋 요구는 트리플 링크 아키텍처를 사용하여 충족되어야 할 것이며, 여기서, 제 2 상호접속부(506)는 3개의 링크들을 통해 제 1 상호접속부(502)에 커플링된다. 2개의 상이한 접속들(518 및 520)을 통해 제 1 상호접속부(502)에 커플링된 제 5 마스터 디바이스(542)에 관해, 제 5 마스터 디바이스(542)의 높은-스루풋 요구는 도 5에 도시된 듀얼 링크 아키텍처를 사용하여 충족될 수도 있으며, 여기서, 제 2 상호접속부(506)는 2개의 링크들을 통해 제 1 상호접속부(502)에 커플링된다.
도 1, 도 2, 및 도 5가 제 1 상호접속부(102, 202, 및 502)에 커플링된 5개의 마스터 디바이스들 및 제 2 상호접속부(106, 206, 및 506)에 커플링된 2개의 마스터 디바이스들을 도시하지만, 임의의 수의 마스터 디바이스들이 제 1 상호접속부(102, 202, 및 502)에 커플링될 수도 있고, 임의의 수의 마스터 디바이스들이 제 2 상호접속부(106, 206, 및 506)에 커플링될 수도 있다. 도 6을 참조하면, 마스터 디바이스들과 메모리 디바이스들 사이에 상호접속부들을 제공하는 방법(600)의 특정한 실시형태가 도시되어 있다. 방법(600)은 (602)에서, 단일 접속을 통해 제 1 상호접속부를 제 1 마스터 디바이스에 커플링시키는 단계를 포함한다. 예를 들어, 도 1의 제 1 상호접속부(102)는 단일 접속(110)을 통해 제 1 마스터 디바이스(108)에 커플링될 수도 있다. 유사하게, 도 2의 제 1 상호접속부(202)는 단일 접속(210)을 통해 제 1 마스터 디바이스(208)에 커플링될 수도 있다. 유사하게, 도 5의 제 1 상호접속부(502)는 단일 접속(510)을 통해 제 1 마스터 디바이스(508)에 커플링될 수도 있다.
방법(600)은, (604)에서 적어도 2개의 상이한 접속들을 통해 제 1 상호접속부를 제 2 마스터 디바이스에 커플링시키는 단계를 더 포함한다. 예를 들어, 도 1의 제 1 상호접속부(102)는 2개의 상이한 접속들(118 및 120)을 통해 제 5 마스터 디바이스(116)에 커플링될 수도 있다. 유사하게, 도 2의 제 1 상호접속부(202)는 3개의 상이한 접속들(218, 220, 및 244)을 통해 제 5 마스터 디바이스(216)에 커플링될 수도 있다. 유사하게, 도 5의 제 1 상호접속부(502)는 2개의 상이한 접속들(544 및 520)을 통해 제 1 마스터 디바이스(542)에 커플링될 수도 있다.
방법(600)은, (608)에서 제 1 상호접속부에 제 2 상호접속부를 커플링시키는 단계를 더 포함한다. 예를 들어, 도 1의 제 2 상호접속부(106)는 단일 링크(130)를 통해 제 1 상호접속부(102)에 커플링될 수도 있다. 유사하게, 도 2의 제 2 상호접속부(206)는 단일 링크(230)를 통해 제 1 상호접속부(202)에 커플링될 수도 있다. 유사하게, 도 5의 제 2 상호접속부(506)는 듀얼 링크들(530 및 516)을 통해 제 1 상호접속부(502)에 커플링될 수도 있다.
방법(600)은, (610)에서 메모리 제어기를 통해 제 2 상호접속부를 메모리에 커플링시키는 단계를 더 포함한다. 예를 들어, 도 1의 제 2 상호접속부(106)는 메모리 제어기(138)를 통해 메모리(134)에 커플링될 수도 있다. 유사하게, 도 2의 제 2 상호접속부(206)는 메모리 제어기(238)를 통해 메모리(234)에 커플링될 수도 있다. 유사하게, 도 5의 제 2 상호접속부(506)는 메모리 제어기(538)를 통해 메모리(534)에 커플링될 수도 있다.
특정한 실시형태에서, 제 2 상호접속부는 도 1, 도 2, 및 도 5에 관해 도시된 바와 같이 다수의 메모리 제어기들을 통해 다수의 메모리 디바이스들에 커플링된다. 예를 들어, 도 1의 제 2 상호접속부(106)는, 다수의 메모리 제어기들(138 및 140)을 통해 다수의 메모리 디바이스들(134 및 136)에 각각 커플링될 수도 있다. 유사하게, 도 2의 제 2 상호접속부(206)는, 다수의 메모리 제어기들(238 및 240)을 통해 다수의 메모리 디바이스들(234 및 236)에 각각 커플링될 수도 있다. 유사하게, 도 5의 제 2 상호접속부(506)는, 다수의 메모리 제어기들(538 및 540)을 통해 다수의 메모리 디바이스들(534 및 536)에 각각 커플링될 수도 있다.
특정한 실시형태에서, 제 2 마스터 디바이스는 제 1 마스터 디바이스보다 더 높은 스루풋을 갖는다. 예를 들어, 도 1의 제 5 마스터 디바이스(116)는 제 1 마스터 디바이스(108) 보다 더 높은 스루풋을 가질 수도 있다. 유사하게, 도 2의 제 5 마스터 디바이스(216)는 제 1 마스터 디바이스(208) 보다 더 높은 스루풋을 가질 수도 있다. 유사하게, 도 5의 제 5 마스터 디바이스(542)는 제 1 마스터 디바이스(508) 보다 더 높은 스루풋을 가질 수도 있다.
특정한 실시형태에서, 제 1 마스터 디바이스 및 제 2 마스터 디바이스는 프로세서들을 포함한다. 예를 들어, 도 1의 제 1 마스터 디바이스(108) 및 제 5 마스터 디바이스(116) 양자는 프로세서들을 포함할 수도 있다. 유사하게, 도 2의 제 1 마스터 디바이스(208) 및 제 5 마스터 디바이스(216) 양자는 프로세서들을 포함할 수도 있다. 유사하게, 도 5의 제 1 마스터 디바이스(508) 및 제 5 마스터 디바이스(542) 양자는 프로세서들을 포함할 수도 있다.
특정한 실시형태에서, 제 2 상호접속부는, 제 1 상호접속부가 단일 접속을 통해 제 2 마스터 디바이스에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 제 1 상호접속부에 커플링된다. 예를 들어, 도 1의 제 2 상호접속부(106)는, 제 5 마스터 디바이스(116)의 높은-스루풋을 여전히 충족시키면서 제 1 상호접속부(102)가 단일 접속을 통해 제 5 마스터 디바이스(116)에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 제 1 상호접속부(102)에 커플링된다. 유사하게, 도 2의 제 2 상호접속부(206)는, 제 5 마스터 디바이스(216)의 높은-스루풋을 여전히 충족시키면서 제 1 상호접속부(202)가 단일 접속을 통해 제 5 마스터 디바이스(216)에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 제 1 상호접속부(202)에 커플링된다. 유사하게, 도 5의 제 2 상호접속부(506)는, 제 5 마스터 디바이스(542)의 높은-스루풋을 여전히 충족시키면서 제 1 상호접속부(502)가 단일 접속을 통해 제 5 마스터 디바이스(542)에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 제 1 상호접속부(502)에 커플링된다.
특정한 실시형태에서, 제 2 상호접속부는 단일 링크를 통해 제 1 상호접속부에 커플링된다. 예를 들어, 도 1의 제 2 상호접속부(106)는 단일 링크(130)를 통해 제 1 상호접속부(102)에 커플링된다. 유사하게, 도 2의 제 2 상호접속부(206)는 단일 링크(230)를 통해 제 1 상호접속부(202)에 커플링된다.
단일 접속을 통해 제 1 상호접속부를 제 1 마스터 디바이스에 커플링시키는 것, 적어도 2개의 상이한 접속들을 통해 제 1 상호접속부를 제 2 마스터 디바이스에 커플링시키는 것, 제 2 상호접속부를 제 1 상호접속부에 커플링시키는 것, 메모리 제어기를 통해 제 2 상호접속부를 메모리에 커플링시키는 것, 또는 이들의 임의의 조합은 전자 디바이스에 통합된 프로세서에서 개시될 수도 있다. 예를 들어, 도 8에 관해 설명될 바와 같이, 단일 접속을 통해 제 1 마스터 디바이스에 제 1 상호접속부를 커플링시키는 것, 적어도 2개의 상이한 접속들을 통해 제 1 상호접속부를 제 2 마스터 디바이스에 커플링시키는 것, 제 1 상호접속부에 제 2 상호접속부를 커플링시키는 것, 메모리 제어기를 통해 제 2 상호접속부를 메모리에 커플링시키는 것, 또는 이들의 임의의 조합은, 제조 프로세스(828)를 사용하여 제조된 컴퓨터 또는 다른 전자 디바이스에 의해 개시될 수도 있다. 대안적으로 또는 부가적으로, 당업자는, 도 6의 방법(600)이 필드 프로그래밍가능 게이트 어레이(FPGA), 주문형 집적 회로(ASIC), 중앙 프로세싱 유닛(CPU), 디지털 신호 프로세서(DSP), 제어기, 또 다른 하드웨어 디바이스, 또는 이들의 임의의 조합에 의해 구현되거나 개시될 수도 있다.
도 7은 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈을 포함하는 시스템(700)의 특정한 실시형태의 블록도이다. 시스템(700)은, 휴대용 전자 디바이스에 구현될 수도 있으며, 소프트웨어(766)와 같은 컴퓨터 판독가능 명령들을 저장하는 메모리(732)와 같은 컴퓨터 판독가능 매체에 커플링된 디지털 신호 프로세서(DSP)와 같은 프로세서(710)를 포함한다. 시스템(700)은 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈을 포함한다. 예시적인 예에서, 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈은, 도 1, 도 2, 또는 도 5의 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부의 실시형태들 중 임의의 실시형태를 포함하거나, 도 6의 실시형태에 따라 생성되거나, 이들의 임의의 조합일 수 있다. 프로세서(710)는 적어도 2개의 상이한 접속들(764)(미도시)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈에 있을 수도 있거나, 도시된 바와 같이 별개의 디바이스 또는 회로일 수도 있다. 특정한 실시형태에서, 도 7에 도시된 바와 같이, 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈은 디지털 신호 프로세서(DSP)(710)에 액세스가능하다. 또 다른 특정한 실시형태에서, 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈은 메모리(732)를 포함할 수도 있다.
카메라 인터페이스(768)는 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈에 커플링되고, 또한 비디오 카메라(770)와 같은 카메라에 커플링된다. 디스플레이 제어기(726)는 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈 및 디스플레이 디바이스(728)에 커플링된다. 코더/디코더(코덱)(734)는 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈에 또한 커플링될 수 있다. 스피커(736) 및 마이크로폰(738)은 코덱(734)에 커플링될 수 있다. 무선 인터페이스(740)는, 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부를 갖는 모듈 및 무선 안테나(742)에 커플링될 수 있다.
특정한 실시형태에서, 적어도 2개의 상이한 접속들(764)을 통해 마스터 디바이스에 커플링된 상호접속부, 프로세서(710), 디스플레이 제어기(726), 메모리(732), 코덱(734), 무선 인터페이스(740), 및 카메라 인터페이스(768)는 시스템-인-패키지 또는 시스템-온-칩 디바이스(722)에 포함된다. 특정한 실시형태에서, 입력 디바이스(730) 및 전원(744)은 시스템-온-칩 디바이스(722)에 커플링된다. 또한, 특정한 실시형태에서, 도 7에 도시된 바와 같이, 디스플레이 디바이스(728), 입력 디바이스(730), 스피커(736), 마이크로폰(738), 무선 안테나(742), 비디오 카메라(770), 및 전원(744)은 시스템-온-칩 디바이스(722) 외부에 있다. 그러나, 디스플레이 디바이스(728), 입력 디바이스(730), 스피커(736), 마이크로폰(738), 무선 안테나(742), 비디오 카메라(770), 및 전원(744) 각각은 인터페이스 또는 제어기와 같이 시스템-온-칩 디바이스(722)의 컴포넌트에 커플링될 수 있다.
(도 1, 도 2, 또는 도 5의 디바이스들, 도 6의 방법, 또는 이들의 임의의 조합과 같은) 상기 기재된 디바이스들 및 기능들은 컴퓨터 판독가능 매체들 상에 저장된 컴퓨터 파일들(예를 들어, RTL, GDSII, GERBER 등)로 설계 및 구성될 수도 있다. 몇몇 또는 모든 그러한 파일들은 그러한 파일들에 기초하여 디바이스들을 제조하는 제조 취급자(handler)들에 제공될 수도 있다. 결과적인 제품들은 반도체 웨이퍼들을 포함하며, 그 후, 그 반도체 웨이퍼들은 반도체 다이로 절단되고 반도체 칩으로 패키징된다. 그 후, 칩들은 전자 디바이스들에서 이용된다. 도 8은 전자 디바이스 제조 프로세스(800)의 특정한 예시적인 실시형태를 도시한다.
물리 디바이스 정보(802)는 리서치(research) 컴퓨터(806)에서와 같이 제조 프로세스(800)에서 수신된다. 물리 디바이스 정보(802)는, 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)과 같은 반도체 디바이스의 적어도 하나의 물리 특성을 나타내는 설계 정보를 포함할 수도 있다. 예를 들어, 물리 디바이스 정보(802)는 물리 파라미터들, 재료 특성들, 및 리서치 컴퓨터(806)에 커플링된 사용자 인터페이스(804)를 통해 입력되는 구조 정보를 포함할 수도 있다. 리서치 컴퓨터(806)는 메모리(810)와 같은 컴퓨터 판독가능 매체에 커플링된 하나 또는 그 초과의 프로세싱 코어들과 같은 프로세서(808)를 포함한다. 메모리(810)는, 프로세서(808)가 파일 포맷에 따르고 라이브러리 파일(812)을 생성하기 위해 물리 디바이스 정보(802)를 변환시키게 하도록 실행가능한 컴퓨터 판독가능 명령들을 저장할 수도 있다.
특정한 실시형태에서, 라이브러리 파일(812)은 변환된 설계 정보를 포함하는 적어도 하나의 데이터 파일을 포함한다. 예를 들어, 라이브러리 파일(812)은, 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)을 포함하고, 전자 설계 자동화(EDA) 툴(820)에 관한 사용을 위해 제공되는 반도체 디바이스들의 라이브러리를 포함할 수도 있다.
라이브러리 파일(812)은, 메모리(818)에 커플링된 하나 또는 그 초과의 프로세싱 코어들과 같은 프로세서(816)를 포함하는 설계 컴퓨터(814)에서 EDA 툴(820)과 함께 사용될 수도 있다. EDA 툴(820)은 설계 컴퓨터(814)의 사용자가, 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)을 포함하는, 라이브러리 파일(812)의 회로를 설계할 수 있게 하도록 프로세서 실행가능한 명령들로서 메모리(818)에 저장될 수도 있다. 예를 들어, 설계 컴퓨터(814)의 사용자는 설계 컴퓨터(814)에 커플링된 사용자 인터페이스(824)를 통해 회로 설계 정보(822)를 입력할 수도 있다. 회로 설계 정보(822)는, 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)과 같은 반도체 디바이스의 적어도 하나의 물리 특성을 나타내는 설계 정보를 포함할 수도 있다. 예시하기 위해, 회로 설계 특성은 특정한 회로들의 식별 및 회로 설계에서의 다른 엘리먼트들에 대한 관계들, 포지셔닝 정보, 피처(feature) 사이즈 정보, 상호접속 정보, 또는 반도체 디바이스의 물리 특성을 나타내는 다른 정보를 포함할 수도 있다.
설계 컴퓨터(814)는 파일 포맷에 따르기 위한 회로 설계 정보(822)를 포함하여, 설계 정보를 변환하도록 구성될 수도 있다. 예시하기 위해, 파일 포메이션(formation)은 평면 지오메트릭 형상들, 텍스트 라벨들, 및 그래픽 데이터 시스템(GDSII) 파일 포맷과 같은 계층 포맷에서의 회로 레이아웃에 관한 다른 정보를 나타내는 데이터베이스 바이너리 파일 포맷을 포함할 수도 있다. 설계 컴퓨터(814)는, 다른 회로들 또는 정보에 부가하여, 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)을 설명하는 정보를 포함하는 GDSII 파일(826)과 같은 변환된 설계 정보를 포함하는 데이터 파일을 생성하도록 구성될 수도 있다. 예시하기 위해, 데이터 파일은, 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)을 포함하고, SOC(system-on-chip) 내에 부가적인 전자 회로들 및 컴포넌트들을 또한 포함하는 SOC에 대응하는 정보를 포함할 수도 있다.
GDSII 파일(826)은, GDSII 파일(826) 내의 변환된 정보에 따라 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)을 제조하기 위한 제조 프로세스(828)에서 수신될 수도 있다. 예를 들어, 디바이스 제조 프로세스는, 대표적인 마스크(832)로서 도시된 포토리소그래피 프로세싱을 위해 사용될 마스크들과 같은 하나 또는 그 초과의 마스크들을 생성하기 위해 GDSII 파일(826)을 마스크 제조기(830)에 제공하는 것을 포함할 수도 있다. 마스크(832)는 테스트될 수도 있고 대표적인 다이(836)와 같은 다이들로 분리될 수도 있는 하나 또는 그 초과의 웨이퍼들(834)을 생성하기 위해 제조 프로세스 동안 사용될 수도 있다. 다이(836)는 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)을 포함한다.
다이(836)는 패키징 프로세스(838)에 제공될 수도 있으며, 여기서, 다이(836)는 대표적인 패키지(840)로 통합된다. 예를 들어, 패키지(840)는 도 1의 멀티-다이 디바이스(100), 도 3의 멀티-다이 디바이스(300), 도 4의 멀티-다이 디바이스(400), 또는 SiP(system-in-package) 배열, 또는 이들의 임의의 조합과 같은 다수의 다이들(836)을 포함할 수도 있다. 패키지(840)는 접합 전자 디바이스 엔지니어링 협회(JEDEC) 표준들과 같은 하나 또는 그 초과의 표준들 또는 규격들에 부합하도록 구성될 수도 있다. 패키징 프로세스(838)는 컴퓨터에 의해 실행가능한 명령들을 저장한 컴퓨터-판독가능 유형의 매체에 커플링된 프로세서를 포함할 수도 있다. 프로세서는 컴퓨터 또는 전자 패키징 디바이스와 같은 전자 디바이스로 통합될 수도 있다. 컴퓨터-판독가능 유형의 매체에 저장된 명령들의 패키징 프로세스(838)에서의 실행은, 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500), 또는 이들의 임의의 조합과 같은 다이(836)를 포함하는 패키지(840)를 초래할 수도 있다.
패키지(840)에 관한 정보는 예를 들어, 컴퓨터(846)에 저장된 컴포넌트 라이브러리를 통해 다양한 제품 설계자들에 분배될 수도 있다. 컴퓨터(846)는 메모리(850)에 커플링된 하나 또는 그 초과의 프로세싱 코어들과 같은 프로세서(848)를 포함할 수도 있다. 인쇄 회로 보드(PCB) 툴은 사용자 인터페이스(844)를 통해 컴퓨터(846)의 사용자로부터 수신되는 PCB 설계 정보(842)를 프로세싱하기 위해 메모리(850)에 프로세서 실행가능 명령들로서 저장될 수도 있다. PCB 설계 정보(842)는 회로 보드 상의 패키징된 반도체 디바이스의 물리 포지셔닝 정보를 포함할 수도 있으며, 그 패키징된 반도체 디바이스는 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)을 포함하는 패키지(840)에 대응한다.
컴퓨터(846)는, 회로 보드 상의 패키징된 반도체 디바이스의 물리 포지셔닝 정보 뿐만 아니라 트레이스들 및 비아들과 같은 전기 접속들의 레이아웃을 포함하는 데이터를 갖는 GERBER 파일(852)과 같은 데이터 파일을 생성하기 위해 PCB 설계 정보(842)를 변환하도록 구성될 수도 있으며, 여기서, 패키징된 반도체 디바이스는 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)을 포함하는 패키지(840)에 대응한다. 다른 실시형태들에서, 변환된 PCB 설계 정보에 의해 생성되는 데이터 파일은 GERBER 포맷 이외의 포맷을 가질 수도 있다.
GERBER 파일(852)은, 보드 어셈블리 프로세스(854)에서 수신될 수도 있으며, GERBER 파일(852) 내에 저장된 설계 정보에 따라 제조되는 대표적인 PCB(856)와 같은 PCB들을 생성하는데 사용될 수도 있다. 예를 들어, GERBER 파일(852)은 PCB 제조 프로세스의 다양한 단계들을 수행하기 위해 하나 또는 그 초과의 머신들에 업로딩될 수도 있다. PCB(856)는 대표적인 인쇄 회로 어셈블리(PCA)(858)를 형성하기 위해 패키지(840)를 포함하는 전자 컴포넌트들로 파퓰레이팅(populate)될 수도 있다.
PCA(858)는 제품 제조 프로세스(860)에서 수신될 수도 있으며, 제 1 대표적인 전자 디바이스(862) 및 제 2 대표적인 전자 디바이스(864)와 같은 하나 또는 그 초과의 전자 디바이스들로 통합될 수도 있다. 예시적이고 비-제한적인 예로서, 제 1 대표적인 전자 디바이스(862), 제 2 대표적인 전자 디바이스(864), 또는 그 양자는 셋톱 박스, 뮤직 플레이어, 비디오 플레이어, 엔터테이먼트 유닛, 네비게이션 디바이스, 통신 디바이스, 개인 휴대 정보 단말(PDA), 고정 위치 데이터 유닛, 및 컴퓨터의 그룹으로부터 선택될 수도 있다. 또 다른 예시적이고 비-제한적인 예로서, 전자 디바이스들(862 및 864) 중 하나 또는 그 초과는 모바일 전화기들, 핸드헬드 개인 통신 시스템(PCS) 유닛들, 개인 휴대 정보 단말들과 같은 휴대용 데이터 유닛들, 글로벌 포지셔닝 시스템(GPS) 인에이블 디바이스들, 네비게이션 디바이스들, 미터 판독 장비와 같은 고정 위치 데이터 유닛들, 또는 데이터 또는 컴퓨터 명령들을 저장 또는 리트리브하는 임의의 다른 디바이스, 또는 이들의 임의의 조합과 같은 원격 유닛들일 수도 있다. 도 8이 본 발명의 교시들에 따른 원격 유닛들을 도시하지만, 본 발명은 이들 예시적인 유닛들로 제한되지 않는다. 본 발명의 실시형태들은, 메모리 및 온-칩 회로를 포함하는 활성 집적 회로를 포함하는 임의의 디바이스에서 적절히 이용될 수도 있다.
따라서, 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)은, 예시적인 프로세스(800)에서 설명된 바와 같이, 제조, 프로세싱, 및 전자 디바이스로 통합될 수도 있다. 도 1 내지 도 6에 관해 기재된 실시형태들의 하나 또는 그 초과의 양상들은, 라이브러리 파일(812), GDSII 파일(826), 및 GERBER 파일(852) 내에서와 같이 다양한 프로세싱 스테이지들에 포함될 수도 있을 뿐만 아니라, 리서치 컴퓨터(806)의 메모리(810), 설계 컴퓨터(814)의 메모리(818), 컴퓨터(846)의 메모리(850), 보드 어셈블리 프로세스(854)에서와 같이 다양한 스테이지들에서 사용되는 하나 또는 그 초과의 다른 컴퓨터들 또는 프로세서들(미도시)의 메모리에 저장될 수도 있고, 또한 마스크(832), 다이(836), 패키지(840), PCA(858), 프로토타입 회로들 또는 디바이스들(미도시)과 같은 다른 제품들, 또는 이들의 임의의 조합과 같은 하나 또는 그 초과의 다른 물리적인 실시형태들로 통합될 수도 있다. 예를 들어, GDSII 파일(826) 또는 제조 프로세스(828)는 컴퓨터에 의해 실행가능한 명령들을 저장하는 컴퓨터 판독가능 유형의 매체를 포함할 수 있으며, 그 명령들은 도 1의 분산된 컴퓨팅 및 통신 시스템(100), 도 2의 분산된 컴퓨팅 및 통신 시스템(200), 또는 도 5의 분산된 컴퓨팅 및 통신 시스템(500)의 포메이션을 개시하도록 컴퓨터에 의해 실행가능한 명령들을 포함한다. 물리 디바이스 설계부터 최종 제품까지의 제조의 다양한 대표적인 스테이지들이 도시되지만, 다른 실시형태들에서, 더 적은 스테이지들이 사용될 수도 있거나 부가적인 스테이지들이 포함될 수도 있다. 유사하게, 프로세스(800)는 단일 엔티티에 의해 또는 프로세스(800)의 다양한 스테이지들을 수행하는 하나 또는 그 초과의 엔티티들에 의해 수행될 수도 있다.
당업자들은, 여기에 기재된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 구성들, 모듈들, 회로들, 및 방법 단계들이 전자 하드웨어, 프로세싱 유닛에 의해 실행되는 컴퓨터 소프트웨어, 또는 이 둘의 조합들로서 구현될 수도 있음을 추가적으로 인식할 것이다. 다양한 예시적인 컴포넌트들, 블록들, 구성들, 모듈들, 회로들, 및 단계들은 그들의 기능의 관점들에서 일반적으로 상술되었다. 그러한 기능이 하드웨어 또는 실행가능한 프로세싱 명령들로서 구현되는지는 특정한 애플리케이션 및 전체 시스템에 부과된 설계 제약들에 의존한다. 당업자들은 각각의 특정한 애플리케이션에 대해 다양한 방식들로 설명된 기능을 구현할 수도 있지만, 그러한 구현 결정들이 본 발명의 범위를 벗어나게 하는 것으로서 해석되지는 않아야 한다.
여기에 기재된 실시형태들과 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이 둘의 조합으로 구현될 수도 있다. 소프트웨어 모듈은 랜덤 액세스 메모리(RAM), 자기저항 랜덤 액세스 메모리(MRAM), 스핀-토크-전달 자기저항 랜덤 액세스 메모리(STT-MRAM), 플래시 메모리, 판독-전용 메모리(ROM), 프로그래밍가능 판독-전용 메모리(PROM), 소거가능한 프로그래밍가능 판독-전용 메모리(EPROM), 전기적으로 소거가능한 프로그래밍가능 판독-전용 메모리(EEPROM), 레지스터들, 하드 디스크, 착탈형 디스크, 컴팩트 디스크 판독-전용 메모리(CD-ROM), 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되어, 프로세서가 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있게 한다. 대안적으로, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 주문형 집적 회로(ASIC)에 상주할 수도 있다. ASIC는 컴퓨팅 디바이스 또는 사용자 단말에 상주할 수도 있다. 대안적으로, 프로세서 및 저장 매체는 컴퓨팅 디바이스 또는 사용자 단말 내의 별도의 컴포넌트들로서 상주할 수도 있다.
기재된 실시형태들의 이전 설명은 당업자가 기재된 실시형태들을 수행 또는 사용할 수 있도록 제공된다. 이들 실시형태들에 대한 다양한 변형들은 당업자들에게는 용이하게 명백할 것이며, 여기에 정의된 원리들은 본 발명의 범위를 벗어나지 않고도 다른 실시형태들에 적용될 수도 있다. 따라서, 본 발명은 여기에 설명된 실시형태들로 제한되도록 의도되지 않으며, 다음의 청구항들에 의해 정의된 바와 같은 원리들 및 신규한 특성들에 부합하는 가능한 최광의 범위에 허여하려는 것이다.

Claims (27)

  1. 시스템으로서,
    제 1 상호접속부; 및
    상기 제 1 상호접속부에 커플링된 제 2 상호접속부를 포함하며,
    상기 제 1 상호접속부는 단일 접속을 통해 제 1 마스터 디바이스에 커플링되고, 상기 제 1 상호접속부는 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 커플링되고,
    상기 제 2 상호접속부는 메모리 제어기를 통해 메모리에 커플링되는, 시스템.
  2. 제 1 항에 있어서,
    상기 제 2 마스터 디바이스는 상기 제 1 마스터 디바이스보다 더 높은 스루풋을 갖는, 시스템.
  3. 제 1 항에 있어서,
    상기 제 1 마스터 디바이스 및 상기 제 2 마스터 디바이스는 프로세서들을 포함하는, 시스템.
  4. 제 1 항에 있어서,
    상기 제 2 상호접속부는, 상기 제 1 상호접속부가 단일 접속을 통해 상기 제 2 마스터 디바이스에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 상기 제 1 상호접속부에 커플링되는, 시스템.
  5. 제 1 항에 있어서,
    상기 제 2 상호접속부는 단일 링크를 통해 상기 제 1 상호접속부에 커플링되는, 시스템.
  6. 제 1 항에 있어서,
    상기 제 2 상호접속부는 다수의 메모리 디바이스들에 커플링되는, 시스템.
  7. 방법으로서,
    단일 접속을 통해 제 1 상호접속부를 제 1 마스터 디바이스에 커플링시키는 단계;
    적어도 2개의 상이한 접속들을 통해 상기 제 1 상호접속부를 제 2 마스터 디바이스에 커플링시키는 단계;
    상기 제 1 상호접속부에 제 2 상호접속부를 커플링시키는 단계; 및
    메모리 제어기를 통해 메모리에 상기 제 2 상호접속부를 커플링시키는 단계를 포함하는, 방법.
  8. 제 7 항에 있어서,
    상기 제 2 마스터 디바이스는 상기 제 1 마스터 디바이스보다 더 높은 스루풋을 갖는, 방법.
  9. 제 7 항에 있어서,
    상기 제 1 마스터 디바이스 및 상기 제 2 마스터 디바이스는 프로세서들을 포함하는, 방법.
  10. 제 7 항에 있어서,
    상기 제 2 상호접속부는, 상기 제 1 상호접속부가 단일 접속을 통해 상기 제 2 마스터 디바이스에 커플링되었던 경우보다 적어도 하나 더 적은 링크를 통해 상기 제 1 상호접속부에 커플링되는, 방법.
  11. 제 7 항에 있어서,
    상기 제 2 상호접속부는 단일 링크를 통해 상기 제 1 상호접속부에 커플링되는, 방법.
  12. 제 7 항에 있어서,
    상기 제 2 상호접속부는 다수의 메모리 디바이스들에 커플링되는, 방법.
  13. 제 7 항에 있어서,
    상기 단일 접속을 통해 제 1 상호접속부를 제 1 마스터 디바이스에 커플링시키는 단계, 상기 적어도 2개의 상이한 접속들을 통해 제 1 상호접속부를 제 2 마스터 디바이스에 커플링시키는 단계, 상기 제 1 상호접속부에 제 2 상호접속부를 커플링시키는 단계, 및 상기 메모리 제어기를 통해 메모리에 제 2 상호접속부를 커플링시키는 단계는, 전자 디바이스에 통합된 프로세서에 의해 개시되는, 방법.
  14. 방법으로서,
    단일 접속을 통해 제 1 상호접속부를 제 1 마스터 디바이스에 커플링시키기 위한 제 1 단계;
    적어도 2개의 상이한 접속들을 통해 상기 제 1 상호접속부를 제 2 마스터 디바이스에 커플링시키기 위한 제 2 단계;
    상기 제 1 상호접속부에 제 2 상호접속부를 커플링시키기 위한 제 3 단계; 및
    메모리 제어기를 통해 메모리에 상기 제 2 상호접속부를 커플링시키기 위한 제 4 단계를 포함하는, 방법.
  15. 방법으로서,
    반도체 디바이스의 적어도 하나의 물리적 특성을 표현하는 설계 정보를 수신하는 단계 - 상기 반도체 디바이스는 메모리 제어기에 대한 인터페이스를 갖는 제 2 상호접속부에 커플링된 제 1 상호접속부를 포함하며, 상기 제 1 상호접속부는 단일 접속을 통해 제 1 마스터 디바이스에 커플링되고, 상기 제 1 상호접속부는 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 커플링됨 -;
    파일 포맷에 따르기 위해 상기 설계 정보를 변환하는 단계; 및
    상기 변환된 설계 정보를 포함하는 데이터 파일을 생성하는 단계를 포함하는, 방법.
  16. 제 15 항에 있어서,
    상기 데이터 파일은 GDSII 포맷을 포함하는, 방법.
  17. 방법으로서,
    반도체 디바이스에 대응하는 설계 정보를 포함하는 데이터 파일을 수신하는 단계; 및
    상기 설계 정보에 따라 상기 반도체 디바이스를 제조하는 단계를 포함하며,
    상기 반도체 디바이스는, 메모리 제어기에 대한 인터페이스를 갖는 제 2 상호접속부에 커플링된 제 1 상호접속부를 포함하고,
    상기 제 1 상호접속부는 단일 접속을 통해 제 1 마스터 디바이스에 커플링되고, 상기 제 1 상호접속부는 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 커플링되는, 방법.
  18. 제 17 항에 있어서,
    상기 데이터 파일은 GDSII 포맷을 갖는, 방법.
  19. 방법으로서,
    회로 보드 상의 패키징된 반도체 디바이스의 물리적 포지셔닝 정보를 포함하는 설계 정보를 수신하는 단계 - 상기 패키징된 반도체 디바이스는, 메모리 제어기에 대한 인터페이스를 갖는 제 2 상호접속부에 커플링된 제 1 상호접속부를 포함하며, 상기 제 1 상호접속부는 단일 접속을 통해 제 1 마스터 디바이스에 커플링되고, 상기 제 1 상호접속부는 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 커플링됨 -; 및
    데이터 파일을 생성하기 위해 상기 설계 정보를 변환하는 단계를 포함하는, 방법.
  20. 제 19 항에 있어서,
    상기 데이터 파일은 GERBER 포맷을 갖는, 방법.
  21. 방법으로서,
    회로 보드 상의 패키징된 반도체 디바이스의 물리적 포지셔닝 정보를 포함하는 설계 정보를 포함한 데이터 파일을 수신하는 단계; 및
    상기 설계 정보에 따라 상기 패키징된 반도체 디바이스를 수용하도록 구성된 상기 회로 보드를 제조하는 단계를 포함하며,
    상기 패키징된 반도체 디바이스는, 메모리 제어기에 대한 인터페이스를 갖는 제 2 상호접속부에 커플링된 제 1 상호접속부를 포함한 반도체 구조를 포함하고,
    상기 제 1 상호접속부는 단일 접속을 통해 제 1 마스터 디바이스에 커플링되고, 상기 제 1 상호접속부는 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 커플링되는, 방법.
  22. 제 21 항에 있어서,
    상기 데이터 파일은 GERBER 포맷을 갖는, 방법.
  23. 제 21 항에 있어서,
    셋톱 박스, 뮤직 플레이어, 비디오 플레이어, 엔터테이먼트 유닛, 네비게이션 디바이스, 통신 디바이스, 개인 휴대 정보 단말(PDA), 고정 위치 데이터 유닛, 및 컴퓨터로 이루어진 그룹으로부터 선택된 디바이스에 상기 회로 보드를 통합하는 단계를 더 포함하는, 방법.
  24. 시스템으로서,
    상호접속을 위한 제 1 수단; 및
    상기 상호접속을 위한 제 1 수단에 커플링되는 상호접속을 위한 제 2 수단을 포함하며,
    상기 상호접속을 위한 제 1 수단은 단일 접속을 통해 제 1 마스터 디바이스에 커플링되고, 상기 상호접속을 위한 제 1 수단은 적어도 2개의 상이한 접속들을 통해 제 2 마스터 디바이스에 커플링되며,
    상기 상호접속을 위한 제 2 수단은 메모리 제어기를 통해 메모리에 커플링되는, 시스템.
  25. 제 24 항에 있어서,
    상기 상호접속을 위한 제 2 수단은, 상기 상호접속을 위한 제 1 수단이 단일 접속을 통해 상기 제 2 마스터 디바이스에 커플링되었던 경우보다 하나 더 적은 링크를 통해 상기 상호접속을 위한 제 1 수단에 커플링되는, 시스템.
  26. 제 24 항에 있어서,
    상기 상호접속을 위한 제 2 수단은 단일 링크를 통해 상기 상호접속을 위한 제 1 수단에 커플링되는, 시스템.
  27. 제 24 항에 있어서,
    상기 상호접속을 위한 제 2 수단은 다수의 메모리 디바이스들에 커플링되는, 시스템.
KR1020127026409A 2010-03-09 2011-03-09 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부 KR20120139789A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/720,164 2010-03-09
US12/720,164 US8380904B2 (en) 2010-03-09 2010-03-09 Interconnect coupled to master device via at least two different bidirectional connections
PCT/US2011/027695 WO2011112682A1 (en) 2010-03-09 2011-03-09 Interconnect coupled to master device via at least two different connections

Publications (1)

Publication Number Publication Date
KR20120139789A true KR20120139789A (ko) 2012-12-27

Family

ID=44063400

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127026409A KR20120139789A (ko) 2010-03-09 2011-03-09 적어도 2개의 상이한 접속들을 통해 마스터 디바이스에 커플링된 상호접속부

Country Status (7)

Country Link
US (1) US8380904B2 (ko)
EP (1) EP2545454A1 (ko)
JP (1) JP2013521585A (ko)
KR (1) KR20120139789A (ko)
CN (1) CN102782667A (ko)
TW (1) TW201202945A (ko)
WO (1) WO2011112682A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160124872A1 (en) * 2013-12-12 2016-05-05 Samsung Electronics Co., Ltd. Disaggregated memory appliance
US10254987B2 (en) 2013-12-12 2019-04-09 Samsung Electronics Co., Ltd. Disaggregated memory appliance having a management processor that accepts request from a plurality of hosts for management, configuration and provisioning of memory

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6834318B2 (en) * 2001-02-16 2004-12-21 Agere Systems Inc. Bidirectional bus repeater for communications on a chip
JP2004086763A (ja) * 2002-08-28 2004-03-18 Fujitsu Ltd 半導体集積回路の設計方法および半導体集積回路の設計プログラム
US20060031622A1 (en) * 2004-06-07 2006-02-09 Jardine Robert L Software transparent expansion of the number of fabrics coupling multiple processsing nodes of a computer system
US20070083785A1 (en) * 2004-06-10 2007-04-12 Sehat Sutardja System with high power and low power processors and thread transfer
JP4190476B2 (ja) * 2004-09-22 2008-12-03 株式会社ソニー・コンピュータエンタテインメント グラフィックプロセッサ、制御用プロセッサおよび情報処理装置
JP4539345B2 (ja) * 2005-01-28 2010-09-08 凸版印刷株式会社 電気配線板設計装置
CN101000597A (zh) * 2007-01-17 2007-07-18 中山大学 一种基于AMBA总线的嵌入式Java处理器IP核
US8140719B2 (en) * 2007-06-21 2012-03-20 Sea Micro, Inc. Dis-aggregated and distributed data-center architecture using a direct interconnect fabric
US20090157919A1 (en) * 2007-12-18 2009-06-18 Plx Technology, Inc. Read control in a computer i/o interconnect
TWI357562B (en) * 2007-12-20 2012-02-01 Infortrend Technology Inc Io processor
US8006021B1 (en) * 2008-03-27 2011-08-23 Xilinx, Inc. Processor local bus bridge for an embedded processor block core in an integrated circuit
US7902878B2 (en) * 2008-04-29 2011-03-08 Qualcomm Incorporated Clock gating system and method
CN100550003C (zh) * 2008-06-03 2009-10-14 浙江大学 嵌入式异构多核体系片上通信互连组织层次的实现方法
US20090307408A1 (en) * 2008-06-09 2009-12-10 Rowan Nigel Naylor Peer-to-Peer Embedded System Communication Method and Apparatus
US7934046B2 (en) * 2008-07-02 2011-04-26 International Business Machines Corporation Access table lookup for bus bridge
US8140769B2 (en) * 2009-04-20 2012-03-20 Oracle America, Inc. Data prefetcher
US7969767B2 (en) * 2009-05-29 2011-06-28 Qualcomm Incorporated Spin transfer torque—magnetic tunnel junction device and method of operation
US8059638B2 (en) * 2009-06-30 2011-11-15 Alcatel Lucent Inter-node link aggregation system and method
JP4599524B2 (ja) * 2009-08-11 2010-12-15 株式会社日立製作所 データ処理装置及び方法

Also Published As

Publication number Publication date
EP2545454A1 (en) 2013-01-16
TW201202945A (en) 2012-01-16
US8380904B2 (en) 2013-02-19
US20110225333A1 (en) 2011-09-15
WO2011112682A1 (en) 2011-09-15
JP2013521585A (ja) 2013-06-10
CN102782667A (zh) 2012-11-14

Similar Documents

Publication Publication Date Title
US8359421B2 (en) Partitioning a crossbar interconnect in a multi-channel memory system
US11837503B2 (en) Scalable and flexible architectures for integrated circuit (IC) design and fabrication
US8698321B2 (en) Vertically stackable dies having chip identifier structures
US8572418B2 (en) Moving clock gating cell closer to clock source based on enable signal propagation time to clocked storage element
US8492905B2 (en) Vertically stackable dies having chip identifier structures
US9613942B2 (en) Interposer for a package-on-package structure
US8381144B2 (en) System and method of test mode gate operation
US20110320751A1 (en) Dynamic Interleaving Of Multi-Channel Memory
US9224442B2 (en) System and method to dynamically determine a timing parameter of a memory device
KR20100118508A (ko) 다층 반도체 스택을 위한 범용 층간 상호 연결
WO2017172341A2 (en) On-chip clock controller
US9613675B2 (en) System and method to perform low power memory operations
US8380904B2 (en) Interconnect coupled to master device via at least two different bidirectional connections
Hung et al. Three-dimensional integrated circuits implementation of multiple applications emphasising manufacture reuse
CN117043757A (zh) 互补管芯到管芯接口
Engrand Advanced System-in-Package design services: benefits and trades-off

Legal Events

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