预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN110618794A(43)申请公布日2019.12.27(21)申请号201910890047.2(22)申请日2019.09.20(71)申请人苏州浪潮智能科技有限公司地址215100江苏省苏州市吴中区吴中经济开发区郭巷街道官浦路1号9幢(72)发明人赵昌磊(74)专利代理机构济南诚智商标专利事务所有限公司37105代理人王申雨(51)Int.Cl.G06F3/06(2006.01)G06F9/50(2006.01)G06F9/54(2006.01)权利要求书2页说明书7页附图2页(54)发明名称一种SSD固件访问NandFlash的方法和系统(57)摘要本申请公开了一种SSD固件访问NandFlash的方法和系统,初始化多个可并行执行的commandstate结构体,任一commandstate结构体与一个异步状态机相匹配;申请任一commandstate结构体;利用上下文机制存储任一模块在当前流程中的状态;执行完毕当前流程中的状态后,跳出异步状态机;通过轮询NandFlash返回的IPC反馈信息,按照先后顺序处理异步状态机。该系统包括初始化模块、申请模块、存储模块、跳转模块和处理模块。通过本申请,能够在确保同一个CPU上的不同模块可以各自操作NandFlash资源而不会产生死锁的情况下,充分利用CPU资源,从而大大提高CPU的利用率和SSD固件访问NandFlash的效率。CN110618794ACN110618794A权利要求书1/2页1.一种SSD固件访问NandFlash的方法,其特征在于,所述SSD固件中包括多个不同功能的模块,所述方法包括:初始化多个可并行执行的commandstate结构体,任一所述commandstate结构体与一个异步状态机相匹配,所述异步状态机用于表征所述模块在流程中的状态,所述流程为所述模块访问NandFlash的流程,且所述流程的起始时刻为开始申请commandstate结构体指针,所述流程的终止时刻为释放commandstate结构体指针;申请任一所述commandstate结构体;利用上下文机制存储任一所述模块在当前流程中的状态;执行完毕当前流程中的状态后,跳出所述异步状态机;通过轮询NandFlash返回的IPC反馈信息,按照先后顺序处理异步状态机。2.根据权利要求1所述的一种SSD固件访问NandFlash的方法,其特征在于,申请任一所述commandstate结构体之后,所述方法还包括:判断是否成功申请任一所述commandstate结构体;如果是,任一所述模块开始执行访问NandFlash的流程;如果否,任一所述模块挂在pengdinglis上处于等待状态。3.根据权利要求2所述的一种SSD固件访问NandFlash的方法,其特征在于,任一所述模块开始执行访问NandFlash的流程,包括:任一所述模块向NandFlash发送IPC请求信息;将任一所述模块在流程中的状态更新为与所述IPC请求所匹配的状态。4.根据权利要求1所述的一种SSD固件访问NandFlash的方法,其特征在于,申请任一所述commandstate结构体的方法,包括:申请任一所述commandstate结构体的结构体指针;定义一个与当前流程相匹配的tag。5.根据权利要求4所述的一种SSD固件访问NandFlash的方法,其特征在于,所述利用上下文机制存储任一所述模块在当前流程中的状态,包括:任一所述模块执行完毕当前流程中的状态后,将当前流程的上下文存储至所述commandstate结构体中;将所述commandstate结构体的结构体指针和所述tag添加至所述模块发送给NandFlash的IPC请求信息中。6.根据权利要求1所述的一种SSD固件访问NandFlash的方法,其特征在于,所述CPU通过轮询NandFlash返回的IPC反馈信息,按照先后顺序处理异步状态机,包括:轮询NandFlash返回的IPC反馈信息;根据所述IPC反馈信息,按照先后顺序跳转至相应模块的异步状态机中继续执行相应流程。7.根据权利要求1-6中任一所述的一种SSD固件访问NandFlash的方法,其特征在于,可并行执行的commandstate结构体的最大数量由CPU中芯片的Dram大小确定。8.一种SSD固件访问NandFlash的系统,其特征在于,所述SSD固件中包括多个不同功能的模块,所述系统包括:初始化模块,用于初始化多个可并行执行的commandstate结构体,任一所述command2CN110618794A权利要求书2/2页state结构体与一个异步状态机相匹配,所述异步状态机用于表征所述模块在流程中的状态,所述流程为所述模块访