基于软件无线电的数字接收机的方案研究new

基于软件无线电的数字接收机的方案研究new

ID:34033190

大小:1.95 MB

页数:62页

时间:2019-03-03

上传者:jjuclb
基于软件无线电的数字接收机的方案研究new_第1页
基于软件无线电的数字接收机的方案研究new_第2页
基于软件无线电的数字接收机的方案研究new_第3页
基于软件无线电的数字接收机的方案研究new_第4页
基于软件无线电的数字接收机的方案研究new_第5页
资源描述:

《基于软件无线电的数字接收机的方案研究new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

摘要软件无线电以其极大的灵活性和适应性,在现代的军事和通信领域获得了广泛的应用。数字接收机和人们的生活也是密切相关。本论文对基于软件无线电体系结构的数字接收机方案进行了比较深入的研究,提出了一种基于射频带通采样软件无线电结构的数字接收机方案。并且从事该方案的硬件和软件设计,验证了该方案的可行性。系统的硬件设计是论文的主要任务和重要组成部分,包括DSP硬件平台以及采样和数字下变频模块的设计。硬件部分是整个系统的基础,它的性能好坏直接影响整个接收机的性能。该论文主要包括以下四部分内容:首先介绍了软件无线电和数字信号处理中的相关理论,比如,带通采样、多抽样率信号处理、数字下变频等;其次是系统的硬件选型和设计,包括DSP、模数转换器、数字下变频器等:系统的软件设计和优化也是论文很重要的部分;最后,对整个系统进行了调试和性能的测试,取得了令人满意的结果.关键字:数字接收机、软件无线电、数字信号处理器、数字下变频 ABSTRACTThesoftwareradiocanafordgreatflexibilityandadaptability.sowidelyusedinbothmilitaryandtelecommunicationarea.Thispaperfocusonhardwareandsoftwareimplementationofdigitalreceiversbasedonsoftwareradio.Thehardwaredesignisamaintaskandimportantpartofthispaper,includingthedesignofDSPhardwareplatformandADCandDDCmodule.Thehardwarepartisthebasisofthesystemanditsperformanceinfluencesthedigitalreceiver'se伍ciency.Thispaperhasfourparts.First,weintroducethebasictheoryonsoftwareradioanddigitalsignalprocessing,suchas,band-passsampling,multi-ratesignalprocessinganddigitaldownconverter.Second,wedealwithhardwareselectionanddesign,includingDSP,ADC,DDC.Andthen,softwaredesignandoptimizationisinvolved.Atlast,wetestthesystemandhavesatisfactoryresult,Keywords:digitalreceiver、softwareradio、digitalsignalprocessordigitaldownconverter 独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得yt建主址或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示了谢意。学位论文作者签名:于吞;Y签字日期:Z00Y年又月、!日学位论文版权使用授权书本学位论文作者完全了解}k*鲜有关保留、使用学位论文的规定。特授权止互生左数可以将学位论文的全部或部分内容编入有关数据库进行检索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国家有关部门或机构送交论文的复印件和磁盘。(保密的学位论文在解密后适用本授权说明)学位论文作者签名:丁rjA嵘导师签名:C-72Az签字日期:ypvI'年2月刁日签字日期:JMfg年2月么/日 第一章绪论第一章绪论接收机概述接收机和人们的生活密切相关,在我们的身边随处可见,比如移动电话、收音机、电视机等,军事上的雷达接收机、EW接收机等也属于接收机的一种。接收机种类繁多,按照不同的分类方式分为模拟接收机和数字接受机,窄带接收机和宽带接收机,军用接收机和通信接收机等。军用接收机一般具有非常宽的瞬时输入带宽(1GHz以上)。这意味着如果不对接收机进行调谐,在输入带宽内的任何信号都将同时被接收下来。与此相反,通信接收机的带宽非常窄,比如电视频道带宽为6MHz,调频(FM)电台的带宽为200kHz,而调幅(AM)电台的带宽仅lOkHz。然而,由于带宽越宽,从一地到另一地单位时间内传送地信息就越多,所以通信地带宽也在不断的增加。某些通信系统也将达到1GHz的瞬时带宽,如果这种趋势持续下去,那么军用战接收机和通信接收机的差异就会消失。传统接收机属于模拟接收机,混频解调等都有模拟器件完成。随着高性能A1〕和DSP器件的发展,基于软件无线电思想的全数字化接收机的实现成为可能。总而言之,宽带的数字化接收机是未来接收机的发展趋势。基于软件无线电的三种结构,数字接收机的分为以下三类:.基于中频采样软件无线电结构的数字接收机.基于射频带通采样软件无线结构的数字接收机.基于射频低通采样软件无线电结构的数字接收机2本论文任务…硬件设计,包括DSP硬件平台以及采样和数字下变频模块的设计软件设计,包括数字处理和控制程序的编写和优化方案研究,验证基于射频带通采样软件无线电结构的数字接收机方案3接收机的性能指标…接收机的频率范围:0.5-20OMHz接收机的瞬时动态范围:大于70dB解调样式:AM,FM4未来展望基于软件无线电的开放性和灵活性,本方案也具有很大的可扩展性。比如,本接收机工作的频率范围只限于。.5--200MHz,但是通过选用其他更性能的器件很容易使接收机工作于GHz带宽内,本课题只研究了AM和FM信号的解调, 第二章理论基础第二章理论基础2.1软件无线电相关理论2.1.1软件无线电概念的由来无线通信在现在通信中占据着极其重要的地位,被广泛应用于商业、气象、军事、民用等领域。当代无线电通信系统有很多,例如,卫星通信系统、蜂窝移动通信系统、无线寻呼系统、短波通信系统、微波通信系统,等等。各种无线通信系统的调制方式也很多,有AM,FM,FSK,PSK,MSK,GMSK,QAM,等等。其多址方式有:时分多址、频分多址和码分多址等。为了解决无线通信中的互通性问题,1992年5月,MTLTER公司的JoeMiltola首次提出软件无线电的概念,其中心思想是:构造一个具有开放性、标准化、模块化的通用硬件平台,将各种功能,如工作频段、调制解调类型、数据格式、加密模式、通信协议等用软件来完成,并使宽带A/D和D/A转换器尽可能靠近天线,以研制出具有高度灵活性、开放性的新一代无线通信系统。2.1.2软件无线电的主要特点灵活性软件无线电可以通过增加软件模块,很容易增加新的功能。可以与其他任何电台进行通信,并可以作为其他电台的射频中继。开放性软件无线电采用标准化、模块化的结构,其硬件可以随着器件和技术的发展而更新或者扩展,软件也可以随需要而不断升级。2.1.3软件无线电的基本结构软件无线电采用标准的、高性能的开放式总线结构,以利于硬件模块的不断升级和扩展。理想软件无线电的组成结构如图2-1所示:电话实时准实副宽带图像宁带处理软件射颇14端A7D-O!AAI0DIA枝块数据转换器熟换斟化众0Sp图2-1软件无线电主要由天线、射频前端、宽带A/D和D/A转换器和专用数字信号处理器以及各种软件组成。射频前端在发射时候主要完成上变频、滤波、功率放 第二章理i'r`基础大等任务,接收时实现滤波、放大、下变频等功能。在射频变换部分,宽带、线性、高效射频放大器的设计和电磁兼容性问题的处理是比较困难的。如果采用射频直接数字化,可以简化射频前端的功能,但是数字处理的要求就会提高。要实现射频直接采样,要求A/D转换器要有足够的工作带宽(2GHz以上),较高的采样速率(一般在60MHz以上),而且要有较高的A/D转换位数,以提高动态范围。目前8位A/D转换器的工作带宽已做到105GHz以上。模拟信号数字化后的幸要处理任务全部由DSP软件承担。为了减轻通用DSP的处理压力,通常把模数转换器送来的数字信号,经过专用的数字信号处理软件(如数字h变频器DDC)处理,降低数据流速率,并把信号变频至基带后,再把数据送给通用DSP处理。通用DSP主要完成各种基带处理,比如信号的调制解调,各种抗干扰、抗衰落、自适应均衡算法的实现,还要完成信源编码后的前向纠错、帧调整、比特填充和链路加密等算。软件无线电的结构可以分为三种:射频低通采样数字化结构、射频带通采样数字化结构、宽带中频采样数字化结构,分别如图2-2,图2-3,图2-4所示:图2-2射频低通采样数字化的理想软件无线电结构图2-3射频带通采样软件无线电结构图2-4宽带中频带通采样 第二章理论基础射频低通采样的软件无线电结构对A/D转换器和告诉DSP要求过高,有时候无法实现。第二种结构与的一种的主要不同是A/D前采用了带宽相对较窄的电调滤波器,然后根据所需要的带宽进行带通采样。第三种结构类似于目前的中频数字化接收机,都采用超外差体制。结构的主要特点是中频带宽更宽(20MHz),所有调制解调功能全部由软件加以实现。2.1.4软件无线电中的采样理论2.1.4.1基本带通采样定理Nyqyuist采样定理只讨论了频谱分布在(0,九)上的基带信号的采样问题,以下是带通采样定理:设一个频率带限信号x(t),其频率限制在(人,九)内,如果其采样速率.f"满足几=2关干几/(2n+1),其中n取能满足几>=2(几一人)的最大整数,则用几进行等间隔采样说得到的信号采样值x(nT,)能准确的确定原信号x(t)o设中心频率fu二(人+几)/2频带宽度B=八一人,那么上式可以改写为f,=4.fo/(2n+1),n取满足f>=2B的最大整数。2.1.4.2射频直接带通采样定理一般的无线电信号(如通信信号雷达信号遥控遥测信号)其瞬时信号带宽都是比较窄的,例如一般的常规V/UHF战术通信电台其信号带宽(间隔)为:50KHz25KHz1205KHz等,而短波电台的信号带宽就更窄,即使象非常规的扩频信号其带宽页只有几兆赫兹,雷达信号也如此,一般不超过百兆赫兹。射频直接采样软件无线电其结构框图如图2-5所示:R=dr.}!R"伙s关二图2-5射频直接采样软件无线电接收框图由前面讨论的带通信号采样定理知道,当以采样速率分f。对(0,几sax)频带内的信号进行数字化时,如果九D前的抗混叠滤波器是理想的话(矩形系数为1,带宽为f,/2),就可以实现整个频带的无“盲区”采样。但是这种矩形系数为1的理想滤波器实际当中是做不到的,比较理想的基本可实现的滤波器如图2-6所示,从图中可以清楚地看出这种可实现滤波器所造成的不良后果是存在采样“盲区”,如图中阴影部分所示,阴影部分之中心频率为(m+1)八/2.也就是说当信 第二章理论基础号落在“盲区”时,将被滤波器所滤除、而无法对这些信号进行采样数字化(至少将降低信号采样灵敏度)。解决的办法是对这些“盲区”通过选择合适的采样频率进行“异频”或“异速率”采样·设主采样频率为f,则“盲区”中心频率为:f.-=(m+1)八/2(rn=0,1,2,二)(2-1)图2-6射频直接带通采样原理一盲区采样根据采样定理,为了对中心频率为fo。的盲区频率进行采样,所要求的采样频率为:fm=4fo}l(2n+1)(n=0,1,2,⋯)(2-2)如果取n=m+1,则有:fsmf===(1-一1/(Z2m+1)))fss(2-3)盲区采样频率确定后,并不意味着能够实现无盲区采样,还必须对滤波器的矩形系数提出要求,假设主采样说要求的滤波器的矩形系数为r(如图2-7所示),则有:B,=f,/2r(2-4)H(f)公一三泣瑞一、一___BaiFsm/2图2-7盲区采样滤波器的特性要求所以育区采样滤波器的通带宽度为Bn,=(r-1)九/2r(2-5)其矩形系数‘--f.m/zB。一(1-1/(2m+3))r/(r-1)(2-6)如前所述,实际的无线电信号,特别是目前比较常规的通信信号,其瞬时信 第二章理论基础号带宽都不会很宽,一般都在几十千赫兹量级(如战术电台),最宽也不会超过几兆赫兹(如第三代个人移动通信信号)。这样的话,前面讨论的抗混叠滤波器就不需要用宽带滤波器(其带宽为f,l2r.,),矩形系数为r},m=0,l,2,⋯)来实现,而只需要采用其带宽大于信号带宽(几十千赫兹一几兆赫兹)的窄带滤波器。由于滤波器带宽的减小,其矩形系数相应就可以加大,有利于滤波器的实现。但这种窄带滤波器是一种跟踪滤波器、当需要对某一信号进行采样数字化时,就要把该滤波器调到这一信号的频率上。很显然对这种窄带跟踪滤波器矩形系数的要求由前面介绍的宽带滤被器的过渡带宽度所决定。2.2多速率信号处理理论软件无线电所基于的最基本的理论就是带通采样定理,在可能的情况下,带通采样速率尽可能的选的高一些,使瞬时采样带宽尽可能的宽。但是随着采样速率的提高带来的另外一个问题就是采样后的数据流速率很高,导致后续的信号处理速度跟不上,特别是对有些同步解调算法,其计算量大,如果其数据吞吐率太高是很难满足实时性要求的,所以很有必要对A/D后的数据流进行降速处理。那么是否有可能进行降速处理呢?回答是肯定的。因为前面已经讲过,一个实际的无线电通信信号带宽一般为几十千赫兹到几百千赫兹.实际对单信号采样时所需的采样速率是不高的,所以对这种窄带信号的采样数据流进行降速处理或者叫二次采样是完全可能的。多速率信号处理技术为这种降速处理的实现提供了理论依据。其中最为重要也是最为基本的理论是抽取和内插。2.2.1整数倍抽取所谓整数倍抽取是指把原始采样序列x(n)每隔(D-1)个数据取一个,以形成一个新序列XD(M),即:xD(m)=x(mD)(2-7)如果x(n)序列的采样率为fs,则其无模糊带宽为f,/2a当以D倍抽取率进行抽取得到抽取序列XD(m)的取样率为人心,其无模糊带宽为f,/2D,当x(n)的傅立叶变换X(el')含有大于f,12D的频率分量时候,XD(m)的傅立叶变换XD(e'')必然产生频谱混叠。但是如果首先利用一数字滤波器(滤波器带宽为二。〕对X(el')进行滤波,使X(e")中只含有小于二。的频率分量(对应于模拟频率为二九/D),再进行D倍抽取,则抽取后的频谱将不发生混叠。完整的D倍抽取器结构如下图2-8所示:X(ell)一HLp(}}})一-一石引一争XD(e'}')图2-8抽取器方框图 第二章理论基础2.2.2整数倍内插所谓整数倍内插就是在两个原始抽样点之间插入(I-1)个零值,设原始抽样序列为x(n)(傅立叶变换X(e'')),内插后的序列为x,(m)〔傅立叶变换X,(e'))。则有X(e卿)=X(。了耐)。可见内插后的信号频谱为原始序列频谱经过I倍压缩后得到的频谱,为了从X,(e'0')中R复原始频谱,则必须对内插后的信号进行低通滤波(滤波器带宽为n/I)。内插器如图2-9所示:X(e"})-气司一~H}一一X,(e'0')图2-9内插器方框图2.3高效数字法波2.3.1半带建波器所谓半带滤波器就是频率响应H(e'0')满足如下关系的FIR滤波器:Ct)A=汀一。C(2-8)Ss=Sp=8或者说半带滤波器的阻带宽度等于通带宽度,并且阻带通带纹波也相等。可以证明,半带滤波器的冲击响应除了零点不为零外,其余偶数点全部为零,所以采用半带滤波器来实现取样率变换时候,只需要一般的计算量,有很高的计算率,特别适合于实时处理。2.3.2积分梳妆(CIC)滤波器所谓积分梳妆滤波器,是指该滤波器的冲击响应具有如下形式:(1,0‘。‘D一1h(n,一10,其他(2-9)式中,D为CIC滤波器的阶数,也是抽取因子。对其进行频率变换可知,单级CIC滤波器的旁瓣电平比较大,只比主瓣低13.46dB,这也意味着阻带衰减很差。为了降低旁瓣电平,一般采用多级CIC滤波器级联的办法来解决,多级级联能增大阻带衰减,减小混叠影响,但会增大带内容差。所以CIC滤波器的级联数目有限,一般以5阶为限。 第二章理论墓础2.4数字解调算法2.4.1信号解调通用模型为了便于信号发射,提高信道利用率、发射功率效率以及改善通信质量,人们研制出各种通信信号的调制样式,相对于调制的逆过程一解调也因调制样式的不同而不一样,解调方法大致有相干解调和非相千解调二类。一般而言,相干解调性能比非相干解调好,在某些场合利用非相干解调的主要原因是其解调电路简单,在解调需要用硬件电路实现的时代,当然有其存在的理由,但其不足也是显而易见的,如作为非相干解调的一种方法一包络检波法,在输人为小信噪比的情况下,存在“门限效应”;另一种非相干解调法,即对FM解调的鉴频器法也有类似的“门限效应”软件无线电的几乎所有功能部将用软件来实现,解调也不例外。软件无线电的解调一般采用数字相干解调的方法。数字相干解调法从原理上讲与模拟相干解调法一样。常见于模拟解调电路的一般相干解调法(指用一个同频同相的本地载波去相干解调),当同频同相不满足时、解调输出就会严重失真。例如,在移动通信中,接收到的信号受到严重衰落时,提取出来的载波质量往往达不到要求,特别是在多普勒效应等引起的频偏环境下更是如此。由于正交解调法在一定程度上能克服以上这些弱点,因此,软件无线电的解调一般采用数字正交解调法。对于用正交调制产生的调制都能用正交解围法解调,一般调制都能用正交调制法进行。也就是说,正交解调法从理论上说可以对儿乎所有的调制样式进行解调。下面,首先对数字正交解调法作一个简单的介绍,然后对具体的调制样式的数字正交解调进行分析。.调幅解调:己调信号的数学表达式为:S伍)=A(n)cos[or,n+_20和n,s>_10。 第三章系统硬件设计第三章系统硬件设计3.1概述该课题硬件部分的设计主要包括两个方面的内容,一是DSP通用硬件平台的设计,二是AID采样和数字下变频模块的设计。系统硬件的总体框图如图3-1所示:图3-1系统硬件总体框图3.2DSP硬件平台设计3.2.1硬件平台结构框图该硬件平台的框图如图3-2所示:本硬件平台采用的DSP芯片是TI的TMS320C6000系列中的C6201/C6701o两种芯片都为GJC-352这种共同的封装形式,而且管脚一致,可以在相同电路的印制板上焊接C6201(定点)或者C6701(浮点〕,使硬件的通用性更强,而且其指令与C6000的其它芯片都兼容,在上面验证过的算法均可以方便地移植到其它地芯片上。.平台上配备有双口RAM和BPI以及McBSP扩展接口。如果单片DSP的处理能力不够,可以通过双口RAM实现两块C6000EVM板之间的数据通信,使处理能力达到原来的两倍;HPI接口可以与上位机通信,以满足不同的应用需求;McBSP扩展接口可以实现串行通信。.采用32位FLASH固化程序和实现自举。当然也可以通过HPI接口在复位后通过上位机对DSP进行初始化。.采用SBSRAM.SDRAM实现采样数据、处理中间数据及程序代码的存储。.应用CPLD完成周边控制,便于系统的升级和二次开发。.由于该硬件方案具有定点/浮点的通用性,而且可扩展性强。可广泛地适用于通信(测量)、图像处理等领域。比如:可对数字调制信号的采样值进行谱分析处理、解调、解码等运算。 第三章系统硬件设计图3-2DSP硬件平台结构框图3.2.2TMS320C6201/6701芯片介绍3.2.2.1综述TMS320C6201/6701分别是TMS320C6x系列DSP芯片中具有代表性的32位定点/浮点DSP芯片。6201和6701管脚完全兼容,都是352BGA小型球栅阵列封装。内核结构基本相同,片内资源也相同所以设计的硬件平台可以运行这两种DSP。它们的主要性能特点概括如F!.芯片内核1.8V供电,周边I/O3.3V供电,降低了功耗。.芯片具有先进的VLIW结构内核。8个独立的功能单元,6个ALU(32/40bit),2个乘法器(16X16),6701支持IEEE标准单精度和双精度浮点运算;每个周期执行8条32bit指令;专用存取结构,32/64个32bit通用寄存器;采用指令打包技术,减小了代码容量。.采用类似RISC指令系统,32bit位寻址范围,支持字节寻址,支持40bitALU操作,100%条件指令。指令执行按照取指、译码、执行三级流水线运行,极大的提高了芯片的性能。.片内有64K程序和数据存储器(高速内部SRAM),16/32位高性能外部存储器接口(EMIF)提供了与SDRAM,SBSRAM和SRAM等同步/异步存储器的直接接口。片内还提供多种集成外设,包括DMA、多通道缓冲串口(MCBSP)、主机借口(HPI),32位通用计数器(Timer).支持多种复位加载模式(Boot)提供三种节电模式选择(PowerDown), 第三章系统硬件设计内置灵活的PLL锁相时钟电路。.此外芯片支持IEEE-1394.1(JTAG)边界扫描接口,可以很方便的通过JTAG接口进行软件仿真调试。TMS320C6201/6701的结构框图如图3-3所示:r份洲pr卯rsm1。:1声eceB日‘日口h睁In姗.1Pngnm〔MIF二Grnlmllelw}7丑二习csoaaosPIrsvuction由峪0的州R。幼创材‘IOBWel闭GsPetchInsWCtrm口e江刘〔Contrd墓下BatQa7ePaMA}F怕W仇已r口}人Ragale}Fda}IBRBBisrerFleIrrGlrcuilEmr口尸,.}‘:才:洲曰:::.C}尸’G.四B习二}~}L1卜I1W1ID1}1D21n12,771Ir默一}A5今Gn}1-40}2--n12AS26L2mTE:日pPI4--,卜’译’IhdemalDela日以0D欲日Ac口“M..ryCUrmdW,Cad叼urati团图3-3TMS320C6201/670]的结构框图3.2.2.2片内存储器6201/6701的片内存储器包括的片内程序存储器和片内数据存储器。其中程序存储器64KB,可容纳16K条32bit的指令或者2K个256bit的取指包.CPU借助PMC的控制通过256bit的数据通道可以对片内程序RAM进行单周期访问.片内64KB的数据存储器分为2块,侮一个RAM块成为一个BLOC凡组织为4个16BIT宽度,,4K深度的存储体(bank).每一个存储体都有独立的数据总线和DMC相连。MA控制器与CPU,或者是CPU的A侧与B侧,可以对位于不同RAM块,或是不同的存储体中的数据进行同时存取,而不会发生冲突.3.2.2.3外部存储器接口设计DSPs访问片外存储器时必须通过外部存储器接口(ExtemelMemoryInterface, 第三章系统硬件设计EMIF)aC600。系列DSPs的ENUF具有很强的接口能力,不仅具有很高的数据吞吐率(最高达1200MB/s),而且可以与目前几乎所有类型的存储器直接接C7.图3-4是C6201/6701的EMIF信号接口示意图:CLKOUT1CLKOUT2、ED[31:0].EA[21:2],Sharedby.allexternalC仁千3刃]Jinterfaces0MAc门trollerBE[30]l、ARDY.AOE,八synchronous.controlAR住jData八V.Ememory、controllerSSAOS.-,SS0巨rSBSRAMSSWE.controlJSSCLKProgram、memorySC找escontrollerLSDCASlrSDRAMSDVJ〔.con士rolSDA10.JSDCLK飞HOLDjBusholdHOLDAinterfaceInternalperipheralbus图3-4TMS320C620116701EMIF接口信号C6201/6701的EMIF支持32bit宽度的ASRAM,SDRAM和SBSRAM,只有CE1空间支持16bit和8bit的ROM接u.3.2.2.4直接存储器访问(DMA)直接存储器访问(DirectMemoryAccess,DMA)是C6000DSPs中一种重要的数据访问方式,她可以在没有CPU参与的隋况下,由DMA控制器完成DSP存储空间内的数据搬移数据搬移的源/目的可以是片内存储器,片内外设或者是内部器件C6000的DMA具有四个相互独立的传输通道,允许进行四个不同任务的DMA传输.下面是DMA控制器的主要特点:.后台操作:DMA控制器可以独立于CPU工作..高吞吐率:自已按照CPU时钟的速度进行数据吞吐. 第三章系统硬件设计:四个通道:DMA控制器可以控制四个通道的数据传输.辅助通道:主机口用辅助通道来访问CPU的内存空间,辅助通道与其他通道间的优先级可以设置单通道分裂操作:利于单通道可以与一个外设间进行双向的数据传输,就像存在两个DMA通道一样.…多帧传输:传送的数据块可以分为多个数据帧.优先级可编程:每一个通道对于CPU的优先级可以编程设置.地址产生方式可编程:每个通道的源地址寄存器和目的地址寄存器在每次读写操作时都可以进行调整一地址可以是固定值,递增,递减,或者是设定地址的索引值32位地址范围:DMA控制器可以对下列的任何一个地址映射区域进行访问.包括片内数据存储器,片内程序存储器,片内的集成外设,通过EMIF接口的外部存储器,扩展总线上的扩展存储器.数据的字长可以编程:每个通道可以独立设置数据单元为字节、半字(16bit)、字(32bit).自动初始化:每传送完一批数据,DMA通道可以自动配置下一数据块的传输参数.事件同步:读操作、写操作以及一帧数据操作都可以由制定时间出发操作中断反馈:一帧或者一块数据传送完毕,或者是出现错误时候,每一个通道都可以向CPU触发中断3.2.2.5多通道缓冲串口伽eBSP)C6000的多通道缓冲串口(Multi-channelBuferedSerialPort,McBSP)是在标准串口的基础上发展而来的,McBSP的基本功能包括:.全双工串行通信.双缓冲数据寄存器,允许连续的数据流.收发独立的帧同步和时钟信号.可以与工业标准的编/解码器、AICs(模拟接口芯片)以及其他串行A/D,D/A接口.数据传输可以利用外部时钟或者片内的可编程时钟.当利用DMA为McBSP服务时,串口读写具有自动缓冲能力图3-5是McBSP结构框图:3.2.2.6主机口(HPI主机口HPI是一个并行端口主机掌管该接口的主控权,通过它可以自己访问DSP的存储空间.HPI通过DMA控制器实现对DSP存储空间的访问.主机和CPU都可以访问HPI控制寄存器(HPIC),主机一方还可以访问HPI地址寄存器(HPIA)以及HPI数据寄存器(HPID)oHPI的接口控制信号如图3-6所示; 第三章系统硬件设计M口日5户C..p.nd山Dx恩奥疆歌爵CLIOi二卜卜丽下卜一CLNRcC.l。o,ck.an。d巨巨三习卜叶「吕);FSR竺Fgr岌a.思mn.e二.syti嚣.ncn吓贫卜OLKS-蒯dc价ontrolol巨途困卜卜L1P尸C旦R归}护I1M塑C里R旦卜一嘿黯.l应孙}4一l匹XCEE刃R卜一4RINI—洲IN丁一R〔V了—拭〔V了一图3-5McBSP结构框图图3-6HPI控制信号 第三章系统硬件设计3.3采样和下变频模块设计3.3.1概述本模块的结构框图如图3-7所示:输入信号图3-7采样和下变频模块结构框图本模块拟对中波调幅和调频广播信号进行采样和下变频。ADC选择的是AD公司的AD6644;抗混叠滤波器选择的是POLEZERO公司的MAXI-POLE系列电调滤波器:数字下变频器采用的是Harris公司的HSP50214B;FIFO选用TI公司的SN74ALVC7806,利用FIFO的半满信号触发中断,利用DMA实现数据的高速传输。3.3.2低噪声高增益放大器系统采用AD8138作为模数转化前的高增益放大器和抗混叠滤波器,AD8138的性能如下:.便捷的单端输入到差分输入的转换.可调的输出共模电压.外部增益可调.很低的谐波失真.3dB带宽达到320MHz.4ns的快速过载恢复3.3.3电调滤波器3.3.3.1概述本模块采用的是POLEZERO公司的MAXI-POLE系列电调滤波器MAXI-90-200-4。该电调滤波器的特性如下:.插入损耗(InsertionLoss):4.8/6.3,见图3-8..MB带宽(%):2.0/2.7,见图3-9.矩形系数:5.8/6.1 第三章系统硬件设计InsertionLoss八D1J︹山气巧P一公︸4D厂,厂二巨二巨二巨口巨口厂一「,勺厂万庄二巨二功54巧一,厂二厂二厂二巨巨习0‘曰户D巨刁亘面6.-刁应N日日网闷画,C1o成石回园国r巨二巴竺巨二巨二巨二「二巨二二1l七叼咨刀巨二〔二二巨二L二巨二巨二巨二巨二〔二巨二二山曰价1u山巧厂一厂一厂一-厂一「一「一厂一厂一}{一}l.毕﹃刀厂二仁二巨二压二匡二{一l!二二仁二巨二二}1.901001101201301旬1阳160170160I团200CommandedFrequency(MHz)图3-8插入损耗和工作频率关系图3dBBandwidth(%︹岁︸上名爹卫门皿commendedF-qua,二y(M日:)图3-93dB带宽和工作频率关系图3.3.3.2频率调谐地址在每个标准滤波器带宽内有250个等间隔的调谐增量,所以共有251个调谐字,从00000000到11111010。最后的五个调谐字保留给housekeeping函数使用。具体调谐字的分配如下表3-1所示:表3-1调谐字分配表{余知neCode石娜橄Result一井喃Lowesttuned00000000frequencythru(251totaltunecodes)11111010Highesttunedfrequency11111011thru11111,1011111,11通过式3-1计算调谐字的二进制代码: 第三章系统硬件设计tuneword=Fd}.-d二F=wX250(3一1)F,r,一F,_比如你要用一个225到400MHz的电调滤波器调谐到322MHz,那个调谐字为(322一255)/(400-225)X250=138.57(10001011b)。3.3.3.3iNig偏g电压用来调谐滤波器的PIN二极管需要偏置电压才能正常工作,这种情况下需要很小的偏置电流(小于1mA),偏置电压的最小要求式30V,推荐采用100V的偏置电压。电调滤波器内还有一个5V电源供电的EMI滤波器,这是一个可选项,当需要比较高的电磁兼容性能是可以采用外加电源激活。3.3.3.4时序特性图3-10是电调滤波器的工作特性:从DDRESSADDRESSVALID—吐.一《一~‘RFOUTPUT图3-10时序特性各参数的注释见表3-2:表3-2参数注释多丫MBOL价茸PARAMETER奋娜LIMITMinimumPulseWidth,t.16nSSTBMaximumSetupTimeisFromValidAddressto200nSSTBMaximumAccessTimetacc10NSFromSTBtoValidfoMaximumStrobeRatetaw500PS(DwellTime)MinimumAddressHoldthTime6NSFromSTBVcc二+5VDC,110%;T二一40to+850C 第三章系统硬件设计3-3.4模数转换器AD66443.3.4.1简介AD6644是美国AD公司生产的一种高速度、高性能、低功耗的单片14位模数转化器。AD转换的所有功能,包括跟踪保持放大器和基准电源都做在芯片上,以此来提供一个完整的AD转换功能。芯片采用特殊的设计措施来满足多通道、多模式接收机的要求。AD6644在奈奎斯特带宽上具有100dB的无失真动态范围(SFDR)a噪声性能也相当好,典型信噪比74dBoAD6644是AD公司宽带ADC家族的第三代,采样频率达到65MSPS,采样抖动小于300fs,差分输入,1.3W电源消耗前两代分别是AD9042(12bit,41MSPS)和AD6640(12bit,65MSPS)。它建立在AD公司的高速互补双极性处理技术上并且采用一种新颖的多路径结构。器件采用52引脚的LowProfileQuadPlasticsFlatpack(LQFP),额定工作温度为一25`C到+85`C。AD6644的内部电路结构框图如图3-11所示:AV+。呢‘WE67VREFENCDDE2DAA7T1TVIEMRNN6ATLN7李QIGITALLVETRxR1aDRCLORRAECLDTGIO2VRT1NLaDGILADA421勺GND口MIDCWIMYD,13D12D11D,10D9〕DrD5D!【目口aD2D1〔只图3-11AD6644内部功能框图3.3.4.2AD6644的编码信号为了获得最优化性能,AD6644的编码时钟必须采用差分驱动方式。编码信号采用变压器或者电容藕合的交流祸合的方式输入到ENCODE和ENCODE引脚。这些引脚都是内部偏置,所以无需外加偏置电阻。图3-12是采用射频变压器的一种偏置方式: 第三章系统硬件设计SCOLUORCKEENCOD仁AO6644ENCODEHSTAS2&12DIODES差分编码输入如果采用低抖动的ECLIPECL时钟(如Motorola的MCIOOLVEL16),可以应用图3-13的连接方式:。}},}入J}'1JD=.1.w~FENACODED6644PECL今户NENCODE图3-13差分ECL编码输入3.3.4.3模拟输入如图3-14所示,AD6644采用差分输入方式,这是目前高性能AJ〕的常用输入方式。采用差分输入方式,可以提高模数转换器的性能,主要是因为差分模拟级对偶次谐波有很高的抑制,另一方面,采用差分输入,在PCB布线上也会有很多有点,因为差模输入对于电源和地噪声有很高地共模抑制比,并且对本地晶振等共模信号也有一定地抑制。AD6644地模拟输入级如下图所示,AD6644模拟输入级工作于+5V电压,它的模拟输入电压范围偏离地电平2.4V。它的每个模拟输入端通过一个500欧姆地电阻接在2.4V偏置电压上再加到差动缓冲放大器地输入端。V。“月勺〔cV,x石,'cc纷:}SODSI_BUF,一图3-14AD6644模拟输入级AD6644地模拟输入推荐采用如图3-15所示地变压器祸合方式: 第三章系统硬件设计ANALOGINPUTT1礴了Rg几INSIGNAL一孟雨0.1kF图3-15变压器祸合差分模拟输入AD6644地模拟输入电阻是1000欧姆,模拟输入功率仅要求一3dBm,端接电阻R,和模拟输入电阻并联实现期望地匹配电阻值(变压比要求)。串接电阻用来隔离变压器和AD,防止AD产生的动态电流回流到变压器的次级。3.3.5数字下变频器3.3.5.1HSP50214B介绍数字下变频器件种类很多,其中,最著名、应用最广的是美国的Harris公司(1999更名为Intersil)和GrayChip公司,此外,还有AnalogDevices公司与StanfordTelecom公司。他们主要产品型号有:Harris公司的HSP50016,HSP50214系列、HSP50216系列;GrayChip公司的GCI011系列、GC1012系列、GC4014,GC4016;AD公司的AD6620,AD6624;StanfordTelecom公司的STEL2130aHSP50214B是Harris公司HSP50214系列DDC中功能最强的型号,主要功能为:第一是变频,包括数控本振和数字混频,将感兴趣的信号下变频至零中频,HSP50214B的高频高分辨率的数控本振为在宽带数字信道中提取单载波的能力提供了保证:第二是低通滤波,滤出带外信号,提取感兴趣信号,HSP50214B的可编程FIR滤波器还能设计成为匹配滤波器;第三是采样率转换,降低采样率,以利于后续信号处理。其主要技术参数如下:.14位实数的数据输入格式.最大数据输入速率(CLKIN))765MSPS.处理器最大输入时钟(PROCCLK)为55MSPS.无杂散动态范围(SFDR)大于IOOdB.抽取因子为4-16384.最大低通输出带宽和相应输出速率为0.982,12.94MSPS.输出格式为串行、并行、先进现出(FIFO).解调类型为AM,FM,FSK.BPSK,DPSK其结构框图如图3-16: 第三章系统硬件设计图3-16HSP50214B结构框图HSP50214B采用四级抽取组。它们分别是:积分杭状滤波抽取组(CIC)、半带滤波抽取组(HB),255阶FIR滤波抽取组、再采样多相滤波抽取组。CIC,HB滤波抽取组主要的卞要作用是完成采样速率的抽取功能,通过大的抽取,使数据流速率快速降下来。HSP50214B采用CIC作为首级低通滤波和拙取的原因是:CIC滤波器系数具有特殊性(系数都为1),因此,滤波运算只是做加法运算,DSP的处理速度只需与输人速率一样即可,所以CIC特别适合于抽取系统中的第一级抽取和进行大的抽取因子的工作由于CIC的过渡带和阻带的衰减性能不是很好。HSP50214B采取五级CIC级联的力法加大过渡带和阻带的衰减。HB滤波器由于其系数几乎一半为零,滤波时候,乘加运算减少一半,HSP50214B把它作为第二级低通滤波和抽取。1113的抽取因子固定为2,因此,特别适合采样率降低一半的要求,HSP50214B采用五级HB级联的方法加大HB每次采样率降低一半的小步进拙取。255阶FIR滤波抽取组的主要目的是对整个信道进行整形,一般不作抽取功能。信号经过CIC,HB滤波抽取后,输入到255阶FIR滤波器组时采样速率相对来说已经很低,所以,在一定的处理时钟速率下,能够有更高阶的FIR滤波,使得滤波器的通带波动、过渡带带宽、阻带最小衰减等指标能够设计得很好。HSP50214B设计255阶FIR的系数的寄存器为128个,每个寄存器的位数为22位。以上讨论的抽取都是整数倍抽取。对于某些对输出速率有特殊要求的应用不能满足,HSP50214B增加一级再采样多相滤波抽取组。再采样多相滤波抽取组设计的日的就是进行分数倍采样速率的转换,使得整个抽取系统的输出速率能够满足特殊的应用场合的要求。HSP50214B采用一个32倍多相内插器加一个由数控振荡器控制的抽取器组成,其中,多相内插器为一个192阶、32路多相滤波、每相6阶的多相内插器。在再采样多相滤波抽取后,还有两级HB内插器。其目的是为了提高255阶FIR抽取组说损失的样本时间分辨率,能提高二倍 第三章系统硬件设钊到四倍的时间分辨率。HSPS0214B还有一切其他比较好的功能:.数字正交下变频前有输入数据格式选择器,还有输入信号电平检查器,电平检查器与ADC前面的放大器可组成AGC环路。.在CIC前有数字放大器。.在255阶FIR滤波器后有一个数字AGC..在二级HB内插器后有直角坐标到极坐标变换器和数字鉴频器,数字鉴频器后面还有一个64阶的FIR滤波器。.HSP50214B还有格式输出功能,三种输出方式,五种输出数据类型:同相分量、正交分量、瞬时幅度、瞬时相位和瞬时频率。3.3.5.2HSP50214B的设计与应用HSP50214B编程很灵活,共有28个32位控制字和156个22位滤波器系数需要编程和设置,其中主要有358位需要编程。通过不同的设置可以实现不同的功能。CIC滤波器概况:.输入样本速率不超过65MHz.计算时钟速率不超过65MHz.衰减特性表如下表3-3:表3-3CIC滤波器衰减特性表频率/CIC输出频率通带衰减(dB)混叠衰减(dB)(MHz)﹄、21/44.6631/52.9721/62.001勺八1/81.1961/100.721/120.50105HB滤波器概况:.输入样本速率等于CIC输出样本速率。.计算时钟速率为HSP50214B的处理时钟速率不超过55MHz.衰减特性,通带非常平坦,在输入速率的四分之一处通带衰减为6dB,其抗混叠的衰减特性见表表3-4处理时钟速率和HB滤波器的输入速率的制约关系为:,frnoccut/人之[7x(HB5)x(2fiH5)+6x(HB4)x(2HB4+HBS)+5x(HB3)x(2HB3+HB4+HB5)+4x(HB2)x(2HB2+HB3+HB4+HB5)+3x(HBI)x(2HB1+HB2+HB3+HB4+HB5)]/2T其中,HB级联,则HB;=1;HB,旁路,则HB,=0:T为级联的HB滤波器数。 第三章系统硬件设计表3-4HB滤波器抗混叠衰减特性表255阶FIR滤波器特性:.输入样本速率等于HB滤波器输出样本速率.计算时钟速率不超过55MHz.抽取因子D:1-16.255阶FIR滤波器最大可实现阶数Tars与输入样本速率(几,)、计算时钟速率(rPR(x-ctx)以及滤波器类型之间的关系如式3-2:TAPS=ent[rrxoccxl(f,o,ID)一D].(1+S)一(srnr-0,u)(3-2)其中,滤波器系数对称时候,S、取I,不对称为0;滤波器系数个数为奇数,DOL为I,否则为00最优数字信道设计最优数字信道设计的任务就是在各个因素的制约下,设计出性能最好的接口匹配的以上各种滤波器来。使信号经过数字信道处理后,输出的感兴趣信号失真最小,波形最纯洁(或输出信号信噪比最大)。255阶FIR滤波器的主要作用是波形整形,整个数字信道的通带宽度、过渡带宽度和阻带衰减等指标都是由次滤波器决定的,所以,最优数字信道设计的切入点是255阶FIR滤波器的设计。设计目标是;就滤波器幅频特性曲线而言,通带波动尽可能小;通带宽度尽可能与感兴趣信号带宽一样;过渡带尽可能锐利;阻带衰减尽可能大。具体设计方法如下:.滤波器通带宽度等于感兴趣信号的带宽。.滤波器的输入速率等于感兴趣信号带宽的四倍。这是因为HB滤波器(HB5)在输出速率四分之一处有约IOOdB的混叠衰减,这样能使感兴趣信号不受混叠影响。.滤波器过渡带宽和阻带衰减设计:当滤波器的输入速率确定后,滤波器的最大可用阶数也就确定了,如式9所示。一般情况下,过渡带带宽等于通信信号与感兴趣信号的带宽之差,确定了过渡带宽也就确定了阻带衰减,两者之间有制约关系。HB滤波器设计:主要是输入速率和处理时钟的制约关系,由于HB的阻带衰减和带外抑制能力很强,所以在处理条件允许的情况下,尽可能多的利用多级HB滤波器,一般至少利用一级HB5滤波器。cIc滤波器设计:首先要考虑cIc滤波输出后,在感兴趣的信号带宽内混叠衰减要大于一定的值。如果,混叠衰减要大于70dB,则cic滤波器抽取输出的喜好要大于等于感兴趣信号带宽的6倍。另外cic滤波器输出速率的确定还必须根据255阶FIR所确定的输入速率。 第三章系统硕件设计3.3.6FIFO介绍3.3.6.1概述在现在的数字信号处理系统中,往往需要高速的数据采集,这就要求把高速的数据转化器件(A/D或者D/A)和DSP系统连接在一起。比如,一个工作频率200MHz的DSP外接一个工作频率为50MHz的AD,那么DSP必须每隔四个时钟周期读入一个数据。如果采用中断的方式从ADC中读取数据,达不到如此高的速率,主要是因为中断延迟的存在。在这里,采用FIFO是一个比较理想的解决办法,首先把部分高速数据进行缓冲,然后采用突发式读写〔比如DMA为式)进行数据的交换。3.3.6.2SN74ALVC7806本系统采用TI公司的异步FIFO,型号为SN74ALVC7906。主要特点如下:.工作电压Vcc为3V至3.6V.有满、空和半满信号.最高数据率40M14z.18ns的高速数据存取.三态输出.大小为256X18图3-17为FIFO和C6000系列DSP的EMIF接口:图3-17FIFO和C6000DSP的EMIF接口 第三章系统硬件设计外部接口逻辑(ExternalLogic)为:门日NC:K二iCECl十从只〔口/OE二/LEO十/AO三已INTG二日F门TINPO=HF监测TINPO引脚信号可以跟踪FIFO的状态。 第四章电路板设计第四章电路板设计4.1PCB设计通常认为高速电路有两方面的含义,一方面是指数字逻辑电路的频率达到或者超过50MHz,而且工作在这个频率之上的电路己经占到了整个电路系统的一定比例,大约为1/3左右:另一方面是指数字信号卜升或下降时间小于信号周期的5%0本系统中不仅包含大量的高速数字电路,而且有一部分模拟电路,所以在设计电路板时必须充分考虑到高速信号完整性的设计和抗电磁干扰措施。而且,由于数字电路中大量的CMOs管的开关,引起非常大的开关电流,从而给电源网络带来很大的干扰。在进行PCB布局时,应该首先考虑电源网络的分配和滤波情况。高速信号产生的辐射干扰和信号边沿高速跳变时产生的反射、振荡和串扰是高速电路板中噪声干扰的两个主要原因。噪声干扰有的是来自系统外部的,如无线电干扰、静电干扰和供电千扰;也有的是产生于系统内部的,如高频条件下由元器件或线路本身产生的噪声。噪声干扰能在系统中发散并产生对应的速度脉冲,如果不对这种噪声干扰加以抑制,整个电路系统的性能将会严重降低。4.1.1电源和地的设计要解决高速电路板中的噪声千扰的问题,首先应该提高电Dv供电的质量.电源网络主要有两种布线的方案,一种是电源总线,另一种是采用电源层。电源总线是将各个元器件悬挂在电源总线上,总线的宽度比一般的信号线宽很多,这种方式只能在一定程度上减小压降和噪声干扰,并不能很好的解决问题。电源层是由多片完整的金属平面构成的系统,这种方式可以更好的解决噪声干扰问题。一方面是由于产生噪声信号电压的根本原因是电路网络中有阻抗存在。电源总线是线性的网络,阻抗比较大,而且线路中的某一点受到干扰时,系统的其它部分也会受到干扰。电源层系统的电流路径却没有什么限制,它为电流提供了最小的阻抗,可以分散千扰电流。另一方面,电源层的电流环比较小。采用电流闭合回路的方法可以消除信号切换时产生的尖峰脉冲,还能吸收信号线上的高速噪声,但是当电流环的尺寸偏大时会产生振铃、串扰和电磁波干扰,所以应该尽量减小电流环的尺寸。而电流总线往往会形成很大的电流环,形成结构性的噪声源。电源层的电流环则是按照最小的阻抗来选择路径,并能够自然的形成最小的电流环。由于电源层有以上诸多优点,所以在本系统的设计中,我们采用 第四章电路板设计了电源层方式来完成电源的布线。电源层又可分为数字电源层和模拟电源层,前者包括数字接地层和数字电压层,后者则包括模拟接地层和模拟电压层。由于数宇信号的o,1允许一定的误差存在,0.7V以下认为是0,2.4V以上认为是1,所以数字信号可以容忍上百毫伏的噪声而不会影响系统的正常工作,但是模拟信号对噪声却非常的敏感,经过多级放大后的噪声信号很可能引起信号门限电平的误判,而导致系统运行于错误的状态之下。所以在AD采样和数字下变频模块的设计中采用了这种数字电源和模拟电源分开的方式,以降低电源对噪声的藕合作用。设计时,数字+3.3V电源和模拟+3.3V电源采用不同的转换芯片实现,在接地端采用2.2uH的电阻连接模拟地和数字地。系统中用到的电源有+12V、十5V、十3.3V,+A3.3V,+2.5V,+1.8V。相同电压的电源块之间采用串接电感来减小噪声十扰,这是利用电感的通低频阻高频的特性。同时本系统在PCB板的正反面铺铜,使其和地端相连,并在面积较大的铺铜上打过孔。在直流电源回路中,负载的变化会引起电源噪声。例如在数字电路中,当电路从一个状态转换为另一种状态时,就会在电源线上产生一个很大的尖峰电流,形成瞬变的噪声电压。配置去祸电容可以抑制因负载变化而产生的噪声,是印制电路板的可靠性设计的一种常规做法,配置原则如下:.电源输入端跨接一个10-1000的电解电容器,如果印制电路板的位置允许,采用100uF以上的电解电容器的抗干扰效果会更好。.为每个集成电路芯片配置一个0.OlUF的陶瓷电容器。如遇到印制电路板空间小而装不下时,可每4-IC个芯片配置一个1^-IOuF担电解电容器,这种器件的高频阻抗特别小,在500kHz-20MHz范围内阻抗小于1S2,而且漏电流很小(0.5uA以下)。.对于噪声能力弱、关断时电流变化大的器件和ROM,RAM等存储型器件,应在芯片的电源线(Vc(;)和地线(GND)间直接接入去祸电容。.去祸电容的引线不能过长,特别是高频旁路电容不能带引线。在高频情况下,电容本身会产生寄生的阻抗,如图4-1所示,电容本身构成了一个谐振电路,其谐振频率为人一人二、。当f>f时电容呈现感性,J一’‘臼职书啼’分归J认州千2”“一/(2nd)“目了一八洲“习“一叮一’一’当f_Tr?4Tpd,信号落在不确定区域。如果」'r<2Tpd,信号落在问题区域。对于落在不确定区域及问题区域的信号,应该使用高速布线方法。传输线的形成:PCB板上的走线可等效为图4-2所示的串联和并联的电容、 第四章电路板设计电阻和电感结构。串联电阻的典型值0.25-0.55ohms/foot,因为绝缘层的缘故,并联电阻阻值通常很高。将寄生电阻、电容和电感加到实际的PCB连线中之后,连线上的最终阻抗称为特征阻抗Zo。线径越宽,距电源/地越近,或隔离层的介电常数越高,特征阻抗就越小。如果传输线和接收端的阻抗不匹配,那么输出的电流信号和信号最终的稳定状态将不同,这就引起信号在接收端产生反射,这个反射信号将传回信号发射端并再次反射回来。随着能量的减弱反射信号的幅度将减小,直到信号的电压和电流达到稳定。这种效应被称为振荡,信号的振荡在信号的上升沿和下降沿经常可俩以看到。土孟。补渺下丁上呻、图4-2传输线模型传输线效应:基于上述定义的传输线模型,归纳起来,传输线会对整个电路设计带来以下效应。.反射信号(Reflectedsignals).3-1时和时序错误(Delay&Timingerrors).多次跨越逻辑电平门限错误(FalseSwitching).过冲与下冲(Overshoot(Undershoot).串扰(InducedNoiseorCrosstalk).电磁辐射(EMIRadiation)反射信号:如果一根走线没有被正确终结(终端匹配),那么来自于驱动端的信号脉冲在接收端被反射,从而引发不预期效应,使信号轮廓失真。当失真变形非常显著时可导致多种错误,引起设计失败。同时,失真变形的信号对噪声的敏感性增加了,也会引起设计失败。如果上述情况没有被足够考虑,EM工将显著增加,这就不单单影响自身设计结果,还会造成整个系统的失败。反射信号产生的主要原因:过长的走线;未被匹配终结的传输线,过量电容或电感以及阻抗失配。延时和时序错误:信号延时和时序错误表现为:信号在逻辑电平的高与低门限之间变化时保持一段时间信号不跳变。过多的信号延时可能导致时序错误和器件功能的混乱。通常在有多个接收端时会出现问题。电路设计师必须确定最坏情况下的时间延时以 第四章电路板设计确保设计的正确性。信号延时产生的原因:驱动过载,走线过长。多次跨越逻辑电平门限错误:信号在跳变的过程中可能多次跨越逻辑电平门限从而导致这一类型的错误。多次跨越逻辑电平门限错误是信号振荡的一种特殊的形式,即信号的振荡发生在逻辑电平门限附近,多次跨越逻辑电平门限会导致逻辑功能紊乱。反射信号产生的原因:过长的走线,未被终结的传输线,过量电容或电感以及阻抗失配。过冲与下冲:过冲与下冲来源于走线过长或者信号变化太决两方面的原因。虽然大多数元件接收端有输入保护二极管保护,但有时这些过冲电平会远远超过元件电源电压范围,损坏元器件。串扰:串扰表现为在一根信号线上有信号通过时,在PCB板上与之相邻的信号线上就会感应出相关的信号,我们称之为串扰。信号线距离地线越近,线间距越大,产生的串扰信号越小。异步信号和时钟信号更容易产生串扰。因此解串扰的方法是移开产生串扰的信号或屏蔽被严重干扰的信号。电磁辐射:EMI(Electro-MagneticInterference)即电磁千扰,产生的问题包含过量的电磁辐射及对电磁辐射的敏感性两方面。EMI表现为当数字系统加电运行时,会对周围环境辐射电磁波,从而千扰周围环境中电子设备的正常工作。它产生的主要原因是电路工作频率太高以及布局布线不合理。目前己有进行EMI仿真的软件工具,但EMI仿真器都很昂贵,仿真参数和边界条件设置又很困难,这将直接影响仿真结果的准确性和实用性。最通常的做法是将控制EMI的各项设计规则应用在设计的每一环节,实现在设计各环节卜的规则驱动和控制。4.2接收机中的抗干扰设计该系统是一个模拟、数字混和系统,系统内部有各种复杂的噪声源,比如,数字电路部分的高频脉冲信号、高频电路自身噪声以及外界祸合的各种杂波、电源部分的浪涌电压等。抗干扰设计对系统的稳定工作关系重大,渗透到系统设计的每一个模块中。在元件选择、电路布局、线路设计和印刷电路板设计等几个方面都要加以考虑。对于空间干扰,采用机壳内加装屏蔽的方法,对高频电路连线尽量平滑,避免尖脚和毛刺,周围以地线包围,以减小高频电路对内部其他电路的辐射同时将高频电路部分和其他电路分开设计。合理接地也是抑制干扰的一个很重要措施。将模拟地和数字地分开,采用一点接地的方法,避免模拟信号和数字信号之间的串扰。同时将射频电路的地线设计的尽量短、线径较粗,可以防止辐射干扰,减少接地阻抗。 第五章系统软件设计第五章系统软件设计5.1概述本课题的软件设计主要包括两个部分,一部分是硬件相关的软件,例如FLASH烧写程序,BOOTLOADER程序,F工F。读写程序,CPLD控制程序的编写。另一部分是数字滤波,数字解调,等相关的编写与优化。DSP软件编程有其独特性,首先介绍一下其软件编程环境。5.2TMS320C6000的软件开发环境目前DSPs的发展趋势是处理器更复杂,更新速度更快,DSP。的应用也向多处理器、多通道发展,变得越来越复杂。与此同时,市场对基于DSPs的产品需求越来越大,竞争也越来越激烈,因此对开发效率的要求也越来越高。对于开发者,要想在有限的开发周期内充分利用DSPs器件的每个MIPS,有效的开发工具至关重要。CodeComposerStudio(CCS)是TI公司推出的一个集成性DSP。软件开发工具。在一个开放式的插件(plug-in)结构下,CCS内部集成了以下的软件工具:.C6000代码产生工具(包括C6000的编译器、汇编优化器、汇编器和连接器).软件模拟器(Simulator).实时基础软件DSP/B工OS.主机与目标机之间的实时数据交换软件RTDX.实时分析(real-timeanalysis)和数据可视化(datavisualizationcapabilities)软件5.2.1代码产生工具代码产生工具(CodeGenerateTools)构成了CCS集成开发环境的基础部件。图5-1是C6000的软件开发流程图。下面分别介绍C6000的C编译器、汇编优化器、连接器和其他一些工具。5.2.1.1C编译器C6000的C编译器对符合ANSI标准的C代码进行编译,生成C6000汇编代码。如图所示,C编译器内外分为语法分析器(Paraser),C优化器(Optimizer)和代码产生器(CodeGenerator)3部分。语法分析器的功能是对C代码进行预处理,进行语法检查,然后产生一个中间文件(.if)作为C优化器或代码产生器的输入。语法分析器还对宏、文件包含和条件编译等进行处理。C优化器对语法分析器的输出文件进行优化,目的是缩短代码长度和 第五章系统软件设计提高代码执行效率,并生成.opt文件。.代码产生器利用语法分析器和优化器产生的中间文件生成C6000汇编代码(Asm)画v}urcefilePs.ITrefielerf}pF.a6Gm}nfile.r{}.9e'-ns0es'}rmaetofl}.e图5-1C6000软件开发流程图5.2.1.2汇编优化器汇编优化器的作用是对用户编写的线性汇编代码(.sa)进行优化。汇编优化 第五章系统软件设计器是C6000代码产生工具内极具特色的一部分,它在DSPs业界首创了对线性汇编代码自动进行优化的技术。对于性能要求很高的场合,用户需要用线性汇编对关键的C代码进行改写,然后采用汇编优化器进行优化,最大限度的提高代码效率。线性汇编语言是为了简化C6000汇编语言编程而设计的,它不是一个独立的编程语言。与C6000标准汇编语言相比,采用线性汇编不需要考虑以下因素:‘并行指令安排.指令延迟.寄存器使用5.2.1.3汇编器汇编器产生可重新分配地址的机器语言目标文件。汇编器产生的代码是TT的COFF文件格式。汇编代码内除了C6000机器指令外,还可以有汇编伪指令(assemblerdirective)。5.2.1.4连接器连接器的作用是接受可重新分配地址的目标文件(。ohj)作为输入,生成可执行的目标文件(。out)。其主要功能是根据用户定义的数据和程序存放地址,把汇编器产生的浮动地址代码和数据映射到用户系统的实际地址空间。5.3C6000程序基本结构一个最小的C应用程序必须包括至少三个文件:.主程序main.c这个文件必须包含一个。ain()函数作为C程序的入口点。.连接命令文件.cmd这个文件包含了DSP和目标板的存储空间定义以及代码段、数据段是如何分配到这些存储器空间的。这个文件由用户自己编辑产生。.C运行库文件rts6200.lib(或者是和DSP兼容的rtsxxxx.lib)C运行库提供了一些标准函数,还提供了C环境下的初始化函数cint00()a 第五章系统软件设计如果用户的程序准各写进EPROM并在卜电之后直接运行还必须包括下面的文件Vectors.asm这个文件中的代码作为工ST(中断服务表),并且必须被连接命令文件分配到0地址。DSP复位后,首先跳到0地址,复位向量对应的代码必须跳转到C运行环境的入口点_c_intOO.然后在c_int00()函数中完成诸如初始化堆栈指针和页指针以及初始化全局变量等操作,最后调用main()函数,执行用户的功能。这其中连接命令文件最为重要,在编写连接命令文件之前,应首先了解下面的三个基础知识:基础之一:C6000的存储器映射C6201的存储器地址映射图如表5-1所示表5-1C6201存储器地址映射图地址范围大小存储块的分配(HEX)(Byte)M.APOMAP100000000-0000FFFF64K外存接口CEO内部程序以M00010000-003FFFFF4M-64K外存接口CEO保留00400000-DOFFFFFF12M外存接口CEO外存接口CEO01000000.013FFFFF4M外存接口CE1外存接口CEO01400000"-0140FFFF64K片内程序RAM外存接口CE101410000--017FFFFF4M-64K保留外存接口CE102000000.02FFFFFF16M外存接口CE203000000.03FFFFFF16M外存接口CE380000000-v803FFFFF64K片内数据RAM基础之二:COFF文件格式和C6000编译器的C环境实现TI代码生成工具产生的目标文件是一种模块化的文件格式—COFF格式。程序中的代码和数据在COFF中以段的形式组织。COFF文件由文件头(FileHeader)、段头(SectionHeader)、符号表(SymbolTable)以及数据段等数据结构组成。文件中包含了段的完备信息,如段的绝对地址、段的名字、段的各种属性以及段的原始数据。对于C语言文件,编译器生成代码段取名为text。全局变量(函数外定义的变量)和静态变量(用static关键字定义的变量)分配到.bss段中,而一般的局部变量〔函数内部定义的变量)或是使用寄存器,或是分配在.stack段中。由于堆栈和存储器分配函数的需要,编译器所产生的目标文件中有两个段(stack和.sysme耐专门用于为堆栈和动态分配存储器函数保留存储空间。如果用户程序没有使用。alloc=calloc和realloc这样的函数,那么编译器就不会产生.sysmem段。另外,对于用关键字far定义的变量,专门分配在.bss以外的数据段.far(.bss段与.far段内的数据访问方式不一样,分配在.bs。段内的数据具有较高的访问效率)。C编译器产生的代码段和数据段见表5-20 第五章系统软件设计基础之三:连接器的使用连接器的输入文件是汇编器产生的浮动地址目标文件(.obj),产生的输出文件是可执行目标文件(.out)和连接过程结果说明文件(.map)。在连接过程中,连接器把所有目标文件中的同名段合并,并按照用户的连接器命令文件(.cmd)给各个段分配地址,最后生成可执行的out文件。对于汇编程序,系统复位和数据初始化等都是由用户程序完成;而对于C程序或基于C语言框架的混合语言程序,系统复位和数据初始化都必须基于C的运行环境。C的运行环境包括建立堆栈,变量初始化和调用Main函数等,这就是前面提到的c_intooo函数完成的任务。表5-2C编译器产生的默认代码和数据段段类型段名说明初始化段.text代码.。init变量初值表.const常量和字符串.switch用于大型switch语句的跳转非初始化段.bss全局变量和静态变量.sysmem全局堆.stack堆栈.far以far声明的全局或静态函数.cio用于:tdio函数5.406000软件编程与优化5.4.1概述在编写和调试C6000程序时,为使C6000代码获得最好的性能应该按图5-2所示的流程进行:软件编程流程可分为3个阶段,每个阶段完成的任务如下。第一阶段:根据任务编写C语言程序。在CCS环境下用C6000的代码产生工具,编译产生在C6000内运行的代码,证明其功能正确。然后再使用CCS的调试工具,如DEBUG和PROFILER等,分析确定代码中可能存在的影响性能的低效率段。为改进代码性能,进入第二阶段。第二阶段:采用优化方法改进C语言程序。重复第一阶段,检查生成的C6000代码性能。如果产生的代码仍不能达到所期望的效率,则进入第三阶段。第三阶段:从C语言中抽出对性能影响很大的程序段,使用线性汇编,重新编 第五章系统软件设计写这段程序,使用汇编优化器优化这段程序。由于C6000主要解决高速实时处理问题,所以一般情况下所说的优化,均指通过提高硬件资源的并行利用程度,从而提高代码运行速度,减少运行周期数。个别情况下也把减少代码长度成为优化。提高代码运行速度与减少代码长度,有时候是矛盾的。Phase7DevelopCCedePhase2:RefineCCedePhase3:WriteLinearAssembly图5-2C6000代码开发流程图5.4.2编写C程序TMS320C6000C/C++编译器支持美国标准ANSIC语言,同时还支持 第五章系统软件设计符合ISO/IEC14882-1998标准的C一语言凸编写C语言程序时,要认真考虑数据类型的尺寸。C6000编译器对每种数据类型的尺寸分配如下:.字符型(char)8bit.短整型(short)16bit.整型(int)32bit.长整型(long)40bit.浮点型(float)32bit.双精度浮点型(double)64bit此外C6000编译器提供了大量的编译选项,这些选项有一部分直接影响或者控制编译器优化过程,会影响编译出代码的优化性能。5.4.3优化C程序通常采用一下方法改进C语言结构,可以使编译出的代码性能显著提高:.使用intrinsics(内联函数)代替复杂的C语言程序。C6000编译器提供了许多intrinsics,可以快速优化C代码。Intrinsi。是直接与C6000汇编指令映射的在线函数。不易用C/C一语言实现其功能的汇编指令都有对应的intrinsics函数。虽然,编译器有时候不一定使用正好对应的汇编指令,但是每一个intrinsics函数完成的功能都与对应的汇编指令相同。Intrinsics指令前用下划线表示,其使用方法和调用函数一样,也可以使用C/C斗十变量。.采用数据打包技术。对段字长的数据使用宽长度的存储器访问。C6000访问存储器是很费时的。要提高数据处理率,应使Load/Store指令能访问多个数据。例如,使用字(word)访问2个short(16位)数据,将其分别放在32位寄存器的高16位和低16位字段。使用双字访问2个32位数据,将其放在一个64位寄存器内。.改进C语言循环结构,使之更有利于用软件流水技术优化。软件流水是一种用于安排循环内指令运行方式,使循环的多次迭代能够并行执行的一种技术,是代码优化的核心技术。图5-3是解释软件流水技术优化代码的示意图。图中ABCDE表示一次迭代中的级,此处共有五级。其后的数字表示歌词迭代的序号,同一行中的指令是同一周期能能够并行执行的指令。显然,在图示的同一个周期内,最多可以执行五次迭代的不同指令(阴影部分)。图中阴影部分称为循环核,核中五次迭代的不同指令并行执行。核前面执行的过程成为循环填充,核后面执行的过程成为循环排空。如果循环次数大于5,则能以核方式并行运行的次数增多。这样,对于代码优化及其有利。如果循环次数小于5,软件流水尚未建立,程序就要退出循环。此种情况下不适合采用软件流水。在C语言程序优化阶段,用户不直接参与软件流水的实现,只是向编译器提供信息,使之能够更好的编排软件流水。为了改善软件流水,应该注意以下四个方面的问题:.循环次数.冗余循环.循环展开.推测执行 第五章系统软件设计5.4.4通过线性汇编优化汇编代码线性汇编基本格式与汇编语言相同,扩展名必须是.s:,,用作汇编优化器的输入文件。可能包括六个项目:标号、条件、最近哦;指令、功能单元、操作数和注释。步骤如下:Pipelined-loopprologKernelPipelined-loopepilog图5一3采用软件流水执行循环程序5.4.4.1写并行代码并行代码得编写主要包括以下几个部分:.C代码转化为线性汇编.线性汇编资源安排.画相关图.性能比较5.4.4.2数据打包处理5.4.4.3软件流水软件流水编排循环指令,使循环的多次迭代能够并行执行的技术。软件流水使用的基本方法是:模迭代间隔编排表。为了建立一个完全流水的编排表,应首先确定最小迭代fHI隔。一个循环的最小迭代间隔是这个循环相邻两次迭代开始之间必须等待的最小周期数。迭代间隔越小,执行循环一次所用的周期就越少。循环中使用的资源数和数据相关性决定着最小迭代间隔。如果一个循环中四条指令使用了同一个功能单元,则最小迭代间隔最小是四。 第五章系统软件设计5.5软件编程调频信号解调根据第二章公式〔2-24)有:f(n)二1p(n)一(V(,一1)X=(n)X=(n一1)=arctg[.r]一arctg[-分=l人八n少五八n一1)在利用相位差分计算瞬时频率时候,涉及到除法和反正切运算,这对于非专用数字信号处理器来说比较复杂,在用软件实现时可以采用下面的方法来计算瞬时频率f(n)X,(n)Xo(,)一Xr(n)Xo(n)fn)=1P,(n)=X尹(n)+X2(n)对于调频信号,其振幅近似恒定,不放设X;+X尽=1,则有:f(n)=X,(n-1)Xo(n)-X,(n)Xo。一1)(5-1).调幅信号解调程序根据公式(2-13)有则m(n)一了X'(n)+XQ(n)一,。(5-2)有公式(5-2)知AM解调中的关键算法是开平方运算,其线性汇编代码见附录.FIFO数据读取程序从数字下变频器输出的两路正交信号分别输入两片FIFO进行缓存,当FIFO半满时,发出中断信号,启动DMA传输,把数据读入内部数据存储区。FIFO中数据读取程序见附录二还有一些其他关键程序,可以参考相关的例程作一下修改,在这里不赘述。 第六章系统调试第六章系统调试6.1概述系统调试分为硬件调试、软件调试以及软硬件联合调试,所有的调试工作都是在TI公司的集成调试环境ccs下完成的,采用JTAG接口实现CCs和硬件的通信。6.2硬件调试利用TI公司提供IDE环境CCs,可以很方便的进行硬件调试,利用CCs提供的寄存器和内存监视功能,再借助于示波器和万用表以及一些基本的调试程序,可以比较顺利的完成硬件的调试工作。硬件调试过程中采用系统的模块化的调试方式,比如对DSP硬件平台的调试,首先是电源模块的调试;其次是DSP内核的调试,确保DSP能正常启动;接着进行存储器的调试,因为该硬件平台配置了多种存储设备,所以这方面的调试工作相对比较繁重;最后进行其他外设性能的调试。实际调试过程中也发现了一些问题,比如DSP硬件平台的工作频率很高,对电源的稳定性要求很高,按照标准电源输入部分需要接EMC滤波器,但是没有定购到合适的滤波器,所以采用了TI推荐的电源模块,系统工作也很稳定;因为很多元器件都是自己动手焊接的所以,虚焊也是一个很严重的问题,为此也颇费了一些工夫;另一个问题就是限制管脚的配置,都应该按照规定上拉或者下拉,尤其是中断引脚,比如一开始INT7和NM」没有接上拉或者下拉电阻,便进不去CCS.NMI可以下拉,现在感觉是只要是给一个稳定的电平就可以了,其他的外部中断输入管脚也类似,只要给一个稳定的电平就可以了,但是一定要给一个稳定电平,否则进CCs会有问题。调试过程调试过程中用到的设备有:.ICETECK510OPP并口仿真器一个.稳压电源一个.不波器一台.万用表一块.PC机一台6.3软件调试软件调试借助于TI的集成开发环境和硬件仿真器厂通过使用:单步执行、异步修改寄存器和存储器内容、显示寄存器和出出其信息、设置断点等软件调试技术,以及不同的软件调试策略,如:对分查找、归纳法等,来实现软件测试。另外使用CCs提供的裁缝师功能,查找效率低下的代码段,用汇编语言改写优化。 第六章系统调试6.4联合调试联合调试指的是软硬件的联合调试,在数字接收机运行过程中,模拟实际的使用过程,对输出结果进行监测,验证系统的功能,并且对系统的性能进行测试联合调试的框图如图6-1所示:测试信号产生DSP处理和控制采样和数字下变频结果测量图6-1系统联调框图其中测试信号的产生方式有二种:采用标准接收天线接收调幅或者调频广播信号;采用信号源产生模拟信号。最终结果的测量方法也有两种:设计DAC模块将处理后的数字信号转换为模拟信号,驱动扬声器播放出来或者采用示波器观测:利用CCs的图形显示功能用软件方式进行测量 第七章数宇接收机的方案研究第七章数字接收机的方案研究7.1数字接收机方案讨论在绪论中我们提到,基于软件无线电的三种结构,宽带数字接收机的分为以下三类:.基于中频采样软件无线电结构的数字接收机.基于射频带通采样软件无线结构的数字接收机.基于射频低通采样软件无线电结构的数字接收机第一种实现方案需要较多的模拟模块,比如混频等,接收机的灵活性和抗干扰性能比较差:第三种方案,符合软件无线电思想,具有很高的灵活性和适应性,但是对于器件的要求是很高的,限于目前技术水平,要想完全实现是比较困难或者所成本太大;第二种思路属于折中方案,既降低了对硬件的要求又体现了软件无线电的灵活性,是比较切实可行的方案。在该方案的具体实现中也用到了一些专用的ASIC芯片,比如数字下变频器,随着DSP器件性能的提高和软件算法的优化,有人提出了全软件数字接收机,就是用软件实现数字变频、多数率变换、滤波算法等,这种接收机非常灵活,但是对DSP的要求过高。本论文在程序设计上对这一方面也做了相关的研究。7.2数字接收机设计7.2.1ADC设计模数转换器的设计主要包括采样方式、采样频率、ADC动态范围和ADC输入带宽等这方面的问题。根据对接收机70dB瞬时动态的要求,ADC的动态范围至少为70dB,考虑到其他一些因素的影响,一般要求ADC有MB的容限,瞬时动态范围达到73dB以上。根据经验公式,确定ADC的位数大于等于14位。由于需要对调频信号进行带通直接射频采样,所以ADC输入带宽至少为90-200MHz的频率范围。根据以上要求决定选用AD66440根据软件无线电理论,对射频信号进行带通采样时,采样频率有主采样频率和盲区采样频率,而且希望主采样频率越大越好,这样可以减少盲区采样频率的个数,所需要的抗混叠滤波器就越少。主采样频率的确定受以下因素制约:.主采样频率不能超过ADC芯片所具有的最大采样速率,AD6644最高采样频率为65MSPS.主采样频率不能高于专用数字处理硬件的允许输入速率,HSP50214B允许的最大输入频率为65MSPS.ADC采样频率和ADC前的抗混叠滤波器必须满足如下关系:ADC的频率必须大于等于抗混叠滤波器的通带宽度加上通带宽度乘以该滤波器的矩形系数之和。 第七章数字接收机的方案研究综合以上因素,ADC主采样频率定为64MHzo主采样频率确定以后,下面就是盲区采样频率的确定:设主采样频率和盲区采样频率很别为.fs.和fs},主采样抗棍叠带通滤波器和盲区采样抗混叠滤波器的带宽分别为B和B.,,矩形系数分别为r和r.。为了降低抗混叠滤波器的设计难度,采用采样后过渡带混叠的采样方式,这样有:r=1+2B.,IB八/2=B+B,简单起见不妨设B=Bm,则r=3;B=凡=16MHz根据带通采样定理:人=4几/(2n+1),n取满足f,>=2B的最大整数可得主采样频率的射频信号频率范围如表7-1所示:表7-1主采样频率的射频信号频率范围(MHz)采样频率射频信号频率范围64104.120136-152168--184盲区采样的中心频率为:fom=(m+1)儿/2(rn=0,1,2,.,.)根据带通采样定理,可得盲区信号采样频率以及相应盲区信号频率范围如表7-2所示;表7-2盲区信号采样频率以及相应盲区信号频率范围采样频率射频信号频率范围154.8571439010456.88888912013658.1818201521684359.076923184--2007.2.2抗混扭滤波器的设计对于90-20OMHz频率范围内的信号进行采样需要七个抗混叠滤波器,如果要对1GHz频率范围内的信号进行采样,就需要六十多个抗混叠滤波器,这样滤波器的设计工作量太大,而且抗混叠带通滤波器组的体积将会很大而且控制太复杂,因此选用窄带电调滤波器来实现抗混叠带通滤波。电调滤波器选择的是POLEZERO公司的MAXI-90-200-4,有关该滤波器的详细内容可参阅3.3.3节。电调滤波器的通带宽度随着工作频率的增大而增大,该电调滤波器最大带宽为5.4MHz,过渡带为13.5MH2,方案中确定的过渡带为16MHz,所以能满足带通采样的要求。 第七章数字接收机的方案研究7.2.3数字下变频器的设计HSP50214B功能比较强大、设计很灵活。其主要功能是从宽带输入信号中分离出感兴趣的窄带信号并进行正交分解和解调。处理过程如下:以感兴趣信号的中心频率设置其内部数字控制振荡器的频率,并通过对输入信号的正交混频,将感兴趣的信号下变频至零中频,然后采用抽取器滤除带外信号并将采样频率降下来,最后得到两路正交的低速基带信号。下面介绍调频广播信号接收的最优数字信道设计:宽带调频广播信号带宽一般为180K-200KHz,取带宽为200KHz,根据3.3.52节的设计准则,255阶FIR滤波器输入信号速率为800KHz,对于64MSPS的ADC采样速率,CIC和HB总的抽取因子为80,查表可知,最接近800KHz的HB滤波器组输出速率的是采用14135,HB3,1-1132进行三级抽取。这样CIC滤波器的输出速率为6AMSPS,根据表可知通带内棍叠衰减至少为105dB,阻带衰减小于。.5dB,能很好的满足要求。最终设计结果见表7-3表7-3设计结果输入速率(MSPS)抽取10因子CIC648HB6.41FIR08另外根据式(3-2)可得FIR滤波器阶数为135,假设信道带宽为300KHz,那么FIR过渡带宽为100KHz,设阻带最小衰减为0.01,利用MATLAB设计跳滤波器特性见图7-1:滤波器系数见附录三Magnitude(dB)andPhaseResponses︵口一加毕一一一么8fln仁︹招P)a\}洲姗一‘口O召Pn︺电J巴}川一!{!}!}】}.臼.耗.乏q_人_引_明)一!一_二:一二d0.05010.1任0口0,25030.35Frequency(MHz)图7-1FIR滤波器的频率和相位特性 第七章数字接收机的方案研究7.3接收机的软件流程图该系统的软件流程图如图7-2:图7-2系统软件流程图 附录附录一平方根的线性汇编程序.text;programmemory.global一IVSP,_ivf;entrylabels.align32;fetchpacketboundarydivf;entryinrts6701library_DIVSP:.cprocargl,arg2;entrytoSPFPdividesubroutine.regxn,two,tmp,ans,Vrcpsparg2,xn;x1=1/arg2[8-bits]extuarg2,1,24,V;exp2=0?zero认vo;LShalfword=0mpysparg2,xn,tmp;tmp=arg2*x1settwo,30,30,two;two=2.0inSPFP(0x4000_0000)subsptwo,tmp,tmp;tmp=2.0一(arg2*XI)mpyspxn,tmp,xn;x2一xl*(2一arg2*xI)[16-bits]mpysparg2,xn,tmp;imp=arg2*x2subsptwo,tmp,tmp;tmp=2.0一(arg2*x2)mpyspxn,tmp,xn;x3=x2*(2-arg2*x2)[32-bits][V]mpyspargl,xn,ans;ans=argl*(1/arg2){xn=l/arg2)[!V]setarg1,0,30,ans二returnexp/mant=allones(divby0).returnans.endproc.text;programmemory.global_SQRSP-sgrtf;entrylabels.align32;fetchpacketboundary_sgrtf;entryinrts6701library_SQRSP.cprocargl;entrytoSPFPsquarerootfunction.regVd2,ans,xn,K15,imp,explclrarg1,31,31,arg1;forcesignbitto+zeroVd2;Vd2=0rsqrspargl,xn;xl=squareroot(1/argl)[g-bits]extuarg1,1,24,expl;getexponent1field=0?[expl]setVd2,23,23,Vd2;Vd2=1inexponentfieldifexp1>0subargl,Vd2,Vd2;Vd2二argl/2mpyspVd2,xn,tmp;tmp=(argl/2)*xlzeroK15;K15=0setK15,22,29,K15;K15=1.5inSPFP(Ox3fcO夕000)mpyspxn,tmp,tmp;imp=[(argl/2)*xl]*xlsubspK15,tmp,tmp;tmp=1.5一[(argl/2)*xl]*x1mpyspxn,tmp,xn;x2=x1*{1.5-(argl/2)*(xl*xl))mpyspVd2,xn,tmp;trop=(argl/2)*x2mpyspxn,tmp,tmp;tmp=[(argl/2)*xl]*x1subspK15,tmp,tmp;tmp!1.5一[(argl/2)*xl]*xlmpyspxn,tmp,xn;x3=x2*毛1.5-(argl/2)*(xl*xl)}[expl]mpyspargl,xn,ans;ans=argl*x3ifexpl>0[!expl]zeroans;ans=0ifexpl=0.returnans.endproc 附录二FIFO数据读取程序丫****冲****冲*****,****冲***幸*******************************//*Fiforead.c*//*ThisprogramusestheHFflagofaFIFOto*//*triggerreads,guaranteeingthattheFIFOis*//*neverblockedforthewriter,givinghigh*//*throughputforthereader(burstsofD/2=128)*//*andguaranteeingthatthethereaderwillnotbe*//*stuckinthetophalfoftheFIFO.*//****s****s*ss************************卒****味**水****幸**中**/#include#include#include#include#defineFIFOADDR0x00400000#defineBUFFADDR0x80000000#defineFIFODEPTH256#defineNUMFRAMES8voidse仁EMIFO;voidse七DMAO;voidse粗intro;interruptvoidcesint06O;interruptvoidc一int080;intfifohalfu11O;intnumframes=NUMFRAMES;intdone=0;voidmain(){set-EMIFO;setintro;setseDMAO;while(!done){//executeusercode}而ntf("DONE1n ");}/*ThisfunctionsetsupceOasASRAM*/voidseteeEMIFO盖/*GetdefaultvaluesforallEMIFregisters*/unsignedintg_ctrl一GETesREG(EMIF_GCTRL);unsignedintce0ctrl一GETesREG(EMIF一EOesCTRL);unsignedintcel_ctrl=GET-REG(EMIFeeCEl_CTRL);unsignedintce2_ctrl=GETseREG(EMIFweCE2_CTRL);unsignedintce3esctrl=GE]二REG(EMIFesCE3一TRL);unsignedintsdram一ctrl=GETREG(EMIF_SDRAMesCTRL);unsignedintsdrameeref=GETesREG(EMIF_SDRAMREF);/*ConfigureCE3asASRAMforFIFOinterface*/LOADFIELD(&ce3ctrl,MTYPEes32ASYNC,MTYPE,MTYPESZ);LOADesFIELD(&ce3ctrl,1,READ一ETUP,READ_SETUP_SZ);LOAD一IELD(&ce3ctrl,4,READ_STROBE,READ_STROBE_SZ); 附录LOAD-FIELD(&ce3esctrl,2,READesHOLD,READesHOLD_SZ);/*StoreEMIFControlRegisters*/emifinit(gctrl,ceO~ctrl,celesctrl,ce2esctrl,ce3ctrl,sdramctrl,sdrameere众}/*setuptheDMA*/voidsetDMAOIunsignedintchannel=0;unsignedintprictrl=GETesREG(DMAO-PRIMARY一CTRL);unsignedintsecctrl=GETesREG(DMAO一ECONDARYreCTRL);unsignedintsrc一addr二0;unsignedintdst一addr一0;unsignedinttransctr=0;dmaresetU;/**SetDMAprimarycontrolregisterforchannel0**/LOADFIELD(&prictrl,DMA一STOP一VAL,START,START一SZ);LOADFIELD(&prictrl,DMAADDR-NO_MOD,SRC_DIR,SRCDIRSZ);LOADFIELD(&priesctrl,DMAADDRINC,DSTesDIR,DSTesDIRSZ);LOADweFIELD(&priesctrl,DMAESIZE32,ESIZE,ESIZEesSZ);SETeeBIT(&prisectrl,PRI);SETesBIT(&pri一ctrl,TCTNT);/**SetDMAsecondarycontrolregisterforchannel0**/LOAD一IELD(&sec一ctrl,DMAC一LOCKCOND,DMACesEN,DMACesENesSZ);SETBIT(&secctrl,BLOCK-IE);/**Setsourceaddressregister**/srcesaddr=FIFO一DDR;/**Setdestinationaddressregister**/dstesaddr二BUFF一ADDR;/**Settransfercounter**/LOAD一IELD(&trans_ctr,FIFOesDEPTH/2,ELEMENTCOUNT,ELEMENTCOUNTSZ);/**SettheDMAregisters**/dmainit(channel,prictrl,sec-ctrl,src一addr,dstaddr.transctr);}/****/*ThisroutineusesthePeripheralSupportLibraryfunctions/*toinitializetheinterruptvectortableandenabletherequired/*interrupts./****/setintro){intr_init();intr_map(CPUINT7,ISNEXTINT7);intr一map(CPUesINT8,ISNseDMAeeINTO);intrwehook(cintO7,CPUesINT7)intrhook(c_int08,CPUINT8)'.INTRGLOBALweENABLE;INTRENABLE(CPUesINT止NMI);INTRENABLE(CPUeeINT?);INTRENABLE(CPUINT8);) 附录/*ThisroutinechecksthecurrentstateoftheFIFO/*bymonitoringtheTINPOpin./*Returns:1ifHFflagissetindicatingtheFIFOishalffull/*0ifHFflagisnotset,indicatinglessthanhalffull.Intfrfoeshalfull(){inthall乙full;hal几full=TINP_GET(0);returnhalffull;}/*Thisinterruptserviceroutineisenteredwhenthehalffull/*flag(ontheExtesInt6pin)changesstatefromlowtohigh,/*thenkicksofaDMAtransferof1/2oftheFIFOdepth.interruptvoidc_int07()/*EXTint6*/{INTR_DISABLE(7);/*Disableinterrupt6,sothatanytoggling*//*oftheHFflagisdisregardeduntiltheDMA*//*transferiscomplete.*/if(num_frames>0){DMASTART(0);/*StartstheDMAtransfer,ifhaven't*//*transferedthedesirednumberofframes.*/}}/*ThisinterruptserviceroutineisenteredwhentheDMABlockCond/*isset,indicatingthattheDMAtransferhascompleted.This/*routinewillcheckthecurrentstateoftheFIFO.IftheFIFOis/*stillhalffull,itwillstartanotherDMAtransfer,sincealowto/*hightransitionwillnotbeabletooccuronExt-Int6(sinceHFis/*alreadyhigh).ThistechniquepreventstheFIFOfrombecomingstuck/*halffull./***呻interruptvoidc一nt08()/*DMAInterrupt*/{inthall上full;numframes--;/*Decrementframecounter*/RESETBIT(DMASECONDARYesCTRLesADDR(0),BLOCK-COND);*(unsignedint*)DMAeeXFR-COUNTERADDR(0)=FIFO一DEPTH/2;/*CheckthestateoftheFIFO*/halffull=fifo少alfull();if(二_frames>0)笼if(halffull)DMASTART(0);/*StarttheDMAiftheFIFOis*//*stillhalffull,andallthe*//*frameshavenotalreadybeen*/else/*read,otherwise,*/INTRENABLE(7);l*enableinterrupt6,todetect*I/*thenextrisingedgeofHF*/}elsedone=1;) 附录三FIR滤波器系数%%GeneratedbyMATLAB(R)7.0andtheSignalProcessingToolbox6.2.%%Generatedon:15-Feb-200516:21:26%Discrete-TimeFIRFilter(real)FilterStructure:Direct-FormFIRFilterOrder:134Stable:YesLinearPhase:Yes(Type1)Numerator:0.0246131827980290.016050049627377-0.060557114455481-0.0419149412713730.0753557688459200.051487786979182-0.063180046248597-0.0410468060112230.0278585051036880.0146800070007490.0183217546042370.017318918607678-0.058900796238671-0.0424691086342980.0791274929648790.050941327735035-0.071281777700875-0.0393962927908720.0375477480981680.0123315876988460.0105553718297430.019654887240972-0.056084876522113-0.0439961326505290.0826283805654220.051038836836348-0.080145687203497-0.0378290775420090.0486507320045680.0093467553199450.0015067935711770.023362272356456-0.052988698303101-0.0474512085475650.0874122751427290.053250221908757-0.091771644665561-0.0380635689101840.0631349799916690.007343684410872-0.0100845618772280.027280133855480-0.049781638597531-0.0524108202881060.0956252580180850.058017497998855-0.110362596002410-0.0413417223054980.0865915112647270.008112122442954-0.0296106289911340.029454928204917-0.043893078165168-0.0571834557105430.1113359728896250.064275272462632-0.151818384891880-0.0474384489859250.1542401015503560.012282989140440-0.1246094642822410.0285800097916650.086790194983683-0.0601114611536560.9302189748590000.0703981277351370.086790194983683-0.055106610753268-0.1246094642822410.0192177166337870.154240101550356 附录-0.151818384891880-0.0601114611536560.1113359728896250.028580009791665-0.0438930781651680.012282989140440-0.029610628991134-0.0474384489859250.0865915112647270.064275272462632-0.110362596002410-0.0571834557105430.0956252580180850.029454928204917-0.0497816385975310.008112122442954-0.010084561877228-0.0413417223054980.0631349799916690.058017497998855-0.091771644665561-0.0524108202881060.0874122751427290.027280133855480-0.0529886983031010.0073436844108720.001506793571177-0.0380635689101840.0486507320045680.053250221908757-0.080145687203497-0.0474512085475650.0826283805654220.023362272356456-0.0560848765221130.0093467553199450.010555371829743-0.0378290775420090.0375477480981680.051038836836348-0.071281777700875-0.0439961326505290.0791274929648790.019654887240972-0.0589007962386710刀123315876988460.018321754604237-0.0393962927908720.0278585051036880.050941327735035-0.063180046248597-0.0424691086342980.0753557688459200.017318918607678-0.0605571144554810.0146800070007490.024613182798029-0.0410468060112230.0192177166337870.051487786979182-0.055106610753268-0.0419149412713730.0703981277351370.016050049627377 参考文献参考文献[1]L.R.RabinerandR.E.Crochiere,Anovelimplementationfornarrow-bandFIRdigitalfilters,IEEETrans.Acoust.,1975,vol.ASSP-23[2]MitolaJ.,Thesoftwareradioarchitecture,IEEECommunicationMagazine,1995[3]HSP50214Datasheet,HarrisSemiconductor,1997[4]AD6644Datasheet,AnalogDevicesIncorporated,2000[5]TMS320C6000PeripheralsReferenceGuide,TexasInstrumentsIncorporated,2001[6]TMS320C6000Programmer'sGuide,TexasInstrumentsIncorporated,2001[7]TMS320C6000OptimizingC/C++CompilerUser'sGuide,TexasInstrumentsIncorporated,2001[8]JamesTsui,宽带数字接收机(杨小牛等译),北京:电子工业出版社,2002李方惠,王飞,何佩瑕,TMS320C6000系列DSPs原理与应用(第2版),北京:电子工业出版社,2003[9]杨小牛,楼才义,徐建良,软件无线电原理与应用,北京:电子工业出版社,2001[10]宗孔德,多抽样率信号处理,北京:清华大学出版社,1996[11]刘书明,高性能模数与数模转换器件,西安:西安电子科技大学出版社,2000[12]丁玉美,高西全,彭学愚,数字信号处理,西安:西安电子科技大学出版社,1997[13]曹志刚,钱亚生,现代通信原理,北京:清华大学出版社,1997[14]沈兰荪,高速数据采集系统的原理与应用,北京:人民邮电出版社,1995[15』苏涛,吴顺君,寥晓群,高性能数字信号处理器与高速实时信号处理,西安:西安电子科技大学出版社,1999 发表论文和参加科研情况发表论文和参加科研情况研究生期间发表论文:基于TMS320C6201/6701的硬件平台设计,北京:电子测量技术,2005年第1期。2003年7月至今从事基于软件无线电的数字接收机的方案研究课题,完成了硬件电路设计和软件实现,达到了预期目的。 致谢致谢本论文的所有工作都是在我导师安振庄副教授的亲切关怀和悉心指导下完成的。在论文期间,安老师对我的耐心教诲和严格要求,让我终身受益匪浅。先生不仅在学术上给我诸多教导,在生活上也给我很多关怀和帮助。他深厚的专业知识,严谨的治学态度,不断进取的科研精神和平易近人的长者风范,始终是我学习的榜样,在这里,我对安老师几年来对我的殷勤培育表示衷心的感谢1在这两年的学习生活期间,陈宏微、刘进辉、解岩和金涛同学在各方面给予了我大力支持和帮助,谢谢你们。在此对所有支持和帮助过我的老师和同学表示衷心的谢意!此外,要感谢我的父母,没有你们默默无闻的支持,就没有我的今天。最后,感谢我的女朋友王平,感谢你这么长时间对我生活上的关心和体贴n没有你,就没有我的明天。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭