CN103916211A - 一种数据的接收方法及装置 - Google Patents
一种数据的接收方法及装置 Download PDFInfo
- Publication number
- CN103916211A CN103916211A CN201310003515.2A CN201310003515A CN103916211A CN 103916211 A CN103916211 A CN 103916211A CN 201310003515 A CN201310003515 A CN 201310003515A CN 103916211 A CN103916211 A CN 103916211A
- Authority
- CN
- China
- Prior art keywords
- sampled value
- value number
- data
- point position
- sampling point
- 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
Abstract
本发明公开了一种数据的接收方法及装置。其中,该方法包括:获取接收数据的采样值个数,根据该采样值个数,在上述接收数据中判断出Block的第一个左声道数据帧上的同步引导符;在判断出Block的第一个左声道数据帧上的同步引导符时,根据上述采样值个数来确定采样点位置;根据该采样点位置接收数据。通过本发明,解决了相关技术中无法准确定位出同步引导符B,进而影响后续的数据接收效率的问题,达到了准确定位同步引导符B的效果,节省了系统处理数据的时间,避免了资源浪费,提升了系统处理效率。
Description
技术领域
本发明涉及移动通讯领域,特别是涉及一种数据的接收方法及装置。
背景技术
SPDIF(SONY/PHILIPS Digital Interface Format,简称为SPDIF)是SONY、PHILIPS数字音频接口的简称,就传输方式而言,SPDIF分为输出(SPDIF OUT)和输入(SPDIF IN)两种。由于其仅有1个信号输出,因此极大的方便了设备与设备之间的音频信号传输,同时,由于SPDIF输出为数字信号,可以有效的防止音频信号在传输过程中的失真,达到了音频信号保真的目的。所以,SPDIF在音频设备中的应用非常广泛。
每一个SPDIF帧包含了2个子帧(子帧1和子帧2),子帧1代表左声道数据帧,子帧2代表右声道数据帧。每个子帧由32bits数据组成。图1是根据相关技术中的SPDIF的帧结构示意图,如图1所示,每个子帧的32bits分别是:4bits同步引导符(Preamble)、4bits辅助音频数据位(Auxiliary Data,AUX)、20bits音频采样数据位(audio data)、1bit合法标记位(Validity Bit,V)、1bit用户数据位(User Bit,U)、1bit声道状态位(Channel Bit,C)和1bit奇偶检验位(Parity Bit,P),其中最后4bits也称为通道状态位。
每192个SPDIF子帧组成一个Block(数据块),每个子帧1的用户数据位合并组成192bits,这192bits代表了传输音频的一些采样率、格式和级别等参数信息。每个Block的这192bits都是相同的。
SPDIF传输的数据是一个串行的,其数据位编码除了同步引导符都采用“双相标志码”(Biphase Mark Code,简称为BMC)编码方式。
图2是根据相关技术的BMC编码示意图,如图2所示,在一个数据位的时间里,如果对应的BMC出现1个过零点意味着原发送数据是1,而没有过零点意味着原发送数据是0,相邻数据间的编码都要过零点跳变。对于每个子帧的前4bits即同步引导符,其编码方式不是上述的BMC编码格式,而是固定的编码方式,如下述表1所示的同步引导符编码。
表1
同步引导符 | 格式1(前1符号为0) | 格式2(前1符号为1) |
B(Block的第1个子帧1) | 11101000 | 00010111 |
M(子帧1,左声道) | 11100010 | 00011101 |
W(子帧2,右声道) | 11100100 | 00011011 |
其中,B代表每个Block的第1个子帧1,即每个Block的第1个左声道数据帧;M代表除Block第1个子帧1外的其它子帧1;W代表子帧2,即右声道数据帧。如果SPDIF复位数据默认值是0,则B/M/W以1开头;如果SPDIF复位数据默认值是1,则B/M/W以0开头。由于一般复位值都为0,所以下面针对同步引导符以1开始的情况进行介绍,以0开始的情况与以1开始的情况相同。
由于协议未规定如何接收数据,因此数据接收的方法有多种。相关技术中的基本做法都是:首先检测出同步引导符,由于同步引导符有最长的1和0(3个连续的0或1),其余数据符最长只有2个连续的0或1,因此可根据这个特点检测同步引导符;再根据长度比例来恢复时钟,一般需要后接锁相回路(Phase Locked Loop,简称为PLL)对时钟进行恢复。上述方法可以确定同步引导符的位置,但不能确定是哪种同步引导符,即不能确定是哪个子帧的同步引导符。一般的数据接收需要从Block的第1个子帧1开始接收,这样可以接收到完整的192个通道状态位,即可以接收到完整的数据从而实现后续的操作,例如分离出各种配置信息等操作。
根据上述的相关技术中的数据接收方法,无法判断同步引导符是否是Block的第一个子帧1,因此也就无法确保接收到得数据是完整数据,对于不是从Block的第1个子帧1开始接收数据的帧,则需要丢弃,直到检测出的同步引导符是同步引导符B(即Block的第1个子帧1(B)上的同步引导符,下面简称为同步引导符B)为止,再根据采样的比例关系来通过PLL恢复出SPDIF传输音频时钟。由此可知,上述方法无法准确定位出同步引导符B,进而影响后续的数据接收效率。
针对相关技术中的无法准确定位出同步引导符B,进而影响后续的数据接收效率的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中无法准确定位出同步引导符B,进而影响后续的数据接收效率的问题,本发明提供了一种数据的接收方法及装置,用以解决上述技术问题。
根据本发明的一个方面,本发明提供了一种数据的接收方法,其中,该方法包括:获取接收数据的采样值个数;根据该采样值个数,在上述接收数据中判断出Block的第一个左声道数据帧上的同步引导符;在判断出上述Block的第一个左声道数据帧上的同步引导符时,根据上述采样值个数确定采样点位置;根据上述采样点位置接收数据。
进一步地,获取上述接收数据的采样值个数可以包括:采用高频时钟对上述接收数据进行采样;对采样过程中的跳变进行监测;对连续五次跳变中的每两个相邻跳变之间的采样值个数进行统计,依次得到第一采样值个数、第二采样值个数、第三采样值个数以及第四采样值个数。
进一步地,根据上述采样值个数,在上述接收数据中判断出上述Block的第一个左声道数据帧上的同步引导符可以包括:判断上述第一采样值个数、上述第二采样值个数、上述第三采样值个数以及上述第四采样值个数是否同时满足以下条件:上述第四采样值个数-1≤上述第一采样值个数≤上述第四采样值个数+1;上述第三采样值个数-1≤上述第二采样值个数≤上述第三采样值个数+1;以及,上述第一采样值个数-3≤上述第二采样值个数×3≤上述第一采样值个数+3;如果上述判断结果为是,则将上述连续五次跳变对应的接收数据确定为上述Block的第一个左声道数据帧上的同步引导符。
进一步地,根据上述采样值个数确定采样点位置可以包括:在上述第一采样值个数、上述第二采样值个数、上述第三采样值个数以及上述第四采样值个数之中,确定采样个数最小的作为最小采样值个数;根据上述最小采样值个数对应的采样点,确定上述采样点位置。
进一步地,当上述最小采样值个数对应的采样点有多个时,在多个上述采样点中取最中间的采样点,将其所对应的位置作为上述采样点位置。
进一步地,上述方法还可以包括:在判断出上述Block的第一个左声道数据帧上的同步引导符时,使能采样有效信号;其中,上述采样有效信号用于指示采样点位置已确定;根据上述采样有效信号指示的上述采样点位置,接收数据。
根据本发明的另一方面,本发明还提供了一种数据的接收装置,其中,该装置包括:采样值个数获取模块,用于获取接收数据的采样值个数;同步引导符确定模块,用于当根据上述采样值个数判断出Block的第一个左声道数据帧上的同步引导符时,触发采样点位置确定模块;采样点位置确定模块,用于根据上述采样值个数确定采样点位置;数据接收模块,用于根据上述采样点位置接收数据。
进一步地,上述采样值个数获取模块可以包括:采样单元,用于采用高频时钟对上述接收数据进行采样;监测单元,用于对采样过程中的跳变进行监测;统计单元,用于对连续五次跳变中的每两个相邻跳变之间的采样值个数进行统计,依次得到第一采样值个数、第二采样值个数、第三采样值个数以及第四采样值个数。
进一步地,上述同步引导符确定模块可以包括:条件判断单元,用于判断上述第一采样值个数、上述第二采样值个数、上述第三采样值个数以及上述第四采样值个数是否同时满足以下条件:上述第四采样值个数-1≤上述第一采样值个数≤上述第四采样值个数+1;上述第三采样值个数-1≤上述第二采样值个数≤上述第三采样值个数+1;以及,上述第一采样值个数-3≤上述第二采样值个数×3≤上述第一采样值个数+3;同步引导符确定单元,用于在上述条件判断单元的判断结果为是的情况下,将上述连续五次跳变对应的接收数据确定为上述Block的第一个左声道数据帧上的同步引导符。
进一步地,上述采样点位置确定模块可以包括:最小采样值确定单元,用于在上述第一采样值个数、上述第二采样值个数、上述第三采样值个数以及上述第四采样值个数之中,确定采样个数最小的作为最小采样值个数;采样点位置确定单元,用于根据上述最小采样值个数对应的采样点,确定上述采样点位置。
进一步地,上述装置还可以包括:使能模块,用于当根据上述采样值个数判断出上述Block的第一个左声道数据帧上的同步引导符时,使能采样有效信号;其中,上述采样有效信号用于指示采样点位置已确定;接收模块,用于根据上述采样有效信号指示的上述采样点位置,接收数据。
通过本发明,获取接收数据的采样值个数;根据该采样值个数,在上述接收数据中判断出Block的第一个左声道数据帧上的同步引导符,根据上述采样值个数确定采样点位置,根据该采样点位置接收数据,解决了相关技术中无法准确定位出同步引导符B,进而影响后续的数据接收效率的问题,达到了准确定位同步引导符B的效果,节省了系统处理数据的时间,避免了资源浪费,提升了系统处理效率。
附图说明
图1是根据相关技术的SPDIF的帧结构示意图;
图2是根据相关技术的BMC编码示意图;
图3是根据本发明实施例的数据的接收方法的流程图;
图4是根据本发明实施例的B/M/W上的同步引导符的编码示意图;
图5是根据本发明实施例的连续5次跳变的BMC数据编码示意图;
图6是根据本发明实施例的采样点位置示意图;
图7是根据本发明实施例的数据采样接收流程图;
图8是根据本发明实施例的数据的接收装置的结构框图;
图9是根据本发明实施例的数据的接收装置的第一种具体结构框图;
图10是根据本发明实施例的数据的接收装置的第二种具体结构框图;
图11是根据本发明实施例的SPDIF数据接收的电路框图。
具体实施方式
对于相关技术中的数据接收方法,在确定同步引导符后,无法进一步确定该同步引导符是属于Block的哪个子帧。然而,数据接收需要从Block的第1个子帧1(B)开始接收,这样才可以接收到完整的192个帧数据,即可以接收到完整数据帧从而可以实现后续操作。因此,在相关技术中的数据接收方法的实际操作过程中,对于不是从Block的第1个子帧1(B)开始接收数据的帧,必须要丢弃。只有是从同步引导符B开始接收的数据才是完整的数据。
为了提高系统处理效率,避免资源效率,本发明实施例提供了一种数据的接收方法及装置,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
本实施例提供了一种数据的接收方法,图3是根据本发明实施例的数据的接收方法的流程图,如图3所示,该方法包括以下步骤(步骤S302-步骤S306):
步骤S302,获取接收数据的采样值个数,根据该采样值个数,在上述接收数据中判断出Block的第一个左声道数据帧上的同步引导符;
步骤S304,在判断出上述Block的第一个左声道数据帧上的同步引导符时,根据上述采样值个数确定采样点位置;
步骤S306,根据上述采样点位置接收数据。
通过上述方法,根据连续4个数据的采样值个数判断出是否是Block的第一个左声道数据帧上的同步引导符,如果是,则根据上述采样值个数计算出采样点位置来接收数据,解决了相关技术中无法准确定位出同步引导符B,进而影响后续的数据接收效率的问题,达到了准确定位同步引导符B的效果,节省了系统处理数据的时间,避免了资源浪费,提升了系统处理效率。
对于上述步骤S302中同步引导符的采样值个数的获取操作,可以通过监测采样过程中的跳变来实现。图4是根据本发明实施例的B/M/W上的同步引导符的编码示意图,如图4所示,默认值为0,所以B、M、W最开始都是低电平(0),后续各自都经历了5次跳变,即0→1→0→1→0→1。该5次跳变中的4次连续的采样个数即为连续4个数据的采样值个数,对应1→0→1→0,本实施例将5次跳变中的4次连续的采样值个数(即两个相邻跳变之间的采样值个数)依次计为a、b、c和d。
基于上述B/M/W上的同步引导符的编码示意图,本实施例提供了一种优选实施方式,即获取接收数据的采样值个数包括:采用高频时钟对接收数据进行采样;对采样过程中的跳变进行监测;对连续五次跳变中的每两个相邻跳变之间的采样值个数进行统计,依次得到第一采样值个数(即上述a)、第二采样值个数(即上述b)、第三采样值个数(即上述c)以及第四采样值个数(即上述d)。通过上述优选实施方式,获取到连续4个数据的采样值个数,为后续根据采样值个数确定同步引导符的类型提供基础。
对于上述优选实施方式的具体实施,可以通过计数器来实现。先将计数器清零,然后对每次跳变出现前接收数据的采样个数进行累加,在出现跳变时将累加得到的采样值个数用寄存器进行寄存,并将计数器清零,再继续循环上述累加和清零的操作。最终寄存的数值即是每两个相邻跳变点之间的采样值个数。
在获取到连续4个数据的采样值个数之后,需要根据采样值个数判断出同步引导符B。下面对同步引导符B、同步引导符M,同步引导符W以及其它数据位的编码结果的采样值个数进行统计研究。
前面已经介绍过除了同步引导符之外,SPDIF的其他数据位皆是采用BMC编码方式进行数据编码,通过对BMC编码格式的数据进行统计总结,得出连续5次跳变的所有情况的数据图,如图5所示的根据本发明实施例的连续5次跳变的BMC数据编码示意图,在连续5次跳变的前提下,一共有(1)至(8)这8种BMC编码方式。当然,上述8种编码方式的采样值个数的计算过程与上述B/M/W编码方式的采样值个数计算过程相同,如图5中的第一种编码(11)的采样值个数的比例分别是:a=1,b=1,c=1,d=1;图5中的第二种编码(101)的采样值个数的比例分别是:a=1,b=1,c=2,d=1,在此不再赘述。
下面根据图4所示的同步引导符B的采样值个数,同步引导符M与同步引导符W的采样值个数,以及图5所示的非同步引导符的数据位的采样值个数,确定同步引导符B特有的规律。
由图4中所示的同步引导符B的编码示意图,可知同步引导符B的采样值个数比例分别是:a=3,b=1,c=1,d=3可知,同步引导符B的采样值个数满足a=d,b=c。但是,在实际操作过程中,采用高频时钟进行采样,SPDIF的音频采样率一般最高为192KHz,其传输比特频率为192KHz×32×2×2=24.576MHz,接收模块的高频采样时钟设计为其5倍以上。由于在实际操作中采样时钟频率有偏差,并且数据在传输过程中可能受到干扰,因此a可能不等于b,但采样个数误差不会很大,一般为1个采样点左右。基于此,可以将同步引导符B的采样值个数满足的公式调整为d-1≤a≤d+1,c-1≤b≤c+1。调整之后的公式更贴合实际操作情况。
另外,同步引导符M和W均不符合此公式;
对于图5所示的(1)至(8)这8中编码方式的采样值个数,只有(1)、(5)以及(8)满足上述公式:d-1≤a≤d+1,c-1≤b≤c+1。
另外,根据图4中同步引导符B的采样值个数比例分别是:a=3,b=1,c=1,d=3可知,同步引导符B的采样值个数满足a=3b。但是,在实际操作中采样时钟频率有偏差,并且数据在传输过程中可能受到干扰,因此a可能不等于3b,但采样个数误差不会很大,在允许的偏差范围内,实际计算公式可以调整为:a-3≤3b≤a+3。
对于图5中第(1)中编码(11),其采样值个数a=b;对于第(5)中编码(010),其采样值个数a=2b(当采样时钟是SPDIF发送时钟5倍以上时,a=2b的偏差就不会覆盖到a=3b的偏差范围内,即就不容易引起误判);对于第(8)中编码(0000),其采样值个数a=b。因此,满足上述公式d-1≤a≤d+1,c-1≤b≤c+1,但不满足公式a-3≤3b≤a+3。由此,通过上述三个公式可以确定同步引导符B。
基于上述同步引导符B特有规律的确定过程,本实施例提供了一种优选实施方式,即根据采样值个数,在接收数据中判断出Block的第一个左声道数据帧上的同步引导符包括:判断第一采样值个数、第二采样值个数、第三采样值个数以及第四采样值个数是否同时满足以下条件:上述第四采样值个数-1≤上述第一采样值个数≤上述第四采样值个数+1;上述第三采样值个数-1≤上述第二采样值个数≤上述第三采样值个数+1;以及,上述第一采样值个数-3≤上述第二采样值个数×3≤上述第一采样值个数+3;如果上述判断结果为是,则将上述连续五次跳变对应的接收数据确定为上述Block的第一个左声道数据帧上的同步引导符。通过该优选实施方式,可以准确确定同步引导符B,从而避免资源浪费,提高数据接收效率和准确性。当然,上述三个公式可以根据实际应用情况进行适当变形,只要能够准确同步引导符B即可。
在确定同步引导符B之后,可以根据上述采样值个数确定采样点位置,从而为后续准确接收数据提供基础。本实施例提供了一种优选实施方式,即根据采样值个数确定采样点位置包括:在第一采样值个数、第二采样值个数、第三采样值个数以及第四采样值个数之中,确定采样个数最小的作为最小采样值个数;根据该最小采样值个数对应的采样点,确定采样点位置。
在4个采样值个数中,第二采样值个数和第三采样值个数由于地位相同,都为最小的采样个数值,可任意选取一个。由于最小采样值个数对应的采样点有多个,则在多个采样点中取最中间的采样点,将其所对应的位置作为采样点位置。或者,也可以取位于三分之一处或三分之二处等采样点,将其所对应的位置作为采样点位置。无论选择哪个采样点位置,只要可以根据同步引导符B接收完整数据即可。
图4中同步引导符B的采样值个数比例分别是:a=3,b=1,c=1,d=3,可知采样个数最小的最小采样值个数为b和c,下面以最小采样值个数是b为例对采样点位置的确定过程进行介绍。
将b值保存,记为sample_cnt=b;计数器sample_position初始为零,当检测到跳变,也将计数器清零,同时开始计数,当计数到sample_cnt值的一半(优选地,也可以计数到sample_cnt值的三分之一或者三分之二)时,将此处位置作为采样点位置,在该处对数据进行接收;然后,计数器继续进行累加,当检测到跳变或者在计数到sample_cnt值时,将计数器清零,再重新开始计数,继续循环上述操作。即将sample_cnt作为一个循环周期,在每个循环周期的sample_cnt的二分之一处,或者sample_cnt的三分之一处,或者sample_cnt的三分之二处,作为采样点位置。图6是根据本发明实施例的采样点位置示意图,如图6所示,高频时钟对应的虚线位置即为确定的采样点位置。
在确定采样点位置后,根据采样点位置接收数据可以通过以下优选实施方式实现:接收同步引导符上,与采样点位置相对应的数据。然后,可以将每个采样点位置处接收的数据保存至缓存先入先出队列(First input First Output,简称为FIFO)中,此数据即为完整的可用数据。在完整的接收到一个Block数据后,软件可以根据SPDIF的192位通道状态数据获取接收到的音频数据的采样率,无需后接PLL等复杂的电路来恢复时钟。
在确定Block的第一个左声道的同步引导符后,使能采样有效信号。数据的正确采样保存操作只有在采样有效信号有效后才可以进行,因为在未确定同步引导符B前,采样点位置未被确定。
下面通过优选实施例和附图对数据接收方法进行介绍。
图7是根据本发明实施例的数据采样接收流程图,如图7所示,该流程包括以下步骤(步骤S702-步骤S714):
S702,系统复位时对计数器的累加值清零。
S704,接收SPDIF数据,使用高频时钟对数据进行采样。
系统复位无效后开始接收SPDIF数据,如果系统复位有效,则执行步骤S702,对计数器的累加值清零,重复该流程。
S706,根据采样过程中的跳变,计数器统计采样值个数。同时,寄存最近4次连续数据的采样值个数。
S708,根据预设条件判断是否是同步引导符B,如果是,则执行步骤S710,如果否,则执行步骤S712。起早,该预设条件是同步引导符的采样值个数满足:
d-1≤a≤d+1,c-1≤b≤c+1,以及a-3≤3b≤a+3。
步骤S710,确定采样点位置,对数据进行准确的接收,该流程结束。同时,使能采样有效信号,指示采样点位置已确定。
步骤S712,判断采样有效信号是否被使能,如果是,则执行步骤S714,如果否,则表示采样点位置还未确定,需要继续执行步骤S702。
步骤S714,使能采样有效信号表示采样点位置已确定,可以根据采样有效信息指示的采样点位置接收数据,该流程结束。
对应于上述实施例介绍的数据的接收方法,本实施例提供了一种数据的接收装置,用以实现上述实施例。图8是根据本发明实施例的数据的接收装置的结构框图,如图8所示,该装置包括:采样值个数获取模块10、同步引导符确定模块20、采样点位置确定模块30和数据接收模块40。下面对该结构进行详细介绍。
采样值个数获取模块10,用于获取接收数据的采样值个数;
同步引导符确定模块20,连接至采样值个数获取模块10,用于当根据采样值个数判断出数据块Block的第一个左声道数据帧上的同步引导符时,触发采样点位置确定模块30;
采样点位置确定模块30,连接至同步引导符确定模块20,用于根据上述采样值个数确定采样点位置;
数据接收模块40,连接至采样点位置确定模块30,用于根据上述采样点位置接收数据。
通过上述装置,同步引导符确定模块20根据连续4个数据的采样值个数判断出是否是Block的第一个左声道数据帧上的同步引导符,如果是,采样点位置确定模块30根据上述采样值个数计算出采样点位置,然后数据接收模块40根据该采样点位置接收数据,解决了相关技术中无法准确定位出同步引导符B,进而影响后续的数据接收效率的问题,达到了准确定位同步引导符B的效果,节省了系统处理数据的时间,避免了资源浪费,提升了系统处理效率。
对于上述步骤S302中同步引导符的采样值个数的获取操作,可以通过监测采样过程中的跳变来实现。本实施例提供了一种优选实施方式,即上述采样值个数获取模块10包括:采样单元,用于采用高频时钟对上述接收数据进行采样;监测单元,用于对采样过程中的跳变进行监测;统计单元,用于对连续五次跳变中的每两个相邻跳变之间的采样值个数进行统计,依次得到第一采样值个数、第二采样值个数、第三采样值个数以及第四采样值个数。上述优选结构的具体实施,可以通过计数器来实现,前面已经进行了详细介绍,在此不再赘述。通过上述优选结构,获取到同步引导符的采样值个数,为后续根据采样值个数确定同步引导符的类型提供基础。
前面介绍了同步引导符B特有规律的确定过程,基于此,本实施例提供了一种优选结构,如图9所示的根据本发明实施例的数据的接收装置的第一种具体结构框图,该装置除了包括上述图8所示的各个模块之外,上述同步引导符确定模块20还包括:条件判断单元202和同步引导符确定单元204。下面对该结构进行具体介绍。
条件判断单元202,用于判断上述第一采样值个数、上述第二采样值个数、上述第三采样值个数以及上述第四采样值个数是否同时满足以下条件:上述第四采样值个数-1≤上述第一采样值个数≤上述第四采样值个数+1;上述第三采样值个数-1≤上述第二采样值个数≤上述第三采样值个数+1;以及,上述第一采样值个数-3≤上述第二采样值个数×3≤上述第一采样值个数+3;
同步引导符确定单元204,连接至条件判断单元202,用于在该条件判断单元202的判断结果为是的情况下,将连续五次跳变对应的接收数据确定为上述Block的第一个左声道数据帧上的同步引导符。
通过该优选结构,可以准确确定同步引导符B,从而避免资源浪费,提高数据接收效率和准确性。当然,上述三个公式可以根据实际应用情况进行适当变形,只要能够准确同步引导符B即可。
在确定同步引导符B之后,需要确定采样点位置,以便后续根据采样点位置进行数据的接收。对于采样点位置的确定过程,优选地,上述采样点位置确定模块30包括:最小采样值确定单元,用于在第一采样值个数、第二采样值个数、第三采样值个数以及第四采样值个数之中,确定采样个数最小的作为最小采样值个数;
采样点位置确定单元,用于根据上述最小采样值个数对应的采样点,确定采样点位置。在上述4个采样值个数中,第二采样值个数和第三采样值个数由于地位相同,都为最小的采样个数值,可任意选取一个。最小采样值个数对应的采样点有多个,在多个采样点中取最中间的采样点,将其所对应的位置作为采样点位置。或者,也可以取位于三分之一处或三分之二处等采样点,将其所对应的位置作为采样点位置。无论选择哪个采样点位置,只要可以根据同步引导符B接收完整数据即可。
另外,如果判断出Block的第一个左声道数据帧上的同步引导符(同步引导符B)时,则使能采样有效信号,该采样有效信号用于指示采样点位置已确定,根据该采样有效信号指示的采样点位置,接收数据。基于此,本实施例提供了一种优选实施方式,如图10所示的根据本发明实施例的数据的接收装置的第二种具体结构框图,该装置除了包括上述图9所示的各个模块之外,还包括:使能模块50和接收模块60。下面对该结构进行具体介绍。
使能模块50,连接至采样值个数获取模块10,用于当根据采样值个数判断出Block的第一个左声道数据帧上的同步引导符时,使能采样有效信号;其中,该采样有效信号用于指示采样点位置已确定;
接收模块60,连接至使能模块50,用于根据上述采样有效信号指示的采样点位置,接收数据。
图11是根据本发明实施例的SPDIF数据接收的电路框图,如图11所示,该电路包括以下几部分:采样&滤波、跳变检测、采样值个数累加&累加值寄存、累加值比较&采样点定位、数据接收以及缓存FIFO,下面进行具体介绍。
采样&滤波:对接收的SPDIF数据进行高频采样,同时由于信号传输过程有干扰,因此需要进行滤波操作。
跳变检测:对滤波后的数据进行边沿检测,即跳变检测。
采样值个数累加&累加值寄存:每次检测出跳变后,对累加的采样值个数进行寄存,寄存最近4次的累加值。
累加值比较&采样点定位:对最近4次的累加值(a、b、c和d)进行比较,从而确定同步引导符B,从而对采样点位置进行确定。
数据接收:通过确定的采样点位置对数据进行接收。
缓存FIFO:将接收的数据保存至FIFO中,再通过直接内存存取(DirectMemory Access,简称为DMA)将数据传输至内存中供后续的音频处理使用。
从以上的描述中可以看出,本发明实施例达到了准确定位同步引导符B的效果,否则定位到其它前缀码,系统还要进行判断来丢弃后续帧数据。节省了系统处理数据的时间,提升了系统处理效率,
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。
Claims (11)
1.一种数据的接收方法,其特征在于,所述方法包括以下步骤:
获取接收数据的采样值个数;
根据所述采样值个数,在所述接收数据中判断出数据块Block的第一个左声道数据帧上的同步引导符;
在判断出所述Block的第一个左声道数据帧上的同步引导符时,根据所述采样值个数确定采样点位置;
根据所述采样点位置接收数据。
2.如权利要求1所述的方法,其特征在于,获取所述接收数据的采样值个数包括:
采用高频时钟对所述接收数据进行采样;
对采样过程中的跳变进行监测;
对连续五次跳变中的每两个相邻跳变之间的采样值个数进行统计,依次得到第一采样值个数、第二采样值个数、第三采样值个数以及第四采样值个数。
3.如权利要求2所述的方法,其特征在于,根据所述采样值个数,在所述接收数据中判断出所述Block的第一个左声道数据帧上的同步引导符包括:
判断所述第一采样值个数、所述第二采样值个数、所述第三采样值个数以及所述第四采样值个数是否同时满足以下条件:
所述第四采样值个数-1≤所述第一采样值个数≤所述第四采样值个数+1;所述第三采样值个数-1≤所述第二采样值个数≤所述第三采样值个数+1;以及,所述第一采样值个数-3≤所述第二采样值个数×3≤所述第一采样值个数+3;
如果所述判断结果为是,则将所述连续五次跳变对应的接收数据确定为所述Block的第一个左声道数据帧上的同步引导符。
4.如权利要求2所述的方法,其特征在于,根据所述采样值个数确定采样点位置包括:
在所述第一采样值个数、所述第二采样值个数、所述第三采样值个数以及所述第四采样值个数之中,确定采样个数最小的作为最小采样值个数;
根据所述最小采样值个数对应的采样点,确定所述采样点位置。
5.如权利要求4所述的方法,其特征在于,当所述最小采样值个数对应的采样点有多个时,在多个所述采样点中取最中间的采样点,将其所对应的位置作为所述采样点位置。
6.如权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括:
在判断出所述Block的第一个左声道数据帧上的同步引导符时,使能采样有效信号;其中,所述采样有效信号用于指示采样点位置已确定;
根据所述采样有效信号指示的所述采样点位置,接收数据。
7.一种数据的接收装置,其特征在于,包括:
采样值个数获取模块,用于获取接收数据的采样值个数;
同步引导符确定模块,用于当根据所述采样值个数判断出数据块Block的第一个左声道数据帧上的同步引导符时,触发采样点位置确定模块;
采样点位置确定模块,用于根据所述采样值个数确定采样点位置;
数据接收模块,用于根据所述采样点位置接收数据。
8.如权利要求7所述的装置,其特征在于,所述采样值个数获取模块包括:
采样单元,用于采用高频时钟对所述接收数据进行采样;
监测单元,用于对采样过程中的跳变进行监测;
统计单元,用于对连续五次跳变中的每两个相邻跳变之间的采样值个数进行统计,依次得到第一采样值个数、第二采样值个数、第三采样值个数以及第四采样值个数。
9.如权利要求8所述的装置,其特征在于,所述同步引导符确定模块包括:
条件判断单元,用于判断所述第一采样值个数、所述第二采样值个数、所述第三采样值个数以及所述第四采样值个数是否同时满足以下条件:
所述第四采样值个数-1≤所述第一采样值个数≤所述第四采样值个数+1;所述第三采样值个数-1≤所述第二采样值个数≤所述第三采样值个数+1;以及,所述第一采样值个数-3≤所述第二采样值个数×3≤所述第一采样值个数+3;
同步引导符确定单元,用于在所述条件判断单元的判断结果为是的情况下,将所述连续五次跳变对应的接收数据确定为所述Block的第一个左声道数据帧上的同步引导符。
10.如权利要求8所述的装置,其特征在于,所述采样点位置确定模块包括:
最小采样值确定单元,用于在所述第一采样值个数、所述第二采样值个数、所述第三采样值个数以及所述第四采样值个数之中,确定采样个数最小的作为最小采样值个数;
采样点位置确定单元,用于根据所述最小采样值个数对应的采样点,确定所述采样点位置。
11.如权利要求7至10中任一项所述的装置,其特征在于,所述装置还包括:
使能模块,用于当根据所述采样值个数判断出所述Block的第一个左声道数据帧上的同步引导符时,使能采样有效信号;其中,所述采样有效信号用于指示采样点位置已确定;
接收模块,用于根据所述采样有效信号指示的所述采样点位置,接收数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310003515.2A CN103916211A (zh) | 2013-01-06 | 2013-01-06 | 一种数据的接收方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310003515.2A CN103916211A (zh) | 2013-01-06 | 2013-01-06 | 一种数据的接收方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103916211A true CN103916211A (zh) | 2014-07-09 |
Family
ID=51041636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310003515.2A Pending CN103916211A (zh) | 2013-01-06 | 2013-01-06 | 一种数据的接收方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103916211A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104914329A (zh) * | 2015-05-19 | 2015-09-16 | 苏州市职业大学 | 一种spdif接口信号的触发装置和触发方法 |
CN106257435A (zh) * | 2015-06-17 | 2016-12-28 | 深圳市创成微电子有限公司 | 一种spdif异步接收频率匹配解决方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018308A (zh) * | 2006-01-21 | 2007-08-15 | 珠海炬力集成电路设计有限公司 | Amv音视频文件制作方法和amv音视频文件播放器 |
CN101247187A (zh) * | 2008-03-27 | 2008-08-20 | 炬力集成电路设计有限公司 | 一种音频数据恢复方法、装置及多媒体数据接收系统 |
CN101409093A (zh) * | 2008-11-28 | 2009-04-15 | 炬力集成电路设计有限公司 | 一种确定音频数据采样点位置的方法及装置 |
-
2013
- 2013-01-06 CN CN201310003515.2A patent/CN103916211A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018308A (zh) * | 2006-01-21 | 2007-08-15 | 珠海炬力集成电路设计有限公司 | Amv音视频文件制作方法和amv音视频文件播放器 |
CN101247187A (zh) * | 2008-03-27 | 2008-08-20 | 炬力集成电路设计有限公司 | 一种音频数据恢复方法、装置及多媒体数据接收系统 |
CN101409093A (zh) * | 2008-11-28 | 2009-04-15 | 炬力集成电路设计有限公司 | 一种确定音频数据采样点位置的方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104914329A (zh) * | 2015-05-19 | 2015-09-16 | 苏州市职业大学 | 一种spdif接口信号的触发装置和触发方法 |
CN104914329B (zh) * | 2015-05-19 | 2017-12-08 | 苏州市职业大学 | 一种spdif接口信号的触发装置和触发方法 |
CN106257435A (zh) * | 2015-06-17 | 2016-12-28 | 深圳市创成微电子有限公司 | 一种spdif异步接收频率匹配解决方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8605912B2 (en) | Biphase mark code decoder and method of operation | |
CN103091686A (zh) | 一种兼容北斗卫星导航系统和gps的位同步方法及装置 | |
CN104008078A (zh) | 一种基于fpga的数据传输板之间进行高速传输的方法 | |
EP3512170A1 (en) | Circuit structure for efficiently demodulating fsk signal in wireless charging device | |
CN102546084B (zh) | 异步串行通信数据接收时的抗干扰纠错采样系统和方法 | |
WO2019144754A1 (zh) | 信号接收方法 | |
CN111402883B (zh) | 一种复杂环境下分布式语音交互系统中就近响应系统和方法 | |
US8306173B2 (en) | Clock regeneration circuit | |
CN103916211A (zh) | 一种数据的接收方法及装置 | |
CN101409093B (zh) | 一种确定音频数据采样点位置的方法及装置 | |
CN105099442A (zh) | 模块化信号采集与检测的装置和方法 | |
CN102231890B (zh) | 特殊突发的检测方法及装置 | |
CN108134649B (zh) | 一种星载ads-b信号突发检测方法及系统 | |
CN102223345B (zh) | 时隙同步与符号同步的方法 | |
CN104270155A (zh) | 一种曼彻斯特码流接收抗干扰比特解析方法 | |
CN101635583B (zh) | 一种窄带高速跳频系统的抗相偏解调方法 | |
CN111487655A (zh) | 一种gnss信号位同步方法 | |
US20160295531A1 (en) | Multipath time division service transmission method and device | |
JP5508922B2 (ja) | フレーム同期のためのシステム及び方法 | |
CN104682981A (zh) | 广播式自动相关监视ads-b接收机解码板 | |
CN109150488B (zh) | 基于双边沿检测的低复杂度定时同步处理方法及装置 | |
CN211406003U (zh) | 一种曼彻斯特码的解码系统 | |
CN102932103A (zh) | 一种基于数字化变电站的数据传输速率自适应接收方法 | |
CN104023386A (zh) | 发送端、接收端、及其帧同步方法、帧同步系统 | |
CN113067673B (zh) | Pdcch检测方法、装置、以及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20151019 Address after: Dameisha Yantian District of Shenzhen City, Guangdong province 518085 Building No. 1 Applicant after: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD. Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice Applicant before: ZTE Corporation |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140709 |