《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的USB接口IP核設計
基于FPGA的USB接口IP核設計
摘要: USB(通用串行總線)作為一種外設連接技術,是計算機外設連接技術的重大變革,USB具有速度快、通用性好、擴展性強、功耗低、穩定、易開發等眾多優點,在實踐中獲得了廣泛的應用,逐步成為PC機的一種標準接口。USB接口控制芯片是實現USB設備與主機建立通信所必須的芯片,目前國內的USB開發者所采用的芯片都是由國外的芯片商所提供,如Cypress、NEC、Motorola等大的IC設計公司,價格較貴。由于USB的廣泛應用,國內外眾多科研機構和集成電路設計公司都把目光投向USB這項具有廣闊市場前景的技術。USB內核(USB Core)是USB接口控制芯片的關鍵模塊,設計一個穩定、高速的USB內核更是芯片成功推向市場的前提。
Abstract:
Key words :

USB(通用串行總線)作為一種外設連接技術,是計算機外設連接技術的重大變革,USB具有速度快、通用性好、擴展性強、功耗低、穩定、易開發等眾多優點,在實踐中獲得了廣泛的應用,逐步成為PC機的一種標準接口。USB接口控制芯片是實現USB設備與主機建立通信所必須的芯片,目前國內的USB開發者所采用的芯片都是由國外的芯片商所提供,如Cypress、NEC、Motorola等大的IC設計公司,價格較貴。由于USB的廣泛應用,國內外眾多科研機構和集成電路設計公司都把目光投向USB這項具有廣闊市場前景的技術。USB內核(USB Core)是USB接口控制芯片的關鍵模塊,設計一個穩定、高速的USB內核更是芯片成功推向市場的前提。

1 USB通信原理
USB通信邏輯上分成了3層:信號層、協議層和數據層。信號層用來實現在USB設備和主機的物理連接之間傳輸位信息流的信息。邏輯層用來實現在USB設備和USB主機端的協議軟件之間傳輸包字節流的信息,它們在信號層被編碼成NRZI位信息后傳送出去。數據傳輸層用來實現在USB主機端的客戶端驅動程序和設備端的功能接口之間傳輸有一定意義的信息,這些信息在協議層被打包成包格式。
1.1 傳輸的基本單元
包(Packet)是USB系統中信息傳輸的基本單元。結構,如圖1所示,根據USB規范,包的類型有:令牌包、數據包、握手包和專用包。

USB總線操作(通訊過程)都可以歸結為3種包的傳輸:令牌包、數據包和應答包。任何操作都是從主機開始的,主機以預先排好的時序,發出一個描述操作類型、方向、外設地址以及端點號,稱之為令牌包Foken Packet。然后由在令牌中指定的數據發送者發出一個數據包Data Packet或者報告它沒有數據可以傳輸。而數據的目的地一般要以一個應答包Handshake Packet做出響應表明傳輸是否成功。

1.2 事務處理
事務處理(Transaction)是指USB總線上數據信息的一次接收或發送的處理過程。事務處理的類型包括輸入事務、輸出事務、設置(Setup)事務,幀開始(SOF),幀結束(EOF)等類型,下面以輸入事務處理為例加以介紹。
如圖2顯示了輸入事務處理中無差錯事務情況,首先由主機向總線發出輸入令牌包通知某個設備向主機發送數據;當所指定的設備接收到此令牌包并檢驗身份后,將準備好的數據組裝成數據包向主機傳送出去;接著當主機接收到的數據經校驗無差錯后,創建一個ACK的握手包返回給設備通知主機已正確接收到數據,然后進行新的事務處理過程。若主機接收數據包錯誤,則不發送ACK握手包,表示處理過程沒有成功;若設備未準備好數據,設備會向主機發送NAK握手包,提醒主機暫時不能發送數據;若設備出錯,則返回主機STALL握手包通知設備出錯。

 


1.3 總線傳輸
為了滿足不同外設和用戶的要求,USB提供了4種傳輸方式:控制傳輸、實時傳輸、中斷傳輸、批量傳輸。它們在數據格式傳輸方向數據包容量限制和總線訪問限制等方面有著各自不同的特征。
控制傳輸用來對設備進行初始化和配置管理,所有USB設備必須直接控制傳輸,是總線傳輸中最復雜的傳輸方式;實時傳輸用來傳送音頻或視頻的數據;中斷傳輸用來傳輸類似PCI或ISA總線上中斷信號的數據;批量傳輸用于打印機或掃描儀等傳輸大塊數據的設備。
控制傳輸一般包括2或3個事務處理階段,即設置階段,數據階段(可選)和狀態階段。圖3給出了設置階段的細節。如果數據沒有正確接收設備就會忽略它,而且不返回應答包。

 


2 USB IP模塊設計和代碼編寫
USB接口主要有UTM(USB Transceiver Macrocell)、SIE(SefiM Interface Engine)和設備功能總線組成。電路結構,如圖4所示,時鐘域分為:Transceiver時鐘域,SIE時鐘域和Wish- bone總線時鐘域。

 


2.1 UTM模塊
USB總線數據線由DP和DN組成,是I/O端口。并行通過對DP和DN的上拉、下拉來區別低速USB設備和高速USB設備。

USB總線上的數據首先通過UTM,進行NRZI解碼和位剝離后,串并轉換為8位并行數據,傳送給SIE中的UTMI或從UTMI接收8位并行數據,經過NRZI編碼和位填充后,發送到USB總線。由于USB系統采用NRZI編碼,對于一串0來說,它的數據線的電平狀態會按位跳變,對以一串l則不然,電平會長時間不變,可能導致數據接受方的時間同步漂移,為了避免漂移,每遇到6個1就在NRZI編碼之前加0,即位填充。
NRZI的vefilog實現代碼為:

 

 

2.2 串行接口引擎
串行接口引擎(Serial Interface Engine,SIE)主要由PL(Protocol Layer),MA(memory buffer arbiter),UTMI(UTM Interface)等組成。PD,PA,PE3個模塊組成了USB SIE的協議層(PL)。
UTMI(UTM Interface)是UTM和SIE的接口主要功能是檢測總線狀態以及識別總線速度。負責PL與UTM的數據交換。
PD將UTMI接收到的信息數據包進行解析,解析出包標識(PID)、端點地址和設備地址以及包含在包中的有效數據命令。在解碼時,對PID進行校驗,即PID[7:4]~PID[3:0],還要對必要的令牌包進行CRC5校驗,對數據包進行CRCl6校驗。CRCl6,CRC5多項式為:x16+x15+x2+1和x5+x2+1。
設計中把命令解碼電路也設計在PD上,解碼電路的設計思路是:通過一個計數器將8 bit的命令數據分別存放在8個:Register中,然后對Register進行解碼,來判斷該條命令帶表的含義和執行的操作。例如:Get Descriptor命令,主機發送的命令數據為8’ha0,8’h06,8’h00,8’h01,8’h00,8’h00,8’h4O,8’h00,然后解碼電路根據這8 bit來判斷命令的含義。如果主機發送命令有誤,或該設備不支持命令,則這條命令被忽略或返回NAK握手包。
PA根據PE(Protocol Engine)送來的PID組織相應的信息包,把要發送的數據安排在相應的數據包,或者令牌包。發送令牌包時,不必產生CRC5校驗位。在發送數據包寸,需要把有效數據的CRCl6校驗位放在包末尾一起發送。
PE可以對IN,OUT以及Setup事務進行單線程處理,且確定當前傳輸事務要操作的端點地址,所有對MA和RF的當前操作都基于這個端點地址。PE要根據當前端點的配置或當前狀態處理傳輸事務,并在傳輸事務中實時更新控制/狀態寄存器CSR。SIE還能通過CSR中的中斷向量請求設備總線的控制支持。

3 系統仿真與實現
設計中包含了UTM,SIE,并根據協議寫出了含有設備描述符的ROM。這樣IP具有USB接口的功能,可以作為一個USB設備與主機進行通信。根據USB協議,模擬主機動作編寫Testbench,它主要由模擬主機數據包(Send Data),Stuffing檢測,CRC校驗檢錯等來仿真。仿真波形,如圖5所示。

 


最后將電路用ASIC實現。采用0.35μm CMOS工藝實現后端設計,數字電路采用單元庫自動布線,模擬電路手工繪制版圖,并進行DRC和LVS檢查,最終版圖預覽圖,如圖8所示,芯片面積為1.2 ms2;經過后仿真得出:工作頻率為120 MHz,工作電流9 mA,靜態電流40μA。工作頻率可以實現高速USB協議的要求,功耗、電流等參數也符合設計要求。
本設計與國內其他的研究結果進行比餃,如表1所示。

 


從表1中對表可以看出,本設計在滿足頻率(FX8>480 MHz)的條件下,精簡了多個單元,節省了資源,完全符合USB協議的要求。將IP下載到FPGA中與主機通信,主機能正確讀出設備描述符和正確完成其他操作,并在主機端顯示USB2.0 Device。進一步證明了設計的正確性和實用性。

 

4 結束語
文中介紹了基于USB協議層模塊的設計,最后在Modelsim6.0下仿真和ISE9.1進行了綜合,采用Xilinx Spartan3EXC3S1OOE進行FPGA驗證,并利用0.35μm CMOS工藝進行系統的后端設計。實現了工作頻率120 MHz,功耗30 mW。
結果表明,設計的USB協議層模塊各功能達到了預期目標、整體性能良好。此IP core可以廣泛應用于各種USB設備接口、通信轉接器件,也可以集成在SOC中,作為系統芯片總線接口。文中設計的USB IP已成功地應用于兩款USB設備端的接口控制芯片(USB轉PS/2接口IC和USB集線器IC),在實際應用中性能可靠、速度穩定,而且價格低廉。

發布者:小宇

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品一区二区三区免费观看| 亚洲精品少妇| 欧美日韩国产综合视频在线观看中文 | 午夜久久久久| 亚洲欧美春色| 亚洲欧美色一区| 亚洲综合首页| 亚洲欧美经典视频| 午夜欧美大尺度福利影院在线看| 亚洲免费一区二区| 小黄鸭精品密入口导航| 性欧美18~19sex高清播放| 午夜国产精品影院在线观看| 亚洲嫩草精品久久| 亚洲制服av| 性欧美暴力猛交另类hd| 欧美影院在线| 久久久噜久噜久久综合| 久久综合亚州| 欧美激情影音先锋| 欧美日韩三区四区| 国产精品久久久久久久久久免费| 国产精品久久久久久久一区探花| 国产精品欧美激情| 国产日韩欧美麻豆| 精品1区2区| 91久久国产综合久久| 日韩午夜在线观看视频| 中日韩在线视频| 亚洲一线二线三线久久久| 午夜精品一区二区三区四区| 欧美在线3区| 亚洲人成网站精品片在线观看| 99成人免费视频| 亚洲自拍电影| 久久九九99| 欧美大片在线观看一区| 欧美日韩1区2区| 国产精品h在线观看| 国产视频在线观看一区二区| 黄色小说综合网站| 亚洲免费观看在线观看| 亚洲一区精品在线| 欧美自拍偷拍| 日韩一级精品视频在线观看| 亚洲欧美日韩国产另类专区| 久久久精品日韩欧美| 欧美激情网站在线观看| 国产精品高潮呻吟久久av黑人| 国产日韩欧美在线观看| 亚洲电影在线观看| 亚洲视频观看| 亚洲高清久久网| 亚洲午夜高清视频| 久久久国产成人精品| 欧美精品在线免费| 国产九九精品视频| 最新国产の精品合集bt伙计| 中文在线不卡| 亚洲福利视频网| 亚洲一区二区三区精品视频| 久久婷婷久久| 国产精品v欧美精品v日韩| 在线观看视频一区二区欧美日韩| 中文网丁香综合网| 91久久在线观看| 午夜久久福利| 欧美美女操人视频| 国产一区在线视频| 99在线热播精品免费| 久久精品亚洲| 亚洲欧美三级伦理| 欧美精品在线一区二区| 国产一区二区三区四区在线观看| 亚洲精品网址在线观看| 久久精品色图| 欧美亚洲综合网| 欧美日本一区二区三区| 国产主播精品| 亚洲曰本av电影| 99re热这里只有精品视频| 久久久久久亚洲精品中文字幕| 欧美午夜一区二区三区免费大片| 在线观看一区二区精品视频| 亚洲欧美日韩综合| 中日韩午夜理伦电影免费| 麻豆国产精品一区二区三区| 国产精品日韩在线观看| 亚洲精品日韩在线观看| 亚洲电影在线| 香蕉久久a毛片| 欧美色道久久88综合亚洲精品| 亚洲第一视频网站| 欧美伊久线香蕉线新在线| 亚洲免费影视第一页| 欧美日本精品一区二区三区| 亚洲第一偷拍| 亚洲国产高清一区二区三区| 久久激五月天综合精品| 国产精品久久久久77777| 亚洲激情影视| 亚洲日本免费电影| 美女日韩在线中文字幕| 黄色亚洲大片免费在线观看| 欧美一区二区三区在线观看| 性8sex亚洲区入口| 国产精品久久一区主播| 一本色道久久综合亚洲精品按摩| 亚洲精品乱码久久久久久按摩观| 老司机午夜免费精品视频 | 亚洲大片免费看| 久久国产欧美日韩精品| 国产精品久久夜| 亚洲一区二区在线免费观看| 亚洲一区二区三区四区五区午夜 | 久久福利精品| 久久一区二区视频| 国产一区二区三区四区五区美女 | 美女国产精品| 伊人久久大香线| 亚洲国产精品成人| 老司机凹凸av亚洲导航| 极品中文字幕一区| 亚洲国产欧美不卡在线观看| 麻豆精品91| 亚洲国产综合在线| 一本久道久久综合狠狠爱| 欧美国产激情二区三区| 亚洲精品在线一区二区| 亚洲图片自拍偷拍| 国产精品黄页免费高清在线观看| 在线亚洲一区二区| 先锋资源久久| 国产一区二区丝袜高跟鞋图片| 久久激情中文| 欧美高清视频一区二区| 亚洲九九爱视频| 亚洲主播在线| 国产视频综合在线| 亚洲福利视频一区二区| 欧美国产欧美亚洲国产日韩mv天天看完整 | 欧美在线www| 国内精品视频在线播放| 亚洲人成在线播放网站岛国| 欧美黄网免费在线观看| 一区二区成人精品 | 在线观看中文字幕亚洲| 日韩午夜精品| 国产精品户外野外| 欧美在线欧美在线| 欧美精品啪啪| 亚洲一区三区视频在线观看 | 可以看av的网站久久看| 亚洲日本国产| 午夜视频久久久| 樱花yy私人影院亚洲| 制服诱惑一区二区| 国产午夜精品在线| 亚洲精品一区二区在线| 国产精品国产自产拍高清av王其| 欧美在线播放一区二区| 欧美激情精品久久久久久| 亚洲视屏一区| 久色婷婷小香蕉久久| 99国产精品99久久久久久| 久久精品国产99精品国产亚洲性色| 在线看成人片| 亚洲免费影视第一页| 伊人成年综合电影网| 亚洲女同精品视频| 国产亚洲成av人在线观看导航| 亚洲精品免费观看| 国产精品一区视频| 日韩网站在线看片你懂的| 国产日韩欧美综合| 日韩一级精品视频在线观看| 国产午夜精品久久久久久久| 日韩一区二区精品葵司在线| 国产日韩一区| 宅男噜噜噜66国产日韩在线观看| 国产日韩欧美在线| 亚洲色诱最新| 极品av少妇一区二区| 亚洲女人天堂成人av在线| 亚洲国产二区| 久久精品国产清自在天天线 | 亚洲一级黄色av| 欧美国产精品v| 久久国产黑丝| 国产精品你懂得| 夜夜嗨av色综合久久久综合网| 国产真实久久| 欧美一级理论片| 亚洲精品四区| 欧美成ee人免费视频| 午夜精品偷拍| 国产精品久久久久久久久免费桃花| 亚洲欧洲日韩在线| 国产欧美日韩三区| 艳妇臀荡乳欲伦亚洲一区|