本发明专利技术提供一种在烧录数据时,将数据自动编码为一序列固定封包的方法及相关可烧录光驱。本发明专利技术是利用一计数器以纪录所有欲烧数据的区块数,及另一计数器纪录该欲烧数据中未编码为固定封包的数据区块数,以快速的处理数据而不需花费额外的时间在产生固定封包,并可减少该可烧录光驱的缓冲存储器发生数据不足的机会,达到快速且正确的编码方式。(*该技术在2024年保护过期,可自由使用*)
【技术实现步骤摘要】
本专利技术涉及一种以固定封包方式烧录数据的方法及相关可烧录光驱,特别涉及一种藉计数器统计未编码的数据以快速将欲烧数据编码为固定封包的方法及相关可烧录光驱。
技术介绍
现代的信息社会中,体积小、重量轻、储存密度高而又成本低廉的光盘片,已成为最普及的非易失性储存媒体之一。自从高倍速光盘烧录器的普及,缓冲区数据不足(Buffer Under Run)的问题便一直困扰着所有的烧录器使用者。简单的说,缓冲区数据不足(Buffer Under Run)的发生原因就是因为烧录速度大于计算机数据的流速。当开始一个烧录工作时,烧录程序会将欲烧录的数据从硬盘或另外一片光盘片里面读取出来,暂存在烧录器的缓冲区中,然后烧录器的激光头会将这些数据写到光盘片上。烧录器缓冲区的数据来自于计算机或是光驱,但其数据不一定是连续而稳定的,所以缓冲区里的数据会有时多,有时少。但是烧录中缓冲区绝对不能空掉,一旦缓冲区空掉,乃是因为计算机给的数据不够快,这时候便发生缓冲区数据不足(BufferUnder Run)的错误。缓冲区数据不足(Buffer Under Run)常常发生在烧录中开启新的应用程序时。当一个新的应用程序被开启的时候,计算机必须暂停传送数据的工作,去读取硬盘开启程序,并分配中央处理器(CPU)的资源去处理开启的程序,这时而烧录的动作仍在继续着,此时缓冲区里面暂存的数据若用完,造成烧录器无数据可烧的情况,就是缓冲区数据不足(Buffer Under Run)。另外一个发生缓冲区数据不足(Buffer Under Run)的原因是读取的来源发生错误。例如母片光盘有刮痕,来源光驱重新定位找寻轨道时,缓冲区数据不足(Buffer Under Run)的错误就发生了。为避免烧录数据时,烧录速度大于计算机数据的流速而造成缓冲区数据不足(Buffer Under Run)的错误,因此已知光驱以一固定封包(Fixed Packet)烧录方式解决此项问题。此种写入方式是将数据分割成许多固定长度的封包,烧录时将封包写入光盘,光盘上每两个封包的数据中间会插入一个数据区,用以连结每一个封包的数据。固定封包烧录方式可以完全避免缓冲区数据不足(Buffer Under Run)的状况。然而,如何以较少资源、较高效率达到固定封包烧录方式也就成为信息厂商研发的重点。请参考图1,图1为已知固定封包10的示意图。固定封包10包含有一前编码数据FC(一般为5个区块)、一部分欲写数据PD(一般为32个区块)及一后编码数据BC(一般为2个区块)。前编码数据FC用以表示固定封包10的开始,部分欲写数据PD是一欲写数据中已编码至固定封包10的部分数据,而后编码数据BC用以表示固定封包10的结束。已知光驱采固定封包方式烧录数据时,会先在计算机的硬盘中对欲写序列数据作搬移,并在固定长度的数据(一般为32个区块)之前插入前编码数据FC及之后插入后编码数据BC以编码成如图1所示的固定封包10(共39个区块)。经过数据搬移、及插入前、后编码数据的序列数据,就成为多个固定封包组成的序列,再将每个固定封包烧录至光盘片中。然而,上述的已知技术需在计算机中对数据作搬移,然后插入前编码数据FC及后编码数据BC。因此,必需耗费相当的资源以处理数据,尤其当使用者一边烧录,一边执行其它程序时,势必大幅降低烧录速度及程序执行效率。再者,当数据因搬移产生错误时,甚至会造成烧录错误。此外,在另一种已知技术中,则是在可烧录光驱中设置一多任务器MUX,多任务器MUX中的内存收满部分欲写数据PD(一般为32个区块)后,即由另一个处理模块将部分欲写数据PD之前端加上一前编码数据FC,及后端加上一后编码数据BC以形成固定封包10,然后再接收其它数据。然而,以多任务器MUX编码数据的装置无法有效率的将数据编码为固定封包10,更影响了整体烧录的速度。总而言之,已知技术以固定封包方式烧录数据时,无法有效率的将数据编码为固定封包,甚至会造成烧录错误,影响烧录数据的正确性。
技术实现思路
因此,本专利技术的主要目的即在于提供一种可以将欲烧数据快速编码为固定封包的方法及相关可烧录光驱。本专利技术揭露一种将一序列数据编码为多个固定封包以烧录至一光盘的方法,其包含有(a)当接收到一序列数据的一笔数据时,调整一第一区块计数;(b)比较该第一区块计数与一预设区决数量;(c)在步骤(b)的结果显示该第一区块计数符合该预设区块数量时,将已接收但尚未编码的数据编码为一固定封包;以及(d)将已编码的固定封包烧录至该光盘中。附图说明图1为一固定封包的示意图。图2为本专利技术可烧录光驱的功能方块图。图3为本专利技术一实施例的流程图。图4为本专利技术另一实施例的流程图。附图符号说明10固定封包 20可烧录光驱22处理电路 23控制模块24编码模块 26烧录模块28暂存装置 30、32计数器34比较电路 36数据源40、50流程402、404、406、408、410、412、414、416、418、420、502、504、506、508、510、512、514、516、518、520步骤FC前编码数据 PD部份欲写数据BC后编码数据具体实施方式请参考图2,图2为本专利技术自动编码固定封包的可烧录光驱20的功能方块示意图。可烧录光驱20设有一处理电路22、一编码模块24及一烧录模块26。处理电路22包含有一控制模块23、一暂存装置28、一计数器30、一计数器32及一比较电路34。控制模块23控制处理电路22的运作;暂存装置28用以暂存由一数据源36输出的数据,并由控制模块23控制以将其暂存的数据输出至编码模块24;计数器30纪录一应编码区块计数W0,而计数器32纪录一待编码区块计数B0;计数W0是一欲写数据的区块总数,而计数B0是由处理电路22接收而尚未被编码的数据的区块总数。计数器30、32可在处理电路22接收到一区块数据时自动调整(增加或减少)其计数W0、B0,并可由控制模块23控制以调整计数W0、B0。比较电路34用以判断计数器30、32的计数W0、B0是否达到一默认值,并将判断结果传至控制模块23。控制模块23藉比较电路34输出的判断结果以控制暂存装置28是否可将其暂存的数据输出至编码模块24。藉由控制模块23、暂存装置28、计数器30、计数器32及比较电路34的运作,处理电路22可自动将数据源36传来的多个区块数据输出为一固定区块长度的数据至编码模块24。编码模块24将接收到的数据前后各加上不同区块长度的数据,并传至烧录模块26以烧录至一光盘片上。举例来说,前述的固定封包10(请参考图1)包含有一前编码数据FC(一般为5个区块)、一部分欲写数据PD(一般为32个区块)及一后编码数据BC(一般为2个区块)。处理电路22自数据源36接收到32个区块的数据后,即传送至编码模块24。编码模块24在该32个区块的数据之前加上一5区块长度的前编码数据FC,及之后加上一2区块长度的后编码数据BC以输出为一固定区块长度(39个区块)的封包,并将该39(5+32+2)个区块的数据传送至烧录模块26并烧录至光盘片上。关于本专利技术将数据源36的欲写数据自动编码为固定封包的流程,请参考图3(及图2)。图3为图2中可烧录光驱20将数据自动编码为固定封包的一较佳本文档来自技高网...
【技术保护点】
一种将一序列数据编码为多个固定封包以烧录至一光盘的方法,其包含有下列步骤:(a)当接收到该序列数据的一区块数据时,调整一第一区块计数;(b)比较该第一区块计数与一预设区块数量;(c)在步骤(b)的结果显示该第一区块计 数符合该预设区块数量时,将已接收但尚未编码的数据编码为一固定封包;以及(d)将已编码的固定封包烧录至该光盘中。
【技术特征摘要】
1.一种将一序列数据编码为多个固定封包以烧录至一光盘的方法,其包含有下列步骤(a)当接收到该序列数据的一区块数据时,调整一第一区块计数;(b)比较该第一区块计数与一预设区块数量;(c)在步骤(b)的结果显示该第一区块计数符合该预设区块数量时,将已接收但尚未编码的数据编码为一固定封包;以及(d)将已编码的固定封包烧录至该光盘中。2.如权利要求1所述的方法,其在步骤(a)中,当接收到该序列数据的一区块数据时,另调整一第二区块计数;以及在步骤(c)中,在步骤(b)的结果显示该第一区块计数达到该预设区块数量时,另依据一前编码数及一后编码数调整该第二区块计数。3.如权利要求2所述的方法,其在步骤(c)中,在步骤(b)的结果显示该第一区块计数达到该预设区块数量时,将已接收但尚未编码的数据的前端加上等于该前编码数的数目的区块,...
【专利技术属性】
技术研发人员:张吉祥,杨振宁,
申请(专利权)人:联发科技股份有限公司,
类型:发明
国别省市:71[中国|台湾]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。