基于MicroBlaze的嵌入式串口服務器的設計實現,提供軟硬件架構、原理
項目背景及可行性分析
項目名稱、項目的主要內容及目前的進展情況項目名稱:基于MicroBlaze的嵌入式串口服務器的實現
項目的主要內容:本作品將要實現一個串口服務器,它有2個串口,每個串口可以連接一個需要服務的對象,比如門禁,消防,火警,馬達,燈光,空氣等各樣需要監(jiān)測的終端。為了便于實現和演示,我們采用的監(jiān)測終端為燈光,微型電機,溫度和紅外開關。將這些數據通過終端微控制器(單片機等)采集后通過RS232傳送給串口服務器轉換為IP數據包,通過以太網發(fā)送到網絡上。
目前的進展情況:開始做數據采集板(單片機系統)
項目關鍵技術及創(chuàng)新點的論述;隨著串口轉換設備的發(fā)展和Internet的廣泛普及,出現了類似于以太網交換設備的串口服務器,可以把提供RS232/485/422接口的終端裝置集中組網,然后通過以太網接口與上位機組成以太網,“讓全部設備連接網絡”已經成為全世界企業(yè)的共識。
為了能跟上網絡自動化的潮流,不至于失去競爭優(yōu)勢,必須建立高品位的數據采集、生產監(jiān)控、即時成本管理的聯網系統。利用基于TCP/IP的串口數據流傳輸的實現來控制管理的設備硬件,無需投資大量的人力、物力來進行管理、更換或者升級。
串口服務器就使得基于TCP/IP的串口數據流傳輸成為了可能,它能將多個串口設備連接并能將串口數據流進行選擇和處理,把現有的RS 232接口的數據轉化成IP端口的數據,然后進行IP化的管理,IP化的數據存取,這樣就能將傳統的串行數據送上流行的IP通道,而無需過早淘汰原有的設備,從而提高了現有設備的利用率,節(jié)約了投資,還可在既有的網絡基礎上簡化布線復雜度。在制定設計方案和選定器件時遇到的技術難點是如何利用處理器對串口數據信息進行TCP/IP協議處理,使之變成可以在互聯網上傳輸的IP數據包。
目前解決這個問題很多時候采用32位MCU + RTOS方案,在嵌入式系統中實現TCP/IP的協議處理。它的缺點是:1:對于需要改造的的設備數量一般不確定,難以找到具有合適的外設的cpu剛好來匹配,普通cpu一般功能較齊全,但是對于串口服務器而言,很多功能成為多余,而所需的功能卻有限。2:一般的cpu都不具備可更改外設功能,想升級就只能再加一個系統或者全部更換,勢必使成本大幅上升。3:由于硬件系統還涉及到數據線/地址線復用、串并轉換、器件中斷信號譯碼、時鐘信號生成、控制信號接入等功能,若是選用不同的器件來完成,勢必會造成許多諸如時延不均等問題,所以往往還需要用了一片大容量的高性能可編程邏輯器件來完成上述所提到的功能。
那么現在采用帶MicroBlaze軟核處理器的FPGA系統就能克服上面的缺點,MicroBlaze軟核可以根據需要進行配置,既可以配置成功能齊全但外設數量有限的內核,也可以配置成功能單一,但是外設數量較多的內核。這樣,針對大部分的應用場合都有很好的適應性,更方便升級,只需再配置相應數量的外設即可。很明顯無需額外增加可編程邏輯器件,Spartan™-3本身就是功能強大、性能優(yōu)異的可編程邏輯器件,系統的集成度得到很大提高。
對簡單和單一,一般沒有實時操作系統進行多任務管理。高檔的多采用32位MCU + RTOS方案,主要是采用ARM系列,在嵌入式系統中實現TCP/IP的協議處理。而近年隨著FPGA的大力發(fā)展,出現了軟核處理器,具備高度的可編程能力和可配置性,大大增強了系統的設計靈活性,使得我們構建硬件環(huán)境非常方便,不用過多顧慮處理器的資源不合適或者不夠用,可以把主要精力放在軟件開發(fā)和功能實現上。極大縮短開發(fā)周期。
高性價比的Spartan™-3芯片可以在片內實現MicroBlaze CPU,集成2組UART接口,數據線/地址線復用、串并轉換、器件中斷信號譯碼、時鐘信號生成、控制信號接入等功能,一片FPGA就可以輕松完成上述所提到的功能。這種高度集成系統使得抗干擾能力大大增強,減小電路板體積,同時通信速率和穩(wěn)定性得到很大提高。
最重要的是當應用系統硬件需要擴充或者升級時,基于FPGA的MicroBlaze系統很容易就實現,因為它有優(yōu)異的配置性能。應用程序需要升級時,只需在uclinux嵌入式操作系統的基礎上添加相應的驅動和應用程序就可以了,實現方便。所以可以這么說,基于FPGA的MicroBlaze系統本身就是為了適應靈活定制,系統集成,方便升級而出現的。
項目實施方案
1.方案基本功能框圖及描述
用框圖的方式并加以簡單的描述簡述實施本項目的技術方案。
系統框架圖:
軟件結構圖:
2.需要的開發(fā)平臺
實現本方案所需要的基本功能、功能、接口
基本功能和接口:RS232,Ethernet,LCD,軟核處理器
所需要的目標FPGA開發(fā)平臺,簡述為什么需要此平臺
是否需要其它配套的開發(fā)工具
Spartan 3E開發(fā)平臺。
首先平臺需要支持MicroBlaze軟核處理器。串口至少需要2個或者以上。有LCD顯示,支持以太網,低功耗。需要單片機數據采集子系統至少2套。
2.方案實施過程中需要開發(fā)的模塊
在本方案中需要研制、開發(fā)的功能主要模塊,以及開發(fā)的方式
單片機數據采集子系統,沒有的話,就自行開發(fā),自己做板,能提供更好。
3.系統最終要達到的性能指標
論述本項目最終完成時所設想達到的目標。
1.有一個簡易的顯示系統。
2.能顯示IP化的數據包。
3.在uclinux嵌入式操作系統管理下同時處理多個數據采集子系統。
需要的其它資源
1.設計輸入輸出功能子板
子板功能描述、接口說明、時間、方式
子板功能:作為數據采集系統,然后送入FPGA處理。
接口說明:RS232
2.測試設備
列出在方案實施過程中所需要的測試設備(萬用表、示波器、頻譜儀、邏輯分析儀等)
萬用表、示波器、電腦
3.方針、開發(fā)工具
列出在方案實施過程中所需要的仿真、開發(fā)工具等。
Keil 和ISE、modelsim