www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]基于ARM和FPGA的多功能車輛總線嵌入式系統(tǒng)設計

    在計算機、互聯(lián)網(wǎng)和通信技術高速發(fā)展的同時,嵌入式系統(tǒng)開發(fā)技術也取得迅速發(fā)展,嵌入式技術應用范圍的急劇擴大。本文介紹了一種基于ARMFPGA,從軟件到硬件完全自主開發(fā)多功能車輛總線(Multifunction Vehicle Bus)MVB嵌入式系統(tǒng)的設計和實現(xiàn)。

系統(tǒng)設計和實現(xiàn)

    通常來說,一個嵌入式系統(tǒng)的開發(fā)過程如下:

  1. 確定嵌入式系統(tǒng)的需求;

  2. 設計系統(tǒng)的體系結構:選擇處理器和相關外部設備,操作系統(tǒng),開發(fā)平臺以及軟硬件的分割和總體系統(tǒng)集成;

  3. 詳細的軟硬件設計和RTL代碼、軟件代碼開發(fā);

  4. 軟硬件的聯(lián)調(diào)和集成;

  5. 系統(tǒng)的測試。

一、步驟1:確定系統(tǒng)的需求

    嵌入式系統(tǒng)的典型特征是面向用戶、面向產(chǎn)品、面向應用的,市場應用是嵌入式系統(tǒng)開發(fā)的導向和前提。一個嵌入式系統(tǒng)的設計取決于系統(tǒng)的需求。

1、MVB總線簡介

    列車通信網(wǎng)(Train Communication Network,簡稱TCN)是一個集整列列車內(nèi)部測控任務和信息處理任務于一體的列車數(shù)據(jù)通訊的IEC國際標準(IEC-61375-1), 它包括兩種總線類型絞線式列車總線(WTB)和多功能車廂總線(MVB)。

    TCN 在列車控制系統(tǒng)中的地位相當與CAN總線在汽車電子中的地位。多功能車輛總線MVB是用于在列車上設備之間傳送和交換數(shù)據(jù)的標準通信介質(zhì)。附加在總線上的設備可能在功能、大小、性能上互不相同,但是它們都和MVB總線相連,通過MVB總線來交換信息,形成一個完整的通信網(wǎng)絡。在MVB系統(tǒng)中,根據(jù)IEC- 61375-1列車通信網(wǎng)標準, MVB總線有如下的一些特點:

    拓撲結構:MVB總線的結構遵循OSI模式,吸取了ISO的標準。支持最多4095個設備,由一個中心總線管理器控制。簡單的傳感器和智能站共存于同一總線上。

    數(shù)據(jù)類型:MVB總線支持三種數(shù)據(jù)類型:

    a.過程數(shù)據(jù):過程變量表示列車的狀態(tài),如速度、電機電流、操作員的命令。過程變量的值叫過程數(shù)據(jù)。它們的傳輸時間是確定的和有界的。為保證這一延遲時間,這些數(shù)據(jù)被周期性地傳送。

    b.消息數(shù)據(jù):消息被分成小的包,這些包分別被編號并由目的站確認。消息包及與之相關的控制數(shù)據(jù)形成消息數(shù)據(jù)。消息數(shù)據(jù)以命令方式傳輸。功能消息被應用層所使用;服務消息用于列車通信系統(tǒng)自身的管理等。

    c.監(jiān)視數(shù)據(jù):是短的幀,主設備用它作同一總線內(nèi)設備的狀態(tài)校驗、聯(lián)機設備的檢測、主權傳輸、列車初運行和其它管理功能。

介質(zhì)訪問形式:MVB總線支持RS485銅介質(zhì)和光纖。其物理層的數(shù)據(jù)格式為1.5Mbps串行曼徹斯特編碼數(shù)據(jù)。

    MVB的介質(zhì)訪問是由總線管理器BA進行管理的,總線管理器BA是唯一的總線主設備,所有其它設備都是從設備。主設備按照某種預定的順序?qū)Χ丝谶M行周期性輪詢,在周期的間隔中,主設備轉而處理偶發(fā)性請求。

    可靠性措施:MVB容錯措施包括

    發(fā)送的完整性:鏈路層有擴充的檢錯機制,該機制提供的漢明碼距為8,可檢測位、幀和同步錯誤。

    故障的獨立性:通常對銅介質(zhì)進行完全雙份配置,以確保設備故障的獨立性。

     發(fā)送的可用性:可用性可以通過介質(zhì)冗余、電源冗余、管理器冗余等措施得以提高。

2、MVB系統(tǒng)的基本需求如下

a. 完全與IEC-61375-1(TCN) 國際標準兼容,支持MVB總線定義的三種數(shù)據(jù)類型過程數(shù)據(jù),消息數(shù)據(jù),監(jiān)視數(shù)據(jù)。

b. 系統(tǒng)可配置成為:


i. 總線管理器(BA)功能


ii. 總線管理器(BA)功能和通信功能


iii. 獨立的通信功能

c. 采用ARM7TDMI的處理器

d. 采用實時操作系統(tǒng)

e. 供TCN的實時協(xié)議棧協(xié)議(RTP)

f. 支持 4096 邏輯端口的過程數(shù)據(jù)

g. 支持與上位PC104主機的雙口RAM接口

h. 輸入電壓5V

i. 工作環(huán)境溫度:-40℃?75℃

3、其他需求

    多功能車輛總線MVB系統(tǒng)與用戶的列車控制系統(tǒng)同步設計,有著嚴格的時間限制。

二、步驟2:設計系統(tǒng)的體系結構,協(xié)同分配硬件/軟件方面的要求

    嵌入式系統(tǒng)包含硬件和軟件兩部分:硬件架構上以嵌入式處理器為中心,配置存儲器、I/O設備、通信模塊等必要的外設;軟件部分以軟件開發(fā)平臺為核心,向上提供應用編程接口(API),向下屏蔽具體硬件特性的板級支持包BSP。嵌入式系統(tǒng)中,軟件和硬件緊密配合,協(xié)調(diào)工作,共同完成系統(tǒng)預定的功能。根據(jù)OSI的七層模型可以確定鏈路層和物理層由硬件實現(xiàn),其他各層由軟件實現(xiàn),如圖1。

圖1:MVB的OSI模型和MVB系統(tǒng)軟硬件劃分。

1、嵌入式操作系統(tǒng)選擇

  • 通常而言,為一個嵌入式系統(tǒng)選擇操作系統(tǒng)要考慮如下幾個因素:

  • 操作系統(tǒng)支持的微處理器

  • 操作系統(tǒng)的性能

  • 操作系統(tǒng)的軟件組件和設備驅(qū)動程序

  • 操作系統(tǒng)的調(diào)試工具,開發(fā)環(huán)境、在線仿真器(ICE)、編譯器、匯編器、連接器、調(diào)試器以及模擬器等等

  • 操作系統(tǒng)的標準兼容性

  • 操作系統(tǒng)的技術支持程度

  • 操作系統(tǒng)是提供源代碼還是目標代碼

  • 操作系統(tǒng)的許可使用情況

  • 操作系統(tǒng)的開發(fā)者聲譽狀況

    根據(jù)系統(tǒng)的需求和以上的原則,在MVB系統(tǒng)中采用了Vxworks實時操作系統(tǒng),VxWorks是風河公司(Windriver)開發(fā)的實時操作系統(tǒng)之一,以其優(yōu)秀的可靠性、實時性及內(nèi)核的可裁減性,被廣泛應用于通信、軍事、航天、航空、工業(yè)控制等關鍵行業(yè)領域,其開發(fā)環(huán)境為Tornado。

2、處理器的選擇

    在為嵌入式系統(tǒng)選擇處理器時需要考慮以下幾個方面:

  • 性能:處理器必須有足夠的性能執(zhí)行任務和支持產(chǎn)品生命周期。

  • 工具支持:支持軟件創(chuàng)建、調(diào)試、系統(tǒng)集成、代碼調(diào)整和優(yōu)化工具對整體項目成功與否非常關鍵。

  • 操作系統(tǒng)支持:嵌入式系統(tǒng)應用需要使用有幫助的抽象來減少其復雜性。

  • 開發(fā)人員過去的處理器經(jīng)驗:擁有處理器或處理器系列產(chǎn)品的開發(fā)經(jīng)驗可以減少可觀的學習新處理器、工具和技術的時間。

  • 成本,功耗,產(chǎn)品上市時間,技術支持等等

    在本系統(tǒng)的設計中,綜合以上各方面的因素,考慮到處理器性能,操作系統(tǒng)支持以及列車上嚴酷的工業(yè)環(huán)境等等,在MVB系統(tǒng)中選用了ATMEL 用于工業(yè)控制領域的工業(yè)級的AT91系列ARM處理器AT91M40800,它是基于ARM7TDMI內(nèi)核,內(nèi)含高性能的32位RISC處理器、16位高集成度指令集、8KB片上SRAM、可編程外部總線接口(EBI)、3通道16位計數(shù)器/定時器、32個可編程I/O口、中斷控制器、2個USART、可編程看門狗定時器、主時鐘電路和DRAM時序控制電路,并配有高級節(jié)能電路;同時,可支持JTAG調(diào)試,主頻可達到40MHz。

3、相關外部設備的選擇

    在確定操作系統(tǒng)和處理器之后,就可以確定相關的外部設備,如FLASH,RAM,串口等等。在MVB系統(tǒng)中,MVB控制器MVBC (Multifunction Vehicle Bus Controller)是一個MVB電路和實際的物理設備之間的接口控制器,它的主要功能是實現(xiàn)MVB總線信號與數(shù)據(jù)幀的編解碼,糾錯等功能,是本系統(tǒng)中要實現(xiàn)的關鍵的硬件模塊。由于系統(tǒng)規(guī)模,上市時間等方面的要求,系統(tǒng)暫時不考慮ASIC實現(xiàn),因此在MVB系統(tǒng)中用FPGA來實現(xiàn)這個關鍵模塊,F(xiàn)PGA 是ASIC最靈活和最合算的替代方案??紤]到系統(tǒng)需求與FPGA資源,成本,供貨情況等因素,最終選擇了Altera公司的Cyclone系列FPGA, 其開發(fā)工具是Quartus II。

4、MVB系統(tǒng)架構

    由以上的需求分析和選型,完整的系統(tǒng)硬件架構和軟件架構如圖2圖3所示

 

圖2:MVB系統(tǒng)的硬件架構。

圖3:MVB系統(tǒng)的軟件架構。

    其中,處理器和 MVBC通過Traffic Memory(TM)進行通訊數(shù)據(jù)交換,所有軟件和MVBC要交換的控制信息和數(shù)據(jù)都可以在TM地址空間中找到,這個地址空間對處理器和MVBC都是可訪問的。其示意圖4如下

圖4:Traffic Memory。

三、步驟3:詳細的軟硬件設計和RTL代碼、軟件代碼開發(fā)

    在系統(tǒng)架構確定的基礎上,詳細的軟硬件設計就可以開始了。

1、硬件設計

    硬件設計設計包括了MVB控制器的FPGA設計和MVB總線系統(tǒng)的板級設計,其中關鍵的MVB控制器的設計如圖5

圖5:MVB控制器的框圖。(點擊放大該圖)

 

 

 

 

 

 

 

 

如圖所示,MVB控制器包含以下功能模塊:

  • 編碼器:產(chǎn)生曼徹斯特編碼,傳送數(shù)據(jù)幀

  • 發(fā)送緩沖區(qū):作為要發(fā)送的數(shù)據(jù)和CRC檢測值的緩沖區(qū)

  • 譯碼器:接收、曼徹斯特譯碼,數(shù)據(jù)提取、數(shù)據(jù)錯誤檢測

  • 接收緩沖區(qū):作為接收端數(shù)據(jù)和CRC結果的緩沖區(qū)

  • 報文分析單元:檢測主幀和從幀超時,幀誤檢測、錯誤狀態(tài)報告

  • 狀態(tài)控制寄存器:MVBC配置

  • 主控單元:支持MVBC作為主設備或者從設備工作,支持隊列消息傳送

  • 設備地址讀取和儲存單元:硬件定義的設備地址可以被不同的值覆蓋

  • 地址邏輯:把CPU對MVBC內(nèi)部寄存器進行訪問的輸入地址進行解析;產(chǎn)生MVBC訪問TM的輸出地址

  • 總線復用、轉換單元:處理MVBC內(nèi)部的數(shù)據(jù)傳送

  • 中斷邏輯:支持16種中斷源;

  • 通用定時器:兩個定時輸出信號,可提供給系統(tǒng)同步使用

  • 時鐘產(chǎn)生電路:產(chǎn)生所有MVBC工作的時鐘和計數(shù)器

2、軟件設計

    由于在MVB系統(tǒng)中,過程數(shù)據(jù),消息數(shù)據(jù),監(jiān)視數(shù)據(jù)是三種不同的通訊機制,因此,MVB系統(tǒng)軟件的模塊設計如圖6。

圖6:MVB系統(tǒng)軟件模塊。

 

 

 

 

 

 

四、軟硬件的聯(lián)調(diào)和集成

    下面,以一個簡單的例子來說明MVB系統(tǒng)的軟硬件的集成和驗證。

    過程數(shù)據(jù)在MVB系統(tǒng)中是周期性發(fā)送的數(shù)據(jù),其在本系統(tǒng)中的通訊機制如下:對于發(fā)送方,用戶應用模塊將一個端口的過程變量發(fā)送給過程數(shù)據(jù)處理模塊,過程數(shù)據(jù)處理模塊按照邏輯端口的設置定時通過鏈路層接口模塊更新Traffic Memory當中的相應邏輯端口的數(shù)據(jù),此時發(fā)送方軟件的任務完成。發(fā)送方的MVBC硬件接收總線管理器BA定時發(fā)出的主幀,通過譯碼器解碼得到相應的邏輯端口的值,通過查詢Traffic Memory相關的邏輯端口發(fā)送設置后將MVBC自動設置為發(fā)送狀態(tài),將邏輯端口的數(shù)據(jù)作為過程數(shù)據(jù)從幀通過編碼器發(fā)出,如圖7所示:

圖7:過程數(shù)據(jù)通訊示例。

 

 

 

 

    對于接收方,其接收過程與發(fā)送方相逆,接收方的MVBC硬件接收總線管理器BA定時發(fā)出的主幀,通過譯碼器解碼得到相應的邏輯端口的值,通過查詢Traffic Memory相關的邏輯端口接收設置后將MVBC自動設置為接收狀態(tài)將,在收到發(fā)送方發(fā)出的從幀后更新相應邏輯端口在Traffic Memory的數(shù)據(jù)并發(fā)出中斷信號從而完成硬件的接收過程。接收方的軟件可以用中斷或定時查詢的方式通過過程數(shù)據(jù)處理模塊得到更新后的邏輯端口的過程數(shù)據(jù)

五、系統(tǒng)的測試

    在本系統(tǒng)中,系統(tǒng)的測試即包括了軟件的測試,也包括了硬件,F(xiàn)GPA的測試,在本文中不再贅述。

結束語

    上述的MVB系統(tǒng)現(xiàn)已運行在列車控制系統(tǒng)中,成功實現(xiàn)對列車的運行控制、機車控制、車輛控制、狀態(tài)監(jiān)測、故障診斷。當然,如有需要,本文中的MVB系統(tǒng)可以轉化成為ASIC設計,從而成為一個SOC的嵌入式系統(tǒng)

參考文獻:
1、International Standard IEC-61371-1
2、AT91M40800 datasheet

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

Lua RTOS 是一個實時操作系統(tǒng),設計在嵌入式系統(tǒng)上運行,對 FLASH 和 RAM 內(nèi)存的要求最低。目前 Lua RTOS 可用于 ESP32, ESP8266 和 PIC32MZ 平臺,并可以輕松移植到其他32位...

關鍵字: Lua RTOS 操作系統(tǒng) 嵌入式系統(tǒng)

通用異步收發(fā)傳輸器(Universal Asynchronous Receiver/Transmitter),通常稱作UATR,是一種串行、異步、全雙工的收發(fā)器。全雙工的UART支持同時雙向通信,是嵌入式系統(tǒng)必不可少的d...

關鍵字: 異步收發(fā) 傳輸器 嵌入式系統(tǒng)

物聯(lián)網(wǎng)正在擴大規(guī)模并加速發(fā)展,進而驅(qū)動著全新的經(jīng)濟。而Arm生態(tài)系統(tǒng)正是這一巨大機遇背后的推動力。

關鍵字: ARM 物聯(lián)網(wǎng)

ARM公司是一家知識產(chǎn)權(IP)供應商,它與一般的半導體公司最大的不同就是不制造芯片且不向終端用戶出售芯片,而是通過轉讓設計方案,由合作伙伴生產(chǎn)出各具特色的芯片。

關鍵字: ARM

2018年10月26日,深圳星河麗思卡爾頓酒店,ARM中國CEO吳雄昂在ARM年度技術論壇上對記者如是說,彼時的吳堅定,溫雅,意氣風發(fā)。時隔兩年,ARM中國CEO吳雄昂再次回到媒體視線,這一次,ARM中國與來自投資方和劍...

關鍵字: ARM 芯片 集成電路

最近為什么越來越多的研究開始利用FPGA作為CNN加速器?FPGA與CNN的相遇究竟能帶來什么神奇效果呢?原來,F(xiàn)PGA擁有大量的可編程邏輯資源,相對于GPU,它的可重構性以及高功耗能效比的優(yōu)點,是GPU無法比擬的;同時...

關鍵字: FPGA 可編程邏輯資源 GPU

FPGA的應用領域包羅萬象,我們今天來看看在音樂科技領域及醫(yī)療照護的智能巧思。

關鍵字: FPGA 科技領域 智能

喜歡折騰主機的小伙伴一定都知道X86和ARM架構的區(qū)別,前者在PC領域已經(jīng)統(tǒng)治了幾十年;后者則主要應用于移動領域,尤其是近幾年,ARM的產(chǎn)品在終端應用特別是手持終端應用飛速發(fā)展。

關鍵字: 國產(chǎn) ARM 主機

科技公司們認為,收購將使英偉達控制一個重要的供應商,該供應商向蘋果、英特爾、三星電子、亞馬遜和華為等公司授權基本的芯片技術,同時也向不計其數(shù)的中小技術企業(yè)提供授權。總部位于英國的ARM公司將芯片設計和相關軟件代碼授權給所...

關鍵字: 英偉達 ARM 半導體公司

在去年九月,英偉達宣布以400億美金收購ARM時,就注定這場收購不會太順利。因為一旦ARM成功被英偉達收購,這將使ARM改變在全球半導體市場中的中立立場,因為ARM的很多客戶,都是英偉達的直接或者間接的對手。除此之外,還...

關鍵字: 英偉達 ARM 半導體

嵌入式軟件

15715 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉