中文摘要 | 第4-5页 |
Abstract | 第5页 |
第1章 绪论 | 第9-15页 |
1.1 课题研究的背景和意义 | 第9-10页 |
1.2 国内外研究现状 | 第10-13页 |
1.3 课题研究内容和安排 | 第13-15页 |
第2章 设计方案及理论基础 | 第15-25页 |
2.1 存储芯片 | 第15-20页 |
2.1.1 Flash存储器介绍 | 第16-17页 |
2.1.2 Flash芯片性能分析 | 第17-19页 |
2.1.3 NAND Flash芯片结构 | 第19-20页 |
2.2 Peta Linux操作系统 | 第20-21页 |
2.3 编译环境的搭建 | 第21-24页 |
2.3.1 搭建交叉编译环境 | 第21-22页 |
2.3.2 目标板IP核设计 | 第22-23页 |
2.3.3 配置和编译内核 | 第23-24页 |
2.4 本章小结 | 第24-25页 |
第3章 SSD设备的结构设计 | 第25-35页 |
3.1 系统整体介绍 | 第25-26页 |
3.2 FMC接口 | 第26-27页 |
3.3 SSD电子盘结构 | 第27-31页 |
3.3.1 NAND Flash磁盘阵列 | 第27-28页 |
3.3.2 报文处理单元 | 第28-29页 |
3.3.3 MC和NAC | 第29-31页 |
3.4 AXI总线 | 第31-33页 |
3.4.1 AMBA总线协议 | 第31-32页 |
3.4.2 AXI协议 | 第32-33页 |
3.5 下载板结构 | 第33-34页 |
3.5.1 下载板处理器 | 第33页 |
3.5.2 网口、USB3.0 接口 | 第33-34页 |
3.6 本章小结 | 第34-35页 |
第4章 SSD系统软件设计 | 第35-53页 |
4.1 软件的整体架构 | 第35-38页 |
4.1.1 读数据流程 | 第35-36页 |
4.1.2 写数据流程 | 第36-38页 |
4.2 PC端程序及下载板应用程序 | 第38-42页 |
4.2.1 网络编程 | 第38-39页 |
4.2.2 Windows和Linux下的多线程应用 | 第39-41页 |
4.2.3 线程的同步 | 第41-42页 |
4.3 块设备驱动 | 第42-46页 |
4.3.1 块设备的注册和注销 | 第42-44页 |
4.3.2 块设备操作 | 第44页 |
4.3.3 请求队列和bio结构体 | 第44-46页 |
4.4 AXI DMA驱动 | 第46-49页 |
4.4.1 DMA传输数据流程 | 第46页 |
4.4.2 AXI DMA寄存器 | 第46-48页 |
4.4.3 AXI DMA驱动的程序设计 | 第48-49页 |
4.5 软件整体实现 | 第49-52页 |
4.6 本章小结 | 第52-53页 |
第5章 设备软件测试 | 第53-59页 |
5.1 下载板到电子盘通路测试 | 第53-56页 |
5.2 PC端到下载板通路测试 | 第56-57页 |
5.3 数据传输性能提升测试 | 第57-58页 |
5.4 本章小结 | 第58-59页 |
结论 | 第59-60页 |
参考文献 | 第60-66页 |
致谢 | 第66-67页 |
攻读硕士学位期间发表的学术论文 | 第67页 |