光学储存装置及其存储装置管理方法转让专利
申请号 : CN200810009854.0
文献号 : CN100583277C
文献日 : 2010-01-20
发明人 : 吴哲宏 , 陈世新 , 洪仕达 , 赖宽裕 , 林泰良 , 陈炳盛
申请人 : 联发科技股份有限公司
摘要 :
权利要求 :
1.一种光学储存装置,接收多个写入命令,所述的写入命令各包含一数据区块以及一目标地址,其特征在于,所述的光学储存装置包含: 一存储装置用以依据一循序模式或一随机模式储存所述的数据区块; 一处理器用以依据所述的写入命令安排一记录操作程序,并且依据所述的存储装置中所储存的所述的数据区块的排列,选择性地切换所述的存储装置于所述的循序模式或所述的随机模式;以及 一控制单元由所述的处理器所控制,用以当满足一起烧条件时,执行所述的记录操作程序以将所述的数据区块记录至一光盘片上,其中所述的循序模式所对应的所述的起烧条件,不同于所述的随机模式所对应的所述的起烧条件。
2. 如权利要求1所述的光学储存装置,其特征在于,所述的处理器分析 所述的存储装置中所储存的所述的数据区块以产生多个光盘写入工作任务, 其中各所述的光盘写入工作任务是关于所述的数据区块中多个具有连续的所 述的目标地址的数据区块,以及计算所述的光盘写入工作任务以产生一任务数量。
3. 如权利要求2所述的光学储存装置,其特征在于,所述的处理器依据 所述的任务数量以选择性地切换所述的循序模式与所述的随机模式。
4. 如权利要求2所述的光学储存装置,其特征在于,当所述的任务数量 大于"1",则切换所述的存储装置至所述的随机模式。
5. 如权利要求2所述的光学储存装置,其特征在于,当所述的任务数量 等于"0",则切换所述的存储装置至所述的循序模式。
6. 如权利要求2所述的光学储存装置,其特征在于,当所述的任务数量 等于"l",则检查新接收的一写入命令中的一目标地址是否与所述的光盘写 入工作任务 所对应的目标地址相连续,如果检查结果为肯定,则切换所述的存储装置至所述的循序模式,否则切换所述的存储装置至所述的随机模式。
7. 如权利要求1所述的光学储存装置,其特征在于,所述的起烧条件包 含存储装置可用容量、存储装置距前一次被存取时间间隔、距前次执行所述 的记录操作程序的时间间隔、或任务数量。
8. 如权利要求7所述的光学储存装置,其特征在于:于所述的随机模式,当存储装置可用容量小于一第一容量临界值则被视 为满足所述的起烧条件;于所述的循序模式,当存储装置可用容量小于一第二容量临界值则被视 为满足所述的起烧条件,其中所述的第一容量临界值小于所述的第二容量临 界值。
9. 如权利要求7所述的光学储存装置,其特征在于:于所述的随机模式,当存储装置距上次被存取时间间隔大于一第一怠转临界值则被视为满足所述的起烧条件;于所述的循序模式,当存储装置与上次被存取时间间隔大于一第二怠转 临界值则被视为满足所述的起烧条件,其中所述的第一怠转临界值大于所述 的第二怠转临界值。
10. 如权利要求7所述的光学储存装置,其特征在于:于所述的随机模式,当距前次执行所述的记录操作程序的时间间隔大于一第一临界值则被视为满足所述的起烧条件;于所述的循序模式,当距前次执行所述的记录操作程序的时间间隔大于 一第二临界值则被视为满足所述的起烧条件,其中所述的第一临界值大于所 述的第二临界值。
11.一种光学储存媒体储存方法,使用于一光学储存装置,",fi^t^l含:接收多个写入命令,各所述的写入命令包含一数据区块以及一 目标地址;依据一循序模式或一随机模式储存所述的数据区块至一存储装置;依据所述的写入命令安排一记录操作程序;依据所述的存储装置中所储存的所述的数据区块的排列选择性地切换所 述的循序模式或所述的随机模式;以及当满足一起烧条件时,执行所述的记录操作程序以将所述的数据区块记 录至一光盘片上,其中所述的循序模式所对应的所述的起烧条件,不同于所 述的随机模式所对应的所述的起烧条件。
12. 如权利要求11所述的光学储存媒体储存方法,其中,依据所述的存 储装置中所储存的所述的数据区块的排列选择性地切换所述的循序模式或所 述的随机模式更进一步包含-分析所述的存储装置中所储存的所述的数据区块以产生多个光盘写入工 作任务,其中各所述的光盘写入工作任务是关于所述的数据区块中多个具有连续的所述的目标地址的数据区块;以及计算所述的光盘写入工作任务以产生一任务数量。
13. 如权利要求12所述的光学储存媒体储存方法,其中,依据所述的存 储装置中所储存的所述的数据区块的排列选择性地切换所述的循序模式或所 述的随机模式更进一步包含,依据所述的任务数量以选择性地切换所述的循 序模式与所述的随机模式。
14. 如权利要求12所述的光学储存媒体储存方法,其中,依据所述的存 储装置中所储存的所述的数据区块的排列选择性地切换所述的循序模式或所 述的随机模式更进一步包含,当所述的任务数量大于"l",则切换所述的存 储装置至所述的随机模式。
15. 如权利要求12所述的光学储存媒体储存方法,其中,依据所述的存 储装置中所储存的所述的数据区块的排列选择性地切换所述的循序模式或所 述的随机模式更进一步包含,当所述的任务数量等于"0",则切换所述的存 储装置至所述的循序模式。
16. 如权利要求12所述的光学储存媒体储存方法,其中,依据所述的存储装置中所储存的所述的数据区块的排列选择性地切换所述的循序模式或所述的随机模式更进一步包含,当所述的任务数量等于"l",则检查新接收的 一写入命令中的一 目标地址是否与所述的光盘写入工作任务所对应的目标地 址相连续,如果检查结果为肯定,则切换所述的存储装置至所述的循序模式, 否则切换所述的存储装置至所述的随机模式。
17. 如权利要求11所述的光学储存媒体储存方法,其中所述的起烧条件 包含存储装置可用容量、存储装置距前次被存取时间间隔、距前次执行所述 的记录操作程序的时间间隔、或任务数量。
18. 如权利要求17所述的光学储存媒体储存方法,所述的方法更进一步包含:于所述的随机模式,当存储装置可用容量小于一第一容量临界值则被视为满足所述的起烧条件;于所述的循序模式,当存储装置可用容量小于一第二容量临界值则被视 为满足所述的起烧条件,其中所述的第一容量临界值小于所述的第二容量临 界值。
19. 如权利要求17所述的光学储存媒体储存方法,所述的方法更进一步包含:于所述的随机模式,当存储装置与上次被存取时间间隔大于一第一怠转临界值则被视为满足所述的起烧条件;于所述的循序模式,当存储装置与上次被存取时间间隔大于一第二怠转 临界值则被视为满足所述的起烧条件,其中所述的第一怠转临界值大于所述 的第二怠转临界值。
20. 如权利要求17所述的光学储存媒体储存方法,所述的方法更进一步 包含:于所述的随机模式,当距前次执行所述的记录操作程序的时间间隔大于 一第一临界值则被视为满足所述的起烧条件;于所述的循序模式,当距前次执行所述的记录操作程序的时间间隔大于一第二临界值则被视为满足所述的起烧条件,其中所述的第一临界值大于所 述的第二临界值。
说明书 :
光学储存装置及其存储装置管理方法
技术领域
背景技术
可录式光学储存媒体(光盘片),例如CD-R, CD-RW, DVD-R, DVD+R, DVD-RW, DVD+RW, DVDRAM, HDDVD以及Blue-Ray等等。图1是光学
储存装置120连接于主机110的功能方块图。主机110发出读取命令存R要求 光学储存装置120自一光盘片读取数据,或发出写入命令弁W要求光学储存 装置120将数据记录至该光盘片上。读取命令存R要求光学储存装置120读 取储存于该光盘片上的一目标地址的数据区块,写入命令存W要求光学储存 装置120将数据区块记录至该光盘片上的一目标地址。光学储存装置120基 本上包含一处理器122、 一存储装置124以及一控制单元126。存储装置124 通常区分为两区域,包含一读取暂存器130以及一写入暂存器132。读取暂 存器130依据读取命令弁R储存读取自该光盘片的数据,写入暂存器132依据 写入命令^W储存由主机IIO或该光盘片传送的数据。换言之,写入暂存器 132用于储存准备记录至该光盘片的数据。控制单元126具有一机械单元包 含一光学读取头(pick up head, PUH)、 一主轴电机以及其它控制装置(图未示), 控制单元126用于对该光盘片存取数据。
由于主轴电机旋转该光盘片的特性,现有的光学储存装置120很容易以 循序(sequentkl)的方式将数据记录至该光盘片上,因此准备记录至该光盘片 上的数据区块,根据目标位置依序储存于存储装置124中。而随机存取技术
7则使光学储存装置120能于该光盘片上不同地址处存取数据。然而,由于以 随机存取技术存取该光盘片时,主机110并不依照目标地址的顺序发出读取
命令存R或写入命令弁W,并且存储装置124釆用循环(ring)储存数据区块的方 式来储存数据,所以该光学读取头必须耗时的依照主机IIO所发出的命令的 顺序,奔别于该光盘片上不同地址以存取数据,因此于大量数据存取时,随 机存取技术的存取效率并不高。
发明内容
该处理器分析该存储装置中所储存的所述的这些数据区块以产生多个光 盘写入工作任务(disc write tasks),其中各该光盘写入工作任务是关于所述的
这些数据区块中多个具有连续的该目标地址的数据区块,以及计算所述的这 些光盘写入工作任务以产生一任务数量。并且该处理器依据该任务数量以选 择性地切换该循序模式与该随机模式。其中,当该任务数量大于"l",则切 换该存储装置至该随机模式;当该任务数量等于"0",则切换该存储装置至 该循序模式;当该任务数量等于"l",则检查新接收的一写入命令中的一目 标地址是否与该光盘写入工作任务所对应的目标地址相连续,如果检查结果 为肯定,则切换该存储装置至该循序模式,否则切换该存储装置至该随机模式。
该起烧条件包含存储装置可用容量(capacity)、存储装置距前次被存取时 间间隔(idletime)、距前次执行该记录操作程序的时间间隔(duration)、或任务 数量。于该随机模式,当存储装置可用容量小于一第一容量临界值、存储装 置与上次被存取时间间隔大于一第一怠转临界值、或距前次执行该记录操作 程序的时间间隔大于一第一临界值则被视为满足该起烧条件。相对的,于该 循序模式,当存储装置可用容量小于一第二容量临界值、存储装置与上次被 存取时间间隔大于一第二怠转临界值、或距前次执行该记录操作程序的时间 间隔大于一第二临界值则被视为满足该起烧条件。该第一容量临界值小于该 第二容量临界值。该第一怠转临界值大于该第二怠转临界值。该第一临界值 大于该第二临界值。
本发明另提供一种光学储存媒体存取方法,使用于一光学储存装置,所 述的方包含:接收多个写入命令,各所述的写入命令包含一数据区块以及一 目标地址;依据一循序模式或一随机模式储存所述的这些数据区块至一存储 装置;依据所述的这些写入命令安排一记录操作程序;依据所述的存储装置 中所储存的所述的这些数据区块的排列选择性地切换所述的循序模式或所述 的随机模式;以及当满足一起烧条件时,执行所述的记录操作程序以将所述 的这些数据区块记录至一光盘片上,其中所述的循序模式所对应的所述的起 烧条件,不同于所述的随机模式所对应的所述的起烧条件。
附图说明
图2A为本发明一实施例的光学储存装置;
图2B为本发明一实施例的光学储存媒体存取方法流程图;
图3A为写入表单及闲置表单的一实施例;
图3B为写入表单136b的另一实施例;
图4为一串列表单的一实施例;图5A为暂存器运用一向前串列表单的一实施例;
图5B写入表单150b的另一实施例;
图6A为储存操作程序的流程图;
图6B为数据区块接收操作程序流程图;
图6C为模式检测程序流程图;
图6D为优先顺序计算程序流程图;
图6E为计算该优先顺序值的一实施例;
图7为读取命令处理程序流程图;
图8为起烧条件检查程序流程图;
图9为记录操作程序流程图;
图IO为现有的错误处理程序流程图;
图11为本发明的错误处理程序流程图;以及
图12为本发明错误管理表单的一实施例。
附图标号-
110 主机 120 光学储存装置
122 处理器 124 存储装置
126 控制单元 130 读取暂存器
132 写入暂存器
136、 136a、 136b、 150a、 150b 写入表单
137 更新表单 138闲置表单 139 错误管理表单
140 暂存器
具体实施方式
当光学储存装置120接收一写入命令弁W时,该写入命令rw要求将一个 或多个写入数据区块^DW记录于光盘片上的一目标地址上,该光学储存装置 120首先将写入数据区块弁DW储存于暂存器140中,并且更新存储装置124 中的写入表单136、更新表单137、以及/或闲置表单138。写入表单136作 用为一查找表用以依据关于数据区块的一目标地址,管理储存于暂存器140 中的所有写入数据区块存DW。闲置表单138作用为另一查找表用以管理暂存 器140中闲置可利用的区块。更新表单137作用为另一查找表用以记录暂存 器140中最新被存取的区块。再者,错误管理表单139作用为另一査找表用 以记录写入光盘片失败的相关区块。写入表单136、更新表单137、以及闲置 表单138可以表单形式记录于存储装置124中,但本发明并不以此为限。其 它数据结构方式亦可适用于本发明,例如串列(linklist)。实现图2A架构的实 施方法将详述如下。
图2B为本发明一实施例的光学储存媒体存取方法流程图。本发明的光 学储存媒体存取方法流程图基本步骤节录成步骤201到步骤207。于步骤201, 光学储存装置120进入一起始状态。接着于步骤203执行一储存操作程序 (buffering operation),于该储存操作程序,光学储存装置120依据主机110 传送的写入命令^W将接收的写入数据区块^DW储存于暂存器140中,并且光学储存装置120依据主机110传送的读取命令#尺将接收的读取数据区块
#DR储存于暂存器140中。于步骤205中,检査一起烧条件是否满足,若"是" 则进入步骤207,执行一记录操作程序(recording operation),否则回到步骤 203。
当执行该储存操作程序时,主机110可能会随机发出写入命令弁W或读 取命令^R,并且可能不依照该目标地址的顺序发出读取命令^R或写入命令 #W。所述的这些读取命令弁R或写入命令弁W所对应的读取数据区块存DR或 写入数据区块弁DW皆被储存于暂存器140中,并且写入表单136、更新表单 137、以及闲置表单138亦随之被更新。如同本技术领域现有技术者所知,将 具有连续目标地址的数据区块集合起来一起记录至该光盘片,是较有效率的 记录操作程序。于本发明的一实施例中, 一光盘写入工作任务(disc write task) 关于一记录操作程序(recording operation),该记录操作程序连续地将至少一 数据区块弁DW记录在一光盘片上的一连续区域之上,为了要减少光驱寻轨动 作(seeking operation)以增进记录操作程序的效率,处理器122集合尚待记录 于光盘片且具有连续地址的数个数据区块,并且于一光盘写入工作任务中将 所述的这些具有连续地址的数据区块依序的记录至该光盘片中,结果所述的 这些数据区块被连续地记录于该光盘片中的一区段(segment)中。
特别地,写入表单136依据关于数据区块的一目标地址,管理储存于暂 存器140中的所有写入数据区块弁DW。并且处理器运用写入表单136以建立 光盘写入工作任务。图3A为写入表单136a及闲置表单138的一实施例。于 图3A中,多个数据区块分别储存于暂存器140的区块中,其中各区块中标 示A、 B、以及C表示储存于该区块的数据区块的目标地址。如图所示,处 理器122将暂存器140中数个具有连续目标地址的数据区块归类在一起以建 立一个光盘写入工作任务。例如,目标位置A、 A+l、 A+2的数据区块被归 类为第一光盘写入工作任务,目标位置B、 B+l的数据区块被归类为第二光 盘写入工作任务,以及目标位置C、 C+l、 C+2的数据区块被归类为第三光
12盘写入工作任务。如图所示,写入表单136a中包含暂存器指针(buffer index) 以及相对应的写入数据区块存DW的目标地址。虽然具有连续目标地址的写入 数据区块存DW的可能分散储存在暂存器140的不同区块中,通过写入表单 136a的协助,当新接收一写入数据区块弁DW时,处理器122可以很容易的 判断该新接收的写入数据区块弁DW是否与任何现存的光盘写入工作任务有 关系。此外,如图所示,对于闲置可用的区块,通过闲置表单138的协助, 处理器122可以很容易的找到闲置可用的区块。
图3B为写入表单136b的另一实施例。写入表单136b为写入表单136a 经过排序后的版本。经过排序后,写入表单136b中的数据列(entry)依照目标 地址的顺序排列。由于写入表单136b储存于存储装置124中,因为对存储装 置中的数据进行排序几乎不花费成本,因而使得对暂存器140的管理更为容 易。例如,当一新接收的写入数据区块肪W具有目标地址A+3,处理器122 由该闲置表单138中找出一可用区块中,例如暂存器指针"8"所代表的区 块,并将该新接收的写入数据区块^DW存入暂存器指针"8"所代表的区 块。接着于写入表单136b中增加一数据列记录其目标地址以及暂存器指针, 并且抹除闲置表单138中原暂存器指针"8"的数据列。于另一实施例中,前 述新增一数据列的写入表单136b可重新被排序,以产生一更新的写入表单。
图4为一串列表单(link list) 400的一实施例。于实际运用上,暂存器140 可包含一 串列表单,串列表单包含有向前串列表单(forward link list)以及向后 串列表单(backwardlinklist)。以向前串列表单为例,每个数据列本身往前指
向下一个数据列,而向后串列表单则是每个数据列本身往后指向前一个数据 列。运用串列表单的优点在于不需要如前述写入表单一般,需要进行排序, 如此可以更节省成本。实务上,向前串列表单及向后串列表单可以同时记录
于同一数据列中,以形成如图所示的双向串列表单。
图5A为暂存器140运用一向前串列表单的一实施例。图中写入表单150a 具有多个光盘写入工作任务数据列(task entry)。每个光盘写入工作任务数据列指出一起始暂存器指针,用以表示该光盘写入工作任务的起始目标地址的
数据区块,并且于暂存器140中,每个区块皆包含一指针(pointer)指向另一个 区块。例如,以光盘写入工作任务A为例,其光盘写入工作任务数据列指 出起始暂存器指针为"1",该区块"1"用以储存具有目标位置A的写入数 据区块存DW。并且该区块具有一指针指向暂存器指针"4"的区块,该区块 用以储存具有目标位置A+1的写入数据区块^DW,同理,具有目标位置A+1 的写入数据区块存DW指向下一个具有目标位置A+2的写入数据区块存DW。 而闲置表单亦可为另一串列表单。闲置表单144仅记录一闲置可用的区块, 通过串列表单将其它闲置可用的区块串连起来。运用串列表单,处理器122 可以更容易的处理复杂的新增数据,或移除数据。
图5B写入表单150b的另一实施例。本实施例中,写入表单150b运用 一向后串列表单的实施例。写入表单150b具有多个光盘写入工作任务数据列 (task entry)。每个光盘写入工作任务数据列指出一结尾暂存器指针,用以表 示该光盘写入工作任务的结尾目标地址的数据区块,并且于暂存器140中, 每个区块皆包含一指针(pointer)指向另一个区块。例如,以光盘写入工作任 务A为例,其光盘写入工作任务数据列指出结尾暂存器指针为"2",该区 块"2"用以储存具有目标位置A+2的写入数据区块^DW。并且该区块具有 一指针指向暂存器指针"4"的区块,该区块用以储存具有目标位置A+1的 写入数据区块存DW,同理,具有目标位置A+1的写入数据区块弁DW指向下 一个具有目标位置A的写入数据区块存DW。
图6A为储存操作程序(buffering operation)的流程图。处理器于步骤 601开始执行图2B步骤203的储存操作程序。于步骤603,当光学储存装置 120接收一写入命令弁W,接着于步骤605执行一数据区块弁DW接收操作程 序用以接收该数据区块弁DW。数据区块弁DW接收操作程序的详细实施例请 参阅图6B及相关说明。
当完成数据区块^DW接收操作程序,于步骤607执行一模式检测程序。
14于一实施例中,光学储存装置120以一循序模式或一随机模式将数据区块
#DW储存于暂存器140。如果所储存的数据区块弁DW排列方式符合该循序 模式,则设定该暂存器140以该循序模式储存所接收的数据区块^DW。反之, 当所储存的数据区块^DW的目标地址并不连续,则设定该暂存器140以该 随机模式储存所接收的数据区块存DW。模式检测程序的详细实施例请参阅图 6C及相关说明。
若步骤607模式检测程序的检测结果为该随机模式,处理器122分析存 储装置124中所储存的写入表单以产生多个光盘写入工作任务。由于控制单 元126以光盘写入工作任务为单位将相对应的数据区块存DW记录至该光盘 片上。为了要决定光盘写入工作任务的记录顺序,步骤609执行一优先顺序 计算程序以计算出每个光盘写入工作任务的一优先顺序值。该优先顺序值可 考虑不同的参数,详细实施例请参阅图6D及相关说明。
由于一写入命令^W可包含一个或多个数据区块弁DW于步骤611,处理 器122检查是否仍有数据区块弁DW尚未储存于暂存器140中,若是则回到 步骤605,否则结束储存操作程序。
图6B为数据区块弁DW接收操作程序流程图。处理器122于步骤621开 始执行图6A步骤605的数据区块弁DW接收操作程序,以储存所接收的数据 区块^DW于暂存器140。步骤623,处理器122检査新接收的数据区块存DW 是否已经储存于暂存器140中,如果"是",则执行步骤625,藉此处理器122 将新接收的数据区块弁DW储存于暂存器140中相同区块,以覆写方式储存该 新接收的数据区块弁DW于相同区块。若"否"则处理器122自该闲置表单中 分派一闲置可用区块,并将该新接收的数据区块存DW储存于该新分派的区 块。于一实施例中,于分派该闲置可用区块之前,步骤627检查暂存器104 的可用容量,如果无足够空间可储存新接收的数据区块弁DW,则步骤629 执行一空间释放程序以释放出更多储存空间。处理器122依据一预设方式, 参考例如区块存取率、或距前次存取区块时间等参数来释放特定区块以得到额外储存空间。在确认有足够空间可储存新接收的数据区块弁DW时,处理器
122执行步骤631,自该闲置表单中分派一闲置可用区块,并将该新接收的数 据区块弁D W储存于该新分派的区块。
于步骤633中,处理器122检查新接收的数据区块^DW是否有关于某 一已存在的光盘写入工作任务(disc write task)。根据该新接收的数据区块 #DW的该目标地址,处理器122检查写入表单136以确认该新接收的数据 区块存DW的该目标地址是否与某一已存在的光盘写入工作任务的结尾目标 地址或起始目标地址相连续。如果结果为"是",则执行步骤637,更新写 入表单136将新接收的数据区块弁DW新增到该有关联的光盘写入工作任务。
若该新接收的数据区块^DW的该目标地址与巳存在的第一光盘写入工 作任务的结尾目标地址相连续,并且该目标地址与已存在的第二光盘写入工 作任务的起始目标地址相连续。则执行步骤637更新写入表单136将新接收 的数据区块^DW以及第二光盘写入工作任务的所有数据区块存DW新增到该 第一光盘写入工作任务。反之,若处理器122并未发现新接收的数据区块 #DW的该目标地址与任何已存在的光盘写入工作任务的目标地址相连续,则 执行步骤635以产生一新光盘写入工作任务。当完成储存新接收的数据区块 #DW后,执行步骤639以更新该更新表单137。
如同写入表单136以及闲置表单138, 一更新表单137作用为一查找表 用以记录暂存器140中最新被存取的区块。如同前述,更新表单137可运用 如图5A所述的串列表单(linklist)的方式进行管理,通过指针(pointer)的协助 以分别连结最新被更新(latest updated)的写入数据区块存DW以及读取数据区 块弁DR。换言之,本发明的存储装置管理方式容许使用同一个暂存器140以 同时储存写入数据区块弁DW以及读取数据区块弁DR 。于步骤640结束数据 区块弁DW接收操作程序。
图6C为模式检测程序流程图。处理器122于步骤641开始执行图6A步 骤607的模式检测程序,为了决定要将该暂存器140设定成何种操作模式,于步骤643中,处理器122首先检测目前暂存器140的操作模式。若目前操 作模式为该循序模式,则执行步骤649,否则执行步骤645。步骤645用以计 算光盘写入工作任务的数量以产生一任务数量,并且当该任务数量大于"1" 时,则执行步骤651以将暂存器140设定为该随机模式。若该任务数量不大 于"1"时,则进行步骤647,以判断该任务数量是否等于"0",若该任务 数量等于"0",则执行步骤653以将暂存器140设定为该循序模式,若该任 务数量不等于"O",则执行步骤649。于步骤649,此时该任务数量等于"l", 亦即暂存器140中仅包含一个光盘写入工作任务,处理器122检查最新接收 的写入数据区块弁DW的该目标地址是否与该光盘写入工作任务的目标地址 相连续;如结果为"是"则执行步骤653以将暂存器140设定为该循序模式, 如结果为"否"则执行步骤651以将暂存器140设定为该随机模式。此外, 于执行步骤651时,如果目前暂存器140的操作模式为该循序模式时,于执 行步骤651时处理器122将会产生一写入表单136、 一更新表单137以及一 闲置表单138。然而,由于光学储存装置120持续的接收写入数据区块存DW 及读取数据区块弁DR,因此图6A中步骤605与步骤607可以同时平行处理。 因此,步骤607设定暂存器140的操作模式时,有必要参考暂存器140的目 前操作模式。于步骤640结束模式检测程序。于另一实施例中,步骤645可 以设为,当该任务数量大于等于"1"时,则执行步骤651以将暂存器140 设定为该随机模式。否则,进行步骤647。
图6D为优先顺序计算程序流程图。处理器122于步骤661开始执行图 6A步骤609的优先顺序计算程序,如同前述,为了要决定光盘写入工作任务 的记录顺序,图6A步骤609执行一优先顺序计算程序以计算出每个光盘写 入工作任务的一优先顺序值。于步骤663,处理器122计算每个光盘写入工 作任务中的所述的这些写入数据区块弁DW的存取率(hit mte),若对于光盘写 入工作任务中的任何一个写入数据区块弁DW的进行任何动作,例如存入、覆 盖或读取,皆视为存取一次,因此使得该光盘写入工作任务的存取率增加。
17对于一储存于暂存器140中的一写入数据区块存DW而言,其有机会在被记录
至该光盘片之前先由主机110所要求的读取命令^R所读取,因此这种情况也
必须计算至该存取率。于另一实施例中,该存取率可进一步分区分为一读取
存取率(read hit rate)以及一写入存取率(write hit rate)。对写入表单136而言, 该写入存取率的计算以光盘写入工作任务为计算单位。对更新表单137而言, 该读取存取率的计算以读取数据区块^DR为计算单位。
于步骤665,对于每个光盘写入工作任务而言,为了计算该优先顺序值 必须考虑其所对应的数据区块的总数量。实务上,对一光盘写入工作任务而 言,于记录该光盘写入工作任务中的所述的这些写入数据区块弁DW到该光盘 片上时,采用循序存取的模式,依照所述的这些写入数据区块^DW的目标位 置的顺序,循序的记录到该光盘片上。因此,若光盘写入工作任务所对应的 数据区块的数量越多,则控制模块126可以以较少的寻轨动作(tracking seeking)记录/读取较多的数据区块,所以效率越高。数据区块的总数量为该 光盘写入工作任务效能的参考指针,因此需要考虑此参数对该优先顺序值的 影响。
于步骤667,对于每个光盘写入工作任务而言,为了计算该优先顺序值 必须考虑该光学读取头目前所在地址与该光盘写入工作任务的一起始目标地 址之间的距离。当执行一光盘写入工作任务时,光学读取头目前的地址与该 光盘写入工作任务的一起始目标地址之间的距离会影响整体的效率,距离越 远效率越低,距离越近效率越高。于步骤669,处理器122依据前述的存取 率、数据区块的总数量以及与光学读取头的距离分别计算出各个光盘写入工 作任务的该优先顺序值。计算优先顺序值的方法与使用的参数可由领域中具 有通常技术能力者依照系统的需求而分别设定,本发明并不以本实施例为限。
图6E为计算该优先顺序值的一实施例。将前述的计算参数包含存取率、 数据区块的总数量以及与光学读取头的距离分别乘以一权重(weighting)Wa,
Wb, Wc之后相加起来以产生该优先顺序值。所述的这些权重Wa, Wb, Wc可依主机110发出的命令的状态予以调整。例如,当主机iio所发出的多数写
入命令弁W皆具有连续的该目标地址,可以被归类为同一光盘写入工作任务,
则权重Wb可被设为等于权重Wc,并且权重Wb大于权重Wa。于另一实施 例中,所述的这些权重Wa, Wb, Wc可依处理器122的控制而予以调整,并 且可以通过检査光学读取头的数据通过率(throughput)来最佳化所述的这些 权重Wa, Wb, Wc。
图7为读取命令处理程序流程图。对于图2B步骤203的储存操作程序 而言,如前所述,图6A步骤603说明了处理写入命令^W时的处理实施例。 然而,对读取命令而言,处理器122于步骤701开始执行图2B步骤203的 储存操作程序。于步骤703,光学储存装置120接收自主机发出的一读取命 令弁R,要求自该光盘片上的目标地址处读取数据,于步骤705处理器122首 先检查主机所要求的读取数据区块^DR是否已经储存于暂存器140中,通过 检査更新表单137中的数据列(entry)可以得知该读取数据区块^DR是否已经 储存于暂存器140中。若结果为"是",则执行步骤707将储存于暂存器140 中该读取数据区块^DR传送给主机110。 一般而言暂存器140中所储存的数 据的更新与管理可以参考该数据的使用历史记录,当一区块的数据被存取时, 该区块数据的使用历史记录例如前次存取时间、或存取频率皆会被更新。同 样的,本发明的实施例中,于步骤707之后,步骤709及执行更新该更新表 单137的程序。
若主机所要求的读取数据区块弁DR并不储存于暂存器140中,则处理器 122必需执行步骤715,以自该光盘片上读取该读取数据区块存DR并先储存 至暂存器140后再传送至主机110。接着,执行步骤717以更新该更新表单 137。于执行步骤715之前,可选择性的执行步骤711,步骤711检查暂存 器104的可用容量,如果无足够空间可储存新接收的读取数据区块^DR,则 步骤713执行一空间释放程序以释放出更多储存空间。于一实施例中,处理 器122参照写入列表136以及更新列表137的数据列,并释放那些并非用于
19储存写入数据区块弁DW以及并非用于储存最新更新的读取数据区块存DR的 区块空间。
由于一读取命令弁R也许要求一个或多个数据区块^DR,因此处理器122 于步骤719检查是否仍有数据区块弁DR尚未储存于暂存器140中,若是则回 到步骤705,否则结束储存操作程序。
图8为起烧条件检査程序流程图。如前所述,处理器122于步骤801开 始执行图2B步骤205的起烧条件检查程序,与一实施例中,该起烧条件可 包含存储装置可用容量(capacity)、存储装置距前一次被存取时间间隔(idle time)、距前次执行该记录操作程序的时间间隔(dumtion)、或任务数量。于歩 骤803,处理器122将暂存器140的可用容量(capacity)与一容量临界值相比 较,当暂存器140的可用容量(capacity)小于该容量临界值时,则该处理器122 判断该起烧条件已满足,则执行步骤813。于歩骤813,处理器122对待烧录 数据区块进行数据处理,包含编码(encoding)以及调制(modulation)。其中该 容量临界值于不同的存储装置操作模式下对应不同的值。 一般而言,当存储 装置处于该随机模式时,光学储存装置120会希望尽量多接收一些写入命令 #W以期待能搜集到够多的具有连续地址写入数据区块存DW的以改善效率。 因此,该随机模式所对应的第一容量临界值,会小于该循序模式所对应的第 二容量临界值。
于步骤805,处理器122将暂存器140距上次被存取时间间隔(idle time) 与一怠转临界值相比较,当暂存器140距上次被存取时间间隔大于该怠转临 界值时,则该处理器122判断该起烧条件已满足,则执行步骤813。以该循 序模式为例,因暂存器140逻辑上仅包含一个光盘写入工作任务,因此暂存 器140经常的需要被存取以接收来自主机的数据,并将以接收的数据循序的 记录至该光盘片上。而当暂存器140为该随机模式时,因为希望尽量多接收 一些写入命令^W以期待能搜集到够多的具有连续地址写入数据区块光盘写 入工作任务,光盘储存装置120有机会处于一等待状态,因此该随机模式所对应的第一怠转临界值,会大于该循序模式所对应的第二怠转临界值。
于步骤807,处理器122将控制单元126距前次执行该记录操作程序的 时间间隔与一临界值相比较,当控制单元126距前次执行该记录操作程序的 时间间隔大于该临界值时,则该处理器122判断该起烧条件已满足,则执行 步骤813。该随机模式所对应的第一临界值,会大于该循序模式所对应的第 二临界值。
由于暂存器140的容量也限制,并且过多的光盘写入工作任务以会增加 处理器122的运算时间。因此于步骤809,处理器122将暂存器140所对应 的该任务数量与一临界任务数量相比较,当该任务数量大于该任务数量临界 值时,则该处理器122判断该起烧条件已满足,则执行步骤813。
若步骤803至步骤809中所有的判断条件皆不满足,则处理器122执行 步骤811并结束起烧条件检查程序。
图9为记录操作程序流程图。当完成储存操作程序(buffering operation) 并且至少满足一起烧条件时,处理器122于步骤901开始执行图2B步骤207 的记录操作程序,于步骤卯3,处理器122检测目前暂存器140的操作模式。 若为循序模式则执行步骤913以循序存取模式将所储存的写入数据区块弁DW
循序记录至该光盘片上。
若为随机模式则执行步骤905到步骤911。于步骤905中,根据对应所
述的这些光盘写入工作任务的优先顺序值挑选符合条件的光盘写入工作任 务。于一实施例中,处理器122挑选具有最高优先顺序值的光盘写入工作任 务。于另一实施例中,处理器122挑选优先顺序值超过一临界优先顺序值的 光盘写入工作任务,并且该临界优先顺序值可以依据暂存器140的状态,例 如暂存器140可用容量(capacity)、任务数量,而弹性调整。当暂存器140可 用容量低时,则调低该临界优先顺序值;当任务数量高时,则调低该临界优 先顺序值。步骤卯7为一选择性步骤,处理器122将所选择的光盘写入工作 任务所对应的写入数据区块弁DW循序复制到位于该存储器装置124中的另一环形缓冲存储器(ring buffer),接着执行步骤909将写入数据区块gDW进行 编码以转换为一除错码格式(error correction code),并经过调制(modulation) 后,透过该光学读取头储存于该光盘片上。
于步骤911检查是否仍有光盘写入工作任务尚未进行记录操作程序,若 是则回到步骤905,否则结束记录操作程序。
于步骤909中,当记录一写入数据区块弁DW于该光盘片上一缺陷区域 (defect area)时,该写入数据区块弁DW无法正确的记录于该缺陷区域。传统 上,写入数据区块弁DW循序逐一记录于该光盘片上,当发现该缺陷区域时, 该控制单元126即移动该光学读取头至一备援区域(spare area),将无法正确 的记录于该缺陷区域上的该写入数据区块弁DW记录至该备援区域,接着再 回到接续于该缺陷区域的地址,继续记录下一个写入数据区块弁DW;或者当 发现该缺陷区域时先将无法正确的记录于该缺陷区域上的该写入数据区块 #DW记录至另一存储装置中,并由另一个光盘写入工作任务负责将该写入 数据区块^DW记录至该备援区域。
图10为现有的错误处理程序流程图,处理器执行歩骤A01以启动一记 录操作程序。光盘写入工作任务的写入数据区块^DW依序经由步骤A03至 步骤A09以记录至该光盘片上。于步骤A03,该光学读取头记录一写入数据 区块^DW至该光盘片上,于步骤A05检查记录于该光盘片上的该写入数据 区块^DW是否正确有无错误发生。若有错误发生则执行步骤A07以将该写 入数据区块^DW记录至该备援区域,或者将该写入数据区块存DW记录至另 一存储装置中,接着移动该光学读取头回到接续于该缺陷区域的地址,继续 记录下一个写入数据区块存DW。若无错误发生,则执行步骤A09,处理器122 检查是否仍有该光盘写入工作任务的写入数据区块弁DW尚未记录于该光盘 片上,若"是"则回到步骤A03,否则结束记录操作程序。
很明显的,当发现光盘片有缺陷,而控制模块126为了要处理这种错误 必须让该光学读取头奔别于一般记录区域与备援区域之间,因此步骤A07会
22成为光学储存装置120的运作瓶颈。尤其是当有许多缺陷发生时,复杂的机 构控制与运动将成为光学储存装置120的负担,而大大降低了操作的效率。
此外,若釆取先将无法正确的记录于该缺陷区域上的该写入数据区块存DW
记录至另一存储装置中的作法仍然需要增加存储装置的容量因而使成本增
为了要改善上述的缺点,本发明提供一错误管理表单(defect list) 139用 以管理因遇到光盘片缺陷区域而无法正确记录的写入数据区块^DW 。图11 为本发明的错误处理程序流程图。步骤AOl、歩骤A03以及步骤A05与图 IO的步骤相同,因此于步骤A05之后, 一写入数据区块弁DW以被记录于该 光盘片上并且也已经过正确性的验证与检査。于步骤A08中,该光学读取头 并不需奔别于一般记录区域与备援区域之间,亦不需将该写入数据区块弁DW 复制到另一存储装置中。处理器122仅需更新该错误管理表单139即可继续 进行下一个写入数据区块弁DW的记录程序。藉此,该光学读取头可无中断的 循序的记录所有的写入数据区块弁DW。并且于步骤AIO,所有因光盘片缺陷 而无法顺利记录至该一般记录区域的写入数据区块弁DW亦可以连续的记录 于该备援区域。因此,无论该光盘片损毁的如何严重,通过本方法该光学读 取头仍然能够循序的将数据记录至该光盘片上。
图12为本发明错误管理表单139的一实施例。串列方式(linklist)数据结 构亦适用于本实施例的错误管理表单139。当一缺陷发生于地址A+1时,处 理器122于错误管理表单139中增加一数据列(entry)。其后,当发现另一个 缺陷地址C+1时,目标位置A+1的写入数据区块弁DW中的一指针(pointer) 则指向下一个具有目标位置C+l的写入数据区块^DW。当后续又有另一个 缺陷地址C+2时,目标位置C+1的写入数据区块弁DW中的一指针则指向下 一个具有目标位置C+2的写入数据区块存DW。本说明书中为了能清楚说明 串列数据结构的数据链路方式,因而绘制相关图示以利说明,然于实施本发 明时并不以本说明书为限。虽然本发明以较佳实施例说明如上,但可以理解的是本发明的范围未必 如此限定。相对的,任何基于相同精神或对现有技术者为显而易见的改良皆 在本发明涵盖范围内。因此专利要求范围必须以最广义的方式解读。