CN101217285B - 一种适用于DRM标准的Viterbi解码器 - Google Patents
一种适用于DRM标准的Viterbi解码器 Download PDFInfo
- Publication number
- CN101217285B CN101217285B CN2007103065811A CN200710306581A CN101217285B CN 101217285 B CN101217285 B CN 101217285B CN 2007103065811 A CN2007103065811 A CN 2007103065811A CN 200710306581 A CN200710306581 A CN 200710306581A CN 101217285 B CN101217285 B CN 101217285B
- Authority
- CN
- China
- Prior art keywords
- signal
- floating
- comparator
- module
- measurement module
- 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.)
- Expired - Fee Related
Links
- 238000005259 measurement Methods 0.000 claims abstract description 30
- 230000005540 biological transmission Effects 0.000 claims description 2
- 230000000737 periodic effect Effects 0.000 claims 1
- 238000000034 method Methods 0.000 abstract description 10
- 230000008901 benefit Effects 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 description 8
- 238000007667 floating Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 101000780205 Homo sapiens Long-chain-fatty-acid-CoA ligase 5 Proteins 0.000 description 2
- 102100034318 Long-chain-fatty-acid-CoA ligase 5 Human genes 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 101000780194 Homo sapiens Fatty acid CoA ligase Acsl3 Proteins 0.000 description 1
- 101000799318 Homo sapiens Long-chain-fatty-acid-CoA ligase 1 Proteins 0.000 description 1
- 101000780208 Homo sapiens Long-chain-fatty-acid-CoA ligase 4 Proteins 0.000 description 1
- 101000780202 Homo sapiens Long-chain-fatty-acid-CoA ligase 6 Proteins 0.000 description 1
- 101000773184 Homo sapiens Twist-related protein 1 Proteins 0.000 description 1
- 102100033995 Long-chain-fatty-acid-CoA ligase 1 Human genes 0.000 description 1
- 102100034319 Long-chain-fatty-acid-CoA ligase 4 Human genes 0.000 description 1
- 102100030398 Twist-related protein 1 Human genes 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种适用于DRM的Viterbi解码器,包括分支度量模块、路径度量模块和回溯扫描模块,路径度量模块接收分支度量模块的信号并将处理后的信号传送到回溯扫描模块,特点是路径度量模块由六个加-比较-选择单元、四个四级流水线加法器、两个第一比较器和两个选择器组成,加-比较-选择单元接收分支度量模块的信号,第一比较器输出决断信号,选择器输出路径度量信号,优点在于在功率不小于50M的情况,能够完全满足DRM解码的实时要求,并且使用的资源大大降低,比使用相同工艺但是采用完全并行结构的Viterbi解码器节省资源50%左右。
Description
技术领域
本发明涉及一种Viterbi解码器,尤其是涉及一种适用于DRM的Viterbi解码器。
背景技术
传统的音频广播,例如调幅(AM)广播,都是利用模拟技术,信号在传播过程中会受到各种形式的干扰,如果信号接收端没有良好的纠错技术来对接收信号进行纠错,就会导致接收端产生的声音效果较差。DRM(Digital Radio Mondiale世界数字广播)标准定义了一些数字音频广播的技术,使信号可以在调幅广播特别是短波的频段进行传输,并且通过接收端的纠错功能,提供非常良好的恢复信号。其强大的纠错功能,得益于一种叫做前向纠错的技术。前向纠错技术能够使接收器自动地修正错误而不需要要求发射器重复发射信息。卷积编码技术是前向纠错技术中受到广泛欢迎的一种。
针对卷积编码技术,最常用也最高效的一种解码方法是软决断(soft decision)Viterbi解码算法。解码符合DRM标准的比特流,需要使用软决断Viterbi解码器。
Viterbi解码器首先计算并展开状态转换图,展开的状态装换图形成一个格栅,然后通过回溯找到最大似然状态序列。结构上由三部分构成,分别是:分支度量单元(BranchMetric Unit,简写为BMU),路径度量单元(Path Metric Unit,简写为PMU),以及回溯扫描单元(Trace-Back Unit,简写为TBU)。PMU单元负责进行一系列的加-比较-选择运算(Add-Compare-Select,简写为ACS),所以路径度量单元也被称为加-比较-选择单元(ACS Unit)。
在硬件实现方式中,根据路径度量单元中加-比较-选择运算子模块是如何进行分配和调度的,可以将Viterbi解码器的结构分为并行状态的结构和串行状态的结构。前者,每个状态都会被分配一个加-比较-选择运算子模块,并行的计算所有路径度量。这种结构适合于高码率的情形,但是面积非常大。后者,用一个或是两个加-比较-选择子模块来串行的完成所有计算。这种结构适合于中低码率的情形。
实用的DRM硬件解码器产品,必须是低成本,低功耗的。Viterbi解码器是DRM硬件解码器中非常重要的组件。这样,Viterbi解码器的结构便显得非常重要。在适用于DRM标准解码的Viterbi解码器中,有一些规模比较庞大的加法器和乘法器单元,如何尽量少的分配这些运算单元是降低Viterbi解码器成本的核心。
发明内容
本发明所要解决的技术问题是提供一种在满足DRM解码要求的前提下,成本几乎最低,并且功耗也较小的适用于DRM的Viterbi解码器。
本发明解决上述问题所采用的技术方案为:一种适用于世界数字广播的Viterbi解码器,包括分支度量模块、路径度量模块和回溯扫描模块,所述的路径度量模块接收所述的分支度量模块的信号并将处理后的信号传送到所述的回溯扫描模块,所述的路径度量模块由六个加-比较-选择单元、四个四级流水线加法器、两个第一比较器和两个选择器组成,所述的加-比较-选择单元分别与所述的四级流水线加法器和所述的第一比较器连接,所述的第一比较器和所述的加-比较-选择单元分别与所述的选择器连接,所述的分支度量模块包括一个浮点加法器、一个浮点乘法器、一个最小值产生器和一个第二比较器,所述的浮点加法器和所述的浮点乘法器分别与所述的最小值产生器连接,所述的最小值产生器与所述的第二比较器连接,所述的回溯扫描模块使用能够完成信号的先进后出的缓冲功能的单口RAM,所述的最小值产生器接收待解码信号,所述的第二比较器与所述的加-比较-选择单元连接传送分支度量信号,所述的第一比较器与所述的回溯扫描模块连接用于传送决断信号,所述的选择器与所述的回溯扫描模块连接用于传送路径度量信号,所述的回溯扫描模块输出解码后的信号。
所述的四级流水线加法器为四级流水线浮点加法器,所述的第一比较器为单周期浮点比较器,所述的选择器为浮点选择器。
与现有技术相比,本发明的优点在于在功率不小于50M的情况,能够完全满足DRM解码的实时要求,并且使用的资源大大降低,比使用相同工艺但是采用完全并行结构的Viterbi解码器节省资源50%左右;路径度量模块采用完全串行和完全并行相折衷的运算结构,既满足了性能要求,又能够在使用相同工艺的情况下,使所需资源不超过完全并行结构所需资源的20%;分支度量模块使用串行运算结构,与并行结构相比,大大地节省了使用的资源,使用相同工艺情况下,串行运算结构所需资源不超过完全并行结构所需资源的25%,且并行度越高需要资源越多。
附图说明
图1为本发明的结构示意图;
图2为路径度量模块结构示意图;
图3为分支度量模块结构示意图;
图4为最小值产生器的有限状态机模型;
图5为分支度量模块的有限状态机模型;
图6为路径度量模块资源调度示意图,图中的ACS0,ACS1,ACS2,ACS3,ACS4,ACS5分别代表图2中的六个加-比较-选择模块。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
如图1~3所示,一种适用于DRM的Viterbi解码器,包括分支度量模块1、路径度量模块2和回溯扫描模块3,路径度量模块2接收分支度量模块1的信号并将处理后的信号传送到回溯扫描模块3,路径度量模块2由六个加-比较-选择单元21、四个四级流水线浮点加法器22、两个第一比较器23和两个选择器24组成,第一比较器23为单周期浮点比较器,分支度量模块1包括一个浮点加法器11、一个浮点乘法器12、一个最小值产生器13和一个第二比较器14,最小值产生器13接收待解码信号,第二比较器14输出分支度量信号,加-比较-选择单元21接收第二比较器14输出的分支度量信号,第一比较器23输出决断信号,选择器24输出路径度量信号,回溯扫描模块3使用单口RAM,完成信号的先进后出的缓冲功能。
本发明分支度量模块1使用串行运算结构;路径度量模块2采用完全串行和完全并行相折衷的运算结构;上面两个模块使用32位的浮点运算器(浮点加法器,浮点乘法器以及浮点比较器);浮点加法器采用四级流水线结构,浮点比较器在一个周期内就能完成运算;回溯扫描模块3使用单口RAM。
每个模块的调度采用下面的方法:
分支度量模块1:使用完全串行的运算结构,即只使用一个浮点加法器11和一个浮点乘法器12,由状态机控制对每个输入符号的处理。在符合DRM标准的解码器中,对于每个输入符号(symbol),最多将会有四个浮点形式的度量产生,这四个度量分别代表:实数部分与1的距离,实数部分与0的距离,虚数部分与1的距离,虚数部分与0的距离。这四个度量都由最小值产生器13产生。最小值产生器13给浮点加法器11和第二比较器14输送相应的运算数,并接受运算结果,通过第二比较器14对运算结果进行比较,来产生度量值。分支度量模块1采用图4所示的状态机来控制这四个度量的产生。在时间顺序上,四个度量先后产生,控制逻辑由对应于图4的状态机模型实现。图4和图5所示的状态机文字描述可以参加其标注。
路径度量模块2:此模块中的基本运算单元是加-比较-选择单元21,本发明中有六个加-比较-选择单元21,这六个加-比较-选择单元21共用四个四级流水线结构的浮点加法器22,两个单周期浮点比较器23和两个浮点选择器24,其基本结构如图2所示。四个四级流水线结构的浮点加法器22,四个周期可以完成一次运算,两个单周期浮点比较器23一个周期可以完成一次运算。这样,每个加-比较-选择单元21最快可以在六个周期内完成一次运算。通过流水线式的调度,对于每次迭代,完成32次加-比较-选择运算。调度过程可以由一个状态机控制。调度过程是:
第一个周期:启动第一个加-比较-选择单元
第二个周期:启动第二个加-比较-选择单元
第三个周期:启动第三个加-比较-选择单元
第四个周期:启动第四个加-比较-选择单元
第五个周期:启动第五个加-比较-选择单元
第六个周期:启动第六个加-比较-选择单元
第七个周期:接收第一个加-比较-选择单元的计算结果,并给于它新的输入,开始新的运算。
第八个周期:接受第二个加-比较-选择单元的计算结果,并给于它新的输入,开始新的运算。如此类推......
回溯扫描模块3:路径度量模块2每次运作将产生64位决断(decision)数据,这64位数据存放在一个单口RAM中,这个RAM充当一个先进后出的缓冲,一帧数据由路径度量模块2处理完毕后,回溯扫描模块3读取RAM中的数据,完成最大似然路径的扫描。
Claims (2)
1.一种适用于世界数字广播的Viterbi解码器,包括分支度量模块、路径度量模块和回溯扫描模块,所述的路径度量模块接收所述的分支度量模块的信号并将处理后的信号传送到所述的回溯扫描模块,其特征在于所述的路径度量模块由六个加-比较-选择单元、四个四级流水线加法器、两个第一比较器和两个选择器组成,所述的加-比较-选择单元分别与所述的四级流水线加法器和所述的第一比较器连接,所述的第一比较器和所述的加-比较-选择单元分别与所述的选择器连接,所述的分支度量模块包括一个浮点加法器、一个浮点乘法器、一个最小值产生器和一个第二比较器,所述的浮点加法器和所述的浮点乘法器分别与所述的最小值产生器连接,所述的最小值产生器与所述的第二比较器连接,所述的回溯扫描模块使用能够完成信号的先进后出的缓冲功能的单口RAM,所述的最小值产生器接收待解码信号,所述的第二比较器与所述的加-比较-选择单元连接传送分支度量信号,所述的第一比较器与所述的回溯扫描模块连接用于传送决断信号,所述的选择器与所述的回溯扫描模块连接用于传送路径度量信号,所述的回溯扫描模块输出解码后的信号。
2.如权利要求1所述的一种适用于世界数字广播的Viterbi解码器,其特征在于所述的四级流水线加法器为四级流水线浮点加法器,所述的第一比较器为单周期浮点比较器,所述的选择器为浮点选择器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007103065811A CN101217285B (zh) | 2007-12-28 | 2007-12-28 | 一种适用于DRM标准的Viterbi解码器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007103065811A CN101217285B (zh) | 2007-12-28 | 2007-12-28 | 一种适用于DRM标准的Viterbi解码器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101217285A CN101217285A (zh) | 2008-07-09 |
CN101217285B true CN101217285B (zh) | 2010-09-29 |
Family
ID=39623658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007103065811A Expired - Fee Related CN101217285B (zh) | 2007-12-28 | 2007-12-28 | 一种适用于DRM标准的Viterbi解码器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101217285B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106209119A (zh) * | 2015-05-02 | 2016-12-07 | 宁波中国科学院信息技术应用研究院 | 一种DRM/DRM+接收机中的Viterbi解码器的硬件设计方法 |
CN105356893A (zh) * | 2015-11-24 | 2016-02-24 | 中国科学院计算技术研究所 | 一种尾码可配置的Viterbi解码方法及解码器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10336045A (ja) | 1997-06-04 | 1998-12-18 | Sharp Corp | ビタビ復号器 |
US6298464B1 (en) * | 1997-12-04 | 2001-10-02 | Motorola Inc. | Method and apparatus for maximum likelihood sequence detection |
CN1323102A (zh) * | 2000-05-08 | 2001-11-21 | 华为技术有限公司 | 用于特博码的解码器及其解码方法 |
CN1484385A (zh) * | 2002-09-20 | 2004-03-24 | 联发科技股份有限公司 | 相加比较选择电路及使用该电路的维特比解码器 |
CN1780153A (zh) * | 2004-11-24 | 2006-05-31 | 朱明程 | 通用可重构维特比译码装置及其方法 |
-
2007
- 2007-12-28 CN CN2007103065811A patent/CN101217285B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10336045A (ja) | 1997-06-04 | 1998-12-18 | Sharp Corp | ビタビ復号器 |
US6298464B1 (en) * | 1997-12-04 | 2001-10-02 | Motorola Inc. | Method and apparatus for maximum likelihood sequence detection |
CN1323102A (zh) * | 2000-05-08 | 2001-11-21 | 华为技术有限公司 | 用于特博码的解码器及其解码方法 |
CN1484385A (zh) * | 2002-09-20 | 2004-03-24 | 联发科技股份有限公司 | 相加比较选择电路及使用该电路的维特比解码器 |
CN1780153A (zh) * | 2004-11-24 | 2006-05-31 | 朱明程 | 通用可重构维特比译码装置及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101217285A (zh) | 2008-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101478314B (zh) | 一种里德-所罗门编码译码器及其译码的方法 | |
KR20080047317A (ko) | 소프트웨어 정의 무선 시스템에서의 사용을 위한 비터비복호기 구조 | |
US8069401B2 (en) | Equalization techniques using viterbi algorithms in software-defined radio systems | |
CN101217285B (zh) | 一种适用于DRM标准的Viterbi解码器 | |
Gupta et al. | FPGA Implementation of Viterbi Decoder using Trace back Architecture | |
Yoo et al. | A pipelined 8-bit soft decision Viterbi decoder for IEEE802. 11ac WLAN systems | |
CN108173624A (zh) | 一种部分译码的极化码串行抵消译码电路及其方法 | |
CN206099947U (zh) | 一种低资源消耗的多参数可配置Viterbi译码器 | |
CN103986477A (zh) | 矢量viterbi译码指令及viterbi译码装置 | |
Cholan | Design and implementation of low power high speed Viterbi decoder | |
CN106209117B (zh) | 一种低资源消耗的多参数可配置Viterbi译码器 | |
Mostafa et al. | High performance reconfigurable Viterbi Decoder design for multi-standard receiver | |
Chen et al. | Design of a low power viterbi decoder for wireless communication applications | |
Arun et al. | Design and VLSI implementation of a Low Probability of Error Viterbi decoder | |
Bhowal | Transformation of ACS module to CSA module of low-power Viterbi decoder for digital wireless communication applications | |
CN104393952A (zh) | 一种纠错码译码器 | |
Shaker et al. | FPGA implementation of a configurable viterbi decoder for software radio receiver | |
Schwall et al. | High-speed turbo equalization for gpp-based software defined radios | |
CN103326968B (zh) | Turbo-STBC系统中生成软判决度量的实现方法 | |
CN102723959A (zh) | 维特比译码器、多路并行译码器和加比选处理方法 | |
Batcha et al. | Configurable adaptive Viterbi decoder for GPRS, EDGE and Wimax | |
CN101247380B (zh) | 用于多带正交频分复用超宽带系统的高速维特比解码器 | |
CN102361460B (zh) | 一种通用高速并行循环交错维特比译码方法 | |
CN101399555B (zh) | 收缩型Viterbi解码系统和方法 | |
Haridas et al. | Design of Viterbi decoder with minimum transition hybrid register exchange processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100929 Termination date: 20151228 |
|
EXPY | Termination of patent right or utility model |