KR101821016B1 - 제어 시스템의 구성요소에 식별자를 할당하는 장치, 시스템 및 방법 - Google Patents

제어 시스템의 구성요소에 식별자를 할당하는 장치, 시스템 및 방법 Download PDF

Info

Publication number
KR101821016B1
KR101821016B1 KR1020150156892A KR20150156892A KR101821016B1 KR 101821016 B1 KR101821016 B1 KR 101821016B1 KR 1020150156892 A KR1020150156892 A KR 1020150156892A KR 20150156892 A KR20150156892 A KR 20150156892A KR 101821016 B1 KR101821016 B1 KR 101821016B1
Authority
KR
South Korea
Prior art keywords
slave
identifiers
components
pool
mode
Prior art date
Application number
KR1020150156892A
Other languages
English (en)
Other versions
KR20160072013A (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 KR20160072013A publication Critical patent/KR20160072013A/ko
Application granted granted Critical
Publication of KR101821016B1 publication Critical patent/KR101821016B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5061Pools of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • H04B1/403Circuits using the same oscillator for generating both the transmitter frequency and the receiver local oscillator frequency
    • H04B1/406Circuits using the same oscillator for generating both the transmitter frequency and the receiver local oscillator frequency with more than one transmission mode, e.g. analog and digital modes
    • H04L61/2061
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • 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
    • H04L12/40013Details regarding a bus controller
    • 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/40052High-speed IEEE 1394 serial bus
    • H04L12/40123Interconnection of computers and peripherals
    • 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
    • H04L29/10
    • H04L61/2038
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5038Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/26Network addressing or numbering for mobility support
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25208Control message, address and command portion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0052Assignment of addresses or identifiers to the modules of a bus system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Automation & Control Theory (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer Hardware Design (AREA)
  • Telephone Function (AREA)
  • Small-Scale Networks (AREA)

Abstract

제어 인터페이스를 통해 액세스되는 구성요소들의 주소 지정을 가능하게 하는 기법들 및 메커니즘들이 개시된다. 일 실시예에서, 복수의 식별자들이 제1 풀 및 제2 풀로 논리적으로 분할된다. 구성요소들이 어떤 기능과 관련하여 활성인 동안 이러한 구성요소들의 주소 지정을 가능하게 하기 위해 제1 풀이 할당될 수 있다. 구성요소들이 어떤 기능과 관련하여 비활성인 동안 이러한 구성요소들의 주소 지정을 가능하게 하기 위해 제2 풀이 할당될 수 있다. 다른 실시예에서, 제1 풀의 상이한 각자의 식별자들이 복수의 구성요소들의 하나 이상의 제1 구성요소들 각각에 할당되고, 제2 풀의 각자의 식별자가 복수의 구성요소들의 하나 이상의 제2 구성요소들 각각에 할당된다. 동일한 주소 기본값을 가지는 하나 이상의 제2 구성요소들 중 임의의 2개는 제2 풀의 상이한 각자의 식별자들을 할당받는다.

Description

제어 시스템의 구성요소에 식별자를 할당하는 장치, 시스템 및 방법{APPARATUS, SYSTEM AND METHOD FOR ALLOCATING IDENTIFIERS TO COMPONENTS OF A CONTROL SYSTEM}
본 발명은 일반적으로 회로 제어 메커니즘들에 관한 것으로서, 보다 상세하게는, 제어 인터페이스를 통해 액세스되는 구성요소들에 식별자들을 할당하는 기법들(이것으로만 제한되지 않음)에 관한 것이다.
MIPI® Alliance에 의해 발표된 다양한 무선 주파수 프런트 엔드(radio frequency front-end)(RFFE) 인터페이스 표준들 및 시스템 전력 관리 인터페이스(system power management interface)(SPMI) 표준들은 플랫폼의 상이한 각자의 구성요소들을 다양한 방식으로 주소 지정하기 위해 USID(unique slave identifier)들을 제공하는 메커니즘들의 일부 예들이다. 전형적으로, 이러한 구성요소들은 구성 및/또는 제어(본 명세서에서 "구성/제어"라고 함) 버스에 결합되고, 여기서 구성/제어 버스에 역시 결합된 호스트 로직은 구성요소들을 제어하는 마스터로서 기능한다.
종래의 플랫폼의 파워업(power up) 또는 리셋(reset) 동안, 이러한 슬레이브 구성요소(slave component)들 각각은 구성요소의 공급업체, 제조업체 등에 의해 규정되는 기본 식별자(default identifier)와 연관되어 있다. USID들은 이어서 구성요소들의 주소 지정을 용이하게 하기 위해 다양한 방식으로 할당되고, 여기서 이러한 주소 지정은 구성요소들의 기본 식별자들을 사용하지 않는다. 이렇게 하는 하나의 이유는 동일한 제조업체(또는 공급업체 등)로부터의 2개의 구성요소가 동일한 기본 식별자를 가질 가능성을 고려하기 위한 것이다.
MIPI® RFFE 표준들 및 MIPI® SPMI 표준들의 특정의 경우에, USID들은 어떤 고정된(제한된) 크기의 값들 - 예컨대, 4 비트 값들 - 로서 규정되고, 여기서 하나의 이러한 4 비트 값(0b0000 등)은 브로드캐스트 식별자로서 예비되어 있다. 이것은 다양한 MIPI® 호환 제어 인터페이스들에 따라 사용될 이용 가능한 USID의 총수를 15로 제한한다. 따라서, 주어진 사용 사례에 대해, MIPI® 호환 제어 메커니즘들을 구현하는 시스템은 그 사용 사례 동안 동일한 제어 버스에 의해 주소 지정될 수 있는 슬레이브 구성요소들을 15개 이하로 제한한다.
시스템은 제한된 USID 이용 가능성의 효과들을 하나 이상의 부가 구성/제어 버스들을 구현하는 것에 의해 완화시킬 수 있다. 그렇지만, 다수의 구성/제어 버스들의 사용은 시스템 복잡도 및 비용을 증가시키고, 자원 이용의 효율성을 저하시킨다. 하나의 부가 구성/제어 버스는 버스 마스터 디바이스 상에 적어도 3개의 부가 접점들을 필요로 할 수 있다. 게다가, 버스 마스터는 부가 주소 지정 요소(addressing element)로서 다수의 버스 식별자들을 채택해야만 한다. 모바일 디바이스들에 대한 사용 사례들의 다양성 및 복잡성이 계속하여 증가함에 따라, 이러한 사용 사례들에 대응할 효율적인 메커니즘들에 대한 요구가 증가하고 있다.
본 발명의 다양한 실시예들이, 첨부 도면의 도면들에, 제한이 아닌 예로서 예시되어 있다.
도 1은 일 실시예에 따른, 제어 인터페이스를 통해 액세스될 구성요소들을 포함하는 시스템의 요소들을 나타낸 상위 레벨 기능 블록도.
도 2는 일 실시예에 따른, 다수의 풀(pool)들의 각자의 풀에 식별자들 각각을 할당하는 방법의 요소들을 나타낸 흐름도.
도 3은 일 실시예에 따른, 제어 인터페이스를 통해 액세스될 구성요소들에 식별자들을 각각 할당하는 방법의 요소들을 나타낸 흐름도.
도 4는 일 실시예에 따른, 제어 인터페이스를 통해 구성요소들을 구성하는 디바이스의 요소들을 나타낸 상위 레벨 기능 블록도.
도 5는 일 실시예에 따른, 제어 인터페이스를 통해 구성요소들을 구성하는 컴퓨팅 시스템의 요소들을 나타낸 블록도.
도 6은 일 실시예에 따른, 제어 인터페이스를 통해 구성요소들을 구성하는 모바일 디바이스의 요소들을 나타낸 블록도.
본 명세서에서 논의된 실시예들은 시스템의 구성요소들 각각을 미리 결정되어 고정된 복수의 식별자들의 각자의 식별자로 주소 지정하는 것을 용이하게 하는 기법들 및/또는 메커니즘들을 다양한 방식으로 제공한다. 다수의 식별자들 - 예컨대, RFFE 표준, SPMI 표준 또는 다른 표준에 의해 규정된 USID들 - 이 상이한 때에 시스템의 다수의 구성요소들의 상이한 구성요소들에 할당될 수 있다. 일 실시예에서, 할당될 수 있는 다수의 식별자들의 총수는 다수의 구성요소들의 총수 미만일 수 있다.
다수의 식별자들 각각은 제1 풀 및 제2 풀의 각자의 풀에 다양한 방식으로 할당될 수 있다. 이어서 식별자들 각각을 각자의 구성요소에 할당하는 것은 제1 풀 및 제2 풀 중 하나만으로부터의 식별자를 선택하는 것을 포함할 수 있다. 시스템의 주어진 제1 동작 모드에 대해, 제1 동작 모드 동안 활성(active)이어야 하는 슬레이브 구성요소들 각각은 제1 풀로부터의 상이한 각자의 식별자를 할당받을 수 있다. 이와 달리, 제1 동작 모드 동안 비활성(passive)이어야 하는 슬레이브 구성요소들 각각은 제2 풀로부터의 각자의 식별자를 할당받을 수 있다.
시스템은 그 후에 제1 동작 모드 이외의 제2 동작 모드를 위해 - 예컨대, 제1 통신 유형을 지원하는 것으로부터 제2 통신 유형을 지원하는 것으로 전환하기 위해 - 재구성될 수 있다. 이러한 재구성을 위해, 제2 동작 모드 동안 활성이어야 하는 슬레이브 구성요소들 각각은 제1 풀로부터의 상이한 각자의 식별자를 할당받을 수 있다. 이와 달리, 제2 동작 모드 동안 비활성이어야 하는 슬레이브 구성요소들 각각은 제2 풀로부터의 각자의 식별자를 할당받을 수 있다. 일 실시예에서, 슬레이브 구성요소들에 식별자들을 할당하는 것이 제1 동작 모드와 제2 동작 모드 간에 상이하다.
이러한 풀 할당 및/또는 식별자 할당 기능은, 일 실시예에 따르면, 제어 인터페이스 표준의 종래의 구성요소 선택 및 주소 할당 메커니즘들에 대한 확장으로서 구현될 수 있다. 예를 들어, 식별자들을 풀들로 다양한 방식으로 그룹화하는 것 및/또는 구성요소들에 할당하기 위해 이러한 풀들로부터 식별자들을 선택하는 것을 지원하기 위해 상태 기계(state machine), 알고리즘 또는 다른 제어 로직이 추가(또는 수정)될 수 있다.
본 명세서에서 논의된 실시예들은 단지 하나의 무선 기술에 따라 동작하는 대부분의 종래의 모바일 디바이스 플랫폼들에 의해서는 야기되지 않은 다양한 문제들을 해결한다. 전형적으로, 주어진 무선 기술[예컨대, 롱 텀 에볼루션(Long-Term Evolution) 또는 "LTE"]을 지원하는 모바일 디바이스들의 공급업체들은 RFFE 슬레이브 구성요소들의 총수를 이러한 디바이스들에서 사용되는 프런트 엔드 제어/구성 메커니즘들에 의해 부과되는 한도(예컨대, 15)보다 훨씬 낮게 유지한다. 그렇지만, 활성 프런트 엔드 구성요소들의 상이한 각자의 조합들을 필요로 하는 다수의 통신 기술들을 지원하는 모바일 디바이스를 가질 가능성을 고려할 때 이 다양한 문제들이 야기되고, 이 경우 특정의 구성/제어 버스를 통해 주소 지정 가능한 구성요소들의 총수는 할당될 수 있는 식별자들의 총수 초과이다.
일 실시예에서, 시스템의 구성요소들 각각은 식별자의 할당 이전에 그리고/또는 상이한 식별자 할당들 사이에서 구성요소를 식별하기 위해 사용되는 각자의 기본 주소 식별자 정보(default address identifier information)[본 명세서에서 "주소 기본값(address default)"이라고 지칭됨]와 연관된다. 주소 기본값은, 예를 들어, 제조업체 식별자(mID), 제품 식별자(pID) 또는 이들의 조합을 포함할 수 있다. 주소 기본값은 상이한 때에 상이한 구성요소들에 다양한 방식으로 할당 및 재할당될 수 있는 다른 식별자 - 본 명세서에서 USID라고 지칭됨 - 와 구별되어야 한다. 구성요소의 주소 기본값 및 동일한 구성요소에 현재 할당된 USID는 그 구성요소에 할당될 특정의 다음 USID를 결정하는 데 사용될 수 있다. 실시예들은 동일한 주소 기본값(예컨대, 동일한 mID/pID 쌍)을 가지는 구성요소들이 동시에 동일한 대안의 주소 식별자를 할당받는 것을 다양한 방식으로 방지한다. 이러한 구성요소들 각각이 시스템의 동작 모드 동안 비활성이어야 할 때에도 이 제약조건이 부과될 수 있다. 그 결과, 구성요소들을 그 각자의 비활성 구성으로부터 해제시키기 위해 시스템 리셋(RESET)이 필요하지 않다.
특정 실시예들이 본 명세서에서 MIPI® RFFE 규격 및 RFFE 구성요소들에 할당될 수 있는 15개의 USID들의 연관된 최대 수와 관련하여 논의되고 있다. 그렇지만, 이러한 논의는, 그에 부가하여 또는 다른 대안으로서, 구성요소들을 주소 지정하는 데 이용 가능한 어떤 최대 수의 식별자들을 규정하는 각종의 다른 제어 인터페이스 규격 중 임의의 것에 적용하는 것으로 확장될 수 있다.
도 1은 RFFE(또는 다른 시스템)의 상이한 모드에 대한 주소 지정 방식들 각각을 다양한 방식으로 제공하기 위한 일 실시예에 따른 시스템(100)의 하나의 예를 나타낸 것이다. 시스템(100)은 핸드헬드 디바이스(예컨대, 스마트폰, 태블릿, 노트북 등), 랩톱 컴퓨터, 및/또는 이와 유사한 것(이들로 제한되지 않음)을 비롯한 각종의 무선 지원 플랫폼(wireless-capable platform)들 중 임의의 것에 대한 RFFE 구성 및 제어 메커니즘들을 제공할 수 있다. 이러한 플랫폼의 RFFE는 플랫폼과 각종의 셀룰러 및/또는 다른 무선 네트워크들 중 임의의 것 간의 통신을 가능하게 할 수 있다.
일 실시예에서, 시스템(100)은 버스(130)를 통해 RFFE(105)의 복수의 구성요소들에 결합된 관리자(110)를 포함한다. 다른 실시예에서, 관리자(110)는 RFFE(105)의 일부이다. 관리자(110)는 RFFE(105)의 다양한 모드들 중 임의의 것의 구성 및/또는 재구성을 용이하게 하는 로직(예컨대, 하드웨어, 펌웨어 및/또는 실행 중인 소프트웨어)을 포함하고, 여기서 이러한 구성/재구성은 USID들 각각을 복수의 RFFE 구성요소들의 각자의 구성요소에 할당하는 것을 포함한다. 간략함을 위해, "구성요소"는 (달리 언급되지 않는 한) 본 명세서에서 이러한 RFFE 구성요소를 지칭하는 데도 사용된다.
RFFE(105)의 구성요소는 그 구성요소에 대한 주소 기본값으로서 역할하는 각자의 초기 식별자(initial identifier)(iID)에 대응할 수 있다. iID는 시스템(100)의 파워업 및/또는 리셋 동안 구성요소의 주소 식별자로서 규정될 수 있다. 구성요소의 제조업체는 구성요소의 iID를 규정할 수 있다. USID (재)프로그래밍 절차들 - 예컨대, MIPI® Alliance RFFE 규격들에 다양한 방식으로 규정되어 있음 - 은 관리자(110)와 같은 버스 마스터가 구성요소의 iID에 대한 대안으로서 USID를 버스 슬레이브 구성요소에 할당할 수 있게 한다. USID는 iID를 대체하고, 디바이스가 리셋되거나 USID 재프로그래밍 절차가 개시될 때까지 유효하다. 주어진 모드 동안, RFFE(105)의 구성요소들 각각은 관리자(110)가 그 모드에 대해 그 구성요소에 할당한 각자의 USID에 의해 주소 지정될 수 있다. RFFE(105)를 하나의 모드로부터 다른 모드로 전환시키는 것은 관리자(110)가 주어진 USID를 하나의 구성요소로부터 어떤 다른 구성요소에 재할당하는 것을 포함할 수 있다.
일부 또는 전부의 이러한 모드들 각각은 상이한 각자의 통신 유형을 지원할 수 있다. 제한이 아닌 예시로서, 하나 이상의 모드들은 ITU(International Telecommunication Union)의 IMT-2000(International Mobile Telecommunications-2000) 규격에 부합하는 3G(third generation) 통신을 다양한 방식으로 지원할 수 있다. 대안적으로 또는 그에 부가하여, 하나 이상의 모드들은, 예를 들어, IEEE(Institute of Electrical and Electronics Engineers)에 의해 작성된 IEEE 802.16 계열의 무선 광대역 표준들 중 하나의 표준의 WiMAX(Worldwide Interoperability for Microwave Access) 구현에 부합하는 4G(fourth generation) 통신을 다양한 방식으로 지원할 수 있다. 이러한 4G 통신은, 그에 부가하여 또는 다른 대안으로서, 4G LTE(Long-Term Evolution) 표준 - 예컨대, 3GPP(3rd Generation Partnership Project)의 릴리스 8 또는 릴리스 9에 명시되어 있음 - 에 부합하는 통신을 포함할 수 있다.
관리자(110)는 주어진 모드의 구성에 대해 할당되기 위해 선택될 수 있는 USID들의 제한된 총수 x(여기서 x는 1 초과의 어떤 정수임)로 제약될 수 있다. 제한이 아닌 예시로서, 관리자(110)의 RFFE 제어 및 구성 기능은 USID들의 개수를 15로 제한하는 MIPI® Alliance RFFE 표준에 부합할 수 있다 - 예컨대, MIPI® RFFE는 USID들을 단지 4 비트 값들로 제한하고, 일부 실시예들에서, 하나의 이러한 4 비트 값을 브로드캐스트 주소 지정을 위해 예비해두고 있다 -. 일 실시예에서, 관리자(110)는 무선 주파수 프런트 엔드 제어 인터페이스(RFFE) v1.00.00(2010년 8월)에 대한 MIPI® Alliance 규격, 무선 주파수 프런트 엔드 제어 인터페이스(RFFE) v1.10(2011년 12월)에 대한 MIPI® Alliance 규격, 또는 다른 이러한 표준에 부합한다.
관리자(110)는 이용 가능한 USID들의 총수 x 초과의 RFFE(105)의 구성요소들의 총수를 버스(130)를 통해 주소 지정 가능하게 할 수 있는 기능을 제공할 수 있다. 예를 들어, 버스(130)를 통해 USID들로 주소 지정 가능할 복수의 구성요소들은 x 개의 구성요소들(140a,…, 140x)은 물론, 하나 이상의 부가 구성요소들[예시적인 구성요소(140y)로 나타내어져 있음]을 포함할 수 있다. 구성요소들(140a, …, 140x, 140y 등) 각각은 각자의 주소 기본값(AD) - 예컨대, 각자의 주소 기본값들(142a,…, 142x, 142y)로 나타내어져 있음 - 과 연관될 수 있다.
구성요소들(140a, …, 140x, 140y)은 각자의 무선 통신 유형의 기능을 구현할 하드웨어 각각을 다양한 방식으로 포함할 수 있다. 제한이 아닌 예시로서, 구성요소들(140a, …, 140x, 140y) 각각은 FDD(frequency division duplex) 회로, TDD(time division duplex) 회로, 하나 이상의 전력 증폭기들 및/또는 이와 유사한 것의 각자의 것을 포함할 수 있다. 이러한 구성요소에 의해 제공되는 특정의 기능은 RFFE(105)에 의해 지원되는 특정 통신 유형들에 의존할 수 있다. 이 통신 유형들 및 그의 대응하는 구성요소들 및 기능은 다양한 방식으로 종래의 무선 통신 기법들 - 특정 실시예들을 제한하지 않고 본 명세서에 상세히 기술되어 있지 않음 - 에 기초할 수 있다.
대안의 실시예에서, 시스템(100)은 전력 관리 시스템이고, 이 경우 구성요소들(140a,…, 140x, 140y 등)은 그 대신에 관리자(110)가 전력 관리를 제공해야 하는 - 예컨대, RFFE 구성요소들 이외의 - 각종의 구성요소들 중 임의의 것이다. 이러한 전력 관리는, 예를 들어, SPMI(System Power Management Interface) v.1.00.00에 대한 MIPI® Alliance 규격(2008년 12월 승인됨) 및 SPMI v.2에 대한 MIPI® Alliance 규격(2012년 9월 승인됨)을 비롯한, 각종의 표준들 중 임의의 것에 부합할 수 있다. 이러한 구성요소들은, 예를 들어, 본 명세서에서 논의된 주소 지정 메커니즘들에 기초하여 관리자에 의해 제어 및/또는 구성되는 슬레이브들로서 동작하도록 구성된 각종의 프로세서들, 모뎀들, 허브들, 메모리 디바이스들 또는 다른 패키지형 디바이스(packaged device)들(또는 이들의 구성요소들) 중 임의의 것을 포함할 수 있다.
관리자(110)는 RFFE(105)의 하나 이상의 모드들을 식별하도록 구성된 회로를 포함하는 모드 검출 로직(114)을 포함할 수 있다. 하나의 실시예에서, 모드 검출 로직(114)은 - 예컨대, 관리자(110)에 포함되어 있거나 관리자(110)에 의해 다른 방식으로 액세스 가능한 모드 정보에 기초하여 - 복수의 이용 가능한 모드들 중에서 구성될 모드를 선택한다. 이러한 모드 정보는, 복수의 모드들 각각에 대해, 그 모드 동안 활성이어야 하는 RFFE(105)의 하나 이상의 구성요소들 및/또는 그 모드 동안 비활성일 수 있는 RFFE(105)의 하나 이상의 구성요소들을 식별할 수 있다. 관리자(110)는 이러한 모드 정보로 사전 프로그램될 수 있거나, 대안적으로 - 예컨대, 파워업, 시스템 리셋, RFFE 모드 구성 요구 등에 응답하여 - 이러한 모드 정보를 생성할 수 있다.
예를 들어, 모드 검출 로직(114)은 다양한 때에 구성될 수 있는 복수의 모드들 각각을 식별할 수 있다. 일 실시예에서, 모드 검출 로직(114)은 버스(130)를 통해 주소 지정을 위한 어떤 USID를 할당받을 수 있는 복수의 구성요소들 전부를 식별한다. 이 구성요소들은, 예를 들어, 임의의 모드에서 임의의 USID로 - 예컨대, 적어도 버스(130)를 통해 관리자(110)에 의해서는 아니고 - 주소 지정되어서는 안되는 RFFE(105)의 임의의 구성요소와 구별될 수 있다. 복수의 모드들의 식별은 모드 검출 로직(114)이, 복수의 모드들 각각에 대해, 복수의 구성요소들 중 어느 것이 그 모드의 활성 구성요소들이고 복수의 구성요소들 중 어느 것이 그 모드의 비활성 구성요소들인지를 식별하는 것을 더 포함할 수 있다. 구성요소는 그 모드 동안 구성요소가 어떤 기능을 구현하기 위해 이용 가능해야 하는 것 - 예컨대, 주어진 모드에 따라 무선 통신을 지원하는 것 - 에 기초하여 주어진 모드에 대해 활성으로 분류될 수 있다. 이와 달리, 이러한 구성요소는, 이러한 기능이 다른 모드 동안 필요하지 않은 경우, 그 다른 모드에 대해 비활성으로 분류될 수 있다. 예를 들어, 특정 실시예들이 이와 관련하여 제한되지 않지만, 주어진 RFFE 모드의 구성은 그 구성된 RFFE 모드와 연관된 임의의 것 이외의 통신 유형을 지원하는 구성요소의 적어도 일부 기능을 선택적으로 디스에이블시키는 것을 포함할 수 있다.
모드 검출 로직(114)은 RFFE의 특정의 모드가 구성되어야 한다는 것을 나타내는 어떤 신호를 - 예컨대, 제조업체, 로컬 무선 네트워크 또는 소비자/사용자로부터 - 수신할 수 있다. 이러한 신호는 선험적 입력(a priori input) - 그의 소스가 특정 실시예들을 제한하지 않음 - 으로서 제공될 수 있다. 특정의 모드가 구성되어야 한다는 것을 검출한 것에 응답하여, 모드 검출 로직(114)은 USID들이 어떻게 할당되어야 하는지를 나타내는 정보를 관리자(110)의 할당 로직(116)으로 전달할 수 있다. 예를 들어, 모드 검출 로직은 활성 ID 풀(120)로부터 USID들을 할당받아야 하는, 구성요소들(140a, …, 140x, 140y) 중의 그 구성요소들을 할당 로직(116)에 식별해줄 수 있다. 대안적으로 또는 그에 부가하여, 모드 검출 로직(114)은 비활성 ID 풀(122)로부터 각자의 USID를 할당받아야 하는, 구성요소들(140a, …, 140x, 140y) 중의 그 구성요소들을 할당 로직(116)에 식별해줄 수 있다.
활성 ID 풀(120)은 일부 구성요소가 활성인 모드 동안에만 그 구성요소의 주소 지정을 위해 각각이 할당될 수 있는 그 USID들을 식별하도록 구성된 하나 이상의 레지스터들 또는 다른 이러한 회로를 포함할 수 있다. 이와 달리, 비활성 ID 풀(122)은 일부 구성요소가 비활성인 모드 동안에만 그 구성요소의 주소 지정을 위해 각각이 할당될 수 있는 그 USID들을 식별하도록 구성된 회로를 포함한다. 하나의 실시예에서, 관리자(110)는 활성 ID 풀(120) 및 비활성 ID 풀(122)로 사전 프로그램된다. 다른 실시예에서, 관리자(110)는 - 예컨대, 파워업, 시스템 리셋, RFFE 모드 구성 요구 등에 응답하여 - 활성 ID 풀(120) 및/또는 비활성 ID 풀(122)을 생성하는 회로를 포함한다.
RFFE(105)의 복수의 구성요소들 각각은 현재 구성된 모드에 대해 그 구성요소에 할당된 USID를 저장하거나 다른 방식으로 나타내는 각자의 구성된 주소(configured address)(CA) 저장소(repository)를 포함할 수 있다. 예를 들어, 구성요소들(140a,…, 140x, 140y)의 각자의 CA(144a), …, CA(144x), CA(144y) 각각은 특정의 모드에 대해 할당 로직(116)에 의해 할당된 각자의 USID를 저장할 수 있다. CA(144a), …, CA(144x), CA(144y)에 다양한 방식으로 저장된 USID들은 - 예컨대, 관리자(110)의 제어 로직(112)에 의해 - 구성요소들(140a,…, 140x, 140y)의 주소 지정을 가능하게 할 수 있다. 이러한 주소 지정은 관리자(110)가, 예를 들어, 종래의 MIPI® RFFE(또는 다른 제어 인터페이스) 기법들로부터 적응되는 시스템 제어/구성 동작들을 제공하는 것일 수 있다.
도 2는, 예를 들어, 시스템(예컨대, RFFE 또는 전력 관리 시스템)을 구성하기 위한 USID 할당 동작들을 위해 이용 가능하게 되어야 하는 USID들의 풀들을 결정하는 방법(200)의 요소들을 나타낸 것이다. 방법(200)은, 예를 들어, 활성 ID 풀(120) 및/또는 비활성 ID 풀(122)을 생성하기 위한, 관리자(110)에 포함되거나 그에 결합된, 회로에 의해 수행될 수 있다.
방법(200)은 요구된 최소 수의 활성 USID들을 식별하고 일단의 제한된 이용 가능한 USID들 각각을 활성 ID 풀 및 비활성 ID 풀의 각자의 풀에 다양한 방식으로 할당하는 동작들의 하나의 예이고, 이 경우 이러한 할당은 식별된 최소치에 기초한다. 제한이 아닌 예시로서, 방법(200)은, 205에서, 모드에 대한 활성 구성요소들의 가장 큰 총수를 나타내는 변수 Ta를 어떤 기준값 - 예컨대, 영(0) - 으로 설정하는 것을 포함할 수 있다. 일부 실시예들에서, 205에서의 동작들은, 모드에 대해, 동일한 주소 기본값을 가지는 그 모드에 대한 비활성 구성요소들의 가장 큰 개수를 나타내는 변수 Tpmax를 어떤 기준값 - 예컨대, 영(0) - 으로 설정하는 것을 더 포함할 수 있다.
방법(200)은, 210에서, USID들을 다양한 방식으로 할당받을 수 있는 시스템 구성요소들을 식별하는 것을 포함할 수 있다. 예를 들어, 210에서 식별하는 것은 버스(130)에 결합된 구성요소들(140a,…, 140x, 140y 등) 각각을 식별하는 것을 포함할 수 있다. 이러한 구성요소들이 식별된 후에, 방법(200)은 복수의 모드들 각각에 대해 이러한 구성요소들의 구성을 평가할 수 있다. 예를 들어, 방법(200)은 215에서 평가를 위해 하나의 이러한 모드를 선택할 수 있다. 215에서 선택된 모드에 대해, 방법(200)은, 220에서, 그 모드 동안 활성이어야 하는 구성요소들의 총수 ta를 식별할 수 있다.
이어서, 220에서 가장 최근에 식별된 개수 ta가 변수 Ta의 현재 값 초과인지 여부를 결정하기 위해, 225에서, 비교가 수행된다. Ta가, 225에서, 그 개수 ta 미만인 것으로 결정된 경우, 230에서, 변수 Ta가 가장 최근에 식별된 개수 ta와 같도록 업데이트될 수 있다. 그렇지 않은 경우, 230에서의 이러한 업데이트는 생략될 수 있고, 방법(200)은, 235에서, 모드 동안 비활성이어야 함과 동시에 동일한 주소 기본값을 가지는 구성요소들의 가장 큰 개수 tpmax를 식별하는 것으로 진행할 수 있다. 하나의 예시적인 시나리오에서, 주어진 모드 동안 5개의 구성요소들이 비활성일 수 있고, 이 경우 5개의 구성요소들 중 2개의 구성요소들 각각은 제1 주소 기본값을 갖고, 다른 3개의 구성요소들 각각은 상이한 제2 주소 기본값을 가진다. 이러한 경우에, 235에서 식별하는 것은, 그 주어진 모드에 대해, tpmax에 대해 3의 값을 결정할 것이다.
이어서, 235에서 가장 최근에 식별된 개수 tpmax가 변수 Tpmax의 현재 값 초과인지 여부를 결정하기 위해, 240에서, 비교가 수행된다. Tpmax가, 240에서, 그 개수 tpmax 미만인 것으로 결정된 경우, 245에서, 변수 Tpmax가 가장 최근에 식별된 개수 tpmax와 같도록 업데이트될 수 있다. 그렇지 않은 경우, 245에서의 이러한 업데이트는 생략될 수 있고, 방법(200)은, 250에서, 모든 모드들이 평가되었는지 여부를 결정하는 것으로 진행할 수 있다.
방법(200)은, 하나 이상의 모드들이 아직 평가되지 않은 채로 남아 있는 경우, 215에서의 선택으로 되돌아갈 수 있다. 그렇지 않은 경우, 방법(200)은, 255에서, Ta 및 Tpmax의 현재 값들의 합이 할당될 수 있는 USID들의 총수 Nid 초과인지 여부를 결정할 수 있다. 하나의 실시예에서, Nid는 15(예컨대, 다양한 MIPI® Alliance RFFE 규격들 또는 MIPI® Alliance SPMI 규격들에 의해 규정됨)이다. 합이 Nid 초과인 경우, 방법(200)은 270에서 - 예컨대, 어떤 교정 조치를 호출하기 위해 그리고/또는 RFFE의 요청된 (재)구성을 방지하기 위해 - 오류 메시지를 생성할 수 있다. 그렇지만, 합이 255에서 Nid 미만인(또는 Nid와 같은) 것으로 결정되는 경우, 방법(200)은, 260에서, Nid개의 이용 가능한 USID들 중 적어도 Ta개를 제1 풀 - 예컨대, 활성 ID 풀(120) - 에 할당할 수 있다. 더욱이, 방법(200)은, 265에서, Nid개의 이용 가능한 USID들 중 적어도 Tpmax개를 제2 풀 - 예컨대, 비활성 ID 풀(122) - 에 할당할 수 있다.
다른 실시예에서, 방법(200)은 tpmax개의 값들의 평가를 피하고, 그 대신에, Nid가 모든 가능한 모드들에 대한 Ta 및 Tpmax의 합을 수용하기에 충분히 크다는 것을 보장하기 위해 제조업체에 의존한다. 이러한 실시예에서, 방법(200)은 235, 240 및 245에서의 동작들을 포함하지 않을 수 있다 - 예컨대, 이 경우 250에서의 결정은 동작들(225, 230) 중 어느 하나로부터 바로 다음에 나온다 -. 게다가, 방법(200)은 동작들(255, 270)을 생략할 수 있다 - 예컨대, 이 경우, 260 및/또는 265에서의 할당은 250에서의 결정 직후에 나온다 -.
도 3은 일 실시예에 따른, 시스템(예컨대, RFFE 또는 전력 관리 시스템)의 구성을 용이하게 하는 방법(300)의 요소들을 나타낸 것이다. 방법(300)은, 예를 들어, 관리자(110)의 로직에 의해 수행될 수 있다. 일 실시예에서, 방법(300)은 USID들 각각을 제1 풀 및 제2 풀의 각자의 풀에 할당하는 것에 기초하여 이러한 USID들을 구성요소들에 다양한 방식으로 할당한다. 이러한 풀들은, 예를 들어, 방법(200)에 따라 결정될 수 있다.
다양한 실시예들의 특정 특징들을 설명하기 위해, 방법(300)은 본 명세서에서 도 4에 도시된 디바이스(400)의 동작과 관련하여 논의된다. 디바이스(400)는, 예를 들어, 관리자(110)의 특징들 중 일부 또는 전부를 가질 수 있다. 일 실시예에서, 디바이스(400)는 버스(130)와 같은 제어/구성 버스를 통해 디바이스(400)를 RFFE의 다수의 슬레이브 구성요소들(또는 하드웨어 플랫폼의 전력 관리되는 구성요소들)에 결합시키는 버스 인터페이스(410)를 포함한다. 디바이스(400)의 제어 로직(420)은 이러한 구성요소들의 동작을 관리하거나 다른 방식으로 지원할 수 있고, 여기서 이러한 지원은 MIPI® Alliance RFFE 표준, MIPI® Alliance SPMI 표준 등에 부합하는 구성요소들과의 통신을 포함한다. 이 통신은 방법(300)에 따라 할당되는 구성요소들의 주소 지정에 의존할 수 있다.
디바이스(400)는 다수의 구성요소들 각각에 대해, 그 구성요소에 대한 각자의 iID 또는 다른 주소 기본값을 식별해주는 하나 이상의 데이터 구조들 - 예컨대, 예시적인 주소 기본값(AD) 테이블(430)로 나타내어져 있음 - 을 포함하거나 다른 방식으로 그에 액세스할 수 있다. 하나의 시나리오에서, AD 테이블(430)은 구성요소 1 내지 구성요소 20에 대한 각자의 주소 기본값(address default value)들(ADi, ADii, …, ADxix, ADxix, ADxx)을 저장할 수 있다. 그렇지만, 구성요소들의 특정의 개수 및 이러한 구성요소들의 특정의 주소 기본값들은 예시적인 것에 불과하다. 유의할 점은, 도 4의 예시적인 시나리오에서, 2개의 구성요소들(18 및 19)이 동일한 주소 기본값(ADxix)을 가진다는 것이다.
디바이스(400)는 복수의 시스템 모드들 각각에 대해, 그 모드 동안 어느 구성요소들이 활성이어야 하는지 및/또는 그 모드 동안 어느 구성요소들이 비활성이어야 하는지를 명시하거나 다른 방식으로 나타내는 정보를 더 포함하거나 다른 방식으로 그에 액세스할 수 있다. 제한이 아닌 예시로서, 디바이스(400)의 모드 테이블(442)은 N개의 모드들 각각에 대해 - 여기서 N은 1보다 큰 정수임 -, 그 모드 동안 활성(또는 대안적으로, 비활성)이어야 하는 그 구성요소들을 열거할 수 있다. 주어진 모드에 대한 목록에 구성요소가 없는 것은 문제의 구성요소가 그 모드 동안 비활성(또는 대안적으로, 활성)이어야 한다는 것을 의미하는 것으로 이해될 수 있다. 모드 테이블(442)로 나타낸 특정의 모드들은 예시적인 것에 불과하고 특정 실시예들을 제한하지 않는다.
디바이스(400)는 구성요소가 활성이어야 하는 모드 동안에만 그 구성요소의 주소 지정을 위해 각각이 할당될 수 있는 USID들을 포함하는 제1 풀(452)을 더 포함할 수 있다. 디바이스(400)의 제2 풀(452)은 구성요소가 비활성이어야 하는 모드 동안에만 그 구성요소의 주소 지정을 위해 각각이 할당될 수 있는 USID들을 포함할 수 있다. 제1 풀(452) 및 제2 풀(454)에서의 USID들의 총수는 AD 테이블(430)에 열거된 구성요소들의 총수 미만일 수 있다. 이용 가능한 USID들의 특정의 개수, 및 USID들을 제1 풀(452) 및 제2 풀(454)에 다양한 방식으로 할당하는 것은 예시적인 것에 불과하고 특정 실시예들을 제한하지 않는다.
디바이스(400)는 AD 테이블(430), 모드 테이블(442), 제1 풀(452) 및 제2 풀(454) 중 하나 이상으로 사전 프로그램될 수 있다. 일부 실시예들에서, 제1 풀(452) 및/또는 제2 풀(454)은 디바이스(400)의 로직 - 예시적인 풀 생성 로직(450) 등 - 에 의해 생성될 수 있다. 제1 풀(452) 및 제2 풀(454)의 이러한 생성은, 예를 들어, 방법(200)에 따를 수 있다.
이제 도 3을 참조하면, 방법(300)은, 310에서, 시스템의 모드를 검출하는 것을 포함할 수 있다. 예를 들어, 모드 평가 로직(440)은 USID들이 버스 인터페이스(410)를 통해 디바이스(400)에 결합된 구성요소들에 할당되어야 한다는 것을 나타내는 입력 신호를 수신할 수 있고, 여기서 이러한 할당은 구성되어야 하는 모드 동안 구성요소들의 주소 지정을 용이하게 하기 위한 것이다. 310에서 검출한 것에 응답하여, 방법(300)은, 320에서, 구성되어야 하는 모드 동안 활성이어야 하는 하나 이상의 제1 구성요소들을 식별할 수 있다. 제한이 아닌 예시로서, 모드 평가 로직(440)은, 310에서, 모드 2[모드 테이블(442)에 나타내어져 있음]가 구성되어야 한다는 것을 검출할 수 있다. 모드 테이블(442)에 기초하여, 모드 평가 로직(440)은, 320에서, 열거된 구성요소들(2, 4, 5, 7 및 10)이 모드 2 동안 활성이어야 한다는 것을 식별할 수 있다.
방법(300)은, 330에서, 제1 풀의 상이한 각자의 식별자들을 320에서 식별된 하나 이상의 제1 구성요소들 각각에 할당하는 것을 포함할 수 있다. 예를 들어, 모드 평가 로직(440)은, 모드 테이블(442)로 나타낸 바와 같이, 모드 동안 활성이어야 하는 그 구성요소들을 명시하거나 다른 방식으로 나타내는 정보를 디바이스(400)의 할당 로직(460)에 전달할 수 있다. 그에 응답하여, 할당 로직(460)의 회로는, 각각의 이러한 구성요소에 할당하기 위해, 제1 풀(452)의 상이한 각자의 USID를 선택할 수 있다. 앞서 논의된 예시적인 시나리오에서, 구성요소들(2, 4, 5, 7 및 10) 각각은 모드 2에 대해 활성일 수 있고, 그 결과, 예를 들어, 활성 USID들(ID4, ID1, ID5, ID6 및 ID9)을 (각각) 할당받을 수 있다.
방법(300)은, 340에서, 구성되어야 하는 모드 동안 비활성이어야 하는 하나 이상의 제2 구성요소들을 식별하는 것을 더 포함할 수 있다. 예를 들어, 모드 평가 로직(440)은, 모드 테이블(442)에 기초하여, 구성요소들(2, 4, 5, 7 및 10) 이외의 AD 테이블(430)에 나타내어진 구성요소들이 모드 2 동안 비활성이어야 하는 것으로 결정할 수 있다.
방법(300)은, 350에서, 제2 풀의 각자의 식별자를 340에서 식별된 하나 이상의 제2 구성요소들 각각에 할당하는 것을 포함할 수 있다. 예를 들어, 모드 평가 로직(440)은 모드 동안 비활성이어야 하는 그 구성요소들을 명시하거나 다른 방식으로 나타내는 정보를 할당 로직(460)에 전달할 수 있다. 그에 응답하여, 할당 로직(460)은, 각각의 이러한 구성요소에 할당하기 위해, 제2 풀(454)의 각자의 USID를 선택할 수 있다. 예시적인 시나리오에서, 제2 풀(454)의 동일한 USID - 예컨대, ID10 - 가 다수의 비활성 구성요소들에 동시에 할당될 수 있다. 그렇지만, 할당 로직(460)은 동일한 주소 기본값을 가지는 비활성 구성요소들에 대한 제2 풀(454)의 동일한 USID의 임의의 동시적인 할당을 방지할 수 있다. 예를 들어, 예시적인 시나리오에서, 구성요소들(18 및 19)은 동일한 주소 기본값(ADxix)을 가진다. 그에 따라, 구성요소들(18 및 19)은 제2 풀(454)로부터 상이한 USID들(예컨대, 각각, ID10 및 ID14)을 할당받을 수 있다. 이것은 구성/제어 버스를 통한 시그널링에서 구성요소들(18 및 19)을 또다시 서로 구별 가능하게 만들기 위해, 그렇지 않았으면 시스템 리셋을 필요로 할 수 있는 주소 지정 충돌들을 방지할 수 있다. 일 실시예에서, 도 3에 도시된 방법(300)의 동작들이 한 번 이상 반복될 수 있다 - 예컨대, 이 경우 각각의 이러한 반복은 복수의 이러한 모드들의 각자의 시스템 모드를 용이하게 하는 대응하는 주소 체계(address scheme)를 구현하기 위한 것이다 -.
특정 실시예들이 이와 관련하여 제한되지 않지만, 디바이스(400)는, 하나 이상의 모드들 각각에 대해, 그 모드를 구현하기 위해 구성요소들에 대한 USID들의 할당을 기술하는 정보를 포함하는 데이터 구조를 생성할 수 있다. 이러한 데이터 구조는 특정의 모드를 구성하라는 주어진 요구 이전에 생성될 수 있고, 이 경우 데이터 구조는, 요구가 차후에 제공되는 경우/때, 참조 정보로서 사전에 이용 가능할 것이다. 제한이 아닌 예시로서, 디바이스(400)는 하나 이상의 구성된 주소(CA) 테이블들[예를 들어, 모드 2에 대응하는 예시적인 CA 테이블(465)을 포함함]을 포함할 수 있거나 다른 방식으로 그에 액세스할 수 있다. CA 테이블(465)은, 예를 들어, AD 테이블(430)에 나타내어진 구성요소들의 식별자들에 의해 인덱싱될 수 있고, 모드 2가 구성되어야 하는 경우/때, 각각의 이러한 구성요소를 그 구성요소에 할당될 대응하는 USID와 연관시킬 수 있다.
도 5는 제어 시스템 주소 지정 메커니즘들이 구현될 수 있는 컴퓨팅 시스템의 일 실시예의 블록도이다. 시스템(500)은 본 명세서에 기술된 임의의 실시예에 따른 컴퓨팅 디바이스를 나타내고, 랩톱 컴퓨터, 데스크톱 컴퓨터, 서버, 게임 또는 엔터테인먼트 제어 시스템, 스캐너, 복사기, 프린터, 또는 다른 전자 디바이스일 수 있다. 시스템(500)은 시스템(500)에 대한 처리, 동작 관리 및 명령어들의 실행을 제공하는 프로세서(520)를 포함할 수 있다. 프로세서(520)는 시스템(500)에 대한 처리를 제공하는 임의의 유형의 마이크로프로세서, CPU(central processing unit), 처리 코어, 또는 다른 처리 하드웨어를 포함할 수 있다. 프로세서(520)는 시스템(500)의 전체적인 동작을 제어하고, 하나 이상의 프로그램 가능 범용 또는 특수 목적 마이크로프로세서들, DSP(digital signal processor)들, 프로그램 가능 제어기들, ASIC(application specific integrated circuit)들, PLD(programmable logic device)들 등, 또는 이러한 디바이스들의 조합일 수 있거나, 이들을 포함할 수 있다.
메모리 서브시스템(530)은 시스템(500)의 메인 메모리를 나타내고, 프로세서(520)에 의해 실행될 코드, 또는 루틴을 실행할 때 사용될 데이터 값들의 일시적 저장을 제공한다. 메모리 서브시스템(530)은 ROM(read-only memory), 플래시 메모리, 하나 이상의 각종의 RAM(random access memory), 또는 다른 메모리 디바이스들, 또는 이러한 디바이스들의 조합과 같은 하나 이상의 메모리 디바이스들을 포함할 수 있다. 메모리 서브시스템(530)은, 그 중에서도 특히, 시스템(500)에서의 명령어들의 실행을 위한 소프트웨어 플랫폼을 제공하기 위해 OS(operating system)(536)를 저장하고 호스팅한다. 그에 부가하여, 다른 명령어들(538)이 시스템(500)의 로직 및 처리를 제공하기 위해 메모리 서브시스템(530)에 저장되고 그로부터 실행된다. OS(536) 및 명령어들(538)은 프로세서(520)에 의해 실행된다.
메모리 서브시스템(530)은 메모리 디바이스(532)를 포함할 수 있고, 여기서 메모리 디바이스(532)는 데이터, 명령어들, 프로그램들, 또는 다른 항목들을 저장한다. 하나의 실시예에서, 메모리 서브시스템은 - 예컨대, 프로세서(520)를 대신하여 - 메모리(532)에 액세스하는 메모리 제어기(534)를 포함한다.
프로세서(520) 및 메모리 서브시스템(530)은 버스/버스 시스템(510)에 결합된다. 버스(510)는 적절한 브리지들, 어댑터들, 및/또는 제어기들에 의해 연결되는, 임의의 하나 이상의 개별적인 물리적 버스들, 통신 회선들/인터페이스들, 및/또는 점대점 연결들을 나타내는 추상화이다. 따라서, 버스(510)는, 예를 들어, 시스템 버스, PCI(Peripheral Component Interconnect) 버스, HyperTransport 또는 ISA(industry standard architecture) 버스, SCSI(small computer system interface) 버스, USB(universal serial bus), 또는 IEEE(Institute of Electrical and Electronics Engineers) 표준 1394 버스(흔히 "Firewire"라고 지칭됨) 중 하나 이상을 포함할 수 있다. 버스(510)의 버스들은 또한 네트워크 인터페이스(550)에서의 인터페이스들에 대응할 수 있다.
시스템(500)은 또한 버스(510)에 결합된, 하나 이상의 입출력(I/O) 인터페이스(들)(540), 네트워크 인터페이스(550), 하나 이상의 내장형 대용량 저장 디바이스(들)(560), 및 주변 기기 인터페이스(570)를 포함할 수 있다. I/O 인터페이스(540)는 사용자가 시스템(500)과 상호작용하게 하는 하나 이상의 인터페이스 구성요소들(예컨대, 비디오, 오디오, 및/또는 영숫자 인터페이싱)을 포함할 수 있다. 네트워크 인터페이스(550)는 하나 이상의 네트워크들을 거쳐 원격 디바이스들(예컨대, 서버들, 다른 컴퓨팅 디바이스들)과 통신할 수 있는 기능을 시스템(500)에 제공한다. 네트워크 인터페이스(550)는 이더넷 어댑터, 무선 상호연결 구성요소들, USB(universal serial bus), 또는 다른 유선 또는 무선 표준 기반 또는 독점적 인터페이스들을 포함할 수 있다. 일 실시예에서, 네트워크 인터페이스(550)는 RFFE에 포함되거나 그에 결합된 관리자 로직에 의해 구성되는 RFFE를 포함한다 - 예컨대, 여기서 이러한 구성은 본 명세서에서 논의된 바와 같은 주소 할당을 포함하거나 그에 의해 용이하게 된다 -.
저장소(560)는 비휘발성 방식으로 대량의 데이터를 저장하기 위한 임의의 종래의 매체[하나 이상의 자기, 고상(solid state), 또는 광 기반 디스크들, 또는 조합 등]이거나 그를 포함할 수 있다. 저장소(560)는 코드 또는 명령어들 및 데이터(562)를 영구적 상태로 보유한다[즉, 시스템(500)에 대한 전력의 중단에도 불구하고 값이 유지된다]. 메모리(530)가 프로세서(520)에 명령어들을 제공하는 실행 또는 동작 메모리(executing or operating memory)이지만, 저장소(560)가 총칭하여 "메모리"인 것으로 간주될 수 있다. 저장소(560)가 비휘발성인 반면, 메모리(530)는 휘발성 메모리[즉, 시스템(500)에 대한 전력이 중단되는 경우, 데이터의 값 또는 상태가 확정되지 않음]를 포함할 수 있다.
주변 기기 인터페이스(570)는 앞서 구체적으로 언급되지 않은 임의의 하드웨어 인터페이스를 포함할 수 있다. 주변 기기들은 일반적으로 시스템(500)에 종속적으로 연결되는 디바이스들을 지칭한다. 종속적 연결(dependent connection)이란, 동작이 실행되는 그리고 사용자와 상호작용하는 소프트웨어 및/또는 하드웨어 플랫폼을 시스템(500)이 제공하는 연결을 말한다.
도 6은 제어 시스템 주소 지정 메커니즘들이 구현될 수 있는 모바일 디바이스의 일 실시예의 블록도이다. 디바이스(600)는 컴퓨팅 태블릿, 휴대폰 또는 스마트폰, 무선 지원 e-리더(wireless-enabled e-reader), 또는 다른 모바일 디바이스와 같은, 모바일 컴퓨팅 디바이스를 나타낸다. 구성요소들 중 몇몇이 개괄적으로 도시되어 있고, 이러한 디바이스의 구성요소들 모두가 디바이스(600)에 도시되어 있는 것은 아님을 잘 알 것이다.
디바이스(600)는 디바이스(600)의 주요 처리 동작들을 수행하는 프로세서(610)를 포함할 수 있다. 프로세서(610)는 마이크로프로세서, 애플리케이션 프로세서, 마이크로컨트롤러, 프로그램 가능 로직 디바이스(programmable logic device), 또는 다른 처리 수단과 같은, 하나 이상의 물리적 디바이스들을 포함할 수 있다. 프로세서(610)에 의해 수행되는 처리 동작들은 애플리케이션들 및/또는 디바이스 기능들이 실행되는 운영 플랫폼 또는 운영 체제의 실행을 포함한다. 처리 동작들은 사람 사용자와의 또는 다른 디바이스들과의 I/O(입력/출력)에 관련된 동작들, 전력 관리에 관련된 동작들, 및/또는 디바이스(600)를 다른 디바이스에 연결시키는 것에 관련된 동작들을 포함한다. 처리 동작들은 또한 오디오 I/O 및/또는 디스플레이 I/O에 관련된 동작들을 포함할 수 있다.
하나의 실시예에서, 디바이스(600)는 컴퓨팅 디바이스에 오디오 기능들을 제공하는 것과 연관된 하드웨어 구성요소들(예컨대, 오디오 하드웨어 및 오디오 회로들) 및 소프트웨어 구성요소들(예컨대, 드라이버들, 코덱들)을 나타내는 오디오 서브시스템(620)을 포함한다. 오디오 기능들은 스피커 및/또는 헤드폰 출력은 물론, 마이크 입력을 포함할 수 있다. 이러한 기능들을 위한 디바이스들은 디바이스(600)에 통합되거나 디바이스(600)에 연결될 수 있다. 하나의 실시예에서, 사용자는 프로세서(610)에 의해 수신되어 처리되는 오디오 명령들을 제공하는 것에 의해 디바이스(600)와 상호작용한다.
디스플레이 서브시스템(630)은 사용자가 컴퓨팅 디바이스와 상호작용하기 위한 시각적 및/또는 촉각적 디스플레이를 제공하는 하드웨어 구성요소들(예컨대, 디스플레이 디바이스들) 및 소프트웨어 구성요소들(예컨대, 드라이버들)을 나타낸다. 디스플레이 서브시스템(630)은 사용자에게 디스플레이를 제공하기 위해 사용되는 특정의 화면 또는 하드웨어 디바이스를 포함할 수 있는 디스플레이 인터페이스(632)를 포함할 수 있다. 하나의 실시예에서, 디스플레이 인터페이스(632)는 디스플레이에 관련된 적어도 어떤 처리를 수행하는, 프로세서(610)와 별개인, 로직을 포함한다. 하나의 실시예에서, 디스플레이 서브시스템(630)은 사용자에게 출력 및 입력 둘 다를 제공하는 터치스크린 디바이스를 포함한다.
I/O 제어기(640)는 사용자와의 상호작용에 관련된 하드웨어 디바이스들 및 소프트웨어 구성요소들을 나타낸다. I/O 제어기(640)는 오디오 서브시스템(620) 및/또는 디스플레이 서브시스템(630)의 일부인 하드웨어를 관리하는 동작을 할 수 있다. 그에 부가하여, I/O 제어기(640)는 디바이스(600)에 연결되는 부가 디바이스들 - 이들을 통해 사용자는 시스템과 상호작용할 수 있음 - 에 대한 연결 지점을 나타낸다. 예를 들어, 디바이스(600)에 접속될 수 있는 디바이스들은 카드 판독기 또는 다른 디바이스들과 같은 특정 응용들에서 사용하기 위한 마이크 디바이스, 스피커 또는 스테레오 시스템, 비디오 시스템 또는 다른 디스플레이 디바이스, 키보드 또는 키패드 디바이스, 또는 다른 I/O 디바이스를 포함할 수 있다.
앞서 언급된 바와 같이, I/O 제어기(640)는 오디오 서브시스템(620) 및/또는 디스플레이 서브시스템(630)과 상호작용할 수 있다. 예를 들어, 마이크 또는 다른 오디오 디바이스를 통한 입력은 디바이스(600)의 하나 이상의 애플리케이션들 또는 기능들에 대한 입력 또는 명령들을 제공할 수 있다. 그에 부가하여, 디스플레이 출력 대신에 또는 그에 부가하여, 오디오 출력이 제공될 수 있다. 다른 예에서, 디스플레이 서브시스템이 터치스크린을 포함하는 경우, 디스플레이 디바이스는 I/O 제어기(640)에 의해 적어도 부분적으로 관리될 수 있는 입력 디바이스로서도 기능한다. I/O 제어기(640)에 의해 관리되는 I/O 기능들을 제공하는 부가 버튼들 또는 스위치들이 또한 디바이스(600) 상에 있을 수 있다.
하나의 실시예에서, I/O 제어기(640)는 디바이스(600)에 포함될 수 있는, 가속도계, 카메라, 광 센서 또는 다른 환경 센서, 자이로스코프, GPS(global positioning system), 또는 다른 하드웨어와 같은, 디바이스들을 관리한다. 입력은 직접 사용자 상호작용의 일부는 물론, 시스템의 동작들(잡음에 대해 필터링하는 것, 밝기 검출에 대해 디스플레이들을 조절하는 것, 카메라에 대해 플래시를 적용하는 것, 또는 다른 특징들 등)에 영향을 미치기 위해 시스템에 환경 입력을 제공하는 것일 수 있다.
하나의 실시예에서, 디바이스(600)는 배터리 전력 사용량, 배터리의 충전, 및 전력 절감 동작에 관련된 특징들을 관리하는 전력 관리(650)를 포함한다. 메모리 서브시스템(660)은 디바이스(600)에 정보를 저장하기 위한 메모리 디바이스(들)(662)를 포함할 수 있다. 메모리 서브시스템(660)은 비휘발성(메모리 디바이스에 대한 전력이 중단되는 경우 상태가 변하지 않음) 및/또는 휘발성(메모리 디바이스에 대한 전력이 중단되는 경우 상태가 확정되지 않음) 메모리 디바이스들을 포함할 수 있다. 메모리(660)는 애플리케이션 데이터, 사용자 데이터, 음악, 사진, 문서, 또는 다른 데이터는 물론, 시스템(600)의 애플리케이션들 및 기능들의 실행에 관련된 시스템 데이터(장기이든지 또는 임시이든지)를 저장할 수 있다.
하나의 실시예에서, 메모리 서브시스템(660)은 메모리 제어기(664)[시스템(600)의 제어의 일부인 것으로도 간주될 수 있고 어쩌면 프로세서(610)의 일부인 것으로 간주될 수 있음]를 포함한다. 메모리 제어기(664)는 - 예컨대, 프로세서(610)를 대신하여 - 메모리(662)에 액세스하기 위해 시그널링을 전달할 수 있다.
연결(connectivity)(670)은 디바이스(600)가 외부 디바이스들과 통신할 수 있게 하는 하드웨어 디바이스들(예컨대, 무선 및/또는 유선 커넥터들 및 통신 하드웨어) 및 소프트웨어 구성요소들(예컨대, 드라이버들, 프로토콜 스택들)을 포함할 수 있다. 디바이스는 다른 컴퓨팅 디바이스들, 무선 액세스 포인트들 또는 기지국들은 물론, 헤드셋들, 프린터들, 또는 다른 디바이스들과 같은 주변 기기들과 같은, 개별적인 디바이스들일 수 있다.
연결(670)은 다수의 상이한 유형들의 연결을 포함할 수 있다. 일반화하기 위해, 셀룰러 연결(672) 및 무선 연결(674)을 갖는 디바이스(600)가 예시되어 있다. 셀룰러 연결(672)은 일반적으로 GSM(global system for mobile communications) 또는 변형들 또는 파생물들, CDMA(code division multiple access) 또는 변형들 또는 파생물들, TDM(time division multiplexing) 또는 변형들 또는 파생물들, LTE(롱 텀 에볼루션 - "4G"라고도 지칭됨), 또는 다른 셀룰러 서비스 표준들을 통해 제공되는 것과 같은, 무선 통신사업자들에 의해 제공되는 셀룰러 네트워크 연결을 지칭한다. 무선 연결(674)은 셀룰러가 아닌 무선 연결을 지칭하고, 개인 영역 네트워크들(블루투스 등), 근거리 네트워크들(WiFi 등), 및/또는 원거리 네트워크들(WiMAX 등), 또는 다른 무선 통신을 포함할 수 있다. 무선 통신은 비고체 매체를 통한 변조된 전자기 방사의 사용을 통한 데이터의 전송을 지칭한다. 유선 통신은 고체 통신 매체를 통해 행해진다.
주변 기기 연결(peripheral connections)(680)은 주변 기기 연결을 행하는, 하드웨어 인터페이스들 및 커넥터들은 물론, 소프트웨어 구성요소들(예컨대, 드라이버들, 프로토콜 스택들)을 포함한다. 디바이스(600)가 다른 컴퓨팅 디바이스들에 대한 주변 기기("to" 682)일 수도 있고 그에 연결되는 주변 기기들("from" 684)을 가질 수도 있다는 것을 잘 알 것이다. 디바이스(600)는 보통 디바이스(600) 상의 콘텐츠를 관리(예컨대, 다운로드 및/또는 업로드, 변경, 동기화)하는 것과 같은 목적들을 위해 다른 컴퓨팅 디바이스들에 연결하기 위한 "도킹" 커넥터를 가진다. 그에 부가하여, 도킹 커넥터는 디바이스(600)가, 예를 들어, 오디오비주얼 또는 다른 시스템들로의 콘텐츠 출력을 제어할 수 있게 하는 특정 주변 기기들에 디바이스(600)가 연결할 수 있게 할 수 있다.
독점적 도킹 커텍터 또는 다른 독점적 연결 하드웨어에 부가하여, 디바이스(600)는 통상의 또는 표준 기반 커넥터들을 통해 주변 기기 연결들(680)을 행할 수 있다. 통상의 유형들은 USB(Universal Serial Bus) 커넥터(다수의 상이한 하드웨어 인터페이스들 중 임의의 것을 포함할 수 있음), MiniDisplayPort(MDP)를 비롯한 DisplayPort, HDMI(High Definition Multimedia Interface), Firewire, 또는 다른 유형을 포함할 수 있다.
하나의 구현에서, 디바이스는 시스템의 제1 모드를 검출하고, 그에 응답하여, 제1 모드 동안 활성(active)이어야 하는 시스템의 하나 이상의 제1 구성요소들 및 제1 모드 동안 비활성(passive)이어야 하는 시스템의 하나 이상의 제2 구성요소들을 식별하도록 구성된 회로를 포함하는 모드 평가 로직(mode evaluation logic)을 포함한다. 본 디바이스는 활성 구성요소 식별자 풀(active component identifier pool)의 상이한 각자의 식별자들을 하나 이상의 제1 구성요소들 각각에 할당하도록 구성된 회로를 포함하는 할당 로직(assignment logic) - 할당 로직은 추가로 비활성 구성요소 식별자 풀(passive component identifier pool)의 각자의 식별자를 하나 이상의 제2 구성요소들 각각에 할당하고, 또한 상기 할당 로직은 상이한 각자의 식별자들을 동일한 주소 기본값(address default)을 가지는 하나 이상의 제2 구성요소들 중 임의의 2개의 구성요소에 할당함 - 을 더 포함한다.
일 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 복수의 구성요소들의 총수 미만이다. 다른 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스(MIPI Radio Frequency Front-End Interface) 규격 또는 MIPI 시스템 전력 관리 인터페이스(MIPI System Power Management Interface) 규격에 의해 규정된 한도에 부합한다. 다른 실시예에서, 복수의 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초한다.
다른 실시예에서, 모드 평가 로직은 추가로 시스템의 복수의 구성요소들을 식별하고 시스템의 복수의 모드들을 식별하며, 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 ta 값에 대응한다. 본 디바이스는 ta 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Ta 값을 결정하는 풀 생성 로직(pool generation logic)을 더 포함하고, Ta 값에 기초하여, 풀 생성 로직은 고정된 복수의 식별자들 중 하나 이상의 제1 식별자들을 활성 구성요소 식별자 풀에 할당하고, 풀 생성 로직은 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당한다.
다른 실시예에서, 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고, 풀 생성 로직은 또한 tpmax 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하며, 풀 생성 로직은, Tpmax에 추가로 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당한다. 다른 실시예에서, 본 디바이스는 제1 모드의 구성을 요청하는 신호에 응답하여 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀을 생성하는 풀 생성 로직을 더 포함한다. 다른 실시예에서, 제1 모드를 검출하는 모드 평가 로직은, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 생성 후에, 제1 모드의 구성을 요청하는 신호를 검출하는 모드 평가 로직을 포함한다.
다른 구현에서, 방법은 복수의 구성요소들 - 각각은 각자의 주소 기본값에 대응함 - 을 포함하는 시스템의 제1 모드를 검출하는 단계, 제1 모드 동안 활성이어야 하는 시스템의 하나 이상의 제1 구성요소들을 식별하는 단계, 활성 구성요소 식별자 풀의 상이한 각자의 식별자들을 하나 이상의 제1 구성요소들 각각에 할당하는 단계, 제1 모드 동안 비활성이어야 하는 시스템의 하나 이상의 제2 구성요소들을 식별하는 단계, 및 비활성 구성요소 식별자 풀의 각자의 식별자를 하나 이상의 제2 구성요소들 각각에 할당하는 단계 - 상이한 각자의 식별자들을 동일한 주소 기본값을 가지는 하나 이상의 제2 구성요소들 중 임의의 2개의 구성요소에 할당하는 단계를 포함함 - 를 포함한다.
일 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 복수의 구성요소들의 총수 미만이다. 다른 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합한다. 다른 실시예에서, 복수의 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초한다.
다른 실시예에서, 본 방법은 시스템의 복수의 구성요소들을 식별하는 단계, 시스템의 복수의 모드들 - 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 ta 값에 대응함 - 을 식별하는 단계, ta 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Ta 값을 결정하는 단계, 그리고 Ta 값에 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제1 식별자들을 활성 구성요소 식별자 풀에 할당하는 단계, 및 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당하는 단계를 더 포함한다.
다른 실시예에서, 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 tpmax 값에 대응한다. 본 방법은 tpmax 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하는 단계를 더 포함하고, 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당하는 단계는 Tpmax에 추가로 기초한다. 다른 실시예에서, 본 방법은 제1 모드의 구성을 요청하는 신호에 응답하여 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀을 생성하는 단계를 더 포함한다. 다른 실시예에서, 제1 모드를 검출하는 단계는 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 생성 후에, 제1 모드의 구성을 요청하는 신호를 검출하는 단계를 포함한다.
다른 구현에서, 비일시적 컴퓨터 판독 가능 저장 매체는, 하나 이상의 처리 유닛들에 의해 실행될 때, 하나 이상의 처리 유닛들로 하여금 방법을 수행하게 하는 명령어들을 저장하고, 이 방법은 복수의 구성요소들 - 각각은 각자의 주소 기본값에 대응함 - 을 포함하는 시스템의 제1 모드를 검출하는 단계, 제1 모드 동안 활성이어야 하는 시스템의 하나 이상의 제1 구성요소들을 식별하는 단계, 활성 구성요소 식별자 풀의 상이한 각자의 식별자들을 하나 이상의 제1 구성요소들 각각에 할당하는 단계, 제1 모드 동안 비활성이어야 하는 시스템의 하나 이상의 제2 구성요소들을 식별하는 단계, 및 비활성 구성요소 식별자 풀의 상이한 각자의 식별자들을 하나 이상의 제2 구성요소들 각각에 할당하는 단계 - 상이한 각자의 식별자들을 동일한 주소 기본값을 가지는 하나 이상의 제2 구성요소들 중 임의의 2개의 구성요소에 할당하는 단계를 포함함 - 를 포함한다.
일 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 복수의 구성요소들의 총수 미만이다. 다른 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합한다. 다른 실시예에서, 복수의 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초한다.
다른 실시예에서, 이 방법은 시스템의 복수의 구성요소들을 식별하는 단계, 시스템의 복수의 모드들 - 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 ta 값에 대응함 - 을 식별하는 단계, ta 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Ta 값을 결정하는 단계, Ta 값에 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제1 식별자들을 활성 구성요소 식별자 풀에 할당하는 단계, 및 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당하는 단계를 더 포함한다.
다른 실시예에서, 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고, 이 방법은 tpmax 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하는 단계를 더 포함하고, 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당하는 단계는 Tpmax에 추가로 기초한다. 다른 실시예에서, 이 방법은 제1 모드의 구성을 요청하는 신호에 응답하여 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀을 생성하는 단계를 더 포함한다. 다른 실시예에서, 제1 모드를 검출하는 단계는 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 생성 후에, 제1 모드의 구성을 요청하는 신호를 검출하는 단계를 포함한다.
다른 구현에서, 시스템은 복수의 구성요소들 - 각각은 각자의 주소 기본값에 대응함 -, 버스, 및 버스를 통해 복수의 구성요소들에 결합된 관리자 디바이스(manager device)를 포함한다. 관리자 디바이스는 시스템의 제1 모드를 검출하고, 그에 응답하여, 제1 모드 동안 활성이어야 하는 복수의 구성요소들의 하나 이상의 제1 구성요소들 및 제1 모드 동안 비활성이어야 하는 복수의 구성요소들의 하나 이상의 제2 구성요소들을 식별하도록 구성된 회로를 포함하는 모드 평가 로직을 포함한다. 관리자 디바이스는 활성 구성요소 식별자 풀의 상이한 각자의 식별자들을 하나 이상의 제1 구성요소들 각각에 할당하도록 구성된 회로를 포함하는 할당 로직 - 할당 로직은 추가로 비활성 구성요소 식별자 풀의 각자의 식별자를 하나 이상의 제2 구성요소들 각각에 할당하고, 또한 할당 로직은 상이한 각자의 식별자들을 동일한 주소 기본값을 가지는 하나 이상의 제2 구성요소들 중 임의의 2개의 구성요소에 할당함 - 을 더 포함한다.
일 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 복수의 구성요소들의 총수 미만이다. 다른 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합한다. 다른 실시예에서, 복수의 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초한다.
다른 실시예에서, 모드 평가 로직은 또한 복수의 구성요소들을 식별하고 시스템의 복수의 모드들을 식별하며, 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 ta 값에 대응하며, 관리자 디바이스는 Ta 값을 결정하는 풀 생성 로직을 더 포함하고, 상기 Ta 값은 각각의 값이 복수의 모드들의 각자의 모드에 대응하는 ta 값들 중 가장 큰 값과 동일하고, 상기 Ta 값에 기초하여, 풀 생성 로직은 고정된 복수의 식별자들 중 하나 이상의 제1 식별자들을 활성 구성요소 식별자 풀에 할당하고, 풀 생성 로직은 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당한다.
다른 실시예에서, 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고, 풀 생성 로직은 또한 tpmax 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하며, 풀 생성 로직은, Tpmax에 추가로 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당한다. 다른 실시예에서, 본 시스템은 제1 모드의 구성을 요청하는 신호에 응답하여 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀을 생성하는 풀 생성 로직을 더 포함한다. 다른 실시예에서, 제1 모드를 검출하는 모드 평가 로직은, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 생성 후에, 제1 모드의 구성을 요청하는 신호를 검출하는 모드 평가 로직을 포함한다.
다른 구현에서, 디바이스는 시스템의 복수의 구성요소들 - 복수의 구성요소들 각각은 각자의 주소 기본값에 대응함 - 을 식별하도록 구성된 회로를 포함하는 모드 평가 로직을 포함하고, 모드 평가 로직은 시스템의 복수의 모드들 - 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 ta 값에 대응함 - 을 식별하도록 추가로 구성되어 있다. 본 디바이스는 ta 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Ta 값을 나타내는 정보를 모드 평가 로직으로부터 수신하도록 구성된 회로를 포함하는 풀 생성 로직을 더 포함하고, 풀 생성 로직은 또한 고정된 복수의 식별자들 중 하나 이상의 제1 식별자들을 활성 구성요소 식별자 풀에 할당하고, 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당한다.
일 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 복수의 구성요소들의 총수 미만이다. 다른 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합한다. 다른 실시예에서, 복수의 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초한다. 다른 실시예에서, 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고, 풀 생성 로직은 또한 tpmax 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하며, 풀 생성 로직은, Tpmax에 추가로 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당한다.
다른 구현에서, 방법은 시스템의 복수의 구성요소들 - 복수의 구성요소들 각각은 각자의 주소 기본값에 대응함 - 을 식별하는 단계, 시스템의 복수의 모드들 - 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 ta 값에 대응함 - 을 식별하는 단계, ta 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Ta 값을 결정하는 단계, 그리고 Ta 값에 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제1 식별자들을 활성 구성요소 식별자 풀에 할당하는 단계, 및 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당하는 단계를 포함한다.
일 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 복수의 구성요소들의 총수 미만이다. 다른 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합한다. 다른 실시예에서, 복수의 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초한다.
다른 실시예에서, 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고, 풀 생성 로직은 또한 tpmax 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하며, 풀 생성 로직은, Tpmax에 추가로 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당한다.
다른 구현에서, 비일시적 컴퓨터 판독 가능 저장 매체는, 하나 이상의 처리 유닛들에 의해 실행될 때, 하나 이상의 처리 유닛들로 하여금 방법을 수행하게 하는 명령어들을 저장하고, 이 방법은 시스템의 복수의 구성요소들 - 복수의 구성요소들 각각은 각자의 주소 기본값에 대응함 - 을 식별하는 단계, 및 시스템의 복수의 모드들 - 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 ta 값에 대응함 - 을 식별하는 단계를 포함한다. 이 방법은 ta 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Ta 값을 결정하는 단계, 그리고 Ta 값에 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제1 식별자들을 활성 구성요소 식별자 풀에 할당하는 단계, 및 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당하는 단계를 더 포함한다.
일 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 복수의 구성요소들의 총수 미만이다. 다른 실시예에서, 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 식별자들의 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합한다. 다른 실시예에서, 복수의 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초한다. 다른 실시예에서, 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 복수의 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고, 풀 생성 로직은 또한 tpmax 값들 - 각각은 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하며, 풀 생성 로직은, Tpmax에 추가로 기초하여, 고정된 복수의 식별자들 중 하나 이상의 제2 식별자들을 비활성 구성요소 식별자 풀에 할당한다.
제어 인터페이스를 통해 액세스되는 구성요소들을 구성하는 기법들 및 아키텍처들이 본 명세서에 기술되어 있다. 이상의 설명에서, 설명의 목적상, 특정 실시예들의 완전한 이해를 제공하기 위해 다수의 구체적인 상세들이 기재되어 있다. 그렇지만, 특정 실시예들이 이 구체적인 상세들 없이 실시될 수 있다는 것이 통상의 기술자에게는 명백할 것이다. 다른 경우들에서, 이 설명을 불필요하게 모호하게 하는 것을 피하기 위해, 구조들 및 디바이스들이 블록도 형태로 도시되어 있다.
명세서에서의 "하나의 실시예" 또는 "일 실시예"에 대한 언급은 실시예들과 관련되어 기술된 특정의 특징, 구조, 또는 특성이 본 발명의 적어도 하나의 실시예에 포함된다는 것을 의미한다. 본 명세서의 여러 곳에서 나오는 "하나의 실시예에서"라는 문구가 모두 동일한 실시예를 지칭하는 것은 아니다.
본 명세서에서의 상세한 설명의 어떤 부분들이 컴퓨터 메모리 내에서의 데이터 비트들에 대한 연산들의 알고리즘들 및/또는 심볼 표현들로 제시되어 있다. 이 알고리즘적 설명들 및 표현들은 컴퓨팅 기술 분야의 통상의 기술자들이 다른 통상의 기술자들에게 자신의 연구의 내용을 가장 효과적으로 전달하기 위해 사용하는 수단이다. 알고리즘은, 여기서 그리고 일반적으로, 원하는 결과를 가져오는 단계들의 일관성 있는 시퀀스인 것으로 여겨진다. 단계들은 물리적 양들의 물리적 조작들을 필요로 하는 것이다. 꼭 그럴 필요는 없지만, 보통 이 양들은 저장, 전송, 결합, 비교, 그리고 다른 방식으로 조작될 수 있는 전기 또는 자기 신호들의 형태를 갖는다. 원칙적으로 흔히 사용되기 때문에, 이 신호들을 비트, 값, 요소, 심볼, 문자, 용어, 숫자 등으로 지칭하는 것이 때로는 편리한 것으로 밝혀졌다.
그렇지만, 이 용어들 및 유사한 용어들 모두가 적절한 물리적 양들과 연관되어 있고 이 양들에 적용되는 편리한 명칭들에 불과하다는 것을 염두에 두어야 한다. 달리 구체적으로 언급하지 않는 한, 본 명세서에서의 논의로부터 명백한 바와 같이, 이 설명 전체에 걸쳐, "처리" 또는 "계산" 또는 "산출" 또는 "결정" 또는 "디스플레이" 기타 등등의 용어들을 이용하는 논의들이, 컴퓨터 시스템의 레지스터들 및 메모리들 내에 물리적(전자적) 양들로 표현된 데이터를, 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 이러한 정보 저장, 전송 또는 디스플레이 디바이스들 내의 물리적 양들로 유사하게 표현되는 다른 데이터로 조작하고 변환하는 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 디바이스의 동작 및 프로세스를 지칭한다는 것을 잘 알 것이다.
특정 실시예들은 또한 본 명세서에서의 동작들을 수행하기 위한 장치에 관한 것이다. 이 장치는 요구된 목적들을 위해 특별히 구성될 수 있거나, 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성되는 범용 컴퓨터를 포함할 수 있다. 이러한 컴퓨터 프로그램은, 전자 명령어들을 저장하는 데 적합하고 컴퓨터 시스템 버스에 결합되어 있는, 플로피 디스크, 광 디스크, CD-ROM, 및 광자기 디스크를 비롯한 임의의 유형의 디스크, ROM(read-only memory), RAM(random access memory)[DRAM(dynamic RAM) 등], EPROM, EEPROM, 자기 또는 광 카드, 또는 임의의 유형의 매체(이들로 제한되지 않음)와 같은 컴퓨터 판독 가능 저장 매체에 저장될 수 있다.
본 명세서에 제시되는 알고리즘들 및 디스플레이들이 임의의 특정의 컴퓨터 또는 다른 장치에 본질적으로 관련되어 있는 것은 아니다. 다양한 범용 시스템들이 본 명세서에서의 개시 내용에 따라 프로그램들과 함께 사용될 수 있거나, 요구된 방법 단계들을 수행하도록 보다 특수화된 장치를 구성하는 것이 편리한 것으로 판명될 수 있다. 각종의 이 시스템들에 대해 요구된 구조가 본 명세서에서의 설명으로부터 나타날 것이다. 그에 부가하여, 특정 실시예들이 임의의 특정의 프로그래밍 언어를 참조하여 기술되어 있지 않다. 각종의 프로그래밍 언어들이 본 명세서에 기술된 것과 같은 실시예들의 교시 내용을 구현하는 데 사용될 수 있다는 것을 알 것이다.
본 명세서에 기술된 것 이외에, 개시된 실시예들 및 그의 구현들에 대해 그들의 범주를 벗어남이 없이 다양한 수정들이 행해질 수 있다. 따라서, 본 명세서에서의 예시들 및 예들은 제한적인 의미가 아니라 예시적인 의미로 해석되어야 한다. 본 발명의 범주는 이하의 청구범위를 참조해서만 결정되어야 한다.

Claims (24)

  1. 디바이스로서,
    무선 주파수 프런트 엔드의 시스템의 제1 모드를 검출하고, 그에 응답하여, 상기 시스템의 버스에 결합된 제1 세트의 하나 이상의 슬레이브 구성요소들 - 상기 제1 세트의 하나 이상의 슬레이브 구성요소들은 상기 제1 모드 동안 활성(active)이어야 함 -; 및 상기 시스템의 버스에 결합된 제2 세트의 하나 이상의 슬레이브 구성요소들 - 상기 제2 세트의 하나 이상의 슬레이브 구성요소들은 상기 제1 모드 동안 비활성(passive)이어야 함 - 을 식별하도록 구성된 회로를 포함하는 모드 평가 로직(mode evaluation logic); 및
    제3 세트의 고유한 슬레이브 식별자들의 슬레이브 식별자들 각각을 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 각자의 풀에 할당하고 - 상기 제3 세트는 상기 제1 모드를 구성하기 위하여 선택되도록 이용가능한 모든 슬레이브 식별자들을 포함함 - ; 상기 활성 구성요소 식별자 풀의 상이한 각자의 슬레이브 식별자들을 상기 제1 세트의 하나 이상의 슬레이브 구성요소 각각에 할당하고; 상기 비활성 구성요소 식별자 풀의 각자의 슬레이브 식별자를 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 각각에 할당하도록 구성된 회로를 포함하는 할당 로직(assignment logic) - 상기 할당 로직은 상이한 각자의 슬레이브 식별자들을 동일한 주소 기본값(address default)들을 가지는 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 중 임의의 2개의 구성요소에 할당함 -
    을 포함하는, 디바이스.
  2. 제1항에 있어서, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 슬레이브 식별자들의 총수는 상기 제1 세트의 하나 이상의 슬레이브 구성요소들 및 상기 제2 세트의 하나 이상의 슬레이브 구성요소들의 총수 미만인, 디바이스.
  3. 제2항에 있어서, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 슬레이브 식별자들의 상기 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스(MIPI Radio Frequency Front-End Interface) 규격 또는 MIPI 시스템 전력 관리 인터페이스(MIPI System Power Management Interface) 규격에 의해 규정된 한도에 부합하는, 디바이스.
  4. 제1항에 있어서, 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초하는, 디바이스.
  5. 제1항에 있어서, 상기 모드 평가 로직은 또한 상기 시스템의 복수의 슬레이브 구성요소들을 식별하고 상기 시스템의 복수의 모드들을 식별하며, 상기 복수의 슬레이브 구성요소들은 상기 제1 세트의 하나 이상의 슬레이브 구성요소들 및 상기 제2 세트의 하나 이상의 슬레이브 구성요소들을 포함하고, 상기 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 상기 복수의 슬레이브 구성요소들의 총수와 같은 각자의 ta 값에 대응하며,
    상기 디바이스는 Ta 값을 결정하는 풀 생성 로직을 더 포함하고, 상기 Ta 값은 각각의 값이 상기 복수의 모드들의 각자의 모드에 대응하는 ta 값들 중 가장 큰 값과 동일하고, 상기 Ta 값에 기초하여:
    상기 풀 생성 로직은 고정된 복수의 슬레이브 식별자들 중 하나 이상의 제1 식별자들을 상기 활성 구성요소 식별자 풀에 할당하고;
    상기 풀 생성 로직은 상기 고정된 복수의 슬레이브 식별자들 중 하나 이상의 제2 식별자들을 상기 비활성 구성요소 식별자 풀에 할당하는, 디바이스.
  6. 제5항에 있어서, 상기 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 상기 복수의 슬레이브 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고, 상기 풀 생성 로직은 또한 상기 tpmax 값들 - 각각은 상기 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하며, 상기 풀 생성 로직은, Tpmax에 또한 기초하여, 상기 고정된 복수의 슬레이브 식별자들 중 상기 하나 이상의 제2 식별자들을 상기 비활성 구성요소 식별자 풀에 할당하는, 디바이스.
  7. 제1항에 있어서, 상기 제1 모드의 구성을 요청하는 신호에 응답하여 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀을 생성하는 풀 생성 로직을 더 포함하는, 디바이스.
  8. 제1항에 있어서, 상기 제1 모드를 검출하는 상기 모드 평가 로직은, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 생성 후에, 상기 제1 모드의 구성을 요청하는 신호를 검출하는 상기 모드 평가 로직을 포함하는, 디바이스.
  9. 방법으로서,
    무선 주파수 프런트 엔드의 시스템의 제1 모드를 검출하는 단계 - 상기 시스템은, 복수의 슬레이브 구성요소들 각각이 각자의 주소 기본값에 대응하는 복수의 슬레이브 구성요소들을 포함함 -;
    고유한 슬레이브 식별자들의 세트의 슬레이브 식별자들 각각을 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 각자의 풀에 할당하는 단계 - 상기 고유한 슬레이브 식별자들의 세트는 상기 제1 모드를 구성하기 위해 선택되도록 이용가능한 모든 슬레이브 식별자들을 포함함 -;
    상기 시스템의 제1 세트의 하나 이상의 슬레이브 구성요소들을 식별하는 단계 - 상기 제1 세트의 하나 이상의 슬레이브 구성요소는 상기 제1 모드 동안 활성이어야 함 -;
    상기 활성 구성요소 식별자 풀의 상이한 각자의 슬레이브 식별자들을 상기 제1 세트의 하나 이상의 슬레이브 구성요소들 각각에 할당하는 단계;
    상기 시스템의 제2 세트의 하나 이상의 슬레이브 구성요소들을 식별하는 단계 - 상기 제2 세트의 하나 이상의 슬레이브 구성요소들은 상기 제1 모드 동안 비활성이어야 함 -; 및
    상기 비활성 구성요소 식별자 풀의 각자의 슬레이브 식별자를 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 각각에 할당하는 단계 - 상기 할당하는 단계는 상이한 각자의 슬레이브 식별자들을 동일한 주소 기본값들을 가지는 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 중 임의의 2개의 구성요소에 할당하는 단계를 포함함 -
    를 포함하는, 방법.
  10. 제9항에 있어서, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 슬레이브 식별자들의 총수는 상기 복수의 슬레이브 구성요소들의 총수 미만인, 방법.
  11. 제10항에 있어서, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 슬레이브 식별자들의 상기 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합하는, 방법.
  12. 제9항에 있어서, 상기 복수의 슬레이브 구성요소들 중 하나의 구성요소의 주소 기본값은 제조업체 식별자 또는 공급업체 식별자에 기초하는, 방법.
  13. 제9항에 있어서,
    상기 시스템의 상기 복수의 슬레이브 구성요소들을 식별하는 단계 - 상기 복수의 슬레이브 구성요소들은 상기 제1 세트의 하나 이상의 슬레이브 구성요소들 및 상기 제2 세트의 하나 이상의 슬레이브 구성요소들을 포함함 - ;
    상기 시스템의 복수의 모드들을 식별하는 단계 - 상기 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 상기 복수의 슬레이브 구성요소들의 총수와 같은 각자의 ta 값에 대응함 -;
    상기 ta 값들 중 가장 큰 값과 같은 Ta 값을 결정하는 단계 - 상기 ta 값들 각각은 상기 복수의 모드들의 각자의 모드에 대응함 -;
    상기 Ta 값에 기초하여:
    고정된 복수의 슬레이브 식별자들 중 하나 이상의 제1 식별자들을 상기 활성 구성요소 식별자 풀에 할당하는 단계; 및
    상기 고정된 복수의 슬레이브 식별자들 중 하나 이상의 제2 식별자들을 상기 비활성 구성요소 식별자 풀에 할당하는 단계
    를 더 포함하는, 방법.
  14. 제13항에 있어서, 상기 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 상기 복수의 슬레이브 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고,
    상기 방법은 Tpmax 값을 결정하는 단계를 더 포함하고; 상기 Tpmax 값은 각각의 값이 상기 복수의 모드들의 각자의 모드에 대응하는 tpmax 값들 중 가장 큰 값과 동일하고,
    상기 고정된 복수의 슬레이브 식별자들 중 상기 하나 이상의 제2 식별자들을 상기 비활성 구성요소 식별자 풀에 할당하는 단계는 Tpmax에 또한 기초하는, 방법.
  15. 하나 이상의 처리 유닛들에 의해 실행될 때, 상기 하나 이상의 처리 유닛들로 하여금 방법을 수행하게 하는 명령어들을 저장하는 비일시적 컴퓨터 판독 가능 저장 매체로서,
    상기 방법은
    무선 주파수 프런트 엔드의 시스템의 제1 모드를 검출하는 단계 - 상기 시스템은 복수의 슬레이브 구성요소들 각각이 각자의 주소 기본값에 대응하는 복수의 슬레이브 구성요소들을 포함함 - ;
    고유한 슬레이브 식별자들의 세트의 슬레이브 식별자들 각각을 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 각자의 풀에 할당하는 단계 - 상기 고유한 슬레이브 식별자들의 세트는 상기 제1 모드를 구성하기 위해 선택되도록 이용가능한 모든 슬레이브 식별자들을 포함함 - ;
    상기 시스템의 제1 세트의 하나 이상의 슬레이브 구성요소들을 식별하는 단계 - 상기 제1 세트의 하나 이상의 슬레이브 구성요소들은 상기 제1 모드 동안 활성이어야 함 - ;
    상기 활성 구성요소 식별자 풀의 상이한 각자의 슬레이브 식별자들을 상기 제1 세트의 하나 이상의 슬레이브 구성요소들 각각에 할당하는 단계;
    상기 시스템의 제2 세트의 하나 이상의 슬레이브 구성요소들을 식별하는 단계 - 상기 제2 세트의 하나 이상의 슬레이브 구성요소는 상기 제1 모드 동안 비활성이어야 함 - ; 및
    상기 비활성 구성요소 식별자 풀의 각자의 슬레이브 식별자들을 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 각각에 할당하는 단계 - 상기 할당하는 단계는 상이한 각자의 슬레이브 식별자들을 동일한 주소 기본값들을 가지는 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 중 임의의 2개의 구성요소에 할당하는 단계를 포함함 -
    를 포함하는, 컴퓨터 판독 가능 저장 매체.
  16. 제15항에 있어서, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 슬레이브 식별자들의 총수는 상기 복수의 슬레이브 구성요소들의 총수 미만인, 컴퓨터 판독 가능 저장 매체.
  17. 제16항에 있어서, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 슬레이브 식별자들의 상기 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합하는, 컴퓨터 판독 가능 저장 매체.
  18. 제15항에 있어서, 상기 방법은
    상기 시스템의 상기 복수의 슬레이브 구성요소들을 식별하는 단계 - 상기 복수의 슬레이브 구성요소들은 상기 제1 세트의 하나 이상의 슬레이브 구성요소들 및 상기 제2 세트의 하나 이상의 슬레이브 구성요소들을 포함함 - ;
    상기 시스템의 복수의 모드들을 식별하는 단계 - 상기 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 상기 복수의 슬레이브 구성요소들의 총수와 같은 각자의 ta 값에 대응함 -;
    상기 ta 값들 중 가장 큰 값과 같은 Ta 값을 결정하는 단계 - 상기 ta 값들 각각은 상기 복수의 모드들의 각자의 모드에 대응함 -;
    상기 Ta 값에 기초하여:
    고정된 복수의 슬레이브 식별자들 중 하나 이상의 제1 식별자들을 상기 활성 구성요소 식별자 풀에 할당하는 단계; 및
    상기 고정된 복수의 슬레이브 식별자들 중 하나 이상의 제2 식별자들을 상기 비활성 구성요소 식별자 풀에 할당하는 단계를 더 포함하는, 컴퓨터 판독 가능 저장 매체.
  19. 제18항에 있어서, 상기 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 상기 복수의 슬레이브 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고,
    상기 방법은 Tpmax 값을 결정하는 단계를 더 포함하고,
    상기 Tpmax 값은 각각의 값이 상기 복수의 모드들의 각자의 모드에 대응하는 tpmax 값들 중 가장 큰 값과 동일하고,
    상기 고정된 복수의 슬레이브 식별자들 중 상기 하나 이상의 제2 식별자들을 상기 비활성 구성요소 식별자 풀에 할당하는 단계는 Tpmax에 또한 기초하는, 컴퓨터 판독 가능 저장 매체.
  20. 시스템으로서,
    복수의 슬레이브 구성요소들 - 복수의 슬레이브 구성요소들 각각은 각자의 주소 기본값에 대응함 -;
    버스; 및
    상기 버스를 통해 상기 복수의 슬레이브 구성요소들에 결합된 관리자 디바이스(manager device)
    를 포함하고,
    상기 관리자 디바이스는
    상기 시스템의 제1 모드를 검출하고, 그에 응답하여, 상기 복수의 슬레이브 구성요소들 중 제1 세트의 하나 이상의 슬레이브 구성요소들 - 상기 제1 세트의 상기 하나 이상의 슬레이브 구성요소들은 상기 제1 모드 동안 활성이어야 함 -; 및 상기 복수의 슬레이브 구성요소들 중 제2 세트의 하나 이상의 슬레이브 구성요소들 - 상기 제2 세트의 하나 이상의 슬레이브 구성 요소들은 상기 제1 모드 동안 비활성이어야 함 - 을 식별하도록 구성된 회로를 포함하는 모드 평가 로직;
    제3 세트의 고유한 슬레이브 식별자들의 슬레이브 식별자들 각각을 활성 구성요소 식별자 풀 및 비활성 구성요소 식별자 풀의 각자의 풀에 할당하고 - 상기 제3 세트는 상기 제1 모드를 구성하기 위하여 선택되도록 이용가능한 모든 슬레이브 식별자들을 포함함 - ; 상기 활성 구성요소 식별자 풀의 상이한 각자의 슬레이브 식별자들을 상기 제1 세트의 하나 이상의 슬레이브 구성요소 각각에 할당하고; 상기 비활성 구성요소 식별자 풀의 각자의 슬레이브 식별자를 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 각각에 할당하도록 구성된 회로를 포함하는 할당 로직 - 상기 할당 로직은 상이한 각자의 슬레이브 식별자들을 동일한 주소 기본값들을 가지는 상기 제2 세트의 하나 이상의 슬레이브 구성요소들 중 임의의 2개의 구성요소에 할당함 -
    을 포함하는, 시스템.
  21. 제20항에 있어서, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 슬레이브 식별자들의 총수는 상기 복수의 슬레이브 구성요소들의 총수 미만인, 시스템.
  22. 제21항에 있어서, 상기 활성 구성요소 식별자 풀 및 상기 비활성 구성요소 식별자 풀의 슬레이브 식별자들의 상기 총수는 MIPI 무선 주파수 프런트 엔드 인터페이스 규격 또는 MIPI 시스템 전력 관리 인터페이스 규격에 의해 규정된 한도에 부합하는, 시스템.
  23. 제20항에 있어서, 상기 모드 평가 로직은 또한 상기 복수의 슬레이브 구성요소들을 식별하고 상기 시스템의 복수의 모드들을 식별하며, 상기 복수의 슬레이브 구성요소들은 상기 제1 세트의 하나 이상의 슬레이브 구성요소 및 상기 제2 세트의 하나 이상의 슬레이브 구성요소들을 포함하고, 상기 복수의 모드들 각각은 그 모드 동안 활성이어야 하는 상기 복수의 슬레이브 구성요소들의 총수와 같은 각자의 ta 값에 대응하며,
    상기 관리자 디바이스는 Ta 값을 결정하는 풀 생성 로직을 더 포함하고, 상기 Ta 값은 각각의 값이 상기 복수의 모드들의 각자의 모드에 대응하는 ta 값 중 가장 큰 값과 동일하고, 상기 Ta 값에 기초하여:
    상기 풀 생성 로직은 고정된 복수의 슬레이브 식별자들 중 하나 이상의 제1 식별자들을 상기 활성 구성요소 식별자 풀에 할당하고;
    상기 풀 생성 로직은 상기 고정된 복수의 슬레이브 식별자들 중 하나 이상의 제2 식별자들을 상기 비활성 구성요소 식별자 풀에 할당하는, 시스템.
  24. 제23항에 있어서, 상기 복수의 모드들 각각은 또한 동일한 주소 기본값에 대응하고 그 모드 동안 비활성이어야 하는 상기 복수의 슬레이브 구성요소들의 총수와 같은 각자의 tpmax 값에 대응하고, 상기 풀 생성 로직은 또한 상기 tpmax 값들 - 각각은 상기 복수의 모드들의 각자의 모드에 대응함 - 중 가장 큰 값과 같은 Tpmax 값을 결정하며, 상기 풀 생성 로직은, Tpmax에 또한 기초하여, 상기 고정된 복수의 슬레이브 식별자들 중 상기 하나 이상의 제2 식별자들을 상기 비활성 구성요소 식별자 풀에 할당하는, 시스템.
KR1020150156892A 2014-12-12 2015-11-09 제어 시스템의 구성요소에 식별자를 할당하는 장치, 시스템 및 방법 KR101821016B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/569,521 2014-12-12
US14/569,521 US9602464B2 (en) 2014-12-12 2014-12-12 Apparatus, system and method for allocating identifiers to components of a control system

Publications (2)

Publication Number Publication Date
KR20160072013A KR20160072013A (ko) 2016-06-22
KR101821016B1 true KR101821016B1 (ko) 2018-01-22

Family

ID=54542012

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150156892A KR101821016B1 (ko) 2014-12-12 2015-11-09 제어 시스템의 구성요소에 식별자를 할당하는 장치, 시스템 및 방법

Country Status (6)

Country Link
US (1) US9602464B2 (ko)
EP (1) EP3032752B1 (ko)
JP (1) JP6033942B2 (ko)
KR (1) KR101821016B1 (ko)
CN (1) CN105700421B (ko)
TW (1) TWI569147B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10970243B2 (en) * 2016-01-29 2021-04-06 Qorvo Us, Inc. Front end serial bus automatic bus park tri-state activation
CN105871399B (zh) * 2016-06-23 2018-05-04 广东欧珀移动通信有限公司 射频通信模块、射频前端模块及其控制方法
US10579549B2 (en) * 2017-12-05 2020-03-03 Qualcomm Incorporated Staggered transmissions on a multi-drop half-duplex bus
US10838898B2 (en) * 2017-12-05 2020-11-17 Qualcomm Incorporated Bit-interleaved bi-directional transmissions on a multi-drop bus for time-critical data exchange
CN112732342B (zh) * 2020-12-24 2022-12-30 展讯通信(上海)有限公司 一种初始化usid的方法、装置和电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110307632A1 (en) 2010-06-15 2011-12-15 Gernot Hueber Method of identifying devices on a bus and apparatus
US20120110218A1 (en) 2010-11-01 2012-05-03 Analog Devices, Inc. Auto-Detection and Mode Switching for Digital Interface
US20140325103A1 (en) 2012-01-30 2014-10-30 Infineon Technologies Ag System and Method for a Bus Interface

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241264A (ja) 1995-03-07 1996-09-17 Fujitsu Ltd オプション装置およびそれが接続される情報処理装置
US6981080B2 (en) 2001-01-31 2005-12-27 Hewlett-Packard Development Company, L.P. Look-up table based USB identification
JP2005004478A (ja) 2003-06-12 2005-01-06 Canon Finetech Inc 情報処理システム、情報書き込み装置
EP1662707B1 (en) * 2003-07-23 2019-10-30 Sony Interactive Entertainment Inc. Communication device, game system, connection establishment method, communication method, adapter device, and communication system
JP2006133996A (ja) 2004-11-04 2006-05-25 Canon Inc シリアル通信のシステム及び方法
TWI315035B (en) 2005-06-03 2009-09-21 Hon Hai Prec Ind Co Ltd Circuit for identifying cpu front side bus
US20090037610A1 (en) * 2007-07-31 2009-02-05 Krancher Robort E Electronic device interface control system
US8199759B2 (en) 2009-05-29 2012-06-12 Intel Corporation Method and apparatus for enabling ID based streams over PCI express
CN101996146B (zh) * 2009-08-26 2013-08-07 戴尔产品有限公司 多模式处理模块及其使用方法
JP2012178122A (ja) 2011-02-28 2012-09-13 Seiko Epson Corp デバイスシステムおよび中継器
US20120303836A1 (en) * 2011-05-23 2012-11-29 Rf Micro Devices, Inc. Slave id configuration
US8761698B2 (en) 2011-07-27 2014-06-24 Intel Mobile Communications GmbH Transmit circuit, method for adjusting a bias of a power amplifier and method for adapting the provision of a bias information
US9325353B2 (en) * 2011-09-16 2016-04-26 Rf Micro Devices, Inc. Architecture for a radio frequency front-end
TW201329731A (zh) 2012-01-06 2013-07-16 Ite Tech Inc 用於識別通用串列匯流排(usb)和移動高解析度鏈接(mhl)設備的一種裝置和其方法
US20130191572A1 (en) * 2012-01-23 2013-07-25 Qualcomm Incorporated Transaction ordering to avoid bus deadlocks
US20130257667A1 (en) * 2012-03-30 2013-10-03 Broadcom Corporation Antenna Tuning
JP5999184B2 (ja) 2012-08-01 2016-09-28 富士通株式会社 情報処理装置、制御方法、及び制御プログラム
US9276623B2 (en) * 2013-08-20 2016-03-01 Aviacomm Inc. Cost effective multiband RF front-end architecture for mobile applications
US9720872B2 (en) * 2013-10-10 2017-08-01 Qorvo Us, Inc. Auto-configuration of devices based upon configuration of serial input pins and supply

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110307632A1 (en) 2010-06-15 2011-12-15 Gernot Hueber Method of identifying devices on a bus and apparatus
US20120110218A1 (en) 2010-11-01 2012-05-03 Analog Devices, Inc. Auto-Detection and Mode Switching for Digital Interface
US20140325103A1 (en) 2012-01-30 2014-10-30 Infineon Technologies Ag System and Method for a Bus Interface

Also Published As

Publication number Publication date
JP2016115338A (ja) 2016-06-23
TWI569147B (zh) 2017-02-01
TW201631491A (zh) 2016-09-01
CN105700421A (zh) 2016-06-22
EP3032752A1 (en) 2016-06-15
EP3032752B1 (en) 2018-08-29
US9602464B2 (en) 2017-03-21
KR20160072013A (ko) 2016-06-22
US20160173443A1 (en) 2016-06-16
CN105700421B (zh) 2018-10-12
JP6033942B2 (ja) 2016-11-30

Similar Documents

Publication Publication Date Title
CN110704155B (zh) 容器网络构建方法及装置、物理主机、数据传输方法
KR101821016B1 (ko) 제어 시스템의 구성요소에 식별자를 할당하는 장치, 시스템 및 방법
US9531668B2 (en) Micro server, method of allocating MAC address, and computer readable recording medium
USRE49226E1 (en) UEFI and operating system driver methods for updating MAC address in LAN-based NIC
CN106776067B (zh) 多容器系统中系统资源的管理方法及管理装置
US11740810B2 (en) Mirrored memory configuration method and apparatus, and computer storage medium
CN110637272A (zh) 处理核组的动态最大频率极限
EP2704009A2 (en) Information processing apparatus, information processing method, and program
JP6092905B2 (ja) 複数のオペレーティングシステムを動作させる方法および電子装置
WO2020113478A1 (zh) 地址信息处理方法、装置、电子设备及存储介质
CN109284153A (zh) 单机体验多操作系统的方法、相关设备及计算机介质
US8386659B2 (en) Configuration adaptation layer for mapping I/O device resources
GB2504696A (en) Detecting whether to install modem software or to use intrinsic software of a host
KR20190046470A (ko) Arp를 수행하는 슬레이브 장치 및 이의 동작 방법
US20170372058A1 (en) System and Method for Securing Secure Memory Allocations in an Information Handling System
US11012372B2 (en) Electronic apparatus and method for control thereof
US10169274B1 (en) System and method for changing a slave identification of integrated circuits over a shared bus
WO2016040189A1 (en) System and method for sharing a solid-state non-volatile memory resource
US20180227265A1 (en) Use of a network address by a network accessory
JP2017535119A (ja) 干渉軽減のための優先順位調停
TWI556171B (zh) 主機板及開機的方法
US20230409343A1 (en) Location-based computer configuration
US20220107841A1 (en) Electronic device and method for controlling electronic device
CN117742890A (zh) 一种虚拟机的创建方法、装置、设备及存储介质
CN116578350A (zh) 通信接口功能配置方法、装置、通信系统、设备及介质

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant