CN1321030A - 传送数据的方法和设备以及存储介质 - Google Patents
传送数据的方法和设备以及存储介质 Download PDFInfo
- Publication number
- CN1321030A CN1321030A CN01119201A CN01119201A CN1321030A CN 1321030 A CN1321030 A CN 1321030A CN 01119201 A CN01119201 A CN 01119201A CN 01119201 A CN01119201 A CN 01119201A CN 1321030 A CN1321030 A CN 1321030A
- Authority
- CN
- China
- Prior art keywords
- data
- network
- ieee
- atm
- transfer equipment
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40097—Interconnection with other networks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/002—Programmed access in sequence to a plurality of record carriers or indexed parts, e.g. tracks, thereof, e.g. for editing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0652—Synchronisation among time division multiple access [TDMA] nodes, e.g. time triggered protocol [TTP]
- H04J3/0655—Synchronisation among time division multiple access [TDMA] nodes, e.g. time triggered protocol [TTP] using timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
- H04N21/43632—Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wired protocol, e.g. IEEE 1394
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/90—Tape-like record carriers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/04—Speed or phase control by synchronisation signals
- H04L7/041—Speed or phase control by synchronisation signals using special codes as synchronising signal
- H04L2007/045—Fill bit or bits, idle words
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
Abstract
数据在多个其时钟互相不同步的网络之间传送,而不产生上溢或下溢。从第一DVCR输出的数据经由第一IEEE-1394串行总线、第一ATM/IEEE-1394数据传送设备、第一UNI接口、第一ATM网络、第二ATM/IEEE-1394数据传送设备、第二UNI接口和第二ATM网络被传送到第二DVCR。第二ATM/IEEE-1394数据传送设备为每个数据流在缓冲区中存储数据并且依照缓冲区中存储数据量来删除或插入空包以防止上溢或下溢。由插入或删除空包而导致的时标偏离被逐步地校正。
Description
本发明涉及一种数据传送装置,一种数据传送方法,和一种存储介质,并且特别涉及到可以在时钟非同步的网络间传送和接收连续活动图象数据而不产生数据丢失的一种传送设备,一种数据传送方法,和一种存储介质。
图1说明了一种常规网络系统结构示例。在该网络系统中,数字视频盒式记录器(DVCR)11与IEEE-1394高速串行总线(以下简称为IEEE-1394串行总线)相连,该IEEE-1394串行总线通过ATM(异步传输模式)/IEEE-1394数据传送设备13和UNI(用户网络接口)14与ATM网络15相连。ATM网络15又进一步通过UNI 16与ATM/IEEE-1394数据传送设备17相连,并且DVCR 19通过IEEE-1394串行总线18与数据传送设备17相连。
IEEE-1394串行总线12(以及IEEE-1394串行总线18)以图2所示的方式传送数据。也就是,从DVCR 11传送来的源数据包(图2(A))被分成每个包含480字节的数据块(图2(B))。每个数据块被加上一个同步包信息头和一个CIP(公共同步包)信息头并且作为一个同步包在具有1-25微秒周期的特定周期下传送。
在每一个周期的开始,与IEEE-1394串行总线12相连设备中的特定部件形成的周期主控装置传送一个周期开始包。为了在IEEE-1394串行总线12上获得同步,与IEEE-1394串行总线相连的每个设备都具有一个周期时间寄存器。在周期开始包中的周期时间数据值通过周期主控装置产生的24.576兆赫的参考时钟信号(以下简称为参考时钟信号)来同步,该值反映在每个设备中的周期时间寄存器的值中,从而每125微秒就可使周期时间寄存器中的值同步一次。因而,ATM/IEEE-1394数据传送设备13在维持周期时间寄存器值同步的同时执行了与IEEE-1394串行总线12接口的操作。
由IEEE-1394接口单元处理之后,包数据由ATM/IEEE-1394数据传送设备13中的ATM接口单元转化成ATM信元并且被传送到ATM网络15。为了获得与ATM网络15连接的各个设备间的同步,ATM网络15通过一个8千赫频率的参考时钟信号(以下简称为ATM参考时钟信号)同步地操作。也就是说ATM/IEEE-1394数据传送设备13中的ATM接口单元通过ATM参考时钟信号同步地执行各种不同的操作。
经由ATM网络15从ATM/IEEE-1394数据传送设备13传送来的ATM信元通过UNI16提供给ATM/IEEE-1394数据传送设备17。ATM/IEEE-1394数据传送设备17的ATM接口单元重组接收的ATM信元并且将重组后的数据提供给IEEE-1394接口单元。ATM接口单元也通过ATM网络15的ATM参考时钟信号同步地操作。从ATM接口单元输出的数据通过IEEE-1394接口单元转化成包并且通过IEEE-1394串行总线18提供给DVCR 19。ATM/IEEE-1394数据传送设备17的IEEE-1394接口单元在同步周期时间寄存器的同时进行操作,从而获得了与IEEE-1394串行总线相连的各个设备间的同步。
图3是一个定时图,它说明了由DVCR 11执行的用以传送数据的操作原理,该传送经由IEEE-1394串行总线12然后又经由ATM网络15,到达与IEEE-1394串行总线18相连的DVCR 19。在该例中DVCR 11按照NTSC标准输出图象数据,29.97兆赫的帧同步信号以响应24.576兆赫总线参考时钟信号的方式在例如t1,t4,和t7的时刻被采样(图3(A))。
在时刻t1捕捉的图象数据在从时刻t1开始的总线周期中从DVCR11传送到IEEE-1394串行总线12。在上述传送过程中传送的CIP包CIP1包含一个加在其上的时标(图3(B))。
也就是,如图4所示,一个通过IEEE-1394串行总线传送的同步包由一个CIP信息头1,一个CIP信息头2和数据组成,其中16位的时间信息(同步时间)作为时标放置在CIP信息头2中。与IEEE-1394串行总线12相连的每一个设备都具有一个周期时间寄存器以获得总线上的同步,其中时标的值用周期时间寄存器中的低16位描述。CIP包CIP1时标的值被设置为与在采样时刻(时刻t1)的周期时间寄存器值与一个被加上的延迟时间TdelayAddCount的总和相等。也就是时标具有一个相应时间t3的值,它由于加上延迟时间TdelayAddCount而落后于时刻t1。被加上的延迟时间TdelayAddCount被设置为一个值,该值允许吸收例如IEEE-1394串行总线12周期定时偏移之类的抖动。
当DVCR 19经由IEEE-1394串行总线18在该接收端接收到该CIP包CIP1时,DVCR 19提取包含在CIP包CIP1中的时标(图3(C))。如上所述,由时标指明的时间相应于时刻t3。因而,在时刻t3,DVCR 19产生用于第一帧的帧同步信号。其后,DVCR 19也对第二帧第三帧等执行相同的处理。
图3所示的定时图说明了操作的基本原理。图5显示了一个实际操作的定时图。图5中,在时刻t2,与在时刻t1捕捉的第一帧相关的帧同步信号作为一个CIP包CIP1传送到IEEE-1394串行总线12,该CIP包CIP1包含一个相应于时刻t3的时标,该时标由于加上延迟时间TdelayAddCount而落后于采样时刻。该CIP包CIP1在时刻t4起始的总线周期的开始提供给DVCR 19,时刻t4由于一个总延迟时间TdelayNetl而落后于时刻t2,TdelayNetl是在经由IEEE-1394串行总线12,ATM/IEEE-1394数据传送设备13,UNI 14,ATM网络15,UNI 16,ATM/IEEE-1394数据传送设备17,和IEEE-1394串行总线18的传送期间产生的。DVCR 19从CIP包CIP1抽取时标(图5(C))并且在时刻t6相应于抽取的时标产生用于第一帧的同步信号(图5(D))。
根据通过在接收端与IEEE-1394串行总线相连的DVCR 19从CIP包CIP1抽取的时标,利用IEEE-1394串行总线18的总线参考时钟信号来计算从t4到t6所流逝的时间ToffsetAddCount#2。另一个方面,在CIP包CIP1中的时标中,由在传送端与IEEE-1394串行总线12相连的DVCR 11设置的时刻t3相应于一个时刻,该时刻滞后于总线周期的开始时刻t2的时间为ToffsetAddCount#1,它是利用IEEE-1394串行总线12的总线参考时钟而计算得来的(图5(B))。时间段ToffsetAddCount#1与时刻t3和t2间的差值相符(也就是说,在时刻t5和t4的差值中时刻t5由于TdelayNetl而滞后于时刻t3以及时刻t4由于TdelayNetl而滞后于t2)(图5(B))。
因为在发送端的IEEE-1394串行总线12的总线参考时钟和在接收端的IEEE-1394串行总线18的总线参考时钟互相不同步,所以IEEE-1394串行总线12的周期时段(图5(B))与IEEE-1394串行总线18的周期时段(图5(C))并不完全一致。因而,IEEE-1394串行总线12上从t3到t9的帧周期TsndFrame(图5(B))与IEEE-1394串行总线18上的帧周期TrevFrame(图5(D))之间的差值就产生了。
上述差值导致了从DVCR 11发送出的图象与由DVCR19再现的图象在颜色上的细微差别。同样的原因,发送与接收端间在声音上也存在差别。
这样的总线周期时间偏移能够导致接收端ATM/IEEE-1394数据传送设备缓冲区的上溢和下溢。产生上溢还是产生下溢决定于发送和接收端总线周期间的相对关系。更具体地,当发送端的总线周期短于接受端的总线周期时产生上溢,当发送端的总线周期长于接受端的总线周期时产生下溢。在图五的定时图所示的特定例子中,发送端的总线周期短于接受端的总线周期。在这种情况下,累积的延迟时间逐渐增加,在ATM/IEEE-1394数据传送设备17中停留的包的数量也在增加。
溢出产生时刻能够按照如下计算。这里,让我们假定ATM/IEEE-1394数据传送设备17的缓冲区的容量是16兆字节并且参考时钟间的相对差值是30ppm(这是由晶体振荡器控制电压产生的时钟信号间的典型差值)。当用周期时间寄存器值的单位来表示时,包的长度是3072。因而,一个CIP包停留在缓冲区期间的时间Tcip的长度由如下给出:
Tcip=3072/(24.576×30)
=4.17秒
对于具有16兆字节容量的缓冲区遭遇到一上溢需要的时间Tover的长度由如下给出:
Tover=Tcip×16777216/488=143248秒=39.8小时
因而,16兆字节的缓冲区约40小时遭遇到一上溢。
下溢出现的时间依赖于暂时存储在缓冲区中以吸收抖动的CIP包的数量。下溢出现的时间能够通过增加存储在缓冲区中包的数量来增加。然而,存储在缓冲区中包的数量的增加会导致产生在ATM/IEEE-1394数据传送设备17中的延迟时间的增加。相反地,延迟时间能够通过减少存储在缓冲区中包的数量来减少。然而,这种情况下,下溢会在较短时间内出现。更具体地,下溢产生的时间能够按照如下等式来计算。在这里我们假定存储在缓冲区中包的数量例如是等于2400(因此,延迟时间由125微秒×2400=300毫秒给出,这是实时应用中允许的上限)并且参考时钟间的相对差值是30ppm,那么CIP包在它输出之前停留在缓冲区期间的时间Tcip由如下给出:
Tcip=3072/(24.576×30)
=4.17秒
存储CIP包的缓冲区遭遇到下溢的时间Tunder由下给出:
Tunder=Tcip×2400=10008秒=2.78小时
因而,存储2400个CIP包的缓冲区约3小时遭遇到一步下溢。
为解决上面的问题,本申请人在日本专利申请NO.11-18065中提出了图6所示的网络系统。在图6所示的网络系统中,与图1相同的部分用相同的参考数字表示,在这里就不对它们作进一步的描述。该系统的结构除了放置在IEEE-1394串行总线12与ATM网络15间的ATM/IEEE-1394数据传送设备41和放置在ATM网络15与IEEE-1394串行总线18间的ATM/IEEE-1394数据传送设备42与图1中所示系统的相应设备以不同的方式配置之外,其余与图1所示系统的结构基本相同。
更具体地,图6所示的系统,ATM/IEEE-1394数据传送设备41用作IEEE-1394串行总线12的周期主控装置,以及ATM/IEEE-1394数据传送设备42用作IEEE-1394串行总线18的周期主控装置,其中IEEE-1394总线参考时钟发生器41A和42A产生的24.576兆赫总线参考时钟信号由各自的IEEE-1394串行总线12和18以与一个8KHZ ATM参考时钟信号(SDH帧脉冲)同步的方式来使用,该8KHZ ATM参考时钟信号由ATM网络15的ATM参考时钟产生器15A产生。
以上结构允许针对IEEE-1394串行总线12和18的时钟信号互相同步,因而使传送包时不遭遇到下溢或上溢成为可能。
一个些大规模的网络系统包括两个或更多的ATM网络。在这些网络系统中,例如两个ATM网络系统经由NNI(网络到网络接口)互相连接。然而,一个ATM网络的时钟参考与另一个ATM网络的时钟参考是互相独立的,它们互相不同步。
因此,即使一个与ATM网络连接的IEEE-1394串行总线的时钟信号与它的ATM时钟参考同步并且另一个与ATM网络连接的IEEE-1394串行总线的时钟信号与它的ATM时钟参考同步,一个IEEE-1394串行总线的时钟信号与另一个IEEE-1394串行总线的时钟信号也互相不同步。因而,例如当与IEEE-1394串行总线连接的DVCR再现的活动图象数据经由两个ATM网络被传送到与另一个IEEE-1394串行总线连接的DVCR,接收的活动图象数据被与另一个IEEE-1394串行总线相连的DVCR记录时,产生上溢或下溢并且因此丢失部分活动图象数据。
考虑到上述部分,本发明的一个目的是提供一种技术,该技术防止了上溢和下溢,从而使传送连续数据而不产生数据的丢失或过量成为可能。
根据本发明的一个方面,提供的数据传送设备包括:对于每一个数据流独立地存储数据的存储装置,每一个数据流从第一网络接收并且将被传送到第二网络;用于检测存储在用于每一个数据流的存储装置中的数据量的检测装置;以及根据由检测装置给出的检测结果用来控制传送到第二网络的数据的控制装置。
最好是,第一和第二网络分别是广域数字网络和IEEE-1394串行总线。
最好是,控制装置在存储在存储装置中的数据量变成等于或大于预定的阈值之后开始从存储装置中读取数据。
最好是,当存储在存储装置中的数据量变成等于或大于预定的阈值时,控制装置抛弃存储在存储装置中数据包含的空数据。
最好是,当存储在存储装置中的数据量变成等于或大于预定的阈值时,控制装置将空数据插入数据中以传送到第二网络。
最好是,当控制装置从存储在存储装置中的数据抛弃空数据或者插入空数据到传送到第二网络的数据中时,控制装置在预定的周期中逐渐校正包含在数据中的时标的偏离。
最好是,控制装置在时标被调整的期间基本上在该周期的中点插入或抛弃空数据。
第一网络可以与另一个第一网络相连,该网络根据网络时钟与先前的第一网络并不同步。
数据可以是包含暂时连续内容的视频数据或音频数据。
根据本发明的另一个方面,提供的数据传送方法包括的步骤有:针对每一个数据流控制存储数据的操作,每一个数据流从第一网络接收并且将传送到第二网络;针对每一个数据流检测在存储控制步骤中存储的数据量;并且根据在检测步骤中获得的检测结果控制传送数据到第二网络的操作。
根据本发明的再一个方面,提供了在其上包含所存储的程序的存储介质,该程序包含的步骤有:针对每一个数据流的控制存储数据的操作,每一个数据流从第一网络接收并且将传送到第二网络;针对每一个数据流检测在存储控制步骤中存储的数据量;并且根据在检测步骤中获得的检测结果控制传送数据到第二网络的操作。
在根据本发明的数据传送设备,数据传送方法,和存储介质中,已从第一网络接收来的并且将要传送到第二网络的数据针对每一个数据流独立地存储,并且到第二网络数据的传送根据针对每一个数据流的存储数据量来控制。
图1是一说明传统网络系统结构的示意图;
图2是一说明经由IEEE-1394串行总线传送同步包的示意图;
图3是一说明图1所示的网络系统操作原理的定时图;
图4是一说明同步包结构的示意图;
图5是一说明图1所示的网络系统操作的定时图;
图6是一说明先前提出的网络系统结构的示意图;
图7是一说明按照本发明的网络系统结构实例的示意图;
图8是一说明图7所示的ATM/IEEE-1394数据传送设备42-2结构的块图。
图9是一说明图8所示的时钟同步电路59结构的方框图;
图10是一说明图7所示的DVCR 11-1操作的流程图;
图11是一说明图7所示的ATM/IEEE-1394数据传送设备42-2操作的流程图;
图12是一说明与图11所示过程相关的时间的定时图;
图13是一说明图7所示的ATM/IEEE-1394数据传送设备42-2的中间缓冲区结构实例的示意图;
图14是一说明图11所示步骤S57中重写执行过的时标过程细节的示意图;
图15是一说明图14所示步骤S87执行过程的流程图;
图16是一说明图11所示步骤S61中上溢防止过程细节的流程图;
图17是一说明图11所示步骤S62中下溢防止过程细节的流程图;
图18是一说明图7所示的DVCR 19-2操作的流程图。
图7说明了根据本发明的一个网络系统。在该网络系统中,数字视频盒式记录器(DMCR)11-1与IEEE-1394串行总线12-1相连,IEEE-1394串行总线12-1经由一个ATM(异步传输模式)/IEEE-1394数据传送设备41-1和一个UNI(用户网络接口)14-1与ATM网络15-1相连。ATM网络15-1进一步经由UNI 16-1与ATM/IEEE-1394数据传送设备42-1相连,并且一个DVCR 19-1经由一个IEEE-1394串行总线18-1与ATM/IEEE-1394数据传送设备42-1相连。
ATM/IEEE-1394数据传送设备41-1用作IEEE-1394串行总线12-1的周期主控装置,以及ATM/IEEE-1394数据传送设备42-1用作IEEE-1394串行总线18-1的周期主控装置,其中IEEE-1394总线参考时钟发生器41A-1和42A-1产生24.576兆赫总线参考时钟信号,该信号被各IEEE-1394串行总线12-1和18-1以与ATM网络15-1的ATM参考时钟发生器15A-1产生的8KHzATM参考时钟信号(SDH帧脉冲)同步的方式来使用。
相同地,数字视频盒式记录器(DVCR)11-2与IEEE-1394串行总线12-2相连,IEEE-1394串行总线12-2经由一个ATM/IEEE-1394数据传送设备41-2与一个UNI 14-2与ATM网络15-2相连。ATM网络15-2进一步经由UNI 16-2与ATM/IEEE-1394数据传送设备42-2相连,并且一个DVCR 19-2经由一个IEEE-1394串行总线18-2与ATM/IEEE-1394数据传送设备42-2相连。
ATM/IEEE-1394数据传送设备41-2用作IEEE-1394串行总线12-2的周期主控装置,以及ATM/IEEE-1394数据传送设备42-2用作IEEE-1394串行总线18-2的周期主控装置,其中IEEE-1394总线参考时钟发生器41A-2和42A-2产生24.576兆赫总线参考时钟信号,该信号被各IEEE-1394串行总线12-2和18-2以与ATM网络15-2的ATM参考时钟发生器15A-2产生的8KHzATM参考时钟信号(SDH帧脉冲)同步的方式来使用。
两个ATM网络15-1和15-2经由NNI(网络到网络接口)101互相连接。然而,与ATM网络15-1相关联的ATM时钟参考和与ATM网络15-2相关联的ATM时钟参考是互相独立的,并且它们互相不同步。
图8说明了ATM/IEEE-1394数据传送设备42-2的结构(ATM/IEEE-1394数据传送设备42-1,ATM/IEEE-1394数据传送设备41-1,以及ATM/IEEE-1394数据传送设备41-2虽然没有示出但以相同的方式来构成)。
CPU60通过控制ATM SAR(分割与重组)块58,ATM PHY块57,IEEE-1394链路层块55,IEEE-1394 3端口PHY块54,及系统控制器61来执行接口操作。
一个调度定时器63在8 KHz ATM参考时钟(ATM/SDH帧时间信号)上执行分频从而输出定时器中断信号到CPU 60。存储块62经由局部总线64与系统控制器61相连并且用来存储要传送的包数据和接收到的包数据。系统控制器也与块71及块72相连,其中块71经由PCI(周边元件互连)总线65用来向和从ATM网络(ATM/SDH(同步数字系列))15-2发送和接收数据,并且块72用来向和从IEEE-1394串行总线18-2发送和接收数据。块71包含ATM SAR块58,ATM PHY块57,光学块56,块72包含IEEE-1394链路层块55和IEEE-1394 3端口PHY块54。
当ATM SAR块58经由系统控制器61和PCI总线65从存储块62接收数据时,ATM SAR块58将接收的数据分割为ATM信元并且将所得的ATM信元传送到ATM PHY块57。相反地,当ATM SAR块58从ATM PHY块57接收ATM信元时,ATM SAR块58装配接收到的ATM信元并且将装配的数据经由系统控制器61和PCI总线65传送到存储块62。ATM PHY块57将ATM SAR块58提供的ATM信元转化成符合光学块56规范的数据并且将所得数据输出到光学块56。相反地,当ATM PHY块57从光学块56接收数据时,ATM PHY块57从接收的数据抽取要传送到ATM SAR块58的ATM信元并且将抽取的ATM信元输出到ATM SAR块58。光学块56以光学信号的形式从ATM网络15-2接收数据并且将接收的数据转化为电信号。所得电信号提供给ATM PHY块57。另一个方面,当光学块56从ATM PHY块57接收数据时,光学块56将接收的数据转化为光学信号并且将所得光学信号输出到ATM网络15-2。
IEEE-1394链路层块55经由系统控制器61和PCI总线65以ATM格式从存储块62接收数据并且将接收的数据通过使用CPU 60转化为适合IEEE-1394串行总线的预定格式。所得数据输出到IEEE-1394 3端口PHY块54。相反地,当IEEE-1394链路层块55以与IEEE-1394串行总线相关联的格式从IEEE-1394 3端口PHY块54接收数据时,IEEE-1394链路层块55将接收的数据经由系统控制器61和PCI总线65输出到存储块62。数据然后通过CPU 60转化成ATM格式。IEEE-1394 3端口PHY块54将从IEEE-1394链路层块55接收的数据转化为一个按照IEEE-1394串行总线标准形式的信号并且将所得信号经由端口51至53之一个输出到IEEE-1394串行总线18-2。当IEEE-1394 3端口PHY块54经由端口51至53之一个从IEEE-1394串行总线18-2接收数据时,IEEE-1394 3端口PHY块54将接收的数据传送到IEEE-1394链路层块55。
ATM PHY块57抽取一个8KHz ATM参考时钟信号。抽取的ATM参考时钟信号提供给时钟同步电路59和IEEE-1394链路层块55。IEEE-1394链路层块55检测一个传送与接收的ATM参考时钟信号同步的IEEE-1394串行总线周期的周期开始包的定时。时钟同步电路59(按照图7所示的总线参考时钟产生器42A-2)产生一个与从ATMPHY块57接收的ATM参考时钟信号同步的由IEEE-1394串行总线使用的24.576兆赫的总线参考时钟信号。产生的总线参考时钟信号输出到IEEE-1394 3端口PHY块54。
时钟同步电路59如图9所示构成。也就是,如图9所示,时钟同步电路59以PLL电路的形式构成,该电路中相位比较在从ATM PHY块输入的8 KHATM参考时钟信号和从分频器81输入的8KHz时钟信号之间进行,相位错误信号输出到一滤波器(低通滤波器)83。滤波器83平滑所接收的相位错误信号并且输出被平滑的错误信号到电压控制的晶体振荡器(VCXO)84。晶体振荡器84设置在标称频率24.576兆赫上振荡。电压控制晶体振荡器84产生一个与从滤波器83输入的控制信号(控制电压)相对应的时钟信号。产生的时钟信号作为总线参考时钟信号输出到IEEE-1394 3端口PHY块54。从电压控制晶体振荡器83输出的总线参考时钟信号也输入到分频器81,它将输入的信号除以3072并且将所得信号输出到相位比较器82。
因而,时钟同步电路59产生和输出24.576兆赫的IEEE-1394串行总线参考时钟信号,它比IEEE-1394标准(±100ppm)推荐的具有更高的精度(+10ppm)并且它与从ATM PHY块57输入的ATM网络15-2的8KHz ATM参考时钟信号同步。
设备间发送和接收数据的操作如下所述,在该情况下数字视频(DV)数据在从发送端与IEEE-1394串行总线12-1相连的DVCR 11-1发送到在接收端与IEEE-1394串行总线18-2相连的DVCR 19-2。
图10是说明在发送端因DVCR 11-1执行过程的流程图。这里,DVCR 11-1被假定按照NTSC标准采样视频信号并且输出所得信号。
在步骤S1中,DVCR 11-1在时刻t1按照由DVCR 11-1产生的24.576兆赫时钟信号对29.97兆赫帧同步信号采样。在IEEE-1394串行总线12-1中,因为ATM/IEEE-1394数据传送设备41-1用作周期主控装置,与IEEE-1394串行总线12-1相连的DVCR 11-1的周期时间寄存器具有一个值,该值反映了由ATM/IEEE-1394数据传送设备产生的周期开始包所包含的周期时间数据。周期时间数据与用作周期主控装置的ATM/IEEE-1394数据传送设备41-1的周期时间寄存器的值精确地相等,其中该值响应总线参考时钟信号来记数。因此,DVCR 11-1的周期时间寄存器值以与ATM/IEEE-1394数据传送设备41-1周期时间寄存器值同步的方式每125微秒发生变化。
在步骤S2中,在当前时刻(时刻t1),周期时间寄存器的低16位值与延迟时间TdelayAddCount相加,所得结果放在包含第一帧帧同步信号CIP包的CIP信息头同步时间域中(图4)。之后,在步骤S3,DVCR 11-1在时刻t2开始的总线周期中将上述CIP包作为等时包发送到IEEE-1394串行总线12-1。
与传统系统相同,包含在CIP包中的时标具有一个相应于时刻t3的值,该值由于加上的延迟时间TdelayAddCount而滞后于时刻t1。
从DVCR 11-1输出的数据经由IEEE-1394串行总线12-1传送到ATM/IEEE-1394数据传送设备41-1。在ATM/IEEE-1394数据传送设备41-1中,上述数据经由例如端口51输入到IEEE-1394 3端口PHY块54(ATM/IEEE-1394数据传送设备41-1具有与图8中所示的ATM/IEEE-1394数据传送设备41-2相同的结构),接口过程根据该数据执行。接口过程按照时钟同步电路59产生的总线参考时钟信号与ATM参考时钟信号同步地执行,因而该过程与ATM网络15-1的操作相位上同步。相应与ATM PHY块57提供的ATM参考时钟信号同步而产生的周期开始包的传送时间,IEEE-1394链路层块55处理从IEEE-1394 3端口PHY块54接收来的数据。所得数据提供到PCI总线65。系统控制器61经由PCI总线65接收该数据并且将它经由局部总线64传送到存储块62。存储块62存储接收的数据。
CPU 60经由系统控制器读取存储在存储块62中的数据并且将数据提供给ATM SAR块58。ATM SAR块58将从存储块62传送来的数据分割为ATM信元并且将所得ATM信元提供给ATM PHY块57。ATM PHY块57将从ATM SAR块58接收来的ATM信元转化为满足光学块56规范的数据。所得数据输出到光学块56。光学块56经由UNI 14-1将所得数据输出到ATM网络15-1。
ATM网络15-1将经由UNI 14-1从ATM/IEEE-1394数据传送装置41-1接收来的ATM信元经由NNI 101提供给ATM网络15-2。ATM网络15-2经由UNI 16-2将接收的ATM信元经由NNI 101提供给数据传送装置42-2。
现在,将ATM/IEEE-1394数据传送装置42-2以图11所示的流程图为参考描述如下。在步骤S51中,响应由调度定时器63每4毫秒产生的调度定时器中断,CPU 60开始流程图中所示的操作。
出现中断的间隔以图12为参考描述如下。在本实施例中,当时标被重写时,重写被执行从而时标以用户预定的默认值Def_Syncperiod为长度的周期(例如24帧)逐渐地变化,这将在以后进一步地详细描述。DV数据的一个帧在IEEE-1394串行总线的250个周期中传送完,其中一个周期长125微秒。图11的流程图所示的过程每4毫秒,也就是每32个周期执行一次。
在步骤S52中,CPU 60将ATM网络15-2提供的ATM信元转化为包并且存储在中间缓冲区中从而不同的数据流存储在不同的缓冲区中。
更具体地,光学块56将从ATM网络15-2以光学信号形式提供的ATM信元转化为电信号并且将所得电信号提供给ATM PHY块57。ATM PHY块57从由光学块56接收来的数据抽取出要传送给ATM SAR块59的ATM信元。抽取的信元提供给ATM SAR块58。ATM SAR块58装配从ATM PHY块57接收来的ATM信元并且将所得数据经由系统控制器51和PCI总线65提供给存储块62。存储器62存储接收的数据。
在存储块62中,中间缓冲区如图13所示针对各数据流而形成。在图13所示的例子中,中间缓冲区针对经由VCCs(虚拟通路连接)从ATM网络15-2提供的各数据流而形成,其中VCCs在形成UNI 6-2的ATM光纤111中实现。在图13所示的例子中,有两个VCCs,也就是VCC#1和VCC#2,并且两个中间缓冲区121-1和121-2针对相应于VCC#1和VCC#2的数据流#1和数据流#2而形成。例如,VCC#1相应于在IEEE-1394串行总线18-1和IEEE-1394串行总线12-2之间形成的VCC,而VCC#2相应于在IEEE-1394串行总线12-1和IEEE-1394串行总线18-2之间形成的VCC。在这特定例子中,从IEEE-1394串行总线18-1接收的数据提供给针对流#1的中间缓冲区121-1并且存储在其中,从IEEE-1394串行总线12-1接收的数据提供给针对流#2的中间缓冲区121-2并且存储在其中。虽然在这里为了简化而假定每一个串行总线只传送一个数据流,其实是可以传送多个数据流的。在这种情况下,有多少数据流就有多少中间缓冲区和VCCs形成。
在步骤S53中,CPU 60设置代表数据流编号的变量n的初始值等于1。此后,在步骤54中,在数据流的起点处(紧跟在对数据流的处理开始之后),CPU 60确定存储在针对流#n(在图13所示的特定例子中n=1或2)的中间缓冲区的数据量是否是小于抖动吸收阈值。
如图13所示,各流的中间缓冲区121-1和121-2具有最大缓冲区尺寸N(例如等于256个CIP)。此外每一个中间缓冲区,设置了一个上限H(例如等于96个CIP),一个下限L(例如等于32个CIP),一个抖动吸收阈J(例如等于64个CIP)。这里,上限H大于下限L,抖动吸收阈J设置为下限L和上限H之间的值。
如果在这里确定数据流已经开始并且存储在针对流#n(本例中n=1)的中间缓冲区121-1中的数据量小于抖动吸收阈,则处理过程跳到步骤S63。在步骤S63中,确定对所有中间缓冲区(图1 3示例中的两个中间缓冲区121-1和121-2)所读数据是否完整。目前,所读数据不完整,因而过程跳到步骤S64。在步骤S64中,变量n的值加1。也就是在该特定情况下n变为2。
此后,过程返回到S54再一步确定数据流是否已经开始并且存储在针对流#2的中间缓冲区121-1中的数据量是否小于抖动吸收阈J。如果确定数据流已经开始并且存储在针对流#2的中间缓冲区121-1中的数据量小于抖动吸收阈J,则过程跳转到步骤S63。在步骤63中,确定对所有中间缓冲区所读数据是否完整。在该特定例子中,所读数据不完整,因而过程跳到步骤S64并且变量n的值加1。如果变量n的值达到最大值,则在下一步增加操作中变量n的值复位到初始值(本例中为1)。在本例中,变量n的值现在是2,它等于最大值了,因而n的值复位到1。此后,过程返回到步骤54,并且上述过程重复执行。
如上所述,存储在针对流#1的中间缓冲区121-1或存储在针对流#2的中间缓冲区121-2的数据量变成等于或大于抖动吸收阈之后执行到IEEE-1394串行总线的数据传送。这使得有效地吸收发生在网络中的抖动成为可能。然而,如果抖动吸收阈值太大,就会导致一个大的延迟。相反地,如果抖动吸收阈J太小,能够吸收的抖动只限制在一个小的范围内。
在上述过程的重复期间中,存储在针对流#1的中间缓冲区121-1或针对流#2的中间缓冲区121-2的数据量变成等于或大于吸收阈值J。在该阶段,步骤54确定存储在缓冲区中的数据量小于抖动吸收阈值,因而过程前进到步骤S55。在步骤S55,CPU 60从针对流#1(该例中n=1)的中间缓冲区121-1读取一个数据包。此后,在步骤S56中,确定CIP是否是一个帧开始的CIP。如果在这里确定CIP是否是一个帧开始的CIP,处理前进到步骤S57并且时标被重写。重写时标的操作将在以后参考图14详细叙述。CIP信息头中描述的时标只有在一个帧开始的CIP中有正确值。因而,当在步骤S56中确定当前CIP是一个帧开始的CIP时,则在步骤S57中那个CIP的时标被重写。另一个方面,如果当前CIP不是一个帧开始的CIP,则时标具有一个错误值并且因而不必重写时标。因此,该情况下步骤S57被跳过。
在步骤S58中,CPU 60确定4ms周期(对应于32个周期)内读取的CIP是否完整。正如早先以图12为参考所描述的,图11中流程图所示的操作以4ms为周期执行。这表示着4ms(对应32周期)内累积的数据存储在针对流#1的缓冲区121-1中。如果在步骤S58中确定4ms周期内读取的CIP不完整,则过程返回到步骤S55,并且步骤S55和以下步骤被重复。
如果在步骤S58中确定4ms周期内读取的CIP是完整的,则过程前进到步骤S59。在步骤S59中,CPU 60计算存储在针对流#1的中间缓冲区121-1中的数据量。此后,在步骤S60,确定步骤S59计算的数据量是否等于或大于上限H,等于或小于下限L,或者在下限L和上限H的范围之间。如果在步骤S60确定存储在缓冲区中的数据量是等于或大于上限,有一种可能性即针对该流的中间缓冲区中会产生上溢。在这种情况下,为避免上述问题,过程前进到步骤S62,并且执行下溢防止程序。下溢防止程序将在以后参考图17中所示的流程图详细描述。
当步骤S61的上溢防止程序或步骤S62的下溢防止程序完成,或者在步骤S60确定缓冲区中的数据量在下限L和上限H之间时,则过程前进到步骤S63。在步骤S63,确定对所有中间缓冲区读取的数据是否完整。在该特定情况下,n=1,因而有一个中间缓冲区它的数据没有被读取。因此,过程前进到步骤S64,并且变量n的值加1从而n变为2。此后,过程返回到步骤S54去执行针对流#2的相似处理。
如果确定在步骤S63中对所有中间缓冲区读取的数据是完整的,则过程前进到步骤S65,并且CPU60被传送到IEEE-1394串行总线。
也就是,CPU 60将步骤S55读取的CIP经由系统控制器61和PCI总线65提供给IEEE-1394链路层块55。IEEE-1394链路层块55将以ATM格式接收的数据通过使用CPU 60转化为被IEEE-1394串行总线使用的预定格式。结果数据输出到IEEE-1394 3端口PHY块54。IEEE-1394 3端口PHY块54将从IEEE-1394链路层块55接收的数据转化为按照IEEE-1394串行总线标准的形式的信号并且将所得信号经由例如端口51和52输出到各IEEE-1394串行总线12-2和18-2。传送到IEEE-1394串行总线18-2的同步包提供给DVCR 19-2。
图11中所示的步骤S57中的重写时标的操作将在下面参考图14所示的流程图进一步详细描述。
首先,在步骤S81中,CPU 60抽取在一个CIP的SyncTime(图4)中描述的时标。在步骤S82中,CPU 60确定DiffCycleCount是否已经被计算。DiffCycleCount是一个值,它反映了有一个发送设备与其相连的IEEE-1394串行总线周期主控装置的周期时间寄存器值与有一个接收设备与其相连的IEEE-1394串行总线周期主控装置的周期时间寄存器值之间的差值。和时标相同,DiffCycleCount用16位表示,其中高4位用来指明周期记数值而低12位用来指明周期偏移值。
如果在这里DiffCycleCount没有被计算,则过程前进到步骤S83。在步骤S83中,CIP被传送到IEEE-1394串行总线时,CPU 60计算出抽取的时标的周期记数值(高4位)与此时周期时间寄存器的周期记数值之间的差值。在步骤S84,CPU 60将TdelayAdd的周期记数值加到在步骤S83中计算出的差值上从而获得DiffCycleCount。此后,过程前进到步骤S95。
如果在步骤S82中确定DiffCycleCount的值已经被计算出,过程前进到步骤S85。在步骤S85,CPU 60确定指明下溢产生的标志F_UnderFlowOccur是否被设置为“ON”。当存储在缓冲区中的数据量小于下限L时,则该标志在步骤S140中设置为“ON”,步骤S140将在以后参考图17描述。如果步骤S85确定标志F_UnderFlowOccur是在“ON”状态,则过程前进到步骤S86。在步骤S86,CPU 60将3072/Def_SyncPeriod加到Sam_SyncPeriod上。
当时标通过多个帧逐一个地被重写时,Def_SyncPeriod被用来规定其上时标被重写帧的帧数(例如24帧),并且Def_SyncPeriod的默认值被用户预定。Sam_SyncPeriod是一个代表时标低12位值的变量,时标在通过帧的数目由Def_SyncPeriod规定的帧上变化。高到4096的值可以用12位来表示,其中3072的值相应于1周期(1是时标高4位的最小有效位)。因此,为了通过在由Def_SyncPeriod规定其数目的帧上逐渐改变时标值,时标将随着一个值从一帧到另一帧变化,该值是通过将对应于一个周期的3072除以Def_SyncPeriod(帧数)获得的。换句话说,Sam_SyncPeriod的值在Def_SyncPeriod的周期内从一个帧到另一个帧将递增3072/Def_SyncPeriod。即,Sam_SyncPeriod的值到下一个帧将增加1,例如Sam_SyncPeriod1,Sam_SyncPeriod2,等等。因此Sam_SyncPeriod指明了在Def_SyncPeriod每一个周期内的位置(相位)。
在步骤S87中,CPU 60确定Sam_SyncPeriod的值是否等于3072/2。即,确定当前被处理帧的位置(相位)到达了由Def_SyncPeriod规定的周期(24帧)中的精确中间位置(第12帧)。如果在这里确定Sam_SyncPeriod的值等于3072/2,则过程前进到步骤888。在步骤S88中,CPU 60打开标志F_EmptyInsert,当标志F_EmptyInsert在ON状态时,一个空帧将插入针对流#n的中间缓冲区中,这将在以后步骤S133中参考图17详细描述。如果在这里确定步骤S87中Sam_SyncPeriod的值不等于3072/2,则步骤S88被跳转。即,在该情况下,标志F_EmptyInsert不被打开,因而图17所示步骤S133的空包插入不被执行。
即,当存在下溢产生的可能性时,一个空包被插入包含由用户规定的Def_SyncPeriod来表示其帧数的帧的周期的精确的中间位置(对应于3072/2)。这就防止了两个或更多的空包被插入由Def_SyncPeriod规定的周期中。
也就是,过程前进到S89,在此处CPU 60将Sam_SyncPeriod加上DiffCycleCount。即,在步骤S86相应于Sam_SyncPeriod的值增加等于一个帧的数量,该值又被加上DiffCycleCount并且DiffCycleCount更新值被加到CIP的原时标上从而在该帧开始处的时标被重写。虽然空包插入只是在Def_SyncPeriod的精确中间执行一次,但时标在Def_SyncPeriod的整个周期上一帧一帧地逐一重写。
在这种由Def_SyncPeriod规定的周期中空包插入只执行一次的方法中,相应于空包插入而重写的时标值的变化在允许插入一个或更多空包的情况下可变成更小。而且,在Def_SyncPeriod的整个周期上时标逐帧重写将导致时标变化的离散,这是由于在Def_SyncPeriod的整个周期上一个空包的插入而造成的,因而使针对每一个插入的时标的变化进一步减少。此外,因为空包被插入在Def_SyncPeriod周期(时标重写周期)的基本上中间位置(等于3072/2)上,从而使得与IEEE-1394串行总线相连的设备以更稳定和更可靠的形式再现参考时钟成为可能。
另一个方面,如果在步骤S85中确定标志F_UnderFlowOccur不是在ON状态,则过程前进到S90以进一步确定标志F_OverFlowOccur是否在ON状态。正如以后将描述的,当存储在缓冲区中的数据量大于上限H时,在图16步骤S120中标志F_OverFlowOccur被打开。
如果确定了标志F_OverFlowOccur在打开状态,过程前进到步骤S91。在步骤S91,CPU 60将3072/Def_SyncPeriod加到Sam_SyncPeriod上。此后,在步骤S92,CPU 60确定在步骤S91中更新的Sam_SyncPeriod值是否等于3072/2。步骤S91和S92类似于早先描述的步骤886和S87。
如果在步骤S92确定Sam_SyncPeriod的值等于3072/2,则过程前进到步骤S93。在步骤S93,CPU 60打开标志F_EmptyDiscard。当标志F_EmptyDiscard在ON状态时,一个空包将在以后详细描述的图16所示步骤S113中被抛弃。如果在步骤S92确定Sam_SyncPeriod的值不等于3072/2,步骤S93被跳过。
此后,在步骤S94中,CPU 60从DiffCycleCount减去步骤S91中更新的Sam_SyncPeriod值从而DiffCycleCount具有一个值,该值对应于步骤S91中更新的Sam_SyncPeriod值。此后,在步骤S95,DiffCycleCount的值加到原时标上,得到的结果值作为一个时标放置在CIP的sync时间域中。
即,当存在下溢产生的可能性时,一个空包被抛弃,其中抛弃在执行空包插入的中间位置由Def_SyncPeriod定义的周期中只被执行一步。然而,当空包抛弃时所必须的时标时,在Def_SyncPeriod的整个周期中重写操作被逐帧执行。
步骤S84完成之后,或者如果在步骤S90确定标志F_OverFlowOccur不是在ON状态,过程前进到步骤S95。
在步骤S95,CPU 60将步骤S84中计算的或先前已计算的DiffCycleCount值加到步骤S81中所抽取时标的值上。所得值放置在图11中步骤S55读取的CIP的同步时间域中。此后,过程前进图11中步骤S58。
图11所示步骤S61中上溢防止程序将参考图16所示流程图在下面进一步详细描述。正如早先参考图11所描述的,当步骤S60确定存储在缓冲区中的数据量大于上限H时,该程序被执行。
步骤S111中,CPU 60确定F_OverFlowOccur是否在ON状态。如果F_OverFlowOccur不是在ON状态,过程前进到步骤S119,在该步骤中确定T_OverFlowPeriod是等于还是大于Def_OverFlowPeriod。T_OverFlowPeriod代表以4ms(32周期)为单位的从F_OverFlowOccur打开后开始的时间长度,并且Def_OverFlowPeriod具有一个预先由用户设置以4ms为单位的默认值。与按照NTSC或PAL标准的视频信号的帧为单位来表示的Def_SyncPeriod和Sam_SyncPeriod来比较,T_OverFlowPeriod和Def_OverFlowPeriod以周期为单位来表示。这允许抛弃空包的记时被控制的更精确并且也允许抛弃空包间所规定的间隔比只由Def_SyncPeriod和Sam_SyncPeriod来规定的间隔有更大的范围。
如果在步骤S119中确定T_OverFlowPeriod小于Def_OverFlowPeriod,过程前进到步骤S121。在步骤S121中,CPU 60将32周期加到T_OverFlowPeriod上。因此,T_OverFlowPeriod被设置来指明一个周期的长度,该周期从缓冲区中的数据量达到上限H的时刻开始。
如果上述过程以32周期为单位来重复,则T_OverFlowPeriod的值逐渐增加并且该值最后能够变成等于或大于Def_OverFlowOcuur。该情况下,过程从步骤S119前进到S120,步骤S120中CPU 60打开标志F_OverFlowOcuur。即,该标志指明从缓冲区中数据量达到上限H时开始的周期变成大于用户规定的Def_OverFlowPeriod。
如果标志F_OverFlowOcuur通过以上过程打开,当步骤S111在进一步通过32个周期后执行时,确定标志F_OverFlowOcuur是在ON状态,因此过程前进到步骤S112。在步骤S112,确定标志F_EmptyDiscard是否在ON状态。如上所述,标志在图14所示步骤S93中被打开。即,如果Sam_SyncPeriod的值没有达到3072/2,标志F_EmptyDiscard就没有被打开。该情况下,不进一步执行上溢防止程序。
如果在步骤S112确定标志F_EmptyDi scard是在ON状态,过程前进到步骤S11 3并且CPU 60从针对流#n的中间缓冲区中抛弃一个空包。因为空包已经被抛弃,CPU 60在步骤S114关闭标志F_EmptyDiscard。
此后,在步骤S115,CPU 60确定Sam_SyncPeriod的值是否变成等于或大于3072。如果Sam_SyncPeriod的值小于3072,不进一步执行上溢防止程序。
当F_OverFlowOcuur在ON状态时,Sam_SyncPeriod的值由图14所示步骤S90和S91逐帧增加。当帧数达到Def_SyncPeriod规定的值时,Sam_SyncPeriod的值变为3072。如果下一个帧上的处理开始了,Sam_SyncPeriod的值变成大于3072。该情况下,过程从步骤S115前进到S116并且CPU 60关闭标志F_OverFlowOcuur。而且,步骤S117和S118中,Sam_SyncPeriod和T_OverFlowPeriod的值复位到0。
此后,过程返回到图11所示步骤S63。
现在,将在以下参考图17所示流程图进一步详细描述下溢防止程序。当确定缓冲区中的数据量等于或小于下限时,开始该程序。
在步骤S131,CPU 60确定标志F_UnderFlowOcuur是否在ON状态。如果确定标志F_UnderFlowOcuur不在ON状态,过程前进到步骤S139,在步骤S1 39中确定T_UnderFlowPeriod是等于还是大于Def_UnderFlowPeriod。T_UnderFlowPeriod代表以4ms(32周期)为单位的从F_UnderFlowOccur打开后开始的时间长度,并且Def_UnderFlowPeriod具有一个预先由用户设置以4ms为单位的默认值。与按照NTSC或PAL标准以视频信号的帧为单位来表示的Def_SyncPeriod和Sam_SyncPeriod相反,T_UnderFlowPeriod和Def_UnderFlowPeriod以周期为单位来表示。这允许插入空包的记时被控制的更精确并且也允许插入空包间的规定的间隔比只由Def_SyncPeriod和Sam_SyncPeriod来规定的间隔有更大的范围。
如果在步骤S139中确定T_UnderFlowPeriod小于Def_UnderFlowPeriod,过程前进到步骤S141。在步骤S141中,CPU 60将32周期加到T_UnderFlowPeriod上。因此,T_UnderFlowPeriod被设置来指明一个周期的长度,该周期从缓冲区中的数据量达到上限H的时刻开始。
如果上述过程以32周期为单位来重复,则T_UnderFlowPeriod的值逐渐增加并且该值最后能够变成等于或大于Def_UnderFlowOcuur。该情况下,过程从步骤S139前进到S140,步骤S140中CPU 60打开标志F_UnderFlowOcuur。即,该标志指明从缓冲区中数据量达到下限L时开始的周期变成大于用户规定的Def_UnderFlowPeriod。
如果标志F_UnderFlowOcuur通过以上过程打开,当步骤S131在进一步通过32个周期后执行时,确定标志F_UnderFlowOcuur在ON状态,因此过程前进到步骤S132。在步骤S132,确定标志F_EmptyInsert是否在ON状态。如上所述,标志在图14所示步骤S88中被打开。即,如果Sam_SyncPeriod的值没有达到3072/2,标志F_EmptyInsert就没有被打开。该情况下,不进一步执行下溢防止程序。
如果在步骤S132确定标志F_EmptyInsert是在ON状态,过程前进到步骤S133并且CPU 60从针对流#n的中间缓冲区中插入一个空包。因为空包已经被抛弃,CPU 60在步骤S134关闭标志F_EmptyInsert。
此后,在步骤S135,CPU 60确定Sam_SyncPeriod的值是否变成等于或大于3072。如果Sam_SyncPeriod的值小于3072,不进一步执行下溢防止程序。
当F_UnderFlowOcuur在ON状态时,Sam_SyncPeriod的值由图14所示步骤S87和S88逐帧增加。当帧数达到Def_SyncPeriod规定的时,Sam_SyncPeriod的值变为3072。如果开始对下一帧的处理,Sam_SyncPeriod的值变成大于3072。在该情况下,过程从步骤S135前进到S136并且CPU 60关闭标志F_UnderFlowOcuur。而且,步骤S137和S138中,Sam_SyncPeriod和T_UnderFlowPeriod的值复位到0。
此后,过程返回到图11所示步骤S63。
当DVCR 19-2接收到由IEEE-1394串行总线18-2传来的同步形式的CIP包时,便进行如图18流程图所示的处理。
首先,在步骤S151中,DVCR 19-2检测到位于帧开始处的CIP。然后,在步骤S152中,DVCR 19-2抽取CIP标题的同步时域里描述的时间标志。需要注意的是只有在帧开始处的CIP中,同步时域才具有有效值。
在步骤S153中,在步骤S152中抽取的时标值与在CIP被接收时周期时间寄存器的值(低16位)之间的差值被计算出来。在步骤S154中,DVCR19-2依照步骤S153中计算出的差值在确定时间的第一帧再现帧的同步信号。
在上述实施例中,采用的是IEEE-1394串行总线和ATM网络。然而,总线和网络的类型不限于实施例所采用的类型,其它类型的总线或网络也可以采用。
当前的描述中,术语“系统”用于代表一个整套设备。
以上描述的处理顺序可通过硬件或软件执行。当软件执行处理顺序时,组成软件的程序可以从存储介质安装到提供作为专用硬件的计算机上;也可以安装到通用计算机上,这种计算机由自身安装的不同程序能处理不同过程。
用于上述目的的存储介质的具体例子包括:磁盘(如软盘)、光盘(如:CD-ROM(只读的高密度盘))、DVD(数字通用盘)、磁光盘(如MD(小型盘))、半导体存储器,程序以包的形式存储在这些介质上,并且这些介质可独立于计算机提供给用户。程序也可通过重新安装在内置ROM或计算机内配置的硬盘中来提供给用户。
在本发明中,存储于程序存储介质的程序中描述的步骤可以按照程序描述的步骤以时间顺序或者是以并行或独立形式来执行。
正如以上所描述的,在数据传送设备中,按照本发明的数据传送方法和存储介质,及第一网络收到并将传向第二网络的数据,分别针对各数据流独立的保存;向第二网络的数据传输由相应各数据流存储的数据量控制,因而,完全有可能在不出现上溢、下溢和不产生数据丢失、数据过量的情况下,实时地传送连续数据。
Claims (11)
1.一种在第一网络和第二网络之间传送数据的数据传送设备,包括:
用来针对各数据流而独立地存储数据的存储装置,这些数据流从所述第一网络接收并将传向所述第二网络;
用来检测存储在针对每个数据流的所述存储器中的数据量的检测装置;
按照所述检测装置提供的检测结果,用来控制传送到第二网络的所述数据的控制装置。
2.根据权利要求1的数据传送设备,其中,所述第一网络和所述第二网络分别是一个广域数字网和一个IEEE-1394串行总线。
3.根据权利要求1的数据传送设备,其中,所述控制装置在存储在所述存储装置中的数据量等于或大于预定的阈值之后开始读数据。
4.根据权利要求1的数据传送设备,其中,当存储于存储装置中的数据量等于或大于预定的阈值时,所述控制装置抛弃存储在所述存储装置中的所述数据所包含的空数据。
5.根据权利要求1的数据传送设备,其中,当存储于存储装置中的数据量等于或大于预定的阈值时,所述控制装置将空数据插入到传向所述第二网络的所述数据中。
6.根据权利要求1的数据传送设备,其中,当所述控制装置从存储在所述存储装置中的所述数据中抛弃空数据或者将空数据插入到传向所述第二网络的数据中时,所述控制装置逐渐校正包含在一个预定周期中的所述数据里的时标的偏离。
7.根据权利要求6的数据传送设备,其中,所述控制装置在时标被校正期间所述周期的基本中间点上插入或抛弃空数据。
8.根据权利要求1的数据传送设备,其中,所述第一网络连接到另一个第一网络,该网络根据网络时钟不与先前第一网络同步。
9.根据权利要求1的数据传送设备,其中,所述数据是包含一个暂时连续内容的视频数据或音频数据。
10.一种用于在第一网络和第二网络之间传送数据的数据传送方法,所述方法包含的步骤有:
为每个数据流独立地存储数据操作的控制步骤,这些数据流从所述第一网络接收并且传送到所述第二网络;
针对每一个数据流对所述存储控制步骤中存储数据量的检测步骤;以及
按照所述检测步骤所得的检测结果,控制对到所述第二网络所
述数据传送操作的步骤。
11.一种存储介质,在其上存储着用来控制在第一网络和第二网络之间传送数据的数据传送设备的计算机可读程序,所述程序包含的步骤有:
为每个数据流独立地存储数据操作的控制步骤,这些数据流从所述第一网络接收并且传送到所述第二网络;
针对每一个数据流对所述存储控制步骤中存储数据量的检测步骤;以及
按照所述检测步骤所得的检测结果,控制对到所述第二网络所述数据传送操作的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000038871A JP2001230821A (ja) | 2000-02-16 | 2000-02-16 | データ中継装置および方法、並びに提供媒体 |
JP038871/2000 | 2000-02-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1321030A true CN1321030A (zh) | 2001-11-07 |
Family
ID=18562533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN01119201A Pending CN1321030A (zh) | 2000-02-16 | 2001-02-16 | 传送数据的方法和设备以及存储介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7035272B2 (zh) |
JP (1) | JP2001230821A (zh) |
KR (1) | KR20010082637A (zh) |
CN (1) | CN1321030A (zh) |
CA (1) | CA2335264A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1939030B (zh) * | 2004-03-26 | 2010-05-05 | 英国电讯有限公司 | 发送录制的材料 |
CN101313297B (zh) * | 2005-11-30 | 2010-09-29 | Lg电子株式会社 | 数字版权管理中用于设备间drm时间同步的方法 |
CN104679546A (zh) * | 2013-12-02 | 2015-06-03 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3633507B2 (ja) * | 2001-05-25 | 2005-03-30 | ソニー株式会社 | データ転送処理装置、データ転送方法およびデータ転送プログラム |
JP3702261B2 (ja) * | 2002-09-30 | 2005-10-05 | 株式会社東芝 | タイムスタンプ補正回路および補正方法 |
US7949777B2 (en) * | 2002-11-01 | 2011-05-24 | Avid Technology, Inc. | Communication protocol for controlling transfer of temporal data over a bus between devices in synchronization with a periodic reference signal |
JP2004179681A (ja) * | 2002-11-22 | 2004-06-24 | Canon Inc | 送信装置 |
FR2848056B1 (fr) * | 2002-11-28 | 2005-02-25 | Canon Kk | Procedes d'insertion et de traitement d'informations pour la synchronisation d'un noeud destinataire a un flux de donnees traversant un reseau de base d'un reseau heterogene, et noeuds correspondants |
FR2853173B1 (fr) * | 2003-03-25 | 2006-01-06 | Canon Kk | Procede de maintien d'un debit de lecture constant des donnees d'un flux de donnees isochrones traversant un pont, programme d'ordinateur et pont correspondants |
US20050010701A1 (en) * | 2003-06-30 | 2005-01-13 | Intel Corporation | Frequency translation techniques |
US8275910B1 (en) * | 2003-07-02 | 2012-09-25 | Apple Inc. | Source packet bridge |
US7339995B2 (en) * | 2003-12-31 | 2008-03-04 | Intel Corporation | Receiver symbol alignment for a serial point to point link |
US20050144341A1 (en) * | 2003-12-31 | 2005-06-30 | Schmidt Daren J. | Buffer management via non-data symbol processing for a point to point link |
WO2007064086A1 (en) * | 2005-11-30 | 2007-06-07 | Lg Electronics Inc. | Method and device for drm time synchronization between devices in digital rights management |
US7894435B2 (en) * | 2006-09-14 | 2011-02-22 | Intel Corporation | Indicator packets for process/forward decision |
CN109743242B (zh) * | 2018-12-28 | 2021-06-08 | 联创汽车电子有限公司 | Can总线报文控制系统及其控制方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04369942A (ja) * | 1991-06-19 | 1992-12-22 | Hitachi Ltd | データ通信システム |
US5566174A (en) * | 1994-04-08 | 1996-10-15 | Philips Electronics North America Corporation | MPEG information signal conversion system |
SG77135A1 (en) * | 1996-04-26 | 2000-12-19 | Texas Instruments Inc | Method and system for assigning a channel number to a received data packet |
US6523696B1 (en) * | 1996-10-15 | 2003-02-25 | Kabushiki Kaisha Toshiba | Communication control device for realizing uniform service providing environment |
US6243395B1 (en) * | 1996-11-06 | 2001-06-05 | Sony Corporation | Method and apparatus for transferring ATM cells via 1394-serial data bus |
US6026080A (en) * | 1997-04-29 | 2000-02-15 | At&T Corporation | Method for providing enhanced H.321-based multimedia conferencing services over the ATM wide area network |
US6061399A (en) * | 1997-05-28 | 2000-05-09 | Sarnoff Corporation | Method and apparatus for information stream frame synchronization |
US6032261A (en) * | 1997-12-30 | 2000-02-29 | Philips Electronics North America Corp. | Bus bridge with distribution of a common cycle clock to all bridge portals to provide synchronization of local buses, and method of operation thereof |
US6351471B1 (en) * | 1998-01-14 | 2002-02-26 | Skystream Networks Inc. | Brandwidth optimization of video program bearing transport streams |
US6128318A (en) * | 1998-01-23 | 2000-10-03 | Philips Electronics North America Corporation | Method for synchronizing a cycle master node to a cycle slave node using synchronization information from an external network or sub-network which is supplied to the cycle slave node |
KR100311020B1 (ko) * | 1998-08-17 | 2001-12-20 | 윤종용 | 네트웍간 데이터 전송 방법 |
US6888840B1 (en) * | 1998-10-02 | 2005-05-03 | Thomson Licensing S.A. | Output symbol rate control in a packet transport rate conversion system |
US6434146B1 (en) * | 1998-12-04 | 2002-08-13 | Koninklijke Philips Electronics N.V. | Use of sequencing information in a local header that allows proper synchronization of packets to subsidiary interfaces within the post-processing environment of an mpeg-2 packet demultiplexing architecture |
US6661811B1 (en) * | 1999-02-12 | 2003-12-09 | Koninklijke Philips Electronics N.V. | Method of and apparatus for communicating isochronous data |
US6330286B1 (en) * | 1999-06-09 | 2001-12-11 | Sarnoff Corporation | Flow control, latency control, and bitrate conversions in a timing correction and frame synchronization apparatus |
JP3424620B2 (ja) * | 1999-09-24 | 2003-07-07 | 日本電気株式会社 | アイソクロナスパケット転送方法,該転送用制御プログラムの記録媒体,ブリッジ及びパケット転送制御lsi |
-
2000
- 2000-02-16 JP JP2000038871A patent/JP2001230821A/ja not_active Withdrawn
-
2001
- 2001-02-12 CA CA 2335264 patent/CA2335264A1/en not_active Abandoned
- 2001-02-14 US US09/782,287 patent/US7035272B2/en not_active Expired - Fee Related
- 2001-02-14 KR KR1020010007333A patent/KR20010082637A/ko not_active Application Discontinuation
- 2001-02-16 CN CN01119201A patent/CN1321030A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1939030B (zh) * | 2004-03-26 | 2010-05-05 | 英国电讯有限公司 | 发送录制的材料 |
CN101313297B (zh) * | 2005-11-30 | 2010-09-29 | Lg电子株式会社 | 数字版权管理中用于设备间drm时间同步的方法 |
CN104679546A (zh) * | 2013-12-02 | 2015-06-03 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN104679546B (zh) * | 2013-12-02 | 2018-11-09 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CA2335264A1 (en) | 2001-08-16 |
KR20010082637A (ko) | 2001-08-30 |
US7035272B2 (en) | 2006-04-25 |
US20020009049A1 (en) | 2002-01-24 |
JP2001230821A (ja) | 2001-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1321030A (zh) | 传送数据的方法和设备以及存储介质 | |
US7664145B2 (en) | Jitter correcting apparatus capable of ensuring synchronism between transmitter apparatus and receiver apparatus | |
US5982828A (en) | Synchronous data transfer system using time stamp | |
CN1271813C (zh) | 网络系统和在该系统中使用的输出设备 | |
US6778537B1 (en) | Data processing system and time stamp creating method | |
US20070140398A1 (en) | Data receiving device and data receiving method | |
CN109565466B (zh) | 多设备间唇音同步方法及设备 | |
JP4438878B2 (ja) | 受信装置、クロック同期方法およびコンピュータプログラム | |
JPH09238265A (ja) | 画像処理装置、方法及びコンピュータ可読媒体 | |
WO2009097251A2 (en) | Flexible time stamping | |
US6757304B1 (en) | Method and apparatus for data communication and storage wherein a IEEE1394/firewire clock is synchronized to an ATM network clock | |
CN1300163A (zh) | 数据处理装置和数据处理方法,及记录媒体 | |
CN1878054A (zh) | Ip网络传送基站用时钟参考的装置和方法 | |
Bosk et al. | Methodology and infrastructure for tsn-based reproducible network experiments | |
JP2005071273A (ja) | 電子機器及びそのインターフェース制御方法 | |
KR20110067971A (ko) | 다중 클럭 동기화 방법 및 그 장치 | |
WO2005029761A1 (ja) | 通信システムおよび方法、情報処理装置および方法、並びにプログラム | |
KR20040004167A (ko) | 방송수신 재생시스템 및 방송수신장치 | |
JP3906712B2 (ja) | データストリーム処理装置 | |
US6950472B2 (en) | Coded data transfer control method and storage and reproduction system | |
US20040218633A1 (en) | Method for multiplexing, in MPEG stream processor, packets of several input MPEG streams into one output transport stream with simultaneous correction of time stamps | |
JP2001168883A (ja) | タイムスタンプのオフセット調整方法及びそれを用いたパケット伝送装置 | |
EP1040669A1 (fr) | Procede de pilotage d'un equipement de metrologie en television numerique | |
JP4224749B2 (ja) | 通信装置、通信方法、および記録媒体 | |
JP3627743B2 (ja) | データ伝送システムにおけるノード |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |