基于OHCI的USB主机 —— UFI命令概述

大容量存储设备一般指 U 盘、移动硬盘等,在这些设备上进行数据传输一般包括两层,物理传输层和命令块层。

 

物理传输层用于处理命令块,包括主机传输命令块到大容量类设备、主机与大容量设备间的数据传输和主机接收命令块处理状态。传输协议一般为 Bulk-Only 协议和 CBI-Only 协议,该层为命令块层提供命令块处理函数的统一接口,使命令块层不需要理会当前大容量类设备的传输协议。

 

命令块层包含在 Bulk-Only 协议的数据包内,包含了 RBC SFF-8020i/MMC-2 QIC-157 UFI SFF-8070i UFI 6 个指令集,严格来说大容量类主机端的驱动都应该支持全部命令集,但实际上常用的大容量设备都使用 UFI 指令集。

USB  国际组织定义了大容量存储类( Mass Storage Class )的规范,包括四个独立的子类规范:
1  USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport
2  USB Mass Storage Class Bulk-Only Transport
3  USB Mass Storage Class ATA Command Block
4  USB Mass Storage Class UFI Command Specification

 

前两个子规范定义了 USB 大容量存储设备进行数据 / 命令 / 状态传输两种基本方法。 Bulk- Only 传输规范仅仅使用批量( Bulk )端点传送数据 / 命令 / 状态, CBI 传输规范则使用控制( Control )、批量( Bulk )、中断  Interrupt )三种类型端点进行数据 / 命令 / 状态传送。后两个子规范则定义了存储介质的操作命令。 ATA 命令规范用于硬盘, UFI 命令规范是基于  SCSI- 2 SFF-8070i 命令规范发展二来,其针对 USB 移动存储类设备。

 

U 盘的 Host 主机程序中,实际上只用到了上述 4 个规范的第 2 4 两个规范。





本文转自 tywali 51CTO博客,原文链接:http://blog.51cto.com/lancelot/292103,如需转载请自行联系原作者
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值