打印

请问现在的大容量类设备中用的最多的是SCSI还是UFI?

[复制链接]
4850|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wlsui|  楼主 | 2007-11-25 17:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
computer00| | 2007-11-25 20:17 | 只看该作者

我见过的基本上都是SCSI吧。不过如果你做主机并且要求都兼

那你没得选择,协议都得做上,要不就需要单独标明不支持某某协议。

使用特权

评论回复
板凳
平常人| | 2007-11-25 20:28 | 只看该作者

严格地说是RBC

请看文档:Mass Storage Overview 1.2 

UFI用的是CBI,而大容量类设备中使用的是BOT,还是多看看文档吧:
Mass Storage Bulk Only 1.0 
Mass Storage Control/Bulk/Interrupt (CBI) Specification 1.1  
Mass Storage UFI Command Specification 1.0 

使用特权

评论回复
地板
wlsui|  楼主 | 2007-11-25 21:21 | 只看该作者

我现在就是只实现RBC里面的部分命令

实际上我实现的也就是RBC命令,不过并没有实现所有的命令,只做了常用的那几个.
我最初以为只要是采用RBC定义的命令那对所有的设备都适应,因为我刚开始的时候在Mass Storage Overview 1.2 Table2.1里看到这么一句话:However,any Mass Storage device can use RBC command blocks.但后来发现,是can use,而不是should use 或must use(可见我刚开始看的时候太粗心了)),也就是说,大容量设备可以使用RBC,言下之意也可以不使用.所以想问下有多少设备不是SCSI的.

使用特权

评论回复
5
wlsui|  楼主 | 2007-11-25 21:39 | 只看该作者

另:

对平常人的"UFI用的是CBI,而大容量类设备中使用的是BOT"这句话有些疑问:

1. 从这句话可以看出,UFI用的是CBI,而且UFI不会用BOT,但在Mass Storage UFI Command Specification 1.0 文档里的第1节Introduction有这么一句话:The method used to transport this information over the USB is defined by the Bulk-Only or CBI transport specifications
以及第2节 USB Usage:the transport of command blocks,data, and status information as defined by the Bulk-Only or CBI Transport specifications
也就是说,UFI不只可以用CBI,也可以用BOT啊

2. "UFI用的是CBI,而大容量类设备中使用的是BOT", 对于UFI的CBI等,也是大容量类设备中的一种吧,但这句话说的大容量类设备似乎只有BOT了.

不知道我的理解对不对,我是菜鸟,所以就算理解错了也不怕别人笑话.请平常人和圈圈多指点一下啊.

使用特权

评论回复
6
平常人| | 2007-11-25 22:01 | 只看该作者

谢谢5楼指正,我这里说的不够严谨

首先我把大容量类设备简单地归到U盘,因为U盘用的是BOT,或更准确地说是在Windows环境下,U盘用的是BOT,所以我说大容量类设备中使用的是BOT;此为其一之不严谨。

其二之不严谨仍然是以Windows环境下的UFI使用了CBI,所以我之前说“UFI用的是CBI”,应该说“在Windows环境下USB软盘使用的UFI是用的CBI”。

使用特权

评论回复
7
wlsui|  楼主 | 2007-11-25 23:54 | 只看该作者

多谢指点

发现每一次跟平常人交流都能长不少见识

匠人不是要写书吗,你什么时候也出本USB方面的书让我们拜读一下啊

使用特权

评论回复
8
computer00| | 2007-11-26 00:19 | 只看该作者

哈哈~~~楼主还是不要等别人了吧,自己慢慢看协议吧

我倒是宁可自己看协议,别人翻译的俺总是不放心,嘿嘿嘿...


使用特权

评论回复
9
xwj| | 2007-11-26 00:27 | 只看该作者

呵呵,平常人的回答确实很专业

LZ要做得全兼容的话不是那么容易的,需要仔细啃相当多的资料哦

使用特权

评论回复
10
hotpower| | 2007-11-26 07:46 | 只看该作者

他不专业谁专业,谁让他学的就是那个专业呢???

使用特权

评论回复
11
wlsui|  楼主 | 2007-11-26 21:16 | 只看该作者

不做全兼容的:

毕竟,我这是嵌入式主机,不是PC机的USB主机
我现在做法是如果不是SCSI的则返回不支持信息,毕竟现在常见的大容量设备基本上都是SCSI的
否则,等我看完所有的协议规范,头发都白了

使用特权

评论回复
12
computer00| | 2007-11-26 21:28 | 只看该作者

给人家配个U盘,哈哈,顺便还能赚一笔~~~

使用特权

评论回复
13
平常人| | 2007-11-26 21:31 | 只看该作者

回hotpower:俺学的是软件专业,上学时还没有USB呢,只有USA

十几年前,公司让我关注USB的动向,我就把USB协议(草案)打印出来苦读了两个月,这两个月中什么其它事情都没做,那时连个能做USB的芯片都没有,更不要说例程了;随后逐步跟踪正式协议文本和早期的一些类协议,等本公司真正有USB芯片时,公司里的第一批例程自然就出自我的手了。但可惜USB2.0出来后我转作其他工作,这方面的动向也没有再跟踪了,USB方面的**也逐渐淡薄了。

这不是我的专业,这是我的工作!

使用特权

评论回复
14
ty03| | 2007-11-26 21:34 | 只看该作者

LS是真正的牛B

     

使用特权

评论回复
15
hotpower| | 2007-11-26 21:58 | 只看该作者

哈哈~~~俺要拜平常人和圈圈为USB老师~~~跪拜了2位老师!!!

使用特权

评论回复
16
computer00| | 2007-11-26 22:05 | 只看该作者

我晕...受不起,赶快躲开........

使用特权

评论回复
17
hotpower| | 2007-11-26 22:06 | 只看该作者

倒塌了~~~跑什么,俺又没把选票投给你~~~

使用特权

评论回复
18
helen01| | 2010-2-27 15:57 | 只看该作者
请问PTP协议怎么在USB里实现,是SLAVE的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

27

主题

263

帖子

1

粉丝