KR101061187B1 - 버스 시스템 및 그 제어 장치 - Google Patents

버스 시스템 및 그 제어 장치 Download PDF

Info

Publication number
KR101061187B1
KR101061187B1 KR1020090055694A KR20090055694A KR101061187B1 KR 101061187 B1 KR101061187 B1 KR 101061187B1 KR 1020090055694 A KR1020090055694 A KR 1020090055694A KR 20090055694 A KR20090055694 A KR 20090055694A KR 101061187 B1 KR101061187 B1 KR 101061187B1
Authority
KR
South Korea
Prior art keywords
bus
system component
clock frequency
ring
arbiter
Prior art date
Application number
KR1020090055694A
Other languages
English (en)
Other versions
KR20100137326A (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 KR1020090055694A priority Critical patent/KR101061187B1/ko
Priority to PCT/KR2009/005841 priority patent/WO2010150945A1/en
Publication of KR20100137326A publication Critical patent/KR20100137326A/ko
Application granted granted Critical
Publication of KR101061187B1 publication Critical patent/KR101061187B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • 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)
  • Bus Control (AREA)

Abstract

본 발명은 버스 시스템 및 그 제어 방법에 관한 것이다. 버스 시스템은 데이터 전송 매체로 동작하는 버스, 상기 버스를 사용하여 데이터를 송수신하는 복수의 시스템 컴포넌트, 및 상기 복수의 시스템 컴포넌트의 상기 버스의 사용을 중재하는 아비터를 포함하고, 상기 아비터는 상기 복수의 시스템 컴포넌트 중 적어도 하나의 시스템 컴포넌트로부터 전송된 상기 버스의 사용 요청에 따라서 상기 링 버스의 클록 주파수를 조절하는 것을 특징한다. 본 발명에 따르면, 시스템 컴포넌트 클록을 시분할(time-division)하여 데이터를 전송함으로써, 하나의 물리적인 버스를 복수의 시스템 컴포넌트가 논리적으로 공유하여 데이터를 전송할 수 있게 된다.
버스 시스템, 링 버스 라우터, 클록 조절, 온 칩 시스템, SoC

Description

버스 시스템 및 그 제어 장치{Bus system and Method for controlling the same}
본 발명은 버스 시스템 및 그 제어 방법에 관한 것으로서, 더욱 상세하게는 복수의 시스템 컴포넌트가 버스를 효율적으로 공유하여 사용할 수 있도록 하는 버스 시스템 및 그 제어 방법에 관한 것이다.
최근 서로 다른 기능을 수행하는 복수의 칩(Chip)을 하나의 칩 상에 집적한(integrated) 시스템 온 칩(SoC: System on Chip)의 사용이 보편화되고 있다.
SoC는 여러 가지 기능을 가진 시스템을 하나의 칩으로 구현한 기술집약적 반도체 내지 이를 위한 반도체 기술을 의미하는 것으로서, 여기서 '시스템'은 특정한 목적을 달성하기 위한 작업을 수행할 수 있는 종합 장치를 의미한다. SoC는 기능 모듈(function module) 또는 IP(Intellecture Property) 등과 같은 다양한 규모의 시스템 컴포넌트(system component)들이 복합적으로 연결되기 때문에, 설계, 검증 및 완성까지 많은 시간과 비용이 소모된다.
이에 따라, SoC를 보다 용이하게 개발하기 위한 여러 방법론들이 제안되었는데, 이 중 대표적인 것으로 플랫폼(platform)을 이용한 설계방법이 있다. '플랫 폼'은 시스템을 구성하기 위한 하드웨어 모듈 및 소프트웨어를 총칭하는 개념이다.
버스 시스템(bus system)은 이와 같은 플랫폼 구성을 위한 물리적 기반인 SoC 구조(Architecture)의 근간을 이루는 개념으로서, 신호 연결 규약(버스 프로토콜(protocol))과 신호 연결 구조(버스 토폴로지(topology))로 구성된다.
버스 프로토콜은 시스템 컴포넌트(component)들이 버스를 이용하여 데이터를 전송하기 위한 방법에 대한 규정을 의미한다. 일례로서, VSIA(Virtual Socket Interface Alliance)의 VCI(Virtual component Interface)와 OCP-IP(Open Core Protocol - International Partnership)의 OCP(Open Core Protocol) 등의 표준 버스 프로토콜이 있다.
또한, 앞서 언급한 표준 버스 프로토콜 이외에, 전세계 시장의 약 70%를 차지하고 있는 온 칩 버스의 통신 규약으로서, ARM(Advanced RISC Machines)에 의해 개발된 AMBA(Advanced Microcontroller Bus Architecture)가 있다. AMBA는 높은 시장 점유율로 인하여 사실상의 표준으로서 인정받고 있다. AMBA는 전체적인 버스 시스템을 말하는 것으로, 각각의 버전에 따라 다양한 종류의 버스 프로토콜로 구성되어 있다.
먼저, 1995년 최초로 발표된 AMBA 1.0은 ASB(Advanced System Bus)라는 고속버스와 APB(Advanced Peripheral Bus)라는 저속버스를 포함하여 구성되어 있다. 다음으로, 1999년 발표된 AMBA 2.0은 AMBA 1.0의 ASB, APB와 함께 AHB(Advanced High-performance Bus)라는 향상된 성능의 고속버스를 포함하여 구성되어 있다. 마지막으로, 2003년에 발표된 AMBA 3.0에는 APB와 함께 AHB의 개량 버전인 AHB- Lite와 새로운 고성능 버스인 AXI(Advanced eXtensible Interface)를 포함하여 구성되어 있다.
AXI는 다중채널기반 버스 프로토콜로서, NoC(Network on Chip)에서의 사용을 고려한 버스 프로토콜이다. AXI는 기본적으로 버스트(burst) 모드로서 동작하며, 성능향상을 위하여 아웃 오브 오더(out of order)와 같은 여러 기능을 제공한다. AXI는 SoC에서 NoC로의 발전을 고려하여, 버스 매트릭스(bus matrix) 구조에 적합하도록 설계되었으며, OCP-IP에 의해 표준화가 추진중인 대부분의 OCP 규약을 따르도록 구현되었다.
버스 토폴로지는 버스의 물리적 구조를 의미한다.
버스 토폴로지의 일례로, 가장 간단하게 구현할 수 있는 점대점(P2P: Point-to-Point) 구조에서부터 데이터 플로우(Data Flow) 구조, 링 버스(Ring Bus)와 같은 공유 버스(Shared Bus) 구조, 크로스바 스위치(Crossbar Switch) 구조, 및 NoC(Network on Chip) 구조 등이 있다.
그러나, 점대점 구조의 경우, 시스템 컴포넌트 간의 1:1 연결만 지원하므로 실질적으로 버스 시스템이라 하기에는 약간의 무리가 있고, 데이터 플로우 구조, 링 버스 구조, 및 공유 버스 구조는 하나의 물리적 회선을 공유하여 사용해야 한다는 단점이 존재한다. 그리고, 크로스바 스위치 구조는 모든 시스템 컴포넌트들이 N:N으로 연결되어 있어 효율적으로 데이터를 전송할 수 있지만, 회로가 복잡해지고 커진다는 단점이 있다. 마지막으로 NoC는 아직 온 칩에서 사용하기에는 패킷화 등의 오버헤드가 크다는 단점이 있다.
따라서, SoC의 크기를 줄이고, 시스템으로부터 대용량의 데이터 전송 처리 요구를 충족시킬 수 있는 버스 시스템 개발이 요구되고 있다.
상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 본 발명에서는 하나의 물리적인 버스를 복수의 시스템 컴포넌트가 논리적으로 공유하여 데이터를 전송할 수 있는 버스 시스템을 제안하고자 한다.
본 발명의 다른 목적은 링 버스 토폴로지에 따른 버스 시스템에 있어서, 시스템 컴포넌트로의 데이터 입출력을 효율적으로 제어할 수 있는 구조를 갖는 버스 시스템을 제공하는 것이다.
상기한 목적을 달성하기 위해 본 발명의 바람직한 일실시예에 따르면, 버스 시스템에 있어서, 데이터 전송 매체로 동작하는 버스; 상기 버스를 사용하여 데이터를 송수신하는 복수의 시스템 컴포넌트; 및 상기 복수의 시스템 컴포넌트의 상기 버스의 사용을 중재하는 아비터를 포함하고, 상기 아비터는 상기 복수의 시스템 컴포넌트 중 적어도 하나의 시스템 컴포넌트로부터 전송된 상기 버스의 사용 요청에 따라서 상기 링 버스의 클록 주파수를 조절하는 것을 특징으로 하는 버스 시스템이 제공된다.
또한, 본 발명의 다른 측면에 따르면, 버스 시스템에 있어서, 데이터 전송 매체로서 동작하는 버스; 상기 링 버스와 연결되는 복수의 링 버스 라우터; 및 상기 복수의 링 버스 라우터와 연결되고, 상기 링 버스를 사용하여 데이터를 송수신하는 복수의 시스템 컴포넌트를 포함하고, 상기 링 버스 라우터는 상기 시스템 컴 포넌트로부터 입력되는 제1 데이터를 저장하는 제1 버퍼; 및 상기 시스템 컴포넌트로 출력되는 제2 데이터를 저장하는 제2 버퍼를 포함하고, 상기 제1 버퍼를 이용하여 시스템 컴포넌트로부터 상기 링 버스로의 데이터 전송을 제어하고, 상기 제2 버퍼를 이용하여 상기 링 버스로부터 상기 시스템 컴포넌트로의 데이터 전송을 제어하는 것을 특징으로 하는 버스 시스템 이 제공된다.
또한, 본 발명의 다른 측면에 따르면, 버스, 복수의 시스템 컴포넌트 및 아비터를 포함하는 버스 시스템을 제어하는 방법에 있어서, 상기 복수의 시스템 컴포넌트 중에서 적어도 하나의 시스템 컴포넌트로부터 데이터 전송 요청을 수신하는 단계; 및 상기 수신된 데이터 전송 요청에 기초하여 상기 버스의 클록 주파수를 조절하는 단계를 포함하는 것을 특징으로 하는 버스 시스템의 제어 방법이 제공된다.
본 발명에 따르면, 하나의 물리적인 버스를 복수의 시스템 컴포넌트가 논리적으로 공유하여 데이터를 전송할 수 있게 된다.
또한, 본 발명에 따르면, 링 버스 토폴로지에 따른 버스 시스템에 있어서, 시스템 컴포넌트로의 데이터 입출력을 효율적으로 제어할 수 있게 된다.
이하, 본 발명의 바람직한 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면 번호에 상관없이 동일한 수단에 대해서는 동일한 참조 번호를 사용하기로 한다.
도 1은 본 발명의 일실시예에 따른 버스 시스템의 상세한 구성을 도시한 도 면이다.
도 1에 도시된 바와 같이, 버스 시스템은 링 버스(110), 복수의 링 버스 라우터(제1 링 버스 라우터(121) 내지 제6 링 버스 라우터(126)), 복수의 시스템 컴포넌트(제1 시스템 컴포넌트(131) 내지 제6 시스템 컴포넌트(136)), 및 아비터(140)를 포함한다.
본 발명의 일실시예에 따르면, 버스 시스템은 시스템 온 칩(SoC: System on Chip)에 이용되는 온-칩(on-chip) 버스 시스템일 수 있다.
링 버스(110)는 시스템 컴포넌트(131 내지 136)간에 송수신되는 데이터의 전송 매체로서의 역할을 수행한다. 이 경우, 링 버스(110)는 한쪽 방향으로 데이터를 전송한다.
예를 들어, 데이터를 송신하고자 하는 시스템 컴포넌트(즉, 마스터 시스템 컴포넌트)가 제1 시스템 컴포넌트(131)이고, 데이터의 목적지인 시스템 컴포넌트(즉, 슬레이브 시스템 컴포넌트)가 제2 시스템 컴포넌트(132)인 경우, 링 버스(110)는 제1 시스템 컴포넌트(131)로부터 입력된 데이터를 시계방향으로 전송하여 제2 시스템 컴포넌트(132)로 출력한다.
시스템 컴포넌트(131 내지 136)는 시스템 상에서 특정 기능을 수행하는 물리적/논리적 장치를 의미하는 것으로서, 프로세서(processor), 메모리 컨트롤러(memory controller), 브리지(bridge)(일례로, AXI-APB 브리지) 등을 포함할 수 있다. 이 경우, 시스템 컴포넌트(131 내지 136)는 링 버스 라우터(121 내지 126)와 연결되는 인터페이스(interface)를 포함할 수 있다.
링 버스 라우터(121 내지 126)는 버스 제어 장치를 의미하는 것으로서, 링 버스 라우터(121 내지 126)는 아비터(140)과 함께 시스템 컴포넌트(131 내지 136)의 링 버스(110)의 사용(즉, 시스템 컴포넌트(131 내지 136)의 데이터 송수신)을 중재한다.
즉, 시스템 컴포넌트(131 내지 136)에서 데이터를 송신하는 경우, 링 버스 라우터(121 내지 126)는 자신과 연결된 시스템 컴포넌트(131 내지 136)로부터 데이터를 입력받고, 이를 링 버스(110)로 출력한다. 반대로, 시스템 컴포넌트(131 내지 136)에서 데이터를 수신하는 경우, 링 버스 라우터(121 내지 126)는 링 버스(110)로부터 데이터를 입력받고, 이를 시스템 컴포넌트(131 내지 136)로 출력한다.
이 경우, 도 1에 도시된 바와 같이, 시스템 컴포넌트(131 내지 136)는 링 버스 라우터(121 내지 126)와 연결되어 있고, 각각의 링 버스 라우터는 다른 링 버스 라우터와 연결되어 있다.
제1 시스템 컴포넌트(131)에서 데이터를 수신하는 경우, 제1 링 버스 라우터(121)에서 수행되는 동작을 예로 들어 링 버스 라우터(121 내지 126)의 동작을 보다 자세히 설명하면 아래와 같다.
먼저, 제1 링 버스 라우터(121)는 링 버스(110)로부터 전송된 데이터의 목적지 정보를 분석한다.
이 후, 제1 링 버스 라우터(121)는 목적지 정보의 분석 결과에 따라, 전송된 데이터를 링 버스(110)를 통해 계속 회전시킬 것인지, 제1 시스템 컴포넌트(131)로 전달할 것인지를 결정한다.
만약, 링 버스(110)로부터 전송된 데이터에 제1 시스템 컴포넌트(131)와 대응되는 목적지 정보가 포함되어 있는 경우, 제1 링 버스 라우터(121)는 전송된 데이터를 제1 시스템 컴포넌트(131)로 전달한다. 이 경우, 링 버스 라우터(121)는 링 버스(110)로부터 전송된 데이터를 아래에서 설명하는 제2 버퍼에 저장한 후, 이를 제1 시스템 컴포넌트(131)로 전달한다. 이에 대한 보다 상세한 설명은 도 2에 대한 설명을 참고하기로 한다.
반면에, 링 버스(110)로부터 전송된 데이터에 제1 시스템 컴포넌트(131)와 대응되는 목적지 정보가 포함되어 있지 않은 경우, 제1 링 버스 라우터(121)는 전송된 데이터를 링 버스(110)를 통해 계속하여 회전시킨다. 이 경우, 제1 링 버스 라우터(121)를 통과한 데이터는 제2 링 버스 라우터(122)로 전달된다.
이와 같이, 링 버스 라우터(121 내지 126)는 링 버스(110)로부터 전송된 데이터를 계속하여 회전시킬 것인지, 시스템 컴포넌트(131 내지 136)로 전달할 것인지 만을 판단하기 때문에, 링 버스 라우터(121 내지 126)에서의 계산량은 NoC(Network on Chip)에서 사용되는 일반적인 라우터 보다 매우 작다. 따라서, NoC의 라우터 보다 훨씬 간단한 중재 알고리즘을 사용하여 회로의 크기 및 복잡도를 줄일 수 있게 된다.
또한, 링 버스 라우터(121 내지 126)는 마스터 구조와 슬레이브 구조를 모두 지원할 수 있으므로, 본 발명의 일실시예에 따른 링 버스 라우터(121 내지 126)을 이용하는 경우, 시스템을 효율적으로 구성할 수 있게 된다.
아비터(140)는 시스템 컴포넌트(131 내지 136)의 링 버스(110)의 사용을 중재하는 기능을 수행한다.
이하에서는 도 2는 참고하여, 본 발명의 일실시예에 따른 링 버스 라우터(121 내지 126)의 구조를 보다 상세히 설명하기로 한다. 이 때, 버스 시스템에 사용되는 복수의 링 버스 라우터(121 내지 126)는 모두 동일한 구조를 가지고 있으므로, 대표적으로 제1 링 버스 라우터(121)의 구조를 대표적으로 설명하기로 한다.
도 2는 본 발명의 일실시예에 따른 링 버스 라우터(121)의 상세한 구성을 도시한 도면이다.
도 2에 도시된 바와 같이, 링 버스 라우터(121)는 2개의 버퍼(제1 버퍼(1211) 및 제2 버퍼(1212))를 포함하여 구성된다.
제1 버퍼(1211)는 제1 시스템 컴포넌트(131)의 출력부와 연결되는 버퍼로서, 제1 시스템 컴포넌트(131)로부터 링 버스 라우터(121)로 입력되는 제1 데이터를 저장한다.
즉, 제1 버퍼(1211)는 링 버스 라우터(121)가 제1 시스템 컴포넌트(131)로부터 입력된 제1 데이터를 링 버스(110)로 출력하고자 하는 경우, 제1 시스템 컴포넌트(131)의 클록 주파수(또는 클록 속도)와 링 버스(110)의 클록 주파수(또는 클록 속도)의 차이를 완충하는 역할을 수행한다.
이를 위해, 도 2에 도시된 바와 같이, 제1 버퍼(1211)와 제1 시스템 컴포넌트(131)가 연결되는 제1 연결부는 제1 시스템 컴포넌트(131)의 클록과 동기화되어 동작하고, 제1 버퍼(1211)와 링 버스(110)가 연결되는 제2 연결부는 링 버스(110)의 클록과 동기화되어 동작한다.
따라서, 제1 시스템 컴포넌트(131)가 링 버스(110)로 제1 데이터를 출력하고자 하는 경우에 있어, 링 버스(110)가 다른 시스템 컴포넌트에 의해 사용 중이면, 링 버스 라우터(121)는 링 버스(110)의 사용 가능 시점까지 제1 데이터를 제1 버퍼(1211)에 저장시켜 두고, 링 버스(110)가 사용되지 아니하는 경우, 제1 데이터를 링 버스(110)로 출력한다.
제2 버퍼(1212)는 제1 시스템 컴포넌트(131)의 입력부와 연결되는 버퍼로서, 링 버스 라우터(121)로부터 제1 시스템 컴포넌트(131)로 출력되는 제2 데이터를 저장한다.
이를 위해, 제2 버퍼(1212)는 제1 버퍼(1211)와 마찬가지로, 제1 시스템 컴포넌트(131)의 클록 주파수와 동기화되어 동작하는 제3 연결부 및 링 버스(110)의 클록 주파수와 동기화되어 동작하는 제4 연결부를 포함한다.
이에 따라, 링 버스 라우터(121)는 링 버스(110)로부터 제2 데이터를 입력받은 경우, 제1 시스템 컴포넌트(131)가 제2 데이터를 처리할 수 있는 시점까지 제2 데이터를 저장함으로써, 제1 시스템 컴포넌트(131)의 클록 주파수와 링 버스(110)의 클록 주파수의 차이를 완충한다.
다시 도 1을 참고하여, 본 발명의 일실시예에 따른 버스 시스템을 상세히 설명하기로 한다.
본 발명의 일실시예에 따르면, 링 버스(110)의 클록 주파수는 시스템 컴포넌트(131 내지 136)의 클록 주파수보다 클 수 있다.
즉, 버스 시스템은 시스템 컴포넌트(131 내지 136)보다 빠른 속도로 동작하는 링 버스(110)를 이용함으로써, 복수의 시스템 컴포넌트가 링 버스(110)를 이용하여 동시에 데이터를 전송할 수 있도록 제어할 수 있다.
이하에서는 도 3을 참고하여, 시스템 컴포넌트(131 내지 136)보다 빠른 속도로 동작하는 링 버스(110)를 이용하여 복수의 시스템 컴포넌트가 동시에 데이터를 전송하는 동작을 상세히 설명하기로 한다.
도 3은 본 발명의 일실시예에 따라서, 시스템 컴포넌트(131 내지 136) 보다 빠른 속도로 동작하는 링 버스(110)를 이용하여 복수의 시스템 컴포넌트가 동시에 데이터를 전송하는 개념을 설명하기 위한 도면이다.
이하에서는 시스템 컴포넌트(131 내지 136)의 클록 주파수보다 큰 클록 주파수를 갖는 링 버스(110)를 논리적으로 공유하여 사용하는 버스 시스템에 대해 설명하지만, 이는 설명의 편의를 위한 것으로서, 본 발명에 따른 버스 시스템이 링 버스 구조의 버스 시스템뿐만 아니라 링 버스 이외의 다른 공유 버스 토폴로지를 갖는 버스 시스템에 사용될 수 있다는 점은 당업자에게 있어 자명할 것이다.
도 3에 도시된 바와 같이, 본 발명의 일실시예에 따르면, 링 버스(110)의 클록 주파수는 시스템 컴포넌트(131 내지 136)의 클록 주파수 보다 8배 클 수 있다. 즉, 시스템 컴포넌트 클록이 1회 진행되는 동안, 버스 클록은 8회가 진행된다.
이 경우, 버스 시스템을 규정하는 버스 프로토콜은 AXI 내지 OCP의 규약을 따르는 다중 채널 기반의 비동기 방식의 버스 프로토콜일 수 있다.
즉, 버스 시스템이 AXI 내지 OCP 규약을 따르는 비동기 방식의 버스 프로토콜에 따라 링 버스(110)를 통해 데이터를 전송하는 경우, 버스 시스템은 파이프라인을 통한 패킷 전송과 같이 복수의 시스템 컴포넌트의 데이터를 전송할 수 있다.
일반적으로 링 버스(110) 내지 링 버스 라우터(121 내지 126)를 포함하는 버스 시스템은 시스템 컴포넌트(131 내지 136)에 비하여 간단하게 구조화할 수 있으므로, 링 버스(110)가 일반적인 시스템 컴포넌트보다 훨씬 빠른 클럭 속도로 동작시키는 것이 가능하다. 이를 위해, 본 발명에서는 도 2에 도시된 바와 같이, 링 버스 라우터(121 내지 126)을 게이트 레벨에서 설계하여 링 버스(110)의 클록 주파수를 최대한 높일 수 있도록 하였다.
이와 같이, 시스템 컴포넌트(131 내지 136)의 클록 구간이 링 버스(110)의 클록 구간보다 긴 경우, 시스템 컴포넌트(131 내지 136) 각각은 자신의 클록의 일부분 동안 데이터를 전송 작업을 완료할 수 있다.
다시 말해, 본 발명의 일실시예에 따른 버스 시스템은 시스템 컴포넌트 클록을 시분할(time-division)하여 데이터를 전송함으로써, 하나의 물리적인 링 버스(110)를 복수의 시스템 컴포넌트가 논리적으로 공유하여 데이터를 전송할 수 있도록 한다.
이 경우, 버스 클록에 의해 분할된 시스템 컴포넌트 클록의 일부분들은 링 버스의 가상적인 논리적 슬롯으로 간주될 수 있다. 즉, 도 3의 경우와 같이, 버스 클록이 시스템 컴포넌트 클록보다 8배 빠른 경우, 링 버스(110)는 8개의 논리적 슬롯을 구비하는 것으로 간주될 수 있다.
복수의 시스템 컴포넌트 각각은 하나의 논리적 슬롯을 이용하여 데이터를 전송할 수 있다. 예를 들어, 제1 논리적 슬롯(310)에서는 제1 시스템 컴포넌트(131)가 링 버스(110)를 통해 데이터를 전송하고, 제2 논리적 슬롯(320) 내지 제6 논리적 슬롯(360) 각각에서는 제2 시스템 컴포넌트(132) 내지 제6 시스템 컴포넌트(136) 각각이 링 버스(110)를 이용하여 데이터를 전송할 수 있다. 이와 같은 논리적 슬롯의 할당(allocation)은 아비터(140)에서 수행될 수 있다.
이에 따라, 본 발명의 일실시예에 따른 버스 시스템은 링 버스와 같이 하나의 물리적 회선을 논리적으로 공유하여 데이터를 전송함으로써, 크로스바 스위치 버스를 이용하여 데이터를 전송하는 것과 동일한 효과를 얻을 수 있다.
다시 도 1을 참고하여, 본 발명의 일실시예에 따른 버스 시스템을 상세히 설명하기로 한다.
본 발명의 일실시예에 따르면, 아비터(140)는 제1 시스템 컴포넌트(131) 내지 제6 시스템 컴포넌트(136) 중 적어도 하나의 시스템 컴포넌트로부터 전송된 링 버스(110)의 사용 요청에 따라서 링 버스(110)의 클록 주파수를 조절할 수 있다.
즉, 앞서 설명한 바와 같이, 시스템 컴포넌트(131 내지 136)는 논리적으로 분할된 논리적 슬롯을 이용하여 링 버스(110)를 공유하여 사용할 수 있는데, 이 때, 논리적 슬롯의 개수가 데이터 전송 요청을 한 시스템 컴포넌트의 개수보다 적 다면, 일부 시스템 컴포넌트들이 링 버스(110)를 공유하여 데이터를 전송을 할 수 없게 되고, 반대로 논리적 슬롯의 개수가 데이터 전송 요청을 한 시스템 컴포넌트의 개수보다 많다면, 높은 버스 클록 주파수로 인해 불필요한 전력 소모가 발생하게 된다.
따라서, 본 발명의 일실시예에 따르면, 아비터(140)는 링 버스(110)의 사용 요청을 전송하는 시스템 컴포넌트의 개수가 증가하는 경우, 링 버스(110)의 클록 주파수를 증가시킬 수 있다.
또한, 본 발명의 다른 일실시예에 따르면, 아비터(140)는 링 버스(110)의 사용 요청을 전송하는 시스템 컴포넌트의 개수와 시스템 컴포넌트의 클록 주파수 간의 곱이 링 버스(110)의 클록 주파수보다 큰 경우, 링 버스(110)의 클록 주파수를 증가시킬 수 있다.
일례로서, 도 3에 도시된 바와 같이, 시스템 컴포넌트의 클록 주파수보다 링 버스(110)의 클록 주파수가 8배 큰 경우에 있어, 만약 데이터 전송을 요청하는 시스템 컴포넌트의 개수가 8개를 초과하는 경우, 아비터(140)는 링 버스(110)의 클록 주파수를 2배 증가시켜 여분의 논리적 슬롯을 생성할 수 있다.
또한, 본 발명의 일실시예에 따르면, 아비터(140)는 링 버스(110)의 사용 요청을 전송하는 시스템 컴포넌트의 개수가 감소하는 경우, 링 버스(110)의 클록 주파수를 감소시킬 수 있다.
또한, 본 발명의 다른 일실시예에 따르면, 아비터(140)는 링 버스(110)의 사용 요청을 전송하는 시스템 컴포넌트의 개수와 시스템 컴포넌트의 클록 주파수 간 의 곱이 링 버스(110)의 클록 주파수보다 작은 경우, 링 버스(110)의 클록 주파수를 감소시킬 수 있다.
일례로서, 도 3에 도시된 바와 같이, 시스템 컴포넌트의 클록 주파수보다 링 버스(110)의 클록 주파수가 8배 큰 경우에 있어, 만약 데이터 전송을 요청하는 시스템 컴포넌트의 개수가 4개 미만인 경우, 아비터(140)는 링 버스(110)의 클록 주파수를 반으로 감소시켜 불필요한 논리적 슬롯의 개수를 감소시킬 수 있다.
또한, 본 발명의 일실시예에 따르면, 아비터(140)는 복수의 시스템 컴포넌트 중에서 어느 하나의 시스템 컴포넌트인 제2 시스템 컴포넌트로부터 링 버스(110)의 사용 요청을 수신한 시점에서, 링 버스(110)가 복수의 시스템 컴포넌트 중에서 다른 하나의 시스템 컴포넌트인 제1 시스템 컴포넌트에 의해 사용 중인 경우, 링 버스(110)의 클록 주파수를 증가시킬 수 있다.
이하에서는 도 4 내지 도 7을 참고하여 링 버스(110)의 클록 주파수를 증가시키는 본 발명의 일실시예를 상세히 설명하기로 한다.
도 4 내지 도 7은 본 발명의 일실시예에 따라서, 아비터(140)가 버스 클록 주파수를 증가시켜 새로운 논리적 슬롯을 생성하는 개념을 설명하기 위한 도면이다.
먼저, 도 4에서는 제4 시스템 컴포넌트(134), 제2 시스템 컴포넌트(132) 및 제1 시스템 컴포넌트(131)가 각각 제1 논리적 슬롯(411), 제2 논리적 슬롯(412) 및 제3 논리적 슬롯(413)을 사용하고 있는 상태에서 아비터(140)가 제3 시스템 컴포넌 트(133)로부터 새로운 데이터 전송 요청을 수신한 경우의 논리적 슬롯의 상태를 도시하고 있다.
이 때, 제3 시스템 컴포넌트(133)로부터 새로운 데이터 전송 요청이 수신된 시점에서, 제4 논리적 슬롯(414)이 비어있으므로(empty), 아비터(140)는 도 5에 도시된 바와 같이, 제4 논리적 슬롯(414)을 제3 시스템 컴포넌트(133)에 할당할 수 있다. 따라서, 상기와 같은 경우에 있어, 아비터(140)는 버스 클록의 속도를 조절할 필요가 없다.
그러나, 도 6에 도시된 바와 같이, 제3 시스템 컴포넌트(133)로부터 새로운 데이터 전송 요청을 수신한 시점에서, 제4 논리적 슬롯(414)이 다른 시스템 컴포넌트인 제1 시스템 컴포넌트(131)에 의해 사용 중인 경우, 아비터(140)는 제3 시스템 컴포넌트(133)에게 논리적 슬롯을 할당할 수 없게 된다.
따라서, 상기의 경우, 아비터(140)는 도 7에 도시된 바와 같이, 버스 클록의 속도를 증가시켜, 새로운 논리적 슬롯을 생성하고, 생성된 논리적 슬롯 중에서 하나의 논리적 슬롯(즉, 제9 논리적 슬롯(419))을 제3 시스템 컴포넌트(133)에게 할당한다.
이와 같이, 본 발명의 일실시예에 따른 버스 시스템은 적어도 하나의 시스템 컴포넌트로부터 수신된 링 버스의 사용 요청에 기초하여 클록 주파수를 적절하게 조절함으로써, 데이터 전송 요청을 한 시스템 컴포넌트의 요구를 충족시키고, 불필요한 전력 소모를 줄일 수 있게 된다.
도 8은 본 발명의 일실시예에 따른 버스 시스템의 제어 방법에 관한 흐름도를 도시한 도면이다.
이 때, 버스 시스템은 도 1에 도시된 바와 같은 버스 시스템이다.
단계(S810)에서는 복수의 시스템 컴포넌트 중에서 적어도 하나의 시스템 컴포넌트로부터 데이터 전송 요청을 수신한다.
단계(S820)에서는 수신된 데이터 전송 요청에 기초하여 버스의 클록 주파수를 조절할 수 있다.
데이터 전송 요청의 수신 및 버스 클록 주파수의 조절은 도 1에서 설명한 아비터(140)에서 수행될 수 있다.
본 발명의 일실시예에 따르면, 단계(S820)에서는 복수의 시스템 컴포넌트 중 어느 하나의 시스템 컴포넌트로부터 버스의 사용 요청을 수신한 시점에서, 버스가 어느 하나의 시스템 컴포넌트 이외의 다른 시스템 컴포넌트에 의해 사용 중인 경우, 버스의 클록 주파수를 증가시킬 수 있다.
또한, 본 발명의 다른 일실시예에 따르면, 단계(S820)에서는 버스의 사용 요청을 전송하는 적어도 하나의 시스템 컴포넌트의 개수가 증가하는 경우, 버스의 클록 주파수를 증가시킬 수 있다.
또한, 본 발명의 또 다른 일실시예에 따르면, 단계(S820)에서는 버스의 사용 요청을 전송하는 적어도 하나의 시스템 컴포넌트의 개수가 감소하는 경우, 버스의 클록 주파수를 감소시킬 수 있다.
지금까지 본 발명에 따른 버스 시스템의 제어 방법의 실시예들에 대하여 설 명하였고, 앞서 도 1에서 설명한 버스 시스템에 관한 구성이 본 실시예에도 그대로 적용 가능하다. 이에, 보다 상세한 설명은 생략하기로 한다.
또한, 본 발명의 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 일실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양 한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
도 1은 본 발명의 일실시예에 따른 버스 시스템의 상세한 구성을 도시한 도면.
도 2는 본 발명의 일실시예에 따른 링 버스 라우터(121)의 상세한 구성을 도시한 도면.
도 3은 본 발명의 일실시예에 따라서, 시스템 컴포넌트 보다 빠른 속도로 동작하는 링 버스를 이용하여 복수의 시스템 컴포넌트가 동시에 데이터를 전송하는 개념을 설명하기 위한 도면.
도 4 내지 도 7은 본 발명의 일실시예에 따라서, 아비터가 버스 클록 주파수를 증가시켜 새로운 논리적 슬롯을 생성하는 개념을 설명하기 위한 도면.
도 8은 본 발명의 일실시예에 따른 버스 시스템의 제어 방법에 관한 흐름도를 도시한 도면.

Claims (19)

  1. 버스 시스템에 있어서,
    데이터 전송 매체로 동작하는 버스;
    상기 버스를 사용하여 데이터를 송수신하는 복수의 시스템 컴포넌트; 및
    상기 복수의 시스템 컴포넌트의 상기 버스의 사용을 중재하는 아비터
    를 포함하고,
    상기 아비터는
    상기 복수의 시스템 컴포넌트 중 적어도 하나의 시스템 컴포넌트로부터 전송된 상기 버스의 사용 요청에 따라서 상기 버스의 클록 주파수를 조절하고, 상기 버스의 클록 주파수는 상기 시스템 컴포넌트의 클록 주파수보다 큰 것을 특징으로 하는 버스 시스템.
  2. 삭제
  3. 제1항에 있어서,
    상기 아비터는
    상기 복수의 시스템 컴포넌트 중 어느 하나의 시스템 컴포넌트로부터 상기 버스의 사용 요청을 수신한 시점에서, 상기 버스가 상기 어느 하나의 시스템 컴포 넌트 이외의 다른 시스템 컴포넌트에 의해 사용 중인 경우, 상기 버스의 클록 주파수를 증가시키는 것을 특징으로 하는 버스 시스템.
  4. 제1항에 있어서,
    상기 아비터는
    상기 버스의 사용 요청을 전송하는 적어도 하나의 시스템 컴포넌트의 개수가 증가하는 경우, 상기 버스의 클록 주파수를 증가시키는 것을 특징으로 하는 버스 시스템.
  5. 제1항에 있어서,
    상기 아비터는
    상기 버스의 사용 요청을 전송하는 적어도 하나의 시스템 컴포넌트의 개수와 상기 시스템 컴포넌트의 클록 주파수 간의 곱이 상기 버스의 클록 주파수보다 큰 경우, 상기 버스의 클록 주파수를 증가시키는 것을 특징으로 하는 버스 시스템.
  6. 제1항에 있어서,
    상기 아비터는
    상기 버스의 사용 요청을 전송하는 적어도 하나의 시스템 컴포넌트의 개수가 감소하는 경우, 상기 버스의 클록 주파수를 감소시키는 것을 특징으로 하는 버스 시스템.
  7. 제1항에 있어서,
    상기 아비터는
    상기 버스의 사용 요청을 전송하는 적어도 하나의 시스템 컴포넌트의 개수와 상기 시스템 컴포넌트의 클록 주파수 간의 곱이 상기 버스 클록의 주파수보다 작은 경우, 상기 버스의 클록 주파수를 감소시키는 것을 특징으로 하는 버스 시스템
  8. 버스 시스템에 있어서,
    데이터 전송 매체로 동작하는 링 버스;
    상기 링 버스와 연결되는 복수의 링 버스 라우터; 및
    상기 복수의 링 버스 라우터와 연결되고, 상기 링 버스를 사용하여 데이터를 송수신하는 복수의 시스템 컴포넌트
    를 포함하고,
    상기 링 버스 라우터는
    상기 시스템 컴포넌트로부터 입력되는 제1 데이터를 저장하는 제1 버퍼; 및
    상기 시스템 컴포넌트로 출력되는 제2 데이터를 저장하는 제2 버퍼
    를 포함하고,
    상기 제1 버퍼를 이용하여 시스템 컴포넌트로부터 상기 링 버스로의 데이터 전송을 제어하고, 상기 제2 버퍼를 이용하여 상기 링 버스로부터 상기 시스템 컴포넌트로의 데이터 전송을 제어하는 것을 특징으로 하는 버스 시스템.
  9. 제8항에 있어서,
    상기 제1 버퍼는
    상기 시스템 컴포넌트와 연결되고, 상기 시스템 컴포넌트의 클록과 동기화되어 동작하는 제1 연결부; 및
    상기 링 버스와 연결되고, 상기 링 버스의 클록과 동기화되어 동작하는 제2 연결부
    를 포함하는 것을 특징으로 하는 버스 시스템.
  10. 제8항에 있어서,
    상기 제2 버퍼는
    상기 시스템 컴포넌트와 연결되고, 상기 시스템 컴포넌트의 클록과 동기화되어 동작하는 제3 연결부; 및
    상기 링 버스와 연결되고, 상기 링 버스의 클록과 동기화되어 동작하는 제4 연결부
    를 포함하는 것을 특징으로 하는 버스 시스템.
  11. 제8항에 있어서,
    상기 링 버스 라우터는
    상기 제2 데이터가 상기 시스템 컴포넌트와 대응되는 목적지 정보를 포함하 는 경우, 상기 제2 데이터를 상기 제2 버퍼에 저장하는 것을 특징으로 하는 버스 시스템.
  12. 제8항에 있어서,
    상기 링 버스 라우터는
    상기 제2 데이터가 상기 시스템 컴포넌트와 대응되는 목적지 정보를 포함하지 않는 경우, 상기 제2 데이터를 상기 링 버스로 출력하는 것을 특징으로 하는 버스 시스템
  13. 제8항에 있어서,
    상기 링 버스의 클록 주파수는 상기 시스템 컴포넌트의 클록 주파수보다 큰 것을 특징으로 하는 버스 시스템.
  14. 제8항에 있어서,
    상기 복수의 시스템 컴포넌트의 상기 링 버스의 사용을 중재하는 아비터
    를 더 포함하고,
    상기 아비터는
    상기 복수의 시스템 컴포넌트 중 적어도 하나의 시스템 컴포넌트로부터 전송된 상기 링 버스의 사용 요청에 따라서 상기 링 버스의 클록 주파수를 조절하는 것을 특징으로 하는 버스 시스템.
  15. 제14항에 있어서,
    상기 아비터는
    상기 복수의 시스템 컴포넌트 중 어느 하나의 시스템 컴포넌트로부터 상기 버스의 사용 요청을 수신한 시점에서, 상기 버스가 상기 어느 하나의 시스템 컴포넌트 이외의 다른 시스템 컴포넌트에 의해 사용 중인 경우, 상기 버스의 클록 주파수를 증가시키는 것을 특징으로 하는 버스 시스템.
  16. 제14항에 있어서,
    상기 아비터는
    상기 버스의 사용 요청을 전송하는 적어도 하나의 시스템 컴포넌트의 개수가 증가하는 경우, 상기 버스의 클록 주파수를 증가시키는 것을 특징으로 하는 버스 시스템.
  17. 제14항에 있어서,
    상기 아비터는
    상기 버스의 사용 요청을 전송하는 적어도 하나의 시스템 컴포넌트의 개수가 감소하는 경우, 상기 버스의 클록 주파수를 감소시키는 것을 특징으로 하는 버스 시스템.
  18. 제8항에 있어서,
    상기 버스 시스템은 SoC(System on Chip)에 이용되는 온-칩(on-chip) 버스 시스템인 것을 특징으로 하는 버스 시스템.
  19. 버스, 복수의 시스템 컴포넌트 및 아비터를 포함하는 버스 시스템을 제어하는 방법에 있어서,
    상기 복수의 시스템 컴포넌트 중에서 적어도 하나의 시스템 컴포넌트로부터 데이터 전송 요청을 수신하는 단계; 및
    상기 수신된 데이터 전송 요청에 기초하여 상기 버스의 클록 주파수를 조절하는 단계
    를 포함하되,
    상기 버스의 클록 주파수는 상기 시스템 컴포넌트의 클록 주파수보다 큰 것을 특징으로 하는 버스 시스템의 제어 방법.
KR1020090055694A 2009-06-22 2009-06-22 버스 시스템 및 그 제어 장치 KR101061187B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090055694A KR101061187B1 (ko) 2009-06-22 2009-06-22 버스 시스템 및 그 제어 장치
PCT/KR2009/005841 WO2010150945A1 (en) 2009-06-22 2009-10-12 Bus system and method of controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090055694A KR101061187B1 (ko) 2009-06-22 2009-06-22 버스 시스템 및 그 제어 장치

Publications (2)

Publication Number Publication Date
KR20100137326A KR20100137326A (ko) 2010-12-30
KR101061187B1 true KR101061187B1 (ko) 2011-08-31

Family

ID=43386703

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090055694A KR101061187B1 (ko) 2009-06-22 2009-06-22 버스 시스템 및 그 제어 장치

Country Status (2)

Country Link
KR (1) KR101061187B1 (ko)
WO (1) WO2010150945A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102012699B1 (ko) 2013-01-25 2019-08-21 삼성전자 주식회사 다중 버스 시스템 및 이를 포함하는 반도체 시스템
US9565032B2 (en) * 2014-12-03 2017-02-07 Qualcomm Incorporated Monitoring and controlling bus ring performance

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003345455A (ja) * 2002-05-24 2003-12-05 Mitsubishi Electric Corp データ処理装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5935232A (en) * 1995-11-20 1999-08-10 Advanced Micro Devices, Inc. Variable latency and bandwidth communication pathways
KR100319708B1 (ko) * 2000-02-11 2002-01-09 전주식 방향 분리 이중 링 구조의 분산된 공유 메모리 다중프로세서 시스템
US20060041715A1 (en) * 2004-05-28 2006-02-23 Chrysos George Z Multiprocessor chip having bidirectional ring interconnect
US7174403B2 (en) * 2005-02-24 2007-02-06 Qualcomm Incorporated Plural bus arbitrations per cycle via higher-frequency arbiter
KR100730279B1 (ko) * 2005-12-16 2007-06-19 삼성전자주식회사 스타 토로스 토폴로지를 이용하여 칩 상의 디바이스를연결한 컴퓨터 칩

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003345455A (ja) * 2002-05-24 2003-12-05 Mitsubishi Electric Corp データ処理装置

Also Published As

Publication number Publication date
KR20100137326A (ko) 2010-12-30
WO2010150945A1 (en) 2010-12-29

Similar Documents

Publication Publication Date Title
US10848442B2 (en) Heterogeneous packet-based transport
US9021156B2 (en) Integrating intellectual property (IP) blocks into a processor
KR100687659B1 (ko) Axi 프로토콜에 따른 락 오퍼레이션을 제어하는네트워크 인터페이스, 상기 네트워크 인터페이스가 포함된패킷 데이터 통신 온칩 인터커넥트 시스템, 및 상기네트워크 인터페이스의 동작 방법
JP4638216B2 (ja) オンチップバス
US8285912B2 (en) Communication infrastructure for a data processing apparatus and a method of operation of such a communication infrastructure
KR101720134B1 (ko) 버스 브리지 장치
US20110085550A1 (en) Zero-latency network on chip (NoC)
US7254603B2 (en) On-chip inter-network performance optimization using configurable performance parameters
JP2007529808A (ja) 集積回路及び通信サービスマッピング方法
US8667195B2 (en) Bus-system including an interconnector, a master device, a slave device, and an operating method thereof
US20030208566A1 (en) Composing on-chip interconnects with configurable interfaces
JP2008546298A (ja) 電子装置及び通信リソース割り当ての方法
JP2007531101A (ja) 集積回路及びトランザクション中止方法
TWI717373B (zh) 用於通用序列匯流排2.0頻寬保留之方法及系統
EP1733309B1 (en) Integrated circuit and method for transaction retraction
Attia et al. Network interface sharing for SoCs based NoC
KR101061187B1 (ko) 버스 시스템 및 그 제어 장치
US20230388251A1 (en) Tightly-Coupled, Loosely Connected Heterogeneous Packet Based Transport
KR20170112775A (ko) 듀얼 스위칭 네트워크 모드들에서 네트워킹 가능한 온칩 네트워크 장치 및 그것의 동작 방법
Hsu et al. Design of a dual-mode noc router integrated with network interface for amba-based ips
Taube et al. Comparison of CAN gateway modules for automotive and industrial control applications
Attia et al. A new pipelined network interface for Network on Chip with latency and jitter optimization
Chen PCI express-based ethernet switch
Hanawa et al. Power-aware, dependable, and high-performance communication link using PCI Express: PEARL

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160705

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee