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

          新聞中心

          串行總線的選擇原則

          作者: 時間:2016-12-13 來源:網(wǎng)絡(luò) 收藏
            微控制器(µC)是當(dāng)今各種先進(jìn)電子產(chǎn)品的核心,它需要與一個或多個外設(shè)器件通信。以前,µC的外設(shè)是以存儲器映射方式與數(shù)據(jù)和地址總線連接的。對地址線譯碼以獲得片選信號,從而在有限的地址范圍內(nèi)為每個外設(shè)分配唯一的地址。這種接口類型所需的最少引腳數(shù)(除電源和地之外)為:8 (數(shù)據(jù)) + 1 (R//W) + 1 (/CS) + n條地址線[n = log2(內(nèi)部寄存器或存儲器字節(jié)的數(shù)目)]。例如,與一個16字節(jié)外設(shè)通信時,需要的引腳數(shù)為:8 +1 + 1 + 4 = 14。這種接口的訪問速度快,但較多的引腳數(shù)也同時帶來了封裝尺寸增大和總成本提高的問題。要降低成本和縮小封裝尺寸,串行接口顯然是理想的替代方案。

            選擇串行總線并非易事。除需要考慮數(shù)據(jù)速率、數(shù)據(jù)位傳輸順序(先傳最高位或最低位)和電壓外,設(shè)計(jì)者還應(yīng)該考慮以下幾點(diǎn):

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

            通過何種方式選擇某個外設(shè)(通過硬件片選輸入或軟件協(xié)議)。 外設(shè)如何與µC保持同步(借助一條硬件時鐘線,或借助內(nèi)嵌于數(shù)據(jù)流中的時鐘信息)。 數(shù)據(jù)是在單根線上傳輸(在“高”和“低”之間轉(zhuǎn)換),還是在一對差分線上傳輸(兩根線按相反的方向同時轉(zhuǎn)換其電壓)。 通信線路的兩端均使用匹配電阻實(shí)現(xiàn)阻抗匹配(通常用于差分信號傳輸),還是不匹配或僅在一端匹配(通常用于單端總線)。

            表1以矩陣的形式展示了各種通用總線系統(tǒng)之間的差異。16種可能組合中只有4種通用類型為大家所熟知。

            除這些特性外,具體應(yīng)用還會提出更多要求,如供電方式、隔離、噪聲抑制、µC (主機(jī))與外設(shè)(從機(jī))間的最大傳輸距離、以及電纜連接方式(總線型、星型、可承受線路反接等)。提出類似要求的應(yīng)用包括樓宇自動化、工業(yè)控制和抄表等,并且都已制定了相應(yīng)的標(biāo)準(zhǔn)。1, 2

            表1. 串行總線系統(tǒng)概括

            



            電路板到背板的應(yīng)用需求

            提供外設(shè)功能的串行總線系統(tǒng)不應(yīng)該給應(yīng)用系統(tǒng)增加任何沉重的負(fù)荷。尤其需要注意以下幾點(diǎn):

            互連布線一定要簡單(信號線越少越好)。 必須能夠輕松地通過軟件實(shí)現(xiàn)協(xié)議(或所選的µC/µP本身提供這種接口)。 需要提供功能廣泛的器件。 總線系統(tǒng)必須易于擴(kuò)展。

            使用軟件協(xié)議完成尋址的單端、自同步系統(tǒng)需要的信號線最少。從表1可以看出,1-Wire、LIN總線和SensorPath能夠滿足這些條件。在這類總線系統(tǒng)中,還需要考慮其它因素(見表2)。

            表2. 1-Wire、LIN總線和SensorPath總線系統(tǒng)的性能差異

            物理網(wǎng)絡(luò)尺寸

            只有SensorPath局限于電路板尺寸的應(yīng)用。一定條件下,使用恰當(dāng)?shù)挠布蛙浖W(wǎng)絡(luò)驅(qū)動器,可以極大地?cái)U(kuò)展1-Wire總線網(wǎng)絡(luò)的距離。

            網(wǎng)絡(luò)驅(qū)動器

            對于基于協(xié)議的網(wǎng)絡(luò),設(shè)計(jì)者需要軟件驅(qū)動程序來產(chǎn)生通信波形(鏈路層),識別并尋址網(wǎng)絡(luò)(網(wǎng)絡(luò)層)的單個從器件/節(jié)點(diǎn),并發(fā)送/接收數(shù)據(jù)(傳輸層)。軟件驅(qū)動程序與特定操作系統(tǒng)和通信端口有關(guān)??商峁┗诟黝惗丝诘?-Wire硬件驅(qū)動芯片(主機(jī))以及適配器,端口類型包括COM、LPT、USB和I²C。在未作匹配的大型網(wǎng)絡(luò)中,電纜末端、連接器和分支的反射會限制網(wǎng)絡(luò)的傳輸性能。

            電源

            必須為網(wǎng)絡(luò)中的每個從器件供電,以實(shí)現(xiàn)正常工作。最具成本效益的方法是通過數(shù)據(jù)線遠(yuǎn)程供電。該方法也稱為“寄生供電”,這使得讀取系統(tǒng)診斷信息(比如在掉電模式下)成為可能。具體范例請參考應(yīng)用筆記178中的圖3和相關(guān)內(nèi)容:"利用1-Wire產(chǎn)品標(biāo)識印刷電路板"10。當(dāng)然由于必須為供電留出時間,寄生供電也降低了可用的數(shù)據(jù)速率。

            數(shù)據(jù)速率

            通常來說,數(shù)據(jù)速率越高,網(wǎng)絡(luò)傳輸距離越短,反之亦然。1-Wire系統(tǒng)具有電源傳輸功能,因此最大數(shù)據(jù)傳輸速率取決于網(wǎng)絡(luò)的從器件數(shù)目以及電纜總長度(電容)。

            網(wǎng)絡(luò)節(jié)點(diǎn)查找功能

            該特性允許主機(jī)識別網(wǎng)絡(luò)中從器件的數(shù)目、類型和地址。這一點(diǎn)對于節(jié)點(diǎn)數(shù)動態(tài)(變化)的網(wǎng)絡(luò)來說必不可少。請參考Dallas工程期刊(第2期)11第22頁中的示例。

            器件功能選擇

            范圍如果不能提供應(yīng)用所需要的功能,即使再出色的總線也毫無用處。與LIN總線和SensorPath相比,1-Wire系統(tǒng)目前可以提供最豐富的功能。

            I²C/SMBus與1-Wire總線

            如果實(shí)際應(yīng)用可以提供時鐘線,則總線選擇范圍可擴(kuò)展到I²C12和SMBus13器件。根據(jù)SMBus的規(guī)范,它可以看作是100kbps I²C總線規(guī)范增加了超時特性后的派生總線類型。在某個節(jié)點(diǎn)與總線主機(jī)失去同步的情況下,超時特性可避免總線發(fā)生閉鎖,而I²C系統(tǒng)則需要經(jīng)過一次上電復(fù)位過程,才能從這種故障狀態(tài)恢復(fù)至正常工作狀態(tài)。在1-Wire系統(tǒng)中,復(fù)位/在線檢測周期可將通信接口復(fù)位至確定的啟動條件下。

            除了時鐘線外,I²C/SMBus還為總線上傳輸?shù)拿總€字節(jié)提供一個應(yīng)答位。這使得有效數(shù)據(jù)速率降低了12%。通信過程開始于一個啟動條件,并跟隨從器件地址和一個數(shù)據(jù)方向位(讀/寫),最后結(jié)束于一個停止條件。對于1-Wire系統(tǒng),首先需要滿足網(wǎng)絡(luò)層的要求(即選擇某個特定器件,執(zhí)行search ROM命令或者廣播);接下來發(fā)送與特定器件相關(guān)的命令代碼,該代碼同時會影響數(shù)據(jù)的傳輸方向(讀/寫)。

            原有I²C和SMBus總線系統(tǒng)的一個突出問題是其有限的7位地址空間。由于可提供超過127種不同器件類型,我們無法根據(jù)從器件地址推斷器件功能。此外,許多I²C器件還允許用戶隨意設(shè)置1個或多個地址位,以在總線上掛接多個相同器件。這種特性進(jìn)一步減少了可用的地址空間。解決地址沖突問題的標(biāo)準(zhǔn)做法是將總線系統(tǒng)劃分成若干段,某一時刻可在軟件控制下激活某個網(wǎng)絡(luò)段。該網(wǎng)絡(luò)段需要增加更多硬件,也使應(yīng)用固件更為復(fù)雜。I²C系統(tǒng)不具備網(wǎng)絡(luò)節(jié)點(diǎn)查找或枚舉功能,因此很難處理節(jié)點(diǎn)數(shù)動態(tài)變化的系統(tǒng)。這一問題可借助SMBus Specification Version 2.013中的地址分辨率協(xié)議得以解決。但是,支持該特性的SMBus器件極為稀少。

            SPI和MICROWIRE接口

            SPI14和MICROWIRE15 (SPI的子集)均需要為每個從器件提供一條額外的片選線。由于具有片選信號,SPI協(xié)議只定義了針對存儲器地址和狀態(tài)寄存器的讀/寫命令。它不提供應(yīng)答功能。通常,SPI器件的數(shù)據(jù)輸入和數(shù)據(jù)輸出采用不同的引腳。鑒于數(shù)據(jù)輸出在除了讀操作外的任何情況下均為三態(tài)(禁止),因此可將兩個數(shù)據(jù)引腳接到一起以構(gòu)成單根雙向數(shù)據(jù)線。當(dāng)其它總線系統(tǒng)無法提供所需的功能或需要較高的數(shù)據(jù)傳輸速率時,可選用SPI總線,它可以支持2Mbps或更高的速率。SPI和MICROWIRE的不利因素在于產(chǎn)生CS信號的譯碼邏輯,以尋址某個特定器件。但是不會產(chǎn)生地址沖突問題。和I²C總線一樣,不提供節(jié)點(diǎn)查找功能。主機(jī)無法根據(jù)從器件的邏輯地址來推斷器件功能,因此很難管理節(jié)點(diǎn)動態(tài)變化的網(wǎng)絡(luò)。

            RS-485、LVDS、CAN、USB 2.0和FireWire

            我們對這些標(biāo)準(zhǔn)進(jìn)行討論,以舉例說明差分傳輸?shù)奶攸c(diǎn)。這類總線系統(tǒng)中傳輸速率最快的兩種是FireWire16和USB 2.017,它們采用點(diǎn)對點(diǎn)電氣連接。使用先進(jìn)的節(jié)點(diǎn)或集線器,可以構(gòu)成樹狀拓?fù)?/strong>的虛擬總線,數(shù)據(jù)包從源發(fā)送至端點(diǎn)(USB),或采用對等傳輸(FireWire),突發(fā)數(shù)據(jù)速率高達(dá)480Mbps (USB 2.0)或1600Mbps (FireWire)。尺寸有限的數(shù)據(jù)包以及接收/緩沖/重發(fā)通信機(jī)制增加了傳輸時間,反過來降低了有效的數(shù)據(jù)吞吐能力。USB的拓?fù)浜蛥f(xié)議允許最多連接126個節(jié)點(diǎn),F(xiàn)ireWire允許最多63個節(jié)點(diǎn),使用無源電纜時節(jié)點(diǎn)間的最大傳輸距離為4.5m。專為包括PC外設(shè)、多媒體、工業(yè)控制和航空(僅FireWire)應(yīng)用而設(shè)計(jì),USB和FireWire器件可以帶電插入系統(tǒng)(熱插拔)。該特性允許網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)動態(tài)變化。

            LVDS18、RS-48519和CAN20可實(shí)現(xiàn)掛接主機(jī)和從機(jī)的總線型結(jié)構(gòu),甚至可以連接多個主機(jī)。這些標(biāo)準(zhǔn)中低壓差分信號(LVDS)是速率最快的,如果總線長度不超過10m,可工作在100Mbps速率下??捎玫臄?shù)據(jù)速率及吞吐可以更快或更慢,具體取決于網(wǎng)絡(luò)尺寸。LVDS電氣標(biāo)準(zhǔn)專為背板應(yīng)用而設(shè)計(jì),支持熱插拔功能,但不包含任何協(xié)議。

            RS-485也僅定義了電氣參數(shù)。RS-485定義了負(fù)載和每條總線的最大負(fù)載數(shù)目(32),而不是以節(jié)點(diǎn)的形式給出。一個電氣節(jié)點(diǎn)的負(fù)載可以小于1。12m網(wǎng)絡(luò)距離下的典型數(shù)據(jù)速率可高達(dá)35Mbps,1200m距離下數(shù)據(jù)速率可達(dá)100kbps,這些特性足以滿足數(shù)據(jù)采集和控制應(yīng)用。RS-485設(shè)備的協(xié)議通常基于原來設(shè)計(jì)用于RS-232的部分協(xié)議。

            與此不同,控制器局域網(wǎng)(CAN)為分布式實(shí)時控制定義了通信協(xié)議,安全性非常高,專門面向汽車應(yīng)用和工業(yè)自動化領(lǐng)域。數(shù)據(jù)速率從40m距離下的1Mbps到1000m距離下的50kbps。尋址方式是基于消息的,協(xié)議本身對節(jié)點(diǎn)數(shù)沒有任何限制。CAN節(jié)點(diǎn)支持熱插拔,網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)可以動態(tài)變化。

            結(jié)語

            在簡單、低成本總線系統(tǒng)中,與LIN總線和SensorPath相比,1-Wire系統(tǒng)的從器件可提供最廣泛的功能和網(wǎng)絡(luò)驅(qū)動器。I²C和SMBus除了需要數(shù)據(jù)線和參考地之外,還需要時鐘線和VCC電源,當(dāng)然可供選擇的器件功能也非常多。SPI和MICROWIRE需要額外的片選線,但可以提供更高的數(shù)據(jù)速率。除支持寄生供電和網(wǎng)絡(luò)節(jié)點(diǎn)查找功能外,1-Wire接口和協(xié)議還支持熱插拔,這一特性通常僅在使用差分信號的高速系統(tǒng)以及SMBus 2.0兼容產(chǎn)品中才提供。iButton®產(chǎn)品是使用極為廣泛的熱插拔1-Wire器件,熱插拔是這類器件的正常工作方式。事實(shí)已經(jīng)證明,1-Wire器件在下列應(yīng)用中極為有效:全球識別號21、電路板/配件標(biāo)識與認(rèn)證10、溫度檢測和執(zhí)行裝置等。另外一種非常成功的1-Wire產(chǎn)品是具有安全存儲器和質(zhì)詢-響應(yīng)機(jī)制的器件,它能以最低的成本實(shí)現(xiàn)雙向認(rèn)證和軟件代碼保護(hù)22, 23。



          關(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); })();