TWI488107B - 用來增進快退效能之方法以及相關的電子裝置 - Google Patents

用來增進快退效能之方法以及相關的電子裝置 Download PDF

Info

Publication number
TWI488107B
TWI488107B TW098142043A TW98142043A TWI488107B TW I488107 B TWI488107 B TW I488107B TW 098142043 A TW098142043 A TW 098142043A TW 98142043 A TW98142043 A TW 98142043A TW I488107 B TWI488107 B TW I488107B
Authority
TW
Taiwan
Prior art keywords
buffer
cluster
displacement amount
controller
target displacement
Prior art date
Application number
TW098142043A
Other languages
English (en)
Other versions
TW201120742A (en
Inventor
Xiangrong Li
Original Assignee
Silicon Motion 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 Silicon Motion Inc filed Critical Silicon Motion Inc
Priority to TW098142043A priority Critical patent/TWI488107B/zh
Priority to US12/688,915 priority patent/US9497504B2/en
Publication of TW201120742A publication Critical patent/TW201120742A/zh
Application granted granted Critical
Publication of TWI488107B publication Critical patent/TWI488107B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)

Description

用來增進快退效能之方法以及相關的電子裝置
本發明係有關於多媒體檔案之播放控制,尤指一種用來增進快退(Fast Backward)效能之方法以及相關的電子裝置。
近年來由於快閃記憶體的技術不斷地發展,各種可攜式記憶裝置(例如:符合SD/MMC、CF、MS、XD標準之記憶卡)或具備快閃記憶體之可攜式多媒體播放器(例如:MP3播放器或可攜式影音播放器)被廣泛地實施於諸多應用中。因此,這些可攜式裝置中之快閃記憶體的存取控制遂成為相當熱門的議題。
以常用的NAND型快閃記憶體而言,其主要可區分為單階細胞(Single Level Cell,SLC)與多階細胞(Multiple Level Cell,MLC)兩大類之快閃記憶體。單階細胞快閃記憶體中之每個被當作記憶單元的電晶體只有兩種電荷值,分別用來表示邏輯值0與邏輯值1。另外,多階細胞快閃記憶體中之每個被當作記憶單元的電晶體的儲存能力則被充分利用,係採用較高的電壓來驅動,以透過不同級別的電壓在一個電晶體中記錄兩組位元資訊(例如:00、01、11、10);理論上,多階細胞快閃記憶體的記錄密度可以達到單階細胞快閃記憶體的記錄密度之兩倍以上,這對於曾經在發展過程中遇到瓶頸的NAND型快閃記憶體之相關產業而言,是非常好的消息。
相較於單階細胞快閃記憶體,由於多階細胞快閃記憶體之價格較便宜,並且在有限的空間裡可提供較大的容量,故多階細胞快閃記憶體很快地成為市面上之可攜式記憶裝置競相採用的主流。然而,多階細胞快閃記憶體的不穩定性所導致的問題也一一浮現。針對這諸多問題,雖然相關技術中提供了一些解決方式,卻總是無法兼顧運作效能與系統資源使用控管。於是,不論採取哪個解決方式,往往會有對應的副作用。
另外,在這些可攜式裝置諸如上述之可攜式多媒體播放器中,由於硬體資源有限,故在播放大型多媒體檔案時會有快退(Fast Backward)運作過慢的問題。尤其是,相關技術在進行快退運作時的典型方式,往往必須從多媒體檔案的開始位置起一直找到目標位置;這不但需要很長的時間及很大的緩衝儲存空間,並且由於有許多額外的讀取運作,就導致電力耗損的增加。因此,需要一種新穎的方法來加強控管快閃記憶體之資料存取,以兼顧運作效能與系統資源使用控管。
因此本發明之目的之一在於提供一種用來增進快退(Fast Backward)效能之方法以及相關的電子裝置,以解決上述問題。
本發明之較佳實施例中提供一種用來增進快退效能之方法,該方法包含有:針對一多媒體檔案之複數個位移量,分別將相對應的叢集(Cluster)編號儲存於一第一緩衝區/緩衝器,其中該些位移量分別對應於不同的播放時間點,而該些叢集編號分別代表屬於該多媒體檔案之複數個叢集;以及利用該些位移量與該些叢集編號中之至少一部分進行該多媒體檔案之快退運作。
本發明於提供上述方法之同時,亦對應地提供一種相關的電子裝置,該電子裝置包含有:至少一緩衝記憶體,其包含一第一緩衝區/緩衝器;以及一控制器,用來執行一程式碼以控制該電子裝置之運作,其中針對一多媒體檔案之複數個位移量,該控制器分別將相對應的叢集編號儲存於該第一緩衝區/緩衝器。另外,該些位移量分別對應於不同的播放時間點,而該些叢集編號分別代表屬於該多媒體檔案之複數個叢集。此外,該控制器利用該些位移量與該些叢集編號中之至少一部分進行該多媒體檔案之快退運作。
請參考第1圖,第1圖為依據本發明一第一實施例之一種電子裝置100的示意圖,其中本實施例之電子裝置100尤其係為可攜式電子裝置諸如可攜式多媒體播放器(例如:MP3播放器或可攜式影音播放器)。電子裝置100包含一控制器110,用來執行程式碼112C以控制電子裝置100之運作,例如存取(Access)快閃記憶體120以及播放多媒體檔案;以及一快閃記憶體(Flash Memory)120,用來儲存資訊諸如各種檔案(例如多媒體檔案)。依據本實施例,控制器110包含一微處理器112、一唯讀記憶體(Read Only Memory,ROM)112M、一控制邏輯114、至少一緩衝記憶體116、與一介面邏輯118。在此,緩衝器B(1)與B(2)可代表緩衝記憶體116當中之不同的緩衝區、或代表緩衝記憶體116當中具有各自的實體架構之緩衝器。另外,唯讀記憶體112M係用來儲存一程式碼112C,而微處理器112則用來執行程式碼112C以控制電子裝置100之運作。請注意,程式碼112C亦得儲存在緩衝記憶體116或任何形式之記憶體內。
於典型狀況下,快閃記憶體120包含複數個區塊(Block),而控制器110(例如:透過微處理器112執行程式碼112C之控制器110)對快閃記憶體120進行抹除資料之運作係以區塊為單位來進行抹除。另外,一區塊可記錄特定數量的頁(Page),其中控制器110對快閃記憶體120進行寫入資料之運作係以頁為單位來進行寫入。
實作上,透過微處理器112執行程式碼112C之控制器110可利用其本身內部之元件來進行諸多控制運作,例如:利用控制邏輯114來控制快閃記憶體120之存取運作(尤其是對至少一區塊或至少一頁之存取運作)、利用緩衝記憶體116進行所需之緩衝處理、以及利用介面邏輯118來與一主裝置(Host Device)溝通。
依據本實施例,執行程式碼112C之控制器110可妥善利用緩衝記憶體116來增進快退(Fast Backward)效能。更明確而言,控制器110可利用緩衝記憶體116中之一第一緩衝區/緩衝器諸如緩衝器B(1)來儲存叢集(Cluster)編號,並利用緩衝記憶體116中之一第二緩衝區/緩衝器諸如緩衝器B(2)來輪流地暫存該些叢集編號所代表之叢集,以及妥善地利用該些位移量與該些叢集編號中之至少一部分進行運作控管,以提昇各種多媒體檔案之快退運作之效能。請注意,該些多媒體檔案可儲存在快閃記憶體120。這只是為了說明的目的而已,並非對本發明之限制。依據本實施例之某些變化例,快閃記憶體120可代換為其它儲存模組/元件諸如硬碟(Hard Disk,HD)模組/硬碟機(HD Drive)。不論快閃記憶體120是否代換為其它儲存模組/元件,電子裝置100可妥善利用緩衝記憶體116來增進快退效能,甚至也增進快進(Fast Forward)效能。相關細節請參考第2圖進一步說明。
請參考第2圖,第2圖為依據本發明一實施例之一種用來增進快退效能之方法910的流程圖。該方法可應用於第1圖所示之電子裝置100,尤其是執行程式碼112C之控制器110。另外,該方法可藉由利用第1圖所示之電子裝置100來實施,尤其是藉由利用執行程式碼112C之控制器110來實施。該方法說明如下:於步驟912中,針對一多媒體檔案120F之複數個位移量(Offset)Off(n),控制器110分別將相對應的叢集編號c(n)儲存於該第一緩衝區/緩衝器諸如緩衝器B(1),其中該些位移量Off(n)分別對應於不同的播放時間點,而該些叢集編號c(n)分別代表屬於多媒體檔案120F之複數個叢集C(n)。在此,n為整數且於一預定範圍(例如:區間[0,N])內之至少一部分變化。尤其是,於進行多媒體檔案120F之播放或快進運作的過程中,控制器110可將該些叢集C(n)輪流地暫存於該第二緩衝區/緩衝器諸如緩衝器B(2);並且於進行上述播放或快進運作的過程中,針對該些位移量Off(n),控制器110分別將該些相對應的叢集編號c(n)儲存於該第一緩衝區/緩衝器,來建立一資料庫以供查找。
依據本實施例之一特例,如第3A圖所示,控制器110於進行上述播放或快進運作的過程中,將叢集C(0)、C(1)、...、C(n0 )輪流地暫存於緩衝器B(2),並且同時針對位移量Off(0)、Off(1)、...、Off(n0 )儲存叢集編號c(0)、c(1)、...、c(n0 ),其中每一叢集(例如目前暫存之叢集C(n0 ))的大小對應於緩衝器B(2)的儲存空間之大小。這只是為了說明的目的而已,並非對本發明之限制。依據本實施例之另一特例,如第3B圖所示,緩衝器B(2)的儲存空間之大小可供儲存數個叢集,故控制器110於進行上述播放或快進運作的過程中,將叢集C(0)、C(1)、...、C(n0 )為首之各組叢集輪流地暫存於緩衝器B(2),並且同時針對位移量Off(0)、Off(1)、...、Off(n0 )儲存叢集編號c(0)、c(1)、...、c(n0 )。
於步驟914中,控制器110利用該些位移量Off(n)與該些叢集編號c(n)中之至少一部分進行多媒體檔案120F之快退運作。尤其是,該快退運作的起點對應於多媒體檔案120F之一目標位移量
Off(n2 )。控制器110會判斷該第二緩衝區/緩衝器中是否存在對應於目標位移量Off(n2 )之叢集C(n2 )。例如:在該第二緩衝區/緩衝器中存在對應於目標位移量Off(n2 )之叢集C(n2 )的狀況下,控制器110讀取並輸出該第二緩衝區/緩衝器中屬於叢集C(n2 )之至少一部分資料,作為快退運作輸出資料。又例如:在該第二緩衝區/緩衝器中不存在對應於目標位移量Off(n2 )之叢集C(n2 )的狀況下,控制器110於該第一緩衝區/緩衝器中尋找或新增叢集C(n2 )之叢集編號c(n2 )、將叢集C(n2 )暫存於該第二緩衝區/緩衝器中、以及讀取並輸出該第二緩衝區/緩衝器中屬於叢集C(n2 )之至少一部分資料作為快退運作輸出資料。
請注意,在多媒體檔案120F係為視訊檔案的狀況下,上述之快退運作輸出資料可代表顯示資料。這只是為了說明的目的而已,並非對本發明之限制。依據本實施例之某些變化例,在多媒體檔案120F係為音訊檔案的狀況下,上述之快退運作輸出資料可代表聲音資料。依據本實施例之某些變化例,在多媒體檔案120F係為影音檔案的狀況下,上述之快退運作輸出資料可代表顯示資料及/或聲音資料。
實作上,控制器110會判斷目標位移量Off(n2 )是否為該些位移量(即涉及步驟912運作之該些位移量Off(n))中之一者,並據以進行相關控制。為了便於理解,請參考第3A圖(或第3B圖)所示之特例,其中涉及步驟912運作之該些位移量Off(n)為位移量Off(0)、Off(1)、...、Off(n0 )。例如:當目標位移量Off(n2 )係為該些位移量諸如位移量Off(0)、Off(1)、...、Off(n0 )中之一者,則控制器110依據目標位移量Off(n2 )於該第一緩衝區/緩衝器中查找叢集C(n2 )之叢集編號c(n2 )。又例如:當目標位移量Off(n2 )並非該些位移量諸如位移量Off(0)、Off(1)、...、Off(n0 )中之一者,則控制器110於該些位移量諸如位移量Off(0)、Off(1)、...、Off(n0 )中尋找與目標位移量Off(n2 )最接近且不大於目標位移量Off(n2 )者作為一開始位移量Off(n1 ),以供進行疊代(Iteration)運作。
更明確而言,針對多媒體檔案120F由開始位移量Off(n1 )起至目標位移量Off(n2 )為止之複數個額外的位移量{Off(n),n=n1 ,...,n2 }(例如:位移量Off(n1 )、Off(n1 +1)、...、Off(n2 )),控制器110分別將相對應的叢集編號{c(n),n=n1 ,...,n2 }儲存於該第一緩衝區/緩衝器,並且同時將對應於該些額外的位移量{Off(n),n=n1 ,...,n2 }之叢集編號{c(n),n為整數且n=n1 ,...,n2 }所代表之叢集{C(n),n=n1 ,...,n2 }輪流地暫存於該第二緩衝區/緩衝器。於是,藉由這樣的疊代運作,當控制器110已經處理到目標位移量Off(n2 )所對應的叢集C(n2 )時,即可開始讀取並輸出該第二緩衝區/緩衝器中屬於叢集C(n2 )之至少一部分資料,作為快退運作輸出資料。另外,在上述之疊代運作的過程中,控制器110自動地擴增步驟912之運作於該第一緩衝區/緩衝器中所建立的資料庫。
依據第2圖所示之實施例,在將該些叢集編號c(n)儲存於該第一緩衝區/緩衝器之時,控制器110可分別將該些位移量Off(n)儲存於該第一緩衝區/緩衝器;於是,控制器110可依據該些位移量Off(n)查找其相對應的叢集編號c(n)。這只是為了說明的目的而已,並非對本發明之限制。依據本實施例之某些變化例,該些位移量Off(n)可具有預定分佈(例如該些位移量Off(n)可為等差數列),故在該第一緩衝區/緩衝器中沒有儲存該些位移量Off(n)的狀況下,控制器110仍得以依據該預定分佈的方程式查找該些叢集編號c(n)。例如:在該些位移量Off(n)係為等差數列的狀況下,控制器110可利用該方程式來算出該等差數列中之任一個位移量。又例如:在該些位移量Off(n)係為非線性分佈之數列的狀況下,控制器110可利用該方程式可來算出該非線性分佈之數列中之任一個位移量。依據本實施例之某些變化例,該些叢集C(n)的大小不盡相同,則該第二緩衝區/緩衝器所儲存之叢集的數量可隨時間變化。
第4圖為第2圖所示之方法910於一實施例中之實施細節,其中工作流程920繪示控制器110於一種「一般模式」中的典型運作。請注意,工作流程920不但可應用於快退運作,亦可應用於播放或快進運作。工作流程920說明如下。
於步驟922中,控制器110設定開始位移量Off(n1 )以供進行檔案讀取。
於步驟924中,控制器110將開始位移量Off(n1 )轉換為叢集編號c(n1 )。
於步驟926中,控制器110檢查叢集C(n)是否已快取(Cached)。在首次進入步驟926的狀況下,n=n1 ,即叢集C(n)代表叢集C(n1 )。當叢集C(n)已快取,則進入步驟934;否則,進入步驟928。
於步驟928中,控制器110檢查該第二緩衝區/緩衝器諸如緩衝器B(2)是否已滿。當該第二緩衝區/緩衝器已滿,則進入步驟930-1;否則,進入步驟930-2。
於步驟930-1中,控制器110將叢集編號c(n)儲存於該第一緩衝區/緩衝器諸如緩衝器B(1)。
於步驟930-2中,控制器110將叢集編號c(n)儲存於該第一緩衝區/緩衝器諸如緩衝器B(1)。
於步驟932中,控制器110重設(Reset)該第二緩衝區/緩衝器之緩衝輸入索引。於是,控制器110可重新使用該第二緩衝區/緩衝器,並且忽略原先已暫存於該第二緩衝區/緩衝器中的資料。
於步驟934中,控制器110讀取資料。
於步驟936-1中,控制器110判斷是否繼續。尤其是,本實施例之n會隨著疊代運作的過程而增加。於是,當n<n2 (此狀況下位移量Off(n)並非目標位移量Off(n2 )),則進入步驟936-2以繼續;否則,代表n=n2 (即位移量Off(n)係為目標位移量Off(n2 )),就結束工作流程920。
於步驟936-2中,控制器110檢查下一個叢集C(n+1)是否存在。當下一個叢集C(n+1)存在,則進入步驟938;否則,結束工作流程920。
於步驟938中,控制器110取得下一個叢集C(n+1)之叢集編號c(n+1),以進行對應於(n+1)之疊代運作。實作上,控制器110可先將n增加,其增量為1,然後重新進入步驟926。
第5圖為第2圖所示之方法910於一實施例中之實施細節,其中工作流程940繪示控制器110於一種「跳躍模式」中的典型運作。請注意,工作流程940不但可應用於快退運作,亦可應用於播放或快進運作。工作流程940說明如下。
於步驟942中,控制器110檢查該第二緩衝區/緩衝器諸如緩衝器B(2)中是否存在對應於目標位移量Off(n2 )之叢集C(n2 )。當該第二緩衝區/緩衝器中存在對應於目標位移量Off(n2 )之叢集C(n2 ),則進入步驟950;否則,進入步驟944。
於步驟944中,控制器110尋找與目標位移量Off(n2 )最接近且不大於目標位移量Off(n2 )之位移量,尤其是於涉及步驟912運作之該些位移量Off(n)中尋找與目標位移量Off(n2 )最接近且不大於目標位移量Off(n2 )者。
於步驟946中,控制器110設定輸出位移量,尤其是將步驟944中找到的位移量設定為輸出位移量,以供步驟948使用。
於步驟948中,控制器110切換至一般模式以找到目標位移量Off(n2 )所對應的叢集C(n2 ),尤其是利用步驟946中所設定輸出位移量作為工作流程920之開始位移量Off(n1 )並執行工作流程920。
於步驟950中,控制器110找出對應於目標位移量Off(n2 )之叢集C(n2 )。
本發明的好處之一是,本發明能增進電子裝置之快退效能,並且能兼顧運作效能與系統資源使用控管;尤其是,本發明不但可節省緩衝區/緩衝器的儲存空間,並且不會有相關技術的問題諸如使用過多緩衝記憶體空間以及許多額外的讀取運作所導致之電力耗損的增加,故本發明之方法以及相關的電子裝置能提供極佳的效能。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100...電子裝置
110...控制器
112...微處理器
112C...程式碼
112M...唯讀記憶體
114...控制邏輯
116...緩衝記憶體
118...介面邏輯
120...快閃記憶體
120F...多媒體檔案
910...用來增進快退效能之方法
912,914,922,924,926,928,930-1,930-2,932,934,936-1,936-2,938,942,944,946,948,950‧‧‧步驟
920,940‧‧‧工作流程
B(1),B(2)‧‧‧緩衝區/緩衝器
c(0),c(1),...,c(n0 ),c(n0 +1),...,c(N)‧‧‧叢集編號
C(0),C(1),...,C(n0 ),C(n0 +1),...,C(N)‧‧‧叢集
Off(0),Off(1),...,Off(n0 ),Off(n0 +1),...,Off(N)‧‧‧位移量
第1圖為依據本發明一第一實施例之電子裝置的示意圖。
第2圖為依據本發明一實施例之一種用來增進快退(Fast Backward)效能之方法的流程圖。
第3A至3B圖繪示於不同實施例中第2圖所示之方法所涉及之位移量與相對應的叢集的示意圖。
第4圖為第2圖所示之方法於一實施例中之實施細節。
第5圖為第2圖所示之方法於一實施例中之實施細節。
910...用來增進快退效能之方法
912,914...步驟

Claims (20)

  1. 一種用來增進快退(Fast Backward)效能之方法,該方法包含有:針對一多媒體檔案之複數個位移量,將分別對應於該複數個位移量之複數個叢集(Cluster)編號儲存於一第一緩衝區/緩衝器,其中該些叢集編號分別代表屬於該多媒體檔案之複數個叢集,而該些位移量分別對應於該複數個叢集之各自不同的播放時間點;以及利用該些位移量與該些叢集編號中之至少一部分進行該多媒體檔案之快退運作;其中該些位移量並非和該些叢集編號儲存在一起。
  2. 如申請專利範圍第1項所述之方法,其另包含有:依據一第二緩衝區/緩衝器的容量,將該複數個叢集中之每一叢集循環地存入並取出自該第二緩衝區/緩衝器,使得所述每一叢集被該複數個叢集中之另一叢集所取代,以致每一叢集僅僅暫時地儲存於該第二緩衝區/緩衝器中。
  3. 如申請專利範圍第2項所述之方法,其中利用該些位移量與該些叢集編號中之至少一部分進行該多媒體檔案之快退運作之步驟另包含:判斷該第二緩衝區/緩衝器中是否存在對應於一目標位移量 之叢集;以及在該第二緩衝區/緩衝器中不存在對應於該目標位移量之叢集的狀況下,於該第一緩衝區/緩衝器中尋找或新增該叢集之叢集編號、將該叢集暫存於該第二緩衝區/緩衝器中、以及讀取並輸出該第二緩衝區/緩衝器中屬於該叢集之至少一部分資料作為快退運作輸出資料。
  4. 如申請專利範圍第3項所述之方法,其中於該第一緩衝區/緩衝器中尋找或新增該叢集之該叢集編號另包含:判斷該目標位移量是否為該些位移量中之一者;以及當該目標位移量係為該些位移量中之一者,則依據該目標位移量於該第一緩衝區/緩衝器中查找該叢集之該叢集編號。
  5. 如申請專利範圍第3項所述之方法,其中於該第一緩衝區/緩衝器中尋找或新增該叢集之該叢集編號另包含:判斷該目標位移量是否為該些位移量中之一者;當該目標位移量並非該些位移量中之一者,則於該些位移量中尋找與該目標位移量最接近且不大於該目標位移量者作為一開始位移量;以及針對該多媒體檔案由該開始位移量起至該目標位移量為止之複數個額外的位移量,分別將相對應的叢集編號儲存於該第一緩衝區/緩衝器。
  6. 如申請專利範圍第5項所述之方法,其中將該叢集暫存於該第二緩衝區/緩衝器中另包含:針對由該開始位移量起至該目標位移量為止之該些額外的位移量,將對應於該些額外的位移量之叢集編號所代表之叢集輪流地暫存於該第二緩衝區/緩衝器。
  7. 如申請專利範圍第2項所述之方法,其中利用該些位移量與該些叢集編號中之至少一部分進行該多媒體檔案之快退運作之步驟另包含有:判斷該第二緩衝區/緩衝器中是否存在對應於一目標位移量之叢集;以及在該第二緩衝區/緩衝器中存在對應於該目標位移量之叢集的狀況下,讀取並輸出該第二緩衝區/緩衝器中屬於該叢集之至少一部分資料,作為快退運作輸出資料。
  8. 如申請專利範圍第2項所述之方法,其中每一叢集的大小對應於該第二緩衝區/緩衝器的儲存空間之大小。
  9. 如申請專利範圍第1項所述之方法,其中針對該多媒體檔案之該些位移量分別將該些相對應的叢集編號儲存於該第一緩衝區/緩衝器之步驟另包含有:於進行該多媒體檔案之播放或快進(Fast Forward)運作的過程中,針對該些位移量,分別將該些相對應的叢集編號儲存 於該第一緩衝區/緩衝器。
  10. 如申請專利範圍第1項所述之方法,其中針對該多媒體檔案之該些位移量分別將該些相對應的叢集編號儲存於該第一緩衝區/緩衝器之步驟另包含有:分別將該些位移量儲存於該第一緩衝區/緩衝器。
  11. 一種電子裝置,包含有:至少一緩衝記憶體,其包含一第一緩衝區/緩衝器;以及一控制器,用來執行一程式碼以控制該電子裝置之運作,其中針對一多媒體檔案之複數個位移量,該控制器將分別對應於該複數個位移量之複數個叢集(Cluster)編號儲存於該第一緩衝區/緩衝器;其中該些叢集編號分別代表屬於該多媒體檔案之複數個叢集,而該些位移量分別對應於該複數個叢集之各自不同的播放時間點,且該些位移量並非和該些叢集編號儲存在一起;以及該控制器利用該些位移量與該些叢集編號中之至少一部分進行該多媒體檔案之快退(Fast Backward)運作。
  12. 如申請專利範圍第11項所述之電子裝置,其中該緩衝記憶體另包含一第二緩衝區/緩衝器;以及該控制器依據該第二緩衝區/緩衝器的容量,將該複數個叢集中之每一叢集循環地存入並取出自該第二緩衝區/緩衝器,使得所述每一叢集被該複數 個叢集中之另一叢集所取代,以致每一叢集僅僅暫時地儲存於該第二緩衝區/緩衝器中。
  13. 如申請專利範圍第12項所述之電子裝置,其中該控制器判斷該第二緩衝區/緩衝器中是否存在對應於一目標位移量之叢集;以及在該第二緩衝區/緩衝器中不存在對應於該目標位移量之叢集的狀況下,該控制器於該第一緩衝區/緩衝器中尋找或新增該叢集之叢集編號、將該叢集暫存於該第二緩衝區/緩衝器中、以及讀取並輸出該第二緩衝區/緩衝器中屬於該叢集之至少一部分資料作為快退運作輸出資料。
  14. 如申請專利範圍第13項所述之電子裝置,其中該控制器判斷該目標位移量是否為該些位移量中之一者;以及當該目標位移量係為該些位移量中之一者,則該控制器依據該目標位移量於該第一緩衝區/緩衝器中查找該叢集之該叢集編號。
  15. 如申請專利範圍第13項所述之電子裝置,其中該控制器判斷該目標位移量是否為該些位移量中之一者;當該目標位移量並非該些位移量中之一者,則該控制器於該些位移量中尋找與該目標位移量最接近且不大於該目標位移量者作為一開始位移量;以及針對該多媒體檔案由該開始位移量起至該目標位移量為止之複數個額外的位移量,該控制器分別將相對應的叢集編號儲存於該第一緩衝區/緩衝器。
  16. 如申請專利範圍第15項所述之電子裝置,其中針對由該開始位移量起至該目標位移量為止之該些額外的位移量,該控制器將對應於該些額外的位移量之叢集編號所代表之叢集輪流地暫存於該第二緩衝區/緩衝器。
  17. 如申請專利範圍第12項所述之電子裝置,其中該控制器判斷該第二緩衝區/緩衝器中是否存在對應於一目標位移量之叢集;以及在該第二緩衝區/緩衝器中存在對應於該目標位移量之叢集的狀況下,該控制器讀取並輸出該第二緩衝區/緩衝器中屬於該叢集之至少一部分資料,作為快退運作輸出資料。
  18. 如申請專利範圍第12項所述之電子裝置,其中每一叢集的大小對應於該第二緩衝區/緩衝器的儲存空間之大小。
  19. 如申請專利範圍第11項所述之電子裝置,其中於進行該多媒體檔案之播放或快進(Fast Forward)運作的過程中,針對該些位移量,該控制器分別將該些相對應的叢集編號儲存於該第一緩衝區/緩衝器。
  20. 如申請專利範圍第11項所述之電子裝置,其中該控制器分別將該些位移量儲存於該第一緩衝區/緩衝器。
TW098142043A 2009-12-09 2009-12-09 用來增進快退效能之方法以及相關的電子裝置 TWI488107B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW098142043A TWI488107B (zh) 2009-12-09 2009-12-09 用來增進快退效能之方法以及相關的電子裝置
US12/688,915 US9497504B2 (en) 2009-12-09 2010-01-18 Method for enhancing fast backward performance and associated electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW098142043A TWI488107B (zh) 2009-12-09 2009-12-09 用來增進快退效能之方法以及相關的電子裝置

Publications (2)

Publication Number Publication Date
TW201120742A TW201120742A (en) 2011-06-16
TWI488107B true TWI488107B (zh) 2015-06-11

Family

ID=44083024

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098142043A TWI488107B (zh) 2009-12-09 2009-12-09 用來增進快退效能之方法以及相關的電子裝置

Country Status (2)

Country Link
US (1) US9497504B2 (zh)
TW (1) TWI488107B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020037160A1 (en) * 2000-08-22 2002-03-28 David Locket Multimedia signal processing system
TW200935905A (en) * 2008-02-13 2009-08-16 Realtek Semiconductor Corp Digital video apparatus and related method for generating index information

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832525A (en) * 1996-06-24 1998-11-03 Sun Microsystems, Inc. Disk fragmentation reduction using file allocation tables
JP2000163594A (ja) * 1998-11-30 2000-06-16 Canon Inc 画像パタ―ン検出方法及び装置
US7406214B2 (en) * 1999-05-19 2008-07-29 Digimarc Corporation Methods and devices employing optical sensors and/or steganography
CA2338634C (en) * 1999-05-28 2007-06-26 Matsushita Electric Industrial Co., Ltd. A semiconductor memory card, playback apparatus, recording apparatus, playback method, recording method, and computer-readable recording medium
KR100655034B1 (ko) * 1999-05-28 2006-12-07 마츠시타 덴끼 산교 가부시키가이샤 반도체 메모리카드, 재생장치, 기록장치, 재생방법, 기록방법
EP2200296B1 (en) * 1999-09-20 2018-01-31 TiVo Solutions Inc. Closed caption tagging system
GB0007868D0 (en) * 2000-03-31 2000-05-17 Koninkl Philips Electronics Nv Methods and apparatus for editing digital video recordings and recordings made by such methods
US6675276B2 (en) * 2001-11-13 2004-01-06 Eastman Kodak Company Method for providing extensible dos-fat system structures on one-time programmable media
TWI225647B (en) * 2002-04-01 2004-12-21 Sony Corp Recording method and apparatus, and editing method apparatus
CN100452858C (zh) * 2003-02-19 2009-01-14 松下电器产业株式会社 再现装置、记录方法和再现方法
US7747625B2 (en) * 2003-07-31 2010-06-29 Hewlett-Packard Development Company, L.P. Organizing a collection of objects
KR100678888B1 (ko) * 2004-07-19 2007-02-05 삼성전자주식회사 정보를 기록하고 읽는 장치 및 방법
JP2006155782A (ja) * 2004-11-30 2006-06-15 Sony Corp 記録装置、再生装置、画像ファイル生成方法、表示制御方法
CN102081944B (zh) * 2005-02-04 2012-12-26 松下电器产业株式会社 读取装置、记录方法及读取方法
US8265144B2 (en) * 2007-06-30 2012-09-11 Microsoft Corporation Innovations in video decoder implementations
US8356324B2 (en) * 2007-09-21 2013-01-15 Broadcom Corporation Implementing network personal video recorder for digital video settop boxes
US8103891B2 (en) * 2008-03-18 2012-01-24 Qualcomm Incorporated Efficient low power retrieval techniques of media data from non-volatile memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020037160A1 (en) * 2000-08-22 2002-03-28 David Locket Multimedia signal processing system
TW200935905A (en) * 2008-02-13 2009-08-16 Realtek Semiconductor Corp Digital video apparatus and related method for generating index information

Also Published As

Publication number Publication date
TW201120742A (en) 2011-06-16
US9497504B2 (en) 2016-11-15
US20110137901A1 (en) 2011-06-09

Similar Documents

Publication Publication Date Title
TWI430092B (zh) 三階儲存單元的快閃記憶體裝置及其控制方法
US8386701B2 (en) Apparatus and method for multi-level cache utilization
CN102187398B (zh) 固态存储装置中的热存储器块表
TWI506422B (zh) 用來管理具有多通道、多途徑的記憶裝置之方法以及相關之記憶裝置及其控制器
TWI438778B (zh) 用來抑制資料錯誤之方法以及相關之記憶裝置及其控制器
TWI446350B (zh) 用來減少無法更正的錯誤之方法以及記憶裝置及其控制器
US8090900B2 (en) Storage device and data management method
US11126369B1 (en) Data storage with improved suspend resume performance
KR20040038706A (ko) 비휘발성 메모리 시스템에서 아우트-오브-시퀀스 기록프로세스를 효과적으로 수행하기 위한 방법 및 장치
CN104424103A (zh) 固态储存装置中高速缓存的管理方法
KR20110041671A (ko) 데이터 저장 장치 및 그것의 데이터 저장 방법
KR20140050941A (ko) 비휘발성 메모리 장치의 데이터 관리 방법
US9418731B1 (en) Memory management method, memory storage device and memory control circuit unit
CN101981551A (zh) 用于高速缓存利用的设备和方法
KR20090006920A (ko) 캐시 메모리 장치 및 캐시 메모리 장치의 데이터 처리 방법
US20100125697A1 (en) Computing device having storage, apparatus and method of managing storage, and file system recorded recording medium
CN114360612A (zh) 读取电压电平校正方法、存储器存储装置及控制电路单元
US11507504B2 (en) Memory sub-system for decoding non-power-of-two addressable unit address boundaries
KR100703806B1 (ko) 비휘발성 메모리, 이를 위한 데이터 유효성을 판단하는장치 및 방법
Park et al. FAST: Flash-aware external sorting for mobile database systems
KR102267983B1 (ko) 메모리 시스템에서 채널 깊이 조절
TWI488107B (zh) 用來增進快退效能之方法以及相關的電子裝置
CN115758206A (zh) 一种快速查找ZNS固态硬盘中NorFlash上次写结束位置的方法
TW202329124A (zh) 讀取電壓準位校正方法、記憶體儲存裝置及記憶體控制電路單元
TWI453747B (zh) 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器