999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的USB設備控制器設計

2008-04-12 00:00:00付華杰劉麗君張遂南陳艷寧
現代電子技術 2008年24期

摘 要:嵌入式系統向小型化和低功耗的方向發展要求減小板級設計的面積提高速率。基于嵌入式系統日益增長的規模和性能以及高速USB協議的要求,對USB設備控制器的系統進行相關模塊的劃分并利用Verilog硬件描述語言設計出高速USB接口IP核。經過仿真驗證,該IP核符合高速USB協議的要求,滿足系統對USB接口數據的傳輸需求。

關鍵詞:通用串行總線;通信接口;IP核;可編程邏輯陣列

中圖分類號:TP273文獻標識碼:B

文章編號:1004-373X(2008)24-049-03

Design of USB Device Controller Based on FPGA

FU Huajie1,LIU Lijun1,ZHANG Suinan1,CHEN Yanning2

(1.771 Institute of CASC,Xi′an,710054,China;2.Apparatus Management Center,Shengli Petroleum Management Office,Dongying,257100,China)

Abstract:The embedded system is developing with small area and low power.It requires deduce the board design and increase the speed.Based on the scale and capability of the embedded system,this paper divides the USB modules and designs the USB interface IP core with Verilog HDL.With simulation,this IP core contents the USB2.0′s request.

Keywords:universal serial bus;communication interface;IP core;programmable logic array

隨著現代科學技術的進步和集成電路技術的飛速發展,計算機的性能得到很大的提升,從而對計算機與外圍設備之間的接口提出了更高的技術要求。早期的串行外圍設備是RS 232,這種總線傳輸速度慢、不能熱插拔逐漸成為計算機與外部設備通信的瓶頸。后來開發的1394總線和USB總線解決了傳輸速度慢和熱插拔的問題,但1394總線價格比較昂貴,而USB總線以其高的性價比在計算機接口領域得以廣泛的應用。

Universal Serial Bus(USB)是一種快速、簡便的總線。它支持即插即用,當USB設備連接到主機上時,其所有的配置過程初始化都由系統自動完成。USB設備和主機間線纜的距離可長達5 m并且主機最多可以連接127個設備,它具有低速、全速、高速3種傳輸速率。USB廣泛應用于鼠標、MP3、MP4播放機以及數碼相機、高速數據采集設備。USB接口的高數據傳輸速率、強大的數據容錯技術和低廉的價格都大大的推動了USB設備的開發及應用。

USB設備控制器的開發從目前來看可以分為2種:直接利用市場上供應的USB控制器芯片進行USB設備的開發和設計基于FPGA的USB IP核。第一種方法對開發者來說無需特別清楚USB的協議原理并且所需的開發工具也相對簡單,但由于芯片的價格相對較高因此會影響系統開發的性價比。第二種基于FPGA所開發的USB IP核產品完全具備自主產權,并且產品設計周期短、上市時間快、風險低、投入少,它屬于IP復用技術。IP核復用技術是現代SoPC設計方法中最核心的概念和關鍵技術。IP核復用的本質是強調一個經過充分驗證的設計應當具有完整的設計文檔、全面的測試代碼、良好的配置能力,以便于將它重復應用到其他設計中。隨著設計規模的擴大和設計時間要求的縮短,這種硬件開發方法由于其IP核的可移植性、可重用性、高的性價比以及易于擴展等方面的特性越來越成為當今硬件設計開發的主流。本文也采用這一方法進行設計。

1 USB通信協議介紹

當USB設備連接到主機上時主機將會分配一個或多個配置來控制設備的行為。配置是由接口組成的,接口則由管道組成。1個輸入管道和1個輸出管道就可以配置成1個設備的端點。1個USB設備共有16對端點。其中0端點是控制端點,它負責接收主機發出的傳輸命令,其他的15對端點用于完成大批量數據的傳輸。

USB在數據傳送時使用非歸零反向碼(None Return Zero Invert,NRZI)。在此編碼規范中規定,“1”表示傳輸的電平不變,“0”表示傳輸的電平改變。為確保數據發送準確無誤,在USB發送數據時傳送設備要對數據進行比特位填充,而設備的接收端也必須能夠識別出比特位填充并能夠對非歸零反向碼進行正確解碼

USB采用以令牌包為主的總線協議,并由主機根據需要發起所有的數據傳輸。多數總線傳輸包括4種封包,即令牌包、數據包、握手包和特殊包。每次數據傳輸首先由主機發出1個令牌包,USB設備發送握手包并根據命令發送數據包給主機或是準備接收主機發送的數據包,數據傳輸完成后發送握手包完成1次傳輸。在USB的傳輸中,根據不同的外圍設備的類型與應用,協議制定了控制傳輸、中斷傳輸、同步傳輸和批量傳輸4種類型,其中控制傳輸控制整個數據傳輸的流程,是整個USB傳輸中必不可少的傳輸類型,因而它的可靠性也是最高的。其他3種數據傳輸類型在具體產品開發中可以根據需要進行取舍,但是至少要保證有一種數據傳輸類型的存在。

2 USB接口IP核系統結構設計

根據USB協議和項目設計的需要,將所設計的USB IP核在系統級劃分為USB收發模塊、USB UTMI(USB 2.0 Transceiver Macrocell Interface)接口模塊、USB協議層模塊、USB算術存儲模塊以及USB寄存器模塊。整個USB的系統結構如圖1所示。

USB設備控制器的UTMI接口模塊主要實現總線上事件檢測功能,完成USB設備各狀態之間的切換,同時還負責UTMI模塊和協議層PL模塊之間的數據傳遞。協議層模塊負責響應所有的USB數據輸入/輸出并控制其傳輸。它是USB IP核開發中的重點,也是USB設備控制器運行的核心。存儲運算接口模塊所要完成的功能是計算USB核與主機接口之間的數據存取。控制狀態寄存器的主要功能是存儲控制器中各個控制狀態和所傳輸數據的信息,并與外部控制器進行命令的控制和數據的收發。下面本文就針對USB IP核的2大重點模塊UTMI接口模塊和協議層模塊進行詳細闡述。

2.1 USB UTMI接口模塊設計

UTMI模塊由6個子模塊組成。接口狀態引擎模塊主要是對USB總線事務進行檢測并控制正常操作、掛起、恢復、復位等狀態間的切換。這部分在IP核中由有限狀態機來實現。速度判定引擎模塊主要判定USB設備控制器工作在高速模式還是全速模式。發送總線接口模塊和接收總線模塊實現對外部收發器的數據傳輸,而發送FIFO模塊和接收FIFO模塊則暫存主機發送的還沒寫入SSRAM中的數據和將要發送的數據。

UTMI模塊在FPGA設計中可以由UTMI接口和在線檢測2個語言描述塊表述。UTMI模塊從總體上定義了UTMI接口所需實現的功能參數并且完成數據在主機和收發器之間傳送的電路程序的編寫,其接口模塊與外部的接口信號共3種21個信號。它們是:與UTMI部分的連接信號(16個信號)、與內部協議層PL的連接信號(6個信號)和一些全局信號(phy_clk,rst)。在線檢測模塊完成設備上電初始化和數據傳輸前的設備狀態轉換功能。整個模塊的狀態轉換流程如圖2所示。

2.2 協議層

USB的協議層是由USB包拆裝器、USB包組裝器、USB協議引擎和DMA存儲器接口4部分組成。其模塊結構如圖3所示。

主機到USB設備的命令或數據都以USB包的形式發送,這就要求設備中要有相應的模塊能夠識別這些USB包并能從中提取設備所需的命令或數據。USB包拆裝器正是將主機發送的USB包拆分成包頭、包標識(PID)、數據和校驗等信息并對PID進行判斷。如果是握手包或是令牌包則進行CRC校驗并將校驗結果與校驗域的數據進行比較,如果校驗正確則通知協議引擎進行處理。如果是數據包則校驗正確后通過相應引腳輸出給存儲器接口或仲裁器模塊進行處理。

包拆裝器首先將分析出來的PID[7:4]取反后與PID[0:3]進行比較,以校驗PID是否傳輸有誤。如果傳輸正確則提取PID[0:3]并進行譯碼來判定是令牌包、數據包、握手包或特殊包中的哪一個。如果是令牌包就將后續的數據分放到token0,token1這兩個寄存器中然后調用CRC5函數進行校驗,如果校驗正確就將幀號、端點號和地址存入相應的寄存器,如果校驗錯誤就等待下一個數據的輸入。

USB組裝器與USB拆裝器的功能剛好相反。它是要將USB發送FIFO中的數據加上包頭、包標識以及相應的校驗信息組成完整的USB包并最終將其發送給主機。

USB協議引擎根據USB協議處理所有的來自主機的數據并根據自身的狀態回應主機信息(ACK,NACK,NYET)。

在協議引擎中一個傳輸事務處理的主要流程大致可以分為3大步。主機發送令牌包、設備接收處理、主機或是設備發送數據。

主機發送的令牌包有5種,它們是PING包、SOF包、IN包、OUT包和SETUP包,其中設備只對PING包和SOF包進行處理。下面以IN包為例對令牌包的數據流程進行簡要的說明。

設備收到IN包后首先提取包中的端點號并判斷該端點是否被鎖定。如果鎖定則通知包組裝器返回STALL給主機,如果沒被鎖定則檢查內部存儲器是否將數據準備好,如果沒準備好則通知包組裝器返回NAK給主機,如果準備好就將準備的數據發給主機同時計時器計時并等待主機的握手包。如果接收到ACK握手包則此次數據傳輸成功,相應寄存器清零。如果沒有收到ACK握手包則需重新發送數據。

DMA存儲接口接到數據存儲器上。它將包拆裝器中解碼的數據傳送到USB存儲器中或將存儲器中的數據發送到包組裝器中進行編碼。

協議層的這4個模塊在整個USB設備中起到了核心的作用,因此在IP核的設計中將這4個模塊分別設置成4個塊進行硬件電路的設計,然后在頂層設置協議塊將這4部分進行參數連接實現整個協議層的功能。

3 結 語

本文分析了USB的特點和IP核開發的重要性,接著詳細介紹USB接口的IP核系統結構及各部分所要實現的功能。文中所設計的IP核基本實現了USB各部分結構的功能,可以滿足嵌入式USB通信的性能要求。由于其兼具USB的高速數據傳輸率和IP核的良好的可移植性,可以預見,其在通信領域中將具有很廣闊的發展空間。

參考文獻

[1]梁磊.基于I2C總線技術的USB接口設計.現代電子技術,2005,28(6):104-106.

[2]Compag,Hewlet-Packard,Intel,Lucent,Microsoft,NEC,Philips,Universal Serial Bus Specification Revision2.0.http://www.usb.org/developers/docs/usb20.zip,2002.

[3]沈戈.基于IP核的SoC設計方法及其應用的研究.西安:西北工業大學出版社,2002.

[4]美國邁舍爾公司.USB系統體系.2版.孟文,譯.北京:中國電力出版社,2003.

[5]Cypress Corporation.CY7C68000 Datasheet.http://www.cypress.com.

[6]RudolfUsselmann.USB Function IP Core Revision1.5.http://www.opencores.org,2002.

[7][日]小林芳直.數字邏輯電路的ASIC設計.蔣民,譯.北京:科學出版社,2004.

[8]美國邁舍爾公司.USB系統體系.2版.孟文,譯.北京:中國電力出版社,2003.

[9]夏宇聞.Verilog數字系統設計教程[M].北京:北京航空航天大學出版社,2003.

[10]付華杰,陳艷寧,張遂南.嵌入式高速USB設備接口結構設計.現代電子技術,2008,31(4):150-152.

[11]徐善峰.基于USB接口的數字攝像系統及USB接口芯片的設計.西安:西安電子科技大學,2002.

作者簡介

付華杰 男,1982年出生,山東榮成人,碩士生。主要研究方向為嵌入式高速計算機控制。

劉麗君 女,1983年出生,碩士生。主要研究方向為高速計算機控制。

張遂南 男,1965年出生,碩士生導師,博士。主要研究方向為高速計算機技術。

陳艷寧 女,1983年出生,工程師。主要研究方向為嵌入式計算機系統結構技術。

主站蜘蛛池模板: 中国成人在线视频| 久久久久国色AV免费观看性色| 一级毛片免费高清视频| 国产成人一级| 国产哺乳奶水91在线播放| 无码专区国产精品一区| h视频在线观看网站| 国产精品免费久久久久影院无码| 国产乱子精品一区二区在线观看| 综合网天天| 欧美第二区| 久久亚洲欧美综合| 免费可以看的无遮挡av无码| 成人看片欧美一区二区| 久久久久亚洲av成人网人人软件| 少妇精品网站| 日本欧美视频在线观看| 激情六月丁香婷婷| 国产女同自拍视频| 日本成人一区| 国产精品浪潮Av| 亚洲天堂自拍| 亚洲国产成人久久精品软件| 国产精品久久久久久久伊一| 无码精品福利一区二区三区| 日韩精品亚洲精品第一页| 亚洲精品手机在线| 四虎成人在线视频| 国产成人精品男人的天堂下载 | 久久久久免费看成人影片 | 亚洲精品无码久久久久苍井空| 五月天丁香婷婷综合久久| 日韩激情成人| 亚洲综合18p| 国产黑丝视频在线观看| 秋霞一区二区三区| 99热国产在线精品99| 国产真实乱子伦视频播放| 99热国产在线精品99| 国产69囗曝护士吞精在线视频| 亚洲一区国色天香| 国产精品入口麻豆| 国产欧美视频在线| 国产性生大片免费观看性欧美| 露脸真实国语乱在线观看| 在线中文字幕日韩| 日本伊人色综合网| 草草线在成年免费视频2| a毛片在线免费观看| 91九色国产在线| 国产成人喷潮在线观看| 国产成人综合在线观看| 欧美一级在线播放| 午夜一区二区三区| 亚洲无限乱码| 国产剧情一区二区| 亚洲一道AV无码午夜福利| 亚洲综合网在线观看| 日韩在线播放欧美字幕| 欧美日韩另类在线| 制服无码网站| 日韩高清欧美| 成人午夜天| 欧美一区二区啪啪| 中文字幕无线码一区| 成人福利在线免费观看| 国产一在线观看| 97在线免费| h视频在线播放| 亚洲成人精品久久| 最新国产麻豆aⅴ精品无| 男人的天堂久久精品激情| 亚洲一级毛片| 亚洲国产综合自在线另类| 大陆国产精品视频| 97久久精品人人| 欧美日韩国产在线播放| 91九色最新地址| 日韩欧美成人高清在线观看| 国产无码精品在线播放| 日日碰狠狠添天天爽| 99国产精品国产|