《导航信号发生器毕业设计.docx》由会员分享,可在线阅读,更多相关《导航信号发生器毕业设计.docx(52页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、沈阳理工大学学士学位论文摘 要随着通讯技术、计算机技术、信息论及航天与空间技术的迅猛发展,卫星导航技术也日新月异,越来越多的领域都离不开卫星导航技术的支持。卫星导航系统包含卫星、地面控制站和用户三部分,其中卫星负责产生导航信号用于导航定位。本论文进行卫星导航信号发生器的研究,可为设计产生高性能的卫星导航信号提供基础,具有重要的现实意义。本文首先对卫星导航系统进行研究,分析伪随机码产生原理、DDS信号产生原理和BPSK调制原理,提出导航信号发生器的设计方案,进一步进行各模块设计与实现,基于ISE开发环境进行程序开发,在仿真工具ModelSim中进行仿真验证。关键词:卫星导航;信号发生器;伪随机序
2、列;DDSAbstractWith the rapid development of communication technology, computer technology, information theory and space and space technology, satellite navigation technology is changing with each passing day, more and more fields are inseparable from the support of satellite navigation technology. Th
3、e satellite navigation system includes three parts: satellite, ground control station and user. The satellite is responsible for navigation signal and navigation. The research of the satellite navigation signal generator can provide the basis for designing the high performance satellite navigation s
4、ignal and has important practical significance.Firstly the satellite navigation system research, analysis of the pseudo random code principle, signal generator based on DDS principle and BPSK modulation principle, the navigation signal generator design, further each module design and implementation,
5、 based on the ISE development environment for program development, simulation in Modelsim simulation tool.Keywords: satellite navigation; signal generator; pseudo-random sequence; DDS目 录 1 绪论11.1 背景与意义11.2 国内外发展现状21.3 章节介绍32 卫星导航系统基本原理42.1 卫星导航系统概述42.2 伪随机序列82.2.1 m序列82.2.2 Gold序列102.3 VHDL简介112.4 X
6、ilinx ise与 Modelsim简介132.4.1 Xilinx ise132.4.2 ModelSim143 卫星导航信号发生器设计163.1 顶端模块设计与实现163.2 各模块设计与实现173.2.1 分频模块173.2.2 伪随机序列码模块183.2.3 DDS模块203.2.4 D触发器模块233.3.5 BPSK调制模块244 仿真分析254.1 各模块仿真254.1.1 分频器产生模块254.2.2 伪随机序列数据模块254.2.3 DDS产生模块274.2.4 D触发器产生模块284.2 顶层模块仿真28结 论30致 谢31参考文献32附录A 英文原文34附录B 中文翻译
7、43IV 1 绪论1.1 背景与意义卫星导航是美国国防部为军事目的建立的,旨在彻底解决海上、空中和陆地运载工具的导航和定位问题,全部24颗导航卫星(21颗工作卫星和3颗备用卫 星)系统已经建成。GPS采用码分多址,定位精度通常15m左右,主要应用于单点导航定位与相对测地定位,具有全天候、定位迅速、精度高、可连续提供三维位置(纬度、经度和高度)、三维速度和时间信息等一系列优点,是实现全球导航定位的高新技术。通常GPS接收机接收到四颗卫星的信号就能够确定移动载体的方位,是当前移动目标导航定位的主流。1992年GPS正式向全世界开放,1994年在中国市场开始得到应用。由于全球卫星定位系统具有全天候、
8、高精度、 自动化、高效益等显著特点,赢得广大测绘工作者的信赖,并成功地应用于大地测量、工程测量、航空摄影测量、运载工具导航和管制、地壳运动监测、工程建设、市政规划、海洋开发、资源勘察、地球动力学等多种学科。目前,导航定位技术已经渗透到国民经济建设、国防建设、科学研究和人民生活等方方面面。 随着卫星导航系统应用领域的不断扩大,很多国家正加紧开发研制独立自主的卫星导航系统。美国正在实施GPS现代化计划,俄罗斯加紧恢复GLONASS全面性能,欧盟正在建设GALILEO,中国正在建设北斗卫星导航系统等。此外,为了进一步满足本国导航定位服务需求,日本正在加紧研制基于多功能卫星的星基增强系统(MSAS)和
9、准天顶卫星导航系统(QZSS)。印度正在加紧研发基于GEO辅助的GPS增强导航(GAGAN)系统和印度自主建设的区域导航卫星系统(IRNSS)。多种卫星导航系统的运行,势必打破单一卫星导航系统的垄断局面,更好地为全球民用用户提供更精确、更安全的导航定位服务。尽管这些卫星导航系统具有较高的精度和较低的成本,且具有很好的长期稳定性。 信号发生器作为卫星导航系统的重要组成部分,是卫星导航不可缺少的基础技术,通过借鉴国内外研究工作的先进经验,研制出精度高,可靠性强的信号发生器,对于促进我国卫星导航系统的发展具有重要意义。1.2 国内外发展现状 卫星导航定位的需求,可以说不是历来就有的,在人类早期物质生
10、产活动中以牧猎为主,日出而作,日落而息。当时人们离不开森林和水草,或是随着水草的兴衰而漂泊不定,根本不需要什么明确的定位。但是,随设社会的发展,到了农业时代,在人们开发农田,兴修水利等相应活动中就逐渐产生了测绘定位的需求,可以说在这时,导航定位就在慢慢酝酿之中。等到了工业时代,人类的活动遍及全球,而一些工程比如航海、航空、洲际交通工程,通信工程,矿产资源勘探工程,地球生态及环境变迁的研究,就需要精确地定位。这些需求促使导航定位技术的发展,并把这项技术带到一个前所未有的发展时期,它的手段也从光学机械过渡到光电子精密机械仪器的时代。社会是不断发展的,科技是不断进步的,20世纪末,出现了电子计算器技
11、术、半导体技术、激光技术、航天科学技术,它们的出现,把人类带到了电子信息时代和航天探索时代。当1957年前苏联发射了人类第一颗人造地球卫星,人类跟踪无线电信号中发现了卫星无线电信号的多普勒频移现象,这预示着一种全新的天空定位技术的可行性,由此,人类进入了卫星定位和导航的时代。卫星导航定位系统应用装备主要是以美国的全球定位系统(GPS)和俄罗斯的全球导航卫星系统(GLONASS)为代表的应用产品。在今后的五到十年内,欧洲的Galileo系统和中国的导航卫星系统(CNSS)会加入这一行列,形成全球性导航卫星系统的集合(GNSS)。 2000年5月1日,美国总统宣布将SA置零,这毫无疑问会在很大程度
12、上促进GPS民用的普遍化,肯定会推动一个新的应用爆发性增长热潮。GPS业界有句名言:“GPS的应用只受到人们想象力的限制”。这就是说其应用面积其宽广,前景不可限量。 近些年来,在导航卫星系统应用领域出现四大转变是值得关注的,它们是: 从以军用为主转变为军民两用乃至民用为主,目前在美军军品和民品的GPS销量比为1:20,甚至民品的比例比这还要大;从个别部门个别场合应用转变为国民经济众多部门,乃至人们日常生活、工作、学习和娱乐的大规模应用;由只是在少数发达国家,诸如美国、日本形成产业化发展势头转变为蓬勃发展的国际性产业。像我国这样的发展中国家,也将卫星导航系统视为电子信息产业的新经济增长点,打算逐
13、步推行产业化发展计划。 鉴于多种多样的原因和理由,欧洲和中国都立志要搞自己的卫星导航系统,从而使GPS单星座转变多星座兼容机制,在国际上得到普遍的认同,卫星导航系统向多极化制式发展已是不可逆转的总趋势。像GPS/GLONASS以及GALILEO兼容机加上已备WAAS、EGNOS和MSAS功能的多机制兼容则应运而生。 GPS的应用已十分广泛,而且越来越广泛,差不多涉及到国民经济的各个领域,尤其是近几年来其向消费市场的发展的强劲势头表明,以GPS位代表的卫星导航应用产品,由于他能很容易地提供位置、速度和时间信息,所以会很快成为现代信息社会的重要信息来源,成为信息时代的国家基础设施之一,由于他功能强
14、大、使用方便、价格合适,所以能很好的与其他系统结合,形成大量的新应用、新产品,迅速的进入我们日常工作、学习、生活和娱乐中,它的发展具有如下特点: GPS应用产品产业是当前国际上八大无线产业之一; GPS也是目前世界上发展的最快的三大信息产业之一; GPS与GSM和CDMA的结合已成为全球通信导航界的热点; GPS与PDA(个人数字助理)和PAN(人域网)消费类组合是个巨大的潜在市场.。1.3 章节介绍本论文的主要目的是在广泛参考相关文献的基础上,从理论上研究卫星导航信号发生器的原理、结构及相关的关键技术,以FPGA器件为核心,用VHDL硬件描述语言,设计一个卫星定位导航系统的信号发生器。论文包
15、括以下几个方面:第一章:绪论。介绍了课题的研究卫星导航背景与意义,卫星导航信号发生器的发展现状。第二章:卫星导航信号基本原理。主要卫星导航的原理,FPGA器件,VHDL硬件描述语言的运用理论,伪随机序列的相关理论,为导航信号的产生奠定理论基础。第三章:卫星导航信号的实现与仿真。基于卫星导航信号的基本原理,深入探究了卫星导航信号的实现方法,提出了信号发生器的设计方案,并在ISE中进行仿真,论证方案的可行性。第四章:基于卫星导航信号发生器的设计与实现。介绍了信号发生器具体实现过程,详述了各个模块的功能与设计原理,并在Modelsim进行仿真,验证设计方案的正确性。第五章:结论。对仿真结果进一步深入
16、总结。2 卫星导航系统基本原理2.1 卫星导航系统概述卫星导航由美国国防部于20世纪70年代初开始设计、研制,于1993年全部建成。1994年,国宣布在10年内向全世界免费提供使用权,但美国只向外国提供低精度的卫星信号。据信该系统有美国设置的“后门”,一旦发生战争,美国可以关闭对某地区的信息服务。欧盟“伽利略”:1999年,欧洲提出计划,准备发射30颗卫星,组成“伽利略”卫星定位系统。今年该计划正式启动。俄罗斯“格洛纳斯”:尚未部署完毕。始于上世纪70年代,需要至少18颗卫星才能确保覆盖俄罗斯全境;如要提供全球定位服务,则需要24颗卫星。中国“北斗”:2003年我国北斗一号建成并开通运行,不同
17、于卫星导航,“北斗”的指挥机和终端之间可以双向交流。去年5月12日四川大地震发生后,北京武警指挥中心和四川武警部队运用“北斗”进行了上百次交流。北斗二号系列卫星今年起将进入组网高峰期,预计在2015年形成由三十几颗卫星组成的覆盖全球的系统。最成熟的是美国的GPS卫星导航系统,下面我来介绍一下这种导航系统。导航卫星定位系统(Globle Positioning System) 是一种结合卫星及通讯发展的技术,利用导航卫星进行测时和测距。全球卫星定位系统(简称GPS) 是美国从本世纪70 年代开始研制, 经过20余年的研究实验,耗资300亿美元,到1994年3月,全球覆盖率高达98%的24颗GPS
18、卫星星座己布设完成。具有海陆空全方位实时三维导航与定位能力的新一代卫星导航与定位系统。经过近十年我国测绘等部门的使用表明,全球卫星定位系统以全天候、高精度、自动化、高效益等特点,成功地应用于大地测量、工程测量、航空摄影、运载工具导航和管制、地壳运动测量、工程变形测量、资源勘察、地球动力学等多种学科,取得了好的经济效益和社会效益。导航卫星定位系统的组成:GPS全球卫星定位系统由三部分组成:空间部分GPS星座(GPS星座是由24颗卫星组成的星座,其中21颗是工作卫星,3颗是备份卫星);地面控制部分地面监控系统;用户设备部分GPS 信号接收机。1.空间部分导航卫星定位系统的空间部分是由24 颗工作卫
19、星组成,它位于距地表20 200km的上空,均匀分布在6 个轨道面上(每个轨道面4 颗) ,轨道倾角为55。此外,还有4 颗有源备份卫星在轨运行。卫星的分布使得在全球任何地方、任何时间都可观测到4 颗以上的卫星,并能保持良好定位解算精度的几何图象。这就提供了在时间上连续的全球导航能力。GPS 卫星产生两组电码, 一组称为C/ A 码( Coarse/ Acquisition Code11023MHz) ;一组称为P 码(Procise Code 10123MHz) ,P 码因频率较高,不易受干扰,定位精度高,因此受美国军方管制,并设有密码,一般民间无法解读,主要为美国军方服务。C/ A 码人为
20、采取措施而刻意降低精度后,主要开放给民间使用。2.地面控制部分地面控制部分由一个主控站,5 个全球监测站和3 个地面控制站组成。监测站均配装有精密的铯钟和能够连续测量到所有可见卫星的接受机。监测站将取得的卫星观测数据,包括电离层和气象数据,经过初步处理后,传送到主控站。主控站从各监测站收集跟踪数据,计算出卫星的轨道和时钟参数,然后将结果送到3 个地面控制站。地面控制站在每颗卫星运行至上空时,把这些导航数据及主控站指令注入到卫星。这种注入对每颗GPS 卫星每天一次,并在卫星离开注入站作用范围之前进行最后的注入。如果某地面站发生故障,那么在卫星中预存的导航信息还可用一段时间,但导航精度会逐渐降低。
21、对于导航定位来说,GPS卫星是一动态已知点。星的位置是依据卫星发射的星历描述卫星运动及其轨道的 的参数算得的。每颗GPS卫星所播发的星历,是由地面监控系统提供的。卫星上的各种设备是否正常 工作,以及卫星是否一直沿着预定轨道运行,都要由地面设备进行监测和控制。地面监控系统 另一重要作用是保持各颗卫星处于同一时间标准GPS时间系统。这就需要地面站监测 各颗卫星的时间,求出钟差。然后由地面注入站发给卫星,卫星再由导航电文发给用户设备。 GPS工作卫星的地面监控系统包括一个主控站、三个注入站和五个监测站。3.用户设备部分用户设备部分即GPS 信号接收机。其主要功能是能够捕获到按一定卫星截止角所选择的待
22、测卫星,并跟踪这些卫星的运行。当接收机捕获到跟踪的卫星信号后,即可测量出接收天线至卫星的伪距离和距离的变化率,解调出卫星轨道参数等数据。根据这些数据,接收机中的微处理计算机就可按定位解算方法进行定位计算,计算出用户所在地理位置的经纬度、高度、速度、时间等信息。接收机硬件和机内软件以及GPS 数据的后处理软件包构成完整的GPS 用户设备。GPS 接收机的结构分为天线单元和接收单元两部分。接收机一般采用机内和机外两种直流电源。设置机内电源的目的在于更换外电源时不中断连续观测。在用机外电源时机内电池自动充电。关机后,机内电池为RAM存储器供电,以防止数据丢失。目前各种类型的接受机体积越来越小,重量越
23、来越轻,便于野外观测使用。GPS的原理:GPS导航系统的基本原理是测量出已知位置的卫星到用户接收机之间的距离,然后综合多颗卫星的数据就可知道接收机的具体位置。要达到这一目的,卫星的位置可以根据星载时钟所记录的时间在卫星星历中查出。而用户到卫星的距离则通过纪录卫星信号传播到用户所经历的时间,再将其乘以光速得到(由于大气层电离层的干扰,这一距离并不是用户与卫星之间的真实距离,而是伪距(PR):当GPS卫星正常工作时,会不断地用1和0二进制码元组成的伪随机码(简称伪码)发射导航电文。GPS系统使用的伪码一共有两种,分别是民用的C/A码和军用的P(Y)码。C/A码频率1.023MHz,重复周期一毫秒,
24、码间距1微秒,相当于300m;P码频率10.23MHz,重复周期266.4天,码间距0.1微秒,相当于30m。而Y码是在P码的基础上形成的,保密性能更佳。导航电文包括卫星星历、工作状况、时钟改正、电离层时延修正、大气折射修正等信息。它是从卫星信号中解调制出来,以50b/s调制在载频上发射的。导航电文每个主帧中包含5个子帧每帧长6s。前三帧各10个字码;每三十秒重复一次,每小时更新一次。后两帧共15000b。导航电文中的内容主要有遥测码、转换码、第1、2、3数据块,其中最重要的则为星历数据。当用户接受到导航电文时,提取出卫星时间并将其与自己的时钟做对比便可得知卫星与用户的距离,再利用导航电文中的
25、卫星星历数据推算出卫星发射电文时所处位置,用户在WGS-84大地坐标系中的位置速度等信息便可得知。可见GPS导航系统卫星部分的作用就是不断地发射导航电文。然而,由于用户接受机使用的时钟与卫星星载时钟不可能总是同步,所以除了用户的三维坐标x、y、z外,还要引进一个t即卫星与接收机之间的时间差作为未知数,然后用4个方程将这4个未知数解出来。所以如果想知道接收机所处的位置,至少要能接收到4个卫星的信号。GPS接收机可接收到可用于授时的准确至纳秒级的时间信息;用于预报未来几个月内卫星所处概略位置的预报星历;用于计算定位时所需卫星坐标的广播星历,精度为几米至几十米(各个卫星不同,随时变化);以及GPS系
26、统信息,如卫星状况等。GPS接收机对码的量测就可得到卫星到接收机的距离,由于含有接收机卫星钟的误差及大气传播误差,故称为伪距。对0A码测得的伪距称为UA码伪距,精度约为20米左右,对P码测得的伪距称为P码伪距,精度约为2米左右。GPS接收机对收到的卫星信号,进行解码或采用其它技术,将调制在载波上的信息去掉后,就可以恢复载波。严格而言,载波相位应被称为载波拍频相位,它是收到的受多普勒频 移影响的卫星信号载波相位与接收机本机振荡产生信号相位之差。一般在接收机钟确定的历元时刻量测,保持对卫星信号的跟踪,就可记录下相位的变化值,但开始观测时的接收机和卫星振荡器的相位初值是不知道的,起始历元的相位整数也
27、是不知道的,即整周模糊度,只能在数据处理中作为参数解算。相位观测值的精度高至毫米,但前提是解出整周模糊度,因此只有在相对定位、并有一段连续观测值时才能使用相位观测值,而要达到优于米级的定位 精度也只能采用相位观测值。按定位方式,GPS定位分为单点定位和相对定位(差分定位)。单点定位就是根据一台接收机的观测数据来确定接收机位置的方式,它只能采用伪距观测量,可用于车船等的概略导航定位。相对定位(差分定位)是根据两台以上接收机的观测数据来确定观测点之间的相对位置的方法,它既可采用伪距观测量也可采用相位观测量,大地测量或工程测量均应采用相位观测值进行相对定位。在GPS观测量中包含了卫星和接收机的钟差、
28、大气传播延迟、多路径效应等误差,在定位计算时还要受到卫星广播星历误差的影响,在进行相对定位时大部分公共误差被抵消或削弱,因此定位精度将大大提高,双频接收机可以根据两个频率的观测量抵消大气中电离层误差的主要部分,在精度要求高,接收机间距离较远时(大气有明显差别),应选用双频接收机。卫星导航定位系统主要特点:1、定位精度高应用实践已经证明,GPS相对定位精度在50KM以内可达10-6,100-500KM可达10-7,1000KM可达10-9。在300-1500M工程精密定位中,1小时以上观测的解其平面其平面位置误差小于1mm,与ME-5000电磁波测距仪测定得边长比较,其边长较差最大为0.5mm,
29、校差中误差为0.3mm。 2、观测时间短随着GPS系统的不断完善,软件的不断更新,目前,20KM以内相对静态定位,仅需15-20分钟;快速静态相对定位测量时,当每个流动站与基准站相距在15KM以内时,流动站观测时间只需1-2分钟,然后可随时定位,每站观测只需几秒钟。卫星导航定位系统的主要用途:陆地应用,主要包括车辆导航、应急反应、大气物理观测、地球物理资源勘探、工程测量、变形监测、地壳运动监测、 市政规划控制等;海洋应用,包括远洋船最佳航程航线测定、船只实时调度与导航、海洋救援、海洋探宝、水文地质测量以及海洋平台定位、海平面升降监测等;航空航天应用,包括飞机导航、航空遥 感姿态控制、低轨卫星定
30、轨、导弹制导、航空救援和载人航天器防护探测等。2.2 伪随机序列扩频码(序列)在扩频系统中起着十分关键的作用。不仅频谱的展宽是由扩频码调制产生,而且扩频码序列有良好的伪随机性,它的相关函数接近白噪声的相关函数,即有窄的高峰或宽的功率谱密度,使它易于从其它信号或干扰中分离出来。扩频码序列的伪随机性表现在它实际上有一定的规律,预先的可确定性,可重复性,使它易于实现相关接收或匹配接收,故有良好的抗干扰性能。扩频码序列的上述两个特性使它得到广泛的应用,直扩系统的其他一些优异性能,如抗干扰性强、抗噪声、抗衰落、低截获概率、抗多径效应、多址通信以及实现同步与捕获等都是与扩频编码的设计密切相关的。2.2.1
31、 m序列m序列是最简单的、最易实现的一种周期性的伪随机序列,是“最长线性反馈移位寄存器序列”的简称,任何一个n级移位寄存器,经过适当的反馈,就能构成一个m序列。m序列具有如下特性:1)周期性 m序列周期性为,为反馈移位寄存器级数。2)均衡性 在m序列的一个周期内,“1”和“0”的数目基本相等。准确地说,“1”的个数比“0”的个数多一个。m序列的均衡性可以减小调制后的载漏,使得信号更加隐蔽,更加能满足系统要求。3)移位相加性 一个序列与其经次迟延移位产生的另一个不同序列模2相加,得到的仍然是的某次迟延移位序列,即 (2.1) 4)m序列的相关特性 周期函数的自相关函数定义为 (2.2)对于取值为
32、“1”和“0”的二进制码序列,自相关函数值为 (2.3) 其相关系数为 (2.4) 式中,为序列与移位序列在一个周期内对应元素相同的数目;为序列与移位序列在一个周期内对应元素不同的数目;为序列的周期。对于序列波形的连续相关函数为 (2.5) 图2.1给出了的波形图。当周期很长及码元宽度很小时,近似于冲激函数的形状。图2.1 m序列的自相关函数2)m序列的功率谱 信号的自相关函数和功率谱之间形成一傅里叶变换对,即 (2.6) 由于m序列的自相关函数是周期性的,则对应的频谱是离散的。自相关函数的波形是三角波,对应的离散谱的包络为。由此可得m序列的功率谱为 (2.7) 图2.2给出的频谱图,为伪码c
33、hip的持续时间。图2.2 m序列的功率谱由图2.2可以看出:(1) m序列的功率谱为离散谱,谱线间隔;(2) 功率谱的包络为,每个分量的功率与周期成反比;(3) 直流分量与成反比,越大,直流分量越小,载漏越小;(4) 带宽由码元宽度决定,越小,即码元速率越高,带宽越宽;(5) 第一个零点出现在;(6) 增加m序列的长度,减小码元宽度,将使谱线加密,谱密度降低,更接近于理想噪声特性。2.2.2 Gold序列当采用伪随机序列作为码分多址通信地址码时,m序列具有很大的局限性,因为m序列虽然性能优良,但互相关性不好,且相同级数的移位寄存器产生的不同类型的m序列的个数有限,如n=7时,m序列的个数才有
34、17个,这小于个。为此R.Gold提出了一种基于m序列的码序列一Gold码序列。Gold码序列是由m序列的优选对构成的。所谓“优选对”是指m序列中互相关值为的一对序列,其中 (2.8) 如果把两个m序列发生器产生的优选对序列模2相加,则产生一个新的码序列,即Gold码序列。由优选对模2相加产生的Gold码己不再是m序列,也不具有m序列的游程特性。n级移位寄存器产生的两个m序列可以相对位移位,模2相加就可得到个Gold码,再加上原来的两个m序列共有个Gold码。Gold码序列具有三值互相关特性,其互相关函数为 (2.9) 在级数n一定时,Gold序列族中可用序列数明显多于m序列数,而Gold序列
35、之间的最大互相关绝对值也明显小于不同m序列之间的最大互相关值。而且,Gold序列族中除去两个m序列优选对外,其他都不是m序列,它们的自相关函数和互相关函数一样都是三值的。Gold序列的优点是自相关和互相关特性都比较好,产生容易,而且可得到的序列数也较多,因而在一些要求序列数不是太多的场合中,它是一种优选的序列,获得了广泛应用 。2.3 VHDL简介 VHDL 的全称是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于1982 年。1987年底,VHDL被 IEEE 和美国国防部确认为标准硬件描述语言。VHDL
36、主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。 VHDL 语言能够成为标准化的硬件描述语言并获得广泛应用 , 它自身必然具有很多其他硬件描述语言所不具备的优点。
37、归纳起来 ,VHDL 语言主要具有以下优点:(1) VHDL 语言功能强大 , 设计方式多样。VHDL 语言具有强大的语言结构, 只需采用简单明确的VHDL语言程序就可以描述十分复杂的硬件电路。同时, 它还具有多层次的电路设计描述功能。此外 ,VHDL 语言能够同时支持同步电路、异步电路和随机电路的设计实现, 这是其他硬件描述语言所不能比拟的。VHDL 语言设计方法灵活多样 , 既支持自顶向下的设计方式, 也支持自底向上的设计方法; 既支持模块化设计方法, 也支持层次化设计方法。(2) VHDL 语言具有强大的硬件描述能力。VHDL 语言具有多层次的电路设计描述功能,既可描述系统级电路 , 也
38、可以描述门级电路;描述方式既可以采用行为描述、寄存器传输描述或者结构描述,也可以采用三者的混合描述方式。同时,VHDL 语言也支持惯性延迟和传输延迟,这样可以准确地建立硬件电路的模型。VHDL 语言的强大描述能力还体现在它具有丰富的数据类型。VHDL 语言既支持标准定义的数据类型,也支持用户定义的数据类型,这样便会给硬件描述带来较大的自由度。(3) VHDL 语言具有很强的移植能力。VHDL 语言很强的移植能力主要体现在: 对于同一个硬件电路的 VHDL 语言描述 , 它可以从一个模拟器移植到另一个模拟器上、从一个综合器移植到另一个综合器上或者从一个工作平台移植到另一个工作平台上去执行。(4)
39、 VHDL 语言的设计描述与器件无关。采用 VHDL 语言描述硬件电路时, 设计人员并不需要首先考虑选择进行设计的器件。这样做的好处是可以使设计人员集中精力进行电路设计的优化, 而不需要考虑其他的问题。当硬件电路的设计描述完成以后 ,VHDL 语言允许采用多种不同的器件结构来实现。(5) VHDL 语言程序易于共享和复用。VHDL 语言采用基于库 ( library) 的设计方法。在设计过程中 , 设计人员可以建立各种可再次利用的模块 , 一个大规模的硬件电路的设计不可能从门级电路开始一步步地进行设计 , 而是一些模块的累加。这些模块可以预先设计或者使用以前设计中的存档模块, 将这些模块存放在
40、库中 , 就可以在以后的设计中进行复用。由于 VHDL 语言是一种描述、模拟、综合、优化和布线的标准硬件描述语言 , 因此它可以使设计成果在设计人员之间方便地进行交流和共享, 从而减小硬件电路设计的工作量, 缩短开发周期1。2.4 Xilinx ise与 Modelsim简介2.4.1 Xilinx iseISE的全称为Integrated Software Environment,即“集成软件环境”,是Xilinx公司的硬件设计工具。相对容易使用的、首屈一指的PLD设计环境 ! ISE将先进的技术与灵活性、易使用性的图形界面结合在一起,不管您的经验如何,都让您在最短的时间,以最少的努力,达到
41、最佳的硬件设计。 ISE的基本开发流程以及在开发过程中的各个阶段需要用到的工具软件:Xilinx公司的ISE开发设计软件的工程设计流程,具体分为五个步骤:即输入(Design Entry)、综合(Synthesis)、实现(Implementation)、验证(Verification)、下载(Download)。如图2.3所示为ise界面。图2.3 xilinx ise 界面2.4.2 ModelSimMentor公司的ModelSim是业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业界唯一的单内核支持VHDL和Verilog混合仿真的仿真器。它采用直接优化的编译技术、Tcl/T
42、k技术、和单一内核仿真技术,编译仿真速度快,编译的代码与平台无关,便于保护IP核,个性化的图形界面和用户接口,为用户加快调错提供强有力的手段,是FPGA/ASIC设计的首选仿真软件。ModelSim特点: RTL和门级优化,本地编译结构,编译仿真速度快,跨平台跨版本仿真; 单内核VHDL和Verilog混合仿真; 源代码模版和助手,项目管理; 集成了性能分析、波形比较、代码覆盖、数据流ChaseX、Signal Spy、虚拟对象Virtual Object、Memory窗口、Assertion窗口、源码窗口显示信号值、信号条件断点等众多调试功能; C和Tcl/Tk接口,C调试; 对System
43、C的直接支持,和HDL任意混合; 支持SystemVerilog的设计功能; 对系统级描述语言的最全面支持,SystemVerilog,SystemC,PSL; ASIC Sign off。 可以单独或同时进行行为(behavioral)、RTL级、和门级(gate-level)的代码。ModelSim的版本:ModelSim有几种不同的版本:SE、PE、LE和OEM,其中SE是最高级的版本,而集成在 Actel、Atmel、Altera、Xilinx以及Lattice等FPGA厂商设计工具中的均是其OEM版本。SE版和OEM版在功能和性能方面有较大差别,比如对于大家都关心的仿真速度问题,以X
44、ilinx公司提供的OEM版本ModelSim XE为例,对于代码少于40000行的设计,ModelSim SE 比ModelSim XE要快10倍;对于代码超过40000行的设计,ModelSim SE要比ModelSim XE快近40倍。ModelSim SE支持PC、UNIX和LINUX混合平台;提供全面完善以及高性能的验证功能;全面支持业界广泛的标准;Mentor Graphics公司提供业界最好的技术支持与服务。如下图2.4用的是ModelSim 设计。 图2.4 Modelsim 10.03 卫星导航信号发生器设计3.1 顶端模块设计与实现本设计的任务是:基于ISE和Modelsi
45、m仿真平台,设计与仿真实现卫星导航信号发生器。参数要求:载波频率10MHz;伪随机序列速率1MHz。顶层模块的功能:实现卫星导航信号发生器的功能,将输入数据码,经过调制,产生发射信号。顶层模块的设计:顶层模块内部是按照第二章所述的信号产生原理,将各个子模块连接起来,产生卫星导航信号。 DDSD触发器伪随机序列BPSK调制10分频器100MHz时钟 100100MHzs1 时钟图3.1 总体设计框图 图3.2总体电路符号该卫星导航信号发生器系统主要:将要输入的100MHZ的时钟信号以矩形波的形式输入,然后在10MHZ分频器的作用下得到一定状态的数字信号,在一定伪随机序列调制下输出,接着在主DDS的作用下 ,将矩形波转变成正弦波,并用触发器调节.本设计主要通过VHDL语言实现调制信号。其中 ,波形数据运用VHDL语言编写。控制