KR20050080828A - 개방형 코어 프로토콜을 기반으로 하는 버스 시스템 - Google Patents

개방형 코어 프로토콜을 기반으로 하는 버스 시스템 Download PDF

Info

Publication number
KR20050080828A
KR20050080828A KR1020040008973A KR20040008973A KR20050080828A KR 20050080828 A KR20050080828 A KR 20050080828A KR 1020040008973 A KR1020040008973 A KR 1020040008973A KR 20040008973 A KR20040008973 A KR 20040008973A KR 20050080828 A KR20050080828 A KR 20050080828A
Authority
KR
South Korea
Prior art keywords
block
master
slave
bus
data transfer
Prior art date
Application number
KR1020040008973A
Other languages
English (en)
Other versions
KR101034494B1 (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 KR1020040008973A priority Critical patent/KR101034494B1/ko
Priority to JP2005023692A priority patent/JP2005228311A/ja
Priority to CNB2005100762129A priority patent/CN100543712C/zh
Priority to US11/053,900 priority patent/US7506089B2/en
Publication of KR20050080828A publication Critical patent/KR20050080828A/ko
Priority to JP2011000671A priority patent/JP2011065685A/ja
Application granted granted Critical
Publication of KR101034494B1 publication Critical patent/KR101034494B1/ko

Links

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/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
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node

Abstract

본 발명은 시스템 온 칩(SOC: System On Chip)에 있어서의 버스 시스템에 관한 것으로, 더 자세하게는 암바(AMBA: Advanced Microcontroller Bus Architecture) 프로토콜(Protocol)을 기반으로 하는 아이피(Intellectual Property) 코어(Core)들을 개방형 코어 프로토콜(OCP: Open Core Protocol)에 효과적으로 적용하기 위한 버스 시스템에 관한 것이다.
본 발명의 버스 시스템은 암바 프로토콜에서 데이터 전송 상태를 나타내는 HREADY 신호를 마스터용과 슬레이브용으로 구분하여 각각 아이피 코어의 마스터 블록과 슬레이브 블록으로 인가함으로써 마스터 블록이 동작 중에도 슬레이브 블록의 동작을 가능하게 한다.

Description

개방형 코어 프로토콜을 기반으로 하는 버스 시스템{BUS SYSTEM BASED ON OPEN CORE PROTOCOL}
본 발명은 시스템 온 칩(SOC: System On Chip)에 있어서의 버스 시스템에 관한 것으로, 더 자세하게는 암바(AMBA: Advanced Microcontroller Bus Architecture) 프로토콜(Protocol)을 따르는 아이피(Intellectual Property) 코어(Core)들을 개방형 코어 프로토콜(OCP: Open Core Protocol)에 효과적으로 적용하기 위한 버스 시스템에 관한 것이다.
효과적인 시스템 온 칩의 설계를 위해 가장 중요한 것은 하나의 칩상에 구현된 복수의 아이피 코어들간의 상호 통신을 위한 버스 시스템의 구현이다. 최근까지 가장 널리 사용되고 있는 시스템 온 칩 버스 시스템은 ARM(Advanced RISC Machine)사의 암바 프로토콜을 기반으로 하는 AHB(Advanced High-performance Bus) 버스 시스템이며, 이에 따라 많은 아이피 코어들이 암바 프로토콜을 기반으로 설계되었다.
한편, 시스템 온 칩 설계에 있어서, 점점 더 짧아지고 있는 시장의 요구(time to market)에 부응하기 위해 이전에 설계되어 현재 사용되고 있는 아이피 코어들의 재활용이 점차 확대되고 있다. 이와 같은 아이피 코어의 재활용은 설계 시간의 단축과 칩의 신뢰성 향상을 위해 필수적이다. 이러한 아이피 코어의 재활용에 보다 적합한 버스 시스템이 플럭-인(plug-in) 개념의 개방형 코어 프로토콜을 기반으로 하는 소닉사(SONICs Inc.)의 실리콘 백플랜 마이크로 네트워크(Silicon Backplane μNetwork)이며, 최근 그 사용이 점차 증가하고 있다.
도 1은 암바 프로토콜 스펙 2.0에서 제안하는 AHB 버스 시스템의 블록도이다. 도 1에 보인 것처럼, AHB 버스 시스템은 복수의 마스터들(Master 100, 102, 104)과 슬레이브들(Slave 120, 122, 124, 126) 그리고 중재기(Arbiter 110) 및 디코더(Decoder 118)를 포함한다.(단, 도 1에서는 설명의 편의를 위해 세 개의 마스터와 네 개의 슬레이브만을 도시하였다.) 또한, AHB 버스 시스템은 마스터와 슬레이브간의 데이터 흐름을 제어하기 위한 다수의 먹스회로들(112, 114, 116)을 포함한다. 먹스회로들(112, 114, 116)은 중재기(110)와 디코더(118)에 의해 제어된다.
도 1에 보인 AHB 버스 시스템에서 특정의 마스터가 버스에 연결된 슬레이브에 접속하여 데이터를 읽거나 쓰기 위해서는 먼저 마스터가 중재기에 버스 사용 요청을 한다. 예를 들어, 마스터 1(100)은 슬레이브 3(124)에 데이터를 쓰기 위해 먼저 중재기(110)에 버스 사용 요청(HBUSREQ1)을 한다. 중재기(110)는 마스터 1(100)의 버스 사용 요청(HBUSREQ1)에 응답하여 현재 버스를 사용하고 있는 다른 마스터가 존재하는지 여부를 확인하고, 만약 현재 버스를 사용중인 다른 마스터가 존재하지 않는다면, 중재기(110)는 마스터 1(100)에 버스 그랜트 신호(HGRANT)를 인가한다. 그리고, 중재기(110)는 제 1 먹스회로(112)와 제 2 먹스회로(114)를 제어하여 마스터 1(100)로부터의 데이터(HWDATA1)를 슬레이브 3(124)으로 전송한다. 이 때, 제 1 먹스회로(112)는 마스터로부터 슬레이브로의 어드레스 신호(HADDR)와 제어신호의 전송을 위한 먹스회로이고, 제 2 먹스회로(114)는 마스터로부터 슬레이브로의 데이터(HWDATA)의 전송을 위한 먹스회로이다. 한편, 마스터 1(100)에 의한 데이터 전송이 완료되면 슬레이브 3(124)은 마스터 1(100)로 데이터의 전송이 종료되었음을 알리는 신호를 인가한다. 이 때, 슬레이브로부터 마스터로 인가되는 데이터 전송 상태 신호(HREADY)는 디코더(118)에 의해 제어되는 제 3 먹스회로(116)를 통해 마스터 1(100)로 전송된다.
도 2a는 도 1의 AHB 버스 시스템에서 마스터가 한 주기동안 데이터를 전송하는 경우 데이터 전송과 데이터 전송 상태 신호(HREADY)와의 관계를 보여주는 타이밍도이다. 그리고, 도 2b는 도 1의 AHB 버스 시스템에서 마스터가 몇 주기에 걸쳐 데이터를 전송하는 경우의 데이터 전송과 데이터 전송 상태 신호(HREADY)와의 관계를 보여주는 타이밍도이다.
도 2a에 보인 것처럼, 마스터로부터 데이터(HWDATA)가 한 주기동안만 전송되는 경우에는 슬레이브로부터의 데이터 전송 상태 신호(HREADY)는 하이(high)의 상태를 그대로 유지한다. 반면에 도 2b에 보인 것처럼, 마스터로부터 슬레이브로 몇 주기에 걸쳐 데이터(DATA_B)가 전송되는 경우에는 안정적인 데이터 전송을 위해 데이터의 전송이 완료될 때까지 데이터 전송 상태 신호(HREADY)를 로우(low) 상태로 유지한다. 한편, 데이터 전송 상태 신호(HREADY)가 로우인 상태 동안에는 마스터의 안정적인 데이터 전송은 가능하지만, 현재 진행중인 데이터의 전송 이외의 다른 동작의 안정성은 보장할 수 없다. 그래서, 데이터 전송 상태 신호(HREADY)가 로우인 상태를 마스터의 대기 상태(wait state)라고 한다.
도 3은 개방형 코어 프로토콜을 기반으로 하는 실리콘 백플랜 마이크로 네트워크의 블록도이다. 도 3에 보인 실리콘 백플랜 마이크로-네트워크(300)는 트리 형태의 실리콘 백플랜 버스(302)와 복수의 에이전트들(304)을 포함한다. 그리고, 각각의 에이전트들(304)에는 마스터 또는 슬레이브로 동작하는 아이피 코어들(310, 312, 314, 318, 320, 322)이 연결된다. 실리콘 백플랜 버스(302)는 도 3과 같이 트리(tree) 형태로 구현될 수도 있고, 아니면 링(ring) 형태로 구현될 수도 있다. 에이전트들(304)은 아이피 코어들을 실리콘 백플랜 버스(302)에 연결해 주는 인터페이스(Interface)의 기능을 수행한다.
한편 도 3에 보인 것처럼, 아이피 코어에는 마스터(310, 312) 또는 슬레이브(318, 320, 322)로만 동작하는 것과 레지스터 기반의 아이피 코어와 같이 마스터(316)와 슬레이브(317) 모두로 동작하는 것(314)이 있다. 만약, 도 3에서 아이피 코어들이 암바 프로토콜을 기반으로 설계되었다면, 마스터와 슬레이브 모두로 동작하는 아이피 코어(314)에서 마스터(316)가 데이터를 전송하는 도중에 대기 상태로 들어가게 되면(HREADY 신호가 로우인 구간) 슬레이브(317)는 이 구간 동안에 버스를 통한 아무런 동작을 수행할 수 없다. 예를 들어, 슬레이브(317)가 마스터(316)의 동작상태를 설정하는 레지스터라면, 마스터(316)가 대기상태ㅇ로 들어간 동작중에는 레지스터(317)의 설정을 변경할 수 없다. 이는 암바 프로토콜에서는 하나의 아이피 코어에 대해 데이터 전송 상태 신호(HREADY)를 마스터와 슬레이브 구분 없이 하나만 사용하기 때문에 외부에서는 마스터의 대기 상태를 아이피 코어 전체의 대기 상태로 인식하기 때문이다.
본 발명에서는 상술한 문제를 해결하기 위해 암바 프로토콜을 기반으로 하며, 마스터와 슬레이브 모두로 동작하는 아이피 코어를 개방형 코어 프로토콜을 기반으로 하는 버스에 적용할 때, 마스터와 슬레이브 각각의 데이터 전송 상태 신호를 마스터용과 슬레이브용으로 구분하여 각각 마스터 블록과 슬레이브 블록으로 인가하는 버스 시스템을 제공하고자 한다.
본 발명의 버스 시스템은 개방형 코어 프로토콜을 기반으로 하는 버스 그리고, 마스터 블록과 슬레이브 블록을 포함하는 아이피 코어 및 아이피 코어의 마스터 블록과 슬레이브 블록을 각각 버스에 연결시켜주는 래퍼를 포함한다. 그리고, 래퍼는 마스터 블록의 데이터 전송 상태를 나타내는 제1 데이터 전송 상태 신호를 마스터 블록으로 인가하고, 슬레이브 블록의 데이터 전송 상태를 나타내는 제2 데이터 전송 상태 신호를 슬레이브 블록으로 인가한다.
(실시예)
도 4는 도 1의 암바 프로토콜을 따르는 아이피 코어들을 도 3의 실리콘 백플랜 버스 시스템에 적용한 본 발명의 버스 시스템의 실시예를 보여주는 블록도이다. 도 4에 보인 것처럼, 본 발명의 버스 시스템은 개방형 코어 프로토콜을 기반으로 하는 실리콘 백플랜 마이크로-네트워크(400)와 래퍼블록(410) 및 암바 프로토콜을 기반으로 하는 복수의 아이피 코어들(420, 430, 440)을 포함한다.
실리콘 백플랜 마이크로-네트워크(400)는 개방형 코어 프로토콜 기반의 실리콘 백플랜 버스(402) 및 래퍼(410)와 연결되어 각 아이피 코어들(420, 430, 440)과 실리콘 백플랜 버스(402)와의 접속을 제공하고, 실리콘 백플랜 마이크로 네트워크 프로토콜을 수행하는 에이전트들(404, 406, 408)을 포함한다.
래퍼블록(410)은 각 아이피 코어들(420, 430, 440)과 연결되어 각 아이피 코어들(420, 430, 440)을 에이전트들(404, 406, 408)에 연결시킨다. 즉, 아이피 코어들(420, 430, 440)과 실리콘 백플랜 마이크로 네트워크(400)와의 접속을 제공하고, 암바 프로토콜을 개방형 코어 프로토콜로 혹은 개방형 코어 프로토콜을 암바 프로토콜로 변환하는 프로토콜 변환의 기능을 수행한다.
아이피 코어들(420, 430, 440)에는 제 1 아이피 코어(420)와 같이 마스터 동작만 수행하는 것과 제 2 아이피 코어(430)와 같이 마스터와 슬레이브 동작을 모두 수행하는 것, 그리고 제 3 아이피 코어(440)와 같이 슬레이브의 동작만을 수행하는 것이 있다. 따라서, 제 1 아이피 코어(420)는 마스터 블록(422)만을 포함하고, 제 2 아이피 코어(430)는 마스터 블록(432)과 슬레이브 블록(434) 모두를 포함한다. 그리고, 제 3 아이피 코어(440)는 슬레이브 블록(442)만을 포함한다. 각 아이피 코어들의 마스터 블록(422, 432)은 각각 마스터 래퍼(Wrapper 412, 413)와 연결되어 에이전트를 통해 실리콘 백플랜 버스(402)에 접속하고, 슬레이브 블록들(434, 442)은 슬레이브 래퍼(414, 416)와 연결되어 에이전트를 통해 실리콘 백플랜 버스(402)에 접속한다.
한편, 본 발명의 버스 시스템에서 제 2 아이피 코어(430)와 같이 마스터 블록(432)과 슬레이브 블록(434)을 모두 포함하는 아이피 코어에 연결된 래퍼(415)는 마스터 블록(432)과 슬레이브 블록(434) 각각에 대한 데이터의 전송 상태 신호를 마스터용(HREADY_M)과 슬레이브용(HREADY_S)으로 구분하여 각각 마스트 블록(432)과 슬레이브 블록(434)으로 인가한다. 즉, 마스터 래퍼2(413)는 마스터 블록(432)으로 마스터 데이터 전송 상태 신호(HREADY_M)를 인가하고, 슬레이브 래퍼2(414)는 슬레이브 블록(434)으로 슬레이브 데이터 전송 상태 신호(HREADY_S)를 인가한다. 이 때 슬레이브 데이터 전송 상태 신호(HREADY_S)는 항상 하이 상태를 유지하도록 하여 마스터 블록(432)의 동작 상태와 관계없이 외부로부터의 데이터 수신을 가능하게 한다. 특히, 이러한 동작은 마스터 블록(432)이 대기 상태(HREADY_M 이 로우상태)에 있고, 외부의 다른 마스터 블록(예를 들어, 마스터1(422))으로부터 슬레이브 블록(434)으로 데이터의 입력이 필요한 경우에 유용하다. 예를 들어, 레지스터 기반의 아이피 코어의 경우 외부의 다른 마스터로부터 레지스터 설정을 위한 데이터의 입력이 빈번하게 일어난다. 그리고, 마스터 블록(432)이 데이터를 전송 중 대기 상태에 들어간 경우에도 마스터 블록(432)의 동작을 설정하기 위한 레지스터(슬레이브 블록)의 재설정이 필요한 경우가 있다. 이 경우 마스터 데이터 전송 상태 신호(HREADY_M)와 슬레이브 데이터 전송 상태 신호(HREADY_S)를 별도로 구분하여 각각 인가하고, 슬레이브 데이터 전송 상태 신호(HREADY_S)를 하이 상태로 유지시킴으로써, 마스터 블록(432)의 동작과는 무관하게 필요한 경우 항상 슬레이브 블록(434)으로 데이터를 입력할 수 있다.
도 5는 도 4에 보인 본 발명의 버스 시스템에서 마스터 블록과 슬레이브 블록 각각에 대해 별도의 데이터 전송 상태 신호를 사용하는 경우의 데이터 전송 타이밍도이다.
도 5에 보인 것처럼, 하이 상태를 유지하는 별도의 슬레이브 데이터 전송 상태 신호(HREADY_S)를 슬레이브 블록(434)으로 인가함으로써 마스터 블록(432)이 대기 상태인 동안(HREADY_M이 로우인 구간)에도 다른 외부 아이피 코어들(420)로부터의 데이터(DATA_B) 입력이 가능하다.
이상에서, 본 발명에 따른 버스 시스템의 구성 및 동작을 상세히 설명하였지만, 이는 예시적인 것에 불과하며 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 응용 및 변경이 가능하다.
상술한 바와 같이, 암바 프로토콜을 기반으로 하는 아이피 코어들을 개방형 코어 프로토콜 기반의 버스에 적용하는 경우, 본 발명의 버스 시스템은 아이피 코어의 마스터 블록이 데이터를 전송 중 대기 상태에 있는 동안에도 슬레이브 블록의 동작을 가능하게 하여 버스의 이용 효율을 높임으로써 시스템의 성능을 향상시킨다.
도 1은 암바(AMBA: Advanced Microcontroller Bus Architecture) 프로토콜 스펙 2.0에서 제안하는 AHB(Advanced High-performance Bus) 버스 시스템의 블록도이다.
도 2a는 도 1의 AHB 버스 시스템에서 마스터가 한 주기동안 데이터를 전송하는 경우 데이터 전송과 데이터 전송 상태 신호(HREADY)와의 관계를 보여주는 타이밍도이다.
도 2b는 도 1의 AHB 버스 시스템에서 마스터가 몇 주기에 걸쳐 데이터를 전송하는 경우의 데이터 전송과 데이터 전송 상태 신호(HREADY)와의 관계를 보여주는 타이밍도이다.
도 3은 개방형 코어 프로토콜(OCP: Open Core Protocol)을 따르는 실리콘 백플랜(SB: Silicon Backplane) 버스 시스템의 블록도이다.
도 4는 도 1의 암바 프로토콜을 따르는 아이피 코어들을 도 2의 실리콘 백플랜 버스 시스템에 적용한 본 발명의 블록도이다.
도 5는 도 4에 보인 본 발명의 버스 시스템에서 마스터 블록과 슬레이브 블록 각각에 대해 별도의 데이터 전송 상태 신호를 사용하는 경우 데이터 전송의 타이밍도이다.

Claims (31)

  1. 개방형 코어 프로토콜을 기반으로 하는 버스 시스템에 있어서,
    상기 개방형 코어 프로토콜을 따르는 버스;
    마스터 블록과 슬레이브 블록을 포함하는 아이피 코어; 및
    상기 아이피 코어의 상기 마스터 블록 및 상기 슬레이브 블록을 상기 버스에 연결시켜주는 래퍼를 포함하되,
    상기 래퍼는 상기 마스터 블록의 데이터 전송 상태를 나타내는 제1 데이터 전송 상태 신호를 상기 마스터 블록으로 인가하고, 상기 슬레이브 블록의 데이터 전송 상태를 나타내는 제2 데이터 전송 상태 신호를 상기 슬레이브 블록으로 인가함을 특징으로 하는 버스 시스템.
  2. 제 1항에 있어서,
    상기 아이피 코어는 암바(AMBA: Advanced Microcontroller Bus Architecture) 프로토콜을 기반으로 설계된 아이피 코어임을 특징으로 하는 버스 시스템.
  3. 제 1항에 있어서,
    상기 제 1 데이터 전송 상태 신호와 상기 제2 데이터 전송 상태 신호는 상기 버스를 통한 상기 마스터 블록과 상기 슬레이브 블록의 데이터 전송 상태를 나타내는 신호임을 특징으로 하는 버스 시스템.
  4. 제 1항에 있어서,
    상기 마스터 블록이 대기 상태인 경우에도 상기 슬레이브 블록은 상기 버스와 연결된 다른 아이피 코어로부터 데이터를 입력받음을 특징으로 하는 버스 시스템.
  5. 제 4항에 있어서,
    상기 대기 상태에서는 상기 제1 데이터 전송 상태 신호가 로우임을 특징으로 하는 버스 시스템.
  6. 제 4항에 있어서,
    상기 슬레이브 블록은 레지스터임을 특징으로 하는 버스 시스템.
  7. 제 4항에 있어서,
    상기 슬레이브 블록으로 입력되는 상기 데이터는 상기 마스터 블록의 설정 상태를 나타내는 데이터임을 특징으로 하는 버스 시스템.
  8. 제 1항에 있어서,
    상기 래퍼는 상기 마스터 블록과 상기 버스간의 접속을 제공하는 마스터 래퍼; 및
    상기 슬레이브 블록과 상기 버스간의 접속을 제공하는 슬레이브 래퍼를 포함함을 특징으로 하는 버스 시스템.
  9. 제 8항에 있어서,
    상기 마스터 래퍼는 상기 제1 데이터 전송 상태 신호를 상기 마스터 블록으로 인가함을 특징으로 하는 버스 시스템.
  10. 제 8항에 있어서,
    상기 슬레이브 래퍼는 상기 제2 데이터 전송 상태 신호를 상기 슬레이브 블록으로 인가함을 특징으로 하는 버스 시스템.
  11. 버스 시스템에 있어서,
    개방형 코어 프로토콜을 기반으로 하는 버스;
    복수의 아이피 코어들; 및
    상기 아이피 코어들 각각에 대응되며, 각각의 대응되는 아이피 코어를 상기 버스에 연결시켜 주는 복수의 래퍼들을 포함하되,
    상기 아이피 코어들 중 마스터 동작과 슬레이브 동작을 모두 수행하는 아이피 코어는 마스터 블록과 슬레이브 블록으로 구분되고, 상기 마스터 블록 및 상기 슬레이브 블록을 포함한 아이피 코어에 연결된 래퍼는 상기 마스터 블록의 데이터 전송 상태를 나타내는 신호인 제1 데이터 전송 상태 신호를 상기 마스터 블록으로 인가하고, 상기 슬레이브 블록의 데이터 전송 상태를 나타내는 제2 데이터 전송 상태 신호를 상기 슬레이브 블록으로 인가함을 특징으로 하는 버스 시스템.
  12. 제 11항에 있어서,
    상기 아이피 코어들은 암바(AMBA: Advanced Microcontroller Bus Architecture) 프로토콜을 기반으로 하는 아이피 코어들임을 특징으로 하는 버스 시스템.
  13. 제 11항에 있어서,
    상기 제1 데이터 전송 상태 신호는 상기 암바 스펙에서의 HREADY 신호임을 특징으로 하는 버스 시스템.
  14. 제 11항에 있어서,
    상기 마스터 블록이 대기 상태인 경우에도 상기 슬레이브 블록은 상기 버스와 연결된 다른 아이피 코어로부터 데이터를 입력받음을 특징으로 하는 버스 시스템.
  15. 제 14항에 있어서,
    상기 대기 상태에서 상기 제1 데이터 전송 상태 신호는 로우 상태임을 특징으로 하는 버스 시스템.
  16. 제 14항에 있어서,
    상기 슬레이브 블록은 레지스터로 구성됨을 특징으로 하는 버스 시스템.
  17. 제 14항에 있어서,
    상기 슬레이브 블록으로 입력되는 데이터는 상기 마스터 블록의 동작을 설정하기 위한 데이터임을 특징으로 하는 버스 시스템.
  18. 제 11항에 있어서,
    상기 래퍼들은 아이피 코어들과 상기 버스간의 프로토콜 변환을 수행함을 특징으로 하는 버스 시스템.
  19. 제 18항에 있어서,
    상기 래퍼들 중 마스터 블록과 슬레이브 블록을 모두 포함하는 아이피 코어와 연결된 래퍼는 상기 마스터 블록과 상기 버스 사이에 연결되는 마스터 래퍼; 및
    상기 슬레이브 블록과 상기 버스 사이에 연결되는 슬레이브 래퍼를 포함함을 특징으로 하는 버스 시스템.
  20. 제 19항에 있어서,
    상기 마스터 래퍼는 상기 제1 데이터 전송 상태를 상기 마스터로 인가함을 특징으로 하는 버스 시스템.
  21. 제 19항에 있어서,
    상기 슬레이브 래퍼는 상기 제2 데이터 전송 상태 신호를 상기 슬레이브 블록으로 인가함을 특징으로 하는 버스 시스템.
  22. 개방형 코어 프로토콜을 기반으로 하는 버스 시스템에 있어서,
    상기 개방형 코어 프로토콜을 따르는 버스;
    마스터 블록과 슬레이브 블록을 포함하는 아이피 코어;
    상기 마스터 블록을 상기 버스에 연결하는 마스터 래퍼; 및
    상기 슬레이브 블록을 상기 버스에 연결하는 슬레이브 래퍼를 포함하되,
    상기 마스터 래퍼는 상기 마스터 블록의 데이터 전송 상태를 나타내는 제1 데이터 전송 상태 신호를 상기 마스터 블록으로 인가하고, 상기 슬레이브 래퍼는 상기 슬레이브 블록의 데이터 전송 상태를 나타내는 제2 데이터 전송 상태 신호를 상기 슬레이브 블록으로 인가함을 특징으로 하는 버스 시스템.
  23. 제 22항에 있어서,
    상기 아이피 코어는 암바(AMBA: Advanced Microcontroller Bus Architecture) 프로토콜을 기반으로 설계된 아이피 코어임을 특징으로 하는 버스 시스템.
  24. 제 22항에 있어서,
    상기 마스터 블록이 대기 상태인 경우에도 상기 슬레이브 블록은 상기 버스와 연결된 다른 아이피 코어로부터 데이터를 입력받음을 특징으로 하는 버스 시스템.
  25. 제 24항에 있어서,
    상기 대기 상태에서 상기 제1 데이터 전송 상태 신호는 로우 상태임을 특징으로 버스 시스템.
  26. 제 24항에 있어서,
    상기 슬레이브 블록은 레지스터임을 특징으로 하는 버스 시스템.
  27. 제 24항에 있어서,
    상기 슬레이브 블록으로 입력되는 상기 데이터는 상기 마스터 블록의 설정 상태를 나타내는 데이터임을 특징으로 하는 버스 시스템.
  28. 개방형 코어 프로토콜을 기반으로 하는 버스 시스템 구성방법에 있어서,
    개방형 코어 프로토콜을 기반으로 하는 버스를 구성하는 단계;
    마스터 블록과 슬레이브 블록을 포함하는 아이피 코어를 구성하는 단계; 및
    상기 아이피 코어를 상기 버스에 연결해 주는 래퍼를 구성하는 단계를 포함하되,
    상기 래퍼는 상기 마스터 블록의 데이터 전송 상태를 나타내는 제1 데이터 전송 상태 신호를 상기 마스터 블록으로 인가하고, 상기 슬레이브 블록의 데이터 전송 상태를 나타내는 신호를 상기 슬레이브 블록으로 인가함을 특징으로 하는 버스 시스템 구성 방법.
  29. 제 28항에 있어서,
    상기 아이피 코어는 암바 프로토콜을 기반으로 하여 설계된 아이피 코어임을 특징으로 하는 버스 시스템 구성방법.
  30. 제 28항에 있어서,
    상기 마스터 블록이 대기 상태인 경우에도 상기 슬레이브 블록은 상기 버스와 연결된 다른 아이피 코어로부터 데이터를 입력받음을 특징으로 하는 버스 시스템 구성방법.
  31. 제 30항에 있어서,
    상기 대기 상태에서 상기 제1 데이터 전송 상태 신호는 로우 상태임을 특징으로 하는 버스 시스템 구성방법.
KR1020040008973A 2004-02-11 2004-02-11 개방형 코어 프로토콜을 기반으로 하는 버스 시스템 KR101034494B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020040008973A KR101034494B1 (ko) 2004-02-11 2004-02-11 개방형 코어 프로토콜을 기반으로 하는 버스 시스템
JP2005023692A JP2005228311A (ja) 2004-02-11 2005-01-31 開放形コアプロトコルを基盤とするバスシステム
CNB2005100762129A CN100543712C (zh) 2004-02-11 2005-02-07 总线系统及其方法
US11/053,900 US7506089B2 (en) 2004-02-11 2005-02-10 Bus system and method thereof
JP2011000671A JP2011065685A (ja) 2004-02-11 2011-01-05 開放形コアプロトコルを基盤とするバスシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040008973A KR101034494B1 (ko) 2004-02-11 2004-02-11 개방형 코어 프로토콜을 기반으로 하는 버스 시스템

Publications (2)

Publication Number Publication Date
KR20050080828A true KR20050080828A (ko) 2005-08-18
KR101034494B1 KR101034494B1 (ko) 2011-05-17

Family

ID=34825168

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040008973A KR101034494B1 (ko) 2004-02-11 2004-02-11 개방형 코어 프로토콜을 기반으로 하는 버스 시스템

Country Status (4)

Country Link
US (1) US7506089B2 (ko)
JP (2) JP2005228311A (ko)
KR (1) KR101034494B1 (ko)
CN (1) CN100543712C (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100670820B1 (ko) * 2004-12-15 2007-01-19 한국전자통신연구원 온칩네트워크 인터페이스 장치 및 방법
KR20070099834A (ko) * 2006-04-05 2007-10-10 엘지전자 주식회사 Amba ahb의 버스 트래픽 감소 장치 및 감소 방법

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5023534B2 (ja) * 2006-03-28 2012-09-12 富士通株式会社 バスマスタ回路/スレーブ回路切替え回路
EP1950399A1 (de) * 2007-01-24 2008-07-30 Siemens Aktiengesellschaft System mit Verbraucherabzweigen
US7765351B2 (en) * 2007-03-12 2010-07-27 International Business Machines Corporation High bandwidth low-latency semaphore mapped protocol (SMP) for multi-core systems on chips
US7761632B2 (en) 2007-04-27 2010-07-20 Atmel Corporation Serialization of data for communication with slave in multi-chip bus implementation
US7814250B2 (en) 2007-04-27 2010-10-12 Atmel Corporation Serialization of data for multi-chip bus implementation
US7743186B2 (en) * 2007-04-27 2010-06-22 Atmel Corporation Serialization of data for communication with different-protocol slave in multi-chip bus implementation
US7769933B2 (en) * 2007-04-27 2010-08-03 Atmel Corporation Serialization of data for communication with master in multi-chip bus implementation
US8286014B2 (en) * 2008-03-25 2012-10-09 Intel Corporation Power management for a system on a chip (SoC)
US7783819B2 (en) * 2008-03-31 2010-08-24 Intel Corporation Integrating non-peripheral component interconnect (PCI) resources into a personal computer system
US7861027B2 (en) 2008-05-30 2010-12-28 Intel Corporation Providing a peripheral component interconnect (PCI)-compatible transaction level protocol for a system on a chip (SoC)
US20100198574A1 (en) * 2009-01-30 2010-08-05 Yossi Veller Programmer View Timing Model For Performance Modeling And Virtual Prototyping
DE102009001898A1 (de) * 2009-03-26 2010-09-30 Robert Bosch Gmbh Schaltungsanordnungen und Verfahren zur Steuerung eines Datenaustauschs in einer Schaltungsanordnung
US9021170B2 (en) * 2011-06-29 2015-04-28 Texas Instruments Incorporated System and method for improving ECC enabled memory timing
US9021156B2 (en) 2011-08-31 2015-04-28 Prashanth Nimmala Integrating intellectual property (IP) blocks into a processor
US8930602B2 (en) 2011-08-31 2015-01-06 Intel Corporation Providing adaptive bandwidth allocation for a fixed priority arbiter
US8711875B2 (en) 2011-09-29 2014-04-29 Intel Corporation Aggregating completion messages in a sideband interface
US8874976B2 (en) 2011-09-29 2014-10-28 Intel Corporation Providing error handling support to legacy devices
US8713240B2 (en) 2011-09-29 2014-04-29 Intel Corporation Providing multiple decode options for a system-on-chip (SoC) fabric
US8775700B2 (en) 2011-09-29 2014-07-08 Intel Corporation Issuing requests to a fabric
US8929373B2 (en) 2011-09-29 2015-01-06 Intel Corporation Sending packets with expanded headers
US8713234B2 (en) 2011-09-29 2014-04-29 Intel Corporation Supporting multiple channels of a single interface
US8805926B2 (en) 2011-09-29 2014-08-12 Intel Corporation Common idle state, active state and credit management for an interface
US9053251B2 (en) 2011-11-29 2015-06-09 Intel Corporation Providing a sideband message interface for system on a chip (SoC)
EP3457293B1 (en) 2014-04-03 2021-06-30 Huawei Technologies Co., Ltd. Field programmable gate array and communication method
CN104243979B (zh) * 2014-09-30 2016-04-13 广东威创视讯科技股份有限公司 基于qsys系统的图像处理异常的监控方法和系统
US10157160B2 (en) 2015-06-04 2018-12-18 Intel Corporation Handling a partition reset in a multi-root system
US9990327B2 (en) 2015-06-04 2018-06-05 Intel Corporation Providing multiple roots in a semiconductor device
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
CN108121679B (zh) * 2017-08-07 2021-01-01 鸿秦(北京)科技有限公司 一种嵌入式SoC系统总线及其协议转换桥接装置
CN113918497B (zh) * 2021-12-10 2022-03-08 苏州浪潮智能科技有限公司 一种优化ahb总线数据传输性能的系统、方法及服务器

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0594407A (ja) 1991-09-30 1993-04-16 Shikoku Nippon Denki Software Kk バス制御方式
JP3678451B2 (ja) * 1995-02-10 2005-08-03 株式会社林原生物化学研究所 う蝕抑制剤とその製造方法並びに用途
JPH103447A (ja) * 1996-06-18 1998-01-06 Matsushita Electric Ind Co Ltd バスブリッジ装置
JP3852882B2 (ja) * 1997-12-18 2006-12-06 松下電器産業株式会社 マスタスレーブ装置
US6629223B2 (en) * 1998-10-06 2003-09-30 Texas Instruments Incorporated Method and apparatus for accessing a memory core multiple times in a single clock cycle
US6353867B1 (en) * 2000-01-14 2002-03-05 Insilicon Corporation Virtual component on-chip interface
US6587905B1 (en) * 2000-06-29 2003-07-01 International Business Machines Corporation Dynamic data bus allocation
WO2002005144A1 (en) * 2000-07-03 2002-01-17 Cadence Design Systems, Inc. Circuit component interface
US6859852B2 (en) 2000-09-08 2005-02-22 Texas Instruments Incorporated Immediate grant bus arbiter for bus system
US6775732B2 (en) * 2000-09-08 2004-08-10 Texas Instruments Incorporated Multiple transaction bus system
US6816938B2 (en) * 2001-03-27 2004-11-09 Synopsys, Inc. Method and apparatus for providing a modular system on-chip interface
JP2002318782A (ja) * 2001-04-20 2002-10-31 Nec Corp バスシステム
JP2002278923A (ja) 2002-01-25 2002-09-27 Hitachi Ltd バスシステム,バス制御方式及びそのバス変換装置
US7107365B1 (en) * 2002-06-25 2006-09-12 Cypress Semiconductor Corp. Early detection and grant, an arbitration scheme for single transfers on AMBA advanced high-performance bus
EP1434137A1 (en) * 2002-12-23 2004-06-30 STMicroelectronics S.r.l. Bus architecture with primary bus and secondary bus for microprocessor systems
US7058918B2 (en) * 2003-04-28 2006-06-06 Dafca, Inc. Reconfigurable fabric for SoCs using functional I/O leads
KR101089324B1 (ko) * 2004-02-20 2011-12-02 삼성전자주식회사 복수의 마스터들을 포함하는 서브 시스템을 개방형 코어프로토콜을 기반으로 하는 버스에 연결하기 위한 버스시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100670820B1 (ko) * 2004-12-15 2007-01-19 한국전자통신연구원 온칩네트워크 인터페이스 장치 및 방법
KR20070099834A (ko) * 2006-04-05 2007-10-10 엘지전자 주식회사 Amba ahb의 버스 트래픽 감소 장치 및 감소 방법

Also Published As

Publication number Publication date
CN1690996A (zh) 2005-11-02
US7506089B2 (en) 2009-03-17
KR101034494B1 (ko) 2011-05-17
CN100543712C (zh) 2009-09-23
JP2005228311A (ja) 2005-08-25
US20050177664A1 (en) 2005-08-11
JP2011065685A (ja) 2011-03-31

Similar Documents

Publication Publication Date Title
KR101034494B1 (ko) 개방형 코어 프로토콜을 기반으로 하는 버스 시스템
JP6317520B2 (ja) Cpciバスとisaバスとの間のプロトコル変換器およびその変換方法
US6981088B2 (en) System and method of transferring data words between master and slave devices
JP5085334B2 (ja) Usb・otgコントローラ
US8041867B2 (en) Method and apparatus for enhancing data rate of advanced micro-controller bus architecture
GB2485701A (en) Using a central interface and a core specific shim to connect a computer bus to a core using an on chip protocol
KR20050082834A (ko) 복수의 마스터들을 포함하는 서브 시스템을 개방형 코어프로토콜을 기반으로 하는 버스에 연결하기 위한 버스시스템
US6345345B1 (en) Data communications device and associated method for arbitrating access using dynamically programmable arbitration scheme and limits on data transfers
US20050174877A1 (en) Bus arrangement and method thereof
WO2021120623A1 (zh) 一种数据传输方法、装置及相关组件
JPH02289017A (ja) コンピユータシステム内でデータ転送方法
US7107365B1 (en) Early detection and grant, an arbitration scheme for single transfers on AMBA advanced high-performance bus
KR100633773B1 (ko) 버스 시스템 및 버스 중재 방법
US7096290B2 (en) On-chip high speed data interface
EP1238494B1 (en) Bridge interface circuit
Aditya et al. Design and functional verification of a SPI master slave core using system verilog
EP1477904B1 (en) Bus architecture techniques employing busses with different complexities
US6996655B1 (en) Efficient peer-to-peer DMA
KR100475438B1 (ko) 데이터 버스 시스템 및 버스간 크로스 액세스 방법
KR101061187B1 (ko) 버스 시스템 및 그 제어 장치
KR100813878B1 (ko) 무중재 amba 버스 제어 장치 및 제어 방법과 이를이용한 amba 버스 인터페이스 시스템
CN116361215B (zh) 一种AXI4-Lite总线远程扩展方法
US6317847B1 (en) Software read and write tracing using hardware elements
KR20070099834A (ko) Amba ahb의 버스 트래픽 감소 장치 및 감소 방법
Ab Rani et al. Accessing AHB bus using WISHBONE master in SoC design

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150430

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160429

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170427

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180430

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 9