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