对FM0编码进行解码的方法和装置与流程

文档序号:12809013阅读:951来源:国知局
对FM0编码进行解码的方法和装置与流程

本发明涉及通信领域,具体地,涉及一种对fm0编码进行解码的方法和装置。



背景技术:

fm0编码的全称为双相间隔码编码,其特点是在一个位窗内采用电平变化表示不同逻辑。如果电平只在位窗的起始处翻转,其他位置不翻转,则表示逻辑“1”;如果电平既在位窗的起始处翻转,又在位窗中间翻转,则表示逻辑“0”。根据fm0编码规则可以发现,无论传送的码元是“0”还是“1”,在位窗的起始处都需要发生翻转。

对fm0编码进行解码的传统方法是通过比较器采集每个边沿(包括上升沿和下降沿),然后进行解码,如图1所示。这种解码的实现方法简单,但缺点是抗干扰性较差。因为当射频基带信号受到外部信号干扰时,解码器收到的基带信号除了有用信号外,还有干扰信号。例如,图2所示的基带信号中,低电平附近的小扰动即是干扰信号。在解码时若把干扰信号的边沿也采集进来,会使得整个解码的节拍发生错误,导致之后的解码完全错误。这样导致了实际应用中,解码器在比较恶劣的电磁环境下不能正常工作。



技术实现要素:

本发明的目的是提供一种对fm0编码进行解码的方法和装置,其能够提高对fm0编码进行解码的可靠性和抗干扰性,并提高了接收灵敏度。

为了实现上述目的,本发明提供一种对fm0编码进行解码的方法,该方法包括:获取fm0编码数据中相邻两个极大值之间的位窗宽度;将与所 述位窗宽度相对应的待解码数据缓存到数据缓存器中,将与所述位窗宽度相对应的标志位数据缓存到标志缓存器中,且所述位窗宽度、所述待解码数据和所述标志位数据一一对应;对已缓存的待解码数据进行同步,以确认所述待解码数据中哪两个相邻比特代表一个码元;以及分别从所述数据缓存器和所述标志缓存器中依序两两比特地读取所述待解码数据和所述标志位数据,若所读取的标志位数据指示所读取的待解码数据不需要进行纠错,则直接对所读取的待解码数据解码,若所读取的标志位数据指示所读取的待解码数据需要进行纠错,则对所读取的待解码数据纠错后再进行解码。

本发明还提供一种对fm0编码进行解码的装置,该装置包括:位窗宽度获取模块,用于获取fm0编码数据中相邻两个极大值之间的位窗宽度;缓存模块,用于将与所述位窗宽度相对应的待解码数据缓存到数据缓存器中,将与所述位窗宽度相对应的标志位数据缓存到标志缓存器中,且所述位窗宽度、所述待解码数据和所述标志位数据一一对应;同步模块,用于对已缓存的待解码数据进行同步,以确认所述待解码数据中哪两个相邻比特代表一个码元;以及解码模块,用于分别从所述数据缓存器和所述标志缓存器中依序两两比特地读取所述待解码数据和所述标志位数据,若所读取的标志位数据指示所读取的待解码数据不需要进行纠错,则直接对所读取的待解码数据解码,若所读取的标志位数据指示所读取的待解码数据需要进行纠错,则对所读取的待解码数据纠错后再进行解码。

通过上述技术方案,由于根据本发明的对fm0编码进行解码的方法和装置首先获取fm0编码数据中相邻两个极大值之间的位窗宽度,然后对与所述位窗宽度相对应的待解码数据进行缓存和同步,最后依据标志位数据对待解码数据进行解码,因此根据本发明的技术能够避免干扰信号的干扰,进而能够提高对fm0编码进行解码的可靠性和抗干扰性,提高了接收灵敏度。

本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:

图1是对fm0编码进行解码的传统方法的位窗示意图;

图2是在基带信号的低电平处出现干扰信号的示意图;

图3是根据本发明一种实施方式的对fm0编码进行解码的方法的流程图;

图4是根据本发明一种实施方式的位窗示意图;以及

图5是根据本发明一种实施方式的对fm0编码进行解码的装置的框图。

具体实施方式

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

本发明提供一种对fm0编码进行解码的方法,如图3所示,该方法可以包括步骤s1至s4。

步骤s1、获取fm0编码数据中相邻两个极大值之间的位窗宽度。

根据干扰的相关理论和实际应用的经验,无线接收过程中的基带信号在受到外部电磁信号干扰时,在低电平处更容易受到干扰,如图2所示,在基带信号的低电平附近出现了一个干扰脉冲。

为了减少干扰信号对解码的影响,本发明提出将fm0编码数据中相邻两个极大值之间的时间间隔作为位窗宽度,如图4所示。每个位窗从基带信号的极大值开始并在下一个极大值处结束。这种位窗的调整能够避免图2中所示的干扰信号对解码的误判和影响。由于干扰信号从基带信号的低电平引入,因此干扰信号的极大值往往明显低于正常基带信号的极大值,因此在确 定位窗宽度时能够容易地剔除这种干扰信号,并将正常基带信号的下一个极大值作为位窗的结束,进而能够提高根据本发明的解码技术的抗干扰性和灵敏度。

另外,假设fm0编码的位速率为1/t,则根据fm0编码的特点,在fm0编码数据中相邻两个极大值之间的时间间隔也即位窗宽度只可能出现3种情况,即:t、1.5t和2t。位窗宽度为1.5t的情况下,有两种可能。一种是由长下降沿和短上升沿构成的位窗,也即相邻两个极大值之间的上升沿位于该位窗中间偏右侧的位置处,另一种是由短下降沿和长上升沿构成的位窗,也即相邻两个极大值之间的上升沿位于该位窗中间偏左侧的位置处。图4中的位窗n+1就是由短下降沿和长上升沿构成的位窗的示例。根据波形特性的不同,下降沿和上升沿的时间长度差别,一般情况下这两种情况是容易区分的,但是由于外部干扰的出现,有时这种区别是不明显的,甚至是相反的。因此根据本发明的方法还在后续步骤中根据fm0编码的特性对这种模糊情况进行纠错以减小误码率,这将在后续的解码步骤中进行详细描述。

另外,可以用例如双边沿比较器对接收到的基带信号进行比较,进而得到相邻两个极大值之间的位窗宽度。

进一步地,各个位窗宽度所对应的待解码数据和标志位数据可以依据fm0编码的特点来得到,也即:

(1)所述位窗宽度为t,则该位窗宽度所对应的待解码数据为01、所对应的标志位数据为00。对于标志位数据而言,标志位数据中的“0”代表该标志位数据对应的待解码数据的比特不需要被纠错,标志位数据中的“1”代表该标志位数据对应的待解码数据的比特需要被纠错。另外,依据fm0编码的特点,在位窗宽度为t时,相应的待解码数据的内容只可能为“01”,所以这两比特“01”都不需要被纠错。

(2)所述位窗宽度为1.5t,若相邻两个极大值之间的上升沿位于该位 窗中间偏左侧的位置处,则该位窗宽度所对应的待解码数据为011、所对应的标志位数据为010,若相邻两个极大值之间的上升沿位于该位窗中间偏右侧的位置处,则该位窗宽度所对应的待解码数据为001、所对应的标志位数据为010。此时,由于标志位数据的中间比特是1,因此相应待解码数据的中间比特需要被纠错。

(3)所述位窗宽度为2t,则该位窗宽度所对应的待解码数据为0011、所对应的标志位数据为0000。依据fm0编码的特点,在位窗宽度为2t时,待解码数据的内容只可能为“0011”,所以这四个比特“0011”都不需被纠错。

上面给出的待解码数据的基本思想就是:以“0”代表半个位窗的下降沿,以“1”代表半个位窗的上升沿,则“00”代表一个位窗的下降沿,“11”代表一个位窗的上升沿。这样,接收到的射频基带信号,也即fm0编码数据就被转变为2位的数字信号,之后只要对这些数字信号进行解码就能完成对fm0编码数据的解码。

步骤s2、将与所述位窗宽度相对应的待解码数据缓存到数据缓存器中,将与所述位窗宽度相对应的标志位数据缓存到标志缓存器中,且所述位窗宽度、所述待解码数据和所述标志位数据一一对应。

步骤s3、对已缓存的待解码数据进行同步,以确认所述待解码数据中哪两个相邻比特代表一个码元。

在对接收到的fm0编码数据进行解码时,因为没有同步信号,所以在解码和纠错步骤之前,需要先进行数据同步,以确认哪两个相邻字符(也即被缓存的相邻待解码数据)代表一个码元,这样才能进行正确的解码。

根据fm0编码的规则,位流“00”或者“11”肯定是代表一个码元,而“01”或者“10”既可能是两个码元之间的翻转,也可能是码元“0”中间的翻转,所以“01”和“10”不能作为同步判断的依据。因此,可以根据 “00”或者“11”进行同步判断,在确认数据同步成功之后的两两比特即为一个码元。

另外,为了避免因同步错误导致后续解码完全错位情况的发生,可以通过检测一定长度的序列来进行同步以最大程度上减小出现同步错误的概率,具体方法是:在解码出多组两个一样的相邻字符的情况下,认为同步成功。

另外,在fm0编码中具有前同步码的情况下,还可以依据前同步码对已缓存的待解码数据进行同步。例如,在解码出连续6个“0”和连续6个“1”的前同步码数据之后,才认为数据同步成功了,这样在对前同步码之后的fm0编码数据进行解码时才能够实现正确的解码。本领域技术人员应当理解的是,上述前同步码仅是示例,实际上,不同的应用场合前同步码也会各有不同。

步骤s4、分别从所述数据缓存器和所述标志缓存器中依序两两比特地读取所述待解码数据和所述标志位数据,若所读取的标志位数据指示所读取的待解码数据不需要进行纠错,则直接对所读取的待解码数据解码,若所读取的标志位数据指示所读取的待解码数据需要进行纠错,则对所读取的待解码数据纠错后再进行解码。

优选地,在进行纠错的过程中,若所读取的标志位数据指示所读取的待解码数据中的第一比特需要纠错,则依据所述数据缓存器中该所读取的待解码数据之前的两个比特中的后一比特进行纠错;若所读取的标志位数据指示所读取的待解码数据中的第二比特需要纠错,则依据所述数据缓存器中该所读取的待解码数据之后的两个比特中的前一比特进行纠错。

以下举例描述步骤s4。

当所读取的待解码数据为“01”或“10”、所读取的标志位数据为“00”时,说明不需要对所读取的待解码数据进行纠错,因此直接将所读取的待解码数据“01”或“10”解码为码元“0”;当所读取的带解码数据为“00”或 者“11”、所读取的标志位数据为“00”时,说明不需要对所读取的待解码数据进行纠错,因此直接将所读取的待解码数据“00”或者“11”解码为码元“1”。

当所读取的标志位数据为“10”时,说明所读取的待解码数据的第一比特需要纠错,该比特的纠错后的值由所述数据缓存器中该所读取的待解码数据之前的两个比特中的后一比特决定。由于fm0编码时,两个码元之间的比特之间需要进行翻转,故当所述数据缓存器中该所读取的待解码数据之前的两个比特中的后一比特为“0”时,将所读取的待解码数据的第一比特纠错为“1”,当所述数据缓存器中该所读取的待解码数据之前的两个比特中的后一比特为“1”时,将所读取的待解码数据的第一比特纠错为“0”,这样就实现了前向纠错。

当所读取的标志位数据为“01”时,说明所读取的待解码数据的第二比特需要纠错,该比特的纠错后的值由所述数据缓存器中该所读取的待解码数据之后的两个比特中的前一比特决定。由于fm0编码时,两个码元之间的比特之间需要进行翻转,故当所述数据缓存器中该所读取的待解码数据之后的两个比特中的前一比特为“0”时,将所读取的待解码数据的第二比特纠错为“1”,当所述数据缓存器中该所读取的待解码数据之后的两个比特中的前一比特为“1”时,将所读取的待解码数据的第二比特纠错为“0”,这样就实现了后向纠错。

至此,就实现了对fm0编码的解码。

优选地,在步骤s1之前,根据本发明的解码方法还可以包括:接收解码起始标志位。也即,只有在接收到解码起始标志位时才开始执行步骤s1-s4。

优选地,在步骤s4之后,根据本发明的解码方法还可以包括:接收解码结束标志位。也即,在接收到解码结束标志为之后则停止解码,否则继续等待进行随后的解码。

本发明还提供一种对fm0编码进行解码的装置,如图5所示,该装置包括位窗宽度获取模块21、缓存模块22、同步模块23和解码模块24。以下对这些模块进行详细描述。

位窗宽度获取模块21用于获取fm0编码数据中相邻两个极大值之间的位窗宽度。根据本发明的示例性位窗如图4所示。每个位窗从基带信号的极大值开始并在下一个极大值处结束。这种位窗的调整能够避免图2中所示的干扰信号对解码的误判和影响,进而能够提高根据本发明的解码技术的抗干扰性和灵敏度。

另外,假设fm0编码的位速率为1/t,则根据fm0编码的特点,在fm0编码数据中相邻两个极大值之间的时间间隔也即位窗宽度只可能出现3种情况,即:t、1.5t和2t。位窗宽度为1.5t的情况下,有两种可能。一种是由长下降沿和短上升沿构成的位窗,也即相邻两个极大值之间的上升沿位于该位窗中间偏右侧的位置处,另一种是由短下降沿和长上升沿构成的位窗,也即相邻两个极大值之间的上升沿位于该位窗中间偏左侧的位置处。图4中的位窗n+1就是由短下降沿和长上升沿构成的位窗的示例。根据波形特性的不同,下降沿和上升沿的时间长度差别,一般情况下这两种情况是容易区分的,但是由于外部干扰的出现,有时这种区别是不明显的,甚至是相反的。因此根据本发明的装置还在解码模块24中根据fm0编码的特性对这种模糊情况进行纠错以减小误码率,这将在后续进行详细描述。

另外,位窗宽度获取模块21可以用例如双边沿比较器对接收到的基带信号进行比较,进而得到相邻两个极大值之间的位窗宽度。

进一步地,各个位窗宽度所对应的待解码数据和标志位数据可以依据fm0编码的特点来得到,也即:

(1)所述位窗宽度为t,则该位窗宽度所对应的待解码数据为01、所对应的标志位数据为00。对于标志位数据而言,标志位数据中的“0”代表 该标志位数据对应的待解码数据的比特不需要被纠错,标志位数据中的“1”代表该标志位数据对应的待解码数据的比特需要被纠错。另外,依据fm0编码的特点,在位窗宽度为t时,相应的待解码数据的内容只可能为“01”,所以这两比特“01”都不需要被纠错。

(2)所述位窗宽度为1.5t,若相邻两个极大值之间的上升沿位于该位窗中间偏左侧的位置处,则该位窗宽度所对应的待解码数据为011、所对应的标志位数据为010,若相邻两个极大值之间的上升沿位于该位窗中间偏右侧的位置处,则该位窗宽度所对应的待解码数据为001、所对应的标志位数据为010。此时,由于标志位数据的中间比特是1,因此相应待解码数据的中间比特需要被纠错。

(3)所述位窗宽度为2t,则该位窗宽度所对应的待解码数据为0011、所对应的标志位数据为0000。依据fm0编码的特点,在位窗宽度为2t时,待解码数据的内容只可能为“0011”,所以这四个比特“0011”都不需被纠错。

上面给出的待解码数据的基本思想就是:以“0”代表半个位窗的下降沿,以“1”代表半个位窗的上升沿,则“00”代表一个位窗的下降沿,“11”代表一个位窗的上升沿。这样,接收到的射频基带信号,也即fm0编码数据就被转变为2位的数字信号,之后只要对这些数字信号进行解码就能完成对fm0编码数据的解码。

缓存模块22用于将与所述位窗宽度相对应的待解码数据缓存到数据缓存器中,将与所述位窗宽度相对应的标志位数据缓存到标志缓存器中,且所述位窗宽度、所述待解码数据和所述标志位数据一一对应。

同步模块23用于对已缓存的待解码数据进行同步,以确认所述待解码数据中哪两个相邻比特代表一个码元。在对接收到的fm0编码数据进行解码时,因为没有同步信号,所以在解码模块24解码之前,同步模块23需要 先进行数据同步,以确认哪两个相邻字符(也即被缓存的相邻待解码数据)代表一个码元,这样解码模块24才能进行正确的解码。

根据fm0编码的规则,位流“00”或者“11”肯定是代表一个码元,而“01”或者“10”既可能是两个码元之间的翻转,也可能是码元“0”中间的翻转,所以“01”和“10”不能作为同步判断的依据。因此,同步模块23可以根据“00”或者“11”进行同步判断,在确认数据同步成功之后的两两比特即为一个码元。

另外,为了避免因同步错误导致后续解码完全错位情况的发生,同步模块23可以通过检测一定长度的序列来进行同步以最大程度上减小出现同步错误的概率,具体方法是:在解码模块24解码出多组两个一样的相邻字符的情况下,同步模块23认为同步成功。

另外,在fm0编码中具有前同步码的情况下,同步模块23还可以依据前同步码对已缓存的待解码数据进行同步。例如,在解码模块24解码出连续6个“0”和连续6个“1”的前同步码数据之后,同步模块23才认为数据同步成功了,这样在解码模块24对前同步码之后的fm0编码数据进行解码时才能够实现正确的解码。本领域技术人员应当理解的是,上述前同步码仅是示例,实际上,不同的应用场合前同步码也会各有不同。

解码模块24用于分别从所述数据缓存器和所述标志缓存器中依序两两比特地读取所述待解码数据和所述标志位数据,若所读取的标志位数据指示所读取的待解码数据不需要进行纠错,则直接对所读取的待解码数据解码,若所读取的标志位数据指示所读取的待解码数据需要进行纠错,则对所读取的待解码数据纠错后再进行解码。

优选地,在进行纠错的过程中,若所读取的标志位数据指示所读取的待解码数据中的第一比特需要纠错,则解码模块24依据所述数据缓存器中该所读取的待解码数据之前的两个比特中的后一比特进行纠错;若所读取的标 志位数据指示所读取的待解码数据中的第二比特需要纠错,则解码模块24依据所述数据缓存器中该所读取的待解码数据之后的两个比特中的前一比特进行纠错。

以下举例说明解码模块24的解码与纠错。

当解码模块24所读取的待解码数据为“01”或“10”、所读取的标志位数据为“00”时,说明不需要对所读取的待解码数据进行纠错,因此解码模块24直接将所读取的待解码数据“01”或“10”解码为码元“0”;当解码模块24所读取的带解码数据为“00”或者“11”、所读取的标志位数据为“00”时,说明不需要对所读取的待解码数据进行纠错,因此解码模块24直接将所读取的待解码数据“00”或者“11”解码为码元“1”。

当解码模块24所读取的标志位数据为“10”时,说明所读取的待解码数据的第一比特需要纠错,该比特的纠错后的值由所述数据缓存器中该所读取的待解码数据之前的两个比特中的后一比特决定。由于fm0编码时,两个码元之间的比特之间需要进行翻转,故当所述数据缓存器中该所读取的待解码数据之前的两个比特中的后一比特为“0”时,解码模块24将所读取的待解码数据的第一比特纠错为“1”,当所述数据缓存器中该所读取的待解码数据之前的两个比特中的后一比特为“1”时,解码模块24将所读取的待解码数据的第一比特纠错为“0”,这样就实现了前向纠错。

当解码模块24所读取的标志位数据为“01”时,说明所读取的待解码数据的第二比特需要纠错,该比特的纠错后的值由所述数据缓存器中该所读取的待解码数据之后的两个比特中的前一比特决定。由于fm0编码时,两个码元之间的比特之间需要进行翻转,故当所述数据缓存器中该所读取的待解码数据之后的两个比特中的前一比特为“0”时,解码模块24将所读取的待解码数据的第二比特纠错为“1”,当所述数据缓存器中该所读取的待解码数据之后的两个比特中的前一比特为“1”时,解码模块24将所读取的待解 码数据的第二比特纠错为“0”,这样就实现了后向纠错。

优选地,如图5所示,根据本发明的解码装置还可以包括解码起始标志位接收模块25,用于接收解码起始标志位。这样,只有在解码起始标志位接收模块25接收到解码起始标志位时位窗宽度获取模块21、缓存模块22、同步模块23和解码模块24才开始工作。

优选地,如图5所示,根据本发明的解码装置还可以包括解码结束标志位接收模块26,用于接收解码结束标志位。也即,在解码结束标志位接收模块26接收到解码结束标志为之后根据本发明的解码装置停止解码,否则继续等待进行随后的解码。

以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。

此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1