CN115203084A - 高速外围组件互连(pcie)接口装置及其操作方法 - Google Patents

高速外围组件互连(pcie)接口装置及其操作方法 Download PDF

Info

Publication number
CN115203084A
CN115203084A CN202210005244.3A CN202210005244A CN115203084A CN 115203084 A CN115203084 A CN 115203084A CN 202210005244 A CN202210005244 A CN 202210005244A CN 115203084 A CN115203084 A CN 115203084A
Authority
CN
China
Prior art keywords
power
state
mode
link
power mode
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202210005244.3A
Other languages
English (en)
Inventor
全勇泰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Hynix Inc
Original Assignee
SK Hynix Inc
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 SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN115203084A publication Critical patent/CN115203084A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1642Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • 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/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Power Sources (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

本公开涉及一种高速外围组件互连(PCIe)接口装置,可以包括通道组、命令队列和链路管理器。通道组可以包括第一通道和至少一个或多个第二通道以形成用于与主机通信的链路。命令队列可以存储用于至少一个直接存储器存取(DMA)装置的命令,这些命令基于主机的请求而生成。链路管理器可以响应于检测到命令队列中存储的命令的量小于或等于参考值的事件,将操作模式从第一功率模式改变为功耗小于第一功率模式的功耗的第二功率模式,停用至少一个或多个第二通道,并且向至少一个DMA装置提供低于第一操作时钟的第二操作时钟。

Description

高速外围组件互连(PCIE)接口装置及其操作方法
相关交叉引用
本专利文件要求于2021年4月13日提交的申请号为 10-2021-0048084的韩国专利申请的优先权和权益,该韩国专利申请通过引用全部并入本文。
技术领域
本专利文件中公开的技术和实施方式涉及一种电子装置,并且更具体地,涉及一种PCIe接口装置及其操作方法。
背景技术
高速外围组件互连(PCIe)是用于数据通信的串行接口。基于PCIe 的存储装置支持多端口和多功能。基于PCIe的存储装置可以是虚拟化的和非虚拟化的,并且通过一个或多个PCIe功能来实现主机I/O命令的服务质量(QoS)。
存储装置是指用于基于诸如计算机或智能电话的主机装置的控制来存储数据的电子组件。该存储装置可以包括存储数据的存储器装置和被配置为控制该存储器装置的存储器控制器。存储器装置被划分为易失性存储器装置和非易失性存储器装置。
易失性存储器装置是只有在供电时才能保持其数据的装置。因此,这种易失性存储器装置在断电的情况下丢失其数据。易失性存储器装置的示例包括静态随机存取存储器(SRAM)和动态随机存取存储器 (DRAM)。
非易失性存储器装置是即使在断电时也可以保持其数据的装置。非易失性存储器装置的示例包括只读存储器(ROM)、可编程ROM (PROM)、电可编程ROM(EPROM)、电可擦可编程ROM(EEPROM) 和闪速存储器。
发明内容
所公开的技术的各个实施例涉及一种具有改进的功率管理性能的 PCIe接口装置及其操作方法。
根据本公开的实施例,一种装置可以包括通道组、命令队列和链路管理器。通道组可以包括第一通道和至少一个或多个第二通道以提供通信,每个通道被配置为形成用于与主机通信的链路。命令队列可以存储用于至少一个直接存储器存取(DMA)装置的命令,这些命令基于主机的请求而生成。链路管理器可以响应于检测到命令队列中存储的命令的量小于或等于参考值的事件,将操作模式从第一功率模式改变为功耗小于第一功率模式的功耗的第二功率模式,停用至少一个或多个第二通道,并且向至少一个DMA装置提供低于第一操作时钟的第二操作时钟。
根据本公开的实施例,一种操作高速外围组件互连(PCIe)接口装置的方法可以包括:响应于第一事件,将操作模式从第一功率模式改变为功耗小于第一功率模式的功耗的第二功率模式,第一事件为基于通过链路与PCIe接口装置通信的主机的请求而生成的、用于至少一个直接存储器存取(DMA)装置的命令的量小于或等于参考值;停用 PCIe接口装置中包括的至少一个或多个通道,并且向至少一个DMA装置提供低于第一操作时钟的第二操作时钟。
根据本技术,提供一种具有改进的功率管理性能的PCIe接口装置及其操作方法。
附图说明
图1是示出基于所公开的技术的实施例的PCIe系统的示图。
图2是示出参照图1描述的PCIe接口装置中包括的层的示图。
图3是示出基于所公开的技术的实施例的通道的示图。
图4A是示出与参照图1描述的链路相关的链路训练状态机(link training&status state machine,LTSSM)的示图。
图4B是示出参照图4A描述的L1的子状态的示图。
图5是基于所公开的技术的实施例的PCIe装置的结构和与主机的通信的示图。
图6是示出参照图5描述的PCIe接口装置的功率管理的示图。
图7A和图7B是示出基于所公开的技术的实施例的PCIe接口装置的操作的流程图。
具体实施方式
作为所公开的技术的示例示出实施例的具体结构或功能描述。可以以各种形式来实施所公开的技术的实施例。
图1是示出基于所公开的技术的实施例的PCIe系统的示图。
参照图1,第一PCIe系统10可以包括第一PCIe接口装置(即PCIe 接口1)11。第二PCIe系统20可以包括第二PCIe接口装置(即PCIe接口 2)21。
第一PCIe系统10和第二PCIe系统20可以是支持使用PCIe协议进行通信的电子装置。例如,第一PCIe系统10可以是PC、膝上型计算机或移动计算装置。另外,第二PCIe系统20可以包括扩展卡、扩展板、适配器卡、插卡或附件卡。第二PCIe系统20可以包括印刷电路板(PCB),该印刷电路板可以插入第一PCIe系统10的主板上的电连接器或扩展槽中,以通过扩展总线向第一PCIe系统10提供附加功能。第二PCIe系统 20可以包括诸如固态驱动器(SSD)、图形卡、网卡或USB卡的存储装置。在另一个实施例中,第一PCIe系统10和第二PCIe系统20可以相反地配置。
第一PCIe系统10和第二PCIe系统20可以分别使用第一PCIe接口装置11和第二PCIe接口装置21来执行通信。第一PCIe系统10和第二PCIe 系统20可以形成链路并且通过所形成的链路进行通信。第一PCIe系统 10和第二PCIe系统20可以通过链路相互发送和接收数据包。
图2是示出参照图1描述的PCIe接口装置中包括的层的示图。
参照图1和图2,PCI接口装置11和21中的每一个可以包括事务层、数据链路层和物理层。物理层可以包括逻辑子块和物理子块。
事务层可以组合或拆分事务层数据包(TLP)。这里,TLP可以用于处理读取事务和写入事务,即特定事件。
事务层可以控制基于信用的流。另外,事务层可以支持根据事务类型的各种格式的寻址。例如,事务层可以支持对存储器、输入/输出、配置或消息的寻址。
事务层可以执行初始化和配置功能。具体地,事务层可以存储由处理器或管理装置生成的链路设置信息。另外,事务层可以存储与在物理层中确定的带宽和频率相关的链路属性。
事务层可以生成和处理数据包。具体地,可以生成从装置核心请求的TLP,并且可以将接收到的TLP转变为数据有效载荷或状态信息。另外,当事务层支持端到端数据完整性时,事务层可以生成循环冗余码(CRC)并且将CRC更新到TLP的报头。
事务层可以执行流控制。具体地,事务层可以跟踪链路中TLP的流控制信用。另外,事务层可以通过数据链路层周期性地接收事务信用状态。事务层可以基于流控制信息来控制TLP传输。
事务层可以管理功率。具体地,事务层可以根据系统软件的指令来管理功率。另外,事务层可以在电源开启的状态下根据硬件的指令来执行自主功率管理。
事务层可以为特定类别的应用识别虚拟信道机制和流量类别。事务层可以通过特定物理资源来提供独立的逻辑数据流。另外,事务层可以在通过数据包标记来提供不同排序的方法中应用适当的服务策略。
数据链路层可以负责链路管理、数据完整性、错误检测和错误校正。数据链路层可以通过分配数据保护码和TLP序列号将待传输的TLP 传输到物理层。另外,数据链路层可以检查从物理层接收的TLP的完整性,并且将TLP传输到事务层。
当数据链路层检测到TLP的错误时,数据链路层可以接收不存在错误的TLP或请求物理层重新传输TLP直到确定链路处于故障状态。数据链路层可以生成和消耗用于链路管理的数据链路层数据包(DLLP)。
数据链路层可以交换可靠信息。另外,数据链路层可以管理初始化和功率。具体地,数据链路层可以将事务层的功率状态请求传输到物理层。另外,数据链路层可以将关于激活与否、重置、连接释放和功率管理状态的信息传输到事务层。
数据链路层可以执行数据保护、错误检查和重试。具体地,数据链路层可以生成用于数据保护的CRC。另外,数据链路层可以存储TLP 以准许重试所传输的TLP。数据链路层可以检查TLP、传输重试消息、报告错误并且显示错误以供记录。
物理层可以包括驱动器、输入缓冲器、并行到串行或串行到并行转变器以及用于诸如锁相环(PLL)的接口操作的配置。
物理层可以将从数据链路层接收的数据包转变为串行格式并且传输该数据包。另外,物理层可以根据与连接到链路另一侧的装置的兼容性来设置带宽和频率。为了串行地通信数据,物理层可以将数据包从并行转变为串行,并且再次从串行转变为并行。也就是说,物理层可以执行串行化器或解串行器的功能。
物理层可以执行接口初始化、维护和状态跟踪。具体地,物理层可以通过组件之间的连接来管理功率。另外,物理层可以协商组件之间的带宽和通道映射并且反转通道的极性。
物理层可以生成符号和特殊有序集。另外,物理层可以传输和对齐所生成的符号。
物理层可以用作PCI组件之间的数据包发送器(transmitter)或接收器(receiver)。物理层可以对通过事务层以及数据链路层接收的数据包进行转换并且将该数据包传输到另一个PCI组件,并且对从另一个 PCI组件接收到的数据包进行转换并且通过数据链路层将该数据包传输到事务层。
物理层中包括的逻辑子块可以配置有两个部分。两个部分中的一个可以是用于准备将已从数据链路层传输的信息发送到物理子块的发送部分。两个部分中的另一个可以是用于识别信息并且准备将信息输出到数据链路层的接收部分。因此,接收部分识别信息并且将识别出的信息输出到数据链路层。
物理层中包括的物理子块可以是电子块,并且可以支持共同或各自独立的参考时钟结构。另外,物理子块可以减少低功率链路操作的摆动,检测频带中的接收器并且检测电空闲状态。
图3是示出根据所公开的技术的实施例的通道的示图。
参照图3,示出第一发送器TX1、第二发送器TX2、第一接收器RX1 和第二接收器RX2位于通道的两侧:第一侧包括第一发送器TX1和第一接收器RX1,第二侧包括第二发送器TX2和第二接收器RX2。该通道在两个相反方向上提供两侧之间的通信:在一个方向上从TX1到RX2,在相反的方向上从TX2到RX1。通道可以包括如下的路径,该路径包括差分驱动信号对,例如,配置用于发送的发送路径对和配置用于接收的接收路径对。PCIe系统可以包括将数据发送到另一个PCIe系统的发送逻辑和从另一个PCIe系统接收数据的接收逻辑。例如,PCIe系统可以包括连接到第一发送器TX1的两条发送路径和连接到第一接收器RX1 的两条接收路径。
发送路径可以用于发送数据并且被配置为包括传输线、铜线、光学线、无线通信信道、红外通信链路或任何其它通信路径。接收路径可以用于接收数据并且被配置为包括接收线、铜线、光学线、无线通信信道、红外通信链路或任何其它通信路径。
参照图1描述的第一PCIe系统10与第二PCIe系统20之间的连接可以被称为链路。链路可以支持至少一个通道。在一些实施方式中,每个通道可以指示一组差分信号对(一对用于发送,另一对用于接收)。链路可以包括多个通道以调整带宽。例如,链路可以包括1个、2个、4 个、8个、12个、16个、32个、64个或其它。
图4A是示出与参照图1描述的链路相关的链路训练状态机 (LTSSM)的示图。
检测状态可以是连接在PCIe组件之间的链路处于检测的状态。在检测状态下,搜索物理连接的通道。
检测状态可以是LTSSM的初始状态,也可以是在重置之后或启动时进入的状态。另外,检测状态可以重置所有逻辑、端口和寄存器。当主机发出指令时,可以进入检测状态。LTSSM可以从检测状态进入轮询状态。
在实施例中,轮询状态可以是从检测到的通道之中区分出能够进行数据通信的通道的状态。也就是说,轮询状态可以是使PCIe组件之间的时钟同步,检查通道的极性(是D+还是D-),并且检查通道可以使用的数据传输速度的状态。此外,轮询状态可以是检查数据中的连续位之间的边界的状态。在实施例中,LTSSM可以从轮询状态进入配置状态。
在实施例中,配置状态可以是检查通道的连接状态的状态。例如,配置状态可以是确定可以进行数据通信的通道宽度的状态。另外,在配置状态下,将表示为训练序列的PAD的位改变为商定数字,并且可以执行对两个组件之间的最大性能的商定。在配置状态中,发送器和接收器都可以以商定的数据发送/接收速度来发送或接收数据。另外,在配置状态下,进行通道对齐(lane to lane de-skew),其中并行位流在不同的时间从多个通道到达不同的装置。
在实施例中,LTSSM可以从配置状态进入检测状态、L0状态、恢复状态、环回(loopback)状态或禁用状态。
在实施例中,L0状态可以是正常发送和接收数据和控制数据包的状态。在L0状态下,可以发送和接收事务层数据包(TLP)和数据链路层数据包(DLLP)。另外,可以从L0状态启动所有功率管理状态。
在实施例中,LTSSM可以从L0状态进入L1状态、L2状态、L0s状态或恢复状态。
在实施例中,L0s状态、L1状态和L2状态中的每种状态可以对应于低功率状态。
在一些实施方式中,L0s状态可以是L0状态的子状态,并且在L0s 状态下,链路可以快速进入低功率状态并且在无需经过恢复状态的情况下恢复。另外,为了从L0s状态进入L0状态,可以重置位锁定、符号锁定和通道对齐。此时,不需要两个组件的发送器和接收器同时处于 L0s状态。LTSSM可以从L0s状态进入L0状态或恢复状态。
L1状态返回到L0状态的返回速度比L0s状态的慢,但是L1状态通过L1状态下的额外恢复等待时间允许比L0状态下的额外功率节省更多。可以通过活动状态功率管理(ASPM)或功率管理软件进入L1状态。此时,ASPM可以是当连接到PCIe的装置未被使用时用于将链路改变为低功率状态的策略,功率管理软件可以是用于将连接到PCIe的装置改变为低功耗状态的策略。
另外,根据从数据链路层接收到的指令,在接收到电空闲有序集 (EIOS)之后,可以开始进入L1状态。LTSSM可以从L1状态进入恢复状态。
在L2状态下,保存最大功率,并且可以切断连接到PCIe的装置的发送器和接收器。在L2状态下,可能无法保证功率和时钟,但可以使用AUX电源。根据来自数据链路层的指令,在接收EIOS之后,可以开始进入L2状态。LTSSM可以从L2状态进入检测状态。
在实施例中,恢复状态可以在处于L0状态下发生错误时进入,并且在错误恢复之后再次转变为L0状态。在一些实施方式中,可以在从 L1状态返回到L0状态时进入恢复状态。在一些实施方式中,当进入环回状态、热重置状态或禁用状态时,恢复状态可以对应于转变状态。
在恢复状态中,可以重置位锁定、符号锁定或块对齐以及通道对齐。另外,在恢复状态中,可以改变通道的数据传输速度。
在实施例中,LTSSM可以从恢复状态进入L0状态、配置状态、检测状态、环回状态、热重置状态或禁用状态。
在实施例中,可以开始环回状态以进行测试,并且当测量位错误率时可以进入环回状态。环回状态可以是在训练序列(例如TS1和TS2) 的训练控制字段中使用第2位并且接收器可以重新传输所有接收到的数据包的状态。LTSSM可以在测量环回状态中的位错误率之后进入检测状态。
在实施例中,热重置状态可以是重置链路的状态,也可以是在训练序列(例如TS1和TS2)的训练控制字段中使用第0位的状态。LTSSM 可以从热重置状态进入检测状态。
在实施例中,禁用状态可以是当接收器处于低功率状态时发送器处于电空闲状态的状态。在禁用状态中,可以停用链路直到电空闲状态结束。禁用状态可以是在训练序列(例如TS1和TS2)的训练控制字段中使用第1位的状态。当从上面的状态接收到指令时,LTSSM可以进入禁用状态。LTSSM可以从禁用状态进入检测状态。
链路接通(link up)可以表示通过轮询状态和配置状态从检测状态到L0状态的转变,而链路断开(link down)可以表示再次转变为检测状态。链路训练可以表示PCIe层之中的物理层处于配置状态或恢复状态的状态。
另外,LTSSM可以为每个状态设置链路接通寄存器值。例如,链路接通寄存器为“1”的状态可以是链路接通状态,而链路接通寄存器为“0”的状态可以是链路断开状态。当LTSSM最初进入L0状态时,可以将链路接通寄存器设置为“1”。
具体地,可以将与检测状态、轮询状态、配置状态、环回状态、热重置状态和禁用状态相对应的链路接通寄存器设置为“0”,并且可以将与L0状态、L0s状态、L1状态和L2状态相对应的链路接通寄存器设置为“1”。
在实施例中,在链路断开期间,可以刷新数据,并且可以重置PCIe 寄存器和NVMe寄存器。因此,需要主机初始化PCIe寄存器和NVMe 寄存器。在主机预期断开链路的情况下,主机可以初始化PCIe寄存器和NVMe寄存器。
在主机未预期的突然的链路断开的情况下,例如,在数据发送/接收速度改变失败、通道改变失败、结束低功率失败或其它情况下,可能发生LTSSM超时,因此LTSSM可以转变为检测状态。此时,由于主机未预期的突然的链路断开是两个端口之间的链路断开,因此OS和 NVMe驱动程序可能无法意识到这一点。因此,主机可能会在未初始化PCIe寄存器和NVMe寄存器的情况下尝试访问装置,这会由于重置值而导致不希望的事件,诸如蓝屏和/或主机操作停止。
在实施例中,L0状态可以被称为与L1状态、L2状态、L0s状态相比链路正常操作的正常链路状态。在一些实施方式中,L1状态可以被称为低功率链路状态。
图4B是示出参照图4A描述的L1的子状态的示图。
参照图4B,L1的子状态可以包括L1.0子状态、L1.1子状态和L1.2 子状态。
L1.0子状态可以转变为L1.1子状态或L1.2子状态。
L1.0子状态可以对应于参照图3描述的L1状态。为了检测L1.0子状态下的电空闲退出,需要激活上游端口和下游端口。
L1.1子状态可以转变为L1.0子状态。
在L1.1子状态下,需要保持链路公共模式(common mode)电压。为了进入或退出L1.1子状态,可以使用双向开漏时钟请求(CLKREQ#) 信号。不需要为了检测L1.1子状态下的电空闲退出而激活上游端口和下游端口。
L1.2子状态可以转变为L1.0子状态。
在L1.2子状态下,不需要保持链路公共模式电压。为了进入或退出L1.2子状态,可以使用双向开漏时钟请求(CLKREQ#)信号。不需要为了检测L1.1子状态下的电空闲退出而激活上游端口和下游端口。
支持L1状态的除L1.0子状态之外的子状态(L1.1子状态和L1.2子状态)的端口可以不需要参考时钟。L1的子状态协议可以使用开漏时钟请求(CLKREQ#)信号,但可以不单独定义与链路的端口使用的本地时钟的关系。支持L1.2子状态的端口需要支持等待时间容忍报告(LTR)。
在实施例中,L1.1子状态和L1.2子状态可以是低功率链路子状态。
图5是基于所公开的技术的实施例的PCIe装置的结构以及与主机的通信的示图。
参照图5,PCIe装置1000可以包括PCIe接口装置100和至少一个直接存储器存取(DMA)装置200。
主机2000可以包括主机接口装置2100。
PCIe装置1000和主机2000可以分别使用PCIe接口装置100和主机接口装置2100相互通信。PCIe接口装置100和主机接口装置2100可以形成用于通信的链路。该链路可以包括连接在PCIe接口装置100和主机接口装置2100之间的通道。PCIe接口装置100可以通过链路将数据发送到主机接口装置2100和从主机接口装置2100接收数据。在实施例中,主机2000可以对应于参照图1描述的第一PCIe系统10。PCIe装置1000可以对应于第二PCIe系统20。
在实施例中,PCIe接口装置100可以包括物理层110、命令队列120 和链路管理器130。
物理层110可以形成用于与主机2000通信的链路。物理层110可以包括通道组111。通道组111可以包括默认通道和至少一个或多个通道。
命令队列120可以存储用于至少一个DMA装置200的命令,该命令基于主机2000的请求而生成。
当命令队列120中存储的命令的量小于或等于参考值时,链路管理器130可以将操作模式从第一功率模式改变为第二功率模式。第二功率模式可以是多个功率模式之中的、功耗小于第一功率模式的功耗的功率模式。在第二功率模式下,链路管理器130可以停用至少一个或多个通道并且向DMA装置200提供低于第一操作时钟的第二操作时钟。
在实施例中,链路管理器130可以包括功率控制器131、时钟控制器132和链路控制器133。
当命令队列中存储的命令的量大于参考值时,功率控制器131可以将操作模式设置为多个功率模式之中的第一功率模式。多个功率模式可以包括第一功率模式至第五功率模式。功耗可以按照从第一功率模式到第五功率模式的顺序降低。虽然本实施例具有五种功率模式,但是多个功率模式的数量不限于此,其它实施方式也是可能的。
当命令队列中存储的命令的量小于或等于参考值时,功率控制器 131可以将操作模式设置为第二功率模式。当在等于或大于第一参考时间的第一时间段期间命令队列为空并且主机2000允许的等待时间小于或等于参考等待时间时,功率控制器131可以将操作模式设置为第三功率模式。第一参考时间可以是用于确定是否进入参照图6描述的活动空闲时段的参考时间。当在等于或大于第一参考时间的第一时间段期间命令队列为空并且主机2000允许的等待时间大于参考等待时间时,功率控制器131可以将操作模式设置为第四功率模式。当在等于或大于第二参考时间的第二时间段期间命令队列为空时,功率控制器131可以将操作模式设置为第五功率模式。第二参考时间可以是用于确定是否进入参照图6描述的空闲时段的参考时间。第二参考时间可以大于第一参考时间。
功率控制器131可以将默认通道和至少一个或多个通道设置为多个功率状态中的任何一个。多个功率状态可以包括第一功率状态至第三功率状态。功耗可以按照从第一功率状态到第三功率状态的顺序增加。多个功率状态的数量不限于本实施例。
在第一功率模式下,功率控制器131可以将默认通道和至少一个或多个通道设置为第三功率状态。在第二功率模式下,功率控制器131 可以将默认通道保持为第三功率状态。在第二功率模式下,功率控制器131可以将至少一个或多个通道设置为第一功率状态。在第三功率模式下,功率控制器131可以将默认通道保持为第三功率状态并且将至少一个或多个通道设置为断电状态。在断电状态期间,不供电,因此装置处断电状态。在第四功率模式下,功率控制器131可以将默认通道设置为第二功率状态并且将至少一个或多个通道设置为断电状态。在第五功率模式下,功率控制器131可以将默认通道设置为第一功率状态并且将至少一个或多个通道设置为断电状态。
在第一功率模式下,时钟控制器132可以向DMA装置200提供第一操作时钟。在第二功率模式至第四功率模式下,时钟控制器132可以向 DMA装置200提供第二操作时钟。第二操作时钟可以是通过将第一操作时钟减少激活通道的数量与通道组中包括的通道的总数的比率而获得的操作时钟。由于通道组包括默认通道和至少一个或多个通道,因此通道的总数对应于至少一个或多个通道的数量与1(即默认通道的数量)之和。
在第一功率模式至第三功率模式下,链路控制器133可以将链路保持为L0状态,L0状态为正常链路状态。在第四功率模式下,链路控制器133可以将链路转变为L1状态,L1状态为低功率链路状态。在第五功率模式下,链路控制器133可以将链路转变为L1的子状态,L1的子状态为低功率链路子状态。
DMA装置200可以基于从PCIe装置1000提供的操作时钟OP_CLK 来执行数据通信。
DMA装置200的类型可以包括高速非易失性存储器(NVMe)装置、固态驱动器(SSD)装置、人工智能中央处理单元(AI CPU)、人工智能片上系统(AI SoC)、以太网装置、声卡、图形卡等。DMA装置200 的类型不限于此,并且可以包括使用PCIe通信协议的其它电子装置。
图6是示出参照图5描述的PCIe接口装置的功率管理的示图。
参照图6,通道组可以包括第一通道X_0至第四通道X_3。通道组中包括的通道的数量不限于本实施例,并且其它实施方式也是可以的。第一通道X_0可以是默认通道。
在图6中,多个功率模式可以包括第一功率模式PM1至第五功率模式PM5。多个功率模式的数量不限于本实施例。功耗可以按照从第一功率模式PM1到第五功率模式PM5的顺序降低。
在全性能活动时段,可以将操作模式设置为第一功率模式PM1。在低性能活动时段,可以将操作模式设置为第二功率模式PM2。在第一活动空闲时段,可以将操作模式设置为第三功率模式PM3。在第二活动空闲时段,可以将操作模式设置为第四功率模式PM4。在空闲时段,可以将操作模式设置为第五功率模式PM5。
当命令队列中存储的命令的量小于或等于参考值时,功率模式可以从第一功率模式PM1改变为第二功率模式PM2。当从对命令队列中存储的所有命令的处理完成的时间点开始经过了第一参考时间时,操作模式可以从第二功率模式PM2改变为第三功率模式PM3。当从对命令队列中存储的所有命令的处理完成的时间点开始经过了第一参考时间并且主机允许的等待时间大于参考等待时间时,操作模式可以从第三功率模式PM3改变为第四功率模式PM4。当从对命令队列中存储的所有命令的处理完成的时间点开始经过了第二参考时间时,操作模式可以从第四功率模式PM4改变为第五功率模式PM5。第二参考时间可以大于第一参考时间。当根据主机的请求而生成新命令时,操作模式可以从第五功率模式PM5改变为第二功率模式PM2。当所生成的新命令的数量大于参考值时,操作模式可以从第二功率模式PM2改变为第一功率模式PM1。
多个功率状态可以包括第一功率状态PWR_S1至第三功率状态 PWR_S3。多个功率状态的数量不限于本实施例。功耗可以按照从第一功率状态PWR_S1到第三功率状态PWR_S3的顺序增加。第一功率状态 PWR_S1可以是P2状态。第二功率状态PWR_S2可以是P1状态。第三功率状态PWR_S3可以是P0状态。在实施例中,可以为每个通道设置功率状态。
在P0状态下,参照图5描述的通道的操作时钟PCLK必须保持工作。除了通道的操作时钟之外,物理层110的内部时钟可以处于工作中。物理层110的内部时钟和通道的操作时钟PCLK可以是不同的时钟。物理层110可以传输和接收高速PCI信令。通道的操作时钟PCLK可以根据 PCIe装置的代速度(Gen Speed)而变化。
在P1状态下,可以切断物理层110的内部时钟之中的所选择的内部时钟。通道的操作时钟PCLK必须保持工作。发送信道和接收信道都可以是空闲的。P1状态可以用于参照图4A描述的禁用状态、检测状态和 L1状态。
在P2状态下,可以切断物理层110的内部时钟之中的所选择的内部时钟。切断通道的操作时钟PCLK。并行接口可以在异步模式下操作。 P2状态可以用于参照图4A描述的L1状态、L2状态和参照图4B描述的 L1状态的子状态。
对于第一种情况,可以从全性能活动时段到低性能活动时段和第一活动空闲时段向DMA装置提供第一操作时钟Clock1。可以将第一通道X_0至第四通道X_3设置为P0状态。链路可以保持L0状态。
在第二活动空闲时段中,可以向DMA装置提供第一操作时钟 Clock1。可以将第一通道X_0至第四通道X_3设置为P1状态。链路可以转变为L1状态。
在空闲时段中,可以切断提供给DMA装置的操作时钟。可以将第一通道X_0至第四通道X_3设置为P2状态。链路可以转变为L1状态的子状态。
对于第二种情况,在全性能活动时段,可以向DMA装置提供第一操作时钟Clock1。可以将第一通道X_0至第四通道X_3设置为P0状态。链路可以保持L0状态。
在低性能活动时段,可以向DMA装置提供第二操作时钟Clock2。第二操作时钟Clock2可以是通过将第一操作时钟Clock1减少激活通道的数量与通道组中包括的通道的总数的比率而获得的操作时钟。在图6 中,第二操作时钟Clock2可以是通过将第一操作时钟Clock1减少到1/4 而获得的操作时钟。可以将第一通道X_0设置为P0状态。可以将第二通道X_1至第四通道X_3设置为P2状态。链路可以保持L0状态。
在第一活动空闲时段中,可以向DMA装置提供第二操作时钟 Clock2。可以将第一通道X_0设置为P0状态。可以将第二通道X_1至第四通道X_3设置为断电状态。链路可以保持L0状态。
在第二活动空闲时段中,可以向DMA装置提供第二操作时钟 Clock2。可以将第一通道X_0设置为P1状态。可以将第二通道X_1至第四通道X_3设置为断电状态。链路可以转变为L1状态。
在空闲时段中,可以关闭提供给DMA装置的操作时钟。在各个实施例中,可以向DMA装置提供非常低的操作时钟。可以将第一通道X_0 设置为P2状态。可以将第二通道X_1至第四通道X_3设置为断电状态。链路可以转变为L1状态的子状态。
从低性能活动时段到空闲时段,在第一种情况下,可以激活第一通道X_0至第四通道X_3。在第二种情况下,可以仅激活作为默认通道的第一通道X_0,并且可以停用第二通道X_1至第四通道X_3。因此,与第一种情况相比,第二种情况可以降低功耗。
图7A和7B是示出PCIe接口装置的操作的流程图。
参照图7A,在步骤S701中,PCIe接口装置可以将操作模式设置为多个功率模式之中的第一功率模式。第一功率模式可以是多个功率模式之中具有最高功耗的功率模式。
在步骤S703中,PCIe接口装置可以确定用于DMA装置的命令的数量是否大于参考值。作为确定的结果,当命令的数量大于参考值时,操作进行到步骤S701,而当命令的数量小于或等于参考值时,操作进行到步骤S705。
在步骤S705中,PCIe接口装置可以将操作模式设置为多个功率模式之中的、功耗小于第一功率模式的功耗的第二功率模式。
在步骤S707中,PCIe接口装置可以停用多个通道之中的除默认通道之外的至少一个或多个通道。
在步骤S709中,PCIe接口装置可以将至少一个或多个通道设置为多个功率状态之中的第一功率状态P2,并且将默认通道设置为高于第一功率状态P2的第三功率状态P0。第三功率状态P0可以是多个功率状态之中的最高级别。
在步骤S711中,PCIe接口装置可以向DMA装置提供低于第一操作时钟的第二操作时钟。第二操作时钟可以是通过将第一操作时钟减少激活通道的数量与通道组中包括的通道的总数的比率而获得的时钟。
在步骤S713中,PCIe接口装置可以在步骤S703中描述的用于DMA 装置的所有命令的处理完成之后,确定第一参考时间是否过去。第一参考时间可以是用于确定是否进入参照图6描述的活动空闲时段的参考时间。
在步骤S715中,PCIe接口装置可以确定主机允许的等待时间是否大于参考等待时间。作为确定的结果,当主机允许的等待时间大于参考等待时间时,操作进行到步骤S721,而当主机允许的等待时间小于或等于参考等待时间时,操作进行到步骤S717。
在步骤S717中,PCIe接口装置可以将操作模式设置为功耗小于第二功率模式的功耗的第三功率模式。
在步骤S719中,PCIe接口装置可以将至少一个或多个非活动通道设置为断电状态。
在步骤S721中,PCIe接口装置可以将操作模式设置为功耗小于第三功率模式的功耗的第四功率模式。
在步骤S723中,PCIe接口装置可以将链路转变为L1状态。
在步骤S725中,PCIe接口装置可以关闭至少一个或多个通道的电源,并且将默认通道的功率设置为高于第一功率状态且低于第三功率状态的第二功率状态P1。
参照图7B,步骤S719或步骤S725可以进行到步骤S727。
在步骤S727中,PCIe接口装置可以在以上步骤S703中描述的用于 DMA装置的所有命令的处理完成之后,确定第二参考时间是否过去。第二参考时间可以是用于确定是否进入参照图6描述的空闲时段的参考时间。第二参考时间可以大于第一参考时间。
在步骤S729中,PCIe接口装置可以将操作模式设置为第五功率模式。第五功率模式可以是多个功率模式之中的具有最低功耗的功率模式。
在步骤S731中,PCIe接口装置可以将链路转变为低功率链路子状态。低功率链路子状态可以包括参照图4B描述的L1.1子状态和L1.2子状态。
在步骤S733中,PCIe接口装置可以将默认通道设置为第一功率状态P2。第一功率状态P2可以是多个功率状态之中的最低级别。
在步骤S735中,PCIe接口装置可以关闭提供给DMA装置的操作时钟。
在步骤S737中,PCIe接口装置可以确定是否根据主机的请求而生成了用于DMA装置的新命令。作为确定的结果,当生成新命令时,操作进入步骤S739,而当没有生成新命令时,操作进入步骤S729。
在步骤S739中,PCIe接口装置可以将链路转变为正常链路状态L0。
在步骤S741中,PCIe接口装置可以确定步骤S737中生成的新命令的数量是否大于参考值。作为确定的结果,当新命令的数量大于参考值时,操作进入步骤S743,当新命令的数量小于或等于参考值时,操作进入步骤S749。
在步骤S743中,PCIe接口装置可以将操作模式设置为第一功率模式。
在步骤S745中,PCIe接口装置可以将至少一个或多个通道和默认通道设置为第三功率状态P0。
在步骤S747中,PCIe接口装置可以向DMA装置提供第一操作时钟。
在步骤S749中,PCIe接口装置可以将操作模式设置为第二功率模式。
在步骤S751中,PCIe接口装置可以将至少一个或多个通道设置为第一功率状态P2,并且将默认通道设置为第三功率状态P0。
在步骤S753中,PCIe接口装置可以向DMA装置提供第二操作时钟。
虽然上面已经描述了所公开的技术的具体实施例,但是可以基于在本专利文件中描述或示出的内容来进行对所公开的实施例和其它实施例的各种改变和修改。

Claims (25)

1.一种装置,包括:
通道组,包括第一通道和至少一个或多个第二通道以提供通信,每个通道形成与主机通信的链路;
命令队列,存储针对至少一个直接存储器存取装置即至少一个DMA装置的命令,所述命令基于所述主机的请求生成;以及
链路管理器,响应于检测到所述命令队列中存储的所述命令的量小于或等于参考值的事件,将操作模式从第一功率模式改变为功耗小于所述第一功率模式的功耗的第二功率模式,停用所述至少一个或多个第二通道,并且向所述至少一个DMA装置提供低于第一操作时钟的第二操作时钟。
2.根据权利要求1所述的装置,其中所述链路管理器包括:
功率控制器,将所述操作模式从所述第一功率模式改变为所述第二功率模式;
时钟控制器,向所述至少一个DMA装置提供所述第二操作时钟,所述第二操作时钟是通过将所述第一操作时钟减少激活通道的数量与所述通道组中包括的通道的总数的比率而获得的;以及
链路控制器,控制所述链路状态,使其具有正常链路状态。
3.根据权利要求2所述的装置,其中所述功率控制器在所述第二功率模式期间将所述至少一个或多个第二通道设置为第一功率状态,并且将所述第一通道设置为功耗高于所述第一功率状态的功耗的第三功率状态。
4.根据权利要求3所述的装置,其中所述功率控制器将所述操作模式从所述第二功率模式改变为功耗小于所述第二功率模式的功耗的第三功率模式,响应于在等于或大于第一参考时间的第一时间段期间所述命令队列为空而引起所述操作模式的改变。
5.根据权利要求4所述的装置,其中所述功率控制器在所述第三功率模式期间,将所述第一通道保持为所述第三功率状态并且将所述至少一个或多个第二通道设置为断电状态。
6.根据权利要求4所述的装置,其中所述功率控制器将所述操作模式从所述第三功率模式改变为功耗小于所述第三功率模式的功耗的第四功率模式,响应于所述主机允许的等待时间大于参考等待时间而引起所述操作模式的改变。
7.根据权利要求6所述的装置,其中所述功率控制器在所述第四功率模式期间,将所述第一通道设置为功耗高于所述第一功率状态的功耗且低于所述第三功率状态的功耗的第二功率状态,并且将所述至少一个或多个第二个通道设置为电源关闭的断电状态。
8.根据权利要求6所述的装置,其中所述链路控制器在所述第四功率模式下,将所述链路从所述正常链路状态转变为功耗小于所述正常链路状态的功耗的低功率链路状态。
9.根据权利要求4所述的装置,其中所述功率控制器将所述操作模式从所述第三功率模式改变为功耗小于所述第三功率模式的功耗的第五功率模式,响应于在大于所述第一参考时间的第二时间段期间所述命令队列为空而引起所述操作模式的改变。
10.根据权利要求9所述的装置,其中所述功率控制器在所述第五功率模式期间,将所述第一通道设置为所述第一功率状态并且将所述至少一个或多个第二通道设置为电源关闭的断电状态。
11.根据权利要求9所述的装置,其中所述链路控制器在所述第五功率模式下,将所述链路从所述正常链路状态转变为功耗小于所述正常链路状态的功耗的低功率链路子状态。
12.根据权利要求9所述的装置,其中所述时钟控制器在所述第五功率模式下关闭提供给所述至少一个DMA装置的操作时钟。
13.根据权利要求9所述的装置,其中所述功率控制器响应于根据所述主机的请求而生成并且存储在所述命令队列中的新命令,将所述操作模式从所述第五功率模式改变为所述第二功率模式,并且
所述链路控制器激活所述至少一个或多个第二通道,并且将所述链路从低功率链路子状态转变为功耗高于所述低功率链路子状态的功耗的所述正常链路状态。
14.根据权利要求13所述的装置,其中所述功率控制器响应于所述命令队列中存储的命令的量大于所述参考值,将所述操作模式从所述第二功率模式改变为所述第一功率模式。
15.一种操作高速外围组件互连接口装置即PCIe接口装置的方法,所述方法包括:
响应于第一事件,将操作模式从第一功率模式改变为功耗小于所述第一功率模式的功耗的第二功率模式,所述第一事件为基于通过链路与所述PCIe接口装置通信的主机的请求而生成的、针对至少一个直接存储器存取装置即DMA装置的命令的量小于或等于参考值;
停用所述PCIe接口装置中包括的至少一个或多个通道;并且
向所述至少一个DMA装置提供低于第一操作时钟的第二操作时钟。
16.根据权利要求15所述的方法,其中向所述至少一个DMA装置提供所述第二操作时钟包括:通过将所述第一操作时钟减少激活通道的数量与通道组中包括的通道的总数的比率来获得所述第二操作时钟。
17.根据权利要求15所述的方法,其中改变为所述第二功率模式包括:
将所述至少一个或多个通道设置为多个功率状态之中的第一功率状态;并且
将与所述至少一个或多个通道分开并且包括在所述PCIe接口装置中的默认通道设置为功耗高于所述第一功耗状态的功耗的第三功耗状态。
18.根据权利要求17所述的方法,进一步包括:
响应于从针对所述至少一个DMA装置的命令的处理完成的时间点开始经过了第一参考时间,将所述操作模式从所述第二功率模式改变为功耗小于所述第二功率模式的功耗的第三功率模式。
19.根据权利要求18所述的方法,其中改变为所述第三功率模式包括:
将所述默认通道的状态控制为处于所述第三功率状态;并且
将所述至少一个或多个通道设置为处于电源关闭的断电状态。
20.根据权利要求18所述的方法,进一步包括:
响应于所述主机允许的等待时间大于参考等待时间的第二事件,将所述操作模式从所述第三功率模式改变为功耗小于所述第三功率模式的功耗的第四功率模式。
21.根据权利要求20所述的方法,其中改变为所述第四功率模式包括:
将所述默认通道设置为处于功耗高于所述第一功率状态的功耗且低于所述第三功率状态的功耗的第二功率状态;
将所述至少一个或多个通道设置为处于电源关闭的断电状态;并且
将所述链路从正常链路状态转变为低功率链路状态。
22.根据权利要求18所述的方法,进一步包括:
响应于从对所述命令的处理完成的时间点开始经过了大于所述第一参考时间的第二参考时间,将所述操作模式从所述第三功率模式改变为功耗小于所述第三功率模式的功耗的第五功率模式。
23.根据权利要求22所述的方法,其中改变为所述第五功率模式包括:
将所述默认通道设置为所述第一功率状态;
将所述至少一个或多个通道设置为电源切断的断电状态;
将所述链路从正常链路状态转变为低功率链路子状态;并且
在所述第五功率模式下关闭提供给所述至少一个DMA装置的操作时钟。
24.根据权利要求23所述的方法,进一步包括:
响应于根据所述主机的请求而生成的针对所述至少一个DMA装置的新命令,将所述操作模式从所述第五功率模式改变为所述第二功率模式;
激活所述至少一个或多个通道;并且
将所述链路从所述低功率链路子状态转变为所述正常链路状态。
25.根据权利要求24所述的方法,进一步包括:
响应于所述新命令的数量大于所述参考值的第三事件,将所述操作模式从所述第二功率模式改变为所述第一功率模式。
CN202210005244.3A 2021-04-13 2022-01-04 高速外围组件互连(pcie)接口装置及其操作方法 Pending CN115203084A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210048084A KR102518317B1 (ko) 2021-04-13 2021-04-13 PCIe 인터페이스 장치 및 그 동작 방법
KR10-2021-0048084 2021-04-13

Publications (1)

Publication Number Publication Date
CN115203084A true CN115203084A (zh) 2022-10-18

Family

ID=83510267

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210005244.3A Pending CN115203084A (zh) 2021-04-13 2022-01-04 高速外围组件互连(pcie)接口装置及其操作方法

Country Status (4)

Country Link
US (1) US11960424B2 (zh)
KR (1) KR102518317B1 (zh)
CN (1) CN115203084A (zh)
TW (1) TW202240417A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11782497B2 (en) 2021-06-01 2023-10-10 SK Hynix Inc. Peripheral component interconnect express (PCIE) interface device and method of operating the same
US11789658B2 (en) 2021-04-13 2023-10-17 SK Hynix Inc. Peripheral component interconnect express (PCIe) interface system and method of operating the same

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7000041B2 (en) 2003-03-31 2006-02-14 Intel Corporation Method and an apparatus to efficiently handle read completions that satisfy a read request
US7136953B1 (en) * 2003-05-07 2006-11-14 Nvidia Corporation Apparatus, system, and method for bus link width optimization
US8081706B2 (en) * 2005-08-24 2011-12-20 Altera Corporation Lane-to-lane skew reduction in multi-channel, high-speed, transceiver circuitry
US7647515B2 (en) 2005-08-29 2010-01-12 Dell Products L.P. System and method for information handling system adaptive variable bus idle timer
US7984314B2 (en) 2007-05-14 2011-07-19 Intel Corporation Power management of low power link states
US9146892B2 (en) 2007-10-11 2015-09-29 Broadcom Corporation Method and system for improving PCI-E L1 ASPM exit latency
US8582448B2 (en) 2007-10-22 2013-11-12 Dell Products L.P. Method and apparatus for power throttling of highspeed multi-lane serial links
US20090187683A1 (en) * 2008-01-22 2009-07-23 International Business Machines Corporation Adaptive link width control
US8503468B2 (en) * 2008-11-05 2013-08-06 Fusion-Io, Inc. PCI express load sharing network interface controller cluster
JP2010238150A (ja) 2009-03-31 2010-10-21 Toshiba Corp PCIExpress通信システム、及びその通信方法
US8131889B2 (en) * 2009-11-10 2012-03-06 Apple Inc. Command queue for peripheral component
US20110173352A1 (en) * 2010-01-13 2011-07-14 Mellanox Technologies Ltd Power Reduction on Idle Communication Lanes
US8832336B2 (en) * 2010-01-30 2014-09-09 Mosys, Inc. Reducing latency in serializer-deserializer links
US8689028B2 (en) 2011-07-01 2014-04-01 Intel Corporation Method and apparatus to reduce idle link power in a platform
WO2013095422A1 (en) * 2011-12-21 2013-06-27 Intel Corporation Dynamic link width adjustment
US20130173837A1 (en) 2011-12-30 2013-07-04 Advanced Micro Devices, Inc. Methods and apparatus for implementing pci express lightweight notification protocols in a cpu/memory complex
US9256268B2 (en) 2012-04-24 2016-02-09 Intel Corporation Adaptive low-power link-state entry policy for active interconnect link power management
US8938630B2 (en) * 2012-07-30 2015-01-20 Micron Technology, Inc. Apparatus power control
US9183171B2 (en) 2012-09-29 2015-11-10 Intel Corporation Fast deskew when exiting low-power partial-width high speed link state
JP6192284B2 (ja) 2012-10-15 2017-09-06 キヤノン株式会社 通信装置及びその制御方法
WO2014065873A1 (en) * 2012-10-22 2014-05-01 Jeff Willey Control messaging in multislot link layer flit
US9026698B2 (en) 2013-03-15 2015-05-05 Intel Corporation Apparatus, system and method for providing access to a device function
US9229525B2 (en) * 2013-06-17 2016-01-05 Apple Inc. Adaptive latency tolerance for power management of memory bus interfaces
US9535870B2 (en) 2013-09-18 2017-01-03 HGST Netherlands B.V. Acknowledgement-less protocol for solid state drive interface
US9467120B1 (en) * 2013-12-19 2016-10-11 Altera Corporation Power management for PCI express
US9454213B2 (en) 2013-12-26 2016-09-27 Intel Corporation Method, apparatus, system for lane staggering and determinism for serial high speed I/O lanes
KR102218735B1 (ko) * 2014-01-21 2021-02-23 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 소거 방법
US9304690B2 (en) * 2014-05-07 2016-04-05 HGST Netherlands B.V. System and method for peer-to-peer PCIe storage transfers
US20160188510A1 (en) 2014-12-26 2016-06-30 Samsung Electronics Co., Ltd. METHOD FETCHING/PROCESSING NVMe COMMANDS IN MULTI-PORT, SR-IOV OR MR-IOV SUPPORTED PCIe BASED STORAGE DEVICES
US20160216758A1 (en) 2015-01-27 2016-07-28 Avago Technologies General Ip (Singapore) Pte. Ltd. PCI Express Device With Early Low Power State
KR102333391B1 (ko) * 2015-02-27 2021-12-01 삼성전자 주식회사 전자 장치 및 이의 전력 제어 방법
KR102403489B1 (ko) * 2015-07-10 2022-05-27 삼성전자주식회사 비휘발성 메모리 익스프레스 컨트롤러에 의한 입출력 큐 관리 방법
JP2017033501A (ja) 2015-08-06 2017-02-09 株式会社東芝 記憶装置および制御方法
US11029748B2 (en) 2016-03-15 2021-06-08 Qualcomm Incorporated Adaptive peripheral component interconnect express link substate initiation for optimal performance and power savings
US10133504B2 (en) 2016-04-06 2018-11-20 Futurewei Technologies, Inc. Dynamic partitioning of processing hardware
US10025522B2 (en) * 2016-04-15 2018-07-17 Sandisk Technologies Llc Memory interface command queue throttling
KR20170124017A (ko) * 2016-04-29 2017-11-09 삼성전자주식회사 동작 전압을 조절하는 메모리 장치, 메모리 장치를 제어하는 어플리케이션 프로세서 및 메모리 장치의 동작방법
US9760311B1 (en) * 2016-06-23 2017-09-12 Sandisk Technologies Llc Storage system and method for adaptive thermal throttling
US9946325B2 (en) 2016-06-30 2018-04-17 Intel IP Corporation Interprocessor power state transitions
US10452278B2 (en) 2017-03-24 2019-10-22 Western Digital Technologies, Inc. System and method for adaptive early completion posting using controller memory buffer
US10963035B2 (en) 2017-10-11 2021-03-30 Qualcomm Incorporated Low power PCIe
US11132319B2 (en) 2018-01-12 2021-09-28 Intel Corporation Timer control for peripheral component interconnect express components implemented with thunderbolt controllers
US20190250930A1 (en) 2018-02-12 2019-08-15 Western Digital Technologies, Inc. Method and apparatus for configuring a serial data link
JP7292864B2 (ja) 2018-04-23 2023-06-19 キオクシア株式会社 半導体記憶装置
US11231764B2 (en) 2018-10-17 2022-01-25 Samsung Electronics Co., Ltd. System and method for supporting chassis level keep alive in NVME-of based system
US11307638B2 (en) 2018-12-12 2022-04-19 Intel Corporation Securely providing multiple wake-up time options for PCI Express
US11435958B2 (en) 2019-01-31 2022-09-06 Intel Corporation Shared memory mechanism to support fast transport of SQ/CQ pair communication between SSD device driver in virtualization environment and physical SSD
US11815976B2 (en) 2019-05-22 2023-11-14 Qualcomm Incorporated Bandwidth based power management for peripheral component interconnect express devices
US11073894B2 (en) 2019-05-24 2021-07-27 Qualcomm Incorporated System power management for peripheral component interconnect express (PCIE)-based devices
US11593280B2 (en) 2019-06-25 2023-02-28 Intel Corporation Predictive packet header compression
US11194751B2 (en) 2019-07-16 2021-12-07 Intel Corporation Power management of re-driver devices
US11775470B2 (en) 2019-11-20 2023-10-03 Intel Corporation Transaction layer packet format
CN111124975A (zh) 2019-12-27 2020-05-08 江苏芯盛智能科技有限公司 一种PCIe设备动态功耗节省方法以及低功耗PCIe设备
US11543996B2 (en) 2020-05-20 2023-01-03 Western Digital Technologies, Inc. Systems and methods for power management in a data storage device
US20200310517A1 (en) 2020-05-28 2020-10-01 Intel Corporation Adaptive lower power state entry and exit
US20220197519A1 (en) 2020-12-19 2022-06-23 Intel Corporation Multi-level memory system power management apparatus and method
US11789658B2 (en) 2021-04-13 2023-10-17 SK Hynix Inc. Peripheral component interconnect express (PCIe) interface system and method of operating the same
US20220327074A1 (en) 2021-04-13 2022-10-13 SK Hynix Inc. PERIPHERAL COMPONENT INTERCONNECT EXPRESS (PCIe) SYSTEM AND METHOD OF OPERATING THE SAME

Also Published As

Publication number Publication date
KR102518317B1 (ko) 2023-04-06
KR20220141681A (ko) 2022-10-20
TW202240417A (zh) 2022-10-16
US11960424B2 (en) 2024-04-16
US20220327073A1 (en) 2022-10-13

Similar Documents

Publication Publication Date Title
CN106209695B (zh) 给加载/存储通信协议提供低功率物理单元
US7480808B2 (en) Method and apparatus for managing power consumption relating to a differential serial communication link
CN106970886B (zh) 使用第二协议的扩展功能结构来控制第一协议的物理链路
US7793030B2 (en) Association of multiple PCI express links with a single PCI express port
KR102420530B1 (ko) 대체 프로토콜 선택
US20220327074A1 (en) PERIPHERAL COMPONENT INTERCONNECT EXPRESS (PCIe) SYSTEM AND METHOD OF OPERATING THE SAME
CN115203084A (zh) 高速外围组件互连(pcie)接口装置及其操作方法
CN114446363A (zh) 存储装置和存储装置的操作方法
TW202248869A (zh) 快捷週邊組件互連介面裝置及其操作方法
US11797468B2 (en) Peripheral component interconnect express device and computing system including the same
KR102635450B1 (ko) PCIe 장치 및 그 동작 방법
KR102668564B1 (ko) PCIe 인터페이스 장치 및 그 동작 방법
US11782497B2 (en) Peripheral component interconnect express (PCIE) interface device and method of operating the same
US20240012770A1 (en) Interface device having plurality of ports and method of operating the same
KR102669923B1 (ko) PCIe 인터페이스 장치 및 그 동작 방법
US20230315672A1 (en) Interface device and computing system including the same
US20230315591A1 (en) PCIe DEVICE AND COMPUTING SYSTEM INCLUDING THE SAME
US20240104035A1 (en) Peripheral component interconnect express device and operating method thereof
CN114968860B (zh) 高速外围组件互连接口装置以及包括该接口装置的系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination