可提升通用序列总线储存设备的读写数据速率的方法技术

技术编号:2823060 阅读:205 留言:0更新日期:2012-04-11 18:40
一种可提升通用序列总线(USB)储存设备的数据读写速率的方法,用以让主机通过USB接口对该USB储存设备进行数据读写,该主机的软件架构上至少具有一巨量传输层及一SCSI层,该方法包含下列步骤:    (a)于该巨量传输层接收由该SCSI层所发出的读/写命令;    (b)判断该读取命令所包含的欲读/写存储容量值是否高于门限值,若是,则执行步骤(c);    (c)判断目前该读取命令所包含逻辑地址是否为连续,若是,则执行步骤(d);以及    (d)执行连续数据读写程序。

【技术实现步骤摘要】

本专利技术是有关于一种可提升USB储存设备的数据读写速率的方法,且特 别是有关于通过减少数据传输时所需发送的指令区块包(CBW)及指令状态包 (CSW)的次数来提高数据读写速率的方法。
技术介绍
由于现今的计算机系统所须处理的数据量日益庞大,外围装置对于传输 频宽的需求也相对地增加,虽然市面上已有多种总线架构,但此些架构在传 送数据仍有传输速度低或成本过高的缺点存在。而USB相较于传统的总线, 具备热插拔及高数据传输率等优异的特性,早已普遍地被应用于各式计算机 系统中。而上述USB在传输协议上则定义了下列四种传输型态,分是别(1)中断型 传输(Interrupt Transfer) 、 (2)巨量传输(Bulk-Only Transport) 、 (3)实时 型传输(Isochronous Transport)及(4)控制型传!叙(Control Transfer),其 中以巨量传输而言,主要传输数据特点在于数据的产生并非有周期性,只有 在某一特定时间的数据量很大,并需要很大的频宽传输,如打印机、扫描仪 等这类型的USB储存类设备(USB Mass Storage Class Device)皆适用此巨量传输的技术。请参阅图1,其显示USB储存设备对应于主机系统的巨量传输型态的软 件结构图,在主机端的软件结构由下到上依次为USB主机控制驱动层(USB Host Controller Driver Layer) 11、 USB十办i义驱动层(USB Protocol Driver Layer )12、巨量传输层(Bulk-Only Transport Layer) 13、小型计算机系统 接口层(SCSI Layer) 14、区块装置处理层(Block Device Processing Layer) 15 及文件系统层(File System Layer) 16。请参阅图2所示,其显示主机端执行巨量传输协议的数据读写处理的步 骤流程图,此处理流程包含下列步骤步骤20:自巨量传输层收到自SCSI层所发出的SCSI请求包(SCSI Request Block, SRB);步骤21:将SRB包含的命令封装成指令区块包(Command Block Wrapper, CBW),并通过一个USB Bulk-Out Transaction发送到USB储存设备;步骤22:执行数据移出(Data-Out)或数据移入(Data-in)的传输;以及步骤23:接收指令状态包(Co隱and Status Wrapper, CSW),以确认此 次读写指令处理是否成功。由上述说明得知,主机端传送一次读/写指令需发送一次CBW,数据传输 完成后要再接收CSW以确认传送是否成功,方能进行下一次的数据传输。然 而,如果读取储存介质数据的速率足够快,且每次要求数据时数据都已准备 好,则进行大量数据读/写时,每次发送封包皆要发送一次CBW和CSW命令而 使花费的时间过长,导致整个USB系统的传送数据的速率变慢。
技术实现思路
因此本专利技术的主要目的就是在提供一种可提升USB储存设备的数据读写 速率的方法,此方法能减少巨量传输层发送CBW、 CSW的次数及降低每个SRB 请求的实际数据传输之间的间隔时间,并且让USB储存设备更长时间处在连 续读写数据的状态。此外,本专利技术提供一种可提升通用序列总线(USB)储存设备的数据读写速 率的方法,此方法包含下列步骤(a)自巨量传输层接收由SCSI层发送的读 写命令,(b)判断此读写命令的欲读写存储容量值是否高于门限值,(c)判断 此读写命令所包含的逻辑地址是否为连续,(d)根据步骤(b)及步骤(c)的判断 结果,若步骤(b)及步骤(c)判断皆是,便执行在数据传输过程中不需发送CBW 的数据传输程序。再者,本专利技术还提出一种可提升USB储存设备的数据写入速率方法,此 方法利用多个緩沖区储存多个连续逻辑地址的写入命令,并合并成一个请求 命令,然后由发送线程(sending thread)将此请求命令发送到USB储存设备。 此方法亦可减少在连续数据传送时CBW和CSW的发送次数,并实际数据传输 之间的间隔时间。本专利技术提供了 一种可提升通用序列总线(USB)储存设备的数据读写速率 的方法,用以让主机通过USB接口对该USB储存设备进行数据读写,该主机的软件架构上至少具有一巨量传输层及一SCSI层,该方法包含下列步骤(a) 于该巨量传输层接收由该SCSI层所发出的读/写命令;(b)判断该读取命令所 包含的欲读/写存储容量值是否高于门限值,若是,则执行步骤(c); (c)判断 目前该读取命令所包含逻辑地址是否为连续,若是,则执行步骤(d);以及(d) 执行连续数据读写程序。本专利技术还提供了一种提升USB储存设备的数据写入速率的方法,用以让 主机通过USB接口对该USB储存设备进行数据写入,该主机的软件架构上至 少具有一巨量传输层及一SCSI层,该方法包含下列步骤(a,)于该主机的内 存中配置至少一个緩冲区;(b')于该巨量传输层接收由该SCSI层所发出的 写入命令;(b,)判断目前该写入命令与前一个写入命令所包含逻辑地址是否 为连续状态,若是,则执行步骤(c, ); (c,)将目前该写入命令储存于该缓 冲区,并将该緩冲区所储存的写入命令合并成请求命令;以及(d,)发送该请 求命令至该USB储存设备。本专利技术还提供了一种提升USB储存设备的数据读取速率的方法,用以让 主机通过USB接口对该USB储存设备进行数据读取,该主机的软件架构上至 少具有一巨量传输层及一SCSI层,该方法包含下列步骤(A)提供緩冲区;(B) 于该巨量传输层接收由该SCSI层所发出的读取命令,该读取命令用以读取第 一数据;(C)判断该读取命令所包含的逻辑地址是否存在于緩冲区,若是,则 至该緩冲区读取该第一数据,若否,则至该USB储存设备读取大于该第一数 据的数据存储空间的第二数据,并将第二数据储存于该緩沖区。附图说明为让本专利技术的上述和其它目的、特征、优点与实施例能更明显易懂,所 附图式的详细说明如下图l是显示主机端的软件架构图2是显示主机端执行巨量传输协议的数据读写处理的步骤流程图; 图3是显示本专利技术的使用环境示意图4是显示本专利技术一实施例的可提升USB储存设备的数据读写速率方法 的步骤流程图5是显示本专利技术的可提升USB储存设备的写入数据速率的方法的实施 例的步骤流程图;以及图6是显示本专利技术另一实施例的可提升USB储存设备的读取数据速率的 方法的步骤流程图;以及图7是显示本专利技术的可提升USB储存设备的写入数据速率的方法的另一 实施例的步骤流程图。11: USB主机控制驱动层12: USB协议驱动层13:巨量传输层14:小型计算机系统接口层15:区块装置处理层16:文件系统层20 - 23:步骤流程30: USB储存设备31: USB接口32:主机40~47:步骤流程 50 - 58:步骤流程 60 - 69:步骤流程 70~78:步骤流程具体实施例方式以下详细地讨论目前较佳的实施例。然而应被理解的是,本专利技术提供许 多可适用的专利技术观念,而这些观念能被体现于很宽广多样的特定具体背景中。 所讨论的特定具体的实施例仅是说明使用本专利技术的特定方式,而且不会限制 本本文档来自技高网
...

【技术保护点】
一种可提升通用序列总线(USB)储存设备的数据读写速率的方法,用以让主机通过USB接口对该USB储存设备进行数据读写,该主机的软件架构上至少具有一巨量传输层及一SCSI层,该方法包含下列步骤:(a)于该巨量传输层接收由该SCSI层所发出的读/写命令;(b)判断该读取命令所包含的欲读/写存储容量值是否高于门限值,若是,则执行步骤(c);(c)判断目前该读取命令所包含逻辑地址是否为连续,若是,则执行步骤(d);以及(d)执行连续数据读写程序。

【技术特征摘要】

【专利技术属性】
技术研发人员:廖峻廷熊光安王炜
申请(专利权)人:瑞昱半导体股份有限公司
类型:发明
国别省市:71

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1