一种闪存接口控制方法及装置制造方法及图纸

技术编号:12996480 阅读:50 留言:0更新日期:2016-03-10 11:15
本发明专利技术公开了一种闪存接口控制方法,所述方法包括:控制器接收用户请求并译码,判断用户请求的操作类型;继而,从微代码存储器中进行取指操作,将操作类型对应的微代码序列从微代码存储器中逐一取出并与寄存器组中的操作数相链接,得到完整的闪存命令;最后,控制器将向对应的接口控制器发送所述完整的时序与闪存命令请求,从而与外部闪存器件实现交互。相应地,本发明专利技术还提出了一种与上述方法对应的装置。本发明专利技术通过以上软硬件协同工作的方式,仅用简单的硬件,实现了复杂多样的闪存命令,不仅满足了固态存储设备对闪存操作上的灵活需求,同时大大降低了实现开销,显著提高了相关设备的竞争力。

【技术实现步骤摘要】

本专利技术属于数据存储领域,更具体地,涉及一种闪存接口控制方法及装置
技术介绍
随着固态存储设备的快速发展,闪存器件也在不断地推陈出新。20nm及以下先进工艺的闪存器件开始得到广泛的应用。新工艺的闪存不但在容量上得到大幅改善,而且能够支持更快的接口时序以及更多的控制命令。这种状况在有效提高了固态存储设备的性能与容量的同时,却使得闪存器件的控制过程变得愈发复杂。例如,为了能够读取性能,闪存器件具有随机读取、缓存读取(Cache Read)以及多平面读取(Mult1-Plane Read)等多种读取命令。这些读取命令不仅本身复杂,而且还需要与其他命令配合来完成一些复杂的操作。传统的闪存控制器由于采用全硬件实现的方式,需要在设计的复杂度与灵活性之间进行折衷。若通过硬件方式实现所有的命令,则设计复杂且开销较大;若仅仅实现有限的数条命令,则无法完全发挥闪存器件的性能。而以固态硬盘为代表的高性能固态存储设备在工程实践往往既要求能够支持多种复杂命令,又要求实现的开销能够最小化。因而,在这种矛盾中,需要为闪存器件设计一种能够权衡控制灵活性与设计复杂度的新方案,以提高固态存储设备的性能,并降低其成本。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供了一种闪存接口控制方法,不同于过去采用硬件直接实现的方法,本专利技术通过将软件指令控制与底层硬件时序控制相结合的方式来实现对外部闪存器件的控制。相应的可有效解决现有技术中硬件方式实现接口控制时设计复杂且开销较大的问题,同时本专利技术中软硬件协同工作机制不仅应用灵活,而且实现简单、易于扩展,因而尤其适用于固态存储的嵌入式应用场合。为实现上述目的,按照本专利技术的一个方面,提出了一种闪存接口控制装置,其特征在于,所述接口控制装置包括控制器、微代码存储器及接口控制器三部分,所述控制器,用于完成对用户数据请求的处理,根据操作类型的不同,从所述微代码存储器中读取对应的微代码序列进行执行;所述微代码存储器,用于保存有与操作类型相对应的微代码序列;所述接口控制器,与外部的闪存器件相连,用于以硬件方式实现接口时序。作为进一步优选的,所述控制器可同时管理多组接口控制器。作为进一步优选的,所述控制器中包括寄存器组,用来与微代码存储器配合操作。作为进一步优选的,所述寄存器组包括命令寄存器、地址寄存器,其中所述命令寄存器,用于存放用户的操作命令;所述地址寄存器,用于存放用户需要访问的闪存地址内容或者用户的内存操作地址。作为进一步优选的,所述操作类型具体包括数据读取、数据写入、数据擦除。为实现上述目的,按照本专利技术的另一个方面,提出了一种闪存接口控制方法,其特征在于,所述方法包括:(1)控制器接收用户请求并译码,判断用户请求的操作类型;(2)控制器从微代码存储器中取指,得到操作类型对应的微代码序列的存储位置,并将所述微代码序列逐一取出;(3)完成取指操作后,控制器将根据微代码序列中每条微代码的操作数的索引,依次链接寄存器组中的操作数,生成与用户操作对应的时序与闪存命令;(4)控制器将所述时序与闪存命令送往对应的接口控制器执行,从而完成与外部闪存数据的交互。作为进一步优选的,所述操作类型具体包括数据读取、数据写入、数据擦除。作为进一步优选的,所述微代码包括时序类型及操作索引,其中,所述时序类型,用于指明数据或命令传输时所应使用的时序控制类型;所述操作索引,用于指明当前操作数的寄存器索引。作为进一步优选的,所述微代码分为命令类型微代码、地址类型微代码及数据类型微代码,其中所述命令类型微代码,用于处理闪存命令中的命令字;所述地址类型微代码,用于处理闪存命令中的操作地址;所述数据类型微代码,用于处理闪存命令中的数据传输。总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,主要具备以下的技术优点:1.本专利技术提出的一种闪存接口控制方法及装置,通过配置微代码方式,实现了对多种外部的闪存器件接口时序的灵活控制,与采用全硬件实现的方式相比,大大降低了设计的复杂度及成本开销;2.本专利技术方法中,通过各种闪存命令与相应的时序绑定,在实现单一闪存命令的基础上,由操作控制组合更多的闪存命令,从而实现用户所期望的闪存功能;3.通过将本专利技术的方法及相应装置应用于固态存储设备中,从而实现对多种闪存器件的灵活支持,显著降低了研发周期与风险。【附图说明】图1是本专利技术的闪存接口控制装置结构图;图2是本专利技术的闪存接口控制方法流程图。图3是本专利技术的闪存接口控制操作的层次框图;图4是时序类型框图;图5是微代码取指及链接示意图;图6是读取操作类型格式图。【具体实施方式】为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。此外,下面所描述的本专利技术各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。本专利技术提出了一种闪存接口控制装置,如图1所示,本专利技术的硬件实施方案由控制器、微代码存储器以及接口控制器三部分组成。其中,控制器完成对用户数据请求的处理,并包括有相应的寄存器组,用来与微代码存储器配合操作。微代码存储器则保存有诸如读取、写入、擦除等操作类型相对应的微代码序列,控制器将根据操作类型的不同,从微代码存储器中读取相对应的微代码序列进行执行。而接口控制器则以硬件方式实现接口时序,并于外部的闪存器件相连。根据应用需要的不同,控制器可以同时管理多组接口控制器,从而实现对外部的多个闪存器件的控制。在具体实现过程中,本专利技术在控制器中使用了包含多个命令寄存器与地址寄存器的寄存器组。其中,命令寄存器用于存放用户填写的闪存操作命令;地址寄存器用于存放用户需要访问的闪存地址内容或者内存操作地址。读取操作时,由两个地址寄存器用于分别存放从闪存器件读出数据的目标内存地址以及闪存地址;而写入操作时,同样由两个地址寄存器用于分别存放向闪存器件写入数据的源内存地址以及闪存地址。这样,寄存器接口可以有效地配合微代码存储器可以实现相关的闪存操作命令。控制器是闪存控制接口模块的核心。在实现中,控制器可以采用类似于经典处理器的流水线结构。也就是说,如图2所示,为本专利技术的一种闪存接口控制方法流程图,所述方法具体为:当用户请求输入到控制器后,控制器将首先进行译码,判断用户请求的操作类型,从而在下一步中能够从微代码存储器中进行取指,得到操作类型对应的微代码序列的存储位置,并将所述微代码序列逐一取出;接下来,控制器将根据微代码中的操作索引,与寄存器中的操作数相链接,从而获得完整的闪存命令。最终,时序与闪存命令被发送到相应的接口控制器中予以处理,从而在总线上产生相关的时序与闪存命令,完成与外部闪存器件的数据交互。根据闪存操作的实现过程,本专利技术将整个操作控制过程划分为如图3所示的三个层次:时序控制、命令控制以及操作控制当前第1页1 2 本文档来自技高网...

【技术保护点】
一种闪存接口控制装置,其特征在于,所述接口控制装置包括控制器、微代码存储器及接口控制器三部分,所述控制器,用于完成对用户数据请求的处理,根据操作类型的不同,从所述微代码存储器中读取对应的微代码序列进行执行;所述微代码存储器,用于保存有与操作类型相对应的微代码序列;所述接口控制器,与外部的闪存器件相连,用于以硬件方式实现接口时序。

【技术特征摘要】

【专利技术属性】
技术研发人员:霍文捷刘政林刘柏均
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1