亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Verilog的FPGA與USB?。玻案咚俳涌谠O(shè)計

        2009-05-25 09:59:44衛(wèi)張冬陽
        現(xiàn)代電子技術(shù) 2009年1期
        關(guān)鍵詞:固件狀態(tài)機端點

        袁 衛(wèi) 張冬陽

        摘 要:USB 2.0接口芯片F(xiàn)X2 CY7C68013工作在Slave FIFO模式下,討論了一種以FPGA為控制核心,對其內(nèi)部的FIFO進行控制,以實現(xiàn)數(shù)據(jù)的高速傳輸。該系統(tǒng)模塊主要由USB固件程序和FPGA控制軟件組成,可應(yīng)用到需要通過USB 2.0接口進行高速數(shù)據(jù)傳輸或采集系統(tǒng)中。實驗結(jié)果表明:系統(tǒng)具有數(shù)據(jù)傳輸準確、速度快等特點。

        關(guān)鍵詞:USB 2.0;Slave FIFO模式;FPGA;高速接口

        中圖分類號:TP334.7 文獻標識碼:B

        文章編號:1004-373X(2009)01-161-03

        Design of High Speed Interface FPGA and USB 2.0 Based on Verilog

        YUAN Wei 1,2,ZHANG Dongyang 1

        (1.College of Technical Physics,Xidian University,Xi′an,710071,China;

        2.Weinan Teachers Univerisity,Weinan,714000,China)

        Abstract:In this paper,high speed data transmission technology which used Slave FIFO pattern of USB 2.0 FX2 CY7C68013 under the control of FPGA is introduced.The system mainly consists of two parts of firmware design program and software of control of FPGA.It can be applied to those systems which need to transmit or acquire mass data quickly by USB 2.0 interface.The result of examination indicates that the system is exact in transmission and high in speed.

        Keywords:USB 2.0;pattern of Slave FIFO;FPGA;high speed interface

        0 引 言

        USB (通用串行總線)是英特爾、微軟、IBM、康柏等公司1994年聯(lián)合制定的一種通用串行總線規(guī)范,它具有數(shù)據(jù)傳輸速度快,成本低,可靠性高,支持即插即用和熱插拔等優(yōu)點,迅速得到廣泛應(yīng)用[1]。

        在高速的數(shù)據(jù)采集或傳輸中,目前使用較多的都是采用USB 2.0接口控制器和FPGA或DSP實現(xiàn)的[2],本設(shè)計在USB 2.0接口芯片CY7C68013的Slave FIFO模式下,利用FPGA作為外部主控制器實現(xiàn)對FX2 USB內(nèi)部的FIFO進行控制,以實現(xiàn)數(shù)據(jù)的高速傳輸。該模塊可普遍適用于基于USB 2.0接口的高速數(shù)據(jù)傳輸或采集中。

        1 系統(tǒng)硬件模塊設(shè)計

        1.1 系統(tǒng)硬件框圖

        圖1中展示了Slave FIFO方式下FX2 USB和FPGA的典型連接。其中,FD[7..0]為8位雙向數(shù)據(jù)總線;FLAGA~FLAGC為FX2內(nèi)FIFO的標志管腳,映射FIFO的當前狀態(tài);SLCS為Slave FIFO的片選信號;SLOE用于使能數(shù)據(jù)總線FD的輸出;FIFOADR[1..0]用于選擇和FD連接的端點緩沖區(qū)(00代表端點2,01代表端點4,10代表端點6,11代表端點8);SLRD和SLWR可分別作為FIFO的讀寫選通信號。

        1.2 USB 2.0接口芯片CY7C68013

        1.2.1 CY7C68013的結(jié)構(gòu)特點

        Cypress公司的USB FX2是第一個包含USB 2.0的集成微控制器,它內(nèi)部集成了1個增強型的8051, 1個智能USB串行接口引擎,1個USB數(shù)據(jù)收發(fā)器, 3個8位I/O口,16位地址線,8.5 KB RAM和4 KB FIFO等。增強性8051內(nèi)核完全與標準8051兼容,而性能可達到標準8051的3倍以上[3]。其框圖如圖2所示。

        1.2.2 CY7C68013的工作模式

        CY7C68013有Ports模式、Slave FIFO和GPIF三種接口方式[4]。

        Ports模式是一種最基本的數(shù)據(jù)傳輸方式,其數(shù)據(jù)傳輸主要由固件程序完成,需要CPU 的參與,因此數(shù)據(jù)傳輸速率比較低,適用于傳輸速率要求不高的場合。

        Slave FIFO方式是從機方式,外部控制器,如 FPGA,可像對普通FIFO一樣對FX2的多層緩沖FIFO進行讀寫。FX2內(nèi)部的FIFO提供所需的時序信號、握手信號(滿、空等)和輸出使能等。這里就是在Slave FIFO模式下實現(xiàn)USB 2.0接口和FPGA的數(shù)據(jù)通信。

        可編程接口GPIF是主機方式,GPIF作為內(nèi)部主機控制端點FIFO,可以軟件編程讀寫控制波形,幾乎可以對任何8/16 b接口的控制器、存儲器和總線進行數(shù)據(jù)的主動讀寫,非常靈活[5]。

        2 系統(tǒng)軟件模塊設(shè)計

        2.1 USB固件程序設(shè)計

        應(yīng)用中采用異步FIFO方式,使用內(nèi)部 48 MHz時鐘,自動方式,固件程序采用Cypress公司提供的固件程序框架,在其初始化函數(shù)中添加了用戶配置代碼。該設(shè)計中異步自動從屬FIFO數(shù)據(jù)傳輸?shù)某跏蓟a如下:

        void TD_Init(void)//初始化函數(shù)

        {

        BREAKPT&=~bmBPEN;

        Rwuen=TRUE;

        CPUCS=((CPUCS&~bmCLKPSD)|bmCLKPSD1);//設(shè)定40 MHz主頻

        IFCONFIG=0xE3; //設(shè)定IFCLK時鐘為48 MHz,提供對外輸出

        EP1OUTCFG=0xA0;//配置端點1,OUT,批量傳輸

        EP1INCFG=0xA0;

        EP2CFG=0xA2;//配置端點2,OUT,批量傳輸,2倍緩沖

        EP4CFG=0xA0;//配置端點4,OUT,批量傳輸,2倍緩沖

        EP6CFG=0xE2;//配置端點6,IN,批量傳輸,2倍緩沖

        EP8CFG=0xE0;//配置端點8,IN,批量傳輸,2倍緩沖

        PINFLAGSAB=0x00;

        //定義FLAGA為可編程級標志,FLAGB為滿標志,由FIFOADR[1:0]指定

        PINFLAGSCD=0x00; //定義FLAGC為空標志

        WAKEUP=0xF4;

        AUTOPTRSETUP|=0x01;

        }

        2.2 FPGA控制程序設(shè)計

        CY7C68013A提供的端口FIFO的讀寫操作,與普通FIFO讀寫操作方式一樣[6]。CY7C68013A為每個端口提供了“空”標志、“滿”標志和“可編程級”標志。FPGA檢測這些信號,用于控制讀寫的過程。FPGA在完成這些端口FIFO的操作時,采用Verilog HDL硬件描述語言實現(xiàn)了FIFO的讀寫時序,并在ALTERA公司提供的Quartus Ⅱ 8.0開發(fā)工具中綜合編譯并映射到FPGA中運行。

        2.2.1 從屬FIFO異步“讀”操作

        實現(xiàn)異步從屬FIFO“讀”的狀態(tài)機如圖3所示。其狀態(tài)轉(zhuǎn)移進程如下:

        IDLE:當“寫”事件發(fā)生時,轉(zhuǎn)到狀態(tài)1。

        狀態(tài)1:指向OUT FIFO,激活FIFOADR[1:0],轉(zhuǎn)向狀態(tài)2。

        狀態(tài)2:激活SLOE,如果FIFO空標志為“假”(FIFO不空),則轉(zhuǎn)向狀態(tài)3;否則停留在狀態(tài)2。

        狀態(tài)3:激活SLOE,SLRD,傳送總線采樣數(shù)據(jù);撤銷激活SLRD(指針加1)和SLOE,轉(zhuǎn)向狀態(tài)4。

        狀態(tài)4:如果有更多的數(shù)據(jù)要求,則轉(zhuǎn)向狀態(tài)2;否則轉(zhuǎn)向IDLE。

        實現(xiàn)以上狀態(tài)機的仿真波形如圖4所示。

        2.2.2 從屬FIFO異步“寫”操作

        實現(xiàn)異步從屬FIFO“寫”的狀態(tài)機如圖5所示。其狀態(tài)轉(zhuǎn)移進程如下:

        IDLE:當寫事件發(fā)生時,轉(zhuǎn)到狀態(tài)1。

        狀態(tài)1:指向IN FIFO,激活FIFOADR[1:0],轉(zhuǎn)向狀態(tài)2。

        狀態(tài)2:如果FIFO滿標志為“假”(FIFO不滿),則轉(zhuǎn)向狀態(tài)3;否則停留在狀態(tài)2。

        狀態(tài)3:傳送總線驅(qū)動數(shù)據(jù)。為一個IFCLK激活SLWR,轉(zhuǎn)向狀態(tài)4。

        狀態(tài)4:如果有更多的數(shù)據(jù)要寫,則轉(zhuǎn)向狀態(tài)2;否則轉(zhuǎn)向IDLE。

        用Quartus Ⅱ進行仿真驗證,其仿真波形如圖6所示,在此過程中USB_SLWR信號很重要,經(jīng)分析可知,本狀態(tài)機實現(xiàn)的FIFO寫控制信號完全正確。

        x

        3 實驗結(jié)果

        對傳輸?shù)臄?shù)據(jù)進行驗證,可通過FPGA編程生成 0~255的數(shù)據(jù)傳送至CY7C68013的EP6端點,連續(xù)傳送兩次,然后利用EZ-USB Control Panel軟件測試所接收到的數(shù)據(jù),測試結(jié)果如圖7所示,可以看出,數(shù)據(jù)傳輸準確無誤。

        4 結(jié) 語

        USB 2.0控制器CY7C68013已經(jīng)被廣泛應(yīng)用到許多數(shù)據(jù)傳輸領(lǐng)域,由于USB具有靈活的接口和可編程特性,大大簡化了外部硬件的設(shè)計,提高了系統(tǒng)可靠性[7]。

        該設(shè)計可擴展性好,已經(jīng)被應(yīng)用于數(shù)據(jù)傳輸與采集的板卡上,經(jīng)實際測試,沒有出現(xiàn)數(shù)據(jù)的誤碼等錯誤,數(shù)據(jù)傳送正確,傳輸速率可達30 MHz/s以上,滿足設(shè)計要求。

        參考文獻

        [1]黃大勇,李鑒,張建正.基于USB 2.0接口的高速數(shù)據(jù)采集系統(tǒng)設(shè)計[J].現(xiàn)代電子技術(shù),2007,30(24):69-72.

        [2]譚安菊,龔彬.USB 2.0控制器CY7C68013與FPGA接口的VerilogHDL實現(xiàn)[J].電子工程師,2007,33(7):52-55.

        [3] 錢鋒.EZUSB FX2單片機原理、編程及應(yīng)用[M].北京:北京航空航天大學出版社,2006.

        [4]邊海龍.USB 2.0設(shè)備的設(shè)計與開發(fā)[M].北京:人民郵電出版社,2004.

        [5]蕭世文.USB 2.0硬件設(shè)計[M].北京:清華大學出版社,2002.

        [6]王祥,阮利華,周榮政.USB 2.0接口系統(tǒng)的設(shè)計與應(yīng)用[J].計算機工程與應(yīng)用研究,2005,41(6):98-100.

        [7]蔣金濤,楊鳴.USB 2.0控制器EZ-USB FX2的性能特點及其數(shù)據(jù)傳輸實現(xiàn)[J].計算機工程與應(yīng)用研究,2005,41(11):94-96.

        [8]夏宇聞.復雜數(shù)字電路與系統(tǒng)的Verilog HDL設(shè)計技術(shù)[M].北京:北京航空航天大學出版社,1998.

        [9]朱正平,寧百齊,袁洪,等.基于USB 2.0接口芯片F(xiàn)X2的高速數(shù)據(jù)采集板的設(shè)計實現(xiàn)[J].微計算機信息,2006,22(5):328-331.

        [10][美]Michael D Ciletti.Verilog高級數(shù)字設(shè)計[M].張雅綺,李鏘,譯.北京:電子工業(yè)出版社,2006.

        作者簡介袁 衛(wèi) 男,1973年出生,陜西渭南人,西安電子科技大學博士研究生,渭南師范學院物理系講師。研究方向為光電成像系統(tǒng)仿真與評估。

        張冬陽 男,1985年出生,江蘇淮安人,西安電子科技大學碩士研究生。研究方向為嵌入式系統(tǒng)應(yīng)用。

        猜你喜歡
        固件狀態(tài)機端點
        非特征端點條件下PM函數(shù)的迭代根
        基于有限狀態(tài)機的交會對接飛行任務(wù)規(guī)劃方法
        不等式求解過程中端點的確定
        參數(shù)型Marcinkiewicz積分算子及其交換子的加權(quán)端點估計
        基于固件的遠程身份認證
        基丁能雖匹配延拓法LMD端點效應(yīng)處理
        提取ROM固件中的APP
        電腦愛好者(2015年7期)2015-04-09 08:54:02
        一種通過USB接口的可靠固件升級技術(shù)
        奧林巴斯XZ—2新固件升級
        中國攝影(2014年1期)2014-02-24 01:50:23
        FPGA設(shè)計中狀態(tài)機安全性研究
        黑龍江科學(2011年2期)2011-03-14 00:39:36
        精品国产福利一区二区三区| 亚洲avav天堂av在线网爱情| 18禁超污无遮挡无码免费游戏| 精品久久久久久无码不卡| 日本岛国一区二区三区| 国语对白免费观看123| 免费看黑人男阳茎进女阳道视频| 美丽人妻被按摩中出中文字幕| 国产午夜亚洲精品不卡免下载| 手机免费高清在线观看av| 欧美又粗又长又爽做受| 亚洲深深色噜噜狠狠爱网站| 国产精品美女久久久久浪潮AVⅤ| 国产丝袜美腿在线播放| 67194熟妇人妻欧美日韩| 亚洲国产成人久久综合一区77| 蜜桃一区二区免费视频观看 | 制服丝袜视频国产一区| 国产美女冒白浆视频免费| 日本孕妇潮喷高潮视频| 精品亚洲成a人7777在线观看| 在线看片国产免费不卡| 中文字幕日本av网站| 成人亚洲精品777777| 在线视频精品免费| 黄色国产一区在线观看| 不卡日韩av在线播放| 成人无码免费一区二区三区| 久久精品国产精品亚洲婷婷| 成人国产一区二区三区av| av无码av天天av天天爽| 日韩爱爱网站| 日韩伦理av一区二区三区| 狠狠摸狠狠澡| 国产av一区二区三区日韩| 插入中文字幕在线一区二区三区| 亚洲天堂精品成人影院| 无码中文字幕日韩专区视频| 欧美日韩激情在线一区二区| 国产内射一级一片高清内射视频| 日韩精品久久久久久久电影蜜臀|