本课题是在课题组已实现的高速串行通信平台的基础上,进一步引伸,设计开源的PCI软核通信模块替代Xilinx公司提供的LogiCORE PCI核,力求在从模式下,做到占用资源更少,传输速度更快,也为以后实现更完整的功能提供平台。 本文以此为背景,基于FPGA平台,搭建以开源的PCI软核为核心的串行通信接口平台,使其成为PCI总线与用户逻辑之间的桥梁,使用户逻辑避开与复杂的PCI总线协议。本课题采用Spartan-II FPGA芯片XC2S200-6FG456C系统开发板作为串行通信接口的硬件实验平台,实现了支持配置读/写交易、单数据段读/写、突发模式读/写、命令/地址译码功能和数据传送错误检测与处理功能的PCI软核。 本文主要阐述了以PCI软核为核心的串行通信平台的实现,首先介绍了PCI软核的编程语言、软件工具和硬件实验平台Spartan-II FPGA芯片XC2S200-6FG456C系统开发板。然后,介绍了PCI总线命令、PCI软核所支持的功能、PCI软核两侧信号的定义、PCI软核配置模块以及探讨了PCI软核的状态机接收、发送数据等过程,分析了PCI软核的数据收发功能仿真,主要包括配置读/写交易、单数据段模式读/写和突发模式读/写的仿真图形,并阐述了管脚约束的操作流程。最后介绍PCI软核模块的WDM驱动,内容包括驱动程序简介、驱动程序的开发、中断处理、驱动程序与应用程序之间的通信以及应用程序操作。最后,对PCI软核的各种性能进行了比较分析。整个模块设计紧凑,完成在实验平台上的数据发送。 设计选用硬件描述语言VerilogHDL,在开发工具Xilinx ISE7.1中完成整个系统的设计、综合、布局布线,利用Modelsim进行功能及时序仿真,使用DriverWorks为PCI软核编写WinXP下的驱动程序,用VC++6.0编写相应的测试应用程序。之后,将FPGA设计下载到Spanan-II FPGA芯片XC2S200-6FG456C系统开发板中运行。 文章最后指出工作中的不足之处和需要进一步完善的地方。
上传时间: 2013-04-24
上传用户:sc965382896
互联网、移动通信、星基导航是21世纪信息社会的三大支柱产业,而GPS系统的技术水平和发展历程代表着全世界卫星导航系统的发展状况。目前,我国已经成为GPS的使用大国,卫星导航产业链也已基本形成。然而,我们对GPS核心技术(即如何捕获卫星信号并保持对信号的跟踪)的研究还不够深入,我国GPS产品的核心部分多数还是靠进口。因此,对GPS核心技术的研究是非常紧迫的。 本文首先介绍了GPS的定位原理,之后阐述了GPS接收机的基本原理一直接扩频通信和GPS信号的结构与特性。从这些方面出发研究接收机基带处理器的捕获与跟踪设计方案。 设计过程中,先详细分析了滑动相关的捕获算法和基于FFT的快速捕获算法,并利用matlab进行了验证。由于前者灵活性好且可捕获到高精度的码相位和载波频率,适合于本文的硬件接收机,所以本文确定了滑动相关的捕获方案。 接着分析了跟踪环路的特点,跟踪模块采用码跟踪环和载波跟踪环耦合的方法实现。由于GPS系统通常工作在非常低的信噪比环境中,而非相干环在低信噪比下环路跟踪性能较好,所以码跟踪环采用非相干(DDLL)环实现。这种跟踪环路采用的鉴相器是能量鉴相器,对数据的调制和载波相位都不敏感,鉴相器不会产生不确定量。由于输入信号存在180°相位翻转,而COSTAS锁相环允许数据调制,对I支路和Q支路信号的180°相位翻转不敏感,所以载波跟踪环采用COSTAS锁相环实现。上述算法在matlab环境下得到了验证。 基带处理器电路的主要模块在Quartus II8.0开发平台上利用VHDL硬件描述语言实现。然后利用EDA仿真工具ModelSim-Altera6.1g进行了逻辑仿真。本设计满足系统功能和性能的要求,可以直接用于实时GPS接收机系统的设计中,为自主设计GPS接收机奠定了基础。 最后,由于在弱电磁环境下,捕获失锁后32PPS信号会丢失。所以设计了一个能授时和守时的算法去得到与GPS时同步的精确授时秒信号。并且实现了这个算法。
上传时间: 2013-04-24
上传用户:zuozuo1215
现代的计算机追求的是更快的速度、更高的数据完整性和灵活性。无论从物理性能,还是从电气性能来看,现今的并行总线都已出现了某些局限,无法提供更高的数据传输率。而SATA以其传输速率快、支持热插拔、可靠的数据传输等特点,得到各行业越来越多的支持。 目前市场上的SATA IP CORE都是面向IC设计的,不利于在FPGA上集成,因此,本文在Xilinx公司的Virtex5系列FPGA上实现SATAⅡ协议,对SATA技术的推广、国内逻辑IP核的发展都有一定的意义。 本文将SATAⅡ协议的FPGA实现划分成物理层、链路层、传输层和应用层四个模块。提出了物理层串行收/发器设计以及物理链路初始化方案。分析了链路层模块结构,给出了作为SATAⅡ链路层核心的状态机的设计。为满足SATAⅡ协议3.0Gbps的速率,采用扩大数据处理位宽的方法,设计完成了链路层的16b/20b编码模块,同时为提高数据传输可靠性和信号的稳定性,分别实现了链路层CRC校验模块和并行扰码模块。在描述协议传输层的模块结构的基础上,给出了作为传输层核心的状态机的设计,并以DMA DATA OUT命令的操作为例介绍了FIS在传输层中的处理过程。完成了命令层协议状态机的设计,并实现了SATAⅡ新增功能NCQ技术,从而使得数据传输更加有效。最后为使本设计应用更加广泛,设计了基于AHB总线的用户接口。 本设计采用Verilog HDL语言对需要实现的电路进行描述,并使用Modelsim软件仿真。仿真结果表明,本文设计的逻辑电路可靠稳定,与SATAⅡ协议定义功能一致。
上传时间: 2013-06-16
上传用户:cccole0605
随着航天技术的发展,载人飞船、空间站等复杂航天器对空-地或空-空之间数据传输速率的要求越来越高。在此情况下,为了提高空间通信中数据传输的可靠性,保证接收端分路系统能和发送端一致,必须要经过帧同步。对卫星基带信号处理来说,帧同步是处理的第一步也是关键的一步。只有正确帧同步才能获取正确的帧数据进行数据处理。因此,帧同步的效率,将直接影响到整个卫星基带信号处理的结果。 @@ 本设计在研究CCSDS标准及帧同步算法的基础上,利用硬件描述语言及ISE9.2i开发平台在基于FPGA的硬件平台上设计并实现了单路数据输入及两路合路数据输入的帧同步算法,并解决了其中可能存在的帧滑动及模糊度问题。在此基础之上,针对两路合路输入时可能存在的两路输入不同步或帧滑动在两路中分布不均匀问题,设计实现了两路并行帧同步算法,并利用ModelSim SE 6.1f工具对上述算法进行了前仿真和后仿真,仿真结果表明上述算法符合设计要求。 @@ 本论文首先介绍了课题研究的背景及国内外研究现状,其次介绍了与本课题相关的基础理论及系统的软硬件结构。然后对单路数据输入帧同步、两路数据合路输入帧同步和两路并行帧同步算法的具体设计及实现过程进行了详细说明,并给出了后仿真结果及结果分析。最后,对论文工作进行了总结和展望,分析了其中存在的问题及需要改进的地方。 @@关键词 FPGA;CCSDS;帧同步:模糊度;帧滑动
上传时间: 2013-06-11
上传用户:liglechongchong
随着计算机及其外围设备的发展,传统的并行接口和串行接口在灵活性和接口扩展等方面存在的缺陷愈来愈不可回避,并逐渐成为计算机通信的瓶颈。在这种情况下,通用串行总线(Universal Serial Bus,USB)诞生了。USB由于具有传输速率高、价格便宜、使用方便、灵活性高、支持热插拔、接口标准化和易于扩展等优点,目前已经成为计算机外设接口的主流技术,在计算机外围设备和消费类电子领域正获得越来越多的应用。 @@ 本文基于USB2.0协议规范,设计了一款支持高速和全速传输的USB2.0设备控制器IP核。文中着重介绍了这款设备控制器IP核的设计和FPGA验证工作,详细研究并分析了USB2.0规范,根据规范提出了一种USB2.0设备控制器整体构架方案,描述了各个功能子模块硬件电路的功能及实现。从可重用的角度出发,对设备控制器模块进行优化设计,增加多个灵活的配置选项,根据不同的应用对硬件进行配置,使其在满足要求的情况下去除冗余电路,以减少占用面积和功耗,从而使其灵活地应用于各种USB系统。本文还研究了IP核的验证方法,并对所设计的USB2.0设备控制器建立了功能完备的ModelSim仿真验证环境,搭建了FPGA硬件验证平台,设计了具有AHB接口的设备控制器和带有8051的设备控制器,并分别在FPGA平台上进行了功能验证。 @@ 本文所设计的USB2.0设备控制器IP核可配置性高,使用者可以自由配置所需端点的个数以及每个端点类型等,可以集成于多种USB系统中,适于各类USB设备的开发。本课题所取得的成果为USB2.0设备类的研究和开发积累了经验,并为后来实验室某项目测试芯片的USB数据采集提供了参考方案,也为未来USB3.0接口IP核的开发和应用奠定了基础。 @@关键词USB2.0控制器;IP核;FPGA;验证
上传时间: 2013-06-30
上传用户:nanfeicui
本文完成了对MIPS-CPU的指令集确定,流水线与架构设计,代码编写,并且在x86计算机上搭建了称为gccmips_elf的仿真系统,完成了对MIPS-CPU硬件系统的模拟仿真,最终完成FPGA芯片的下载与实现。 @@ 本文完成了包含34条指令的MIPS-CPU指令集的制定,完成了整个MIPS-CPU的架构设计与5级流水线级数的确定。制定了整个CPU的主控制模块的状态转移图;根据MIPS-CPU的指令集的模式,完成了对不同模式下的指令的分析,给出了相应的取指,译码,产生新的程序存储器寻址地址,执行,数据存储器与寄存器文件回写的控制信号,完成取指令模块,译码模块,执行模块,数据回写等模块代码的编写,从而完成了流水线模块的代码设计。 @@ 重点分析了由于流水线设计而引入的竞争与冒险,分析了在不同流水线阶段可能存在的竞争与冒险,对引起竞争与冒险的原因进行了确定,并通过增加一些电路逻辑来避免竞争与冒险的发生,完成了竞争与冒险检测电路模块以及数据回写前馈电路模块的代码编写,从而解决了竞争与冒险的问题,使设计的5级流水线得以畅顺实现。 @@ 完成了MIPS-CPU的仿真系统平台的搭建,该仿真器用来对应用程序进行编译,链接与执行,生成相应汇编语言程序以及向量文件(16进制机器码);并且同时产生相关的Modelsim仿真,及Quartus II下载验证的文件。本设计利用该仿真系统来评估设计的MIPS-CPU的硬件系统,模拟仿真结果证明本文设计的MIPS-CPU可以实现正常功能。本论文课题的研究成功对今后从事专用RISC-CPU设计的同行提供了有益的参考。 @@ 最终将设计的MIPS-CPU下载到ALTERA公司的FPGA-EP1C6Q240芯片,并且借助ALTERA公司提供的Quartus II软件进行了编译与验证,对设计的MIPS-CPU的资源使用,关键路径上的时序,布线情况进行了分析,最终完成各个指标的检查,并且借助Quartus II软件内嵌的Signal Tap软件进行软硬件联合调试,结果表明设计的MIPS-CPU功能正常,满足约束,指标正确。 @@关键词 MIPS;流水线;竞争与冒险;仿真器;FPGA
上传时间: 2013-07-31
上传用户:gjzeus
3D加速引擎是3D图形加速系统的重要组成部分,以往在软件平台上对3D引擎的研究,实现了复杂的渲染模型和渲染算法,但这些复杂算法与模型在FPGA上综合实现具有一定难度,针对FPGA的3D加速引擎设计及其平台实现需要进一步研究。 本文在研究3D加速引擎结构的基础上,实现了基于FPGA的图像处理平台,使用模块化的思想,利用IP核技术分析设计实现了3D加速管道及其他模块,并进行了仿真、验证、实现。 图像处理平台选用Virtex-Ⅳ FPGA为核心器件,并搭载了Hynix HY5DU573222F-25、AT91FR40162S、XCF32P VO48及其他组件。 为满足3D加速引擎的实现与验证,设计搭建的图像处理平台还实现了DDR-SDRAM控制器模块、VGA输出模块、总线控制器模块、命令解释模块、指令寄存器模块及控制寄存器模块。 3D加速引擎设计包含3D加速渲染管道、视角变换管道、基元读取、顶点FIFO、基元FIFO、写内存等模块。针对FPGA的特性,简化、设计、实现了光照管道、纹理管道、着色管道和Alpha融合管道。 最后使用Modelsim进行了仿真测试和图像处理平台上的验证,其结果表明3D加速引擎设计的大部分功能得到实现,结果令人满意。
上传时间: 2013-07-30
上传用户:lepoke
卷积码是广泛应用于卫星通信、无线通信等多种通信系统的信道编码方式。Viterbi算法是卷积码的最大似然译码算法,该算法译码性能好、速度快,并且硬件实现结构比较简单,是最佳的卷积码译码算法。随着可编程逻辑技术的不断发展,使用FPGA实现Viterbi译码器的设计方法逐渐成为主流。不同通信系统所选用的卷积码不同,因此设计可重配置的Viterbi译码器,使其能够满足多种通信系统的应用需求,具有很重要的现实意义。 本文设计了基于FPGA的高速Viterbi译码器。在对Viterbi译码算法深入研究的基础上,重点研究了Viterbi译码器核心组成模块的电路实现算法。本设计中分支度量计算模块采用只计算可能的分支度量值的方法,节省了资源;加比选模块使用全并行结构保证处理速度;幸存路径管理模块使用3指针偶算法的流水线结构,大大提高了译码速度。在Xilinx ISE8.2i环境下,用VHDL硬件描述语言编写程序,实现(2,1,7)卷积码的Viterbi译码器。在(2,1,7)卷积码译码器基础上,扩展了Viterbi译码器的通用性,使其能够对不同的卷积码译码。译码器根据不同的工作模式,可以对(2,1,7)、(2,1,9)、(3,1,7)和(3,1,9)四种广泛运用的卷积码译码,并且可以修改译码深度等改变译码器性能的参数。 本文用Simulink搭建编译码系统的通信链路,生成测试Viterbi译码器所需的软判决输入。使用ModelSim SE6.0对各种模式的译码器进行全面仿真验证,Xilinx ISE8.2i时序分析报告表明译码器布局布线后最高译码速度可达200MHz。在FPGA和DSP组成的硬件平台上进一步测试译码器,译码器运行稳定可靠。最后,使用Simulink产生的数据对本文设计的Viterbi译码器的译码性能进行了分析,仿真结果表明,在同等条件下,本文设计的Viterbi译码器与Simulink中的Viterbi译码器模块的译码性能相当。
上传时间: 2013-06-24
上传用户:myworkpost
随着信息时代的到来,用户对数据保护和传输可靠性的要求也在不断提高。由于信道衰落,信号经信道传输后,到达接收端不可避免地会受到干扰而出现信号失真。因此需要采用差错控制技术来检测和纠正由信道失真引起的信息传输错误。RS(Reed—Solomon)码是差错控制领域中一类重要的线性分组码,由于它编解码结构相对固定,性能强,不但可以纠正随机差错,而且对突发错误的纠错能力也很强,被广泛应用在数字通信、数据存储系统中,以满足对数据传输通道可靠性的要求。因此设计一款高性能的RS编解码器不但具有很大的应用意义,而且具有相当大的经济价值。 本文首先介绍了线形分组码及其子码循环码、BCH码的基础理论知识,重点介绍了BCH码的重要分支RS码的常用编解码算法。由于其算法在有限域上进行,接着介绍了有限域的有关理论。基于RS码传统的单倍结构,本文提出了一种八倍并行编码及九倍并行解码方案,并用Verilog HDL语言实现。其中编码器基于传统的线性反馈移位寄存器除法电路并进行八倍并行扩展,译码器关键方程求解模块基于修正的欧几里德算法设计了一种便于硬件实现的脉动关键方程求解结构,其他模块均采用九倍并行实现。由于进行了超前运算、流水线及并行处理,使编解码的数据吞吐量大为提高,同时延时更小。 本论文设计了C++仿真平台,并与HDL代码结果进行了对比验证。Verilog HDL代码经过modelsim仿真验证,并在ALTERA STRATIX3 EP3SL15OF1152C2 FPGA上进行综合验证以及静态时序分析,综合软件为QUATURSⅡ V8.0。验证及测试表明,本设计在满足编解码基本功能的基础上,能够实现数据的高吞吐量和低延时传输,达到性能指标要求。本论文在基于FPGA的RS(255,223)编解码器的高速并行实现方面的研究成果,具有通用性、可移植性,有一定的理论及经济价值。
上传时间: 2013-04-24
上传用户:思琦琦
无线传感器网络(Wireless Sensor Networks,WSN)是由大量传感器节点组成,这些节点部署在监测区域内通过无线通信方式,形成的一个多跳自组织的网络。整个网络的作用是协作地感知、采集和处理网络覆盖区域中监测对象的信息,并发送给观察者,可广泛应用于环境监测、医疗护理、军事、商业等多个领域。 媒体访问控制(Medium Access Control,MAC)协议处于无线传感器网络协议的物理层和路由层之间,用于在传感器节点间公平有效地共享通信媒介,对传感器网络的性能有较大影响。与传统无线网络不同,提高能量效率和可扩展性是无线传感器网络MAC协议设计的主要目标。 本文主要阐述基于FPGA对IEEE802.15.4 MAC层功能的实现。首先介绍了无线传感器网络的体系结构、MAC协议的设计要求以及已有的MAC层协议,讨论了无线传感器网络MAC层的主要要求和功能。然后详细介绍和分析了IEEE802.15.4的MAC协议,并在此基础上,通过NS2平台对MAC层协议进行了仿真,研究不同网络负荷下信道访问机制的各个参数对吞吐量,丢包率,传输延时的影响,分析了隐蔽站问题、确认帧机制。 本文对MAC层中的主要功能,诸如数据收发、帧处理、信道接入方式以及帧检验等提出了基于FPGA的硬件解决方法。设计选用硬件描述语言VerilogHDL,在QuartusⅡ中完成模块的综合和布局布线,在QuartusⅡ和Modelsim中进行时序仿真验证,最终下载到自主设计Altera公司的Cyclone开发板中。 对设计的验证采取的是由里及外的方式,先对系统主模块的功能进行验证,然后下载到与CC2430开发板相连接的FPGA中对设计进行验证测试。验证流程是功能仿真、时序仿真和板级调试,最终通过测试,验证了该设计的功能。测试结果表明,该模块能满足无线传感器网络低速率应用环境的需要,具有优良的扩展性能,达到了预期的设计目标。
上传时间: 2013-06-14
上传用户:竺羽翎2222