KR20150038265A - 저전력 부분 폭 고속 링크 상태에서 나갈 때의 고속 디스큐 - Google Patents
저전력 부분 폭 고속 링크 상태에서 나갈 때의 고속 디스큐 Download PDFInfo
- Publication number
- KR20150038265A KR20150038265A KR1020157004642A KR20157004642A KR20150038265A KR 20150038265 A KR20150038265 A KR 20150038265A KR 1020157004642 A KR1020157004642 A KR 1020157004642A KR 20157004642 A KR20157004642 A KR 20157004642A KR 20150038265 A KR20150038265 A KR 20150038265A
- Authority
- KR
- South Korea
- Prior art keywords
- link
- lanes
- waiting
- point
- processor
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3253—Power saving in bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4265—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Power Sources (AREA)
Abstract
저전력 부분 폭 고속 링크 상태에서 나갈 때 고속 디스큐에 관한 방법 및 장치가 설명된다. 일 실시예에서, 활성 레인 상의 나가기 플릿 및/또는 대기 레인 상의 웨이크 신호/시퀀스가 제 1 시점에 송신되어 링크의 하나 이상의 대기 레인이 활성 상태에 진입하게 할 수 있다. 제 1 시점에 이어서 또는 후속하는) 제 2 시점에, 트레이닝 시퀀스가 링크의 하나 이상의 대기 레인을 통해 송신된다. 그리고, 하나 이상의 대기 레인은 트레이닝 시퀀스에 응답하여 (제 2 시점에 이어서 또는 후속하는) 제 3 시점 이전에 디스큐잉된다.
Description
본 개시내용은 일반적으로 전자공학 분야에 관한 것이다. 보다 구체적으로, 몇몇 실시예는 저전력, 부분 폭 고속 링크 상태에서 나갈 때 고속 디스큐(fast deskew)에 관한 것이다.
컴퓨터 시스템은 일반적으로 다양한 목적을 위해 서로 통신하는 구성요소로 구성된다. 컴퓨터 구성요소를 상호접속하는 링크는 데이터를 전송하는 메커니즘을 제공하고, 각각의 링크는 일반적으로 복수의 "레인"을 포함하며, 각각의 레인은 주어진 사이클로 소량의 데이터를 전송한다. 통신 동안에 사용되는 다수의 레인은 일반적으로 링크의 대역폭을 차례차례 효율적으로 제어하는 링크 폭을 정의한다. 이와 같이, 넓은 링크는 좁은 링크보다 큰 대역폭을 제공한다. 반면에, 넓은 링크는 추가적인 레인을 지원하는 추가적인 회로 때문에 전력을 더 많이 소비하는 경향이 있다. 또한, 전력 소비, 서비스 품질 또는 성능은 링크 폭을 결정할 때 문제가 될 수 있다.
첨부 도면과 관련하여 상세한 설명이 제공된다. 도면에서, 참조 번호의 제일 왼쪽 숫자(들)는 그 참조 번호가 먼저 나타나는 도면을 식별한다. 상이한 도면에서의 동일한 참조 번호의 사용은 유사하거나 동일한 항목을 나타낸다.
도 1은 본 명세서에서 논의된 다양한 실시예를 구현하는 데 이용될 수 있는 컴퓨팅 시스템의 블록도 및 실시예를 도시한다.
도 2는 본 명세서에서 논의된 다양한 실시예를 구현하는 데 이용될 수 있는 컴퓨팅 시스템의 블록도 및 실시예를 도시한다.
도 3은 실시예에 따라, 링크 쌍의 블록도를 도시한다.
도 4는 실시예에 따라, 고속 디스큐를 제공하는 블록도를 도시한다.
도 5는 실시예에 따른 타이밍도를 도시한다.
도 6은 본 명세서에서 논의된 다양한 실시예를 구현하는 데 이용될 수 있는 컴퓨팅 시스템의 블록도 및 실시예를 도시한다.
도 7은 본 명세서에서 논의된 다양한 실시예를 구현하는 데 이용될 수 있는 컴퓨팅 시스템의 블록도 및 실시예를 도시한다.
도 8(a)은 실시예에 따른 타이밍도를 도시한다.
도 8(b)는 실시예에 따른 타이밍도를 도시한다.
도 1은 본 명세서에서 논의된 다양한 실시예를 구현하는 데 이용될 수 있는 컴퓨팅 시스템의 블록도 및 실시예를 도시한다.
도 2는 본 명세서에서 논의된 다양한 실시예를 구현하는 데 이용될 수 있는 컴퓨팅 시스템의 블록도 및 실시예를 도시한다.
도 3은 실시예에 따라, 링크 쌍의 블록도를 도시한다.
도 4는 실시예에 따라, 고속 디스큐를 제공하는 블록도를 도시한다.
도 5는 실시예에 따른 타이밍도를 도시한다.
도 6은 본 명세서에서 논의된 다양한 실시예를 구현하는 데 이용될 수 있는 컴퓨팅 시스템의 블록도 및 실시예를 도시한다.
도 7은 본 명세서에서 논의된 다양한 실시예를 구현하는 데 이용될 수 있는 컴퓨팅 시스템의 블록도 및 실시예를 도시한다.
도 8(a)은 실시예에 따른 타이밍도를 도시한다.
도 8(b)는 실시예에 따른 타이밍도를 도시한다.
후속 설명에서, 다양한 실시예의 완전한 이해를 제공하도록 다수의 특정 세부사항이 설명된다. 그러나, 몇몇 실시예는 특정 세부사항 없이 실시된다. 다른 경우에, 특정 실시예를 불명료하게 하지 않기 위해 잘 알려져 있는 방법, 절차, 구성요소 및 회로는 상세히 설명되지 않는다. 본 발명의 실시예의 다양한 측면은 집적 반도체 회로("하드웨어"), 하나 이상의 프로그램으로 구성된 컴퓨터 판독가능 명령어("소프트웨어") 또는 하드웨어와 소프트웨어의 몇몇 조합과 같은 다양한 수단을 사용하여 수행된다. 본 개시내용을 위해, "로직"에 대한 참조는 하드웨어, 소프트웨어 또는 이들의 조합을 의미해야 한다.
QPI(Quick Path Interconnect) 또는 KTI(Keizer Technology Interconnect)와 같은 직렬 링크 상에서, 링크의 폭을 통해 데이터 플릿(data flit)의 연속 흐름이 존재한다 -이 상태는 L0로 지칭된다. 낮은 이용률 기간 동안에, 전력을 절약하기 위해, 플릿은 부분 폭(예컨대, 8 개의 레인)으로 퍼넬(funnel)될 수 있다 -이 상태는 L0p로 지칭된다. 이용률이 증가함에 따라, 대기 레인은 백업되고, 트레이닝되며(예컨대, 비트 로크 유지를 보장하기 위해), 리디스큐잉되고, 활성 레인과 끊김 없이 병합되어 링크가 완전 가동 상태(예컨대, L0)로 리턴할 수 있다. (예컨대, L0p에서 L0로) 저전력, 감소 폭 상태에서 나가는 것은 성능이 악영향을 받지 않도록 상당히 신속해야한다. 그러나, 몇몇 실시예는 (링크 성능 및/또는 서비스 품질을 감소시키는) 대기 및 활성 레인의 디스큐 및 병합을 수행하도록 (전력을 과도하게 소비하는) 스큐 드리프트를 제거하거나 플릿의 흐름을 방해하기 위해 저전력 상주를 제한한다.
본 명세서에서 논의된 실시예의 일부는 저전력 부분 폭 고속 링크 상태에서 나갈 때 고속 디스큐를 제공한다. 실시예는 포워딩된 클록 없이 동작한다. 따라서, 포워딩된 클록이 없는 경우에, 몇몇 실시예는 (예컨대, L0p로부터) L0 진입시에 레인을 리디스큐잉해야 한다.
본 명세서에서 논의된 바와 같이, "L0"는 일반적으로 어떤 방향으로 전폭(예컨대, 모든 레인)에서 동작하는 링크를 지칭하고, "L0p"는 일반적으로 한 방향으로 부분 폭(즉, 감소한 개수의 레인)에서 동작하는 링크를 지칭한다. 부가적으로, 링크를 통한 전송의 기본 단위는 본 명세서에서 (실시예에서 예컨대, 에러 검출을 위한 8 비트, 링크 계층 헤더를 위한 8 비트, 데이터를 위한 64 비트를 가진 80 비트이지만, 다른 구성도 사용될 수 있는) "플릿"으로 지칭된다.
다양한 실시예는 예컨대, 도 1, 도 2 및 도 6, 도 7과 관련하여, 본 명세서에 설명된 구성요소와 같은 컴퓨팅 시스템 구성요소와 관련하여 본 명세서에서 논의된다. 보다 구체적으로, 도 1은 본 발명의 실시예에 따라, 컴퓨팅 시스템(100)의 블록도를 도시한다. 시스템(100)은 하나 이상의 에이전트(102-1 내지 102-M)를 포함한다(총괄하여 본 명세서에서 "에이전트들(102)" 또는 보다 일반적으로 "에이전트(102)"로 지칭됨). 실시예에서, 에이전트들(102)은 도 2 및 도 6, 도 7과 관련하여 논의된 컴퓨팅 시스템과 같은 컴퓨팅 시스템의 구성요소이다.
도 1에 도시된 바와 같이, 에이전트들(102)은 네트워크 패브릭(104)을 통해 통신한다. 실시예에서, 네트워크 패브릭(104)은 직렬(예컨대, 포인트 투 포인트) 링크 및/또는 공유 통신 네트워크를 통해 통신하는 하나 이상의 상호접속부(또는 상호접속 네트워크)를 포함한다. 예컨대, 몇몇 실시예는 완전 버퍼링된 듀얼 인라인 메모리 모듈(FBD)과의 통신을 허용하는 링크 상의 구성요소 디버그 또는 검증을 용이하게 하며, 예컨대, FBD 링크는 호스트 제어기 장치(예컨대, 프로세서 또는 메모리 허브)에 메모리 모듈을 연결하는 직렬 링크이다. 디버그 정보가 채널 트래픽 추적 캡처 툴(예컨대, 하나 이상의 로직 분석기)에 의해 채널을 따라 관찰될 수 있도록 FBD 채널 호스트로부터 디버그 정보가 송신될 수 있다.
일 실시예에서, 시스템(100)은 물리 계층, 링크 계층, 라우팅 계층, 전송 계층 및/또는 프로토콜 계층을 포함하는 계층화 프로토콜 방식을 지원한다. 패브릭(104)은 하나의 프로토콜(예컨대, 캐싱 프로세서 또는 캐싱 감지 메모리 제어기)로부터 포인트 투 포인트 네트워크를 위한 다른 프로토콜로의 (예컨대, 패킷 형태로의) 데이터 송신을 더 용이하게 할 수 있다. 또한, 몇몇 실시예에서, 네트워크 패브릭(104)은 하나 이상의 캐시 코히런트 프로토콜을 부착하는 통신을 제공한다.
또한, 도 1의 화살표 방향으로 도시된 바와 같이, 에이전트들(102)은 네트워크 패브릭(104)을 통해 데이터를 송신 및/또는 수신한다. 그러므로, 몇몇 에이전트들은 통신을 위해 단방향성 링크를 이용하지만 다른 에이전트들은 양방향성 링크를 이용한다. 가령, 하나 이상의 에이전트들(예컨대, 에이전트(102-M))은 (예컨대, 단방향성 링크(106)를 통해) 데이터를 수신하고, 다른 에이전트(들)(예컨대, 에이전트(102-2))는 (예컨대, 단방향성 링크(108)를 통해) 데이터를 수신하지만, 몇몇 에이전트(들)(예컨대, 에이전트(102-1))는 (예컨대, 양방향성 링크(110)를 통해) 데이터를 송신하고 수신한다.
또한, 실시예에 따르면, 하나 이상의 에이전트들(102)은 링크 폭 변조(LWM;Link Width Modulation) 로직(120)을 포함한다. 몇몇 실시예에서, 컴퓨팅 시스템에 존재하는 각각의 CPU 소켓은 LWM 로직(120)을 포함하며, 이는 예컨대, 도 2와 관련하여 더 설명될 것이다. 또한, 하나 이상의 에이전트들(102)은 예컨대, 본 명세서에서 논의되는 바와 같이, 상태가 L0p에서 L0로 변할 때 고속 디스큐를 용이하게 하도록 고속 디스큐 로직(122)을 포함할 수 있다. 도 1에 도시된 바와 같이, 로직(122)은 로직(120)에 포함되지만, 본 발명의 실시예는 이러한 구현으로 제한되지 않으며, 로직(122)은 시스템의 다른 곳에 제공될 수 있다.
보다 구체적으로, 도 2는 실시예에 따른 컴퓨팅 시스템(200)의 블록도이다. 시스템(200)은 복수의 소켓(202 내지 208)을 포함한다(4 개가 도시되지만 몇몇 실시예는 더 많이 또는 더 적은 소켓(들)을 갖는다). 하나 이상의 소켓은 프로세서, LWM 로직(120) 및 고속 디스큐 로직(122)을 포함한다. 또한, 각각의 소켓은 포인트 투 포인트(PtP) 링크 또는 예컨대, QPI, MIPI(Mobile Industry Processor Interface) 등과 같은 차동 상호접속부를 통해 다른 소켓에 연결될 수 있다. 도 1의 네트워크 패브릭(104)과 관련하여 논의되는 바와 같이, 각각의 소켓은 예컨대, 동적 랜덤 액세스 메모리(DRAM)를 포함하는 복수의 듀얼 인라인 메모리 모듈(DIMM)로 형성된 시스템 메모리의 로컬부에 연결된다.
다른 실시예에서, 네트워크 패브릭은 임의의 SoC(System on Chip) 애플리케이션에 이용될 수 있고, AMBA(Advanced Microcontroller Bus Architecture), OCP(Open Core Protocol), MIPI(Mobile Industry Processor Interface), PCI(Peripheral Component Interconnect) 또는 PCIe(Peripheral Component Interconnect Express)를 위한 ARM 순응 인터페이스와 같은 커스텀 또는 표준 인터페이스를 이용할 수 있다.
몇몇 실시예는 IP 자원 그 자체에 대한 어떠한 변경도 없이 PCI 기반 시스템과 같은 PC(개인용 컴퓨터) 기반 시스템에서 AXI/OCP 기술과 같은 이종 자원의 사용을 가능하게 하는 기술을 사용한다. 실시예는 PCI 호환가능 시스템을 생성하도록 AXI/OCP IP를 자동생성 상호접속부 패브릭에 플러깅하는 데 사용될 수 있는, 본 명세서에서 Yunit 및 심(shim)으로 지칭되는 2 개의 상당히 얇은 하드웨어 블록을 제공한다. 일 실시예에서, Yunit의 제 1(예컨대, 노스(north)) 인터페이스는 DMI(direct media interface) 버스, PCI 버스 또는 PCIe 버스와 같은 PCI 호환가능 버스에 인터페이싱하는 어댑터 블록에 접속된다. 제 2(예컨대, 사우스(south)) 인터페이스는 AXI/OCP 상호접속부와 같은 비PC 상호접속부에 직접 접속된다. 다양한 구현에서, 이 버스는 OCP 버스일 수 있다.
몇몇 실시예에서, Yunit은 PCI 구성 사이클을 타깃 IP가 이해할 수 있는 트랜잭션으로 변환함으로써 PCI 열거(enumeration)를 구현한다. 이 유닛은 재배치가능한 PCI 주소에서 고정된 AXI/OCP 주소로의 주소 변환도 수행하며, 반대의 경우도 또한 같다. Yunit은 생산자-소비자 모델(예컨대, PCI 생산자-소비자 모델)을 만족시키는 정렬 메커니즘을 더 구현할 수 있다. 차례로, 각각의 IP는 전용 PCI 심을 통해 상호접속부에 접속된다. 각각의 심은 대응하는 IP에 대한 전체 PCI 헤더를 구현할 수 있다. Yunit은 PCI 헤더 및 장치 메모리 공간에 대한 모든 액세스를 심으로 라우팅한다. 심은 모든 헤더 판독/기록 트랜잭션을 소비하고, 다른 트랜잭션을 IP로 전달한다. 몇몇 실시예에서, 심은 또한 IP에 대한 모든 전력 관리 관련 특성을 구현한다.
그러므로, 모놀리식 호환성 블록인 것보다는, Yunit을 구현하는 실시예는 분산 방안을 취한다. 모든 IP에 걸쳐 공통인 기능, 예컨대, 주소 변환 및 정렬은 Yunit에서 구현되지만, 전력 관리, 에러 처리 등과 같은 IP 특정 기능은 그 IP에 맞춰진 심에서 구현된다.
이러한 방식으로, 새로운 IP는 최소 변경으로 Yunit에 추가될 수 있다. 예컨대, 일 구현에서, 변경은 주소 리디렉션 테이블에 새로운 엔트리를 추가함으로써 발생할 수 있다. 심은 IP 특정이지만, 몇몇 구현에서 대량의 기능(예컨대, 90 % 초과)이 모든 IP에 걸쳐 공통이다. 이는 새로운 IP에 대해 기존의 심의 빠른 재구성을 가능하게 한다. 그러므로 몇몇 실시예는 변경 없이 자동생성 상호접속부 패브릭의 사용도 가능하게 한다. 포인트 투 포인트 버스 아키텍처에서, 상호접속부 패브릭을 설계하는 것은 도전적인 태스크일 수 있다. 전술한 Yunit 방안은 산업 표준 툴에 대한 어떠한 변경도 없이 최소 노력으로 PCI 시스템에 산업 에코시스템을 수용한다.
도 2에 도시된 바와 같이, 각각의 소켓은 메모리 제어기(MC)/홈 에이전트(HA)(예컨대, MC0/HA0 내지 MC3/HA3)에 연결된다. 메모리 제어기는 시스템 메모리(예컨대, 도 6의 메모리(612))의 일부일 수 있는 대응하는 로컬 메모리(MEM0 내지 MEM3으로 라벨링됨)에 연결된다. 몇몇 실시예에서, 메모리 제어기(MC)/홈 에이전트(HA)(예컨대, MC0/HA0 내지 MC3/HA3)는 도 1의 에이전트(102-1)와 동일하거나 유사하고, MEM0 내지 MEM3으로 라벨링된 메모리는 본 명세서에서 도면과 관련하여 논의된 메모리와 동일하거나 유사하다. 일반적으로, 프로세싱/캐싱 에이전트는 대응하는 "홈 에이전트"가 연관되는 메모리 주소로의 액세스를 위한 요청을 홈 노드로 전달한다. 또한, 일 실시예에서, MEM0 내지 MEM3은 데이터를 예컨대, 마스터 및 슬레이브로서 미러링하도록 구성된다. 또한, 시스템(200)의 하나 이상의 구성요소는 몇몇 실시예에서 동일한 집적 회로 다이 상에 포함된다. 도 2에 도시된 것과 같은 실시예는 미러링을 사용한 소켓 글루리스(glueless) 구성을 위한 것이다. 예컨대, 메모리 제어기(예컨대, MC0/HA0)에 할당된 데이터는 PtP 링크를 통해 다른 메모리 제어기(예컨대, MC3/HA3)에 미러링된다.
몇몇 레거시 시스템에서, 대기 기간 동안 절전을 위해 완전한 링크가 턴오프될 수 있다. 그러나, 낮은 이용률 기간 동안, 전체 링크를 셧다운하는 것보다 낮은 폭에서 링크를 동작시키는 것(예컨대, 링크를 재시작하는 것과 관련된 지연을 감소시키는 것)이 더 효율적일 수 있다. 이를 위해, LWM 로직(120)은 링크가 긴 시구간 동안, 예컨대, 링크 폭을 변경하는 동안 이용가능해지도록 한다. 예컨대, 링크는 (몇몇 실시예에서 완전한 플릿이 아닐 수도 있는) 전력 관리 플릿에 응답하여 제 1 폭에서 제 2 폭으로 변한다. 또한, 비대기 플릿은 전력 관리 플릿의 전송 후에 링크를 통해 계속 전송될 수 있다.
또한, 컴퓨터 구성요소를 상호접속하는 링크는 데이터를 전송하는 메커니즘을 제공하고, 각각의 링크는 복수의 "레인"을 포함할 수 있으며, 각각의 레인은 주어진 사이클로 소량의 데이터를 전송한다. 통신 동안에 사용되는 다수의 레인은 일반적으로 링크의 대역폭을 차례차례 효율적으로 제어하는 링크 폭을 정의한다. 각각의 레인은 실시예에서 포인트 투 포인트 링크이다.
보다 구체적으로, 도 3은 실시예에 따라 L0p로의 한 방향과 L0로의 다른 방향으로의 (예컨대, 도 1과 관련하여 논의된 에이전트(102)와 같은, 포트 A-D를 가진 에이전트 X와 Y 사이의) 링크 쌍의 블록도를 도시한다. 도 4는 실시예에 따라 고속 디스큐를 제공하는 흐름도를 도시한다. 도 5는 실시예에 따른 타이밍도를 도시한다(레인(0-7)은 활성이고 레인(8-23)은 대기임). 타이밍도에서 "d"는 데이터를 지칭하고, EIEOS는 전기적 대기 나가기 정렬 세트(electrical Idle Exit Ordered Set)를 지칭한다.
도 3 내지 도 5를 참조하면, L0p에서 나가기 위해, A는 예컨대, 링크의 하나 이상의 대기 레인이 활성 상태에 진입하고 L0p 상태에서 나가게 하도록 웨이크 신호로서 작용하는 (도 4에서 PMexitL0p로 도시된) 나가기 플릿을 시간 A0에 전달한다. 이와 달리 A0는 활성 레인 상의 플릿 경계에 정렬되는 대기 레인 상의 특별 시그널링(예컨대, EIEOS)으로서 식별될 수 있다. 또한, A는 시간 A1에 활성 레인 상에 데이터 또는 특별 플릿을 전달한다. 본 명세서에서 논의되는 바와 같이, "특별" 플릿은 일반적으로 "널(null)" 플릿과 같은 넌-리트라이-에이블(non-retry-able) 플릿을 지칭한다. 또한, 널 플릿은 도시된 지점(예컨대, A1 등)에 앞서 시작할 수 있고 도시된 지점 이후로 연장될 수 있다. 그 후 사전결정된 지점에(시간 A2에), A는 대기 레인 상에 트레이닝 시퀀스(TS)를 전달하기 시작한다. 시간 A3에, 트레이닝은 추정 완료되고 Tx(송신기)(A)는 (예컨대, 고속 디스큐 로직(122)을 통해) 모든 레인 상에 시작 데이터 시퀀스(SDS)를 전달한다. 이는 차례로 레인의 디스큐잉 및 병합을 완료하여 데이터가 시간 A4에 모든 레인 상에 전달되게 한다. 실시예에서, 포트(A)는 고속 디스큐 로직(122)에 연결되어 L0p에서 나갈 때 고속 디스큐를 발생시키며, 이는 도 3 내지 도 5와 관련하여 논의된 하나 이상의 동작을 포함한다.
몇몇 구현은 SDS 기간(A3 - A4)을 감소시키는데 이는 링크가 그때 완전히 이용 불가능해져 성능을 저하하기 때문이다. 일 실시예에서, 대기 레인 상의 TS는 시간 A1과 동시(또는 예컨대, 고속 디스큐 로직(122)에 의해 A1 시간 후 TS 길이의 몇 배)에 시작된다. 또한, 대기 레인 상의 TS는 시간 A1과 동시에 및/또는 시간 A1과 관련하여 또는 시간 A1에 활성 레인 상의 데이터 전송과 적어도 일부분 동시에 시작될 수 있다. 그 후 대기 레인은 시간 A3 이전에 TS를 사용하여 (예컨대, 고속 디스큐 로직(122)에 의해) 그들 사이에서 디스큐잉된다. (그들 사이에서 디스큐잉되는) 레인의 대기 세트와 활성 세트 사이의 스큐는 (예컨대, 고속 디스큐 로직(122)에 의해) 시간 A3 이전에 결정된다. 시간 A3에, 활성 레인 세트와 대기 레인 세트가 병합된다. 디스큐가 이미 알려져 있으므로 이 병합은 매우 빠르게(즉, 매우 짧은 SDS를 사용하여) 처리될 수 있다. 실시예에서, SDS는 필요하지 않으며 활성 레인 상의 특별(또는 데이터) 플릿(들)이 사용된다.
도 8(a) 및 도 8(b)는 몇몇 실시예에 따른 타이밍도를 도시한다. 활성 세트와 대기 세트 사이의 비교 스큐는 도 8(a) 및 도 8(b)의 좌측에 도시된 2 가지 경우 중 하나일 수 있다. 도 8(a)에서 대기 세트는 활성 세트보다 느리고, 도 8(b)에서 대기 세트는 활성 세트보다 빠르다. 전자의 경우에, 다양한 실시예에서 디스큐는 활성 세트 내로 지연을 추가하거나 대기 세트의 파이프라인으로부터 일부 지연을 제거함으로써 달성될 수 있다. 제 2 방법은 파이프 라인 내에 정렬 및 지연 버퍼를 재배열하는 것을 포함하므로 더 복잡할 수 있지만, 활성 세트 상에 임의의 지연 또는 SDS까지 삽입해야만 하는 것을 방지한다. 도 8(b)에서, 실시예에서 대기 세트에 지연을 간단히 추가함으로써 디스큐가 달성될 수 있다.
도 6은 본 발명의 실시예에 따른 컴퓨팅 시스템(600)의 블록도를 도시한다. 컴퓨팅 시스템(600)은 상호접속 네트워크(또는 버스)(604)를 통해 통신하는 하나 이상의 중앙 처리 유닛(들)(CPUs)(602-1 내지 602-N) 또는 프로세서(총괄하여 본 명세서에서 프로세서들(602) 또는 보다 일반적으로 프로세서(602)로 지칭됨)를 포함한다. 프로세서(602)는 범용 프로세서, (컴퓨터 네트워크(603)를 통해 통신된 데이터를 처리하는) 네트워크 프로세서 또는 (RISC(reduced instruction set computer) 프로세서 또는 CISC(complex instruction set computer)를 포함하는) 다른 유형의 프로세서를 포함한다.
또한, 프로세서(602)는 단일 또는 다중 코어 설계를 갖는다. 다중 코어 설계를 가진 프로세서(602)는 동일한 집적 회로(IC) 다이 상에 상이한 유형의 프로세서 코어를 집적한다. 또한, 다중 코어 설계를 가진 프로세서(602)는 대칭형 또는 비대칭형 멀티프로세서로서 구현될 수 있다. 또한, 도 1 내지 도 5와 관련하여 논의된 동작은 시스템(600)의 하나 이상의 구성요소에 의해 수행된다. 몇몇 실시예에서, 프로세서(602)는 도 2의 프로세서(202 내지 208)와 동일하거나 유사하다. 더욱이, 몇몇 실시예에서 프로세서(602)는 LWM 로직(120) 및/또는 고속 디스큐 로직(122)을 포함한다.
칩셋(606) 또한 상호접속 네트워크(604)와 통신한다. 실시예에서, 칩셋(606)은 LWM 로직(120) 및/또는 로직(122)을 포함한다. 칩셋(606)은 메모리 제어기 허브(MCH)(608)를 포함한다. MCH(608)는 메모리(612)와 통신하는 메모리 제어기(610)를 포함한다. 메모리(612)는 CPU(602)에 의해 실행되는 명령어 시퀀스를 포함하는 데이터 또는 컴퓨팅 시스템(600)에 포함된 임의의 다른 장치를 저장한다. 예컨대, 메모리(612)는 운영 시스템(OS)에 대응하는 데이터를 저장한다. 본 발명의 일 실시예에서, 메모리(612)는 랜덤 액세스 메모리(RAM), 동적 RAM(DRAM), 동기식 DRAM(SDRAM), 정적 RAM(SRAM) 또는 다른 유형의 저장 장치와 같은 하나 이상의 휘발성 저장(또는 메모리) 장치를 포함한다. 하드 디스크와 같은 비휘발성 메모리도 이용될 수 있다. 다중 CPU 및/또는 다중 시스템 메모리와 같은 추가적인 장치는 상호접속 네트워크(604)를 통해 통신할 수 있다.
부가적으로, 몇몇 실시예에서, 하나 이상의 프로세서(602)는 (개인 및/또는 공유 캐시를 포함하는) 하나 이상의 캐시 및 연관된 캐시 제어기(도시 생략)에 대한 액세스를 갖는다. 캐시(들)는 하나 이상의 캐시 코히런트 프로토콜에 부착할 수 있다. 캐시(들)는 시스템(600)의 하나 이상의 구성요소에 의해 이용되는 (예컨대, 명령어를 포함하는) 데이터를 저장할 수 있다.
예컨대, 캐시는 프로세서(602)의 구성요소에 의한 더 빠른 액세스를 위해 메모리(612)에 저장된 데이터를 로컬로 캐싱한다. 실시예에서, (공유될 수 있는) 캐시는 중간 레벨 캐시 및/또는 최종 레벨 캐시(LLC)를 포함한다. 또한, 각각의 프로세서(602)는 레벨 1(L1) 캐시를 포함할 수 있다. 프로세서(602)의 다양한 구성요소는 캐시와 직접 통신하거나, 버스 또는 상호접속 네트워크 및/또는 메모리 제어기 또는 허브를 통해 통신할 수 있다. 또한, 몇몇 실시예에서 각각의 프로세서(602) (또는 프로세서(602)에 존재하는 각각의 코어)는 LWM 로직(120) 및/또는 로직(122)을 포함한다.
MCH(608)는 예컨대, 그래픽 가속기를 통해 디스플레이 장치(616)와 통신하는 그래픽 인터페이스(614)도 포함한다. 본 발명의 일 실시예에서, 그래픽 인터페이스(614)는 가속화 그래픽 포트(AGP)를 통해 그래픽 가속기와 통신한다. 본 발명의 실시예에서, (플랫 패널 디스플레이와 같은) 디스플레이(616)는 예컨대, 비디오 메모리 또는 시스템 메모리와 같은 저장 장치에 저장된 이미지의 디지털 표현을 디스플레이(616)에 의해 해석되고 표시되는 표시 신호로 변환하는 신호 변환기를 통해 그래픽 인터페이스(614)와 통신한다. 디스플레이 장치에 의해 생성된 표시 신호는 디스플레이(616)에 의해 해석되고 이어서 디스플레이(616) 상에 표시되기 전에 다양한 제어 장치를 통과한다.
허브 인터페이스(618)는 MCH(608)와 입출력(I/O) 제어 허브(ICH)가 통신하게 한다. ICH(620)는 컴퓨팅 시스템(600)과 통신하는 I/O 장치로의 인터페이스를 제공한다. ICH(620)는 주변장치 브릿지(또는 제어기)(624), 예컨대, PCI 브릿지, USB 제어기 또는 다른 유형의 주변장치 브릿지 또는 제어기를 통해 버스(622)와 통신한다.
브릿지(624)는 CPU(602)와 주변 장치 사이의 데이터 경로를 제공한다. 다른 유형의 토폴로지가 이용될 수 있다. 또한, 다중 버스는 예컨대, 다중 브릿지 또는 제어기를 통해 ICH(620)와 통신한다. 또한, 본 발명의 다양한 실시예에서, ICH(620)와 통신하는 다른 주변장치는 IDE(integrated drive electronics) 또는 SCSI(small computer system interface) 하드 드라이브(들), USB 포트(들), 키보드, 마우스, 병렬 포트(들), 직렬 포트(들), 플로피 디스크 드라이브(들), 디지털 출력 지원장치(예컨대, 디지털 비디오 인터페이스(DVI)) 또는 다른 장치를 포함한다.
버스(622)는 오디오 장치(626), 하나 이상의 디스크 드라이브(들)(628) 및/또는 (컴퓨터 네트워크(603)와 통신하는) 네트워크 인터페이스 장치(630)와 통신한다. 몇몇 실시예에서 다른 장치는 버스(622)를 통해 통신한다. 또한, 본 발명의 몇몇 실시예에서 (네트워크 인터페이스 장치(630)와 같은) 다양한 구성요소는 MCH(608)와 통신한다. 또한, 프로세서(602) 및 MCH(608)의 하나 이상의 구성요소는 단일 칩을 형성하도록 결합될 수 있다.
또한, 컴퓨팅 시스템(600)은 휘발성 및/또는 비휘발성 메모리(또는 저장장치)를 포함한다. 예컨대, 비휘발성 메모리는 판독 전용 메모리(ROM), 프로그램가능 ROM(PROM), 소거가능 PROM(EPROM), 전기적 EPROM(EEPROM), 디스크 드라이브(예컨대, 628), 플로피 디스크, 콤팩트 디스크 ROM(CD-ROM), DVD, 플래시 메모리, 광자기 디스크 및/또는 (예컨대, 명령어를 포함하는) 전자 데이터를 저장할 수 있는 다른 유형의 비휘발성 머신 판독가능 매체 중 하나 이상을 포함한다.
도 7은 본 발명의 실시예에 따라, 포인트 투 포인트(PtP) 구성으로 배열된 컴퓨팅 시스템(700)을 도시한다. 특히, 도 7은 프로세서, 메모리 및 입출력 장치가 다수의 포인트 투 포인트 인터페이스에 의해 상호접속되는 시스템을 도시한다. 도 1 내지 도 6과 관련하여 논의된 하나 이상의 동작은 시스템(700)의 하나 이상의 구성요소에 의해 수행된다.
도 7에 도시된 바와 같이, 시스템(700)은 몇 개의 프로세서를 포함하되, 명확성을 위해 2 개의 프로세서(702 및 704)만 도시된다. 프로세서(702 및 704)는 각각 메모리(710 및 712)와의 통신을 가능하게 하도록 로컬 메모리 제어기 허브(MCH)(706 및 708)를 포함한다. 메모리(710 및/또는 712)는 도 6의 메모리(612)와 관련하여 논의된 것과 같은 다양한 데이터를 저장한다. 프로세서(702 및 704)는 도 6과 관련하여 논의된 캐시(들)도 포함할 수 있다.
실시예에서, 프로세서(702 및 704)는 도 6과 관련하여 논의된 프로세서들(602) 중 하나이다. 프로세서(702 및 704)는 각각 PtP 인터페이스 회로(716 및 718)를 사용하여 포인트 투 포인트(PtP) 인터페이스(714)를 통해 데이터를 교환한다. 또한, 프로세서(702 및 704)는 각각 포인트 투 포인트 인터페이스 회로(726, 728, 730 및 732)를 사용하여 개별 PtP 인터페이스(722 및 724)를 통해 칩셋(720)과 데이터를 교환한다. 칩셋(720)은 예컨대, PtP 인터페이스 회로(737)를 사용하여 고성능 그래픽 인터페이스(736)를 통해 고성능 그래픽 회로(734)와 데이터를 교환한다.
본 발명의 적어도 하나의 실시예는 프로세서(702 및 704) 또는 칩셋(720) 내에 제공된다. 예컨대, LWM 로직(120) 및 고속 디스큐 로직(122)이 프로세서(702 및 704) 내에 (또는 프로세서(702 및/또는 704)의 각각의 코어 내에) 제공된다. 그러나, 본 발명의 다른 실시예는 도 7의 시스템(700) 내의 다른 회로, 로직 유닛 또는 장치에 존재할 수 있다. 또한, 본 발명의 다른 실시예는 도 7에 도시된 몇몇 회로, 로직 유닛 또는 장치에 걸쳐 분산될 수 있다.
칩셋(720)은 PtP 인터페이스 회로(741)를 사용하여 버스(740)와 통신한다. 버스(740)는 버스 브릿지(742) 및/또는 I/O 장치(743)와 같은 하나 이상의 장치와 통신한다. 버스(744)를 통해, 버스 브릿지(742)는 키보드/마우스(745), 통신 장치(746)(예컨대, 모뎀, 네트워크 인터페이스 장치 또는 컴퓨터 네트워크(603)와 통신할 수 있는 다른 통신 장치), 오디오 I/O 장치 및/또는 데이터 저장 장치(748)와 같은 다른 장치와 통신할 수 있다. 데이터 저장 장치(748)는 프로세서(702 및/또는 704)에 의해 실행되는 코드(749)를 저장한다.
본 발명의 다양한 실시예에서, 본 명세서에서 예컨대, 도 1 내지 도 7과 관련하여 논의된 동작은 예를 들어, 본 명세서에서 논의된 프로세스를 수행하도록 컴퓨터를 프로그래밍하는 데 사용되는 명령어(또는 소프트웨어 절차)가 저장된 (예컨대, 비일시적) 머신 판독가능 또는 (예컨대, 비일시적) 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로서 제공될 수 있는 하드웨어(예컨대, 회로), 소프트웨어, 펌웨어, 마이크로코드 또는 이들의 조합으로서 구현된다.
또한, 용어 "로직"은 예로써, 소프트웨어, 하드웨어 또는 소프트웨어와 하드웨어의 조합을 포함할 수 있다. 머신 판독가능 매체는 도 1 내지 도 7과 관련하여 설명된 것과 같은 저장 장치를 포함할 수 있다. 부가적으로, 그러한 컴퓨터 판독가능 매체는 컴퓨터 프로그램 제품으로서 다운로드될 수 있으며, 프로그램은 반송파를 통해 전송된 데이터 신호 또는 통신 링크(예컨대, 버스, 모뎀 또는 네트워크 접속부)를 통해 다른 전파 매체에 의해 원격 컴퓨터(예컨대, 서버)로부터 요청 컴퓨터(예컨대, 클라이언트)로 전송된다.
명세서에서 언급된 "일 실시예" 또는 "실시예"는 특정 특징부, 구조 또는 그 실시예와 관련하여 설명된 특성이 적어도 실시예에 포함될 수 있음을 의미한다. 명세서 내 다양한 곳에서 보이는 구 "일 실시예에서"는 전부 동일한 실시예를 지칭하거나 지칭하지 않을 수도 있다.
또한, 상세한 설명 및 특허청구범위에서, 용어 "연결된" 및 "접속된"이 그들의 파생어와 함께 사용될 수 있다. 본 발명의 몇몇 실시예에서, "접속된"은 2 개 이상의 요소가 직접 물리적으로 또는 전기적으로 서로 접촉하고 있음을 나타내는 데 사용될 수 있다. "연결된"은 2 개 이상의 요소가 직접 물리적 또는 전기적으로 접촉하고 있음을 의미할 수 있다. 그러나, "연결된"은 2 개 이상의 요소가 서로 직접 접촉하지 않을 수도 있지만 서로 여전히 협력하거나 상호작용할 수 있음을 의미할 수도 있다.
그러므로, 본 발명의 실시예는 구조적 특징부 및/또는 방법론적 동작에 특정한 언어로 설명되었지만, 청구 대상이 설명된 특정 특징부 또는 동작으로 제한되지 않을 수도 있음을 이해해야 한다. 오히려, 특정 특징부 및 동작은 청구 대상을 구현하는 샘플 형식으로서 개시된다.
Claims (30)
- 제 1 에이전트와 제 2 에이전트 사이에 연결되는 링크의 하나 이상의 대기 레인(idle lane)이 활성 상태에 진입하게 하는 웨이크 신호(a wake signal)를 제 1 시점에 송신하는 단계와,
상기 제 1 시점에 후속하는 제 2 시점에 상기 링크의 하나 이상의 대기 레인을 통해 트레이닝 시퀀스(training sequences)를 송신하는 단계를 포함하되,
상기 하나 이상의 대기 레인은 상기 트레이닝 시퀀스에 응답하여 상기 제 2 시점에 후속하는 제 3 시점 이전에 디스큐잉되는(deskewed)
방법.
- 제 1 항에 있어서,
상기 하나 이상의 대기 레인이 디스큐잉되는 동안, 상기 하나 이상의 대기 레인과 상기 링크의 하나 이상의 활성 레인 전부 중 적어도 하나 상에 디스큐 시퀀스를 송신하는 단계를 더 포함하는
방법.
- 제 1 항에 있어서,
상기 하나 이상의 대기 레인이 디스큐잉되는 동안, 상기 링크의 하나 이상의 활성 레인 상에 하나 이상의 특별 플릿(special flit) 및 하나 이상의 데이터 플릿(data flit) 중 적어도 하나를 송신하는 단계를 더 포함하는
방법.
- 제 1 항에 있어서,
상기 하나 이상의 대기 레인의 병합이 상기 하나 이상의 대기 레인 및 상기 링크의 하나 이상의 활성 레인 전부 중 적어도 하나 상의 데이터 플릿의 통신을 가능하게 하도록 상기 링크의 하나 이상의 대기 레인과 하나 이상의 활성 레인 전부 중 적어도 하나 상에 디스큐 시퀀스를 송신하는 단계를 더 포함하는
방법.
- 제 1 항에 있어서,
상기 제 2 시점에 후속하는 상기 제 3 시점에 상기 링크의 하나 이상의 대기 레인과 하나 이상의 활성 레인을 병합할 때, 상기 대기 레인의 지연(latency)을 변경하는 단계를 더 포함하는
방법.
- 제 1 항에 있어서,
상기 제 1 시점에 상기 링크의 하나 이상의 대기 레인을 통해 상기 트레이닝 시퀀스를 송신하는 단계를 더 포함하는
방법.
- 제 1 항에 있어서,
상기 제 1 시점에 상기 링크의 하나 이상의 활성 레인 상에 특별 플릿과 데이터 플릿 중 적어도 하나를 송신하는 단계를 더 포함하는
방법.
- 제 1 항에 있어서,
전력 관리 플릿에 응답하여 상기 링크를 제 1 폭에서 제 2 폭으로 변환하는 단계를 더 포함하는
방법.
- 제 1 항에 있어서,
상기 링크는 포인트 투 포인트(point-to-point) 상호접속부를 포함하는
방법.
- 링크의 하나 이상의 대기 레인이 활성 상태에 진입하게 하는 웨이크 신호를 제 1 시점에 송신하는 로직과,
상기 제 1 시점에 후속하는 제 2 시점에 상기 링크의 하나 이상의 대기 레인을 통해 트레이닝 시퀀스를 송신하는 로직을 포함하되,
상기 하나 이상의 대기 레인은 상기 트레이닝 시퀀스에 응답하여 상기 제 2 시점에 후속하는 제 3 시점 이전에 디스큐잉되는
프로세서.
- 제 10 항에 있어서,
상기 하나 이상의 대기 레인이 디스큐잉되는 동안, 상기 하나 이상의 대기 레인과 상기 링크의 하나 이상의 활성 레인 전부 중 적어도 하나 상에 디스큐 시퀀스를 송신하는 로직을 더 포함하는
프로세서.
- 제 10 항에 있어서,
상기 하나 이상의 대기 레인이 디스큐잉되는 동안, 상기 링크의 하나 이상의 활성 레인 상에 하나 이상의 특별 플릿 및 하나 이상의 데이터 플릿 중 적어도 하나를 송신하는 로직을 더 포함하는
프로세서.
- 제 10 항에 있어서,
상기 하나 이상의 대기 레인의 병합이 상기 하나 이상의 대기 레인 및 상기 링크의 하나 이상의 활성 레인 전부 중 적어도 하나 상의 데이터 플릿의 통신을 가능하게 하도록 상기 링크의 하나 이상의 대기 레인과 하나 이상의 활성 레인 전부 중 적어도 하나 상에 디스큐 시퀀스를 송신하는 로직을 더 포함하는
프로세서.
- 제 10 항에 있어서,
상기 제 2 시점에 후속하는 상기 제 3 시점에 상기 링크의 하나 이상의 대기 레인과 하나 이상의 활성 레인을 병합하는 로직을 더 포함하는
프로세서.
- 제 10 항에 있어서,
상기 제 1 시점에 상기 링크의 하나 이상의 대기 레인을 통해 상기 트레이닝 시퀀스를 송신하는 로직을 더 포함하는
프로세서.
- 제 10 항에 있어서,
상기 제 1 시점에 상기 링크의 하나 이상의 활성 레인 상에 하나 이상의 특별 플릿과 하나 이상의 데이터 플릿 중 적어도 하나를 송신하는 로직을 더 포함하는
프로세서.
- 제 10 항에 있어서,
전력 관리 플릿에 응답하여 상기 링크를 제 1 폭에서 제 2 폭으로 변환하는 로직을 더 포함하는
프로세서.
- 제 10 항에 있어서,
상기 링크는 포인트 투 포인트 상호접속부를 포함하는
프로세서.
- 제 10 항에 있어서,
상기 프로세서는 복수의 프로세서 코어를 포함하는
프로세서.
- 제 10 항에 있어서,
상기 프로세서는 복수의 소켓을 포함하는
프로세서.
- 포인트 투 포인트 링크를 통해 연결되는 제 1 프로세서 코어 및 제 2 프로세서 코어와,
상기 링크의 하나 이상의 대기 레인이 활성 상태에 진입하게 하는 웨이크 신호를 상기 링크를 통해 상기 제 1 프로세서 코어에서 상기 제 2 프로세서 코어로 제 1 시점에 송신하는 로직과,
상기 제 1 시점에 후속하는 제 2 시점에 상기 링크의 하나 이상의 대기 레인을 통해 트레이닝 시퀀스를 송신하는 로직을 포함하되,
상기 하나 이상의 대기 레인은 상기 트레이닝 시퀀스에 응답하여 상기 제 2 시점에 후속하는 제 3 시점 이전에 디스큐잉되는
컴퓨팅 시스템.
- 제 21 항에 있어서,
상기 하나 이상의 대기 레인이 디스큐잉되는 동안, 상기 하나 이상의 대기 레인과 상기 링크의 하나 이상의 활성 레인 전부 중 적어도 하나 상에 디스큐 시퀀스를 송신하는 로직을 더 포함하는
컴퓨팅 시스템.
- 제 21 항에 있어서,
상기 하나 이상의 대기 레인이 디스큐잉되는 동안, 상기 링크의 하나 이상의 활성 레인 상에 하나 이상의 특별 플릿 및 하나 이상의 데이터 플릿 중 적어도 하나를 송신하는 로직을 더 포함하는
컴퓨팅 시스템.
- 제 21 항에 있어서,
상기 하나 이상의 대기 레인의 병합이 상기 하나 이상의 대기 레인 및 상기 링크의 하나 이상의 활성 레인 전부 중 적어도 하나 상의 데이터 플릿의 통신을 가능하게 하도록 상기 링크의 하나 이상의 대기 레인과 하나 이상의 활성 레인 전부 중 적어도 하나 상에 디스큐 시퀀스를 송신하는 로직을 더 포함하는
컴퓨팅 시스템.
- 제 21 항에 있어서,
상기 제 2 시점에 후속하는 상기 제 3 시점에 상기 링크의 하나 이상의 대기 레인과 하나 이상의 활성 레인을 병합하는 로직을 더 포함하는
컴퓨팅 시스템.
- 제 21 항에 있어서,
상기 제 1 시점에 상기 링크의 하나 이상의 대기 레인을 통해 상기 트레이닝 시퀀스를 송신하는 로직을 더 포함하는
컴퓨팅 시스템.
- 제 21 항에 있어서,
상기 제 1 시점에 상기 링크의 하나 이상의 활성 레인 상에 특별 플릿과 데이터 플릿 중 적어도 하나를 송신하는 로직을 더 포함하는
컴퓨팅 시스템.
- 제 21 항에 있어서,
전력 관리 플릿에 응답하여 상기 링크를 제 1 폭에서 제 2 폭으로 변환하는 로직을 더 포함하는
컴퓨팅 시스템.
- 제 21 항에 있어서,
상기 링크는 포인트 투 포인트 상호접속부를 포함하는
컴퓨팅 시스템.
- 제 21 항에 있어서,
상기 프로세서는 복수의 프로세서 코어를 포함하는
컴퓨팅 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/631,876 US9183171B2 (en) | 2012-09-29 | 2012-09-29 | Fast deskew when exiting low-power partial-width high speed link state |
US13/631,876 | 2012-09-29 | ||
PCT/US2013/047251 WO2014051765A1 (en) | 2012-09-29 | 2013-06-24 | Fast deskew when exiting low-power partial-width high speed link state |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150038265A true KR20150038265A (ko) | 2015-04-08 |
KR101661259B1 KR101661259B1 (ko) | 2016-09-29 |
Family
ID=50386329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157004642A KR101661259B1 (ko) | 2012-09-29 | 2013-06-24 | 저전력 부분 폭 고속 링크 상태에서 나갈 때의 고속 디스큐 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9183171B2 (ko) |
KR (1) | KR101661259B1 (ko) |
CN (1) | CN104583944B (ko) |
DE (1) | DE112013003766T5 (ko) |
WO (1) | WO2014051765A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9183171B2 (en) | 2012-09-29 | 2015-11-10 | Intel Corporation | Fast deskew when exiting low-power partial-width high speed link state |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8868955B2 (en) | 2011-07-01 | 2014-10-21 | Intel Corporation | Enhanced interconnect link width modulation for power savings |
US9053244B2 (en) | 2012-06-28 | 2015-06-09 | Intel Corporation | Utilization-aware low-overhead link-width modulation for power reduction in interconnects |
US9355058B2 (en) * | 2012-10-22 | 2016-05-31 | Intel Corporation | High performance interconnect physical layer |
US9910809B2 (en) * | 2014-12-19 | 2018-03-06 | Intel Corporation | High performance interconnect link state transitions |
US10601425B2 (en) | 2018-05-30 | 2020-03-24 | Intel Corporation | Width and frequency conversion with PHY layer devices in PCI-express |
US11467999B2 (en) | 2018-06-29 | 2022-10-11 | Intel Corporation | Negotiating asymmetric link widths dynamically in a multi-lane link |
US10846247B2 (en) * | 2019-03-05 | 2020-11-24 | Intel Corporation | Controlling partial link width states for multilane links |
US11836101B2 (en) | 2019-11-27 | 2023-12-05 | Intel Corporation | Partial link width states for bidirectional multilane links |
KR102518317B1 (ko) | 2021-04-13 | 2023-04-06 | 에스케이하이닉스 주식회사 | PCIe 인터페이스 장치 및 그 동작 방법 |
KR102668564B1 (ko) | 2021-06-01 | 2024-05-24 | 에스케이하이닉스 주식회사 | PCIe 인터페이스 장치 및 그 동작 방법 |
US11789658B2 (en) | 2021-04-13 | 2023-10-17 | SK Hynix Inc. | Peripheral component interconnect express (PCIe) interface system and method of operating the same |
US12079061B2 (en) * | 2022-10-04 | 2024-09-03 | Qualcomm Incorporated | Power management for peripheral component interconnect |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7809969B2 (en) * | 2005-12-28 | 2010-10-05 | Intel Corporation | Using asymmetric lanes dynamically in a multi-lane serial link |
US20100332786A1 (en) * | 2009-06-29 | 2010-12-30 | Grohoski Gregory F | System and Method to Invalidate Obsolete Address Translations |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5396635A (en) | 1990-06-01 | 1995-03-07 | Vadem Corporation | Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system |
JPH04359335A (ja) | 1991-06-06 | 1992-12-11 | Fujitsu Ltd | メモリアクセス方式 |
US5781784A (en) | 1992-07-09 | 1998-07-14 | Zilog, Inc. | Dynamic power management of solid state memories |
JPH08223390A (ja) | 1995-02-10 | 1996-08-30 | Murata Mach Ltd | 全二重モデムを有したファクシミリ装置 |
US6222825B1 (en) | 1997-01-23 | 2001-04-24 | Advanced Micro Devices, Inc. | Arrangement for determining link latency for maintaining flow control in full-duplex networks |
US6009488A (en) | 1997-11-07 | 1999-12-28 | Microlinc, Llc | Computer having packet-based interconnect channel |
DE19822259C2 (de) | 1998-05-18 | 2000-07-06 | Siemens Ag | Sendeeinrichtung und Bussystem zur Datenübertragung |
JP2000261435A (ja) | 1999-03-05 | 2000-09-22 | Nec Corp | 最小帯域保証接続方法及び装置 |
JP2001022690A (ja) | 1999-07-09 | 2001-01-26 | Canon Inc | 装置間のデータ通信方法及びそのシステム |
US6526469B1 (en) | 1999-11-12 | 2003-02-25 | International Business Machines Corporation | Bus architecture employing varying width uni-directional command bus |
US20020087716A1 (en) | 2000-07-25 | 2002-07-04 | Shakeel Mustafa | System and method for transmitting customized multi priority services on a single or multiple links over data link layer frames |
US6665742B2 (en) | 2001-01-31 | 2003-12-16 | Advanced Micro Devices, Inc. | System for reconfiguring a first device and/or a second device to use a maximum compatible communication parameters based on transmitting a communication to the first and second devices of a point-to-point link |
US6766464B2 (en) | 2001-02-13 | 2004-07-20 | Sun Microsystems, Inc. | Method and apparatus for deskewing multiple incoming signals |
JP2002259327A (ja) | 2001-02-28 | 2002-09-13 | Hitachi Ltd | バス制御回路 |
JP3523616B2 (ja) | 2001-07-24 | 2004-04-26 | 松下電器産業株式会社 | バス最適化方法及び通信ノード |
US20030088799A1 (en) | 2001-11-05 | 2003-05-08 | Bodas Devadatta V. | Method and apparatus for regulation of electrical component temperature and power consumption rate through bus width reconfiguration |
US7170907B1 (en) | 2002-02-15 | 2007-01-30 | Marvell Semiconductor Israel Ltd. | Dynamic alignment for data on a parallel bus |
US7200186B2 (en) | 2002-03-14 | 2007-04-03 | Intel Corporation | Methods and apparatus for reducing power usage of a transmitter and receiver coupled via a differential serial data link |
US6996738B2 (en) * | 2002-04-15 | 2006-02-07 | Broadcom Corporation | Robust and scalable de-skew method for data path skew control |
US7490187B2 (en) * | 2002-05-15 | 2009-02-10 | Broadcom Corporation | Hypertransport/SPI-4 interface supporting configurable deskewing |
GB0211764D0 (en) | 2002-05-22 | 2002-07-03 | 3Com Corp | Automatic power saving facility for network devices |
US7137018B2 (en) | 2002-12-31 | 2006-11-14 | Intel Corporation | Active state link power management |
US7047475B2 (en) | 2003-02-04 | 2006-05-16 | Hewlett-Packard Development Company, L.P. | CRC encoding scheme for conveying status information |
US7136953B1 (en) | 2003-05-07 | 2006-11-14 | Nvidia Corporation | Apparatus, system, and method for bus link width optimization |
US7188263B1 (en) | 2003-05-07 | 2007-03-06 | Nvidia Corporation | Method and apparatus for controlling power state of a multi-lane serial bus link having a plurality of state transition detectors wherein powering down all the state transition detectors except one |
US7706282B2 (en) | 2003-06-25 | 2010-04-27 | Leping Huang | Bluetooth personal area network routing protocol optimization using connectivity metric |
TWI273789B (en) | 2004-02-24 | 2007-02-11 | Via Tech Inc | Method for adjusting the power consumption of a network interface |
US7313712B2 (en) | 2004-05-21 | 2007-12-25 | Intel Corporation | Link power saving state |
US7957428B2 (en) | 2004-05-21 | 2011-06-07 | Intel Corporation | Methods and apparatuses to effect a variable-width link |
US8046488B2 (en) | 2004-05-21 | 2011-10-25 | Intel Corporation | Dynamically modulating link width |
US7844767B2 (en) | 2004-05-21 | 2010-11-30 | Intel Corporation | Method for identifying bad lanes and exchanging width capabilities of two CSI agents connected across a link |
US7197591B2 (en) | 2004-06-30 | 2007-03-27 | Intel Corporation | Dynamic lane, voltage and frequency adjustment for serial interconnect |
US20060034611A1 (en) | 2004-08-16 | 2006-02-16 | Weidong Li | Method and system for reducing power consumption of IrDA enabled handsets by turning on/off an IrDA port dynamically |
CN100429682C (zh) * | 2004-08-16 | 2008-10-29 | 美国博通公司 | 减少IrDA激活设备的能量消耗的方法和系统 |
US7571271B2 (en) | 2005-09-28 | 2009-08-04 | Ati Technologies Ulc | Lane merging |
US20070239922A1 (en) | 2005-12-09 | 2007-10-11 | Horigan John W | Technique for link reconfiguration |
US20080077793A1 (en) * | 2006-09-21 | 2008-03-27 | Sensory Networks, Inc. | Apparatus and method for high throughput network security systems |
US7660261B2 (en) | 2006-11-14 | 2010-02-09 | The Trustees Of Columbia University In The City Of New York | Systems and methods for computing data transmission characteristics of a network path based on single-ended measurements |
US8208467B2 (en) | 2009-06-16 | 2012-06-26 | Oracle America, Inc. | Method and apparatus for modulating the width of a high-speed link |
US8868955B2 (en) * | 2011-07-01 | 2014-10-21 | Intel Corporation | Enhanced interconnect link width modulation for power savings |
US9444509B2 (en) * | 2012-09-27 | 2016-09-13 | Intel Corporation | Non-blocking power management for on-package input/output architectures |
US9183171B2 (en) | 2012-09-29 | 2015-11-10 | Intel Corporation | Fast deskew when exiting low-power partial-width high speed link state |
-
2012
- 2012-09-29 US US13/631,876 patent/US9183171B2/en not_active Expired - Fee Related
-
2013
- 2013-06-24 CN CN201380044767.8A patent/CN104583944B/zh active Active
- 2013-06-24 KR KR1020157004642A patent/KR101661259B1/ko active IP Right Grant
- 2013-06-24 DE DE112013003766.1T patent/DE112013003766T5/de active Pending
- 2013-06-24 WO PCT/US2013/047251 patent/WO2014051765A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7809969B2 (en) * | 2005-12-28 | 2010-10-05 | Intel Corporation | Using asymmetric lanes dynamically in a multi-lane serial link |
US20100332786A1 (en) * | 2009-06-29 | 2010-12-30 | Grohoski Gregory F | System and Method to Invalidate Obsolete Address Translations |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9183171B2 (en) | 2012-09-29 | 2015-11-10 | Intel Corporation | Fast deskew when exiting low-power partial-width high speed link state |
Also Published As
Publication number | Publication date |
---|---|
US20140095751A1 (en) | 2014-04-03 |
DE112013003766T5 (de) | 2015-09-10 |
CN104583944A (zh) | 2015-04-29 |
WO2014051765A1 (en) | 2014-04-03 |
US9183171B2 (en) | 2015-11-10 |
KR101661259B1 (ko) | 2016-09-29 |
CN104583944B (zh) | 2018-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101661259B1 (ko) | 저전력 부분 폭 고속 링크 상태에서 나갈 때의 고속 디스큐 | |
US11657015B2 (en) | Multiple uplink port devices | |
EP3035198B1 (en) | Low power entry in a shared memory link | |
US10140213B2 (en) | Two level memory full line writes | |
EP3238078B1 (en) | Speculative reads in buffered memory | |
US9952644B2 (en) | Device power management state transition latency advertisement for faster boot time | |
US9639276B2 (en) | Implied directory state updates | |
US20190005176A1 (en) | Systems and methods for accessing storage-as-memory | |
US11467999B2 (en) | Negotiating asymmetric link widths dynamically in a multi-lane link | |
US9774503B2 (en) | Method, apparatus and system for automatically discovering nodes and resources in a multi-node system | |
US10061719B2 (en) | Packed write completions | |
US9489028B2 (en) | Managing sideband segments in on-die system fabric | |
US9552308B2 (en) | Early wake-warn for clock gating control | |
US9632557B2 (en) | Active state power management (ASPM) to reduce power consumption by PCI express components | |
US20190114281A1 (en) | Conveying early hint information for physical link state changes | |
US8909862B2 (en) | Processing out of order transactions for mirrored subsystems using a cache to track write operations | |
KR20160045860A (ko) | 고속 레인에서 가기능정지를 이용한 emi 완화 | |
US20150058524A1 (en) | Bimodal functionality between coherent link and memory expansion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |