時間:2023-01-05 16:58:46
開篇:寫作不僅是一種記錄,更是一種創造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇接口協議,希望這些內容能成為您創作過程中的良師益友,陪伴您不斷探索和進步。
關鍵詞:PS/2接口;串行通訊;單片機;鍵盤;CD4052
1 PS/2接口標準的發展過程
隨著計算機工業的發展,作為計算機最常用輸入設備的鍵盤也日新月異。1981年IBM推出了IBM PC/XT鍵盤及其接口標準。該標準定義了83鍵,采用5腳DIN連接器和簡單的串行協議。實際上,第一套鍵盤掃描碼集并沒有主機到鍵盤的命令。為此,1984年IBM推出了IBM AT鍵盤接口標準。該標準定義了84~101鍵,采用5腳DIN連接器和雙向串行通訊協議,此協議依照第二套鍵盤掃描碼集設有8個主機到鍵盤的命令。到了1987年,IBM又推出了PS/2鍵盤接口標準。該標準仍舊定義了84~101鍵,但是采用6腳mini-DIN連接器,該連接器在封裝上更小巧,仍然用雙向串行通訊協議并且提供有可選擇的第三套鍵盤掃描碼集,同時支持17個主機到鍵盤的命令。現在,市面上的鍵盤都和PS/2及AT鍵盤兼容,只是功能不同而已。
2 PS/2接口硬件
2.1 物理連接器
一般,具有五腳連接器的鍵盤稱之為AT鍵盤,而具有六腳mini-DIN連接器的鍵盤則稱之為PS/2鍵盤。其實這兩種連接器都只有四個腳有意義。它們分別是Clock(時鐘腳)、Data數據腳 、+5V(電源腳)和Ground(電源地)。在PS/2鍵盤與PC機的物理連接上只要保證這四根線一一對應就可以了。PS/2鍵盤靠PC的PS/2端口提供+5V電源,另外兩個腳Clock(時鐘腳)和Data數據腳 都是集電極開路的,所以必須接大阻值的上拉電阻。它們平時保持高電平,有輸出時才被拉到低電平,之后自動上浮到高電平。現在比較常用的連接器如圖1所示。
2.2 電氣特性
PS/2通訊協議是一種雙向同步串行通訊協議。通訊的兩端通過Clock(時鐘腳)同步,并通過Data(數據腳)交換數據。任何一方如果想抑制另外一方通訊時,只需要把Clock(時鐘腳)拉到低電平。如果是PC機和PS/2鍵盤間的通訊,則PC機必須做主機,也就是說,PC機可以抑制PS/2鍵盤發送數據,而PS/2鍵盤則不會抑制PC機發送數據。一般兩設備間傳輸數據的最大時鐘頻率是33kHz,大多數PS/2設備工作在10~20kHz。推薦值在15kHz左右,也就是說,Clock(時鐘腳)高、低電平的持續時間都為40μs。每一數據幀包含11~12個位,具體含義如表1所列。
表1 數據幀格式說明
1個起始位總是邏輯08個數據位(LSB)低位在前1個奇偶校驗位奇校驗1個停止位總是邏輯11個應答位僅用在主機對設備的通訊中
表中,如果數據位中1的個數為偶數,校驗位就為1;如果數據位中1的個數為奇數,校驗位就為0;總之,數據位中1的個數加上校驗位中1的個數總為奇數,因此總進行奇校驗。
2.3 PS/2設備和PC機的通訊
PS/2設備的Clock(時鐘腳)和Data數據腳 都是集電極開路的,平時都是高電平。當PS/2設備等待發送數據時,它首先檢查Clock(時鐘腳)以確認其是否為高電平。如果是低電平,則認為是PC機抑制了通訊,此時它必須緩沖需要發送的數據直到重新獲得總線的控制權(一般PS/2鍵盤有16個字節的緩沖區,而PS/2鼠標只有一個緩沖區僅存儲最后一個要發送的數據)。如果Clock(時鐘腳)為高電平,PS/2設備便開始將數據發送到PC機。一般都是由PS/2設備產生時鐘信號。發送時一般都是按照數據幀格式順序發送。其中數據位在Clock(時鐘腳)為高電平時準備好,在Clock(時鐘腳)的下降沿被PC機讀入。PS/2設備到PC機的通訊時序如圖2所示。
當時鐘頻率為15kHz時,從Clock(時鐘腳)的上升沿到數據位轉變時間至少要5μs。數據變化到Clock(時鐘腳)下降沿的時間至少也有5 μs,但不能大于25 μs,這是由PS/2通訊協議的時序規定的。如果時鐘頻率是其它值,參數的內容應稍作調整。
上述討論中傳輸的數據是指對特定鍵盤的編碼或者對特定命令的編碼。一般采用第二套掃描碼集所規定的碼值來編碼。其中鍵盤碼分為通碼(Make)和斷碼(Break)。通碼是按鍵接通時所發送的編碼,用兩位十六進制數來表示,斷碼通常是按鍵斷開時所發送的編碼,用四位十六進制數來表示。
3 PS/2接口的嵌入式軟件編程方法
PS/2設備主要用于產生同步時鐘信號和讀寫數據。
3.1 PS/2向PC機發送一個字節
從PS/2向PC機發送一個字節可按照下面的步驟進行:
(1)檢測時鐘線電平,如果時鐘線為低,則延時50μs;
(2)檢測判斷時鐘信號是否為高,為高,則向下執行,為低,則轉到(1);
(3)檢測數據線是否為高,如果為高則繼續執行,如果為低,則放棄發送(此時PC機在向PS/2設備發送數據,所以PS/2設備要轉移到接收程序處接收數據);
(4)延時20μs(如果此時正在發送起始位,則應延時40μs);
(5)輸出起始位(0)到數據線上。這里要注意的是:在送出每一位后都要檢測時鐘線,以確保PC機沒有抑制PS/2設備,如果有則中止發送;
(6)輸出8個數據位到數據線上;
(7)輸出校驗位;
(8)輸出停止位(1);
(9)延時30μs(如果在發送停止位時釋放時鐘信號則應延時50μs);
通過以下步驟可發送單個位:
(1)準備數據位(將需要發送的數據位放到數據線上);
(2)延時20μs;
(3)把時鐘線拉低;
(4)延時40μs;
(5)釋放時鐘線;
(6)延時20μs。
關鍵詞:SDN OpenFlow 體系架構 標準接口
中圖分類號:TN929;TM73 文獻標識碼:A 文章編號:1674-098X(2016)09(a)-0009-04
當前階段,社會對高速信息網絡需求不斷提升,為應對這一形勢,互聯網不斷開發新協議,通過局部修補實現結構的進一步完善。國際互聯網標準化工作組IETF對這一完善過程起著主導作用,通過對新標準的制定與修改提升互聯網性能,完善其功能。在這種發展背景下,網絡架構日益變得復雜,為管理與維護工作帶來較大難度[1]。這一問題的決定性因素在于互聯網的最初設計,特別是對TCP/IP的設計。而對于TCP/IP的修改又存在較大困難,因此,社會各界均在尋求一種新的解決途徑來化解當前的困境。于是,新型體系架構應運而生。
傳統的網絡構架中由于邏輯控制和數據轉發緊密地耦合于網絡設備中,新的網絡控制管理策略很難到現網上部署,網絡的擴展性和靈活性被束縛,因而從控制和轉發分離成為許多研究者的共識。因此,在嘗試改變互聯網的體系結構的同時,軟件定義的網絡(software defined networking,SDN)被作為一種新型的網絡體系結構提出。OpenFlow技術作為SDN轉發抽象的實現之一,已經受到學術界和工業界的普遍關注和廣泛研究。OpenFlow實現了將設備控制平面與數據平面相分離,讓用戶對設備的控制和修改變得更容易[2]。
1 SDN的發展現狀
為了有效解決TCP/IP構架帶來的問題,國際學術界通過未來網絡研究的實施致力于未來網絡創新實驗平臺的開發與建設,同時先后啟動了GENI、FINE、4WARD、FIA等項目。IETF開發出了ForCES網絡構架,用于標準化控制組件與網絡組件的通信,網絡設備主要由兩部分組成,包括控制件(CE)與轉發件(FE),其中CEM件主要執行控制與信令的功能,使用ForCES協議指導轉發組件處理報文的方式。ForCES自2003年起開始實行標準化,同時出版了許多應用文檔,定義網絡實體和接口的框架模型。但是,這一標準化形式只是致力于創新與建模,并未獲得設備商的普遍運用。后期,又開發了網絡構架Ethane,這一構架主要針對于企業網的應用管理,允許相關網絡管理者對精細粒度策略進行定義,并于網絡中予以執行。將基于流轉發的以太網交換機直接和管理網絡接入的路由控制器相連,這種方式看上去較為激進,但其可向后兼容現有主機與交換機。控制器對主機的網絡注冊、認證及數據流的路由策略有控制作用,而下層交換機主要承擔對數據的轉發工作。
基于上述的這些研究,斯坦福大學的Nick教授等人提出了OpenFlow,可讓研究者在現今的網絡運行試驗協議。它可以作為像GENI項目這樣大規模試驗床的重要部件,斯坦福的兩棟大樓很快就部署了OpenFlow網絡,隨后,OpenFlow受到了學術界的廣泛關注。OpenFlow思想也逐漸演變成了今天的SDN網絡構架,具備控制、轉發分離、集中化控制、資源虛擬化等優勢。不久后,OFELIA、GENI項目和FIRE項目均提出采用OpenFlow技術搭建未來網絡的創新實驗平臺。在Nick教授等人的推動下,2011年開放網絡基金會(ONF)成立,專門負責相關規范和標準的制定以及推廣,包括OpenFlow協議版本、配置協議OF-Config和SDN白皮書,有力地促進了SDN/OpenFlow的標準化進程,使它成為未來網絡體系構架研宄和創新實驗平臺構建領域的熱點技術。ITU-T與IETF等國際標準化組織也紛紛開始關注SDN的應用場景和組網方式。但SDN不僅停留在學術研究層面,應該說工業界的熱情不亞于學術界,谷歌、微軟等互聯網公司均在SDN領域投入了大量的科研力量。企業界也出現Nicira和Big Switch等為代表的SDN公司,開發出了OpenVSwitch和Floodlight等網絡軟件。
2 OpenFlow協議及特點
2.1 OpenFlow規范
OpenFlow交換機規范定義了交換機的基本功能以及通過遠端控制器對OpenFlow交換機進行管理的協議。遠端控制器在安全通道上通過OpenFlow協議對交換機中的安全控制單元直接進行管理(圖1)。
在OpenFlow1.0.0的交換機中,數據報文處理和尋址的過程如下。
步驟1,以太網數據進入交換機后被輸送至數據解析系統。步驟2,提取報頭字段信息,將其置于分組報頭,報頭信息主要用于匹配操作。步驟3,對分組報頭進行查找,成功匹配后送至匹配系統。步驟4,對比數據包報頭與OpenFlow流表中流條目規則。OpenFlow流表中流條目存在優先級由高到低的順序,所以,在查找數據包報頭時,應自流表中的首個表項開始。成功匹配后,在匹配的流表條目上繼續進行;如果匹配不成功,則將數據報文送至控制器進行處理。具體見圖2。
在OpenFlow交換機中流表示進行分組轉發查詢的最關鍵部件,在流表中包含了一系列的入口項(用于匹配收到的分組),激活計數器并自動匹配到與該分組所對應的操作。如果在流表中找到對應的入口項,將對該報文執行預先設定的動作,而控制器的作用則是用于確定某一報文沒有找到對應入口時的動作,同時還負責流表中每一條記錄的增刪。
2.2 OpenFlow協議特點
作為一項灸手可熱的新技術,OpenFlow之所以能夠受到廣泛的關注和支持,是和OpenFlow協議的技術特點息息相關的。OpenFlow協議主要有以下特點。
(1)OpenFlow技術將原有的IP承載架構完全打亂。OpenFlow的流表(Flow Table)是由多個流表項共同構成的,任何一個流表項均為一項轉發規則。數據包進至交換機后,對流表進行查詢以此獲取轉發端口。OpenFlow的流表中任何一個流表條均包含頭部、計數器及行為3部分內容。其中頭部屬于十元組,不僅包含傳統的七元組,另外增加了交換端口、以太網類型以及VlanID,以此對流表進行定義;計數器用于做流二量的數據統計工作;而行為主要指轉發、丟棄,規定了與流表項匹配的數據包所應進行的操作行為。對于OpenFlow技術而言,將控制與轉發進行分離是其關鍵特性,這就決定了其遠端控制與查詢功能的進一步實現。要想對流表進行相應改變,只要通過遠端指令操作即可實現;若想對網絡狀態進行實時掌握,通過遠程操控即可查詢與獲取。這一功能的實現,使網絡靈活性獲得有效提升,真正實現了網絡的智能化。從某種角度來講,OpenFlow技術實現了傳統硬件定義互聯網向軟件定義互聯網的巧妙轉變,更加動態化與靈活化,同時使Software Designed Network的核心思想得以凸顯。總體而言,可控軟件定義互聯網的實現,在提升網絡靈活性的同時,憑借相應的控制算法,使網絡安全性與魯棒性均得以有效提升,大大改善了其運行效率。
(2)從網絡創新角度來看,OpenFlow技術的運用具有非常大的價值。近年來,互聯網技術飛速發展,呈現出日新月異的變化的同時,也呈現出許多問題。為應對以上問題,網絡體系結構日益復雜化,在解決相關問題的同時,也帶來了新的問題,例如OSPF、BGP、NAT、防火墻、流量均衡等技術的應用,使網絡設備日益臃腫。相較于網絡領域發展瓶頸,可以說計算機領域的變化日新月異。而作為計算機網絡體系結構的相關研究者,通過對計算機問題、所遇瓶頸以及成功解決經驗進行分析,認為應將功能單元化作為核心思想,將控制與轉發功能進行合理分離。基于設計模式與軟件工程的分析,交換機與路由器相對簡單,滿足其基本功能需求的同時,為上層控制層提供API庫,并由控制層對其進行有效控制。
如此一來,研究人員就能通過對下層API進行自由調用實現協議的編寫,最終促進網絡創新的實現。OpenFlow對網絡創新思想起到重要的推動作用。以往通過自制數據包的轉發過程,經OpenFlow交Q機實現了控制器的數據包轉發操作,控制器下發流表指令后,自己按照指令對數據包進行相應的處理,進而對轉發與控制操作進行有效分離。
OpenFlow的技術特點同時也對交換設備提出了新的要求,OpenFlow提出新的交換機解決方案必須具備以下4個特點。
(1)設備必須具有商用設備的高性能和低價格的特點。
(2)設備必須能支持各種不同的研究范圍。
(3)設備必須能隔絕實驗流量和運行流量。
(4)設備必須滿足設備制造商封閉平臺的要求。
3 SDN的體系結構及特點
軟件定義網絡(SDN)作為一種新型的網絡構架,其本質的特征就是網絡控制和轉發分離,網絡具備可編程特性。OpenFlow標準定義了控制層和轉發設備間的通信協議,是SDN網絡構架的核心[3]。
3.1 SDN體系結構
SDN可以用來提供標準的接口,可以通過軟件的方式控制網絡中的資源連接和網絡業務流,必要時對業務流進行特定的檢查和修正,所定義的原始函數被抽象成標準的網絡服務。OpenFlow是其中的一種接口協議。
基本的SDN網絡部件,如圖3所示NE通過D-CPI接口上報設備的能力,SDN業務應用通過A-CPI接口告知控制器其具體的業務需求,控制器根據業務應用的需求實施對于底層設備的控制,通過優化控制策略在有限的網絡資源下提供具有競爭力的業務。
SDN幾個平面之間的關系:在數據平面,OSS至少應當支持NE的初始建立過程、分配SDN控制功能并配置SDN控制器;在控制平面,OSS需要配置SDN業務的控制策略并監測系統的性能;在應用平面,OSS配置業務合同與業務等級協定(SLA)。對于所有的平面,OSS需要提供安全性的管理和認證方式。
(1)數據平面。
包含了多個網絡部件,每個NE包含一系列的網絡轉發單元和業務處理資源,SDN的資源是根據底層的物理實體和所支持的能力而定的。
(2)控制平面。
SDN控制器組成,每個控制器負責NE分組的專用控制。SDN控制器的最基本功能是執行它所支持的應用程序請求,而每個應用程序之間通常是相互獨立的。SDN控制器需要與對等的控制器、下屬控制器以及非SDN環境之間進行交互以實現復雜的控制功能。
SDN控制器的一個常見但不必要的功能作為網絡的反饋控制元件,可以應對網絡的突發事件,如將網絡從故障中恢復及資源的再優化分配,等等。
(3)應用平面。
應用平面由一個或多個應用程序,每個都有專用的控制邏輯,負責SDN控制器所管轄的多個資源組。應用程序本身也可以調用其它應用程序,其自身也可以作為一個SDN控制器。
(4)管理平面。
每個應用、SDN控制器、NE均具有與管理者相連的功能接口,可以負責從底層資源池中為高層業務分配資源,并建立底層平面和高層平面的通信方式。
OF-config協議的定位主要是提供管理接口所需要的功能。
OF-switch協議的定位主要是執行D-CPI和A-CPI之間的功能。
3.2 SDN的特點
(1)控制和數據平面分離。
控制平面和數據平面采用分離的設計方法,通過D-CPI接口進行控制。SDN控制器可以控制NE的重要功能,并且能夠獲知NE的狀態信息。
(2)邏輯化的集中式控制。
與本地化控制方式相比,集中控制的方法具有掌控更廣范圍的資源的能力,并且可以為網絡做出更好的決策。為了提升網絡的可擴展性,通常在集中式控制方法中不建議獲取詳細的網絡資源,可以通過資源的抽象集合進行表示。邏輯化的集中式控制方式相比傳統的集中型網管具有更高的靈活性。
(3)對外部應用的拓撲和資源抽象方法。
應用可以存在于任何級別和粒度的抽象,同時控制器和業務應用均可將對方作為對等級別、客戶端或者服務器端。
網絡拓撲和資源的抽象通過A-CPI接口進行管理,并可通過程序化的控制方式進行管理。在了解網絡中的資源和狀態信息后,應用可以通過SDN控制器定制需求并根據網絡的實時狀態調整網絡服務。
SDN垂直體系架構支持信息模型的外送,并可以在客戶端執行CRUD操作(Create-Read-Update-Delete)。
分層模型的主要目的在于如下幾方面。
可擴展性:更高層次的控制器可以獲取更高的抽象度和更廣的管轄范圍。
安全性:每一層數據分屬于不同的信任域,在分層參考點處執行標準的域間安全性管理。
4 基于OpenFlow的架構層次設計
基于openFlow的虛擬網絡架構主要分為4個層次,分別為應用層、虛擬平臺、控制層和物理層,如圖4所示。
(1)應用層對網絡架構的具體運行狀況進行訪問與監控,對數據流處理邏輯與規則進行有效控制。通常來講,應用層應用程序主要包括兩種形式,即GUI與CLI。其中GUI為圖形界面,用戶通過此界面對網絡流量與數據轉發等情況全面掌握,同時以自身需求為依據,在網絡中對實體與數據流處理規則進行相關處理。CLI為命令行程序,此程序能夠為用戶提供更多操作功能,僅需執行單命令即可完成,工作效率非常高。
(2)VTN虛擬平臺作為OpenFlow虛擬網絡架構的關鍵部分,對虛擬網絡架構中各項主要業務邏輯均有所涉及。從某種角度來講,VTN虛擬平臺是建立在網絡硬件層與用戶應用層之間的重要橋梁。在VTN虛擬平臺中,最上層為服務器,在外部應用程序的運行中,服務器根據其運行需求向其提供內部數據服務接口;邏輯層通過邏輯網絡的建立,對網絡請求的處理邏輯進行定義操作,并對各項網絡任務用到的控制器與相關設備進行指定,保證虛擬網絡流控制、網絡監控及流過濾器等各項功能的實現;物理層對物理實體有配置和維護的功能,通過對通信狀態的查看與修改,實現其管理功能,同時可對控制器、網絡物理設備配置信息及域或邊界配置信息進行更改;驅動器則為VTN虛擬平臺實現物理設備單獨操作的重要接口。
(3)控制層的組成包含了多種網絡設備控制器,例如OpenFlow交換機控制器、Overlay交換機控制器與Legacy交換機控制器等,主要負責對物理設備數據轉發的控制。
(4)物理層作為整個OpenFlow虛擬網絡架構的底層結構,網絡通信中涉及的一切硬件均涵蓋于此,主要為OpenFlow設備與非OpenFlow設備兩種類型,例如OpenFlow交換機、Overlay交換機和Legacy交換機等。
5 結語
經30多年的實踐,基于TCP/IP構架的互聯網取得一定成果,并被世界多領域廣泛應用,逐漸成為產業規模最大的重要基礎設施之一。近年來,信息社會不斷進步,社會對互聯網技術的需求不斷提升,這為網絡發展帶來一定壓力。在此發展背景之下,ITU-T提出未來網絡的需求指標與發展目標,同時國際學術界通過未來網絡研究項目的大量開發,致力于未來網絡創新實驗平臺的建設,并先后啟動了GENL FIND、4WARD、FIA等項目。
該文從理論層面介紹了SDN網絡的發展現狀、OpenFlow協議的特點,并提出了SDN的體系架構。應用這些概念,設計了基于OpenFlow的架構層次。SDN網絡依托其可編程性、集中控制、資源虛擬化等優勢,必將在工業中廣泛應用。
參考文獻
[1] 趙宏昊,孟凡博,王杰,等.遼寧電力通信網容災體系建設[J].東北電力技術,2013,34(7):10-14.
關鍵詞:數字電視,圖文信息,接口
1引言
數字電視圖文信息服務系統建立的目的主要是為了更好的給用戶提供所需的關于醫療衛生、教育教學、農產品價格和供求等相關信息,對信息資源做到集中管理、共享訪問,最終形成一個有一定規模的圖文信息服務系統。論文參考,圖文信息。為了使各部分模塊之間能夠順暢的銜接,本文介紹了數字電視圖文信息服務系統接口的設計方案。
2圖文信息服務系統外部接口的設計
2.1與門戶的接口
圖文資源中心作為一個獨立的平臺,與門戶登陸系統之間通過接口傳送機頂盒登陸數據信息,如圖1所示。
圖1 門戶系統接口結構圖
門戶系統接口:功能是獲得當前機頂盒的MAC地址。論文參考,圖文信息。
接口協議:通信采集用HTTP協議,通信的數據格式采用XML1.0標準。
2.2與合作方網站的接口
對于開放站點數據庫的合作方,由于不同的合作方其數據庫結構也不盡相同,因此在圖文采集子系統的數據遷移模塊中,分析合作方數據庫結構的協議需要與開放站點做接口。
傳輸數據:合作方向資源中心提供的信息數據。
接口協議:合作方數據源的數據格式協議。論文參考,圖文信息。與開發站點數據庫的通信采集JDBC2.0標準;與XML格式數據源通信,數據格式采用XML1.0標準。
2.3短信平臺接口
此接口留待擴展,當用戶選擇接收手機短信時,有新的留言信息會有手機短信提示,可和現有的短信平臺對接,實現圖文的短信增值。
傳輸數據:留言發件人、留言標題、留言正文。
接口協議:與留言系統數據庫的通信采集JDBC2.0標準;與短信平臺接口數據格式符合短信平臺的協議。
2.4與中小學教育信息系統(PSTIM)接口
2.4.1數據同步
數據同步部分主要功能是基于TCP協議建立socket連接的方式,將中小學教育信息系統中的年級、年級所學科目、年級所學科目版本、知識點、教學周等信息傳遞過來,并將此信息轉化為圖文欄目層次的數據關系,通過此關系可以對學習資料圖文信息進行組織。在圖文中PSTIM傳遞而來的數據將組成為圖文中一個子系統進行管理。
1.接口結構圖
圖2PSTIM門戶系統接口結構圖
2.協議和規范:
TCP協議:從PSTIM中獲取數據采用的協議。
JDBC:數據轉入圖文數據庫中遵守的規范。
HTTP:接口程序與圖文數據庫通信采用的協議。
3.接口實現:
接口實現分為五個模塊(類):中間表、socket通信模塊、傳輸數據分析模塊、數據結構轉化模塊、圖文庫操作模塊。論文參考,圖文信息。
1) 中間表:
圖3 接口圖文與中小學教育數據結構圖
2) Socket通信模塊:
采用成熟的基于TCP協議的socket通信的代碼搭建。根據雙方溝通和《教學管理系統與EPG等系統的接口協議.》文檔,接口同步程序作為socket通信的客戶端。論文參考,圖文信息。根據配置的IP和PORT向服務端發送數據請求。論文參考,圖文信息。服務端數據發生變化由系統外通知,數據通信請求由手動方式觸發。
3) 傳輸數據分析模塊:
傳輸數據分析類根據文檔《教學管理系統與EPG等系統的接口協議》制定數據傳輸協議編寫。
4) 數據結構轉化模塊:
數據結構轉化完畢后在欄目表中層次結構為:中小學教育信息系統->年級->年級所學科目->年級所學科目版本->知識點->圖文學習資料。轉化完畢在圖文中中小教學系統傳遞而來的數據作為一個圖文中一個子系統進行管理。
數據同步完畢后在接口圖文與中小學教育表中層次結構為年級->年級所學科目->年級所學科目版本->知識點。
5) 圖文庫操作模塊:
該模塊主要由操作欄目和操作接口圖文與中小學教育兩個表。功能分為:
a) 對這兩個表進行插入、修改、更新操作。
b) 獲得同步數據在圖文中所屬的rootid。
c) 刪除欄目(刪除其下所有子欄目和信息)。
3總結
數字電視圖文信息服務系統為數字電視增值業務的發展提供了更為廣闊的平臺,設計適合信息服務平臺各類信息模塊聯接的接口,是圖文信息服務系統中的重中之重。本文所設計的方案,滿足了各模塊之間的信息交互,為數字電視增值業務的發展奠定了堅實的技術基礎。
參考文獻:
[1]鄧曉燕.廣播電視臺圖文信息頻道制播系統的升級和改版初探[J]. 技術與市場,2009,(04).
為了保證PLC與變頻器之間的數據通信準確、及時、穩定可靠,必須對它們的硬件和軟件進行統一的規定和處理,必須解決數字傳輸的一系列技術問題。
第一要解決的是通信接口。PLC和變頻器都必須具備有能夠進行通信的硬件電路,然后用導線將它們連接起來進行通信。這種硬件電路稱為通信接口。硬件電路的設計標準不同,就形成了各種不同接口標準,如RS232、RS422、RS485等。PLC對變頻器進行通信控制,雙方的接口標準必須一致。如果不一致,就必須在中間加上接口轉換設備,讓接口標準編程一致。
第二要解決的是通信傳輸方式。所謂通信傳輸方式,是指通信雙方按照什么規定來進行數字通信,如并行還是串行、同步還是異步、單工還是雙工、基帶傳輸還是頻帶傳輸、用什么樣的傳輸介質、通信速率是多少,等等,這些技術問題一部分是通過硬件來完成的,另一部分是通過通信設置來完成的。
第三要解決的是通信控制數據內容的約定,如控制哪個變頻器、控制的內容如何表示等。這些問題是由雙方對通信的約定——通信協議來解決的。
一般按控制功能和通信數據流向可分為四種:
對變頻器進行運行控制;
對變頻器進行運行狀態監控;
對變頻器相關參數進行設定修改;
讀取變頻器參數值。
所謂通信協議,是指通信雙方對數據傳送控制的一種約定。約定中包括對通信接口、同步方式、通信格式、傳送速度、傳送介質、傳送步驟、數據格式及控制字符定義等一系列內容作出統一規定,通信雙方必須同時遵守,因此又稱為通信規程。
廣義的通信協議應該包含兩部分內容:一是硬件協議,即所謂的接口標準;二是軟件協議,即所謂的通信協議。
硬件協議—串行數據接口標準和通信方式。串行數據接口標準屬于物理層。而物理層是為建立、保持和斷開在物理實體之間的物理連接,提供機械的、電氣的、功能性的特性和規程。
因此,串行數據接口標準對接口的電氣特性要作出規定,如邏輯狀態的電平、信號傳輸方式、傳輸速率、傳輸介質、傳輸距離等;還要給出使用的范圍,是點對點還是點對多。同時,標準還要對所用硬件作出規定,如用什么連接件、用什么數據線,以及連接件的引腳定義和通信時的連接方式等,必要時還要對使用接口標準的軟件通信協議提出要求。在串行數據接口標準中,最常用的是RS232和RS485串行接口標準。
在PLC通信系統中,采用的是一步傳送通信方式,這種方式速率低,但通信簡單可靠,成本低,容易實現。異步傳送在數據傳送過程中,發送方可以在任意時刻傳送字符串,兩個字符串之間的時間間隔是不固定的,接收方必須時刻做好接受的準備。也就是說,接收方不知道發送方是什么時候發送信號,很可能會出現當接收方檢測到數據并作出響應前,第一位比特已經發過去了。因此,首先,要解決的問題就是如何通知傳送的數據到了。其次,接收方如何知道一個字符發送完畢,要能夠區分上一個字符和下一個字符。再次,接收方收到一個字符后如何知道這個字符有沒有錯,這些問題都是通過通信格式的設置來解決的。
在硬件協議—串行數據接口標準中對信號的傳輸方式作出了規定,而軟件協議即通信協議則主要對信息的傳輸內容作出規定。
信息傳輸的主要內容是:對通信接口提出要求,對控制設備間通信方式進行規定,規定查詢和應答的通信周期;同時,還規定了傳輸的數據信息幀(即數據格式)的結構、設備的站址、功能代碼、所發送的數據、錯誤檢測,信息傳輸中字符的制式等。
關鍵詞:軟交換;綜合接入設備;簡單會話協議;用戶
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2011)14-3249-02
SIP Protocol Design Based on Integrated Access Device
JIANG Guo-song
(Huanggang Normal University,Huanggang 438000, China)
Abstract: IAD SIP module is part of the upper layer application software system to coordinate, control board SIP protocol stack and hardware between the work and information exchange process. In this paper, functional requirements IAD integrated access devices designed to SIP protocol module structure, and integrated access devices and software based on the exchange interaction between the media gateway controller, developed a way of processing interface and interfaces to achieve a comprehensive Access device and the seamless connection between the MGC.
Key words: soft switch; IAD; SIP; UA
隨著三網合一的發展,基于TDM的PSTN話音網必將和分組交換數據網融合,形成可以傳遞話音和數據等綜合業務的新一代網絡。如何靈活,有效地實現現有的PSTN網與分組交換網的互通,將PSTN逐步的向IP網絡演進,其很重要的一點就是如何接入,即如何將PSTN信號轉化為能在IP網絡上傳送的信號。由于軟交換是多種功能實體的的集合,是下一代電信網中語音/數據/視頻業務呼叫、控制、業務提供的核心設備,也是目前電路交換網向分組網演進的主要設備之一。
1 SIP協議模型
IAD設備可以建立、修改和釋放多媒體會話,這些會話包括基本的電話呼叫、多媒體會議等。作為一個終端接入設備,IAD可以檢測到來自硬件板卡的交互信息,如設置物理端口的參數,打開、關閉一個物理端口,設置RTP會話的參數,打開、關閉一個RTP會話,在物理端口上發信號(如振鈴音),播放語音(可選功能),在物理端口上檢測事件(如DTMF),設置編碼方案,接收RTCP報告。IAD收到硬件板卡的交互信息后,控制SIP協議棧建立、修改和釋放呼叫,并接收對端IAD設備發送過來的呼叫指示信息。作為支持SIP協議的IAD設備,既可以作為主叫發起呼叫,也可以作為被叫接受呼叫。因此,SIP IAD的UA既具有UAC的功能,也應具有UAS的功能。
分層次模型:采用層次化的組織方法,每一層向其上層提供服務,并利用下層的服務。在一些分層系統中,內部層次全部被隱藏起來,只有外部層次和一部分精心選擇的功能可以被系統外部所見。在這種系統中,軟件部分是實現在層次結構中的一些虛擬機,連接是層次與層次之間交互的協議。其主要優點是它支持基于抽象程度遞增的系統設計,使得設計者可以把一個復雜系統按遞增的步驟分解開;細節屏蔽,每層對其上層而言,都是一個比其下層更適用、更高效的虛擬存在。這使得其實現和調試可按層組織、功能擴展也很方便,適用于多人分工、協作開發;支持功能增強,功能的改變最多影響相鄰的上下層;支持軟件復用。但是,并不是每個系統都可以很容易地劃分為分層次模型,甚至即使一個系統地邏輯結構是層次化地,出于對系統性能地考慮,不得不把一些低級或高級地功能耦合起來。另外,很難找到一個合適地、正確地層次抽象方法。分層次模型最廣泛應用于分層通信協議。
客戶/服務器模型:將軟件對資源的使用分成需者(客戶)和供者(服務器)兩個部分。服務器代表一個進程,它對其他的進程(客戶機)提供服務,它接收客戶的請求消息,然后發送響應消息給客戶機。客戶/服務器模型的特點是各系統構成部件小且自含,實現單一、可靠。另外,由于服務器可運行在各種地方,使該結構有很好的硬件結構適應能力,特別適合于多處理系統的分散處理。客戶/服務器模型用于人機界面與系統的關系和資源管理。
2 設計思想
從軟件工程的角度來分析,我們首先必須進行結構設計,確定軟件系統由哪些模塊組成,以及這些模塊之間的關系。軟件系統結構是以選取最佳的軟件模型來實現的。軟件模型是將系統所提供的特性、服務以及系統所執行的任務統一成一體的概括框架。軟件模型選擇和建立的適當與否直接影響到軟件實現的難易和系統性能的高低。軟交換呼叫處理系統的設計和實現采用了分層次模型、客戶/服務器模型和面向對象模型,以保證系統設計的高效性、可靠性、可擴展性。
3 系統結構和處理流程
3.1 系統結構
根據系統描述和總體設計說明,結合SIP協議棧和硬件板卡的適配,有圖1的SIP IAD系統結構圖。其中SO層是SIP協議棧層,HR是RTP協議棧,PG是板卡適配層,呼叫控制層負責整個呼叫過程的控制,可以定義為SV層或者DS層(IAD SIP)。關于呼叫控制層與PG層、SO層的接口名按照Trillium的方法定義,既呼叫控制層和PG的接口名定義為Pgt,呼叫控制層與SO層的接口名定義為Sot。接口之間的原語名定義也完全按照Trillium的方式定義。
3.2 處理流程
以SIP IAD終端既可以做主叫發起呼叫,也可以做被叫接受呼叫。基于SIP的IAD和基于H.248的IAD有所不同,H.248 IAD必須有MGC的參與才能運行,而基于SIP IAD對MGC可選,只有電信級的SIP IAD才需要MGC的參與。
圖2中假定IAD1為主叫,IAD2為被叫,IAD1和IAD2之間正常通信的最簡單的一種情形,不設及地址解析和路由,沒有MGC的參與。實際主被叫IAD通信,可能要經過MGC的控制,以便地址解析和呼叫計費。
4 接口設計
SIP IAD模塊的接口分內部接口和外部接口。內部接口是指呼叫控制層SV和SIP協議棧SO層的接口Sot,外部接口是指呼叫控制層和PG層的接口Mgt以及呼叫控制層和HR的接口Hrt。對于內部接口,主要是處理SV層控制SIP協議棧發送和接收SIP消息,而對于外部接口,主要是處理SV層和PG層的消息交互,實質上是處理PG層消息和從SIP協議棧接收/發送消息的映射,同時將SIP的SDP中的媒體信息傳送給HR層,打開/關閉RTP端口。內部接口和外部接口相互獨立,相互沒有本質的聯系。此模塊要設計好,比較重要的一環是設計好外部接口原語及相應的數據結構。對于外部接口,要處理好以下消息:
當SV層收到PG發送來的消息時,首先判斷PG發送來的信號類型:
1)主叫摘機信號
2)被叫摘機信號
3)主叫掛機信號
4)被叫掛機信號
5)主叫電話號碼(地址)
6)被叫電話號碼(地址)
7)媒體通道信息(用來構建SDP消息)
根據相應的消息類型來構建響應消息來控制SIP協議棧發送相應的SIP消息。同時,當SV層收到SIP協議棧送來的消息時,根據消息的類型向PG層發送消息:
1)Alter tone消息
2)Ringing tone消息
3)掛機請求消息
由此構建SV層和PG層交互的數據結構SvEvnt如下:
struct SvEvnt
{CmMemListCp memLst;
UConnId spConnId;
UConnId suConnId;
TknStrOSXLcaller;
TknStrOSXLcallee;
PGMEDIADESC mediaDesc;
}typedef struct
{U8 pres;
U8 num;
U16port;
U8 fmt[PGMEDIA_FMT_LEN_MAX];,
}PGMEDIA_FMT;
typedef struct
{U8pres;
U8used; /* only for Pg,
TRUE=used,FALSE=nouse*/
CmInetIpAddraddr; /* sdp, c=...IPv4*/
PGMEDIA_FMT audio;/* sdp, m=audio ...*/
PGMEDIA_FMT video;/* sdp, m=video ...*/
}PGMEDIADESC;
4 結束語
本文通過對軟交換系統下媒體網關控制和綜合接入設備之間的信令交互方式,采用了SIP協議規范,并根據中國電信規范的要求設計了綜合接入設備的SIP協議模塊,實現綜合接入設備的SIP協議注冊以及信令處理流程,實現了綜合接入設備與MGC之間的無縫對接,達到了語音的端到端數字化。
參考文獻:
[1] 信息產業部,2001.軟交換設備總體技術要求[S].
[2] 信息產業部,2000.IP電話網關設備技術要求[S].
[3] 信息產業部,2000.IP電話網關設備互通技術要求[S].
[4] 信息產業部,2000.IP電話網關設備測試方法[S].
[5] 信息產業部.Draft Recommendation H.248 (clean text).ITUT Study Group 16,15th June 2001.
[6] M.Arango et.Media Gateway Control Protocol (MGCP),October,1999.
清華大學嵌入式微處理器芯片設計為國家重點863項目,單芯片多處理器設計為項目的一個延伸。單芯片多處理器是提高處理器性能的有效途徑,具有低耦合度、粗粒度并行性的主要特點。清華大學已成功開發出具有自主知識產權的MIPS 4Kc架構的32位微處理器--THUMPl07。該處理器具有內核性能高、面積小、功耗低的優點。使其經過裁減非常適合作為單芯片多處理器的內核。
本次單芯片多處理器的設計將兩個Thumpl07內核集成在一個芯片上,兩個內核處于完全對等地位,實現進程級的粗粒度并行。由于已經具有可以利用的內核,開發的重點就集中在高速緩存(Cache)一致性的實現上。芯片采用了基于內部總線寫更新監聽的高速緩存一致性協議,具有控制邏輯簡單、可擴展性好的特點。內部總線采用適合片上系統通信、高可配置性的WISHBONE總線。使用該片上總線有效地解決了IP核可移植性、設計復用的問題[2l]。
1 WISHBONE總線
WISHBONE最先由Silicore公司提出,現在被移交給OpenCores組織維護。由于其開放性,現在已有不少用戶群體。特別是一些免費的IP核,大多數都采用WISH-BONE標準。該總線結構具有公用的接口規范方便結構化設計,有效地解決了IP核可移植性、設計復用的問題。
WISHBON耳總線為半導體內核提供了可配置的互連方式,能夠使各種內核互連起來形成片上系統;WISH-BONE總線具有很強的兼容性,提高了設計的可重用性;WISHBONE總線的接口獨立于半導體技術,其互連方式既可以支持FPGA設備,也可以支持ASIC設備;WISHBONE總線協議簡單、易懂。
WISHBONE總線是一種主/從接口架構的總線技術,如果具有有效的仲裁機制,總線系統可以支持多個ne/從接口;WISHBONE總線的可配置性主要體現在支持點到點、共享總線、數據流、交叉開關型的互連方式;WISHBONE總線協議既包含了一種容易使用、可靠性高、易測試、所有總線事務都可以在一個時鐘周期內協同的同步傳輸協議,也包含了標準時鐘周期的異步傳輸協議;WISHBONE總線的同步傳輸協議可以工作在一個大范圍的時鐘頻率上。這樣WISHBONE總線接口既可以與內核時鐘周期同步,也可與不同的目標設備同步,時序都非常簡單。此外,WISHBONE總線還具有如下特點:
·簡單、緊湊的硬件邏輯接口,需要更少的邏輯門;
·支持流行的單字讀/寫、塊讀/寫、讀-修改-寫的總線協議;
·可調整的總線和操作數位寬;
·支持大端(big endian)和小端(1ittle endian)兩種數據表示方法;
·握手協議能夠控制數據傳輸速率;
·支持單周期數據傳輸;
·從接口的部分地址解碼;
·根據系統需要,用戶可自定義增加接口信號;
·系統包含多個MASTER接口時,用戶可以自定義總線仲裁方式與算法。
圖2
2 實現方案
單芯片多處理器的每個內核都有分離的16KB指令高速緩存(1Cache)和16KB數據高速緩存(DCache);指令高速緩存和數據高速緩存都采用兩路組相聯的映射方式;每塊都包含8個字;采用虛擬地址定位、物理地址比較的尋址方法;替換方式為LBU(最近最少使用替換)。
指令高速緩存不涉及一致性問題,不多做說明。數據高速緩存采用基于監聽總線的寫更新一致性協議Dragonl[3]
協議狀態說明見表1。
表1 協議狀態
狀 態說 明
干凈獨占(E) 只有一個緩存有這一存儲塊的拷貝,并且還沒有被修改(主存狀態也有效)。 干凈修改(SC) 潛在的兩個或多個緩沖有這一存儲塊,主存不一定是最新的。 共享已修改(SM)潛在的兩個或多個緩沖有這一存儲塊,主存不是最新的。該塊在被替換時,要更新主存(寫回)。一個存儲塊在一定時間內只能在一個緩沖內共享已修改狀態。 獨點已修改(M)存儲塊的內容已經被修改,并且只在該存儲塊里,發生替換需要更新主存的內容。 確定一致性協議后,單芯片多處理器的數據高速緩存單元整體設計見圖1。
片內總線采用WISHBONE總線共享型連接,每個內核的數據高速緩存的控制單元都包含WISHBONE總線的一個主接口(MASTER)和一個從接口(SLAVE);數據總線為32位;地址總線為33位,其中最高位是兩個從接口的選擇位;片內總線采用預先同步傳輸協議;仲裁方式為輪換型;片外總線接口與廣泛應用的工業標準SYSAD系統總線兼容。
在UNCAHCE空間發生的讀寫操作,直接訪問外部總線,與主存通信;在CACHE空間發生的讀寫操作,過程如下所述:
讀缺失:當一個內核的數據高速緩存發生讀缺失,由本地主接口通過片內總線向遠端數據高速緩存發出讀請求,遠端從接口通過片內總線應答請求。如果應答有該單元數據,就由遠端數據高速緩存調來一個數據塊(8個字);如果沒有,本地主接口結束片內總線周期,轉而訪問外部總線,由主存調人數據。
寫缺失:內核發生寫缺失時,前半部分的操作與讀缺失完全一致;只是如果缺失單元是從遠端數據高速緩存調來的,由于采用基于寫更新的Dragon協議,所以在完成片內總線塊傳輸事務后還要產生一個單字寫總線事務,更新遠端數據高速緩存單元。
讀命中:不會產生任何總線事務。
寫命中:如果該單元的原來狀態是SC或SM,基于寫更新協議,由本地主接口通過片內總線向遠端數據高速緩存發出寫請求,遠端從接口通過片內總線應答請求。如果應答有該單元數據,則通過一個單字寫總線事務更新遠端數據高速緩存單元;如果沒有,結束片內總線周期。
替換:實現寫回協議,只有被替換出的單元狀態為SM或M狀態,才通過外部總線更新主存,其他情況拋棄即可。
注意:完成上述操作后要根據DRAGON協議,更新本地和遠端DCahe單元的相關狀態。
3 總線事務時序分析
由前部分的說明發現在內部總線上可以產生三種類型的總線事務:讀缺失時,塊傳輸總線事務;SM或SC狀態寫命中時,發生單宇寫總線事務;寫缺失時,先是一個塊傳輸總線事務而后在本地寫操作完成后,一個單字寫總線事務更新遠端的數據高速緩存單元。以下是塊傳輸和單字寫總線周期具體的時序分析,下文提到的具體信號其意義可以查閱參考文獻[1]。
塊傳輸時序:主接口通過聲明CYC_O申請總線的使用權,同時也給出STB_O、CTI_0(010)、WE_O(低電平)和ADR_O;經過若干時鐘周期等待后,如果遠端從接口給出ACK_I信號,同時給出的SHARE_I信號為低電平(說明遠端數據高速緩存沒有所需要的數據塊,.SHARE_I為自定義的信號),這時主接口忽略DAT-I信號,下一個時鐘周期撤銷CYC_O信號,結束片內總線周期;如果給出AClI信號的同時,SHARE_I信號為高電平(說明遠端數據高速緩存有所需要的數據塊),接收DAT-I上的數據;而后7個時鐘周期內,每個時鐘周期ADR_O數據加4,DAII上的數據根據地址相應地變化,在第7個數據傳輸的時鐘周期CTI_O變為111,告訴遠端從接口這是最后一個傳輸時鐘周期,下一個時鐘周期:降完成這個總線事務;最后一個時鐘周期主接口撤銷CYC_O信號,結束片內總線周期。
內塊傳輸時序見圖2。
單字寫總線周期:主接口通過聲明CYC_O申請總線的使用權,同時也給出STB_O、CTI_O(111)、WE_O(高電子)、ADlO和DAT-0;經過若干時鐘周期等待后,如果遠端從接口給出ACK_I信號, 同時給出的SHARE信號為低電子(說明遠端數據高速緩存沒有所需要的數_I據塊),主接口下一個時鐘周期撤銷CYC_O信號,結束片內總線周期;如果給出ACK_I信號的同時,SHARK-I信號為高電子(說明遠端數據高速緩存有所需要的數據塊),說明從接口已經用DAT-O上的數據更新了相應的數據單元,下一個時鐘周期撤銷CYC_O信號,結束片內總線周期。
單字寫時序見圖3。
塊傳輸總線事務時序圖2,單字寫總線事務時序圖3中WAIT表示主接口等待總線仲裁和從接口的應答,需若干時鐘周期,最快的情況下只要一個時鐘周期。 總線仲裁:如果兩個數據高速緩存的主接口同時請求,由仲裁單元決定哪個主接口可以使用片內總線,仲裁的優先級算法是輪換法。數據高速緩存的主接口,在聲明CYC_O申請總線后,如果AClI一直是低電平無效,但同時該數據高速緩存從接口的CYC_I信號有效,說明數據高速緩存主接口沒有得到總線使用權,主接口撤銷CYC_O信號,該數據高速緩存響應從接口的操作,操作完成后,主接口再次聲明CYC_O信號請求總線;相反,如果數據高速緩存主接口的ACK_I信號高電平有效,說明得到了總線使用權,可以使用總線。
關鍵詞:無線傳感器網絡; 低壓電力載波通信; 網關; 嵌入式Linux
中圖分類號:TN911-34; TP336 文獻標識碼:A 文章編號:1004-373X(2011)24-0087-03
Design of Multi-Functional Gateway for Integrated Wireless Sensor Network,
Carrier Communication and Multiple Field Bus
YE Song
(Department of Computer Science and Technology, Jinling science and technology College, Nanjing 211169, China)
Abstract: Wireless sensor network (WSN) and low-voltage power line carrier communication are being gradually applied in edifice control system. To implement the interconnection and integration of the two communication networks with the existing multiple field bus networks, a design concept of the multi-functional gateway based on ARM microprocessor SEP4020 is proposed. The design methods of hardware and software for multiple kinds of interfaces, including Ethernet, RS 232, RS 485, WSN are explored. Multiple communication protocols for WSN, field bus and Ethernet are implemented. The interconnection of WSN and field bus networks is achieved successfully.
Keywords: wireless sensor network; low-voltage power line carrier communication; gateway; embedded Linux
收稿日期:2011-08-02
基金項目:江蘇省教育廳高校自然科學研究項目(09kjd510008)
0 引 言
無線傳感器網絡作為一項新興的技術,多用在用于軍事、環境監測和預報、健康護理、智能家居、智能樓宇、城市交通、倉庫管理,農林業監控等領域,傳感器節點部署于監測區域中,負責監測區域內的信息采集,其中部分傳感器節點具有路由功能,通過無線組網方式構成網絡,將采集到的數據以自組多跳的網絡方式傳送到用戶終端;電力線載波通信網絡方興未艾,電力線載波多用在如遠程抄表等直接與電力線有接觸的設備中,與采用現場總線的傳統傳感器網絡相比,電力線載波通信網絡直接通過電力線進行數據傳輸,設備部署方便,因為采用有線通信,通信可靠性較高 [1 ]。
目前這兩個網絡的大部分研究還集中在自身網絡上,較少研究它與其他網絡的互聯和集成問題。已有的控制網絡(如現場總線、工業以太網等)也很少考慮到它們與無線傳感器網絡、電力線載波通信網絡的集成問題,相關的集成技術研究和設備開發還處于起步階段。據此,本文設計了一種支持多接口多協議的多功能網關,可解決WSN無線網絡、電力線載波通信網絡與其他網絡的互聯集成問題。
1 總體設計
多功能網關在異構網絡中負責建立異構網絡之間的連接,無線傳感器節點測量的信息在無線傳感器網絡中通過多跳接力的方式傳輸,并經過網關轉換成其他介質和協議,從而傳送給外部網絡和用戶。如圖1所示。
現有的WSN產品中,大多只提供RS 232串行接口,用以連接上位機,實現監控。但是在現實的工控項目中存在各種各樣的接口和總線,需要無線傳感器網絡與其他總線網絡互相傳輸信息。因此,需要一種能夠支持多種接口的網關。當連接某種接口或通信協議時,稍加修改該網關的軟件和配置硬件模塊就可以快速投入使用 [2 ]。
本文設計的多功能網關可支持多種接口和多種應用模式。其主要支持以太網,RS 232,RS 485,GPRS和電力載波通信等接口。支持的應用模式包括:通過GPRS接口連接上位機,實現監控、程序下載等功能;通過RS 485接口實現Modbus協議接入現場總線或其他控制總線中;通過以太網接口接入工業以太網,將無線傳感器網絡作為子網接入控制網絡;通過以太網接口,構建嵌入式Web服務器。客戶機可以以網頁瀏覽的方式查看WSN中所有傳感器節點的狀態和數據,并進行遠動控制。
2 硬件設計
多功能網關主要包括主系統部分(控制器、存儲器)、電源模塊、ZigBee無線通信模塊、以太網通信模塊、GPRS通信模塊、電力載波通信模塊(PLC)和人機接口模塊等。硬件總體框圖如圖2所示。
系統硬件分為核心板、擴展底板和外接通信模塊3部分。核心板包括主控制器和存儲器;外接通信模塊包括ZigBee無線模塊、GPRS模塊和電力載波通信模塊;核心板和外接通信模塊插接在擴展底板上,并在擴展底板上擴展電源電路、調試接口、RS 485通信模塊、人機接口等電路。
2.1 微控制器選型
多功能網關的功能比較復雜,需要實現多種接口和協議的轉換,由于外接通信模塊較多,應盡量選擇性能強大、通信接口豐富,內置所需各種接口的控制器,以降低成本。
本文選擇基于ARM體系結構的微控制器搭建整個系統。該結構的微控制器具有強大的功能和豐富的接口擴展,在嵌入式智能網絡設備的設計中得到了大量應用。通過分析對比常用的多種ARM7微處理器,最終選擇了基于ARM720T核心的工業級微控制器SEP4020。該款微控制器由東南大學國家專用集成電路系統工程技術研究中心設計,集成MMU單元,內置以太網MAC,LCD接口,可通過外部總線接口(EBI)進行擴展,功能豐富、性能強大,接口豐富,功耗較低,完全適合于工業控制的需要 [3 ]。
2.2 串行通信接口擴展
SEP4020內置4路UART接口,其中一路設計時使用跳線的方式連接MAX3221芯片,作為DEBUG串行RS 232接口,主要用于調試時發送信息,同時也可復用為紅外接口;其余3路直接以TTL電平引出,分別連接ZigBee無線通信模塊、GPRS通信模塊、電力載波通信模塊。另外利用SEP4020提供的SPI接口連接SC16IS752芯片進行UART接口擴展,該芯片是NXP 公司推出的一款通過SPI/I2C 總線擴展為UART 接口的芯片,可以擴展出兩個通道高性能的UART [4 ]。用來連接RS 485系列隔離收發器模塊,該模塊內部集成電源隔離、電氣隔離、RS 485接口芯片和總線保護器件,具有很好的隔離特性。整個串行通信接口結構如圖3所示。
2.3 外接通信模塊
外接通信模塊為ZigBee無線通信模塊、GPRS通信模塊、電力載波通信模塊。無線模塊的ZigBee通信芯片選用TI 公司生產的2.4 GHz射頻系統單芯片CC2430,該芯片整合了ZigBee RF前端、內存和8051微控制器;GPRS通信模塊選用SIM300 GSM/GPRS模塊,該模塊主要應用于WLL,M2M和手持設備方面,實現語音、SMS、數據和傳真信息的高速傳輸;電力載波通信模塊采用擴頻通信技術, 選擇北京福星曉程公司的PL3106 載波芯片,內嵌擴頻通信調制/解調電路和8051微控制器,內部集成2路A/D,其中一路用來采集負載端電壓,另一路用來采集負載電流,可以實現負載功率的精確測量 [5 ]。的配置電路主要包括功率放大電路、載波耦合電路、濾波整形電路、諧振電路及接收電路等。以上通信模塊與SEP4020之間均使用UART接口進行通信。
3 軟件設計
軟件平臺采用一種開放源碼的Linux 操作系統,便于在其基礎上完成各項相關應用程序的開發。軟件主要涉及到操作系統的裁剪與編譯、驅動程序編寫和系統主程序編寫。多功能網關軟件體系架構如圖4所示。
圖4 多功能網關軟件體系架構由底層到高層,軟件部分依次包括:BootLoader移植、Linux操作系統移植、設備驅動程序編寫、嵌入式端軟件和協議轉換設計、主站監控軟件設計等[6]。
3.1 BootLoader與Linux
BootLoader是系統加電后運行的一小段程序,用來初始化硬件設備、建立內存空間映射,為調用操作系統內核準備好正確的環境,同時也將啟動內核所需要的一些信息通過相關機制傳遞給內核,并引導和加載內核。它的主要功能是完成硬件設備的初始化、操作系統代碼的搬運,并提供一個控制臺及一個命令集在操作系統運行前操控硬件設備[7]。
Linux 2.6 在內核主體中加入了提高中斷性能和調度響應時間的改進,其中有三個最顯著的改進:采用可搶占內核、更加有效的調度算法以及同步性的提高。
3.2 通信網關
網關的核心功能是完成協議轉換和數據中轉,即將ZigBee和載波協議的數據轉成TCP/IP格式的數據,并在ZigBee網絡、Modbus、以太網、電力載波通信和GPRS遠程通信網之間無障礙的交互數據。
網關軟件包括:數據采集、數據存儲、數據顯示(測試用)和遠程數據傳輸。數據采集功能負責獲取從串口傳過來的數據。具體過程是主線程中初始化并打開串口,建立串口接收信號,在信號處理函數中。處理接收到的數據。當接到數據包時產生信號,在信號處理函數里調用協議轉換程序按照ZigBee,Modbus和載波協議的定義解析數據,解析出原始數據中的節點號、傳感器模擬量、開關量值等信息[8]。整個網關對多種協議的處理采用事件通知和分發機制,如圖5所示。利用多線程技術,將數據處理部分、數據存儲部分分別放在單獨的線程中處理,以提高程序的運行速度。通過在Linux上移植了嵌入式數據庫系統,可以有效的實現實時數據的存儲。
網關通過GPRS與遠程主站通信,主站以自身設置的通信協議發送指令,指令下達到網關后,網關解析主站的指令并獲取操作對象,依據操作對象選取載波協議或者ZigBee,對指令進行再封裝,并下發指令至操作對象,等待對象返回信息,在獲得對象的信息后,根據選取的協議解析對象數據,使用主站協議重新對該數據進行封裝,而后將數據上傳至主站[9]。
圖5 多種協議之間的事件通知和分發機制網關是建立在傳輸層以上的協議轉換器,通常它連接兩個或多個相互獨立的網絡,每接收一種協議的數據包后,在轉發之前將它轉換為另一種協議的格式 [10 ]。該網關不僅實現了4種協議的轉換和4種工控網絡的互聯,而且通過TCP/IP協議連入工業以太網,實現了與工業以太網之間的數據互傳。通過在Linux上移植了嵌入式Web服務器功能,使操作人員能夠通過網頁遠程監控網絡節點運行狀態。
4 結 語
該系統將WSN、電力線載波、以太網和公共通信網絡有機地結合在一起,將信息匯集之后通過以太網接口或者GPRS達到遠程傳輸的目的。通過在一個軟硬件平臺上提供了工業控制中常見的多種總線和網絡的接口,能夠支持多種應用模式。該設計適合于現實應用中的多種需求,可以根據具體應用進行快速的裁剪和配置,具有實際的應用價值。
參 考 文 獻
[1] 趙俊淋,楊揚,易衛東.智能樓宇中無線傳感網混合接入設計[J].電子測量技術,2008,31(11):87-91.
[2] 劉承龍,凌志浩.基于AT91SAM9260的ZigBee多功能網關設計[J].自動化儀表,2009,30(12):30-33.
[3] 張陽,程杰.基于SEP4020的嵌入式Linux系統移植[J].電子技術,2010(1):15-17.
[4] 徐昌偉.用I2C總線轉UART芯片實現通用串口擴展[J].銅業工程,2009(2):54-56.
[5] 高蒙,張秋菊,馮濤.基于電力載波通信的供電鎖相測控系統[J].現代電子技術,2009,32(1):122-125.
[6] 詹海菊.基于Linux的傳感器網絡網關設計[J].微計算機信息,2009,25(17):102-103.
[7] 丁小俊.基于S3C2410A的嵌入式系統的U-Boot移植[J].現代電子技術,2009,32(22):26-28.
[8] 夏一行,曲琳,黃軼倫,等.嵌入式數字化儀器設備UML 應用軟件框架研究[J].浙江大學學報:工學版,2008,42(7):1174-1178.
[9] 陳樂,唐波,盧力.嵌入式環境下串行幀通信的設計與實現[J].現代電子技術,2010,33(23):60-62.
>> 基于LWIP的串口/以太網協議轉換器的設計與實現 基于RapidIO協議的高速數據互聯模塊設計 基于ARM智能電力協議轉換器的設計 基于IPV4和IPv6雙協議棧互訪的校園網的設計和實施 ProfibusDP/ Modbus協議轉換模塊研究與設計 基于FPGA的電臺接口轉換模塊設計 關于SDH同步網中光電轉換模塊的設計研究 基于模塊選項教學轉換的研究 虛擬試驗系統協議轉換模塊研制 基于VPC3的PROFIBUS—DP協議轉換從站設計 基于嵌入式的協議轉換設備設計與實現 基于協議轉換的安全網關原型系統設計與實現 基于DM642的實時多協議轉換器設計 基于AVR處理器的RS232-CAN通信轉換模塊的設計 基于FT232R的USB-RS232轉換模塊的設計 基于雙策略的WAPI協議改進 基于RS485串口的PLC互連的通訊協議設計 基于IP安全協議的陜西地方電力調度數據網的設計和實現 基于對等網協議的BotNet 防御系統的設計 基于壓縮感知的無線傳感網稀疏數據傳輸協議設計 常見問題解答 當前所在位置:
關鍵詞:KS28873;單片機;雙網口;RS485;RS232;協議轉換
DOI:10.3969/j.issn.1005-5517.2015.10.008
基金項目:國家高新技術研究發展863計劃(2011AA05A305)
魯錦鋒(1983-),男,碩士,中級工程師,研究方向:網絡通信。
引言
隨著工業4.0時代的到來,工業設備的智能化和網絡化成為發展趨勢,而大量已有設備多采用低速和非智能的RS485總線,人們對工業網絡的信息獲取要求越來越高,要實現統一、高效和安全的設備管理,就對總線速度提出來高需求,設備IP化和網絡化也是必然趨勢。
針對新建設備網絡和舊設備網絡化改造兩方面問題,本文提出的雙網口轉換模塊,既可對新設備進行網絡化設計,又能對舊設備進行網絡化改造。具有低成本、高可靠等優點。
1.硬件設計
1.1模塊原理
如圖1所示,模塊包含兩個子模塊,交換子模塊和轉換子模塊。
交換子模塊的主要器件為KS28873[1],包含了兩個對外的RJ45接口(標準網口)和一個對內的RMII接口,其中對外RJ45網口由KS28873的兩組標準差分總線經網絡變壓器轉換生成,RMII接口由KS28873的標準RMII總線[2]轉換而來。交換子模塊有兩個主要功能,一是實現兩個對外網口間的數據交換,該過程完全由KS28873芯片自動完成,不需要軟件參與;二是完成兩個對外網口與對內RMH接口間的數據交換,該過程需要與轉換子模塊配合進行。
轉換子模塊主要器件有PIC32MX695F512H[4]、MAX485和MAX232芯片,對內的RMII接口由PIC32MX695F512H的RMII接口生成,與交換子模塊進行數據通信,對外的RS485和RS232接口由PIC32MX695F512H的兩路獨立UART接口經MAX48560MAX232芯片轉換而來,可以與另一個系統進行數據交互。
1.2雙網口電路
KS28873RLLI的電源包括數字電源+3.3V和+1.8V,以及模擬電源+3.3A和+1.8A。使用外部25MHZ有源晶振。復位信號由PIC32單片機控制。芯片工作溫度范圍-40℃~85℃。
KS28873的配置方式有軟件和硬件兩種。軟件配置使用SPI或I2C總線進行,通過對KS28873內部寄存器進行讀寫操作,完成工作模式配置。硬件配置采用芯片上電時讀取器件管腳電平來完成,在電路設計時需要根據工作模式預先對管腳進行上下拉操作。
表1給出了網口1、網口2和RMII總線在KS28873芯片的管腳分布。網口1和網口2為對外網口。RMII接口與PIC32單片機的RMII接口連接。
1.3單片機以及電路
單片機PIC32MX695F512H主要使用資源包括UART1、UART2和RMH接口。其中UART1和UART2分別經過MAX232和MAX485芯片轉換成RS232和RS485接口。RMII接口與KS28873的RMII接口連接。該部分電路成熟度高,在此不作贅述。
2.軟件設計
2.1軟件架構
軟件按照分層思路設計,有驅動層、適配層和應用層。如圖2所示。
驅動層主要完成與硬件相關的寄存器配置,從硬件寄存器接收數據,傳入適配層,或從適配層接收數據,傳給硬件寄存器。
適配層隔離了應用層和驅動層的耦合,實現Modbus-RTU協議、Modbus-TCP[3]和IEC104協議的解析,根據不同協議從應用層獲取相關數據,進行格式組幀后,傳入驅動層發送,或者從驅動層獲取數據幀,按照不同協議解析出有效數據,傳入應用層。
應用層主要完成數據存儲和映射功能,把來自于不同協議的數據進行綜合,按照一定格式進行存儲,并實時刷新。
2.2軟件流程
軟件流程如圖3所示。進入主函數后依次進行MCU、驅動層、適配層和應用層的初始化工作,再進入主循環,主循環共包括3個子任務,RS232子任務、RS485子任務和網口子任務。每個子任務主要完成從驅動層接收并解析數據幀,傳入應用層;或者從應用層獲取實時數據,按照協議進行組幀后,傳入驅動層發送。
為了提高軟件執行效率和可靠性,采用時分方式進行子任務調度,調度時間間隔為10ms。系統使用1ms的時鐘節拍工作,進入主循環前時間計數器t清零,第10ms調用RS232子任務,第20ms調用RS485子任務,第30ms調用網口子任務,并清零時間計數器t。
3.組網模式
鏈式的組網模式可以替代原有RS485總線。再增加一條網線,可以實現環網,起到冗余作用,提高網絡的可靠性[5]。如圖4所示。虛線表示增加的網線。
4.結束語
本文介紹了一種基于KS28873芯片的雙網口協議轉換模塊,能夠實現RS485/RS232總線與網口的物理層轉換,再通過軟件實現不同總線上不同協議的轉換。使用該模塊既可以替代現有RS485總線,也可以在新建系統時實現設備網絡化工作,并且能夠快速實現環網,使得網絡更加可靠,低成本和靈活配置也是其主要特點。
參考文獻:
[1]KS28873 Datesheet [M].MicreI,INC,2009
[2]RMII Specification [M].NationaI,INC,1998
[3]Modicon Modbus Protocol [M],ABB,INC,2002
劉 藝 沈陽理工大學信息科學與工程學院 110159
【文章摘要】
為了實現現有以RS232 為通訊方式的設備的網絡化監控和管理,提出了以太網轉RS232 的轉換器設計。利用STM32F103 實現了對轉換器的硬件設計,對軟件模塊進行了功能劃分, 利用主程序和中斷服務程序對轉換器功能進行軟件實現。設計的以太網轉RS232 轉換器具有較強的通用性, 在不改變硬件平臺的情況下,僅對軟件的處理模塊進行少量修改便能適應各種RS232 協議。
【關鍵詞】
以太網;RS232 ;協議轉換;STM32
【Abstract】
In order to monitor and manage the existed device with RS232 communication protocol,Ethernet to RS232 converter design is necessary.The converter hardware design used STM32F103 as the main MCU.Converter software modules were divided by the converter function.Main program and interrupt service program software were designed to achieve the function of the converter.The designed Ethernet to RS232 converter has strong generality.It can only do small modification in the data handle module to satisfy the variety of RS232 protocol, without change the hardware platform.
【Key words】
ethernet;RS232;protocol convert;STM32
0 引言
RS232 是工業中應用非常廣泛的接口之一,它實現著主設備與從設備之間的數據交互,該技術已經應用于較多的設備現場中。隨著科技的發展和互聯網技術的飛速發展,人們對設備的監控和傳感器信息的網絡化管理和顯示提出了更高的要求,為了使現有的設備具備網絡監控和管理的能力,以太網轉RS232 的轉換器是一個必不可少的網絡轉換模塊之一。
1 轉換器的硬件設計
1.1 轉換器的總體框架設計
轉換器具有以太網與RS232 之間協議轉換功能,所以在系統硬件設計時選取具有以太網和RS232 模塊的芯片, 用戶不必為實現以太網和RS232 而增加外圍電路,不僅可以節約開發費用和時間,而且可以極大地提高系統的可靠性和穩定性。為了實現項目的開發,選用目前工業上應用比較廣泛的控制系統開發芯片STM32F103 作為系統控制主芯片。STM32 是一種基于Cotex-M3 內核的新型的32 位閃存微控制器,采用了高性能、高代碼密度的Thumb-2 指令集和緊耦合嵌套向量中斷控制器,擁有多個RS232 接口和一個RMII 接口的以太網,具有高性能、低成本和低功耗等優點。
轉換器硬件總體結構圖如圖1 所示。監控系統可以通過雙絞線或Wi-Fi 與路由器相連,路由器通過雙絞線與轉換器相連。監控系統由此可以與轉換器進行數據交互。具有RS232 接口的設備,通過RS232 接口與轉換器相連,并進行數據交互。
1.2 以太網模塊電路設計
為了實現STM32F103 芯片與以太網的連接,必須要在芯片和以太網之間加上一個物理層的接口芯片,本文選用了ENC28J60 以太網控制器來實現連接, STM32F103 與ENC28J60 的電路圖如圖2 所示。ENC28J60 是目前常用的一款獨立以太網控制器,符合IEEE 802.3 協議規范。ENC28J60 帶有行業標準串行外設接口(SPI),通過SPI 接口與主控制器的通信,嵌入式應用系統的以太網接口由此變得簡單,數據傳輸速率高達10 Mbit/s。ENC28J60 由七個主要功能模塊組成:SPI
圖1 以太網轉RS232 模塊結構框圖
圖2 轉換器以太網接口電路圖
接口、控制寄存器、雙端口RAM 緩沖器、判優器、總線接口、MAC 模塊、PHY 模塊。
1.3 RS232 串行接口電路設計
RS232 串行通訊接口用正負電壓來表示邏輯狀態,+3~+15V 表示邏輯電平“0”,-3~-15V 表示邏輯電平“1”,這與TTL 以高低電平表示邏輯狀態的規定不同。STM32F103 的接口電路都是TTL 電平,必須經過電平轉換,才能以RS232 標準的電平輸出。本文選用MAX232 芯片來實現電平的轉換工作,STM32F103 與串行接口通信的電路如圖3 所示。
2 轉換器軟件設計
由于STM32 內部沒有TCP/IP 協議,所以需要通過移植LWIP 協議來實現以太網功能。LWIP 協議即Light Weight IP 協議, 對操作系統沒有依賴性,可以在沒有操作系統支持的情況下運行,LWIP 可以實現TCP/IP 協議主要功能,同時有不會占用太多的RAM,這對于RAM 資源不足的低端嵌入式設備是非常合適的。LWIP 主要是完成IP 層和TCP/UDP 數據傳輸層的任務, 它與底層網絡控制器的接口主要體現在ethernetif.c 函數中。在以太網幀的接受過程中,IP 層在收到底層傳來的以太網數據包后,首先判斷是TCP 數據包還是UDP 數據包,如果是TCP 數據包,則利用TCP 協議的數據傳輸層處理數據包,如果是UDP 數據包,則利用UDP 協議的數據傳輸層處理數據包,在處理完數據包后將數據發送到用戶應用程序。在以太網幀的發送過程中, 用戶程序通過UDP 或者TCP 將數據包發送至各自對應的傳輸層,再經過IP 層將數據包送至底層,由發送程序發出。
為了實現以太網模塊和RS232 模塊之間的數據通訊,轉換器需要具有接收以太網數據、發送以太網數據、發送RS232 數據、接收RS232 數據和數據處理5 個部分。5 個部分之間的關系如圖4 所示。
轉換器將來自以太網的數據包進行解包并生成RS232 數據,然后通過RS232 串口將數據發送到設備端;轉換器將來自設備的監測數據封裝成1 幀1 幀的以太網數據包通過以太網送到監控系統,監控系統可根據收到的數據判斷各個監控模塊的運行狀態。
數據處理模塊是匯聚節點中完成TCP/IP 協議與RS232 協議轉換的核心, 無論是從以太網至RS232 接口,還是由RS232 至以太網都必須由數據處理模塊完成協議轉換。
確定了軟件功能和劃分了功能模塊之后,進行主程序設計,主程序設計的流程圖如圖5 所示。首先是對STM32 芯片初始化,初始化包括:GPIO 初始化、中斷初始化、以太網初始化和RS232 初始化。GPIO 初始化主要是定義各個引腳的功能及各IO 端口相關參數;中斷初始化用于設定中斷向量、中斷的入口函數及中斷的優先級;以太網初始化用于設定以太網的相關參數;RS232 初始化用于設定RS232 接口的相關參數。
在初始化完成后,需要判斷數據的形式才能采取相應的處理。在這里用狀態位來做判斷,若狀態位改變為2,模塊接收RS232 數據,并對RS232 數據進行處理和封包,然后通過以太網發送到監控主機, 同時狀態位清零;若狀態位改變為1,模塊接收以太網數據,并對以太網數據進行解包和處理,然后通過RS232 串口將數據送給ZigBee 模塊;若狀態位為0,不做任何處理,為下一次數據接收做準備。
3 結束語
以太網轉RS232 轉換器可以方便地利用網絡對現有的許多以RS232 為通訊方式的設備進行操控和監測,可以使設備的網絡化水平大大提高,也可以提高人們對現有設備的網絡化管理、網絡化監控和網絡化故障診斷。以太網轉RS232 轉換器同時具有較強的通用性,設備之間的RS232 協議會有較大的區別,在不改變硬件的環境下,僅改變其數據處理模塊,便可以實現多設備之間的硬件平臺共用,模塊的復用性較強,可廣泛應用于各種環境的監測。
【參考文獻】
[1] 王永虹, 徐煒, 郝立平.STM32 系列ARM Cortex-M3 微控制器原理與實踐[M]. 北京: 北京航空航天大學,2008.
[2] 范欽武. 基于Arduino 和ENC28J60 的溫濕度監控系統設計[J]. 科技視界,2014,23:108-109.
[3] 周淑華. 單片機以太網通信實現軟硬件操作同步[J]. 電腦編程技巧與維護,2014,2:53-55.
[4] 陳聰, 曲波. 基于ENC424J600 的以太網與串行接口轉換技術[J]. 單片機與嵌入式系統應用,2011, 12(135): 37-39.
圖3 轉換器RS232 接口電路圖
Abstract: This paper mainly studies the composition and significance of SDN network and SDN controller. And the cases of IP network flow optimization are used to illustrate the advantages of SDN network. Compared with the traditional network and SDN network, this paper expounds the structure of SDN network, the new protocol and the role. This paper analyzes the advantages of SDN network and the problems that need to be solved. The backbone network in IP network is taken as the example to expound the significance of SDN network to the whole network.
關鍵詞: SDN網絡架構;南北協議;SDN控制器;PCE+流量調優;Agile Controller-WAN軟件
Key words: SDN network architecture;north-south agreement;SDN controller;PCE+ traffic optimization;Agile Controller-WAN software
中圖分類號:TP393.0 文獻標識碼:A 文章編號:1006-4311(2017)11-0085-03
0 引言
在移動網絡日趨復雜,移動技術更新日益加速的時代,互聯網公司的崛起,對運營商造成了前所未有的挑戰,促使運營商對自身網絡為適應社會發展,提出了一系列的訴求。為解決網絡快速創新慢,管理滯后,設備龐大,技術發展緩慢的問題,從網絡的重構開始,利用SDN網絡新的思維方式,使用原有傳統網絡的控制平面與轉發平面相分離的原則,采用SDN網絡架構,對設備進行改造,從而加快技術創新,業務部署,打造一個開放智能高效的移動網絡。
1 產生背景
移動網絡在現代社會中有著越來越重要的地位,其中又數IP網絡應用最為廣泛,在IP協議誕生之初,IP協議僅為Internet服務。隨著IP技術的發展,逐步用來承載語音、Vpn等業務。隨著承載業務的多樣化,業務規模也逐漸向著泛在化和超寬帶化發展演進。傳統的IP網絡將向下一代IP網絡(NGI)過渡。同時IP業務商業運營模式也將發生改變。這就造成了移動網絡運營商面臨諸多問題,比如:管理運維復雜;網絡創新困難;設備日益臃腫等,這時NFV/SDN技術應運而生。網絡功能虛擬化NFV(Network Function Virtvalization),是采用虛擬化技術,將傳統電信設備的軟件與硬件解耦,基于通用計算,存儲,網絡設備實現電信網絡功能,提升管理和維護效率,增強系統靈活性。SDN(Software Definef Network)即軟件定義網絡。2000年由美國斯坦福大學clean slate 研究組提出的一種新型網絡創新架構。遵循4個原則:①控制和轉發分離原則;②集中化控制原則;③網絡業務可編程;④開放的接口。SDN的本質是網絡軟件化,提升網絡可編程能力,是一次網絡架構的重構,而不是一種新特性、新功能。SDN將比原來網絡架構更好、更快、更簡單的實現各種功能特性。現在的IP網絡管理多且復雜,命令行多,真正痛點是業務部署慢,對網絡集中控制,把控制面集中到一個軟件(SDN控制器)進行控制,于是很多事情就解決了。如圖1所示。
2 SDN架構模型
隨著ONF(Open Network Foundation)組織、NFV產業聯盟的推動以及運營商、網絡服務提供商、設備生產商的積極投入,SDN模型也逐漸達成了共識。如圖2所示。
協同應用層:主要是與控制器通信的軟件應用程序。用于網絡服務的擴展。完成用戶意圖的各種上層應用程序,此類應用程序(APP)稱為協同層應用程序,典型的協同層應用包括OSS、openstack等。OSS負責整網的業招同,而Openstack則在數據中心負責網絡,計算,存儲的協同。OpenStack是目前最活躍的一個開源云計算管理平臺,提供了網絡即服務的功能。協同應用層和控制層之間定義為北向接口(NBI,Northbound Intterface)。其中網絡配置協議(Netconf)是南北向都應用的協議。北向接口位于控制層與應用層之間,將控制器提供的網絡能力和信息進行抽象并開放給應用層使用。它決定SDN發展方向與價值,意義重大。
北向接口主要包含幾種接口:REST和RESTful 服務。REST(Representational State Transfer)是一種基于軟件架構風格的WWW.基于REST架構的服務成為RESTful服務。Restful接口,用于網絡管理,端口管理,業務管理。NetConf和RESTful同時也是東西向的協議。Openstack Plug-In 接口用于網絡管理,防火墻管理,路由器管理。
NetConf接口:用于管理SNC.路由器和交換機設備;基于XML的網絡配置和管理協議。
NetStream也是北向接口,它是一種基于通過對網絡中的通信流量和資源使用情況進行分類統計的網絡流量信息的統計技術。主要應用于基于時間或流量的計費和對賬,網絡規劃和分析,網絡監控,應用監控和分析,用戶監控和分析。
控制層:控制層是系統的控制中心,負責網絡內部交換路徑和邊界業務路由的生成,并負責處理網絡狀態變化事件。它的實現實體就是SDN控制器,也是SDN網絡架構下最核心的部件。還有一些其它的協同層應用程序如安全APP,網絡業務APP客戶端等。其核心功能是實現網絡內部交換路徑計算和邊界業務路由計算。包括一個邏輯上集中的SDN控制器,能很好的完成網絡資源調度和控制。協同應用層與轉發層之間的接口定義為南向接口(SBI,Southbound Interface)。南向網絡控制技術需要對整個網絡中的設備層進行管控與調度,包括鏈路發現 拓撲管理 策略制定 表下發。也需要通過明確定義的應用層接口要求,并通過標準協議進行綜合管理和網絡設備的監控。南向接口主要包含的幾種CLI接口:用于管理防火墻; MROSI接口:用于與U2000對接;SNMP接口:用于管理路由器設備;SFTP接口:用于從U2000獲取性能數據。如圖3所示。
基礎層架構層或轉發層:包括物理網絡設備,以太網交換機和路由器。提供可編程,高速硬件和軟件。
在軟件定義網絡中,控制平面和轉發平面是分離的,轉發層主要由轉發器和連接轉發器的線路構成基礎轉發網絡,這一層負責執行用戶數據的轉發,其轉發過程中需要轉發表項則是由控制層生成的,而不是轉發器。轉發表項可以是2層轉發表項或者3層轉發表項。轉發層一個方面上報網絡資源信息和狀態,另外一個方面接收控制層下發的轉發信息。
在SDN中的定位處于基礎架構層與控制層之間 定義為OpenFlow協議,是構建SDN網絡的基本要素。是非常著名的南向接口協議。它是用來作為OpenFlow控制器和轉發器之間的通信協議。OpenFlow是平面接口或基于標準的協議。定義控制器通信控制器之間的平臺和數據平面設備,如物理和虛擬交換機以及路由器。包括OpenFlow PCEP SNMP OVSDB 等協議。
南向接口中網絡配置協議(NETCONF)定義是基于可擴展標記語言XML(Extensible Markup Language)的網絡配置和管理協議。NETCONF提供了按照操作和刪除網絡設備的機制;用來遠程管理和監控網絡設備的網管協議。提供了一套標準的操作以及RPC調用來對網絡設備進行管理。使用SSH傳輸協議。
南向接口簡單網絡管理協議(SNMP)是廣泛用于TCP/IP網絡的網絡管理標準協議,用來收集,管理,修改設備信息。作為TCP/IP協議族的一部分,SNMP消息被封裝為UDP報文在Internet中傳輸。作用是網管站(NMS),(Agent)和被管理設備。
東西向接口 包括Restful接口和SFTP接口Restful接口:NetMatrix提供網絡資源接口,uTraffic通過此接口向NetMatrix獲取網絡資源數據。uTraffic提供實時流量接口,NetMatrix通過此接口向uTraffic獲取實時流量信息,用于顯示實時流量情況和流量趨勢。
SFDP接口 是NetMatrix通過此接口獲取uTraffic采集的歷史流量數據
3 SDN網絡及SDN控制器
在SDN網絡架構下,由于整個網絡歸屬由SDN控制器控制,那么對SDN控制器的可靠性問題顯得尤為重要。
①傳統網絡和SDN網絡可靠性的對比如圖4所示。
②SDN控制器的可靠性問題主要涉及有4個方面如圖5所示。
③SDN控制器架構性能需求。
第一時間指標及網絡收斂時間性能分析:要求在部署控制器情況,網絡的收斂時間和傳統網絡情況下的故障收斂時間相當。
第二空間指標:及實現技術DC內要求支持百萬級以上OVS(OpenvSwitch)能力;DCI/METEO/CORE,每臺控制器管控2000臺設備;IPRAN接入場景,每臺控制器管控20000臺設備。
④SDN網絡價值。
第一快速網絡創新 SDN的可編程和開放性,使得我們可以快速開發新的網絡業務,加速業務創新。第二SDN網絡架構簡化了網絡,消除了很多IETF的協議。協議的祛除,意味著學習成本的下降,運維成本的下降,部署業務速度的提升。第三網絡設備通用化。第四業務自動化:自行完成網絡業務的部署,提供網絡自動化能力。第五網絡路徑調優和流量調優:當采用SDN網絡架構,SDN控制器可以根據網絡流量狀態智能調整網絡路徑,達到提升網絡吞吐的目的。第六SDN是對電信網絡的一次重構,在SDN時代的網絡大部分業務需求,能夠像IT應用一樣快速的進行調整,快速部署新業務。
4 SDN 的主要應用場景
①主要有基于SDN/NFV的以數據中心(DC)的網絡的應用。
②隨著企業業務的逐步云化,資源集中管理 、網絡可靈活調整、 高速、 低時延的專用的面向數據中心互聯的承載網絡也是需要解決的問題,SDN使能DCI(數據中心二層互聯)可以滿足這個的需求。
③不斷高速增長的互聯網流量促使電信行業不斷探索降低骨干網絡的成本。
以MPLS骨干網絡調優應用SDN組網為例,說明SDN如何進行網絡調優的過程。組網架構如圖6所示。
包含了 WAN(IP CORE)解決方案,DCI解決方案,CloudVPN解決方案 PCE+流量調優解決方案組成。
其中,Agile Controller-WAN 是核心部件,主要面向WAN(IP CORE)場景 DCI場景和Cloud Vpn場景,實現WAN領域的快速發放,域內流量調優,簡化現代網絡,降低既有網絡運營成本。
Agile Controller-WAN 通過提供業務隨需 、網絡隨調、 電信級可靠性、 可視化、 開放創新, 解決運營商業務部署慢,網絡利用率低,維護復雜等問題。
PCE+流量調優 PCE(Path Computation Element)是一種基于MPLS TE的集中算路模式,解決了傳統MPLS TE獨立算路的限制。由隧道的Ingress節點PCC(Path Compution Client)向PCE Server請求路徑計算,PCE Server返回算路結果后,PCC觸發RSVP-TE協議建立LSP。
主要包括:①PCC(轉發器)負責TE隧道創建、帶寬標簽資源預留,是TE隧道的所有者及管理者。
②PCE Server(控制器)是算路中心,通過IGP-TE收集網絡資源信息(TEDB-Traffic Engineering Database)信息,并負責集中算路。
③PCE+是基于PCE技術的演進,和PCE的主要區別是:PCE(也稱為Passive Stateless PCE):轉發器上報LSP信息但是不托管(Delegation),即控制器不會主動下發信息給轉發器。同時控制器僅能收到TEDB信息,收不到網絡的業務相關信息(LSP-DB-Label Switched Path Database),無權以全局最優為目標對不同PCC的路徑做主動調優。
④PCE+(也稱為Active Stateful PCE):轉發器授權控制器管理托管的LSP,同時控制器基于PCEP協議收集LSP-DB信息,并基于LSP-DB進行網絡優化計算,從而以全局最優為目標進行主動調優。
⑤PCEP(Path Computation Element Communication Protocol)協議是PCC和PCE Server之間的通信協議,用來收集整網RSVP-TE LSP信息,并基于此提供集中算路服務。PECP僅提供了PCE南向接口的俗級ㄒ澹但不包含PCE計算的方法,PCE+擁有自己的集中網絡優化算法,支持基于COST、帶寬、時延等SLA進行路徑計算。
⑥PCE for SR-TE:除了RSVP-TE之外,PCEP也支持收集SR-TE LSP信息,為SR-TE LSP進行調優。
⑦包括 北向協議 RESTCONF、 Syslog client、 AAA、 SFTP 、client 、SNMP agent 。南向協議 SNMP client NETCONF、 SFTP Server、 Trap Server、 PCEP 、BGP、 BGP-LS/GP 。目前最多開發就是南北向協議是Openflow 和Openstack兩大協議平臺,各項技術處于逐步完善階段。
以上綜述,從以SDN組網的Agile Controller-WAN軟件的應用,說明了加快了運營商業務部署業務,減少了工作量,無需要多部門和廠商配合。提高網絡效率,快速反應應對網絡流量進行全局調整,而且對調優結果能及時感知。使網絡維護操作簡單,且定位時間短,實現了網絡的重構。
5 結束語
從闡明SDN網絡架構組成,再到IP網絡應用SDN組網,詳述了SDN網絡對現有網絡的重新架構產生的重大意義。綜述解決了移動網絡適應時展,對網絡進行了一系列的改造,采取了通信領域最新產生的新協議,新標準。從而逐步完善對現有網絡的改造。打造一個全新的適應時代要求的移動網絡。
參考文獻:
[1]楊.基于多拓撲路由的IP網絡流量工程研究[D].電子科技大學,2013.
關鍵詞:軟交換;網絡;控制;程序;接口
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2012)09-2015-02
從概念上講,傳統的交換機是電路交換,基于時隙的交換,軟交換的思路和傳統交換一樣,只是交換的方式改為包交換,或者說叫IP交換。從實際應用來講,軟交換就是指軟交換設備。像概念所描述的,軟交換與一般交換機的區別也就在于外部的接口不一樣,內部的交換的思路和方法也是不相同的,它的交換方式是建立在包交換上。軟交換來自于英文單詞Softswitch,它是移動通信領域的電路交換域主要信令和業務的處理單元。軟交換的結構和使用的接口嚴格遵守3GPP R4規范,所以也稱R4軟交換。它主要有MSC Server(移動交換中心服務器)和MGW(媒體網關)組成。移動交換中心服務器包括MSC Server和VAL兩部分,其主要特點為:提供呼叫控制、移動性管理、用戶業務數據和CAMEL相關數據的管理(VAL功能)等信令處理。媒體網關包括MGW和SG兩部分,其主要特點為:與MSC Server配合完成核心網絡資源的配置和信令轉接。同時完成回聲消除多媒體數字信號的編解碼以及通知音的播放等。因此說軟交換是傳統TDM交換方式PBX到IMS的過渡產品,軟交換基于IP的交換,其業務形式比傳統PBX更豐富,更易開發。
1軟交換出現的必然性
軟交換技術是在IP電話基礎上產生的,基本思路來源于業務可編程、分解網關功能等概念。在軟交換體系中,將IP網關分解成媒體網關、信令網關和媒體網關控制器,隨著標準化進展,軟交換逐漸替代了媒體網關控制器,從而為各種業務應用提供了第三方可編程環境。滿足了用戶對新業務發展的需求,為軟交換的出現和未來發展前景奠定了堅實良好的基礎。軟交換的特點是與傳統交換相比效率更高、靈活性更大,能與多種設備接口,業務范圍廣,具有多用戶性和開放性。因此它為用戶任意購買網絡的每一部分理想的產品提供了極大的方便。
2軟交換技術
2.1軟交換的概念
軟交換它是一種提供了呼叫控制功能的軟件實體,實質上就是把呼叫控制功能從傳輸層的媒體網關設備中分離出來,然后通過服務器(或網元)上的軟件程序實現基本的呼叫控制、路由的選擇、通信鏈路的建立、實施管理控制、建立和拆出會話的連接控制、以及從SS7到IP的信令互通功能。其目的就是把傳統的呼叫控制及呼叫傳輸分別獨立開來,其結果就是讓軟件可編程功能、鏈路交換功能和控制功能各自獨立出來,其作用是為了實現用戶業務的控制協議與傳輸業務能自由結合從而達到業務轉移。軟交換采用了API這種開放式的應用程序接口尤為關鍵,使得新的業務很靈活的引入到交換的機制中,而傳統的交換機仍然可以通過SS7鏈路得到保留,并且支持現有的新型會話式多媒體業務,支持現有的電話功能等。由于它采了用標準協議,因而提供了不同廠商的設備之間的互操作能力。
2.2軟交換的主要功能
軟交換的功能包括呼叫控制和處理、移動性管理、用戶業務數據和CAMEL相關數據的管理、協議處理功能、SSF功能、操作維護功能、計費功能、用戶承載面功能、媒體轉換功能、承載控制及業務交換功能、資源受控功能、支持電路域業務在多種媒介中傳輸、地址解析功能、語音處理功能。所以說軟交換是新舊網絡融合和關鍵設備。
2.2.1媒體網關接入功能
媒體網關接入功能是一種連接到各種媒體網關的適配功能和完成H.248協議功能。其主要功能通過媒體網關控制協議(H.248)與MGCF通信;媒體處理,如媒體編碼轉換、分組打包、回聲抑制、抖動緩沖管理、分組丟失補償等;媒體插入功能,如提示音、證實音及話音檢測;處理信令和媒體時間檢測,如DTMF檢測、語音動作檢測;系統資源管理和分配;以及數字分析功能。
2.2.2呼叫控制功能
軟交換的重要功能之一是呼叫控制功能。它為呼叫處理的建立以及智能呼叫,鏈路連接的保持和控制,通信鏈路的釋放,觸發 檢出和資源控制實現成為可能。接收來自業務交換功能的監視請求和呼叫控制相關信息并對其中與呼叫相關的信息進行處理以及支持呼叫的建立及監視。實現雙方和多方呼叫控制功能。識別媒體網關報告的相關事件,控制其向用戶發送各種音信號。當其內部不包含信令網關時,采用SS7/IP協議與其他信令網關互通,完成基本鏈路建立、鏈路保持和鏈路釋放過程。與外置終端設備進行連接,提供相應業務。
2.2.3業務提供功能
軟交換不但能夠實現傳統意義上的交換機提供的所有基本業務和補充的業務外,還能夠提供其他各種增值業務。如軟交換設備與智能網設備配合提供現有的智能網的智能業務以及與第三方應用服務器共同配合向用戶提供多種增值業務。
2.2.4互聯互通功能
在當前分組網內兩大重要協議分別是H.323和SIP協議,其中由ITU-T采用ISDN的設計思想制定了H.323協議,采用Q.931協議完成呼叫建立和釋放,很明顯具有通信網可管理性和集中的特征。IETF通過IP網絡上進行多媒體通信的應用層控制協議來制定了SIP協議,它們都同樣完成呼叫的建立、鏈路釋放、補充業務和能力交換等功能。SIP協議具有擴展性好、簡單以及和現有的因特網應用緊密的特點,同時SIP在第三代移動通信業務中得到普遍使用。軟交換的主要特點是能夠兼容多種協議,因此軟交換同時可以支持H.323和SIP這兩種協議從而實現互聯互通功能。
2.3軟交換的意義
軟交換提供現有的交換機業務與補充業務外,它與現有的智能網配合,提供現有的智能網的智能業務,與第三方配合提供增值業務。軟交換支持PSTN電話終端、MGCP分組終端、H.248分組終端、SIP分組終端、H.323分組終端相互之間的基本語音業務,本地網用戶相互之間的電話呼叫,國際國內長途自動來去話業務,各種特服呼叫、查詢、申告、報警業務。補充業務如熱線服務、查找惡意呼叫,無應答呼叫前轉、無條件呼叫前轉、遇忙呼叫前轉及回叫、主叫線識別限制,支持基于H.323協議、SIP協議的多媒體終端(包括軟終端)相互之間的多媒體通信,支持G.711、G.723、H.263、H.261等多種語音/視頻編碼格式,并可根據承載網絡的情況在主被叫之間協商網絡占用帶寬,并進行動態調整。它可以實現即時消息、文件傳輸、視頻通信、應用共享、電子白板、內容等業務。它可以融合多媒體、數據等業務,從而更加方便的為廠礦、企業、學校、醫院、政府機關、公司機構等集團用戶提供完善的一體化通信解決方案。軟交換可用作智能網的SSP,與SCP設備配合可向用戶提供豐富的智能網業務。還可以提供UC業務,即統一通信業務,它是軟交換與SIP應用服務器以及第三方應用服務器共同配合向用戶提供的多種增值業務。因此說以軟交換為核心的軟交換網絡是網絡演進的方向。
3基于軟交換軟交換的增強型業務框架及其接口協議
3.1基于軟交換的增值業務框架結構
軟交換的增值業務框架結構的體系結構中增加了兩個邏輯成分1、媒體服務器。媒體服務器用于提供特殊的媒體資源,并提供到媒體網關的承載接口。2、應用服務器。應用服務器負責各種增值業務的邏輯產生和管理,處理與軟交換間的接口信息,同時還提供各種開放的API,為第三方業務的開發提供平臺。
3.2軟交換體系結構的接口和采用的通信協議
軟交換體系結構有傳送平面、控制平面、應用平面、數據平面、管理平面。分別對應軟交換體系結構的接口分組網與TDM之間的接口。接口二是采用H.323協議、SS7、Q.931、SIP等協議。接口三是采用H.323、SIP、Q.931、BICC、ISUP等協議。數據平面接口有待研究。接口五采用SNMPv2、CMIP等協議,具體功能和接口有待研究。
軟交換協議功能有呼叫控制協議、傳輸控制協議、媒體控制協議、維護管理協議。具體采用的通信協議主要有:MGCP協議、H.248協議、SIP協議、SIP-T協議、H.323/協議、SIGTRAN協議、七號信令協議、V5協議、ENUM協議、TRIP協議、MIDCOM協議、STUN協議、IPSee協議、RADIUS協議、SNMP協議、FTP協議、FTAM協議。
4總結
軟交換設備將是未來通信網絡的核心設備,未來通信網絡技術發展趨勢是軟交換技術。因為軟交換技術實現了把業務系統和控制系統分離開來以及把傳送系統和接入系統分離開來,是未來網絡體系結構中的核心技術。把硬件軟件化是它的主導意圖的體現,使用軟件方法來實現傳統交換機的呼叫控制功能、電路連接功能和各種業務處理等功能。各種應用設備之間是按照不同的通信協議進行接續和通信的,以便在未來通信網絡里,更方便更容易的實現不同業務和不同的協議。在當今網絡十分開放時代和可編程方面軟交換技術的出現為通信網絡的發展奠定了堅實良好的基礎。它指明了未來通信網絡發展趨勢。但是軟交換只是當前通信網絡發展的開始,在技術層面上還有很多技術問題值得大家研究和探討。
參考文獻:
【關鍵詞】SPI協議;雙DSP通信;TMS320DM642;TMS320C6747
1.引言
在水聲通信機的設計中,經常是由一個處理器進行喚醒檢測、AGC(自動增益控制)、A/D(模擬-數字轉換)、D/A(數字-模擬轉換)等工作。另外一個處理器負責信號調制、解調、糾錯編碼/解碼等復雜計算。在我們的水聲通信機設計中,前端采用低功耗的TMS320C6747浮點DSP,進行數據預處理;后端采用高性能的TMS320DM642定點DSP,進行復雜計算。這就需要雙DSP分工協作,共同完成系統整機的功能。不可避免的,將涉及到雙DSP之間大量的指令和數據交互操作。我們希望采用靈活的架構,簡潔的接口連線,簡單的控制協議,實現高可靠和高效率的指令與數據雙向傳輸,通過大量的實驗,我們最終選擇了SPI協議,并對典型的SPI協議進行了改進。典型的水聲通信機的架構如圖1所示。
圖1 典型水聲通信機的架構
在我們的設計中,“處理器A”選用了低功耗的TMS320C6747浮點DSP,“處理器B”選用了高性能的TMS320DM642定點DSP。在實際系統中,根據水聲通信機的不同工作頻段和運算能力要求,處理器A也可選擇FPGA/CPLD或者低功耗單片機;處理器B也可選擇不同運算能力的DSP、ARM或者FPGA。
2.SPI協議
SPI(Serial Peripheral Interface,串行設備接口)是Motorola公司于2000年提出的一種串行接口協議。該接口占用硬件資源少,通信協議簡單,具有同步時鐘,通信速率較高,分主設備和從設備,特別適合處理器與設備之間交換數據,在EEPROM(非易失存儲器)、串行A/D(模擬-數字轉換器)、串行D/A(數字-模擬轉換器)、實時時鐘等嵌入式系統中得到了廣泛的應用。
SPI協議的原理很簡單,它以主從方式工作,這種模式需要有一個主設備和一個或多個從設備。典型的SPI協議定義了4線接口,這也是所有基于SPI的設備共有的,分別是SIMO(從機輸入、主機輸出),SOMI(從機輸出、主機輸入),SCK(時鐘)和CS(片選)。根據系統的不同需求,SPI接口也可以采用3線(數據單向傳輸)或5線等不同方式,以實現不同的功能。采用4線制SPI接口時,接口示意圖如圖2所示。
從圖2可知,所有的控制信號均由SPI主設備提供,SPI從設備只能在被查詢時才能與主設備建立通信。這種限制在處理器與設備通信時影響不大,但應用在雙處理器對等雙向通信時就有問題,作為從機的處理器無法主動發起通信,與主機交換數據。
在我們設計的水聲通信機中,雙DSP之間需要對等雙向通信,無論哪一方都能發起通信,因此需要對典型的SPI通信協議進行修改,使得從機也能主動發起通信。這需要修改硬件接口設計,增加額外的信號線來實現。
SPI協議沒有定義握手機制,在進行雙向高速率的可靠通信時,需要從硬件和軟件兩方面設計握手機制。同時,SPI協議也沒有定義“指令”和“數據”傳輸標識,需要由軟件來解析。為了解決上述問題,我們對SPI通信接口進行了改進,主要包括硬件接口設計和軟件協議設計兩部分。
3.系統硬件接口設計
硬件接口方面,在標準4線SPI協議的基礎上,增加ENAn、RSm和RSs三根控制線,分別代表從機請求主機通信、主機發給從機指令/數據指示、從機發給主機指令/數據指示。其控制思路如下:
當TMS320C6747(SPI主機)有指令/數據發給TMS320DM642(SPI從機)時,先設置RSm為某電平(約定高電平代表指令,低電平代表數據),然后發起通信,DM642的SPI模塊配置位從動模式,其底層硬件邏輯將自動檢測接收,并通知DM642進行后續接收/發送處理。
ENAn信號線平時為低電平,當DM642有指令/數據要傳遞給C6747時,先設置RSs電平(指示將指令/數據傳輸),然后設置ENAn信號線為高電平,C6747檢測到ENAn信號線電平的變化時,主動發起與DM642的通信。
我們設計的改進型SPI接口示意圖如圖3所示,圖3中左側虛線框內的部分為TMS320DM642芯片內集成的McBSP0接口,配置為4線SPI從動工作模式;圖3中右側虛線框內的部分為TMS320C6747芯片內集成的SPI1接口,配置為4線SPI主控模式,其中SPI1_ENAn由GPIO引腳控制。
圖2 典型的4線制SPI接口連接圖
圖3 TMS320DM642(SPI從);TMS320C6747(SPI主)
經過如此改進之后,TMS320C6747(主機)和TMS320DM642(從機)之間能進行高速率的全雙工數據與指令的交互。
4.系統軟件設計
硬件接口設計為實現SPI高速率傳輸創造了通道,但難以保證數據傳輸的可靠性和有效性。為此,我們設計了SPI主機(TMS320C6747)和SPI從機(TMS320DM642)通信的軟件協議。
為了能進行指令和大容量數據傳輸,并且易于對接收到的SPI數據進行實時解析,為“指令”和“數據”設計了不同的“幀”結構。
進行指令傳輸時,固定每個數據包的長度,由“0x55AA”指示一個指令幀的開始,之后跟著幀序號,每次成功傳輸一幀后,幀序號增1,接下來是本機在前次握手通信時收到的幀序號,方便對方據此判斷前次指令是否被成功接收。
序號之后是20個指令字,最后是CRC校驗字段,接收端對前23個字進行CRC校驗,如果與接收到的CRC不同,則重新請求該指令序號;如果與接收到的CRC相同,則解析該指令。如果接收端收到的幀序號不連續,則表明兩個序號之間的部分指令出錯,根據需要可請求重發;如接收端收到的對方“已接收序號”和之前發送的不同,也能識別出通信出錯。
在進行數據傳輸時,由“0x55A5”指示一個數據幀的開始,在幀序號之后是數據區的長度,接下來是數據區,最后是CRC校驗。指令幀和數據幀的序號分別編號,與傳輸“指令幀”同樣的機制,如果CRC出錯也可以請求重傳。連續的數據區便于接收端和發送端啟用EDMA模式,極大提高傳輸大量數據的效率。
構建的“幀”結構如下表所示。
“指令”幀格式:
0x55AA 序號 已接收序號 指令1 指令2 …… 指令20 CRC
“數據”幀格式:
0x55A5 序號 數據長度 數據…… CRC
采用上述協議后,有效地保障了SPI主機和從機之間雙向、可靠、高速、穩定的指令和數據傳輸。
5.結論
在我們設計的水聲通信機中,采用了上述改進型SPI接口協議,TMS320C6747和TMS320DM642最小系統板之間以SPI接口進行板間連接,采用非屏蔽杜邦排線,長度大約10cm,實際測試表明,SPI時鐘速率在8.6 MHz時可穩定進行指令和數據的全雙工通信。由于通過SPI接口傳輸一個字節最少需要8個時鐘,加上發送端準備數據、接收端解析并處理數據的開銷等,實際測試能以800kB/s穩定通信。
參考文獻
[1]http://.cn/cn/lit/ds/symlink/tms320c6747.pdf
[2]http://.cn/cn/lit/ds/symlink/tms320dm642.pdf
[3]張巖,馬旭東,張云帆.ARM與DSP的SPI通信設計實現[J].工業控制計算機,2008,21(9):56-57.
[4]高振,羅秋鳳.SPI接口與CRC算法在雙DSP數據通信中的應用[J].電子產品世界,2011(1-2):46-48.
[5]梁德堅,劉玉瓊.SPI總線數據遠距離傳輸實現[J].電子測試,2009(1):72-75.
[6]趙,張楚.多媒體處理器中的SPI接口設計[J].電子測量技術,2007(6):126-129.
[7]任宇飛,張相,程乃平.一種透明傳輸的雙向SPI接口的設計與實現[J].電視技術,2009,49(2):51-54.
基金項目:福建省自然科學基金(項目編號:2013J01253);中央高校基本科研業務費專項資金資助(項目編號:2010121062);國家自然科學基金(項目編號:61301098)資助。
作者簡介:
解永軍(1978―),男,工程師,主要研究方向:單片機與嵌入式系統,水聲通信技術。