關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 信號速率與線纜長度的關系:CAN 總線計時權衡因素

        信號速率與線纜長度的關系:CAN 總線計時權衡因素

        作者: 時間:2010-02-09 來源:網絡 收藏

        注意,只通過等到兩倍單向延遲(或者相當于總雙向傳輸時間)節點A才能判別這種情況,其中節點 A 和 B 的消息具有相同的優先級(情況 3),以及節點 B 的消息擁有更高的優先級。由于 協議固有的逐位仲裁機制,這種雙向延遲必須較好地位于一個位時間預算范圍內,也即 1000ns。否則,在第二個位仲裁完成以前,節點 A 就可能開始傳送其第三個位。

        傳輸限制
        我們知道雙向延遲至關重要, 定義可編程傳輸延遲 (PROP_SEG) 為每個位的組成部分,以保證每個節點在對數據采樣以前都確實等待足夠長的時間。PROP_SEG 的計算涉及雙向延遲和本地系統時鐘頻率相關知識,其超出了本文的討論范圍。實際上,PROP_SEG 將采樣點規定在約總位時間的 5/6 或者更低以照顧其他段,這樣雙向延遲便被規定為位時間的一小段。

        標準規定,為 5ns 每米傳輸延遲,1Mbps 時最大為 40 米。位時間為 1000ns 時,最遲采樣點(由PROP_SEG設定)約為 850ns。線纜本身具有 200ns 的單向延遲(即 400ns 雙向延遲),從而使收發器和相關電路的總延遲只剩約 450ns。

        CAN 收發器的制造商通常規定“環路延遲”,其包括驅動器和接收機延遲。由于雙向計算中涉及兩個收發器,因此每個收發器都應有 225ns 或者更低的環路延遲,以支持 1Mbps 下 40 米的。如果收發器電路包括更多的組件,例如:隔離、電壓電平轉換或保護組件,則這些組件產生的延遲必須也包括在總延遲預算中。甚至,高速光耦合器一般具有 40ns 或更長的單向延遲,而全部雙向信號都必須通過四個光耦合器。這就極大地縮短了使用光隔離 CAN 系統的容許線纜長度(即增加了位時間)。1Mbps 條件下,即使快速光耦合器的延遲也會縮短容許線纜長度,計算方法如方程式 1:

        下面顯示了信號速率和線纜長度之間的,以及收發器延遲帶來的影響。收發器帶來的延遲(包括相關隔離、電平轉換和保護)對于 500 kbps 及以上的信號速率特別明顯。

        圖 4 收發器延遲影響信號速率和線纜長度的(點擊圖片放大)
        在單個封裝(ISO1050)中的高速 CAN 收發器集成 SiO2 隔離現已上市。利用低于 210ns 的極限總環路延遲(包括驅動器、接收機和兩個隔離信道!),您可以減少雙向環路延遲,并簡化您隔離式 CAN 解決方案的系統和設計。您還可以執行一個電平轉換功能,將一個 3.3V 控制器的電壓轉換至 5V CAN 收發器,無需更多的延遲。

        當然,在進行信號速率和線纜長度相關性能優化設還存在其他一些問題。網絡的傳輸線路效應表明,負載、節點到節點間隔和短截線長度對系統的信號保真度和抗干擾性都很重要。本文結尾列舉了較好的參考文獻。

        實驗室數據例子
        為了說明這些概念,可建立一個帶有兩個隔離 CAN 節點和 50 米線纜的實驗室裝置。我們預計單向線纜延遲為 250ns,隔離收發器環路延遲約為 150ns,即 ISO1050 標準的典型值。因此,節點 A 的采樣點應約為比特開始以后的 800ns,如圖 5 所示。


        圖 5 50 米線纜的 1 Mbps CAN 信號速率(點擊圖片放大)

        就 1Mbps 信號速率而言,在該比特結束以前,采樣點留有足夠的裕量,其表明使用快速收發器,40 米以上的線纜長度是可行的。
        總結

        廣大設計人員正在各種應用中使用 CAN 通信,他們需要了解限制和線纜長度方法。信號鏈中每個組件都會影響總計時預算,同時必須考慮雙向延遲以確保可靠的通信。使用如 ISO1050 等快速收發器可保證 CAN 信號按時完成雙向傳輸,只有比 Pecos Bill 更快才能游過墨西哥灣。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 台北县| 临清市| 左贡县| 台山市| 丹东市| 墨脱县| 嘉禾县| 花莲县| 开鲁县| 揭阳市| 江油市| 平塘县| 岗巴县| 平昌县| 子洲县| 会宁县| 峨边| 东丽区| 甘洛县| 莱州市| 贵州省| 郎溪县| 嵊泗县| 吉木乃县| 双柏县| 平湖市| 弥勒县| 漯河市| 拜城县| 曲阜市| 建水县| 宣武区| 江源县| 武汉市| 防城港市| 台北县| 临西县| 巴林右旗| 泰兴市| 乐安县| 郴州市|