<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 簡(jiǎn)易USB與LVDS接口轉(zhuǎn)換器

          簡(jiǎn)易USB與LVDS接口轉(zhuǎn)換器

          ——
          作者: 時(shí)間:2010-01-25 來源:電子產(chǎn)品世界 收藏

            1 引言

          本文引用地址:http://www.ex-cimer.com/article/103929.htm

            通用串行總線(Universal Serial Bus)接口以其通信速率快,2.0協(xié)議速率達(dá)480 Mb/s,支持熱插拔的特點(diǎn)得到廣泛應(yīng)用,緩解日益增加的PC外設(shè)與有限的主板插槽和端口之間的矛盾;而低壓差分信號(hào)(Low-Voltage Differential Signaling)接口作為一種新型的高速串行。低噪聲的數(shù)據(jù)傳輸接口,廣泛應(yīng)用于視頻傳輸領(lǐng)域,實(shí)現(xiàn)接口轉(zhuǎn)換,使在只有USB接的情況下便可實(shí)現(xiàn)雙視頻顯示的連接,進(jìn)一步擴(kuò)展兩種接口的使用范圍,從而在一定程度上解決主板插槽與端口日益匱乏的問題。

            2 系統(tǒng)概述

            該系統(tǒng)設(shè)計(jì)主要由穩(wěn)壓電路,USB接口,基于FPGA的協(xié)議數(shù)據(jù)轉(zhuǎn)換以及接口等部分組成,其系統(tǒng)設(shè)計(jì)框圖如圖1所示。該系統(tǒng)設(shè)計(jì)的USB接口使用高速USB物理層收發(fā)器USB3300將USB協(xié)議的差分信號(hào)轉(zhuǎn)換成8位的并行信號(hào)后,再與FPGA交互數(shù)據(jù),從而避免FPGA直接與USB協(xié)議的物理層交互數(shù)據(jù),簡(jiǎn)化FPGA可編程門陣列編程。基于同樣思想,系統(tǒng)LVDS接口部分采用SN65LV1023與SN62LV1224,將低壓差分信號(hào)轉(zhuǎn)換成 10位的并行信號(hào)再與FPGA進(jìn)行數(shù)據(jù)交互。通過專用轉(zhuǎn)換器USB3300,SN65LV1023,SN65LV1224使得FPGA只與并行信號(hào)和相應(yīng)的控制信號(hào)連接,而不與USB協(xié)議和LVDS協(xié)議的復(fù)雜物理層信號(hào)交互,從而較為簡(jiǎn)單地實(shí)現(xiàn)協(xié)議數(shù)據(jù)轉(zhuǎn)換的軟件編程。

            

           

            系統(tǒng)設(shè)計(jì)使用兩片USB3300,其中USB3300 A與主機(jī)PC的USB接口相連,將主機(jī)傳輸?shù)腢SB協(xié)議數(shù)據(jù)轉(zhuǎn)換后,通過與FPGA的數(shù)據(jù)交互以及FPGA的協(xié)議數(shù)據(jù)轉(zhuǎn)換,轉(zhuǎn)換成10位并行信號(hào),輸出給 SN65LV1023,最后以LVDS協(xié)議的低壓差分信號(hào)輸出,實(shí)現(xiàn)USB接口到LVDS接口的轉(zhuǎn)換。而SN65LV1224與主機(jī)的LVDS接口連接,將LVDS協(xié)議的數(shù)據(jù)轉(zhuǎn)換成10位并行輸入FPGA進(jìn)行協(xié)議數(shù)據(jù)轉(zhuǎn)換后,再將8位并行數(shù)據(jù)與USB3300_B進(jìn)行數(shù)據(jù)交互,最后以USB協(xié)議的差分信號(hào)輸出,從而實(shí)現(xiàn)LVDS接口到USB接口的轉(zhuǎn)換。

            3 系統(tǒng)硬件設(shè)計(jì)

            3.1 穩(wěn)壓電路

            該系統(tǒng)設(shè)計(jì)需要提供5 V和3.3 V的穩(wěn)定電壓信號(hào)。于是穩(wěn)壓電路部分使用TPS76815向系統(tǒng)提供5 V的電壓信號(hào),TPS76815電路連接如圖2所示,使能麗引腳接地,為除去毛刺則在OUT端接4.7μF和0.01μF的電容濾波,使用 TPS76833提供3.3 V電壓信號(hào)。TPS76833連接電路與TP$76815類似。

            

           

            3.2 USB接口電路

            因?yàn)閁SB協(xié)議的物理層定義過于復(fù)雜,采用FPGA現(xiàn)場(chǎng)可編程邏輯門陣列與USB協(xié)議物理層交互難度太大,同時(shí)也很難滿足數(shù)據(jù)收發(fā)時(shí)序同步要求。所以應(yīng)在與FPGA數(shù)據(jù)交互前進(jìn)行必要的數(shù)據(jù)轉(zhuǎn)換。因此,考慮使用USB控制器。而一般的 USB控制器只支持USB1.1協(xié)議,并不滿足高速傳輸要求.而轉(zhuǎn)換后的數(shù)據(jù)也較復(fù)雜。不利于協(xié)議數(shù)據(jù)轉(zhuǎn)換部分的編程。本系統(tǒng)應(yīng)用SMSC公司開發(fā)的高速 USB物理層收發(fā)器USB3300。USB3300使用低引腳計(jì)數(shù)接口(ULPI)連接ULPI兼容鏈路層。ULPI接口在鏈路層和PHY之間采用傳輸頻帶內(nèi)信號(hào)和狀態(tài)字節(jié)的方法,將引腳數(shù)從UTMI+接口的54降低到12。這樣大大降低USB協(xié)議物理層與FPGA數(shù)據(jù)交互的難度,易于軟件編程。 USB3300連接電路如圖3所示,為控制數(shù)據(jù)傳輸?shù)臅r(shí)序同步,采用USB3300的時(shí)鐘輸出工作方式。USB3300外接24 MHz的時(shí)鐘晶體振蕩器,經(jīng)內(nèi)部鎖相環(huán)電路轉(zhuǎn)換為60 MHz信號(hào),通過CLK輸入FPGA作為其時(shí)鐘信號(hào),從而實(shí)現(xiàn)FPGA與USB3300的時(shí)鐘同步。USB接口部分與FPGA的數(shù)據(jù)交互傳輸通過雙向的8 位數(shù)據(jù)信號(hào)實(shí)現(xiàn),USB3300通過DIR與NXT信號(hào)輸出控制數(shù)據(jù)信號(hào)的傳輸方向,而FPGA通過STP信號(hào)控制數(shù)據(jù)的傳輸方向USB3300的狀態(tài)。這樣便實(shí)現(xiàn)FPGA與USB3300的數(shù)據(jù)交互。

            

           

            3.3 協(xié)議數(shù)據(jù)轉(zhuǎn)換部分

            系統(tǒng)協(xié)議數(shù)據(jù)轉(zhuǎn)換部分中采用現(xiàn)場(chǎng)可編程邏輯門陣列器件EP1C6U240C8進(jìn)行編程,主要實(shí)現(xiàn)的功能是將與USB3300交互的數(shù)據(jù)轉(zhuǎn)換成10位并行數(shù)據(jù)與SN65LV1023和SN65LV1224交互,同時(shí)通過STP信號(hào)控制 USB3300的數(shù)據(jù)傳輸方向和USB3300的狀態(tài)。由于USB協(xié)議本身有低功耗模式,在低功耗模式時(shí)鎖相環(huán)關(guān)閉,在硬件設(shè)計(jì)時(shí)一定要接RESET控制鍵,這樣便于軟件編程的調(diào)試。

            3.4 LVDS接口電路

            低壓差分信號(hào)LVDS(Low Voltage Differential Signaling)接口是一種高速數(shù)據(jù)傳輸?shù)奈锢韺咏涌?,其電壓信?hào)擺幅低,技術(shù)上能做到且產(chǎn)生極低噪聲,功耗也極低,主要用于服務(wù)器、可堆壘集線器、無線基站、3FG交換機(jī)及高分辨率顯示等。與USB協(xié)議接口類似其物理層信號(hào)直接與FPGA進(jìn)行交互相當(dāng)復(fù)雜,系統(tǒng)選用SN65LV1224和 SNLV1023,將FPGA與LVDS接口物理層數(shù)據(jù)交互,轉(zhuǎn)換為10位的并行信號(hào),同時(shí)通過相關(guān)的控制信號(hào)控制數(shù)據(jù)的傳輸方向。SN65LV1023 與SN65LV1224的硬件連接電路分別如圖4和圖5所示,其中SN65LV1023實(shí)現(xiàn)10位并行數(shù)據(jù)轉(zhuǎn)換成LVDS的低壓差分信號(hào),同時(shí)FPGA通過TCLK_R/F控制內(nèi)部鎖相環(huán),進(jìn)而控制SN65LV1023狀態(tài)。而SN65LV1224則將LVDS的低壓差分信號(hào)轉(zhuǎn)換成10位并行數(shù)據(jù)信號(hào)輸入 FPGA,這樣通過SN65LV1023與SN65LV1224,便在較為簡(jiǎn)單的情況下實(shí)現(xiàn)FPGA與LVDS接口的數(shù)據(jù)交互。

            

           

            4 系統(tǒng)軟件設(shè)計(jì)

            利用可編程邏輯門陣列FPGA轉(zhuǎn)換協(xié)議數(shù)據(jù),由于系統(tǒng)使用USB3300可將USB協(xié)議物理層信號(hào)轉(zhuǎn)換成8位并行信號(hào),而使用SN65LV 1023與SN65LV1224則將低壓差分信號(hào)LVDS轉(zhuǎn)換成10位并行信號(hào),這樣大大簡(jiǎn)化FPGA的編程。 FPGA編程只需通過控制引腳,控制兩個(gè)并行信號(hào)的輸入輸出即可,同時(shí)可將數(shù)據(jù)的讀寫操作模塊化,從而進(jìn)一步簡(jiǎn)化系統(tǒng)編程。

            系統(tǒng)軟件設(shè)計(jì)流程如同6所示。由于遵循USB協(xié)議,在一段時(shí)間不進(jìn)行任何操作時(shí)則進(jìn)入低功耗模式。而USB3300也擁有這一特性。在一定時(shí)間系統(tǒng)不進(jìn)行任何的讀寫操作,USB3300將進(jìn)入低功耗模式,此時(shí)USB3300會(huì)自動(dòng)關(guān)閉鎖相環(huán)時(shí)鐘輸出。

            

           

            所以在系統(tǒng)啟動(dòng)后,首先判斷USB3300的狀態(tài),如果在低功耗模式下,則控制STP信號(hào)開啟內(nèi)部時(shí)鐘,進(jìn)入到同步模式。

            設(shè)備連接成功后,隨時(shí)判斷是否應(yīng)該進(jìn)行讀寫操作,若需要,則進(jìn)入讀寫操作模塊,實(shí)現(xiàn)讀寫操作后又開始判斷讀寫。等待一段時(shí)間不執(zhí)行讀寫操作后,USB3300則進(jìn)入低功耗模式,關(guān)閉鎖相環(huán),等待下次讀寫操作時(shí)再重新啟動(dòng)內(nèi)部時(shí)鐘。

            

           

            5 結(jié)論

            采用專用轉(zhuǎn)換器USB3300,SN65LV1023,SN65LV1224分別將USB協(xié)議物理層的差分信號(hào)和LVDS的低壓差分信號(hào)轉(zhuǎn)換成并行信號(hào),并通過FPGA編程實(shí)現(xiàn)協(xié)議編程的轉(zhuǎn)換。該系統(tǒng)設(shè)計(jì)較為簡(jiǎn)單,并且系統(tǒng)拓展較簡(jiǎn)單,可易于實(shí)現(xiàn)USB接口、LVDS接口對(duì)多種接口的轉(zhuǎn)換。

            由于串口通信協(xié)議的物理層信號(hào)較為復(fù)雜,F(xiàn)PGA直接與其物理層信號(hào)進(jìn)行數(shù)據(jù)交互比較難以實(shí)現(xiàn),難以做到時(shí)序同步,而采用專用的轉(zhuǎn)換器將串行信號(hào)轉(zhuǎn)換成并行數(shù)據(jù)信號(hào),則大大簡(jiǎn)化邏輯門陣列編程。該系統(tǒng)合理使用USB3300和SN65LV1023與SN65LV1224接口器件使得邏輯門陣列的編程易于實(shí)現(xiàn),也可使用其他的專用轉(zhuǎn)換器,實(shí)現(xiàn)不同接口的轉(zhuǎn)換。



          關(guān)鍵詞: USB LVDS

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();