www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀]為了解決USB2.0設(shè)備存在的傳輸瓶頸問題,介紹一種基于USB2.0微控制囂CYC68013的GPIF接口設(shè)計(jì)方案,即通過對CY7C68013的通用可編程接口(GPIF)控制邏輯的舍理設(shè)計(jì)和芯片內(nèi)部FIFO的有效運(yùn)用

摘要 為了解決USB2.0設(shè)備存在的傳輸瓶頸問題,介紹一種基于USB2.0微控制囂CYC68013的GPIF接口設(shè)計(jì)方案,即通過對CY7C68013的通用可編程接口(GPIF)控制邏輯的舍理設(shè)計(jì)和芯片內(nèi)部FIFO的有效運(yùn)用,實(shí)現(xiàn)了在USB設(shè)備和主機(jī)之間大量數(shù)據(jù)的高速傳輸,從而充分利用了USB2.o的傳輸帶寬。
關(guān)鍵詞 USB CY7C68013 GPIF

引 言
    USB(Universal Serial Bus)是一種通用串行總線,主要用于PC與外圍USB設(shè)備的互聯(lián)。近年來,USB接口以其快速、即插即用、使用安裝方便等優(yōu)點(diǎn)逐漸成為現(xiàn)代數(shù)據(jù)傳輸?shù)陌l(fā)展趨勢。目前,國內(nèi)外采用USBl.1和USB2.O兩種規(guī)范。USBl.1主要用于低速傳輸要求的場合,支持1.5Mb/s和12Mb/s兩種傳輸速率;而USB2.O規(guī)范則提供高達(dá)480Mb/s的傳輸速率。盡管如此,在某些對數(shù)據(jù)傳輸速度要求很高的系統(tǒng)中,外圍設(shè)備與USB接口之間在速度上仍存在著不可忽視的傳輸瓶頸。

    Cypress公司生產(chǎn)的USB2.0控制器CY7C68013提供了一種獨(dú)特的接口方式,即通用可編程接口(GPIF)方式。它與傳統(tǒng)接口方式的主要區(qū)別有兩點(diǎn):①在數(shù)據(jù)傳輸過程中不需要CPU干涉,使得傳輸速率明顯提高,從而可以充分利用USB2.0的傳輸帶寬;②由軟件設(shè)置讀/寫控制,其控制方式類似于狀態(tài)機(jī),提高了傳輸穩(wěn)定性。因此,本文介紹的基于USB2.0控制器CY7C68013的GPIF接口設(shè)計(jì),就是充分利用了該芯片這一獨(dú)特的數(shù)據(jù)傳輸接口方式,有效地解決了在傳統(tǒng)接口方式下USB2.0設(shè)備數(shù)據(jù)傳輸速度的局限性,大大提高了數(shù)據(jù)的傳輸速率。

1 CY7C68013簡介
    CY7C68013是Cypress公司的EZ-USB FX2系列芯片。EZ-USB FX2是一款集成USB2.0收發(fā)器的微控制器,內(nèi)部結(jié)構(gòu)如圖l所示。該系列芯片集成了USB2.O收發(fā)器、串行接口引擎(SIE)、帶8.5KB片上RAM的增強(qiáng)型高速8051單片機(jī)、4KB FIFO存儲器以及通用可編程接口等模塊.提供了全面集成的USB解決方案,無需外加芯片即可實(shí)現(xiàn)高速USB傳輸。FX2系列芯片最主要的特點(diǎn)是可以通過USB2.0的通用可編程接口為特定的應(yīng)用接口編程。另外,CY7C68013的GPIF引擎具有自動傳輸數(shù)據(jù)結(jié)構(gòu)的特性,這種特性使得以主/從端點(diǎn)FIFO(B/16位數(shù)據(jù)總線)為ATA、UTOPIA、EPP、PCMCIA、DSP等的外圍設(shè)備,可以與主機(jī)通過CY7C68013無縫、高速地傳輸數(shù)據(jù)。另外,CY7C68013內(nèi)部集成的USB2.O的SIF能完成大部分USB2.O協(xié)議的處理工作,從而減少了用戶對繁雜的USB協(xié)議的處理。

2 硬件設(shè)計(jì)及原理
   
在GPIF接口方式設(shè)計(jì)中,GPIF作為CY7C68013的端點(diǎn)FIFO的內(nèi)部控制器,在這種方式下,CPU不會干涉數(shù)據(jù)的傳輸。CY7C68013的GPIF接口方式如圖2所示。

CY7C68013專門為GPIF提供了接口信號(包括16位數(shù)據(jù)線、輸出控制信號CTL、輸入控制信號RDY以及地址線ADR),這些信號負(fù)責(zé)完成USB接口芯片與外圍設(shè)備或器件(如FPGA、DSP等)的數(shù)據(jù)讀/寫控制和傳輸。以下為GPIF方式下的主要端口功能。
    FDO~FDl5(輸入/輸出):USB主機(jī)通過CY7C68013與外部設(shè)備進(jìn)行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)線,可以用8位或16位數(shù)據(jù)線。
    CTLO~CTL5(輸出):CY7C68013對外部設(shè)備進(jìn)行控制的信號線。
    RDY0~RDY5(輸入):CY7C68013對外部設(shè)備的狀態(tài)進(jìn)行檢測的信號線。
    SDA(雙向)、SCL(輸出):E2PROM的數(shù)據(jù)及時(shí)鐘信號線。
    ADR0~ADR8(輸出);GPIF為外部設(shè)備提供的地址線。

    在本設(shè)計(jì)中,除了重點(diǎn)利用通用可編程接口來實(shí)現(xiàn)無縫、高速的傳輸數(shù)據(jù)外,還采用了EZ-USBFX2提供的一種獨(dú)特架構(gòu),即“量子FIFO(Quantum FIFO)”處理架構(gòu)。它能較好地解決帶寬問題,圖3為其數(shù)據(jù)傳輸示意圖。當(dāng)USB執(zhí)行OUT時(shí),EP2端點(diǎn)被設(shè)置為512字節(jié)四重FIFO(在USB端和外部接口端,都不知道有四重FIFO),圖4為其數(shù)據(jù)傳輸原理圖。在USB端看來,只要有1個(gè)FIFO為“半滿”,那么就可以繼續(xù)發(fā)送數(shù)據(jù)。

    當(dāng)前操作的FIFO寫“滿”時(shí),F(xiàn)X2自動將其轉(zhuǎn)換到外部接口端,排除等候讀??;并將USB接口隊(duì)列中下一個(gè)為“空”的FIFO轉(zhuǎn)移到USB接口上,供其繼續(xù)寫數(shù)據(jù)。同時(shí),在外部接口端看來,只要有1個(gè)FIFO為“半滿”,就可以繼續(xù)讀取數(shù)據(jù)。當(dāng)前操作的FIFO讀“空”時(shí),F(xiàn)X2自動將其轉(zhuǎn)換到USB接口端,排除等候?qū)懭?;并將外部接口?duì)列中下一個(gè)為“滿”的FIFO轉(zhuǎn)移到外部接口上,供其繼續(xù)讀取數(shù)據(jù)。

3 軟件設(shè)計(jì)及實(shí)現(xiàn)
   
本設(shè)計(jì)的軟件設(shè)計(jì)包括:固件程序、驅(qū)動程序和應(yīng)用程序設(shè)計(jì)。其中,固件程序是整個(gè)程序設(shè)計(jì)的核心,它在設(shè)備CPU中運(yùn)行。GPIF就是在固件中實(shí)現(xiàn)的,因此,只有在該程序運(yùn)行時(shí),外設(shè)才能稱之為具有給定功能的外部設(shè)備。

3.1 固件設(shè)計(jì)

    在GPIF高速數(shù)據(jù)傳輸中,GPIF波形的描述符決定了整個(gè)數(shù)據(jù)傳輸過程的時(shí)序。GPIF波形描述符通常用Cypress公司的GPIF工具(GPIFTOOL)進(jìn)行配置。它是一個(gè)可運(yùn)行于Windows平臺的應(yīng)用程序,與FX2的開發(fā)包一起發(fā)布的。在GPIF方式下,所有的讀/寫及控制邏輯通過CY7C68013的GPIF以軟件編程的方式實(shí)現(xiàn),且控制邏輯的變換方便靈活(只需要改變接口的一個(gè)配置寄存器的值)。

    FX2由4個(gè)GPIF波形描述符控制各個(gè)狀態(tài),它們分別是GPIF Waveform O(FIFORd)、GPIF Waveform1(FIFOWr)、GPIF Waveform 2(SnglRd)和GPIF Wave-form 3(SnglWr)。這些波形描述符可以動態(tài)地配置給任何一個(gè)端點(diǎn)FIFO。FX2的固件程序可以把這些描述符配置給4個(gè)FIFO中的任意一個(gè);配置后,GPIF將依據(jù)波形描述符產(chǎn)生相應(yīng)的控制邏輯和握手信號給外界接口,以滿足向FIFO讀/寫數(shù)據(jù)的需要。每個(gè)波形描述符包含了7個(gè)有效狀態(tài)(S0~S6)和1個(gè)空閑狀態(tài)。在每個(gè)有效狀態(tài)對應(yīng)的時(shí)間段里,經(jīng)過預(yù)先設(shè)置,GPIF可以完成以下幾項(xiàng)工作:驅(qū)動(使高或低)或浮接CTL輸出,采樣或驅(qū)動FIFO的數(shù)據(jù)總線,增加GPIF地址總線的值和指向當(dāng)前FIFO指針的值,以及啟動GPIFWF(GPIF波形)中斷。除此之外,在每個(gè)狀態(tài)下,GPIF還可以對幾個(gè)信號(如RDY輸入端、FIFO狀態(tài)標(biāo)志位、內(nèi)部RDY標(biāo)志位和傳輸計(jì)數(shù)終止標(biāo)志位)中的任意兩個(gè)進(jìn)行采樣,把其中兩個(gè)信號相“與”、相“或”或者相“異或”,并根據(jù)結(jié)果跳轉(zhuǎn)到其他任意一個(gè)狀態(tài)或延遲1~256個(gè)時(shí)鐘周期,當(dāng)然也可以根據(jù)輸入端的信號進(jìn)行跳轉(zhuǎn)或延遲。

    FIFO讀波形配置(FIFORd)如圖5所示。在狀態(tài)0時(shí),數(shù)據(jù)總線上的數(shù)據(jù)為有效(activate),GPIF把數(shù)據(jù)讀到FIFO中。在狀態(tài)1時(shí),GPIF產(chǎn)生一個(gè)正脈沖信號RDCLK(CTL0)給外圍設(shè)備,表示已經(jīng)讀取了一個(gè)數(shù)據(jù),同時(shí)判斷數(shù)據(jù)是否傳輸結(jié)束。如果還沒有,則不斷循環(huán)狀態(tài)O和狀態(tài)l,直到讀完所有數(shù)據(jù)為止;讀完所有數(shù)據(jù)后,不再經(jīng)過中間其他任何狀態(tài),就直接跳到狀態(tài)7(Idle),表示完成本次數(shù)據(jù)傳輸。從圖5中町以看出,在兩個(gè)時(shí)鐘周期內(nèi)完成了一個(gè)數(shù)據(jù)(8位或16位)的讀取,如果數(shù)據(jù)為雙字節(jié)寬,那么傳輸速率可達(dá)48 Mb/s,從而充分利用了USB2.0的傳輸帶寬,大大提高了數(shù)據(jù)傳輸?shù)乃俾省?/P>

3.2 驅(qū)動程序設(shè)計(jì)
    USB系統(tǒng)驅(qū)動程序由3部分組成:USB設(shè)備驅(qū)動程序、USB總線驅(qū)動程序和USB主控制器驅(qū)動程序。其中,Windows操作系統(tǒng)已經(jīng)提供了處于驅(qū)動程序棧底的USB總線驅(qū)動程序和USB主控制器驅(qū)動程序;而USB設(shè)備驅(qū)動程序由設(shè)備開發(fā)者編寫,通過向USB總線驅(qū)動程序發(fā)送包含URB(USB Request Block)的IRP(I/O RequestPaeket),以實(shí)現(xiàn)USB外設(shè)之間的信息交換。

    開發(fā)USB設(shè)備驅(qū)動程序,可采用Numega公司的開發(fā)包Driver Works和Mierosoft公司的2000DDK,并以VC++6.O作為輔助開發(fā)環(huán)境來完成。在Cypress公司的EZ-USBFX2開發(fā)包中,提供了完整的CY7C68013驅(qū)動程序源代碼、控制面板程序及固件的框架,可以大大加快用戶開發(fā)的進(jìn)度。用戶只需對所帶驅(qū)動程序稍加修改甚至無需任何修改,再經(jīng)DDK編譯后使用,軟件開發(fā)者大量的時(shí)間主要集中在應(yīng)用程序和固件的開發(fā)上。本設(shè)計(jì)所用的USB設(shè)備驅(qū)動程序就是對FX2開發(fā)包所帶的驅(qū)動程序做了一些修改,主要是修改了DeviceIoControl例程,增加了控制數(shù)據(jù)傳輸函數(shù)、啟動和停止AD、復(fù)位FIFO等。

3.3 應(yīng)用程序設(shè)計(jì)
   
用戶程序是USB系統(tǒng)與用戶的接口,其關(guān)鍵是實(shí)現(xiàn)從USB外設(shè)讀取或發(fā)送USB設(shè)備請求、命令和特定量的數(shù)據(jù)等,并對數(shù)據(jù)進(jìn)行一系列處理(如存儲、顯示等)。在編寫用戶程序時(shí),首先要建立與外設(shè)的連接,然后才能實(shí)施數(shù)據(jù)的傳輸。

    本設(shè)計(jì)使用的是C++Builder6編譯環(huán)境,在C++Builder6環(huán)境下通過API函數(shù)去調(diào)用USB驅(qū)動?;静襟E為:首先打開設(shè)備的句柄;然后進(jìn)行讀/寫和控制操作;最后關(guān)閉設(shè)備句柄。程序中主要用到的兩個(gè)API函數(shù)CreatFile()和DeviceloControl()就是通過該句柄實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)摹?/P>

結(jié)語
   
本文詳細(xì)介紹了基于USB2.O控制器CY7C68013的GFIF接口軟硬件設(shè)計(jì)方案。該設(shè)計(jì)充分利用了CY7C68013芯片的通用可編程接口特性,很大程度上解決了USB2.0設(shè)備存在的傳輸瓶頸問題,大大提高了數(shù)據(jù)傳輸速率。同時(shí),由于利用了芯片的呵編程特性,因此在具備了普通USB接口方式的諸多優(yōu)點(diǎn)之外,還簡化了外部硬件設(shè)計(jì),提高了系統(tǒng)穩(wěn)定性,有利于PCB板的制作和調(diào)試。

    經(jīng)驗(yàn)證,在USB2.O的高速數(shù)據(jù)采集與處理系統(tǒng)中,基于USB2.0微控制器CY7C68013的GPIF接口設(shè)計(jì)是一種比較好的解決傳輸速度問題的方案。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

USB-C接口全稱為USB Type-C,屬于USB 3.0下一代接口,其亮點(diǎn)在于更加纖薄的設(shè)計(jì)、更快的傳輸速度(最高可達(dá)10Gbps)、更強(qiáng)的電力傳輸(最高100W),此外USB-C接口還支持雙面插入,正反面隨便插,相...

關(guān)鍵字: iPhone 15 Lightning USB

在下述的內(nèi)容中,小編將會對MCU微控制器的相關(guān)消息予以報(bào)道,如果MCU微控制器是您想要了解的焦點(diǎn)之一,不妨和小編共同閱讀這篇文章哦。

關(guān)鍵字: MCU 微控制器 智能控制

今天,小編將在這篇文章中為大家?guī)鞰CU微控制器的有關(guān)報(bào)道,通過閱讀這篇文章,大家可以對MCU微控制器具備清晰的認(rèn)識,主要內(nèi)容如下。

關(guān)鍵字: MCU 微控制器 物聯(lián)網(wǎng)

MCU微控制器將是下述內(nèi)容的主要介紹對象,通過這篇文章,小編希望大家可以對MCU微控制器的相關(guān)情況以及信息有所認(rèn)識和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: MCU 微控制器 芯片

一直以來,MCU微控制器都是大家的關(guān)注焦點(diǎn)之一。因此針對大家的興趣點(diǎn)所在,小編將為大家?guī)鞰CU微控制器的相關(guān)介紹,詳細(xì)內(nèi)容請看下文。

關(guān)鍵字: MCU 微控制器 控制器

在這篇文章中,小編將對MCU微控制器的相關(guān)內(nèi)容和情況加以介紹以幫助大家增進(jìn)對MCU微控制器的了解程度,和小編一起來閱讀以下內(nèi)容吧。

關(guān)鍵字: MCU 微控制器 芯片

單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了I/O設(shè)備。概括的講:一塊芯片就成了一臺計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便...

關(guān)鍵字: 單片機(jī) 微控制器 芯片

GRL東莞實(shí)驗(yàn)室將與上海和臺北實(shí)驗(yàn)室一同,提供Windows Host認(rèn)證服務(wù) 加利福尼亞州圣克拉拉市2022年9月22日 /美通社/ -- 高速信號和充電技術(shù)測...

關(guān)鍵字: Windows THUNDERBOLT USB OS

接下來測試燒寫功能,本次采用串口和USB燒寫方式。使用ISP串口燒寫這是51單片機(jī)常用的方案,本次測試比較順利,沒有遇到什么問題。但是USB燒寫沒有測試成功,USB燒寫方式不需要任何的驅(qū)動和硬件支持,直接將USB線和ST...

關(guān)鍵字: PCB控制板 USB 串口

倉儲機(jī)器人領(lǐng)域的領(lǐng)先企業(yè)率先實(shí)現(xiàn)這一行業(yè)里程碑 馬薩諸塞州威爾明頓2022年9月16日 /美通社/ -- 倉儲處理自主移動機(jī)器人(AMR)市場領(lǐng)先企業(yè)Locus Robot...

關(guān)鍵字: ROBOTICS AMR USB 移動機(jī)器人

智能硬件

21972 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉