⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usb协议基础及s3c2410 usb控制器.htm

📁 usb2.0中文说明,结合s3c2410芯片,详细介绍了有关寄存器和配置,接口端点等
💻 HTM
📖 第 1 页 / 共 4 页
字号:
          <TD vAlign=top>
            <DIV align=center><IMG height=303 
            src="USB协议基础及S3C2410 USB控制器.files/408.gif" width=390></DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center>图9-8 USB的通信流及信道 </DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=left>为实现多外设、多信道地同时工作,USB 总线使用资料包的方式来传输资料和控制信息。USB 
            数据传输中的每一个资料包都以一个同步字段开始(图9-9),它的最后两个 bit 作为 PID 字段开始的标志。紧跟在同步字段之后的一段 
            8bit 的脉冲序列称为 PID (资料包标识字段,如图9-10所示), PID 
            字段的前四位用来标记该资料包的类型,后四位则作为对前四位的校验。 PID 字段被分为标记 PID (共有 IN 、 OUT 、 
            SETUP 或 SOF 四种)、资料 PID ( DATA0 或 DATA1 )、握手 PID( ACK、 NAK 或 STALL 
            )及特殊 PID 等。主机根据 PID 字段的类型来判断一个资料包中所包含的数据类型,并执行相应的操作。</DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center><IMG height=64 
            src="USB协议基础及S3C2410 USB控制器.files/409.gif" width=420></DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center>图9-9 同步字段</DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center><IMG height=69 
            src="USB协议基础及S3C2410 USB控制器.files/410.gif" width=442></DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center>图9-10 PID字段</DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=left>当一个 USB 外设初次连接时, USB 系统会为这台外设分配唯一的 USB 
            地址,这个地址通过地址寄存器( ADDR)来标记,以保证资料包不会传送到别的 USB 外设。7bit 的 ADDR 使得 USB 
            系统最大寻址为 127 台设备( ADDR 字段,如图9-11所示)。由于一台 USB 外设可能具有多个信道,因而在 ADDR 
            字段后会有一个附加的端点字段( Endpoint Field,简标为 ENDP )来标记不同的信道(图9-12)。所有的 USB 
            外设都必须支持 Endpoint 0信道,用0000来标记。对于高速设备,可以最大支持 16 个信道,而低速设备在 Endpoint 0 
            之外仅能有一个信道。</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center><IMG height=58 
            src="USB协议基础及S3C2410 USB控制器.files/411.gif" width=308></DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center>图9-11 资料包的ADDR字段 </DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center><IMG height=79 
            src="USB协议基础及S3C2410 USB控制器.files/412.gif" width=245></DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center>图9-12 端点(Endpoint)字段</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>数据域位作为一次 USB 数据传输的中心目的,在一个 USB 
            资料包中可以包含0~1203 Byte 
            的资料(图9-13)。而帧数量字段则包含在帧开始资料包中,对有的应用场合,可以用帧数量字段作为资料的同步信号。 
            <BR>为保证控制、块传送及中断传送中资料包的正确性, CRC 校验字段被引用到如标记、资料、帧开始( SOF )这样的资料包中。 
            CRC 校验(资料冗余校验)可以给予资料以 100% 的正确性检验。<BR></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center><IMG height=69 
            src="USB协议基础及S3C2410 USB控制器.files/413.gif" width=435></DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center>图9-13 USB的数据域位</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>在 USB 系统中,有四种形式的资料包:信令包( Token 
            Packets)、DATA 资料包(DATA Packets)、帧开始包(SOF Packets)和握手包(Handshake 
            Packets)。<BR>(1) 信令包由 PID 、ADDR 、ENDP 和 CRC5 四个字段组成(图9-14)。它因为 PID 
            字段的不同而分为输入类型( IN )、输出类型( OUT )和设置类型( SETUP )三种。信令包处于每一次 USB 传输的 DATA 
            资料包前面,以指明这次 USB 操作的类型(PID字段标记)、操作的对象(在 ADDR 和 ENDP 字段中指明)等信息。 5bit 的 
            CRC 校验位用来确保标记资料包的正确性。<BR></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center><IMG height=100 
            src="USB协议基础及S3C2410 USB控制器.files/414.gif" width=331></DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center>图9-14 标记数据包的组成</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>(2) 我们已经指出, USB 主机会每隔 1ms 在 USB 
            总线上产生一个 SOF 的 USB 帧同步信号, SOF 资料包包含了这个脉冲序列的实际内容(图9-15),它由 SOF 格式的 PID 
            字段、帧数量字段和 5bit 的 CRC 校验码组成。主机利用 SOF 资料包来同步资料的传送和接收。</TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center><IMG height=89 
            src="USB协议基础及S3C2410 USB控制器.files/415.gif" width=298></DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center>图9-15 SOF 资料包的格式</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>(3) 用于传输真正资料的 DATA 资料包(图9-16),因为 PID 
            的不同可以分为 DATA0 和 DATA1 两种。 DATA0 为偶数据包,DATA1 为奇数据包。DATA 
            资料包的奇偶性分类易于资料的双流水处理,而用于控制传输的 DATA 资料包总是以 DATA0 来传送资料。</TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center><IMG height=92 
            src="USB协议基础及S3C2410 USB控制器.files/416.gif" width=455></DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center>图9-16 DATA资料包的格式</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>(4) 握手资料包仅仅包含一个 PID 字段( 图9-17 ), ACK 
            形式的 PID 表明此次 USB 传输没有发生错误,资料已经成功的传输;而 NAK 形式的握手资料包则向主机表明此次 USB 传输因为 
            CRC 校验错误或别的原因而失败了,从而使得主机可以进行资料的重新传输; STALL 
            形式的响应向主机报告外设此刻正处于挂起状态而无法完成资料的传输。</TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center><IMG height=56 
            src="USB协议基础及S3C2410 USB控制器.files/417.gif" width=170></DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center>图9-17 握手资料包</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center></DIV></TD></TR></TBODY></TABLE>
      <TABLE height=49 cellSpacing=0 cellPadding=0 width="90%" align=center><!--DWLayoutTable-->
        <TBODY>
        <TR>
          <TD vAlign=center>
            <HR SIZE=1>
          </TD></TR>
        <TR>
          <TD vAlign=top>需要指出的是,每个资料包的结束都会有两个 bit 宽的 EOP 
            字段作为资料包结束的标志(图7-18),EOP 在差模信号中表现为 D+ 和 D- 都处于“0”状态。对于高速 USB 
            外设而言,这个脉冲宽度在 160~175ns 之间,而低速设备则在 1.25~1.50μs 之间。无论其后是否有其它的资料包,USB 
            线缆都会在 EOP 字段后紧跟 1bit 的总线空闲位。USB 主机或外设利用 EOP 来判断一个资料包的结束。</TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center><IMG height=101 
            src="USB协议基础及S3C2410 USB控制器.files/418.gif" width=443></DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center>图9-18 EOP字段在差模信号中的电压表现</DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=left>在前面我们已经提到,每一个 USB 信道对应着一个特定的 USB 传输模式,根据不同的需要,USB 
            外设可以为 USB 信道指定不同的 USB 传输模式。USB 总线支持四种数据传输模式:<BR>(1) 
            控制传输模式,控制传输用于在外设初次连接时对器件进行配置;对外设的状态进行实时检测;对控制命令的传送等;也可以在器件配置完成后被客户软件用于其它目的。Endpoint 
            0信道只可以采用控制传送的方式。<BR>(2) 块传送模式(图9-19),块传送用于进行批量的、非实时的数据传输。如一台 USB 
            扫描仪即可采用块传送的模式,以保证资料连续地、在硬件层次上的实时纠错地传送。采用块传送方式的信道所占用的 USB 
            带宽,在实时带宽分配中具有最高的优先级。<BR></DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center><IMG height=223 
            src="USB协议基础及S3C2410 USB控制器.files/419.gif" width=400></DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center>图9-19 块传送的流程</DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=left>(3) 
            同步传输模式(图9-20),同步传输适用于那些要求资料连续地、实时地、以固定的数据传输率产生、传送并消耗的场合,如数字录像机等。为保证数据传输的实时性,同步传输不进行资料错误的重试,也不在硬件层次上响应一个握手资料包,这样有可能使数据流中存在资料错误的隐患。为保证在同步传输数据流中致命错误的几率小到可以容忍的程度,而数据传输的延迟又不会对外设的性能造成太大的影响,厂商必须为使用同步传输的信道选择一个合适的带宽(即必须在速度和品质之间做出权衡)。</DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center><IMG height=155 
            src="USB协议基础及S3C2410 USB控制器.files/420.gif" width=364></DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=center>图9-20 同步传输的流程</DIV></TD></TR>
        <TR>
          <TD vAlign=top>
            <DIV align=left>(4) 
            中断传输模式(图9-21),对于那些小批量的、点式、非连续的数据传输应用的场合,如用于人机交互的鼠标、键盘、游戏杆等,中断传输的方式是最适合的。</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center><IMG height=179 
            src="USB协议基础及S3C2410 USB控制器.files/421.gif" width=339></DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=center>图9-21 中断传输的流程</DIV></TD></TR>
        <TR>
          <TD class=text2 vAlign=center>
            <DIV align=left>上述内容并不想详细论述 USB 
            外设(本部分所说的USB外设如无特别说明均指USB功能器件)的设计细节,而只想介绍 USB 功能器件的一般组成,以此来帮助读者了解 
            USB 外设的基本软硬件构成,以便了解 USB 外设的工作过程和原理。<BR>组成外设的传感器件和 DSP 
            因为外设的具体应用各异而有所不同。如对于一台 CMOS 数字摄像头,它的 CMOS 光电耦合器及其 DSP 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -