学海荡舟手机网

主页 > 实用文摘 > 教育文摘_04 > > 详细内容

用于智能天线设计的多路信号源_无线通信论文

摘要: 本文提出了一种使用直接数字合成(ddfs)的方法来模拟8路信号,用于智能天线的测试及各种通信设备的设计。以及该信号源的硬件电路板设计的一种特殊方法,使得该硬件有较强的扩展性。

    关键字: 多路,信号源,ddfs,可编程器件,高速d/a

    1.引言

    智能天线是由多个天线单元组成的天线阵列,但是传统的波形发生器多为两路,无法模拟智能天线所接收到的阵列信号。本文研制的多通路信号源,能同时产生独立且时钟同步的8路信号。通过可视化的操作界面对各阵元天线的波形进行设计。系统采用了板卡分离的设计使得系统有较强的扩展性,方便了工程人员对通信设备的各种设计。

    2.系统基本原理

    系统框图如图(1)所示。本系统采用ddfs的方法产生所需波形。pld用于地址累加,ram 用于波形存储,本系统采用51系列的单片机进行接口的控制。51系列单片机虽然是8位的单片机,但却是一个十分经典通用的单片机系列。它的操作简单,特别是与计算机的串口的连接,完全不用理会底层的操作。但是它也有一个致命的弱点——运行速度较低,计算性能较低,完全无法和具有流水指令集的dsp相比,因此无法直接使用它实现ddfs频率合成,所以须采用计算机生成波形数据,使用较高频率下工作的pld器件推动ram阵列合成所需的信号。

    系统里波形存储没有采用一般的单一存储器的存储方法,因为在较高频率下无法使用非易失性存储器,若使用高速存储器sram,则在二次加电后数据将会丢失。这里使用了双存储器方法,即同时使用flash和sram存储数据,所需数据通过计算机计算后经串行口或usb口下载到flash中。以后每次加电,数据再从flash转移到高速ram中进行ddfs合成。这样就可以弥补两者的不足。

    前面已经介绍了本系统所使用的双存储器机制,这里再介绍一下各存储器的选型及工作方式。flash使用w29c040,它的写操作是按页操作,每页256个字节,容量为512k字节。sram使用的是alliance的as7c3256-15,容量32k字节,速度为15 。经过电脑计算软件计算所得的数据经过计算机串口或usb口下载到系统板中,在每次加电后数据再从flash转存到ram中。

    在计算机下载中数据又分为从串口下载和usb口下载,数据如果从串口下载首先必须下载到ram中,再一页一页的写到flash中,因为串口速率最高为128000波特率,接收一个字节的最短时间为 ,单片机在写完一个字节后写线就升高,由参考资料的时序可以看出若flash写线变高时间过长就会进入内部的写操作,因此接下载的数据将无法写入flash。为此必须先把256个字节数据写到ram中再从ram写到flash。如果使用usb接口,只要设置在高速状态下就可以直接写flash。

    系统所采用的ram数据位只有8位,而da为12位所以必须由2片ram合成一个12位的数据。但是如果这样,其中一片ram 要丢掉一半的存储空间,所以使用3片ram提供共24位数据给2片da,这样节省了ram空间,其电路如图(2)

    系统的usb接口采用飞利浦的usb接口芯片pdiusbd12。pdiusbd12是一片usb接口芯片它可以把串行数据转换为8位的并行数据,符合通用串行总线usb 1.1 版规范,集成了fifo存储器收发器以及电压调整器,可与任何外部微控制器/微处理实现高速并行接口2m 字节/秒,完全自治的直接内存存取dma 操作,集成320 字节多结构fifo 存储器,主端点的双缓冲配置增加了数据吞吐量并轻松实现实时数据传输,在批量模式和同步模式下均可实现1m 字节/秒的数据传输速率。

    由于微处理器速度限制和数字滤波器运算量的要求,系统通常在中频部分进行数字化,然后再进入dsp进行处理。因此该系统产生的8路模拟信号最高输出为10.7mhz。理论上只要相位累加器的位数足够大相位分辨率可以足够精确,但综合考察目前存储器、计数器的技术水平,选择d/a转换速率不小于要求输出基带最高频率的四倍则。这里选取了ad9752。此芯片是美国ad公司生产的高性能da器件。它是txdactm系列成员之一,其分辨率为12位,速率可达100mhz,它采用单一电源供电,范围为2.7-5.5v。 ad9752采用先进的coms工艺。边缘触发锁存和1.2v的带补偿的内置参考电压,提供了完整的单片dac解决方案。ad9752是差分电流输出,满量程为20ma,输出阻抗大于100kΩ。它的差分电流输出,支持单端或差分应用。电流输出可直接与电阻连接提供两个互补的单端电压输出,也可直接输入变压器,输出电压为1.25v。由于da的时钟是在上升沿锁存数据,因此d/a数据的输入要考虑到在同时钟源下,会与下降沿锁数据的器件存在一个脉冲的时延,因此在它的时钟端加入了一个非门进行时钟的翻转。da输出的信号须加以低通滤波器平滑信号,但由于所需信号为一个10.7m的带通信号所以可以用一个带通滤波器代替。

    pld使用的是max7128-15,在设计时使用了图形化参数宏模块(lpm)和硬件描述语言(ahdl)相结合的方法。pld内部框图如图(3)。其中外部数据总线用于连接单片机的地址和数据总线。由于系统共用一套总线所以总线控制主要是进行总线的仲裁,使单片机不会与相位累加器产生总线上的碰撞。地址,数据总线用于连接ram地址和数据总线,地址译码用于选择各个ram。

    3.电路板设计

    在电路板的设计中发现,如果使用一块电路板则布线过长且有较多的信号反射。而且系统时钟走线很难达到一致。纵观此系统发现,此系统电路单元重复较多。所以采用了板卡分离的设计方法,即把单片机和可编程器件作为系统主板如图(4)左,而把da和ram作为一块扩展卡,每个扩展卡上有两路输出信号,通过总线扩展把他们连接起来。这样就可使用不同的扩展卡实现不同的系统功能,为系统更进一步的开发提供了很宽的空间。此外这样的设计也减小了系统的体积,提高了单元电路的利用率。

    4.软件设计

    控制程序设计

    在单片机上所需实现的主要是各种端口的控制,没有较复杂的算法,因此只给出了程序的流程图,其中包括中断处理程序和上电复位初始化程序两部分。在初始化的时候对usb的初始化稍复杂,须进行usb总线的枚举,同步断点使能,模式设置等。各流程如图(5)

    系统软件设计

    系统软件采用vb编写,主要是完成数据的下载和波形的计算。对于数据的下载主要是对串口和usb的操作。在vb中有大量的控件可使用,使得各种操作变得简单。在下载程序中主要使用了microsoft comm control控件控制串行口的数据下载,这里得串口采用定时中断的方式发送数据。这是因为在单片机端为了设计简单没有进行数据的流控,因此数据可能会丢失。对于usb的操作vb需要调用creatfile(),creatfile(),writefile(),clossefile()等api函数。调用这些api需要进行申明,但是它的申明与c中有所不同,具体参考了vb中所带的“api文本浏览器”中的内容。系统软件除了负责下载还要负责进行波形的数据计算,此系统主要是给智能天线测试用,所以设计的软件只模拟天线阵列中8个天线接收的不同信号。它可以调整信号的数量,可以对每个信号进行幅度和相位的调整,并且可以模拟理想状态下的阵列输出信号,这样便可以与所要测试的系统进行比较。图(6)是软件界面。图中只显示了两路信号,图(7)是用示波器显示的与图(6)相对应的系统输出波形。

    5.结语

    这个系统方便了通信设计人员对通信设备的设计和调试。同时该系统的灵活设计使得系统又有较强的扩展功能,更换板卡就可以使系统具有不同的功能。使得系统可以方便的用于其它设备设计的调试中。