周璐璐, 張治中
(①重慶郵電大學(xué) 通信網(wǎng)與測試技術(shù)重點(diǎn)實(shí)驗(yàn)室, 重慶 400065;②重慶電子工程職業(yè)學(xué)院, 重慶 401331)
在七號信令設(shè)備研發(fā)、生產(chǎn)、調(diào)試中常常需要一個能夠靈活發(fā)送七號信令消息的信號源,特別在七號信令采集卡生產(chǎn)過程中,該信號源可以作為檢測采集卡是否工作正常的有效手段。在七號信令設(shè)備研發(fā)過程中,研發(fā)人員需要一個靈活的信號源以尋找采集卡在某種特定條件下的異常原因。對于產(chǎn)品推廣人員,與客戶進(jìn)行交流時,為了更好地展現(xiàn)銷售儀表的七號信令采集功能,也需要一個便攜的、易用的、靈活配置的信號源。
為了滿足實(shí)際需求,對七號信令數(shù)據(jù)發(fā)生器進(jìn)行研制,最終成品是一張PCI插入卡。本發(fā)生器共有8個相互獨(dú)立的端口,可以同時發(fā)送8路E1/T1的消息數(shù)據(jù)。在保證信號不發(fā)生碼型畸變的情況下,每個端口最多可以支持4個使用高阻接入的負(fù)載。
發(fā)生器作為一個七號信令數(shù)據(jù)的發(fā)送裝置,具有如下的主要功能特征:
能夠仿真目前通信網(wǎng)絡(luò)上的主要TDM接口:A,C,D和E等接口;
能夠?qū)崿F(xiàn)64k,N×64k(N=1~31),高速E1/T1等速率;
能夠發(fā)送TUP,ISUP,SCCP,DUP等信令消息;
每個端口能夠獨(dú)立發(fā)送數(shù)據(jù),或關(guān)聯(lián)發(fā)送數(shù)據(jù)(仿真協(xié)議流程);
端口上的消息速率可以任意配置;
端口上的FISU,LSSU,MSU等可以精確控制。
實(shí)現(xiàn)上述功能,硬件上由兩個主要部分組成:E1/T1收發(fā)器和多通道同步通信控制器。E1/T1收發(fā)器,選用了功能強(qiáng)大、高集成度的IDT公司的IDT82P2288; 多通道同步通信控制器選用了Mindspeed公司的CN8478。
IDT82P2288具有如下的功能特點(diǎn):
LIU(線路接口單元)和FRAMER(成幀器)合二為一;
支持E1,T1,每個鏈路可以獨(dú)立配置成E1或T1;
支持AMI、B8ZS、HDB3碼型;
支持G.772,T1.102,G.703,G.704,G.775等;
支持復(fù)幀處理,信令比特提取和插入;
具有傳送性能監(jiān)測和統(tǒng)計(jì)功能;
具有SPI處理器接口和并行處理器接口;
每個連接都具備省電控制模式;
3.3 V,1.8 V供電。
CN8478具有如下的功能特點(diǎn):
256個 HDLC,8個獨(dú)立串口接口,支持 LAPB,LAPF,LAPD,SS7;
OSI的數(shù)據(jù)鏈路層協(xié)議支持;
支持 DS0,N×64k,N×8k;
具有32 bit,33/66 MHz的PCI接口和32 bit的本地?cái)U(kuò)展總線接口;
3.3 V,2.5 V供電。
IDT82P2284通過 G.704協(xié)議接口與 CN8478相連,IDT82P2284實(shí)現(xiàn)了從G.704到G.703的數(shù)據(jù)傳送轉(zhuǎn)換。發(fā)送E1/T1數(shù)據(jù)幀的形成,時隙數(shù)據(jù)的插入,多個時隙數(shù)據(jù)的關(guān)聯(lián),HDLC數(shù)據(jù)處理等都由CN8478的時隙映射機(jī)制和HDLC來實(shí)現(xiàn)。CN8478與IDT82P2284的發(fā)送部分電路連接如圖1所示。
圖1 CN8478與IDT82P2284的發(fā)送連接
CN8478通過消息描述符鏈表和數(shù)據(jù)緩沖區(qū)的方式來實(shí)現(xiàn)與主機(jī)處理器的數(shù)據(jù)和控制信息交互。每個端口對應(yīng)一個通道組,每個通道組內(nèi)有32個通道,每個通道對應(yīng)1個HDLC控制器,每個HDLC分配一個消息描述符列表。CN8478的256個HDLC一共可以控制256個時隙。CN8478的各個通道在發(fā)生事件或錯誤時會向一個循環(huán)的中斷隊(duì)列提交一個與本通道相關(guān)的中斷描述符。主機(jī)處理器通過中斷描述符,及時響應(yīng),并處理。
CN8478與主機(jī)處理器的交互,通過其內(nèi)部的寄存器和PCI總線上的共享內(nèi)存實(shí)現(xiàn)。中斷描述符隊(duì)列,消息描述符隊(duì)列,數(shù)據(jù)緩沖區(qū)等等,都按照 CN8478能夠識別的方式進(jìn)行數(shù)據(jù)存放。
CN8478通過PCI Master[1]和Slave相互切換來完成與主處理器的交互。主處理對CN8478內(nèi)部寄存器訪問時,CN8478工作于Slave模式;CN8478對中斷描述符,消息描述符隊(duì)列,數(shù)據(jù)緩沖區(qū)訪問時,工作于Master模式。
CN8478以上處理功能是通過其內(nèi)部的 MUSYCC(多通道同步控制器)來實(shí)現(xiàn)的。
IDT82P2288的串行接口和CN8478的串行接口可以進(jìn)行直接對接。8個接口中,每個接口的連接方式為:IDT82P2288串行接口的 TSCK、TSFS、TSD,分別與 CN8478串行接口的TCLK、TSYNC、TDAT相連。
IDT82P2288的微處理器接口的地址線和數(shù)據(jù)線是分開的,然而 CN8478的本地?cái)U(kuò)展總線接口的地址線和數(shù)據(jù)線是復(fù)用的,所以兩種接口不能直接對接,必須通過一個 CPLD進(jìn)行連接。從功能和成本考慮,CPLD選用 EPM7128AETC 100-10[2]。CN8478的本地?cái)U(kuò)展總線接口,直接反映了PCI的讀寫時序,在CPLD中需要利用ALE*信號,將地址線和數(shù)據(jù)線分開。
CN8478的PCI部分引腳直接與PCI規(guī)范中板卡的金手指相連[1]。
CN8478的另外一個功能是作為PCI橋設(shè)備,當(dāng)PCI插入卡裝入到PCI槽后,在計(jì)算機(jī)啟動時,計(jì)算機(jī)的BIOS就能夠檢測到PCI總線上有新的PCI設(shè)備存在,在Windows系統(tǒng)啟動后,系統(tǒng)將提示發(fā)現(xiàn)新的硬件設(shè)備,并要求安裝其驅(qū)動程序。IDT82P2284配置流程見圖2。
圖2 IDT82P2284配置流程
CN8478屬于一個多功能的PCI設(shè)備,即在一個PCI槽上有兩個功能完全獨(dú)立的設(shè)備。這兩個設(shè)備的設(shè)備標(biāo)識是不一樣的,系統(tǒng)就根據(jù)這個設(shè)備標(biāo)識來安裝相應(yīng)的驅(qū)動程序。兩個驅(qū)動程序在這里分別命名為Link驅(qū)動和Phy驅(qū)動。
插入卡的驅(qū)動程序,使用DriverStudio 3.1進(jìn)行開發(fā)[3],其DriverWizard能夠快速生產(chǎn)WDM程序框架,用戶只需要在框架內(nèi)相應(yīng)部分編寫與設(shè)備配置、控制相關(guān)的部分代碼就可以。Phy驅(qū)動程序比較簡單,只是實(shí)現(xiàn)了對IDT82P2284的配置。其配置流程如圖2。
相比Phy驅(qū)動程序,Link驅(qū)動程序要復(fù)雜的多,其實(shí)現(xiàn)的主要功能有:MUSYCC寄存器配置,消息描述符鏈表配置,中斷描述符隊(duì)列配置,發(fā)送數(shù)據(jù)交互控制等等,其配置流程如圖3所示。
圖3 CN8478配置流程
Link和 Phy驅(qū)動都通過E1Api與上層應(yīng)用程序進(jìn)行交互,應(yīng)用程序可以是窗口程序或控制臺程序。應(yīng)用程序讀取發(fā)送數(shù)據(jù)文件,然后將數(shù)據(jù)傳給Api,由Api負(fù)責(zé)提交給驅(qū)動程序。目前,通過反復(fù)測試,得出一個端口最多可以支持 4個帶高阻的接收負(fù)載。在測試中,使用東進(jìn)廠商信令采集設(shè)備進(jìn)行校對,插入卡發(fā)出的數(shù)據(jù)和東進(jìn)設(shè)備接收數(shù)據(jù)完全一致。
目前,本信令數(shù)據(jù)發(fā)生器已經(jīng)研制成功,利用應(yīng)用程序界面,用戶可以控制產(chǎn)生E1,或T1速率的信號;在時隙構(gòu)成上,可以選擇64K,N×64K;在上層傳輸協(xié)議,可以選擇低速信令、高速信令和幀中繼。在E1卡的研發(fā)過程中,作為信令消息數(shù)據(jù)的信號源,為E1卡的接收功能實(shí)現(xiàn)和性能改進(jìn)提供了很好的支撐;同時,在E1卡的生產(chǎn)測試中,為產(chǎn)品測試提供了仿真現(xiàn)場的檢測手段。目前,本信令數(shù)據(jù)發(fā)生器不足之處在于還不能支持通過配置文件,控制數(shù)據(jù)發(fā)送。
[1] 李貴山,陳金鵬.PCI局部總線及其應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2003:129.
[2] 王誠,吳繼華,范麗珍.Altera FPGA/CPLD設(shè)計(jì)[M].北京:人民郵電出版社,2005:51.
[3] 武安河,邰銘,于洪濤.Windows 2000 XP WDM設(shè)備驅(qū)動程序開發(fā)[M].第2版.北京:電子工業(yè)出版社,2003:49.
[4] 代毅,谷上宇,張?jiān)器?七號信令MAP消息及其在CDMA中的應(yīng)用[J].通信技術(shù),2003(08):1.