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

    EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA和MCU的CAN-VME總線轉換設計

    基于FPGA和MCU的CAN-VME總線轉換設計

    作者: 時間:2012-02-08 來源:網絡 收藏

    摘要:為了擴展VME和CAN的應用范圍,充分利用兩種的不同傳輸特點,采用了模塊設計方法,提出一種基于的總線轉換方案。該方案給出了與上位VME總線部分的VME總線接口設計,利用控制CPLD擴展的多通道CAN節點完成CAN總線部分的設計,還給出軟件實現上的重點、難點和流程。實現了兩種不同總線的轉換,滿足了工業環境對兩種總線混合使用的要求。
    關鍵詞:;VME總線;CAN總線;工業環境

    CAN(Controller Area Network控制器局域網)以其高性能、高可靠性以及獨特的設計等優點,為分布式控制系統實現各節點之間實時、可靠的數據通信提供了強有力的支持。CAN總線突出的可靠性、實時性和靈活性顯示了它突出的優勢,成為公認的最有前途的總線標準,廣泛地應用于工業自動化、船舶、醫療設備、工業設備等方面。VME(Versa Module Eurocard)是一種通用的計算機總線,結合了Motorola公司Versa總線的電氣標準和在歐洲建立的Eurocard標準的機械形狀因子,是一種開放式架構。其獨特的緊密耦合(Closely coupled)硬件構架,為其外圍系統模塊的設計提供了良好的基礎,使VME總線廣泛地應用于工業控制、軍用系統、航空航天、交通運輸和醫療領域。
    本文提出了基于FPGA的VME總線和CAN總線之間的傳輸轉換方案,滿足一些特殊工業環境的需要,具有一定的研究意義和實用價值。

    1 轉換系統的硬件設計
    該系統由VME總線接口模塊、CAN總線節點(8路CAN節點)模塊、復雜可編程邏輯器模塊、MCU模塊4部分核心模塊構成。整個系統在一個3U標準的VME板卡上實現,機構緊湊,布局合理。系統的原理框圖如圖1所示。

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

    a.jpg


    1.1 VME總線接口模塊
    整個系統實現是兩種通信之間的轉換,所以數據的發送都是由上位主機發送的。由于FPGA控制靈活,所以很方便實現與VME總線的連接。文中FPGA器件選用XILINX公司的XC2S200系列的5PQ208,56 Kb專用存儲器,最高運行速度200 MHz,I/O電壓在3.3~5.5 V,地址總線、數據總線,/AS,/IACKIN,/IACKOUT,SYS CLK等可以直接與5PQ208連接。
    1.2 CAN總線節點模塊
    CAN總線節點模塊是該系統中的主要模塊,選用Philips公司生產的SJA1000,它負責連接總線與8路CAN選通主控制器CPLD之間的數據通信,其整個系統功能如圖2所示。收發器選用P82C251T。CAN接口原理如圖3所示。

    b.jpg


    1.3 復雜可編程邏輯器件(CPLD)模塊
    在系統中,由于FPGA的地址總線和數據總線是分開的,而SJA1000的地址和數據線是分時復用的,所以在總線接口上有一定差異,因此選用MAX3000系列可編程邏輯器件EPM3128來進行邏輯變換。該CPLD芯片有豐富的宏單元,80個用戶I/O管腳,管腳間延遲時間是10 ns,最高速度可達100 MHz,能夠滿足系統設計的需要。可編程邏輯器件在系統中的功能為:轉換FPGA與CAN控制器SJA1000之間的地址總線和數據總線;通過對FPGA的地址線譯碼,擴展CAN控制節點的通道。
    1.4 MCU處理器
    由于CAN總線的最高傳輸速度是1 Mb/s,所以該部分選取宏晶STC12C5A60S2,FLASH程序存儲器為56 KB。SRAM為1 280 B,2個專用的UATR,豐富的CPU資源滿足作為下位機的CPU控制單元,主要完成兩種總線協議的轉換,負責將從FPGA過來的VME總線轉換成CAN總線格式,并傳輸到指定CAN節點;同時也將CPLD選通的CAN通道數據,轉換為FPGA能識別的VME總線格式,并在MCU中斷主機時,將數據反饋給VME主機。


    上一頁 1 2 下一頁

    關鍵詞: CAN-VME FPGA MCU 總線

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 美姑县| 新郑市| 合山市| 庄浪县| 剑河县| 长乐市| 兰西县| 枝江市| 札达县| 甘肃省| 吴旗县| 玉环县| 阳新县| 内黄县| 湛江市| 黄骅市| 涟源市| 留坝县| 二手房| 留坝县| 阿拉善左旗| 绥滨县| 洞头县| 汶川县| 佛山市| 梧州市| 峨眉山市| 赤壁市| 郸城县| 台州市| 沙湾县| 仁寿县| 赤峰市| 营山县| 英超| 密山市| 莆田市| 上犹县| 长兴县| 壶关县| 鞍山市|