本文以Turbo码编译码器的FPGA实现为目标,对Turbo码的编译码算法和用硬件语言将其实现进行了深入的研究。 首先,在理论上对Turbo码的编译码原理进行了介绍,确定了Max-log-MAF算法的译码算法,结合CCSDS标准,在实现编码器时,针对标准中给定的帧长、码率与交织算法,以及伪随机序列模块与帧同步模块,提出了相应解决方案;而在相应的译码器设计中,采用了FPGA设计中“自上而下”的设计方法,权衡硬件实现复杂度与处理时延等因素,优先考虑面积因素,提高元件的重复利用率和降低电路复杂度,来实现Turbo码的Max-log-MAP算法译码。把整个系统分割成不同的功能模块,分别阐述了实现过程。 然后,基于Verilog HDL 设计出12位固点数据的Turbo编译码器以及仿真验证平台,与用Matlab语言设计的相同指标的浮点数据译码器进行性能比较,得到该设计的功能验证。 最后,研究了Tuxbo码译码器几项最新技术,如滑动窗译码,归一化处理,停止迭代技术结合流水线电路设计,将改进后的译码器与先前设计的译码器分别在ISE开发环境中针对目标器件xilinx Virtex-Ⅱ500进行电路综合,证实了这些改进技术能有效地提高译码器的吞吐量,减少译码时延和存储器面积从而降低功耗。
上传时间: 2013-04-24
上传用户:haohaoxuexi
TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。 TLC2543的特点 (1)12位分辩率A/D转换器; (2)在工作温度范围内10μs转换时间; (3)11个模拟输入通道; (4)3路内置自测试方式; (5)采样率为66kbps; (6)线性误差±1LSBmax; (7)有转换结束输出EOC; (8)具有单、双极性输出; (9)可编程的MSB或LSB前导; (10)可编程输出数据长度。 TLC2543的引脚排列及说明 TLC2543有两种封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚排列如图1,引脚说明见表1 TLC2543电路图和程序欣赏 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上传时间: 2013-11-19
上传用户:shen1230
介绍了用单片机C 语言实现无功补偿中电容组循环投切的基本原理和算法,并举例说明。关键词:循环投切;C51;无功补偿中图分类号: TM76 文献标识码: BAbstract: This paper introduces the aplication of C51 in the controlling of capacitorsuits cycle powered to be on and off in reactive compensation.it illustrate thefondamental principle and algorithm with example.Key words: cycle powered to be on and off; C51; reactive compensation 为提高功率因数,往往采用补偿电容的方法来实现。而电容器的容量是由实时功率因数与标准值进行比较来决定的,实时功率因数小于标准值时,需投入电容组,实时功率因数大于标准值时,则需切除电容组。投切方式的不合理,会对电容器造成损坏,现有的控制器多采用“顺序投切”方式,在这种投切方式下排序在前的电容器组,先投后切;而后面的却后投先切。这不仅使处于前面的电容组经常处于运行状态,积累热量不易散失,影响其使用寿命,而且使后面的投切开关经常动作,同样减少寿命。合理的投切方式应为“循环投切”。这种投切方式使先投入的运行的电容组先退出,后投的后切除,从而使各组电容及投切开关使用机率均等,降低了电容组的平均运行温度,减少了投切开关的动作次数,延长了其使用寿命。
上传时间: 2014-12-27
上传用户:hopy
MPEG(Moving Picture Experts Group)和VCEG(Video Coding Experts Group)已经联合开发了一个比早期研发的MPEG 和H.263 性能更好的视频压缩编码标准,这就是被命名为AVC(Advanced Video Coding),也被称为ITU-T H.264 建议和MPEG-4 的第10 部分的标准,简称为H.264/AVC 或H.264。这个国际标准已经与2003 年3 月正式被ITU-T 所通过并在国际上正式颁布。为适应高清视频压缩的需求,2004 年又增加了FRExt 部分;为适应不同码率及质量的需求,2006 年又增加了可伸缩编码 SVC。
上传时间: 2013-11-19
上传用户:dancnc
研究基于IP 无线网络中精细粒度可伸缩性( FGS) 视频的传输。基于包交换的IP 无线网络通常由两段链路组成: 有线链路和无线链路。为了处理这种混合网络中不同类型数据包的丢失情况, 对FGS 视频增强层数据运用了一个具有比特平面间不平等差错保护(BPUEP) 的多乘积码前向纠错(MPFEC) 方案进行信道编码。对FGS 增强层每一个比特平面(BP) , 在传输层, 采用里德—索罗蒙码(RS) 提供比特平面间的保护; 而在链路层, 则运用循环冗余校验码(CRC) 串联率兼容穿孔卷积码(RCPC) 提供数据包内保护。还提出了一个率失真优化的信源—信道联合编码的码率配置方案, 仿真结果显示出该方案在提高接收端视频质量方面的优势。
上传时间: 2013-11-14
上传用户:1234567890qqq
HMM(Hidden Markov Model),狀態數目N=3,觀察符號數目M=2,時間長度T=3。 (a) Probability Evaluation: 給定狀態轉換機率A、狀態符號觀察機率B、和起始機率 ,求觀察序列 出現的機率。 (b) Optimal State Sequence: 給定狀態轉換機率A、狀態符號觀察機率B、起始機率 、和觀察序列 ,求一個狀態序列 使得O出現的機率最大。 (c) Parameter Estimation: 給定狀態轉換機率A、狀態符號觀察機率B、起始機率 、和觀察序列 ,求新的A、B、 ,使得O出現的機率最大。
上传时间: 2014-08-28
上传用户:heart520beat
卷积码程序很适用的,删余码,3、4码率的,大家可以借鉴的啊 !
上传时间: 2013-12-19
上传用户:wangdean1101
第一部分 Linux GUI编程框架和编程基础 第一章 Linux 软件开发概述 第二章 GTK+/GNOME开发简介 第二部分 Linux 编程常用C语言函数库和构件库 第三章 GLIB库简介 第四章 构件定位 第五章 按钮构件 第六章 调整对象 第七章 文本构件GtkText 第八章 范围构件GtkRange 第九章 杂项构件 第十章 容器构件GtkContainer 第十一章 分栏列表构件GtkCList 第十二章 树构件 第十三章 GnomeApp构件和GnomeUIInfo 第十四章 状态条构件 第十五章 对话框 第十六章 GDK基础 第三部分 Linux GUI生成器Glade 第十七章 Glade:GUI生成器 第四部分 调试工具 第十八章 程序调试 第五部分 附录 附录A:GnomeHello源码 附录B:在线资源
上传时间: 2014-01-16
上传用户:cursor
基于Log_MAP 算法, 提出了一种TURBO 码DSP 实现方案。利用内联函数、循环展开, 软件流水线技术对算法进行了优 化, 在TMS320C6416 芯片上实现了36Mbps 的编码速率及1.6Mbps 译码速率(5 次迭代)。该方案可以灵活设置码率、帧长、迭 代次数等关键参数, 适用于不同要求的高速通信系统
上传时间: 2014-11-30
上传用户:WMC_geophy
数字音乐盒 (1) 硬件电路中用P1.0~P1.7控制按键,其中P1.0~P1.3扫描行,P1.4~P1.7扫描列。 (2) 用P0.0~P0.7,P2.0~P2.7控制LED,其中P0.0~P0.7控制七段码a,b,c,d,e,f,g,用P2.0~P2.7为数码管位选信号。 (3) 用,P2.0~P2.2作为LCD的RS,R/W,E的控制信号。用P0.0~P0.7作为LCD的D0~D7的控制信号。 (4) 用P3.7口控制蜂鸣器(J2,J4断开,J3短接)。 (5) 电路为12MHZ晶振频率工作,起振电路中C1,C2均为30pf。
上传时间: 2016-12-03
上传用户:ruixue198909