闪存的数据存取方法以及闪存装置制造方法及图纸

技术编号:6094641 阅读:178 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及闪存的数据存取方法以及闪存装置。首先自一主机接收一写入命令、一写入地址、以及写入数据。接着决定该写入地址对应的一目标区块。接着检查于该目标区块中对应于该写入地址的一储存空间是否已储存数据。若该目标区块的该储存空间尚未储存数据,将该写入数据写入该目标区块的该储存空间。反之,检查该目标区块是否具有相对应的一档案配置表区块存在于该闪存。若该目标区块具有该档案配置表区块,将该写入数据写入该档案配置表区块。反之,检查该目标区块是否具有相对应的一子区块存在于该闪存。若该子区块存在,检查该写入地址是否接续于该子区块中储存数据的一最末地址。若该写入地址接续于该最末地址,将该写入数据写入该子区块。

【技术实现步骤摘要】

本专利技术涉及存储器
,更具体地说,涉及一种闪存的数据存取方法以及闪存装置
技术介绍
闪存(flash memory)包括多个区块(block),每一区块包括多个页(page)以供数据储存。当闪存自控制器接收写入命令时,便依控制器的指示以及写入地址将数据储存至该等区块的某些页。当闪存自控制器收到读取命令时,便依控制器的指示及读取地址自该等区块的某些页读出数据而回传数据至控制器。然而,闪存的一区块的一空白页仅能被写入一次数据。当该空白页被写入数据后, 空白页便成为一数据储存页。除非控制器下命令抹除包含该数据储存页的整个区块的数据,而使该数据储存页还原成空白页,否则该数据储存页不能再被写入数据。然而,由于一区块包括数以千记的页,因此自一区块抹除数据需花费甚多时间,也因此控制器无法以高频率抹除区块的数据。当主机对控制器下写入命令以储存新数据至一写入地址,而控制器发现该写入地址所对应的特定区块的一特定页已储存旧数据,则控制器便无法再将自主机接收的新数据写入该特定页。然而,主机仍然需执行上述写入命令。一般而言,控制器此时便会自闪存的多个区块选取一空白区块,以替代性的储存自主机所接收的新数据。储存新数据的区块与该特定区块同样对应至该写入地址,因此该特定区块与储存新数据的区块间有一对应关系。该特定区块被称为母区块(mother block),用以储存一地址范围的原始数据;而储存新数据的区块被称为子区块(child block),用以储存该地址范围的更新数据。图1为习知技术的闪存中的母区块102与对应的子区块104的示意图。母区块102 的多个页所对应的地址范围自0 1000,分别储存了原始数据A0、B0、C0、以及D0。当主机要求控制器将更新数据Bl写入地址400 600时,由于母区块102对应于地址400 600 的储存空间已储存了原始数据B0,控制器无法再将更新数据Bl写入母区块102。此时,控制器便会选取闪存的一空白区块作为母区块102的子区块104,将地址0 400的原始数据 AO由母区块102中复制到子区块104,并将自主机接收的更新数据Bl写入子区块104的地址范围400 600。同样的,若主机再度要求控制器将更新数据Cl写入地址601 700时, 由于控制器无法再将更新数据Cl写入母区块102,控制器便直接将自主机接收的更新数据 Cl写入子区块104的地址范围601 700。然而,若主机再度要求控制器将更新数据写入地址0 700时,由于子区块104的地址范围0 700已储存了更新数据而无法再写入新数据,控制器便无法借着将更新数据写入子区块104而完成主机的写入命令。因此,需要一种闪存的数据存取方法,以解决习知技术存在的问题。
技术实现思路
本专利技术解决的技术问题在于,针对现有技术的上述缺陷,提供一种闪存的数据存取方法以及闪存装置,以解决习知技术存在的问题。本专利技术解决其技术问题所采用的技术方案之一是构造一种闪存的数据存取方法。首先,自一主机接收一写入命令、一写入地址、以及写入数据。接着,决定该写入地址对应的一目标区块。接着,检查于该目标区块中对应于该写入地址的一储存空间是否已储存数据。若该目标区块的该储存空间尚未储存数据,将该写入数据写入该目标区块的该储存空间。若该目标区块的该储存空间已储存数据,检查该目标区块是否具有相对应的一档案配置表(file allocation table, FAT)区块存在于该闪存。若该档案配置表区块存在,将该写入数据写入该档案配置表区块。若该档案配置表区块不存在,检查该目标区块是否具有相对应的一子区块存在于该闪存。若该子区块存在,检查该写入地址是否接续于该子区块中储存数据的一最末地址。若该写入地址接续于该最末地址,将该写入数据写入该子区块。上述本专利技术所述的闪存的数据存取方法,其中该方法更包括若该子区块不存在时,自该闪存选取一空白区块作为该子区块;以及将该写入数据写入该子区块。上述本专利技术所述的闪存的数据存取方法,其中该方法更包括若该写入地址未接续于该最末地址时,自该闪存选取一空白区块作为该档案配置表区块;以及将该写入数据写入该档案配置表区块。上述本专利技术所述的闪存的数据存取方法,其中将该写入数据写入该档案配置表区块的步骤包括决定该档案配置表区块的一第一储存空间;将该写入数据写入该第一储存空间;决定该档案配置表区块的一第二储存空间;以及将一更新地址对应表写入该第二储存空间;其中该更新地址对应表记录该目标区块中本该储存该写入数据的一原始地址与该档案配置表区块中储存该写入数据的一更新地址的对应关系。上述本专利技术所述的闪存的数据存取方法,其中将该写入数据写入该子区块的步骤包括决定该子区块中接续于该最末地址的一第三储存空间;以及将该写入数据写入该第三储存空间。上述本专利技术所述的闪存的数据存取方法,其中该方法更包括自该主机接收一读取命令及一读取地址;决定该读取地址所对应的一读取目标区块;检查该读取目标区块是否具有对应的一读取档案配置表区块存在于该闪存中;若该读取档案配置表区块存在时,检查该读取档案配置表区块是否储存有该读取地址的一第一更新数据;以及若该读取档案配置表区块储存有该第一更新数据,自该读取档案配置表区块读取该第一更新数据。上述本专利技术所述的闪存的数据存取方法,其中该方法更包括若该读取档案配置表区块不存在时,或若该读取档案配置表区块未储存有该第一更新数据,检查该读取目标区块是否具有对应的一读取子区块存在于该闪存中;以及若该读取子区块不存在时,自该读取目标区块读取以该读取地址储存的一第二更新数据。上述本专利技术所述的闪存的数据存取方法,其中该方法更包括若该读取子区块存在时,检查该读取子区块是否储存有该读取地址的一第三更新数据;若该读取子区块储存有该第三更新数据,自该读取子区块读取该第三更新数据; 以及若该读取子区块未储存有该第三更新数据,自该读取目标区块读取以该读取地址储存的该第二更新数据。本专利技术解决其技术问题所采用的技术方案之二是构造一种闪存装置。该快闪记忆装置包括一闪存以及一控制器。该闪存包括多个区块(block)以存储数据。该控制器自一主机接收一写入命令、一写入地址、以及写入数据,决定该写入地址对应的一目标区块,检查于该目标区块中对应于该写入地址的一储存空间是否已储存数据,当该目标区块的该储存空间尚未储存数据时将该写入数据写入该目标区块的该储存空间,当该目标区块的该储存空间已储存数据时检查该目标区块是否具有相对应的一档案配置表(file allocationtable,FAT)区块存在于该闪存,当该档案配置表区块存在时将该写入数据写入该档案配置表区块,当该档案配置表区块不存在时检查该目标区块是否具有相对应的一子区块存在于该闪存,当该子区块存在时检查该写入地址是否接续于该子区块中储存数据的一最末地址,以及当该写入地址接续于该最末地址时将该写入数据写入该子区块。上述本专利技术所述的闪存装置,其中当该子区块不存在时,该控制器自该闪存选取一空白区块作为该子区块,并将该写入数据写入该子区块。上述本专利技术所述的闪存装置,其中当该写入地址未接续于该最末地址时,该控制器自该闪存选取一空白区块作为该档案配置表区块,并将该写入数据写入该档案配置表区块。上述本专利技术所述的闪存装置,其中当该控制器欲将该写本文档来自技高网
...

【技术保护点】
1.一种闪存的数据存取方法,其特征在于,包括:自一主机接收一写入命令、一写入地址、以及写入数据;决定该写入地址对应的一目标区块,其中该目标区块为该闪存的多个区块其中之一;检查于该目标区块中对应于该写入地址的一储存空间是否已储存数据;若该目标区块的该储存空间尚未储存数据,将该写入数据写入该目标区块的该储存空间;若该目标区块的该储存空间已储存数据,检查该目标区块是否具有相对应的一档案配置表区块存在于该闪存;若该档案配置表区块存在,将该写入数据写入该档案配置表区块;若该档案配置表区块不存在,检查该目标区块是否具有相对应的一子区块存在于该闪存;若该子区块存在,检查该写入地址是否接续于该子区块中储存数据的一最末地址;以及若该写入地址接续于该最末地址,将该写入数据写入该子区块。

【技术特征摘要】

【专利技术属性】
技术研发人员:萧惟益
申请(专利权)人:慧荣科技股份有限公司
类型:发明
国别省市:71[]

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

1