• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > FT245BM與FPGA的USB接口電路設(shè)計(jì)

    FT245BM與FPGA的USB接口電路設(shè)計(jì)

    作者: 時(shí)間:2017-10-28 來源:網(wǎng)絡(luò) 收藏

      總線因其傳輸速度快、占用資源少以及真正的即插即用等諸多優(yōu)點(diǎn),受到了廣大開發(fā)者的青睞,已經(jīng)成為很多計(jì)算機(jī)設(shè)備的一種基本配置。目前被廣泛采用的設(shè)備開發(fā)方案主要有以下兩種(1)利用設(shè)備端接口芯片加微控制器結(jié)構(gòu)。如國內(nèi)用的比較多的Philips公司的PDIUSBD12/ISP1581等。(2)采用USB單片機(jī)。采用這兩種方案要求開發(fā)者徹底理解USB協(xié)議的細(xì)節(jié),并編寫出固件程序。固件的運(yùn)行要占用微控制器的時(shí)間和空間資源,實(shí)際通信效率不會(huì)很高。也有人用實(shí)現(xiàn)固件的功能,但這種方案開發(fā)和調(diào)試的難度很大。本人在實(shí)際工作中用外部直接連接一片USB協(xié)議芯片F(xiàn)T245BM,實(shí)現(xiàn)了與PC機(jī)的USB通信,該方法不用微控制器,減少了元器件的個(gè)數(shù),并且占用FPGA資源很少,F(xiàn)PGA仍然可以實(shí)現(xiàn)其他邏輯功能,系統(tǒng)設(shè)計(jì)的靈活性很大。

    本文引用地址:http://www.czjhyjcfj.com/article/201710/369302.htm

      關(guān)于FT245BM的內(nèi)部結(jié)構(gòu)及詳細(xì)地引腳介紹讀者可以參考其他相關(guān)資料,在此僅對(duì)與本設(shè)計(jì)相關(guān)的內(nèi)容作一個(gè)介紹。FT245BM內(nèi)含兩個(gè)FIFO數(shù)據(jù)緩沖區(qū),一個(gè)是128字節(jié)的接收緩沖區(qū),另一個(gè)是384字節(jié)的發(fā)送緩沖區(qū)。它們用作USB 數(shù)據(jù)與并行I/O口數(shù)據(jù)的交換緩沖區(qū)。FIFO實(shí)現(xiàn)與外界(微控制器、FPGA或其它器件)的接口,主要通過8根數(shù)據(jù)線D0~D7、讀寫控制線RD#和 WR#以及FIFO發(fā)送緩沖區(qū)空標(biāo)志TXE#和FIFO接收緩沖區(qū)非空標(biāo)志RXF來完成數(shù)據(jù)交互。TXE#為低表示當(dāng)前FIFO發(fā)送緩沖區(qū)為空,為高表示當(dāng)前FIFO發(fā)送緩沖區(qū)滿或者正在存儲(chǔ)前一個(gè)字節(jié),禁止向緩沖區(qū)中寫數(shù)據(jù)。RXF#為低表示當(dāng)前FIFO的接收緩沖區(qū)非空。RD#信號(hào)由低變高將從 FIFO緩沖區(qū)中讀取數(shù)據(jù)。當(dāng)RD#變低時(shí)將數(shù)據(jù)送到數(shù)據(jù)總線。RXF#為高不能從FIFO讀數(shù)據(jù)。讀寫時(shí)序見圖1和圖2。

      

      圖2 寫數(shù)據(jù)時(shí)序

      FT245BM與FPGA的設(shè)計(jì)

      硬件電路設(shè)計(jì)

      圖3是FT245BM的USB與FPGA的,F(xiàn)PGA選用ALTERA EPF1K50TC-144,其中D0~D7是FT245BM與FPGA交換數(shù)據(jù)的數(shù)據(jù)總線,USB_RD#、USB_WR、USB_TXE#、USB_RXF#是相關(guān)的控制總線。

      

      圖3 FT245BM與FPGA的



    關(guān)鍵詞: FPGA USB 接口電路

    評(píng)論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 海口市| 封开县| 乐山市| 南开区| 观塘区| 临海市| 齐河县| 肥西县| 靖州| 通江县| 镶黄旗| 剑川县| 吉木乃县| 女性| 龙门县| 阳西县| 高阳县| 大田县| 集安市| 远安县| 西安市| 忻州市| 平原县| 大安市| 延边| 金溪县| 资溪县| 南陵县| 利津县| 正镶白旗| 商洛市| 汝南县| 黄大仙区| 蒲江县| 芦山县| 闽清县| 洛川县| 大名县| 怀远县| 信阳市| 双鸭山市|