CN100399460C - 光盘数据管理方法 - Google Patents

光盘数据管理方法 Download PDF

Info

Publication number
CN100399460C
CN100399460C CNB021432775A CN02143277A CN100399460C CN 100399460 C CN100399460 C CN 100399460C CN B021432775 A CNB021432775 A CN B021432775A CN 02143277 A CN02143277 A CN 02143277A CN 100399460 C CN100399460 C CN 100399460C
Authority
CN
China
Prior art keywords
data
block
address
record
memory block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB021432775A
Other languages
English (en)
Other versions
CN1485845A (zh
Inventor
李明鸿
蔡淑芳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Inc
Original Assignee
MediaTek Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MediaTek Inc filed Critical MediaTek Inc
Priority to CNB021432775A priority Critical patent/CN100399460C/zh
Publication of CN1485845A publication Critical patent/CN1485845A/zh
Application granted granted Critical
Publication of CN100399460C publication Critical patent/CN100399460C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

本发明提供一种记录光盘上损坏处地址的方法。光盘上设有多个用于记录数据的数据块以及一损坏记录表,用于记录光盘损坏处的地址。光驱可在写入数据时检测数据块是否损坏。光驱设有一存储器,用于暂存损坏处数据块的地址。该方法包含:将损坏记录表暂存至该存储器中的第一存储缓冲区;将在写入时新检测到的损坏数据块地址暂存于该存储器中的第二存储缓冲区并排序(sort);当光驱要停止数据写入时,将该第二存储缓冲区中的损坏数据块地址与该第一存储缓冲区中的损坏数据块地址合并排序以更新该损坏记录表,将该更新后的损坏记录表重新写入至光盘。因为在数据写入期间仅需排序新建立的使用后记录表目,有效减少存储器在光盘数据写入过程中所需进行的运行。

Description

光盘数据管理方法
技术领域
本发明提供一种管理、记录光盘上损坏处地址的方法,尤指一种仅先排序新发现损坏处的地址、最后再将该光盘上所有损坏处地址全部合并并排序的方法。
背景技术
光盘以其轻薄的体积、高容量的存储空间以及低廉的价格,已成为现代信息社会中最重要的非挥发性存储媒体之一。尤其是可写入式光盘的发展,让用户能根据个人所需将不同的数据写入至光盘中,使可写入式光盘具有更高的使用弹性。
光盘上的数据要配合光驱才能读写。请参考图1;图1为一典型光驱10的示意图。光驱10设有一个用于承载一光盘22的托盘14;一个用于带动托盘14转动的马达12;一个用于读写光盘数据的读写头16;一用于控制光驱10运行的控制电路18,以及一存储器20(譬如说是动态随机存取存储器,Dynamic Random Access Memory,DRAM),用于暂存控制电路18运行期间的相关数据。光盘22上的数据,是依序以凹凸不同的记号(pit and land)记录在光道24之上。当光驱10要将数据写入至光盘22时,会将要写入的数据先暂存至存储器20中,再将数据写入至光盘22中;读写头16则会在写入数据时检测光盘22是否有损坏处,并将检测的结果回传至控制电路18。
当要将数据写入至可写入式光盘时,会因为光盘刮损、物质特性改变或微尘干扰而使光盘出现损坏(defect)。为了要使可写入式光盘使用时更为可靠,信息领域莫不致力研发控制管理光盘损坏的方法。例如本领域所推出的CD-MRW(Compact Disk Mount Rainier reWritable)规范,就在光盘上制订有备用区(SA,Spare Area);当光盘某处有损坏发生而无法正常记录数据时,就能将数据改存至备用区。请参考图2A。图2A为一典型光盘数据存储和损坏管理的格式(format)示意图。在此格式中,光盘22上记录有数据的光道(track)24被划分为多个大区,分别是引入区(Lead-InArea)LI、程序区(ProgramArea)PA及引出区(Lead-Out Area)LO。引入区LI、引出区LO分别用于标识光道24的开端与结束;程序区PA则用于记录数据。引入区LI中还划分出一个区域作为主表格区(Main Table Area)MTA,用于存储一损坏记录表(Defect Table)DT。程序区PA中也另外细分出前间隔区(pre-gap)P0、一般应用区(GeneralApplication Area)GAA、次表格区(Secondary Table Area)STA,以及多个数据区(Data Area)DA(1)、DA(2)...至DA(N),以及多个与各数据块对应的备用区SA(1)、SA(2)...至SA(N)。其中次表格区STA用于存储损坏记录表的备份;各数据区DA(n)中又更进一步划分出预设数目个用户数据块(user datablock)Bd;而各备用区SA(n)中也进一步划分出预设数目个备用数据块(sparedata block)Bs。不论是用户数据块Bd或是备用数据块Bs,都是数据容量相同、可写入数据的数据块。举例来说,在CD-MRW规范下,一个数据区中有136*32个用户数据块,一个备用区中具有8*32个备用数据块。这些数据块都有固定的地址,以一定的数字大小顺序关系标识出各数据块在光道24上的位置。要将用户的数据写入至具有图2A中规格的光盘,数据会以数据块为单位,按照顺序优先写入至各数据区的各个数据块Bd中。举例来说,当数据区DA(1)中的各个用户数据块Bd都已经记录有数据后,后续的数据会继续依序写入至数据区DA(2)的各个用户数据块中。若在写入过程中发现要写入数据的用户数据块损坏而不能正常记录数据,就要依据特定的规则找出一个备用区中未记录有数据的备用数据块,并将原本要写入至损坏用户数据块的数据改写入至备用数据块。若在将数据写入至备用数据块的过程中又发现该备用数据块被损坏,则要另外再找另一个未记录有数据的备用数据块,将数据写入至这个重新找到的备用数据块。利用上述这种规划格式及运行模式,就能确保数据能被正确地写入至光盘中,不会因光盘本身有部分损坏而影响其记录数据的功能。
当以一个备用数据块代替一个损坏的数据块(用户数据块或是备用数据块)时,为了要让光驱仍能正常存取原本应存至该损坏数据块中的数据,需要以特定的机制将该损坏数据块的地址对应至该备用数据块的地址;而损坏记录表DT,就是用于记录损坏数据块与替代的备用数据块两者之间的对应关系。请参考图2B。图2B为损坏记录表DT中相关数据存储情形的示意图。损坏记录表DT是以多个有一定顺序的损坏记录表块(Defect Table Block)来记录相关信息,图2B中就绘出了三个损坏记录表块DTB(n-i)、DTB(n)及DTB(n+1)做为代表(其中i可以是1)。每个损坏记录表块中有多个记录表目(entry)E,每个记录表目E中则记载有一组损坏数据块的地址DAa及对应的备用数据块的地址SAa。像在图2B中的示意例,地址DN1、DN2等等到DN12,就代表不同数据块的地址;地址AN1至AN18则代表不同备用数据块的地址。基本上每个损坏记录表块对应于一个备用区,损坏记录表块中记录表目的数目就等于一个备用区中备用数据块的数目。根据光盘上各个备用数据块被使用的情况,各记录表目中还有一状态指示S,用于标识对应备用数据块被使用的状况。以图2B中的示意图来说,状态指示标识为U的,代表该记录表目记录的是已使用的备用数据块地址(及其对应的损坏数据块地址)。换句话说,光盘上有一个数据块损坏,而原先要写入至该损坏数据块的数据是存储于另一个对应的备用数据块。而这一组损坏数据块-备用数据块的地址对应关系,就记录于一个状态指针标识为U的记录表目中;这个记录表目可称为一使用后记录表目(used entry)。相对地,若某个备用数据块尚未被写入数据,代表这个备用数据块可以在光盘后续的写入过程中代替新发现的损坏数据块存储数据,这样的未使用的备用数据块的地址,就记录于状态指针标识为F的记录表目中;这样的记录表目可称为一未使用记录表目(free entry)。在未使用记录表目中,其记录的损坏数据块地址DAa基本上是没有意义的(因为该备用数据块尚未对应于一损坏数据块)。当然,备用数据块也可能会发生损坏,损坏的备用数据块地址就记录于状态指针标识为D的记录表目中;记录损坏备用数据块地址的记录表目也可称为不可用的记录表目(unusable entry)。集合损坏记录表DT中所有损坏记录表块DTB的各个记录表目,就能完整记录光盘22上所有备用数据块被使用的情形。
当光驱10开始要存取光盘22上的数据时(也就是进片后),光驱10可以将光盘22上的损坏记录表DT暂存至存储器20;当光驱10要读取光盘22上的数据时,光驱10可依照各用户数据块Bd的地址读取所需的数据;若某一用户数据块Bd为损坏的,光驱10可以根据损坏记录表来找到该损坏的用户数据块的数据是存在那个替代的备用数据块,然后到该备用数据块去读取数据;这样一来,光盘22即使有某些损坏,仍能正常存储数据并被读出。另一方面,若是光驱10要将数据写入至光盘22,光驱10就要根据写入过程的情况,来适当地更新暂存于存储器20的损坏记录表。举例来说,若在写入过程中光驱10发现某个用户数据块为损坏而不能正确地写入数据,就要找到另一个未使用过的备用数据块来代替该损坏的用户数据块。此时光驱10会在损坏记录表中找出一个未使用记录表目(记录有一个未使用过的备用数据块地址),将该记录表目改变为使用后记录表目(改变状态指针),并将该损坏的用户数据块的地址记录于该记录表目中,以完整记载损坏数据块-备用数据块之间的对应关系。这样一来,暂存于存储器20中的损坏记录表的内容也就随之改变了。当光驱10要停止存取光盘22上的数据(如要将光盘22弹出)时,要将改变更新后的损坏记录表由存储器20回写至光盘22中;下次光驱10要再次存取光盘22的数据时,就可参考这个更新的损坏记录表来存取光盘上的数据。
为了方便光驱10找寻代替损坏数据块的备用数据块,使用后记录表目要根据其记录的数据块地址来排序。如图2B中所示,在光道24上的数据区DA(n)中,三个依序排列的用户数据块的地址DN6、DN7及DN8之间,有渐增(ascending)的数目大小关系;也就是DN8>DN7>DN6。若这三个用户数据块为损坏而由备用数据块取代,在损坏记录表DT中,记载有这三个数据块地址的使用后记录表目,也会依照数据块地址的大小依序排序,如图2B中损坏记录表块DTB(n)中所示。同理,在对应于数据区DA(n+1)的损坏记录表块DTB(n+1)中,使用后记录表目也会按照损坏数据块的地址DN11、DN12来排序。损坏记录表DT中的使用后记录表目,不论是在哪个损坏记录表块中,都要根据损坏数据块地址的大小来统一的排序;以图2B中的例子来说明,就是在各损坏数据块地址间,具有下列排序关系:DN12>DN11>DN8>DN7>DN6>DN2>DN1;而各使用后记录表目中,对应的替代备用数据块的地址AN12、AN11、AN8至AN6乃至于AN2、AN1之间,就不一定会有规律渐增或渐减的数目大小关系。各使用后记录表目经过这样的排序过后,当光驱10要存取某个损坏数据块的数据时,就能较有效率地通过损坏记录表DT找到替代该损坏数据块的备用数据块。
相对于各使用后记录表目会统一根据损坏数据块的地址来排序,各损坏记录表块中的未使用记录表目,则会在各损坏记录表块中依据未使用的备用数据块地址来排序。举例来说,在图2B的损坏记录表块DTB(n+1)中,未使用记录表目所记录的备用数据块地址AN13、AN14及AN15,会有AN15>AN14>AN13的数目大小关系。未使用记录表目经由这样排序后,光驱10就能有效率地根据损坏记录表DT来寻找一个未使用过的备用数据块,以代替一个损坏的数据块。至于不可用的记录表目,就不会特别将其排序了。
如前所述,在光驱10要存取光盘的数据时,会先将光盘上存储的损坏记录表DT读入并暂存于存储器20中。请参考图3(并一起参考图2B)。图3为公知技术中,损坏记录表DT暂存于存储器20中的示意图。在公知技术中,光驱会将损坏记录表DT中各个损坏记录表块的结构原原本本地读入至存储器20中,就如同图3的示意例所示;请注意图4A中各记录表目的分配,就如同图2B中损坏记录表块DTB(n)、DTB(n+1)一样。如前所述,若光驱10在将数据写入至光盘时,若发现有数据块损坏,就要以备用数据块将其取代,并更新存储器20中暂存的损坏记录表DT,使更新后的损坏记录表DT能反应新增的损坏数据块-替代数据块关系。请继续参考图4A至图4C。图4A至图4C为公知技术更新存储器中损坏记录表的过程示意图。假设在光驱写入光盘时,发现数据区DA(n)中有一损坏的用户数据块(可能导因于光盘的刮损或微尘破坏),其地址为DN5(地址间的数目大小关系为:DN8>DN7>DN6>DN5)。如图4A所示,在发现这个地址为DN5的损坏数据块后,光驱10会根据存储器中暂存的损坏记录表,找到一个未使用记录表目(及其记录的未使用备用数据块地址AN13),此记录表目标识为Er。如图4B所示,当光驱把原本要写入至此损坏数据块的数据改写入至地址AN13的备用数据块后,就要把记录表目Er标识为使用后记录表目,并将损坏数据块的地址DN5写入至记录表目Er,建立损坏数据块-替代数据块两者间的对应关系。如前所述,各使用后记录表目,不论在那个损坏记录表块中,都要根据损坏数据块的地址来统一排序。既然记录表目Er的内容已更新为一使用后记录表目,在公知技术中,也会对存储器20中各使用后记录表目重新排序。因为此新发现的损坏数据块的地址为DN5,在数目大小关系上小于地址DN6至DN8,乃至于DN11、DN12,所以在公知技术中,要先将使用后记录表目Er的内容插入至原本记录有地址DN6的使用后记录表目,而记录有地址DN6、DN7等等的使用后记录表目也要依序搬动一个位置;记录有地址DN8的使用后记录表目还要搬动至另一个损坏记录表块DTB(n+1)。同理,损坏记录表块DTB(n+1)中的使用后记录表目也要依序搬动。最后,重新排序的结果,就如同图4C所示;至此,也完成了对损坏记录表的更新。当光驱要停止存取光盘时(例如说用户要退片弹出时),存储器20中暂存的损坏记录表就要重新回写至光盘中。
在光盘数据写入过程中,上述的公知技术每发现一个新的损坏数据块,就要将其与损坏记录表中所有既有的使用后记录表目重新排序,会耗费相当时间。就如图4A至图4C的例子所说明的,每次对使用后记录表目重新排序,都要搬动许多个记录表目;换句话说,存储器20要耗费许多时间进行许多的存取操作,才能达到重新排序的目的。这样一来,就会延长数据写入的过程,降低数据写入的效率,无法达到现代信息产业对光盘写入过程高运行效率的要求。
发明内容
因此,本发明的主要目的,在于提供一种较有效率的方法,以管理、更新损坏记录表,增加光驱数据写入过程的运行效能。
本发明提供一种用于光驱的方法,用于管理光盘上的数据;该光盘上包含有多个预设的数据块以及一损坏记录表;其中每一数据块用于记录数据;各数据块有一对应的地址且该多个数据块的地址间具有一特定的数字大小顺序关系;该损坏记录表设有至少一个记录表目,每一记录表目用于记录该光盘上一个损坏的数据块的地址;而该光驱包含有一存储器,该存储器具有多个存储区,各存储区用于暂存一记录表目;其中当该光驱将数据烧录至该光盘上时,该光驱可检测该光盘上损坏的数据块;该方法包含有:在该存储器中分配至少一第一存储区和一第二存储区,并在每一第一存储区中,暂存该损坏记录表的一个记录表目;在将数据写入至该光盘的一个第一数据块时,若该第一数据块为损坏,且该损坏记录表中有至少一数据块地址大于该第一数据块的地址,则将该第一数据块的地址暂存于该存储器中不同于该第一存储区的第二存储区中;以及在数据写入期间,当将第一数据块的地址暂存于该第二存储区时,该存储器中该第一存储器暂存的该损坏记录表的记录表目所记录的损坏的数据块的地址的顺序保持不变。
本发明还提供一种光驱管理光盘上的数据的方法,该光盘上包含有多个预设的数据块以及一损坏记录表,其中每一数据块用于记录数据,并且每一数据块有一对应的地址;该损坏记录表设有至少一个记录表目,每一记录表目用于记录该光盘上一个损坏的数据块的地址;该光驱包含有一存储器,该存储器包含一第一存储区以及一第二存储区,该第一存储区以及该第二存储区可暂存多个记录表目;当该光驱将数据写入该光盘上时,该光驱可检测该光盘上损坏的数据块;该方法包含有:于该第一存储区中,暂存该损坏记录表;在将数据写入该光盘的该数据块时,若一第一数据块为损坏,则将该第一数据块的地址暂存于该第二存储区;在将数据写入至该光盘的该数据块时,若不同于该第一数据块的一第二数据块亦为损坏,则将该第二数据块的地址暂存于该存储器中该第二存储区,并在该第二存储区中与该第一数据块的地址排序;以及当光驱结束光盘的写入过程时,将该第二存储区中损坏存储区的地址与该第一存储区中损坏数据块的地址重新排序,并写入该光盘上。
本发明还提供一种光驱管理光盘上的数据的方法,该光盘上包含有多个预设的数据块以及一损坏记录表,其中每一数据块用于记录数据,并且每一数据块有一对应的地址;该损坏记录表记录该光盘上至少一个损坏的数据块的地址;该光驱包含有一存储器,该存储器包含一第一存储区以及一第二存储区;当该光驱将数据写入该光盘上时,该光驱可检测该光盘上损坏的数据块;该方法包含有:将该损坏记录表暂存至该存储器中的第一存储区;将该光驱在写入该光盘时新检测到的多个损坏数据块地址暂存于该第二存储区并排序;以及当该光驱停止数据写入该光盘时,将该第二存储区中的该多个损坏数据块地址与该第一存储区中的该损坏数据块地址合并排序以更新该损坏记录表,并将该更新后的该损坏记录表写入至该光盘。
在公知技术中,每次发现一个新的损坏数据块,就要对损坏记录表中所有的使用后记录表目重新排序,期间会涉及复杂的存储器存取运行,降低数据写入期间的运行效率。
在本发明中,会在存储器中分配至少两个不同的存储区域,一个用于暂存由光盘上读出的原始损坏记录表,另一个用于暂存数据写入期间新设立的使用后记录表目。在数据写入期间,所有新设立的使用后记录表目会存储于同一存储区域并彼此排序(但不会和另一存储区域中原始损坏记录表的使用后记录表目排序)。直到光驱结束数据写入(如退片时),两个存储区域中所有的使用后记录表目才会统一排序,产生更新后的损坏记录表,并回写至光盘中。因为本发明在数据写入期间不需排序损坏记录表的所有使用后记录表目,仅需排序新建立的使用后记录表目,能有效减少存储器在光盘数据写入过程中所需进行的运行,增进光驱数据写入过程的效能。
附图说明
图1为一典型光驱的示意图;
图2A为一典型光盘的光道格式的示意图;
图2B为图2A中损坏记录表的示意图;
图3为图2B中损坏记录表暂存于图1中存储器的示意图;
图4A至图4C为公知技术中更新损坏记录表的过程示意图;
图5为本发明中光驱的示意图;
图6为图2B中损坏记录表以本发明的方法暂存于图5中存储器的模式示意图;
图7A至图7E为图5中存储器更新损坏记录表实施过程的示意图;
图8为图2B中损坏记录表以本发明另一实施方法暂存于图5中存储器的模式示意图。
图标的符号说明:
10、30光驱            12、32马达
14、34托盘            16、36读写头
18、38控制电路        20、40存储器
22光盘                24光道
DA(1)、DA(2)、DA(n)、DA(n+1)、DA(N)数据区
SA(1)、SA(2)、SA(n)、SA(n+1)、SA(N)备用区
LI引入区              LO引出区
PA程序区              MTA主表格区
STA次表格区           P0前间隔区
GAA一般用途区         Bd用户数据块
Bs备用数据块          DT损坏记录表
DTB(n-I)、DTB(n)、DTB(n+1)    损坏记录表块
DN1-DN12、AN1-AN18            地址
Z1a-Z1c、Z4存储区     Z2第二存储区
Z3第三存储区          M1a第一存储区
M2第二存储区          M3第三存储区
M1b、M1c、M4存储区
具体实施方式
请参考图5。图5为一典型光驱的示意图。本发明可使用于图5的光驱30中,以管理光盘22上的损坏记录表。光驱30中设有承载光盘的托盘34、带动托盘34转动的马达32、用于存取光盘数据的读写头36、用于控制光驱30运行的控制电路38以及用于暂存控制电路38运行期间所需数据的存储器40。光驱30的读写头36能将数据写入至光盘22,并检测光盘上是否有损坏。为了说明与比较的方便,以下假设本发明的方法系以光驱30来存取前面讨论过的光盘22。光盘22上是以光道24来记录数据,光道24的数据格式、损坏记录表DT已于图2A、B中及相关说明中描述。类似于公知技术,在光驱30存取光盘22的数据期间,光驱30也会将光盘22的损坏记录表DT暂存至存储器40,并依据数据写入的状况更新损坏记录表;本发明的方法即是在数据写入期间用于管理暂存于存储器40中的损坏记录表。
请参考图6(并一并参考图2A、图2B及相关说明)。图6为本发明方法中将光盘22于图2B中的损坏记录表暂存于存储器40中的模式示意图。不同于公知技术,本发明的方法要暂存损坏记录表时,会先在存储器中分配(allocate)三个存储区域;其中两个存储区域分别为第二存储区域Z2、第三存储区域Z3;而另一个存储区域又可进一步分为存储区域Z1a、Z1b及Z1c。存储区域Z1a、Z1b、Z1c及第二存储区域Z2、第三存储区域Z3分别具有多个第一存储区M1a、存储区M1b、存储区M1c及第二存储区M2、第三存储区M3;每一个上述的存储区用于暂存一损坏记录表的记录表目。当光驱30要将光盘22上的损坏记录表读入至存储器40时,会将损坏记录表DT中各损坏记录表块的使用后记录表目(状态指针标识为U)取出,统一存储于存储区域Z1a的各个第一存储区M1a中。同理,损坏记录表DT中各损坏记录表块的未使用记录表目(状态指针标识F)也会统一存储于存储区域Z1b的各个存储区M1b中;而各损坏记录表块中不可用的记录表目(状态指针标识为D)则统一存储于存储区域Z1c的各个存储区M1c中。比较图2B中的损坏记录表DT与图6中暂存于各存储区的记录表目,可知道损坏记录表块DTB(n-i)、DTB(n)与DTB(n+1)中使用后记录表目,包括存储有数据块地址DN1、DN2、DN6、DN7、DN8乃至于DN11、DN12等等的使用后记录表目,皆统一存储于存储区域Z1a中。记录有备用数据块地址AN13、AN14至AN15等等的未使用记录表目,则统一存储于存储区域Z1b中。各损坏记录表块中不可使用的记录表目统一存储于存储区域Z1c中,包括存储有损坏备用数据块地址AN3、AN4乃至于AN16、AN18等等的不可使用记录表目。在优选实施例中,本发明可将损坏记录表中各使用后记录表目直接读入存储区域Z1a中;因为损坏记录表中使用后记录表目经过统一排序,所以直接读入存储区域Z1a的使用后记录表目也会是统一排序的。
请参考图7A至图7E。图7A至图7E为本发明中在数据写入期间更新损坏记录表的过程示意图,以便用实际的实施例来说明本发明实施的情形。当光驱30开始要存取光盘22上的数据时,会先按照图6所示将光盘上的损坏数据表读入存储器40中,并依据各记录表目的性质(为使用后、可使用或不可使用)分别集中存储于存储区域Z1a、Z1b及Z1c。如图7A所示,假设当光驱30在写入数据至光盘22的过程中,发现数据区DA(n)中有一地址为DN5的数据块为损坏;此时光驱30的控制电路38就会根据存储区域Z1b中暂存的可使用记录表目,找出一个可使用的备用数据块(其地址为AN13);并将此可使用记录表目复制(copy)至第三存储区域Z3的一个存储区中。当光驱30将数据写入至这个替代的备用数据块时,也会在第三存储区域Z3中,将损坏数据块的地址DN5记录于此记录表目,并将此记录表目标识为使用后记录表目。之后此记录表目会被暂存于第二存储区域Z2中,如图7A中所示。至此就完成本发明中更新损坏记录表的作业;请注意此时并不会将暂存于第二存储区域的使用后记录表目与存储区域Z1a中的使用后记录表目排序。
请继续参考图7B。假设在处理完地址DN5的损坏数据块后,光驱30在后续的写入过程中又发现地址DN10的用户数据块为损坏。此时控制电路38又会根据存储区域Z1b中的未使用记录表目来寻找替代的备用数据块,并将找出的未使用记录表目复制至第三存储区域Z3(原先于图7A中暂存于此存储区域的记录表目则在处理完地址DN5的损坏后予以释放(release),不再占用存储区域Z3的存储区)。同图7A中的处理方式,顺利以地址AN14的备用数据块替代地址DN5的损坏数据块后,此记录表目会被改变为使用后记录表目,并记录下损坏数据块的地址DN10;最后再暂存于第二存储区域Z2中,并根据损坏记录区的地址,与第二存储区域Z2中既有的使用后记录表目(也就是图7A中新建立的使用后记录表目)进行排序。由图7A至图7B,光驱30新发现了两个损坏数据块,建立了两个新的使用后记录表目;这两个新建立的使用后记录表目会被暂存至第二存储区域Z2中,并根据损坏记录区的地址进行排序,但两者皆不会在光盘数据写入过程中与存储区域Z1a中的使用后记录表目排序。
假设在后续的光盘数据写入过程中,光驱30又发现地址DN9的用户数据块损坏,如图7C所示。同前面的处理方式,控制电路38根据存储区域Z1b中的未使用记录表目来找出替代的备用数据块,将此未使用记录表目暂存至第三存储区域Z3中,并在将数据写入替代的备用数据块后,将此新设立的使用后记录表目暂存至第二存储区域Z2的一个存储区中。在第二存储区域Z2中,此新建立的使用后记录表目又会和先前暂存至第二存储区域Z2的使用后记录表目一起排序。在此处,假设损坏数据块地址DN5、DN9及DN10间的数目大小关系为DN10>DN9>DN5,所以图7B中记录有地址DN10的使用后记录表目,会在排序过程中被移至另一个存储区,以便插入记录有地址的DN9的使用后记录表目。排序后存储区域Z2中各个使用后记录表目,就如图7C所示。
换言之,本发明是在光盘数据写入过程中,将新建立的使用后记录表目统一暂存于第二存储区域Z2中,并根据损坏数据块的地址对所有新建立的使用后记录表目排序;但这些新建立的使用后记录表目都还不会与存储区域Z1a中的使用后记录表目合并或排序。直到光驱30要结束光盘数据写入时(譬如说是退片弹出时),控制电路38才会将数据写入过程中新建立而暂存于第二存储区域Z2的各个使用后记录表目与存储区域Z1a中的使用后记录表目合并。在合并的过程中存储区域Z1a及Z2的所有使用后记录表目都会统一重新排序。排序合并后的结果就如图7E所示。此时就能将存储区Z1a、Z1b及Z1c的各个记录表目在分别归回至各个损坏记录表块中,并重组为更新后的损坏记录表,并回写至光盘上,完成整个损坏记录、管理的过程。
在图7A至图7C的过程中,未使用的记录表目能直接由存储区域Z1b中取出。若在写入数据至某个备用数据块时发现该备用数据块损坏,可将记录有该损坏备用数据块地址的新建立记录表目(也就是一个不可使用的记录表目)直接回存至存储区域Z1c中。由于不可使用的记录表目不需排序,所以将新建的不可使用的记录表目暂存于存储区域Z1c时,也不需排序。若在光盘数据写入期间同时建立了多个新的使用后记录表目,也可将这些使用后记录表目同时暂存于第三存储区域Z3中,再与第二存储区域Z2中既有的使用后记录表目合并排序。
在本发明的上述实施例中,是以存储区域Z1b、存储区域Z1c来分别存储未使用记录表目及不可使用的记录表目。而本发明也可将损坏记录表DT中各损坏记录表块的未使用记录表目及不可使用的记录表目,按照原先存储于各损坏记录表块中的顺序,直接读入存储器40中。请参考图8(并同时参考图2B)。图8即为本发明在此实施例下将图2B中的损坏记录表读入存储器40后的数据示意图。除了各损坏记录表块使用后记录表目被集中存储于存储区域Z1a的外(类似于图6中的存储方式),各记录表目未使用记录表目及不可使用的记录表目是按照各损坏记录表块原先的顺序存储于存储区域Z4的各个存储区M4中。举例来说,损坏记录表块DTB(n-i)中除了使用后记录表目,其它的记录表目就暂存于存储区域Z4(n-i)中;损坏记录表块DTB(n)使用后记录表目的外的其它记录表目则暂存于存储区域Z4(n)中;同理,损坏记录表块DTB(n+1)的未使用及不可使用的记录表目则暂存于存储区域Z4(n+1)中。集中暂存于存储区域Z1a的各个使用后记录表目,以及存储区域Z2、存储区域Z3的用途及光盘数据写入过程中新建立的使用后记录表目的暂存、排序情形就如同本发明的前一实施例一般;在不妨碍本发明技术公布的情形下,不予赘述。另外,由于在为损坏的数据块寻找替代的备用数据块时,应该优先寻找与该损坏数据块相近的备用数据块,故本实施例中将可使用记录表目按照损坏记录表块(各损坏记录表块对应于一备用区)的结构存储于存储器40中,能较为方便地找到相近的备用数据块。
总而言之,本发明是在光盘数据存取之初将光盘上原始的损坏记录表,依据各个记录表目的特性,分类存储于存储区域Z1a、Z2a、Z3a。而在光盘数据写入过程中,是以第二存储区域Z2当作一个缓冲存储区域,来暂存所有新建立的使用后记录表目,并在第二存储区域Z2中根据损坏数据块的地址将这些新建立的使用后记录表目排序。请注意,在公知技术中,每次建立一个新的使用后记录表目,就要耗费相当时间将其与损坏记录表中所有的使用后记录表目排序,因而降低光盘数据写入过程的效率。相比之下,本发明在光盘数据写入过程中,仅对新建立的使用后记录表目排序,不必将其与损坏记录表中所有的使用后记录表目排序,因此能减少存储器运行所需的时间,增进光盘数据写入过程的效能。直到光驱结束光盘数据写入过程,新建立的使用后记录表目才会统一和原来损坏记录表中的使用后记录表目一并排序,以完整更新损坏记录表,回写至光盘中。因此,本发明能有效降低光盘数据写入过程中光驱存储器及控制电路的运行负担,增进光驱数据写入的效能。
以上所述仅为本发明的优选实施例,凡依本发明权利要求书所做的大小的变化与改变,皆应属本发明专利的覆盖范围。

Claims (12)

1.一种用于光驱的方法,用于管理光盘上的数据;该光盘上包含有多个预设的数据块以及一损坏记录表;其中每一数据块用于记录数据;各数据块有一对应的地址且该多个数据块的地址间具有一特定的数字大小顺序关系;该损坏记录表设有至少一个记录表目,每一记录表目用于记录该光盘上一个损坏的数据块的地址;而该光驱包含有一存储器,该存储器具有多个存储区,各存储区用于暂存一记录表目;其中当该光驱将数据烧录至该光盘上时,该光驱可检测该光盘上损坏的数据块;
该方法包含有:
在该存储器中分配至少一第一存储区和一第二存储区,并在每一第一存储区中,暂存该损坏记录表的一个记录表目;
在将数据写入至该光盘的一个第一数据块时,若该第一数据块为损坏,且该损坏记录表中有至少一数据块地址大于该第一数据块的地址,则将该第一数据块的地址暂存于该存储器中不同于该第一存储区的第二存储区中;以及
在数据写入期间,当将第一数据块的地址暂存于该第二存储区时,该存储器中该第一存储器中暂存的该损坏记录表的记录表目所记录的损坏的数据块的地址的顺序保持不变。
2.如权利要求1所述的方法,还包含有:
在将该第一数据块的地址暂存于该第二存储区后,若再检测出有一第二数据块损坏,则将该第二数据块的地址暂存于另一个第二存储区。
3.如权利要求2所述的方法,若该第二数据块的地址小于该第一数据块的地址,则将该第一数据块的地址移出原先暂存该第一数据块地址的第二存储区,并将该第一数据块的地址暂存于另一个第二存储区。
4.如权利要求1所述的方法,还包含有:
当该光驱停止于该光盘写入数据后,若有一第二存储区中的地址小于一第一存储区中的地址,则将该第一存储区中的地址移出该第一存储区并转存至该存储器中的除该第一存储区和该第二存储区以外的其它存储区。
5.如权利要求4所述的方法,其中,将该第一存储区中的地址移出该第一存储区的次数,小于该损坏记录表中地址大于该第一数据块地址的数据块数目。
6.如权利要求1所述的方法,还包含有:
当该光驱停止于该光盘写入数据后,根据各第一存储区及各第二存储区中存储的地址更新该损坏记录表,并将该更新后的损坏记录表写入至该光盘中。
7.如权利要求1所述的方法,其中该光盘上的数据块及损坏记录表符合CD-MRW规范。
8.如权利要求1所述的方法,其中该光盘还包含有:
多个预设的备用数据块,每一备用数据块有一对应的地址;各备用数据块用于记录原本要记录在一对应的损坏数据块的数据;而损坏记录表中各记录表目另外记录有对应于各损坏数据块的备用数据块的地址。
9.一种光驱管理光盘上的数据的方法,该光盘上包含有多个预设的数据块以及一损坏记录表,其中每一数据块用于记录数据,并且每一数据块有一对应的地址;该损坏记录表设有至少一个记录表目,每一记录表目用于记录该光盘上一个损坏的数据块的地址;该光驱包含有一存储器,该存储器包含一第一存储区以及一第二存储区,该第一存储区以及该第二存储区可暂存多个记录表目;当该光驱将数据写入该光盘上时,该光驱可检测该光盘上损坏的数据块;
该方法包含有:
于该第一存储区中,暂存该损坏记录表;
在将数据写入该光盘的该数据块时,若一第一数据块为损坏,则将该第一数据块的地址暂存于该第二存储区;
在将数据写入至该光盘的该数据块时,若不同于该第一数据块的一第二数据块亦为损坏,则将该第二数据块的地址暂存于该存储器中该第二存储区,并在该第二存储区中与该第一数据块的地址排序;以及
当光驱结束光盘的写入过程时,将该第二存储区中损坏存储区的地址与该第一存储区中损坏数据块的地址重新排序,并写入该光盘上。
10.如权利要求9所述的方法,其中该光盘上的数据块及损坏记录表符合CD-MRW规范。
11.一种光驱管理光盘上的数据的方法,该光盘上包含有多个预设的数据块以及一损坏记录表,其中每一数据块用于记录数据,并且每一数据块有一对应的地址;该损坏记录表记录该光盘上至少一个损坏的数据块的地址;该光驱包含有一存储器,该存储器包含一第一存储区以及一第二存储区;当该光驱将数据写入该光盘上时,该光驱可检测该光盘上损坏的数据块;
该方法包含有:
将该损坏记录表暂存至该存储器中的第一存储区;
将该光驱在写入该光盘时新检测到的多个损坏数据块地址暂存于该第二存储区并排序;以及
当该光驱停止数据写入该光盘时,将该第二存储区中的该多个损坏数据块地址与该第一存储区中的该损坏数据块地址合并排序以更新该损坏记录表,并将该更新后的该损坏记录表写入至该光盘。
12.如权利要求11所述的方法,其中该光盘上的数据块及损坏记录表符合CD-MRW规范。
CNB021432775A 2002-09-25 2002-09-25 光盘数据管理方法 Expired - Fee Related CN100399460C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB021432775A CN100399460C (zh) 2002-09-25 2002-09-25 光盘数据管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB021432775A CN100399460C (zh) 2002-09-25 2002-09-25 光盘数据管理方法

Publications (2)

Publication Number Publication Date
CN1485845A CN1485845A (zh) 2004-03-31
CN100399460C true CN100399460C (zh) 2008-07-02

Family

ID=34148225

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021432775A Expired - Fee Related CN100399460C (zh) 2002-09-25 2002-09-25 光盘数据管理方法

Country Status (1)

Country Link
CN (1) CN100399460C (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072839A (ja) * 2005-09-08 2007-03-22 Sony Corp 記録制御装置および方法、並びにプログラム
US7738329B2 (en) * 2007-02-16 2010-06-15 Mediatek Inc. Random access control method and optical disc drive
US8086793B2 (en) * 2007-02-16 2011-12-27 Mediatek Inc. Optical disc recorder and buffer management method thereof
CN109614121A (zh) * 2018-12-06 2019-04-12 郑州云海信息技术有限公司 一种中背板sas地址烧录实现方法及系统
CN116661698B (zh) * 2023-06-16 2024-02-13 浙江清环智慧科技有限公司 一种窨井排水监测设备中存储器的管理方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5235585A (en) * 1991-09-11 1993-08-10 International Business Machines Reassigning defective sectors on a disk
CN1221944A (zh) * 1997-12-31 1999-07-07 三星电子株式会社 Dvd-ram系统中缺陷扇区数据的处理方法
CN1254911A (zh) * 1998-10-10 2000-05-31 三星电子株式会社 带有缺陷管理备用区的记录介质以及分配备用区的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5235585A (en) * 1991-09-11 1993-08-10 International Business Machines Reassigning defective sectors on a disk
CN1221944A (zh) * 1997-12-31 1999-07-07 三星电子株式会社 Dvd-ram系统中缺陷扇区数据的处理方法
CN1254911A (zh) * 1998-10-10 2000-05-31 三星电子株式会社 带有缺陷管理备用区的记录介质以及分配备用区的方法

Also Published As

Publication number Publication date
CN1485845A (zh) 2004-03-31

Similar Documents

Publication Publication Date Title
JP2915307B2 (ja) 光ディスクの情報記録制御方法
CN100580798C (zh) 用于使用临时缺陷信息(tdfl)和临时缺陷管理信息(tdds)来管理盘缺陷的方法
CN101064156B (zh) 在盘上形成区的方法以及再现设备
JP3206657B2 (ja) 交替処理方法および情報記録再生装置
EP1647014B1 (en) Method and apparatus for managing a overwrite recording on a write-once optical disc
JPH05313980A (ja) 情報記録方法
US8411386B2 (en) Data write control apparatus and data write control method
JP5701012B2 (ja) テープ・メディア・デバイス上のパーティションの自動リンク
CA2469402A1 (en) Disk driver cluster management of time shift buffer with file allocation table structure
JPH06338139A (ja) 追記型情報記録媒体の情報記録における交代処理方法
JP2002123421A (ja) フラッシュメモリのための再写像制御方法及びこれによるフラッシュメモリの構造
ATE438176T1 (de) Einmal beschreibbarer optischer datenträger und verfahren und vorrichtung zur aufzeichnung von verwaltungsinformationen auf einem einmal beschreibbaren optischen datenträger
US6279118B1 (en) Recording medium storing additional information for defect management and method for managing defects
CN1732535B (zh) 记录方法和记录装置
CN1860547B (zh) 记录装置、再现装置、记录方法、再现方法和操作方法
JP4347707B2 (ja) 情報記録媒体のフォーマット方法および情報記録媒体
CN100399460C (zh) 光盘数据管理方法
JPH09171676A (ja) データ記録/再生方法
KR20090083878A (ko) 자기디스크 장치의 기록 방법 및 자기디스크 장치
CN101325079B (zh) 记录媒体中盘片管理信息的恢复方法及其装置
US7840541B2 (en) Information recording method and information recording/reproduction device
CN100426388C (zh) 在记录器中执行最佳记录功率校准的方法以及装置
CN100372000C (zh) 使用可更新的缺陷管理区域管理磁盘缺陷的方法和装置以及磁盘
CN1977331A (zh) 用于存储介质的缺陷管理
CN100367369C (zh) 损坏光盘片上数据存取的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080702

Termination date: 20160925

CF01 Termination of patent right due to non-payment of annual fee