一種用DSP實現的VoIP模擬電話適配器的製作方法
2023-06-06 09:11:51 3
專利名稱:一種用DSP實現的VoIP模擬電話適配器的製作方法
技術領域:
本發明涉及VoIP(VoIP: Voice over Internet Protocol,網際網路協議語音)模擬電話 適配器,特別涉及一種僅用單DSP (Digital Signal Processing,數位訊號處理器)實 現的VoIP模擬電話適配器。
背景技術:
電話是人們最重要的日常通信工具。過去,電話通信是通過電路交換網絡,如 PSTN (Public Switched Tel鄰hone Network,公共交換電話網)。現在,隨著計算機 網絡的發展,已經有相當一部分電話通信是通過包交換網絡,如IP(Internet Protocol) 網。使用IP電話,主要有以下三種方式。 一種方式是在計算機上安裝VoIP終端軟 硬體設備,接通計算機網絡,撥打IP電話,這就需要一臺計算機,顯然不便於隨時 使用。再一種方式是通過VoIP網關,用戶使用IP電話卡打電話就屬於這種方式, 但這種方式沒有完全發揮VoIP節約帶寬、降低成本的優勢。還有一種方式,就是使 用IP電話終端設備,直接通過LAN (Local Area Network,區域網)、xDSL (Digital Subscriber Line,數字用戶線路)或者其他方式,接入網際網路,利用計算機網絡通話。IP電話終端,大致可以分為分立和集成兩種形式。分立形式,就是普通電話機 通過RJ11接口 ,連接VoIP模擬電話適配器(ATA: Analog Telephony Adapter),再由 適配器接入網際網路。集成,就是將普通電話機與ATA集成到一臺設備,形成IP電 話機。二者只是形式不同,原理相同。目前,VoIP ATA系統普遍採用CPU (Ceter Processing Unit,中央處理器)/MCU (Micro Control Unit,微控制器)+08 (數位訊號處理器),外圍輔以各種存儲器和 接口設備的設計。也有已知的模擬電話適配器採用帶多媒體信號處理指令增強的 CPU或者雙DSP。在CPU/MCU+DSP的設計裡,CPU/MCU負責網絡通信、人機交 互和系統狀態等控制功能,而由DSP負責語音數位訊號的實時處理。現有技術的不足在於雖然採用CPU/MCU+DSP的設計符合兩種處理器的功能 特徵,但其缺點是不僅系統複雜,成本較高,浪費處理器資源,雙處理器通信困難,
編程繁瑣,而且存在功耗大等問題。 發明內容本發明的目的是克服現有技術存在的系統複雜,成本較高,浪費處理器資源, 功耗大等不足,提供一種僅用單DSP實現的VoIP模擬電話適配器。一種用DSP實現的VoIP模擬電話適配器,如圖1所示,其特徵在於,包括一數位訊號處理器(DSP) 11;與該數位訊號處理器11連接的復位邏輯電路12、時鐘控制邏輯電路13、用戶線接入控制電路14、 JTAG (Joint Test Action Group, 聯合測試行動小組)接口 15、主機接口 16、網絡接口控制器17;與所述數位訊號 處理器11的外部存儲總線相連接的外部程序存儲器18和外部數據存儲器19。在上述技術方案中,還包括所述網絡接口控制器17與一個網絡接口連接,用於 連接到網際網路。所述網絡接口為RJ45接口。在上述技術方案中,還包括所述主機接口 16與一USB適配器連接,用於連接 主機,進而從主機接受接收數據,用於系統升級或數據修復等。在上述技術方案中,所述用戶線接入控制電路14包括一RJ11接口,用於連接 到模擬電話機或傳真機等。在上述技術方案中,所述外部程序存儲器18為FLASH RAM(快閃記憶體),所述外部 數據存儲器19為SRAM (靜態隨機存儲器)。在上述技術方案中,所述網絡接口控制器是支持ISA總線的網絡接口控制器。在上述技術方案中,該適配器的軟體系統機構自上而下分為硬體驅動層、實時 作業系統層、網絡協議層、應用程式層;該適配器的軟體系統按功能模塊劃分包括-實時作業系統模塊,支持軟交換和終端之間的控制協議模塊,實時話音通話模塊, 網絡接口模塊,用戶線接入控制模塊,配置和升級模塊,交互語音應答功能模塊; 該適配器根據不同功能模塊程序的執行特點來分配數位訊號處理器11的片內和片 外程序和數據的存儲空間,為有效合理的利用片上有限內存,所述數位訊號處理器 11的片上RAM分為獨佔區和共享區。與現有技術相比,本發明的優點在於-本發明採用單DSP實現VoIP模擬電話適配器,降低了系統複雜度,降低了成 本,減小了功耗;同時,本發明是對DSP的新應用;而且,單DSPATA系統相對 於雙處理器解決方案,只需要一套開發調試工具,節省了開發成本。
圖1是本發明適配器的系統硬體結構示意圖; 圖2是本發明適配器的系統軟體架構示意圖; 圖3是本發明DSP片上內存共享存儲區刷新過程流程圖。
具體實施方式
下面結合附圖和具體實施方式
對本發明作進一歩詳細描述參照圖1所示,本系統硬體架構包括數位訊號處理器ll;與該數位訊號處理 器(DSP) 11連接的復位邏輯電路12、時鐘控制邏輯電路13、用戶線接入控制電路14、 JTAG接口 15、主機接口 16、網絡接口控制電路17;與所述數位訊號處理 器11的外部存儲總線相連接的外部程序存儲器18和外部數據存儲器19。所述網絡 接口控制器17與一個RJ45接口連接,用於連接到網際網路絡。所述主機接口 16與 一USB適配器連接,用於連接主機,進而從主機接收數據,用於系統升級或數據修 復等。所述用戶線接入控制電路14包括一RJ11接口,用於連接到模擬電話機或傳 真機等。所述外部程序存儲器18為FLASH RAM (快閃記憶體),所述外部數據存儲器19 為SRAM (靜態隨機存儲器)。所述網絡接口控制器是支持ISA總線的網絡接口控 制器。該適配器的軟體系統機構自上而下分為硬體驅動層、實時作業系統層、網絡協 議層、應用程式層;該適配器的軟體系統按功能模塊劃分包括實時作業系統模塊, 支持軟交換和終端之間的控制協議模塊,實時話音通話模塊,網絡接口模塊,用戶 線接入控制模塊,配置和升級模塊,交互語音應答功能模塊;該適配器根據不同功 能模塊程序的執行特點來分配數位訊號處理器11的片內和片外程序和數據的存儲 空間,為有效合理的利用片上有限內存,所述數位訊號處理器n的片上RAM分為 獨佔區和共享區。本發明中DSP是系統的核心,通過一套外部存儲器接口總線,與網絡接口控制 器(NIC: Network Interface Controller)和外部存儲器進行通信,外部存儲器包括外部 程序存儲器和外部數據存儲器。存儲器按物理位置,分為內部存儲器和外部存儲器。DSP的內部存儲器,其訪 問周期短,程序執行效率高,但空間小、成本高。外部存儲器主要功能,是補充程
序和數據存儲空間的不足,外部程序存儲器18使用FLASH,外部數據存儲器19 釆用SRAM。同時由FLASH在系統掉電時,保存代碼和數據。為了節約使用處理 器的片選信號和簡化外部電路,本適配器使用一塊SRAM作外部數據空間, 一塊 FLASH既作為掉電存儲器,也作DSP的外部程序空間。NIC是ATA系統與網際網路絡的接口,主要完成在物理層和媒體訪問控制(MAC) 層的通信任務。本發明選用支持ISA總線的NIC。因為DSP可以按照存儲器的訪問 方式來訪問該NIC,便於系統的硬體設計。NIC的數據總線寬度主要有8位、16位 兩種。本發明可以完全兼容這兩種模式。在硬體設計上,只要DSP有一個16位接 口,可以用低8位來連接8位NIC數據接口,對16位NIC的數據接口直接連通。 在NIC的驅動上,對MAC(Media Access Con加l)幀採用16位數據結構。這樣,對 於16位NIC, MAC幀在系統內存與在NIC內部緩存的格式完全一致,而對於8位 NIC, MAC幀的每個字節在系統內存裡設計成佔用16位的低8位,這樣就可以兼 容8位/16位兩種NIC模式。這也解決了 DSP不能支持單字節數據訪問的問題。DSP 與NIC的數據接口使用一個DMA通道來提高系統效率。本發明利用用戶線接入控制器14(:SLIC: Subscriber Line Interface Controler)通過 RJ11接口連接普通的模擬電話機和傳真機,傳遞話音和DTMF等各種模擬信號。 本發明的音頻應用數位訊號處理器11和SLIC都帶有全雙工同步串行接口(SSI),支 持時分復用。在物理層通過SSI,在DSP與SLIC之間全雙工地傳送數據,把DSP 的兩條DMA通道連接在內存和同步串行接口之間,分別進行數據收發,串行同步 總線上就會有連續且同步的幀同步信號和位時鐘信號,從而能夠為SLIC提供可能 需要的時鐘信號;在鏈路層,通過一定字節數的緩衝區,實現全雙工通信。對於SLIC 的控制接口,本發明使用處理器ll的PIO信號來連接,通過驅動程序控制每條PIO 的時序邏輯,從而監控SLIC的工作狀態。數位訊號處理器11 (DSP)帶有JTAG和主機接口(HPI: Host Processor Interface)。 利用HPI接口來更新FLASH保存的內容,可以用於系統升級,也可以在FLASH內 容遭到破壞時,進行修復。本發明軟體按功能模塊劃分包括實時作業系統模塊,支持軟交換和終端之間的 控制協議模塊,實時話音通話模塊,網絡接口模塊,模擬電話機接口SLIC (用戶線 路接口電路)模塊,配置和升級模塊,IVR (交互語音應答)功能模塊。主要包括以 下四個任務主控任務,負責控制系統工作狀態;SIP (會話初始協議)通信任務,負責適配器在SIP協議層上的通信;網絡數據報接收處理任務,負責在鏈路層接收 數據報,並按照計算機網絡協議逐層處理,將網絡上傳來的有用信息提交給相關任 務;話音處理任務,負責遠端話音數據的接收、解碼、播放,和本地話音數據的採 集、編碼、發送。本適配器的系統軟體採用了分層模塊化的體系結構,整個軟體自 下而上分為了硬體驅動層、實時作業系統層、網絡協議層、應用程式層,各層軟體 具有明確的功能劃分,相互協同配合實現系統所需功能,軟體架構如圖2所示。本發明採用以一個通用DSP為核心的架構,相對於流行的MCU+DSP的架構, 能夠減小系統規模,降低成本。但是相對系統的多種功能需求,單DSP處理器的計 算能力和外圍擴展能力卻十分有限。本發明除了話音編解碼工作,還有大量控制和 通信協議處理工作,而且程序和數據規模超過了普通單DSP系統。有效合理的利用 系統的內存和外存空間,是使本發明具有低成本,低功耗成為可能的關鍵。本發明對 系統中程序和數據在片上內存和片外內存進行優化分配,並提出一種狀態補償片上 內存部分動態覆蓋上下文共享方法。對於在低功耗,內存小的單DSP上實現VoIP 模擬電話適配器具有普遍的應用價值。下面進行詳細說明1.內外存優化分配本發明是一種實時通信終端,要保證實時通話的正常交互性,就要保證分組話 音的收發和話音編解碼的實時性、用戶操作的實時響應,因此,對適配器的運行速 度要求較高。本適配器中外部程序存儲器(FLASH)、外部數據存儲器(SRAM)、網絡 接口控制器(NIC)連接在數位訊號處理器11的外部存儲總線,DSP與這三個設備的 通信皆通過此一套外部總線,構成系統運行瓶頸。為了滿足系統實時性要求,必須 充分利用處理器片內存儲器,儘量減少DSP的外部存儲總線上的通信量,減少DSP 取指和取數的等待周期,充分發揮DSP的效率。為此,本系統根據不同功能模塊程 序的執行特點,採用靜態和動態相結合的方法來分配片內外存儲空間。具體原則如 下1) 將速度要求高的軟體模塊,分配到片上內存。本發明中為實時作業系統及任 務模塊、中斷服務例程,NIC驅動模塊等;2) 將執行頻繁的軟體模塊,分配到片上內存。本發明中為常用計算機網絡協議 如RTP (實時傳輸協議)、UDP (用戶數據報協議)、IP (網際網路協議)、PPPoE (以 太網點對點撥號協議)處理程序等;3) 對於響應速度要求低,或者較少調用的軟體模塊,分配到片外內存。本發明
中這些模塊為各個外設模塊的初始化程序代碼,SLIC驅動程序,SIP協議棧代碼, TCP (傳輸與控制協議)、HTTP (超文本傳輸協議)、DHCP (動態主機配置協議)、 ARP (地址解析協議)程序等。4)根據系統運行需求動態調整具有時間互斥性功能模塊的存儲空間。例如,本 系統中網頁配置模塊和語音編解碼模塊不具備同時執行的條件,即當用戶之間進行 語音通話時,不能進行終端的網頁配置功能,而當用戶正在進行網頁配置時,不能 建立通話連接,這兩個功能模塊在時間上就具有時間互斥性。本發明將映射到不同 外存地址空間的具有時間互斥性的軟體功能模塊在其運行時都連結到相同的片內內 存空間運行,有效的解決了單DSP方案中的內存空間有限問題。2.狀態補償片上內存部分動態覆蓋上下文共享方法;現有技術中,對於數位訊號處理器的片上內存的分配方法主要有兩種。第一種 是模仿硬體高速緩衝存儲器的軟高速緩存方式。程序中插入指令檢査軟維護的高速 緩存標籤。如此,在運行時間、代碼量、功耗和標籤佔用內存空間上引入了大量消 耗,實時性差。第二種方法是在編譯過程中完成片上和片外存儲空間使用的靜態分 配。這種靜態分配方法的一個缺點是它們不適應程序的動態行為特徵。本發明採用 一種狀態補償片上內存部分動態覆蓋上下文共享方法,能夠根據任務的實時狀態, 優化嵌入式多任務系統中程序和數據存儲對象在片上內存和片外主存間的實時分 配,相對普通片上內存部分動態覆蓋上下文共享方法,能夠進一步顯著減小存儲接口的瓶頸效應,提高系統工作速度,同時減小功耗。具體實現如下將數位訊號處理器11的片上內存分為獨佔區和共享區。片上內存的共享區間由 多個任務的部分程序時分共享。實時作業系統,中斷服務例程,負責控制系統運行,且執行頻率高,保存在DSP的片內存儲器。片內指令存儲器上主要保存著主控任務、 分組話音通信任務、協議棧相關任務三個部分。分組話音通信任務和協議棧相關任 務不具有時間互斥性,優先級不相同,協議棧相關任務的優先級高於分組話音通信 任務,因為分組話音通信任務具有明顯的狀態特徵,且根據優先級原則,協議棧相 關任務使用片上內存獨佔區,讓出共享區。分組話音通信任務與主控任務存在共享 區上時間互斥性,因為初始化部分不會與通話同時進行,可以減少任務切換過程中 程序共享區的刷新工作,所以本系統中分組話音通信任務與主控任務使用片上RAM 共享區。本系統中片上內存共享區存儲內容包括初始化程序和三種話音編碼程序(G. 729A、 G. 723. 1、 G. 711a/u),根據它們功能上的時間互斥性和系統工作流程中的 可預測性,共享區的內容可以預測下載並在較長時間(相對任務周期)內保持不變, 而不必隨任務上下文切換頻繁刷新,減少系統負擔。本發明DSP片上內存共享區刷新過程,如圖3所示,包括如下步驟1、 系統啟動,下載在片內內存運行程序,共享區保存初始化程序;2、 下載完畢,開始運行系統的初始化;3、 初始化完畢,系統進入等待狀態;4、 開始主叫或者被叫過程,進行SIP協商通信;5、 會話初始過程完畢,並確定會話採用編碼標準;6、 分組話音通信任務根據SIP確定的本次會話編碼標準,下載對應編解碼程序 到片內內存共享區-,7、 開始會話通信;8、 會話完畢,回到等待狀態;9、 部分或者全部功能或設置需要重新初始化,主控任務下載初始化程序到片內 內存共享區。本發明中的基於單DSP實現的VOIP模擬電話適配器,系統軟硬體結構緊湊高效, 設計合理,功能豐富,運行穩定,成本低,對於在低功耗,內存小的單DSP上實現 VOIP模擬電話適配器具有普遍的應用價值。最後所應說明的是,以上實施例僅用以說明本發明的技術方案而非限制。儘管 參照實施例對本發明進行了詳細說明,本領域的普通技術人員應當理解,對本發明 的技術方案進行修改或者等同替換,都不脫離本發明技術方案的精神和範圍,其均 應涵蓋在本發明的權利要求範圍當中。
權利要求
1、一種用DSP實現的VoIP模擬電話適配器,其特徵在於,包括一數位訊號處理器(11);與該數位訊號處理器(11)連接的復位邏輯電路(12)、時鐘控制邏輯電路(13)、用戶線接入控制電路(14)、JTAG接口(15)、主機接口(16)、網絡接口控制器(17);與所述數位訊號處理器(11)的外部存儲總線相連接的外部程序存儲器(18)和外部數據存儲器(19)。
2、 根據權利要求l所述用DSP實現的VoIP模擬電話適配器,其特徵在於,還 包括一個網絡接口與所述網絡接口控制器(17)連接。
3、 根據權利要求1所述用DSP實現的VoIP模擬電話適配器,其特徵在於,還 包括一USB適配器與所述主機接口 (16)連接。
4、 根據權利要求1所述用DSP實現的VoIP模擬電話適配器,其特徵在於,所 述用戶線接入控制電路(14)包括一用於連接到模擬電話機或傳真機的RJll接口。
5、 根據權利要求l所述用DSP實現的VoIP模擬電話適配器,其特徵在於,所 述外部程序存儲器(18)為快閃記憶體,所述外部數據存儲器(19)為靜態隨機存儲器。
6、 根據權利要求l所述用DSP實現的VoIP模擬電話適配器,其特徵在於,所 述網絡接口控制器是支持ISA總線的網絡接口控制器。
7、 根據權利要求1-6任一項所述用DSP實現的VoIP模擬電話適配器,其特徵 在於,該模擬電話適配器的軟體系統機構自上而下分為硬體驅動層、實時作業系統 層、網絡協議層、應用程式層;該適配器的軟體系統包括實時作業系統模塊,支 持軟交換和終端之間的控制協議模塊,實時話音通話模塊,網絡接口模塊,用戶線 接入控制模塊,配置和升級模塊,交互語音應答功能模塊;該適配器根據不同功能 模塊程序的執行特點分配數位訊號處理器(11)的片內和片外程序和數據的存儲空 間,所述數位訊號處理器(11)的片上RAM分為獨佔區和共享區。
全文摘要
本發明公開了一種僅用單DSP實現的VoIP模擬電話適配器,包括一數位訊號處理器;與該數位訊號處理器連接的復位邏輯電路、時鐘控制邏輯電路、用戶線接入控制電路、JTAG接口、主機接口、網絡接口控制器;與所述數位訊號處理器的外部存儲總線相連接的外部程序存儲器和外部數據存儲器。本發明降低系統複雜度,降低成本,減小功耗,節省開發成本。
文檔編號H04M11/06GK101132427SQ200610112518
公開日2008年2月27日 申請日期2006年8月22日 優先權日2006年8月22日
發明者葉曉舟, 武 張, 張建東, 曾學文, 朱曉東, 武曉華, 王勁林, 峰 鄧, 齊向東 申請人:中國科學院聲學研究所;北京中科智網科技有限公司