91精品一区二区三区久久久久久_欧美一级特黄大片色_欧美一区二区人人喊爽_精品一区二区三区av

位置:51電子網 » 技術資料 » 接口電路

USB封包中的數據域類型

發布時間:2008/12/17 0:00:00 訪問次數:633

  usb接口是以令牌封包為主(token based)的總線協議,而且pc主機掌握了這個總線的一切主控權。換而言之,一切的溝通都由pc主機來負責激活與執行。再加上,由于usb不占用任何pc的中斷向量、dma或是任何輸人/輸出的資源,因此,必須通過嚴謹的協議才能與外圍設各達成通信的目的,進而執行各項傳輸的命令。當然,在usb的通信協議中,不僅只有令牌封包而已,還包含了數據封包、握手封包以及特殊封包等。因此,就必須先介紹usb封包類型中的各種數據域的格式,并加以說明。

  不同的封包類型,含有不同數量與形態的數據域。以下依序介紹各種數據域的規范與結構。而通過不同形態的數據域的組成,即可構成所要的封包類型。

  封包內所包含的信息數據位于1~3 074字節之間。第1個字節總是封包標識符(pid),用來定義其余的信息字節所要表達的意義。而封包的最后一部分,則是封包結束eop(end-of-packet)標識符。

  但應注意,usb的串行傳輸是先送出最低位lsb,然后再依序送出,直到最高位msb為止,如圖1所示。而pid[0:3]與pid[0:3]的意義稍后會再加以解釋。

  圖1 封包格式

  首先,介紹第一個,也是每一種封包都含有的數據域:同步列數據域。

  1.同步列(synchronization sequence,sync)數據域

  sync字段由8位組成,作為每一個數據封包的前導,用來產生同步,將會起始pll。因此,它的數值固定為:00000001。這個字段僅可以在閑置時,作傳輸之用。封包的起始是由總線從j狀態轉換成k狀態的變化所產生設置的。大部分的傳送過程是由傳送器在下一個可用的位時間所驅動的,并用來產生一個sync序列。而另一端的接收器即可利用此序列,將其所接收到時鐘與所接收到的數據傳輸過程,兩者加以調和,如此即可確保封包的信息部分是可靠地接收到。這個sync序列以2個k狀態來結束,且在下一個位時間,開始傳遞封包的信息。

  此外,若針對高速傳輸,sync序列將會由pc主機所產生,且其中包含了09位的sync(kj kjkj…kjkk)。雖然這些sync序列將會由于集線器的阻隔而消耗若干信號,但在最后末端的設備至少可以收到12位sync序列。而這已足夠去鎖住接收的時鐘,并用來產生pll。但對低速/全速的設備來說,僅需使用8位sync序列。

  2.封包標識符(packet identifier,pid)數據域

  pid字段緊隨在sync字段后面,用來表示數據封包的類型。pid字段由一個4位的標識符欄以及一個互為補碼的檢查欄組成。在表3,2中,列出了封包的類型,其可分為令牌、數據、握手或特殊等4種封包類型。這4種類型可由pid[0:1]2個位來定義。此外,在每一種的封包類型中,還可通過pid[2:3]2個位來定義出不同的封包格式。例如,在令牌封包中,又可細分為out、in、setup與sof等4種封包格式。如此,可推類至其余的封包類型。但在2.0規范中,新增了幾個封包標識符,其中,數據封包類型新添了data2與data3兩個封包標識符。

  表 各種封包的類型與規范

續表

  3.地址(address,addr)數據域

  addr數據域由7位組成,可用來尋址出達127個外圍設各。當然每一個設各僅能對應一個唯一的地址,而每當新的外圍設各剛連接至usb接口時,擁有預設的地址0,其后再賦予新的地址。也因此,27-1(預設地址)=127外圍設備。

  4.端點(endpoint,en!)p)數據域

  endp數據域由4位組成,之前有提及過,端點是類似微管線的概念。通過這4位,可以定義出高達16個端點。但基本上,只使用15個端點。而通過端點描述符的設置,則最多可尋址出30個端點。這個endp數據域僅用在in、out與setup令牌封包中。對于低速的設各可支持端點0以及端點1作為中斷傳輸模式(如cy7c63o/ixx微控制器系列),而全速設各則可以擁有15個輸人端點(in)與15個輸出端點(out)共30個端點。cypress usb微控制器的cy7c64213與cy7c64313系列則最多可支持31個端點(另外包含一個端點0)。

  5.循環冗余檢驗(cycle redundancy checks,crc)數據域

  根據不同的封包類型,crc數據域由不同數目的位組成。其中,最重要的數據封包采用crc16的數據域(16位),而其余的封包類型則采用crc5的數據域(5位)。其中的的循環冗余檢驗crc,是一種用來做數據錯誤檢測的技術。這是由于數據在做串行傳輸時,有時候會發生若干錯誤。因此,crc可根據數據算出一個檢驗值,然后依此判斷數據的正確性。

  通過前面所介紹的5個數據域,即可構成了大部分的封包類型,而以下再介紹其余特殊

  usb接口是以令牌封包為主(token based)的總線協議,而且pc主機掌握了這個總線的一切主控權。換而言之,一切的溝通都由pc主機來負責激活與執行。再加上,由于usb不占用任何pc的中斷向量、dma或是任何輸人/輸出的資源,因此,必須通過嚴謹的協議才能與外圍設各達成通信的目的,進而執行各項傳輸的命令。當然,在usb的通信協議中,不僅只有令牌封包而已,還包含了數據封包、握手封包以及特殊封包等。因此,就必須先介紹usb封包類型中的各種數據域的格式,并加以說明。

  不同的封包類型,含有不同數量與形態的數據域。以下依序介紹各種數據域的規范與結構。而通過不同形態的數據域的組成,即可構成所要的封包類型。

  封包內所包含的信息數據位于1~3 074字節之間。第1個字節總是封包標識符(pid),用來定義其余的信息字節所要表達的意義。而封包的最后一部分,則是封包結束eop(end-of-packet)標識符。

  但應注意,usb的串行傳輸是先送出最低位lsb,然后再依序送出,直到最高位msb為止,如圖1所示。而pid[0:3]與pid[0:3]的意義稍后會再加以解釋。

  圖1 封包格式

  首先,介紹第一個,也是每一種封包都含有的數據域:同步列數據域。

  1.同步列(synchronization sequence,sync)數據域

  sync字段由8位組成,作為每一個數據封包的前導,用來產生同步,將會起始pll。因此,它的數值固定為:00000001。這個字段僅可以在閑置時,作傳輸之用。封包的起始是由總線從j狀態轉換成k狀態的變化所產生設置的。大部分的傳送過程是由傳送器在下一個可用的位時間所驅動的,并用來產生一個sync序列。而另一端的接收器即可利用此序列,將其所接收到時鐘與所接收到的數據傳輸過程,兩者加以調和,如此即可確保封包的信息部分是可靠地接收到。這個sync序列以2個k狀態來結束,且在下一個位時間,開始傳遞封包的信息。

  此外,若針對高速傳輸,sync序列將會由pc主機所產生,且其中包含了09位的sync(kj kjkj…kjkk)。雖然這些sync序列將會由于集線器的阻隔而消耗若干信號,但在最后末端的設備至少可以收到12位sync序列。而這已足夠去鎖住接收的時鐘,并用來產生pll。但對低速/全速的設備來說,僅需使用8位sync序列。

  2.封包標識符(packet identifier,pid)數據域

  pid字段緊隨在sync字段后面,用來表示數據封包的類型。pid字段由一個4位的標識符欄以及一個互為補碼的檢查欄組成。在表3,2中,列出了封包的類型,其可分為令牌、數據、握手或特殊等4種封包類型。這4種類型可由pid[0:1]2個位來定義。此外,在每一種的封包類型中,還可通過pid[2:3]2個位來定義出不同的封包格式。例如,在令牌封包中,又可細分為out、in、setup與sof等4種封包格式。如此,可推類至其余的封包類型。但在2.0規范中,新增了幾個封包標識符,其中,數據封包類型新添了data2與data3兩個封包標識符。

  表 各種封包的類型與規范

續表

  3.地址(address,addr)數據域

  addr數據域由7位組成,可用來尋址出達127個外圍設各。當然每一個設各僅能對應一個唯一的地址,而每當新的外圍設各剛連接至usb接口時,擁有預設的地址0,其后再賦予新的地址。也因此,27-1(預設地址)=127外圍設備。

  4.端點(endpoint,en!)p)數據域

  endp數據域由4位組成,之前有提及過,端點是類似微管線的概念。通過這4位,可以定義出高達16個端點。但基本上,只使用15個端點。而通過端點描述符的設置,則最多可尋址出30個端點。這個endp數據域僅用在in、out與setup令牌封包中。對于低速的設各可支持端點0以及端點1作為中斷傳輸模式(如cy7c63o/ixx微控制器系列),而全速設各則可以擁有15個輸人端點(in)與15個輸出端點(out)共30個端點。cypress usb微控制器的cy7c64213與cy7c64313系列則最多可支持31個端點(另外包含一個端點0)。

  5.循環冗余檢驗(cycle redundancy checks,crc)數據域

  根據不同的封包類型,crc數據域由不同數目的位組成。其中,最重要的數據封包采用crc16的數據域(16位),而其余的封包類型則采用crc5的數據域(5位)。其中的的循環冗余檢驗crc,是一種用來做數據錯誤檢測的技術。這是由于數據在做串行傳輸時,有時候會發生若干錯誤。因此,crc可根據數據算出一個檢驗值,然后依此判斷數據的正確性。

  通過前面所介紹的5個數據域,即可構成了大部分的封包類型,而以下再介紹其余特殊

相關IC型號

熱門點擊

 

推薦技術資料

耳機放大器
    為了在聽音樂時不影響家人,我萌生了做一臺耳機放大器的想... [詳細]
版權所有:51dzw.COM
深圳服務熱線:13692101218  13751165337
粵ICP備09112631號-6(miitbeian.gov.cn)
公網安備44030402000607
深圳市碧威特網絡技術有限公司
付款方式


 復制成功!
武川县| 黄平县| 鄯善县| 灵宝市| 绥江县| 宕昌县| 额敏县| 民丰县| 威远县| 五莲县| 新建县| 黄梅县| 临汾市| 潞西市| 灌云县| 宜宾县| 乡宁县| 揭阳市| 巴彦县| 湘潭市| 同江市| 天柱县| 苗栗市| 通州区| 阜新市| 孟津县| 增城市| 南乐县| 新巴尔虎左旗| 神池县| 浑源县| 丰台区| 龙胜| 商水县| 和顺县| 石柱| 广平县| 永靖县| 盐城市| 荣昌县| 鹤壁市|