学位论文 > 优秀研究生学位论文题录展示

光纤通道HBA卡的研究与实现

作 者: 丁林
导 师: 涂晓东
学 校: 电子科技大学
专 业: 通信与信息系统
关键词: HBA卡 FCP协议 DMA引擎
分类号: TN929.11
类 型: 硕士论文
年 份: 2010年
下 载: 77次
引 用: 0次
阅 读: 论文下载
 

内容摘要


今天,随着信息技术的突飞猛进,在商业运转和学术研究中产生了越来越多的海量数据。随着存储区域网络(SAN)的应运而生,它已成为人们解决存储带宽、容量和管理问题的首选方案。SAN是一种将远方存储设备(如磁盘阵列、磁带库、光盘库)连接到服务器,并且能够使服务器上的客户应用将其作为本地存储设备进行访问的网络体系。FC SAN是出现最早、应用最广的一种SAN,其网络基于光纤通道技术,高效、稳定、安全是其主要优势。光纤通道HBA卡是将主机接入FC SAN必不可少的设备。它通常插在服务器主板的PCI-X或PCI Express插槽中,为服务器提供到存储设备的物理连接。它的核心协议是FCP协议。该协议位于FC协议族的FC-4层,实现了SCSI到光纤通道的映射。本文的目的就是设计并实现一块HBA卡。技术核心和难点就是如何用硬件和软件实现HBA卡的核心协议――FCP协议,因为不同的实现方案会对HBA卡的I/O性能产生决定性的影响。本文的主要工作就是设计了一套FCP硬件辅助处理的方案,将FCP协议中大量重复性的简单工作交给硬件完成(如SCSI数据的分割与重组)。驱动将不再以FC帧为单位进行处理,只需要在SCSI I/O操作的开始和结束时进行交换管理即可。这极大地减少了中断的次数、降低了CPU的负担。设计的硬件开发环境是Xilinx FPGA开发板ml506,通过verilog HDL实现了FCP辅助处理的硬件逻辑。并在2.6.18内核版本的Redhat Linux环境下开发了驱动程序。本文首先对HBA卡的相关协议(主要是FCP协议)进行了介绍,包括FCP I/O操作流程、FCP信息单元等。而后描述了FCP硬件辅助处理方案,并大致介绍了该方案下的软硬件接口、硬件的模块功能划分以及驱动的结构和处理流程。接着就对硬件各个模块的实现进行了详细阐述,并描述了软件的数据结构和重要函数。最后,我们搭建了测试环境,并对测试结果进行分析,还对目前系统的不足提出改进的方向。

全文目录


摘要  4-5
ABSTRACT  5-9
第一章 引言  9-14
  1.1 存储区域网络  9-10
  1.2 光纤通道HBA 卡介绍  10-11
  1.3 国内外研究进展  11-12
  1.4 本课题的研究目的与意义  12-14
第二章 HBA 卡相关协议分析  14-24
  2.1 光纤通道(Fibre Channel)协议  14-16
    2.1.1 光纤通道数据层次  15
    2.1.2 光纤通道协议封装  15-16
  2.2 FCP(Fibre Channel Protocol for SCSI)协议  16-23
    2.2.1 SCSI 与FC 协议的映射关系  16-18
    2.2.2 FCP 信息单元(FCP IU)  18-21
    2.2.3 FCP I/O 操作流程  21-23
  2.3 本章小结  23-24
第三章 HBA 卡设计  24-46
  3.1 HBA 卡功能描述  24
  3.2 HBA 卡内部模块描述  24-26
  3.3 FCP 硬件辅助处理  26-29
    3.3.1 初始器写I/O 操作  26-28
    3.3.2 初始器读I/O 操作  28-29
  3.4 非FCP 帧的处理  29-30
    3.4.1 单帧序列的发送操作  29-30
    3.4.2 不能识别帧的接收操作  30
  3.5 完成消息(Completion Messages,CM)  30-33
  3.6 HBA 卡驱动设计  33-41
    3.6.1 Linux SCSI 子系统  33-34
    3.6.2 Linux SCSI 主机驱动(SCSI host driver)  34-38
    3.6.3 PCI 设备驱动  38-39
    3.6.4 HBA 卡驱动总体设计  39-41
  3.7 HBA 卡硬件设计  41-45
    3.7.1 FC 协议相关部分  41-43
    3.7.2 DMA 引擎  43-45
  3.8 本章小结  45-46
第四章 光纤通道HBA 卡硬件的实现  46-64
  4.1 总体实现平台  46-47
    4.1.1 硬件实现平台  46
    4.1.2 软件开发工具  46-47
  4.2 FCP 辅助处理的硬件实现  47-56
    4.2.1 交换请求管理器  47
    4.2.2 SEST 表项管理器  47-50
    4.2.3 出站序列管理器  50-51
    4.2.4 出站数据管理器  51-52
    4.2.5 单帧管理器  52-53
    4.2.6 完成信息管理器  53
    4.2.7 入站数据管理器  53-55
    4.2.8 入站序列管理器  55-56
  4.3 DMA 引擎的实现  56-63
    4.3.1 PCI Express IP 核  56
    4.3.2 接收状态机  56-58
    4.3.3 发送状态机  58-60
    4.3.4 中断控制器  60-61
    4.3.5 存储控制器  61-62
    4.3.6 DMA 控制器  62-63
  4.4 本章小结  63-64
第五章 光纤通道HBA 卡驱动的实现  64-82
  5.1 重要数据结构  64-71
    5.1.1 系统数据结构  64-67
    5.1.2 驱动相关数据结构  67-71
  5.2 HBA 卡的初始化与释放  71-73
  5.3 SCSI 设备模版相关函数  73-76
  5.4 中断处理函数  76-78
  5.5 worker_thread 内核线程  78-80
    5.5.1 线程的处理任务  78-80
    5.5.2 与FC 链路服务处理代码的接口  80
  5.6 本章小结  80-82
第六章 样机测试  82-89
  6.1 测试环境  82-83
  6.2 测试结果  83-88
  6.3 本章小结  88-89
第七章 结束语  89-90
  7.1 本文的工作  89
  7.2 进一步研究工作展望  89-90
致谢  90-91
参考文献  91-93
攻硕期间取得的研究成果  93-94

相似论文

  1. 基于光纤通道的通信系统的研究与实现,TN929.1
  2. 高速网络接口卡DMA机制的研究与实现,TP334.7
  3. CIA网卡中支持零拷贝的高效软硬件交互机制的研究与实现,TP393.08
  4. 高速孤子传输系统中定时抖动的限制及其抑制方法,TN929.11
  5. 光纤通信系统中基于BDFE的低复杂度MLSE算法研究,TN929.11
  6. DPSK光纤通信系统非线性效应问题的研究,TN929.11
  7. 应用于超高速光纤通信系统中的CDR电路的研究与设计,TN929.11
  8. 多模光纤微波光子链路中的模式噪声研究,TN929.11
  9. 新型调制格式信号的产生与相位再生的研究,TN929.11
  10. 超长站距遥泵光纤通信系统优化分析软件研究,TN929.11
  11. 基于PCI Express总线的光纤图像传输系统设计与实现,TN929.11
  12. 超短光脉冲产生技术研究,TN929.11
  13. PMD测试方法及其应用的研究,TN929.11
  14. 高速光纤通信系统中高阶偏振模色散自适应补偿的研究,TN929.11
  15. EDFA在高速光纤通信系统中的应用研究,TN929.11
  16. 工程实践中的光纤损耗的研究,TN929.11
  17. SFP光模块数字诊断功能的研究与实现,TN929.11
  18. 基于复用技术的矿用光纤通信系统的研究与设计,TN929.11
  19. 应用相敏光放大器补偿孤子系统中偏振模色散的研究,TN929.11
  20. 高速光纤通信系统利用相敏光放大器补偿偏振模色散的研究,TN929.11
  21. DWDM高速多通道孤子传输系统的稳定性研究,TN929.11

中图分类: > 工业技术 > 无线电电子学、电信技术 > 无线通信 > 光波通信、激光通信 > 光纤通信
© 2012 www.xueweilunwen.com