CN1574052B - 将可交换存储装置用于存储节目数据的系统和方法 - Google Patents

将可交换存储装置用于存储节目数据的系统和方法 Download PDF

Info

Publication number
CN1574052B
CN1574052B CN200410048918.XA CN200410048918A CN1574052B CN 1574052 B CN1574052 B CN 1574052B CN 200410048918 A CN200410048918 A CN 200410048918A CN 1574052 B CN1574052 B CN 1574052B
Authority
CN
China
Prior art keywords
data
user
dish
buffer zone
storage
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
CN200410048918.XA
Other languages
English (en)
Other versions
CN1574052A (zh
Inventor
D·M·汉克斯
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN1574052A publication Critical patent/CN1574052A/zh
Application granted granted Critical
Publication of CN1574052B publication Critical patent/CN1574052B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0677Optical disk device, e.g. CD-ROM, DVD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10805Data buffering arrangements, e.g. recording or playback buffers involving specific measures to prevent a buffer overflow

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Abstract

将可交换存储装置用于存储节目数据的系统和方法一个实施例提供了一种方法60,用于以比从存储源获取信息可取得的速率快的方式向用户提供信息,所述方法包括下列步骤:从用户接收对可由用户访问的存储数据的请求601,存储数据保存在一次可访问一个的一个或多个盘上,其中,所述盘具有从收到所述请求的时间到所述信息实际可用的时间之间的等待时间;以及从不同于请求数据存储位置的源位置获取请求数据的第一部分,所述第一部分的数据量跨越所述等待时间。

Description

将可交换存储装置用于存储节目数据的系统和方法
相关申请的交叉引用
本申请涉及代理人案号为100201821-1,题为“将可交换存储装置用作高数据内容多源数据存储装置的系统和方法”的同时提交并共同转让的美国专利申请,该专利文献通过引用结合到本说明书中。
技术领域
本发明涉及数据存储技术,更具体地说,涉及将可交换存储装置用于存储节目数据的系统和方法。
背景技术
现在可以从可交换存储设备以流的形式往返传送高数据内容文件,可交换存储设备例如数字多功能盘(DVD)、光盘(CD)、存储卡等。通常,此信息经处理,由可交换存储装置进入计算机硬盘驱动器和/或基于计算机的临时存储器以及由硬盘驱动器(或其他存储区域)到一个或多个屏幕、扬声器或其他设备,如外部存储器。
用户可能希望从一个以上这种可交换存储装置输入接收数据,此操作有时是同步的。有时存储在这种可交换装置上的数据是希望由可访问计算机的用户使用的节目。
这就提出了这样一个问题,即所用存储装置何时未连接到处理器,或者处理器何时每次只可向这些设备之一发送或从其接收数据。这在数据存储在永久可访问的存储设备的情况下是不可能的,永久可访问存储设备例如计算机上的硬盘驱动器,其中可以存储数据且数据可以随机访问的方式从硬盘驱动器中的任何位置取回。但是,在某些情况下,系统内部的存储装置例如硬盘驱动器可能不可用。
如果数据存储在可交换设备上,例如在CD或DVD上,这种数据不可访问,直到系统找到该存储设备并物理连接到其上,然后可从新连接的存储设备读取期望的信息。此操作通常花费有限的时间。当用户希望使用存储在可交换设备上的应用节目或其他数据时,就会发生等待数据问题。习惯了可察觉的即时响应的用户会在经历延迟时不满意,延迟是由可交换存储设备所需的寻找和访问时间引起的。
发明内容
一个实施例提供了一种以比从存储源获取信息可取得的速率快的方式向用户提供所述信息的方法,该方法包括下列步骤:从用户接收对可由用户访问的存储数据的请求,存储数据保存在一次可访问一个的一个或多个盘上,其中,所述盘具有从收到所述请求的时间到所述信息实际可用的时间之间的等待时间;以及从不同于请求数据存储位置的源位置获取请求数据的第一部分,所述第一部分的数据量跨越等待期。
其他实施例提供了一种用于检索数据的系统,它包括第一存储源,第一存储源具有从收到对第一存储源上的数据的请求的时间到第一存储源实际可用于从中检索数据的时间之间的等待时间;以及第二存储源,第二存储源与第一存储源物理上分开,用于维护可由用户请求的第一部分数据。
另外一些实施例提供了一种数据检索系统,该数据检索系统具有可以容纳多个可单独访问的存储媒体的存储库;可用于从所述库中含有的存储媒体中选定的一个存储媒体读取数据的存储驱动器,所述驱动器具有从识别出所需数据到所识别出的数据实际可用的时间之间的等待时间;至少一个用于从位于媒体驱动器的存储媒体中接收数据的缓冲区,接收数据的速率比其使用速率快,由此造成媒体驱动器空闲期;其中,所述媒体驱动器可在所述空闲期间将至少一个节目传送给用户;以及,所传送部分的第一部分来自不同于驻留有所述至少一个节目的存储媒体的存储媒体。
还有一些实施例提供了一种用于提供控制系统的节目信息的设备,所述设备包括如下两种部件:一种是用于获取针对可由系统访问的存储节目的请求的部件,存储节目保存在具有从收到请求的时间到节目实际可供系统使用的时间之间的等待时间的位置中;另一种是用于从不同于所请求的节目的存储位置的源位置获取所请求节目的第一部分的部件,所述第一部分的数据量跨越所述等待期。
附图说明
图1是本发明一个实施例的框图;
图2说明图2A-2D如何排列;
图2A-2D显示几个时序图,用于说明根据本发明实施例往返于存储媒体搬移数据的时序;
图3显示了本发明一个实施例的重放流程图;
图4显示了本发明一个实施例的记录流程图;
图4A显示了本发明一个实施例的重放流程;
图5是本发明一个实施例的缓冲区满流程图;以及
图6是本发明一个实施例的快速数据存取流程图。
具体实施方式
用户希望并发地处理往来于不同的存储媒体的数据,其中,存储媒体交替可供用户访问,这种希望可以通过如下方式予以满足:设置第一缓冲区,用于从所述存储媒体中选定的第一存储媒体接收数据;设置第二缓冲区,用于接收预定要记录到所述存储媒体中的第二存储媒体上的数据。从第一媒体加载第一缓冲区比用户处理数据快,由此造成空闲期,其中,不向第一缓冲区装入数据。在此空闲期中,可以将第二缓冲区的数据传送到第二媒体而又没有可察觉的延迟。
为用户提供数据的速率比从保存数据的主存储源获取数据所能取得的速率快。这种结果以如下方式得到:从不同于所请求数据的存储位置的源获取所请求数据的第一部分,同时所述第一部分的数据量跨越用户必须等候从主存储源检索时将会产生的等待时延。
图1显示了根据本发明实施例的系统10的总体图,该系统包括缓冲区107,用于控制不同数据源和目的方之间信息的输入输出。大容量数据如来自数据源A 108的压缩视频数据可以如下所述流入系统10。这种信息可以提供给例如扬声器111和/或经由视频驱动器109提供给电视机或监视器110。或者,可以通过由驱动器控制和伺服系统103所控制的驱动器12提供源A的数据,以便记录在CD、DVD和其他媒体上。
驱动器12可以包含例如CD/DVD机械装置102和驱动器缓冲区101。系统控制器106最好控制输入和输出缓冲区的信息,以及控制驱动器控制和伺服系统103。CD/DVD机械装置102在本实施例中具体与多盘库切换器11通信,以便可以维护几个DVD和CD,并按需从CD/DVD机械装置提供。
通常,驱动器12会将驱动器缓冲区101内建到所述机械装置中。但如果需要,驱动器缓冲区101可以设置在驱动器12之外。可以从缓冲区107经写通道105向驱动器缓冲区101馈送信息,以便进行记录。驱动器缓冲区101可以将读通道104馈送给缓冲区107。
所示实施例的缓冲区107包括源缓冲区120、记录缓冲区(R)121、重放缓冲区(P)122、快进缓冲区(FF)123和快倒缓冲区(FR)124。在一个实施例中,源缓冲区120可包括几个缓冲区,如S1至SN。在所示实施例中,每个这样的源缓冲区具有2兆字节的容量,当然,根据本发明其他容量也是可能的。虽然显示为单个缓冲区,但应理解,记录缓冲区121、重放缓冲区122、快进缓冲区123和快倒缓冲区124中的任一或所有缓冲区都可以按需包括多个缓冲区,或者它们可以都设置为单一缓冲区,其中用指针来指示公共缓冲区中的各子分区。在所示实施例中,记录缓冲区121和重放缓冲区122每个都是48兆字节,而快进和快倒缓冲区123、124分别是8兆字节。这些容量可以按需加以调整。例如,这种缓冲区大小的调整可以取决于驱动器12的周期时间、数据传送速率、存储器成本和存储器容量可用性。在一个实施例中,快进缓冲区123和快倒缓冲区124是重放缓冲区122的组成部分。
系统10的一种典型操作将是从源A 108接收视频数据,然后将该数据记录到驱动器12中的一个盘上。同时,可以从多盘切换库11的CD或DVD向电视机110播放。但是,在所示实施例中,只有一个CD/DVD驱动器12,并且此驱动器可以在某些时间段被调用,以对一个盘进行录制,而在与被调用同时的视时(用户感觉到的)从不同的盘播放数据。为了实现这种情况,将本发明的缓冲区107用于缓存来自和去往驱动器12的信息,以便用户可以感觉到数据是连续的流。实际上,具体情况是,驱动器12在两个或两个以上不同CD/DVD或其他媒体之间分时共享,以适应在不同盘上既读(重放)又/或写(记录)的情形。可以理解,本发明的实施例可以实现向不同媒体同时读写,包括上述读/写情形以及读/读和写/写的情形的各种组合。当然,虽然考虑采用不同的物理记录媒体(一个用于记录,一个用于重放),但用户可能希望将同一CD或DVD用于两种功能。
当用户决定快进查看前部的某些内容或者快倒查看用户已经看过的某些内容时,会出现另外一个问题。在一个下面将要描述的实施例中,快进和快倒是以8X的速率(8X)来完成的,X表示这样一种数据率,以该数据率流式播放数据,则当数据显示在监视器上时观众可正确地观看到相应的图像。在所示实施例中,视频数据流数据率为每秒2兆比特。以此数据率,观看者可以看见电视机或监视器上的数据,这样,数据在用户看来就是正常的。8X的速率允许观众在监视器上看到8X的速率的数据。这是通过例如显示数据的每第8帧来实现的。这里用于讨论目的的X数据率以及(如上所述的数据率)是2兆比特每秒。还假定,一个字节8比特。当然,根据本发明,可以采用不同于本文中明确提到的2兆比特每秒的数据率和8X的速率的快进和/或快倒速率。
现在参照图2A-2D(根据图2排列),其中显示了一种时序图20,它包含几条垂直线21-28,每条线分成若干时间段。为了进行说明,所选时间段是一秒间隔。这些间隔根据数据率和缓冲区大小可取任意期望值。间隔大小与盘换出时间和特定切换器的允许周期数相匹配,以便不会过分利用切换器机械装置。
时间线21假定DVD A在DVD机械装置102(见图1)中。从时间零点开始,根据所示实施例,信息将以16X的数据传送速率(32兆比特/每秒)从DVD A传送到驱动器缓冲区D 101(图1)。因此,如时间线22所示,在1秒结束时,缓冲区D中将有传送到的32兆比特或4兆字节,一次2兆字节。工作时,将DVD A的数据流式传送到驱动器缓冲区D101中,一次2兆字节,并通过读通道104(图1)传送到48兆字节重放缓冲区P122(图1)中。
在缓冲区D和缓冲区P之间,所传信息中的每2兆字节的传送时间很小,约为五十分之一秒。为简化说明,已将此传送时间忽略。因此,如时间线23所示,从1/2秒时刻(任意选择的)开始,来自缓冲区D的信息A的前两兆字节被传送到P缓冲区。此传送最好继续到缓冲区P填满,例如将48兆字节的数据移入重放缓冲区P中。如果没有任何中断,这将会继续,直到重放缓冲区P在12秒时刻被填满,如时间线23所示。
如从(任选的)第二标记的3/4秒处开始的时间线24所示,在信息开始传送到缓冲区P中之后的任意时刻,可以以X的速率、如2兆比特每秒向用户流式播放缓冲区P中的内容。因为信息以X的速率从缓冲区P流出,所以清空回放缓冲区P需要大约192秒。因此,在12秒时刻和约190秒时刻之间,驱动器缓冲区D(如时间线21所示)可用于其他目的。
例如,如果所述用户或另一用户此刻还想将另一个源如源A108(图1)的视频记录到DVD B上,则所示系统就可以实现此目的。因此,如时间线21所示,在12秒间隔处,DVD A回到库11(图1)中。在大约16秒间隔处,如时间线28(图2D)所示,DVD B进入驱动器12中。
如时间线27(图2B)上所示,用户可以在任何时候开始接收视频数据,例如从源A。
在本示例中,所述数据在1秒间隔处进入记录缓冲区R121(图1)。此数据以1X的速率输入。因此,要完全填满48兆字节R缓冲区需要将近192秒。1秒之后的任何时间,缓冲区R可用于以16X速率开始向驱动器12传送数据,以记录到DVD B上。完成对记录缓冲区的填充将需要192秒。因为它只需要12秒来删除,故可以在192秒内的任何时候开始数据传送,最好是在缓冲区要满时,这样为其他数据流省出大段空闲期。
注意,虽然在本示例中由DVD A至DVD B的传送在12秒间隔上进行,但这也可以在12秒和约191秒之间的任意时间上进行。而且,虽然所述示例集中在两个DVD上,但同样的原理当然可适用于多个DVD、CD或其他存储装置和/或媒体。还要注意,记录可以针对任何类型的数据,如视频数据,而重放也可以针对任何类型的数据,如音频数据。
时间线24(图2A)显示了指针2402,它标出了时间线上目前正在删除数据的位置。在本示例中,该指针位于5秒间隔上,意味着用户已经以1X的流式传送速率查看或使用了来自P缓冲区的5秒的数据。如果需要,系统可具有快进缓冲区FF,如时间线25所示,快进缓冲区FF中总是具有超前于指针2402的8兆字节数据。此数据可以8X的速率查看,这样,将每第8帧显示给查看者,以便查看者可以有效地快速查看到与快进录像带将看到的一样的信息。所示实施例的8兆字节的快进(FF)缓冲区允许在更新之前查看4秒。
而且,根据当前指针2402的位置,将有最近8兆字节数据的快倒缓冲区(FR)(如图2B中时间线26所示),又以8X的速率向查看者倒放4秒数据。此信息可在循环的基础上有效地从P缓冲区传送到FF或FR缓冲区。注意,如果用户希望超出P缓冲区能力快进提供数据,则系统负责从DVD或其他源获取该数据,而同时仍然允许盘之间的互换性。这可以通过维护充满8兆字节数据的循环FF或FR缓冲区解决。
如所讨论,分配用于快进和快倒的缓冲区大小是性能和成本的均衡。内容最好以循环方式缓存,意味着最旧的内容将连续丢弃,而最新的则将连续添加。在一个示例中,采用了三个存储指针(2401、2402和2403),一个对应新内容添加地址(2401)、一个对应当前视点地址(2402),剩下一个对应旧内容的舍弃地址(2403)。
在所述示例中,系统会尝试总是使新内容地址保持指向当前视点地址前8兆字节之处,而使旧内容地址保持指向当前视点地址后8兆字节之处,这样分别维护快进和快倒缓冲区。根据所需开销,可能将单个指针用于指示新内容添加地址和旧内容舍弃地址。假定DVD驱动器采用16X的读速率,则当最先启动播放时,缓冲区D将开始以16X的速率填充快倒缓冲区FR,而如上所述以X的速率重放缓冲区FR。这在用户决定快进或快倒将足以适应换盘访问时间。
当用户启动快进时,数据以8X的速率从FF缓冲区中读出。如果快进指令正好在系统已将记录盘切换为重放盘之后到达,则将主要从DVD驱动器本身以16X的速率向快进缓冲区馈送,而该缓冲区同时以8X的速率向用户清空。在对记录盘进行服务时,快进可以持续2分钟,这是因为驱动器继续向缓冲区馈送数据,且重放速率高得足以避免缓冲区耗尽。
如果正好在重放盘已经换出而记录盘已换进时输入快进命令,则记录缓冲区将几乎满,这样,缓冲区需要以16X的速率向驱动器写数据,以便尽可能快地耗尽记录缓冲区。以此速率,记录缓冲区将在12秒后耗尽,之后,系统可以切换回到重放盘,以便重新填充重放缓冲区,并继续支持快速流式传送重放数据。以8X的速率,读缓冲区将可以在再次需要盘来填充空缓冲区之前无盘28秒维持快进。这允许在记录缓冲区耗尽后有大约16秒的时间,这时重放盘必须再次开始向播放缓冲区流式传送数据。介于这些极端情况之间按下快进按钮的情况可以是上述情况的组合。可能需要在切换回到播放盘之前部分地清空记录缓冲区和/或在切换回到记录盘之前部分地填满读缓冲区。
对于快倒,因为驱动器无法向后旋转,故可以成块读出数据,在这些块之间,有必要在逐步向内的半径范围内搜索(即搜索时间上较早的内容,因为正在逆向查看)。为此,一些系统可能希望具有比快进缓冲区长的快倒缓冲区。快倒的典型方案将类似于以上讨论的快进系统,只是因为从盘中读取的最后的块(较为接近盘中心,因此在逆向内容时间上较早)将是向用户播放的第一块,所以从盘中取回的数据直到对数据段的读取操作完成之后才会被播放。
当一个用户发出的快倒命令到达时,则8兆字节快倒缓冲区将以增加的速率如8X如时间线26上时刻2401所示的逆序开始播放。驱动器一准备好切换到重放盘,驱动器就会定位到内容上比缓存内容中当前最早时刻早128秒的点上。驱动器将把自此点起的向前128秒的内容缓存到缓冲区P中,缓冲区P随后每次补充快倒缓冲区8兆字节。以16X的速率需要8秒来读取相当于128内容秒的数据。此数据以8X的速率向用户播放,这样,缓冲区将在4秒后清空。驱动器随后将用3.5秒切换回到记录盘,以便为记录流服务,在此期间,它将以16X的速率耗尽(通过在DVD上存储的方式)记录缓冲区的内容。系统可以耗尽来自缓冲区R的16秒的数据,以免重放溢出。这将需要1秒,之后,将需要3.5秒重新加载重放盘。通过重复此序列,就可以维持8X速率的快倒,同时继续以X的速率记录输入的内容。
以上说明假定了最坏的情况,其中,记录和重放位置在不同的盘上,这需要在每个周期之间进行盘切换。如果记录和重放位置在同一盘上,则相同的基本原理适用,只是因访问时间快得多而需要少得多的缓冲空间。
现参照图3,其中显示了概括了参照图2A-2D所述的回放方法的流程图的一个实施例。从处理步骤301开始起有另外四个处理步骤302、303和305,它们分别具有相应的控制302-1、303-1、304-1和305-1,用于控制以不同的可行速率重放P缓冲区。播放速率X如上参照时间线24作了讨论,而以8X的速率进行快进重放,即处理步骤305参照时间线25予以讨论。但是,用户可选择其他重放速率,如2X、4X或任何其他的期望重放速率,并且这些重放速率除了比8X慢以外,将以如上所述的相同方式工作。同时将正在被记录的盘换出将较不严重。类似地,可以处理分别具有相应控制306-1、307-1、308-1和309-1的快倒步骤306、307、308和309。以8X速率进行的快倒、即处理步骤309已详细地参照时间线26作了讨论。倒放速率可以是X、2X、4X或任何其他希望的速率,可以理解,速率少于8X的快倒操作将为系统带来较少压力。
只要P缓冲区中剩余8兆字节以上(步骤310),则系统可以继续从重放缓冲区P中执行倒放或重放操作。但是,当缓冲区P剩余字节少于8兆字节时,最好向系统发送中断(步骤311),以便将适当的盘装入驱动器中,以继续以上述方式重新填充P缓冲区。
图4说明记录功能的控制,以便从源A流出的数据将在过程401控制之下进入源缓冲区S1中。这种情况如时间线27所示。如处理步骤402所示,这将持续到缓冲区满。如果源缓冲区分成若干分区,例如2兆字节缓冲区S1到SN分区,则系统可以通过处理步骤403按需设置标志S1到SN,并且源A将通过过程404把数据流式传送到源缓冲区S1至SN。这种流式传送可以持续到源缓冲区或其中的任何分区满为止。处理步骤405触发系统以通过处理步骤406设置标志,指示源缓冲区满。
如图4A所示,在记录时间,如参照时间线28所述,向DVD B播放源缓冲区内容。此操作由针对源S1的处理步骤407、408、409和410来控制。类似的处理步骤(未示出)以与S1一样的方式控制源S2。这些缓冲区彼此之间以“乒乓”方式切换,同时采用周密的缓冲区管理以确保不会过早重写旧数据。根据本发明实施例,可以采用单一环形缓冲区。处理步骤408即为由源缓冲区至媒体的传送,其中,处理步骤409将源缓冲区拷贝到驱动器缓冲区,而处理步骤410则将来自驱动器缓冲区的数据记录到适当的DVD(或CD)位置上。
图5说明中断服务例程(ISR)510,该例程在缓冲区之一,即记录或者重放缓冲区需要DVD驱动器提供服务时调用。在这种情况下,DVD A处理步骤511判断这是否是反向模式。如果不是,则指针通过处理步骤512更新到P中的下一重放位置。读取DVD并传送信息,进行检查以判断是否已通过处理步骤512和513传送了8兆字节。如果处理步骤514判定不需要驱动器,则经由处理步骤515,缓冲区继续如上所述进行填充12秒,如时间线22所示。如果需要驱动器,例如如果记录缓冲区满且是要记录的时间,处理步骤516标记P缓冲区中停止处理数据的位置,然后移出盘A,将盘B插入驱动器中。
如果处理步骤511评定中断是针对倒放目的,则执行处理步骤517、518、519和520,以便总是可以在倒放缓冲区中保持至少8兆字节的信息。这种情况在不需要驱动器进行记录期间继续。如果需要驱动器进行记录,则如上所述那样执行记录中断,以便在使用快进或快倒以及缓冲区将要耗尽的同时,允许数据从记录缓冲区中流式传送到DVD B。
图6针对以硬盘访问速率(未使用硬盘或其他快速访问存储器)访问任何节目内容的问题。在图6所示的实施例中,系统60将利用存放在切换器11的盘,该盘将用作整个系统的数据库管理器。该数据库盘将保持每个记录的节目(音乐、视频、应用)的第一部分(最好与其他系统信息一起),如32秒。这些段中的每一段可以占用例如数据库盘上8兆字节的空间。将有可容纳大约587个记录节目的空间,这大致相当于59个以上DVD+RW盘的空间。此数量预计足以满足大多数用户。记录次数可以减少(或添加),数据库盘上的数据段长度可以增加(减小),以优化系统。
在此配置中,非易失性在线存储器、如闪存130(图1)可用于存储菜单和/或目录结构,对用户命令予以即时响应,以从等待时间长的源端获取数据。如图6所示,如果菜单按钮按下启动处理步骤601,则处理步骤602评定期望的应用或数据在硬盘驱动器中,则系统通过处理步骤603以熟知的方式进行处理。但是如果期望的数据在盘(或其他等待时间长的存储器)上,就要如处理步骤604-605所示,判断持有所有应用的短数据段的主数据盘是否在读驱动器中,除非当前正在使用另一个盘,否则主数据盘会在其中。快速访问的非易失性存储器、如闪存130可以控制这种功能。
如果不同于主数据盘的盘将放入驱动器中,并采用并发的记录/重放方案(如上所述的方案),则如处理步骤606所示,将在切换器11中把机械装置102中的当前盘(假定它不是数据盘)收存,而如处理步骤607所示,将从切换器11取回期望的数据库盘,并将其插入机械装置102中。如果数据库盘在DVD驱动器中,并且如果没有并发进行的记录操作,则数据库盘只须保留在驱动器中,通过处理步骤608获得的开始部分将如处理步骤609所示传送到D缓冲区,并如处理步骤610所示从D缓冲区传送到P缓冲区,如上所述。
系统以16X的速率读取数据块,并将其存储在重放缓冲区中,而且还以X的速率开始播放该块以便观看。如果继续播放数据块直到缓冲区中只剩下4秒内容,切换器就会如处理步骤611所示卸载数据库盘并加载包含完整选定数据的特定盘。利用加载的特定内容盘,系统如处理步骤612所示开始向D缓冲区流式传送内容,然后如处理步骤613所示由D向P缓冲区流式传送数据,如上所述。如果此刻用户决定返回菜单,则可以从闪存中加载菜单,如处理步骤604所示,与此同时,可以如处理步骤606所示从驱动器中卸载该特定内容盘,然后如处理步骤607所示将数据库盘重新加载到驱动器中。因为数据库盘在大约4秒后可就绪,因此用户可以选择另一个条目进行观看,且响应再次相当及时。
如果数据库盘已填满,这种配置还可以采用多个数据库盘,记录可以按盘分组进行,并且在用户浏览菜单时,可以加载与体系结构中特定菜单“分支”对应的数据库盘,并且该菜单下的所有菜单选择将适用于位于随后加载的数据库盘上的内容。如果需要,可以移动读出头以与正被滚动的菜单相一致。而且,如果需要,读出头可以跟踪滚动操作,如框614所示。这就允许一旦用户作出选择即可开始内容流。
在记录会话正在进行且必须定期为记录盘服务的情况下,将存在一个窗口时间,在此期间,记录盘在DVD阅读器中,而数据库盘将不可用于即时播放。如果记录缓冲区以16X的速率耗尽,则系统可以在DVD阅读器中保持数据库盘的时间为记录盘在阅读器中时间的16倍减去加载和卸载盘所需的时间。这将使用户不得不等待从菜单作出选择的可能性最小。如果在访问或将要访问记录盘的同时用户正好从菜单作出了选择,则等待时间将是以16X的读写速率为记录盘服务所需的所有时间或其中一部分,此等待时间将仅仅是5秒,包括4秒盘切换时间。在这种情况下,当驱动器可用时,可以使用实际选定的盘而非数据库盘。
在带宽可用时,每个新记录的第一部分(在本示例中为32秒)可以拷贝到数据库盘上的新位置上。此数据库盘还可以用于其他系统功能,因此可将其保持在DVD阅读器中,直到必须将其换出以支持选定操作的最后一刻。例如,在视频点播应用中,DVD+RW数据库盘可用于替代高密度盘(HDD),以缓存正由万维网流式传送而来的内容。必要时,还可以采用上述系统和方法,在并发的记录和播放类型的操作中将此盘换入和换出。
利用这些技术,DVD+RW驱动器和切换器系统可用在个人视频录像(PVR)系统中模拟非常大的HDD。

Claims (5)

1.一种以比通过从存储源获取信息所能达到的速率快的方式向用户提供所述信息的方法,所述方法包括:
从用户接收对可由所述用户访问的存储数据的请求,所述存储数据保存在一次可访问一个的一个或多个盘上,所述盘在所述请求的时间与所述信息实际可用的时间之间具有一定的等待时间;
从不同于所述存储数据存储的位置的源位置获取存储数据的第一部分,所述第一部分的量跨越所述等待时间的时段;
缓冲来自和送往所述一个或多个盘的信息;
无论来自用户的请求如何,从包含多个所述第一部分的公共盘提供所述第一部分,每个所述第一部分对应于所述请求中不同的可能的一个请求;
以所述公共盘替换包含所请求数据的盘;
在非易失性存储器中存储菜单和/或目录结构,以对用户的命令予以即时响应;以及
移动读出头以与正被滚动的菜单相一致,读出头能够跟踪滚动操作,以允许一旦用户作出选择即可开始内容流。
2.如权利要求1所述的方法,其中,所述第一部分连同具有与其相关的等待时间的时段的其它数据一起存储在所述公共盘中,所述公共盘可连续用于从中获取数据。
3.如权利要求1所述的方法,还包括:
将提供的所述第一部分存储在缓冲区中,以便所述缓冲区可以在所述替换的时间期间向所述用户提供所述信息。
4.一种数据检索系统,所述系统包括:
数据存储库,所述库容纳多个可单独访问的存储媒体;
媒体驱动器,可用于从所述库中包含的所述存储媒体中选定的一个存储媒体读取数据,所述驱动器具有在识别出期望数据和所述识别出的数据实际可用的时间之间的等待时间;
至少一个缓冲区,用于从位于所述媒体驱动器中的存储媒体接收数据,接收所述数据的速率比使用所述数据的速率快,由此造成媒体驱动器的空闲期;
其中,所述媒体驱动器可用于在所述空闲期向用户传送至少一个节目;
其中,所述传送的节目的第一部分来自不同于其上驻留有所述至少一个节目的存储媒体的存储媒体;以及
至少一个控制器,包括用于以下处理的逻辑部件:
从用户接收对可由所述用户访问的存储数据的请求,所述存储数据保存在一次可访问一个的一个或多个盘上,所述盘在所述请求的时间和所述信息实际可用的时间之间具有一定的等待时间;
从不同于所述存储数据存储的位置的源位置获取存储数据的第一部分,所述第一部分的量跨越所述等待时间的时段;
缓冲来自和送往所述一个或多个盘的信息;
无论来自用户的请求如何,从包含多个所述第一部分的公共盘提供所述第一部分,每个所述第一部分对应于所述请求中不同的可能的一个请求;
以所述公共盘替换包含所请求数据的盘;
在非易失性存储器中存储菜单和/或目录结构,以对用户的命令予以即时响应;以及
移动读出头以与正被滚动的菜单相一致,读出头能够跟踪滚动操作,以允许一旦用户作出选择即可开始内容流。
5.如权利要求4所述的系统,其中,所述驱动器在所述多个存储媒体之间被分时共享。
CN200410048918.XA 2003-06-05 2004-06-07 将可交换存储装置用于存储节目数据的系统和方法 Expired - Fee Related CN1574052B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/455,187 US7451281B2 (en) 2003-06-05 2003-06-05 System and method for using swappable storage for storing program data
US10/455187 2003-06-05

Publications (2)

Publication Number Publication Date
CN1574052A CN1574052A (zh) 2005-02-02
CN1574052B true CN1574052B (zh) 2012-05-30

Family

ID=32655768

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200410048918.XA Expired - Fee Related CN1574052B (zh) 2003-06-05 2004-06-07 将可交换存储装置用于存储节目数据的系统和方法

Country Status (4)

Country Link
US (1) US7451281B2 (zh)
JP (1) JP4718132B2 (zh)
CN (1) CN1574052B (zh)
GB (1) GB2402517B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050132405A1 (en) * 2003-12-15 2005-06-16 Microsoft Corporation Home network media server with a jukebox for enhanced user experience
US8539535B2 (en) * 2009-11-30 2013-09-17 Time Warner Cable Enterprises Llc Methods and apparatus for supporting VOD requests in a system with hierarchical content stores
US8639894B2 (en) * 2012-01-27 2014-01-28 Comcast Cable Communications, Llc Efficient read and write operations
CN107368374B (zh) * 2017-07-26 2019-08-06 广州路派电子科技有限公司 用于嵌入式系统基于同步机制下的环形数据缓冲实现方法
KR102157366B1 (ko) * 2017-12-15 2021-03-29 주식회사 엘지화학 염료 화합물 및 포토폴리머 조성물

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1130094A (zh) * 1994-11-14 1996-09-04 世嘉企业股份有限公司 盘重放系统,卡拉ok系统与盘重放方法
EP0777228A2 (en) * 1995-12-01 1997-06-04 Symbios Logic Inc. Data storage/transfer apparatus and method
US5761417A (en) * 1994-09-08 1998-06-02 International Business Machines Corporation Video data streamer having scheduler for scheduling read request for individual data buffers associated with output ports of communication node to one storage node

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US579516A (en) * 1897-03-23 Half to alfred b
GB9103239D0 (en) 1991-02-15 1991-04-03 Kemp Michael J Improvements relating to data storage techniques
US5579516A (en) 1994-12-15 1996-11-26 Hewlett-Packard Company Method for storing data files on a multiple volume media set
US6542967B1 (en) * 1999-04-12 2003-04-01 Novell, Inc. Cache object store
US6463508B1 (en) * 1999-07-19 2002-10-08 International Business Machines Corporation Method and apparatus for caching a media stream
US6988169B2 (en) * 2001-04-19 2006-01-17 Snowshore Networks, Inc. Cache for large-object real-time latency elimination
US20030081942A1 (en) * 2001-10-29 2003-05-01 Visteon Global Technologies, Inc. Video recorder for an automobile
US8171514B2 (en) * 2002-08-21 2012-05-01 Bernier Nicklas P Managing favorite channels
US8832758B2 (en) * 2003-03-17 2014-09-09 Qwest Communications International Inc. Methods and systems for providing video on demand
US20040268400A1 (en) * 2003-06-26 2004-12-30 Microsoft Corporation Quick starting video content

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761417A (en) * 1994-09-08 1998-06-02 International Business Machines Corporation Video data streamer having scheduler for scheduling read request for individual data buffers associated with output ports of communication node to one storage node
CN1130094A (zh) * 1994-11-14 1996-09-04 世嘉企业股份有限公司 盘重放系统,卡拉ok系统与盘重放方法
EP0777228A2 (en) * 1995-12-01 1997-06-04 Symbios Logic Inc. Data storage/transfer apparatus and method

Also Published As

Publication number Publication date
GB2402517B (en) 2006-09-27
GB2402517A (en) 2004-12-08
JP2004362592A (ja) 2004-12-24
JP4718132B2 (ja) 2011-07-06
US20040250016A1 (en) 2004-12-09
GB0411558D0 (en) 2004-06-23
CN1574052A (zh) 2005-02-02
US7451281B2 (en) 2008-11-11

Similar Documents

Publication Publication Date Title
EP0080875B1 (en) Data storage system for a host computer
CN100557577C (zh) 数据存储设备、数据存储方法以及记录/再现系统
US6526225B1 (en) Disk-based digital video recorder
KR100253827B1 (ko) 멀티미디어 데이타 재생 방법 및 멀티미디어 서버 시스템
WO2007099529A1 (en) Bookmarked synchronization of files
CN1882998B (zh) 用于重放来自存储媒介的媒体流的重放设备和方法
CN101135952A (zh) 对盘驱动事务处理采用存取日志
JP2000235457A (ja) 階層型データ蓄積装置及びキャッシュデータ作成方法
CN104063184B (zh) 磁盘记录方法及其非易失性存储媒体与电子装置
WO2001073537A2 (en) System for and method of accessing blocks on a storage medium
CN1574052B (zh) 将可交换存储装置用于存储节目数据的系统和方法
US20040250039A1 (en) System and method for using swappable storage for high data content multi-source data storage
JPH08102132A (ja) 情報記録装置
JP3869008B2 (ja) 論理的に連続するクラスタ間でデータを反復する方法およびシステム
JP2003241769A (ja) コンテンツ配信システム、コンテンツ配信方法、並びに、コンテンツ配信システムで用いるコンテンツ配信サーバおよび再生機
JPH09128159A (ja) 記憶装置
JP2000115714A (ja) 映像音声情報提供システム
EP0953979B1 (en) System for supplying information to a terminal device
WO1994022134A1 (en) Buffer control for data transfer within hard disk during idle periods
WO2020213021A1 (ja) 記録装置および記録再生装置
JPH0846584A (ja) データ送出装置
JPH07200188A (ja) 情報信号送出装置及び情報信号送受装置
JP2000090649A (ja) ファイルサーバ
JP2001359031A (ja) データ記録装置及びデータ記録方法
WO2004014072A1 (en) Device and method for delayed reading of digital video data

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120530

Termination date: 20190607