新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于CPLD/FPGA的USB讀寫(xiě)控制器

基于CPLD/FPGA的USB讀寫(xiě)控制器

作者: 時(shí)間:2011-06-27 來(lái)源:網(wǎng)絡(luò) 收藏


2 中的控制電路
中的控制電路包括時(shí)鐘提取、包識(shí)別、不歸零解碼、狀態(tài)控制、CBW包識(shí)別和數(shù)據(jù)流控制等模塊,如圖3所示。時(shí)鐘提取部分見(jiàn)參考文獻(xiàn),包識(shí)別和不歸零解碼部分見(jiàn)參考文獻(xiàn)。下面詳細(xì)介紹狀態(tài)控制、CBW包識(shí)別和數(shù)據(jù)流控制3個(gè)模塊。

本文引用地址:http://butianyuan.cn/article/191139.htm

e.jpg


2.1 狀態(tài)控制模塊
因?yàn)镮JSB總線(xiàn)是半雙工的,所以要控制總線(xiàn)數(shù)據(jù)的方向,即通過(guò)OE信號(hào)來(lái)控制T1106是接收總線(xiàn)數(shù)據(jù)還是驅(qū)動(dòng)總線(xiàn)。總線(xiàn)上所有的傳輸事務(wù)都始于令牌包。令牌包由主機(jī)發(fā)送,指明本次事務(wù)處理過(guò)程的含義,包括數(shù)據(jù)的傳輸方向、設(shè)備的地址及端點(diǎn)號(hào)等信息。
在本模塊中,通過(guò)對(duì)PID的檢測(cè)可得到每個(gè)包的種類(lèi),控制狀態(tài)機(jī)在初始狀態(tài)、主機(jī)發(fā)送數(shù)據(jù)、設(shè)備發(fā)送數(shù)據(jù)、主機(jī)發(fā)送握手包和設(shè)備發(fā)送握手包等幾個(gè)狀態(tài)間跳轉(zhuǎn),從而控制其他模塊的狀態(tài)。下面為狀態(tài)機(jī)的部分代碼:
f.jpg



關(guān)鍵詞: CPLD FPGA USB 讀寫(xiě)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉