改善数据传输效率的方法

文档序号:6651025阅读:497来源:国知局
专利名称:改善数据传输效率的方法
技术领域
本发明关于一种改善数据传输效率的方法,特别是一种应用于多媒体播放装置的改善数据传输效率的方法。
背景技术
请参考图1,其为传统数字光盘播放装置(Digital Versatile Discplayer,DVD player)100的示意图。在不提及先前技术揭露的情形下,数字光盘播放装置100的部分结构已予以简化省略。一数字光盘播放装置100大体包含一动态随机存取内存(dynamic random access memory,DRAM)104及一芯片(chip)108,其中动态随机存取内存104内有一环缓冲区(ring buffer)106,而芯片108内有一解码器(decoder)110。数字光盘播放装置100用来读取盘片102上所储存的数据,芯片108会将盘片102所储存的数据先写入至环缓冲区106,每当写入数据写满16个区段(sector)之后,再将这些储存的数据传送回芯片108内的解码器110解码,最后将已解码的数据传输至主机112,作为后续数据处理运算之用。
请参考图2,其为环缓冲区106内部的地址对应至盘片102地址的示意图。在此一实施例中,环缓冲区106的大小为160个区段(sector)。如图所示,芯片108会将盘片102所储存的数据持续地写入至环缓冲区106,首先由地址0开始写入数据,直到第160个区段都被写满。之后,写入数据会再从地址0持续地写入并覆盖掉之前所写入的数据,也因此被称为环缓冲区。
在环缓冲区200内,写入地址(write index)210为写入数据的地址,解码地址(decode index)212为解码已写入的数据的地址,主机地址(host index)214为传输已解码的数据至主机的地址。此外,数据空白区(unused data area)202为写入地址前的区域,亦表示此区尚未存放任何数据。未解码数据区(un-decoded data area)204是介于写入地址210与解码地址212之间的区域,代表已写入环缓冲区200但尚未解码的数据区。未传输已解码数据区(un-transferred decoded dataarea)206是介于解码地址212与主机地址214之间的区域,代表尚未传输至主机的已解码数据区。相反地,已传输解码数据区(transferreddecoded data area)208是介于主机地址214与写入地址210之间的区域,其代表已传输至主机的已解码数据区。
一般而言,主机112会指示芯片108读取盘片102上某一地址(在本实施例中为请求数据的地址216)的数据,则该对应地址的请求数据会在环缓冲区106中等待被解码后再传输至主机112。在公知技术中,请求数据的地址216对应的请求数据位于未传输已解码数据区206,称为高速缓存成功(cache hit),则请求数据将直接传输至主机112。若请求数据的地址216对应的请求数据未位于未传输已解码数据区206,称为高速缓存失败(cache miss),则主机112需再次从盘片102读取请求数据的地址216。在此一实施例中,一缓冲起始地址(buffer start address)218为主机地址214所对应至盘片102的地址。
图3为先前技术一实施例的流程图。首先,主机112指示芯片108读取一请求数据的地址216(方块302),而后侦测请求数据的地址216对应的请求数据是否位于未传输已解码数据区206(方块304)。若请求数据没有位于未传输已解码数据区206,则判定为高速缓存失败,则主机112指示芯片108重新从盘片102读取请求数据的地址216(方块306)。若请求数据位于未传输已解码数据区206,则再判断主机地址214是否指向请求数据的地址216(方块308),若主机地址214没有指向请求数据的地址216,则更正主机地址214使之指向请求数据的地址216(方块310),而后从主机地址214读取请求数据(方块312)。此外,若主机地址214已指向请求数据的地址216,则直接从主机地址214读取请求数据(方块312)。
基于上述,在公知技术中,当请求数据落入已传输解码数据区208时,由于不确定请求数据是否还在已传输解码数据区208中,或是已经传送至主机112,甚至当请求数据在已传输解码数据区208中也可能会被再写入的数据覆盖掉,此时会判定此种情况为高速缓存失败,需再从盘片102读取请求数据的地址216,亦即需执行寻轨(seeking)、聚焦(focusing)、循轨(tracking)等动作来读取请求数据的地址216。由此可见,由于播放装置100须再从盘片102读取数据,会使播放速度变慢,而将看到影像停顿的现象,进而降低计算机处理数据的效率。

发明内容
本发明提供一种改善数据传输效率的方法,特别是提供一种应用于多媒体播放装置的改善数据传输效率的方法。
基于上述,本发明提供一种应用于多媒体播放装置的改善数据传输效率的方法,此方法包含读取一请求数据的地址;以及侦测该请求数据的地址是否大于一初始读取地址;其中当该请求数据的地址大于该初始读取地址,则判断该请求数据是否位于一已传输解码数据区,否,则重新读取该请求数据的地址,并更新该初始读取地址。当该请求数据没有位于该已传输解码数据区时,则侦测一主机地址是否指向该请求数据的地址;以及当该请求数据位于该已传输解码数据区时,则判断该请求数据是否位于一临界区。当该请求数据位于该临界区时,则判定为高速缓存失败,并重新读取该请求数据的地址,并更新该初始读取地址。当该请求数据未位于该临界区时,则更正该主机地址使之指向该请求数据的地址;以及判定高速缓存成功,从该主机地址读取该请求数据。当侦测到该主机地址指向该请求数据的地址,则判定高速缓存成功,从该主机地址读取该请求数据;否,则先更正该主机地址使之指向该请求数据的地址,再判定高速缓存成功,从该主机地址读取该请求数据。
依本发明一实施例中的应用于多媒体播放装置的改善数据传输效率的方法,若所述请求数据位于所述已传输解码数据区内的所述临界区,更包含判断一写入数据的动作是否停止;若停止,则先更正所述主机地址使之指向所述请求数据的地址,再判定高速缓存成功并从所述主机地址读取所述请求数据;以及若未停止,则判定为高速缓存失败,重新读取所述请求数据的地址并更新所述初始读取地址。
兹配合图式将本发明的较佳实施例详细说明如下,但是此说明仅用来说明本发明,而非对本发明的权利范围作任何的限制。


图1为一传统数字光盘播放装置的示意图;图2为先前技术的一实施例的示意图;图3为先前技术的一实施例的流程图;图4为本发明的一实施例的示意图;图5为本发明的另一实施例的示意图;图6为本发明的一实施例的流程图;以及图7为本发明的另一实施例的流程图。
组件符号说明100数字光盘播放装置102盘片104动态随机存取内存106环缓冲区108芯片110解码器112主机202、402数据空白区204、404未解码数据区206、406未传输已解码数据区208、408已传输解码数据区210、410写入地址 212、412解码地址214、414主机地址 216、418请求数据的地址218、422缓冲起始地址 302~312步骤400环缓冲区416初始读取地址602~618步骤 702~716步骤具体实施方式
本发明提供一种应用于多媒体播放装置的改善数据传输效率的方法。以下兹列举一较佳实施例以说明本发明,然熟悉此项技术者皆知此仅为一举例,而非用以限制发明自身,有关此较佳实施例的内容详述如下。
请参照第4图,其为本发明的一实施例的示意图。在多媒体播放装置内的一环缓冲区400,设定一初始读取地址(cache start address)416,其为读取盘片102内的数据的第一个读取地址,同时相对应至环缓冲区400内的地址0之处。举例来说,假设数字光盘播放装置内的环缓冲区400的大小为160个区段,且此次由盘片102第200个区段开始读取至第400个区段,则第200个区段便为此次读取的第一个读取地址,亦即为初始读取地址416。直到高速缓存失败后,才会重新设定初始读取地址416。因此,当主机指示读取请求数据的地址418时,若请求数据的地址418小于初始读取地址416,主机会判定为高速缓存失败,因此需要重新从盘片102读取请求数据的地址418并更新初始读取地址416。若请求数据的地址418大于初始读取地址416,即为高速缓存成功,代表请求数据的地址418位于未传输已解码数据区406或是已传输解码数据区408,则可分别从未传输已解码数据区406或是已传输解码数据区408内读取请求数据。举例来说,假设初始读取地址416为第4个区段,而请求数据的地址418为第1个区段。由于初始读取地址416为每次循序读取数据的第一个读取地址,因此在第4个区段之前的位置可能为数据空白区402。此时请求数据的地址418小于初始读取地址416,表示请求数据的地址418在此次读取过程中从未被读取过,以致于被判定为高速缓存失败,需再从盘片102读取请求数据的地址418。倘若初始读取地址416为第4个区段,而请求数据的地址418为第8个区段,由于请求数据的地址418大于初始读取地址416,所以请求数据的地址418可能位于已传输解码数据区408或是未传输已解码数据区406内,于是判定为高速缓存成功,可从这些数据区中读取请求数据。此外,多媒体播放装置可为数字影像录放器或数字影像播放器。
请参照第5图,其为本发明的另一实施例的示意图。其架构大致与第4图雷同,且在此较佳实施例中(请参照图4),请求数据的地址418需大于初始读取地址416,而图5所示为环缓冲区400已被写满后的示意图。一临界区420位于已传输解码数据区408,其大小为写入地址410之前的m个区段,例如临界区420的大小为写入地址410之前的5个区段。然熟悉此项技术者皆知此仅为一举例,而非用以限定发明自身,熟悉此技术者可依据实际应用而变更所需的数值。若请求数据位于已传输解码数据区408内的临界区420时,且一写入标记已被设置,则表示写入动作正在进行,此时读取到的请求数据可能会被再写入的数据覆盖掉,以致于无法读取到原本的请求数据,因此主机112会判定为高速缓存失败;若请求数据位于已传输解码数据区408内的临界区420时,且写入标记没有被设置时,表示目前无写入数据的动作,此时主机112会判定为高速缓存成功。
举例来说,假设初始读取地址416为第50个区段,未解码数据区404的大小为20个区段,而未传输已解码数据区406的大小为10个区段,若请求数据的地址418为第200个区段,缓冲起始地址422为第360个区段。计算缓冲起始地址422与请求数据的地址418间的距离为160个区段(360-200=160)。缓冲起始地址422扣除未传输已解码数据区406(10个区段)与未解码数据区404的大小(20个区段),得到的数值为已传输解码数据区408的大小,亦为130个区段(160-10-20=130)。上述缓冲起始地址422与请求数据的地址418相距(160个区段)大于已传输解码数据区408(130个区段),表示请求数据已被写入地址410写入其它的数据,而主机112会判定为高速缓存失败。假设请求数据为第280个区段,缓冲起始地址422尚为第360个区段,而缓冲起始地址422(第360个区段)与请求数据的地址418(第280个区段)的间距小于已传输解码数据区408(130个区段),表示请求数据位于已传输解码数据区408,则主机112会判定为高速缓存成功。此外,延续上述的实施例,再举一较佳实施例,已知上述已传输解码数据区408的大小为130个区段,若请求数据的地址418为第231个区段,计算缓冲起始地址422(第360区段)与请求数据的地址418(第231区段)的相距为129个区段(360-231=129)。由于此区段位于写入地址410之前一格,若写入标记被设置时,则表示写入动作正在进行,因此主机112会判定为高速缓存失败;若写入标记没有被设置时,则表示目前无写入数据的动作,此时主机112会判定为高速缓存成功。此外,再列举一另一实施例,若请求数据位于已传输解码数据区408内的临界区420时,不管写入数据的动作是否进行,主机112直接判定为高速缓存失败,再从盘片102读取请求数据的地址418。在此,为了防止请求数据不为原本的写入数据(已被覆盖上新的数据),因此设置一临界区以避免读取到非预设的请求数据。
图6为本发明提出的一种改善数据传输效率的方法的流程图。当主机112指示芯片108读取请求数据的地址418(方块602),而后侦测请求数据的地址418是否大于初始读取地址416(方块604),若请求数据的地址418没有大于初始读取的地址416,则表示请求数据的地址418没有落在环缓冲区400内,则判定为高速缓存失败,主机112须重新从盘片102读取请求数据的地址418并更新初始读取地址416(方块606)。若请求数据的地址418大于初始读取地址416,则再判断请求数据是否位于已传输解码数据区408(方块608),若请求数据没有位于已传输解码数据区408,表示请求数据落入未传输已解码数据区406中,随后侦测主机地址414是否指向请求数据的地址418(方块610),若侦测主机地址414指向请求数据的地址418,即为高速缓存成功,主机112直接从主机地址414读取请求数据(方块618)。另一方面,若主机地址414没有指向请求数据的地址418(方块610)时,须更正主机地址414使之指向请求数据的地址418(方块616),而后从主机地址414读取请求数据(方块618)。此外,若请求数据位于已传输解码数据区408时,尚需判断请求数据是否位于一临界区420(方块612),若请求数据没有位于临界区420,还须更正主机地址414使之指向请求数据的地址418(方块616),即为高速缓存成功,主机112直接从主机地址414读取请求数据(方块618)。若请求数据位于临界区420,则侦测写入数据的动作是否停止(方块614)。若写入数据的动作未停止(写入旗标被设置)时,则判定为高速缓存失败,主机112须再从盘片102读取请求数据的地址418(方块606)。若写入数据的动作已停止(写入标记没有被设置),即更正主机地址414使之指向请求数据的地址418(方块616),而后从主机地址414读取请求数据(方块618)。
请参照图7,其为本发明的另一实施例的流程图。当主机112指示芯片108读取请求数据的地址418(方块702),而后侦测请求数据的地址418是否大于初始读取地址416(方块704),若请求数据的地址418没有大于初始读取的地址416,则表示请求数据的地址418没有落在环缓冲区400内,则判定为高速缓存失败,主机112须重新从盘片102读取请求数据的地址418并更新初始读取地址416(方块706)。若请求数据的地址418大于初始读取地址416,则再判断请求数据是否位于已传输解码数据区408(方块708),若请求数据没有位于已传输解码数据区408,则表示请求数据落入未传输已解码数据区406中,随后侦测主机地址414是否指向请求数据的地址418(方块710),若侦测主机地址414指向请求数据的地址418,即为高速缓存成功,主机112直接从主机地址414读取请求数据(方块718)。另一方面,若主机地址414没有指向请求数据的地址418(方块710)时,须更正主机地址414使之指向请求数据的地址418(方块716),而后从主机地址414读取请求数据(方块718)。此外,若请求数据位于已传输解码数据区408时,尚需判断请求数据是否位于一临界区420(方块712),若请求数据未位于临界区420,还须更正主机地址414使之指向请求数据的地址418(方块716),即为高速缓存成功,主机112直接从主机地址414读取请求数据(方块718)。若请求数据位于临界区420,则判定为高速缓存失败,主机112须再从盘片102读取请求数据的地址418(方块706)。
综上所述,本发明提供一种应用在多媒体播放装置的改善数据传输效率的方法,其通过设定一初始读取地址,当请求数据的地址大于初始读取地址时,再判定请求数据位于环缓冲区的哪一区段,并作相对应的地址转换,如此能减少主机重回盘片读取数据的机率,以改善传输数据的效率;另一方面播放品质良好,让观看者所看到的画面不会有停顿的现象。此外,在本发明一实施例中,更设定一已传输解码数据区内的一临界区,可视写入动作进行与否,更清楚界定所读取的请求数据是否为原本的请求数据。
本发明已针对特定实施例详述如上,熟习该项技术者可在不违反本发明的精神及范围的条件下,对本发明加以改变或更动,这些改变或更动仍不脱离本发明的范围,本发明的精神及范围将定义在如所述的权利要求中。
权利要求
1.一种应用于多媒体播放装置的改善数据传输效率的方法,其包含读取一请求数据的地址;侦测该请求数据的地址是否大于一初始读取地址;以及当该请求数据的地址大于该初始读取地址,则判断该请求数据是否位于一已传输解码数据区,否则重新读取该请求数据的地址,并更新该初始读取地址,其中该初始读取地址为循序读取数据的第一个读取地址。
2.如权利要求1所述的方法,更包含当该请求数据没有位于该已传输解码数据区时,则侦测一主机地址是否指向该请求数据的地址;以及当该请求数据位于该已传输解码数据区时,则判断该请求数据是否位于一临界区。
3.如权利要求2所述的方法,更包含当该请求数据位于该临界区时,则判定为高速缓存失败,并重新读取该请求数据的地址,并更新该初始读取地址。
4.如权利要求2所述的方法,更包含当该请求数据没有位于该临界区时,则更正该主机地址,使之指向该请求数据的地址;以及判定高速缓存成功,从该主机地址读取该请求数据。
5.如权利要求2所述的方法,更包含当侦测到该主机地址指向该请求数据的地址,则判定高速缓存成功,从该主机地址读取该请求数据;以及否,则先更正该主机地址,使之指向该请求数据的地址,再判定高速缓存成功,从该主机地址读取该请求数据。
6.如权利要求1所述的方法,其中判断该请求数据位于该已传输解码数据区的步骤,更包含提供该已传输解码数据区的大小;提供该请求数据的地址与该主机地址的间距;以及当该请求数据的地址与该主机地址的间距不大于该已传输解码数据区,判定该请求数据位于该已传输解码数据区。
7.如权利要求6所述的方法,提供该已传输解码数据区的大小进一步包含提供一未传输已解码数据区和一未解码数据区的大小;以及量测一存储器的大小与该未传输已解码数据区和该未解码数据区大小的差值,以令该差值代表该已传输解码数据区的大小。
8.如权利要求2所述的方法,若该请求数据位于该已传输解码数据区内的该临界区,更包含判断一写入数据的动作是否停止;若停止,则先更正该主机地址使之指向该请求数据的地址,再判定高速缓存成功并从该主机地址读取该请求数据;以及若未停止,则判定为高速缓存失败,重新读取该请求数据的地址并更新该初始读取地址。
9.如权利要求8所述的方法,更包含设定一写入标记,用以判断该写入数据的动作是否停止。
10.如权利要求1所述的方法,其中所述多媒体播放装置为数字影像录放器或数字影像播放器。
全文摘要
一种应用于多媒体播放装置的改善数据传输效率的方法,包含读取一请求(requested)数据的地址,之后侦测该请求数据的地址是否大于一初始读取地址,其中该初始读取地址为循序读取数据的第一个读取地址,倘若该请求数据的地址大于该初始读取地址,且该请求数据的地址没有位于一已传输解码数据区的一临界区时,则从该已传输解码数据区读取该请求数据。
文档编号G06F12/02GK1804814SQ20051012602
公开日2006年7月19日 申请日期2005年11月24日 优先权日2005年11月24日
发明者李明祐, 王文渊 申请人:威盛电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1