致谢 | 第5-6页 |
摘要 | 第6-7页 |
Abstract | 第7页 |
1 绪论 | 第14-20页 |
1.1 研究背景 | 第14-15页 |
1.2 国内外研究现状 | 第15-16页 |
1.3 论文主要工作和组织结构 | 第16-20页 |
1.3.1 论文主要工作 | 第16-17页 |
1.3.2 论文组织结构 | 第17-20页 |
2 基于VPX的异构系统关键技术概要 | 第20-30页 |
2.1 PCI总线协议和PCIe总线协议 | 第20-27页 |
2.1.1 PCI总线协议 | 第20-23页 |
2.1.1.1 PCI总线的组成结构 | 第20-21页 |
2.1.1.2 PCI总线配置 | 第21-22页 |
2.1.1.3 PCI总线数据传送 | 第22页 |
2.1.1.4 PCI总线优势 | 第22-23页 |
2.1.2 PCIe总线协议 | 第23-27页 |
2.1.2.1 PCIe协议简介 | 第23-25页 |
2.1.2.2 PCIe总线技术优势 | 第25-26页 |
2.1.2.3 PCIe总线的层次结构 | 第26-27页 |
2.2 操作系统 | 第27-29页 |
2.3 本章小节 | 第29-30页 |
3 基于VPX的异构系统的总体方案设计 | 第30-36页 |
3.1 基于VPX的异构系统性能指标 | 第30页 |
3.2 系统整体硬件结构设计 | 第30-33页 |
3.2.1 主控模块 | 第31-32页 |
3.2.2 信号处理模块 | 第32页 |
3.2.3 存储模块 | 第32-33页 |
3.3 系统软件整体设计方案 | 第33-34页 |
3.3.1 Windows软件设计 | 第33-34页 |
3.3.2 VxWorks软件设计 | 第34页 |
3.4 系统主要数据通路 | 第34-35页 |
3.5 本章小节 | 第35-36页 |
4 基于VPX的异构系统的通讯和管理软件框架设计 | 第36-52页 |
4.1 驱动程序概述 | 第36-37页 |
4.2 WDF驱动程序的基本框架结构 | 第37-39页 |
4.2.1 WDF驱动程序模型 | 第37页 |
4.2.2 设备和驱动程序的层次结构 | 第37-39页 |
4.3 DriverEntry例程和EvtDriverDeviceAdd例程 | 第39-40页 |
4.4 IRP和派遣函数 | 第40-44页 |
4.4.1 IRP | 第40-41页 |
4.4.2 IRP类型 | 第41-42页 |
4.4.3 I/O传输的方式 | 第42-43页 |
4.4.4 IRP处理方式 | 第43-44页 |
4.5 中断处理 | 第44-47页 |
4.5.1 中断请求级 | 第44-45页 |
4.5.2 中断服务例程 | 第45-46页 |
4.5.3 DPC例程 | 第46-47页 |
4.6 即插即用例程 | 第47页 |
4.7 基于WDF的PCIe驱动硬件访问框架 | 第47-48页 |
4.8 系统软件框架总体归纳 | 第48-51页 |
4.9 本章小节 | 第51-52页 |
5 基于VPX的异构系统的通讯和管理软件逻辑设计 | 第52-70页 |
5.1 软件逻辑分析 | 第52-53页 |
5.2 主控模块软件逻辑设计 | 第53-68页 |
5.2.1 基于WDF的PCIe驱动程序的管理业务设计 | 第54-60页 |
5.2.1.1 命令包的结构 | 第54-55页 |
5.2.1.2 命令包的交互方式 | 第55-56页 |
5.2.1.3 中断方式 | 第56页 |
5.2.1.4 寄存器接口设计 | 第56-59页 |
5.2.1.5 自定义缓冲区设计 | 第59-60页 |
5.2.2 基于WDF的PCIe驱动程序的数据业务设计 | 第60-64页 |
5.2.2.1 单路读写数据流设计 | 第60-63页 |
5.2.2.2 多路读写数据流设计 | 第63-64页 |
5.2.3 C++静态接口的管理业务设计 | 第64-66页 |
5.2.3.1 命令的发送 | 第64-65页 |
5.2.3.2 返回的接收 | 第65页 |
5.2.3.3 逻辑转换 | 第65-66页 |
5.2.4 C++静态接口的数据业务设计 | 第66-67页 |
5.2.5 应用程序逻辑设计 | 第67-68页 |
5.3 本章小节 | 第68-70页 |
6 基于VPX的异构系统的通讯和管理软件实现 | 第70-90页 |
6.1 INF文件编写 | 第70-72页 |
6.2 软件架构搭建 | 第72-77页 |
6.2.1 PCIe驱动程序入口函数 | 第72-73页 |
6.2.2 PCIe驱动程序初始化 | 第73-77页 |
6.2.2.1 创建I/O队列 | 第73-74页 |
6.2.2.2 创建中断对象 | 第74页 |
6.2.2.3 获取和释放设备内存空间 | 第74-76页 |
6.2.2.4 创建交互缓冲区 | 第76页 |
6.2.2.5 创建设备GUID接口 | 第76-77页 |
6.3 数据业务 | 第77-83页 |
6.3.1 读数据流 | 第78-81页 |
6.3.2 写数据流 | 第81-83页 |
6.4 管理业务 | 第83-89页 |
6.4.1 命令的发送 | 第83-85页 |
6.4.2 返回的接收 | 第85-86页 |
6.4.3 串并行控制 | 第86-87页 |
6.4.4 系统逻辑管理 | 第87-88页 |
6.4.5 操作可视化 | 第88-89页 |
6.5 本章小节 | 第89-90页 |
7 基于VPX的异构系统的通讯和管理软件测试与验证 | 第90-104页 |
7.1 软件调试 | 第90-92页 |
7.1.1 驱动程序调试 | 第90-91页 |
7.1.2 应用程序调试 | 第91-92页 |
7.2 软件安装 | 第92-93页 |
7.3 软件测试 | 第93-102页 |
7.3.1 测试需求分析 | 第93-94页 |
7.3.2 软件测试方案 | 第94-95页 |
7.3.3 速度测试 | 第95-97页 |
7.3.4 命令响应时间及其正确性测试 | 第97-99页 |
7.3.5 高并发测试 | 第99-100页 |
7.3.6 寄存器接口和驱动程序缓冲区测试 | 第100-102页 |
7.4 本章小节 | 第102-104页 |
8 总结和展望 | 第104-108页 |
8.1 总结 | 第104-105页 |
8.2 展望 | 第105-108页 |
参考文献 | 第108-112页 |
作者简历 | 第112页 |