嵌入式同步時鐘系統(tǒng)的設計與實現
摘 要:本文介紹了一種基于嵌入式微控制器MSP430構建的嵌入式同步時鐘系統(tǒng)的設計與實現方案,在實現了網絡時鐘同步的基礎上又提供了方便易用的網絡管理接口。
關鍵詞:同步時鐘;MSP430單片機;數字鎖相環(huán);CPLD
同步時鐘系統(tǒng)是同步設備中實現同步通信的核心,因此,要實現數字同步網的設備同步就要求同步時鐘系統(tǒng)一方面要能提供精確的定時同步,另一方面還要能方便實現網絡管理中心對同步時鐘的管理。本文詳細介紹了利用嵌入式微控制器MSP430單片機和數字鎖相環(huán)(DPLL)來實現嵌入式同步時鐘系統(tǒng)的方案和設計實例。
圖1 嵌入式同步時鐘系統(tǒng)結構圖
圖2 I/O接口模塊設計原理圖
圖3 時鐘定時模塊的邏輯連接圖
圖4 MSP430單片機與以太網控制器RTL8019AS的連接示意圖
圖5 同步時鐘運行過程圖
系統(tǒng)總體結構
同步設備的同步時鐘系統(tǒng)要求能達到3級時鐘標準,可使用從SDH網絡上提取的時鐘或外部時鐘源來作為同步的基準時鐘信號,同時也可以通過時鐘模塊自振來產生時鐘信號。產生的這些同步時鐘信號為同步設備進行SDH傳輸和為設備各單板提供同步時鐘源,同時同步時鐘系統(tǒng)還要能夠通過以太網口和網管通信,從而實現對同步時鐘系統(tǒng)的網絡管理。為了使時鐘系統(tǒng)能穩(wěn)定可靠地工作,通常還要求有兩塊時鐘板同時在線,一塊處于正常工作狀態(tài),另一塊則處于熱備份工作狀態(tài)。隨時可以進行時鐘的無縫切換。
在功能上,本系統(tǒng)可以分為I/O接口模塊、時鐘定時模塊和控制通信模塊三部分。系統(tǒng)結構如圖1所示。
I/O接口模塊
本模塊由時標選擇和分頻控制驅動兩部分組成。時標選擇部分主要完成對外部輸入時鐘信號的緩沖、解碼,通過單片機選擇其中的一路輸入產生DPLL的參考時標。該系統(tǒng)可支持2路SDH上傳輸的19440KHz信號輸入和2路G.703標準的2048KHz或2048Kbps的信號(支持75W和120W兩種阻抗比配方式)。
分頻控制驅動部分對DPLL給出的信號進行分頻,形成19.44MHz和6.48MHz信號,根據主/備用信號控制輸出。最后由驅動電路形成8路19.44MHz和10路6.48MHz的輸出信號送交同步設備各單板。
時鐘定時模塊
DPLL完成時鐘定時模塊的核心功能。DPLL利用外來的時標信號,使其處于跟蹤方式工作;同時也可利用單片機將控制信號送到其內部,使其運行在保持或自由振蕩方式。DPLL在工作的同時又給出自身的工作狀態(tài),如跟蹤、保持、自由振蕩、失鎖、失效、丟失外標信號等情況報告,通過將這些信息送交單片機再上報給網管系統(tǒng)來實現對時鐘系統(tǒng)的監(jiān)控。
控制通信模塊
此模塊包括單片機和以太網接口模塊兩部分,主要完成主備時鐘板間的通信、監(jiān)控并上報時鐘工作狀態(tài)、接收并執(zhí)行網管下發(fā)的指令。通過以太網接口和網管通信,將網管下發(fā)的指令處理后分發(fā)給各時鐘模塊,同時再把從時鐘模塊收集來的信息上報給網管。
系統(tǒng)的設計實現
I/O接口模塊
首先,外部輸入時鐘信號經過輸入緩沖/解碼器進行緩沖和解碼后變成標準TTL/CMOS電平再送交CPLD處理。當CPLD收到時鐘輸入信號時通過單片機送來的選擇信號使能一路時標輸入信號,并通過分頻處理輸出到DPLL。最后,DPLL產生的同步時鐘信號通過輸出驅動器生成多路需要的輸出信號送到同步設備各單板。其設計原理圖如圖2所示。
輸入解碼器通過專用的商用芯片來實現對符合ITU-T G.703接口的2Mbps時鐘信號源進行解碼和對符合ITU-T G.703接口的2MHz時鐘源信號和19.44MHz時鐘源信號進行緩沖,給下一級輸出標準TTL/CMOS兼容的信號。輸出驅動器也采用專用的商用時鐘驅動芯片將同步時鐘產生的G.813標準的時鐘信號輸出給同步設備的各單板使用。
對于兩路2.048M和兩路19.44M信號的輸入,在CPLD內部構建三個二選一的多路選擇器來選擇其中一路信號使能輸入。這三個多路選擇器的選擇使能信號存儲在一個寄存器中,通過向其中寫入不同的值來使能選擇相應的一路輸入信號。再構建分頻電路對選出的信號進行分頻,從而產生時標信號輸出到DPLL的時標信號輸入端。
時鐘定時模塊
考慮到設計的精度與復雜性,此模塊利用現有的時鐘定時單元來構建DPLL,使設計的周期大大縮短,穩(wěn)定性得到保證。
該模塊采用JWF02時鐘模塊,它是一獨立元件,使用方便。它能自適應8K、2048K/1544K、10M、19.44MHz四種參考時標輸入;同時可支持以1KHz的步長從1KHz到20MHz的用戶編程輸入參考時標;用戶可以選擇8K/2048KHz或38.88MHz/19.44MHz輸出。JWF02時鐘模塊串口和單片機的串口相連,接收傳送來的時鐘調節(jié)指令;時鐘輸入腳接由I/O接口模塊選擇的時標信號;時鐘輸出端口將產生的同步時鐘傳送到輸出驅動器驅動輸出到同步設備各單板;其時鐘工作狀態(tài)也可由輸出部分送單片機供監(jiān)控。其邏輯連接圖如圖3所示。
控制通信模塊
該模塊是整個嵌入式同步時鐘系統(tǒng)的控制中心。它接收到網管下達的指令,并將這些指令實施到時鐘定時模塊,再將時鐘的工作狀態(tài)通過以太網接口上報給網管,從而實現對同步時鐘系統(tǒng)的網絡管理。
該模塊中的單片機采用TI公司的FLASH型16位MSP430F149嵌入式微控制器。采用C語言作為開發(fā)語言,采用IAR公司提供的集成開發(fā)環(huán)境:IAR Embedded Workbench嵌入式工作臺以及調試器C-SPY,大大提高了開發(fā)的進度。
以太網接口模塊采用RealTek公司的RTL8019AS全雙工以太網控制器,處理以太網協議并實現以太網數據的收發(fā)。要接收和發(fā)送數據包都必須通過DMA讀寫RTL8019AS內部自帶的16K的RAM來實現。RTL8019AS內部支持local DMA和remote DMA兩種操作方式,外部通過RJ45接口與以太網進行連接通信。該模塊的連接圖如圖4所示。
通信控制模塊主要由軟件來實現。首先需要對RTL8019AS以太網控制器的內部寄存器進行配置,使其能完成以太網數據幀的順利收發(fā)。這部分由三個函數組成:初始化,接收分組和發(fā)送分組。初始化函數完成以太網控制器的上電復位、MAC地址的配置、收發(fā)緩沖環(huán)首尾地址的配置以及DMA的初始化和收發(fā)數據格式的定義等。接收時,通過讀取RTL8019AS的當前寄存器CURR和邊界寄存器BNRY的值來確定接收環(huán)中是否有分組存在,當兩者的值相等時(有分組),啟動remote DMA將接收環(huán)中的以太網幀送交給單片機處理。發(fā)送數據時,單片機將封裝好的以太網幀通過remote DMA送到RTL8019AS的發(fā)送緩沖環(huán),同時再啟動local DMA將數據幀送到以太網線路上傳輸。
要實現同網管的順利通信,系統(tǒng)還要實現對以太網數據幀的封裝與拆封,以及對IP分組的處理等,這些都可以通過在單片機內部構造諸如TCP/IP等相應的協議棧來處理。單片機收到網管傳輸來的以太網數據幀后,先去除封裝的頭部,提取出網管下發(fā)的指令,再由單片機執(zhí)行相應操作,實現網管對時鐘的配置管理。同時,單片機通過查詢時鐘系統(tǒng)的工作狀態(tài),將它們進行編碼后封裝到標準的以太網幀中通過以太網送到網管中心,作為監(jiān)控同步時鐘系統(tǒng)的信息使用。
另外,通過使用MSP430F149內的另一個串口同另一塊時鐘板上的單片機串口相連接,實現兩塊板之間的通信,保證在主用時鐘發(fā)生錯誤時能及時啟動切換,做到始終有一個正常的時鐘處于工作狀態(tài),提高系統(tǒng)的可靠性。
系統(tǒng)運行過程
嵌入式同步時鐘系統(tǒng)的運行過程如圖5所示。
結語
本文給出了嵌入式同步時鐘系統(tǒng)的設計方案和具體實現。在設計中采用嵌入式設計的方法把同步定時時鐘部分和網絡通信部分嵌入到同一塊電路板上,使系統(tǒng)既降低了成本又方便了在線維護,可用作諸如路由器、交換機等同步網絡設備中的時鐘模塊?!?/p>
參考文獻
1 魏小龍. MSP430系列單片機接口技術及系統(tǒng)設計實例. 北京:北京航空航天大學出版社, 2002.11
2 JWF02 TIMING UNIT Data Sheet. Hutchison Optel Telecom Technology Corporation ,2002
評論