对闪存下达程序化指令的方法、控制器与储存系统技术方案

技术编号:5165450 阅读:355 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提供了一种对闪存下达程序化指令的方法、控制器与储存系统,该方法用于将来自于主机系统的数据写入至闪存芯片中。本方法包括使用原生指令排序(Native Command Queuing,NCQ)协议从主机系统接收多个主机写入指令与对应这些主机写入指令的写入数据,并且向闪存芯片下达快取程序化指令以将写入数据写入至闪存芯片中。基此,通过仅使用快取程序化指令与原生指令排序协议来执行数据的写入可有效地缩短执行主机写入指令的时间。

【技术实现步骤摘要】

本专利技术涉及一种对闪存下达程序化指令的方法以及使用此方法的闪存控制器与 闪存储存系统。
技术介绍
由于闪存(FlashMemory)具有数据非挥发性、省电、体积小与无机械结构等的 特性,最适合使用于可携式电子产品上。例如,固态硬盘就是一种以NAND闪存作为储 存媒体的储存装置,并且已广泛配置于笔记型计算机中作为主要的储存装置。图1是图示一般闪存储存装置的概要方块图。一般来说,当主机系统110透过 连接器122与闪存储存装置电性连接并且欲储存数据至闪存储存装置120时,写入数据 至闪存储存装置120的闪存模块126的程序可区分为数据传输(transfer)以及数据程序化 (program)两个部分。具体来说,当主机系统110欲在闪存储存装置120中储存数据时, 闪存控制器124会通过数据输入/输出总线128将数据传输至闪存模块126内的缓冲区 132,之后闪存模块126会将缓冲区132内的数据程序化至闪存模块126的存储器(即, 储存区)134,其中在闪存模块126将数据程序化至存储器134的期间,闪存模块126是处 于一实际忙碌(busy)状态,且当闪存模块126处于实际忙碌状态下闪存控制器124无法 对其下达任何指令或传输任何数据。也就是说,闪存控制器124必须于闪存模块126完 成程序化后才能响应主机系统110并处理主机系统110的下一个指令。具体来说,当闪存控制器124从主机系统110接收到主机写入指令与写入数据 而需将写入数据写入至闪存模块126时,闪存控制器124会通过数据输入/输出总线128 下达程序化指令,而此程序化指令中的相关信息就会暂存于缓冲区132中。例如,此程 序化指令是由“指令W1”、“实体地址”、“写入数据”与“指令W2”等字符串所 组成,其中闪存控制器124通过“指令W1”指示闪存模块126准备执行程序化程序, 通过“实体地址”指示闪存模块126欲程序化的地址,通过“写入数据”指示闪存模 块126欲程序化的数据以及通过“指令W2”指示闪存模块126开始执行程序化。因 此,当闪存模块126根据程序化指令中的“指令W2”开始将缓冲区132内的数据写 入至存储器134时,闪存控制器124需接收到来自于闪存模块126的完成程序化的确认 (acknowledgement)信息后才会回复主机系统110,一般来说,当主机系统下达指令到主 机系统接收到确认信息的时间称为响应时间(response time)。随着传输技术的发展,使得连接器的传输速度已大幅提升,例如,序列先进附 件(Serial Advanced Technology Attachment,SATA)连接器已可达到每秒 15 亿位(Gigabit, Gb),甚至每秒30Gb。然而,上述程序化闪存的速度却远低连接器的速度下,整体储存 的效能仍无法有效改善,因此如何缩短执行主机写入指令的时间是此领域技术人员所致 力的目标。专利技术 内容本专利技术提供一种下达程序化指令的方法,其能够有效地缩短执行主机写入指令 的时间。本专利技术提供一种闪存控制器,其能够有效地缩短执行主机写入指令的时间。本专利技术提供一种闪存储存系统,能够有效地缩短执行主机写入指令的时间。本专利技术范例实施例提出一种下达程序化指令的方法,用于将来自于一主机系统 的数据写入至一闪存芯片中。本下达程序化指令的方法包括提供一闪存控制器,以及由 闪存控制器使用一原生指令排序(Native Command Queuing, NCQ)协议从主机系统中接 收多个主机写入指令。本下达程序化指令的方法也包括由闪存控制器依据主机写入指令 传送一下达指令顺序给主机系统。本下达程序化指令的方法还包括依据下达指令顺序从 主机系统中依序地接收主机写入指令与对应主机写入指令的多个写入数据,并且分别地 向闪存芯片下达一快取程序化指令以将写入数据写入至闪存芯片中。本专利技术范例实施例提出一种闪存控制器,用于将来自于一主机系统的数据写入 至一闪存芯片中。本闪存控制器包括一微处理器单元、一缓冲存储器、一闪存接口单 元、一主机接口单元与一内存管理单元。闪存接口单元电性连接至微处理器单元,并且 用以连接闪存芯片。缓冲存储器电性连接至微处理器单元。主机接口单元电性连接至微 处理器单元,并且用以连接上述主机系统,其中主机接口单元支持NCQ协议。内存管理 单元电性连接至微处理单元,并且用以通过主机接口单元使用NCQ协议从主机系统中接 收多个主机写入指令。此外,内存管理单元通过主机接口单元依据主机写入指令传送一 下达指令顺序给主机系统。再者,内存管理单元透过主机接口单元依据下达指令顺序从 主机系统中依序地接收主机写入指令与对应主机写入指令的多个写入数据,并且分别地 向闪存芯片下达快取程序化指令以将写入数据写入至闪存芯片中。本专利技术范例实施例提出一种闪存储存系统,用于储存来自于一主机系统的数据。 本闪存储存系统包括用以电性连接上述主机系统的一连接器、一闪存芯片以及一闪存控制 器,其中连接器支持NCQ协议。闪存控制器电性连接至连接器与闪存芯片,并且用以通 过连接器使用NCQ协议从主机系统中接收多个主机写入指令。此外,闪存控制器依据主 机写入指令传送一下达指令顺序给主机系统。再者,闪存控制器透过连接器依据上述下达 指令顺序从主机系统中依序地接收主机写入指令与对应主机写入指令的多个写入数据,并 且分别地向闪存芯片下达一快取程序化指令以将写入数据写入至闪存芯片中。基于上述,本专利技术范例实施例的下达程序化指令的方法、闪存控制器与闪存储 存系统能够有效地缩短执行主机写入指令的时间,由此提升数据存取的效能。下面通过具体实施例并结合附图对本专利技术做进一步的详细描述。附图说明图1是图示一般闪存储存系统的概要方块图;图2A是根据本专利技术实施例图示使用闪存储存装置的主机系统;图2B是根据本专利技术范例实施例所图示的计算机、输入/输出装置与闪存储存装 置的示意图;图2C是根据本专利技术另一范例实施例所图示的主机系统与闪存储存装置的示意图;图2D是根据本专利技术范例实施例所图示的闪存储存装置的概要方块图;图3是根据本专利技术范例实施例所图示的闪存晶粒的概要方块图;图4A是根据本专利技术范例实施例所图示的闪存控制器透过数据输入/输出总线下 达快取程序化指令的范例示意图;图4B是根据图4A所示的指令所图示闪存芯片的运作时序图;图5是根据本专利技术范例实施例所图示的下达程序化指令的流程图。附图标记说明 110:主机系统;120 闪存储存装置;122 连接器;124 闪存控制器;126 闪存模块;128 数据输入/输出总线;132 缓冲区;134 存储器;200 闪存储存装置; 202 连接器;204 闪存控制器;206 微处理器单元;208:内存管理单元; 210:主机接口单元;212 闪存接口单元; 214:缓冲存储器;220 闪存芯片;290 主机系统;295 总线;300 第0闪存模块;302 第0数据输入/输出总线; 310 :第1闪存模块;312 第1数据输入/输出总线; 320 :第2闪存模块;322 第2数据输入/输出总线; 330 :第3闪存模块;332 第3数据输入/输出总线; 340 :第4闪存模块;342 第4数据输入/输出总线; 350 :第5闪存模块;352本文档来自技高网...

【技术保护点】
一种对闪存下达程序化指令的方法,用于将来自于一主机系统的数据写入至一闪存芯片中,所述下达程序化指令的方法包括:提供一闪存控制器;由所述闪存控制器使用一原生指令排序协议从所述主机系统中接收多个主机写入指令;由所述闪存控制器依据所述主机写入指令传送一下达指令顺序给所述主机系统;以及依据所述下达指令顺序从所述主机系统中依序地接收所述主机写入指令与对应所述主机写入指令的多个写入数据,并且分别地向所述闪存芯片下达一快取程序化指令以将所述写入数据写入至所述闪存芯片中。

【技术特征摘要】
1.一种对闪存下达程序化指令的方法,用于将来自于一主机系统的数据写入至一闪 存芯片中,所述下达程序化指令的方法包括提供一闪存控制器;由所述闪存控制器使用一原生指令排序协议从所述主机系统中接收多个主机写入指令;由所述闪存控制器依据所述主机写入指令传送一下达指令顺序给所述主机系统;以及依据所述下达指令顺序从所述主机系统中依序地接收所述主机写入指令与对应所述 主机写入指令的多个写入数据,并且分别地向所述闪存芯片下达一快取程序化指令以将 所述写入数据写入至所述闪存芯片中。2.根据权利要求1所述的对闪存下达程序化指令的方法,其中由所述闪存控制器依据 所述主机写入指令传送所述下达指令顺序给所述主机系统的步骤包括由所述闪存控制器依据所述主机系统下达所述主机写入指令的顺序来决定所述下达 指令顺序;以及将所述下达指令顺序传送所述主机系统。3.根据权利要求1所述的对闪存下达程序化指令的方法,其中由所述闪存控制器依据 所述主机写入指令传送所述下达指令顺序给所述主机系统的步骤包括由所述闪存控制器依据对应所述主机写入指令的多个逻辑地址来决定所述下达指令 顺序;以及将所述下达指令顺序传送所述主机系统。4.根据权利要求1所述的对闪存下达程序化指令的方法,还包括在所述闪存控制器完成所有所述主机写入指令后传送对应所述主机写入指令的执行 状态给所述主机系统。5.根据权利要求4所述的对闪存下达程序化指令的方法,其中当对应所述主机写入指 令的执行状态之中包括至少一程序化错误时,则由所述闪存控制器从所述主机系统重新 接收所述主机写入指令之中对应所述至少一程序化错误的主机写入指令与写入数据。6.根据权利要求4所述的对闪存下达程序化指令的方法,其中当对应所述主机写入指 令的执行状态之中包括至少一程序化错误时,则由所述闪存控制器从所述主机系统重新 接收所有所述主机写入指令与所述写入数据。7.根据权利要求1所述的对闪存下达程序化指令的方法,其中所述闪存芯片包括一第 一缓冲区、一第二缓冲区与一储存区,其中依据所述下达指令顺序从所述主机系统中依序地接收所述主机写入指令与对应 所述主机写入指令的所述写入数据,并且分别地向所述闪存芯片下达所述快取程序化指 令以将所述写入数据写入至所述闪存芯片中的步骤包括从所述主机系统中接收所述主机写入指令之中的一第一主机写入指令以及所述写入 数据之中对应所述第一主机写入指令的一第一写入数据;由所述闪存控制器向所述闪存芯片下达所述快取程序化指令将所述第一写入数据传 输至所述第一缓冲区,其中所述第一写入数据从所述第一缓冲区被搬移至所述第二缓冲 区并且从所述第二缓冲区被写入至所述储存区;从所述主机系统中接收所述主机写入指令之中的一第二主机写入指令以及所述写入 数据之中对应所述第二主机写入指令的一第二写入数据;以及由所述闪存控制器向所述闪存芯片下达所述快取程序化指令以将所述第二写入数据 传输至所述第一缓冲区,其中所述第二写入数据从所述第一缓冲区被搬移至所述第二缓 冲区并且从所述第二缓冲区被写入至所述储存区,其中当所述第一写入数据从所述第一缓冲区被搬移至所述第二缓冲区之后,所述第 二写入数据被传输至所述第一缓冲区中。8.—种闪存控制器,用于将来自于一主机系统的数据写入至一闪存芯片中,所述闪 存控制器包括一微处理器单元;一缓冲存储器,电性连接至所述微处理器单元;一闪存接口单元,电性连接至所述微处理器单元,用以连接所述闪存芯片; 一主机接口单元,电性连接至所述微处理器单元,用以连接所述主机系统,其中所 述主机接口单元支持一原生指令排序协定;以及一内存管理单元,电性连接至所述微处理器单元,用以通过所述主机接口单元使用 所述原生指令排序协议从所述主机系统中接收多个主机写入指令,其中所述内存管理单元通过所述主机接口单元依据所述主机写入指令传送一下达指 令顺序给所述主机系统,其中所述内存管理单元透过所述主机接口单元依据所述下达指令顺序从所述主机系 统中依序地接收所述主机写入指令与对应所述主机写入指令的多个写入数据,并且分别 地向所述闪存芯片下达一快取程序化指令以将所述写入数据写入至所述闪存芯片中。9.根据权利要求8所述的闪存控制器,其中所述内存管理单元依据所述主机系统下达 所述主机写入指令的顺序来决定所述下达指令顺序。10.根据权利要求8所述的闪存控制器,其中所述内存管理单元依据对应所述主机写 入指令的多个逻辑地址来决定所述下达指令顺序。11.根据权利要求8所述的闪存控制器,其中所述内存管理单...

【专利技术属性】
技术研发人员:叶志刚
申请(专利权)人:群联电子股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1