KR20140113569A - 저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치 - Google Patents

저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치 Download PDF

Info

Publication number
KR20140113569A
KR20140113569A KR1020140030610A KR20140030610A KR20140113569A KR 20140113569 A KR20140113569 A KR 20140113569A KR 1020140030610 A KR1020140030610 A KR 1020140030610A KR 20140030610 A KR20140030610 A KR 20140030610A KR 20140113569 A KR20140113569 A KR 20140113569A
Authority
KR
South Korea
Prior art keywords
logic
state
receive
transmit
processor
Prior art date
Application number
KR1020140030610A
Other languages
English (en)
Other versions
KR101591818B1 (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 KR20140113569A publication Critical patent/KR20140113569A/ko
Application granted granted Critical
Publication of KR101591818B1 publication Critical patent/KR101591818B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3253Power saving in bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3278Power saving in modem or I/O interface
    • 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
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0203Power saving arrangements in the radio access network or backbone network of wireless communication networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

최저 전력 상태로의 포트 진입을 동기시키는 시스템, 장치 및 방법이 기술된다. 포트의 모든 로직은 최저 전력 상태로의 진입 전에 중간 상태 안에 놓여진다.

Description

저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치{SYSTEMS, METHODS, AND APPARATUSES FOR SYNCHRONIZING PORT ENTRY INTO A LOW POWER STATE}
다수의 애플리케이션들을 위해 매력이기에 충분한 융통성을 제공하지만 하나의 물리 계층 기술로 커버될 수도 있는 8(네트워크) 인터페이스들에 관한 것이다. 모바일 산업 프로세서 인터페이스 연맹(Mobile Industry Processor Interface Alliance; MIPI)은 몇몇 고속 시리얼 링크 규격들을 정의한다.
MIPI의 M-PHY(모바일 플랫폼들을 위해 개발된 물리 계층 기술)는 각각이 여러 속도 기어들을 지원하는 저속 및 고속의 두 가지 전송 모드들을 제공하고, 고속 모드용 STALL, 저속 모드용 SLEEP, 및 HIBERN8이라는 여러 전력 절감 상태들을 또한 지원할 것이다. STALL 및 SLEEP은 그들 각자의 전송 모드들에서 빠른 기동(wakeup)을 위해 최적화된 반면, HIBERN8은 보다 긴 기동 시간을 가지는 초저전력 모드이다. M-PHY 또한 광학 링크들을 지원하기 위해 정의된다.
본 발명은 유사한 참조 부호가 유사한 구성요소를 나타내는 첨부 도면들의 도형들에서 한정이 아닌 예로서 예시된다. 본 개시의 "일(an 또는 one)" 실시예에 대한 다양한 언급들이 반드시 동일한 실시예에 대한 것은 아니라는 것을 알아야 하며, 그러한 언급들은 적어도 하나를 의미한다. 또한 특정한 특성, 구조, 또는 특징이 어떤 실시예와 관련하여 기술될 때, 그것은 본 명세서에 명시적으로 기술되든지 그렇지 않든지 여부와 무관하게 다른 실시예들과 관련하여 그러한 특성, 구조, 또는 특징에 영향을 미치는 당업자의 지식 내에 있다고 할 수 있다.
도 1은 예시적 M-PHY 링크를 도시한다.
도 2는 PCI-Expres에서 사용할 MPI M-PHY의 예시적 적응예를 도시한다.
도 3은 다른 뷰에서의 PCLe 구현예의 실시예를 도시한다.
도 4는 M-PHY의 HIBERN8으로 진입하기 위한 예시적 타이밍 고려사항들을 도시한다.
도 5는 포트들에 걸쳐 HIBERN8로의 진입을 동기화하기 위한 방법의 실시예를 도시한다.
도 6은 도 5의 방법의 동작 시의 원리들을 예시한 예시적 타이밍도를 도시한다.
도 7은 PCIe(peripheral component interconnect express) 호환 구조를 포함하는 컴퓨터 시스템의 실시예를 도시한다.
도 8은 계층화된 스택을 포함하는 PCIe 호환 상호연결 구조의 실시예를 도시한다.
도 9는 상호연결 구조 안에서 생성되거나 수신될 PCIe 호환 요청 또는 패킷의 실시예를 도시한다.
도 10은 PCIe 호환 상호연결 구조를 위한 송신기 및 수신기 한 쌍의 실시예를 도시한다.
도 11은 저전력 컴퓨팅 플랫폼의 실시예를 도시한다.
도 12는 상호연결 구조의 서로 다른 물리 계층들로 전송될 서로 다른 프로토콜들의 실시예를 도시한다.
도 13은 컴퓨팅 시스템의 블록도의 실시예를 도시한다.
도 14는 컴퓨팅 시스템의 블록도의 다른 실시예를 도시한다.
이하의 설명에서 수많은 구체적 세부사항들이 기술된다. 그러나, 그러한 세부 사항들 없이 본 발명의 실시예들이 실시될 수 있다는 것을 알 수 있다. 다른 예들에서, 본 설명의 이해를 모호하게 하지 않도록 잘 알려진 회로들, 구조들 및 기법들은 상세히 도시되지 않았다. 그러나 당업자에게는 본 발명이 그러한 특정 세부사항들 없이도 실시될 수 있다는 것이 예상될 수 있을 것이다. 당업자는 포함된 내용을 통해 과도한 실험 없이도 적합한 기능을 구현할 수 있을 것이다.
명세서에서 "일 실시예(one embodiment 또는 an embodiment)", "예시적 실시예(an example embodiment)" 등의 언급들은 기술된 해당 실시예가 특정한 특성, 구조 또는 특징을 포함할 수 있음을 표시하지만, 모든 실시예가 반드시 그러한 특정한 특성, 구조 또는 특징을 포함하지 않을 수도 있다. 또한 그러한 말들이 반드시 동일한 실시예를 언급하는 것은 아니다. 또한 특정한 특성, 구조, 또는 특징이 어떤 실시예와 관련하여 기술될 때, 그것은 본 명세서에 명시적으로 기술되든지 그렇지 않든지 여부와 무관하게 다른 실시예들과 관련하여 그러한 특성, 구조, 또는 특징을 구현하는 당업자의 지식 안에 있다고 할 수 있다. 이하의 설명 및 청구범위에서, "결합된다"와 "연결된다"라는 용어들이 이들의 파생어들과 함께 사용될 수 있다. 이 용어들이 서로 동의어들로서 의도되는 것은 아님을 알아야 한다. "결합된다"는 서로 직접적인 물리적 혹은 전기적 접촉 중에 있거나 그렇지 않을 수 있는 둘 이상의 구성요소들이 서로 함께 협력하거나 상호 동작한다는 것을 가리키기 위해 사용된다. "연결된다"는 서로 결합된 둘 이상의 구성요소들 사이의 통신의 수립을 가리키기 위해 사용된다.
한 상호연결 패브릭 구조는 PCI 익스프레스(Peripheral Component Interconnect express; PCIe) 구조를 포함한다. PCIe의 기본 목표는 서로 다른 회사들에서 나온 구성요소들 및 장치들이 클라이언트들(데스크탑들 및 모바일), 서버들(스탠다드 및 엔터프라이스), 및 임베디드(embedded) 및 통신 장치들의 여러 세분 시장들(market segments)에 걸친 오픈 구조 안에서 서로 협력할 수 있게 하는 것이다. PCI 익스프레스는 광범위한 미래의 컴퓨팅 및 통신 플랫폼들에 대해 정의된 고성능 범용 I/O 상호연결이다. 사용 모델, 로드-저장 구조 및 소프트웨어 인터페이스들과 같은 일부 PCI 속성들은 그 개정본들에까지 유지되고 있는 반면, 이전의 병렬 버스 구현예들은 확장성이 높은 전적인 직렬 인터페이스로 대체되고 있다. PCI 익스프레스의 보다 최근 버전들은 새로운 수준의 성능 및 특성들을 전달하기 위해 일대일(point-to-point) 상호연결, 스위치 기반 기술 및 패킷화 프로토콜의 진보를 이용한다. 전력 관리, 서비스 품질(QoS), 핫플러그/핫스왑(hot-plug/hot-swap) 지원, 데이터 무결성, 및 에러 처리가 PCI 익스프레스에 의해 지원되는 진보된 특성들 중 일부 가운데 있다.
도 7을 참조하면, 일련의 구성요소들을 상호 연결하는 일대일 링크들로 구성된 패브릭(fabric)의 실시예가 도시된다. 시스템(700)은 컨트롤러 허브(715)와 결합된 프로세서(705) 및 시스템 메모리(710)를 포함한다. 프로세서(705)는 마이크로프로세서, 호스트 프로세서, 임베디드 프로세서, 코프로세서, 또는 다른 프로세서와 같은 어떤 프로세싱 요소를 포함한다. 프로세서(705)는 FSB(front-side bus)(706)를 통해 컨트롤러 허브(715)에 결합된다. 일 실시예에서 FSB(706)는 이하에 기술되는 바와 같은 직렬 일대일 상호 연결부이다. 다른 실시예에서, 링크(706)는 다른 상호연결 규격에 호환하는 직렬 차동 상호연결 구조를 포함한다.
시스템 메모리(710)는 시스템(700) 내 장치들에 의해 액세스 가능한 랜덤 액세스 메모리(RAM), 비휘발성(NV) 메모리, 또는 다른 메모리와 같은 어떤 메모리 소자를 포함한다. 시스템 메모리(710)는 메모리 인터페이스(716)를 통해 컨트롤러 허브(715)에 결합된다. 메모리 인터페이스의 예들에는 더블 데이터 레이트(DDR) 메모리 인터페이스, 듀얼 채널 DDR 메모리 인터페이스, 및 동적 RAM(DRAM) 메모리 인터페이스를 포함한다.
일 실시예에서, 컨트롤러 허브(715)는 PCIe 또는 PCIE(Peripheral Component Interconnect Express) 상호연결 계층구조 내 루트 허브, 루트 컴플렉스, 또는 루트 컨트롤러이다. 컨트롤러 허브(715)의 예들은 칩셋, 메모리 컨트롤러 허브(MCH), 노스브리지(northbridge), 상호연결 컨트롤러 허브(ICH), 사우쓰브리지(southbridge) 및 루트 컨트롤러/허브를 포함한다. 칩셋이라는 용어는 보통 두 개의 물리적으로 분리된 컨트롤러 허브들, 즉 상호연결 컨트롤러 허브(ICH)와 결합된 메모리 컨트롤러 허브(MCH)를 일컫는다. 현재의 시스템들은 보통 프로세서(705)와 함께 집적되는 MCH를 포함하지만, 컨트롤러(715)는 아래에 기술되는 것과 비슷한 방식으로 I/O 장치들과 통신해야 한다는 것을 알아야 한다. 일부 실시예들에서, 피어-투-피어 라우팅이 옵션으로서 루트 컴플렉스(715)를 통해 지원된다.
여기서 컨트롤러 허브(715)는 직렬 링크(719)를 통해 스위치/브리지(720)에 결합된다. 인터페이스들/포트들(717 및 721)이라고도 지칭될 수 있는 입출력 로직들(717 및 721)은 컨트롤러 허브(715) 및 스위치(720) 사이의 통신을 제공하기 위해 계층화된 프로토콜 스택을 포함/구현한다. 일 실시예에서 여러 장치들이 스위치(720)에 결합될 수 있다.
스위치/브리지(720)는 장치(725)로부터 패킷들/메시지들을 업스트림으로, 즉 루트 컴플렉스를 향해 계층구조의 상위로 컨트롤러 허브(715)까지, 그리고 프로세서(705)나 시스템 메모리(710)로부터 장치(725)까지 다운스트림으로, 즉 루트 컨트롤러로부터 계층구조의 하위로 라우팅한다. 일 실시예에서 스위치(720)는 다수의 가상 PCI-PCI 브리지 장치들의 논리적 어셈블리라고 불린다. 장치(725)는 I/O 장치, 네트워크 인터페이스 컨트롤러(NIC), 애드인(add-in) 카드, 오디오 프로세서, 네트워크 프로세서, 하드 드라이브, 저장 장치, CD/DVD ROM, 모니터, 프린터, 마우스, 키보드, 라우터, 휴대형 저장 장치, 파이어와이어(Firewire) 장치, USB(Universal Serial Bus) 장치, 스캐너 및 다른 입출력 장치들과 같은 전자 시스템에 결합될 내부 혹은 외부 장치나 구성요소를 포함한다. 보통 PCIe 속칭 상, 장치와 같은 것은 엔드 포인트라고 불린다. 구체적으로 도시되지는 않았으나, 장치(725)는 구(legacy) 혹은 다른 버전의 PCI 장치들을 지원하기 위한 PCIe-PCI/PCI-X 브리지를 포함한다. PCIe에서 엔드 포인트 장치들은 보통 구, PCIe, 또는 루트 컴플렉스 통합형 엔드 포인트들로서 분류된다.
그래픽 가속기(730) 또한 직렬 링크(732)를 통해 컨트롤러 허브(715)에 결합된다. 일 실시예에서, 그래픽 가속기(730)는 ICH와 결합된 MCH에 결합된다. 스위치(720), 및 그에 따른 I/O 장치(725)가 이제 ICH와 결합된다. I/O 로직들(731 및 718) 역시 그래픽 가속기(730) 및 컨트롤러 허브(715) 사이에서 통신하기 위해 계층화된 프로토콜 스택을 구현해야 한다. 상기 MCH 논의와 유사하게, 그래픽 컨트롤러나 그래픽 가속기(730) 자체가 프로세서(705) 안에 병합될 수 있다.
도 8을 참조하면, 계층화된 프로토콜 스택의 실시예가 도시된다. 계층화된 프로토콜 스택(800)은 QPI(Quick Path Interconnect) 스택, PCIe 스택, 차세대 고성능 컴퓨팅 상호연결 스택, 또는 다른 계층화된 스택과 같은 계층화된 통신 스택의 어떤 형태를 포함한다. 도 7-10을 참조한 바로 아래에서의 논의는 PCIe 스택과 관련된 것이지만, 같은 개념들이 다른 상호연결 스택들에 적용될 수 있다. 일 실시예에서, 프로토콜 스택(800)은 트랜잭션 계층(805), 링크 계층(810), 및 물리 계층(820)을 포함하는 PCIe 프로토콜 스택이다. 도 1의 인터페이스들(717, 718, 721, 722, 726, 및 731)과 같은 인터페이스는 통신 프로토콜 스택(800)으로서 표현될 수 있다. 통신 프로토콜 스택으로서의 표현은 프로토콜 스택을 구현/포함하는 로직이나 인터페이스라고 불릴 수도 있다.
PCI 익스프레스는 구성요소들 사이에서 정보를 전송하는데 패킷들을 사용한다. 송신 요소에서 수신 요소까지 정보를 운반하기 위해 트랜잭션 계층(805) 및 데이터 링크 계층(810)에서 패킷들이 형성된다. 송신된 패킷들이 다른 계층들로 이동하면서, 이들은 그 계층들에서 패킷들을 처리하는 데 필요한 부가 정보를 가지고 확장된다. 수신측에서 역 프로세스가 일어나고, 패킷들이 그들의 물리 계층(820) 표현으로부터 데이터 링크 계층(810) 표현으로, 그리고 마지막으로(트랜잭션 계층 패킷들에 대해) 수신 장치의 트랜잭션 계층(805)에 의해 처리될 수 있는 형식으로 변환된다.
트랜잭션 계층
일 실시예에서 트랜잭션 계층(805)은 데이터 링크 계층(810) 및 물리 계층(820)과 같이 장치의 프로세싱 코어 및 상호연결 구조 사이에서 인터페이스를 제공해야 한다. 이와 관련하여, 트랜잭션 계층(805)의 기본 책임은 패킷들(즉, 트랜잭션 계층 패킷들)의 조립 및 분해이다. 트랜잭션 계층(805)은 통상적으로 TLP들에 대한 크레딧 기반 흐름 제어를 관리한다. PCIe는 분할 트랜잭션들, 즉 시간에 의해 분리되는 요청 및 응답의 트랜잭션들을 구현하여, 타깃 장치가 응답할 데이터를 수집하는 동안 링크가 다른 트래픽을 운반할 수 있게 한다.
또한 PCIe는 크레딧 기반 흐름 제어를 이용한다. 이러한 방식에서, 장치는 트랜잭션 계층(805) 내 수신 버퍼들 각각에 대한 초기 크레딧 양을 홍보한다. 도 1의 컨트롤러 허브(115)와 같은 링크의 반대 단에 있는 외부 장치는 각각의 TLP에 의해 소비되는 크레딧들의 개수를 카운트한다. 트랜잭션은 그 트랜잭션이 크레딧 한계를 초과하지 않는 경우 전송될 수 있다. 응답을 수신하면, 크레딧 양이 복구된다. 크레딧 방식의 이점은 크레딧 한계에 조우되지 않는다는 조건에서 크레딧 귀환의 대기시간(latency)이 성능에 영향을 주지 않는다는 것이다.
일 실시예에서 4 개의 트랜잭션 어드레스 공간들이 설정 어드레스 공간, 메모리 어드레스 공간, 입출력 어드레스 공간, 및 메시지 어드레스 공간을 포함한다. 메모리 공간 트랜잭션들은 메모리 매핑된 위치로/로부터 데이터를 전송하라는 읽기 요청들과 쓰기 요청들 중 하나 이상을 포함한다. 일 실시예에서 메모리 공간 트랜잭션들은 두 개의 서로 다른 어드레스 포맷들, 가령 32 비트 어드레스와 같은 짧은 어드레스 포맷, 또는 64 비트 어드레스와 같은 긴 어드레스 포맷을 이용할 수 있다. 설정 공간 트랜잭션들은 PCIe 장치들의 설정 공간을 액세스하기 위해 사용된다. 설정 공간에 대한 트랜잭션들은 읽기 요청들 및 쓰기 요청들을 포함한다. PCIe 에이전트들 간 인밴드(in-band) 통신을 지원하기 위한 메시지 공간 트랜잭션들(또는 단순히 메시지들)이 정의된다.
따라서 일 실시예에서, 트랜잭션 계층(805)은 패킷 헤더/페이로드(806)를 모은다. 현재의 패킷 헤더들/페이로드들을 위한 포맷이 PCIe 사양 웹사이트에 있는 PCIe 사양에서 발견될 수 있다.
도 9를 빠르게 참조하면, PCIe 트랜잭션 서술자의 실시예가 도시된다. 일 실시예에서 트랜잭션 서술자(transaction descriptor)(900)는 트랜잭션 정보를 운반하기 위한 메커니즘이다. 이와 관련하여 트랜잭션 서술자(900)는 시스템에서 트랜잭션들의 식별을 지원한다. 다른 가능한 사용들로는 디폴트 트랜잭션 순서의 추적 변경들 및 채널들과 트랜잭션의 결합이 포함된다.
트랜잭션 서술자(900)는 글로벌 식별자 필드(902), 속성 필드(904) 및 채널 식별자 필드(906)를 포함한다. 도시된 예에서, 글로벌 식별자 필드(902)는 로컬 트랜잭션 식별자 필드(908) 및 소스 식별자 필드(910)를 포함하는 것으로 묘사된다. 일 실시예에서 글로벌 트랜잭션 식별자(902)는 모든 미해결 요청들에 대해 고유하다.
한 구현예에 따르면, 로컬 트랜잭션 식별자 필드(908)는 요청 에이전트에 의해 생성된 필드이고, 그 요청 에이전트를 위한 완료를 요구하는 모든 미해결 요청들에 대해 고유하다. 또한 이 예에서, 소스 식별자(910)는 PCIe 계층구조 안에서 요청자 에이전트를 고유하게 식별한다. 그에 따라, 소스 ID(910)와 함께, 로컬 트랜잭션 식별자(908) 필드는 계층 구조 도메인 안에서 트랜잭션의 글로벌 식별자를 제공한다.
속성 필드(904)는 트랜잭션의 특징과 관계를 특정한다. 이와 관련하여 속성 필드(904)는 잠정적으로, 트랜잭션들의 디폴트 처리의 수정을 허용하는 추가 정보를 제공하는데 사용된다. 일 실시예에서, 속성 필드(904)는 우선순위 필드(912), 예비 필드(914), 순서 필드(916), 및 비 스누프(no-snoop) 필드(918)를 포함한다. 여기서 우선순위 서브 필드(912)는 트랜잭션에 우선순위를 할당하기 위해 개시자에 의해 수정될 수 있다. 예비 속성 필드(914)는 앞으로를 위해, 혹은 제조자가 정의한 용도를 위해 예비 상태로 남겨진다. 우선순위 또는 보안 속성들을 이용하는 가능한 사용 모델들이 예비 속성 필드를 사용하여 구현될 수 있다.
이 예에서, 순서 속성 필드(916)는 디폴트 순서 규칙을 수정할 수 있는 순서의 타입을 전달하는 정보 옵션을 제공하는데 사용된다. 한 예시적 구현예에 따르면, "0"의 순서 속성은 디폴트 순서 규칙이 적용되어야 한다는 것을 나타내고, "1"의 순서 속성은 완화된 순서를 나타내며, 쓰기들은 같은 방향으로 쓰기들을 패스할 수 있고 읽기 완료들은 같은 방향으로 쓰기들을 패스할 수 있다. 스누프 속성 필드(918)는 트랜잭션들이 염탐되는지(snooped)를 판단하는데 사용된다. 도시된 바와 같이, 채널 ID 필드(906)는 트랜잭션이 링크 계층과 관련되는 채널을 식별한다.
링크 계층
데이터 링크 계층(810)이라고도 불리는 링크 계층(810)은 트랜잭션 계층(805) 및 물리 계층(820) 사이의 중간 단계로서 작용한다. 일 실시예에서 데이터 링크 계층(810)의 할 일은 한 링크 당 두 구성요소 사이의 트랜잭션 계층 패킷들(TLPs)을 교환하기 위한 신뢰할 수 있는 메커니즘을 제공하는 것이다. 데이터 링크 계층(810)의 한편은 트랜잭션 계층(805)에 의해 수집된 TLP들을 수용하고, 패킷 시퀀스 식별자(811), 즉 식별 번호나 패킷 번호를 적용하고, 에러 검출 코드, 즉 CRC(812)를 산출하여 제공하며, 외부 장치로의 물리적인 것을 통한 전송을 위해 수정된 TLP들을 물리 계층(820)으로 제공한다.
물리 계층
일 실시예에서, 물리 계층(820)은 패킷을 외부 장치로 물리적으로 전송하기 위해 논리적 서브 블록(821) 및 전기적 서브 블록(822)을 포함한다. 여기서 논리적 서브 블록(821)은 물리 계층(821)의 "디지털" 기능들을 담당한다. 이와 관련하여 논리적 서브 블록은 물리적 서브 블록(822)에 의해 전송할 나가는 정보를 준비하기 위한 송신 섹션, 및 수신된 정보를 링크 계층(810)으로 보내기 전에 식별하고 준비하는 수신 섹션을 포함한다.
물리적 블록(822)은 송신기 및 수신기를 포함한다. 송신기는 논리적 서브 블록(821)에 의해 심볼들을 공급받으며, 송신기는 그 심볼들을 직렬화하여 외부 장치로 송신한다. 수신기는 외부 장치로부터 직렬화된 심볼들을 공급받고, 수신된 신호들을 비트스트림으로 변환한다. 비트 스트림은 직렬화 해제되어 논리적 서브 블록(821)으로 제공된다. 일 실시예에서, 8b/10b 전송 코드가 사용되는데, 이때 10 비트 심볼들이 송신/수신된다. 여기서 특별한 심볼들이 어떤 패킷을 프레임들(823)로 프레이밍하는데 사용된다. 또한, 일예에서 수신기는 들어오는 직렬 스트림으로부터 복구된 심볼 클록을 제공하기도 한다.
상술한 바와 같이, 트랜잭션 계층(805), 링크 계층(810) 및 물리 계층(820)이 PCIe 프로토콜 스택의 특정 실시예를 참조하여 논의되지만, 계층화된 프로토콜 스택은 그렇게 한정되지 않는다. 사실 모든 계층화된 프로토콜이 포함되고/구현될 수 있다. 예로서, 계층화된 프로토콜로서 표현되는 포트/인터페이스는 (1) 패킷들을 모으는 제1계층, 즉 트랜잭션 계층; 패킷들을 순차화하는 제2계층, 즉 링크 계층; 및 패킷들을 송신할 제3계층, 즉 물리 계층을 포함한다. 구체적 예로서, 공통 규격 인터페이스(CSI) 계층화 프로토콜이 사용된다.
다음으로 도 10을 참조하면, PCIe 직렬 일대일 패브릭의 실시예가 도시된다. PCIe 직렬 일대일 링크의 실시예가 예시되지만, 직렬 일대일 링크는 직렬 데이터를 송신하기 위한 어떤 송신 경로를 포함하기 때문에 그렇게 한정되지 않는다. 도시된 실시예에서 기본 PCIe 링크는 송신 쌍(1006/1011) 및 수신 쌍(1012/1007)의 두 저전압 차동 구동 신호 쌍들을 포함한다. 따라서 장치(1005)는 장치(1010)로 데이터를 송신하는 송신 로직(1006) 및 장치(1010)로부터 데이터를 수신하는 수신 로직(1007)을 포함한다. 즉, 두 개의 송신 경로들, 즉 경로들(1016 및 1017), 그리고 두 개의 수신 경로들, 즉 경로들(1018 및 1019)은 PCIe 링크 안에 포함된다.
송신 경로는 송신 라인, 코퍼 라인, 광 라인, 무선 통신 채널, 적외선 통신 링크, 또는 다른 통신 경로와 같이 데이터를 송신하기 위한 어떤 경로를 일컫는다. 장치(1005) 및 장치(1010)와 같은 두 개의 장치들 사이의 연결이 링크(415)와 같은 링크라고 불린다. 링크는 한 레인을 지원할 수 있다-각각의 레인은 차동 신호 쌍들(한 쌍은 송신, 한 쌍은 수신)의 집합을 나타낸다. 대역폭을 스케일링하기 위해, 링크는 N 배로 나타내는 다중 레인들을 모을 수 있으며, 여기서 N은 1, 2, 4, 8, 12, 16, 32, 64 또는 더 넓은 폭과 같은 어떤 지원되는 링크 폭이다.
차동 쌍은 차동 신호들을 송신하기 위한 라인들(416 및 417)과 같은 두 개의 송신 경로들을 일컫는다. 예로서, 라인(416)이 저전압 레벨에서 고전압 레벨로 토글하면(즉, 상승 에지), 라인(417)은 고 로직 레벨에서 저 로직 레벨로(즉, 하강 에지) 동작한다. 차동 신호들은 잠정적으로, 보다 우수한 신호 무결성, 즉 크로스 커플링, 전압 오버슛/언더슛, 링잉(ringing) 등과 같은 보다 나은 전기적 특성들을 보여준다. 이것은 보다 빠른 송신 주파수들을 가능하게 하는 보다 나은 타이밍 윈도우를 고려한다.
도 11을 참조하면, 저전력 컴퓨팅 플랫폼의 실시예가 도시된다. 일 실시예에서 저전력 컴퓨팅 플랫폼(1100)은 사용자 기기(UE)를 포함한다. UE는 일부 실시예들에서, 음성 통신 기능을 가진 장치와 같이 통신하는 데 사용될 수 있는 장치를 일컫는다. UE의 예들로는 전화기, 스마트 폰, 태블릿, 울트라 포터블 노트북, 및 저전력 노트북이 포함된다. 그러나 저전력 컴퓨팅 플랫폼 역시 태블릿, 저전력 노트북, 울트라 포터블 또는 울트라씬(ultrathin) 노트북, 마이크로서버 서버, 저전력 데스크탑, 송신 장치, 수신 장치, 또는 다른 알려지거나 이용가능한 컴퓨팅 플랫폼과 같이 저전력 동작 포인트를 얻기 위한 어떤 다른 플랫폼을 일컬을 수 있다. 예시된 플랫폼은 여러 상이한 장치들을 결합하기 위한 다수의 서로 다른 상호연결부들을 묘사한다. 이러한 상호연결부들에 대한 예시적 논의는 이하에서 본 명세서에 개시된 장치들 및 방법들의 구현 및 포함에 대한 옵션들을 제공하기 위해 주어진다. 그러나 저전력 플랫폼(1100)은 묘사된 상호연결부들이나 장치들을 포함하거나 구현하도록 요구되지 않는다. 또한 구체적으로 도시되지 않은 다른 장치들 및 상호연결 구조들이 포함될 수 있다.
도면의 중앙에서 시작할 때, 플랫폼(1100)은 애플리케이션 프로세서(1105)를 포함한다. 보통 이것은 본 명세서에서 기술되거나 이 산업계에서 알려진 어떤 버전의 프로세서 구성일 수 있다. 일예로서, 프로세서(1100)는 SoC(system on a chip)으로서 구현된다. 특정한 도시적 예로서, 프로세서(1100)는 i3, i5, i7 또는 캘리포니아 주, 산타 클라라에 위치한 인텔사로부터 입수가능한 그러한 다른 프로세서와 같은 인텔 아키텍처 코어 기반 프로세서를 포함한다. 그러나, 캘리포니아 주 서니베일에 위치한 어드밴스드 마이크로 디바이스사(AMD)에서 입수 가능한 것과 같은 다른 저전력 프로세서들, 캘리포니아주 서니베일에 위치한 MIPS 테크놀로지로부터 나온 MIPS 기반 디자인, ARM 홀딩스사나 그 고객으로부터 라이선스된 ARM 기반 디자인 또는 그들의 판매허가자들이나 채택자들은 대신에 다른 실시예들에서 애플 A5/A6 프로세서, 퀄컴 스냅드래곤 프로세서 또는 TI OMAP 프로세서와 같은 것을 제공받을 수 있다는 것을 알아야 한다. 그러한 회사들로부터의 프로세서 및 SoC 기술들이 진보하면서, 호스트 프로세서(1100)로부터 분리된 것으로 예시된 보다 많은 구성요소들이 SoC 상에 집적될 수 있다. 결과적으로, 유사한 상호연결부들(및 그 안의 발명들)이 "온 다이(on-die)" 상태로 사용될 수 있다.
일 실시예에서 애플리케이션 프로세서(1105)는 운영체제, 사용자 인터페이스 및 애플리케이션들을 실행한다. 여기서, 애플리케이션 프로세서(1105)는 보통, 운영체제, 사용자 인터페이스 및 애플리케이션들이 프로세서(1105)의 동작/실행을 지시하는데 사용하는 명령어 집합 구조(ISA))를 인식하거나 그와 관련된다. 그것은 또한 통상적으로, 센서들, 카메라들, 디스플레이들, 마이크로폰들 및 대량 저장부에 인터페이스한다. 일부 구현예들은 시간에 민감한 통신 관련 처리를 다른 구성요소들로 떠넘긴다
도시된 바와 같이, 호스트 프로세서(1105)는 WLAN, WiGig, WirelessHD, 또는 다른 무선 인터페이스와 같은 무선 인터페이스(1130)에 결합된다. 여기서 LLI, SSIC 또는 UniPort 호환 상호연결부가 호스트 프로세서(1105)와 무선 인터페이스(1130)를 결합하는데 사용된다.
LLI는 저전력 대기시간(low latency interface)을 의미한다. LLI는 통상적으로 두 장치들 사이의 메모리 공유를 가능하게 한다. 양방향 인터페이스는 메모리 트랜잭션들을 두 장치들 사이에서 이동시키고 한 장치가 다른 장치의 로컬 메모리를 액세스하게 한다; 보통 이것은 하나의 장치인 것처럼 소프트웨어 개입 없이 행해진다. LLI는 일 실시예에서, 링크를 통해 신호들을 운반하는 세 등급의 트래픽을 허용하여 GPO 카운트를 줄일 수 있다. 예로서 LLI는 통신을 위해 계층화된 프로토콜 스택, 또는 이하에서 보다 상세히 기술되는 MPHY와 같은 물리 계층(PHY)을 정의한다.
SSIC는 초스피드 인터칩(SuperSpeed Inter-Chip)을 일컫는다. SSIC는 저전력 물리 계층을 이용하여 고속 USB 장치들의 설계를 가능하게 할 수 있다. 예로서, MPHY 계층이 사용되고, USB 3.0 호환 프로토콜들 및 소프트웨어가 보다 나은 전력 성능을 위해 MPHY에 대해 사용된다.
UniPro는 애플리케이션 프로세서들, 코프로세서들, 모뎀들, 및 주변기기들과 같은 광범위한 장치들과 구성요소들을 상호연결할 뿐 아니라 제어 메시지들, 벌크 데이터 전송 및 패킷화된 스트리밍을 포함하는 다양한 종류의 데이터 트래픽을 지원하기 위한 범용의, 에러 처리, 고속 솔루션을 제공하는 물리 계층 추상화를 통해 계층화된 프로토콜 스택을 나타낸다. UniPro는 MPHY나 DPHY의 사용을 지원할 수 있다.
디버그(1190), 네트워크(1185), 디스플레이(1170), 카메라(1175), 및 저장부(180)와 같은 다른 인터페이스들 또한 본 명세서에 기술된 장치들과 방법들을 활용할 수 있는 다른 인터페이스들을 통해 호스트 프로세서(1105)에 직접 연결할 수 있다.
디버그 인터페이스(1190) 및 네트워크(1185)는 디버그 인터페이스(1191), 예커대 PTI 또는 네트워크 연결, 예컨대 기능적 네트워크 연결부(1185)를 통해 동작하는 디버그 인터페이스를 통해 애플리케이션 프로세서(1105)와 통신한다.
디스플레이(1170)는 하나 이상의 디스플레이들을 포함한다. 일 실시예에서, 디스플레이(1170)는 터치 입력을 수신/감지할 수 있는 하나 이상의 터치 센서들을 가진 디스플레이를 포함한다. 여기서 디스플레이(1170)는 디스플레이 인터페이스(DSI)(1171)를 통해 애플리케이션 프로세서(1105)에 결합된다. DSI(1171)는 D-PHY 물리적 인터페이스를 활용할 수 있는 호스트 프로세서 및 주변 장치들 사이의 프로토콜들을 정의한다. 그것은 통상적으로, 디스플레이 픽셀 인터페이스 2(DPI-2)와 같은 비디오 포맷들 및 시그날링을 위한 픽셀 포맷들 및 정의된 명령 집합, 그리고 디스플레이 명령 집합(DCS)와 같은 것을 통한 제어 디스플레이 로직 파라미터들을 채택한다. 예로서, DSI(1171)은 레인 당 대략 1.5Gb/s에서, 혹은 6Gb/s까지 동작한다.
카메라(1175)는 일 실시예에서, 정지 화상들, 비디오 캡처 또는 둘 모두에 사용되는 이미지 센서를 포함한다. 전후면 카메라들은 모바일 장치들 상에서 일반적이다. 듀얼 카메라들은 입체 지원을 제공하기 위해 사용될 수 있다. 도시된 것과 같이, 카메라(1175)는 CSI(1176)와 같은 주변 상호연결부를 통해 애플리케이션 프로세서(1105)에 결합된다. CSI(1176)는 주변 기기(가령, 카메라, 이미지 신호 프로세서) 및 호스트 프로세서(가령, 1105, 기저대역, 애플리케이션 엔진) 사이의 인터페이스를 정의한다. 일 실시예에서, 이미지 데이터 전송은 데이터 및 클록 신호들과 함께 단방향 차동 직렬 인터페이스인 DPHY를 통해 수행된다. 주변기기의 제어는 일 실시예에서, 카메라 제어와 같은 별개의 백(back) 채널을 통해 일어난다. 도시적 예로서, CSI의 속도는 50Mbps-2Gpbs 또는 그 안의 어떤 범위/값의 범위를 가질 수 있다.
일례에서 저장부(1180)는 대량의 정보를 저장하기 위해 애플리케이션 프로세서(1105)에 의해 사용되는 비휘발성 메모리를 포함한다. 그것은 하드 디스크와 같은 자기적 타입의 저장부나 플래시 기술에 기반할 수 있다. 여기서 1180은 범용 플래시 저장(UFS) 상호연결부(1181)를 통해 프로세서(1105)에 결합된다. UFS(1181)는 일 실시예에서, 모바일 시스템들과 같은 저전력 컴퓨팅 플랫폼들에 맞춰진 상호연결부를 포함한다. 예로서, 그것은 무작위 읽기/쓰기 속도들을 높이기 위해 큐잉(queuing) 특성들을 이용하여 200 및 500MB/s 전송 레이트(가령, 300MB/s) 사이에서 제공한다. 한 구현예들에서, UFS(1181)는 UniPro와 같은 MPHY 물리 계층 및 프로토콜 계층을 이용한다.
모뎀(1110)은 보통 변조기/복조기를 나타낸다. 모뎀(1110)은 통상적으로, 셀룰라 네트워크에 대한 인터페이스를 제공한다. 그것은 어느 통신 규격이 사용되느냐에 따라 상이한 네트워크 타입들 및 상이한 주파수대를 이용하여 통신할 수 있다. 일 실시예에서 음성 및 데이터 접속들 모두가 지원된다. 모뎀(1110)은 LLI, SSIC, UniPro, 모바일 익스프레스 등 중 하나 이상과 같은 어떤 알려진 상호연결부를 이용하여 호스트(1105)에 연결된다.
일 실시예에서, 제어 버스는 무선(1135), 스피커(1140), 마이크로폰(1145)과 같은 제어나 데이터 인터페이스들을 연결하는 데 사용된다. 그러한 버스의 예가 광범위한 오디오 및 제어 솔루션들을 지원할 수 있는 유연한 저전력 멀티 드롭 인터페이스인 SLIMbus이다. 다른 예들은 PCM, I2S, I2C, SPI, 및 UART를 포함한다. 무선(1135)은 두 장치들 사이의 단거리 통신 규격(가령, 블루투스나 NFC), 위치 및/또는 시간을 삼각측량할 수 있는 네비게이션 시스템(가령, GPS), 아날로그나 라디오 방송 수신기(가령, FM 라디오), 또는 다른 알려진 무선 인터페이스나 규격과 같은 인터페이스를 포함한다. 스피커(들)(1140)은 벨소리나 음악을 생성하는 전자기 장치와 같이, 소리를 생성하는 어떤 장치를 포함한다. 다중 스피커들은 스테레오나 멀티 채널 사운드에 사용될 수 있다. 마이크로폰(1145)은 보통 통화 중 말하기와 같은 음성 입력에 사용된다.
무선 주파수 집적 회로(RFIC)(1115)는 무선 신호들의 처리, 가령 증폭, 믹싱, 필터링, 및 디지털 변환과 같은 아날로그 프로세싱을 수행해야 한다. 묘사된 바와 같이, RFIC(1115)는 인터페이스(1112)를 통해 모뎀(1110)에 연결된다. 일 실시예에서, 인터페이스(1112)는 LTE, 3GPP, EGPRS, UMTS, HSPA+, 및 TD-SCDMA와 같은 통신 규격들을 지원하는 양방향 고속 인터페이스(가령, DigRF)를 포함한다. 특정 예로서, DigRF는 M-PHY 물리 계층에 기반하는 프레임 위주의 프로토콜을 이용한다. DigRF는 통상적으로, 현재 레인 당 1.5 또는 3Gbps 사이에서 동작하고 4 레인들과 같은 여러 레인들을 가지고 설정 가능한 최적화된 핀 수를 가지는 RF 친화적이고, 낮은 대기시간, 저전력 프로토콜이라 불린다.
인터페이스(1161)(가령, RF 제어 인터페이스)는 단순한 것에서 복잡한 장치들까지를 지원하는 플렉시블(flexible) 버스를 포함한다. 특정 예로서, 인터페이스(1161)는 RF 전단 구성요소들의 제어를 위해 설계된 플렉시블 2-와이어 직렬 버스를 포함한다. 하나의 버스 마스터가 RF 신호를 증폭하는 전력 증폭기, 센서 입력을 수신하는 센서들, 네트워크 모드에 따라 RF 신호 경로들 사이를 스위칭하는 스위치 로직(들)(1160), 및 나쁜 안테나 상황이나 강화된 대역폭을 보상하기 위한 안테나 튜너들(1165)과 같은 여러 장치들에 쓰기 및 읽기를 할 수 있다. 인터페이스(1161)는 일 실시예에서, 타이밍에 민감한 이벤트들과 낮은 EMI를 위한 그룹 트리거 기능을 가진다.
전력 관리(1120)는 모바일 장치(1100) 내 모든 다양한 구성요소들에 모바일 장치 내 구성요소들을 위한 효율을 개선하도록 전압을 감소하거나 증가하는 등의 전력 관리된 전압을 제공하는데 사용된다. 일 실시예에서 그것은 배터리 충전 및 남은 에너지를 제어 및 모니터링하기도 한다. 배터리 인터페이스는 전력 관리(1120) 및 배터리 사이에서 사용될 수 있다. 도시적 예로서, 배터리 인터페이스는 모바일 단말 및 스마트/저비용 배터리들 사이의 단선 통신을 포함한다.
도 12는 본 명세서에서 논의되는 인터페이스들 중 하나 이상에 대한 예시적 프로토콜 스택의 실시예를 도시한다. 예컨대, 연결부는 전기/물리적 통신을 제공하기 위한 물리 계층(PHY)을 포함할 수 있고, 프로토콜, 트랜잭션, 애플리케이션 등의 계층과 같은 상위 레벨 계층들은 부가적 통신 기능을 제공할 수 있다. 여기서 MPHY(1250)은 DigRF(1255), UniPro(1260), LLI(1265), SSIC(1270)(즉, USB 3 프로토콜들), 또는 PCIe(1275)(즉, 모바일 익스프레스)와 같은 복수의 다양한 프로토콜 계층들을 가지고 구현될 수 있다.
도 1은 예시적 M-PHY 링크를 도시한다. 링크는 M-TX(M-PHY 전기적 송신 모듈)(107), M-RX(M-PHY 전기적 수신 모듈)(111), 및 라인의 하나 이상의 레인들(109)을 포함하는 하나 이상의 서브 링크들(103), 다운스트림 포트 및 업스트림 포트로 구성된다. 일부 실시예들에서 라인은 M-RX 상에 두 개의 핀들 및 M-TX 상의 두 개의 핀들과 결합하는 트위스티드 페어 라인이다. 각각의 레인(109)은 프로토콜 계층에 대한 자체 인터페이스를 가진다. 레인(109)은 포인트 A에서 포인트 B로 정보를 전송하는데 사용되는 단방향성, 단일 신호, 물리적 전송 채널이다. 각각의 M-TX 또는 M-RX는 각각의 모듈에 대해 각기 두 개의 시그날링 핀들과 통신하는 하나의 차동 전기 출력 또는 입력 라인 인터페이스를 가진다. 한 인터페이스 포트를 구성하는 장치 내 M-TX들 및 M-RX들의 집합은 M 포트(105)라고 표시된다.
도 2는 PCI 익스프레스(PCIe)에서 사용할 MIPI M-PHY의 예시적 적응사항을 도시한다(이 구성은 M-PCIe라고 불릴 것이다). M-PCIe는 기본 임무가 트랜잭션 계층 패킷들(TLPs)의 모으기 및 분해인 트랜잭션 계층(201)을 포함한다. TLP들은 읽기 및 쓰기뿐 아니라 소정 타입의 이벤트들과 같은 트랜잭션들을 통신하는데 사용된다.
데이터 링크 계층(203)은 트랜잭션 계층(201) 및 물리 계층(205) 사이의 중간 단계를 담당한다. 데이터 링크 계층의 기본 임무는 에러 검출 및 에러 정정을 포함하는 링크 관리 및 데이터 무결성을 포함한다.
물리 계층(205)은 드라이버 및 입력 버퍼들, 병렬-직렬 및 직렬-병렬 변환, PLL(들), 및 임피던스 매칭 회로를 포함하는 인터페이스 동작을 위한 모든 회로를 포함한다. 그것은 또한 링크 트레이닝 상태 및 상태 머신(LTSSM)을 포함하는 인터페이스 초기화 및 관리와 연관된 논리적 기능들을 포함한다. 이 계층(205)은 데이터 링크 계층(203)으로부터 수신된 정보를 적절한 직렬 포맷으로 변환하여 그것을 PCI 익스프레스 링크를 거쳐 링크의 다른쪽에 연결된 장치와 호환할 수 있는 주파수 및 폭으로 전송하는 일을 담당한다. M-PCIe에서 물리 계층(2005)은 M-TX 및 R-TX와 같은 M-PHY 특성들을 병합한다.
도 3은 다른 뷰에서의 PCLe 구현예의 실시예를 도시한다. 도시된 것과 같이, M 포트 상의 TX-LANE(n)은 M-TX 모듈 및 송신 서브 링크를 위한 송신기 차동 쌍 신호들 TXDP 및 TXDN을 나타내며, 여기서 n은 송신 서브 링크에 의해 지원되는 M-TX 모듈의 레인 번호에 해당한다. M 포트 상의 RX-LANE(m)은 M-RX 모듈 및 수신 서브 링크를 위한 수신기 차동 쌍 신호들 RXDP 및 RXDN을 나타내며, 여기서 m은 수신 서브 링크에 의해 지원되는 M-RX 모듈의 레인 번호에 해당한다.
최소한의 링크 구성은 송신 서브 링크를 위한 하나의 레인과 수신 서브 링크를 위한 하나의 레인으로 이루어진다. 이러한 조합은 LANE PAIR0라고 식별되며, 링크 초기 발견 및 설정 프로세스를 위해 필요로 된다. LANE PAIR0는 다운스트림 포트 상의 TX-LANE(0) 및 RX-LANE(0)과 상응하는 업스트림 포트 상의 RX-LANE(0) 및 TX-LANE(0)로 이루어진다.
어떤 레인이 "구성"되기 위해서는 TX-LANE(x)가 대응하는 원격 RX-LANE(x)에 연결되어야 한다. TX-LANE 및 RX-LANE의 번호는 구현예 고유의 메커니즘들을 통해 시스템 통합자에 의해 무작위로 결정되어야 한다.
SAVE 상태로부터 HIBERN8로의 전환 시, M-RX는 라인 상의 DIF-Z를 관찰하기 전에 라인 상태를 HIBERN8 퇴장 상태라고 해석해서는 안된다. ACTIVATED로부터 HIBERN8로 진입하는 각각의 레인에 대해서, 프로토콜은 M-RX가 M-TX 전에 HIBERN8으로 진입하게 해야 한다.
M-PHY는 다양한 목적들에 알맞은 다양한 많은 상태들을 지원한다. M-PHY의 한 상태가 HIBERN8이라 불린다. 이 상태는 라인의 구성 설정을 유지하면서 초저전력 소비를 가능하게 한다. 그것은 구성 정보의 소실 없이 가장 낮은 저전력 상태가 된다.
라인 상태들에는 저속 모드(LS-MODE)나 고속 모드(HS-MODE)가 포함된다. HS-ModE는 STALL 및 HS-BURST 상태들을 포함하는 고속 동작 루프이다. HS-BURST는 HS-MODE의 데이터 전송 상태이다. STALL은 HS-BURST들 사이의 전력 절전 상태이다. LS-MODE는 HS-BURST보다 느린 데이터 전송 상태를 가진다.
M-PHY는 오동작이 있을 때의 동작 중에 어떤 라인을 통해 M-RX의 리셋팅을 지원한다. HIBERN8에서 M-TX는 하이 임피던스로 세팅되고 M-RX는 DIF-Z에서 라인을 홀딩한다. HIBERN8으로의 진입은 LINE-CFG, STALL, SLEEP, 및 DISABLED M-PHY 상태들로부터 일어날 수 있다. M-PHY 사양에 따르면, SAVE 상태(STALL, SLEEP, HIBERN8, DISABLED, 및 UNPOWERED와 같은 상태)로부터 HIBERN8으로의 전환 시, ACTIVATED로부터 HIBERN8으로 진입하는 각각의 레인에 대해, 프로토콜은 M-RX가 M-TX 이전에 HIBERN8으로 진입하도록 해야 한다. 도 4는 M-PHY에서 HIBERN8으로 진입하기 위한 예시적 타이밍 고려사항들을 도시한다. 이 타이밍 고려사항들에서, M-RX는 TOB(tail-of-burst) 수신의 25ns 안에서 HIBERN8으로 진입해야 하고, T-RX는 TOB의 M-RX 다음에 50-1,000ns 안에서 HIBERN8으로 진입해야 한다. 이와 같이 프로토콜 계층은 로컬 수신기가 원격 송신기가 HIBERN8으로 진입하기 전에 HIBERN8으로 진입하도록 해야 한다. 이것은 HIBERN8 진입 요건 상에서 두 개의 포트들 간의 동기화를 요한다.
도 4의 예시적 타이밍 고려사항들은 단지, 두 개의 포트들 사이의 구성 클록들이 공통적이거나 클록들이 동일한 주파수를 가지고 동기되는 경우에만 포트들에 대한 HIBERN8 진입 요건들을 보장한다. 실제로, 그것은 드문 경우이다.
도 5는 포트들에 걸쳐 HIBERN8로의 진입을 동기화하기 위한 방법의 실시예를 도시한다. 일부 실시예들에서 모든 TX-LANES(다운스트림 및 업스트림 포트들 모두로부터)는 적어도 한 EIOS(electrical idle ordered set)를 수신 포트 상의 해당 M-RX 모듈들로 전송하였다(단계 501).
일부 실시예들에서, 각각의 레인(M-RX 및 M-TX)은 자신의 HS-BURST 상태를 종료한다(단계 503). EIOS를 이용하는 실시예들에서, 이러한 종료는 EIOS를 수신하거나 송신하는데 따른 것이다. 예를 들어 일부 실시예들에서 EIOS 보내기를 완료할 때 HS-BURST를 HIBERN8 다운 종료하고 싶어하는 M-TX와 그 포트의 M-RX는, 중단되지 않았던 포트의 M-TX로부터 EIOS를 수신할 때 HS-BURST를 종료할 것이다. 수신 포트에서, M-RX 모듈에 대한 HS-BURST의 전환은 HIBERN8을 원하는 포트의 M-TX로부터 EIOS의 수신 시 일어나고 EIOS 전송 종료 시 M-TX에 대해 일어난다.
이 시점에서 레인들은 STALL 상태로 진입할 준비가 되며 단계 505에서 STALL 상태로 전환한다. 이 레인들이 이제 동기된다.
모든 레인들이 STALL 상태에 있게 된 후, RX-LANES이 HIBERN8으로 즉시 진입하도록 구성된다(단계 507). 일부 실시예들에서 HIBERN8으로의 전환은 재구성 트리거(RCT)가 수신될 때까지 일어나지 않는다. RCT는 LINE 신호가 DIF-N에서 DIF-Z으로 스위칭하게 하는 HIBERN8으로의 전환을 일으키는 내부 구동 이벤트이다.
TX-LANES은 그 레인들이 STALL로 진입한 후 최소 정의된 시간 뒤에 HIBERN8으로 전환한다. 이 최소 시간은 라인 상의 포트들에 대한 가장 느린 클록 설정 이상이다. 일부 실시예들에서 이 소정 시간은 1us이다. 동기화 이후의 이러한 접근은 수신기 레인들이 항상 송신기 레인들 이전에 HIBERN8으로 진입하게 한다.
도 6은 도 5의 방법의 동작 시의 원리들을 예시한 예시적 타이밍도를 도시한다. 이 예에서 다운스트림 포트 및 업스트림 포트는 업스트림이 다운스트림보다 빠른 서로 다른 클록들을 가진다. 예시된 바와 같이, 다운스트림 포트는 그것과 업스트림 포트 사이의 링크 상태가 L0에서 L1N8로 전환하고 싶어한다. 도시된 것처럼 다운스트림 포트는 먼저 업스트림 포트로 EIOS를 보낸다. EIOS 보내기를 완료하면, 다운스트림 포트의 M-TX 상태가 HS-BURST로부터 STALL의 알려진 상태로 전환한다. 업스트림 포트의 대응 M-RX에서, 그것 역시 STALL로 전환한다. M-TX의 라인 상태는 이 시점에 DIF-N으로 간다. 다운스트림 포트의 R-TX 및 업스트림 포트의 M-TX는 여전히 HS-BURST 상태에 있다는 것을 알아야 한다.
다운스트림 포트로부터 EIOS를 수신 시, 업스트림 포트는 해당 EIOS를 다운스트림 포트로 전송한다. EIOS 완료 시, 업스트림 포트의 M-TX는 다운스트림 포트의 해당 M-RX가 그러한 것처럼 HS-BURST로부터 STALL로 진입한다. RCT는 이러한 전환에 동기화되고 업스트림 포트의 M-RX 및 M-TX의 HIBERN8 진입을 위한 타이밍 요건들을 시작한다. 예시된 바와 같이 업스트림 포트의 M-RX는 업스트림 포트의 M-TX 이전에 HIBERN8으로 간다. 업스트림 포트가 HIBERN8으로 진입한 후 어떤 시점에, 다운스트림 포트가 상술한 바와 같이 M-RX가 먼저 진입한 상태에서 (RCT에 의해 트리거된) HIBERN8로 진입할 것이다.
본 발명의 다른 실시예들은 소프트웨어, 펌웨어 및/또는 하드웨어의 서로 다른 조합들을 이용하여 구현될 수 있다. 따라서 도면에 도시된 기법들은 하나 이상의 전자 장치들(가령, 종단 시스템, 네트워크 요소) 상에서 저장 및 실행되는 코드와 데이터를 사용하여 구현될 수 있다. 그러한 전자 장치들은 비임시적 컴퓨터 판독가능 저장 매체(가령, 마그네틱 디스크들; 광 디스크들; 랜덤 액세스 메모리; 리드 온리 메모리; 플래시 메모리 소자들; 위상 변화 메모리) 및 임시적 컴퓨터 판독가능 전송 매체(가령, 전기, 광, 청각 또는 다른 형태의 전파 신호들-반송파, 적외선 신호, 디지털 신호와 같은 것)와 같은 컴퓨터 판독가능 매체를 이용하여 코드 및 데이터를 저장 및 통신한다(내부적으로나 네트워크를 통해 다른 전자 장치들과). 또한 그러한 전자 장치들은 통상적으로 하나 이상의 저장 장치들(비임시적 장치 판독가능 저장 매체), 사용자 입출력 장치들(가령, 키보드, 터치 스크린 및/또는 디스플레이), 및 네트워크 연결부들과 같은 하나 이상의 다른 구성요소들과 결합된 하나 이상의 프로세서들의 집합을 포함한다. 프로세서들 및 다른 구성요소들의 집합의 결합은 통상적으로, 하나 이상의 버스들 및 브리지들(버스 제어기들이라고도 지칭함)을 통한다. 따라서 주어진 전자 장치의 저장 소자는 통상적으로 그 전자 장치의 하나 이상의 프로세서들의 집합 상에서 실행할 코드 및/또는 데이터를 저장한다.
위에서 본 명세서의 도면들의 흐름도들은 본 발명의 소정 실시예들에 의해 수행되는 특정한 순서의 동작들을 보이지만, 그러한 순서는 예시적일 뿐이라는 것(가령, 다른 실시예들은 다른 순서로 그 동작들을 수행하고, 소정 동작들을 결합하고, 소정 동작들을 중복하는 등의 동작을 수행할 수 있음)을 알아야 한다.
상술한 장치, 방법, 시스템들은 상술한 바와 같은 어떤 전자 장치나 시스템 안에서 구현될 수 있다는 것을 알아야 한다. 구체적 예시로서, 이하의 도면은 본 명세서에 기술된 바와 같이 본 발명을 이용하기 위한 예시적 시스템들을 제공한다. 그 시스템들이 이하에서 보다 상세히 기술되면서, 다양한 여러 상호연결부들이 상기 논의로부터 개시되고, 기술되며 재검토된다. 또한 쉽게 알 수 있는 바와 같이, 상술한 이점들은 그러한 상호연결부들, 패브릭들 또는 구조들 중 어느 것에나 적용될 수 있다.
이제 도 13을 참조하면, 본 발명의 일 실시예에 따른 컴퓨터 시스템에 존재하는 구성요소들의 블록도가 예시된다. 도 13에 도시된 바와 같이, 시스템(1300)은 구성요소들의 어떤 조합을 포함한다. 이러한 구성요소들은 컴퓨터 시스템 안이나 그렇지 않으면 컴퓨터 시스템의 섀시 안에 구성되는 IC들, 이들의 일부, 개별 전자 장치들, 또는 다른 로직들, 로직, 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합으로서 구현될 수 있다. 도 13의 블록도는 컴퓨터 시스템의 많은 구성요소들의 상위 보기를 보여주도록 의도된 것임을 알아야 한다. 그러나, 다른 구현예들에서는 도시된 구성요소들 중 일부가 생략될 수 있고, 추가 구성요소들이 존재할 수 있으며, 도시된 구성요소들의 다른 배치가 일어날 수 있다는 것을 알아야 한다. 결과적으로 상술한 발명은 이하에 예시 및 기술된 상호연결부들 중 하나 이상의 어떤 부분 안에서 구현될 수 있다.
도 13에서 알 수 있는 바와 같이, 프로세서(1310)는 일 실시예에서 마이크로프로세서, 멀티코어 프로세서, 멀티스레드 프로세서, 초저전압 프로세서, 임베디드 프로세서, 또는 다른 알려진 프로세싱 요소를 포함한다. 도시된 구현예에서 프로세서(1310)는 시스템(1300)의 다양한 구성요소들 중 다수와 통신하기 위한 메인 프로세싱 유닛 및 중앙 허브로서 동작한다. 일예로서, 프로세서(1300)는 SoC(system on a chip)으로서 구현된다. 특정한 도시적 예로서, 프로세서(1310)는 i3, i5, i7 또는 캘리포니아 주, 산타 클라라에 위치한 인텔사로부터 입수가능한 그러한 다른 프로세서와 같은 인텔 아키텍처 코어 기반 프로세서를 포함한다. 그러나, 캘리포니아 주 서니베일에 위치한 어드밴스드 마이크로 디바이스사(AMD)에서 입수 가능한 것과 같은 다른 저전력 프로세서들, 캘리포니아주 서니베일에 위치한 MIPS 테크놀로지로부터 나온 MIPS 기반 디자인, ARM 홀딩스사나 그 고객으로부터 라이선스된 ARM 기반 디자인 또는 그들의 판매허가자들이나 채택자들은 대신에 다른 실시예들에서 애플 A5/A6 프로세서, 퀄컴 스냅드래곤 프로세서 또는 TI OMAP 프로세서와 같은 것을 제공받을 수 있다는 것을 알아야 한다. 주문자 버전의 그러한 프로세서들 중 다수가 변형 및 가변된다는 것을 알아야 한다; 그러나, 이들은 프로세서 라이센서에 의해 기술된 것과 같이 정의된 알고리즘들을 수행하는 특정 명령어 집합을 지원하거나 인식할 수 있다. 여기서 마이크로구조의 구현예는 가변될 수 있지만, 프로세서의 구조적 기능은 보통 일정하다. 한 구현예의 프로세서(1310)의 구조 및 동작에 관한 소정 세부사항들은 도시적 예를 제공하는 이하에서 더 논의될 것이다.
프로세서(1310)는 일 실시예에서 시스템 메모리(1315)와 통신한다. 도시적 예로서, 그것은 일 실시예에서 소정 정도의 시스템 메모리를 제공하기 위해 다수의 메모리 소자를 통해 구현될 수 있다. 예들로서, 메모리는 JEDEC(Joint Electron Devices Engineering Council)에 따른 현재의 LPDDR2(low power double data rate 2) 규격, 또는 JESD 209-2E나 대역폭을 확장하기 위한 LPDDR2 확장을 제공할 LPDDR3나 LPDDR4라 불리는 차세대 LPDDR 규격과 같은 JEDEC LPDDR-기반 설계에 따를 수 있다. 다양한 구현예들에서 개별 메모리 소자들은 싱글 다이 패키지(SDP), 듀얼 다이 패키지(DDP) 또는 쿼드 다이 패키지(Q17P)와 같은 다양한 패키지 타입들을 가질 수 있다. 이러한 소자들은 일부 실시예들에서, 낮은 프로파일 솔루션을 제공하기 위해 마더보드에 직접 땜납되고, 다른 실시예들에서는 상기 소자들이 주어진 커넥터에 의해 마더보드에 결합되는 하나 이상의 메모리 로직들로서 구성된다. 또한 당연히, 다른 타입의 메모리 로직들, 예컨대 비한정적으로 microDIMMs, MiniDIMMS를 포함하는 여러 다양한 DIMM들(dual inline memory logics)과 같은 다른 메모리 구현예들도 가능하다. 특정한 예시적 실시예에서, 메모리는 2GB와 16GB 사이의 크기를 가지며, 볼 그리드 어레이(BGA)를 통해 마더보드 상에 땜납되는 DDR3LM 패키지나 LPDDR2나 LPDDR3 메모리로서 구성될 수 있다.
데이터, 애플리케이션들, 하나 이상의 운영체제들 등과 같은 정보의 지속적 저장을 제공하기 위해, 대량 저장부(1320) 역시 프로세서(1310)에 연결된다. 다양한 실시예들에서, 보다 얇고 가벼운 시스템 설계를 가능하게 하고 시스템 응답성을 향상시키기 위해, 이러한 대량 저장부가 SSD를 통해 구현될 수 있다. 그러나 다른 실시예들에서 대량 저장부는 기본적으로 전력 하강 상황 중에 정황 상태 및 다른 그러한 정보의 비휘발성 저장을 가능하게 함으로써 시스템 활동들의 재개시 시 보다 빠른 전력 상승이 일어날 수 있도록 하는 SSD 캐시로서 동작하는 작은 양의 SSD 저장부와 함께 하드 디스크 드라이브(HDD)를 이용하여 구현될 수 있다. 또한 도 13에 도시된 바와 같이, 플래시 소자(1322)는 가령 직렬 주변기기 인터페이스(SPI)를 통해 프로세서(1310)에 연결될 수 있다. 이 플래시 소자는 BIOS(basic input/output software) 및 시스템의 다른 펌웨어를 포함하는 시스템 소프트웨어의 비휘발성 저장을 제공할 수 있다.
다양한 실시예들에서 시스템의 대량 저장부는 SSD 단독에 의해, 혹은 SSD 캐시를 가진 디스크, 광 또는 기타 드라이브로서 구현된다. 일부 실시예들에서 대량 저장부는 복구(RST) 캐시 로직과 함께 HDD나 SSD로서 구현된다. 다양한 구현예들에서 HDD는 320GB-4 테라바이트(TB) 및 그 이상 사이의 저장을 제공하며, RST 캐시는 24GB-256GB의 용량을 가진 SSD를 가지고 구현된다. 그러한 SSD 캐시는 적절한 레벨의 응답성을 제공하기 위한 싱글 레벨 캐시(SLC) 또는 멀티 레벨 캐시(MLC) 옵션으로서 구성될 수 있다. SSD만의 옵션에서, 로직은 mSATA 또는 NGFF 슬롯에서와 같은 다양한 위치들에서 수용될 수 있다. 일례로서 SSD는 120GB-1TB 범위의 용량을 가진다.
다양한 입출력(IO) 장치들이 시스템(1300) 안에 존재할 수 있다. 도 13의 실시예에 구체적으로 도시된 것은 섀시의 리드 부분 안에 구성된 고선명 LCD나 LED 패널일 수 있는 디스플레이(1324)이다. 이 디스플레이 패널은 예컨대 이러한 터치 스크린과의 사용자 상호동작을 통해 사용자 입력들이 시스템으로 제공되어 원하는 동작, 예컨대 정보의 디스플레이, 정보의 액세싱 등과 관련된 동작들을 수행하게 하기 위해, 디스플레이 패널 위에 외부적으로 구성된 터치 스크린(1325)를 제공할 수도 있다. 일 실시예에서 디스플레이(1324)는 고성능 그래픽 상호연결부로서 구현될 수 있는 디스플레이 상호연결부를 통해 프로세서(1310)에 연결될 수 있다. 터치 스크린(1325)은 일 실시예에서 I2C 상호연결부일 수 있는 다른 상호연결부를 통해 프로세서(1310)에 연결될 수 있다. 도 13에 더 도시된 바와 같이, 터치 스크린(1325) 외에, 터치에 의한 사용자 입력은 섀시 안에 구성될 수 있는 터치 패드(1330)을 통해 일어날 수도 있고, 터치 스크린(1325)와 동일한 I2C 상호연결부와 결합될 수도 있다.
디스플레이 패널은 여러 모드들에서 동작할 수 있다. 제1모드에서, 디스플레이 패널은 디스플레이 패널이 가시광에 대해 투명한 투명 상태로 구성될 수 있다. 다양한 실시예들에서 대다수의 디스플레이 패널은 주변의 관부(bezel)를 제외한 상태로 동작될 때, 사용자는 디스플레이 뒤의 객체들을 디스플레이일 수 있다. 시스템이 노트북 모드로 동작되고 디스플레이 패널이 투명 볼 수 있는 상태에서 디스플레이 패널 위에 제공된 정보를 볼 수 있다. 또한 디스플레이 패널 상에 디스플레이되는 정보가 디스플레이 뒤에 자리한 사용자에 의해 보여질 수 있다. 혹은, 디스플레이 패널의 동작 상태가 가시광이 디스플레이 패널을 통과해 전송되지 못하는 불투명 상태일 수 있다.
태블릿 모드에서 시스템은 디스플레이 패널의 백 디스플레이 면이 베이스 패널의 하부면이 어떤 표면 상에 놓여지거나 사용자에 의해 잡혀 있을 때 사용자를 향해 바깥방향을 향하도록 하는 자리에서 멈추도록 다문 상태로 접혀진다. 태블릿 동작 모드에서, 백 디스플레이 면은 디스플레이 및 사용자 인터페이스의 역할을 수행하는데, 이는 그 면이 터치 스크린 기능을 가질 수 있고 태블릿 장치와 같은 일반적인 터치 스크린 장치의 다른 알려진 기능들으 수행할 수 있게 때문이다. 이를 위해, 디스플레이 패널은 터치 스크린 층과 앞 디스플레이 면 사이에 배치되는 투명도 조정 층을 포함할 수 있다. 일부 실시예들에서 투명도 조정 층은 EC(electrochromic) 층, LCD 층, 또는 EC 및 LCD 층들의 조합일 수 있다.
다양한 실시예들에서, 디스플레이는 다양한 사이즈들, 가령, 11.6"나 13.3" 스크린을 가질 수 있고, 16:9 화면종횡비와 적어도 300니츠(nits) 밝기를 가질 수 있다. 또한 디스플레이는 풀 HD(high definition) 해상도(적어도 1920x1080p)를 가질 수 있고, 임베디드 디스플레이 포트(eDP)와 호환될 수 있으며, 패널 자체 리프레시를 가진 저전력 패널일 수 있다.
터치 스크린 기능과 관련하여, 시스템은 멀티 터치 용량성의 적어도 5개의 핑거가 가능한 디스플레이 멀티터치 패널을 제공할 수 있다. 그리고 일부 실시예들에서, 디스플레이는 10개의 핑거가 가능할 수 있다. 일 실시예에서, 터치 스크린은 "손가락 화상"을 줄이고 "손가락 스키핑(skipping)"을 피하기 위한 낮은 마찰력을 위한 손상 및 스크래치에 강한 유리 및 코팅(가령, Gorilla Glass나 Gorilla Glass 2) 안에 수용된다. 향상된 터치 경험 및 응답성을 제공하기 위해, 터치 패널은 일부 실시예들에서 핀치 줌 중에 정적 뷰(static view)마다 2 미만의 프레임들(30Hz)과 같은 멀티 터치 기능과 200ms(포인터에 대한 손가락 상의 지연)의 프레임 당 1cm 미만(30Hz)의 단일 터치 기능을 가진다. 디스플레이는 일부 구현예들에서, 멀티 터치를 이용할 때 패널 표면과 같은 높이의 최소 스크린 관부 및 제한된 IO 간섭을 가지는 끝과 끝을 맞댄(edge-to-edge) 유리를 지원한다.
지각 컴퓨팅 및 다른 목적을 위해, 다양한 센서들이 시스템 안에 존재할 수 있으며 다양한 방식으로 프로세서(1310)와 결합될 수 있다. 어떤 관성 및 환경 센서들이 센서 허브(1340), 가령 I2C 상호연결부를 통해 프로세서(1310)와 결합될 수 있다. 도 13에 도시된 실시예에서, 이러한 센서들은 가속도계(1341), 주변광 센서(ALS)(1342), 컴파스(1343) 및 자이로스코프(1344)를 포함할 수 있다. 다른 환경 센서들은 일부 실시예들에서 시스템 관리 버스(SMBus) 버스를 통해 프로세서(1310)에 결합하는 하나 이상의 열 센서들(1346)을 포함할 수 있다.
플랫폼에 존재하는 다양한 관성 및 환경 센서들을 이용하여, 많은 다양한 사용 케이스들이 실현될 수 있다. 이러한 사용 케이스들은 지각 컴퓨팅을 포함하는 고급 컴퓨팅 동작들을 가능하게 하고, 또한 전력 관리/배터리 수명, 보안 및 시스템 응답성에 관한 개선을 가능하게 한다.
예를 들어 전력 관리/배터리 수명 문제와 관련하여, 주변 광 센서로부터의 정보에 적어도 일부 기반하여 플랫폼 위치에서의 주변 광 상태들이 판단되고 그에 따라 디스플레이 무결성이 제어된다. 따라서 디스플레이 운영 시 소비되는 전력이 소정 광 상태들에서 줄어든다.
보안 동작들과 관련하여, 위치 정보와 같이 센서들로부터 얻은 정황 정보에 기반하여, 사용자가 소정 보안 문서들로 접근하는 것이 허용되는지 여부가 판단될 수 있다. 예를 들어 사용자는 작업장이나 집의 위치에서 그러한 문서들에 접근하도록 허가될 수 있다. 그러나 플랫폼이 공공 장소에 있을 때 사용자는 그러한 문서들에 대한 접근이 금지된다. 이러한 판단은 일 실시예에서, 위치 정보에 기반하는데, 예컨대 랜드마크들에 대한 GPS 센서나 카메라 인식을 통해 결정된다. 다른 보안 동작들은 서로 가까운 범위 안에 있는 장치들의 페어링(paring), 예컨대 본 명세서에 기술된 것과 같은 휴대용 플랫폼 및 사용자의 데스크탑 컴퓨터나 모바일 컴퓨터와 같은 것들을 제공하는 동작을 포함할 수 있다. 소정 공유는 일부 실시예들에서 그러한 장치들이 그렇게 페어링될 때 근접 필드 통신을 통해 실현된다. 그러나 장치들이 소정 범위를 초과할 때, 그러한 공유는 불가능해질 수 있다. 또한, 본 명세서에 기술된 것과 같은 플랫폼과 어떤 스마트폰을 페어링할 때, 그 장치들이 공공 장소에 있을 때 서로 소정 거리 이상 멀어질 때 알람이 일어나도록 구성될 수 있다. 반대로, 이렇게 페어링된 장치들이 안전한 위치, 예컨대 작업장이나 집의 위치에 있을 때, 장치들은 그러한 알람이 일어남이 없이 소정 한계를 넘어설 수 있다.
센서 정보를 이용하여 응답성 또한 개선될 수 있다. 예를 들어 어떤 플랫폼이 저전력 상태에 있을 때, 센서들은 계속 상대적으로 낮은 주파수에서 동작될 수 있다. 따라서, 가령 관성 센서들, GPS 센서 등에 의해 판단된 플랫폼의 위치 상의 어떤 변화들이 판단된다. 그러한 변화들이 등록되어 있으면, 그 경우 이용가능한 무선 네트워크 자원들을 스캐닝할 필요가 없기 때문에 Wi-Fi 액세스 포인트나 유사한 무선 수행자와 같은 이전의 무선 허브로의 보다 빠른 접속이 일어난다. 따라서, 저전력 상태로부터 기동될 때 높은 수준의 응답성이 달성된다.
본 명세서에 기술된 것과 같이 플랫폼 안의 통합 센서들을 통해 얻어진 센서 정보를 이용하여 많은 다른 사용 케이스들이 가능할 수 있다는 것을 알아야 하며, 상기 예들은 단지 예시의 목적으로 든 것일 뿐이다. 본 명세서에 기술된 것과 같은 시스템을 이용하여, 지각 컴퓨팅 시스템은 제스처 인식을 포함하는 대안적 입력 모드의 추가를 가능하게 할 수 있고 시스템이 사용자 동작들 및 의도를 감지하게 할 수 있다.
일부 실시예들에서 사용자의 존재나 이동을 감지하기 위한 하나 이상의 적외선 또는 다른 열 센싱 소자들이나 어떤 다른 소자가 존재할 수 있다. 그러한 센싱 소자들은 함께 동작하거나, 순차적으로 동작하거나, 그 둘 모두에 해당하는 여러 다양한 소자들을 포함할 수 있다. 예를 들어 센싱 소자들은 광 또는 소리 추정과 같은 초기 센싱과 그에 이어 예컨대 비행 카메라나 패턴화된 광 카메라의 초음파 시간에 의한 제스처 검출을 위한 센싱이 뒤따르는 소자들을 포함한다.
또한 일부 실시예들에서 시스템은 조광 라인을 생성하도록 광 발생기를 포함한다. 일부 실시예들에서 이 라인은 가상 경계, 즉 공간 내 허상 또는 가상 위치에 관한 시각적 큐(que)를 제공하고, 이때 가상 경계나 평면을 지나거나 통과하는 사용자의 액션은 컴퓨팅 시스템과 교류하기 위한 의도로서 해석된다. 일부 실시예들에서 조광 라인은 컴퓨팅 시스템이 사용자와 관련한 다양한 상태들로 변환할 때 색깔을 바꿀 수 있다. 조광 라인은 공간 내 가상 경계의 사용에 대한 시각적 큐를 제공하기 위해 사용될 수 있고, 시스템에 의해 사용자가 컴퓨터와 교류하고 싶어할 때를 판단하는 것을 포함하여 사용자와 관련된 컴퓨터의 상태 변환들을 판단하기 위해 사용될 수 있다.
일부 실시예들에서 컴퓨터는 사용자 위치를 감지하여, 가상 경계를 지나는 사용자의 손의 움직임을 컴퓨터와 교류하고자 하는 사용자의 의도를 나타내는 제스처로서 해석하도록 동작한다. 일부 실시예들에서 사용자가 가상 라인이나 평면을 지날 때, 광 발생기에 의해 발생된 광이 바뀔 수 있고 그에 따라 사용자에게 사용자가 컴퓨터로 입력을 제공하는 제스처들을 제공하기 위한 영역 안으로 들어왔다는 시각적 피드백을 제공할 수 있다.
디스플레이 스크린들은 사용자와 관련한 컴퓨터 시스템의 상태 변환들에 대한 시각적 표시들을 제공할 수 있다. 일부 실시예들에서 제1스크린은 가령 센싱 소자들 중 하나 이상의 사용을 통하여 시스템에 의해 사용자의 존재가 감지되는 제1상태에서 제공된다.
일부 구현예들에서 시스템은 얼굴 인식에 의한 것 등에 의해 사용자 신원을 감지하도록 동작한다. 여기서, 제2스크린으로의 변환은 컴퓨팅 시스템이 사용자 신원을 인식한 제2상태에서 제공되며, 이때 그 제2스크린은 사용자에게 사용자가 새로운 상태로 전환했다는 시각적 피드백을 제공한다. 제3스크린으로의 변환은 사용자가 사용자에 대한 인식을 승인한 제3상태에서 일어날 수 있다.
일부 실시예들에서 컴퓨팅 시스템은 사용자를 위해 가상 경계의 위치를 판단하는 전환 메커니즘을 이용할 수 있으며, 여기서 가상 경계의 위치는 사용자 및 정황에 따라 가변할 수 있다. 컴퓨팅 시스템은 조광 라인과 같이 시스템과 교류하기 위한 가상 경계를 나타내기 위한 빛을 생성할 수 있다. 일부 실시예들에서 컴퓨팅 시스템은 대기 상태에 있을 수 있고, 광은 제1컬러로 생성될 수 있다. 컴퓨팅 시스템은 센싱 소자들을 사용하여 사용자의 존재 및 움직임을 감지하는 등에 의해 사용자가 가상 경계를 지나 도달했는지 여부를 검출할 수 있다.
일부 실시예들에서, 사용자가 가상 경계를 지났다고 검출했으면(사용자의 손들이 가상 경계선보다 컴퓨팅 시스템에 더 가까이 있는 것과 같이), 컴퓨팅 시스템은 사용자로부터 제스처 입력들을 수신하기 위한 상태로 전환할 수 있으며, 여기서 그러한 전환을 나타내는 메커니즘은 가상 경계가 제2컬러로 변화하는 것을 나타내는 광을 포함할 수 있다.
일부 실시예들에서 컴퓨팅 시스템은 이제 제스처 움직임이 검출되는지 여부를 판단할 수 있다. 제스처 움직임이 검출되면, 컴퓨팅 시스템은 컴퓨팅 장치 안의 메모리에 상주하거나 컴퓨팅 장치에 의해 액세스될 수 있는 제스처 데이터 라이브러리로부터의 데이터 사용을 포함할 수 있는 제스처 인식 프로세스로 진행할 수 있다.
사용자의 제스처가 인식되면, 컴퓨팅 시스템은 입력에 응하여 어떤 기능을 수행할 수 있고, 사용자가 가상 경계 안에 있는 경우 추가 제스처들을 수신하도록 돌아갈 수 있다. 일부 실시예들에서, 제스처가 인식되지 않으면, 컴퓨팅 시스템은 에러 상태로 전환할 수 있고, 이때 에러 상태를 나타내기 위한 메커니즘은 가상 경계가 제3컬러로 바뀌는 것을 나타내는 광을 포함할 수 있으며, 시스템은 사용자가 컴퓨팅 시스템과의 교류를 위해 가상 경계 안에 있는 경우 추가 제스처들을 수신하도록 귀환한다.
상술한 바와 같이, 다른 실시예들에서 시스템은 적어도 두 개의 서로 다른 모드들인 태블릿 모드와 노트북 모드에서 사용될 수 있는 변환가능 태블릿 시스템으로서 구성될 수 있다. 변환가능 시스템은 두 개의 패널들, 즉 태블릿 모드에서 두 패널들이 하나가 다른 하나 위에 스택 상태로 배치되는 디스플레이 패널과 베이스 패널을 가질 수 있다. 태블릿 모드에서 디스플레이 패널은 밖으로 향하여 일반적 태블릿들에서 보여지는 바와 같은 터치 스크린 기능을 제공할 수 있다. 노트북 모드에서 두 패널들은 열린 조개껍데기 구성으로 정렬될 수 있다.
다양한 실시예들에서 가속도계는 적어도 50Hz의 데이터 레이트를 가진 3축 가속도계일 수 있다. 자이로스코프 또한 포함될 수 있으며, 3축 자이로스코프일 수 있다. 또한 전자 콤파스/자력계가 있을 수 있다. 또한 하나 이상의 근접 센서들이 제공될 수 있다(가령, 뚜껑이 열릴 때 사람이 시스템에 근접할 때(하지 않을 때)를 감지하여 배터리 수명 연장을 위해 전력/성능을 조정함). 가속도계, 자이로스코프 및 콤파스를 포함한 일부 OS의 센서 퓨전 기능은 개선된 특성들을 제공할 수 있다. 또한 실시간 시계(RTC)를 가진 센서 허브를 통해 시스템의 나머지가 저전력 상태에 있을 때 센서 입력을 수신하도록 센서들로부터의 기동 메커니즘이 구현될 수 있다.
일부 실시예들에서 뚜껑이 닫히고/열릴 때를 나타내기 위한 내부 리드/디스플레이 오픈 스위치나 센서가 사용되어 시스템을 연결 스탠바이(Connected Standby)로 놓거나 연결 스탠바이 상태로부터 자동 기동시킬 수 있다. 다른 시스템 센서들은 감지된 파라미터들에 기반하여 프로세서 및 시스템 운영 상태들에 대한 변화를 가능하게 하도록 모니터링하는 내부 프로세서, 메모리, 및 표면 온도에 대한 ACPI 센서들을 포함할 수 있다.
일 실시예에서 OS는 Connected Standby(여기서 Win8 CS라고도 지칭함)를 구현하는 마이크로소프트 윈도우즈 8 OS일 수 있다. 윈도우즈 8 Connected Standby 또는 유사 상태를 가지는 다른 OS는 본 명세서에 기술된 것과 같은 플랫폼을 통해, 애플리케이션들을 매우 낮은 전력 소비로 클라우드 기반 위치 등에 연결된 상태로 놓을 수 있는 매우 낮은 울트라 유휴 전력을 제공할 수 있다. 플랫폼은 3 가지 전력 상태들, 즉 스크린 온(정상); Connected Standby(디폴트 "오프" 상태로서); 및 셧 다운(0 와트의 소비 전력)을 지원할 수 있다. 따라서 Connected Standby 상태에서 플랫폼은 스크린이 오프 되어 있더라도 논리적으로 온 상태(최소 전력 레벨)에 있다. 그러한 플랫폼에서 전력 관리는 최저 전력이 공급된 구성요소가 어떤 동작을 수행할 수 있게 하는 오프로드 기술로 인해 일부분, 애플리케이션들에 대해 투과적이고 일정한 연결성을 유지하도록 이루어질 수 있다.
도 13에서 알 수 있는 바와 같이, 다양한 주변 기기들은 LPC(low pin count) 상호연결부를 통해 프로세서(1310)에 연결될 수 있다. 도시된 실시예에서 다양한 구성요소들은 임베디드 컨트롤러(1335)를 통해 결합될 수 있다. 그러한 구성요소들은 키보드(1336)(가령, PS2 인터페이스를 통해 결합됨), 팬(1337), 열 센서(1339)를 포함할 수 있다. 일부 실시예들에서 터치 패드(1330) 또한 PS2 인터페이스를 통해 EC(1335)에 결합할 수 있다. 또한 2003년 10월 2일자 신뢰 컴퓨팅 그룹(TCG) 신뢰 플랫폼 로직(TPM) 사양 버전 1.2에 따른 TPM(1338)과 같은 보안 프로세서 역시 이러한 LPC 상호연결부를 통해 프로세서(1310)에 결합될 수 있다. 그러나, 본 발명의 범위가 이러한 것에 한정되는 것은 아니며, 보안 정보에 대한 보안 프로세싱 및 저장은 보안 코프로세서 내 SRAM(static random access memory)과 같은 다른 보호 위치에서 있을 수 있거나 보안 고립지(secure enclave; SE) 프로세서 모드에 의해 보호될 때에만 암호가 해독되는 암호화된 데이터 블롭들로서 있을 수 있다.
특정 구현예에서, 주변 포트들은 HDMI(high definition media interface) 커넥터(풀 사이즈, 미니 또는 미크로와 같은 다야안 폼 팩터들을 가질 수 있음); 적어도 하나가 시스템이 Connected Standby 상태에 있고 AC 벽면 파워에 꽂혀 있을 때 적어도 하나가 USB 장치들의 충전을 위해 전력이 제공되어 있는 상태에서 (스마트폰들과 같이) 유니버설 시리얼 버스 개정안 3.0 사양(2008년 11월)에 따른 풀 사이즈 외부 포트들과 같은 하나 이상의 USB 포트들을 포함할 수 있다. 또한 하나 이상의 썬더볼트(Thunderbolt) 포트들이 제공될 수 있다. 다른 포트들은 풀 사이즈 SD-XC 카드 리더 및/또는 WWAN에 대한 SIM 카드 리더(가령, 8 핀 카드 리더)와 같은 외부적으로 액세스 가능한 카드 리더를 포함할 수 있다. 오디오에 있어서, 스테레오 사운드 및 마이크로폰 기능(가령, 복합 기능)을 가진 3.5mm 잭이 있을 수 있으며, 잭 검출에 대한 지원이 따른다(가령, 리드 안에 마이크로폰을 사용 시 헤드폰만을 지원하거나 케이블에서 헤드폰과 마이크로폰을 지원). 일부 구현예들에서 이러한 잭은 스테레오 헤드폰과 스테레오 마이크로폰 입력 사이에서 재작업할 수 있다. 또한 파워 잭이 AC 브릭에 결합하기 위해 제공될 수 있다.
시스템(1300)은 무선을 포함하여 다양한 방식으로 외부 장치들과 통신할 수 있다. 도 13에 도시된 실시예에서, 각각이 특정한 무선 통신 프로토콜에 대해 구성된 무선기에 해당할 수 있는 다양한 무선 로직들이 존재한다. 근접 필드와 같은 단거리의 무선 통신을 위한 하나의 방식은 일 실시예에서 SMBus를 통해 프로세서(1310)와 통신할 수 있는 근접 필드 통신(NFC) 유닛(1345)을 통한 것일 수 있다. 이러한 NFC 유닛(1345)을 통해, 서로 가까이 근접한 장치들이 통신할 수 있다. 예를 들어 사용자는 사용자는 시스템(1300)이 사용자의 스마트폰과 같은 다른 휴대형 장치와, 그 두 장치들을 근접 관계로 함께 적응시키고 식별 정보, 지불 정보, 이미지 데이터와 같은 데이터 등과 같은 정보 전송을 가능하게 함으로써, 통신하게 할 수 있다. 무선 전력 전송 역시 NFC 시스템을 이용하여 수행될 수 있다.
본 명세서에 기술된 NFC 유닛을 이용하여, 사용자들은 그러한 장치들 중 하나 이상의 코일들 사이의 결합을 이용함으로써 근접 필드 결합 기능들(근접 필드 통신 및 무선 전력 전송(WPT)와 같은 것)을 위해 장치들을 나란히 붙이고 나란히 놓을 수 있다. 보다 상세히 말하면, 실시예들은 코일들의 보다 나은 결합을 제공하기 위해 장치들에 전략적으로 형상화되고 배치된 페라이트 물질들을 제공한다. 각각의 코일은 그와 관련된 인덕턴스를 가지며, 그것은 시스템의 공통 공진 주파수를 가능하게 하도록 시스템의 저항성, 용량성 그리고 다른 특성들과 함께 선택될 수 있다.
도 13에서 더 알 수 있는 바와 같이, 추가 무선 유닛들은 WLAN 유닛(1350) 및 블루투스 유닛(1352)를 포함하는 다른 단거리 무선 엔진들을 포함할 수 있다. WLAN 유닛(1350)을 이용하여, 주어진 IEEE(Institute of Electrical and Electronics Engineers) 802.11 규격에 따른 Wi-Fi 통신이 실현될 수 있고, 블루투스 유닛(1352)을 통해 블로투스 프로토콜들을 통한 단거리 통신이 일어날 수 있다. 이러한 유닛들은 가령 USB 링크나 UART(universal asynchronous receiver transmitter) 링크를 통해 프로세서와 통신할 수 있다. 아니면 이러한 유닛들이 PCIe(Peripheral Component Interconnect Express) 프로토콜, 가령 (2007년 1월 17일 공개된) PCI 익스프레스 사양 기반의 사양 버전 3.0에 따라, 아니면 SDIO(serial data input/output) 규격과 같은 그러한 다른 프로토콜에 따른 상호연결부를 통해 프로세서(1310)에 결합될 수 있다. 물론, 하나 이상의 애드인(add-in) 카드들 상에서 구성될 수 있는 이러한 주변 기기들 사이의 실제적인 물리적 접속은 마더보드에 맞춰진 NGFF 커넥터들을 이용할 수 있다.
또한 셀룰라 또는 기타 무선 광역 프로토콜에 따른 무선 광역 통신들이 가입자 아이디 로직(SIM)(1357)에 다시 연결될 수 있는 WWAN 유닛(1356)을 통해 일어날 수 있다. 또한, 위치 정보의 수신 및 사용을 가능하게 하기 위해 GPS 로직(1355) 또한 존재할 수 있다. 도 13에 도시된 실시예에서, WWAN 유닛(1356) 및 카메라 로직(1354)과 같은 통합 캡처 장치는 USB 2.0이나 3.0 링크와 같은 소정 USB 프로토콜, 또는 UART, 또는 I2C 프로토콜을 통해 통신할 수 있다. 다시 이러한 유닛들의 실제적인 물리적 연결은 마더보드 상에 구성된 NGFF 커넥터에 대한 NGFF 애드인 카드의 맞춤을 통해 있을 수 있다.
특정 실시예에서, 무선 기능은 모듈 방식, 예컨대 윈도우즈 8 CS를 지원하는 WiFi 802.11ac 솔루션(가령, IEEE802.11abgn과 역 호환가능한 애드인 카드)을 가지고 제공될 수 있다. 이 카드는 내부 슬롯 안에 구성될 수 있다(가령, NGFF 어댑터를 통해). 추가 로직은 블루투스 기능(가령, 역 호환성을 가진 블루투스 4.0) 및 인텔 무선 디스플레이 기능을 제공할 수 있다. 또한, NFC 지원이 별개의 장치나 다기능 장치를 통해 제공될 수 있고, 예로서 쉬운 액세스를 위해 섀시의 앞면 우측부에 배치될 수 있다. 추가 로직은 3G/4G/LTE 및 GPS에 대한 지원을 제공할 수 있는 WWAN 장치일 수 있다. 이 로직은 내부(가령, NGFF) 슬롯 안에서 구현될 수 있다. WiFi, 블루투스, WWAN, NFC 및 GPS를 위해 통합 안테나 지원이 제공되어, 무선 기가비트 사양(2010년 7월)에 따른 무선 기가비트(WiGig)의 WiFi에서 WWAN 무선기들로의 끊어지지 않는 전환 및 그 반대 경우로의 전환을 가능하게 한다.
상술한 바와 같이 통합된 카메라가 리드(lid) 안에 병합될 수 있다. 일례로서, 이 카메라는 고해상도 카메라, 예컨대 적어도 2.0 메가픽셀(MP) 및 6.0MP 및 그 너머까지 확장되는 해상도를 가진 것일 수 있다.
오디오 입력 및 출력을 제공하기 위해, 오디오 프로세서가 고선명 오디오(HDA) 링크를 통해 프로세서(1310)와 결합할 수 있는 디지털 신호 프로세서(DSP)(1360)를 통해 구현될 수 있다. 마찬가지로, DSP(1360)는 통합 코더/디코더(CODEC), 및 섀시 안에 구현될 수 있는 출력 스피커들(1363)로 더 연결될 수 있는 증폭기(1362)와 통신할 수 있다. 마찬가지로, 증폭기 및 CODEC(1362)은 일 실시예에서 시스템 안에서 다양한 동작들의 음성 활성화된 제어를 가능하게 하기 위해 고품질 오디오 입력들을 제공하기 위해 듀얼 어레이 마이크로폰들(디지털 마이크로폰 어레이와 같은 것)을 통해 구현될 수 있는 마이크로폰(1365)으로부터 오디오 입력들을 수신하도록 연결될 수 있다. 또한 오디오 출력들은 증폭기/CODEC(1362)로부터 헤드폰 잭(1364)으로 제공될 수 있다는 것을 알아야 한다. 도 13의 실시예에서 이러한 특정 구성요소들이 있는 것으로 도시되지만, 본 발명의 범위는 이와 관련하여 한정되지 않는다.
특정 실시예에서, 디지털 오디오 코덱 및 증폭기는 스테레오 헤드폰 잭, 스테레오 마이크로폰 잭, 내부 마이크로폰 어레이 및 스테레오 스피커들을 구동할 수 있다. 다양한 구현예들에서, 코덱은 오디오 DSP에 통합되거나 HD 오디오 경로를 통해 주변 제어기 허브(PCH)로 연결될 수 있다. 일부 구현예들에서, 통합된 스테레오 스피커들 외에, 하나 이상의 저음 스피커들이 제공될 수 있고, 스피커 솔루션은 DTS 오디오를 지원할 수 있다.
일부 실시예들에서 프로세서(1310)는 FIVR(fully integrated voltage regulator)들이라 불리는 프로세서 다이 안에 병합되는 여러 내부 전압 레귤레이터(VR)들 및 외부 전압 레귤레이터에 의해 전력 공급될 수 있다. 프로세서에서 여러 FIVR들의 사용은 독립된 전력 플레인들로의 구성요소들의 그룹화를 가능하게 함으로써, 전력이 FIVR에 의해 해당 그룹 내 구성요소들에만 조정 및 공급되도록 한다. 전력 관리 중에, 프로세서가 어떤 저전력 상태로 놓이게 될 때 한 FIVR의 소정 전력 플레인의 전력이 줄어들거나 오프될 수 있고, 다른 FIVR의 다른 전력 플레인은 액티브 상태를 유지하거나 충분히 전력 공급될 수 있다.
일 실시예에서, 일부 딥 슬립(deep sleep) 상태들 중에 프로세서 및 PCH 사이의 인터페이스, 외부 VR을 가진 인터페이스 및 EC(1335)를 가진 인터페이스와 같이 여러 I/O 신호들에 대한 I/O 핀들로 전력을 제공하기 위해 전력 유지 플레인이 사용될 수 있다. 이 전력 유지 플레인은 또한 슬립 상태 중에 프로세서 상황이 저장되는 온 보드 SRAM이나 다른 캐시 메모리를 지원하는 온 다이(on-die) 전압 레귤레이터에 전력을 공급한다. 전력 유지 플레인은 또한 다양한 기동 소스 신호들을 모니터링하고 처리하는 프로세서의 기동 로직에 전력을 공급하는데 사용된다.
전력 관리 중에, 프로세서가 소정 딥 슬립 상태들로 들어갈 때 다른 전력 플레인들이 전력 감소되거나 오프되는 동안, 전력 유지 플레인은 상기 언급된 구성요소들을 지원하기 위해 계속 전력이 공급된 상태로 있게 된다. 그러나, 이것은 그러한 구성요소들이 필요로 되지 않을 때, 불필요한 전력 소비나 낭비를 가져올 수 있다. 이를 위해 실시예들은 전용 전력 플레인을 이용하여 프로세서 상황을 유지하기 위해 연결 스탠바이(connected standby) 슬립 상태를 제공할 수 있다. 일 실시예에서 연결 스탠바이 슬립 상태는 프로세서를 가진 패키지 안에 자체가 존재할 수 있는 PCH의 자원들을 이용하여 프로세서 기동을 돕는다. 일 실시예에서 연결 스탠바이 슬립 상태는 프로세서가 기동할 때까지 PCH 내 프로세서의 구조적 기능들을 유지하는 것을 돕고, 이것은 클록들 전체를 턴 오프하는 것을 포함하여 딥 슬립 상태들 중에 앞서 계속해서 전력이 공급된 상태로 남아 있는 불필요한 프로세서 구성요소들 모두를 턴 오프시키게 할 수 있다. 일 실시예에서 PCH는 연결 스탠바이 상태 중에 시스템을 제어하기 위해 타임 스탬프 카운터(TSC) 및 연결 스탠바이 로직을 포함한다. 전력 유지 플레인에 대한 통합 전압 레귤레이터 또한 PCH 상에 상주할 수 있다.
일 실시예에서 연결 스탠바이 상태 중에, 통합 전압 레귤레이터는 프로세서가 딥 슬립 상태들 및 연결 스탠바이 상태로 진입할 때 임계 상태 변수들과 같은 프로세서 상황이 저장되는 전용 캐시 메모리를 지원하기 위해 계속해서 전력이 공급된 상태로 남아 있는 전용 전력 플레인으로서 기능할 수 있다. 그러한 임계 상태는 구조적, 마이크로 구조적, 디버그 상태와 관련된 상태 변수들 및/또는 프로세서와 관련된 유사한 상태 변수들을 포함할 수 있다.
EC(1335)로부터의 기동 소스 신호들은 연결 스탠바이 상태 중에, PCH가 프로세서 대신 기동 프로세싱을 관리할 수 있도록 프로세서 대신 PCH로 전송될 수 있다. 또한, 프로세서의 구조적 기능들을 유지하도록 돕기 위해 TSC가 PCH 안에서 유지된다. 도 13의 실시예에서 이러한 특정 구성요소들이 있는 것으로 도시되지만, 본 발명의 범위는 이와 관련하여 한정되지 않는다.
프로세서에서의 전력 제어는 개선된 전력 절감을 가져올 수 있다. 예를 들어 전력이 코어들 사이에 동적으로 할당될 수 있고, 개별 코어들은 주파수/전압을 변경할 수 있으며, 여러 딥 저전력 상태들이 매우 낮은 전력 소비를 가능하게 하도록 제공될 수 있다. 또한 코어들이나 독립적 코어 부분들에 대한 동적 제어가 구성요소들이 사용되지 않고 있을 때 이들을 전력 오프함으로써 감소된 전력 소비를 제공할 수 있다.
일부 구현예들은 제어 플랫폼 전력에 대한 고유한 전력 관리 IC(PMIC)를 제공할 수 있다. 이러한 솔루션을 이용하여 시스템은 Win8 Connected Standby 상태에 있을 때와 같이 주어진 스탠바이 상태에 있을 때 확장된 듀레이션(가령, 16 시간) 동안 매우 낮은(가령, 5% 미만의) 배터리 저하를 볼 수 있다. Win8 유휴 상태에서 가령 9 시간을 초과하는 배터리 수명이 실현될 수 있다(가령, 150 니츠). 비디오 재생과 관련하여, 긴 배터리 수명이 실현될 수 있는데, 예컨대 최소 6 시간 동안 풀 HD 비디오 재생이 일어날 수 있다. 한 구현예에서 플랫폼은 SSD를 이용하는 Win8 CS에 대해 가령 35 와트 아우어(Whr) 및 (가령) RST 캐시 구성을 가진 HDD를 이용하는 Win8 CS에 대해 40-44Whr의 에너지 용량을 가질 수 있다.
특정 구현예는 대략 25W TDP 설계 포인트까지의 설정 가능 CPU TDP를 가진 15W의 공칭 CPU 열 디자인 전력(TDP)에 대한 지원을 제공할 수 있다. 플랫폼은 상술한 열적 특성들로 인해 최소한의 분출구들을 포함할 수 있다. 또한, 플랫폼은 (어떤 뜨거운 공기도 사용자에게 불어오지 않는다는 점에서) 받침 친화적이다(pillow-friendly). 섀시 물질에 따라 다양한 최대 온도 포인트들이 실현될 수 있다. 플라스틱 섀시의 한 구현예에서(적어도 플라스틱으로된 리드나 베이스 부분을 가짐), 최대 동작 온도는 섭씨(C) 52도일 수 있다. 그리고 금속 섀시의 구현예에 있어서, 최대 동작 온도는 46°C일 수 있다.
다양한 구현예들에서, TPM과 같은 보안 로직이 프로세서 안에 병합되거나 TPM 2.0 장치와 같은 개별 장치가 될 수 있다. 플랫폼 신뢰 기술(PTT)이라고도 불리는 통합된 보안 로직을 사용 시, BIOS/펌웨어는 보안 키보드 및 디스플레이와 같은 안전한 사용자 인터페이스들과 함께 보안 명령어들, 보안 부팅, 인텔 도난 방지 기술, 인텔 신원 보호 기술, 인텔 TXT(Trusted Execution Technology), 및 인텔 관리능력 엔진 기술을 포함하는 소정 보안 특성들을 위한 소정 하드웨어 특성들을 노출하도록 동작될 수 있다.
이제 도 14를 참조하면, 본 발명의 일 실시예에 따른 제2시스템(1400)의 블록도가 도시된다. 도 14에 도시된 바와 같이, 멀티프로세서 시스템(1400)은 일대일 상호연결 시스템이며, 일대일 상호연결부(1450)을 통해 결합되는 제1프로세서(1470) 및 제2프로세서(1480)를 포함한다. 프로세서들(1470 및 1480) 각각은 어떤 버전의 프로세서일 수 있다. 일 실시예에서 1452 및 1454는 인텔의 퀵 패스 상호연결(QPI) 아키텍처와 같은 직렬 일대일 코히어런트 상호연결 패브릭의 일부이다. 결과적으로 본 발명은 QPI 아키텍처 안에 구현될 수 있다.
단 두 개의 프로세서들(1470, 1480)을 가진 것으로 보여지지만, 본 발명의 범위가 그렇게 국한되는 것은 아니라는 것을 알아야 한다. 다른 실시예들에서 하나 이상의 프로세서들이 어떤 주어진 프로세서 안에 존재할 수 있다.
프로세서들(1470 및 1480)은 각각 통합된 메모리 컨트롤러 유닛들(1472 및 1482)을 포함하는 것으로 보여진다. 프로세서(1470)는 자신의 버스 컨트롤러 유닛들의 일부로서 일대일(P-P) 인터페이스들(1476 및 1478)을 또한 포함한다; 마찬가지로 제2프로세서(1480)은 P-P 인터페이스들(1486 및 1488)을 포함한다. 프로세서들(1470, 1480)은 일대일(P-P) 인터페이스 회로들(1478 1488)을 이용하여 P-P 인터페이스(1450)을 통해 정보를 교환할 수 있다. 도 14에 도시된 바와 같이, IMC들(1472 및 1482)는 프로세서들을 각자의 메모리들, 즉 메모리(1432) 및 메모리(1434)에 결합시키며, 이 메모리들은 각자의 프로세서들에 내부적으로 부착된 메인 메모리의 일부들일 수 있다.
프로세서들(1470, 1480)은 각각 일대일 인터페이스 회로들(1476, 1494, 1486, 1498)을 이용하여 개별 P-P 인터페이스들(1452, 1454)을 통해 칩셋(1490)과 정보를 교환한다. 칩셋(1490)은 역시 고성능 그래픽 상호연결부(1439)를 따라 인터페이스 회로(1492)를 통해 고성능 그래픽 회로(1438)와 정보를 교환한다.
공유된 캐시(미도시)가 어느 한 프로세서 안이나 두 프로세서들 외부에 포함될 수 있지만, P-P 상호연결을 통해 프로세서들과 연결되어, 어느 한 프로세서나 두 프로세서들 모두의 로컬 캐시 정보가 어느 프로세서가 저전력 모드에 놓이게 되면 공유 캐시 안에 저장될 수 있도록 할 수 있다.
칩셋(1490)은 인터페이스(1496)를 통해 제1버스(1416)에 연결될 수 있다. 일 실시예에서 제1버스(1416)는 PCI(Peripheral Component Interconnect) 버스이거나, PCI 익스프레스 버스나 다른 제3세대 I/O 상호연결 버스와 같은 버스일 수 있지만, 본 발명의 범위가 그렇게 한정되는 것은 아니다.
도 14에 도시된 바와 같이, 다양한 I/O 장치들(1414)은 제1버스(1416)를 제2버스(1420)에 결합시키는 버스 브리지(1418)와 함께 제1버스(1416)에 연결된다. 일 실시예에서 제2버스(1420)는 낮은 핀 카운트(LPC) 버스를 포함한다. 다양한 장치들이 예컨대, 일 실시예에서 키보드 및/또는 마우스(1422), 통신 장치들(1427) 및 종종 명령어들/코드 및 데이터(1430)를 포함하는 디스크 드라이브나 기타 대량 저장 소자와 같은 저장 유닛(1428)을 포함하는 제2버스(1420)에 연결된다. 또한 오디오 I/O(1424)가 제2버스(1420)에 연결되는 것으로 보여진다. 포함된 구성요소들과 상호연결 구조들이 가변되는 다른 구조들이 가능하다는 것을 알아야 한다. 예를 들어 도 14의 일대일 구조 대신, 시스템은 멀티 드롭 버스나 그러한 다른 구조를 구현할 수 있다.
본 발명은 제한된 수의 실시예들과 관련하여 기술되었지만, 당업자는 그로부터의 수많은 변형과 변경들을 예상할 수 있을 것이다. 부가된 청구범위는 그러한 모든 변형과 변경들을 본 발명의 진정한 개념 및 범위 안에 들어오는 것으로서 포괄하도록 되어 있다.
디자인은 생성에서 시뮬레이션과 제조까지의 다양한 단계들을 거친다. 디자인을 나타내는 데이터는 여러 방식으로 그 설계를 표현할 수 있다. 먼저, 시뮬레이션 시 유용한 것으로서, 하드웨어가 하드웨어 기술 언어나 다른 기능적 서술 언어를 이용하여 표현될 수 있다. 또한 로직 및/또는 트랜지스터 게이트들을 가진 회로 레벨 모델이 디자인 공정의 어떤 단계들에서 생성될 수 있다. 또한, 어떤 단계에서 대부분의 디자인들은 하드웨어 모델의 다양한 장치들의 물리적 배치를 나타내는 데이터의 레벨에 도달한다. 종래의 반도체 제조 기법들이 사용되는 경우, 하드웨어 모델을 나타내는 데이터는 집적 회로를 생성하는데 사용되는 마스크들을 위한 다양한 마스크 계층들 상의 다양한 특성들의 존재나 부재를 특정하는 데이터일 수 있다. 이 디자인의 모든 표현에 있어서, 해당 데이터가 어떤 형식의 장치 판독가능 매체 안에 저장될 수 있다. 메모리나 디스크와 같은 자기나 광 저장부가 그러한 정보를 전송하기 위해 변조되거나 생성되는 광 또는 전기적 파형을 통해 전송되는 정보를 저장할 장치 판독가능 매체일 수 있다. 코드나 디자인을 나타내거나 전달하는 전기적 파형이 전기적 신호의 복사, 버퍼링 또는 재전송이 수행되는 상태로 전송될 때, 새로운 사본이 만들어진다. 따라서, 통신 제공자나 네트워크 제공자는 유형의 장치 판독가능 매체 상에 적어도 일시적으로, 본 발명의 실시예들의 기법들을 구현하는, 반송파로 부호화된 정보와 같은 항목을 저장할 수 있다.
본 명세서에서 사용되는 로직은 하드웨어, 소프트웨어 및/또는 펌웨어의 어떤 조합을 나타낸다. 예로서, 로직은 마이크로 컨트롤러에 의해 실행되도록 적응된 코드를 저장할 비임시적 매체와 관련된 마이크로 컨트롤러와 같은 하드웨어를 포함한다. 따라서 일 실시예에서 로직에 대한 언급은 비임시 매체 상에 보유될 코드를 인식 및/또는 실행하도록 특별히 구성된 하드웨어를 일컫는다. 또한, 다른 실시예에서 로직의 사용은 소정 동작들을 수행하기 위해 마이크로 컨트롤러에 의해 실행되도록 특별히 적응된 코드를 포함하는 비일시적 매체를 일컫는다. 그리고 추론되는 바와 같이, 또 다른 실시예에서 (이 예에서의) 로직이라는 용어는 마이크로 컨트롤러와 비일시적 매체의 조합을 나타낼 수 있다. 흔히 로직의 경계는 각각이 전형적으로 가변되고 오버랩 가능성을 가진 것으로서 예시된다. 예를 들어, 제1 및 제2 로직은 어떤 독립적인 하드웨어, 소프트웨어, 또는 펌웨어를 보유하면서 하드웨어, 소프트웨어, 또는 펌웨어나 이들의 어떤 조합을 공유할 수 있다. 일 실시예에서, 로직이라는 용어의 사용은 트랜지스터, 레지스터 같은 하드웨어나, 프로그래머블 로직 장치들 같은 다른 하드웨어를 포함한다.
일 실시예에서 "구성된다"는 말의 사용은 지정되거나 결정된 작업을 수행하기 위해 장치, 하드웨어, 로직 또는 소자를 구성, 조립, 제조, 판매를 위해 제공, 수입 및/또는 설계한다는 것을 의미한다. 이 예에서 동작되고 있지 않은 장치나 그 요소는 그것이 지정된 작업을 수행하도록 설계, 결합 및/또는 상호연결되지 않으면 상기 지정된 작업을 수행하기 위해 "구성된다". 순전히 도시적 예로서, 로직 게이트는 동작 중에 0이나 1을 제공할 수 있다. 그러나 클록에 인에이블(enable) 신호를 제공하도록 구성된 로직 게이트는 1이나 0을 제공할 수 있는 모든 가능한 로직 게이트를 포함하는 것이 아니다. 대신 로직 게이트는 동작 중에 그 1이나 0 출력이 클록을 동작하게 하는 어떤 방식으로 결합된 것이다. 다시 한번 '구성된다'라는 용어의 사용은 동작을 필요로 하는 것이 아니라, 대신 장치, 하드웨어, 및/또는 구성요소의 잠재적 상태에 초점을 맞추는 것이며, 그러한 잠재적 상태에서 장치, 하드웨어 및/또는 구성요소는 장치, 하드웨어, 및/또는 구성요소가 동작하고 있을 때 특정 작업을 수행하도록 설계된다는 것을 알아야 한다.
또한 '할 수 있다' 및/또는 '동작한다'라는 말의 사용은 일 실시예에서, 어떤 장치, 로직, 하드웨어 및/또는 구성요소가 장치, 로직, 하드웨어 및/또는 구성요소의 사용을 특정 방식으로 가능하게 하는 방식으로 설계됨을 의미한다. 위에서와 같이 '할 수 있다'거나 '동작한다'의 사용은 일 실시예에서, 장치, 로직, 하드웨어 및/또는 구성요소의 잠재적 상태를 의미하며, 여기서 장치, 로직, 하드웨어 및/또는 구성요소는 동작하고 있지 않고 특정 방식으로 장치의 사용을 가능하게 하는 방식으로 설계된다.
여기에서 사용된 것과 같은 값(value)은 숫자, 상태, 로직 상태, 또는 이진 로직 상태의 어떤 알려진 표현을 포함한다. 보통, 로직 레벨, 로직 값, 또는 로직 로지컬 값들의 사용은 단순히 이진 로직 상태들을 나타내는 1들과 0들로 지칭된다. 예를 들어, 1은 하이 로직 레벨을 나타내고 0은 로우 로직 레벨을 나타낸다. 일 실시예에서, 트랜지스터나 플래시 셀 같은 저장 셀은 단일 로직 값이나 여러 로직 값들을 보유할 수 있다. 그러나, 컴퓨터 시스템에서 값에 대한 다른 표현들이 사용되어져 왔다. 예를 들어 십진수 10 역시 1010이라는 이진 수와 16진수 A로 표현될 수 있다. 따라서, 값은 컴퓨터 시스템에서 보유될 수 있는 정보의 어떤 표현을 포함한다.
또한, 상태들은 값들이나 값들의 일부에 의해 표현될 수 있다. 예로서, 로직 1 같은 제1값은 디폴트 또는 초기 상태를 나타낼 수 있고, 로직 0 같은 제2값은 디폴트가 아닌 상태를 나타낼 수 있다. 또, 일 실시예에서 리셋과 셋이라는 용어는 디폴트 및 업데이트 값이나 상태를 각기 의미한다. 예를 들어 디폴트 값은 하이 로직 값, 즉 리셋을 포함할 수 있고, 업데이트 값은 로우 로직 값, 즉 셋을 포함할 수 있다. 임의 개의 상태들을 표현하기 위해 어떤 값들의 조합들이 사용될 수 있다.
상술한 방법, 하드웨어, 소프트웨어, 펌웨어 또는 코드의 실시예들은 프로세싱 요소에 의해 실행될 수 있는 장치 액세스 가능하거나 장치 판독가능하거나 컴퓨터 액세스 가능하거나 컴퓨터 판독가능한 매체 상에 저장되는 명령어나 코드를 통해 구현될 수 있다. 일시적이지 않은 장치 액세스 가능/판독 가능한 매체는 컴퓨터나 전자 시스템 같이 기계 장치에 의해 판독될 수 있는 형식으로 정보를 제공하는(즉, 저장 및/또는 전송하는) 어떤 메커니즘을 포함한다. 예를 들어 비일시적 장치 액세스 가능 매체는 정보를 수신할 수 있는 일시적이지 않은 매체들과는 구별되어야 하는 SRAM(static RAM)이나 DRAM(dynamic RAM)과 같은 RAM(random-access memory); ROM; 자기 또는 광학 저장 매체; 플레시 메모리 소자들; 전기적 저장 소자들; 광학 저장 소자들; 청각적 저장 소자들; 일시적(전파) 신호들(가령, 반송파들, 적외선 신호들, 디지털 신호들) 등을 보유하기 위한 다른 형식의 저장 소자들을 포함한다.
본 발명의 실시예들을 수행하기 위한 로직을 프로그래밍하는데 사용되는 명령어들은 DRAM, 캐시, 플래시 메모리, 또는 다른 저장부와 같은 시스템 안의 메모리 안에 저장될 수 있다. 또한 명령어들은 네트워크를 통하거나 다른 컴퓨터 판독가능 매체들을 통해 배포될 수 있다. 따라서 장치 판독가능 매체는 장치(가령, 컴퓨터)에 의해 판독가능한 형식으로 정보를 저장하거나 전송하기 위한 어떤 메커니즘을 포함할 수 있으나, 플로피 디스켓, 광학 디스크, 컴팩트 디스크, CD-ROM(Compact Disc, Read-Only Memory), 및 광자기 디스크, ROM(Read-Only Memory), RAM(Random Access Memory), EPROM(Erasable Programmable Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 자기 또는 광 카드, 플래시 메모리, 또는 전기, 광, 청각, 또는 다른 형태의 전파 신호들(가령, 반송파, 적외선 신호, 디지털 신호 등)을 통해 인터넷을 거친 정보 전송에 사용되는 유형의 장치 판독가능 저장부에 한정되지 않는다. 따라서 컴퓨터 판독가능 매체는 장치(가령, 컴퓨터)에 의해 판독가능한 형식의 전자 명령어들이나 정보를 저장하거나 전송하는데 적합한 어떤 타입의 유형의 장치 판독가능 매체를 포함한다.
이 명세서 전체를 통해 "일 실시예(one embodiment 또는 an embodiment)"의 언급은 그 실시예와 관련해 기술된 특정한 구성, 구조, 또는 특징이 본 발명의 적어도 일 실시예 안에 포함된다는 것을 의미한다. 따라서, 이 명세서 전체를 통해 여러 곳에 나타나는 "일 실시예(one embodiment 또는 an embodiment)"의 문구가 모두 반드시 같은 실시예를 의미하는 것은 아니다. 또한, 특정 구성, 구조, 또는 특징들이 어떤 적절한 방식으로 한 개 이상의 실시예들 안에서 결합될 수 있다.
상기 명세서에서, 발명의 상세한 설명은 특정한 전형적 실시예들을 참조하여 주어졌다. 그러나 첨부된 청구범위에 기술된 것과 같은 본 발명의 보다 넓은 개념 및 범위로부터 벗어나지 않고 다양한 수정과 변경이 이뤄질 수 있다는 것은 자명한 일일 것이다. 따라서 명세서 및 도면은 한정적 맥락이 아닌 예시적 맥락으로 간주되어야 한다. 또한 상기 실시예 및 기타 전형적 언어의 사용은 반드시 그와 동일한 실시예나 동일한 예를 의미하는 것은 아니며, 다른 별개의 실시예들 및 동일한 가능성이 있는 실시예를 의미하는 것일 수 있다.
본 발명의 실시예들은 송신 모듈, 수신 모듈을 포함하는 장치를 포함하고, 송신 및 수신 모듈들을 저전력 소비 상태로 전환시키기 위해, 송신 및 수신 모듈들에 의해 이하의 단계들이 수행된다: 장치의 수신 모듈 및 송신 모듈의 고속 데이터 전송 레이트 상태를 정지하는 단계와, 상기 고속 데이터 전송 레이트 상태를 정지한 다음에 상기 수신 모듈 및 송신 모듈을 전력 절감 상태로 전환하는 단계와, 상기 수신 모듈 및 송신 모듈이 모두 전력 절감 상태가 된 후, 상기 수신 및 송신 모듈들을 위한 구성 설정을 유지하는 최저 전력 소비 상태로 상기 수신 모듈을 전환하는 단계와, 상기 수신 모듈이 상기 수신 및 송신 모듈들을 위한 구성 설정을 유지하는 최저 전력 소비 상태로 전환한 후, 상기 수신 및 송신 모듈들을 위한 구성 설정을 유지하는 상기 최저 전력 소비 상태로 상기 송신 모듈을 전환하는 단계.
상기 장치의 일부 실시예들에서, 이하의 사항들 중 하나 이상이 서로 공동으로, 혹은 개별적으로 구현된다: i) 전력 절감 상태가 STALL 상태에 있고; ii) 수신 및 송신 모듈들의 구성 설정을 유지하는 최저 전력 소비 상태가 HIBERN8 상태에 있고; iii) 구성 설정을 유지하는 최저 전력 소비 상태로 수신 모듈들을 전환하기 전에 재구성 트리거가 수신되고; iv) 장치의 수신 모듈 및 송신 모듈의 고속 데이터 전송 레이트 상태를 중단하기 전에, 송신 모듈이 적어도 한 전기적 유휴 명령 세트를 다른 장치로 송신하고; v) 장치가 M-PHY를 지원하고; vi) 장치가 자신이 연결된 다른 장치와 다른 클록을 가짐.
본 발명의 실시예들은 송신 모듈 및 수신 모듈을 포함하는 제1장치, 송신 모듈 및 수신 모듈을 포함하는 제2장치, 상기 제1장치의 상기 송신 모듈 및 상기 제2장치의 상기 수신 모듈 사이의 제1물리적 라인, 상기 제1장치의 상기 송신 모듈 및 상기 제2장치의 상기 수신 모듈 사이의 제2물리적 라인을 포함하고, 상기 수신 및 송신 모듈들에 대한 구성 설정을 유지하는 최저 전력 소비 상태로 전환하기 위해, 상기 모듈들은 상기 제1장치의 상기 송신 모듈, 상기 제2장치의 상기 수신 모듈, 상기 제2장치의 상기 송신 모듈, 마지막으로 상기 제1장치의 상기 수신 모듈의 순서로 전력 절감 상태로 진입하고, 상기 수신 모듈 및 송신 모듈 모두가 모두 전력 절감 상태에 있은 후 상기 수신 및 송신 모듈들을 위한 구성 설정을 유지하는 최저 전력 소비 상태로 진입하며, 상기 각각의 장치의 상기 수신 모듈은 상기 장치의 송신 모듈들이 상기 상태로 진입하기 전에 상기 최저 전력 상태 안으로 진입한다.
상기 시스템의 일부 실시예들에서, 이하의 사항들 중 하나 이상이 서로 공동으로, 혹은 개별적으로 구현된다: i) 전력 절감 상태가 STALL 상태에 있고; ii) 수신 및 송신 모듈들의 구성 설정을 유지하는 최저 전력 소비 상태가 HIBERN8 상태에 있고; iii) 구성 설정을 유지하는 최저 전력 소비 상태로 수신 모듈들을 전환하기 전에 재구성 트리거가 수신되고; iv) 장치의 수신 모듈 및 송신 모듈의 고속 데이터 전송 레이트 상태를 중단하기 전에, 송신 모듈이 적어도 한 전기적 유휴 명령 세트를 다른 장치로 송신하고; v) 장치가 M-PHY를 지원하고; vi) 장치들이 서로 다른 클록들을 가짐.
본 발명의 실시예들은 장치의 수신 모듈 및 송신 모듈의 고속 데이터 전송 레이트 상태를 정지하는 단계와, 상기 고속 데이터 전송 레이트 상태를 정지한 다음에 상기 수신 모듈 및 송신 모듈을 전력 절감 상태로 전환하는 단계와, 상기 수신 모듈 및 송신 모듈이 모두 전력 절감 상태가 된 후, 상기 수신 모듈이 상기 수신 및 송신 모듈들을 위한 구성 설정을 유지하는 최저 전력 소비 상태로 전환한 후, 상기 수신 및 송신 모듈들을 위한 구성 설정을 유지하는 최저 전력 소비 상태로 상기 수신 모듈을 전환하는 단계와, 상기 수신 및 송신 모듈들을 위한 구성 설정을 유지하는 상기 최저 전력 소비 상태로 상기 송신 모듈을 전환하는 단계를 포함하는 방법을 포함한다.
상기 방법의 일부 실시예들에서, 이하의 사항들 중 하나 이상이 서로 공동으로, 혹은 개별적으로 구현된다: i) 전력 절감 상태가 STALL 상태에 있고; ii) 수신 및 송신 모듈들의 구성 설정을 유지하는 최저 전력 소비 상태가 HIBERN8 상태에 있고; iii) 구성 설정을 유지하는 최저 전력 소비 상태로 수신 모듈들을 전환하기 전에 재구성 트리거가 수신되고; iv) 장치의 수신 모듈 및 송신 모듈의 고속 데이터 전송 레이트 상태를 중단하기 전에, 송신 모듈이 적어도 한 전기적 유휴 명령 세트를 다른 장치로 송신하고; v) 장치가 M-PHY를 지원하고; vi) 장치들이 서로 다른 클록들을 가짐.

Claims (20)

  1. 송신 로직과,
    수신 로직과,
    상기 송신 로직 및 상기 수신 로직을 저전력 상태로 전환하는 상기 전력 로직을 포함하는 장치로서,
    상기 송신 로직 및 상기 수신 로직을 저전력 상태로 전환하는 상기 전력 로직은,
    장치의 수신 로직 및 송신 로직의 고속 데이터 전송 레이트 상태를 정지시키고(halt),
    상기 전력 로직이 상기 고속 데이터 전송 레이트 상태를 정지시킨 후에 상기 수신 로직 및 상기 송신 로직을 전력 절감 상태로 전환하고,
    상기 수신 로직 및 상기 송신 로직이 모두 전력 절감 상태가 된 후, 상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하기 위한 최저 전력 소비 상태로 상기 수신 로직을 전환하고,
    상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하기 위한 상기 최저 전력 소비 상태로 상기 수신 로직을 전환한 후, 상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 상기 최저 전력 소비 상태로 상기 송신 로직을 전환하는
    장치.
  2. 제 1 항에 있어서,
    상기 전력 절감 상태는 STALL 상태인
    장치.
  3. 제 1 항에 있어서,
    상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 상기 최저 전력 소비 상태는 HIBERN8 상태인
    장치.
  4. 제 1 항에 있어서,
    상기 수신 로직을 구성 설정을 유지하는 상기 최저 전력 소비 상태로 전환하기 전에, 재구성 트리거가 수신되는
    장치.
  5. 제 1 항에 있어서,
    상기 장치의 상기 수신 로직 및 상기 송신 로직의 상기 고속 데이터 전송 레이트 상태를 정지시키기 전에, 상기 송신 로직은 적어도 하나의 전기적 유휴 순서 세트(electrical idle ordered set)를 다른 장치로 송신하는
    장치.
  6. 제 1 항 내지 제 5 항에 있어서,
    상기 장치는 M-PHY를 지원하는
    장치.
  7. 제 1 항에 있어서,
    상기 장치는 연결된 다른 장치와 다른 클록을 가지는
    장치.
  8. 시스템으로서,
    송신 로직 및 수신 로직을 포함하는 제1장치와,
    송신 로직 및 수신 로직을 포함하는 제2장치와,
    상기 제1장치의 송신 로직과 상기 제2장치의 수신 로직 사이의 제1물리적 라인과,
    상기 제1장치의 송신 로직과 상기 제2장치의 수신 로직 사이의 제2물리적 라인을 포함하되,
    상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 최저 전력 소비 상태로 전환하기 위해, 상기 로직은,
    상기 제1장치의 송신 로직, 상기 제2장치의 수신 로직, 상기 제2장치의 송신 로직, 마지막으로 상기 제1장치의 수신 로직의 순서로 전력 절감 상태에 진입하고,
    상기 수신 로직 및 상기 송신 로직 모두가 상기 전력 절감 상태로 된 이후 상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 최저 전력 소비 상태로 진입하고, 각 장치의 수신 로직은 각 장치의 송신 로직이 최저 전력 상태로 진입하기 전에 상기 최저 전력 상태로 진입하는
    시스템.
  9. 제 8 항에 있어서,
    상기 전력 절감 상태는 STALL 상태인
    시스템.
  10. 제 8 항에 있어서,
    상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 상기 최저 전력 소비 상태는 HIBERN8 상태인
    시스템.
  11. 제 8 항에 있어서,
    상기 수신 로직을 구성 설정을 유지하는 상기 최저 전력 소비 상태로 전환하기 전에, 재구성 트리거가 수신되는
    시스템.
  12. 제 8 항에 있어서,
    상기 장치의 상기 수신 로직 및 상기 송신 로직의 상기 고속 데이터 전송 레이트 상태를 정지시키기 전에, 상기 송신 로직은 적어도 하나의 전기적 유휴 순서 세트를 다른 장치로 송신하는
    시스템.
  13. 제 8 항에 있어서,
    상기 장치는 M-PHY를 지원하는
    시스템.
  14. 제 8 항에 있어서,
    상기 장치는 서로 다른 클록을 가지는
    시스템.
  15. 장치의 수신 로직 및 송신 로직의 고속 데이터 전송 레이트 상태를 정지시키는 단계와,
    상기 고속 데이터 전송 레이트 상태를 정지시킨 후에 상기 수신 로직 및 상기 송신 로직을 전력 절감 상태로 전환하는 단계와,
    상기 수신 로직 및 상기 송신 로직이 모두 전력 절감 상태가 된 후, 상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 최저 전력 소비 상태로 상기 수신 로직을 전환하는 단계와,
    상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 상기 최저 전력 소비 상태로 상기 수신 로직을 전환한 후, 상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 상기 최저 전력 소비 상태로 상기 송신 로직을 전환하는 단계를 포함하는
    방법.
  16. 제 15 항에 있어서,
    상기 전력 절감 상태는 STALL 상태인
    방법.
  17. 제 15 항에 있어서,
    상기 수신 로직 및 상기 송신 로직을 위한 구성 설정을 유지하는 상기 최저 전력 소비 상태는 HIBERN8 상태인
    방법.
  18. 제 15 항에 있어서,
    상기 수신 로직을 구성 설정을 유지하는 상기 최저 전력 소비 상태로 전환하기 전에, 재구성 트리거가 수신되는
    방법.
  19. 제 15 항에 있어서,
    상기 장치의 상기 수신 로직 및 상기 송신 로직의 상기 고속 데이터 전송 레이트 상태를 정지시키기 전에, 상기 송신 로직이 적어도 하나의 전기적 유휴 순서 세트를 다른 장치로 송신하는 단계를 더 포함하는
    방법.
  20. 제 19 항에 있어서,
    상기 전기적 유휴 순서 세트의 송신 완료는 상기 전력 절감 상태로의 상기 수신 로직 및 상기 송신 로직의 전환을 개시하는
    방법.
KR1020140030610A 2013-03-15 2014-03-14 저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치 KR101591818B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/840,172 US9563260B2 (en) 2013-03-15 2013-03-15 Systems, apparatuses, and methods for synchronizing port entry into a low power state
US13/840,172 2013-03-15

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020150089809A Division KR102074018B1 (ko) 2013-03-15 2015-06-24 저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20140113569A true KR20140113569A (ko) 2014-09-24
KR101591818B1 KR101591818B1 (ko) 2016-02-04

Family

ID=50486736

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020140030610A KR101591818B1 (ko) 2013-03-15 2014-03-14 저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치
KR1020150089809A KR102074018B1 (ko) 2013-03-15 2015-06-24 저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020150089809A KR102074018B1 (ko) 2013-03-15 2015-06-24 저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치

Country Status (5)

Country Link
US (2) US9563260B2 (ko)
EP (1) EP2778841A3 (ko)
KR (2) KR101591818B1 (ko)
CN (1) CN104050114B (ko)
BR (1) BR102014005808A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200057158A (ko) * 2018-11-15 2020-05-26 매그나칩 반도체 유한회사 클록 장애를 복원하는 수신 장치 및 이를 포함하는 전송 시스템

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8446903B1 (en) * 2012-05-22 2013-05-21 Intel Corporation Providing a load/store communication protocol with a low power physical unit
US9223388B2 (en) * 2013-01-29 2015-12-29 Hewlett Packard Enterprise Development Lp Power state transition saving session information
US9753487B2 (en) * 2013-03-14 2017-09-05 Micron Technology, Inc. Serial peripheral interface and methods of operating same
US9563260B2 (en) * 2013-03-15 2017-02-07 Intel Corporation Systems, apparatuses, and methods for synchronizing port entry into a low power state
US9674310B2 (en) * 2013-08-19 2017-06-06 Qualcomm Incorporated Operating M-PHY based communications over mass storage-based interfaces, and related connectors, systems and methods
US9766692B2 (en) * 2014-08-01 2017-09-19 Apple Inc. Physical layer for peripheral interconnect with reduced power and area
US9720866B2 (en) * 2014-09-11 2017-08-01 Kabushiki Kaisha Toshiba Interface circuit executing protocol control in compliance with first and second interface standards
US9710622B2 (en) * 2015-02-23 2017-07-18 Intel Corporation Instructions and logic to fork processes of secure enclaves and establish child enclaves in a secure enclave page cache
US9697168B2 (en) * 2015-03-25 2017-07-04 Intel Corporation Apparatus, system and method for sharing physical layer logic across multiple protocols
US9760515B2 (en) 2015-04-06 2017-09-12 Qualcomm Incorporated Shared control of a phase locked loop (PLL) for a multi-port physical layer (PHY)
CN106294252B (zh) * 2015-06-05 2019-07-09 瑞昱半导体股份有限公司 超高速芯片互连装置及其连接控制方法
US10089275B2 (en) 2015-06-22 2018-10-02 Qualcomm Incorporated Communicating transaction-specific attributes in a peripheral component interconnect express (PCIe) system
US10168760B2 (en) * 2015-12-01 2019-01-01 Intel Corporation Power management of user interfaces with coordinated ultra-low power states
CN105472464B (zh) * 2015-12-08 2019-01-01 深圳Tcl数字技术有限公司 电视终端及其数据播放方法
CN105356916B (zh) * 2015-12-11 2018-02-16 中南大学 一种可穿戴智能设备的自适应蓝牙传输方法
CN105843767A (zh) * 2016-03-24 2016-08-10 山东超越数控电子有限公司 一种pci总线千兆网络实现方法
US10289588B2 (en) * 2016-06-30 2019-05-14 Quanta Computer Inc. Riser card
US10529135B2 (en) * 2016-07-27 2020-01-07 Google Llc Low-power mode feature identification at a head mounted display
JP2019047146A (ja) * 2017-08-29 2019-03-22 東芝メモリ株式会社 電子機器および電力管理方法
CN109426096B (zh) * 2017-08-31 2020-08-25 上海微电子装备(集团)股份有限公司 光刻机同步触发诊断方法与系统
KR102384773B1 (ko) 2017-10-12 2022-04-11 삼성전자주식회사 스토리지 장치, 컴퓨팅 시스템, 그리고 그것의 디버깅 방법
US11043158B2 (en) * 2018-01-05 2021-06-22 Intel Corporation Video bandwidth optimization for multi-monitor systems
CN108280039B (zh) * 2018-02-13 2021-02-26 龙迅半导体(合肥)股份有限公司 一种MIPI C-Phy RX端的输入信号解码电路
US10769079B2 (en) 2018-03-27 2020-09-08 Qualcomm Incorporated Effective gear-shifting by queue based implementation
TWI712893B (zh) * 2018-09-04 2020-12-11 瑞昱半導體股份有限公司 資料傳輸格式轉換電路及控制其操作的方法
CN110134216B (zh) * 2019-04-25 2020-09-15 维沃移动通信有限公司 一种电源控制装置、方法及终端设备
WO2021120223A1 (zh) * 2019-12-20 2021-06-24 华为技术有限公司 数据发送单元、数据接收单元、数据发送方法及接收方法
US11841733B2 (en) * 2020-01-08 2023-12-12 Institute Of Computing Technology, Chinese Academy Of Sciences Method and system for realizing FPGA server
US11675531B2 (en) 2020-06-17 2023-06-13 Samsung Electronics Co., Ltd. Storage device for high speed link startup and storage system including the same
WO2022068302A1 (zh) * 2020-09-30 2022-04-07 华为技术有限公司 一种芯片、通信系统及通信方法
US20210240655A1 (en) * 2020-11-16 2021-08-05 Intel Corporation Source ordering in device interconnects
US11606316B2 (en) * 2020-11-20 2023-03-14 Qualcomm Incorporated System and method for modem stabilization when waiting for AP-driven link recovery
KR20220093983A (ko) 2020-12-28 2022-07-05 삼성전자주식회사 데이터 전송률을 조정하는 스토리지 장치 및 이를 포함하는 스토리지 시스템
CN112817405B (zh) * 2021-03-01 2022-03-18 东营科技职业学院 一种教学用计算机网络安全控制装置
EP4258152A1 (en) * 2022-04-08 2023-10-11 Nxp B.V. Managing memory of a secure element domain, electronic device and method

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1106611C (zh) * 1997-07-30 2003-04-23 叶迺迪 多种波特率与多种组态的半双工式序列讯号控制方法与装置
JP4493580B2 (ja) * 1999-03-31 2010-06-30 シャープ株式会社 ワイヤレス情報伝送システムおよびワイヤレス受信装置
US6728892B1 (en) 1999-09-15 2004-04-27 Koninklijke Philips Electronics N.V. Method for conserving power in a can microcontroller and a can microcontroller that implements this method
US7178045B2 (en) 2003-12-30 2007-02-13 Intel Corporation Optimizing exit latency from an active power management state
US7313712B2 (en) 2004-05-21 2007-12-25 Intel Corporation Link power saving state
JP4182090B2 (ja) * 2004-08-05 2008-11-19 キヤノン株式会社 データ処理装置
JP4876810B2 (ja) * 2006-09-15 2012-02-15 富士ゼロックス株式会社 情報処理装置および節電プログラム
JP5182513B2 (ja) * 2007-12-27 2013-04-17 株式会社リコー 画像処理装置及びその省電力制御方法
US20100005206A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation Automatic read data flow control in a cascade interconnect memory system
US9563260B2 (en) * 2013-03-15 2017-02-07 Intel Corporation Systems, apparatuses, and methods for synchronizing port entry into a low power state

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200057158A (ko) * 2018-11-15 2020-05-26 매그나칩 반도체 유한회사 클록 장애를 복원하는 수신 장치 및 이를 포함하는 전송 시스템

Also Published As

Publication number Publication date
KR102074018B1 (ko) 2020-02-05
US20140269471A1 (en) 2014-09-18
US9753529B2 (en) 2017-09-05
EP2778841A3 (en) 2015-02-11
KR101591818B1 (ko) 2016-02-04
US20160259400A1 (en) 2016-09-08
US9563260B2 (en) 2017-02-07
CN104050114A (zh) 2014-09-17
KR20150081419A (ko) 2015-07-14
EP2778841A2 (en) 2014-09-17
BR102014005808A2 (pt) 2015-03-17
CN104050114B (zh) 2017-12-29

Similar Documents

Publication Publication Date Title
KR101591818B1 (ko) 저전력 상태로의 포트 진입을 동기화하기 위한 시스템, 방법 및 장치
KR101565357B1 (ko) 타임아웃을 처리하기 위한 시스템, 방법 및 장치
US10083147B2 (en) Apparatuses and methods for multilane universal serial bus (USB2) communication over embedded universal serial bus (eUSB2)
EP3274855B1 (en) Selectively enabling first and second communication paths using a repeater
US9953001B2 (en) Method, apparatus, and system for plugin mechanism of computer extension bus
KR101995623B1 (ko) 고속 구성 메커니즘을 위한 장치, 방법, 및 시스템
US11263165B2 (en) Apparatuses for periodic universal serial bus (USB) transaction scheduling at fractional bus intervals
US20180173666A1 (en) APPARATUSES AND METHODS TO COUPLE AN EMBEDDED UNIVERSAL SERIAL BUS (eUSB) CIRCUIT TO A UNIVERSAL SERIAL BUS (USB) TRANSCEIVER INTERFACE CIRCUIT
US9385728B2 (en) Integrated clock differential buffering
US11188492B2 (en) Enhanced serial peripheral interface (eSPI) port expander
EP4141680A1 (en) Debug data communication system for multiple chips
US20220121594A1 (en) Soc architecture to reduce memory bandwidth bottlenecks and facilitate power management
US20220113967A1 (en) Accelerator fabric for discrete graphics

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20190103

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 5