国产精品久久久久久久久免费,高潮迭起av乳颜射后入,国产对白老熟女正在播放,国产精品igao视频网网址,丰满人妻熟妇乱又伦精品

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
借助USB來(lái)完成系統(tǒng)配置
借助USB來(lái)完成系統(tǒng)配置
 更新時(shí)間:2009-8-6 15:55:43  點(diǎn)擊數(shù):0
【字體: 字體顏色
引言
  USB2.0規(guī)范憑借其較高的傳送速率而使更加復(fù)雜和高度集成的外設(shè)設(shè)計(jì)得以實(shí)現(xiàn)。許多USB設(shè)計(jì)都采用了現(xiàn)場(chǎng)可編程門陣列(FPGA),以便將定制邏輯功能包容在內(nèi)。由于FPGA具有易失性,因此它另外還需要一個(gè)處理器和一個(gè)大容量存儲(chǔ)器以用于配置目的。
  應(yīng)用于EZ-USB設(shè)計(jì)中的FPGA可在FPGA代碼存儲(chǔ)于PC存儲(chǔ)器的情況下借助EZ-USB微控制器來(lái)進(jìn)行配置,從而能夠免除因在系統(tǒng)設(shè)計(jì)中使用一個(gè)處理器和存儲(chǔ)器所造成的占用空間和成本的增加。
  本文將介紹一種借助USB來(lái)進(jìn)行FPGA配置的方法以及用于通過(guò)USB獲得數(shù)據(jù)并將其傳送至FPGA的微控制器固件實(shí)例。此外,還將說(shuō)明FPGA配置的一種簡(jiǎn)單的主機(jī)應(yīng)用。
  采用FPGA的系統(tǒng)級(jí)芯片
  FPGA由于其密度的不斷提高而正在被人們用來(lái)實(shí)現(xiàn)前所未有的眾多功能,從而使得"系統(tǒng)級(jí)芯片"成為現(xiàn)實(shí)。利用FPGA所實(shí)現(xiàn)的功能包括定制邏輯、通信接口和協(xié)議以及數(shù)據(jù)存儲(chǔ)。由于可提供各種內(nèi)核(包括硬核和軟核)并包括DSP功能、CRC發(fā)生器、串行接口和加密/解密引擎,因而使得FPGA成為一種能夠添加到任何設(shè)計(jì)中的通用型器件。
  然而,由于FPGA具有易失性,所以每次FPGA功率循環(huán)其設(shè)計(jì)代碼都必須重新裝入。這一任務(wù)常常由某種專門針對(duì)FPGA配置的專用存儲(chǔ)器件或?qū)S锰幚砥鱽?lái)完成。
  FPGA的規(guī)模大小不一,小到4萬(wàn)門,大到600萬(wàn)門。配置位的數(shù)量與FPGA的規(guī)模成正比。對(duì)于4萬(wàn)門的器件,所需的配置存儲(chǔ)器的容量為360Kbits。而對(duì)于100萬(wàn)門的器件,則所要求的配置存儲(chǔ)器的容量為4.1Mbits(即500Kbytes)。
  使用對(duì)一個(gè)100萬(wàn)門的FPGA進(jìn)行配置的專用存儲(chǔ)器會(huì)增加約18美元(以10,000片為批量來(lái)購(gòu)買一種4Mbit器件時(shí)的單價(jià))的關(guān)聯(lián)成本。不同制造商所提供的這種特殊器件的封裝占位面積從36mm2到44mm2不等。如能去掉這一元件將大大節(jié)省成本和電路板的占用空間。
  為了使借助USB來(lái)進(jìn)行FPGA配置成為一種高效解決方案,必須遵循以下準(zhǔn)則:
  1. 成本--借助USB所進(jìn)行的FPGA配置應(yīng)幾乎(或根本)不增加成本。
  2. 性能--借助USB所進(jìn)行的FPGA配置所花費(fèi)的時(shí)間不應(yīng)明顯長(zhǎng)于采用配置存儲(chǔ)器時(shí)所耗費(fèi)的時(shí)間。
  3. 時(shí)間--這種改變不應(yīng)對(duì)設(shè)計(jì)周期產(chǎn)生任何負(fù)面影響。
  設(shè)計(jì)要求
  這里所面臨的難題是如何在代碼被存儲(chǔ)于PC硬盤驅(qū)動(dòng)器的情況下對(duì)FPGA進(jìn)行配置,以便免除因使用配置存儲(chǔ)器所造成的成本增加。本文將全面論述借助USB來(lái)進(jìn)行FPGA配置的過(guò)程。
  我們?cè)倩剡^(guò)頭來(lái)看一下上一節(jié)中所談到的幾項(xiàng)要求,第一條準(zhǔn)則指的是設(shè)計(jì)方法的改變不得使設(shè)計(jì)成本有任何的增加。事實(shí)上,該設(shè)計(jì)將省去在配置存儲(chǔ)器上所花費(fèi)的18美元成本,而不會(huì)帶來(lái)任何的附加成本。于是,針對(duì)這一設(shè)計(jì)準(zhǔn)則已經(jīng)實(shí)現(xiàn)了成本的節(jié)約。
  第二條設(shè)計(jì)準(zhǔn)則是性能。對(duì)數(shù)據(jù)通路進(jìn)行快速分析將能夠揭示出任何的潛在瓶頸。數(shù)據(jù)流的行進(jìn)路線如下:
  主PC軟件從一個(gè)文件中獲取FPGA配置數(shù)據(jù)并通過(guò)USB將其傳送至目標(biāo)設(shè)計(jì)。然后,USB微控制器從其端點(diǎn)FIFO(先入先出緩存器)中獲取該數(shù)據(jù)并連同必需的控制選通信號(hào)一起提供給FPGA。
  PC與目標(biāo)設(shè)備之間的USB傳送將取決于USB連接的速度。對(duì)于USB2.0高速器件,該速率可達(dá)480Mbit/s。然而,將數(shù)據(jù)從USB FIFO傳送至FPGA有可能要稍慢一些。這是由兩個(gè)因素造成的,即從USB緩沖器中檢索一個(gè)數(shù)據(jù)字節(jié)以及微處理器生成寫入和時(shí)鐘脈沖選通信號(hào)都需要花費(fèi)一定的時(shí)間。
  我們來(lái)研究一下下面的波形,以便對(duì)配置一個(gè)FPGA所需的處理時(shí)間進(jìn)行分析:

  在第一個(gè)時(shí)鐘周期,數(shù)據(jù)被提供至并行輸出端。在第二個(gè)時(shí)鐘周期,確定nWR(寫入)和nCS(時(shí)鐘選通)信號(hào)。在第三個(gè)時(shí)鐘周期,CLK(時(shí)鐘)信號(hào)被驅(qū)動(dòng)至高電平且配置數(shù)據(jù)被裝入FPGA。接著,取消對(duì)nRW和nCS信號(hào)的確定并最終將時(shí)鐘信號(hào)(CLOCK)重新驅(qū)動(dòng)至低電平。采用某種測(cè)試固件和一個(gè)邏輯分析儀所進(jìn)行的快速測(cè)試發(fā)現(xiàn)了兩個(gè)性能限制因素。
  首先,采用位傳遞方案來(lái)生成寫入選通脈沖信號(hào)所產(chǎn)生的脈沖開關(guān)時(shí)間間隔不會(huì)短于250ns,從而導(dǎo)致上面波形中的5個(gè)周期的總循環(huán)時(shí)間為1250ns(800KHz)。這是因?yàn)榧词故窃?8MHz的條件下,一個(gè)增強(qiáng)型8051處理器仍然需要4個(gè)時(shí)鐘脈沖來(lái)完成一個(gè)指令周期?刂七x通信號(hào)是采用各自需要3個(gè)指令周期來(lái)完成的AND和OR指令來(lái)生成的。于是,在48MHz條件下,用于完成一個(gè)AND或一個(gè)OR指令的總時(shí)間為:
  3周期 * 4時(shí)鐘/周期 * 20.833 ns/時(shí)鐘 = 250ns
  其次,目前從USB FIFO中進(jìn)行數(shù)據(jù)檢索需要花費(fèi)3.8ms/字節(jié)的時(shí)間。這是因?yàn)榫彌_器指示字的字節(jié)更新、環(huán)路計(jì)數(shù)器的加1計(jì)數(shù)以及實(shí)際的數(shù)據(jù)傳送都需要時(shí)間。
  為了克服上面這兩個(gè)障礙,需要在USB緩沖器和FPGA之間建立一種速度更快的連接,并尋求出一種生成nWR、nCS和CLOCK選通信號(hào)的更佳途徑。
  幸運(yùn)的是,賽普拉斯公司的EZ-USB FX2器件就擁有一種針對(duì)這些問(wèn)題的解決方案。FX2的量子FIFO功能可實(shí)現(xiàn)USB緩沖器與芯片輸出總線的直接連接,而無(wú)需8051處理器的介入。此外,F(xiàn)X2的通用接口(GPIF)功能還使得能夠以程序控制的方式來(lái)完成波形生成。
  后面的幾節(jié)將介紹如何采用量子FIFO和GPIF來(lái)把單字節(jié)寫入時(shí)間從4ms縮短至125ns,這是一個(gè)幅度高達(dá)32倍的性能改進(jìn)!
  最后,該設(shè)計(jì)的實(shí)際執(zhí)行過(guò)程不應(yīng)過(guò)長(zhǎng)。了解該設(shè)計(jì)工作的復(fù)雜性的最佳途徑是仔細(xì)查看其設(shè)計(jì)步驟。下一節(jié)將說(shuō)明這些步驟。
  設(shè)計(jì)實(shí)施
  即將執(zhí)行的設(shè)計(jì)將包括一個(gè)100萬(wàn)門的FPGA。這是一個(gè)中等規(guī)模的FPGA。針對(duì)該應(yīng)用的配置存儲(chǔ)器將需要具有約512Kbytes的容量。
  將需要發(fā)出一些選通脈沖以便把數(shù)據(jù)裝入FPGA。前文所示的波形將被采用。GPIF將被用來(lái)生成這些波形。
  設(shè)計(jì)實(shí)施分為三個(gè)步驟來(lái)進(jìn)行。首先是主PC代碼,隨后是USB固件。最后將生成FPGA配置波形并提供連接程序以便從軟件中調(diào)用這些波形。
  PC代碼相對(duì)簡(jiǎn)單。獲得了一個(gè)至USB設(shè)備驅(qū)動(dòng)程序的句柄。打開包含配置代碼的文件并對(duì)其進(jìn)行語(yǔ)法分析。在USB轉(zhuǎn)移函數(shù)的每次調(diào)用過(guò)程中傳送取自配置文件的512字節(jié)數(shù)據(jù)。這一過(guò)程將繼續(xù)下去,直到配置文件中沒(méi)有剩余字節(jié)為止。為了進(jìn)行測(cè)試,將采用一個(gè)包含走步數(shù)據(jù)模式的文件,以便在邏輯分析儀上對(duì)數(shù)據(jù)傳送加以驗(yàn)證。
  對(duì)于USB固件,代碼將是必需的,以便在USB數(shù)據(jù)輸入時(shí)將其捕獲并傳送至FPGA。該固件將基于一個(gè)與開發(fā)工具一道供貨的現(xiàn)有框架。在這種場(chǎng)合,與開發(fā)工具一并供應(yīng)的成批傳送實(shí)例對(duì)用戶來(lái)說(shuō)是一個(gè)良好的起點(diǎn)。該設(shè)計(jì)將采用為雙重緩沖和512字節(jié)/USB傳送而初始化的端點(diǎn)#2。一個(gè)輪詢環(huán)路將確定USB數(shù)據(jù)是否存在于該端點(diǎn)緩沖器中。如果是,則數(shù)據(jù)將被裝入FPGA且該端點(diǎn)將重新進(jìn)入待命狀態(tài)以便能夠接收更多的數(shù)據(jù)。雙重緩沖的運(yùn)用便于在傳送一個(gè)數(shù)據(jù)分組同時(shí)處理另一個(gè)數(shù)據(jù)分組。
  數(shù)據(jù)傳送和選通信號(hào)控制將由GPIF來(lái)完成。為此調(diào)用了兩項(xiàng)功能。第一項(xiàng)功能是Peripheral_SetEP2GPIFTC(Count),它被用來(lái)通知GPIF有多少字節(jié)需要傳送。變量Count通過(guò)在接收到USB數(shù)據(jù)時(shí)對(duì)端點(diǎn)字節(jié)計(jì)數(shù)寄存器進(jìn)行讀取操作的方法來(lái)獲得。每個(gè)數(shù)據(jù)分組(對(duì)應(yīng)于位于文件末尾、其大小有可能小于512的數(shù)據(jù)的分組除外)的計(jì)數(shù)值將是512。第二項(xiàng)功能是Peripheral_FIFOWrite(EndPoint)。這里,端點(diǎn)序號(hào)將被傳遞,這樣GPIF就會(huì)知道從哪一個(gè)緩沖器獲取USB數(shù)據(jù)。

  最后一項(xiàng)工作是對(duì)GPIF波形進(jìn)行編輯。EZ-USB產(chǎn)品配有一個(gè)用于該目的的工具。該波形編輯器用于設(shè)定CTL輸出的邏輯電平并根據(jù)RDY輸入做出相應(yīng)的判斷。FPGA配置波形在波形編輯器中的實(shí)現(xiàn)過(guò)程如下。


  波形的編輯包括在間隔0、1和2期間對(duì)nWR、nCS和CLK信號(hào)所做的變更。如圖3中的IF/Wait行所示,間隔 0、3和7具有長(zhǎng)達(dá)一個(gè)時(shí)鐘周期的持續(xù)時(shí)間。間隔1的持續(xù)時(shí)間為兩個(gè)時(shí)鐘周期。間隔2包含一個(gè)IF條件。在這種場(chǎng)合,一個(gè)輸入與其自身進(jìn)行"異-或" 邏輯運(yùn)算以生成邏輯真(TRUE)。這就是所謂的中斷機(jī)理。在一個(gè)實(shí)際應(yīng)用中,RDY2行有可能是一個(gè)來(lái)自用于流量控制的FPGA的BUSY信號(hào)。請(qǐng)注意在這個(gè)波形中有6個(gè)周期,每個(gè)周期占用20.833ns的時(shí)間,這是由于GPIF在滿48MHz條件下運(yùn)行所致。
  Peripheral_FIFOWrite() 功能與所示的波形相關(guān)聯(lián)。當(dāng)固件調(diào)用Peripheral_FIFOWrite() 功能時(shí),上文中的波形將被執(zhí)行n次,其中,n為傳遞至Peripheral_SetEP2GPIFTC( ) 的數(shù)值。下圖示出的是用于GPIF傳送的邏輯分析儀輸出的屏幕拍攝照片。由圖可見,傳送一個(gè)字節(jié)需要125ns的時(shí)間。請(qǐng)注意取自樣本數(shù)據(jù)文件的走步數(shù)據(jù)模式。

  以125ns/字節(jié)的FPGA寫入時(shí)間來(lái)計(jì)算,一個(gè)512KB的FPGA配置文件有可能僅需65ms便可完成裝入。
  結(jié)論
  借助USB的FPGA配置可在沒(méi)有增加任何元件的情況下輕松而廉價(jià)地實(shí)現(xiàn),從而免除了使用配置存儲(chǔ)器所造成的成本增加并壓縮了電路板的占用空間和設(shè)計(jì)周期。與位傳遞處理器解決方案相比,EZ-USB FX2的量子FIFO功能以及GPIF接口實(shí)現(xiàn)了32倍的速度提升。提供的開發(fā)工具和實(shí)例將有助于用戶縮減開發(fā)時(shí)間,從而使得設(shè)計(jì)人員能夠把精力集中于系統(tǒng)的其他方面。
  • 上一篇: 智能延遲觸發(fā)產(chǎn)生器的設(shè)計(jì)
  • 下一篇: 利用XPS工具快速生成有效的板支持包
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1