还剩62页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
TianjinUniversityofTechnologyandEducation天津工程师范学院本科生毕业设计无线调频发射器的设计TheDesignofWirelessFrequencyModulationTransmitter摘要利用无线通信信道的远距离语音传输业务,是近年来发展很快的一门技术由于语音业务对误码不敏感,可以采用调频方式发送信息调频发射器可以使音频信息传送到附近的任意FM接收机本设计中使用AT89S52控制调频发射的频率,选择了数码管显示发射的频率状态选择了ROHMBH1415F集成电路产生调频调制发射信号的频率芯片的主要特征:体积小,准确性高,而且容易产生发射频率这个系统的各个部分可以进行深入的独立设计研究,现在把它们组合成一个典型的调频发射系统本设计使用模拟调频技术,在88MHz--98MHz的频段上,实现了线路输入语音信号的小功率远距离单工发送系统发射功率大约20mW,发射距离大于20m,本系统可实现无明显失真的语音传输关键词调频;语音传输;ROHMBH1415ABSTRACTTheremoteaudioservicecodethroughwirelesscommunicationchannelsisafastdevelopingtechnologyinrecentyears.Astheaudioservicecodeisnotsensitivetothemistakencodethefrequencymodulationcanbeusedtosendinformation.TheFMTransmitterwillallowalmostanyaudiosourcetobetransmittedtoanynearbyFMreceiver.TheAT89S52tobeusedtocontrolthetransmissionfrequency.TheLEDwaschosenprovidingenoughspaceforalloutputsituations.TheROHMBH1415Fintegratedcircuitwaschosentocreatethefrequencymodulatedaudiooutputsignal.Chipfeaturesinclude:smallsizeaccuracyandeasilyprogrammedtransmissionfrequency.ThesesystemcomponentshavebeenthoroughlyresearchedseparatelyandarenowintheprocessofbeingintegratedtoproduceaworkingprototypeFMTransmitter.Thesimulatingfrequencymodulationtechniquewasadoptedinthedesign.Inthefrequencyintervalof88MHz---98MHztheaudiosignalscanbesentoutandreceivedwiththesmallpowerinalongdistance.Theemissivepowerofthesystemisabout20mWandtheemissivedistanceismorethan20m.Thereisnoobviousdistortionintheaudiotransmission.KeyWords frequencymodulation;audiotransmission;ROHMBH1415F目录TOC\o1-4\u1引言
11.1通信的发展
11.2广播的发展现状
11.3设计思路22系统概述
32.1系统功能要求
32.2系统组成33方案论证与比较
53.1无线调频发射电路设计方案论证与选择
53.2压控振荡器方案论证与选择64系统硬件电路的设计
74.1单片机控制电路
74.
1.1内部结构
74.
1.2引脚功能
94.2调频调制发射电路
114.
2.1调频调制电路的特点
114.
2.2结构图
114.
2.3允许的最大值
124.
2.4工作范围
124.
2.5调频调制发射电路的组成
124.3键盘部分
144.
3.1单片机键盘和键盘接口概述
144.
3.2单片机键盘接口和键功能的实现
154.4LC振荡电路
164.5调频放大电路
174.6电源模块设计
174.
6.1单元电源电路设计
174.
6.2直流稳压电源的检测175系统程序的设计
185.1主程序
185.2延时子程序
195.3LED动态扫描子程序
195.4频率数据转换子程序
195.5控制命令合成子程序
195.6BH1415F字节写入子程序
205.7查键子程序216系统调试及性能分析
236.1硬件调试
236.2软件调试
236.3发射频率的调试
236.4性能分析23结论24参考文献25附录1原理图26附录2程序源代码28附录3英文原文41附录4中文译文52致谢591引言
1.1通信的发展人类社会的发展可视为一部信息传播技术的发展史从古代的烽火到近代的旗语,都是人们寻求快速远距离通信的手段直到19世纪电磁学的理论与实践已有坚实的基础后,人们开始寻求用电磁能量传送信息的方法信息传播促进社会进步和科学技术的发展;科学技术的进步又不断地改进、更新人类信息传播的媒体和工具,并促进信息更迅速、更广泛的传播面向21世纪的无线通信,无线通信的系统组成、信道特性、调制与编码、接入技术、网络技术、抗衰落与抗干扰技术以及无线通信的新技术和新应用的发展更是一日千里
1.2广播的发展现状在21世纪的今天,广播的主要技术方式是调频广播,它是继调幅广播20世纪20年代开始的的第二代广播,它开始于20世纪50年代,克服了中波广播的很多致命不足,如串台严重、频带不够分配,信噪比差等,而实现了高保真度、动态范围宽、信噪比较好、较少串台现象调频广播因其优秀的音质和抗干扰性能而成为城市广播覆盖的主要手段随着城市规模的日益扩展,调频发射台的功率也跟着成数量级地增大,由原来的100W、300W上升到1KW、3KW、甚至10KW,而发射天线的高度也由几十米上升到百余米甚至三四百米随之逐步形成了高塔大功率覆盖的格局从广播业界的角度来看,高塔大功率覆盖模式的主要优点是建设方便,省事省力,见效快但其固有缺点和带来的负面影响也是不容忽视的,主要有以下几点因调频广播工作于米波段,极易因高大建筑物和其他物体反射形成多径干扰;因高山和低谷等地形因素会产生收不到信号的阴影区;大区制覆盖因频率不能复用造成规划困难;频谱利用率低;不能解决长距离交通线的连续覆盖问题从社会发展的角度来看,它还有更重要的三条缺点浪费能源,覆盖区场强不均匀度可达60dB,大量超出需要的无效辐射,形成能源的巨大浪费;污染环境,大功率FM发射台在天线附近周边地区辐射场强超过环境电磁波卫生标准已是不争的事实;对航空无线电业务造成干扰由于相关的国家标准和国家军用标准及频率规划多是10年以前制定的,那时寻呼业和调频广播刚起步不久,对干扰的认识还远不充分,已不适应当今电磁环境现状当时规定的17dB的防护率早已被突破,10KM的防护间距也已形同虚设在世界各国,频率资源是有限的国家已严格限制频率的使用范围广播频率是政府部门颁发的,现在很多公司、媒体都愿意斥巨资竞标频谱使用权无线广播中,单一载频用来传输单一的或者单套立体声节目由于传统的大功率的调频广播频率资源的限制,使广播技术工作者开辟了另一种广播技术形式小调频同步广播,它的特点是多布点、小功率、同频、同相、同步广播,使用的是现有的调频技术,不过存在着多点同步问题,这在技术上是可以克服的信号传输可使用微波、有线甚至卫星方式由于采用小功率按需布点的方法,在满足覆盖需要的前提下,把单台发射机的功率大幅度降了下来,降到10W、50W、最大不超过300W,这就使诸多问题迎刃而解对于多径干扰,由于功率小了,大部分反射波场强下降到不至于产生干涉的水平,并且由于布点多,部分多径干扰区可能被互相掩盖;可以用同步补点的办法消除阴影区;小功率辐射易于规划,且提高频谱利用率;可方便组成单频网,满足交通线上的无缝覆盖,保证驾乘人员的不间断接收;场强不均匀度仅为30dB,加上使用低高度垂直极化天线,极大地减小对空辐射和根部近场辐射,既节约能源,又满足电磁环境卫生标准,并可避免造成对航空频段的干扰
1.3设计思路任何一个地区、一个城市都需要有很多专业的服务及新闻宣传,如交通信息咨询、健康咨询、股市信息咨询等,广播又是大众最灵活的信息接受媒体,这需要建立很多的广播电台,而作为一个国家的频率资源是严格控制和有限的,因此,小调频广播就成了未来广播的另一种主要形式,它是广播发展的其中一个方向,是数字音频广播DAB、网络广播的有力补充,既节约了频谱资源,又实现了广播功能为了实现上述要求,本文作者采用单片机AT89S52和调频专用发射芯片BH1415F及数码显示设计了一套完整的无线调频发射系统,设计为可在88MHz--98MHz范围内任意设置发射频率,并且可以预置频道,发射频率通过单片机控制最小调整值为
0.1MHz,具有单声道/立体声控制,实现了语音信息的短距离无线传输,可广泛应用于学校无线广播、电视现场导播、汽车航行、无线演说等场所2系统概述
2.1系统功能要求设计一个无线调频发射系统实现语音信号的短距离传输由于语音业务对误码不敏感,可以采用调频方式发送信息,设计中采用了BH1415F构成音频无线发射电路无线调频发射器可以在88--98MHz范围内任意设置发射频率,可以预置发射频道,发射频率的最小调整值为
0.1MHz,具有单声道/立体声控制,发射距离在20--50米之间语音信号采用调频方式与调幅相比,有利于改善输出音频信号的信噪比,以保证语音业务的可靠传输,下表是调幅和调频的优缺点比较表2-1调幅和调频优缺点比较调幅(AM)调频(FM)优点传播距离远,覆盖面大电路相对简单
1.传送音频频带较宽(100Hz—5KHz)适宜于高保真音乐广播
2.抗干扰性强,内设限幅器除去幅度干扰
3.应用范围广,用于多种信息传递
4.可实现立体声广播缺点
1.传送音频频带窄(200Hz—2500Hz),高音缺乏
2.传播中易受干扰,噪声大传播衰减大,覆盖范围小
2.2系统组成本设计由单片机、键盘、数码显示、调频发射、调频放大和电源模块等六部分组成,系统框图如图2-1所示通过操作键盘可以设置和更改发射的频率;单片机用于控制数码管显示对应的发射频率和发送频率信号到调频调制电路中;调频发射将输入的音频信号调制后通过载波发送出去;数码管用于显示发射的频率;调频放大将得到的调制信号进行放大;电源模块则为整个电路提供电源3方案论证与比较
3.1无线调频发射电路设计方案论证与选择方案1采用单片调频发射集成电路组成芯片MC2833它可构成发射高频率信号的功率放大器电路由音频放大器、可变电抗器、射频振荡器、输出缓冲器以及放大电路构成由集成芯片MC2833组成的调频发射机,先将语音通过话筒变成音频电压信号送给音频放大器进行音频电压放大,此音频电压信号经耦合电容送给可变电抗的输入端脚3去控制可变电抗,而由可变电抗以及电感、晶体与高频振荡器组成调频振荡电路,产生调频波经缓冲送给两级二倍频放大器电路实现基本框图如图3-1所示但由于该芯片涉及到的谐振回路较多,不易统调,因而频率不易控制,导致信号不稳定,容易跑台,实现较为困难方案2采用集成芯片BA1404及相关电路构成它主要由前置音频放大器,立体声调制器,FM调制器及射频放大器组成利用内部参考电压改变变容二极管的电容值,可实现发射频率的调整图3-2所示为电路框图此电路可实现立体声调频发射,典型调频频段为75-108MHz,振荡频率不易调整,尤其是低端频率实现困难,难以实现要求频段的调整方案3采用集成芯片BH1415F及相关电路构成BH1415F是将预加重电路、限幅电路、低通滤波电路(LPF)一体化,使音频信号的质量比分立元件的电路(如BA
1404、NJM2035等)有很大改进此电路可实现立体声调频发射,采用了MCU数据直接频率设定,可设定70-120MHz频率,由于采用了锁相环锁频并与调频发射电路一体化,使发射的频率非常稳定,并且可靠性好,抗干扰能力强,容易实现调频的要求综上所述,为了实现中心频率的控制和系统设计的功能要求,本设计选择方案3,即采用集成芯片BH1415F及相关电路构成音频无线发射电路
3.2压控振荡器方案论证与选择方案1采用分立元件构成利用低噪声场效应管,用单个变容二极管直接接入振荡回路作为压控器件图3-3压控振荡电路电路是电容三点式振荡器,如图3-3所示该方法实现简单,但是调试困难,而且输出频率不易灵活控制
[5]方案2采用压控振荡器和变容二极管,及一个LC谐振回路构成变容二极管压控振荡器只需要调节变容二极管两端的电压,便可改变压控振荡的输出频率由于采用了集成芯片,电路设计简单,系统可靠性高,并且利用锁相环频率合成技术可以使输出频率稳定度进一步提高综上所述,方案2具有更优良的特性和更简单的电路构成,所以使用方案2作为本次设计的方案4系统硬件电路的设计
4.1单片机控制电路系统采用的微控制器是ATMEL公司生产的低功耗、高性能单片机AT89S52,它有32个外部双向输入/输出(I/O)端口,片内含8kbytes的可重复编程的Flash存储器和256bytes的随机存取数据存储器(RAM),3个16位可编程定时计数器,1个全双工串行通信口,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统AT89S52可以按照常规方法进行编程,也可以在线编程其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本
4.
1.1内部结构AT89S52单片机包含中央处理器、程序存储器ROM、数据存储器RAM、定时器/计数器、并行I/O口、串行I/O口和中断系统等几大单元以及数据总线、地址总线和控制总线三大总线构成图4-1为单片机内部结构框图
[13]1中央处理器中央处理器CPU是整个单片机的核心部件,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作2程序存储器AT89S52共有8KB个E2PROM,用于存放用户程序,原始数据或表格3数据存储器(RAM)AT89S52内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表图4-1内部结构框图4并行输入输出口AT89S52共有4组8位I/O口P
0、P
1、P2或P3,用于对外部数据的传输5串行输入输出口AT89S52内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用6定时/计数器AT89S52有三个16位的可编程定时/计数器,以实现定时或计数功能,并以其定时或计数结果对单片机进行控制7中断系统AT89S52具备较完善的中断功能,有两个外中断、三个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有两级的优先级别选择
4.
1.2引脚功能图4-2AT89S52芯片引脚图1电源和晶振VCC供电电压GND接地XTAL1反向振荡放大器的输入及内部时钟工作电路的输入XTAL2来自反向振荡器的输出2I/O口
①P0口P0口的字节地址为80H,位地址为80H~87HP0口既可以作为通用I/O口使用,也可以作为单片机系统的地址/数据线使用当作为输出口使用时,由于输出电路是漏极开路,必须外接上拉电阻才能有高电平输出
②P1口P1口的字节地址为90H,位地址为90H~97HP1口只能作为通用I/O口使用当作为输出口使用时,已能对外提供推拉电流负载,外电路无需再接上拉电阻;当作为输入口使用时,应先向其锁存器写入“1”,使输出驱动电路的FET截止
③P2口P2口的字节地址为0A0H,位地址为0A0H~0A7HP2口用于为系统提供高位地址,但只作为地址线使用而不作为数据线使用此外,P2口也可作为通用I/O口使用
④P3口P3口的字节地址为0B0H,位地址为0B0H~0B7HP3口可以作为通用I/O口使用,但在实际应用中它的第二功能信号更为重要P3口引脚的第二功能,如下所示P
3.0RXD(串行输入口)P
3.1TXD(串行输出口)P
3.2/INT0(外部中断0)P
3.3/INT1(外部中断1)P
3.4T0(计时器0外部输入)P
3.5T1(计时器1外部输入)P
3.6/WR(外部数据存储器写选通)P
3.7/RD(外部数据存储器读选通)34根控制线
①RST复位信号保持RST脚两个机器周期以上的高电平,就可以完成CPU系统复位操作,使系统的一些单元内容回到规定值
②/PSEN外部程序存储器读选通信号在读外部ROM时,/PSEN有效(低电平),以实现外部ROM单元的读操作
③/EA/VPP访问程序存储器控制信号当/EA信号为低电平时,对ROM的读操作限定在外部程序存储器;而当/EA为高电平时,则对ROM的读操作是从内部程序存储器开始,并可延续至外部程序存储器
④ALE/PROG地址锁存控制信号在系统扩展时,ALE用于控制P0口输出的低8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送此外由于ALE是以六分之一晶振频率的固定频率输出的正脉冲,因此也可作为外部时钟或外部定时脉冲使用
4.2调频调制发射电路本系统调频调制发射部分电路采用了ROHM公司的调频发射专用集成电路BH1415FBH1415F是一种无线音频传输集成电路,它可以将计算机声卡、游戏机、CD、DVD、MP
3、调音台等立体声音频信号进行立体声调制发射传输,配合普通的调频立体声接收机就可实现无线调频立体声传送适合用于生产立体声的无线音箱、无线耳机、CD、MP
3、DVD、PAD、笔记本计算机等的无线音频适配器开发生产这个集成电路是由提高信噪比(S/N)的预加重电路、防止信号过调的限幅电路、控制输入信号频率的低通滤波电路(LPF)、产生立体声复合信号的立体声调制电路、调频发射的锁相环电路(PLL)组成
4.
2.1调频调制电路的特点
(1)将预加重电路、限幅电路、低通滤波电路(LPF)一体化,使音频信号的质量比分立元件的电路(如BA
1404、NJM2035等)有很大改进
(2)导频方式的立体声调制电路
(3)采用了锁相环锁频并与调频发射电路一体化,合发射的频率非常稳定
(4)采用了MCU数据直接频率设定,可设定70-120MHz频率,使用上非常方便
4.
2.2结构图图4-3BH1415F内部结构图
4.
2.3允许的最大值表4-1BH1415F工作时允许的最大值(Ta=25℃基本电路测量)项目符号范围单位条件电源电压Vcc+7vVPin
8、12输入电压VIN-D-
0.3~Vcc+
0.3VPin
15、
16、
17、18相位比较器输出电压VOUT-D-
0.3~Vcc+
0.3VPin7功率Pd450mW工作温度范围Tstg-55~+125℃
4.
2.4工作范围表4-2BH1415F工作范围(Ta=25℃)项目符号数值单位条件工作电源电压Vcc
4.0~
6.0VPin
8、12工作温度Topr-40~85℃音频输入电平VIN-A~-10dBVPin
1、22音频输入频率fIN-A20~15KHzPin
1、22预加重延时τPRE~155μsecPin
2、21发射频率fTX
87.7~
107.9MHzPin
9、11高电平电压标准(H)VIH
0.8Vcc~VccVPin
15、
16、
17、18低电平电压标准(L)VILGND~
0.2VccVPin
15、
16、
17、
184.
2.5调频调制发射电路的组成
(1)预加重电路预加重电路是一个非线性的音频放大器,它的内部工作点为1/2Vcc,因为它是非线性放大器,所以输入阻抗取决为内部电阻R3=43KΩ,预加重时间取决于内部电阻R2=
22.7K和外部电容C1=2200p
(2)限幅电路限幅电路是由二极管限幅的反相放大器组成,它的内部工作点为1/2Vcc图4-4限幅电路
(3)低通滤波电路低通滤波电路是由二阶低通反馈放大电路组成,它的分频点为15KHz图4-5低通滤波电路具体的公式如下Q=
0.
577、ω0=
1.
274、fc=15KHzR1=R2=R3=Rf=100KΩ(4-1)Cf=1/ω0Rf=1/(2πX
1.274X15KX100K)=
83.28pF(4-2)C1=3QCf=3X
0.577X
83.28pF=144pF≈150pF(4-3)C2=Cf/3Q=
83.28p/3X
0.577=48≈50pF(4-4)
(4)立体声调制电路音频信号从第1脚和第22脚输入后通过预加重电路、限幅电路和低通滤波电路后送到混合器(MPX)中,另外由第
13、14脚接入
7.6MHz晶体的振荡电路通过200分频后产生的38KHz副载波信号,同时38KHz副载波通2分频产生的19KHz导频信号音频信号和38KHz的副载波信号被多路复合器进行了平衡调制,产生了一个主信号(L+R)和一个通过DSB调制的38KHz副载波信号(L-R),并与19KHz导频信号组成复合信号从第5脚输出
(5)FM发射电路FM发射电路采用稳定频率的锁相环系统这一部分由高频振荡器、高频放大器及锁相环频率合成器组成调频调制由变容二极管组成的高频振荡器实现,高频振荡器是一个锁相环的VCO,立体声复合信号通过它直接进行调频调制高频振荡器是由第9脚外部的LC回路与内部电路组成,振荡信号经过高频放大器从11脚输出,同时输送到锁相环电路进行比较后从第7脚输出一个信号对高频振荡器的值进行修正,确保频率稳定如果频率超过锁相环设定的频率,第7脚将输出的电平变高;如果是低于设定频率,它将输出的电平变低;相同的时候,它的电平将不变
4.3键盘部分
4.
3.1单片机键盘和键盘接口概述单片机使用的键盘可分为独立式和矩阵式两种独立式实际上就是一组相互独立的按键,这些按键可直接与单片机的I/O接口连接,其方法是每个按键独占一条口线,接口简单
[12]矩阵式键盘也称行列式键盘,因为键的数目较多,所以键按行列组成矩阵(如图4-6所示)图4-6键盘接口电路图按一个键到键的功能被执行主要应包括两项工作一是键的识别,即在键盘中找出被按的是哪个键,通过接口电路来实现;另一项是键功能的实现,通过执行中断服务程序来完成下面来介绍键盘接口问题
[13]具体来说,键盘接口应完成以下操作功能a键盘扫描,以判定是否有键被按下(称之为“闭合键”)b键识别,以确定闭合键的行列位置c产生闭合键的键码d排除多键、串键(复按)及去抖动这些内容通常是以软硬件结合的方式来完成的,即在软件的配合下由接口电路来完成但具体那些由硬件完成由软件完成,要看接口电路的情况总的原则是,硬件复杂软件就简单,硬件简单软件就得复杂一些
4.
3.2单片机键盘接口和键功能的实现
(1)键盘接口处理内容
①键扫描键盘上的键按行列组成矩阵,在行列的交点上都对应有一个键为判定有无键按下(闭合键)以及被按键的位置,可使用两种方法扫描法和翻转法,其中扫描法使用较为普遍
②去抖动当扫描表明有键被按下之后,紧接着应进行去抖动处理因为常用键盘的键实际上就是一个机械开关结构,被按下时,由于机械接触点的弹性及电压突跳等原因,在触点闭合或断开的瞬间会出现电压抖动,如图4-7所示抖动时间长短与键的机械特性有关,一般为5~10ms而键的稳定闭合时间和操作者按键动作有关,大约为十分之几到几秒不等图4-7键闭合和断开时的电压抖动
③键码计算被按键确定下来之后,接下来的工作是计算闭合键的键码,因为有了键码,才能通过散转指令把程序执行转到闭合键所对应的中断服务程序上去也可以直接使用该闭合键的行列值组合产生键码,但这样做会使各子程序的入口地址比较散乱,给JMP指令的使用带来不便所以通常都是以键的排列顺序安排键号,这样安排,使键码既可以根据行号列号以查表求得,也可以通过计算得到若各行的首号依次是00H,04H,08H,0CH若列号按0~3顺序,则键码的计算公式为键码=行首号+列号
④等待键释放计算键码之后,再以延时后进行扫描的方法等待键释放等待键释放是为了保证键的一次闭合仅进行一次处理综上所述,键盘接口处理的核心内容是测试有无闭合键,对闭合键进行去抖动处理,求得闭合键的键码为了使键盘操作更稳定可靠,还可以加一些附加功能例如屏蔽功能在对一个闭合键已进行处理时,再按下其它键不会产生影响;对于一个键,不管按下多长时间,仅执行一次键处理子程序等
(2)键盘接口的控制方式在单片机的运行过程中,何时执行键盘扫描和处理,可有以下3种情况
①随机方式,每当CPU空闲时执行键盘扫描程序
②中断方式,每当有键闭合时才向CPU发出中断请求,中断响应后执行键盘扫描程序
③定时方式,每隔一定时间执行一次键盘扫描程序,定时可由单片机定时器完成
(3)键处理子程序在计算机中每一个键都对应一个处理子程序,得到闭合键的键码后,就可以根据键码,转相应的键处理子程序(分支是使用JMP等散转指令实现的),进行字符、数据的输入或命令的处理,这样就可以实现相应键所设定的功能
[14]
4.4LC振荡电路LC振荡器起振条件相位平衡条件Xce和Xbe必需为同性质的电抗,Xcb必需为异性质的电抗,且它们之间满足下列关系(4-5)即(4-6)幅度起振条件(4-7)式中——晶体管的跨导,——反馈系数,AU——放大器的增益,——晶体管的输入电导,——晶体管的输出电导,——晶体管的等效负载电导,一般在
0.1~
0.5之间取值
4.5调频放大电路调频放大电路部分采用UPC1651对调制信号进行放大
4.6电源模块设计
4.
6.1单元电源电路设计为了能够让单片机和调频发射部分更好,更稳定地工作,采用了图4-8所示单元电源电路,由电源变压器、桥堆和滤波电容器所组成电源变压器的初级电压输入为220V,次级输出电压为12V
[15]
[16]由于单片机所需的是+5V电源,经滤波电容和三端稳压集成电路MC7812后可得到+12V电压,MC7812能将15V~25V的直流电压变换成12V的稳定电压,在12V的电压中含有少量的低频成分和接收外界的高频成分,再经后一级滤波后送三端稳压集成电路7805,7805能将大于7V~15V的直流电压变换成5V的稳定电压同时由于电流较大导致三端稳压集成电路MC7812和7805过热,为了确保电路工作正常,给两个芯片分别加上散热片图4-8电源电路图
4.
6.2直流稳压电源的检测本系统对电源要求高,因为稳定性和可靠性在发射电路重要意义为了提高稳定性,所以采用如图4-8的稳压电源,电源电路的主要部件采用集成的三端稳压器件如7812与7805,稳压电源输入电压范围宽,输出电压稳定,抗干扰能力强,以满足调频发射机的要求
[12]数字万用表对稳压电源的测试结果表4-3稳压电源的测试结果输入级(原)滤波稳压输出输出级+12V直流稳压电源220V
11.99V
4.99V5系统程序的设计
5.1主程序首先,进行整个程序的初始化及清屏,开机时先显示一下“
088.0”,预制发射频率为88MHz,送入BH1415F,然后进入查键和显示函数的循环当有按键按下时,程序判断是哪个键被按下,然后执行相应的按键功能,并调用数码显示,显示所设置的发射频率;当没有键按下时,返回键盘扫描,再判断是否有键被按下本次程序设计的整体流程图,如图5-1所示
5.2延时子程序延时函数在本系统中主要用于1ms的显示延时和10ms的按键消抖
5.3LED动态扫描子程序扫描函数使用单片机的两个端口,一个端口用于输出段码,一个端口用于行扫描,以实现LED的动态显示扫描函数执行一次约为4ms,在第二位LED显示时点亮小数点其程序流程图如图5-2所示
5.4频率数据转换子程序将频率数据由十进制BCD码转为十六进制数
5.5控制命令合成子程序BH1415F的频率控制字为两个字节(如图5—3所示)两个字节中低11位(D0—D10)为频率数据,其值乘以
0.1即为BH1415F的输出频率(单位为MHz)高5位(D0—D15)为控制位其中D11(MONO)位单声道/立体声控制位,该位为0时表示单声道发射模式,该位为1时表示立体声发射模式D12(PD0)、D13(PD1)位用于相位控制,通常为0,当分别为01和10时可使发射频率在最低和最高处D14(T0)和D15(T1)用于测试模式控制,通常为00,当为10时为测试模式合成时将控制命令(5位)与数据的最高3位合成一个字节图5-3BH1415F的频率控制字及传送格式
5.6BH1415F字节写入子程序按照BH1415F字节传送要求,按低位先送、低字节先送的原则传送的延时应精确,程序流程图如图5-
4、5-5所示
5.7查键子程序系统采用4×4行列式键盘键盘部分应实现如下功能首先,对键盘进行扫描,判断是否有键被按下如果没有,则转回键盘扫描,看下次是否有键被按下;如果有键被按下,则先对键进行去抖动,然后算出是哪个键被按下,再延时等待键释放因为每一个键都对应一个处理子程序,得到闭合键的键码后,就可以根据键码,转相应的键处理子程序(分支是使用JMP等散转指令实现的),进行字符、数据的输入或命令的处理这样就可以实现该键所设定的功能根据上述说明,画出本次程序设计的键处理流程图,如图5-6所示6系统调试及性能分析
6.1硬件调试硬件调试时先检查电路板的焊接情况,在检查无误后可以通电检查实际制作中可结合示波器对晶振及P
0、P
1、P2口的波形情况进行综合硬件测试分析
6.2软件调试软件调试使用伟福编译软件,源程序编译及仿真调试应分段或以子程序为单位一个一个进行,最后可以结合硬件实时运行调试
6.3发射频率的调试调通程序及硬件的情况下,在BH1415F的11脚接上一段电线作为发射天线,在室内可以收到调频广播如果调不出频率,或者出了频率但不由单片机控制,该类问题主要是压控调试不对,没有锁相在LC振荡电路中,把振荡产生的信号接入示波器,观察示波器,调节中周的磁芯改变L的值使示波器的频率读数达到93MHz左右先测试变容二极管上的电压,频率越高,电压越高,调节电感匝距,使得频率设置在98MHz时,电压接近Vcc,频率设置在88MHz时,电压接近0V当发现频率的最高端达不到98MHz时应减小振荡电感(减小匝数);而在低端的频率达不到要求时,要增加线圈匝数在调试中选用MC1648做压控振荡,虽然频率达到了设计要求,但是干扰特别明显,导致接收到的音频信号质量下降考虑发射信号的音质很重要,不采用MC1648,直接使用LC振荡电路LC振荡电路的调试过程中需要多次更换电容和电感线圈,调整振荡电路使BH1415F可以振荡如果调试中频率覆盖范围没有达到预期的效果,一个原因是变容二极管变容范围不够大;也有可能LC振荡电路调整的不完善振荡电感调好后用胶封住,防止发射器工作时由于振动而产生频率漂移
6.4性能分析用BH1415F设计的小功率调频发射器不仅设计简单,而且频率设定灵活,可有效地避开当地的调频电台,可应用于室内广播、电视伴音转发等小范围的无线调频转播结论此次设计将应用于无线通信领域,并且针对当前市场上短距离无线产品的不足进行了改进测试结果表明,设计要求的各项指标均可以基本实现,尽管发射的带宽没有到达预计的结果,原因是变容二极管的变容范围不够大要得到稳定度高的发射频率应采用锁相环技术,来降低中心频率的漂移此外,语音信号采用调频方式与调幅相比,有利于改善输出音频信号的信噪比,以保证语音业务的可靠传输无线调频发射系统应用了大量的高频电子线路技术,尤其是其中的高频信号处理设计电路要有电路调试的环境,受实际调试环境的影响教大,调试具有较大难度在电路的设计制作中,一定要遵循高频布线规则,并且可以在焊接电路的过程中适当接入退耦电容,有效的滤除杂波信号的干扰通过方案论证、资料查询及电路设计和反复调试,不断的解决电路调试过程中的问题,最终在规定的时间内完成了设计任务本设计由于水平有限,电路及程序设计还有需要改进的地方,在今后的学习和研究中,将继续改进完善另外在调试过程中,以保证作品实现功能准确为前提,尽量做到电路简单、美观,效果好成本低,以增强其实用价值参考文献
[1]李广第,朱月秀等.单片机基础.北京:北京航空航天大学出版社
2001.
[2]何立民.单片机高级教程-应用与设计.北京:北京航空航天大学出版社
2000.
[3]沈德金等.MCS-51系列单片机接口电路与应用程序实例.北京北京航空航天大学出版社
1990.
[4]李光飞,李良儿等.单片机课程设计实例指导.北京北京航空航天大学出版社
2004.
[5]铃木宪次.高频电路的设计与制作.科学出版社,
2005.
[6]张洪润,蓝清华等.单片机应用技术教程.北京:清华大学出版社
1997.
[7]李华.MCS-51系列单片机实用接口技术.北京:北京航空航天大学出版社
1993.
[8]全国大学生电子设计竞赛组委会.第五届全国大学生电子设计竞赛获奖作品选编第1版,北京理工大学出版社,
2005.
[9]李鹏飞.AVR单片机与4×4小键盘的使用.无线电20065:39-41.
[10]李光飞,楼然苗等单片机C程序设计实例指导.北京:北京航空航天大学出版社
2005.
[11]赵晓安.MCS-51单片机原理及应用.天津天津大学出版社
2001.
[12]宋东生.整流滤波电路,无线电,2002453:42-
43.
[13]吴景狄.单片机的键盘及LED数码显示接口.电子世界,20014:30-31.
[14]陈粤初等.单片机应用系统设计与实践.北京北京航空航天大学出版社
1991.
[15]谭博学,苗汇静等.集及成电路原理应用.电子工业出版社,2003.
[16]黄智伟,王彦等.全国大学生电子设计竞赛训练教程.电子工业出版社,2004.
[17]周兴华.变容二极管和电调谐.电子世界,20006:
54.
[18]求是科技.单片机典型模块设计实例导航.北京:人民邮电出版社
2004.
[19]AT89C51,AT89C52说明书[S]ATMEL公司提供
[20]WUXunweiHANGGuoqiangMassoudPedram.LowpowerDCcircuitsemployingACpowersupplySCIENCEINCHINAINFORMATIONSCIENCES2002Vol.45No.
3232.附录1原理图附录2程序源代码;26H-29H放显示小数位、个位、十位、百位BCD码数,24H-25H放频率控制数据(十六进制);CONBITLEQU21H;频率控制字节低8位CONBITHEQU22H;频率控制字节高8位KEYWORDEQU23H;存放键扫描时P1口值ORG0000H;程序开始地址LJMPSTART;转START执行ORG0003H;RETI;不用中断程序ORG000BH;RETI;不用中断程序ORG0013H;RETI;不用中断程序ORG001BH;RETI;不用中断程序ORG0023H;RETI;不用中断程序ORG002BH;RETI;;初始化程序CLEARMEN:MOVR0#20H;20H-29H循环清0MOVR1#0AH;CLEARLOOP:MOV@R0#00H;INCR0;DJNZR1CLEARLOOP;MOVP0#0FFH;四端口置1MOVP1#0FFH;MOVP2#0FFH;MOVP3#0FFH;CLRP
3.0;BH1415禁止操作CLRP
3.1;CLRP
3.2;LCALLKEYFUN15;置立体声发射方式开立体声发射指示灯CLEAR1:MOVPCON#00H;控制寄存器清0MOV29H#00H;置初始值为88MHZ显示为
088.0MOV28H#08H;MOV27H#08H;MOV26H#00H;LCALLDISPUPDATRET;子程序返回;;主程序START:LCALLCLEARMEN;上电初始化MAIN:LCALLKEYWORK;调查键子程序LCALLDISPLAY;LED显示一次AJMPMAIN;转MAIN循环NOP;PC出错处理NOP;AJMPSTART;重新初始化;;4*4行列扫描查键子程序KEYWORK:MOVP1#0FFH;置P1口为输入状态CLRP
1.0;扫描第一行第一行为0MOVAP1;读入P1口值ANLA#0F0H;低四位为0CJNEA#0F0HKEYCON;高四位不为全1有键按下转KEYCOONSETBP
1.0;扫描第二行第二行为0CLRP
1.1;MOVAP1;读入P1口值ANLA#0F0H;低四位为0CJNEA#0F0HKEYCON;高四位不为全1有键按下转KEYCOONSETBP
1.1;扫描第三行第三行为0CLRP
1.2;MOVAP1;读入P1口值ANLA#0F0H;低四位为0CJNEA#0F0HKEYCON;高四位不为全1有键按下转KEYCOONSETBP
1.2;扫描第四行第四行为0CLRP
1.3;MOVAP1;读入P1口值ANLA#0F0H;低四位为0CJNEA#0F0HKEYCON;高四位不为全1有键按下转KEYCOONSETBP
1.3;结束行扫描RET;子程序返回KEYCON:LCALLDL10MS;消抖处理MOVAP1;再读入P1口值ANLA#0F0H;低四位为0CJNEA#0F0HKEYCHE;高四位不为全1确有键按下转KEYCHEKEYOUT:RET;干扰子程序返回KEYCHE:MOVAP1;读P1口值MOVKEYWORDA;放入23H暂存CJLOOP:LCALLDISPLAY;调显示子程序MOVAP1;读P1口值ANLA#0F0H;低四位为0CJNEA#0F0HCJLOOP;高四位为全1键还按着转CJLOOP等待释放MOVR7#00H;键释放置R7初值为#00H查表次数MOVDPTR#KEYTAB;取键值表首址CHEKEYLOOP:MOVAR7;查表次数入AMOVCA@A+DPTR;查表XRLAKEYWORD;查表值与P1口读入值比较JZKEYOK;为0相等转KEYOKINCR7;不等查表次数加1CJNER7#10HCHEKEYLOOP;查表次数不超过16次转CHEKEYLOOP再查RET;16次到退出;KEYOK:MOVAR7;查表次数入A即键号值MOVBA;放入BRLA;左移ADDAB;相加键号乘3处理JMP3字节指令MOVDPTR#KEYFUNTAB;取键功能散转表首址JMP@A+DPTR;查表KEYFUNTAB:LJMPKEYFUN00;键功能散转表跳至0号键功能程序LJMPKEYFUN01;LJMPKEYFUN02LJMPKEYFUN03LJMPKEYFUN04LJMPKEYFUN05LJMPKEYFUN06LJMPKEYFUN07LJMPKEYFUN08LJMPKEYFUN09LJMPKEYFUN10LJMPKEYFUN11LJMPKEYFUN12LJMPKEYFUN13LJMPKEYFUN14LJMPKEYFUN15;跳至15号键功能程序RET;散转出错返回;;键号对应P1口数值表(同时按下两键为无效操作)KEYTAB:DB0EEH0DEH0BEH7EH0EDH0DDH0BDH7DHDB0EBH0DBH0BBH7BH0E7H0D7H0B7H77H0FFH0FFH;;0号键功能程序KEYFUN00:INC29HMOVA29HCLRCCJNEA#02HFUN00FUN00:JCFUN00OUTMOV29H#00HFUN00OUT:MOVA29HXRLA#01HJNZF00OUT1MOV28H#00HAJMPF00OUTF00OUT1:MOV28H#08HF00OUT:LCALLDISPUPDATRET;;01号键功能程序KEYFUN01:INC28HMOVA28HCLRCCJNEA#0AHFUN01FUN01:JCFUN01OUTMOV28H#00HFUN01OUT:MOVA29HXRLA#01HJNZF01OUTMOV28H#00HAJMPF001OUTF01OUT:MOVA28HXRLA#08HJZF001OUTMOVA28HXRLA#09HJZF001OUTMOV28H#08HF001OUT:LCALLDISPUPDATRET;;02号键功能程序KEYFUN02:INC27HMOVA27H;CLRC;CJNEA#0AHFUN02FUN02:JCFUN02OUTMOV27H#00HFUN02OUT:LCALLDISPUPDATRET;;;03号键功能程序KEYFUN03:INC26H;MOVA26H;CLRC;CJNEA#0AHFUN03FUN03:JCFUN03OUTMOV26H#00HFUN03OUT:LCALLDISPUPDATRET;;04号键功能程序KEYFUN04:MOV29H#01HMOV28H#00HMOV27H#09HMOV26H#00HLCALLDISPUPDATRET;;05号键功能程序KEYFUN05:MOV29H#01H;MOV28H#00HMOV27H#08HMOV26H#00HLCALLDISPUPDAT;RET;;06号键功能程序KEYFUN06:MOV29H#01HMOV28H#00HMOV27H#05HMOV26H#00HLCALLDISPUPDATRET;;07号键功能程序KEYFUN07:MOV29H#01HMOV28H#00HMOV27H#00HMOV26H#00HLCALLDISPUPDATRET;;08号键功能程序KEYFUN08:MOV29H#00HMOV28H#09HMOV27H#08HMOV26H#00HLCALLDISPUPDATRET;;09号键功能程序KEYFUN09:MOV29H#00HMOV28H#09HMOV27H#06HMOV26H#00HLCALLDISPUPDATRET;;10号键功能程序KEYFUN10:MOV29H#00HMOV28H#09HMOV27H#04HMOV26H#00HLCALLDISPUPDAT;RET;11号键功能程序KEYFUN11:MOV29H#00HMOV28H#09HMOV27H#02HMOV26H#00HLCALLDISPUPDATRET;;12号键功能程序KEYFUN12:MOV29H#00HMOV28H#09HMOV27H#00HMOV26H#00HLCALLDISPUPDATRET;;13号键功能程序KEYFUN13:MOV29H#00HMOV28H#08HMOV27H#08HMOV26H#00HLCALLDISPUPDATRET;;14号键功能程序KEYFUN14:MOV29H#00HMOV28H#08HMOV27H#07HMOV26H#08HLCALLDISPUPDATRET;;15号键功能程序KEYFUN15:CPL03HJNB03HMONOCLRP
3.3LCALLPUTBITRETMONO:SETBP
3.3LCALLPUTBITRET;;将BCD码转为十六进制数,与5位控制码合成操作码,写入控制芯片DISPUPDAT:LCALLBCDBLCALLCONCOMMANDLCALLPUTBITRET;;将BCD码转为十六进制数程序BCDB:MOVCONBITL#00H;控制字清0MOVCONBITH#00H;控制字清0MOVCONBITL26HMOVA27H;个位数乘10操作MOVB#10;LCALLMULLOOP;调乘法子程序MOVA28H;十位数乘100操作MOVB#100LCALLMULLOOP;调乘法子程序MOVA29H;JNZADD3E8RET;百位数为0退出ADD3E8:CLRC;清进位档标志MOVA#0E8H;低8位加法ADDACONBITL;累加MOVCONBITLA;放回CONBITLMOVA#03H;高8位加法ADDCACONBITH;控制字高8位处理MOVCONBITHA;放回CONBITHRET;返回;;乘法及累加处理程序(将四位显示的十进制BCD码转为1个二进制数)MULLOOP:MULAB;乘法CLRC;清进位标志ADDACONBITL;积低8位与CONBITL相加MOVCONBITLA;放回CONBITLMOVACONBITH;ADDCABMOVCONBITHA;放回CONBITHRET;返回;;频率控制数据与5位控制码合成BH1415控制字CONCOMMAND:ANLCONBITH#07H;高四位为0MOVA20H;控制字放入AORLACONBITH;合成控制字MOVCONBITHA;放回CONBITHRET;返回;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;显示程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;共阳LED显示,P0口输出段码,P2口输出扫描字DISPLAY:MOVR1#26H;显示首址MOVR5#0FEH;设扫描字PLAY:MOVAR5;放入AMOVP2A;P2口输出MOVA@R1;取显示数据MOVDPTR#TAB;取段码表首址MOVCA@A+DPTR;查段码MOVP0A;从P0输出MOVAR5;读入扫描字JBACC.1PLAY1;不是十位(LED),不显示小数点CLRP
0.7;是十位显示小数点PLAY1:LCALLDL1MS;点亮1毫秒INCR1;指向下一显示数据JNBACC.3ENDOUT;是第四位LED,退出RLA;不是,左移一位MOVR5A;放回R5SETBP
0.7;关小数点AJMPPLAY;转PLAY循环ENDOUT:MOVP2#0FFH;显示结束,关显示输出口MOVP0#0FFH;RET;返回;;0-9共阳段码表TAB:DB0C0H0F9H0A4H0B0H99H92H82H0F8H80H90H0FFH0FFH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;发送控制字节子程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;PUTBIT:MOVACONBITL;低8位控制字入ASETBP
3.2;BH1415使能(允许写)LCALLPUT;发送8位MOVACONBITH;高8位控制字入ALCALLPUT;发送8位CLRP
3.2;BH1415写禁止CLRP
3.0;复位CLRP
3.1;复位RET;返回;;字节发送子程序PUT:MOVR3#8;发送8位控制CLRC;清CPUT1:RRCA;带进位位右移(先发低位)MOVP
3.0C;低位送至P
3.0口NOP;延时4微秒NOP;NOP;NOP;SETBP
3.1;锁存数据(上升沿时锁存数据)NOP;延时4微秒NOP;NOP;NOP;CLRP
3.1;DJNZR3PUT1;8位未发完转PUT1再发RET;8位发完结束;;513微秒延时子程序DL513:MOVR3#0FFHDL513LOOP:DJNZR3DL513LOOPRET;;1毫秒延时子程序(LED点亮用)DL1MS:MOVR4#02HDL1MSLOOP:LCALLDL513DJNZR4DL1MSLOOPRET;;10毫秒延时子程序(消抖动用)DL10MS:MOVR6#0AHDL10MSLOOP:LCALLDL1MSDJNZR6DL10MSLOOPRETEND;程序结束附录3英文原文ModulatingDirectDigitalSynthesizerInthepursuitofmorecomplexphasecontinuousmodulationtechniquesthecontroloftheoutputwaveformbecomesincreasinglymoredifficultwithanalogcircuitry.Inthesedesignsusinganon-lineardigitaldesigneliminatestheneedforcircuitboardadjustmentsoveryieldandtemperature.AdigitaldesignthatmeetsthesegoalsisaDirectDigitalSynthesizerDDS.ADDSsystemsimplytakesaconstantreferenceclockinputanddividesitdownatoaspecifiedoutputfrequencydigitallyquantizedorsampledatthereferenceclockfrequency.ThisformoffrequencycontrolmakesDDSsystemsidealforsystemsthatrequireprecisefrequencysweepssuchasradarchirpsorfastfrequencyhoppers.WithcontrolofthefrequencyoutputderivedfromthedigitalinputwordDDSsystemscanbeusedasaPLLallowingprecisefrequencychangesphasecontinuously.AswillbeshownDDSsystemscanalsobedesignedtocontrolthephaseoftheoutputcarrierusingadigitalphasewordinput.Withdigitalcontroloverthecarrierphaseahighspectraldensityphasemodulatedcarriercaneasilybegenerated.ThisarticleisintendedtogivethereaderabasicunderstandingofaDDSdesignandanunderstandingofthespuriousoutputresponse.Thisarticlewillalsopresentasampledesignrunningat45MHzinahighspeedfieldprogrammablegatearrayfromQuickLogic.AbasicDDSsystemconsistsofanumericallycontrolledoscillatorNCOusedtogeneratetheoutputcarrierwaveandadigitaltoanalogconverterDACusedtotakethedigitalsinusoidalwordfromtheNCOandgenerateasampledanalogcarrier.SincetheDACoutputissampledatthereferenceclockfrequencyawaveformsmoothinglowpassfilteristypicallyusedtoeliminatealiascomponents.Figure1isabasicblockdiagramofatypicalDDSsystemdesign.ThegenerationoftheoutputcarrierfromthereferencesampleclockinputisperformedbytheNCO.ThebasiccomponentsoftheNCOareaphaseaccumulatorandasinusoidalROMlookuptable.AnoptionalphasemodulatorcanalsobeincludeintheNCOdesign.ThisphasemodulatorwilladdphaseoffsettotheoutputofthephaseaccumulatorjustbeforetheROMlookuptable.ThiswillenhancetheDDSsystemdesignbyaddingthecapabilitiestophasemodulatethecarrieroutputoftheNCO.Figure2isadetailedblockdiagramofatypicalNCOdesignshowingtheoptionalphasemodulator.FIGURE1:TypicalDDSSystem.FIGURE2:TypicalNCODesign.TobetterunderstandthefunctionsoftheNCOdesignfirstconsiderthebasicNCOdesignwhichincludesonlyaphaseaccumulatorandasinusoidalROMlookuptable.ThefunctionofthesetwoblocksoftheNCOdesignarebestunderstoodwhencomparedtothegraphicalrepresentationofEuler’sformulaejwt=coswt+jsinwt.ThegraphicalrepresentationofEuler’sformulaasshowninFigure3isaunitvectorrotatingaroundthecenteraxisoftherealandimaginaryplaneatavelocityofwrad/s.Plottingtheimaginarycomponentversustimeprojectsasinewavewhileplottingtherealcomponentversustimeprojectsacosinewave.ThephaseaccumulatoroftheNCOisanalogousorcouldbeconsideredthegeneratoroftheangularvelocitycomponentwrad/s.ThephaseaccumulatorisloadedsynchronoustothereferencesampleclockwithanNbitfrequencyword.ThisfrequencywordiscontinuouslyaccumulatedwiththelastsampledphasevaluebyanNbitadder.TheoutputoftheadderissampledatthereferencesampleclockbyanNbitregister.WhentheaccumulatorreachestheNbitmaximumvaluetheaccumulatorrollsoverandcontinues.PlottingthesampledaccumulatorvaluesversustimeproducesasawtoothwaveformasshownbelowinFigure
3.FIGURE3Euler’sEquationRepresentedGraphicallyThesampledoutputofthephaseaccumulatoristhenusedtoaddressaROMlookuptableofsinusoidalmagnitudevalues.Thisconversionofthesampledphasetoasinusoidalmagnitudeisanalogoustotheprojectionoftherealorimaginarycomponentintime.Sincethenumberofbitsusedbythephaseaccumulatordeterminesthegranularityofthefrequencyadjustmentstepsatypicalphaseaccumulatorsizeis24to32bits.SincethesizeofthesinusoidalROMtableisdirectlyproportionaltotheaddressingrangenotall24or32bitsofthephaseaccumulatorareusedtoaddresstheROMsinusoidaltable.OnlytheupperYbitsofthephaseaccumulatorareusedtoaddressthesinusoidalROMtablewhereYNbitsandYistypicallybutnotnecessarilyequaltoDandDisthenumberofoutputmagnitudebitsfromthesinusoidalROMtable.SinceanNCOoutputsacarrierbasedonadigitalrepresentationofthephaseandmagnitudeofthesinusoidalwaveformdesignershavecompletecontroloverfrequencyphaseandevenamplitudeoftheoutputcarrier.ByaddingaphaseportandaphaseaddertothebasicNCOdesigntheoutputcarrieroftheNCOcanbeMarrayphasemodulatedwhereMequalsthenumberofphaseportbitsandwhereMislessthanorequaltotheYnumberofbitsusedtoaddressthesinusoidalROMtable.ForsystemdesignsthatrequireamplitudemodulationsuchasQAMamagnitudeportcanbeaddedtoadjustthesinusoidalROMtableoutput.NotethatthisportisnotshowninFigure2andthatthisfeatureisnotdemonstratedinthesampleQuickLogicFPGAdesign.FinallyfrequencymodulationisagivenwiththebasicNCOdesign.Thefrequencyportcandirectlyadjustthecarrieroutputfrequency.SincefrequencywordsareloadedintotheDDSsynchronoustothesampleclockfrequencychangesarephasecontinuous.AlthoughDDSsystemsgivethedesignercompletecontrolofcomplexmodulationsynthesistherepresentationofsinusoidalphaseandmagnitudeinanon-lineardigitalformatintroducesnewdesigncomplexities.Insamplinganycontinuous-timesignalonemustconsiderthesamplingtheoryandquantizationerror.TounderstandtheeffectsofthesamplingtheoryonaDDSsystemitisbesttolookattheDDSsynthesisprocessesinboththetimeandfrequencydomain.AsstatedabovetheNCOgeneratesasinusoidalwaveformbyaccumulatingthephaseataspecifiedrateandthenusesthephasevaluetoaddressaROMtableofsinusoidalamplitudevalues.ThustheNCOisessentiallytakingasinusoidalwaveformandsamplingitwiththerisingorfallingedgeoftheNCOinputreferencesamplingclock.Figure4showsthetimeandfrequencydomainoftheNCOprocessing.Notethatthisrepresentationdoesnotassumequantization.BasedontheloadedfrequencywordtheNCOproducesasetofamplitudeoutputvaluesatasetperiod.Thefrequencydomainrepresentationofthissinusoidisanimpulsefunctionatthespecifiedfrequency.TheNCOhoweveroutputsdiscretedigitalsamplesofthissinusoidattheNCOreferenceclockrate.InthetimedomaintheNCOoutputisafunctionofthesamplingclockedgestrobesmultipliedbythesinusoidwaveformproducingatrainofimpulsesatthesinusoidamplitude.InthefrequencydomainthesamplingstrobesofthereferenceclockproduceatrainofimpulsesatfrequenciesofKtimestheNCOclockfrequencywhereK=...-
1012....SincethesamplingclockwasmultipliedbythesinusoidinthetimedomainthefrequencydomaincomponentsofthesinusoidandthesamplingclockneedtobeconvolvedtoproducethefrequencydomainrepresentationoftheNCOoutput.ThefrequencydomainresultsaretheimpulsefunctionatthefundamentalfrequencyofthesinusoidandthealiasimpulsefunctionsoccurringatKtimestheNCOclockfrequencyplusorminusthefundamentalfrequency.Thefundamentalandaliascomponentoccurat:K*Fclk-FoutK*Fclk+FoutWhereK=...-
1012.....andK=0istheNCOsinusoidfundamentalfrequencyFoutisthespecifiedNCOsinusoidoutputfrequencyFclkistheNCOreferenceclockfrequencyFIGURE4NCOOutputRepresentationTimeandFrequencyDomainTheDACoftheDDSsystemtakestheNCOoutputvaluesandtranslatesthesevaluesintoanalogvoltages.Figure4showsthetimeandfrequencydomainrepresentationsoftheDACprocessingstartingwiththeNCOoutput.TheDACoutputisasampleandholdcircuitthattakestheNCOdigitalamplitudewordsandconvertsthevalueintoananalogvoltageandholdsthevalueforonesampleclockperiod.ThetimedomainplotoftheDACprocessingistheconvolutionoftheNCOsampledoutputvalueswithapulseofonesampleclockperiod.Thefrequencydomainplotofthesamplingpulseisasinx/xfunctionwiththefirstnullatthesampleclockfrequency.Sincethetimedomainwasconvolvedthefrequencydomainismultiplied.ThismultiplicationdampenstheNCOoutputwiththesinx/xenvelope.ThisattenuationattheDACoutputcanbecalculatedasfollowsandasampleoutputspectrumisshowninFigure5:AttenF=20log[sinpF/Fclk/pF/Fclk]WhereFistheoutputfrequencyFclkisthesampleclockfrequencyFIGURE5:DACOutputRepresentationinTimeandFrequencyDomainAsidefromthesamplingtheorythequantizationoftherealvaluesintodigitalformmustalsobeconsideredintheperformanceanalysisofaDDSsystem.ThespuriousresponseofaDDSsystemisprimarilydictatedbytwoquantizationparameters.TheseparametersarethephasequantizationbythephaseaccumulatorandthemagnitudequantizationbytheROMsinusoidaltableandtheDAC.AsmentionedaboveonlytheupperYbitsofthephaseaccumulatorareusedtoaddresstheROMlookuptable.ItshouldbenotedhoweverthatusingonlytheupperYbitsofthephaseaccumulatorintroducesaphasetruncation.Whenafrequencywordcontaininganon-zerovalueinthelowerN-Y-1:0bitsisloadedintotheDDSsystemthelowernon-zerobitswillaccumulatetotheupperYbitsandcauseaphasetruncation.Thefrequencyatwhichthephasetruncationoccurscanbecalculatedbythefollowing:Ftrunc=FWN-Y-1:0/2N-Y*Fclk.AphasetruncationwillperiodicallyattheFtruncratephasemodulatetheoutputcarrierforward2p/28tocompensateforfrequencywordgranularitygreaterthan2Y.Thephasejumpcausedbytheaccumulationofphasetruncatedbitsproducesspursaroundthefundamental.Thesespursarelocatedplusandminusthetruncationfrequencyfromthefundamentalfrequencyandthemagnitudeofthespurswillbe-20log2YdBc.AsampleoutputofaphasetruncationspurisshowninFigure
5.InatypicalNCOdesigntheROMsinusoidaltablewillholda¼sinewave0p/2ofmagnitudevalues.TheROMtableisgeneratedbytakingallpossiblephasevalueaddressesandmaptoarealmagnitudesinevalueroundedtothenearestDbits.Thusthemaximumerroroutputis±-½LSBgivingaworstcasespurof-20log2DdBc.LiketheNCOROMtableaDACquantizesthedigitalmagnitudevalues.ADAChoweveroutputsananalogvoltagecorrespondingtothedigitalinputvalue.WhendesigningtheNCOsinusoidalROMtableoneshouldtakesomeempiricaldataontheDAClinearitytobetterunderstandtheinteractionbetweentheROMtableandtheDAC.ThequantizationforaDACisspecifiedagainstanideallinearplotofdigitalinputversusanalogoutput.TwolinearityparametersdifferentialandintegrallinearityareusedtospecifyaDAC’sperformance.Differentiallinearityistheoutputstepsizefrombittobit.ADACmustguaranteeadifferentiallinearityofamaximum1LSB.WhenaninputcodeisincreasedtheDACoutputmustincrease.IftheDACvoltagedoesnotincreaseversusanincreasedigitalinputvaluetheDACissaidtobemissingcodes.Thusa10bitDACthathasadifferentiallinearityofgreaterthat1LSBisonlyaccurateto9orlessbits.ThenumberofaccurateoutputbitswillspecifytheDDSspuriousperformanceas-20log2dlwheredlisthenumberdifferentiallinearbits..IntegrallinearityisameasureoftheDAC’soveralllinearperformanceversusanideallinearstraightline.Thestraightlineplotcanbeeithera“beststraightline”whereDCoffsetsarepossibleatboththeminandmaxoutputsoftheDACorthestraightlinecancrosstheendpointsoftheminandmaxoutputvalues.ADACwilltendtohaveacharacteristiccurvethatistraversedovertheoutputrange.DependingontheshapeandsymmetrysymmetryaboutthehalfwaypointoftheDACoutputofthiscurveoutputharmonicsoftheDDSfundamentaloutputfrequencywillbeproduced.AstheseharmonicsapproachandcrosstheNyquistfrequencyofFclk/2theharmonicsbecomeundersampledandreflectbackintothebandofinterest0toFclk/
2.ThisproblemisbestillustratedbysettingtheNCOoutputtoFclk/4plusaslightoffset.Thethirdharmonicwillfallminus3foldsthesmalloffsetfromthefundamentalandthesecondharmonicwillcrosstheNyquistfrequencyby2foldsthesmalloffsetleavingareflectedimagebackinthebandofinterestAsampleplotofthisfrequencysetupisshowninFigure
5.OtherDACcharacteristicthatwillproduceharmonicdistortionisanydisruptionofthesymmetryoftheoutputwaveformsuchasadifferentriseandfalltime.ThesecharacteristicscantypicallybecorrectedbyboardcomponentsexternaltotheDACsuchasanRFtransformerboardlayoutissuesattenuationpadsetc.GiventhecomplexitiesoftheDDSsystemengineersshouldconsiderimplementingthedesignusingseparatedevicesforthenumericallycontrolledoscillatorthedigitaltoanalogconverterandthelowpassfilter.Thisapproachallowsforsignalobservationatmanypointsinthesystemyetiscompactenoughtobepracticalasanend-solution.Alternativelythediscreteimplementationcanserveasaprototypingvehicleforasingle-chipmixedsignalASIC.TheauthordevelopedaversionofthedesignusingaHarrisHI5721evaluationboardfortheDAC.TheNCOattheheartoftheDDSdesignandarandomgeneratortotestsignalmodulationwasimplementedintoabout65%ofaQuickLogicfieldprogrammablegatearrayFPGA.ThisFPGAaQL16x24B4000-gatedevicewaschosenforitshighperformanceease-of-useandpowerfuldevelopmenttools.TheNCOdesignincludedfollowing:DevelopedinVerilogwiththe8bitCLAadderschematiccapturedandnetlistedtoVerilog32bitfrequencywordinput32phaseaccumulatorpipelinedover8bits8bitphasemoudulationwordinput8bitsineROMlook-uptableThedesignwasdescribedmostlyinVerilogwithan8bitcarrylookaheadaddermodifiedfromQuickLogic’smacrolibrarynetlistedtoVerilog.Thewholedesigncyclewaslessthanfourdaystwodaystodescribethedesignandadayandahalftoprototypethehardware.Everythingworkedperfectlythefirsttimewiththedesignrunningatanimpressive45MHzaspredictedbythesoftwaresimulationtools.PlotsusedinthearticletoillustrateDDSperformanceparameterswereprovidedfromthetestconfiguration.Figure6belowshowstheexternalIOinterfacetotheNCOdesign.Thefunctionofeachsignalisdescribedinthefollowingtable.SignalFunctionTableFREQWORD[31:0]ThisinputisthefrequencycontrolwordtotheNCO.ThiswordcontrolsthephaseaccumulatorrateandthustheoutputfrequencyoftheDACOUTsinusoidalwaveform.Theoutputcarrierfrequencyiscalculatedbythefollowing:PHASEWORD[7:0]ThisinputisthephasemodulationcontrolwordtotheNCO.Thiswordcontrolsthephaseoffsetfollowingthephaseaccumulator.Thisphaseoffsetisusedtophasemodulatetheoutputcarrier.FWWRNThisinputisthelowassertedfrequencywordwritestrobe.ThisstrobeinputregisterstheFREQWORDinputontherisingedge.ThisstrobecanbeasynchronoustotheSYSCLK.SYSCLKThisisthereferencesystemclockinputtotheNCO.Thisclockisthesamplingclockoftheoutputcarrier.PNCLKThisinputisthepseudo-noisegeneratorclockinput.ThisclocksetsthedatarateoftheIandQdataoutputs.RESETNThisinputisalowassertedglobalreset.Whenassertedtheinternalphaseandfrequencywordregistersareclearedstoppingtheoutputcarrierat0radians.DACOUT[7:0]ThisoutputisthesinusoidalDACamplitudeword.ThiswordisvalidontherisingedgeoftheDACCLK.Thesinusoidalwaveformoutputisrepresentedbythefollowing:ft=sin2pFoutt+PoutDACCLKThisoutputistheDACclockstrobe.ThisclockistheSYSCLKfeedbacktoanoutputpincompensatingforthelatencyoftheNCOIOpins.TheDACOUTamplitudewordswillbevalidontherisingedgeoftheDACCLK.SINThisoutputisasinglebitdigitalsinewaveoutput.ThissinewaveoutputcomesfromtheMSBofthephaseaccumulator.Theoutputfrequencyofthispiniscontrolledbythefrequencywordinput.COSThisoutputisasinglebitdigitalcosinewaveoutput.ThiscosinewaveoutputcomesformtheMSBandnextmostsignificantbitofthephaseaccumulator.Theoutputfrequencyofthispiniscontrolledbythefrequencywordinput.MSINThisoutputisasinglebitdigitalsinewaveoutput.ThissinewaveoutputcomesfromtheMSBofthephasemodulator.Theoutputfrequencyofthispiniscontrolledbythefrequencywordinputandphaseoffsetbythephasewordinput.ThissinewaveoutputisthesameastheSINoutputwithaphaseoffsetofplus2p/28*PHASEWORD.MCOSThisoutputisasinglebitdigitalcosinewaveoutput.ThiscosinewaveoutputcomesformtheMSBandnextmostsignificantbitofthephasemodulator.Theoutputfrequencyofthispiniscontrolledbythefrequencywordinputandthephaseoffsetbythephasewordinput.ThiscosinewaveoutputisthesameastheCOSoutputwithaphaseoffsetofplus2p/28*PHASEWORD.IDATAThisoutputisa25-1pseudonoiserandompattern.ThisoutputisnotafunctionalpartoftheNCOdesignbutusedtodemonstratephasemodulationusingthephaseport.QDATAThisoutputisa25-1pseudonoiserandompattern.ThisoutputisnotafunctionalpartoftheNCOdesignbutusedtodemonstratephasemodulationusingthephaseport.Figure6:TheExternalIOInterfaceTopLeveldds.vThetopleveloftheNCOdesigninstantiatesthefunctionalblocksoftheNCOdesignandthePNgeneratorblock.PNGeneratorpngen.vThismoduleisnotpartoftheNCOdesignbutisusedtoproduceasamplerandomdatapatterntomodulatethecarrieroutput.ThismoduleusesthePNCLKinputtoclocktwoGoldcode5bitPNgenerators.TheoutputsofthePNgeneratorsareIDATAandQDATAoutputs.ThelowerlevelblockofthisNCOdesignconsistofasynchronousfrequencywordinputregisterasynchronousphasewordinputregistera32bitpipelinedphaseaccumulatoran8bitphaseadderandasinlockuptable.AdetaileddescriptionofeachoftheNCOblocksandthePNgeneratorareprovidedinthefollowingsections.LoadFrequencyWordloadfw.vTheloadfrequencywordblockisasynchronizingloadingcircuit.TheFREQWORD[31:0]inputdrivesathedatainputtothe32bitfwregregisterthatissampledontherisingedgeoftheFWWRNwritestrobe.TheFWWRNstrobealsodrivesthedatainputtoametastableflipflopfwwrnmthatisusedinconjunctionwithasynchronousregisterfwwrnstoproduceaFWWRNrisingedgestrobe.Thisrisingedgestrobeloadp1isthenpipedforanadditional3clockcyclesproducingtheloadstrobesloadp2loadp3andloadp
4.Theloadstrobesareusedtosignalwhentoupdatethesynchronouspipeline8bitregisterspipefw1pipefw2pipefw3andpipefw4tothesampledfrequencywordcontent.Thepipelineregistersareconcatenatedtoproducethe32bitsynchronousfrequencywordoutputSYNCFREQ[31:0]thatisstaggeredtocompensateforthe32bitpipelinedphaseadder.PhaseWordAccumulatorphasea.vThephaseaccumulatorblockisa32bitaccumulatorthatispipelinedin8bitsections.ThismoduleinstanciatesaschematiccapturedcarrylockaheadCLAadderthathasacarryinandcarryoutport.ThesynchronousfrequencywordstaggeredtomatchthepipelinedaccumulatorisloadedintotheBinputoftheCLAadders.ThesumoutputoftheCLAaddersareregisteredinthepiperegisteredwiththeoutputtiedbacktotheAinputoftheCLAadders.ThecarryoutputoftheCLAaddersisregisteredinthepipecregisterswiththeoutputtiedtothenextmostsignificantCLAaddercarryinput.Themostsignificantsumoutputregisterpipe4isassignedtothePHASEoutputportgivingaphasevaluequantizedto8bits.Adigitalsineandcosinevalueisalsocalculatedfromthepipe4registerandbroughtoutofthechipasSINandCOS.LoadPhaseWordloadpw.vTheloadphasewordblockisasynchronizingloadingcircuit.ThePHASEWORD[7:0]inputdrivesthedatainputtothe32bitpwregregisterthatissampledontherisingedgeofthePWWRNwritestrobe.ThePWWRNstrobealsodrivesthedatainputtoametastableflipfloppwwrnmthatisusedinconjunctionwithasynchronousregisterpwwrnstoproduceaFWWRNrisingedgestrobe.Thisrisingedgestrobeloadisusedtosignalwhentoupdatethesynchronousphasewordregisterphswd.ThephswdregisterisassignedtothesynchronousphasewordoutputSYNCPHSWD[7:0].PhaseModulatorphasemod.vThephasemodulatorblockisusedtophaseoffsetthephaseaccumulator8bitquantizedoutputwiththesynchronousphasewordfromtheloadphasewordblock.ThismoduleinstantiatesaCLAadderwiththeAinputtiedtothesynchronousphaseoutputandtheBinputtiedtothephaseaccumulatoroutput.ThesumoutputoftheadderisregisteredinthemphsregregisterandassignedtotheMODPHASEoutputport.AmodulatedversionofthesineandcosinevaluesarecalculatedandbroughtoutofthechipasMSINandMCOS.SineLockupsinlup.vThismoduletakesthemodulatedphasevalueformthephasemodulatorblockandtranslatedthequantized8bitvalueintoasinewaveformamplitudevaluequantizedto8bits.ThetranslationfromphasetoamplitudeisperformedbyasineROMtablethatininstantiatedinthismodule.TheROMtableisreducedtoa¼ofthesymmetricalsinewaveformandtheMSBofthesinewaveformisequivalenttothemodulatedphaseinput.Thismoduleperformsthecalculationstoreconstructacompleteperiodofthesinewaveformfromthe¼representationoftheROMtableandtheMSBofthemodulatedphaseinput.Tobetterunderstandtheprocessingofthismoduleconsiderthefollowing.Themodulatedphasevalueisa0to2pvaluequantizedto8bits2p/
28.Thequantizedvalueforp/2p3p/2and2pare0x3F0x7F0xBFand0xFF.Theamplitudevaluesfor0top/2isstoredintheROMtable.Theamplitudevaluesforp/2toparetheROMtableoutputinthereverseorder.Theamplitudevaluesforpto3p/2arethesameoutputastheamplitudevaluefrom0top/2withtheoutputfromtheROMtableinverted.Finallytheamplitudevaluefor3p/2to2parethesameasforpto3p/2withtheROMtableaccessedinreverse.ThismodulemanagestheaddressvaluestotheROMtableandtheamplitudeoutputstoformthecompleteperiodofthesinewaveform.ThefirstprocessofgeneratingthesinewavefunctionistheaddressingoftheROMtablesuchthatphaseanglesp/2topand3p/2to2pareaddressedinthereverseorder.ReverseaddressingisaccomplishedbysimplyinvertingtheROMtableaddressinputvector.ThephasemodulatedaddressinputisinvertedwhentheMODPHASE
[6]isoneandisthenregisteredinthephaseaddregister.ThephaseaddressisusedtoaddresstheROMsinetablewiththeoutputregisteredintheqwavesin_ffregister.ToconstructthenegativeamplitudevaluesofthesinewaveformtheMSBofthemodulatephasewordinputisregisteredtwiceinmodphase_msb1_ffandmodphase_msb2_ffcompensatingforthetwocyclelatencyofthephaseaddandqwavesin_ffregisters.ThedelayedMSBbitisusedtoinverttheROMtableoutputwhenone.ThealteredROMtableoutputandtheinvertofthedelayedmodulatedphasewordMSBarefinallyregisteredinbythedac_ffregisterandthenassignedtotheDACOUToutputport.SineROMTableromtab.vThismoduleisthesinewaveformROMtable.Thistableconvertsthephasewordinputtoasineamplitudeoutput.Toconserveareaonly¼ofthesymmetricalsinewaveformisstoredintheROM.Thesinevaluesstoredinthistablearethe0top/2unsignedvaluesquantizedto8bits.ThustheROMtablerequiresa6bitphaseaddressinputandoutputsa7bitamplitudeoutput.Thesinlupmoduleprocessesthephaseandamplitudevaluestoproduceacompletesineperiod.DanMorellihasover9yearsofdesignandmanagementexperience.HisareasofexpertiseincludespreadspectrumcommunicationsinvolvingGPSTDRSSand
802.11PCchipsetandsystemarchitecturecelllibrarydevelopmentforECLdevicesandASICdevelopment.Hehasbeenpublishedandhasmultiplepatentsawardedandpending.DancurrentlyworksforAccelentSystemsInc.anelectronicdesignconsultingcompanywhereheisafounderandtheVPofEngineering.附录4中文译文数字频率合成器在探讨许多复杂的相位连续的调制技术中,对模拟电路中输出波形的控制已经越来越困难在这些设计中,使用非线性数字式设计除去电路板需要的调整额外输出和温度一个适合这个目标的数字式设计就是直接数字频率合成器(DDS)一个DDS系统仅仅使用一个恒定参考时钟输入和将该时钟分解为指定的量化数位频率输出或者对参考时钟频率取样这种形式是频率控制使得DDS系统成为需要精确频率扫描比如雷达尖叫声或者快速频率计量器的理想系统根据数字输入控制字以控制输出频率,DDS系统可以用来当作一个允许精确频率连续改变相位的锁相环(PLL)根据后面的说明,我们知道DDS系统还可以使用输入数字相位控制字来控制输出载波的相位用数字式控制载波相位,很容易产生一个高频谱密度的相位调制载波本文主旨是给读者一个基本的DDS设计和寄生输出响应的知识本文将展示一个运行于45MHz的快速现场可编辑逻辑器件一个基本的DDS系统包括一个数字振荡器(NCO)用来产生输出载波,和一个数模转换器(DAC)用来将从NCO过来的数字式正弦曲线字产生一个抽样的模拟载波当DAC的输出是根据参考时钟频率的抽样时,通常用一个圆滑波形的低通滤波器来消除混叠成分根据输入的参考时钟抽样经过NCO来产生输出载波NCO的基本构成是一个相位累加器和一个正弦ROM查找表通过增加NCO的载波相位调制的输出能力可以提高DDS系统的设计为了更好的理解NCO设计的各种功能,首先考虑仅包括一个相位累加器和一个正弦ROM查找表的基本NCO设计与欧拉公式(Euler’sformula)图解比较就能最好地理解这两个表的NCO设计的功能欧拉公式的图解如图3所示,是一个单位向量绕着实轴和虚平面的中心以Wrad/s的速度转圈这个频率控制字是最后一个抽样相位值通过一个N位加法器的连续地累加而成加法器的输出是参考抽样时钟通过一个N位寄存器的抽样当累加器达到N位最大值的时候,累加器翻转然后继续然后相位累加器的抽样输出用来在一个正弦量化值表里进行查找抽样相位到正弦量化的转化可以看作是真实的或者虚拟的成分及时地影射因为相位累加器的比特位数决定了频率调整的步进,一个典型的相位累加器的大小是24到32位由于正弦ROM表的大小是跟寻址范围直接成比例的,因此,不是所有相位累加器的24或32位都用来作为正弦ROM表的地址仅是相位累加器的高Y(Y〈N〉位是用来作为正弦ROM表的地址,Y通常不必要等于正弦ROM表的输出量位D因为一个NCO输出的一个基于一个数字表示的相位和正弦波量化形式的载波,所以设计者可以完全的控制输出载波的频率,相位和幅度通过加入一个相位端口和一个相位加法器到一个基本的NCO设计中,NCO的输出载波当M等于相位端口数和M小于或等于Y(用来作为正弦ROM表的地址位数)时可以被M矩阵相位调制假如系统设计需要幅度调制如QAM,可以加入一个量化端口来调整正弦ROM表的输出注意到这个端口没有在图2里表示出来以及这个特色没有在简单的快速逻辑FPGA设计中论证最后,频率是调制是一个基本的NCO设计给出的因为频率控制字是跟抽样时钟是同步装载到DDS的,频率的转化是相位连续的虽然DDS系统给设计者完全地控制复杂的调制合成,但是在一个非线性数字格式的正弦相位和量级的表示却是复杂的新设计在取样任何的连续时间信号时,必须考虑取样原理和量子化误差为了理解DDS系统中取样理论的效果,最好看一下时间和频率域的DDS合成过程就象上面规定的,通过以指定的速率累积的形式由NCO产生一个正弦波然后用一个相位的值来定位一个正弦调制ROM表的值因此,NCO本质上用一个正弦波和用NCO的上升或下降沿输出参考取样时钟对其取样图4表示在时间和频率域里NCO的处理注意到这个表示并非量子化假设基于频率控制字的装载,NCO在一个时期内提供一批幅度的输出值这个正弦曲线的频率域表示在指定的频率里是一个推动的作用NCO在NCO参考时钟速率下输出这个正弦曲线的离散数字取样在时间域里,NCO输出是一个取样时钟边缘闸门乘于正弦波形式产生的一个推动序列正弦振幅的作用在频率域里,参考时钟的取样产生一系列在K倍的NCO时钟频率脉冲(当K=...-1,2,1,
2....)当在时间域里取样时钟乘于正弦曲线,正弦曲线频率域成分和取样时钟需要卷积来产生NCO输出频率域表示的NCO输出频率域的结果是在正弦曲线基本频率的脉冲作用和别的脉冲作用发生在K倍的NCO时钟频率加上或减去基本频率基本的和别的成分发生在K*Fclk-FoutK*Fclk+Fout当K=...-
1012.....和K=0是NCO正弦曲线基本频率Fout是指定的NCO正弦曲线输出频率Fclk是NCO参考时钟频率DDS系统中的DAC提取NCO的输出值并转化他们的值为模拟电压图4显示出时间和频率域DAC过程开始于NCO的输出的表示DAC输出是一个抽样和保持那些NCO数字幅度控制字和转换那些值为一个模拟电压和保持那些值为一个抽样时钟周期的电路DAC过程的时域结构是NCO抽样输出值和一个抽样周期脉冲的卷积抽样脉冲的频率域结构是一个sinx/x功能和在抽样时钟频率的第一个零因为时域是卷积的,频率域就是相当于相乘这个乘法过程使得NCO输出有一个sinx/x包络这个在DAC输出的衰减在下面计算出来而且一个抽样输出频谱AttenF=20log[sinpF/Fclk/pF/Fclk]当F是输出频率,Fclk是抽样时钟频率根据取样理论,实际的值量子化为数字形式必须考虑一个DDS系统的性能分析一个DDS系统的假的响应是主要由两个量子化参量确定的这些参量是相位累加器的相位量子化和ROM正弦曲线表和DAC的量子化量级如上所示,相位累加器只有高Y比特是用来寻址ROM表值得注意的是,仅用高Y位引入一个相位截短当一个频率控制字包含一个非零的值在低(N-Y-10)位是装载到DDS系统的,低非零位累加到高Y位和使得产生一个相位截短相位的截短出现的频率可以根据以下计算Ftrunc=FWN-Y-1:0/2N-Y*Fclk.一个相位的截短会周期性(以Ftrunc速率)相位调制输出载波提前2p/28来补偿频率控制字间隔多于/2Y相位的跳转由相位截短位累加在基波周围产生突刺这些突刺位于基频的正和负截短频率,突刺的大小是20log2YdBc一个相位截短突刺输出的例子如图5所示在一个典型的NCO设计里,正弦ROM表会保持一个1/4正弦波(0,Pi/2)的量级ROM表是通过把所有可能的相位值地址和映射到实际正弦波大小的近似D比特来产生的因此,最大的输出误差为-½LSB(假设当突刺为-20log2DdBc的最坏情况时)类似于NCO的ROM表,一个DAC也同样是这样量子化数字值为模拟值的一个DAC输出的模拟电压取决于输入的数字值当设计NCO正弦ROM表时,一种方法是根据经验好于通过理解ROM表和DAC之间的交互作用而在DAC线性得出一些数据DAC的量化曲线数字输入对应模拟输出的DAC量化曲线可以看作是理想线性的微分线性和积分线性这两个线性参数通常是用来衡量DAC性能微分线性是指输出的步进大小为比特到比特一个DAC必须编码一个最大的1LSB微分线性当输入码增加,DAC的输出必须相应增加假如DAC电压的增加不是对应于一个增加的输入数字值,可以说DAC是缺码的因此,一个有大于1LSB微分线性的10比特DAC可以精确到9或者更小的比特精确输出的比特数量会导致DDS当dl是微分线性的比特数量时的虚假的性能-20log2dl积分线性是一个DAC的总的线性性能对一个理想的线性直线的一个衡量那条直线图当DC偏置可能是DAC的最大或者最小时可以看作“最好的直线”,或者那条直线可以穿过输出的最大和最小值的结束点超出输出范围时一个DAC会有一个特有的弯曲特性曲线根据曲线的形状和对称度(半个DAC输出的周期对称),就可以产生DDS基本输出频率的输出“和”当这些“和”接近和超过Nyquist频率,Fclk/2,这些“和”就成为样本之下和反映到重要的边带,0到Fclk/2这个问题可以通过设置NCO的输出到Fclk/4加上一个轻微的偏移量来说明第三谐波将倒减去3折轻微的偏移量基波和二次谐波相交Nyquist频率的2折偏移量,留下一个反射图象在边缘一个典型的频率建立的过程如图5另外DAC将产生谐波失真的性质是任意输出波形的对称的分解,例如一个不同的上升和下降时间这些性质通常可以由电路板的DAC的外部元件来修正,例如一个RF变压器,电路板设计问题,衰减点等基于DDS系统的复杂性,工程师应该考虑使用独立的装置来进行设计数字控制的振荡器,数字到模拟的转化器,和低通滤波器这些方法可以允许在系统的许多点对信号进行观察,至今在最终方案中仍是足够简洁的应用二者选其一,离散的实现可以作为一个单片混合ASIC信号的原型制作工具笔者在DAC设计方面采用了一种HarrisH15721评估板NCO作为DDS设计的主要部分,和一个随机的发生器来测试信号调制,是65%一个快速FPGA设计的执行方案这个QL16x24的4000门的FPGA,是由于其是一个高性能,易用,和强大的开发工具这个NCO的设计包括以下在位CLA加法原理图的Verilog开发捕获和生成网络表到Verilog32位频率控制字输入基于8位的32相位累加器8位相位调制控制字8位正弦ROM查找表设计大多数用Verilog语言描述,通过Verilog快速逻辑的巨大的网络表库的修正的8位提前进位加法器整个设计环节不会超过4天(2天描述设计以及1天半确定硬件原型)一个45MHz的设计在仿真软件上的第一次运行,一切工作得很出色论文所用来说明DDS性能参量的图是通过测试配置来提供的如下的图1-1标明了NCO设计的外部IO接口每个信号的功能如下表所示表1-1信号功能表FREQWORD[31:0]这个输入信号是NCO的频率控制字它的控制字控制相位累加器的速率和DACOUT正弦波形式的输出频率这个输出载波频率可以根据下面的公式得出Fout=FREQWORD[31:0]*SYSCLK/232HzPHASEWORD[7:0]这个输入信号是NCO的相位调制控制字它的控制字控制相位累加器只后的相位偏移量相位的偏移量可以根据下面的公式得出Pout=PHASEWORD[7:0]*2/28radiansFWWRN这个输入信号是低频率字写入闸门有效位这个闸门在上升沿输入FREQWORD信号到寄存器这个闸门可以跟SYSCLK异步SYSCLK这个是系统参考时钟输入到NCO这个时钟是输出载波的采样时钟PNCLK这个输入信号是伪噪声产生器时钟输入这个时钟设置I和Q数据输出的数据率RESETN这个输入是低全局复位有效位当有效时,外部相位和频率控制字寄存器清零以及停止输出载波DACOUT[7:0]这个输出信号是正弦DAC幅度控制字,它是DACCLK的上升沿有效正弦波输出形式如ft=sin2Foutt+PoutDACCLK这个输出信号是DAC时钟闸门这个时钟是SYSCLK反馈到一个输出管脚来修正NCOIO管脚的延迟DACOUT幅度控制字将在DACCLK的上升沿有效SIN这个输出信号是1位数字正弦波输出这个正弦波的输出是来自相位累加器的MSB管脚的输出频率是输入的频率控制字控制的COS这个输出信号是1位数字余弦波输出这个余弦波输出是来自相位累加器的MSB和下个重要的有意义的位管脚的输出频率由输入的频率控制字来控制的MSIN这个输出信号是一个1位的数字正弦波输出这个正弦波输出是来自相位调制器的MSB管脚的输出频率由输入的频率控制字和相位控制字的相位偏移量来控制的这个正弦波输出跟SIN输出加上一个相位偏移量2/28*PHASEWORD一样MCOS这个输出信号是一个1位的数字余弦波输出这个余弦波输出是来自相位调制器的MSB和下个重要的有意义的位管脚的输出频率由输入的频率控制字和相位控制字的相位偏移量来控制的这个余弦波输出跟COS输出加上一个相位偏移量2/28*PHASEWORD一样IDATA这个输出信号是一个25–1伪随机噪声这不是一个NCO设计的功能但可以用来示范用相位口的相位调制器高层(dds.v)NCO的高层设计举例了NCO设计的功能模块和PN发生模块PN发生器(pngen.v)这个模块并非NCO设计的一部分,但是通常用来产生一个随机数据频率样本来调制输出的载波这个模块使用了PNCLK输入到两个5位金码PN发生器时钟这个PN发生器的输出是IDATA和QDATA输出低层NCO设计模块包括了一个同步频率控制字输入寄存器,一个同步相位控制字输入寄存器,一个32位总线连接相位累加器,一个8位相位加法器,和一个正弦查找表任意一个NCO模块的一个细节描述和PN发生器是由后面段提供的装入频率控制字(loadfw.v)频率装载控制字模块是一个同步装载环路输入FREQWORD[31:0]驱动了一个数据输入到取样在FWWRN写控制的上升沿的32位fwreg寄存器FWWRN闸门也驱动数据输入到一个亚稳态的拍fwwrnm用于和一个同步寄存器fwwrns增长来产生一个FWWRN上升沿闸门这个上升沿闸门loadp1是为后来滚边的附加的3时钟周期产生的装载闸门loadp2,loadp3,loadp4这些装载闸门是用来更新同步管道线8位寄存器pipefw1,pipefw2,pipefw3,和pipefw4到取样频率控制字内容的信号这些管道线寄存器用来连接产生32位同步频率控制字输出SYNCFREQ[31:0]来差分补偿32位线性管道相位加法器相位控制字累加器(phasea.v)相位累加器模块是一个32位在8位段有管道线性的累加器这个模块示例了一个原理图定位进位锁在有个进位入和进位出端口的CLA加法器前面同步频率控制字交错起来匹配线性管道累加器是装载到CLA加法器的B输入端口CLA加法器的输出和是寄存在输出约束回到CLA加法器的A输入口管道寄存器CLA加法器的进位输出是寄存在输出约束回到下一个最有意义CLA加法器进位输出的管道寄存器最有意义的输出和寄存器pipe4赋值到PHASE输出端口给予一个相位量化到8位pipe4寄存器计算出一个数字的正弦和余弦值从芯片输出正弦波和余弦波负载阶段loadpw.v负载阶段模块是协调负载循环PHASEWORD[7:0]输入使数据输入记录32位关于上升的PWWRN的边缘取样选通PWWRN选通也使数据输入到一个metas表,移动pwwrnm,它使用与一到一同步pwwrns产生一个FWWRN上升边缘选通提高边缘选通负载用于当不断改进同步的阶段记录phswd时产生信号phswd记录被分配到同步阶段的输出SYNCPHSWD[7:0].相位调制器phasemod.v相位调制模块经常阶段补偿8位量化与同步阶段从负载段模块一起的阶段模块这些模块以具体事例说明加法器CLA与同A一起输入并随着那些同步生产阶段和输入B到生产模块阶段加法器的和数据输出在mphsreg内记录并且分配到MODPHASE输出端口MSIN和MCOS被代入到正弦的调节版本和余弦值计算正弦锁sinlup.v模块用的调节的阶段值形态相位调制器街区,翻译量化的8位值进一正弦波形成值给8位量化的幅度那些翻译从阶段到幅度被因为表ROM正弦执行那个在方面在这几次模块内用具体事例说明ROM表被降低到一个匀称的正弦波形式的1/4,正弦波形式的MSB相当于被调节的阶段输入这个模块表演重建的计算一正弦波的完整时期由1/4ROM表和调节阶段输入的MSB的代表组成为了更好理解这个模块的处理,要参考如下内容被调节的阶段值是对8位2p/28量化的0到2p的值p/2的量化值,p,3p/2,和2p是0x3F,0x7F,0xBF和0xFFp/2到0的幅值被储存在ROM表中p/2到p的幅值在ROM表中次序颠倒在倒置的ROM表中,3p/2的p的幅值是相同幅值从0到p/2的值最后,幅值3p/2在2p与反向访问的ROM表的3p/2到p相同这个模块处理那些ROM表的地址值和幅度输出来形成整个正弦周期波形式产生正弦波的第一个进程功能是寻址ROM表如此相位角度p/2到p和3p/2到2p就是相反顺序地定位反相寻址是可以转化ROM表地址输出向量来简单完成的当MODPHASE
[6]是“1”和已经寄存在相位加法寄存器时相位已调地址输出就已经倒转了相位地址是用来寻址输出寄存在qwavesin_ff寄存器的ROM正弦表为了构建正弦波形式的负幅度值,调制相位控制字的MSB是两次存到modphase_msb1_ff和modphase_msb2_ff,补偿到phaseadd和qwavesin_ff寄存器的两个周期的延迟延迟的MSB位是当为“1”时用来反转ROM表输出的改变的ROM表输出和延迟的调制相位控制字MSB的反转是最后寄存在dac_ff寄存器和赋值到DACOUT输出端的正弦ROM表(romtab.v)这个模块是从ROM表中得出正弦波这个表转化相位控制字输入到一个正弦幅度输出口为了节省存储空间,仅有1/4对称的正弦波形式是存储在ROM里面这些正弦波值存在表中的是0到255量化为8位的无符号值因此,ROM表需要一个6位相位地址输入和输出一个7位幅度端口Sinlup模块处理相位和幅度值来产生一个完整的正弦周期DanMorelli有超过9年的设计和处理经验他的经验范围包括零散频谱通信(包括GPS,TDRSS,和
802.11),个人电脑芯片的设置和系统体系结构,单元库发展(对于ECL设备)和ASIC发展他已经出版了许多书和被授予了很多专利Dan现在在Accelent系统公司工作,一个电子设计咨询公司,他是该公司的奠基人和副工程师致谢毕业设计是我大学本科学习的过程向学校、社会交出的一张总结答卷它不仅是我对大学四年所学知识的总结,也是把所学知识融会贯通运用到实践中的一次尝试,是衡量我四年学习成果的一个必要标准通过此次的毕业设计,不仅使我深刻的巩固以往的所学习本专业的知识,也实际熟练了本专业的技能操作这让我能够深刻的体会到基础的理论知识与实际实现还是存在的差异,实际应用中还要考虑各个方面的因素,这给我以后的学习和工作奠定了坚实的基础在此我要感谢我的指导教师许书云老师以及胡建明老师从毕业设计的准备到结束,他们在毕业设计过程中给予了我多方面的支持和帮助还要感谢和我一起完成毕业设计的同学们,在这次设计中我们紧密合作、互相协商,不仅锻炼了我们的沟通能力,而且培养了我们的团队精神最后还要感谢我生活以及学习了四年的学院,在这次毕业设计中提供给我们良好的环境以及便利的条件,让我们全心投入到这次毕业设计中再次感谢所有帮助过我的人们!并祝愿我们学院越来越美好!键按下前沿抖动后沿抖动开始置发送允许(P
3.2=1)装入低8位数据至A调用8位数据发送子程序装入高8位数据至A调用8位数据发送子程序发送禁止P
3.0~P
3.2置0结束图5-416位频率数据发送程序流程图YN开始键扫描去抖动键码计算JMP@A+DPTRA=00H01#键处理程序00#键处理程序…#键处理程序…#键处理程序…A=01HA=‥HA=nnH图5-6键处理流程图键释放有无键按下YN。