KR100812225B1 - 멀티프로세서 SoC 플랫폼에 적합한 크로스바 스위치구조 - Google Patents

멀티프로세서 SoC 플랫폼에 적합한 크로스바 스위치구조 Download PDF

Info

Publication number
KR100812225B1
KR100812225B1 KR1020060074086A KR20060074086A KR100812225B1 KR 100812225 B1 KR100812225 B1 KR 100812225B1 KR 1020060074086 A KR1020060074086 A KR 1020060074086A KR 20060074086 A KR20060074086 A KR 20060074086A KR 100812225 B1 KR100812225 B1 KR 100812225B1
Authority
KR
South Korea
Prior art keywords
multiplexer
input
master
slave
multiplexers
Prior art date
Application number
KR1020060074086A
Other languages
English (en)
Other versions
KR20070059899A (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 한국전자통신연구원
Priority to US11/607,515 priority Critical patent/US7554355B2/en
Publication of KR20070059899A publication Critical patent/KR20070059899A/ko
Application granted granted Critical
Publication of KR100812225B1 publication Critical patent/KR100812225B1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/45Arrangements for providing or supporting expansion

Abstract

본 발명은 다수개의 마스터와 슬레이브로 구성된 멀티프로세서 SoC 플랫폼에 적합한 고속의 데이터 전송이 가능하며, 마스터와 슬레이브에 따라서 확장이 용이하고 제어구조가 간단한 크로스바 스위치(crossbar switch) 구조에 관한 것이다.
본 발명에서는 고속의 데이터 전송이 가능하면서 확장성이 용이하고 제어가 간단한 개선된 크로스바 스위치 구조를 제안하고 이를 이용한 멀티프로세서 SoC 플랫폼 구조를 제안한다.
본 발명의 크로스바 스위치 구조는 행과 열로 이루어진 메트릭스 형태 연결구조를 가지는 2×1 멀티플렉서들로 이루어지는데, 여기서, 상기 각 2×1 멀티플렉서는, 하나의 입력 라인에는 동일 행의 전단 열 멀티플렉서의 출력 라인이 연결되며, 나머지 입력 라인에는 당해 멀티플렉서를 포함하는 열의 입출력 라인이 연결되며, 각 행의 마지막단 열 멀티플렉서의 출력 라인에는 당해 행의 입출력 라인이 연결되는 것을 특징으로 한다.
멀티플렉서, SoC, 크로스바 스위치, 멀티프로세서

Description

멀티프로세서 SoC 플랫폼에 적합한 크로스바 스위치 구조{Crossbar switch architecture for multi-processor SoC platform}
도 1a는 종래기술에 따른 단일 버스 구조를 가진 SoC 플랫폼을 도시한 구조도.
도 1b는 종래기술에 따른 다중 버스 구조를 가진 SoC 플랫폼을 도시한 구조도.
도 2는 종래기술에 따른 크로스바 스위치를 이용한 멀티프로세서 SoC 플랫폼의 구조도.
도 3a는 본 발명의 일실시예에 따른 확장이 용이한 메트릭스 형태의 크로스바 스위치 구조로 구성된 멀티프로세서 SoC 플랫폼의 구조도.
도 3b는 도 3a의 스위치 메트릭스를 구성하는 멀티플렉서의 동작을 설명하는 구조도.
도 4a는 본 발명의 다른 실시예에 따른 확장이 용이하며 고속의 데이터전송이 가능한 메트릭스 형태의 크로스바 스위치 구조로 구성된 멀티프로세서 SoC 플랫폼의 구조도.
도 4b는 도 4a의 스위치 메트릭스를 구성하는 멀티플렉서의 동작을 설명하는 구조도.
도 5는 도 4a의 스위치 메트릭스 및 단일 마스터단 멀티플렉서, 단일 슬레이브단 멀티플렉서로 구성된 멀티프로세서 SoC 플랫폼의 구조도.
도 6은 도 4a의 스위치 메트릭스 및 복수의 마스터단 멀티플렉서, 복수의 슬레이브단 멀티플렉서로 구성된 멀티프로세서 SoC 플랫폼의 구조도.
도 7은 도 5의 멀티프로세서 SoC 플랫폼에서의 데이터 전송 과정을 도시한 순서도.
* 도면의 주요 부분에 대한 부호의 설명
SM0, SM1, SM2, SM3 : 스위치 메트릭스,
350, 450, 550, 650 : 스위칭 제어부,
580 : 마스터단 멀티플렉서
590 : 슬레이브단 멀티플렉서
682 : 제1 마스터단 멀티플렉서
684 : 제2 마스터단 멀티플렉서
692 : 제1 슬레이브단 멀티플렉서
694 : 제2 슬레이브단 멀티플렉서
본 발명은 다수개의 마스터와 슬레이브로 구성된 멀티프로세서 SoC 플랫폼에 적합한 고속의 데이터 전송이 가능하며, 마스터와 슬레이브에 따라서 확장이 용이하고 제어구조가 간단한 크로스바 스위치(crossbar switch) 구조에 관한 것이다.
현재의 SoC 설계에서 칩 설계의 생산성 문제 해결과 IP(Intellectual Property)의 재사용을 제고를 위한 플랫폼 기반 설계(Platform Based Design) 방법을 사용한다. SoC 플랫폼을 구성하기 위해서 플랫폼의 골격이 되는 다양한 형태의 데이터 통신 구조가 소개되었다. SoC 플랫폼이란 SoC 설계를 위한 기본 템플릿으로서 프로세서, 기억장치 및 주변장치들이 온칩 버스에 연결되어 있는 구조이다. 가장 대표적으로 온칩 버스 구조인 AMBA 버스 구조는 단일 버스 구조를 사용하는 ASB(Advanced System Bus)/APB(Advanced Peripheral Bus)와 AHB(Advance High Performance Bus)와 다중 버스 구조를 사용하는 Multi-layer AHB/APB등이 있다.
도 1a는 단일 버스 구조를 가진 SoC 플랫폼으로 온칩 버스인 ASB/AHB 시스템 버스(110)와 4개의 마스터인 프로세서(100)와 IP나 공용메모리와 같은 슬레이브 하드웨어 모듈(130)이 연결되어 있다. 이와 같은 단일 버스 구조를 가진 온칩 버스 구조의 문제점은 마스터 M0가 AHB 버스를 사용할 때 다른 마스터 M1이 AHB 버스를 사용할 수 없음에 따른 데이터 통신 지연 시간이 발생되어, 전체적인 성능이 저하되는 단점이 있다.
이를 해결하기 위해서 도 1b에 도시한 바와 같은 다중 버스 구조를 가진 SoC 플랫폼이 등장하였다. 이 구조는 각각의 AHB 버스를 연결하기 위한 스위치 기능을 하는 버스메트릭스(busmatrix)(150)를 이용하여 연결하는 구조이다. 하나의 단위 블록(140) 내의 마스터 M0가 슬레이브 S1에 데이터를 전송하는 동안, 다른 단위 블 록(160) 내의 마스터 M2는 S2에 데이터 전송이 가능하고, 또 다른 단위 블록(170) 내의 마스터 M3는 S5에 데이터 전송이 가능하다. 그러나, 한 단위 블록(140) 내의 마스터 M0가 다른 단위 블록(170) 내의 S5에 데이터를 전송하기 위해서 AHB1과 AHB3 버스를 사용하는 동안 마스터 M1이나 M3는 AHB1, AHB3 버스 구조를 사용할 수 없다. 따라서, 다중 버스 구조에서도 데이터 지연 시간이 발생함으로 쓰루풋(throughput)에 제약이 존재한다. 따라서 제기된 문제점을 해결하고 다수개의 프로세서로 구성된 멀티프로세서 SoC 시스템에 적합한 데이터 통신 구조와 데이터 전송 방법의 제안이 요망되었다.
이를 해결하기 위해 컴퓨터 통신에서 사용되는 M×N 크로스바 스위치를 SoC의 버스 구조로 사용하는 온칩 네트워크 구조가 소개되었다. 온칩 버스 대신에 크로스바 스위치를 사용함으로 데이터 병렬 통신이 가능하게 되어 데이터 전송 지연시간 없이 고속으로 데이터를 전송함으로 시스템의 성능을 향상시킬 수 있다.
도 2는 마스터 M0(201)~M3(204) 4개와 슬레이브 S0(206)~S3(209) 4개를 4×1 멀티플렉서 4개를 이용하여 구성한 멀티프로세서 SoC 플랫폼 구조를 도시한다. 제어기(controller)(205)에는 마스터들의 요구를 중재하는 중재기와 마스터와 슬레이브들을 연결하기 위한 주소 디코더등의 기능을 담당한다. 따라서 마스터 M0(201), M1(202)이 동시에 슬레이브 S0(206)로 데이터 전송이 일어나지 않는다. 중재기에 의해서 마스터들의 우선순위에 따라서 전송이 일어나고, 어드레스 디코더에 의해서 슬레이브가 선택된다. 이 구조에서 M0에서 S0로 M1에서 S3로 전송이 동시에 가능하다. M0(201)에서 모든 슬레이브 S0(206)에서 S3(209)로의 전송 경로가 존재하며 하 나의 멀티플렉서를 통해서 전송된다. 또한 슬레이브 S0(206)에서 마스터 M0(201)에서 M3(204)으로 모든 전송이 가능하다. 크로스바 스위치에 사용되는 멀티플렉서(206~209)는 M(Master)×1 멀티플렉서가 S(Slave)수 만큼 필요하다. 이 구조에서는 마스터 4개이고 슬레이브 4개인 구조에서는 4×1 멀티플렉서가 8개가 필요하게 되고 각 마스터에서 슬레이브, 슬레이브에서 마스터로의 데이터 경로가 존재하며 마스터에서 슬레이브로의 데이터 전송은 멀티플랙서 1개만 통과하면 가능하다.
도시한 구조에서는 크로스바 스위치를 이용하여 고속의 병렬 데이터 전송이 가능하다. 그러나 마스터나 슬레이브의 수가 증가하면 각각의 마스터나 슬레이브의 멀티플렉서의 구조가 변경되어야 한다. 측 마스터가 1개 증가함에 따라서 각 마스터에 연결된 4×1 멀티플렉서(214~217)가 5×1로 변경되어야 하며 제어장치에서 멀티플렉서로 전달되는 제어컨트롤비트로 2비트에서 3비트로 늘어나게 됨으로 제어장치가 복잡하게 된다. 따라서 마스터나 슬레이브를 확장하고자 할 때 확장성에 제약조건이 발생하게 된다. 따라서 온칩 네트워크 구조에서 많이 사용되는 이 구조는 고속의 데이터 전송은 가능하나 마스터나 슬레이브를 확장하는데 어려움이 있다.
상기 문제점을 해결하기 위해 안출된 본 발명의 목적은, 확장성이 우수한 크로스바 스위치 구조를 제공하는데 있다.
즉, 본 발명은 일반적인 크로스바 스위치의 고속의 병렬데이터 전송 구조와 마스터나 슬레이브수가 증가함에 따라서 제어구조가 복잡하며 확장성이 어려운 문제를 해결한 고속의 병렬데이터 전송이 가능하면서, 확장성을 고려한 크로스바 스위치 구조를 제안하는데 그 심화된 목적이 있다.
또한, 본 발명은 공용 버스(shared bus)를 사용함으로 발생되는 데이터 전송 지연 시간으로 인한 성능 저하 문제를 해결할 수 있는 크로스바 스위치 구조를 제공하는데 다른 목적이 있다.
상기 목적을 달성하기 위한 본 발명의 일실시예에 따른 메트릭스 형태의 크로스바 스위치 구조는 행과 열로 이루어진 메트릭스 형태 연결구조를 가지는 2×2 멀티플렉서들로 이루어지는데, 여기서, 상기 각 2×2 멀티플렉서는, 하나의 입력 라인에는 동일 행의 전단 열 멀티플렉서의 출력 라인이 연결되며, 나머지 입력 라인에는 동일 열의 전단 행 멀티플렉서의 출력 라인 또는 당해 멀티플렉서를 포함하는 열의 입출력 라인이 연결되며, 각 행의 마지막단 열 멀티플렉서의 출력 라인에는 당해 행의 입출력 라인이 연결되는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 메트릭스 형태의 크로스바 스위치 구조는 행과 열로 이루어진 메트릭스 형태 연결구조를 가지는 2×1 멀티플렉서들로 이루어지는데, 여기서, 상기 각 2×1 멀티플렉서는, 하나의 입력 라인에는 동일 행의 전단 열 멀티플렉서의 출력 라인이 연결되며, 나머지 입력 라인에는 당해 멀티플렉서를 포함하는 열의 입출력 라인이 연결되며, 각 행의 마 지막단 열 멀티플렉서의 출력 라인에는 당해 행의 입출력 라인이 연결되는 것을 특징으로 한다.
특히, 본 발명은 다수개의 마스터와 슬레이브로 구성된 멀티프로세서 SoC 플랫폼에 적용하기 위한 메트릭스 형태의 크로스바 스위치 구조로서, 상기 메트릭스의 각 열의 입출력 라인은 프로세싱 유닛 같은 마스터 장치에 연결되며, 각 행의 입출력 라인은 주변장치 인터페이스 같은 슬레이브 장치에 연결될 수 있다.
이하, 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
예컨대, 하기 실시예를 이루는 다양한 종류의 각 멀티플렉서들은 입력단과 출력단을 명확히 도시하였으며, 설명에 있어서도 입력단과 출력단을 구분하여 기술하고 있지만, 전송방향과 무관하게 데이터의 입출력 경로를 형성하는 멀티플렉서의 용도 및 특성을 고려하면, 입력단 및 출력단의 구분은 설명의 편의를 부여하기 위한 것며, 입력단과 출력단이 반대로 구현되는 것도 무방하며, 멀티플렉서를 통한 데이터의 전송도 양방향으로 모두 가능함은 자명한 사실이다.
(실시예 1)
도 3a는 도 2의 제어구조가 복잡하고 확장이 어려운 문제를 해결하기 위한 방법으로 제안된 2×2 멀티플렉서를 이용한 본 실시예의 메트릭스 형태의 크로스바 스위치 구조 구조를 적용한 멀티프로세서 SoC 플랫폼을 도시한다. 도시한 본 실시예의 스위치 메트릭스(SM0)는 확장성을 극대화하는데 목적을 두고, 2×2 멀티플렉서를 이용하여 마스터와 슬레이브를 연결하는데 그 특징이 있다.
도 3a에 도시한 바와 같이, 본 실시예에서는 행과 열로 이루어진 메트릭스 형태 연결구조를 가지는 2×2 멀티플렉서들로 스위치 메트릭스(SM0)가 구성된다. 여기서, 각 2×2 멀티플렉서는 하나의 입력 라인에는 동일 행의 전단 열 멀티플렉서의 출력 라인이 연결되며, 나머지 입력 라인에는 동일 열의 전단 행 멀티플렉서의 출력 라인 또는 당해 멀티플렉서를 포함하는 열의 입출력 라인이 연결되며, 각 행의 마지막단 열 멀티플렉서(300, 310, 320, 330)의 출력 라인에는 당해 행의 입출력 라인이 연결되는 구조를 가진다.
상기 2×2 멀티플렉서들로 이루어진 메트릭스 행들의 맨 오른쪽 2×2 멀티플렉서(300, 310, 320, 330)의 출력 라인에 연결된 입출력 라인은 슬레이브 장치(370, 371, 372, 373)에 하나씩 연결되며, 상기 2×2 멀티플렉서들로 이루어진 메트릭스 열들의 맨 위쪽 2×2 멀티플렉서(300, 301, 302, 303)의 입력 라인에 연결된 입출력 라인은 마스터 장치(360, 361, 362, 363)에 하나씩 연결된다.
도 3b에 도시한 바와 같이, 상기 스위치 메트릭스(SM0)를 이루는 2×2 멀티플렉서(300)는 입력되는 데이터가 행과 열에서 도착하면 2×2 멀티플렉서의 제어 비트에 의해서 행과 열의 데이터 전송 방향을 결정하는 구조를 가진다. 상기 2×2 멀티플렉서(300)는 2개의 입력 라인과 2개의 출력 라인 사이에서 형성될 수 있는 4개의 스위칭 경로 중에서 상기 제어 비트에 따라 하나를 선택하며, 상기 선택에 따 라, 입력되는 데이터를 행과 열로 보낼 수 있는 구조를 가진다.
상기 2×2 멀티플렉서의 연결 경로 조합를 이용하여 마스터에서 슬레이브로 연결하는 행과 열의 데이터 경로를 연결할 수 있다. 마스터 M3(363)에서 슬레이브 S0(370)로 데이터를 보낼 때의 전송 경로(P0)는 첫 번째 열 4개의 2×2 멀티플렉서(303 ~ 300)에 의해 형성된다. 또한, M3(363)에서 S3(373)로 데이터를 전송할 때의 전송 경로(P1)는 7개의 2×2 멀티플렉서(303, 313, 323, 333 ~ 330)에 의해 형성된다.
이 구조의 특징은 마스터와 슬레이브가 증가함에 따라서 행과 열의 2×2 멀티플렉서를 증가시키면 되므로 확장성이 유리하며 제어 구조가 간단한 구조이다. 도 3a에서 마스터가 증가함에 따라 멀티플렉서의 구조 변경 없이 2×2 멀티플렉서 4개를 열방향으로 최외각의 4개의 2×2 멀티플렉서(303, 313, 323, 333)에 추가 연결함으로 확장이 가능하며, 슬레이브가 증가함에 따라 2×2 멀티플렉서를 행의 방향으로 최외각의 4개의 2×2 멀티플렉서(333, 332, 331, 330)에 추가 연결함으로써 확장이 가능하다.
그러나, M3(363)에서 S3(373)로 데이터를 전송할 때는 7개의 2×2 멀티플렉서를 지나야 하므로 전송 지연시간이 발생하는 제약 조건이 있다. 또한, 도시한 스위치 구조는 최단 데이터 전송 경로와 최장 데이터 전송 경로간의 차이가 심하여 구현하고자 하는 기능을 어떻게 할당하느냐에 따라서 전체 시스템 성능의 차이가 발생할 수 있다.
그럼에도 불구하고, 본 실시예의 메트릭스 형태의 크로스바 스위치 구조는 확장성이 매우 용이한 장점을 가진다. 열방향이건 행방향이건 추가되는 2×2 멀티플렉서는 이전단의 2×2 멀티플렉서에서 사용하지 않았던 입/출력 라인에 연결되므로, 회로의 추가 연결하는 것에 대한 부담이 작다.
상기 스위칭 제어기(350)는 입력받은 명령어를 해석하고, 명령어에 따른 처리에 필요한 마스터(프로세싱 유닛) 및 슬레이브(주변장치)를 판단하고, 연결이 필요한 마스터와 슬레이브간에 데이터 전송 경로를 형성하기 위해, 상기 스위치 메트릭스를 이루는 각 2×2 멀티플렉서들에 대한 제어 신호를 생성한다. 또한, 상기 스위칭 제어기(350)는 마스터들의 요구를 중재하는 중재기의 기능 및 마스터와 슬레이브들을 연결하기 위한 어드레스 디코더등의 기능을 담당한다.
(실시예 2)
앞서 살펴본 바와 같이 상기 제1 실시예의 크로스바 스위치 구조는 형성된 경로에 따라 데이터 전송 지연이 발생할 수 있으며, 각 형성된 경로에 따라 데이터 지연 편차가 발생하는 단점이 있다.
본 실시예에서 제안하고자 하는 멀티프로세서 SoC 플랫폼을 구현하기 위한 개선된 메트릭스 형태의 크로스바 스위치 구조는, 확장성이 용이하면서도 고속의 데이터 전송을 가능하게 하고, 각 형성된 경로간 데이터 전송 지연 편차를 제거하는 것을 목적으로 한다.
도 4a에 도시한 바와 같이, 본 실시예에서는 행과 열로 이루어진 메트릭스 형태 연결구조를 가지는 2×1 멀티플렉서들로 크로스바 스위치가 구성된다. 여기서, 각 2×1 멀티플렉서는 하나의 입력 라인에는 동일 행의 전단 열 멀티플렉서의 출력 라인이 연결되며, 나머지 입력 라인에는 당해 멀티플렉서를 포함하는 열의 입출력 라인이 연결되며, 각 행의 마지막단 열 멀티플렉서의 출력 라인에는 당해 행의 입출력 라인이 연결되는 구조를 가진다.
상기 2×1 멀티플렉서들로 이루어진 메트릭스 행들의 맨 오른쪽 2×2 멀티플렉서(400, 410, 420, 430)의 출력 라인에서 도출되는 입출력 라인은 슬레이브 장치(470, 471, 472, 473)에 하나씩 연결되며, 상기 2×2 멀티플렉서들로 이루어진 메트릭스 열들의 입출력 라인은 마스터 장치(460, 461, 462, 463)에 하나씩 연결된다.
도 4b에 도시한 바와 같이, 상기 스위치 메트릭스를 이루는 2×1 멀티플렉서(400)는 입력되는 데이터가 행과 열에서 도착하면 2×1 멀티플렉서의 제어 비트에 의해서 행과 열의 데이터 전송 방향을 결정하는 구조를 가진다. 상기 2×1 멀티플렉서(400)는 2개의 입력 라인과 1개의 출력 라인 사이에서 형성될 수 있는 2개의 스위칭 경로 중에서 상기 제어 비트에 따라 하나를 선택한다.
도 4a는 2×1 멀티플렉서로 이루어진 본 실시예의 메트릭스 형태의 크로스바 스위치 구조를 적용한 멀티프로세서 SoC 플랫폼이다. 2×1 멀티플렉서는 행과 열로부터 전달된 데이터를 1비트의 제어비트에 따라 마스터의 입출력 라인 및 이전단(도면에서 왼쪽단)의 출력 라인 중 하나를 선택하여, 출력 라인으로 하나의 스위칭 경로를 형성한다. 따라서, 모든 마스터(460, 461, 462, 463)에서 슬레이브(470, 471, 472, 473)로, 슬레이브(470, 471, 472, 473)에서 마스터(460, 461, 462, 463) 로의 데이터 전송은 하나의 행을 형성하는 4개의 2×1 멀티플렉서를 통해 행 방향으로만 이루어짐을 알 수 있다.
예컨대, 도시한 마스터 M3(463)에서 슬레이브 S0(470)로 데이터를 전송할 때의 형성되는 경로(P0)는 첫 번째 행의 4개의 2×1 멀티플렉서(403, 402, 401, 400)로 이루어진다. 마스터 M3(463)에서 슬레이브 S3(473)로 데이터를 전송할 때에 형성되는 경로(P1)는 네번째 행의 4개의 2×1 멀티플렉서(433, 432, 431, 430)로 이루어진다. 따라서, 이 구조에서는 모든 마스터가 슬레이브로 데이터를 전송하는데 4개의 멀티플렉서를 통과하면 된다. 마스터 장치와 슬레이브 장치를 확장하고자 할때에는 상기 제1 실시예의 경우와 같이 행과 열에 2×1 멀티플렉서를 연결하면 확장이 가능하다.
또한, 2×1 멀티플렉서를 사용함으로 1비트의 제어비트로 전송 경로를 제어할 수 있는 간단한 제어 구조를 갖는다. 이 구조의 특징은 도 3과 같이 확장성이 충분히 용이하면서도 데이터 전송 경로와 복잡한 제어 구조의 제약조건을 해결한 것에 있다. 상기 제1 실시예의 구조와 비교할 때, 예컨대, 마스트 확장시 추가되는 1열의 각 2×1 멀티플렉서에 슬레이브 입출력 라인을 각각 연결하여야 하므로, 확장성에 대해서는 상기 제1 실시예 보다는 떨어지나, 제어가 보다 간단하고, 메트릭스를 이루는 단위 멀티플렉서의 구조가 간단하며, 전송속도가 빠르고, 하나의 마스터에 대하여 형성된 경로들간의 지연 시간 편차가 없다는 장점이 있다.
상기 스위칭 제어기(450)는 입력받은 명령어를 해석하고, 명령어에 따른 처리에 필요한 마스터(프로세싱 유닛) 및 슬레이브(주변장치)를 판단하고, 연결이 필 요한 마스터와 슬레이브간에 데이터 전송 경로를 형성하기 위해, 상기 크로스바 스위치를 이루는 각 2×2 멀티플렉서에 대한 제어 신호를 생성한다. 또한, 마스터들의 요구를 중재하는 중재기의 기능 및 마스터와 슬레이브들을 연결하기 위한 어드레스 디코더등의 기능을 담당한다.
(실시예 3)
도 5에 도시한 바와 같은 본 실시예의 멀티프로세서 SoC 플랫폼에 사용된 메트릭스 형태의 크로스바 스위치 구조는, 도 4에 도시한 2×1 멀티플렉서로 이루어진 확장이 용이하며 제어구조가 간단한 스위치 메트릭스에, 데이터 전송 경로를 조절할 수 있는 멀티플렉서를 마스터 및 슬레이브의 입출력 단에 연결한 구조를 결합한 구조를 가진다.
도시한 구조에서는 도 4에서와 같이 2×1 멀티플렉서로 스위치 메트릭스를 구성하고 마스터단에 M×C 멀티플렉서(M: 마스터의 개수, C: 2×1 멀티플렉서로 이루어진 메트릭스 열의 수)를 연결하고, 슬레이브단에 N×R 멀티플렉서(N: 슬레이브의 개수, R: 2×1 멀티플렉서로 이루어진 메트릭스 행의 수)를 연결한 구조를 가진다.
상기 2×1 멀티플렉서로 이루어진 메트릭스 형태의 크로스바 스위치 구조는 상기 제2 실시예의 경우와 동일하며, 따라서, 확장이 용이하면서도 고속의 데이터 전송이 가능한 경로를 형성할 수 있다.
본 실시예에서 추가된 구성요소인 상기 마스터단 멀티플렉서(580) 및 슬레이 브단 멀티플렉서(590)에 의해, 각 마스터 장치의 기능과 데이터 전송량에 따라 적합한 특성을 가지는 전송 경로를 선택할 수 있는 효과가 있다.
예컨대, 마스터 M3(563)가 슬레이브 S0(570)로 데이터를 전송할 경우에 형성되는 전송 경로는, 마스터단의 멀티플렉서(580), 2×1 멀티플렉서로 이루어진 메트릭스 및 슬레이브단의 멀티플렉서(590)에 의해 결정되는데, 마스터 M3(563)에 대하여 전송 속도가 매우 중요하다면 하나의 2×1 멀티플렉서(500)만을 경유하는 가장 빠른 경로(P0)를 선택할 수 있고, 다른 마스터에 비하여 속도가 중요하지 않다면 4 개의 2×1 멀티플렉서(503, 502, 501, 500)를 경유하는 가장 느린 경로(P1)를 선택할 수 있다. 가장 빠른 경로(P0)를 선택한 경우에는 마스터 M3(563)가 슬레이브 S0(570)로의 데이터 전송시에는 하나의 2×1 멀티플렉서(500)와, 마스터단 멀티플렉서 및 슬레이브단 멀티플렉서만 통과하면 된다.
마찬가지로, 마스터 M3(563)가 슬레이브 S3(573)로 데이터를 전송할 경우 형성될 수 있는 가장 빠른 경로는 하나의 2×1 멀티플렉서(530)와 마스터단/슬레이브단 멀티플렉서만을 포함하며, 가장 느린 경로는 4개의 멀티플렉서(533 ~ 530)와 마스터단/슬레이브단 멀티플렉서를 포함한다.
즉, 본 실시예의 멀티프로세서 SoC 플랫폼은, 또한 2×1 멀티플랙서로 구성된 크로스바 스위치를 이용함으로 마스터와 슬레이브 수의 확장에 따라 행과 열에 멀티플랙서를 추가함으로 확장성이 용이하며 제어 구조가 간단하면서 고속의 데이터 전송이 가능하게 되는 상기 제2 실시예의 효과와 더불어, 필요에 따라 각 마스터의 데이터 전송 속도를 효율적으로 조절할 수 있는 효과가 있다.
본 실시예의 마스터단 멀티플렉서(580) 및 슬레이브단 멀티플렉서(590)의 입력 라인은 각 마스터 장치(560 ~ 563) 또는 각 슬레이브 장치(570 ~ 573)에 연결되며, 출력 라인은 2×1 멀티플랙서 메트릭스의 각 열 또는 각 행에 연결된다. 구현에 따라 마스터 장치의 개수가 상기 메트릭스의 열의 개수보다 많은 경우, 상기 마스터단 멀티플렉서(580)는 입력 라인의 개수가 출력 라인 개수보다 많은 형태의 멀티플렉서로 구현하며, 마스터 장치의 개수가 상기 메트릭스의 열의 개수보다 적은 경우, 상기 마스터단 멀티플렉서(580)는 입력 라인의 개수가 출력 라인 개수보다 적은 형태의 멀티플렉서로 구현한다.
여기서, 전자의 경우는 다수의 마스터 장치를 연결한 상태에서 한꺼번에 데이터 전송이 필요한 마스터 장치는 한정되어 있으므로 보다 하드웨어 구현 효율을 높이기 위한 구현에서 나타날 수 있으며, 후자의 경우는 추후의 마스터 장치의 추가를 위해서 여유분의 전송 경로를 구비한 구현에서 나타날 수 있다.
슬레이브단 멀티플렉서(590)에 대하여도 마찬가지의 관계가 형성될 수 있다.
한편, 2×1 멀티플렉서로 이루어진 메트릭스 상에서 열들의 입출력 라인(마스터 장치와 선택적으로 연결됨)의 선택에 따라 전송속도가 달라지나, 슬레이브 장치와 선택적으로 연결되는 행들의 입출력 라인의 선택과 전송속도는 무관함을 알 수 있다. 따라서, 행들의 입출력 라인의 개수가 슬레이브의 개수와 동일하거나 더 많은 경우, 상기 슬레이브단 멀티플렉서(590)를 구비하는 실익이 없으므로, 이 경우에는 슬레이브단 멀티플렉서를 생략하고, 상기 메트릭스 행들의 입출력 라인을 바로 슬레이브(570, 571, 572, 573)로 하나씩 연결하는 것이 바람직하다.
상기 제1 실시예의 2×2 멀티플렉서 및 본 실시예의 2×1 멀티플렉서는 제어 비트에 따라 형성가능한 수개의 스위칭 경로 중 하나만이 형성되는 단일 채널 멀티플렉서인 반면, 상기 마스터단 멀티플렉서(580) 및 슬레이브단 멀티플렉서(590)는 제어 비트에 따라 입력 라인의 개수 또는 출력 라인의 개수 만큼의 스위칭 경로가 형성되는 멀티 채널 멀티플렉서인 것이 바람직하다.
비록 도시한 구조에서는 상기 제2 실시예에서 사용되는 2×1 멀티플렉서로 이루어진 메트릭스 형태의 크로스바 스위치를 사용하였지만, 상기 제1 실시예에 사용되는 2×2 멀티플렉서로 이루어진 메트릭스로 적용가능함은 당연하며, 그 세부 구성 및 기능은 상기 제1 실시예의 설명 및 본 실시예의 설명으로부터 용이하게 유추가능하므로 설명을 생략하겠다.
도시한 본 실시예의 크로스바 스위치 구조에서 각 마스터가 슬레이브로 데이터 전송을 하기 위한 순서도는 도 7에 도시한 바와 같다. 각 마스터들이 슬레이브에 데이터 전송 요청을 스위칭 제어부에 보낸다(S700). 스위칭 제어부가 요청신호를 받은 후 동일 슬레이브가 아닌 경우에는 요청한 마스터에게 데이터 전송 가능 신호를 보내고, 만일 동일 슬레이브로 데이터 전송 요청이 들어올 경우(S710)에는 라운드 로빈(round robin) 방법 등과 같은 우선순위 중재방법에 따라서 전송할 마스터를 결정한다(S720). 선택된 마스터는 크로스바 스위치를 거쳐 슬레이브로 데이터를 전송하게 되고, 선택되지 않는 마스터는 기다린다.
전송이 허락된 마스터는 스위칭 제어부의 데이터 전송 특성에 따라서 최단 경로를 할당받는가를 검사하여(S730), 최단 경로를 할당받는 것으로 결정된 경우에는 마스터단 멀티플랙서에 최단 경로 제어신호를 보냄으로 최단 경로로 데이터 전송하게 된다(S740). 최단 경로가 아닌 경우에는 제어기에 의해서 정해진 경로에 따라서 데이터가 전송된다.
스위칭 제어부의 슬레이브 주소 디코더에 의해서 슬레이브로 가기 위한 스위치 메트릭스의 경로가 할당된다(S750). 슬레이브단 멀티플랙서도 스위칭 제어부에 의해 전송 경로를 선택하고(S770), 선택된 마스터단 멀티플렉서 경로, 스위치 메트릭스 경로 및 슬레이브 멀티플렉서 경로를 경유하여 해당 마스터 장치 및 슬레이브 장치간의 데이터를 전송하고, 데이터 전송을 완료한다(S780).
(실시예 6)
도 6에 도시한 본 실시예의 크로스바 스위치 구조는, 도 5에서 단일 멀티플렉서로 구현하였던, 마스터단 멀티플렉서 및 슬레이브단 멀티플렉서를 다양한 형태로 분할하여 구성한 특징을 가진다. 이에 따라 크로스바 스위치 구조의 제어 방법의 편의성 및 확장성 측면에서 절충한 형태를 가지게 된다.
예컨대, 도시한 구조에서 제1 마스터단 멀티플렉서(682)에 연결되는 프로세싱 유닛들(M0, M1)은 항상 보다 빠른 전송 경로를 형성하게 되고, 제2 마스터단 멀티플렉서(684)에 연결되는 프로세싱 유닛들(M2, M3)은 항상 보다 느린 전송 경로를 형성하게 된다. 그러므로, 보다 빠른 전송 속도를 요하는 프로세싱 유닛들 또는 SoC 플랫폼 최초 설계시 필수 프로세싱 유닛들은 상기 제1 마스터단 멀티플렉서(682)에 연결하고, 전송 속도가 중요치 않은 프로세싱 유닛들 또는 SoC 플랫폼 설계상 추가된 프로세싱 유닛들은 제2 마스터단 멀티플렉서(684)에 연결하도록 구현할 수 있다.
한편, 슬레이브 장치와 스위치 메트릭스의 열의 입출력 라인의 선택은 전송 속도에 영향을 미치지 않으므로, 도시한 바와 같은 다수개의 슬레이브단 멀티플렉서의 구성은, 각 슬레이브 장치의 종류별로 구분하여 연결할 수 있는 이점을 제공할 뿐이다.
살펴본 바와 같이, 본 실시예의 크로스바 스위치 구조를 적용한 SoC 플랫폼은, 전송 특성과 마스터 슬레이브 수에 따라서 다양한 형태의 멀티플랙서 구조를 연결함으로 다양한 형태의 데이터 전송이 가능해 짐에 따라 멀티프로세서 SoC 플랫폼 구성의 융통성과 확장성의 요구를 만족시킬 수 있게 된다.
이상, 본 발명을 바람직한 실시예를 들어 상세하게 설명하였으나, 본 발명은 상기 실시예에 한정되지 않고, 본 발명의 기술적 사상의 범위 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러가지 변형이 가능하다.
상기 구성에 따른 본 발명의 크로스바 스위치 구조를 실시함에 의해, 마스터 장치 또는 슬레이브 장치의 추가시에 변경이 용이한 확장성이 우수한 효과가 있다.
또한, 본 발명의 크로스바 스위치 구조는 충분한 수준의 확장성을 가지면서 도 고속의 데이터 전송이 가능한 효과도 있다.
또한, 본 발명의 크로스바 스위치 구조는 실시간 전송을 위해서 버퍼를 필요로 하지 않으며 최단 전송 경로를 통해서 병렬로 데이터 전송이 가능함으로 데이터 지연 시간을 단축하여 전체적인 시스템의 성능을 향상시키는 효과도 있다.
또한, 본 발명의 크로스바 스위치 구조는 다양한 마스터 장치 및 슬레이브 장치의 연결에 융통성을 부여하는 효과 및/또는 전송 경로 선택 구조를 다양하게 구성할 수 있는 효과도 있다.

Claims (20)

  1. 행과 열로 이루어진 메트릭스 형태 연결구조를 가지는 2×2 멀티플렉서들로 이루어지며,
    상기 각 2×2 멀티플렉서는,
    하나의 입력 라인에는 동일 행의 전단 열 멀티플렉서의 출력 라인이 연결되며,
    나머지 입력 라인에는 동일 열의 전단 행 멀티플렉서의 출력 라인 또는 당해 멀티플렉서를 포함하는 열의 입출력 라인이 연결되며,
    각 행의 마지막단 열 멀티플렉서의 출력 라인에는 당해 행의 입출력 라인이 연결되는 것을 특징으로 하는 크로스바 스위치.
  2. 제1항에 있어서,
    상기 행들의 입출력 라인은 슬레이브에 하나씩 연결되며,
    상기 열들의 입출력 라인은 마스터에 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  3. 제1항에 있어서,
    입력받은 명령어의 해석에 따라 상기 각 2×2 멀티플렉서의 연결 경로를 결정하기 위한 스위칭 제어부를 더 포함하는 것을 특징으로 하는 크로스바 스위치.
  4. 제1항에 있어서,
    상기 행들의 입출력 라인들은 하나의 슬레이브단 멀티플렉서들의 각 출력 라인으로 하나씩 연결되며,
    상기 슬레이브단 멀티플렉서의 각 입력 라인에는 슬레이브가 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  5. 제1항에 있어서,
    상기 행들의 입출력 라인들은 하나 이상의 슬레이브단 멀티플렉서들의 각 출력 라인으로 연결되며,
    상기 슬레이브단 멀티플렉서들의 각 입력 라인에는 슬레이브들이 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  6. 제5항에 있어서,
    상기 슬레이브단 멀티플렉서들은, 입력 라인으로 상기 행들의 입출력 라인들 중 2개가 연결되며 출력 라인으로 상기 슬레이브 중 2개가 연결되는 2×2 멀티플렉서 다수개로 이루어지는 것을 특징으로 하는 크로스바 스위치.
  7. 제1항에 있어서,
    상기 열들의 입출력 라인들은 하나의 마스터단 멀티플렉서의 각 출력 라인으로 하나씩 연결되며,
    상기 마스터단 멀티플렉서의 각 입력 라인에는 마스터가 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  8. 제1항에 있어서,
    상기 열들의 입출력 라인들은 하나 이상의 마스터단 멀티플렉서들의 각 출력 라인으로 연결되며,
    상기 마스터단 멀티플렉서들의 각 입력 라인에는 마스터들이 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  9. 제8항에 있어서,
    상기 마스터단 멀티플렉서들은, 입력 라인으로 상기 열들의 입출력 라인들 중 2개가 연결되며 출력 라인으로 상기 마스터 중 2개가 연결되는 2×2 멀티플렉서 다수개로 이루어지는 것을 특징으로 하는 크로스바 스위치.
  10. 제1항에 있어서,
    상기 마스터는 프로세싱 단위 유닛이며,
    상기 슬레이브는 주변 장치 인터페이스인 것을 특징으로 하는 크로스바 스위치.
  11. 행과 열로 이루어진 메트릭스 형태 연결구조를 가지는 2×1 멀티플렉서들로 이루어지며,
    상기 각 2×1 멀티플렉서는,
    하나의 입력 라인에는 동일 행의 전단 열 멀티플렉서의 출력 라인이 연결되며,
    나머지 입력 라인에는 당해 멀티플렉서를 포함하는 열의 입출력 라인이 연결되며,
    각 행의 마지막단 열 멀티플렉서의 출력 라인에는 당해 행의 입출력 라인이 연결되는 것을 특징으로 하는 크로스바 스위치.
  12. 제11항에 있어서,
    상기 행들의 입출력 라인은 슬레이브에 하나씩 연결되며,
    상기 열들의 입출력 라인은 마스터에 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  13. 제11항에 있어서,
    입력받은 명령어의 해석에 따라 상기 각 2×1 멀티플렉서의 연결 경로를 결정하기 위한 스위칭 제어부를 더 포함하는 것을 특징으로 하는 크로스바 스위치.
  14. 제11항에 있어서,
    상기 행들의 입출력 라인들은 하나의 슬레이브단 멀티플렉서들의 각 출력 라인으로 하나씩 연결되며,
    상기 슬레이브단 멀티플렉서의 각 입력 라인에는 슬레이브가 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  15. 제11항에 있어서,
    상기 행들의 입출력 라인들은 하나 이상의 슬레이브단 멀티플렉서들의 각 출력 라인으로 연결되며,
    상기 슬레이브단 멀티플렉서들의 각 입력 라인에는 슬레이브들이 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  16. 제15항에 있어서,
    상기 슬레이브단 멀티플렉서들은, 입력 라인으로 상기 행들의 입출력 라인들 중 2개가 연결되며 출력 라인으로 상기 슬레이브 중 2개가 연결되는 2×2 멀티플렉서 다수개로 이루어지는 것을 특징으로 하는 크로스바 스위치.
  17. 제11항에 있어서,
    상기 열들의 입출력 라인들은 하나의 마스터단 멀티플렉서의 각 출력 라인으로 하나씩 연결되며,
    상기 마스터단 멀티플렉서의 각 입력 라인에는 마스터가 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  18. 제11항에 있어서,
    상기 열들의 입출력 라인들은 하나 이상의 마스터단 멀티플렉서들의 각 출력 라인으로 연결되며,
    상기 마스터단 멀티플렉서들의 각 입력 라인에는 마스터들이 하나씩 연결되는 것을 특징으로 하는 크로스바 스위치.
  19. 제18항에 있어서,
    상기 마스터단 멀티플렉서들은, 입력 라인으로 상기 열들의 입출력 라인들 중 2개가 연결되며 출력 라인으로 상기 마스터 중 2개가 연결되는 2×2 멀티플렉서 다수개로 이루어지는 것을 특징으로 하는 크로스바 스위치.
  20. 제11항에 있어서,
    상기 마스터는 프로세싱 단위 유닛이며,
    상기 슬레이브는 주변 장치 인터페이스인 것을 특징으로 하는 크로스바 스위치.
KR1020060074086A 2005-12-07 2006-08-07 멀티프로세서 SoC 플랫폼에 적합한 크로스바 스위치구조 KR100812225B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/607,515 US7554355B2 (en) 2005-12-07 2006-12-01 Crossbar switch architecture for multi-processor SoC platform

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020050119055 2005-12-07
KR20050119055 2005-12-07

Publications (2)

Publication Number Publication Date
KR20070059899A KR20070059899A (ko) 2007-06-12
KR100812225B1 true KR100812225B1 (ko) 2008-03-13

Family

ID=38356153

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060074086A KR100812225B1 (ko) 2005-12-07 2006-08-07 멀티프로세서 SoC 플랫폼에 적합한 크로스바 스위치구조

Country Status (2)

Country Link
US (1) US7554355B2 (ko)
KR (1) KR100812225B1 (ko)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008042343A (ja) * 2006-08-02 2008-02-21 Nec Electronics Corp スイッチ回路およびスイッチ装置
TWI376605B (en) * 2006-09-04 2012-11-11 Novatek Microelectronics Corp Method and apparatus for enhancing data rate of advanced micro-controller bus architecture
US20080109587A1 (en) * 2006-11-02 2008-05-08 Motorola, Inc. Switch control of usb transceiver between a plurality of processors
KR100862918B1 (ko) * 2007-05-04 2008-10-13 성균관대학교산학협력단 멀티프로세서 SoC 플랫폼 및 이를 사용하는 DVB-T베이스밴드 수신장치
US8156273B2 (en) * 2007-05-10 2012-04-10 Freescale Semiconductor, Inc. Method and system for controlling transmission and execution of commands in an integrated circuit device
WO2009023563A1 (en) 2007-08-10 2009-02-19 Smith Robert B Path redundant hardware efficient communications interconnect system
US20090144480A1 (en) * 2007-12-03 2009-06-04 Jun-Dong Cho Multi-processor system on chip platform and dvb-t baseband receiver using the same
US8006021B1 (en) * 2008-03-27 2011-08-23 Xilinx, Inc. Processor local bus bridge for an embedded processor block core in an integrated circuit
US8706793B1 (en) 2009-04-02 2014-04-22 Xilinx, Inc. Multiplier circuits with optional shift function
US9411554B1 (en) 2009-04-02 2016-08-09 Xilinx, Inc. Signed multiplier circuit utilizing a uniform array of logic blocks
US9002915B1 (en) 2009-04-02 2015-04-07 Xilinx, Inc. Circuits for shifting bussed data
US7982496B1 (en) 2009-04-02 2011-07-19 Xilinx, Inc. Bus-based logic blocks with optional constant input
US7746105B1 (en) * 2009-04-02 2010-06-29 Xilinx, Inc. Merging data streams in a self-timed programmable integrated circuit
US7746101B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Cascading input structure for logic blocks in integrated circuits
US7746109B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Circuits for sharing self-timed logic
US7746108B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Compute-centric architecture for integrated circuits
US8527572B1 (en) 2009-04-02 2013-09-03 Xilinx, Inc. Multiplier architecture utilizing a uniform array of logic blocks, and methods of using the same
US7948265B1 (en) 2009-04-02 2011-05-24 Xilinx, Inc. Circuits for replicating self-timed logic
CN102063396A (zh) 2009-11-18 2011-05-18 意法-爱立信公司 芯片上的“主-主”数据传送的方法和装置及片上系统
TWI409642B (zh) * 2009-12-25 2013-09-21 Asustek Comp Inc 具有橋接器之電腦系統
CN102109879B (zh) * 2009-12-25 2016-02-17 华硕电脑股份有限公司 具有桥接器的电脑系统
US7982504B1 (en) 2010-01-29 2011-07-19 Hewlett Packard Development Company, L.P. Interconnection architecture for multilayer circuits
WO2011093863A1 (en) 2010-01-29 2011-08-04 Hewlett-Packard Development Company, L.P. Three dimensional multilayer circuit
US8402164B1 (en) 2010-10-27 2013-03-19 Xilinx, Inc. Asynchronous communication network and methods of enabling the asynchronous communication of data in an integrated circuit
KR20120072211A (ko) * 2010-12-23 2012-07-03 한국전자통신연구원 메모리 매핑장치 및 이를 구비한 멀티프로세서 시스템온칩 플랫폼
CN102495554A (zh) * 2011-11-22 2012-06-13 苏州凌创电子科技有限公司 一种程控矩阵开关及其制造方法
KR102012699B1 (ko) 2013-01-25 2019-08-21 삼성전자 주식회사 다중 버스 시스템 및 이를 포함하는 반도체 시스템
DE102013019643A1 (de) * 2013-11-22 2015-05-28 Siemens Aktiengesellschaft Zweistufiger Kreuzschienenverteiler und Verfahren zum Betrieb
FR3015068B1 (fr) * 2013-12-18 2016-01-01 Commissariat Energie Atomique Module de traitement du signal, notamment pour reseau de neurones et circuit neuronal
US9077338B1 (en) * 2014-05-20 2015-07-07 Altera Corporation Method and circuit for scalable cross point switching using 3-D die stacking
JP6608688B2 (ja) 2015-12-02 2019-11-20 ルネサスエレクトロニクス株式会社 半導体装置
US11237828B2 (en) 2016-04-26 2022-02-01 Onnivation, LLC Secure matrix space with partitions for concurrent use
US11740903B2 (en) 2016-04-26 2023-08-29 Onnivation, LLC Computing machine using a matrix space and matrix pointer registers for matrix and array processing
US10346347B2 (en) 2016-10-03 2019-07-09 The Regents Of The University Of Michigan Field-programmable crossbar array for reconfigurable computing
US11080048B2 (en) 2017-03-20 2021-08-03 Intel Corporation Systems, methods, and apparatus for tile configuration
US10171084B2 (en) 2017-04-24 2019-01-01 The Regents Of The University Of Michigan Sparse coding with Memristor networks
WO2019009870A1 (en) 2017-07-01 2019-01-10 Intel Corporation SAVE BACKGROUND TO VARIABLE BACKUP STATUS SIZE
US10943652B2 (en) 2018-05-22 2021-03-09 The Regents Of The University Of Michigan Memory processing unit
TWI764139B (zh) * 2020-04-27 2022-05-11 鴻海精密工業股份有限公司 訪問資料匯流排的裝置、方法及系統
US11848689B2 (en) * 2022-03-04 2023-12-19 Microsoft Technology Licensing, Llc Method and apparatus for compression multiplexing for sparse computations

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6482161A (en) * 1987-06-22 1989-03-28 Texas Instruments Inc Digital cross bar switch
US5111431A (en) 1990-11-02 1992-05-05 Analog Devices, Inc. Register forwarding multi-port register file
JP2000200258A (ja) 1998-08-28 2000-07-18 Sharp Corp システムオンチップ(soc)4方向切り替えクロスバ―システムおよびその方法
KR20050092632A (ko) * 2004-03-16 2005-09-22 한국과학기술원 저전력 크로스바 스위치

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4968977A (en) 1989-02-03 1990-11-06 Digital Equipment Corporation Modular crossbar interconnection metwork for data transactions between system units in a multi-processor system
US5877636A (en) * 1996-10-18 1999-03-02 Samsung Electronics Co., Ltd. Synchronous multiplexer for clock signals
US5982309A (en) * 1998-01-09 1999-11-09 Iowa State University Research Foundation, Inc. Parallel-to-serial CMOS data converter with a selectable bit width mode D flip-flop M matrix
US6487171B1 (en) 1999-05-19 2002-11-26 3Com Corporation Crossbar switching matrix with broadcast buffering
CN1203684C (zh) 1999-12-30 2005-05-25 康涅克森特系统公司 用于通信设备的、带有并行通道的纵横制集成电路
US6501757B1 (en) 2000-02-29 2002-12-31 Centre For Development Of Telematics ATM switch
KR100555753B1 (ko) 2004-02-06 2006-03-03 삼성전자주식회사 원칩 시스템에서 라우터들간의 라우팅 경로 설정 장치 및방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6482161A (en) * 1987-06-22 1989-03-28 Texas Instruments Inc Digital cross bar switch
US5111431A (en) 1990-11-02 1992-05-05 Analog Devices, Inc. Register forwarding multi-port register file
JP2000200258A (ja) 1998-08-28 2000-07-18 Sharp Corp システムオンチップ(soc)4方向切り替えクロスバ―システムおよびその方法
KR20050092632A (ko) * 2004-03-16 2005-09-22 한국과학기술원 저전력 크로스바 스위치

Also Published As

Publication number Publication date
US20070126474A1 (en) 2007-06-07
KR20070059899A (ko) 2007-06-12
US7554355B2 (en) 2009-06-30

Similar Documents

Publication Publication Date Title
KR100812225B1 (ko) 멀티프로세서 SoC 플랫폼에 적합한 크로스바 스위치구조
US6526469B1 (en) Bus architecture employing varying width uni-directional command bus
US6557069B1 (en) Processor-memory bus architecture for supporting multiple processors
KR100985926B1 (ko) 메모리 시스템 컴포넌트들 사이에서 신호들을 리라우팅하는시스템 및 방법
US7380045B2 (en) Protocol conversion and arbitration circuit, system having the same, and method for converting and arbitrating signals
US8503466B2 (en) Network on chip input/output nodes
JPH0713945A (ja) 演算処理部および制御・記憶部分離型マルチプロセッサ ・システムのバス構造
KR100814904B1 (ko) 칩 내부 회로 간의 데이터 전송을 위한 통신 시스템
JPH02263260A (ja) メモリアクセススイッチネットワーク
JP4818920B2 (ja) 複数のプログラム可能なプロセッサを有する集積データ処理回路
KR100951856B1 (ko) 멀티미디어 시스템용 SoC 시스템
EP2288084B1 (en) Network system, information processing apparatus, and control method for network system
JP4611901B2 (ja) 信号伝送方法、ブリッジユニット、および情報処理装置
JP4687925B2 (ja) 優先調停システム及び優先調停方法
US20050228914A1 (en) Matrix type bus connection system
EP1675015B1 (en) Reconfigurable multiprocessor system particularly for digital processing of radar images
KR100617386B1 (ko) 네트웍 온 칩 어플리케이션을 위한 버터플라이 팻-트리를사용한 비동기 스위치 회로
KR100581196B1 (ko) 다중 채널을 제공하는 에스오씨 버스 구조
EP2189909B1 (en) Information processing unit and method for controlling the same
KR100798302B1 (ko) 버스 및 네트워크의 복합 통신 수단을 갖는 시스템 온칩
KR100397240B1 (ko) 데이터처리시스템
CN117176674B (zh) 片上网络及数据传输方法、芯片、设备
JP2008176394A (ja) マルチプロセッサシステム
JP2976700B2 (ja) プロセッサ間同期制御方式
JPH064401A (ja) メモリアクセス回路

Legal Events

Date Code Title Description
A201 Request for examination
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: 20110228

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20111208

Year of fee payment: 20