基于SXP36x6G的SAS Expander固件设计
中文摘要 | 第1-4页 |
ABSTRACT | 第4-8页 |
第一章 绪论 | 第8-15页 |
·项目背景 | 第8页 |
·技术背景 | 第8-15页 |
·并行 SCSI 技术 | 第8-9页 |
·串行 SCSI 技术 | 第9-15页 |
·SAS 协议介绍 | 第10-11页 |
·SAS Expander | 第11-15页 |
第二章 开发平台 | 第15-19页 |
·器件描述 | 第15-17页 |
·开发与调试环境 | 第17-19页 |
第三章 固件架构设计 | 第19-27页 |
·固件模块定义 | 第19-23页 |
·Boot Loader 模块 | 第20页 |
·实时操作系统接口模块 | 第20页 |
·设备驱动模块 | 第20-21页 |
·SCSI Target 模拟器模块 | 第21页 |
·SAS 端口模块 | 第21页 |
·SMP 发起者模块 | 第21页 |
·SMP 目标模块(SMP Target) | 第21页 |
·SMP 拓扑管理模块 | 第21-22页 |
·SMP 发起者模块 | 第22页 |
·STP 发起者模块 | 第22页 |
·机箱管理程序 | 第22页 |
·硬盘启动管理模块 | 第22页 |
·硬盘验证模块 | 第22页 |
·SCSI 发起者程序 | 第22页 |
·SATA Host 程序 | 第22-23页 |
·端口管理器模块 | 第23页 |
·任务模型定义 | 第23-27页 |
·任务功能定义 | 第24-26页 |
·线程优先级定义 | 第26-27页 |
第四章 固件实现 | 第27-82页 |
·实时操作系统接口 | 第27-59页 |
·总览 | 第27页 |
·OSI 运行时服务 | 第27页 |
·OSI 启动服务 | 第27-28页 |
·OSI API 综述 | 第28页 |
·系统初始化函数 | 第28-31页 |
·接口函数定义 | 第28-30页 |
·系统配置结构体定义 | 第30-31页 |
·用户内存管理 | 第31-36页 |
·接口函数定义 | 第32-36页 |
·内存池分配架构 | 第36页 |
·线程 | 第36-40页 |
·接口函数定义 | 第37-39页 |
·线程状态定义 | 第39-40页 |
·OSI 模块线程部分架构 | 第40页 |
·任务间通信 | 第40-46页 |
·接口函数定义 | 第41-44页 |
·数据结构定义 | 第44-45页 |
·控制结构体关系 | 第45-46页 |
·日志模块 | 第46-55页 |
·接口函数定义 | 第48-55页 |
·信号量 | 第55-59页 |
·接口函数定义 | 第55-59页 |
·设备驱动 | 第59-77页 |
·TWI(I2C)驱动 | 第59-65页 |
·接口函数定义 | 第59-65页 |
·UART 驱动 | 第65-69页 |
·接口函数定义 | 第65-69页 |
·GPIO 驱动 | 第69-70页 |
·接口函数定义 | 第69-70页 |
·FLASH 驱动 | 第70-77页 |
·接口函数定义 | 第70-77页 |
·引导加载程序(Boot Loader) | 第77-82页 |
·引导过程 | 第77-79页 |
·FLASH 空间划分 | 第79-80页 |
·FLASH 镜像验证 | 第80页 |
·固件更新机制 | 第80-82页 |
第五章 设计验证 | 第82-95页 |
·测试平台介绍 | 第82-83页 |
·硬盘仓(HDD Enclosure) | 第82-83页 |
·主机系统 | 第83页 |
·测试报告 | 第83-95页 |
·硬盘状态指示灯测试 | 第83-86页 |
·离线硬盘指示灯检测 | 第83-84页 |
·在线硬盘指示灯检测—进入操作系统 | 第84-85页 |
·在线硬盘指示灯检测 POST 阶段 | 第85-86页 |
·命令行接口测试 | 第86-90页 |
·“info“命令检测 | 第86-87页 |
·“stat“命令检测 | 第87页 |
·“phyon/phyoff“命令检测 | 第87-88页 |
·“ses_supp“命令检测 | 第88页 |
·“ses_conf“命令检测 | 第88-89页 |
·“ses_encl_stat“命令检测 | 第89-90页 |
·数据完整性与效能测试 | 第90-95页 |
·行大数据块低并发度顺序访问 | 第90-92页 |
·小数据块高并发度随机访问 | 第92-93页 |
·行长时间小数据块高并发度随机访问 | 第93-95页 |
第六章 结论 | 第95-96页 |
参考文献 | 第96-99页 |
致谢 | 第99页 |