CN117749199A - 一种导航电文译码单元及方法 - Google Patents
一种导航电文译码单元及方法 Download PDFInfo
- Publication number
- CN117749199A CN117749199A CN202410186142.5A CN202410186142A CN117749199A CN 117749199 A CN117749199 A CN 117749199A CN 202410186142 A CN202410186142 A CN 202410186142A CN 117749199 A CN117749199 A CN 117749199A
- Authority
- CN
- China
- Prior art keywords
- decoding
- data
- main
- module
- decoder
- 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
- 238000000034 method Methods 0.000 title claims description 45
- 238000001514 detection method Methods 0.000 claims abstract description 42
- 238000013461 design Methods 0.000 claims description 18
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000000725 suspension Substances 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Navigation (AREA)
Abstract
本发明公开一种导航电文译码单元,包括第一译码模块、第二译码模块和共享内存模块,共享内存模块以分时复用方式存储编码数据和译码数据;第一译码模块接收到第一译码指令时,对第一编码数据进行译码,得到第一译码数据,第一主译码数据存入共享内存模块,根据第一主译码数据和第一辅助译码数据,采用锁步比较方式对第一译码模块进行安全检测;第二译码模块接收到第二译码指令时,对第二编码数据进行译码,得到第二译码数据,第二主译码数据存入共享内存模块,根据第二主译码数据和第二辅助译码数据,采用锁步比较方式对第二译码模块进行安全检测;共享内存模块采用ECC方式对第一主译码数据和第二主译码数据进行安全检测。
Description
技术领域
本发明涉及通信领域,具体涉及一种导航电文译码单元及方法。
背景技术
随着自动驾驶技术的发展,满足功能安全(ISO26262)要求的GNSS导航接收机芯片越来越受到市场的青睐。GNSS导航接收机芯片的一个重要功能单元是导航电文的译码,通常包括LDPC译码和Viterbi译码等。导航电文译码结果是否正常直接影响着GNSS接收机能否生成准确可靠的定位信息。因此,如何设计满足功能安全要求的导航电文译码器单元,是GNSS导航接收机芯片设计的重要问题。同时,针对译码单元的特点,如何在满足功能安全要求的情况下,节省芯片面积、降低芯片功耗,也是芯片设计中要解决的技术问题。
发明内容
基于上述现状,本发明的主要目的在于提供一种既能满足功能安全需求,同时又能节省芯片面积、降低芯片功耗的导航电文译码单元。
为实现上述目的,本发明采用的技术方案如下:
一种导航电文译码单元,包括第一译码模块、第二译码模块和共享内存模块,所述第一译码模块和所述第二译码模块的译码方式不同,
所述共享内存模块用于存储待译码的导航电文编码数据和对所述导航电文编码数据进行译码得到的译码数据,所述导航电文编码数据包括第一编码数据和第二编码数据,所述译码数据包括第一主译码数据和第二主译码数据,其中,所述共享内存模块以分时复用的方式分别存储所述第一编码数据和所述第二编码数据,以及第一主译码数据和第二主译码数据;
所述第一译码模块用于在接收到第一译码指令时,对存储于所述共享内存模块中的所述第一编码数据进行译码,得到第一译码数据,所述第一译码数据包括所述第一主译码数据和第一辅助译码数据,并将所述第一主译码数据存入所述共享内存模块;所述第一译码模块还用于根据所述第一主译码数据和所述第一辅助译码数据,采用锁步比较方式对所述第一译码模块进行安全检测;
所述第二译码模块用于在接收到第二译码指令时,对存储于所述共享内存模块中的所述第二编码数据进行译码,得到第二译码数据,所述第二译码数据包括所述第二主译码数据和第二辅助译码数据,并将所述第二主译码数据存入所述共享内存模块;所述第二译码模块还用于根据所述第二主译码数据和所述第二辅助译码数据,采用锁步比较方式对所述第二译码模块进行安全检测;
其中,所述共享内存模块采用ECC方式对所述第一主译码数据和所述第二主译码数据进行安全检测。
优选地,在所述第一译码模块和第二译码模块进行译码前,所述第一译码模块、第二译码模块和共享内存模块处于挂起状态。
优选地,所述第一编码数据是Viterbi编码数据,所述第二编码数据是LDPC编码数据。
优选地,所述第一译码模块包括第一主译码器、第一辅助译码器和第一锁步比较器,所述第一主译码器和所述第一辅助译码器互为冗余设计,
当接收到所述第一译码指令时,所述第一主译码器和所述第一辅助译码器同时对所述第一编码数据进行译码,分别得到第一主译码数据和第一辅助译码数据;
所述第一锁步比较器根据所述第一主译码数据和所述第一辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出第一译码模块故障告警信号。
优选地,所述第一主译码器和所述第一辅助译码器是Viterbi译码器。
优选地,所述第二译码模块包括第二主译码器、第二辅助译码器和第二锁步比较器,所述第二主译码器和所述第二辅助译码器互为冗余设计,
在接收到译码指令时,所述第二主译码器和所述第二辅助译码器同时对所述第二编码数据进行译码,分别得到第二主译码数据和第二辅助译码数据;
所述第二锁步比较器根据所述第二主译码数据和所述第二辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出第二译码模块故障告警信号。
优选地,所述第二主译码器和所述第二辅助译码器是LDPC译码器。
优选地,当所述第一译码模块或所述第二译码模块完成译码后,所述第一译码模块或第二译码模块恢复至挂起状态。
本发明还公开一种导航电文译码方法,应用于导航电文译码单元,所述导航电文译码单元包括第一译码模块、第二译码模块和共享内存模块,所述方法包括步骤:
S10:接收待译码的导航电文编码数据并存入所述共享内存模块,所述导航电文编码数据包括第一编码数据和第二编码数据;
S20:当接收到第一译码指令时,执行步骤S301-S302,当接收到第二译码指令时,执行步骤S401-S402,
S301:所述第一译码模块对所述第一编码数据进行译码,得到第一译码数据,所述第一译码数据包括第一主译码数据和第一辅助译码数据,并将所述第一主译码数据存入所述共享内存模块;
S302:根据所述第一主译码数据和所述第一辅助译码数据,采用锁步比较方式对所述第一译码模块进行安全检测,采用ECC方式对所述共享内存模块中的第一主译码数据进行安全检测;
S401:所述第二译码模块对所述第二编码数据进行译码,得到第二译码数据,所述第二译码数据包括第二主译码数据和第二辅助译码数据,并将所述第二主译码数据存入所述共享内存模块;
S402:根据所述第二主译码数据和所述第二辅助译码数据,采用锁步比较方式对所述第二译码模块进行安全检测,所述第二译码模块采用锁步比较方式进行安全检测,采用ECC方式对所述共享内存模块中的第二主译码数据进行安全检测;
其中,所述共享内存模块以分时复用的方式分别存储所述第一编码数据和所述第二编码数据,以及所述第一主译码数据和所述第二主译码数据。
优选地,在步骤S20前,所述第一译码模块、第二译码模块和共享内存模块处于挂起状态。
优选地,所述步骤S301具体为:所述第一译码模块中的第一主译码器和第一辅助译码器同时对所述第一编码数据进行译码,分别得到所述第一主译码数据和所述第一辅助译码数据,并将所述第一主译码数据存入所述共享内存模块,所述第一主译码器和所述第一辅助译码器互为冗余设计;
所述步骤S302具体为:根据所述第一主译码数据和所述第一辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出所述第一译码模块故障告警信号;若采用ECC方式对所述共享内存模块中的第一主译码数据检测出错误时,则输出所述第一主译码数据故障告警信号。
优选地,所述步骤S301中的译码方式是Viterbi译码。
优选地,所述步骤S401具体为:所述第二译码模块中的第二主译码器和第二辅助译码器同时对所述第二编码数据进行译码,分别得到所述第二主译码数据和所述第二辅助译码数据,并将所述第二主译码数据存入所述共享内存模块,所述第二主译码器和所述第二辅助译码器互为冗余设计;
所述步骤S402具体为:根据所述第二主译码数据和所述第二辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出所述第二译码模块故障告警信号;若采用ECC方式对所述共享内存模块中的第二主译码数据检测出错误时,则输出所述第二主译码数据故障告警信号。
优选地,所述步骤S401中的译码方式是LDPC译码。
本发明还公开一种导航接收机芯片,所述芯片包括本发明任一项所述的导航电文译码单元,或,采用本发明任一项所述的导航电文译码方法。
本发明还公开一种导航接收机,包括本发明任一项所述的导航电文译码单元,或,采用本发明任一项所述的导航电文译码方法,或包括本发明所述的导航接收机芯片。
本发明公开的译码器单元设计方案,针对GNSS导航接收机中译码单元的特点,不同类型的译码单元共享存储空间,导航电文译码单元中的第一译码模块和第二译码模块中可以仅包括配置寄存器和译码逻辑电路,不包括任何存储单元,可以节省芯片面积,从而实现设计优化,同时,译码单元的存储部分(共享内存模块)和非存储部分(两个译码模块)是分离设计,存储部分采用ECC保护,非存储部分采用锁步(Lock-Step)保护,从而可以满足功能安全要求。
本发明的其他有益效果,将在具体实施方式中通过具体技术特征和技术方案的介绍来阐述,本领域技术人员通过这些技术特征和技术方案的介绍,应能理解所述技术特征和技术方案带来的有益技术效果。
附图说明
以下将参照附图对本发明的导航电文译码单元及方法的优选实施方式进行描述。图中:
图1为根据本发明的一种优选实施方式的导航电文译码单元框图;
图2为根据本发明的一种优选实施方式的第一译码模块框图;
图3为根据本发明的一种优选实施方式的第二译码模块框图;
图4为根据本发明的一种优选实施方式的导航电文译码单元架构图;
图5为根据本发明的一种优选实施方式的导航电文译码方法流程图。
具体实施方式
以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分,为了避免混淆本发明的实质,公知的方法、过程、流程、元件并没有详细叙述。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
GNSS导航接收机芯片的中的译码单元有以下几个特点:
(1)要完成LDPC、Viterbi等不同类型的译码功能,每种译码功能的电路不同;
(2)每种译码功能电路都包含RAM;
(3)译码单元处理的不是连续数据流,无需连续工作,经常被设计成协处理被软件按需调用。
针对译码单元的上述特点,设计了本发明的导航电文译码单元,在满足功能安全要求的同时,节省了芯片面积、降低了芯片功耗。
图1为根据本发明的一种优选实施方式的导航电文译码单元框图,包括第一译码模块10、第二译码模块20和共享内存模块30,第一译码模块10和第二译码模块20的译码方式不同。
共享内存模块30用于存储待译码的导航电文编码数据和对所述导航电文编码数据进行译码得到的译码数据,导航电文编码数据可以包括第一编码数据和第二编码数据,译码数据包括第一主译码数据和第二主译码数据,其中,共享内存模块以分时复用的方式分别存储第一编码数据和第二编码数据,以及第一主译码数据和第二主译码数据。通常,可以由CPU通过总线向共享内存模块30中写入待译码的编码数据,第一编码数据可以是Viterbi编码数据,第二编码数据可以是LDPC编码数据。
第一译码模块10用于在接收到第一译码指令时,对存储于共享内存模块30中的第一编码数据进行译码,得到第一译码数据,第一译码数据包括第一主译码数据和第一辅助译码数据,第一译码模块10还将第一主译码数据存入共享内存模块30中,同时,第一译码模块10还用于根据第一主译码数据和第一辅助译码数据,采用锁步比较方式对第一译码模块进行安全检测。
第二译码模块20用于在接收到第二译码指令时,对存储于共享内存模块30中的第二编码数据进行译码,得到第二译码数据,第二译码数据包括第二主译码数据和第二辅助译码数据,第二译码模块20还将第二主译码数据存入所述共享内存模块30,同时,第二译码模块20还用于根据第二主译码数据和第二辅助译码数据,采用锁步比较方式对第二译码模块进行安全检测。
其中,共享内存模块30采用ECC方式对第一主译码数据和第二主译码数据进行安全检测。
上述导航电文译码单元中的第一译码模块10和第二译码模块20中可以仅包括配置寄存器和译码逻辑电路,不包括任何存储单元,其中,共享内存模块30供第一译码模块10和第二译码模块20分时使用。本发明公开的译码器单元设计方案,针对GNSS导航接收机中译码单元的特点,不同类型的译码单元共享存储空间,可以节省芯片面积,从而实现设计优化,同时,译码单元的存储部分(共享内存模块)和非存储部分(两个译码模块)是分离设计,存储部分采用ECC保护,非存储部分采用锁步(Lock-Step)保护,从而可以满足功能安全要求。
在一优选的实施方式中,在第一译码模块10和第二译码模块20进行译码前,第一译码模块10、第二译码模块20和共享内存模块30均可处于挂起状态。也就是说,当某一译码模块不工作时,该译码模块处于挂起状态,从而降低芯片功耗。
在一优选实施方式中,如图2所示,第一译码模块10可以包括第一主译码器101、第一辅助译码器102和第一锁步比较器103,第一主译码器101和第一辅助译码器102互为冗余设计,可以是电路结构完全相同的译码器,当接收到所述第一译码指令时,第一主译码器101和第一辅助译码器102同时接收并对第一编码数据进行译码,分别得到第一主译码数据和第一辅助译码数据;第一锁步比较器103再根据第一主译码数据和第一辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出第一译码模块10故障告警信号。
在一优选实施方式中,第一主译码器101和第一辅助译码器102可以是Viterbi译码器。第一主译码器101和第一辅助译码器102对第一编码数据执行Viterbi译码。
在一优选实施方式中,如图3所示,第二译码模块20可以包括第二主译码器201、第二辅助译码器202和第二锁步比较器203,第二主译码器201和第二辅助译码器202互为冗余设计,可以是电路结构完全相同的译码器,当接收到所述第二译码指令时,第二主译码器201和第二辅助译码器202同时接收并对第二编码数据进行译码,分别得到第二主译码数据和第二辅助译码数据;第二锁步比较器203再根据第二主译码数据和第二辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出第二译码模块20故障告警信号。
在一优选实施方式中,第二主译码器201和第二辅助译码器202可以是LDPC译码器。第二主译码器201和第二辅助译码器202对第二编码数据执行LDPC译码。
在一优选实施方式中,当第一译码模块10或第二译码模块20完成译码后,第一译码模块10或第二译码模块20仍恢复至挂起状态,从而进一步降低芯片功耗。
图4为根据本发明的一种优选实施方式的导航电文译码单元架构图,以Viterbi和LDPC译码器的组合为例,其他更多类型的译码可在此基础上方便地扩展。
图中译码单元架构中,除了CPU和总线外,主要包括Viterbi译码器(第一译码模块10)、LDPC译码器(第二译码模块20),以及共享内存(共享内存模块30)三部分。其中,Viterbi译码器和LDPC译码器仅包括配置寄存器和译码逻辑电路,不包括任何存储单元。共享内存供Viterbi译码器和LDPC译码器分时使用。
为了满足功能安全要求,共享内存采用ECC保护,Viterbi译码器和LDPC译码器采用冗余锁步的安全机制。具体地,Viterbi译码器和LDPC译码器中的译码电路被复制两份,即,Viterbi译码器(主)和Viterbi译码器(冗余),LDPC译码器(主)和LDPC译码器(冗余),其中,Viterbi译码器(主)为第一主译码器,Viterbi译码器(冗余)为第一辅助译码器,LDPC译码器(主)为第二主译码器,LDPC译码器(冗余)为第二辅助译码器,总线以及共享内存输出的信号同时送给主译码器和冗余译码器,主译码器的输出在送给共享内存的同时,与冗余译码器的输出做锁步比较(即图4中的“比较”单元),比较结果不同,则输出故障告警信号,ECC若纠错失败,也会输出故障告警信号。
以先进行Viterbi译码,再进行LDPC译码为例,说明图4译码单元架构的工作流程如下:
(1)在CPU发起译码申请之前,Viterbi译码器和LDPC译码器均处于挂起状态,共享内存中是无效数据;
(2)CPU通过总线向共享内存中写入待Viterbi译码的编码数据;
(3)CPU通过总线向Viterbi译码器中的配置寄存器写入译码配置参数,完成后通过向启动寄存器写1来启动译码器工作;
(4)Viterbi译码器从共享内存读取待译码数据,Viterbi译码器(主)和Viterbi译码器(冗余)同时对待译码数据实施译码,译码完成后,Viterbi译码器(主)的译码结果回写到共享内存,共享内存采用ECC方式对接收到的Viterbi译码器(主)的译码结果进行安全检测,同时,Viterbi译码器(主)和Viterbi译码器(冗余)的译码结果输入至(锁步)比较器中执行锁步安全检测,以对Viterbi译码器进行安全检测;
(5)Viterbi译码完成并将结果写入到共享内存后,会向CPU发出中断;
(6)CPU收到Viterbi译码完成中断后,从共享内存中读取译码后数据;
(7)Viterbi译码器、LDPC译码器和共享内存恢复至挂起状态,等待下一次译码申请;
(8)CPU通过总线向共享内存写入待LDPC译码的编码后数据;
(9)CPU通过总线向LDPC译码器中的配置寄存器写入译码配置参数,完成后通过向启动寄存器写1来启动译码器工作;
(10)LDPC译码器从共享内存读取待译码数据,LDPC译码器(主)和LDPC译码器(冗余)同时对来自于共享内存的待译码数据实施译码,译码完成后,LDPC译码器(主)的译码结果回写到共享内存,共享内存采用ECC方式对接收到的LDPC译码器(主)的译码结果进行安全检测,同时,LDPC译码器(主)和LDPC译码器(冗余)的译码结果输入至(锁步)比较器中执行锁步安全检测,以对LDPC译码器进行安全检测;
(11)LDPC译码完成并将结果写入到共享内存后,向CPU发出中断;
(12)CPU收到LDPC译码完成中断后,从共享内存中读取译码后数据;
接着,回到步骤(7)。
本发明还公开一种导航电文译码方法,应用于导航电文译码单元,所述导航电文译码单元包括第一译码模块、第二译码模块和共享内存模块。图5为根据本发明的一种优选实施方式的导航电文译码方法流程图,所述方法包括步骤:
S10:接收待译码的导航电文编码数据并存入所述共享内存模块,所述导航电文编码数据包括第一编码数据和第二编码数据;
S20:当接收到第一译码指令时,执行步骤S301-S302,当接收到第二译码指令时,执行步骤S401-S402,
S301:所述第一译码模块对所述第一编码数据进行译码,得到第一译码数据,所述第一译码数据包括第一主译码数据和第一辅助译码数据,并将所述第一主译码数据存入所述共享内存模块;
S302:根据所述第一主译码数据和第一辅助译码数据,采用锁步比较方式对所述第一译码模块进行安全检测,采用ECC方式对所述共享内存模块中的第一主译码数据进行安全检测;
S401:所述第二译码模块对所述第二编码数据进行译码,得到第二译码数据,所述第二译码数据包括第二主译码数据和第二辅助译码数据,并将所述第二主译码数据存入所述共享内存模块;
S402:根据所述第二主译码数据和第二辅助译码数据,采用锁步比较方式对所述第二译码模块进行安全检测,采用ECC方式对所述共享内存模块中的第二主译码数据进行安全检测;
其中,所述共享内存模块以分时复用的方式分别存储所述第一编码数据和所述第二编码数据,以及第一主译码数据和第二主译码数据。
在一优选实施方式中,在步骤S20前,所述第一译码模块、第二译码模块和共享内存模块处于挂起状态。
在一优选实施方式中,所述步骤S301具体为:所述第一译码模块中的第一主译码器和第一辅助译码器同时对所述第一编码数据进行译码,分别得到第一主译码数据和第一辅助译码数据,并将所述第一主译码数据存入所述共享内存模块,所述第一主译码器和所述第一辅助译码器互为冗余设计;所述步骤S302具体为:根据所述第一主译码数据和第一辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出第一译码模块故障告警信号;采用ECC方式对所述共享内存模块中的第一主译码数据检测出错误时,则输出第一主译码数据故障告警信号。
在一优选实施方式中,所述步骤S301中的译码方式是Viterbi译码。
在一优选实施方式中,所述步骤S401具体为:所述第二译码模块中的第二主译码器和第二辅助译码器同时对所述第二编码数据进行译码,分别得到第二主译码数据和第二辅助译码数据,并将所述第二主译码数据存入所述共享内存模块,所述第二主译码器和所述第二辅助译码器互为冗余设计;所述步骤S402具体为:根据所述第二主译码数据和第二辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出第二译码模块故障告警信号;采用ECC方式对所述共享内存模块中的第二主译码数据检测出错误时,则输出二主译码数据故障告警信号。
在一优选实施方式中,所述步骤S401中的译码方式是LDPC译码。
本发明还公开一种导航接收机芯片,所述芯片包括本发明所述的导航电文译码单元,或采用本发明所述的导航电文译码方法。
本发明还公开一种导航接收机,包括本发明所述的导航电文译码单元,或,采用本发明任一项所述的导航电文译码方法,或,包括本发明所述的导航接收机芯片。
本领域的技术人员能够理解的是,在不冲突的前提下,上述各优选方案可以自由地组合、叠加。其中,附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生,例如,两个接连表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本文中对于各步骤的编号仅为了方便说明和引用,并不用于限定前后顺序,具体的执行顺序是由技术本身确定的,本领域技术人员可以根据技术本身确定各种允许的、合理的顺序。
需要说明的是,本发明中采用步骤编号(字母或数字编号)来指代某些具体的方法步骤,仅仅是出于描述方便和简洁的目的,而绝不是用字母或数字来限制这些方法步骤的顺序。本领域的技术人员能够明了,相关方法步骤的顺序,应由技术本身决定,不应因步骤编号的存在而被不适当地限制,本领域技术人员可以根据技术本身确定各种允许的、合理的步骤顺序。
本领域的技术人员能够理解的是,在不冲突的前提下,上述各优选方案可以自由地组合、叠加。
应当理解,上述的实施方式仅是示例性的,而非限制性的,在不偏离本发明的基本原理的情况下,本领域的技术人员可以针对上述细节做出的各种明显的或等同的修改或替换,都将包含于本发明的权利要求范围内。
Claims (16)
1.一种导航电文译码单元,其特征在于,包括第一译码模块、第二译码模块和共享内存模块,所述第一译码模块和所述第二译码模块的译码方式不同,
所述共享内存模块用于存储待译码的导航电文编码数据和对所述导航电文编码数据进行译码得到的译码数据,所述导航电文编码数据包括第一编码数据和第二编码数据,所述译码数据包括第一主译码数据和第二主译码数据,其中,所述共享内存模块以分时复用的方式分别存储所述第一编码数据和所述第二编码数据,以及第一主译码数据和第二主译码数据;
所述第一译码模块用于在接收到第一译码指令时,对存储于所述共享内存模块中的第一编码数据进行译码,得到第一译码数据,所述第一译码数据包括所述第一主译码数据和第一辅助译码数据,并将所述第一主译码数据存入所述共享内存模块,所述第一译码模块还用于根据所述第一主译码数据和所述第一辅助译码数据,采用锁步比较方式对所述第一译码模块进行安全检测;
所述第二译码模块用于在接收到第二译码指令时,对存储于所述共享内存模块中的第二编码数据进行译码,得到第二译码数据,所述第二译码数据包括所述第二主译码数据和第二辅助译码数据,并将所述第二主译码数据存入所述共享内存模块,所述第二译码模块还用于根据所述第二主译码数据和所述第二辅助译码数据,采用锁步比较方式对所述第二译码模块进行安全检测;
其中,所述共享内存模块采用ECC方式对所述第一主译码数据和所述第二主译码数据进行安全检测。
2.根据权利要求1所述的导航电文译码单元,其特征在于,在所述第一译码模块和第二译码模块进行译码前,所述第一译码模块、第二译码模块和共享内存模块处于挂起状态。
3.根据权利要求1所述的导航电文译码单元,其特征在于,所述第一编码数据是Viterbi编码数据,所述第二编码数据是LDPC编码数据。
4.根据权利要求1所述的导航电文译码单元,其特征在于,所述第一译码模块包括第一主译码器、第一辅助译码器和第一锁步比较器,所述第一主译码器和所述第一辅助译码器互为冗余设计,
当接收到所述第一译码指令时,所述第一主译码器和所述第一辅助译码器同时对所述第一编码数据进行译码,分别得到第一主译码数据和第一辅助译码数据;
所述第一锁步比较器根据所述第一主译码数据和所述第一辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出第一译码模块故障告警信号。
5.根据权利要求4所述的导航电文译码单元,其特征在于,所述第一主译码器和所述第一辅助译码器是Viterbi译码器。
6.根据权利要求1所述的导航电文译码单元,其特征在于,所述第二译码模块包括第二主译码器、第二辅助译码器和第二锁步比较器,所述第二主译码器和所述第二辅助译码器互为冗余设计,
在接收到译码指令时,所述第二主译码器和所述第二辅助译码器同时对所述第二编码数据进行译码,分别得到第二主译码数据和第二辅助译码数据;
所述第二锁步比较器根据所述第二主译码数据和所述第二辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出第二译码模块故障告警信号。
7.根据权利要求6所述的导航电文译码单元,其特征在于,所述第二主译码器和所述第二辅助译码器是LDPC译码器。
8.根据权利要求1所述的导航电文译码单元,其特征在于,当所述第一译码模块或所述第二译码模块完成译码后,所述第一译码模块或第二译码模块恢复至挂起状态。
9.一种导航电文译码方法,应用于导航电文译码单元,其特征在于,所述导航电文译码单元包括第一译码模块、第二译码模块和共享内存模块,所述方法包括步骤:
S10:接收待译码的导航电文编码数据并存入所述共享内存模块,所述导航电文编码数据包括第一编码数据和第二编码数据;
S20:当接收到第一译码指令时,执行步骤S301-S302,当接收到第二译码指令时,执行步骤S401-S402,
S301:所述第一译码模块对所述第一编码数据进行译码,得到第一译码数据,所述第一译码数据包括第一主译码数据和第一辅助译码数据,并将所述第一主译码数据存入所述共享内存模块;
S302:根据所述第一主译码数据和所述第一辅助译码数据,采用锁步比较方式对所述第一译码模块进行安全检测,采用ECC方式对所述共享内存模块中的第一主译码数据进行安全检测;
S401:所述第二译码模块对所述第二编码数据进行译码,得到第二译码数据,所述第二译码数据包括第二主译码数据和第二辅助译码数据,并将所述第二主译码数据存入所述共享内存模块;
S402:根据所述第二主译码数据和所述第二辅助译码数据,采用锁步比较方式对所述第二译码模块进行安全检测,采用ECC方式对所述共享内存模块中的第二主译码数据进行安全检测;
其中,所述共享内存模块以分时复用的方式分别存储所述第一编码数据和所述第二编码数据,以及所述第一主译码数据和所述第二主译码数据。
10.根据权利要求9所述的导航电文译码方法,其特征在于,在步骤S20前,所述第一译码模块、第二译码模块和共享内存模块处于挂起状态。
11.根据权利要求9所述的导航电文译码方法,其特征在于,
所述步骤S301具体为:所述第一译码模块中的第一主译码器和第一辅助译码器同时对所述第一编码数据进行译码,分别得到所述第一主译码数据和所述第一辅助译码数据,并将所述第一主译码数据存入所述共享内存模块,所述第一主译码器和所述第一辅助译码器互为冗余设计;
所述步骤S302具体为:根据所述第一主译码数据和所述第一辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出所述第一译码模块故障告警信号;采用ECC方式对所述共享内存模块中的第一主译码数据检测出错误时,则输出所述第一主译码数据故障告警信号。
12.根据权利要求11所述的导航电文译码方法,其特征在于,所述步骤S301中的译码方式是Viterbi译码。
13.根据权利要求9所述的导航电文译码方法,其特征在于,
所述步骤S401具体为:所述第二译码模块中的第二主译码器和第二辅助译码器同时对所述第二编码数据进行译码,分别得到所述第二主译码数据和所述第二辅助译码数据,并将所述第二主译码数据存入所述共享内存模块,所述第二主译码器和所述第二辅助译码器互为冗余设计;
所述步骤S402具体为:根据所述第二主译码数据和所述第二辅助译码数据进行锁步比较安全检测,若比较结果不同,则输出所述第二译码模块故障告警信号;采用ECC方式对所述共享内存模块中的第二主译码数据检测出错误时,则输出所述第二主译码数据故障告警信号。
14.根据权利要求13所述的导航电文译码方法,其特征在于,所述步骤S401中的译码方式是LDPC译码。
15.一种导航接收机芯片,其特征在于,所述芯片包括如权利要求1-8任一项所述的导航电文译码单元,或,采用如权利要求9-14任一项所述的导航电文译码方法。
16.一种导航接收机,其特征在于,包括如权利要求1-8任一项所述的导航电文译码单元,或,采用如权利要求9-14任一项所述的导航电文译码方法,或,包括如权利要求15所述的导航接收机芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410186142.5A CN117749199A (zh) | 2024-02-20 | 2024-02-20 | 一种导航电文译码单元及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410186142.5A CN117749199A (zh) | 2024-02-20 | 2024-02-20 | 一种导航电文译码单元及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117749199A true CN117749199A (zh) | 2024-03-22 |
Family
ID=90281710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410186142.5A Pending CN117749199A (zh) | 2024-02-20 | 2024-02-20 | 一种导航电文译码单元及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117749199A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100299583A1 (en) * | 2007-10-26 | 2010-11-25 | Qualcomm Incorporated | Optimized viterbi decoder and gnss receiver |
CN106301390A (zh) * | 2016-08-11 | 2017-01-04 | 中国计量大学 | LDPC/Turbo码双模译码器 |
CN113271177A (zh) * | 2020-02-17 | 2021-08-17 | 广州海格通信集团股份有限公司 | 低密度奇偶校验码译码方法、装置、系统和无线接收设备 |
CN113556137A (zh) * | 2021-07-27 | 2021-10-26 | 天津大学 | 一种基于DWC的Turbo译码器容错方法 |
WO2022037504A1 (zh) * | 2020-08-16 | 2022-02-24 | 复旦大学 | 一种应用于深空通信的多模式ldpc译码器 |
-
2024
- 2024-02-20 CN CN202410186142.5A patent/CN117749199A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100299583A1 (en) * | 2007-10-26 | 2010-11-25 | Qualcomm Incorporated | Optimized viterbi decoder and gnss receiver |
CN106301390A (zh) * | 2016-08-11 | 2017-01-04 | 中国计量大学 | LDPC/Turbo码双模译码器 |
CN113271177A (zh) * | 2020-02-17 | 2021-08-17 | 广州海格通信集团股份有限公司 | 低密度奇偶校验码译码方法、装置、系统和无线接收设备 |
WO2022037504A1 (zh) * | 2020-08-16 | 2022-02-24 | 复旦大学 | 一种应用于深空通信的多模式ldpc译码器 |
CN113556137A (zh) * | 2021-07-27 | 2021-10-26 | 天津大学 | 一种基于DWC的Turbo译码器容错方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7370232B2 (en) | Method and apparatus for recovery from loss of lock step | |
CN112667450B (zh) | 一种可动态配置的多核处理器容错系统 | |
US4794601A (en) | High-reliability computer system | |
JP3229070B2 (ja) | 多数決回路及び制御ユニット及び多数決用半導体集積回路 | |
KR100680473B1 (ko) | 액세스 시간이 감소된 플래시 메모리 장치 | |
US8566672B2 (en) | Selective checkbit modification for error correction | |
JP2001256068A (ja) | 誤り検出・訂正方法、計算機システムの主記憶制御装置、及び計算機システム | |
US6742159B2 (en) | Address parity error processing method, and apparatus and storage for the method | |
CN103678031A (zh) | 二乘二取二冗余系统及方法 | |
JP2009295252A (ja) | 半導体記憶装置及びそのエラー訂正方法 | |
CN117749199A (zh) | 一种导航电文译码单元及方法 | |
JPH1049448A (ja) | 冗長化メモリのエラー訂正機構 | |
CN117112318A (zh) | 基于risc-v架构的双核容错系统 | |
EP1703393A2 (en) | Error notification method and apparatus for an information processing system carrying out mirror operation | |
EP3882774A1 (en) | Data processing device and data processing method | |
CN111124418B (zh) | 一种基于vcp冗余代码的通信数据超时判断方法 | |
JPH06214890A (ja) | 計算機 | |
US11461205B1 (en) | Error management system for system-on-chip | |
JP2006011576A (ja) | 高信頼性制御装置 | |
US20230064905A1 (en) | Semiconductor device | |
JPH05100883A (ja) | データ処理用半導体装置 | |
JP2004326564A (ja) | 不揮発性半導体メモリ装置 | |
CN118538279A (zh) | Ecc刷新回写加固方法及装置、介质、设备 | |
Abdulhadi et al. | Self Checking Register File Using Berger Code | |
JPH0981465A (ja) | 主記憶制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |