介绍了Turbo 码的编译码基本原理,在详细研究Log_MAP 算法的基础上,用VC6. 0 编写了状态转移表生成子程序, Turbo 交织表生成子程序和Turbo 码译码程序等几个对Turbo 码进行仿真最重要的函数,并在DSP 上实现了通用的Turbo 码编译码器
上传时间: 2013-12-21
上传用户:wxhwjf
本学期所有数据结构的大作业一,设A与B分别为两个带有头结点的有序循环链表(所谓有序是指链接点按数据域值大小链接,本题不妨设按数据域值从小到大排列),list1和list2分别为指向两个链表的指针。请写出将这两个链表合并为一个带头结点的有序循环链表的算法。二,本次实验的题目为表达式求值,要求设计一个程序,演示用算符优先法对算术表达式求值的过程。 即编写程序把前缀表达式转换成后缀表达式,并计算结果。用以下三组数据测试程序: 3*(7-2); 2*(6+2*(3+6*(6+6)))+(6+6)*3+2; 8/(9-9)。三,用三元组存储稀疏矩阵,并实现稀疏矩阵的转置,两个稀疏矩阵和与积的运算四,哈夫曼编/译码器 完成Huffman 编码的译码过程。即输入一个码串,请翻译成相应的字符串。要求有编码过程和解码过程。
标签: 数据结构
上传时间: 2017-01-18
上传用户:changeboy
本学期所有数据结构的大作业一,设A与B分别为两个带有头结点的有序循环链表(所谓有序是指链接点按数据域值大小链接,本题不妨设按数据域值从小到大排列),list1和list2分别为指向两个链表的指针。请写出将这两个链表合并为一个带头结点的有序循环链表的算法。二,本次实验的题目为表达式求值,要求设计一个程序,演示用算符优先法对算术表达式求值的过程。 即编写程序把前缀表达式转换成后缀表达式,并计算结果。用以下三组数据测试程序: 3*(7-2); 2*(6+2*(3+6*(6+6)))+(6+6)*3+2; 8/(9-9)。三,用三元组存储稀疏矩阵,并实现稀疏矩阵的转置,两个稀疏矩阵和与积的运算四,哈夫曼编/译码器 完成Huffman 编码的译码过程。即输入一个码串,请翻译成相应的字符串。要求有编码过程和解码过程。
标签: 数据结构
上传时间: 2017-01-18
上传用户:shanml
在数字通信中,采用差错控制技术(纠错码)是提高信号传输可靠性的有效手段,并发挥着越来越重要的作用。纠错码主要有分组码和卷积码两种。在码率和编码器复杂程度相同的情况下,卷积码的性能优于分组码。 卷积码的译码方法主要有代数译码和概率译码。代数译码是基于码的代数结构;而概率译码不仅基于码的代数结构,还利用了信道的统计特性,能充分发挥卷积码的特点,使译码错误概率达到很小。 卷积码译码器的设计是由高性能的复杂译码器开始的,对于概率译码最初的序列译码,随着译码约束长度的增加,其译码错误概率可达到非常小。后来慢慢地向低性能的简单译码器演化,对不太长的约束长度,维特比(Viterbi)算法是非常实用的。维特比算法是一种最大似然的译码方法。当编码约束度不太大(小于等于10)或者误码率要求不太高(约10-5)时,Viterbi译码算法效率很高,速度很快,译码器也较简单。 目前,卷积码在数传系统,尤其是在卫星通信、移动通信等领域已被广泛应用。 本论文对卷积码编码和Viterbi译码的设计原理及其FPGA实现方案进行了研究。同时,将交织和解交织技术应用于编码和解码的过程中。 首先,简要介绍了卷积码的基础知识和维特比译码算法的基本原理,并对硬判决译码和软判决译码方法进行了比较。其次,讨论了交织和解交织技术及其在纠错码中的应用。然后,介绍了FPGA硬件资源和软件开发环境Quartus Ⅱ,包括数字系统的设计方法和设计规则。再有,对基于FPGA的维特比译码器各个模块和相应算法实现、优化进行了研究。最后,在Quartus Ⅱ平台上对硬判决译码和软判决译码以及有无交织等不同情况进行了仿真,并根据仿真结果分析了维特比译码器的性能。 分析结果表明,系统的误码率达到了设计要求,从而验证了译码器设计的可靠性,所设计基于FPGA的并行Viterbi译码器适用于高速数据传输的场合。
上传时间: 2013-04-24
上传用户:tedo811
在通信系统中,人们一直致力于信息传输的有效性和可靠性的研究,信道纠错编码技术一直是人们研究的重点。1993年,Turbo码的提出,以其接近Shannon极限的优异的译码性能在编码界引起了轰动,并成为研究纠错编码的热点课题。经过十几年的研究和发展,目前,Turbo码已经走向了实用化的道路,如何用硬件实现有效的Turbo码编译码器成为了人们研究的重点。 论文以基于FPGA实现Turbo码译码器为研究目标,首先分析了Turbo码的基本编译码原理和3GPP标准的Turbo码编码结构和交织算法。然后重点分析了MAP译码算法,Log-MAP译码算法和:Max-Log-MAP译码算法,并对三种译码算法进行了详细的理论推导和计算复杂度的定量分析比较,对影响Turbo码译码性能的主要因素进行了MATLB仿真分析。 论文在深入分析比较上述三种译码算法的基础之上,选择Max-Log-MAP译码算法进行了Turbo码译码器的FPGA设计实现。主要针对FPGA实现的数据量化、定点数据表示方式、Max-Log-MAP算法子译码器关键运算单元的FPGA设计和基于3GPP标准的Turbo码译码器的内交织的FPGA设计进行了深入研究,完成了固定译码长度的Turbo码译码器的FPGA设计实现,并利用ModelSim和MATLAB分别对译码器进行了功能时序验证和FPGA定点仿真测试。
上传时间: 2013-07-09
上传用户:caixiaoxu26
ASIC对产品成本和灵活性有一定的要求.基于MCU方式的ASIC具有较高的灵活性和较低的成本,然而抗干扰性和可靠性相对较低,运算速度也受到限制.常规ASIC的硬件具有速度优势和较高的可靠性及抗干扰能力,然而不是灵活性较差,就是成本较高.与传统硬件(CHW)相比,具有一定可配置特性的场可编程门阵列(FPGA)的出现,使建立在可再配置硬件基础上的进化硬件(EHW)成为智能硬件电路设计的一种新方法.作为进化算法和可编程器件技术相结合的产物,可重构FPGA的研究属于EHW的研究范畴,是研究EHW的一种具体的实现方法.论文认为面向分类的专用类可重构FPGA(ASR-FPGA)的研究,可使可重构电路粒度划分的针对性更强、设计更易实现.论文研究的可重构FPGA的BCH通讯纠错码进化电路是一类ASR-FPGA电路的具体方法,具有一定的实用价值.论文所做的工作主要包括:(1)BCH编译码电路的设计——求取实验用BCH码的生成多项式和校验多项式及其相应的矩阵并构造实验用BCH码;(2)建立基于可重构FPGA的基核——构造具有可重构特性的硬件功能单元,以此作为可重构BCH码电路的设计基础;(3)构造实现可重构BCH纠错码电路的方法——建立可重构纠错码硬件电路算法并进行实验验证;(4)在可重构纠错码电路基础上,构造进化硬件控制功能块的结构,完成各进化RLA控制模块的验证和实现.课题是将可重构BCH码的编译码电路的实现作为一类ASR-FPGA的研究目标,主要成果是根据可编程逻辑电路的特点,选择一种可编程树的电路模型,并将它作为可重构FPGA电路的基核T;通过对循环BCH纠错码的构造原理和电路结构的研究,将基核模型扩展为能满足纠错码电路需要的纠错码基本功能单元T;以T作为再划分的基本单元,对FPGA进行"格式化",使T规则排列在FPGA上,通过对T的控制端的不同配置来实现纠错码的各个功能单元;在可重构基核的基础上提出了纠错码重构电路的嵌套式GA理论模型,将嵌套式GA的染色体串作为进化硬件描述语言,通过转换为相应的VHDL语言描述以实现硬件电路;采用RLA模型的有限状态机FSM方式实现了可重构纠错码电路的EHW的各个控制功能块.在实验方面,利用Xilinx FPGA开发系统中的VHDL语言和电路图相结合的设计方法建立了循环纠错码基核单元的可重构模型,进行循环纠错BCH码的电路和功能仿真,在Xilinx公司的Virtex600E芯片进行了FPGA实现.课题在研究模型上选取的是比较基本的BCH纠错码电路,立足于解决基于可重构FPGA核的设计的基本问题.课题的研究成果及其总结的一套ASR-FPGA进化硬件电路的设计方法对实际的进化硬件设计具有一定的实际指导意义,提出的基于专用类基核FPGA电路结构的研究方法为新型进化硬件的器件结构的设计也可提供一种借鉴.
上传时间: 2013-07-01
上传用户:myworkpost
本文对OFDM基带调制解调系统的:FPGA设计进行了研究和论述,重点实现其中的RS码编、译码模块和基带成形滤波器模块。本文首先介绍了OFDM调制的原理和OFDM基带调制解调系统的总体设计,以及FPGA设计的基本原则。接着介绍了RS码的编码原理和时域迭代译码算法,在此基础上设计实现RS码编码器和译码器。然后介绍了成形滤波的原理和多种实现成形滤波器的结构,采用多相结构设计实现了平方根升余弦滚降滤波器。
上传时间: 2013-06-11
上传用户:TF2015
在数字通信中,采用差错控制技术(纠错码)是提高信号传输可靠性的有效手段,并发挥着越来越重要的作用。纠错码主要有分组码和卷积码两种。在码率和编码器复杂程度相同的情况下,卷积码的性能优于分组码。 卷积码的译码方法主要有代数译码和概率译码。代数译码是基于码的代数结构;而概率译码不仅基于码的代数结构,还利用了信道的统计特性,能充分发挥卷积码的特点,使译码错误概率达到很小。 卷积码译码器的设计是由高性能的复杂译码器开始的,对于概率译码最初的序列译码,随着译码约束长度的增加,其译码错误概率可达到非常小。后来慢慢地向低性能的简单译码器演化,对不太长的约束长度,维特比(Viterbi)算法是非常实用的。维特比算法是一种最大似然的译码方法。当编码约束度不太大(小于等于10)或者误码率要求不太高(约10-5)时,Viterbi译码算法效率很高,速度很快,译码器也较简单。 目前,卷积码在数传系统,尤其是在卫星通信、移动通信等领域已被广泛应用。 本论文对卷积码编码和Viterbi译码的设计原理及其FPGA实现方案进行了研究。同时,将交织和解交织技术应用于编码和解码的过程中。 首先,简要介绍了卷积码的基础知识和维特比译码算法的基本原理,并对硬判决译码和软判决译码方法进行了比较。其次,讨论了交织和解交织技术及其在纠错码中的应用。然后,介绍了FPGA硬件资源和软件开发环境Quartus Ⅱ,包括数字系统的设计方法和设计规则。再有,对基于FPGA的维特比译码器各个模块和相应算法实现、优化进行了研究。最后,在Quartus Ⅱ平台上对硬判决译码和软判决译码以及有无交织等不同情况进行了仿真,并根据仿真结果分析了维特比译码器的性能。 分析结果表明,系统的误码率达到了设计要求,从而验证了译码器设计的可靠性,所设计基于FPGA的并行Viterbi译码器适用于高速数据传输的场合。
上传时间: 2013-04-24
上传用户:zhenyushaw
VD5026,VD5027是CMOS大规模数字集成电路(见图1)。前者是编码器,后者是译码器。他们组合应用起来构成一个发射—接收数字编译码系统。
上传时间: 2013-12-26
上传用户:jennyzai
/*--------- 8051内核特殊功能寄存器 -------------*/ sfr ACC = 0xE0; //累加器 sfr B = 0xF0; //B 寄存器 sfr PSW = 0xD0; //程序状态字寄存器 sbit CY = PSW^7; //进位标志位 sbit AC = PSW^6; //辅助进位标志位 sbit F0 = PSW^5; //用户标志位0 sbit RS1 = PSW^4; //工作寄存器组选择控制位 sbit RS0 = PSW^3; //工作寄存器组选择控制位 sbit OV = PSW^2; //溢出标志位 sbit F1 = PSW^1; //用户标志位1 sbit P = PSW^0; //奇偶标志位 sfr SP = 0x81; //堆栈指针寄存器 sfr DPL = 0x82; //数据指针0低字节 sfr DPH = 0x83; //数据指针0高字节 /*------------ 系统管理特殊功能寄存器 -------------*/ sfr PCON = 0x87; //电源控制寄存器 sfr AUXR = 0x8E; //辅助寄存器 sfr AUXR1 = 0xA2; //辅助寄存器1 sfr WAKE_CLKO = 0x8F; //时钟输出和唤醒控制寄存器 sfr CLK_DIV = 0x97; //时钟分频控制寄存器 sfr BUS_SPEED = 0xA1; //总线速度控制寄存器 /*----------- 中断控制特殊功能寄存器 --------------*/ sfr IE = 0xA8; //中断允许寄存器 sbit EA = IE^7; //总中断允许位 sbit ELVD = IE^6; //低电压检测中断控制位 8051
上传时间: 2013-10-30
上传用户:yxgi5