The invention discloses an internal SSD main control load balancing system and method, balanced system includes a host interface: responsible for receiving commands from the host and returns the response data, and the transfer of data to the host to host at the same time; NFC: responsible for command interaction and data transmission between SSD and NAND master Flash IO command; balanced engine: responsible for distributing from the host interface IO command requests to the CPU processing, and forwarding the response to the host interface from CPU; multiple CPU for scheduling process is responsible for the IO command balanced engine distributed over the IO command and control data transmission. The invention solves the problem of chip area and power consumption in the design of the partial hardware system, and solves the problem of increasing the delay caused by the multi CPU processing in the software system.
【技术实现步骤摘要】
本专利技术涉及SSD主控,特别是一种SSD主控内部负载均衡系统及方法。
技术介绍
SSD主控为SSD固态硬盘的关键部件,其处理性能决定了SSD固态硬盘能够达到的最高性能。近几年,企业级PCIeSSD主控性能已经进入百万级IOPS,而业界主流设计厂商在不断追求SSD主控极致性能的过程中,主要产生了两种架构类型:偏硬件型,以逻辑RTL实现SSD主控的FTL表项管理,CPU主要用于各种异常处理;偏软件型,表项管理主要由软件实现,采用非常强大的CPU来支撑算法实现。偏硬件性系统设计的特点就是,整个IO路径的所有主要功能,包括FTL表项管理这块,都由硬件逻辑门电路实现,CPU主要用于极少发生的异常处理。这种设计方式由于主要关键功能都采用硬件门电路实现,一方面会增加芯片面积提升芯片成本,一方面还会增加芯片功耗。同时该类型设计的技术复杂度非常高,稳定周期长,会对产品带来更多的技术风险和商业风险。偏软件型系统设计的特点就是,硬件主要负责数据通路,CPU负责控制调度IO命令在硬件模块间的交互和数据传输。由于CPU参与了更多IO处理,在追求最高IOPS的同时,通常面临处理资源瓶颈,进而限制了系统的最大IOPS规格。综上,偏硬件型表项管理设计,无法避免的问题就是功耗过高,稳定周期偏长,技术门槛高的问题;而偏软件型主要面临的就是CPU资源不够,通常受限CPU资源瓶颈,而无法达到最大性能。为了突破CPU资源瓶颈问题,当前软件型主流方案主要通过增加片内CPU个数来解决。将IO处理的主流程分解为多个子流程,每个子流程由1个CPU单独处理,所有CPU一起完成整个IO的处理,进而达到提升 ...
【技术保护点】
一种SSD主控内部负载均衡系统,其特征在于,包括:主机接口:用于负责接收来自主机的命令和数据,同时向主机返回响应和向主机传送数据;NFC:负责完成SSD主控和NAND Flash之间的命令交互和数据传输;IO命令均衡引擎:负责分发来自主机接口的IO命令请求到CPU处理,同时转发来自CPU的响应到主机接口;多个CPU:用于负责对IO命令均衡引擎分发过来的IO命令的调度处理,并控制数据传输。
【技术特征摘要】
1.一种SSD主控内部负载均衡系统,其特征在于,包括:主机接口:用于负责接收来自主机的命令和数据,同时向主机返回响应和向主机传送数据;NFC:负责完成SSD主控和NANDFlash之间的命令交互和数据传输;IO命令均衡引擎:负责分发来自主机接口的IO命令请求到CPU处理,同时转发来自CPU的响应到主机接口;多个CPU:用于负责对IO命令均衡引擎分发过来的IO命令的调度处理,并控制数据传输。2.根据权利要求1所述的SSD主控内部负载均衡系统,其特征在于,所述IO命令均衡引擎包括:CMDSlot:用于存放CMD上下文信息,CMD上下文信息信息用于将命令请求和响应进行匹配;CMD上下文信息即IO命令上下文;处理引擎:用于管理CPU资源和CMDSlot资源,并为IO命令选择合适的CPU;IORouter:用于根据处理引擎为IO命令选择目的CPU,将IO命令通过多路复用器/多路分配器分发到对应的CPU;多路复用器/多路分配器:用于将IO命令分发到不同的CPU,并将各个CPU处理的IO响应复用给处理引擎做进一步处理。3.根据权利要求2所述的SSD主控内部负载均衡系统,其特征在于,IO命令均衡引擎分发IO命令的过程包括:1)收到IO命令后,判断是否还存在CMDSlot资源,若存在,则进入步骤2);否则,处理结束,即挂起当前IO命令;2)遍历下一个CMDSlot记录的正在处理的IO命令;3)若待处理的IO命令与CMDSlot记录的正在处理的IO命令存在访问LBA地址冲突,则选择后者对应的CPU来处理该当前待处理的IO命令,同时分配新的CMDSlot资源来存放当前IO命令上下文,进入步骤4);否则,分配新的CMDSlot资源给...
【专利技术属性】
技术研发人员:杨万云,周士兵,彭鹏,马翼,田达海,
申请(专利权)人:湖南国科微电子股份有限公司,
类型:发明
国别省市:湖南;43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。