论文部分内容阅读
传统的软件无线电硬件平台一般是使用FPGA或者DSP来实现基带的数据处理功能,但这种传统硬件平台往往研发周期长、硬件编程复杂,而SoftwareRadio(Sora)系统重新定义了一种全新模式的基于通用PC的软件无线电硬件平台,这种平台将所有的基带数据处理过程全部使用通用通用PC处理,使得这种软件无线电平台具有非常高的通用性特点。但由于无线通信应用中对数据传输速率的要求越来越高,基带数据量激增,为了满足这种需求,本文采用基于第三代I/O总线PCI Express的数据接口来完成基带到射频的数据传输,验证第三代总线技术在Sora系统中可行性以及速率优势。
本文首先查阅学习PCI Express协议规范,对PCI Express总线和传统PCI总线的速率进行对比分析,得出结论认为传统的PCI总线难以满足将来软件无线电对基带数据传输速率的要求,而PCI Express总线得益于串行通信方式的优势,可以提供数数十Gbps的点到点传输速率,可以满足现在及未来一段时间之内软件无线电对基带数据传输的要求。
在以上结论的基础上,本文接着重点学习PCI Express的事务层协议,分析了DMA传输方式对于使用PCI Express总线进行数据传输的必要性。并且针对x86平台主机侧没有实现PCI Express DMA控制器的现状,使用Xilinx Virtex6系列FPGA设计和实现了一种基于从设备的DMA控制器,完成主机和设备之间的DMA方式数据传输,从而避免了PCIe总线带宽的无畏浪费。
为了实现主机和PCIe硬件板卡之间的数据传输功能,除了需要PCIe设备侧硬件程序的支持之外,在主机侧还需要实现PCIe设备的驱动程序。因此本文使用微软的新一代设备驱动开发模型Windows Driver Foundation设计了针对本传输接口的驱动程序,为主机访问硬件提供支持。
最后,本文通过以上的驱动程序,对本课题中设计的带DMA控制器的PCIe设备进行了测试,并针对使用不同数据传输长度和事务包最大净荷长度的场景分别对DMA传输方式的传输效率进行了分析和估算,给出尽可能提高带宽效率的思路。