KR101089324B1 - 복수의 마스터들을 포함하는 서브 시스템을 개방형 코어프로토콜을 기반으로 하는 버스에 연결하기 위한 버스시스템 - Google Patents
복수의 마스터들을 포함하는 서브 시스템을 개방형 코어프로토콜을 기반으로 하는 버스에 연결하기 위한 버스시스템 Download PDFInfo
- Publication number
- KR101089324B1 KR101089324B1 KR1020040011427A KR20040011427A KR101089324B1 KR 101089324 B1 KR101089324 B1 KR 101089324B1 KR 1020040011427 A KR1020040011427 A KR 1020040011427A KR 20040011427 A KR20040011427 A KR 20040011427A KR 101089324 B1 KR101089324 B1 KR 101089324B1
- Authority
- KR
- South Korea
- Prior art keywords
- bus
- read
- master
- information
- masters
- Prior art date
Links
- 238000006243 chemical reaction Methods 0.000 claims abstract description 8
- 238000000034 method Methods 0.000 claims description 34
- 230000005540 biological transmission Effects 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 21
- 238000012546 transfer Methods 0.000 claims description 13
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 12
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 11
- 239000003795 chemical substances by application Substances 0.000 description 11
- 229910052710 silicon Inorganic materials 0.000 description 11
- 239000010703 silicon Substances 0.000 description 11
- 230000008901 benefit Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004064 recycling Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B42—BOOKBINDING; ALBUMS; FILES; SPECIAL PRINTED MATTER
- B42D—BOOKS; BOOK COVERS; LOOSE LEAVES; PRINTED MATTER CHARACTERISED BY IDENTIFICATION OR SECURITY FEATURES; PRINTED MATTER OF SPECIAL FORMAT OR STYLE NOT OTHERWISE PROVIDED FOR; DEVICES FOR USE THEREWITH AND NOT OTHERWISE PROVIDED FOR; MOVABLE-STRIP WRITING OR READING APPARATUS
- B42D15/00—Printed matter of special format or style not otherwise provided for
- B42D15/0006—Paper provided with guiding marks, e.g. ruled, squared or scaled paper
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/364—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/4031—Coupling between buses using bus bridges with arbitration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
본 발명은 시스템 온 칩(SOC: System On Chip)의 버스 시스템에 관한 것으로, 특히 복수의 마스터(Master)들을 개방형 코어 프로토콜(OCP: Open Core Protocol)을 기반으로 하는 온 칩 버스 시스템(On-Chip Bus System)에 효과적으로 적용하기 위한 버스 인터페이스(Interface)에 관한 것이다.
개방형 코어 프로토콜을 기반으로 하는 본 발명의 버스 시스템은 개방형 코어 프로토콜 기반의 버스와 복수의 마스터들 및 복수의 마스터들과 연결되어 마스터들의 버스에 대한 점유를 중재(Arbitration)하고, 선택된 마스터를 버스에 연결하는 버스 중재장치를 포함한다. 그리고, 본 발명에서 마스터들은 독출 동작(Read Operation)시 버스 중재장치를 통해 독출 명령(Read Command)을 버스로 전송하고, 버스 중재장치는 독출 명령을 전송한 마스터에 대한 독출 정보를 순차적으로 저장한다.
OCP, AMBA-AHB, 버스 시스템, 버스 중재기, ARBITRATION, 프로토콜 변환
Description
도 1은 종래 ARM(Advanced RISC Machine) 사의 암바(AMBA: Advanced Microcontroller Bus Architecture) 프로토콜 스펙 2.0에 게재된 AHB(Advanced High-performance Bus) 버스 시스템의 블록도이다.
도 2는 개방형 코어 프로토콜(OCP: Open Core Protocol)을 기반으로 하는 종래 소닉사(SONICs. Inc)의 실리콘 백플랜 마이크로-네트워크(Silicon Backplane Micronetwork)의 블록도이다.
도 3은 도 2에 보인 실리콘 백플랜 마이크로-네트워크에서 복수의 마스터들을 하나의 에이전트를 통해 개방형 코어 프로토콜 기반의 실리콘 백플랜 버스에 연결하는 버스 시스템의 블록도이다.
도 4는 본 발명에서 복수의 마스터들을 개방형 코어 프로토콜 기반의 버스에 효율적으로 접속시키기 위한 버스 시스템의 실시예를 보여주는 블록도이다.
도 5는 도 4에 보인 본 발명의 버스 시스템에서 복수의 마스터에 의한 데이터의 읽기와 쓰기 동작과정을 보여주는 타이밍도이다.
도 6은 도 5와 같은 동작과정에서 각 타이밍별로 도 4의 선입선출 메모리에 저장되는 데이터의 변화를 보여주는 도면이다.
*도면의 주요 부분에 대한 부호 설명
410 : 버스 중재장치 412 : 제 1 유한 상태 머신
414 : 제 2 유한 상태 머신 416 : 선입선출 메모리
420 : 먹스 회로 422 : 디먹스 회로
424 : 프로토콜 변환기
본 발명은 시스템 온 칩(SOC: System On Chip)의 버스 시스템에 관한 것으로, 특히 복수의 마스터(Master)들을 개방형 코어 프로토콜(OCP: Open Core Protocol)을 기반으로 하는 온 칩 버스 시스템(On-Chip Bus System)에 효과적으로 적용하기 위한 버스 인터페이스(Interface)에 관한 것이다.
최근 서로 다른 기능을 하는 수많은 복수의 칩(Chip)들을 하나의 칩상에 집적하는 시스템 온 칩의 사용이 보편화되고 있다. 그리고, 시스템 온 칩의 설계에 있어서, 급변하는 시장의 요구에 대응하기 위해 개발에 소요되는 시간을 줄이는 것은 필수적이다. 이를 위해 기존에 설계되어 사용되고 있는 칩 블록 즉, 아이피 코어(IP Core: Intellectual Property Core)의 재활용이 점차 확대되고 있다. 이러한 아이피 코어의 재활용은 제품 개발에 소요되는 시간을 단축시킬 뿐만 아니라, 새로이 개발된 시스템 온 칩의 신뢰성을 향상시키는 데에도 효과적이다.
한편, 시스템 온 칩의 효과적인 설계를 위해서는 하나의 칩상에 집적된 복수의 아이피 코어들간의 상호 통신을 위한 버스 시스템의 선택이 무엇보다 중요하다. 현재 사용되고 있는 가장 대표적인 버스 시스템은 ARM(Advanced RISC Machine)사의 암바(AMBA: Advanced Microcontroller Bus Architecture) 프로토콜을 기반으로 하는 AHB(Advanced High-performance Bus) 버스 시스템이며, 최근 들어서는 아이피 코어들의 재활용에 보다 적합한 개방형 코어 프로토콜을 기반으로 하는 소닉사(SONICs Inc.)의 실리콘 백플랜 마이크로 네트워크(Silicon Backplane μNetwork)의 사용이 점차 증가되는 추세에 있다. 따라서, 종래의 암바 프로토콜을 기반으로 설계된 아이피 코어들을 개방형 코어 프로토콜 기반의 버스 시스템에 적용하기 위한 방법 및 장치가 필요하다.
도 1은 종래 ARM 사의 암바 프로토콜 스펙 2.0에 게재된 AHB 버스 시스템의 블록도이다. 도 1에 보인 것처럼, AHB 버스 시스템은 복수의 마스터(100, 102, 104)들과 슬레이브(120, 122, 124, 126)들, 중재기(110) 그리고, 디코더(118, Decoder) 및 먹스회로들(112, 114, 118)을 포함한다.
AHB 버스 시스템에서 기본적으로 마스터들(100, 102, 104)은 슬레이브에 데이터를 기입(Read)하거나 독출(Write)하기 위해 중재기(110)에 먼저 버스 점유를 요청(Bus Request)한다. 중재기(110)는 마스터들(100, 102, 104)의 버스 점유 요청에 대해 현재 버스를 사용하고 있는 마스터의 존재 유무와 사전에 정의된 마스터들(100, 102, 104)의 우선권(Priority)을 고려하여 특정한 하나의 마스터에만 버스 점유를 허용(Bus Grant)한다. 버스 점유를 허용 받은 마스터는 버스 마스 터가 되어 해당 슬레이브에 데이터를 기입하거나 독출한다. 그리고, 한번 버스 마스터가된 마스터는 데이터의 기입 또는 독출동작이 완전히 종료될 때까지 버스를 점유하고, 다른 마스터들은 현재 버스 마스터에 의한 데이터의 기입 또는 독출동작이 종료될 때까지 대기상태로 있어야만 한다.
한편, 개방형 코어 프로토콜을 기반으로 하는 버스 시스템은 AHB 버스 시스템과는 달리 마스터의 동작 유형(기입 또는 독출)에 따라 데이터의 처리 방법이 다르다. 즉, AHB 버스 시스템은 마스터의 동작 유형에 관계없이 데이터의 처리가 완료될 때까지 마스터가 버스를 점유한다. 그러나, 개방형 코어 프로토콜을 기반으로 하는 버스 시스템에서는 기입 동작 시에는 AHB 버스 시스템과 마찬가지로 데이터의 처리가 완료될 때까지 마스터가 버스를 점유한다. 그러나, 독출 동작 시에는 먼저 데이터의 독출 명령만을 전송하고 마스터는 버스의 점유권을 다른 마스터로 넘긴다. 그리고, 해당 슬레이브로부터 데이터가 전송되어 오면 에이전트(Agent)를 통해 전송되어진 데이터를 수신한다. 이와 같이 개방형 코어 프로토콜에서는 마스터의 독출 동작에 대해 마스터의 명령어 전송 페이저(Command Phase)와 응답 페이저(Response Phase)를 분리함으로써 전체 버스의 사용 효율(Bus Bandwidth)을 높이는 장점이 있다.
도 2는 개방형 코어 프로토콜을 기반으로 하는 종래의 실리콘 백플랜 마이크로-네트워크의 블록도이다. 도 2에서 각 마스터들(202, 204, 206)은 AHB 버스 시스템에 적합한 암바 프로토콜을 기반으로 설계되었다고 가정하자. 각각의 마스터들(202, 204, 206)은 개방형 코어 프로토콜로의 변환을 위해 각각 프로토콜 변환기(208, 210, 212)와 연결되고, 각 프로토콜 변환기들(208, 210, 212)은 실리콘 백플랜 마이크로 네트워크의 에이전트들(214, 216, 218)을 통해 실리콘 백플랜 버스(SB, 200)에 연결된다. 각 에이전트들(214, 216, 218)은 실리콘 백플랜 버스(200)를 통해 상호 연결되어 마스터들 간의 데이터 송수신을 수행한다. 또한, 에이전트들(214, 216, 218)은 해당 마스터의 독출 동작시 마스터로부터의 독출 명령을 슬레이브로 전송하고, 이후 슬레이브로부터 데이터가 전송되어 오면 이를 마스터에 전달하는 역할을 수행한다. 도 2와 같은 버스 시스템의 경우, 모든 마스터들이 에이전트를 통해 하나의 실리콘 백플랜 버스(200)에 일대일로 연결되므로 연결되는 마스터의 수에 따라 전체 버스의 속도(Clock Frequency)가 제한된다. 일반적으로 시스템 온 칩은 수 십개의 마스터들과 슬레이브들로 구성된다. 따라서, 모든 아이피 코어들(마스터들과 슬레이브들)을 도 2와 같이 모두 일대일로 버스에 연결한다면, 전체 버스 시스템의 동작속도를 높이는데 장애가 된다. 또한, 많은 수의 에이전트들로 인해 전체 버스 사이즈(size)가 커진다는 단점도 있다. 이를 해결하기 위해, 보통 복수의 마스터들을 각 마스터의 기능 블록별로 하나의 서브 시스템(Sub-system)으로 묶고, 서브 시스템 단위로 버스에 연결함으로써, 버스로의 연결 수를 제한한다. 이러한 경우 서브 시스템별로 마스터들의 버스 접속을 중재하는 것이 필요하다. 이를 통해 하나의 서브 시스템에 포함된 복수의 마스터들 중 선택된 하나의 마스터만을 버스에 연결한다.
도 3은 AHB 버스 시스템에 적합한 암바 프로토콜을 기반으로 설계된 복수의 마스터들을 하나의 에이전트를 통해 개방형 코어 프로토콜 기반의 실리콘 백플랜 버스에 연결하는 버스 시스템의 블록도이다. 도 3에 보인 것처럼, 복수의 마스터들(312, 314, 316)을 하나의 에이전트(302)를 통해 버스(300)에 연결하기 위해서는 각 마스터들(312, 314, 316)간의 버스 접속을 중재하는 중재기(318)와 중재기(318)에 의해 선택된 하나의 마스터에 대해 프로토콜 변환을 수행하고, 에이전트(302)를 통해 버스(300)에 연결하기 위한 프로토콜 변환기(302)가 필요하다. 이 때 마스터들(312, 314, 316)이 암바 프로토콜을 기반으로 설계되었으므로 중재기(318)는 도 1을 통해 기술한 바와 같이 마스터의 동작 유형에 관계없이 데이터 처리가 종료될 때까지 선택된 하나의 마스터에만 버스 점유를 허용한다. 따라서, 도 3에 보인 것과 같은 종래의 버스 중재 방법과 단순 프로토콜 변환만으로는 선택된 마스터의 기입 또는 독출 동작이 완전히 종료되기 전까지 다른 마스터들의 독출 명령 또는 기입 명령이 실리콘 백플랜 마이크로 네트워크상의 에이전트(302)로도 전달되지 못한다. 즉, 앞서 언급한 개방형 코어 프로토콜의 장점인 마스터들의 명령어 전송 페이저(Command Phase)와 응답 페이저(Response Phase)의 분리가 불가능하다. 따라서, 복수의 마스터들이 버스 사용을 요청하는 경우 각 마스터들의 동작 요청에 대한 응답 시간(Latency)이 길어지고, 또한, 각 마스터들의 동작 요청 명령에 대한 파이프라이닝(Pipelining)이 불가능하여 전체 버스 시스템의 성능 저하를 가져온다.
본 발명에서는 상술한 문제를 해결하기 위해 복수의 마스터들에 대한 개방형 코어 프로토콜 기반의 버스 시스템으로의 프로토콜 변환 뿐만 아니라, 복수의 마스 터들에 대한 버스의 점유 방법과 마스터들의 독출 명령에 대한 각 마스터들의 아이디 관리를 통한 효율적인 버스 시스템을 제공하고자 한다.
개방형 코어 프로토콜을 기반으로 하는 본 발명의 버스 시스템은 개방형 코어 프로토콜 기반의 버스와 복수의 마스터들 및 복수의 마스터들과 연결되어 마스터들의 버스에 대한 점유를 중재하고, 선택된 마스터를 버스에 연결하는 버스 중재장치를 포함한다. 그리고, 본 발명에서 마스터들은 독출 동작시 버스 중재장치를 통해 독출 명령을 버스로 전송하고, 버스 중재장치는 독출 명령을 전송한 마스터의 독출 정보를 순차적으로 저장한다.
(실시예)
도 4는 본 발명에서 복수의 마스터들을 개방형 코어 프로토콜 기반의 버스에 효율적으로 접속시키기 위한 버스 시스템의 실시예를 보여주는 블록도이다. 도 4를 참조하면, 본 발명의 버스 시스템은 크게 복수의 마스터들(402, 404, 406)과 먹스회로(420), 버스 중재기(410), 디먹스 회로(422) 및 프로토콜 변환기(424)를 포함한다. 도 4에서 복수의 마스터들(402, 404, 406)은 개방형 코어 프로토콜이 아닌 다른 버스 프로토콜(예를 들어, 암바 프로토콜)을 기반으로 설계되었다고 가정한다.
버스 중재기(410)는 마스터들(402, 404, 406)과 먹스회로(420) 그리고 디먹스 회로(422) 및 프로토콜 변환기(424)에 각각 연결되며, 각 마스터들의 버스 접속을 중재한다. 그리고, 버스 중재기(410)는 제 1 유한 상태 머신(412, FSM: Finite State Machine)과 제 2 유한 상태 머신(414) 및 선입선출(FIFO: First Input First Output) 메모리(416)로 구성된다.
제 1 유한 상태 머신(412)은 각 마스터들(402, 404, 406)과 제 2 유한 상태 머신(414) 및 먹스회로(420)에 각각 연결된다. 그리고, 제 1 유한 상태 머신(412)은 각 마스터들(402, 404, 406)로부터 입력되는 버스 점유 요청신호(BREQ1, BREQ2, BREQ3)에 응답하여 각 마스터들(402, 404, 406)중 하나의 마스터에 대해 버스 점유 허용 신호(BGNT1, BGNT2, BGNT3 중 하나)를 입력하고, 현재 버스 점유가 허용된 마스터의 버스 점유 정보(arb_state)를 생성하여 먹스회로(420) 및 제 2 유한 상태 머신(414)에 입력한다.
제 2 유한 상태 머신(414)은 제 1 유한 상태 머신(412)과 선입선출 메모리(416) 및 프로토콜 변환기(424)에 연결된다. 그리고, 제 2 유한 상태 머신(414)은 제 1 유한 상태 머신(412)으로부터 버스 점유 정보(arb_state)를 입력받아 현재 버스를 점유한 마스터가 독출 동작을 수행하는 경우, 해당 마스터의 독출 정보(독출 명령을 수행하는 마스터의 고유 아이디(ID)와 독출하고자 하는 독출 데이터의 버스트(Burst) 크기)를 선입선출 메모리(416)에 저장하기 위한 푸쉬 명령(FPUSH)을 선입선출 메모리(416)로 입력한다. 그리고, 프로토콜 변환기(424)를 통해 독출 데이터가 입력되면, 독출 데이터의 양을 체크하여 해당 마스터로의 데이터 전송이 종료되면 사용된 독출 정보를 제거하기 위한 팝 명령(FPOP)을 선입선출 메모리(416)로 입력한다.
선입선출 메모리(416)는 제 2 유한 상태 머신(414)과 디먹스 회로(422)에 연 결된다. 선입선출 메모리(416)는 제 2 유한 상태 머신(414)로부터의 푸쉬 명령(FPUSH)에 따라 현재 버스를 점유한 마스터의 독출 정보를 순차적으로 저장하거나, 또는 제 2 유한 상태 머신(414)으로부터의 팝 명령(FPOP)에 따라 맨 위에 저장된 독출 정보를 제거한다. 그리고, 제 2 유한 상태 머신(414)으로부터의 푸쉬 명령에 따라 저장된 독출 정보들 중 맨 위에 저장된 독출 정보에 해당하는 전달 경로 정보(resp_state)를 디먹스 회로(422)로 입력한다. 전달 경로 정보(resp_state)는 이 후 프로토콜 변환기(424)를 통해 슬레이브로부터 전송되어지는 독출 데이터를 어떤 마스터로 전달할 것인지에 관한 정보를 포함하고 있다.
먹스 회로(420)는 각 마스터들(402, 404, 406)과 제 1 유한 상태 머신(412) 및 프로토콜 변환기(424)에 연결되며, 제 1 유한 상태 머신(412)으로부터 입력되는 버스 점유 정보(arb_state)에 따라 해당 마스터로부터의 데이터를 프로토콜 변환기(424)로 전송한다.
디먹스 회로(422)는 선입선출 메모리(416)와 마스터들(402, 404, 406) 및 프로토콜 변환기(424)에 각각 연결되며, 선입선출 메모리(416)로부터 입력되는 전달 경로 정보(resp_state)에 따라 프로토콜 변환기(424)로부터의 데이터(SDATA)를 해당 마스터로 전달한다.
프로토콜 변환기(424)는 개방형 코어 프로토콜을 기반으로 하는 버스(OCP)와 먹스 회로(420) 그리고, 디먹스 회로(422) 및 제 2 유한 상태 머신(414)에 연결된다. 프로토콜 변환기(424)는 먹스 회로(420)로부터의 데이터들을 개방형 코어 프로토콜에 적합한 데이터로 변환하여 버스를 통해 전송한다. 그리고, 마스터로부터 독 출 명령을 받은 해당 슬레이브로부터 버스를 통해 전송되어진 독출 데이터를 마스터들(402, 404, 406)의 버스 프로토콜에 적합하게 변환하여 디먹스 회로(422) 및 제 2 유한 상태 머신(414)으로 입력한다.
이하, 도 5와 도 6을 참조하여 도 4에 보인 본 발명의 버스 시스템을 보다 상세히 설명한다. 도 5는 도 4의 버스 시스템에서 마스터 1(402)과 마스터 2(404)는 독출 동작을 수행하고, 마스터 3(406)은 기입 동작을 수행하는 경우의 주요 동작 신호들의 타이밍도이다. 그리고, 도 6은 도 5와 같은 동작 과정에서 각 타이밍별로 선입선출 메모리(416)에 저장되는 데이터를 보여주는 도면이다.
t0에서는 마스터 1(402)이 t1에서는 마스터 2(404)가 독출 동작을 위한 버스 점유 요청(RD_BREQ1, RD_BREQ2)을 제 1 유한 상태 머신(412)으로 각각 인가하고, t3에서는 마스터 3(406)이 기입 동작을 위한 버스 점유 요청(WR_BREQ3)을 제 1 유한 상태 머신(412)으로 인가하였다고 가정하자. 이 경우 제 1 유한 상태 머신(412)이 t1에서 마스터 1(402)에 버스 점유를 허용하였다면, 마스터 1(402)은 t1 ~ t3구간동안 먹스회로(420)를 통해 독출명령만을 버스로 전송한다. 즉, 이 구간동안에는 마스터 1(402)이 버스 마스터로서 동작한다. t1 ~ t3 구간에 대해 제 1 유한 상태 머신(412)은 마스터 1(402)이 버스 마스터임을 알리는 버스 점유 정보(arb_state)를 제 2 유한 상태 머신(414)과 먹스 회로(420)에 입력하고, 먹스 회로(420)는 마스터 1(402)로부터의 독출 명령을 프로토콜 변환기(424)를 통해 버스로 전송한다. 그리고, 제 2 유한 상태 머신(414)은 t3에서 마스터 1(402)에 의한 독출 정보를 선입선출 메모리(416)에 저장하기 위한 푸쉬 명령(FPUSH)을 선입선출 메모리(416)로 입력한다. t3에서 선입선출 메모리(416)는 제 2 유한 상태 머신(414)으로부터의 푸쉬 명령(FPUSH)에 따라, 마스터 1(402)에 대한 독출 정보(M1)를 저장(도 6의 604)한다. 도 6의 604에 보인 것처럼, t=t3에서 마스터 1에 대한 독출 정보(M1)가 선입선출 메모리(416)의 맨 위에 위치하므로 t=t3에서부터 선입선출 메모리(416)는 마스터 1로의 전달 경로 정보(resp_state)를 디먹스 회로(422)로 입력한다. 즉, t3 이후 외부의 슬레이브로부터 입력되는 최초의 독출 데이터는 디먹스 회로(422)를 통해 마스터 1(402)로 전달된다.
t3에서 마스터 1(402)에 의한 버스 점유가 종료되면, 제 1 유한 상태 머신(412)은 마스터 2(404)에 버스 점유를 허용하고, 마스터 2(404)는 t3 ~ t4 구간동안 버스 마스터로서 동작한다. 위 마스터 1(402)의 경우와 마찬가지로 마스터 2(404)는 먹스 회로(420)를 통해 독출 명령만을 버스로 전송하고, 제 2 유한 상태 머신(414)은 t4에서 마스터 2(404)에 의한 독출 정보를 선입선출 메모리(416)에 저장(도 6의 606)하기 위한 푸쉬 명령(FPUSH)을 선입선출 메모리(416)로 입력한다. t4에서 선입선출 메모리(416)는 제 2 유한 상태 머신(414)으로부터의 푸쉬 명령(FPUSH)에 따라, 마스터 2(404)에 대한 독출 정보(M2)를 저장(도 6의 606)한다.
t4에서 마스터 2(404)의 버스 점유가 종료되면, 제 1 유한 상태 머신(412)은 마스터 3(406)에 버스 점유를 허용하고, 마스터 3(406)은 t4 ~ t6 구간동안 기입 명령과 기입 데이터 모두에 대한 전송을 수행한다. 기입 동작구간에는 선입선출 메모리(416)에 저장된 데이터의 변화가 없다.
한편, t=t3에서 전송 경로 정보(resp_state)가 마스터 1(402)에 할당되어 있으므로 t3 이후 맨 처음 슬레이브로부터 입력되는 독출 데이터는 디먹스 회로(422)를 거쳐 마스터 1(402)로 전송되어진다. 만약, t5 ~ t6´구간동안 슬레이브로부터 디먹스 회로(422)를 통해 마스터 1(402)로 독출 데이터가 전송된다면, 이 구간 동안 제 2 유한 상태 머신(414)은 입력되는 독출 데이터의 양을 체크하여 독출 데이터의 전송이 종료되는 시점(t=t6´)에서 선입선출 메모리(416)에 팝 명령(FPOP)을 인가한다. t=t6´에서의 팝 명령(FPOP)에 따라, 마스터 1에 대한 독출 정보(M1)가 t=t7에서 선입선출 메모리(416)로부터 제거된다면, t7에서 선입선출 메모리(416)에 저장된 독출 정보는 도 6의 608과 같다. 즉, 이전에 저장된 데이터에서 맨 위의 마스터 1(402)에 대한 독출 정보(M1)가 제거되고, 그 다음에 저장되어 있던 마스터 2(404)에 대한 독출 정보(M2)가 선입선출 메모리(416)의 맨 위에 위치한다.
t=t7에서 선입선출 메모리(416)의 맨 위에 저장된 독출 정보(M2)는 마스터 2(404)에 해당하는 독출 정보이므로, 이 때부터 디먹스 회로(422)로 인가되는 전송 경로 정보(resp_state)는 마스터 2(404)에 대한 경로 정보이다. 앞서와 마찬가지로, 이 후 입력되는 최초 독출 데이터는 디먹스 회로(422)를 거쳐 마스터 2(404)로 전송된다. 그리고, 만약 t7에서 마스터 2(404)가 요청한 독출 데이터가 해당 슬레이브로부터 전송되어진다면, 제 2 유한 상태 머신(414)은 입력되는 독출 데이터의 양을 체크하여 독출 데이터의 전송이 완료되는 시점에서 선입선출 메모리(416)로 팝 명령(FPOP)을 인가한다. 만약, t=t7´에서 독출 데이터의 전송이 완료되었다면, t7´에서 제 2 유한 상태 머신(414)은 선입선출 메모리(416)로 팝 명령(FPOP)을 인 가하고, 선입선출 메모리(416)는 맨 위에 저장된 독출 정보(M2)를 제거한다. 그리고, 더 이상 독출 명령을 인가한 마스터가 없으므로 즉, 선입선출 메모리(416)에 저장된 더 이상의 독출 정보가 없으므로 전송 경로 정보(resp_state)는 널(NULL) 상태가 된다.
이상에서, 본 발명에 따른 버스 시스템의 구성 및 동작을 도면을 통해 상세히 설명하였지만, 이는 예시적인 것에 불과하며 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 응용 및 변경이 가능하다.
상술한 바와 같이, 본 발명의 버스 시스템은 마스터의 독출 동작시 마스터들의 아이디를 효율적으로 관리할 수 있다. 또한, 이를 통해 개방형 코어 프로토콜의 장점인 명령어 전송 페이저와 응답 페이저의 분리가 가능하여 버스의 대역폭을 향상시킬 수 있다. 뿐만 아니라, 복수의 마스터들에 의한 명령어의 완전한 파이프라이닝을 가능하게 함으로써, 각 마스터들에 의한 명령어 전달시간을 단축시킬 수 있다.
Claims (33)
- 개방형 코어 프로토콜을 기반으로 하는 버스 시스템에 있어서,상기 개방형 코어 프로토콜 기반의 버스;복수의 마스터들;상기 복수의 마스터들과 연결되어 상기 마스터들의 상기 버스에 대한 점유를 중재하고, 선택된 마스터를 상기 버스에 연결하는 버스 중재장치를 포함하되,상기 마스터들은 독출 동작시 상기 버스 중재장치를 통해 독출 명령을 상기 버스로 전송하고, 상기 버스 중재장치는 상기 독출 명령을 전송한 마스터의 독출 정보를 저장하고,상기 버스 중재장치는 상기 마스터들로부터의 버스 점유 요청에 응답하여 상기 마스터들 중 하나에 버스 점유를 허용하고, 상기 버스 점유가 허용된 마스터의 버스 점유 정보를 생성하며, 상기 버스로부터의 독출 데이터에 응답하여 상기 독출 데이터의 전송을 제어하는 중재기;상기 버스 점유 정보에 응답하여 상기 마스터들 중 하나를 상기 버스에 연결하는 먹스회로; 및상기 중재기의 제어에 다라 상기 독출 데이터를 상기 마스터들 중 하나의 마스터에 전달하는 디먹스회로를 포함함을 특징으로 하는 버스 시스템.
- 제 1항에 있어서,상기 버스 시스템은 상기 마스터들이 상기 개방형 코어 프로토콜이 아닌 다른 버스 프로토콜을 기반으로 설계된 경우 프로토콜 변환을 위한 프로토콜 변환기를 더 포함함을 특징으로 하는 버스 시스템.
- 제 2항에 있어서,상기 프로토콜 변환기는 상기 버스와 상기 버스 중재장치 사이에 연결됨을 특징으로 하는 버스 시스템.
- 제 1항에 있어서,상기 버스 중재장치는 상기 마스터로부터 상기 버스로 독출 명령의 전송이 완료되면, 상기 마스터의 버스 점유를 종료하고, 상기 독출 명령에 대해 상기 버스로부터 독출 데이터가 전송되면, 상기 독출 데이터를 상기 저장된 마스터의 독출 정보에 따라 해당 마스터로 전달함을 특징으로 하는 버스 시스템.
- 제 1항에 있어서,상기 마스터들은 기입 동작시 상기 버스 중재장치를 통해 기입 명령과 기입 데이터를 모두 상기 버스에 전송할 때까지 상기 버스를 점유함을 특징으로 하는 버스 시스템.
- 제 1항에 있어서,상기 마스터의 독출 정보는 상기 독출 명령을 전송한 마스터의 고유 아이디와 상기 독출 데이터의 버스트 크기임을 특징으로 하는 버스 시스템.
- 삭제
- 제 1항에 있어서,상기 중재기는 상기 마스터들로부터의 버스 점유 요청에 응답하여 상기 마스터들 중 하나에 버스 점유를 허용하고, 현재 버스 점유가 허용된 마스터의 버스 점유 정보를 생성하는 제 1 중재회로; 및상기 버스 점유 정보에 응답하여 상기 버스 점유가 허용된 마스터가 독출 동작시 상기 독출 정보를 저장하고, 상기 독출 정보에 해당하는 전송 경로 정보를 상기 디먹스회로로 인가하며, 외부로부터 독출 데이터가 입력되면, 상기 저장된 독출 정보를 검색하여 해당 마스터로의 상기 독출 데이터의 전송을 제어하는 독출 데이터 처리기를 포함함을 특징으로 하는 버스 시스템.
- 제 8항에 있어서,상기 독출 데이터 처리기는 상기 독출 정보를 저장하고, 저장된 상기 독출 정보들 중 맨 위에 저장된 독출 정보에 해당하는 전송 경로 정보를 출력하는 정보 저장회로;상기 버스 점유 정보에 응답하여 상기 독출 정보를 상기 정보 저장회로에 저 장하기 위한 제어신호를 상기 정보 저장회로로 입력하고, 상기 독출 데이터의 전송이 완료되면, 상기 정보 저장회로에 저장된 해당 독출 정보를 제거하기 위한 제어신호를 상기 정보 저장회로로 인가하는 제 2 중재회로를 포함함을 특징으로 하는 버스 시스템.
- 청구항 10은(는) 설정등록료 납부시 포기되었습니다.제 9항에 있어서,상기 정보 저장회로는 선입선출 메모리임을 특징으로 하는 버스 시스템.
- 청구항 11은(는) 설정등록료 납부시 포기되었습니다.제 9항에 있어서,상기 제 2 중재회로는 유한 상태 머신임을 특징으로 하는 버스 시스템.
- 청구항 12은(는) 설정등록료 납부시 포기되었습니다.제 8항에 있어서,상기 제 1 중재회로는 유한 상태 머신임을 특징으로 하는 버스 시스템.
- 청구항 13은(는) 설정등록료 납부시 포기되었습니다.제 1항에 있어서,상기 마스터들은 암바 프로토콜을 기반으로 설계된 아이피 코어임을 특징으로 하는 버스 시스템.
- 청구항 14은(는) 설정등록료 납부시 포기되었습니다.개방형 코어 프로토콜을 기반으로 하는 버스 시스템에 있어서,상기 개방형 코어 프로토콜 기반의 버스;암바 프로토콜을 기반으로 하는 복수의 마스터들;상기 마스터들과 연결되어 상기 마스터들의 상기 버스 점유를 중재하는 버스 중재장치; 및상기 버스 중재장치와 연결되어 상기 마스터로부터 상기 버스 중재장치를 통해 상기 버스로 전송되는 상기 암바 프로토콜을 기반으로 하는 데이터를 상기 개방형 코어 프로토콜로 변환하고, 상기 버스로부터 전송되어진 상기 개방형 코어 프로토콜을 기반으로 하는 데이터를 상기 암바 프로토콜로 변환하는 프로토콜 변환기를 포함하되,상기 버스 중재장치는 상기 마스터들의 독출 동작시 각 마스터의 독출 정보를 순차적으로 저장하고,상기 버스 중재장치는 상기 마스터들로부터의 버스 점유 요청에 응답하여 상기 마스터들 중 하나에 버스 점유를 허용하고, 현재 버스 점유가 허용된 마스터의 버스 점유 정보를 생성하는 제 1 중재회로;상기 버스 점유 정보에 따라 상기 버스 점유가 허용된 마스터로부터의 데이터를 상기 버스로 전달하는 먹스회로;상기 버스 점유 정보에 응답하여 상기 버스 점유가 허용된 마스터가 독출 동작시 상기 독출 정보를 저장하고, 외부로부터 독출 데이터가 입력되면, 상기 저장된 독출 정보를 검색하여 해당 마스터로 상기 독출 데이터의 전송을 제어하는 독출 데이터 처리기를 포함함을 특징으로 하는 버스 시스템.
- 청구항 15은(는) 설정등록료 납부시 포기되었습니다.제 14항에 있어서,상기 버스 점유가 허용된 마스터가 기입 동작시 상기 마스터는 기입 명령과 기입 데이터의 전송이 완료될 때까지 상기 버스를 계속 점유함을 특징으로 하는 버스 시스템.
- 청구항 16은(는) 설정등록료 납부시 포기되었습니다.제 14항에 있어서,상기 버스 점유가 허용된 마스터가 독출 동작시 상기 마스터는 독출 명령만을 전송하고 상기 버스의 점유를 종료함을 특징으로 하는 버스 시스템.
- 삭제
- 청구항 18은(는) 설정등록료 납부시 포기되었습니다.제 14항에 있어서,상기 독출 데이터 처리기는 상기 독출 정보를 저장하고, 저장된 상기 독출 정보에 해당하는 마스터로의 전송 경로 정보를 생성하는 정보 저장회로;상기 버스 점유 정보에 응답하여 상기 독출 정보를 상기 정보 저장회로에 저장하기 위한 제어신호를 생성하고, 상기 독출 데이터의 전송이 종료되면, 상기 정보 저장회로에 저장된 해당 독출 정보를 제거하는 제 2 중재회로; 및상기 독출 데이터를 입력으로 하고, 상기 정보 저장회로로부터의 상기 전송 경로 정보에 따라 상기 독출 데이터를 해당 마스터로 전달하는 디먹스 회로를 포함함을 특징으로 하는 버스 시스템.
- 청구항 19은(는) 설정등록료 납부시 포기되었습니다.제 18항에 있어서,상기 정보 저장회로는 선입선출 메모리임을 특징으로 하는 버스 시스템.
- 청구항 20은(는) 설정등록료 납부시 포기되었습니다.제 18항에 있어서,상기 제 2 중재회로는 유한 상태 머신임을 특징으로 하는 버스 시스템.
- 청구항 21은(는) 설정등록료 납부시 포기되었습니다.제 18항에 있어서,상기 제 1 중재회로는 유한 상태 머신임을 특징으로 하는 버스 시스템.
- 청구항 22은(는) 설정등록료 납부시 포기되었습니다.복수의 마스터들을 하나의 버스에 연결하기 위한 버스 중재 장치에 있어서,상기 마스터들로부터의 버스 점유 요청에 응답하여 상기 마스터들 중 하나에 버스 점유를 허용하고, 상기 버스 점유가 허용된 마스터의 버스 점유 정보를 생성하며, 상기 버스로부터의 독출 데이터에 응답하여 상기 독출 데이터의 전송을 제어하는 중재기;상기 버스 점유 정보에 응답하여 상기 마스터들 중 하나를 상기 버스에 연결하는 먹스회로; 및상기 중재기로부터의 제어에 따라 상기 독출 데이터를 상기 마스터들 중 하나의 마스터에 전달하는 디먹스회로를 포함하되,상기 중재기는 상기 마스터들의 독출 동작시 각 마스터의 독출 정보를 순차 적으로 저장함을 특징으로 하는 버스 중재 장치.
- 청구항 23은(는) 설정등록료 납부시 포기되었습니다.제 22항에 있어서,상기 중재기는 상기 마스터들로부터의 버스 점유 요청에 응답하여 상기 마스터들 중 하나에 버스 점유를 허용하고, 현재 버스 점유가 허용된 마스터의 버스 점유 정보를 생성하는 제 1 중재회로; 및상기 버스 점유 정보에 응답하여 상기 버스 점유가 허용된 마스터가 독출 동작시 상기 독출 정보를 저장하고, 상기 독출 정보에 해당하는 전송 경로 정보를 생성하여 상기 디먹스회로로 입력하고, 외부로부터 독출 데이터가 입력되면 상기 저장된 독출 정보를 검색하여 상기 독출 데이터에 대한 해당 마스터로의 전송을 제어하는 독출 데이터 처리기를 포함함을 특징으로 하는 버스 중재 장치.
- 청구항 24은(는) 설정등록료 납부시 포기되었습니다.제 23항에 있어서,상기 독출 데이터 처리기는 상기 독출 정보를 저장하고, 상기 전송 경로 정보를 생성하는 정보 저장회로;상기 버스 점유 정보에 응답하여 상기 독출 정보를 상기 정보 저장회로에 저장하고, 상기 독출 데이터의 전송이 완료되면, 상기 정보 저장회로에 저장된 해당 독출 정보를 제거하는 제 2 중재회로를 포함함을 특징으로 하는 버스 중재 장치.
- 청구항 25은(는) 설정등록료 납부시 포기되었습니다.제 24항에 있어서,상기 정보 저장회로는 선입선출 메모리임을 특징으로 하는 버스 중재 장치.
- 청구항 26은(는) 설정등록료 납부시 포기되었습니다.제 24항에 있어서,상기 제 2 중재회로는 유한 상태 머신임을 특징으로 하는 버스 중재 장치.
- 청구항 27은(는) 설정등록료 납부시 포기되었습니다.제 23항에 있어서,상기 제 1 중재회로는 유한 상태 머신임을 특징으로 하는 버스 중재 장치.
- 복수의 마스터들을 개방형 코어 프로토콜을 기반으로 하는 버스에 적용하기 위한 버스 중재 방법에 있어서,상기 마스터들이 상기 버스의 점유를 요청하는 버스 요청 단계;상기 마스터들 중 하나에 상기 버스의 점유를 허용하는 버스 중재 단계;상기 버스 점유가 허용된 마스터가 버스를 통해 기입동작 또는 독출동작을 수행하는 명령 수행 단계를 포함하되,상기 명령 수행 단계는, 상기 마스터들로부터의 버스 점유 요청에 응답하여 버스 점유가 허용된 마스터의 버스 점유 정보를 생성하고, 상기 생성된 버스 점유 정보에 따라 상기 마스터들 중 하나를 상기 버스에 연결하되,상기 버스 점유가 허용된 마스터가 독출 동작을 수행한다고 판단되는 경우, 상기 버스 점유가 허용된 마스터의 독출 명령만을 전송한 후 상기 버스 점유를 종료하고,상기 버스 점유가 허용된 마스터의 독출 정보를 생성하여 생성된 독출 정보를 저장하고,상기 버스로부터 독출 데이터가 입력되면 상기 저장된 독출 정보에 따라 해당 마스터의 버스 점유를 다시 허용한 후 상기 독출 데이터를 전달하는 것을 특징으로 하는 버스 중재 방법.
- 청구항 29은(는) 설정등록료 납부시 포기되었습니다.제 28항에 있어서,상기 마스터들이 상기 개방형 코어 프로토콜이 아닌 다른 버스 프로토콜로 설계된 경우 상호 프로토콜 변환을 위한 프로토콜 변환 단계를 더 포함함을 특징으로 하는 버스 중재 방법.
- 제 28항에 있어서,상기 명령 수행 단계에서 상기 마스터가 기입 동작을 수행하는 경우 상기 마스터는 기입 명령과 기입 데이터의 전송이 완료될 때까지 상기 버스를 점유함을 특징으로 하는 버스 중재 방법.
- 청구항 31은(는) 설정등록료 납부시 포기되었습니다.제 28항에 있어서,상기 독출 정보는 독출 동작을 수행하는 마스터의 고유 아이디와 상기 마스터가 독출하고자하는 독출 데이터의 버스트 크기임을 특징으로 하는 버스 중재 방법.
- 삭제
- 청구항 33은(는) 설정등록료 납부시 포기되었습니다.제 28항에 있어서,상기 해당 마스터에 상기 독출 데이터의 전달이 완료되면, 상기 저장된 해당 독출 정보는 제거됨을 특징으로 하는 버스 중재 방법.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040011427A KR101089324B1 (ko) | 2004-02-20 | 2004-02-20 | 복수의 마스터들을 포함하는 서브 시스템을 개방형 코어프로토콜을 기반으로 하는 버스에 연결하기 위한 버스시스템 |
US11/035,741 US7412550B2 (en) | 2004-02-20 | 2005-01-18 | Bus system with protocol conversion for arbitrating bus occupation and method thereof |
JP2005031161A JP4785112B2 (ja) | 2004-02-20 | 2005-02-07 | 複数のマスタを含むサブシステムをオープンコアプロトコルを基盤とするバスに連結するためのバスシステム |
DE102005009174.1A DE102005009174B4 (de) | 2004-02-20 | 2005-02-17 | Bussystem, zugehöriges Busbelegungszuteilverfahren und Datenübertragungsverfahren |
CNB2005100082943A CN100481056C (zh) | 2004-02-20 | 2005-02-21 | 总线系统及其方法 |
GB0503547A GB2411266B (en) | 2004-02-20 | 2005-02-21 | Bus system and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040011427A KR101089324B1 (ko) | 2004-02-20 | 2004-02-20 | 복수의 마스터들을 포함하는 서브 시스템을 개방형 코어프로토콜을 기반으로 하는 버스에 연결하기 위한 버스시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050082834A KR20050082834A (ko) | 2005-08-24 |
KR101089324B1 true KR101089324B1 (ko) | 2011-12-02 |
Family
ID=34420709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040011427A KR101089324B1 (ko) | 2004-02-20 | 2004-02-20 | 복수의 마스터들을 포함하는 서브 시스템을 개방형 코어프로토콜을 기반으로 하는 버스에 연결하기 위한 버스시스템 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7412550B2 (ko) |
JP (1) | JP4785112B2 (ko) |
KR (1) | KR101089324B1 (ko) |
CN (1) | CN100481056C (ko) |
DE (1) | DE102005009174B4 (ko) |
GB (1) | GB2411266B (ko) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101034494B1 (ko) * | 2004-02-11 | 2011-05-17 | 삼성전자주식회사 | 개방형 코어 프로토콜을 기반으로 하는 버스 시스템 |
US7768908B2 (en) * | 2004-04-15 | 2010-08-03 | Cameron International Corporation | Systems and methods of providing redundant communication to an electronic device |
JP4222251B2 (ja) * | 2004-04-27 | 2009-02-12 | ソニー株式会社 | バス調停装置およびバス調停方法 |
KR100694095B1 (ko) * | 2005-03-05 | 2007-03-12 | 삼성전자주식회사 | 버스 연결 방법 및 장치 |
US7376780B2 (en) * | 2005-10-31 | 2008-05-20 | Lsi Corporation | Protocol converter to access AHB slave devices using the MDIO protocol |
FR2894696A1 (fr) * | 2005-12-14 | 2007-06-15 | Thomson Licensing Sas | Procede d'acces a un bus de transmission de donnees, dispositif et systeme correspondant |
US8301885B2 (en) * | 2006-01-27 | 2012-10-30 | Fts Computertechnik Gmbh | Time-controlled secure communication |
KR100839593B1 (ko) * | 2006-09-29 | 2008-06-19 | 한국전자통신연구원 | 온칩 네트워크의 병렬성을 높이기 위한 슬레이브 네트워크인터페이스 회로 및 그 시스템 |
US8325599B2 (en) * | 2007-03-23 | 2012-12-04 | Panasonic Corporation | Communication system and communication method |
US20090307401A1 (en) * | 2008-05-30 | 2009-12-10 | St Wireless Sa | Circuit and method for bridging multiple source ahb slaves to a target ahb slave |
US20100312934A1 (en) * | 2009-06-05 | 2010-12-09 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and Method for Multi-Protocol Bus Communications |
KR20110080524A (ko) * | 2010-01-06 | 2011-07-13 | 삼성전자주식회사 | 프로토콜 인터페이스 변환장치 및 방법 |
US8386682B2 (en) * | 2010-06-30 | 2013-02-26 | Intel Corporation | Method, apparatus and system for maintaining transaction coherecy in a multiple data bus platform |
KR101699781B1 (ko) * | 2010-10-19 | 2017-01-26 | 삼성전자주식회사 | 시스템 온 칩 및 그것의 데이터 중재 방법 |
KR101662029B1 (ko) | 2010-11-12 | 2016-10-06 | 삼성전자주식회사 | 버스 중재 장치 및 방법 |
US8930602B2 (en) | 2011-08-31 | 2015-01-06 | Intel Corporation | Providing adaptive bandwidth allocation for a fixed priority arbiter |
US9021156B2 (en) | 2011-08-31 | 2015-04-28 | Prashanth Nimmala | Integrating intellectual property (IP) blocks into a processor |
US8713234B2 (en) | 2011-09-29 | 2014-04-29 | Intel Corporation | Supporting multiple channels of a single interface |
US8713240B2 (en) | 2011-09-29 | 2014-04-29 | Intel Corporation | Providing multiple decode options for a system-on-chip (SoC) fabric |
US8874976B2 (en) | 2011-09-29 | 2014-10-28 | Intel Corporation | Providing error handling support to legacy devices |
US8929373B2 (en) | 2011-09-29 | 2015-01-06 | Intel Corporation | Sending packets with expanded headers |
US8805926B2 (en) | 2011-09-29 | 2014-08-12 | Intel Corporation | Common idle state, active state and credit management for an interface |
US8711875B2 (en) | 2011-09-29 | 2014-04-29 | Intel Corporation | Aggregating completion messages in a sideband interface |
US8775700B2 (en) | 2011-09-29 | 2014-07-08 | Intel Corporation | Issuing requests to a fabric |
FR2982961B1 (fr) * | 2011-11-22 | 2014-09-05 | Schneider Electric Usa Inc | Arbitrage de dispositif de commande prioritaire |
US9053251B2 (en) | 2011-11-29 | 2015-06-09 | Intel Corporation | Providing a sideband message interface for system on a chip (SoC) |
WO2013145062A1 (ja) | 2012-03-30 | 2013-10-03 | 日本電気株式会社 | バスアクセス調停回路およびバスアクセス調停方法 |
EP3185130A1 (en) * | 2015-12-22 | 2017-06-28 | NXP USA, Inc. | A serial data communications switching device and a method of operating thereof |
US10911261B2 (en) | 2016-12-19 | 2021-02-02 | Intel Corporation | Method, apparatus and system for hierarchical network on chip routing |
US10846126B2 (en) | 2016-12-28 | 2020-11-24 | Intel Corporation | Method, apparatus and system for handling non-posted memory write transactions in a fabric |
KR102385541B1 (ko) * | 2017-09-29 | 2022-04-11 | 삼성전자주식회사 | 버스 시스템 |
CN113515477B (zh) * | 2020-04-09 | 2024-05-03 | 珠海全志科技股份有限公司 | 一种总线网络中优先级动态调整方法、装置和存储介质 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62280948A (ja) | 1986-05-29 | 1987-12-05 | Fanuc Ltd | バス調停方式 |
JPS63182933A (ja) | 1987-01-23 | 1988-07-28 | Nec Corp | 識別番号割り当て方法 |
JPH0253161A (ja) | 1988-08-17 | 1990-02-22 | Sanyo Electric Co Ltd | メモリアクセス方式 |
US5377331A (en) | 1992-03-26 | 1994-12-27 | International Business Machines Corporation | Converting a central arbiter to a slave arbiter for interconnected systems |
JPH06231074A (ja) * | 1993-01-29 | 1994-08-19 | Nec Corp | システムバスの多重アクセス方式 |
JPH0895899A (ja) * | 1994-09-22 | 1996-04-12 | Hitachi Ltd | Dma転送制御装置 |
JP3519182B2 (ja) | 1995-09-05 | 2004-04-12 | 株式会社日立製作所 | 情報処理システムおよびバスアービタならびにバス制御方法 |
JPH1027156A (ja) * | 1996-07-10 | 1998-01-27 | Nec Eng Ltd | バスアービタ制御装置 |
US6078976A (en) | 1997-06-24 | 2000-06-20 | Matsushita Electric Industrial Co., Ltd. | Bridge device that prevents decrease in the data transfer efficiency of buses |
GB2379773A (en) | 2000-05-31 | 2003-03-19 | Westell Technologies Inc | Modem having flexible architecture for connecting to multiple channel interfaces |
JP3598958B2 (ja) * | 2000-09-13 | 2004-12-08 | 日本電気株式会社 | バス調停方法及び情報処理装置 |
US6877053B2 (en) * | 2001-01-03 | 2005-04-05 | Nec Corporation | High performance communication architecture for circuit designs using probabilistic allocation of resources |
JP2002304369A (ja) * | 2001-04-04 | 2002-10-18 | Nec Corp | バスシステム |
JP2002278923A (ja) * | 2002-01-25 | 2002-09-27 | Hitachi Ltd | バスシステム,バス制御方式及びそのバス変換装置 |
JP4060097B2 (ja) * | 2002-03-07 | 2008-03-12 | シャープ株式会社 | 自己同期型fifoメモリ装置および非同期型情報処理装置 |
US6910087B2 (en) | 2002-06-10 | 2005-06-21 | Lsi Logic Corporation | Dynamic command buffer for a slave device on a data bus |
JP2004171209A (ja) * | 2002-11-19 | 2004-06-17 | Matsushita Electric Ind Co Ltd | 共有メモリデータ転送装置 |
KR100618817B1 (ko) * | 2003-12-17 | 2006-08-31 | 삼성전자주식회사 | 소비 전력을 절감시키는 amba 버스 구조 시스템 및 그방법 |
-
2004
- 2004-02-20 KR KR1020040011427A patent/KR101089324B1/ko active IP Right Grant
-
2005
- 2005-01-18 US US11/035,741 patent/US7412550B2/en active Active
- 2005-02-07 JP JP2005031161A patent/JP4785112B2/ja active Active
- 2005-02-17 DE DE102005009174.1A patent/DE102005009174B4/de active Active
- 2005-02-21 CN CNB2005100082943A patent/CN100481056C/zh active Active
- 2005-02-21 GB GB0503547A patent/GB2411266B/en active Active
Also Published As
Publication number | Publication date |
---|---|
GB0503547D0 (en) | 2005-03-30 |
US7412550B2 (en) | 2008-08-12 |
CN1658180A (zh) | 2005-08-24 |
JP4785112B2 (ja) | 2011-10-05 |
JP2005235197A (ja) | 2005-09-02 |
DE102005009174A1 (de) | 2005-09-15 |
GB2411266A (en) | 2005-08-24 |
CN100481056C (zh) | 2009-04-22 |
US20050204084A1 (en) | 2005-09-15 |
GB2411266B (en) | 2006-08-02 |
KR20050082834A (ko) | 2005-08-24 |
DE102005009174B4 (de) | 2014-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101089324B1 (ko) | 복수의 마스터들을 포함하는 서브 시스템을 개방형 코어프로토콜을 기반으로 하는 버스에 연결하기 위한 버스시스템 | |
US7506089B2 (en) | Bus system and method thereof | |
US7275119B2 (en) | Early detection and grant, an arbitration scheme for single transfers on AMBA advanced high-performance bus | |
US7475182B2 (en) | System-on-a-chip mixed bus architecture | |
JP4083987B2 (ja) | 多重レベル接続識別を備えた通信システム | |
JP5036120B2 (ja) | 非ブロック化共有インターフェイスを持つ通信システム及び方法 | |
US6981088B2 (en) | System and method of transferring data words between master and slave devices | |
EP0737924A2 (en) | Bus arbritation and data transfer | |
US5469435A (en) | Bus deadlock avoidance during master split-transactions | |
EP1127318A1 (en) | Method and apparatus for an improved interface between computer components | |
JPH08227392A (ja) | 待ち時間及びシャドー・タイマを有するバス・システム | |
US20050174877A1 (en) | Bus arrangement and method thereof | |
JP4198376B2 (ja) | バスシステム及びバスシステムを含む情報処理システム | |
US5915103A (en) | Method and system for an extensible on silicon bus supporting multiple functional blocks | |
US6654836B1 (en) | Dual master device for improved utilization of a processor local bus | |
WO2006071942A2 (en) | Method and apparatus for implementing heterogeneous interconnects | |
JP2006119724A (ja) | Cpuシステム、バスブリッジ、その制御方法、及びコンピュータシステム | |
US20030204663A1 (en) | Apparatus for arbitrating non-queued split master devices on a data bus | |
JP3867031B2 (ja) | 高速シリアルバスコントローラ | |
JP4249741B2 (ja) | バスシステム及びバスシステムを含む情報処理システム | |
JP5028817B2 (ja) | バスシステム | |
KR100813878B1 (ko) | 무중재 amba 버스 제어 장치 및 제어 방법과 이를이용한 amba 버스 인터페이스 시스템 | |
US7117281B1 (en) | Circuit, system, and method for data transfer control for enhancing data bus utilization | |
JP2000259555A (ja) | バスアービトレーション制御装置およびバスシステム | |
WO2001071510A2 (en) | Method and device pertaining to data transfer |
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: 20141031 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20151030 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20181031 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20191031 Year of fee payment: 9 |