新聞中心

        EEPW首頁 > 消費電子 > 設計應用 > 智能多業務語音片上系統設計

        智能多業務語音片上系統設計

        作者: 時間:2007-11-13 來源:網絡 收藏
        引言

        在中國IT行業快速發展的背景下,社會以及用戶需求的多樣性使電信設備運營商、服務提供商面臨越來越多的競爭壓力。提高競爭力、加快開發能力、符合市場需求的產品和是關鍵所在。生存中創新和創新中發展已經成為必須面對和不得不解決的問題。本文采用SoC方法在altera中高端FPGA器件實現可應用于電信多交換平臺的處理芯片。的關鍵在于片上三總線結構獨特設計、SDRAM(內存)控制器設計以及與系統主機之間共享信箱協議的制定。

        1 系統設計

        處理系統的設計實現基于Cyclone II EP2C35[12]器件。系統的核心處理功能與幾乎全部系統功能模塊全部通過LogicLock的功能在FPGA內實現,嵌入式處理器軟核Nios II作為處理系統的主處理器,用來管理單板的運行,負責協調系統各模塊之間工作,控制它們的工作狀態及各外設的操作;通過通信共享信箱單元,實現與程控交換機主機系統的通信,接受系統的管理和調度,借助以太網口從系統服務器下載系統運行程序和各種不同的語音數據。

        Nios II處理器是具有最多的6級流水線(Fetch,Decode,Execute,Memory,Align,Writeback)的32位改進哈佛RISC結構軟核處理器。多達256條用戶可定制指令可幫助用戶創建一個最適合他們需求的嵌入式系統。Nios II處理器高速緩存的實現是采用簡單的直接映射的連續寫入結構,這種結構設計能夠用最少的器件資源消耗獲得最高的性能,在Cyclone II器件中可以獲得超過166 DMIPS的性能。

        有別于傳統的Harvard體系中雙總線結構,本系統設計采用三總線結構:內存(SDRAM)專用高速總線、ROMDISK(Flash)專用總線和與系統主機之間通信的共享信箱總線。滿足ROMDISK、內存和共享信箱總線三者之間大流量的數據傳輸,同時保證系統可以處理更多的任務,這樣的體系結構為系統提供并發執行效率,提高處理器的利用率;多任務之間數據快速交換有效縮減等待時間,提高多任務處理得效率。

        語音數據緩沖區和G.711/G.726協議處理器根據系統的要求向用戶提供包含基本語音、輔導語音、各種特色語音在內,基于ITU G.711/G.726語音壓縮協議的數據鏈路,為系統提供32路-256路速率16-64kbps語音通道,以1-8條2Mbps的高速PCM鏈路提供給系統使用。UART被用作系統調試接口,系統功能框圖如圖1所示。



        2 業務流程

        智能語音片上系統的主要工作是,滿足程控交換機系統和IP交換機系統的語音業務類型和智能語音業務需求。基本語音存儲和輔導語音固化在本板的ROMDISK中,操作系統可以在上電初始化、操作系統裝載以及文件系統加載完成后,利用三總線機構將ROMDISK中存儲的各種常用的語音數據轉存到內存中。同時為了滿足業務的多樣性和靈活性,系統能夠從服務器網絡接收各種特色語音數據:如天氣預報、廣告數據以及用戶的留言信息等。正常語音業務工作流程如圖2所示。

        3 系統關鍵部分設計

        3.1 內存控制器

        內存控制器(SDRAM)實現Nios II處理器和內存之間的操作,為系統實現多功能業務開發,提供可靠、大容量存儲空間。該模塊實現內存的初始化、刷新、數據傳輸等功能;支持的數據端口32位,時鐘頻率設置為100MHz,CAS Latency(CL)設置時間為2個時鐘,突發長度設置為1-8。

        在正確時間采用正確的方法采樣并鎖存數據是設計的難點。當內存的片選信號和讀信號有效時,進入讀操作狀態。列地址有效和寫命令有效兩個時鐘后,內存芯片輸出數據(CL=2)在時鐘的上升沿將數據總線上數據采樣鎖存。模塊中設立一個數據采樣鎖存器,根據其時序要求,CL=2,有效數據延時輸出2CLKs,內部數據采樣鎖存器在數據有效時間內時鐘邊沿時刻執行采樣鎖存,完成從內存取得數據的過程,Nios II處理器Avalon總線從內存控制器中數據采樣鎖存器中得到數據,送外數據目的地。讀操作采用自動預充功能讀命令(auto precharge after write burst)。內存進入自動預充操作后就處于空閑狀態,等待下一個狀態的開始。

        3.2 共享信箱模塊設計

        共享信箱是系統信箱數據區,定義了本系統和程控交換機系統或IP交換機的主處理單元之間通信命令參數和傳送放音命令及音源編碼。這是與系統可以正常進行通信的關鍵。

        共享信箱模塊基于FPGA內部的雙端口RAM構成,內部通過Avalon交換總線與Nios II處理器進行通信,外部通過一個16位端口,以總線的方式與程控交換系統進行通信,其容量的大小根據系統要求和FPGA向系統提供PCM鏈路數來決定。

        系統每次放一部分語音,軟件記錄下狀態值。下一次從這個值開始繼續從存儲區向語音緩沖空間搬移一部分語音數據。寫入的字節數根據語音緩沖空間設定,數據確定后,要在每一個中斷處理周期(語音緩沖區A/B區切換時間)將一定端口、一定數量的語音數據寫入規定的RAM空間。句法結構如下:



        3.3 語音數據緩沖區設計

        緩沖區寫端口側和系統Avalon總線聯系,其地址空間按照順寫的方式進行,難點在于讀端口側地址信號的產生。本文采用雙緩沖區空間方式,在FPGA內部設置兩塊同樣的存儲區域,通過地址產生器產生端口地址跳變、鏈路地址跳變和中斷的產生。

        Nios II處理器按照程控交換系統主機的指令將所需的語音數據搬到語音數據緩沖區指定的地址空間;緩沖區可為每一個語音通道提供7字節的空間(N為偶數),CPU可以在每次語音處理中斷中,每路語音通道1次可以寫入N/2字節的語音數據。在一個系統幀同步信號FS0周期內(125μs),對單個語音通道可以完成8位,即一個字節數據轉換,采用AB雙緩沖區的設計模式,N/2字節的數據需要在N/2個FS0完成,需要的時間就是125μsN/2,其周期根據系統響應中斷的時間、處理語音數據存取的時間、系統處理其他數據的時間等綜合考慮來確定,保證系統設定的中斷周期內完成業務處理,且不影響系統的整體運行效率。

        從中斷的處理過程來看,每一次中斷的產生,響應和處理,系統總是需要對系統指針、放音位置等系統重要數據進行壓棧堆棧和回復的處理,處理同樣的任務,中斷周期短,系統的任務量都會相應增加。中斷時間的長短選擇是設計中比較困難和關鍵的,需要根據處理器處理能力、完成數據轉換需要的時間、中斷任務的處理時間、FPGA的RAM容量等因素綜合進行選擇,使用Nios II處理器,系統完成全部(128個)語音通道數據轉換的時間,也就是中斷任務的處理時間為2.83ms。本設計中也是根據這個前提條件來設定中斷級別和中斷周期的。本設計設定N=256,提供128路語音通道數據,系統需要中斷時間設定為16ms。

        語音鏈路PCM的處理,按照國際電信聯盟ITU G.711協議完成,G.711協議是ITU規定的PSTN網中使用語音傳輸的協議,它的數據速率為64kbps。G.726是ITU前身CCITT于1990年在G.721和G.723標準的基礎上提出的關于把64kbps非線性PCM信號轉換為40kbps、32kbps、24kbps、16kbps的ADPCM信號的標準。G.726標準算法簡單,語音質量高,多次轉換后語音質量有保證,在語音存儲和語音傳輸領域得到廣泛應用。

        4 結論

        設計完成后下載到FPGA后,經過現場測試和實際運用,該系統完全達到設計目標,在每個局用交換模塊上配置一塊由該芯片控制的語音子處理機,即可滿足一個交換模塊8192個用戶對語音系統的要求,證明該智能多業務片上系統設計是成功的。可以適用于各種電信業務系統中和IP網絡交換系統中,為企業縮短產品上市時間、降低開發風險與成本、提高新業務開發能力提供一個較為理想的解決方案。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 澄城县| 台北市| 饶平县| 华宁县| 福海县| 大方县| 定襄县| 丹江口市| 当雄县| 巨野县| 吉首市| 铜川市| 罗甸县| 开远市| 易门县| 盈江县| 合阳县| 潼南县| 金川县| 海口市| 利津县| 五原县| 江都市| 荃湾区| 汝南县| 长海县| 渭南市| 郯城县| 英吉沙县| 自贡市| 辛集市| 双流县| 枞阳县| 泽库县| 浏阳市| 屏山县| 金秀| 望都县| 灌云县| 上蔡县| 栾川县|