两个锁相环路的分级锁定的制作方法

文档序号:7866458阅读:290来源:国知局
专利名称:两个锁相环路的分级锁定的制作方法
技术领域
本发明一般涉及数据同步,更具体地说,涉及通过锁相环路(PLLs)的分级(staged)锁定实现诸如无线音频发射机等设备中的数据同步的技术。

背景技术
数据同步对诸如发送和/或接收音频和/或视频信号的设备的某些电子设备是必要的。例如,就发送音频信号的设备来说,缺乏数据同步可能在再现期间引起声音中断,其不利地影响了用户的收听感受。同样,就发送视频信号的设备来说,缺乏数据同步可能在再现期间可能引起影像中断,其不利地影响了用户的观看感受。
这类设备中的数据同步问题可能可归因于各种因素。例如,对于某些设备,在设备接收数据的速率和设备发送数据的速率之间的数据速率不匹配可能产生数据同步问题。例如当该设备的某些数据寄存器未能稳定地保持规定的数据填充状态时,这种数据速率不匹配可能很明显。当这种数据速率不匹配发生时,前述的数据中断也可能间断地发生,并因此不利地影响用户收听和/或观看感受。
因此,需要一种能够避免上面描述的问题的设备和方法,并且因此能够在发送和/或接收音频和/或视频信号的设备中提供数据同步。本发明解决了这样和其他的问题。


发明内容
按照本发明的一个方面,公开了一种提供锁相环路(PLLs)分级锁定的设备。按照一个典型的实施例,该设备包括串行的数据源。编码器件提供编码的数据并且包括第一PLL。控制器件包括能够产生时钟信号的第二PLL。控制器件耦合在所述串行数据源和编码器件之间,用于向编码器件提供时钟信号。所述编码器的第一PLL锁定到时钟信号。
按照本发明的另一个方面,公开了一种提供数据同步的方法。按照一个典型的实施例,该方法包括下述步骤接收串行数据,响应该串行数据利用第一PLL产生时钟信号,响应该时钟信号利用第二PLL产生一个频率。



通过结合附图参看本发明实施例的下面的说明,本发明的上述和其他的特点和优点以及实现他们的方式将变得更加清楚,本发明也将更容易被理解。
图1是适合于实现本发明的一个典型环境的方块图; 图2是进一步详细说明按照本发明的典型实施例的图1中的控制器的方块图; 图3是进一步详细说明按照本发明的典型实施例的图1中的编码器的方块图; 图4是说明按照本发明的典型实施例的步骤的流程图。

具体实施例方式 在此陈述的范例说明了本发明的优选实施例,但是这些范例不应以任何方式解释为对本发明范围的限制。
现在参见附图,具体参见图1,其示出了适合于实现本发明的典型环境100的方块图。在图1中,环境100包括诸如个人计算机(PC)10的计算装置和诸如无线发射机15的发送装置。无线发射机15包括诸如流式控制器20的控制部件、诸如编码器30的编码部件、诸如RF传输电路40的RF发送部件、和诸如天线50的信号输出部件。为了举例说明,环境100包括使得音频信号能够被无线发送的部件。然而,本领域的技术人员将直观的认识到,本发明的原理也可以应用到其他设备,例如(但是不限于)应用到发送视频信号的设备和接收音频和/或视频信号的设备。
在图1中,PC 10用于执行各种计算操作,并且可以具体化为例如商业上可得到的桌面型计算机、膝上型计算机或者其他类型的计算机。按照典型的实施例,PC 10经由诸如通用串行总线(USB)的总线向无线发射机15连续地输出数字音频信号。无线发射机15用于编码从PC 10提供的数字音频信号,并且将编码的音频信号无线地发送到接收设备(未示出),该接收设备例如由Thomson公司制造的Lyra音频播放器。如将在下面所讨论的,无线发射机15通过PLLs的分级锁定执行数据同步处理,并且由此避免对用户收听感受产生负面影响的声音中断。
参见图2,其示出了进一步详细说明按照本发明的典型实施例的图1中的流式(streaming)控制器20的方框图。特别的,图2示出了流式控制器20中提供其时钟管理功能的元件。如图2所示,流式控制器20包括串行接口引擎21、编解码器端口22、帧开始(SOF)捕获计数器23、控制器24、PLL和时钟发生电路25、频率合成器26和时钟分割电路27。流式控制器20可以例如具体化为诸如Texas仪器TAS 1020的集成电路(IC)。
在图2中,串行接口引擎21用于从PC 10接收诸如音频数据的数据,并且使接收的音频数据连续地流向编解码器端口22。在这一处理中,为了避免对用户收听感受产生负面影响的音频中断,到串行接口引擎21的输入数据速率和来自编解码器端口22的输出数据速率必须同步。按照典型的实施例,串行接口引擎21每1毫秒从PC 10接收一个SOF信号,表明USB帧的开始。这些接收的USB帧包含符合紧密盘(CD)音频标准的音频数据,所述紧密盘音频标准具有44.1kHz的采样率、16位的样本大小、和每个音频数据帧2个样本。对于这个典型实施例,通过向编解码器端口22提供1.4112(即,44.1k*16*2)MHz的时钟信号实现数据同步。
为了产生上述的1.4112MHz的时钟信号,PLL和时钟发生电路25提供48MHz的参考频率,其使得频率合成器26能够产生一个标称为22.5792MHz的时钟信号。时钟分割电路27接收来自频率合成器26的22.5792MHz的时钟信号,并且用16去除该22.5792MHz的时钟信号,由此产生提供给编解码器端口22的1.4112MHz的时钟信号。编解码器端口22用这个1.4112MHz的时钟信号产生一个44.1kHz的字时钟(WCLK)信号,和一个1.4112MHz的位时钟(BCLK)信号。
频率合成器26还给SOF捕获计数器23提供上述的22.5792MHz的时钟信号,所述SOF捕获计数器23对每个USB帧中22.5792MHz时钟事件的数量进行计数,并以上述经由串行接口引擎21从PC 10提供的SOF信号为基础,每1毫秒用相应的计数值中断控制器24。控制器24用于创建基于软件的PLL,它利用来自SOF捕获计数器23的计数值产生一个控制信号,该控制信号控制频率合成器26以便达到每个USB帧22.5792MHz时钟事件的平均数。
参见图3,其示出了进一步详细说明按照本发明典型实施例的图1中的编码器30的方框图。具体的,图3显示了编码器30中提供其时钟管理功能的元件。如图3所示,编码器30包括串行输入端31、8到14位调制(EFM)时钟发生器32和EFM调制电路33。EFM时钟发生器32包括数字/模拟PLL34和时钟分割电路35。编码器30例如可以具体化为诸如Philips SAA7392的IC电路。
在图3中,串行输入端31用于接收上述来自图2的流式控制器20的编解码器端口22的WCLK信号、BCLK信号和音频数据。按照一个典型的实施例,经由总线将WCLK信号、BCLK信号和声音数据从编解码器端口22提供至串行输入端31,所述总线例如中间IC声音(I2S)总线,用于连接流式控制器20和编码器30。串行输入端31使所述WCLK信号、BCLK信号和音频数据流向EFM调制电路33,该EFM调制电路33包括一个以4.3218MHz进行工作的先进先出(FIFO)寄存器。
串行输入端31还把所述WCLK信号提供给EFM时钟发生电路32,该EFM时钟发生电路32通过利用44.1kHz的WCLK信号作为数字/模拟PLL 34的参考频率并利用来自EFM调制电路33的FIFO填充状态信号作为数字/模拟PLL 34的误差信号对输入数据速率进行同步。按照一个典型的实施例,数字/模拟PLL 34提供69.1488MHz的时钟信号至时钟分割电路35,该时钟分割电路用16去除69.1488MHz的时钟信号,由此产生将被提供到EFM调制电路33的FIFO寄存器的4.3218MHz的时钟信号。
按照一个典型的实施例,当数字/模拟PLL 34的模拟PLL输入频率在100至140MHz之间时,该数字/模拟PLL 34将锁定在WCLK信号的44.1kHz的参考频率。就这个典型的实施例来说,当数字/模拟PLL 34被锁定时,来自EFM调制电路33的FIFO填充状态信号将稳定地指示在5856至6120字节之间的填充状态。一旦数字/模拟PLL 34的模拟PLL输入频率在100至140MHz之间,并且EFM调制电路33的FIFO填充状态在5856至6120字节之间。图2中的流式控制器20就能够流化音频数据而没有音频中断。按照一个典型的实施例,流式控制器20的控制器24通过经由双向总线读取这些频率和填充状态值来检测何时数字/模拟PLL 34的模拟PLL输入频率和EFM调制电路33的FIFO的填充状态在上面指示的规定范围内,所述双向总线例如中间IC(I2C)总线,用于连接流式控制器20和编码器30。
当检测到编码器30的上述频率和填充状态条件,流式控制器20的控制器24使音频数据能够从PC 10流向编码器30以进行EFM编码。然后,编码器30的EFM调制电路33向RF传输电路40提供EFM编码的数据,用于经由天线50向诸如由Thomson公司制造的Lyra音频播放器等接收设备(未表示出)进行无线传输。
为了易于更好地理解本发明的发明概念,现在将提供一个更具体的例子。参见图4,其示出了图解说明按照本发明的典型实施例的步骤的流程图。为了举例和说明,将参照图1至3中的PC 10、流式控制器20和编码器30来说明图4中的步骤。图4中的步骤仅是例子,并不是要以任何方式限制本发明。
在步骤401,PC 10初始化将它与无线发射机15相连接的总线。如上所述,这个总线可以是例如本领域众所周知的USB。在步骤402,流式控制器20的控制器24通过向频率合成器26和时钟分割电路27提供初始化信号对它们进行初始化。在步骤403,控制器24通过向串行接口引擎21提供启动信号而使其启动。在步骤404,控制器24通过向编解码器端口22提供初始化信号对其进行初始化。
在步骤405,控制器24通过将其自身配置为由SOF捕获计数器23来中断而使能SOF中断。如前面指出的,SOF捕获计数器23计数每个USB帧中22.5792MHz时钟事件的数量,并且以经由串行接口引擎21从PC 10提供的上述SOF信号为基础,每一毫秒用相应的计数值中断控制器24。在步骤406,控制器24通过经由连接在流式控制器20和编码器30之间的I2C总线向数字/模拟PLL 34提供初始化信号,来初始化编码器30的EFM时钟发生器32。
在步骤407,控制器24经由I2C总线从数字/模拟PLL 34读取模拟PLL输入频率。在步骤408,控制器24随后决定在步骤407读取的模拟PLL输入频率是否在其规定的范围内。如前面指出的,按照本发明典型的实施例,当数字/模拟PLL 34的模拟PLL输入频率在100至140MHz时,该频率在它的规定范围内。当在步骤408的决定是否定的,处理流返回到步骤407,在该步骤控制器24再次经由I2C总线从数字/模拟PLL 34读取模拟PLL输入频率。这样,重复步骤407和408,直到控制器24确定数字/模拟PLL 34的模拟PLL输入频率在其规定的范围内。一旦所述模拟PLL输入频率在其规定的范围内,则处理流前进到步骤409。
在步骤409,控制器24经由I2C总线从EFM调制电路33读取FIFO填充状态。在步骤410,控制器24随后确定在步骤409读取的FIFO填充状态是否在其规定的范围内。如前面指出的,按照本发明典型的实施例,当EFM调制电路33的FIF0填充状态在5856至6120字节之间时,该FIFO填充状态是在其规定的范围内。当在步骤410的决定是否定的,处理流返回到步骤409,在该步骤控制器24再次经由I2C总线从EFM调制电路33读取FIFO填充状态。这样,重复步骤409和410,直到控制器24确定EFM调制电路33的FIFO填充状态在其规定范围内。一旦所述FIFO填充状态在其规定范围内,则处理流前进到步骤411,在该步骤中控制器24通过向RF传输电路40提供启动信号而使其启动。
在执行图4的步骤401至411后,就可以从PC 10向无线发射机15无中断的同步传送诸如音频数据的数据,用于编码和无线发送到诸如由Thomson公司制造的Lyra音频播放器的接收设备(未示出)。在图4中,注意流式控制器20的控制器24在其于步骤404对编解码器端口22初始化之后,并在其于步骤406对EFM时钟发生器32初始化之前,在步骤405中使能SOF中断。这一典型的方法使PLL锁定能够分级产生。特别的,用流式控制器20的控制器24的软件PLL使所述BCLK和WCLK信号首先与来自PC 10的SOF信号同步。接着,编码器30的数字/模拟PLL 34锁定到输入的WCLK信号。这样,由于EFM调制电路33通过来自数字/模拟PLL 34的4.3218MHz的时钟信号来计时,所以同步了从PC 10到流式控制器20的输入数据速率和来自编码器30的输出的EFM编码数据速率,并且稳定了EFM调制电路33的FIFO填充状态。
下面的表1提供了“C”语言的源码,它可用来执行图4所述的步骤。特别的,这段编码可以在流式控制器20的控制器24上执行。
*************************************************************/*initialize USB Serial Interface Engine and Codec Port*/devRomFunction(ROM_ENG_USB_INIT);/*wait for Codec Port initialization*/ while(Codeclnited==0); /*enable USB SOF interrupts*/ USBIMSKI=0X10;<!-- SIPO <DP n="6"> --><dp n="d6"/> /*wait for ACG update*/ delay((SOFTPLL_UPDATE_PERIOD+1)*4); /*loop until SAA7392 encoder initializes*/ while(0>=(error_code=Startup_Encoder())) {  /*Error*/  Panic(error_code);  /*reset the SAA7392 encoder*/  ColdResetCodec(); } /*initialize I/O*/ rf_ctrl_gpio_init(); /*read valid rotary dial*/ InitAppTimer(ROTARY_SWITCH_TIMER,0); rotsw=P1 &amp; 0x70; while(!ReadRotarySwitch(rotsw))rotsw=P1 &amp; 0x70; /*hop to the desired channel frequency*/ rf_ctrl_synthesizer(rotsw); ****************************************************** 表1 如上面描述的,本发明提供了一种通过锁相环路(PLLs)的分级锁定实现诸如无线音频发射机等设备中的数据同步的技术。尽管此处参考无线发射机描述了本发明的一个典型实施例,但本发明的原理也可以用于提供其它设备中的数据同步,所述其它设备例如(但不限于)发送视频信号的设备和接收音频和/或视频信号的设备。
虽然描述本发明具有优选的设计,但是在本发明的精神与范围内可以进一步改进本发明。因此本申请意在涵盖使用本发明的一般原理对本发明的任何变化、使用、修改。另外,本申请意在涵盖与本说明不同但是在本发明所述领域中为公知公用的偏离,并且这些偏离落入所附权利要求的范围内。
权利要求
1、一种设备(15),包括
串行数据源;
编码部件(30),用于提供编码的数据,所述编码部件(30)包括第一锁相环路(34);
控制部件(20),其包括用于允许产生时钟信号(WCLK)的()第二锁相环路(24),所述控制部件(20)耦合在所述串行数据源和所述编码部件(30)之间,用于将所述时钟信号(WCLK)提供给所述编码部件(30),并且其中
所述第一锁相环路(34)锁定到所述时钟信号(WCLK)。
2、如权利要求1所述的设备(15),进一步包括用于允许所述编码的数据的无线传输的部件(40,50)。
3、如权利要求1所述的设备(15),其中所述编码的数据包括音频数据。
4、如权利要求1所述的设备(15),其中所述编码的数据包括视频数据。
5、一中发射机(15),包括
串行数据源;
编码器(30),用于提供编码的数据,所述编码器(30)包括第一锁相环路(34);
控制器(20),包括用于允许产生时钟信号(WCLK)的第二锁相环路(24),所述控制器(20)耦合在所述串行数据源和所述编码器(30)之间,并用于将所述时钟信号(WCLK)提供至所述编码器(30),并且其中
所述第一锁相环路(34)锁定到所述时钟信号(WCLK)。
6、如权利要求5所述的发射机(15),进一步包括用于允许所述编码的数据的无线传输的部件(40,50)。
7、如权利要求5所述的发射机(15),其中所述编码的数据包括音频数据。
8、如权利要求5所述的发射机(15),其中所述编码的数据包括视频数据。
9、一种用于提供数据同步的方法,包括步骤
接收串行数据;
响应所述串行数据,利用第一锁相环路(24)产生时钟信号(WCLK);和
响应所述时钟信号(WCLK),利用第二锁相环路(34)产生一个频率。
10、如权利要求9所述的方法,进一步包括步骤
响应所产生的频率来产生编码的数据;和
允许所述编码的数据的无线传输。
11、如权利要求10所述的方法,其中所述编码的数据包括音频数据。
12、如权利要求10所述的方法,其中所述编码的数据包括视频数据。
13、如权利要求9所述的方法,其中响应于包括在所述串行数据中的帧开始(SOF)信号而产生所述时钟信号(WCLK)。
全文摘要
通过两个锁相环路(PLLs)的分级锁定实现发送和/或接收音频和/或视频数据的设备中的数据同步。按照典型的实施例,发射机(15)包括串行数据源。编码器(30)提供编码的数据并且包括第一PLL(34)。控制器(20)包括能够产生时钟信号(WCLK)的第二PLL(24)。控制器(20)耦合在串行数据源和编码器(30)之间,用于将所述时钟信号(WCLK)提供到编码器30。所述编码器(30)的第一PLL(34)锁定到所述时钟信号(WCLK)。
文档编号H04N5/04GK1679241SQ0382008
公开日2005年10月5日 申请日期2003年7月17日 优先权日2002年7月19日
发明者卡西米尔·J·克劳利 申请人:汤姆森特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1