标准实验报告一软件无线电实验平台基本通信实验.doc

标准实验报告一软件无线电实验平台基本通信实验.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE PAGE 12 电 子 科 技 大 学 实 验 报 告 学生姓名: 学 号: 指导教师: 一、实验室名称:通信信号处理及传输实验室 二、实验项目名称:软件无线电实验平台基本通信实验 三、实验原理: 软件无线电实验平台组成及工作原理 高级软件无线电综合实验系统平台由6个模块组成,分别如下:ARM模块、FPGA模块、MCU模块、DSP模块、BASEBAND AD\DA模块、RF模块。 各模块功能如下: ARM(S3C2410)模块其上的操作系统为WINCE5.0,提供用户交互界面。应用程序与FPGA的交互通过SPI接口驱动实现,应用程序与DSP(C6713)的交互通过HPI接口驱动实现; DSP(C6713)模块主要实现基带信号的调制与解调。其与ARM的接口为HPI;与FPGA的接口是MCBSP; FPGA(XC3S400)主要实现外部模拟信号的AD采样,以及数字与模拟转换的DA控制,与RF模块联合实现CC2420的功能。其与DSP的接口为MCBSP,与MCU(C8051F120)是通过SPI以及MCU的P1、P3口实现交互; MCU模块主要实现对RF发射功率,发射、接收信道等一些工作参数配置。其与FPGA的交互是通过SPI以及P1、P3口实现的; BASE BAND AD\DA模块主要实现数模转换的功能; RF模块主要实现将基带信号转化为射频信号,然后发射出去。其与FPGA的通信是通过RF自定义接口实现的。 各模块间的通信以及接口示意如图1所示: 图1 软件无线电实验平台模块结构 DSP与ARM通信原理 DSP与ARM通过HPI接口协同工作,实现通信。ARM主要提供用户交互的界面,用户可以在程序界面中输入传输的数据,ARM将用户输入的数据通过HPI口发送给DSP,并且通知DSP开始工作。DSP在接收到ARM发送的开始工作命令后,从固定的地址获取ARM传送的数据长度以及数据存放地址,然后到相应地址读取数据,将读取到的数据进行搬移,搬移完毕后发送HINT中断给ARM通知DSP端数据操作已经完成。ARM接收到DSP发送的HINT中断后从DSP相应位置读取DSP搬移后的数据,重新在应用程序界面中显示。工作原理简易框图如图2所示: 图 2 DSP和ARM工作原理框图 HPI接口简介 HPI口是并行接口, HOST可以通过HPI口直接访问DSP的存储空间。HOST作为HPI接口的主控,访问非常便捷。 HOST与DSP可以通过内部或者外部存储器交换信息。并且HOST端可以直接访问内存映射的外设。HPI与DSP的CPU连接是通过DMA或者EDMA实现的。HOST以及DSP都可以访问HPI控制寄存器HPIC。通过外部数据以及接口控制信号HOST端可以访问HPI地址寄存器HPIA,HPI数据寄存器HPID。C64XX系列DSP端CPU也可以访问HPIA。 TMS320C6713的HPI硬件接口如图3 所示: 图 3 DSP HPI 接口示意图 其时序图如图4: 图4 HPI 时序图 DSP程序示例 DSP与ARM通信完成如下内容: 在数据输入界面中输入数据按ENTER后,ARM将用户输入的数据长度一通过HPI口写在DSP的SDRAM的0X20008地址中;把用户输入数据所存储的地址放在0x10000的地址单元中;把数据写在0X20004(存储在0X1000)开始的位置。置位FLAG=1通知DSP用户已经输入数据。 DSP在检测到0x20000存储的数据为1后,首先从0X20008获取用户输入的数据长度;然后从0X1000获得用户输入的数据存储在何位置。在得到位置与长度信息后,DSP程序将数据拷贝到0开始的位置。完成数据搬移后,DSP发送HINT中断,通知ARM,数据处理已经完成。 如上功能的DSP示例程序如下: while(1) { flag=*((int *)(0x20000)); if(flag==1) { temp=(*((int *)0x20004)); pData=(int *)temp; iCountData=*((int *)0x20008); pMovedData=(int*)0 (*pMovedData++)=iCountData; for (i=1;i=iCountData;i++) { (*pMovedData++)=(*pData++); } HPI_setHint(1); } } FPGA控制AD、DA实验 本实验根据数模转换器芯片AD9201,AD9761的工作时序,首先对输

您可能关注的文档

文档评论(0)

yuguanyin2015 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档