CN113660179B - 一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法 - Google Patents

一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法 Download PDF

Info

Publication number
CN113660179B
CN113660179B CN202110870356.0A CN202110870356A CN113660179B CN 113660179 B CN113660179 B CN 113660179B CN 202110870356 A CN202110870356 A CN 202110870356A CN 113660179 B CN113660179 B CN 113660179B
Authority
CN
China
Prior art keywords
controller
bandwidth
interrupt
flow
control unit
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.)
Active
Application number
CN202110870356.0A
Other languages
English (en)
Other versions
CN113660179A (zh
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.)
Shandong Sinochip Semiconductors Co Ltd
Original Assignee
Shandong Sinochip Semiconductors Co Ltd
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 Shandong Sinochip Semiconductors Co Ltd filed Critical Shandong Sinochip Semiconductors Co Ltd
Priority to CN202110870356.0A priority Critical patent/CN113660179B/zh
Publication of CN113660179A publication Critical patent/CN113660179A/zh
Application granted granted Critical
Publication of CN113660179B publication Critical patent/CN113660179B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • 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/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/74Admission control; Resource allocation measures in reaction to resource unavailability
    • H04L47/748Negotiation of resources, e.g. modification of a request
    • 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Bus Control (AREA)

Abstract

本发明公开一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法,增加了SSD流量检测与控制单元,该模块可以利用总线上数据传输信息计算出各个控制器的带宽,根据流量控制寄存器中设定的带宽比例,实现限速甄别和信号发送;增加了中断控制单元,用于将流量控制模块发出的限速信号转换成中断,发送到cpu核。通过本专利的方法,硬件模块精确计算各个控制器的带宽,与cpu固件一起,实现了虚拟设备的带宽约束功能,具有支持数据流控占比可调、功能灵活的特点,有效分担了服务器主机的计算压力,为服务器运行更多用户服务提供可能性。

Description

一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法
技术领域
本发明涉及存储领域,具体是一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法。
背景技术
随着云计算业务的深入发展,服务器主机对SSD提出了新的要求,特别是多虚拟功能设备(virtual function, VF)的PCIe SSD成为发展趋势。常见的企业级SSD支持的规格数为16VFs、32VFs,支持多命名空间功能。一个VF可提供相对独立的PCIe设备空间,支持挂载到不同的虚拟机上并识别成一个nvme设备,提供上层客户应用。在服务器应用过程中,为了保证不同客户对SSD的访问负载均衡及不同虚拟设备间的流量平衡,常在服务器端进行流量控制,这在一定程度上耗费了CPU运算性能。
发明内容
针对现有技术的缺陷,本发明提供一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法,在SSD控制器中通过监控内部总线上不同虚拟设备收发数据流的占比,通过硬软件配合,达到控制数据流的效果,具有支持数据流控占比可调、功能灵活的特点,有效降低了服务器主机的计算压力,为服务支持更多用户服务提供可能性。
为了解决所述技术问题,本发明采用的技术方案是:一种PCIe SSD多虚拟功能设备的带宽协同控制装置,其特征在于:本装置设置于SSD主控芯片内部,包括流量检测与控制单元、中断控制单元和寄存器;
流量检测与控制单元连接于nvme控制器与PCIe接口模块之间,流量检测与控制单元计算各个nvme控制器发出的数据包包含的数据量,再根据采样时间计算出每个控制器所占用的带宽,并根据当前建立链路的速率计算出每个控制器所占的带宽比例,当某控制器所占带宽比例达到其设定比例的a时,发送中断请求;
中断控制单元与流量检测与控制单元相连,用于生成中断信号,当流量检测与控制单元发起中断请求时,由中断控制单元生成中断信号,同时在中断标识寄存器中标识出相应位,用于固件读取;
寄存器包括一组流量控制寄存器和一个流量状态寄存器,流量控制器寄存器的数量根据SSD支持的功能设备个数确定,用于设置每个控制器的流量比例,流量状态寄存器用于标识发生流量限制的控制器;
中断控制单元生成的中断信号发送至SSD主控芯片内部的CPU核,CPU核收到中断信号后,内部固件暂时限制对应的nvme控制器抢占DMA请求,从而限制对应nvme控制器的数据传输量,当统计的流量比例低于b时,清除对应标识位,取消对nvme控制器的流量限制。
进一步的,nvme控制器发出的数据包包含控制器号、数据量在内的读写标志信息,流量检测与控制单元基于上述读写标志信息计算各个nvme控制器发出的数据包包含的数据量。
进一步的,a=99%,b=97%。
进一步的,流量状态寄存器的每个bit表示一个控制器。
本发明还公开了一种PCIe SSD多虚拟功能设备的带宽协同控制方法,包括以下步骤:
S01)、SSD固件通过寄存器配置各个nvme控制器的流量比例;
S02)、SSD正常读写的过程中,流量检测与控制单元自动进入进行状态,计算各个nvme控制器发出的数据包包含的数据量,再根据采样时间计算出每个控制器所占用的带宽,并根据当前建立链路的速率计算出每个控制器所占的带宽比例,当监控到某个控制器的带宽比例到达a时,标注流量状态寄存器,并向中断控制单元发起信号;
S03)、中断控制单元收到信号后,生成中断信号发送至SSD主控芯片内部的CPU核;
S04)、CPU核响应中断异常请求后,查询流量状态寄存器,识别出发生限速的控制器ID,触发限速算法,此后该控制器在获取DMA请求时进行限制,使得该控制器发送DMA的请求进行pending处理;
S05)、当流量检测与控制单元检测到上述控制器的带宽比例回到限定比例的b及以下时,清除对应寄存器的值;
S06)、固件轮询检测已经置位的控制器恢复正常后,取消相应控制器发起DMA请求的限制,该控制器的数据传输回复正常。
进一步的,a=99%,b=97%。
本发明的有益效果:本发明申请提供了一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法,增加了SSD流量检测与控制单元,该模块可以利用总线上数据传输信息计算出各个控制器的带宽,根据流量控制寄存器中设定的带宽比例,实现限速甄别和信号发送;增加了中断控制单元,用于将流量控制模块发出的限速信号转换成中断,发送到cpu核。通过本专利的方法,硬件模块精确计算各个控制器的带宽,与cpu固件一起,实现了虚拟设备的带宽约束功能,具有支持数据流控占比可调、功能灵活的特点,有效分担了服务器主机的计算压力,为服务器运行更多用户服务提供可能性。
附图说明
图1为实施例1所述装置的原理框图;
图2为实施例2所述方法的流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步的说明。
实施例1
本实施例公开一种PCIe SSD多虚拟功能设备的带宽协同控制装置,如图1所示,SSD板卡包括SOC主控芯片、nand flash、ram和PCIe金手指接口,本装置在SSD主控芯片内部实现。
本实施例所述协同控制装置包括流量检测与控制单元、中断控制单元和寄存器。
流量检测与控制单元连接于nvme控制器与PCIe接口模块之间,在nvme控制器c0…cx(x=1,2,..,VFnum)向SSD内部总线发出的数据包中,包含着控制器号、数据量等相关的读写标志信息,流量检测与控制单元利用上述信息计算各个nvme控制器发出的数据包包含的数据量,再根据采样时间计算出每个控制器所占用的带宽,并根据当前建立链路的速率计算出每个控制器所占的带宽比例,当某控制器所占带宽比例达到其设定比例的99%时,标记对应的流量状态寄存器对应Bit,发送中断请求。
中断控制单元与流量检测与控制单元相连,用于生成中断信号,当流量检测与控制单元发起中断请求时,由中断控制单元生成中断信号,同时在中断标识寄存器中标识出相应位,用于固件读取。
寄存器包括一组流量控制寄存器和一个流量状态寄存器,流量控制器寄存器的数量根据SSD支持的功能设备个数确定,用于设置每个控制器的流量比例,流量状态寄存器用于标识发生流量限制的控制器。
CPU核运行固件,实现读写命令和中断处理。上电时,固件设置好流量控制寄存器中各个nvme控制器对应的流量控制比例。正常情况下,接收并解析完主机的读写命令后,会发起DMA请求,向主机传递所需要的用户数据。当接收到中断控制器的请求后,根据中断状态控制器的标志位,判断到发生限流的控制器ID,内部固件暂时限制对应的nvme控制器抢占DMA请求,从而限制对应nvme控制器的数据传输量,当统计的流量比例低于97%时,清除对应标识位,取消对nvme控制器的流量限制。
本实施例中,流量控制器寄存器的数量根据SSD支持的功能设备个数确定,如果共支持8个则需要设置2个32bit流量控制寄存器。流量状态寄存器的每个bit表示一个控制器。
实施例2
本实施例公开一种PCIe SSD多虚拟功能设备的带宽协调控制方法,如图2所示,包括以下步骤:
S01)、SSD固件通过寄存器配置各个nvme控制器的流量比例;
S02)、SSD正常读写的过程中,流量检测与控制单元自动进入进行状态,计算各个nvme控制器发出的数据包包含的数据量,再根据采样时间计算出每个控制器所占用的带宽,并根据当前建立链路的速率计算出每个控制器所占的带宽比例,当监控到某个控制器的带宽比例到达99%时,标注流量状态寄存器,并向中断控制单元发起信号;
S03)、中断控制单元收到信号后,生成中断信号发送至SSD主控芯片内部的CPU核;
S04)、CPU核响应中断异常请求后,查询流量状态寄存器,识别出发生限速的控制器ID,触发限速算法,此后该控制器在获取DMA请求时进行限制,使得该控制器发送DMA的请求进行pending处理;
所述限速算法是指限速控制器的读写命令暂时不分配DMA资源,也即停止发送新的数据传输请求。经过一定采样时间后,该控制器的带宽会有所下降。
S05)、当流量检测与控制单元检测到上述控制器的带宽比例回到限定比例的97%及以下时,清除对应寄存器的值;
S06)、固件轮询检测已经置位的控制器恢复正常后,取消相应控制器发起DMA请求的限制,该控制器的数据传输回复正常。
通过本专利的方法,硬件模块精确计算各个控制器的带宽,与cpu固件一起,实现了虚拟设备的带宽约束功能,具有支持数据流控占比可调、功能灵活的特点,有效分担了服务器主机的计算压力,为服务器运行更多用户服务提供可能性。
以上描述的仅是本发明的基本原理和优选实施例,本领域技术人员根据本发明做出的改进和替换,属于本发明的保护范围。

Claims (4)

1.一种PCIe SSD多虚拟功能设备的带宽协同控制装置,其特征在于:本装置设置于SSD主控芯片内部,包括流量检测与控制单元、中断控制单元和寄存器;
流量检测与控制单元连接于nvme控制器与PCIe接口模块之间,流量检测与控制单元计算各个nvme控制器发出的数据包包含的数据量,再根据采样时间计算出每个控制器所占用的带宽,并根据当前建立链路的速率计算出每个控制器所占的带宽比例,当某控制器所占带宽比例达到其设定比例的a时,a=99%,发送中断请求;
中断控制单元与流量检测与控制单元相连,用于生成中断信号,当流量检测与控制单元发起中断请求时,由中断控制单元生成中断信号,同时在中断标识寄存器中标识出相应位,用于固件读取;
寄存器包括一组流量控制寄存器和一个流量状态寄存器,流量控制器寄存器的数量根据SSD支持的功能设备个数确定,用于设置每个控制器的流量比例,流量状态寄存器用于标识发生流量限制的控制器;
中断控制单元生成的中断信号发送至SSD主控芯片内部的CPU核,CPU核收到中断信号后,内部固件暂时限制对应的nvme控制器抢占DMA请求,从而限制对应nvme控制器的数据传输量,当统计的流量比例低于b时,b=97%,清除对应标识位,取消对nvme控制器的流量限制。
2.根据权利要求1所述的PCIe SSD多虚拟功能设备的带宽协同控制装置,其特征在于:nvme控制器发出的数据包包含控制器号、数据量在内的读写标志信息,流量检测与控制单元基于上述读写标志信息计算各个nvme控制器发出的数据包包含的数据量。
3.根据权利要求1所述的PCIe SSD多虚拟功能设备的带宽协同控制装置,其特征在于:流量状态寄存器的每个bit表示一个控制器。
4.一种PCIe SSD多虚拟功能设备的带宽协同控制方法,其特征在于:包括以下步骤:
S01)、SSD固件通过寄存器配置各个nvme控制器的流量比例;
S02)、SSD正常读写的过程中,流量检测与控制单元自动进入进行状态,计算各个nvme控制器发出的数据包包含的数据量,再根据采样时间计算出每个控制器所占用的带宽,并根据当前建立链路的速率计算出每个控制器所占的带宽比例,当监控到某个控制器的带宽比例到达a时,a=99%,标注流量状态寄存器,并向中断控制单元发起信号;
S03)、中断控制单元收到信号后,生成中断信号发送至SSD主控芯片内部的CPU核;
S04)、CPU核响应中断异常请求后,查询流量状态寄存器,识别出发生限速的控制器ID,触发限速算法,所述限速算法是指限速控制器的读写命令暂时不分配DMA资源,此后该控制器在获取DMA请求时进行限制,使得该控制器发送DMA的请求进行pending处理;
S05)、当流量检测与控制单元检测到上述控制器的带宽比例回到限定比例的b及以下时,b=97%,清除对应寄存器的值;
S06)、固件轮询检测已经置位的控制器恢复正常后,取消相应控制器发起DMA请求的限制,该控制器的数据传输回复正常。
CN202110870356.0A 2021-07-30 2021-07-30 一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法 Active CN113660179B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110870356.0A CN113660179B (zh) 2021-07-30 2021-07-30 一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110870356.0A CN113660179B (zh) 2021-07-30 2021-07-30 一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法

Publications (2)

Publication Number Publication Date
CN113660179A CN113660179A (zh) 2021-11-16
CN113660179B true CN113660179B (zh) 2023-12-08

Family

ID=78490133

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110870356.0A Active CN113660179B (zh) 2021-07-30 2021-07-30 一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法

Country Status (1)

Country Link
CN (1) CN113660179B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117319214B (zh) * 2023-11-30 2024-04-16 北京象帝先计算技术有限公司 一种pcie传输带宽处理方法、pcie终端设备及电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127632A (zh) * 2006-08-15 2008-02-20 腾讯科技(深圳)有限公司 一种服务器流量控制方法、系统以及重定向器
CN202948447U (zh) * 2012-10-15 2013-05-22 中国电子科技集团公司第三十二研究所 基于PCI总线的串行Rapid IO协议控制器
WO2018037510A1 (ja) * 2016-08-24 2018-03-01 株式会社日立製作所 計算機システム、通信デバイス、及び、記憶制御方法
US10860511B1 (en) * 2015-12-28 2020-12-08 Western Digital Technologies, Inc. Integrated network-attachable controller that interconnects a solid-state drive with a remote server computer
CN112558884A (zh) * 2020-12-23 2021-03-26 湖南国科微电子股份有限公司 数据保护方法以及基于NVMe的存储设备
CN112634978A (zh) * 2020-12-23 2021-04-09 江苏国科微电子有限公司 一种NVMe固态硬盘异常处理方法、装置及集成芯片
CN113114595A (zh) * 2021-04-08 2021-07-13 山东华芯半导体有限公司 一种双端口PCIe SSD链路容错装置及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127632A (zh) * 2006-08-15 2008-02-20 腾讯科技(深圳)有限公司 一种服务器流量控制方法、系统以及重定向器
CN202948447U (zh) * 2012-10-15 2013-05-22 中国电子科技集团公司第三十二研究所 基于PCI总线的串行Rapid IO协议控制器
US10860511B1 (en) * 2015-12-28 2020-12-08 Western Digital Technologies, Inc. Integrated network-attachable controller that interconnects a solid-state drive with a remote server computer
WO2018037510A1 (ja) * 2016-08-24 2018-03-01 株式会社日立製作所 計算機システム、通信デバイス、及び、記憶制御方法
CN112558884A (zh) * 2020-12-23 2021-03-26 湖南国科微电子股份有限公司 数据保护方法以及基于NVMe的存储设备
CN112634978A (zh) * 2020-12-23 2021-04-09 江苏国科微电子有限公司 一种NVMe固态硬盘异常处理方法、装置及集成芯片
CN113114595A (zh) * 2021-04-08 2021-07-13 山东华芯半导体有限公司 一种双端口PCIe SSD链路容错装置及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
High performance FPGA-based DMA interface for PCIe;Hossein Kavianipour 等;《2012 18th IEEE-NPSS Real Time Conference》;全文 *
一种基于PCIE总线的改进分散集聚DMA的设计;陈沛伟;邢同鹤;董勇伟;梁兴东;;雷达科学与技术(第05期);全文 *
基于PCIe总线的万兆以太网数据采集卡的设计与实现;薛强;汤昊;孟庆磊;高峰;胡迪;;现代电信科技(02);全文 *

Also Published As

Publication number Publication date
CN113660179A (zh) 2021-11-16

Similar Documents

Publication Publication Date Title
US9503347B2 (en) Techniques associated with server transaction latency information
CN109451051B (zh) 服务请求处理方法、装置、电子设备及存储介质
US9325583B2 (en) Method and system for optimizing network input/output performance
US20080172499A1 (en) Virtual machine system
CN111447577B (zh) 配额管理方法及设备
US20130110960A1 (en) Method and system for accessing storage device
CN110740164A (zh) 服务器确定方法、调控方法、装置、设备及存储介质
CN111641563B (zh) 基于分布式场景的流量自适应方法与系统
CN113660179B (zh) 一种PCIe SSD多虚拟功能设备的带宽协同控制装置及方法
CN109769029B (zh) 基于用电信息采集系统的通信连接方法及终端设备
CN113259428A (zh) 数据访问请求的处理方法、装置、计算机设备及介质
WO2014004192A1 (en) Performing emulated message signaled interrupt handling
US20060064529A1 (en) Method and system for controlling peripheral adapter interrupt frequency by transferring processor load information to the peripheral adapter
CN115858221A (zh) 存储设备的管理方法、装置、存储介质及电子设备
CN113885794B (zh) 基于多云存储的数据访问方法、装置、计算机设备及介质
CN107896196B (zh) 一种分配报文的方法和装置
CN108512673B (zh) 一种云服务质量监控方法、装置及服务器
CN108804152B (zh) 配置参数的调节方法及装置
CN115334001A (zh) 基于优先关系的数据资源调度方法及装置
US20220263869A1 (en) Data validation for zero copy protocols
CN115454896A (zh) 基于smbus的ssd mctp控制消息验证方法、装置、计算机设备及存储介质
CN103532728B (zh) 一种对故障dsp芯片复位的方法及装置
CN115314439A (zh) 数据存储io请求的流控方法和相关装置
CN113760398A (zh) 接口调用方法、服务器、系统以及存储介质
CN110765045A (zh) 一种基于fpga的中断延时计数系统及方法

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
GR01 Patent grant
GR01 Patent grant