KR20070067692A - 데이터 전송 승인 방법, 제조 물품 및 시스템 - Google Patents

데이터 전송 승인 방법, 제조 물품 및 시스템 Download PDF

Info

Publication number
KR20070067692A
KR20070067692A KR1020077007086A KR20077007086A KR20070067692A KR 20070067692 A KR20070067692 A KR 20070067692A KR 1020077007086 A KR1020077007086 A KR 1020077007086A KR 20077007086 A KR20077007086 A KR 20077007086A KR 20070067692 A KR20070067692 A KR 20070067692A
Authority
KR
South Korea
Prior art keywords
message
broadcast channel
specific
broadcast
data
Prior art date
Application number
KR1020077007086A
Other languages
English (en)
Other versions
KR100924989B1 (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 인텔 코포레이션
Publication of KR20070067692A publication Critical patent/KR20070067692A/ko
Application granted granted Critical
Publication of KR100924989B1 publication Critical patent/KR100924989B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/188Time-out mechanisms
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1685Details of the supervisory signal the supervisory signal being transmitted in response to a specific request, e.g. to a polling signal
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0093Point-to-multipoint

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)

Abstract

상호접속된 서브시스템 아키텍쳐에서의 승인 메카니즘과 관련된 방법 및 장치가 개시된다. 데이트 메시지가 송신된 후, 송신 장치는 상호접속 아키텍쳐와 관련된 서브시스템간 통신 프로토콜에 의해 비정의된 채널상에서 승인 메시지를 송신할 수 있다. 비정의된 채널은 방송 채널인 것으로 정의된 채널상의 장치-특정 식별자를 이용하여 생성될 수 있다. 수신 장치는 측대역 제어 신호 라인을 스위칭함으로써 전송을 승인할 수 있다.

Description

데이터 전송 승인 방법, 제조 물품 및 시스템{TRANSFER ACKNOWLEDGEMENT FOR A MOBILE SCALABLE LINK(MSL) ARCHITECTURE}
관련 출원
본 출원은 "Providing Additional Channels for an MSL Architecture"란 제목의 미국 특허 출원 제 TBD 호, 대리인 문서 번호 제 42P20075 호(본 출원과 발명자가 동일하며, 동시에 출원됨)와 관련된다.
본 발명의 실시예는 프로세서간 통신에 관한 것으로서, 특히, MSL(Mobile Scalable Link) 아키텍쳐에서의 전송 승인 메카니즘에 관한 것이다.
MSL 프로토콜을 따르는 전형적인 프로세서간 통신은, MSL 사양의 채널 정의로 한정된다. 구체적으로, 하나의 채널을 특정하기 위해, MSL 아키텍쳐하에서는 4 비트가 이용가능하며, 16개의 모든 잠재적인 채널들이 MSL2에서 정의된다. 또한, 전형적인 MSL 데이터 전송은 단방향성이며, 데이터를 송신하는 송신 장치를 위해서만 제공되며, 데이터가 적절하게 수신되었음을 승인하는 메카니즘을 수신 장치에는 제공하지 않는다.
본 발명의 실시예의 설명은, 첨부 도면에 있어서, 제한을 위해서가 아닌, 예로써 제공된다.
도 1은 본 발명의 실시예에 따른 프로세서간 통신 아키텍쳐를 이용하는 시스템의 블록도이다.
도 2는 본 발명의 실시예에 따른 프로세서간 통신 사양의 채널 정의의 블록도이다.
도 3은 본 발명의 실시예에 따른 프로세서간 통신 사양을 이용하는 시스템의 통신 버스의 블록도이다.
도 4는 본 발명의 실시예에 따른 통신을 위한 타이밍도의 블록도이다.
도 5는 본 발명의 실시예에 따른 프로세서간 메시지 송신의 흐름도이다.
도 6은 본 발명의 실시예에 따른 프로세서간 메시지 전송 승인의 흐름도이다.
도 7은 본 발명의 실시예에 따른 물리적 상호접속부를 갖는 프로세서를 구비한 휴대용 장치의 블록도이다.
도 8은 본 발명의 실시예에 따른 물리적 상호접속부 및 메모리 서브시스템을 갖는 프로세서를 구비한 전자 장치의 블록도이다.
본 명세서에서, "실시예"에 대한 다양한 참조는, 본 발명의 적어도 하나의 실시예에 포함된 특정한 특징, 구조 또는 특성을 기술하는 것으로서 이해될 것이다. 따라서, "일실시예에서" 또는 "대안적인 실시예에서" 와 같은 문구는 본 발명의 다양한 실시예를 기술할 있으며, 그 전체가 동일한 실시예를 지칭할 필요는 없을 것이다.
도 1은 프로세서간 통신 아키텍쳐를 이용하는 시스템의 일실시예에 대한 블록도이다. 시스템(120)은 통신 버스(110)를 통한 통신에서의, 다수의 장치, 기구, 기계 등을 포함할 수 있다. 시스템(120)은 상호접속부상에서, 셀룰라 전화, PDA(personal digital assistant), 무선 통신 장치, 휴대용 컴퓨팅 장치 등을 포함하는 다수의 장치를 가질 수 있는 다양한 유형의 장치를 나타낸다. 또한, 시스템(120)은 다른 장치, 예를 들면, 디지털 시계, 스테레오 시스템, 카메라 등을 나타낼 수 있다.
통신 버스(110)는 시스템(120)의 다양한 장치들 사이의 하나 이상의 신호 라인을 나타낸다. 일실시예에서, 통신 버스(110)는 다양한 장치들 중에서, 물리적 상호접속부를 나타낼 수 있다. 일실시예에서, 통신 버스(110)는 데이터 라인 및 측대역 신호 라인을 포함할 수 있다. 예를 들어, 통신 버스(110)는 MSL 또는 MLS2 멀티-드롭 버스(multi-drop bus)일 수 있다.
통신 버스(110)상에 제공될 수 있는 데이터 라인은 몇 개의 논리 채널들이 존재할 수 있는 통신 인터페이스를 제공한다. 일실시예에서, 채널들은 물리적 라인을 통해 다중화될 수 있다. 통신은 방송 채널인 채널을 통해서 및 비방송(non-broadcast) 혹은 장치-특정적(device-specific)인 다른 것들을 통해서 동작하도록 특정될 수 있다. 예를 들어, 프로토콜이 둘 이상의 헤더 필드를 특정할 수 있으며, 헤더 필드 중 하나는 어드레스 또는 다른 식별자(일반적으로, ID 또는 장치 특정 ID), 및 채널 번호이다. 이들 필드가 데이터 라인상에 위치되는 경우, 번호에 대응하는 채널이 활성화되고, 식별된 장치(들)이 데이터 페이로드를 수신하도록 지시를 받는다.
하나 이상의 채널 번호는 방송 채널이도록 정의될 수 있고, 하나 이상의 채널 번호는 비방송 또는 장치-특정 채널이도록 정의될 수 있다. 일실시예에서, 특정 채널 번호 정의를 갖는 것 외에도, 방송 채널과 비방송 채널 사이의 차이는, 채널이 기동되는 방식이다. 예를 들어, 방송 채널은 방송 채널 번호 및 방송 ID, 또는 통신 버스(110)상의 모든 장치가 리스닝해야 함을 나타내도록 정의된 소정의 식별자에 의해 특정될 수 있다. 비방송 채널은 채널 번호가 장치-특정 채널로서 정의되는 채널일 수 있으며, 장치-특정 ID는 데이터 라인상에 위치된다. 따라서, 방송 채널은 하나의 장치로부터, 통신 버스(110)상의 다수의 또는 모든 다른 장치로 통신을 제공할 수 있으며, 비방송 채널은 송신 장치로부터 ID 번호와 매칭되는 특정 장치로 통신을 제공할 수 있다.
측대역 라인은 둘 이상의 장치 사이에 제공될 수 있는 하나 이상의 신호 라인인 것으로서 이해될 것이며, 그것은 데이터 라인과 관계없이, 그것과 함께, 그것과 병렬로 둘 이상의 통신 장치들 사이에 정보를 제공하기 위해, 어서트(assert)(액티브 하이 라인을 위해 하이(논리 1)로 설정되고, 액티브 로우 라인을 위해 로우(논리 0)로 설정)될 수 있다. 측대역 라인은, 예를 들면, 신호 송신 준비, 신호 대기, 시스템 클록 라인 등을 나타내는 라인일 수 있다.
일실시예에서, 통신 버스(110)는 중재를 통해 제어될 수 있다. 중재 방안에서, 소정의 시간에 하나의 장치가 버스의 제어를 가질 수 있다. 장치가 버스의 "제어"를 갖는 것을 특정하는 것은, 데이터 라인 및 측대역 라인을 나타낼 수 있다. 이와 달리, 장치가 버스를 제어하는 것을 특정하는 것은, 단순히 장치가 통신 버스(110)의 하나 이상의 물리적 라인상에서 통신할 권리를 가짐을 나타낼 수 있다. 일실시예에서, 중재를 이용하여 버스상의 마스터 및 슬레이브 장치를 특정할 수 있다. 마스터는 메시지(예를 들면, ID, 채널 번호, 데이터 바이트 등)를 데이터 라인상에 위치시킬 권리를 갖는다. 따라서, 마스터 장치는 송신을 위한 기회를 갖는 것으로 특정된 장치이다. 슬레이브는 마스터가 버스를 제어하는 동안, 메시지를 데이터 라인상에 위치시킬 권리를 갖지 않는다. 따라서, 슬레이브는 수신하도록 특정된 장치이거나, 또는, 통신을 수신하지는 않지만 통신이 장치에 송신될 때까지 대기해야 하는 장치이거나, 또는, 송신을 위한 기회를 갖는 장치일 수 있다. 그러나, 일실시예에서, 버스가 마스터에 의해 제어되는 경우에 조차도, 수신 장치 또는 슬레이브 장치에 의해, 하나 이상의 측대역 신호가 어서트될 수 있다. 장치는 각각에 대한 송신 기회를 갖기 위해, 버스의 제어 또는 데이터 라인을 교번할 수 있다.
따라서, 장치(100)는 버스를 제어할 수 있으며, 마스터인 것으로 간주될 수 있다. 일실시예에서, 장치(100)는 서브시스템, 회로, 프로세서 등을 나타낸다. 프로세서로서의 장치(100)는 시스템(120)에서의 범용 프로세서, 응용 프로세서(예를 들면, 시스템(120)상에서의 하나 이상의 응용 레벨 프로그램/코드 실행의 액세스 및/또는 제어를 갖는 장치) 등을 나타낼 수 있다. 일실시예에서, 시스템(120)에서의 하이 레벨 프로세서는 버스 마스터로서 시작할 수 있고, 통신 버스(110)에 대한 클록 신호를 생성할 수 있다. 하이 레벨 프로세서는 시스템(120)의 동작 동안에 통신 버스(110)상에서 슬레이브로서 교번할 수 있다. 도시된 것들 이외의 다소의 장치들이 시스템(120)에 제공될 수 있다.
장치(101-103)는 다른 회로, 서브시스템, 프로세서, 논리 어레이, 주변 장치, 외부 서버 등을 나타낸다. 각각의 장치(101-103)는 시스템(120)의 동작/실행의 소정 시점에서 마스터 장치를 나타낼 수 있다. 다른 시간에, 이들 장치는 통신 버스(110)에 부착된 슬레이브 장치를 나타낸다. 도 1이 시스템(120) 실행시에 스냅샷인 것으로 고려된다면, 이들 장치는 현재 슬레이브 장치인 것으로 고려될 수 있으며, 메시지를 수신하고/하거나, 그들이 메시지를 수신 및/또는 송신함에 따라 그러한 시간까지 아이들(idle)로 유지될 것이다.
일실시예에서, 통신 버스(110)는 방송 채널 및 비방송 채널을 지원할 수 있으며, 방송 채널은 특정 채널 번호 및 방송 ID에 의해 특정되고, 비방송 채널은 다른 상이한 특정 채널 번호 및 장치-특정 ID에 의해 특정된다. 일실시예에서, 방송 ID는 16진법의 "F"이다. 일실시예에서, 장치-특정 ID는 0-7 범위의 수이다. 일실시예에서, 채널의 수는, 예를 들면, 8, 16, 128 등일 수 있다. 채널의 수는 채널 번호를 특정하는데 이용된 비트의 수에 의존할 수 있다. 예를 들어, 1 니블(nibble)(4 비트)의 채널 번호 식별자는 16개의 상이한 채널을 식별하는 잠재력을 갖는다. 잠재적으로 이용가능한 모든 채널이 방송 또는 비방송 채널로서 정의되는 것으로 가정한다. 모든 채널이 정의된다면, 전형적으로 미래의 이용을 위해 예비되는 채널은 없을 것이다.
일실시예에서, 방송 또는 비방송 채널로서 정의된 모든 잠재적인 채널을 갖는 시스템은, 동일한 어드레스 공간내에 보다 많은 채널을 정의하기 위한 메카니즘을 이용할 수 있다. 예를 들어, 방송 채널이 정의된다면, 장치-특정 ID를 방송 채널과 함께 이용할 수 있다. 마찬가지로, 방송 ID를 비방송 채널과 함께 이용할 수 있다. 따라서, 일실시예에서, 채널이 방송 채널인지 또는 비방송 채널인지의 여부는, 특정된 채널 번호의 기능으로부터 데이터 채널상에 위치된 ID 번호의 기능으로 변경될 수 있다. 프로토콜-특정 비방송 채널의 수까지의 다수의 보조 방송 채널이 생성되어, 사양/프로토콜 정의에서 정의될 수 있는 것과는 다른 용도를 위해 이용될 수 있다. 마찬가지로, 방송 채널의 수까지의 다수의 보조 비방송 채널이 생성되어, 사양/프로토콜 정의에서 정의될 수 있는 것과는 다른 용도를 위해 이용될 수 있다.
도 2는 프로세서간 통신 사양의 채널 정의의 일실시예에 대한 블록도이다. 일실시예에서, 프로세서간 통신 정의는, 장치-특정 어드레스를 이용하는 채널 및 방송 어드레스를 이용하는 채널을 정의할 수 있다. 일례에서, MSL은 16개의 채널을 정의하며, 채널 8, 9, 15는 방송 용도로 전용되고, 나머지 채널들은 장치-특정 메시지 전송을 위한 것이다. 전형적인 MSL은 16개의 정의된 채널을 초과하는 채널을 허용하지 않는다.
일실시예에서, 장치-특정 어드레스는 채널 8, 9 및/또는 15 중 하나와 함께 이용되어, 추가적인 장치-특정 메시지 전송 메카니즘을 제공한다. 도 2에서, 이들은 RFU(reserved for future use) 채널로서 지정된다. 이들 채널은, MSL 사양이 그들을 정의하기 않기 때문에, 예비되는 것이다. 그들은 정의되지 않기 때문에, 시스템 설계자는 이들 채널을, 주문형 특정 응용 또는 용도를 위해 정의할 수 있다.
일실시예에서, 방송 어드레스는 채널 0-7 및/또는 10-14 중 하나와 함께 이용되어, 추가적인 방송 메시지 전송 메카니즘을 제공한다. 다시, 이들 채널은 시스템 방송 정보를 위해 주문형으로 정의될 수 있다. 예를 들어, 주문형 시스템 상태, 메시지 등은, 시스템에서의 소정의 장치를 위해 유용할 수 있다.
이들 채널은 전형적인 MSL에서 정의되지 않기 때문에, 하나 이상의 RFU 채널을 이용하는 시스템은, 전형적인 시스템과 여전히 백워드(backward) 조화될 수 있다. 예를 들어, 방송 어드레스는 방송 채널 8과 함께 이용되는 것으로서 정의되기 때문에, 방송 어드레스 이외의 어드레스가 방송 채널을 위해 특정되는 경우, 시스템에서의 장치는 메시지를 무시할 수 있다. 이용된 장치-특정 어드레스는, 방송 채널상에서 리스닝하고, 그 자신의 장치 ID가 방송 채널상에서 특정된 어드레스인 경우 메시지를 디코딩할 장치에 대한 것이다.
도 3은 프로세서간 통신 사양을 이용하는 시스템의 통신 버스의 일실시예에 대한 블록도이다. 응용 프로세서(310)는, 시스템에서 응용 레벨 기능들을 수행할 수 있는 프로세서, 서브시스템, 게이트 어레이 등일 수 있다. 응용 프로세서(310)는, 응용 프로세서(310)와 하나 이상의 다른 프로세서, 장치, 서브시스템 등, 예를 들면, 장치(320) 사이의 프로세서간 통신을 용이하게 하는 인터페이스를 포함할 수 있다. 장치(320)는 주변 장치, 회로, 하드웨어 등을 제어하는 서브시스템 및/또는 드라이버를 나타낼 수 있다.
일실시예에서, 응용 프로세서(310)는 버스 마스터이며, 그것은 응용 프로세서(310)가 그 자신과 장치(320) 사이의 물리적 상호접속 라인의 하나 이상의 부분들을 제어함을 의미한다. 응용 프로세서(310)는 장치(320)와의 물리적 상호접속에 대한 인터페이스를 포함할 수 있다. 마찬가지로, 장치(320)는 물리적 상호접속에 대한 인터페이스를 포함할 수 있다. 인터페이스는 장치/프로세서를 물리적 상호접속부에 연결하기 위해, 핀(pin), 수신 회로, 드라이브 회로, 풀-업/풀-다운 회로(pull-up/pull-down circuit) 및 버퍼와 같은 것들 중에서 하나 이상을 포함할 수 있다. 물리적 상호접속부는 다수의 신호 라인을 포함할 수 있으며, 클록 신호 CLK(311), 스트로브 신호 STB(332), 대기 신호 WAIT(333), 데이터 라인 DAT[N:0](334) 및 중재 신호 LREQ#(335)을 포함할 수 있다. 이들 신호가 도시되었지만, 다소의 신호 라인들이 시스템에 제공될 수 있다.
일실시예에서, DAT[N:0](334)은 프로세서간 통신이 송신될 수 있는 다수의 신호 라인(예를 들면, 4, 8)을 나타낸다. 다른 신호 라인은, 측대역 신호 라인으로서 지칭될 수 있다. 일실시예에서, 마스터 장치가 DAT[N:0](334)을 제어한다. 또한, 마스터 장치는 하나 이상의 측대역 라인을 제어한다. LREQ#(335)에 의해 나타낸 바와 같이, 버스의 제어는 중재될 수 있고, 그것은 제어가 변경될 것임을 의미하는 것이며, 하나의 시점에서 마스터인 장치는, 다른 시점에서는 버스상의 슬레이브일 수 있다. 일실시예에서, 측대역 신호, 예를 들면, WAIT(333)는 버스상의 슬레이브 장치에 의해 어서트될 수 있다.
일실시예에서, 채널은 DAT[3:0]의 4개의 데이터 라인(334) 각각에 대해, 1 니블 중 1 비트를 위치시킴으로써 특정될 수 있다. 다른 실시예에서, 데이터 라인(334)은 8 데이터 라인 DAT[7:0]을 포함할 수 있으며, 전체 바이트가 라인상에 위치될 수 있다. 이와 달리, 시스템은 시간슬롯들로 분할된 각각의 라인을 갖도록 설계될 수 있으며, 데이터 라인 DAT[N:0](334) 각각은 상이한 데이터 채널을 개별적으로 나타낼 수 있다. 시스템은 채널 번호, 장치 ID, 및 DAT[N:0](334)상에 위치된 데이터 페이로드를 갖도록 동작할 수 있다. 일실시예에서, 채널은 채널 번호 및 식별자가 DAT[N:0]상에 위치되는 경우에 활성화될 수 있다. 식별자는 수신 장치(들)에서 디코딩되어, 수신 장치가 의도된 수신기인지의 여부가 결정된다.
2N 채널이 정의되며, 소정의 방송 채널 및 소정의 비방송 채널을 갖는 시스템에서, 장치-특정 ID가 방송 채널상에서 특정되어, 추가적인 장치-특정 메시지 전송 메카니즘을 제공한다. 마찬가지로, 방송 ID가 장치-특정 채널상에서 특정되어, 추가적인 방송 메시지 전송 메카니즘을 제공한다. 따라서, 표준 채널 정의가 향상되어, 표준에서 정의된 것이 아닌 식별자를 갖는 메시지 전송을 포함하는 변형된 채널 정의를 생성할 수 있다. 따라서, 디코더가, 사양에 따라 채널상에서 예상되는 것이 아닌 식별자를 갖는 메시지를 유효한 것으로서 수신할 수 있다.
도 4는 전술한 바와 같은 프로세서간 통신의 일실시예에 대한 타이밍도이다. CLK는 타이밍도에서의 클록 펄스를 나타낸다. 공유된 프로세서간 통신 버스는, 적어도 버스상의 통신이 관련되는 한, 버스상의 장치들을 동기화하도록 클록 신호를 포함할 수 있다. 일실시예에서, DATA[3:0]은 장치 ID 필드(411), 채널 번호 필드(412) 및 데이터 필드(413)를 포함할 수 있다. 추가적인 필드들 및/또는 상이한 필드 크기가 또한 지원될 수 있다.
방송 ID 또는 장치-특정 어드레스/ID가 장치 ID 필드(411)에 위치되어, 의도된 메시지 청중을 나타낼 수 있다. 방송 ID는, 메시지가 하나의 슬레이브 장치보다 많은 장치에 의해 디코딩되어야 함을 나타낼 수 있다. 장치-특정 ID는, 메시지가 의도된 특정 수신자에 의해서만 디코딩되어야 함을 나타낼 수 있다. 예를 들어, 도 4에서, 장치-특정 ID "1"은, 어드레스/식별자 "1"을 갖는 장치가, DATA[3:0]상에서 송신될 메시지의 의도된 수신자임을 나타낸다. 일실시예에서, 장치 ID "F"는, 2N보다 적거나, 또는, 이러한 예에서 16개의 장치가 시스템에서 지원될 수 있음을 가정하는 방송 메시지를 나타낼 수 있다.
채널 번호(412)는, 시스템에 대해 정의된 채널들 중 임의의 것으로서 특정될 수 있다. 일실시예에서, 모두 2N 채널인 잠재적인 채널이 프로세서간 통신 정의에서 정의되는 것으로 가정하며, N은 채널 번호를 나타내는데 이용된 비트/라인의 수를 나타낸다. 장치 ID 필드(411)에 위치된 대응하는 방송 ID를 갖도록 정의되는 적어도 하나의 채널이 방송 채널로서 정의되는 것으로 더 가정한다. 일실시예에서, 채널 번호(412)에 도시된 채널 8은 정의된 방송 채널을 나타낸다. 따라서, 방송 채널은, 장치-특정 ID 1로 특정된다. 프로토콜에 따라 채널 및 장치 ID는 미스매칭되기 때문에, 버스상의 장치는 메시지를 무시할 수 있다. 메시지는 장치(1)로 어드레싱되기 때문에, 표준 프로토콜 정의에 따라 메시지가 기술적으로 부적절할지라도, 장치(1)는 메시지를 디코딩하도록 동작할 수 있다. 이러한 방식으로, 추가적인 채널이 지원될 수 있다.
일실시예에서, 시스템 및 도 4의 타이밍도와 관련된 프로토콜은 단방향성이거나, 또는, 송신 전용일 수 있으며, 그것은 수신 장치가 표준 프로토콜 정의에서 전송을 승인할 방법을 갖지 않음을 의미한다. 표준 승인 메카니즘은 버스의 제어를 위해 중재하는 수신 장치가 버스의 소유권을 설정한 후, 승인 사이클을 원래의 송신 장치에 송신함에 따라, 프로토콜에 의해 정의될 수 있다. 버스를 또한 요청하는 플랫폼/시스템에 다수의 장치가 존재한다면, 이러한 프로세스는 전송을 승인시에 실질적인 지연을 생성할 수 있다. 실패된 수신을 위해 메시지를 재송신할 필요가 있는 경우, 프로세스는 더 연장될 수 있다. 따라서, 성능, 전력 및 타이밍의 관점에서, 표준 승인은 비효율적일 수 있다.
일실시예에서, 송신 장치 또는 마스터(설정된 소유권을 갖는 장치)는 승인 메시지의 전송을 갖는 데이터 메시지의 전송을 따를 수 있다. 데이터 메시지는 특정 장치에 대한 데이터 채널을 이용하는 표준 통신 프로토콜 사양을 따를 수 있다. 승인 메시지는 장치-특정 ID를 장치 ID 필드(411)에 위치시키고, 방송 채널을 채널 번호 필드(412)에 위치시킴으로써, 송신될 수 있다. 1 이상의 니블의 데이터가 데이터 필드(413)에 위치될 수 있다. 일실시예에서, 승인 동안 데이터 필드(413)에 위치된 데이터의 값은 "돈 캐어(Don't Care)"이다. 일실시예에서, 특정 승인 값이 이용될 수 있다. 승인 메시지 동안, 수신 장치는 측대역 신호들 중 하나를 어서트 또는 디어서트(de-assert)하여, 메시지가 수신되었는지를 나타낼 수 있다.
예를 들어, 도 4의 예에서, 채널/제어 스트로브(420)는, 송신 장치가 장치 ID "1" 및 방송 채널 "8"을 특정하는 동안에 어서트될 수 있다. 데이터(413)는 돈 캐어이며, 수신 장치는 송신 장치의 메시지의 데이터 페이로드 동안에 WAIT 신호(430)를 어서트한다. 시스템 구현에 따라, 메시지 동안에 WAIT(430)를 어서트하는 것은, 메시지가 재송신되어야 함을 나타낼 수 있다. 이와 달리, 메시지 동안에 WAIT(430)를 어서트하는 것은, 메시지가 적절하게 수신되었음을 나타낼 수 있다. 원래의 송신 장치는 시간(440)에 WAIT 신호(430)를 샘플링하여, 원래의 수신 장치의 승인 메시지를 "판독" 또는 "수신"한다.
샘플링 시간은 시스템 구현에 의존할 수 있다. 원래의 수신 장치가 원래의 송신 장치로부터의 메시지 전송을 승인해야 하는 1 이상의 니블의 데이터 페이로드가 존재할 수 있다. 예시를 위해 단지 2 니블의 데이터가 도시되지만, 그것이 요구되거나 또는 그것으로 제한되는 것은 아니다.
도 5는 프로세서간 메시지의 송신의 일실시예에 대한 흐름도이다. 일실시예에서, 다수의 프로세서, 서브시스템, 주변 장치 등이 버스상에서 상호접속된다. 프로세서간 통신은, 버스를 통한 메시지를 이용함으로써 용이하게 될 수 있다. 송신을 위해 메시지가 준비될 수 있다(502). 버스 및/또는 데이터 라인의 소유권/제어를 갖는 장치는, 메시지를 송신하도록 허용될 수 있다. 의도된 수신기 또는 수신기들은 버스상에서 슬레이브로서 작용할 수 있으며, 송신 장치는 마스터이다.
메시지가 방송 또는 비방송인지의 여부가 결정된다(510). 예를 들어, 송신 장치상의 송신 모듈은, 방송 메시지가 송신되고 있음을 결정할 수 있다. 다른 예에서, 송신을 위한 메시지를 생성하는 프로세서는, 메시지가 방송 또는 비방송임을 송신기에게 나타낸다. 방송 메시지는 다수의 수신기를 위한 것이며, 특정 수신 장치를 나타내지 않을 수 있다. 비방송 메시지는 장치 ID에 의해 식별될 수 있는 하나 이상의 특정된 수신기를 위한 것이다. 메시지가 방송 메시지인 경우, 메시지가 방송 채널상에서 송신될지의 여부가 결정된다(520). 예를 들어, 프로세서간 통신을 수행하기 위해 송신 장치에 의해 이용된 통신 프로토콜은, 표준 프로토콜 사양/정의에 따라, 소정의 정의된 채널상에서 송신될 소정의 메시지 유형을 특정할 수 있다. 방송 메시지가 방송 채널의 정의와 매칭되는 방송 메시지인 경우, 메시지는 표준 사양에 따라 송신될 수 있다(522).
메시지가 표준 사양 정의와 매칭되지 않는 방송 메시지인 경우, 방송 ID 및 비방송 채널이 특정될 수 있다(524). 그 후, 메시지가 송신될 수 있다(526).
메시지가 방송 메시지가 아닌 경우, 그것은 비방송 메시지이며, 메시지가 표준 장치-특정 채널상에서 송신될지의 여부가 결정된다(530). 예를 들어, 송신기는 특정 메시지를 위해 이용할 채널을 나타내는 룩업 테이블, 저장 위치 등을 액세스할 수 있다. 장치-특정 채널은, 장치 ID에 의해 특정된 장치에 대한 특정 메시지 유형의 전송을 위해 사양에 정의되는 것일 수 있다. 비방송 메시지가 사양의 장치-특정 채널의 정의와 매칭되는 메시지인 경우, 메시지는 표준 사양에 따라 송신될 수 있다(522).
메시지가 표준 사양 정의와 매칭되지 않는 장치-특정 메시지인 경우, 장치-특정 ID 및 방송 채널이 특정될 수 있다(534). 그 후, 메시지가 송신될 수 있다(536).
도 6은 프로세서간 메시지 전송 승인의 일실시예에 대한 흐름도이다. 메시지는 송신 장치로부터 데이터 채널을 통해 수신 장치로 송신될 수 있다(602). 이것은 프로세서간 통신 사양의 전송 정의 및 채널을 준수하는 메시지일 수 있다. 데이터 채널상에서의 데이터 전송은 데이터 채널 및 장치-특정 ID를 특정하는 것을 포함할 수 있다.
일실시예에서, 송신은 단방향성일 수 있으며, 전송을 승인하기 위한 메카니즘이 사양에 제공되지 않는다. 전술한 바와 같이, 장치-특정 ID는 전형적으로 방송 채널인 채널상에서 특정될 수 있다(604). 장치-특정 ID는, 특정 방송 채널상에서 전송된 메시지가 상호접속부상의 모든 장치에게 통상적으로 리스닝되고 그것에 의해 디코딩될지라도, 메시지가 의도된 수신기에 의해서만 수신 및 디코딩되도록 할 수 있다.
제 1 송신은 프로토콜 사양에 따라 행해질 수 있으며, 제 2 송신은 장치-특정 전송을 위해 정의되지 않은 채널상에서의 장치-특정 통신일 수 있다. 일실시예에서, 수신기는 측대역 신호, 예를 들면, 흐름 제어 신호 라인을 어서트하여, 송신 장치에 대한 승인을 나타낼 수 있다. 측대역 신호가 어서트되는지의 여부가 결정된다(610). 예를 들어, 마스터는 측대역 라인(예를 들면, 어서트되거나 또는 어서트되지 않음)의 조건/상태를 테스트/결정하여, 원래의 수신 장치로부터, 메시지가 수신되었는지에 대한 표시를 수신할 수 있다. 어서트되었다는 것은, 신호 라인이 액티브 하이 신호 라인에 대해 하이로 구동되고, 액티브 로우 신호 라인에 대해 로우로 구동됨을 의미한다.
측대역 신호가 어서트되는 경우, 원래의 수신 장치는 원래의 송신 장치에게, 메시지가 적절하게 수신되지 않았고, 메시지가 재송신되어야 함을 나타낼 수 있다(614). 측대역 신호가 디어서트되는 경우, 원래의 수신 장치는 원래의 송신 장치에게, 메시지가 적절하게 수신되었고, 따라서, 메시지가 승인될 수 있음을 나타낼 수 있다(612). 이들 표시는, 어서트된 신호는 적절하게 수신된 신호를 나타낼 수 있고, 디어서트된 신호는 메시지가 재송신되어야 함을 나타낼 수 있다는 점에서, 스위칭될 수 있다.
다양한 실시예에서, 본 명세서에서 기술된 구조들을 이용하여, 도 5 및 6의 다양한 동작들이 수행될 수 있다. 또한, 인스트럭션/코드의 기계 액세스가능 및/또는 실행가능 시퀀스를 이용하여, 도 5 및 6에 기술된 동작들을 수행할 수 있다. 따라서, 기술된 동작들은 펌웨어, 소프트웨어, 또는 펌웨어와 소프트웨어의 조합으로 구현될 수 있다. 소프트웨어 및/또는 펌웨어 콘텐츠는, 하드웨어, 기계, 전자 장치 등이, 전술된 기능들/특징들 중 일부 또는 전부를 포함하는 다양한 동작들을 실행/수행하도록 하는 인스트럭션을 제공할 수 있다.
기계/전자 장치/하드웨어가 동작들을 수행하도록 하는 인스트럭션은 제조 물품을 통해 수신될 수 있다. 제조 물품은 인스트럭션을 제공하는 콘텐츠를 갖는 기계 액세스가능 매체를 포함할 수 있다. 기계 액세스가능 매체는, 기계(예를 들면, 컴퓨팅 장치, 전자 장치, 전자 시스템/서브시스템 등)에 의해 액세스가능한 형태의 정보/콘텐츠를 제공(즉, 저장 및/또는 송신)하는 임의의 메카니즘을 포함한다. 예를 들어, 기계 액세스가능 매체는 전기, 광학, 음파 또는 다른 형태의 전달 신호(예를 들면, 반송파, 적외선 신호, 디지털 신호 등) 등과 같은 것 뿐만 아니라, 기록가능/기록불가능 매체(예를 들면, ROM(read only memory), RAM(random access memory), 자기 디스크 저장 매체, 광학 저장 매체, 플래시 메모리 장치 등)를 포함할 수 있다.
도 7은 물리적 상호접속부를 갖는 프로세서를 구비한 휴대용 장치의 일실시예에 대한 블록도이다. 휴대용 장치(700)는 다양한 장치, 하드웨어 유닛, 전자 구조물 등을 나타낼 수 있다. 예를 들어, 휴대용 장치(700)는 셀폰(cell phone), 스마트폰, PDA(personal digital assistant), 개인 컴퓨팅 장치 등일 수 있다. 휴대용 장치(700)는 컴퓨팅 하드웨어가 동작하는 컴퓨팅 플랫폼을 포함할 수 있다. 컴퓨팅 플랫폼은 휴대용 장치(700)의 기능을 제공하기 위한, 컴퓨팅 하드웨어 및/또는 오퍼레이팅 시스템, 하드웨어 드라이버, 및/또는 응용을 포함할 수 있다. 일실시예에서, 응용 프로세서(710)는 호스트 플랫폼상의 회로, 프로세서, 서브시스템 등일 수 있다. 일실시예에서, 응용 프로세서(710)는 휴대용 장치(700)의 컴퓨팅 플랫폼일 수 있다. 응용 프로세서(710)는 하나 이상의 하드웨어 구성요소이고/이거나, 범용 프로세서를 포함할 수 있다.
응용 프로세서(710)는 무선 서브시스템(740)에 대한 물리적 인터페이스(730)에 대한 인터페이스를 제공하는 MSL 인터페이스(721)를 포함할 수 있다. 마찬가지로, 무선 서브시스템(740)은 물리적 인터페이스(730)에 대한 인터페이스에 대한 MSL 인터페이스(722)를 포함할 수 있다. 예를 들어, MSL 인터페이스(721, 722)는 응용 프로세서(710) 및 무선 서브시스템(740)으로부터 장치들 사이의 물리적 인터페이스(730)로의 액세스를 제공하는 핀, 회로, 버퍼, 라인 드라이버, 또는 다른 하드웨어/패키징을 포함할 수 있다. 물리적 인터페이스는 응용 프로세서(710)와 무선 서브시스템(740) 사이의 데이터 전송을 위한 높은 처리량의 통신 버스/인터페이스를 나타낼 수 있다.
일실시예에서, 무선 서브시스템(740)은 휴대용 장치(700)상의 주변 장치를 나타낸다. 무선 서브시스템(740)은 무선 통신 처리 기능을 무선 서브시스템(740)에 제공하기 위해 신호 프로세서(741)를 포함할 수 있다. 일실시예에서, 신호 프로세서(741)는 휴대용 장치(700)상의 내장형 프로세서일 수 있다.
일실시예에서, 물리적 인터페이스(730)는 MSL 또는 MSL2 표준 사양/정의/프로토콜에 근거하거나 또는 그로부터 도출되는 통신 버스일 수 있다. 채널은 정의되거나, 또는 표준에서의 특정 기능/용도가 할당될 수 있다. 일실시예에서, 예를 들어, 물리적 인터페이스(730)는 표준에 의해 정의/할당된 바와 같이, 멀티캐스트 또는 방송 채널(들) 및 장치-특정 채널(들)을 포함할 수 있다. 멀티캐스트 데이터는 멀티캐스트 채널상에서 발생되는 메시지/전송에 대응하는 것으로서 이해될 수 있다. 마찬가지로, 방송 데이터 또는 방송 전송은 방송 채널상의 메시지/전송에 대응하는 것으로서 이해될 수 있으며, 장치-특정 데이터/전송은 장치-특정(또는 비방송, 논멀티캐스트(non-multicast)) 채널상의 메시지 전송을 의미할 수 있다.
방송 채널은, 멀티캐스트 채널이 메시지를 다수의 수신자에게 동시에 전송하도록 정의될 수 있다는 점에서, 멀티캐스트 채널 유형들의 서브세트인 것으로 이해될 수 있다. 방송 채널은 메시지를 모든 잠재적인 수신자에게, 또는 물리적 인터페이스(730)상의 모든 장치에게 동시에 전송하도록 정의될 수 있다. 장치-특정 채널은 메시지를 단일의 특정 수신자에게 전송하도록 정의될 수 있다. 물리적 인터페이스(730)상의 모든 장치들 중에서, 장치-특정 메시지가 전송되는 장치만이 장치-특정 채널을 활성화시에 지시된 장치-특정 식별자/어드레스에 대응하는 장치이다.
일실시예에서, 전술한 바와 같이, 방송 메시지는 물리적 인터페이스(730)상의 장치-특정 채널상에서 만들어질 수 있다. 즉, 방송 ID를 이용하여 물리적 인터페이스(730)상의 장치-특정 채널 및 전송된 메시지를 기동/활성화할 수 있다. 유사하게, 장치-특정 메시지는, 예를 들면, 장치-특정 ID 및 전송된 메시지를 갖는 방송 채널을 기동/활성화함으로써, 물리적 인터페이스(730)상의 방송 채널상에서 전송될 수 있다.
일실시예에서, 물리적 인터페이스(730)는 하나 이상의 제어 신호/라인을 포함할 수 있다. 일실시예에서, 하나 이상의 제어 신호는, 방송 및 장치-특정 채널이 동작되는 데이터 버스의 소유권을 갖지 않는 장치에 의해 활성화/제어될 수 있다. 대기 또는 동등한 제어 신호와 같은 흐름 제어 신호 라인이 제공되어, 송신 장치에게 현재 송신 메시지를 수신할 수 없음을 나타내도록 하는, 수신 장치를 위한 메카니즘을 제공할 수 있다. 예를 들어, 신호는 버퍼 오버플로우가 발생될 때 어서트될 수 있다. 일실시예에서, 제어 신호를 이용하여 승인 메카니즘을 구현할 수 있다. 예를 들어, 전술한 바와 같은 방송 채널상의 장치-특정 어드레스를 이용함으로써, 송신 장치는 메시지가 수신되었는지, 또는 메시지가 재송신되어야 하는지를 나타내도록 수신 장치에 대해 시간 주기를 제공할 수 있다. 송신 장치가 (예를 들면, 장치 ID 와 채널 유형이 미스매칭되는) 변형된 전송을 갖는 (예를 들면, 표준 프로토콜에 따른) 정상 데이터 전송을 따른다면, 이러한 변형된 전송은 수신기가 승인을 나타내기 위해 제어 신호를 활성화해야 하는 장치 ID에 의해 나타내진 수신기에서 디코딩될 수 있다. 특정 승인 메카니즘은 개별적인 설계로 될 수 있으며, 한 가지의 예는 제어 신호를 어서트하여, 메시지가 재송신되어야 함을 의미하는 부정적인 승인을 나타내도록 하는 것을 포함할 수 있다.
도 8은 물리적 상호접속부 및 메모리 서브시스템을 갖는 프로세서를 구비한 전자 장치의 일실시예에 대한 블록도이다. 전자 장치(800)는 다양한 장치, 기계, 하드웨어 유닛, 전자 구조물 등을 나타낼 수 있다. 예를 들어, 전자 장치(800)는 셀폰, 스마트폰, PDA, 디지털 데이터 구성기, 개인 컴퓨팅 장치 등일 수 있다. 전자 장치(800)는 컴퓨팅 하드웨어가 동작하는 컴퓨팅 플랫폼을 포함할 수 있다. 컴퓨팅 플랫폼은 전자 장치(800)의 기능을 제공하기 위한, 컴퓨팅 하드웨어 및/또는 오퍼레이팅 시스템, 하드웨어 드라이버, 및/또는 응용을 포함할 수 있다. 일실시예에서, 응용 프로세서(810)는 호스트 플랫폼상의 회로, 프로세서, 서브시스템 등일 수 있다. 일실시예에서, 응용 프로세서(810)는 전자 장치(800)의 컴퓨팅 플랫폼을 나타낼 수 있다. 응용 프로세서(810)는 하나 이상의 하드웨어 구성요소이고/이거나, 범용 프로세서를 포함할 수 있다.
응용 프로세서(810)는 주변 제어기(840)에 대한 물리적 인터페이스(830)에 대한 인터페이스를 제공하는 MSL 인터페이스(821)를 포함할 수 있다. 마찬가지로, 주변 제어기(840)는 물리적 인터페이스(830)에 대한 인터페이스에 대한 MSL 인터페이스(822)를 포함할 수 있다. 예를 들어, MSL 인터페이스(821, 822)는 응용 프로세서(810) 및 주변 제어기(840)로부터 장치들 사이의 물리적 인터페이스(830)로의 액세스를 제공하는 핀, 회로, 버퍼, 라인 드라이버, 또는 다른 하드웨어/패키징을 포함할 수 있다. 물리적 인터페이스(830)는 응용 프로세서(810)와 주변 제어기(840) 사이의 데이터 전송을 위한 높은 처리량의 통신 버스/인터페이스를 나타낼 수 있다.
일실시예에서, 주변 제어기(840)는 전자 장치(800)상의 다양한 주변 장치/서브시스템을 나타낸다. 예를 들어, 주변 제어기(840)는 사용자 인터페이스(예를 들면, LCD(liquid crystal display), 터치스크린, 키보드 또는 등가물 등)의 구성요소를 나타낼 수 있다. 주변 제어기(840)는 주변 제어기(840)의 처리 기능을 제공하기 위한 프로세서(841)를 포함할 수 있다. 일실시예에서, 프로세서(841)는 전자 장치(800)상의 내장형 프로세서일 수 있다.
일실시예에서, 물리적 인터페이스(830)는 MSL 또는 MSL2 표준 사양/정의/프로토콜에 근거하거나 또는 그로부터 도출되는 통신 버스일 수 있다. 채널은 정의되거나, 또는 표준에서의 특정 기능/용도가 할당될 수 있다. 일실시예에서, 예를 들어, 물리적 인터페이스(830)는 표준에 의해 정의/할당된 바와 같이, 멀티캐스트 또는 방송 채널(들) 및 장치-특정 채널(들)을 포함할 수 있다. 멀티캐스트 데이터는 멀티캐스트 채널상에서 발생되는 메시지/전송에 대응한다. 마찬가지로, 방송 데이터 또는 방송 전송은 방송 채널상의 메시지/전송에 대응할 수 있으며, 장치-특정 데이터/전송은 장치-특정(또는 비방송, 논멀티캐스트) 채널상의 메시지 전송을 의미할 수 있다.
방송 채널은, 멀티캐스트 채널이 메시지를 다수의 수신자에게 동시에 전송하도록 정의될 수 있다는 점에서, 멀티캐스트 채널 유형들의 서브세트일 수 있다. 방송 채널은 메시지를 모든 잠재적인 수신자에게, 또는 물리적 인터페이스(830)상의 모든 장치에게 동시에 전송할 수 있다. 장치-특정 채널은 메시지를 단일의 특정 수신자에게 전송할 수 있다. 물리적 인터페이스(830)상의 모든 장치들 중에서, 장치-특정 메시지가 전송되는 장치만이 장치-특정 채널을 활성화시에 지시된 장치-특정 식별자/어드레스에 대응하는 장치이다.
일실시예에서, 전술한 바와 같이, 방송 메시지는 물리적 인터페이스(830)상의 장치-특정 채널상에서 만들어질 수 있다. 즉, 방송 ID를 이용하여 물리적 인터페이스(830)상의 장치-특정 채널 및 전송된 메시지를 기동/활성화할 수 있다. 유사하게, 장치-특정 메시지는, 예를 들면, 장치-특정 ID 및 전송된 메시지를 갖는 방송 채널을 기동/활성화함으로써, 물리적 인터페이스(830)상의 방송 채널상에서 전송될 수 있다.
일실시예에서, 물리적 인터페이스(830)는 하나 이상의 제어 신호/라인을 포함할 수 있다. 일실시예에서, 하나 이상의 제어 신호는, 방송 및 장치-특정 채널이 동작되는 데이터 버스의 소유권을 갖지 않는 장치에 의해 활성화/제어될 수 있다. 대기 또는 동등한 제어 신호와 같은 흐름 제어 신호 라인이 제공되어, 송신 장치에게 현재 송신 메시지를 수신할 수 없음을 나타내도록 하는, 수신 장치를 위한 메카니즘을 제공할 수 있다. 예를 들어, 신호는 버퍼 오버플로우가 발생될 때 어서트될 수 있다.
일실시예에서, 제어 신호를 이용하여 승인 메카니즘을 구현할 수 있다. 예를 들어, 전술한 바와 같은 방송 채널상의 장치-특정 어드레스를 이용함으로써, 송신 장치는 메시지가 수신되었는지, 또는 메시지가 재송신되어야 하는지를 나타내도록 수신 장치에 대해 시간 주기를 제공할 수 있다. 송신 장치가 (예를 들면, 장치 ID 와 채널 유형이 미스매칭되는) 변형된 전송을 갖는 (예를 들면, 표준 프로토콜에 따른) 정상 데이터 전송을 따른다면, 이러한 변형된 전송은 수신기가 승인을 나타내기 위해 제어 신호를 활성화해야 하는 장치 ID에 의해 나타내진 수신기에서 디코딩될 수 있다. 특정 승인 메카니즘은 개별적인 설계에 의존할 수 있으며, 한 가지의 예는 제어 신호를 어서트하여, 메시지가 재송신되어야 함을 의미하는 부정적인 승인을 나타내도록 하는 것을 포함할 수 있다.
일실시예에서, 전자 장치는 메모리 서브시스템(850)을 포함할 수 있다. 메모리 서브시스템(850)은 메모리 제어기, 논리, 하나 이상의 메모리 장치 등을 포함할 수 있다. 일실시예에서, 메모리 서브시스템(850)은, 전자 장치(800)에 대한 전력이 디스레이블링된 때에 조차도 그의 정보/값을 유지하는 메모리를 나타내는 비휘발성 저장부(851)를 포함할 수 있다. 예를 들어, 비휘발성 저장부(851)는 ROM, 플래시, PROM(Programmable ROM), EPROM(Electronic PROM)을 포함할 수 있다.
본 명세서에서 기술된 내용 외에도, 본 발명의 영역을 벗어나지 않고서, 본 발명의 실시예에 대한 다양한 변형이 가능할 수 있다. 따라서, 본 명세서에서의 예시 및 예는 예시적인 것으로서 간주되어야 하며, 본 발명을 제한하기 위한 것이 아니다. 본 발명의 영역은 이하의 특허 청구 범위를 참조하는 것에 의해서만 판단되어야 한다.

Claims (30)

  1. 데이터 전송을 승인하는 방법에 있어서,
    통신 인터페이스를 통해 메시지를 송신하는 단계―상기 통신 인터페이스는 표준 통신 인터페이스 사양에 할당된 방송 채널 및 장치-특정 채널을 갖고, 상기 사양에 정의된 상기 방송 채널은 다수의 장치에 대한 방송 식별자를 갖는 데이터 전송을 위한 것이며, 상기 사양에 정의된 상기 장치-특정 채널은 특정 장치에 대한 데이터 전송을 위한 것이고, 상기 메시지는 장치-특정 식별자를 갖는 상기 장치-특정 채널상에서 송신됨―와,
    상기 통신 인터페이스를 통해 상기 방송 채널상에 상기 장치-특정 식별자를 갖는 상이한 메시지를 후속하여 송신하는 단계와,
    제어 신호의 상태를 결정하는 단계와,
    상기 제어 신호의 상태에 적어도 부분적으로 근거하여, 상기 메시지를 재송신할지의 여부를 결정하는 단계를 포함하는
    데이터 전송 승인 방법.
  2. 제 1 항에 있어서,
    상기 통신 인터페이스 사양 표준은 MSL2(Mobile Scalable Link 2) 표준을 포함하는 데이터 전송 승인 방법.
  3. 제 2 항에 있어서,
    상기 방송 채널은 채널 8, 9 또는 15 중 하나를 포함하는 데이터 전송 승인 방법.
  4. 제 3 항에 있어서,
    상기 방송 채널은 채널 8을 포함하는 데이터 전송 승인 방법.
  5. 제 1 항에 있어서,
    상기 제어 신호는 상기 통신 인터페이스의 흐름 제어 라인을 포함하는 데이터 전송 승인 방법.
  6. 제 5 항에 있어서,
    상기 흐름 제어 라인은 대기 신호 라인을 포함하는 데이터 전송 승인 방법.
  7. 제 1 항에 있어서,
    상기 메시지는, 상기 제어 라인의 상태가 어서트(assert)되는 경우, 재송신되는 데이터 전송 승인 방법.
  8. 제 7 항에 있어서,
    어서트되는 상기 제어 라인은 상기 상태가 테스트될 때 하이 논리 레벨에 있는 제어 라인을 포함하는 데이터 전송 승인 방법.
  9. 기계가 동작들을 수행하도록 하는 인스트럭션을 제공하는 콘텐츠를 갖는 기계 액세스가능 매체를 포함하는 제조 물품에 있어서,
    상기 동작들은,
    통신 버스를 통해 장치-특정 메시지를 송신―상기 통신 버스는 통신 인터페이스 표준 사양에 정의된 방송 채널 및 비방송 채널을 갖고, 상기 사양에 정의된 상기 방송 채널은 방송 채널 번호 및 방송 어드레스를 가지며, 상기 사양에 정의된 상기 비방송 채널은 비방송 채널 번호 및 장치-특정 어드레스를 갖고, 상기 장치-특정 메시지는 장치-특정 어드레스를 갖는 상기 비방송 채널상에서 송신됨―하고,
    상기 방송 채널상에 상기 장치-특정 어드레스를 갖는 상이한 장치-특정 메시지를 후속하여 송신하고,
    측대역 신호의 상태를 결정하고,
    상기 제어 신호의 상태에 적어도 부분적으로 근거하여, 상기 신호를 재송신할지의 여부를 결정하는 것을 포함하는
    제조 물품.
  10. 제 9 항에 있어서,
    상기 통신 인터페이스 사양 표준은 MSL2 표준을 포함하는 제조 물품.
  11. 제 9 항에 있어서,
    상기 측대역 신호는 상기 통신 버스의 제어 라인을 포함하는 제조 물품.
  12. 제 11 항에 있어서,
    상기 제어 라인은 대기 신호 라인을 포함하는 제조 물품.
  13. 데이터 전송을 승인하는 방법에 있어서,
    통신 인터페이스를 통해 메시지를 수신하는 단계―상기 통신 인터페이스는 표준 통신 인터페이스 사양에 할당된 방송 채널 및 장치-특정 채널을 갖고, 상기 사양에 정의된 상기 방송 채널은 다수의 장치에 대한 방송 식별자를 갖는 데이터 전송을 위한 것이며, 상기 사양에 정의된 상기 장치-특정 채널은 특정 장치에 대한 데이터 전송을 위한 것이고, 상기 메시지는 장치-특정 식별자를 갖는 상기 장치-특정 채널상에서 수신됨―와,
    상기 통신 인터페이스를 통해 상기 방송 채널상에 상기 장치-특정 식별자를 갖는 상이한 메시지를 후속하여 수신하는 단계와,
    제어 신호의 상태를 변경하여, 상기 송신 장치에게 상기 수신된 메시지의 승인을 나타내는 단계를 포함하는
    데이터 전송 승인 방법.
  14. 제 13 항에 있어서,
    상기 통신 인터페이스 사양 표준은 MSL2 표준을 포함하는 데이터 전송 승인 방법.
  15. 제 14 항에 있어서,
    상기 방송 채널은 채널 8, 9 또는 15 중 하나를 포함하는 데이터 전송 승인 방법.
  16. 제 13 항에 있어서,
    상기 제어 신호는 상기 통신 인터페이스의 측대역 제어 라인을 포함하는 데이터 전송 승인 방법.
  17. 제 16 항에 있어서,
    상기 제어 라인은 대기 신호 라인을 포함하는 데이터 전송 승인 방법.
  18. 제 13 항에 있어서,
    상기 제어 신호의 상태는 디어서트(de-assert)로부터 어서트로 변경되어, 상기 메시지가 적절하게 수신되지 않았음을 나타내는 데이터 전송 승인 방법.
  19. 제 18 항에 있어서,
    상기 제어 라인의 상태는 로우 논리 레벨로부터 하이 논리 레벨로 변경되어, 상기 상태를 디어서트로부터 어서트로 변경하는 데이터 전송 승인 방법.
  20. 기계가 동작들을 수행하도록 하는 인스트럭션을 제공하는 콘텐츠를 갖는 기계 액세스가능 매체를 포함하는 제조 물품에 있어서,
    상기 동작들은,
    통신 버스를 통해 장치-특정 메시지를 수신―상기 통신 버스는 통신 인터페이스 표준 사양에 정의된 방송 채널 및 비방송 채널을 갖고, 상기 사양에 정의된 상기 방송 채널은 방송 채널 번호 및 방송 어드레스를 가지며, 상기 사양에 정의된 상기 비방송 채널은 비방송 채널 번호 및 장치-특정 어드레스를 갖고, 상기 장치-특정 메시지는 장치-특정 어드레스를 갖는 상기 비방송 채널상에서 수신됨―하고,
    상기 방송 채널상에 상기 장치-특정 어드레스를 갖는 상이한 장치-특정 메시지를 후속하여 수신하고,
    제어 신호의 상태를 변경하여, 상기 송신 장치에게 상기 수신된 메시지의 승인을 나타내는 것을 포함하는
    제조 물품.
  21. 제 20 항에 있어서,
    상기 통신 인터페이스 사양 표준은 MSL2 표준을 포함하는 제조 물품.
  22. 제 20 항에 있어서,
    측대역 신호는 상기 통신 버스의 제어 라인을 포함하는 제조 물품.
  23. 제 22 항에 있어서,
    상기 제어 라인은 대기 신호 라인을 포함하는 제조 물품.
  24. 프로세서간 데이터 전송을 승인하는 장치에 있어서,
    정의된 방송 채널 및 정의된 장치-특정 채널을 갖는 데이터 라인―표준 프로토콜 정의에 정의된 상기 방송 채널은 방송 채널 번호 및 방송 어드레스로 활성화되고, 상기 프로토콜 정의에 정의된 상기 장치-특정 채널은 장치-특정 채널 번호 및 장치-특정 어드레스로 활성화되며, 상기 데이터 라인은 데이터 메시지를 수신하기 위해 장치의 상기 장치-특정 채널 번호 및 상기 장치-특정 어드레스로 활성화되는 상기 장치-특정 채널에 의해 상기 데이터 라인상에서 데이터 메시지가 전송되도록 하고, 상기 수신 장치의 상기 방송 채널 번호 및 상기 장치-특정 어드레스로 활성화되는 상기 방송 채널에 의해 상기 데이터 라인상에서 후속하는 승인 메시지가 전송되도록 함―과,
    상기 승인 메시지에 응답하여 상기 수신 장치에 의해 어서트되어, 상기 수신 장치가 상기 데이터 메시지를 정확하게 수신했는지 여부를 나타내도록 하는 측대역 신호 라인을 포함하는
    데이터 전송 승인 장치.
  25. 제 24 항에 있어서,
    상기 승인 메시지는 상기 방송 채널 번호, 상기 장치-특정 어드레스, 및 2 바이트의 데이터를 포함하는 데이터 전송 승인 장치.
  26. 제 25 항에 있어서,
    상기 2 니블의 데이터는 돈 캐어(Don't Care) 데이터 바이트를 포함하는 데이터 전송 승인 장치.
  27. 제 24 항에 있어서,
    상기 신호 라인은 어서트되어, 상기 수신 장치가 상기 데이터 메시지를 정확하게 수신하지 않았음을 나타내는 데이터 전송 승인 장치.
  28. 마스터 장치와,
    슬레이브 장치와,
    상기 마스터 장치와 상기 슬레이브 장치를 상호접속하는 통신 버스―상기 마스터 장치는 상기 통신 버스를 제어하고, 상기 통신 버스는 데이터 라인 및 제어 신호 라인을 포함하며, 프로세서간 프로토콜 표준에 정의된 상기 데이터 라인은 방송 채널상에서 방송 데이터만을 전송하고, 상기 마스터는 변형된 데이터 라인 정의에 따라 상기 방송 채널상에서 상기 비방송 데이터를 상기 슬레이브로 송신하며, 상기 변형된 데이터 라인 정의는 상기 방송 채널상에서의 비방송 데이터 전송을 허용하고, 상기 비방송 데이터 전송은 승인 메시지를 상기 마스터 장치로부터 상기 슬레이브 장치로 전송하며, 상기 제어 신호 라인은 상기 슬레이브 장치로부터 상기 마스터 장치로의 상기 승인을 나타냄―와,
    상기 마스터 장치에 연결되어, 상기 마스터 장치에 의해 실행될 코드 시퀀스를 저장하는 비휘발성 저장부를 포함하는 시스템.
  29. 제 28 항에 있어서,
    상기 변형된 데이터 라인 정의는 상기 방송 채널상의 상기 승인 메시지를, 상기 방송 채널 번호, 및 방송 식별자가 아닌 장치-특정 식별자를 갖는 상기 방송 채널을 활성화하는 것으로서 정의하는 것을 포함하고, 상기 제어 신호 라인은 상기 승인 메시지에 응답하여 어서트되어, 부정적인 승인을 나타내는 시스템.
  30. 제 29 항에 있어서,
    상기 프로세서간 프로토콜 표준은 MSL2 표준을 포함하고, 상기 방송 채널은 채널 8, 9 또는 15 중 하나를 포함하며, 상기 제어 신호 라인은 흐름 제어 대기 신호 라인을 포함하는 시스템.
KR1020077007086A 2004-09-29 2005-09-01 데이터 전송 승인 방법, 제조 물품 및 시스템 KR100924989B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/955,984 US7209989B2 (en) 2004-09-29 2004-09-29 Transfer acknowledgement mechanism for an MSL architecture
US10/955,984 2004-09-29

Publications (2)

Publication Number Publication Date
KR20070067692A true KR20070067692A (ko) 2007-06-28
KR100924989B1 KR100924989B1 (ko) 2009-11-04

Family

ID=35735220

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077007086A KR100924989B1 (ko) 2004-09-29 2005-09-01 데이터 전송 승인 방법, 제조 물품 및 시스템

Country Status (6)

Country Link
US (1) US7209989B2 (ko)
JP (1) JP4644253B2 (ko)
KR (1) KR100924989B1 (ko)
CN (1) CN100514319C (ko)
TW (1) TWI285321B (ko)
WO (1) WO2006039056A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555584B2 (en) * 2004-09-29 2009-06-30 Intel Corporation Providing additional channels for an MSL architecture
FR2884629B1 (fr) * 2005-04-15 2007-06-22 Atmel Corp Dispositif d'amelioration de la bande passante pour des circuits munis de controleurs memoires multiples
JP5279170B2 (ja) 2006-03-28 2013-09-04 セミコンダクター・コンポーネンツ・インダストリーズ・リミテッド・ライアビリティ・カンパニー マスタ通信回路、スレーブ通信回路、及びデータ通信方法
EP2568392A4 (en) 2011-06-24 2013-05-22 Huawei Tech Co Ltd COMPUTERS SUBSYSTEM AND COMPUTER SYSTEM
US9385962B2 (en) * 2013-12-20 2016-07-05 Intel Corporation Method and system for flexible credit exchange within high performance fabrics
DE102017008186B4 (de) * 2017-08-31 2022-12-15 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Master eines Bussystems

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991003786A1 (en) 1989-09-08 1991-03-21 Auspex Systems, Inc. Enhanced vmebus protocol utilizing pseudosynchronous handshaking and block mode data transfer
JPH03114334A (ja) * 1989-09-28 1991-05-15 Nippon Telegr & Teleph Corp <Ntt> ウィンドウフロー制御方式
JPH10308764A (ja) * 1997-03-06 1998-11-17 Toshiba Corp ネットワーク間接続装置および通信装置および通信方法
JP3896625B2 (ja) 1997-03-07 2007-03-22 ソニー株式会社 データ送信装置、データ受信装置、データ送信方法およびデータ受信方法
US6700875B1 (en) * 1998-03-31 2004-03-02 Motorola, Inc. System, device, and method for selecting a channel in a multichannel communication network
FI20001975A (fi) * 2000-09-07 2002-03-08 Nokia Corp Ohjaustietojen signalointimenetelmä
US6725311B1 (en) 2000-09-14 2004-04-20 Microsoft Corporation Method and apparatus for providing a connection-oriented network over a serial bus
US6647447B1 (en) 2000-12-29 2003-11-11 Sony Corporation Allocating isochronous channel numbers to devices on an IEEE-1394 bus
KR100830448B1 (ko) * 2001-11-08 2008-05-20 엘지전자 주식회사 통신 시스템에서 패킷 데이터 제어 정보의 전송 방법과전송 체인
US6795877B2 (en) * 2001-11-29 2004-09-21 Intel Corporation Configurable serial bus to couple baseband and application processors
US6839336B2 (en) * 2002-04-29 2005-01-04 Qualcomm, Incorporated Acknowledging broadcast transmissions
KR100606008B1 (ko) * 2003-01-04 2006-07-26 삼성전자주식회사 부호 분할 다중 접속 통신 시스템에서 역방향 데이터재전송 요청 송수신 장치 및 방법
US6842133B2 (en) * 2003-04-30 2005-01-11 Intel Corporation Strobe through differential signaling
US20050177712A1 (en) * 2003-12-19 2005-08-11 Zafer Kadi Directly writing data to a memory
US7099985B2 (en) * 2003-12-23 2006-08-29 Intel Corporation Using a processor to program a semiconductor memory
US8611283B2 (en) * 2004-01-28 2013-12-17 Qualcomm Incorporated Method and apparatus of using a single channel to provide acknowledgement and assignment messages
US20050188173A1 (en) * 2004-02-24 2005-08-25 Robert Hasbun Physical domain separation
US7734797B2 (en) * 2004-03-29 2010-06-08 Marvell International Ltd. Inter-processor communication link with manageability port
US7475219B2 (en) * 2004-08-27 2009-01-06 Marvell International Ltd. Serially indexing a cache memory
US7555584B2 (en) * 2004-09-29 2009-06-30 Intel Corporation Providing additional channels for an MSL architecture

Also Published As

Publication number Publication date
WO2006039056A1 (en) 2006-04-13
KR100924989B1 (ko) 2009-11-04
JP4644253B2 (ja) 2011-03-02
US20060075145A1 (en) 2006-04-06
JP2008513905A (ja) 2008-05-01
TWI285321B (en) 2007-08-11
CN100514319C (zh) 2009-07-15
US7209989B2 (en) 2007-04-24
CN101027658A (zh) 2007-08-29
TW200627175A (en) 2006-08-01

Similar Documents

Publication Publication Date Title
US20210026796A1 (en) I3c point to point
US7328399B2 (en) Synchronous serial data communication bus
KR100924989B1 (ko) 데이터 전송 승인 방법, 제조 물품 및 시스템
US20100329285A1 (en) Mechanism for clock synchronization
US20020108011A1 (en) Dual interface serial bus
US20150120975A1 (en) Camera control slave devices with multiple slave device identifiers
KR20090108710A (ko) Pci 고속 패킷 다이제스트 수정 디바이스, 시스템 및 방법
JP2008539497A (ja) 集積回路間におけるスレーブ装置の装置識別コーディング
US20080059683A1 (en) Method and Apparatus for Conditional Broadcast of Barrier Operations
WO2019165804A1 (zh) 驱动控制方法、组件及显示装置
US10684981B2 (en) Fast termination of multilane single data rate transactions
KR100922713B1 (ko) 이동 가변성 링크(msl) 구조를 위한 추가 채널 제공 방법 및 장치
US20210173808A1 (en) Early parity error detection on an i3c bus
US20080181242A1 (en) Communications gateway between two entities
WO2010103987A1 (ja) データ伝送システムおよびそのデータ読出し方法
TW201904236A (zh) 串列匯流排中止之際的糾錯計算
CN117222994A (zh) 使用共享时钟和专用数据线的i2c总线架构
US10572439B1 (en) I3C read from long latency devices
US20050143843A1 (en) Command pacing
US11360916B2 (en) Group slave identifier time-multiplexed acknowledgment for system power management interface
CN101390066B (zh) 在地址信道上的辅助写入
US7584380B2 (en) Method and system for debugging flow control based designs
WO2024092188A1 (en) Firmware broadcast in a multi-chip module
MX7cK Synchronous I2C Communications with the

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20120928

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee