本文以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
随着微电子技术和计算机技术的迅猛发展,尤其是现场可编程器件的出现,为满足实时处理系统的要求,诞生了一种新颖灵活的技术——可重构技术。它采用实时电路重构技术,在运行时根据需要,动态改变系统的电路结构,从而使系统既有硬件优化所能达到的高速度和高效率,又能像软件那样灵活可变,易于升级,从而形成可重构系统。可重构系统的关键在于电路结构可以动态改变,这就需要有合适的可编程逻辑器件作为系统的核心部件来实现这一功能。 论文利用可重构技术和“FD-ARM7TDMLCSOC”实验板的可编程资源实现了一个8位微程序控制的“实验CPU”,将“实验CPU”与实验板上的ARMCPU构成双内核CPU系统,并对双内核CPU系统的工作方式和体系结构进行了初步研究。 首先,文章研究了8位微程序控制CPU的开发实现。通过设计实验CPU的系统逻辑图,来确定该CPU的指令系统,并给出指令的执行流程以及指令编码。“实验CPU”采用的是微程序控制器的方式来进行控制,因此进行了微程序控制器的设计,即微指令编码的设计和微程序编码的设计。为利用可编程资源实现该“实验CPU”,需对“实验CPU”进行VHDL描述。 其次,文章进行了“实验CPU”综合下载与开发。文章中使用“Synplicity733”作为综合工具和“Fastchip3.0”作为开发工具。将“实验CPU”的VHDL描述进行综合以及下载,与实验箱上的ARMCPU构成双内核CPU,实现了基于可重构技术的双内核CPU的系统。根据实验板的具体环境,文章对双内核CPU系统存在的关键问题,如“实验CPU”的内存读写问题、微程序控制器的实现,以及“实验CPU'’框架等进行了改进,并通过在开发工具中添加控制模块和驱动程序来实现系统工作方式的控制。 最后,文章对双核CPU系统进行了功能分析。经分析,该系统中两个CPU内核均可正常运行指令、执行任务。利用实验板上的ARMCPU监视用“实验CPU”的工作情况,如模拟“实验CPU”的内存,实现机器码运行,通过串行口发送的指令来完成单步运行、连续运行、停止、“实验CPU"指令文件传送、“实验CPU"内存修改、内存察看等工作,所有结果可显示在超级终端上。该系统通过利用ARMCPU来监控可重构CPU,研究双核CPU之间的通信,尝试新的体系结构。
上传时间: 2013-04-24
上传用户:royzhangsz
近年来,随着网络技术的发展和视频编码标准受到广泛接受,视频点播、视频流和远程教育等基于网络的多媒体业务逐渐普及。为了对拥有不同终端资源,不同接入网络以及不同兴趣的用户提供灵活的多媒体数据访问服务,多媒体数据的内容需要根据应用环境动态调整,转码正是实现这一挑战性任务的关键技术之一。 视频转码对时间的要求非常苛刻,以至于用高速的通用微处理器芯片也无法在规定的时间内完成必要的运算。因此,必须为这样的运算设计一个专用的高速硬线逻辑电路,在高速FPGA器件上实现或制成高速专用集成电路。用高密度的FPGA来构成完成转码算法所需的电路系统,实现专用集成电路的功能,因其成本低、设计周期短、功耗小、可靠性高、使用灵活等优点而成为适合本课题的最佳选择。 本文根据MPEG-2中可变长编码(VLC)理论,采用了两级查找表减少了VLC存储空间的使用,完成VLC编码的实现。根据MPEG-2中关于System Packet的定义,针对FPGA可实现性,以空间换取复杂度的减少,实现了PES包的打包模块。根据MPEG-2相应的转码理论,完成了对系统解码模块相应的连接和调试,对解码模块以真实的bit流进行了贴近板级的情况的仿真。根据MPEG-2中TM5的算法的局限性,分析得出只需要对P帧进行相应处理即可改进场景变换对视频质量的影响,完成对TM5的算法的改进。通过性能估算和电路仿真,各模块的吞吐率能够满足转码系统的要求。
上传时间: 2013-07-22
上传用户:shinesyh
研制发射微小卫星,是我国利用空间技术服务经济建设、造福人类的重要途径。现代微小卫星在短短20年里能取得长足的发展,主要取决于微小卫星自身的一系列特点:重量轻,体积小,成本低,性能高,安全可靠,发射方便、快捷灵活等。在卫星通信系统中,由于传输信道的多径和各种噪声的影响,信号在接收端会引起差错,通过信道编码环节,可对这些不可避免的差错进行检测和纠正。 在微小卫星通信链路中,信道编码器的任务是差错控制。本文采用符合空间数据系统咨询委员会CCSDS标准的链接码进行信道编码,即内码为(2,1,6)的卷积码,外码为(255,223)的RS码,中间进行交织操作。其中,里德-索罗蒙码(简称RS码)是一种重要的非二进制BCH码,是分组码中纠错能力最强的纠错码,一次可以纠正多个突发错误,广泛地用于空间通信中。 本文针对南京航空航天大学自行研制的微小卫星通信分系统的技术要求,在用SystemView和C语言仿真的基础上,用硬件描述语言Verilog设计了RS(255,223)编码器和译码器,使用Modelsim软件进行了功能仿真,并通过Xilinx公司的软件ISE对设计进行综合、布局布线,最后生成可下载的比特流文件下载到Xilinx公司的型号为XC3S2000的FPGA芯片中,完成了电路的设计并实现了编码译码的功能,表明本文设计的信道编解码器的正确性和实用性,满足了微小卫星通信分系统的技术要求。
上传时间: 2013-08-01
上传用户:lili123
GPS全球定位系统是美国国防部为军事目的而建立的卫星导航系统,其主要目的是解决海上、陆地和空中运载工具的导航定位问题。GPS作为新一代卫星导航系统,不仅具有全球、全天候、连续、高精度导航与定位能力,而且具有优良的抗干扰性和保密性。因此,发展全球定位系统是当今导航技术现代化的一个重要标志。在GPS接收机中,为了得到导航电文并对其进行解算,要完成复杂的信号处理过程。其中,怎样捕获到卫星信号,并对C/A码进行跟踪是研制GPS接收机的重要问题之一。本文在对GPS信号的结构进行深入的分析后,结合FPGA的特点,对算法进行设计及优化后,给出了相应的仿真。内容主要包括以下几个方面: 1.对GPS信号结构的产生原理进行了深入地分析,并对GPS信号的调制机理进行详细地阐述。 2.在GPS信号的捕获方面,采用了基于FFT频域的快速捕获的方法,即将接收到的GPS信号先利用快速傅立叶变换(FFT)变换到频域,在频域完成相应的运算后,再利用傅立叶反变换(IFFT)变换到时域。从而大大减少了计算量,加快了信号捕获的速度,提高了捕获性能。 3.在C/A码跟踪部分,本文采用了非相干延迟锁定环对C/A码进行跟踪。来自载波跟踪环路的本地载波将输入的信号变成基带信号,然后分别和本地码的三个不同相位序列进行相乘,将相乘结果进行累加,经过处理将得到码相位和当前的载波频率送到载波跟踪环路。 4.载波跟踪环,本文采用的是科斯塔斯环。载波跟踪环和码跟踪环在结构上相似,故本文只对关键的载波NCO进行了仿真。 本文的创新点主要是使用FPGA对整个GPS信号的捕获及C/A码的跟踪进行设计。此外,根据FPGA的特点,在不改变外部硬件设计的前提下,改变相应的IP核或相关的VHDL程序就可对系统进行各种优化设计,以适应不同类型的GPS接收机的不同功能。
上传时间: 2013-06-27
上传用户:哇哇哇哇哇
1.打开功能是专门用于对C语言文件自动提取显示所需要的汉字,进行点阵码数据转换的,在您的C语言程序中,有一点需要特别留意:您的注解中请不要使用双引号,否则会引起提取错误。软件包中的文件ee.c作为一个简单例程供提取测试用。2。提取以后的点阵码可以随意修改点阵数据,使用鼠标的左键为加一点,右键为擦除一点。修改完毕请按旁边的确认键将数据记录到点阵码中,否则您的修改将自动放弃。3。点阵码可以随意平移,请谨慎使用。平移之前请查看一遍所有的字符点阵图,平移有可能会丢失边界点,移出了边界的点阵将被丢弃,不可恢复。平移
上传时间: 2013-06-16
上传用户:tyg88888
一大堆的C语言源码,很经典讲了很多经典的算法。如果想学习就来下吧!-
上传时间: 2013-04-24
上传用户:xuan‘nian
差错控制编码技术是现代通信技术中的关键技术之一,在移动通信、数字电视、计算机存储等数据通信系统中得到了广泛应用。在信道条件恶劣的情况中,常采用纠错能力更强的级联编解码方法,进行差错控制。本课题以RS码、LDPC 码...
上传时间: 2013-05-25
上传用户:hrzx1234
随着GPS(Global Positioning System)技术的不断发展和成熟,其全球性、全天候、低成本等特点使得GPS接收机的用户数量大幅度增加,应用领域越来越广。但由于定位过程中各种误差源的存在,单机定位精度受到影响。目前常从两个方面考虑减小误差提高精度:①用高精度相位天线、差分技术等通过提高硬件成本获取高精度;②针对误差源用滤波算法从软件方面实现精度提高。两种方法中,后者相对于前者在满足精度要求的前提下节约成本,而且便于系统融合,是应用于GPS定位的系统中更有前景的方法。但由于在系统中实现定位滤波算法需要时间,传统CPU往往不能满足实时性的要求,而FPGA以其快速并行计算越来越受到青睐。 本文在FPGA平台上,根据“先时序后电路”的设计思想,由同步没计方法以及自顶向下和自下而上的混合设计方法实现系统的总体设计。从GPS-OEM板输出的定位信息的接收到定位结果的坐标变换,最终到kalman滤波递推计算减小定位误差,实现实时、快速、高精度的GPS定位信息采集处理系统,为GPS定位数据的处理方法做了新的尝试,为基于FPGA的GPS嵌入式系统的开发奠定了基础。具体工作如下: 基于FPGA设计了GPS定位数据的正确接收和显示,以及经纬度到平面坐标的投影变换。根掘GPS输出信息标准和格式,通过串口接收模块实现串口数掘的接收和经纬度信息提取,并通过LCD实时显示。在提取信息的同时将数据格式由ASCⅡ码转变为十进制整数型,实现利用移位和加法运算达到代替乘法运算的效果,从而减少资源的利用率。在坐标转换过程中,利用查找表的方法查找转化时需要的各个参数值,并将该参数先转为双精度浮点小数,再进行坐标转换。根据高斯转化公式的规律将公式简化成只涉及加法和乘法运算,以此简化公式运算量,达到节省资源的目的。 卡尔曼滤波器的实现。首先分析了影响定位精度的各种误差因素,将各种误差因素视为一阶马尔科夫过程的总误差,建立了系统状态方程、观测方程和滤波方程,并基于分散滤波的思想进行卡尔曼滤波设计,并通过Matlab进行仿真。结果表明,本文设计的卡尔曼滤波器收敛性好,定位精度高、估计误差小。在仿真基础上,实现基于FPGA的卡尔曼滤波计算。在满足实时性的基础上,通过IP核、模块的分时复用和树状结构节省资源,实现数据卡尔曼滤波,达到提高数据精度的效果。 设计中以Xilinx公司的Virtex-5系列的XC5VLX110-FF676为硬件平台,采用Verilog HDL硬件描述语言实现,利用Xilinx公司的ISE10.1工具布局布线,一共使用44438个逻辑资源,时钟频率达到100MHZ以上,满足实时性信号处理要求,在保证精度的前提下达到资源最优。Modelsim仿真验证了该设计的正确性。
上传时间: 2013-04-24
上传用户:二驱蚊器
基于FPGA的Turbo码编译码器实现基于FPGA的Turbo码编译码器实现
上传时间: 2013-06-13
上传用户:ippler8