《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > CY7C68013與FPGA接口的Verilog HDL實(shí)現(xiàn)
CY7C68013與FPGA接口的Verilog HDL實(shí)現(xiàn)
摘要: USB(通用串行總線)是英特爾、微軟、IBM、康柏等公司1994年聯(lián)合制定的一種通用串行總線規(guī)范,它解決了與網(wǎng)絡(luò)通信問題,而且端口擴(kuò)展性能好、容易使用。最新的USB2.0支持3種速率:低速1.5 Mbit/s,全速12 Mbit/s,高速480 Mbit/s。這3種速率可以滿足目前大部分外設(shè)接口的需要。
關(guān)鍵詞: FPGA CY7C68013 Verilog HDL Virtex-Ⅱ
Abstract:
Key words :

0 引 言

USB(通用串行總線)是英特爾、微軟、IBM、康柏等公司1994年聯(lián)合制定的一種通用串行總線規(guī)范,它解決了與網(wǎng)絡(luò)通信問題,而且端口擴(kuò)展性能好、容易使用。最新的USB2.0支持3種速率:低速1.5 Mbit/s,全速12 Mbit/s,高速480 Mbit/s。這3種速率可以滿足目前大部分外設(shè)接口的需要。

本文介紹了目前使用較多的USB2.0控制器CY7C68013芯片與FPGA(現(xiàn)場可編程門陣列)芯片接口的Verilog HDL(硬件描述語言)實(shí)現(xiàn)。本系統(tǒng)可擴(kuò)展,完全可用于其他高速數(shù)據(jù)采集系統(tǒng)中。

1 系統(tǒng)構(gòu)成

本系統(tǒng)主要是由FPGA和USB2.0控制器CY7C268013組成,系統(tǒng)框圖及其信號連接關(guān)系如圖1所示。可以根據(jù)實(shí)際系統(tǒng)的需要,用FPGA實(shí)現(xiàn)預(yù)定功能,如數(shù)據(jù)采集卡、控制硬盤讀寫等。
 

1.1 控制器CY7C68013

Cypress公司的EZ-USB FX 2是第一個包含USB2.0的集成微控制器,它內(nèi)部集成了1個增強(qiáng)型的8051、1個智能USB串行接口引擎、1個USB數(shù)據(jù)收發(fā)器、3個8位I/O口、16位地址線、8.5 kB RAM和4 kBFIFO等。增強(qiáng)性8051內(nèi)核完全與標(biāo)準(zhǔn)8051兼容,而性能可達(dá)到標(biāo)準(zhǔn)8051的3倍以上。其框圖如圖2所示。

1.1.1 CY7C68013結(jié)構(gòu)特點(diǎn)

EZ-USB FX2提供了一種獨(dú)持架構(gòu),使USB接口和應(yīng)用環(huán)境直接共享FIFO,而微控制器可不參與數(shù)據(jù)傳輸,但允許以FIFO或RAM的方式訪問這些共享FIFO,這種被稱之為"量子FIFO"的處理架構(gòu),較好地解決了USB高速模式的帶寬問題。

FX2芯片在數(shù)據(jù)傳輸時主要利用了4 kB的FIFO,分為7個端點(diǎn):EPOIN&OUT、EP1IN、EP1OUT、EP2、EP4、EP6和EP8。其中EPO、EPlIN和EP1OUT是3個64 B的緩存,只能被固件訪問,EP0是一個默認(rèn)的數(shù)據(jù)輸入輸出端口緩存;EP1IN和EP1OUT是單獨(dú)的64 B緩存,呵以配置這些端點(diǎn)為塊傳輸、中斷傳輸或同步傳輸;端點(diǎn)2、4、6、8是大容量高帶寬的數(shù)據(jù)傳輸端點(diǎn),可以配置為各種帶寬以滿足實(shí)際需要,端點(diǎn)2、4是輸出端點(diǎn),端點(diǎn)6、8是輸入端點(diǎn)。值得注意的是,端點(diǎn)4、8能配置為每幀512 B,而端點(diǎn)2、6卻能配置為每幀512 B或1 024 B,并可配置為2、3、4級,這樣EP2或EP6最大能配置為4 kB的緩存。

其在內(nèi)部的傳輸控制是通過full(滿)和empty(空)兩個控制信號來完成的,當(dāng)full為真時不能再寫數(shù)據(jù),當(dāng)empty為真時不能再對FIFO進(jìn)行讀,其內(nèi)部數(shù)據(jù)傳輸示意圖如圖3所示。

如圖3所示,USB執(zhí)行OUT傳輸,將EP2端點(diǎn)設(shè)成512 B四重FIFO。在USB端和外部接門端都并不知道有四重FIFO。USB端只要有1個FIFO為"半滿",就可以繼續(xù)發(fā)送數(shù)據(jù)。當(dāng)操作的FIFO寫"滿"時,F(xiàn)X2自動將其轉(zhuǎn)換到外部接口端,排隊(duì)等候讀取;并將USB接口隊(duì)列中下一個為"空"的FIFO轉(zhuǎn)移到USB接口上,供其繼續(xù)寫數(shù)據(jù)。外部接門端與此類似,只要有1個FIFO為"半滿",就可以繼續(xù)讀取數(shù)據(jù)。當(dāng)前操作的FIFO讀"空"時,F(xiàn)X2自動將其轉(zhuǎn)換到USB接口端,排隊(duì)等候?qū)懭耄徊⑼獠拷涌陉?duì)列中下一個為"滿"的FIFO轉(zhuǎn)移到外部接口上,供其繼續(xù)讀取。
 

1.1.2 Fx2接口方式

FX2有Slave FIFO和GPIF兩種接口方式。

Slave FIFO是從機(jī)方式,即FX的CPU不直接參與USB數(shù)據(jù)處理,而是簡單地把FX作為USB和外部數(shù)據(jù)處理邏輯(如ASIC、DSP和IDE(串行接口引擎)控制器)之間的通道,數(shù)據(jù)流并不經(jīng)過CPU,而是通過FX的FIFO直接傳輸。FIFO通過外部主機(jī)控制,同時,F(xiàn)IFO提供所需的時序信號、握手信號(滿、空等)和輸出使能等。

可編程接口GPIF是主機(jī)方式,GPIF作為內(nèi)部主機(jī)控制端點(diǎn)FIFO,其core是一個可編程狀態(tài)機(jī),可以生成多達(dá)6個控制輸出信號和9個地址輸出信號,能外接6個外部Ready輸入信號和2個內(nèi)部Ready輸入信號。通過用戶自定義的波形描述符來控制狀態(tài)機(jī),使用軟件編程讀寫控制波形,幾乎可以對任何8/16 hit接口的控制器、存儲器和總線進(jìn)行數(shù)據(jù)的主動讀寫,非常靈活。

2 接口的Verilog HDL編程實(shí)現(xiàn)

在本設(shè)計(jì)巾采用Slave FIFO從機(jī)方式實(shí)現(xiàn)FPGA對FX的控制,通過Verilog HDL編程實(shí)現(xiàn)。FPGA可以根據(jù)實(shí)際情況選定。我們在設(shè)計(jì)時選用Xilinx公司的Virtex-Ⅱ設(shè)備(XC2V10004FG456C)。

2.1 異步FIFO讀數(shù)據(jù)

FX讀數(shù)據(jù)也就是數(shù)據(jù)從FX傳到FPGA的過程,其過程如下:

a)反復(fù)檢測控制線狀態(tài),當(dāng)讀事件發(fā)生時,即控制線con_out_z=0和RD_disk=10時,轉(zhuǎn)到 b;

b)分配FIFOADR[1:0]=00,這時FIFO指針會指向輸出端點(diǎn),表明使用端點(diǎn)EP2;

c)檢查FIFO是否空,當(dāng)empy=1時表示FIFO不空,轉(zhuǎn)到狀態(tài)d,否則保持在狀態(tài)C;

d)賦值SLOE=0,使雙向數(shù)據(jù)線FD在輸出狀態(tài),采樣FD數(shù)據(jù)線上的數(shù)據(jù),并在SLRD的上升沿使FIFO指針門動加1,跳轉(zhuǎn)到e;

e)假如有更多的數(shù)據(jù)需要讀,轉(zhuǎn)到狀態(tài)b,否則轉(zhuǎn)到狀態(tài)a。

對讀數(shù)據(jù)編程如下:



用Mentor軟件Modelsim進(jìn)行仿真驗(yàn)證,其仿真波形如圖4所示。在此過程中,SLRD信號特別重要,在SLRD的下降沿把FlFO中的數(shù)據(jù)放到FD數(shù)據(jù)線上;在SLRD的上升沿把FIFO指針加1,并指向下一個單元。
 

2.2 異步FIFO寫數(shù)據(jù)

向FIFO寫數(shù)據(jù)是讀數(shù)據(jù)的逆過程,也就是把FP-GA數(shù)據(jù)寫入FX的FIFO,其編程過程如下:

a)查詢控制信號線con_out_z和WR_disk,看是否有讀事件發(fā)生,如果有,就轉(zhuǎn)移到狀態(tài)b,否則保持在狀態(tài)a;

b)分配FIFOAFR[1:0]=10,F(xiàn)IFO指針指向輸入端點(diǎn),轉(zhuǎn)向狀態(tài)c;

c)檢查FIFO的滿標(biāo)志是否為1,假如fuIl=1,表示FIFO不滿,轉(zhuǎn)到狀態(tài)d,否則保持在狀態(tài)c;

d)把外部數(shù)據(jù)indata放在FD上,同時把SLWR拉高,以使得FIFO指針自動加1,然后轉(zhuǎn)到狀態(tài)e;

e)假如有更多的數(shù)據(jù)要傳輸,轉(zhuǎn)到狀態(tài)b,否則轉(zhuǎn)到狀態(tài)a。

其程序與寫FIFO數(shù)據(jù)時一樣,只是在生成SLWR信號時,需要注意控制信號之間的保持延時時間約束,這可以通過仿真結(jié)果進(jìn)行適當(dāng)修改。



讀數(shù)據(jù)信號仿真波形如圖5所示。但必須注意的是,在SLWR的下降沿把indata數(shù)據(jù)線上的數(shù)據(jù)放到FD數(shù)據(jù)線上;在SLWR的上降沿把FD數(shù)據(jù)線上的數(shù)據(jù)放人FIFO,并同時使FIFO指針加1,指向下一個緩存單元。
 

3 結(jié)束語

現(xiàn)在USB2.O控制器CY7C68013已經(jīng)應(yīng)用到許多數(shù)據(jù)傳輸領(lǐng)域,由于此芯片靈活的接口和可編程特性簡化了外部硬件的設(shè)計(jì),提高了系統(tǒng)可靠性,也利于PCB(印制電路板)的制作與調(diào)試。本設(shè)計(jì)可擴(kuò)展性好,因此可用于需要處理大容量的數(shù)據(jù)采集系統(tǒng)中。本設(shè)計(jì)已經(jīng)用于對IDE硬盤的讀寫控制中,實(shí)現(xiàn)了對IDE硬盤的快速讀寫。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
毛片av中文字幕一区二区| 欧美吻胸吃奶大尺度电影| 一本到12不卡视频在线dvd| 欧美主播一区二区三区美女 久久精品人| 99re热这里只有精品视频| 在线日本欧美| 韩国在线视频一区| 国产欧美日韩三区| 国产精品日韩欧美| 欧美性猛交xxxx乱大交退制版| 欧美风情在线观看| 免费视频一区二区三区在线观看| 久久久精彩视频| 欧美一区二区三区啪啪| 性18欧美另类| 午夜在线成人av| 亚洲欧美日韩一区二区三区在线| 亚洲一区二区不卡免费| 亚洲一级黄色av| 亚洲一区二区三| 亚洲一区二区三区三| 中国女人久久久| 中文网丁香综合网| 亚洲一区二区三区四区中文| 亚洲视频欧美视频| 亚洲一区二区三区在线看| 亚洲欧美日韩高清| 欧美在线免费看| 欧美专区18| 久久蜜桃精品| 蜜桃av一区二区| 欧美国产精品va在线观看| 欧美—级高清免费播放| 欧美劲爆第一页| 欧美日韩视频一区二区| 国产精品扒开腿做爽爽爽视频| 国产精品国产三级国产aⅴ浪潮| 国产精品乱子久久久久| 国产日韩欧美中文在线播放| 国产在线一区二区三区四区| 伊人精品在线| 亚洲精品久久久一区二区三区| 亚洲三级毛片| 中文在线资源观看网站视频免费不卡 | 国精品一区二区| 在线成人av.com| 日韩视频二区| 亚洲免费在线观看| 亚洲电影在线| a4yy欧美一区二区三区| 午夜久久tv| 玖玖视频精品| 欧美日韩中文字幕精品| 国产视频久久网| 亚洲国产精品va在线观看黑人| 99视频精品| 久久精品国产2020观看福利| 日韩午夜av| 久久黄金**| 欧美理论大片| 国产日韩精品视频一区| 亚洲国产日韩综合一区| 中日韩男男gay无套| 久久爱另类一区二区小说| 一本不卡影院| 久久久91精品国产| 欧美日韩精品免费在线观看视频| 国产日韩精品视频一区| 亚洲日韩中文字幕在线播放| 香蕉久久国产| av不卡免费看| 久久精品成人一区二区三区蜜臀 | 亚洲作爱视频| 久久久久国产一区二区| 欧美日韩成人在线| 国产日韩欧美在线| 日韩视频在线你懂得| 欧美一区在线视频| 亚洲私人影吧| 美女亚洲精品| 国产精品乱子久久久久| 亚洲国产aⅴ天堂久久| 亚洲在线视频网站| 99在线观看免费视频精品观看| 久久福利一区| 欧美三级日本三级少妇99| 黄色成人91| 亚洲午夜成aⅴ人片| 亚洲国产精选| 欧美一区三区三区高中清蜜桃| 欧美精选在线| 尤物在线精品| 欧美一区二区网站| 亚洲欧美欧美一区二区三区| 欧美黄色精品| 极品尤物av久久免费看 | 亚洲欧美电影院| 一区二区三区蜜桃网| 美女视频一区免费观看| 国产日本欧美视频| 亚洲一本大道在线| 亚洲午夜国产成人av电影男同| 老鸭窝亚洲一区二区三区| 国产精品视频免费在线观看| 亚洲久久视频| 亚洲精品亚洲人成人网| 久久综合九色欧美综合狠狠| 国产欧美日韩综合一区在线播放| 99精品福利视频| 99在线精品观看| 欧美成人免费在线观看| 国内久久精品视频| 欧美一区二区在线看| 欧美中文字幕不卡| 国产精品一区二区三区四区五区| 一本久久知道综合久久| 日韩一级精品| 欧美精品一区二区三区在线看午夜| 精品动漫3d一区二区三区免费| 欧美一区在线直播| 久久精品日韩一区二区三区| 国产欧美一区二区白浆黑人| 亚洲影院免费| 性欧美videos另类喷潮| 国产精品人成在线观看免费| 夜夜狂射影院欧美极品| 在线中文字幕日韩| 欧美色图首页| 一区二区三区视频在线播放| 亚洲一区二区在线看| 国产精品高潮视频| 亚洲永久网站| 欧美影院成年免费版| 国产日韩一区| 久久国产精品色婷婷| 久久在线免费观看| 在线欧美日韩精品| 亚洲欧洲一区二区三区在线观看| 免费观看日韩| 亚洲国产精品一区| 一本久道久久久| 国产精品v亚洲精品v日韩精品 | 亚洲午夜小视频| 欧美一区亚洲二区| 国产夜色精品一区二区av| 欧美在线观看视频| 欧美xart系列在线观看| 亚洲日韩中文字幕在线播放| 一区二区三区欧美| 国产精品久久国产精麻豆99网站| 亚洲欧美成人| 久热精品视频| 亚洲欧洲一级| 亚洲欧美日韩在线综合| 国产午夜精品一区理论片飘花| 欧美中文字幕在线播放| 欧美va亚洲va国产综合| 亚洲精选成人| 欧美中文字幕第一页| **网站欧美大片在线观看| 一区二区三区成人精品| 国产伦精品一区二区三区在线观看| 欧美在线视频二区| 欧美黄色视屏| 亚洲私拍自拍| 久久亚洲午夜电影| 亚洲精品视频在线观看网站| 亚洲欧美一区二区在线观看| 国产欧美日韩伦理| 亚洲精品中文字幕在线| 国产精品入口麻豆原神| 亚洲二区免费| 欧美日韩中国免费专区在线看| 亚洲一区免费视频| 免费亚洲电影在线观看| 一片黄亚洲嫩模| 久久综合色播五月| 一道本一区二区| 久久久噜噜噜久久人人看| 亚洲欧洲精品一区二区| 性欧美长视频| 亚洲福利精品| 先锋a资源在线看亚洲| 亚洲第一天堂av| 亚洲欧美日韩精品久久| 亚洲高清网站| 亚洲欧美一区二区三区久久 | 狠狠色综合网| 亚洲视频1区2区| 在线成人亚洲| 午夜激情一区| 亚洲人成久久| 久久久久国产一区二区三区四区 | 一本色道久久综合狠狠躁篇怎么玩 | 久久精品国产久精国产一老狼 | 亚洲视频一区二区| 黄色一区二区在线观看| 亚洲一区三区视频在线观看| 红桃视频亚洲| 欧美一级片一区|