UBoot源码分析及在S3C2440的移植过程
上传时间: 2013-04-24
上传用户:CETM008
本课题是在课题组已实现的高速串行通信平台的基础上,进一步引伸,设计开源的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
PID算法自从问世以来,一直受到广泛的关注。随着现代控制理论及智能控制技术的发展,PID算法也得到了长足的发展。结合传统的PID控制算法,针对特定的控制领域,出现了一些新的控制算法,模糊PID控制算法就是在此基础上渐渐形成并凸显其控制特色。 同时随着微电子技术的发展,现场可编程逻辑器件FPGA的发展及其EDA技术的日渐成熟,为集成控制芯片开拓了广阔的发展空间。FPGA的发展为基于硬件的算法模块的实现提供了可能性,同时节省了外围的电路,使算法模块的集成度大大提高。 本文针对当前国内外在算法研究方面的热点问题,对模糊PID算法进行了深入的分析和研究。通过对汽轮机调节系统的结构分析,对其进行了数学建模。采用某汽轮机的实际设计运行参数,利用Matlab仿真软件,对该汽轮机的数学模型进行了甩负荷动态特性仿真。仿真结果表明,模糊PID可以更好地解决汽轮发电机组在甩负荷过程中由于机组转子飞升量太大而导致危急保安装置动作,使得汽轮发电机组意外停机的问题,能够保证汽轮发电机组在意外甩负荷时机组正常的机械运转。根据模糊控制理论的特点及EDA技术和FPGA可编程逻辑器件的发展现状,提出了在FPGA上实现模糊PID算法的具体实现方案。在综合分析算法特性的基础上,选择Altera公司生产的CycloneⅡ系列中的EP2C35F672C6作为目标芯片,利用分层模块化设计思想,在Altera公司提供的QuartusⅡ开发环境中,利用原理图设计输入和VHDL设计输入相结合的方式实现了模糊PID控制算法,同时分别对实现的各个功能模块和整个算法模块进行了功能时序仿真。根据仿真结果分析,该设计实现了的模糊PID控制功能。 该控制算法模块的FPGA实现很好的避免了因CPU或者其它问题导致算法程序跑飞、程序死循环、复位不可靠等问题,提高了控制的可靠性。同时加强了模块的通用性,减少了系统硬件开发周期,节省了外围设备的电路,降低了设计开发成本。
上传时间: 2013-07-21
上传用户:thinode
随着电子技术的快速发展,各种电子设备对时间精度的要求日益提升。在卫星发射、导航、导弹控制、潜艇定位、各种观测、通信等方面,时钟同步技术都发挥着极其重要的作用,得到了广泛的推广。对于分布式采集系统来说,中心主站需要对来自于不同采集设备的采集数据进行汇总和分析,得到各个采集点对同一事件的采集时间差异,通过对该时间差异的分析,最终做出对事件的准确判断。如果分布式采集系统中的各个采集设备不具有统一的时钟基准,那么得到的各个采集时间差异就不能反映出实际情况,中心主站也无法准确地对事件进行分析和判断,甚至得出错误的结论。因此,时钟同步是分布式采集系统正常运作的必要前提。 目前国内外时钟同步领域常用的技术有GPS授时技术,锁相环技术和IRIG-B 码等。GPS授时技术虽然精度高,抗干扰性强,但是由于需要专用的GPS接收机,若单纯使用GPS 授时技术做时钟同步,就需要在每个采集点安装接收机,成本较高。锁相环是一种让输出信号在频率和相位上与输入参考信号同步的技术,输出信号的时钟准确度和稳定性直接依赖于输入参考信号。IRIG-B 码是一种信息量大,适合传输的时间码,但是由于其时间精度低,不适合应用于高精度时钟同步的系统。基于上述分析,本文结合这三种常用技术,提出了一种基于FPGA的分布式采集系统时钟同步控制技术。该技术既保留了GPS 授时的高精确度和高稳定性,又具备IRIG-B时间码易传输和低成本的特性,为分布式采集系统中的时钟同步提供了一种新的解决方案。 本文中的设计采用了Ublox公司的精确授时GPS芯片LEA-5T,通过对GPS芯片串行时间信息解码,获得准确的UTC时间,并实现了分布式采集系统中各个采集设备的精确时间打码。为了能够使整个分布式采集系统具有统一的高精度数据采集时钟,本论文采用了数模混合的锁相环技术,将GPS 接收芯片输出的高精度秒信号作为参考基准,生成了与秒信号高精度同步的100MHZ 高频时钟。本文在FPGA 中完成了IRIG-B 码的编码部分,将B 码的准时标志与GPS 秒信号同步,提高了IRIG-B 码的时间精度。在分布式采集系统中,IRIG-B时间码能直接通过串口或光纤将各个采集点时间与UTC时间统一,节约了各点布设GPS 接收机的高昂成本。最后,通过PC104总线对时钟同步控制卡进行了数据读取和测试,通过实验结果的分析,提出了改进方案。实验表明,改进后的时钟同步控制方案具有很高的时钟同步精度,对时钟同步技术有着重大的推进意义!
上传时间: 2013-08-05
上传用户:lz4v4
这是我们的电路分析课件,希望能帮到正在学将要学想要学这门课的同志们
标签: 电路分析基础
上传时间: 2013-06-10
上传用户:leileiq
卷积码是广泛应用于卫星通信、无线通信等多种通信系统的信道编码方式。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
上传用户:思琦琦
并行总线PATA从设计至今已快20年历史,如今它的缺陷已经严重阻碍了系统性能的进一步提高,已被串行ATA(Serial ATA)即SATA总线所取代。SATA作为新一代磁盘接口总线,采用点对点方式进行数据传输,内置数据/命令校验单元,支持热插拔,具有150MB/s(SATA1.0)或300MB/s(SATA2.0)的传输速度。目前SATA已在存储领域广泛应用,但国内尚无独立研发的面向FPGA的SATAIP CORE,在这样的条件下设计面向FPGA应用的SATA IP CORE具有重要的意义。 本论文对协议进行了详细的分析,建立了SATA IP CORE的层次结构,将设备端SATA IP CORE划分成应用层、传输层、链路层和物理层;介绍了实现该IPCORE所选择的开发工具、开发语言和所选用的芯片;在此基础上着重阐述协议IP CORE的设计,并对各个部分的设计予以分别阐述,并编码实现;最后进行综合和测试。 采用FPGA集成硬核RocketIo MGT(RocketIo Multi-Gigabit Transceiver)实现了1.5Gbps的串行传输链路;设计满足协议需求、适合FPGA设计的并行结构,实现了多状态机的协同工作:在高速设计中,使用了流水线方法进行并行设计,以提高速度,考虑到系统不同部分复杂度的不同,设计采用部分流水线结构;采用在线逻辑分析仪Chipscope pro与SATA总线分析仪进行片上调试与测试,使得调试工作方便快捷、测试数据准确;严格按照SATA1.0a协议实现了SATA设备端IP CORE的设计。 最终测试数据表明,本论文设计的基于FPGA的SATA IP CORE满足协议需求。设计中的SATA IP CORE具有使用方便、集成度高、成本低等优点,在固态电子硬盘SSD(Solid-State Disk)开发中应用本设计,将使开发变得方便快捷,更能够适应市场需求。
上传时间: 2013-06-21
上传用户:xzt
FPGA作为新一代集成电路的出现,引起了数字电路设计的巨大变革。随着FPGA工艺的不断更新与改善,越来越多的用户与设计公司开始使用FPGA进行系统开发,因此,PFAG的市场需求也越来越高,从而使得FPGA的集成电路板的工艺发展也越来越先进,在如此良性循环下,不久的将来,FPGA可以主领集成电路设计领域。正是由于FPGA有着如此巨大的发展前景与市场吸引力,因此,本文采用FPGA作为电路设计的首选。 @@ 随着FPGA的开发技术日趋简单化、软件化,从面向硬件语言的VHDL、VerilogHDL设计语言,到现在面向对象的System Verilog、SystemC设计语言,硬件设计语言开始向高级语言发展。作为一个软件设计人员,会很容易接受面向对象的语言。现在软件的设计中,算法处理的瓶颈就是速度的问题,如果采用专用的硬件电路,可以解决这个问题,本文在第一章第二节详细介绍了软硬结合的开发优势。另外,在第一章中还介绍了知识产权核心(IP Core)的发展与前景,特别是IP Core中软核的设计与开发,许多FGPA的开发公司开始争夺软核的开发市场。 @@ 数字电路设计中最长遇到的就是通信的问题,而每一种通信方式都有自己的协议规范。在CPU的设计中,由于需要高速的处理速度,因此其内部都是用并行总线进行通信,但是由于集成电路资源的问题,不可能所有的外部设备都要用并行总线进行通信,因此其外部通信就需要进行串行传输。又因为需要连接的外部设备的不同,因此就需要使用不同的串行通信接口。本文主要介绍了小型CPU中常用的三种通信协议,那就是SPI、I2C、UART。除了分别论述了各自的通信原理外,本文还特别介绍了一个小型CPU的内部构造,以及这三个通信协议在CPU中所处的位置。 @@ 在硬件的设计开发中,由于集成电路本身的特殊性,其开发流程也相对的复杂。本文由于篇幅的问题,只对总的开发流程作了简要的介绍,并且将其中最复杂但是又很重要的静态时序分析进行了详细的论述。在通信协议的开发中,需要注意接口的设计、时序的分析、验证环境的搭建等,因此,本文以SPI数据通信协议的设计作为一个开发范例,从协议功能的研究到最后的验证测试,将FPGA 的开发流程与关键技术等以实例的方式进行了详细的论述。在SPI通信协议的开发中,不仅对协议进行了详细的功能分析,而且对架构中的每个模块的设计都进行了详细的论述。@@关键词:FPGA;SPI;I2C;UART;静态时序分析;验证环境
上传时间: 2013-04-24
上传用户:vvbvvb123